Commit Graph

945 Commits

Author SHA1 Message Date
Paul B Mahol 53fe72f431 avcodec: add CRI HCA decoder 2020-03-17 16:07:25 +01:00
Paul B Mahol 41348aa64f avcodec/allcodecs: move sdx2 to correct place 2020-03-17 16:05:49 +01:00
Paul B Mahol 2d37a7f673 avcodec: add derf dpcm decoder 2020-03-17 16:05:15 +01:00
Paul B Mahol 994de940de avcodec: add ADPCM IMA MTF decoder 2020-03-17 16:03:39 +01:00
Zane van Iperen 8a979eed54 avcodec: add decoder for High Voltage Software's ALP ADPCM
Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-03-09 01:43:51 +01:00
Zane van Iperen 5c23dbec15 avcodec: add decoder for Rayman 2's ADPCM variant
Adds support for the ADPCM variant used in Rayman 2's files.

Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
2020-02-21 14:46:19 +01:00
Paul B Mahol d16fc6efa9 avcodec: add siren audio decoder 2020-02-20 14:41:26 +01:00
Paul B Mahol 3aa270e21b avcodec: fix pcm zork decoder
Fixes #1939
2020-02-16 12:54:57 +01:00
Alyssa Milburn 29308d3ff6 avcodec: add cdtoons decoder
This adds a decoder for Broderbund's sprite-based QuickTime CDToons
codec, based on the decoder I wrote for ScummVM.

Signed-off-by: Alyssa Milburn <amilburn@zall.org>
2020-02-15 10:55:33 +01:00
Zane van Iperen 7f06fb4b02 avcodec: add decoder for Simon & Schuster Interactive's ADPCM variant
Adds support for the ADPCM variant used by some Simon & Schuster
Interactive games such as Real War, and Real War: Rogue States.

Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2020-02-06 17:26:22 +01:00
Zane van Iperen a074bc1daf avcodec: add decoder for argonaut games' adpcm codec
Adds support for the ADPCM variant used by some Argonaut Games' games,
such as 'Croc! Legend of the Gobbos', and 'Croc 2'.

Signed-off-by: Zane van Iperen <zane@zanevaniperen.com>
2020-01-26 10:23:54 +01:00
Carl Eugen Hoyos 9054146fa4 lavc/allcodecs: Add mpeg4 omx encoder, missed in 11cac47c 2019-12-16 22:45:34 +01:00
Paul B Mahol 190cd50f40 avcodec: add mvha video decoder 2019-11-27 23:54:20 +01:00
Paul B Mahol d0a8f618f4 avcodec: add mvdv video decoder 2019-11-27 23:53:43 +01:00
Derek Buitenhuis b0f1a8f5ef avcodec: Add librav1e encoder
Port to the new send/receive API by: James Almer <jamrial@gmail.com>.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2019-11-10 13:55:39 +00:00
Zhong Li 35ff1a0695 lavc/qsvenc: enable vp9 encoder
1. must enable low_power mode since just VDENC can be supported by iHD
driver right now
2. Coding option1 and extra_data are not supported by MSDK
3. IVF header will be inserted in MSDK by default, but it is not needed
for FFmpeg, so disable it.

Signed-off-by: Zhong Li <zhongli_dev@126.com>
2019-11-03 16:45:35 +08:00
Carl Eugen Hoyos 3aece28eb8 lavc/g729dec: Support decoding Sipro ACELP.KELVIN.
Fixes ticket #4799.
Analyzed-by: Aleksandr Ustinov
2019-09-16 20:57:53 +02:00
James Almer 1b1fd62a6a avcodec/allcodecs: make libdav1d the preferred AV1 decoder
It's considerably faster than libaom in most systems.

Reviewed-by: BBB
Signed-off-by: James Almer <jamrial@gmail.com>
2019-09-16 15:26:46 -03:00
Paul B Mahol 983a639484 avcodec: add IMM5 decoder 2019-08-29 21:04:54 +02:00
Zhong Li 60ebb73c3f lavc/qsvdec: Add VP9 decoder support
VP9 decoder is support on Intel kabyLake+ platforms with MSDK Version 1.19+

