Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2019-09-10avcodec/webp: fix decoding for trailing junkPascal Massimino
some bitstream have trailing junk, despite being valid webp data. In case of apparent error, abort the loop and let *got_frame decide whether this is an error or not. fixes trac #8107 (/#7612) Another possibility would be turning the loop into: while (!*got_frame) {...} Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-11-27vp8: Add hwaccel hooksMark Thompson
Also adds some extra fields to the main context structure that may be needed by a hwaccel decoder. The current behaviour of the WebP decoder is maintained by adding an additional field to the VP8 decoder private context to indicate that it is actually being used as WebP (no hwaccel is supported for that case).
2017-10-26avcodec/exif: remove GetByteContext usage from avpriv_exif_decode_ifd()James Almer
This prevents potential ABI issues with GetByteContext. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2017-07-26avcodec/webp: add support for ICCP chunksJames Almer
Export the raw data as ICC Profile frame side data. Reviwed-by: Rostislav Pehlivanov <atomnuker@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
2017-05-28avcodec/webp: Fixes null pointer dereferenceMichael Niedermayer
Fixes: 1470/clusterfuzz-testcase-minimized-5404421666111488 Fixes: 1472/clusterfuzz-testcase-minimized-5677426430443520 Fixes: 1875/clusterfuzz-testcase-minimized-5536474562822144 Approved-by: BBB Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-14avcodec/webp: Fix signedness in prefix_code checkMichael Niedermayer
Fixes: out of array read Fixes: 1557/clusterfuzz-testcase-minimized-6535013757616128 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-13avcodec/webp: Add missing input paddingMichael Niedermayer
Fixes: 1536/clusterfuzz-testcase-minimized-5973925404082176 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-10avcodec/webp: Always set pix_fmtMichael Niedermayer
Fixes: out of array access Fixes: 1434/clusterfuzz-testcase-minimized-6314998085189632 Fixes: 1435/clusterfuzz-testcase-minimized-6483783723253760 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-09avcodec/webp: Update canvas size in vp8_lossy_decode_frame() as in ↵Michael Niedermayer
vp8_lossless_decode_frame() Fixes: 1407/clusterfuzz-testcase-minimized-6044604124102656 Fixes: 1420/clusterfuzz-testcase-minimized-6059927359455232 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-09avcodec/webp: Factor update_canvas_size() outMichael Niedermayer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-09avcodec/webp: Check for VP8X after other VP8 chunksMichael Niedermayer
Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-05-06avcodec/webp: Fix null pointer dereferenceMichael Niedermayer
Fixes: 1369/clusterfuzz-testcase-minimized-5048908029886464 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-04-23avcodec: do not use AVFrame accessorMuhammad Faiz
Reviewed-by: wm4 <nfxjfg@googlemail.com> Signed-off-by: Muhammad Faiz <mfcc64@gmail.com>
2016-06-29Merge commit 'b668662939de3a02454cfc9ba3e6d10b87527a40'Clément Bœsch
* commit 'b668662939de3a02454cfc9ba3e6d10b87527a40': get_bits: Move BITSTREAM_READER_LE definition before all relevant #includes The merge commit also includes changes for libavcodec/interplayacm.c and libavcodec/truemotion2rt.c Merged-by: Clément Bœsch <clement@stupeflix.com>
2016-06-07get_bits: Move BITSTREAM_READER_LE definition before all relevant #includesDiego Biurrun
This avoids the danger that get_bits.h might get indirectly #included before BITSTREAM_READER_LE is defined. Also sort headers into canonical order where appropriate.
2016-04-17lavc/webp: Print a warning for unsupported chunks.Carl Eugen Hoyos
2016-02-21avcodec/webp: move exif_metadata outside of WebPContextJames Almer
Reviewed-by: Michael Niedermayer <michael@niedermayer.cc> Signed-off-by: James Almer <jamrial@gmail.com>
2015-07-27Merge commit 'def97856de6021965db86c25a732d78689bd6bb0'Michael Niedermayer
* commit 'def97856de6021965db86c25a732d78689bd6bb0': lavc: AV-prefix all codec capabilities Conflicts: cmdutils.c ffmpeg.c ffplay.c libavcodec/8svx.c libavcodec/aacenc.c libavcodec/ac3dec.c libavcodec/adpcm.c libavcodec/alac.c libavcodec/atrac3plusdec.c libavcodec/bink.c libavcodec/dnxhddec.c libavcodec/dvdec.c libavcodec/dvenc.c libavcodec/ffv1dec.c libavcodec/ffv1enc.c libavcodec/fic.c libavcodec/flacdec.c libavcodec/flacenc.c libavcodec/flvdec.c libavcodec/fraps.c libavcodec/frwu.c libavcodec/gifdec.c libavcodec/h261dec.c libavcodec/hevc.c libavcodec/iff.c libavcodec/imc.c libavcodec/libopenjpegdec.c libavcodec/libvo-aacenc.c libavcodec/libvorbisenc.c libavcodec/libvpxdec.c libavcodec/libvpxenc.c libavcodec/libx264.c libavcodec/mjpegbdec.c libavcodec/mjpegdec.c libavcodec/mpegaudiodec_float.c libavcodec/msmpeg4dec.c libavcodec/mxpegdec.c libavcodec/nvenc_h264.c libavcodec/nvenc_hevc.c libavcodec/pngdec.c libavcodec/qpeg.c libavcodec/ra288.c libavcodec/rv10.c libavcodec/s302m.c libavcodec/sp5xdec.c libavcodec/takdec.c libavcodec/tiff.c libavcodec/tta.c libavcodec/utils.c libavcodec/v210dec.c libavcodec/vp6.c libavcodec/vp9.c libavcodec/wavpack.c libavcodec/yop.c Merged-by: Michael Niedermayer <michael@niedermayer.cc>
2015-07-27lavc: AV-prefix all codec capabilitiesVittorio Giovara
Express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2015-07-16lavc: Add properties field to AVCodecContext.Carl Eugen Hoyos
The new field can hold information about losslessness and closed captions for now.
2015-07-03webp: fix infinite loop in webp_decode_frameAndreas Cadhalpun
The loop always needs at least 8 bytes for chunk_type and chunk_size. If fewer are left, bytestream2_get_le32 just returns 0 without reading any bytes, leading to an infinite loop. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-07-03webp: Make sure enough bytes are availableAndreas Cadhalpun
Every chunk needs at least 8 bytes for chunk_type and chunk_size. Prevent a possible infinite loop. CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2015-03-19webp: ensure that each transform is only used onceAndreas Cadhalpun
According to the WebP Lossless Bitstream Specification "each transform is allowed to be used only once". If a transform is more than once this can lead to memory corruption. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-03-06webp: ensure that each transform is only used onceAndreas Cadhalpun
According to the WebP Lossless Bitstream Specification "each transform is allowed to be used only once". If a transform is more than once this can lead to memory corruption. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-05webp: validate the distance prefix codeAndreas Cadhalpun
According to the WebP Lossless Bitstream Specification the highest allowed value for a prefix code is 39. If prefix_code is too large, the calculated extra_bits has an invalid value and triggers an assertion in get_bits. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
2015-03-03avcodec/webp: validate the distance prefix codeAndreas Cadhalpun
According to the WebP Lossless Bitstream Specification the highest allowed value for a prefix code is 39. If prefix_code is too large, the calculated extra_bits has an invalid value and triggers an assertion in get_bits. Signed-off-by: Andreas Cadhalpun <Andreas.Cadhalpun@googlemail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-02-04avcodec/webp: use init_get_bits8()Paul B Mahol
Signed-off-by: Paul B Mahol <onemda@gmail.com>
2014-10-05avcodec/webp: add assert to ensure palette is not larger than 256Michael Niedermayer
it should not be possible to be larger as its stored as 8bit value but we would be overwriting a stack buffer if it is ... Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-10-05avcodec/webp: add optimization: use local palette with extra paddingPascal Massimino
for big enough pictures. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-23avcodec/webp: fix default palette color 0xff000000 -> 0x00000000Pascal Massimino
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-09-19libavcodec/webp: treat out-of-bound palette index as translucent blackPascal Massimino
See https://code.google.com/p/webp/issues/detail?id=206 for a description of the problem/fix. Signed-off-by: Michael Niedermayer <michaelni@gmx.at> This patch makes the decoder follow the recommendation of the spec. There is some disagreement (see "[FFmpeg-devel] [PATCH]: libavcodec/webp") about what would be best to be written in the spec, so in case the spec is changed again, this potentially would need to be amended or reverted
2014-07-04Merge commit 'c6698dfe7cdbc7634f33245875488ed3fa4a8ced'Michael Niedermayer
* commit 'c6698dfe7cdbc7634f33245875488ed3fa4a8ced': webpdec: Fix decoding of the huffman group indices. Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-03webpdec: Fix decoding of the huffman group indices.Justin Ruggles
Per the specification, "The red and green components of a pixel define the meta Huffman code used in a particular block of the ARGB image."
2014-04-20avcdoec/webp: use av_malloc_array()Michael Niedermayer
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-04-05lavc/exif: Make EXIF IFD decoding part of private API/ABI.Thilo Borgmann
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-15webp: fix capitalization of the word ExifJames Almer
Also remove "webp:" from log messages. Using the AVCodecContext is enough. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-14webp: add support for EXIF metadata chunksJames Almer
Based on mjpeg code by Thilo Borgmann Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06Merge remote-tracking branch 'qatar/master'Michael Niedermayer
* qatar/master: webp: add a special case for a huffman table with only 1 symbol Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06Merge commit 'f51e3a1971045c7ed0c3d9d29d3254a4d940198e'Michael Niedermayer
* commit 'f51e3a1971045c7ed0c3d9d29d3254a4d940198e': webp: do not call av_frame_free() on the user-provided frame Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-12-06webp: add a special case for a huffman table with only 1 symbolJustin Ruggles
The vlc reader cannot handle 0-bit huffman codes. For most situations WebP uses the "simple" huffman coding for this case, but that will only handle symbols up to 255. For the LZ77 distance codes, larger symbol values are needed, so it can happen in rare cases that a normal huffman table is used that only has a single symbol.
2013-12-06webp: do not call av_frame_free() on the user-provided frameJustin Ruggles
Fixes double-free on error.
2013-11-01Merge commit '0a9e94bba8f8a40156438a43e4fe0e9ae36236cb'Michael Niedermayer
* commit '0a9e94bba8f8a40156438a43e4fe0e9ae36236cb': webp: stop using deprecated avcodec_set_dimensions Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-10-31webp: stop using deprecated avcodec_set_dimensionsAnton Khirnov
2013-09-19Merge commit 'c4bfa098072ba338d83555d6e2199f7e1e64ffff'Michael Niedermayer
* commit 'c4bfa098072ba338d83555d6e2199f7e1e64ffff': Add a WebP decoder Conflicts: Changelog doc/general.texi libavcodec/Makefile libavcodec/avcodec.h libavcodec/version.h libavformat/img2.c The previously existing webp decoder is disabled as the new one supports lossless mode and alpha while the previous does not. Merged-by: Michael Niedermayer <michaelni@gmx.at>
2013-09-18Add a WebP decoderJustin Ruggles
Container and lossy decoding by Aneesh Dogra <aneesh@sugarlabs.org> Lossless decoding by Justin Ruggles <justin.ruggles@gmail.com>