summaryrefslogtreecommitdiff
path: root/libavcodec/ffv1dec.c
Commit message (Collapse)AuthorAge
* avcodec/ffv1dec: Fix out of array read in slice countingMichael Niedermayer2017-10-10
| | | | | | | Fixes: test-201710.mp4 Found-by: 连一汉 <lianyihan@360.cn> and Zhibin Hu Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ffv1dec: Fix integer overflow in read_quant_table()Michael Niedermayer2017-09-22
| | | | | | | | Fixes: runtime error: signed integer overflow: 2147483647 + 1 cannot be represented in type 'int' Fixes: 3361/clusterfuzz-testcase-minimized-5065842955911168 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ffv1dec: Check for bitstream end in decode_line()Michael Niedermayer2017-08-18
| | | | | | | | Fixes: timeout Fixes: 2971/clusterfuzz-testcase-6130678276030464 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ffv1dec: Fix runtime error: signed integer overflow: 1550964438 + ↵Michael Niedermayer2017-05-13
| | | | | | | | | | 1550964438 cannot be represented in type 'int' Fixes: 1559/clusterfuzz-testcase-minimized-5048096079740928 Fixes: 1560/clusterfuzz-testcase-minimized-6011037813833728 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/ffv1dec: Fix copying planes of paletted formatsMichael Niedermayer2017-05-08
| | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Fix all -Wformat warnings raised by DJGPPClément Bœsch2017-03-29
|
* Merge commit '17cb56b35672a2cd6ad7abe926e6cc772b8f4710'Clément Bœsch2017-03-19
|\ | | | | | | | | | | | | * commit '17cb56b35672a2cd6ad7abe926e6cc772b8f4710': ffv1: Remove broken disabled cruft Merged-by: Clément Bœsch <u@pkh.me>
| * ffv1: Remove broken disabled cruftDiego Biurrun2016-08-17
| |
| * ffv1: Report additional bitstream information in verbose modeLuca Barbato2016-06-29
| | | | | | | | Useful to inspect samples.
| * ffv1: Error out on unsupported formatJerome Martinez2016-06-18
| | | | | | | | Transparency is supported only by YUV and within specific bit depths.
| * lavu: add AV_CEIL_RSHIFT and use it in various placesClément Bœsch2016-01-11
| | | | | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | lavc/ffv1: Support YUV4xxP12 and GRAY12.Carl Eugen Hoyos2016-11-20
| |
* | avcodec/ffv1dec: Set packed_at_lsb for 16bit YUVMichael Niedermayer2016-11-18
| | | | | | | | | | | | This avoids unneeded computations Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Support gray 10/12/16 explicitly avoid shiftsMichael Niedermayer2016-11-18
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | lavc/ffv1dec: Scale output for msb-packed compression to full 16bit.Carl Eugen Hoyos2016-11-17
| | | | | | | | 2% slowdown for existing decode-line timer.
* | avcodec/ffv1: add AV_PIX_FMT_GBRP16 supportMichael Niedermayer2016-08-08
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1: template functions to allow data types different from int16_tMichael Niedermayer2016-08-08
| | | | | | | | | | | | | | This is required for >= 16bit RGB support I tried it without templates but its too much duplicated code Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Test extradata_size instead of extradata for better robustnessMichael Niedermayer2016-07-21
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: fix some unsupported pix_fmtJérôme Martinez2016-06-13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When checking pix_fmt mapping, some bitstreams are mapped to an incorrect pix_fmt instead of being rejected (ENOSYS). Actually, such bitstreams are not supported (FFmpeg encoder does not produce such bitstream, such bitstream may come only from another encoder for the moment). - JPEG 2000 RCT 11/13/15/16 bit depths are mapped to a 8-bit FFmpeg pix_fmt (e.g. bgr0), which is not expected. - JPEG 2000 RCT 9/10/12/14 bit depths with alpha are mapped to a FFmpeg pix_fmt without alpha (e.g. AV_PIX_FMT_GBRP9 for 9-bit with alpha), which is not expected. The order for choosing the pix_fmt is changed to the one used by YCbCr selection (<=8 bit first). " && !f->transparency" is added to the other lines. Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avutil: Rename FF_CEIL_COMPAT to AV_CEIL_COMPATDerek Buitenhuis2016-01-27
| | | | | | | | | | | | | | | | | | | | Libav, for some reason, merged this as a public API function. This will aid in future merges. A define is left for backwards compat, just in case some person used it, since it is in a public header. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* | avcodec/ffv1dec: Support AV_PIX_FMT_YA8Michael Niedermayer2016-01-01
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Merge commit '4bb1070c154e49d35805fbcdac9c9e92f702ef96'Derek Buitenhuis2015-11-22
|\| | | | | | | | | | | | | | | | | | | | | | | * commit '4bb1070c154e49d35805fbcdac9c9e92f702ef96': ffv1: Explicitly name the coder type Conflicts: libavcodec/ffv1.h libavcodec/ffv1dec.c libavcodec/ffv1enc.c Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
| * ffv1: Explicitly name the coder typeVittorio Giovara2015-11-16
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FFv1 uses two types of coders, golomb and range with two different tables. This is exposed this in a rather convoluted way, for example mentioning to set coder type 1 while initializing the variable 'ac' to 2, because encoder does not use range coder with default table. Appropriate internal coder type values have been added and used in any check rather than using raw numbers. Initialization of avctx.coder_type in ffv1dec is removed because this field is encoder only. An unneeded validation check in the encoder is dropped too. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avcodec/ffv1dec: Clear quant_table_count if its invalidMichael Niedermayer2015-11-14
| | | | | | | | | | | | | | | | | | Fixes deallocation of corrupted pointer Fixes: 343dfbe142a38b521ed069dc4ea7c03b/signal_sigsegv_421427_4074_ffb11959610278cd40dbc153464aa254.avi No releases affected Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Print an error if the quant table count is invalidMichael Niedermayer2015-11-05
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Free tables on init failureMichael Niedermayer2015-11-05
| | | | | | | | | | | | | | | | Fixes memleak Fixes: 07ec1fc3c1cbf2d3edcd7d9b52ca156c/asan_heap-oob_13624c5_491_ecd4720a03e697ba750b235690656c8f.avi Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Check for 0 quant tablesMichael Niedermayer2015-11-05
| | | | | | | | | | | | | | | | Fixes assertion failure Fixes: 07ec1fc3c1cbf2d3edcd7d9b52ca156c/asan_heap-oob_13624c5_491_ecd4720a03e697ba750b235690656c8f.avi Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: update progress in case of broken pointer chainsMichael Niedermayer2015-10-16
| | | | | | | | | | | | | | Fixes deadlock Fixes Ticket4932 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Clear slice coordinates if they are invalid or slice header ↵Michael Niedermayer2015-10-16
| | | | | | | | | | | | | | | | decoding fails for other reasons Fixes Ticket4931 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec: use HAVE_THREADS header guards to silence -Wunused-functionGanesh Ajjanagadde2015-10-04
| | | | | | | | | | | | | | | | | | | | When compiled with --disable-pthreads, e.g http://fate.ffmpeg.org/report.cgi?time=20150917015044&slot=alpha-debian-qemu-gcc-4.7, a bunch of -Wunused-functions are reported due to missing header guards around threading related functions. This patch should silence such warnings. Signed-off-by: Ganesh Ajjanagadde <gajjanagadde@gmail.com>
* | avcodec/ffv1dec: Fix off by 1 error in quant_table_count checkMichael Niedermayer2015-09-26
| | | | | | | | | | | | | | Fixes: invalid_read.nut Found-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Explicitly check read_quant_table() return valueMichael Niedermayer2015-09-26
| | | | | | | | | | | | Forwards the error code, avoids potential integer overflow Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Fix >8bps error concealmentMichael Niedermayer2015-09-25
| | | | | | | | | | | | | | Fixes: 03_cave_girls_h264_slc24_slicecrc1_fuzzed.avi Found-by: Dinah Handel <dinahrhandel@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/rangecoder: Check eMichael Niedermayer2015-09-25
| | | | | | | | | | | | | | Fixes hang.nut Found-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1: seperate slice_count from max_slice_countMichael Niedermayer2015-09-24
| | | | | | | | | | | | | | Fix segfault with too large slice_count Fixes Ticket4879 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | Replace all remaining occurances of step/depth_minus1 and offset_plus1Hendrik Leppkes2015-09-08
| |
* | avcodec/ffv1dec: Print CRCs at picture debug levelMichael Niedermayer2015-09-02
| | | | | | | | Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | avcodec/ffv1dec: Check that there is enough space for the CRC in the global ↵Michael Niedermayer2015-09-02
| | | | | | | | | | | | header Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* | ffv1: Add missing ff_ prefixesTimothy Gu2015-08-22
| |
* | Merge commit 'def97856de6021965db86c25a732d78689bd6bb0'Michael Niedermayer2015-07-27
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * lavc: AV-prefix all codec capabilitiesVittorio Giovara2015-07-27
| | | | | | | | | | | | Express bitfields more simply. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* | avcodec/ffv1dec: Fix skip_alphaMichael Niedermayer2015-05-28
| | | | | | | | | | | | Fixes Ticket4322 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/ffv1dec: Check chroma shift parametersMichael Niedermayer2015-05-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/ffv1dec: More completely check micro_versionMichael Niedermayer2015-05-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/ffv1dec: Check quant table symbols more completelyMichael Niedermayer2015-05-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | ffv1dec: plane_index is 1 in case of version 4 gray+alpha.Jérôme Martinez2015-05-03
| | | | | | | | | | | | Since version 4, plane_index for the alpha plane is 1 in the case chroma_planes is 0. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec: use av_mod_uintp2() where usefulJames Almer2015-04-21
| | | | | | | | | | Reviewed-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: James Almer <jamrial@gmail.com>
* | Merge commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25'Michael Niedermayer2015-04-20
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25': lavc: Replace av_dlog and tprintf with internal macros Conflicts: libavcodec/aacdec.c libavcodec/audio_frame_queue.c libavcodec/bitstream.c libavcodec/dcadec.c libavcodec/dnxhddec.c libavcodec/dvbsubdec.c libavcodec/dvdec.c libavcodec/dvdsubdec.c libavcodec/get_bits.h libavcodec/gifdec.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_refs.c libavcodec/imc.c libavcodec/interplayvideo.c libavcodec/jpeglsdec.c libavcodec/libopencore-amr.c libavcodec/mjpegdec.c libavcodec/mpeg12dec.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_parser.c libavcodec/pngdec.c libavcodec/ratecontrol.c libavcodec/rv10.c libavcodec/svq1dec.c libavcodec/vqavideo.c libavcodec/wmadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: Replace av_dlog and tprintf with internal macrosVittorio Giovara2015-04-19
| |
* | Merge commit 'ca09effb01e126b0ac74ff3de70a475423ddee82'Michael Niedermayer2015-01-06
|\| | | | | | | | | | | | | | | | | | | * commit 'ca09effb01e126b0ac74ff3de70a475423ddee82': ffv1: Drop unnecessary casts and const qualifiers to match function signatures Conflicts: libavcodec/ffv1dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>