Signed-off-by: Zhong Li <zhong.li@intel.com>
2019-08-20 13:34:04 +08:00
Zhong Li 4313a5b9c2 lavc/qsvdec: Add mjpeg decoder support
Signed-off-by: Zhong Li <zhong.li@intel.com>
2019-08-20 13:34:04 +08:00
Peter Ross 3d6029bf50 VP4 video decoder 2019-06-12 20:06:20 +10:00
Paul B Mahol 30f7cfb269 avcodec: add LSCR decoder
Fixes #4711.
2019-04-13 18:10:11 +02:00
Paul B Mahol a6fefd23ec avcodec: add ADPCM AGM decoder 2019-04-11 11:58:34 +02:00
Paul B Mahol 50a0ff3a18 avcodec: add Amuse Graphics decoder
This work is sponsored by VideoLAN.
2019-03-31 10:48:43 +02:00
Jan Ekström 5a474173b0 add libaribb24 ARIB STD-B24 caption decoder
* Outputs ASS lines with basic coloring and font scaling for each
  given region.
* Sets the default style to the resolution of the subtitle plane
  (for example, 960x540 / 36pt font for profile A).
* Has options to:
  * Disable ruby text (which is coded as regions which have
    half-height text in libaribb24).
    Enabled by default as without positioning ruby text only
    confuses as it is usually coded in the beginning of the decoded
    subtitle line.
  * Set the working directory, in which libaribb24 will read
    configuration as well as into which it may save broadcast extra
    symbols as PNG.
    Unset by default.

The unconventional library check can be explained by the library's
current master branch being licensed as LGPLv3, but at the time of
writing the latest official release is still licensed under GPLv3.

Thus, one either has to wait for the following release, or enable
GPLv3.
2019-02-10 03:30:52 +02:00
Paul B Mahol cd5e1f60f1 avcodec: add ARBC decoder
Thanks Kostya for great help in reversing binary.
2019-01-27 13:53:29 +01:00
Paul B Mahol 09cb65ff9e avcodec: add HCOM decoder 2019-01-15 10:56:35 +01:00
Paul B Mahol 37a8b2ebe6 avcodec: add HYMT decoder 2018-12-31 15:41:23 +01:00
Paul B Mahol fb1f710422 avcodec: add PCM-DVD encoder
Fixes #6784.
2018-12-01 19:41:48 +01:00
James Almer b6d1456e4e avcodec: libdav1d AV1 decoder wrapper.
Originally written by Ronald S. Bultje, with fixes, optimizations and
improvements by James Almer.

Signed-off-by: James Almer <jamrial@gmail.com>
2018-11-05 21:48:11 -03:00
Cameron Cawley 7cb738e715 avcodec: Implement Archimedes VIDC encoder/decoder
Signed-off-by: Cameron Cawley <ccawley2011@gmail.com>
2018-10-26 13:39:25 +02:00
Paul B Mahol efd301c423 avcodec: add native iLBC decoder
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-09-23 15:25:50 +02:00
hwren 1165be23a0 lavc, doc, configure: add libxavs2 video encoder wrapper
Signed-off-by: hwren <hwrenx@126.com>
2018-09-11 21:48:42 +01:00
Paul B Mahol e22e9569b6 avcodec: add RemotelyAnywhere Screen Capture decoder 2018-09-08 15:59:10 +02:00
Paul B Mahol 7af1c23fa1 avcodec: add WinCAM Motion Video decoder 2018-08-27 22:06:19 +02:00
Paul B Mahol b32516657f avcodec: add MatchWare Screen Capture Codec 2018-08-27 22:06:19 +02:00
Rostislav Pehlivanov 73c03e71a5 allcodecs: reorder ff_bitpacked_decoder
Needs to be in alphabetical order.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-08-25 18:36:16 +01:00
Paul B Mahol 80a01a646e avcodec: add Brooktree ProSumer Video decoder 2018-08-24 21:07:01 +02:00
Paul B Mahol 3e1d89b8f1 avcodec: add IMM4 decoder
This work is sponsored by VideoLAN.
2018-08-21 11:52:06 +02:00
hwren 407f030d9b lavc, doc, configure: add avs2 video decoder wrapper
Tested-by: Steven Liu <lq@chinaffmpeg.org>
Signed-off-by: hwren <hwrenx@126.com>
Signed-off-by: Steven Liu <lq@chinaffmpeg.org>
2018-07-27 20:07:56 +08:00
Rostislav Pehlivanov de8c23614f lavc: implement an ATRAC9 decoder
This commit implements a full ATRAC9 decoder, a simple low-delay codec
developed by Sony and used in most PSVita games, some PS3 games and some
PS4 games. Its similar to AAC in that it uses Huffman coded scalefactors
but instead of vector quantization it just Huffman codes the spectral
coefficients (in a way similar to how Opus splits band energy coding
into coarse and fine precision). It opts to write rather large Huffman
codes by packing several small coefficients into one Huffman coded
symbol, though I don't believe this increases efficiency at all.
Band extension implements SBC in a simple way, first it mirrors the
lower spectrum onto the higher frequencies and then it uses one of 5
filters to shape it. Noise substitution is implemented via 2 of them.
Unlike previous ATRAC codecs, there's no QMF, this is a standard MDCT
codec.

Based off of the reverse engineering work of Alex Barney.

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-07-03 20:15:01 +01:00
Michael Niedermayer 799a1cb666 avcodec/allcodecs: Provide empty codec_list in allcodecs when ossfuzz is used
The last workaround is not sufficient to make oss fuzz work with the iterate API
as it did not provide a FFmpeg that external libs can be linked to.

This patch does not fully restore the pre iterate functionality. My attempts to
do this have so far failed.

The problem with this solution is that it renders the fuzzers virtual system
ffmpeg (libs) non functional. Which differs from a real system compared to the
virtual system tested by the fuzzer.
It should theoretically not matter as the system ffmpeg wouldnt be used.
But with more cases being fuzzed we likely will hit a case where a external
lib is involved and it does matter ...

Working around this may be possible with weak symbols but so far my attempts
failed

Alternatively multiple ffmpeg could be built, this becomes messy though
quickly as they need to be all linked together. That is we need a FFmpeg
that has the iterate API modified so it can work with the resources
available to ossfuzz. And at the same time we need a ffmpeg that has
its full functionality for any external libs which use ffmpeg and are
used by ffmpeg.

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-28 23:17:32 +02:00
Michael Niedermayer 773631660f avcodec: Disable new iterate API for ossfuzz
A few days ago ossfuzz stoped testing new FFmpeg as it run out of diskspacee

https://oss-fuzz-build-logs.storage.googleapis.com/index.html

An alternative would be to revert the API.

This changes for example
-rwxr-x--- 1 michael michael 144803654 May 14 12:54 tools/target_dec_ac3_fixed_fuzzer*
to
-rwxr-x--- 1 michael michael  30333852 May 14 12:51 tools/target_dec_ac3_fixed_fuzzer*

Which should massively decrease space requirements

Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-05-16 00:39:52 +02:00
Paul B Mahol 0fc32cb091 avcodec: remove duplicate prores decoder
Removed slower one, couldn't figure out why it is slower.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
2018-04-28 12:43:33 +02:00
Rostislav Pehlivanov ebc88a9434 lavc: prefer the mp3float decoder to the mp3 decoder
On modern x86 systems its around 2x faster. For systems without
FPUs it'll be slower, but our policy is to prefer floating point
implementations and to let users decide what's best (or just not
compile them on systems without FPUs).

Signed-off-by: Rostislav Pehlivanov <atomnuker@gmail.com>
2018-04-01 13:02:12 +01:00
James Almer 81003985c9 Merge commit '9da920b2ef00c76a97cc090663bf6dcf59ea2cf5'
* commit '9da920b2ef00c76a97cc090663bf6dcf59ea2cf5':
  Support AV1 encoding using libaom

This contains some extra changes taken from the libvpx encoder
wrapper, most of them contained in the set_pix_fmt() function.

Merged-by: James Almer <jamrial@gmail.com>
2018-03-29 00:05:45 -03:00
James Almer 3436612a52 Merge commit '5dd629ed62d76890612f5f661ac83c40137b3eb0'
* commit '5dd629ed62d76890612f5f661ac83c40137b3eb0':
  Add AV1 video decoding support through libaom

This contains some extra changes taken from the libvpx decoder
wrapper, most of them contained in the set_pix_fmt() function.

Merged-by: James Almer <jamrial@gmail.com>
2018-03-28 18:09:46 -03:00
Luca Barbato 9da920b2ef Support AV1 encoding using libaom 2018-03-12 12:10:33 +01:00
Luca Barbato 5dd629ed62 Add AV1 video decoding support through libaom
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2018-03-12 08:12:43 +01:00