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-07-19avcodec/h264_cavlc: Fix integer overflows with motion vector residual additionMichael Niedermayer
Fixes: signed integer overflow: 14 + 2147483647 cannot be represented in type 'int' Fixes: 14794/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-5677380695228416 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-10-18avcodec/h264_cavlc: Check mb_skip_runMichael Niedermayer
Fixes: 10300/clusterfuzz-testcase-minimized-ffmpeg_AV_CODEC_ID_H264_fuzzer-6292205497483264 Fixes: signed integer overflow: -2147483648 - 1 cannot be represented in type 'int' Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/projects/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2018-02-14avcodec/h264_cavlc: Set valid qscale value in ff_h264_decode_mb_cavlc()Xiaohan Wang
When ff_h264_decode_mb_cavlc() failed due to wrong sl->qscale values, e.g. dquant out of range, set the qscale to be a valid value before returning -1 and exiting the function. The qscale value can be used later e.g. in loop filter. BUG=806122 Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-07-21avcodec/h264: Declare the local variable decode_chroma as const.Wan-Teh Chang
ff_h264_decode_mb_cabac() and ff_h264_decode_mb_cavlc() are very long functions. Declaring decode_chroma as const makes it clear the variable doesn't change after initialization. Signed-off-by: Wan-Teh Chang <wtc@google.com> Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2017-06-19avcodec/h264: Fix mix of lossless and lossy MBs decodingAnton Mitrofanov
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2017-05-17avcodec/h264_cavlc: Fix runtime error: index -1 out of bounds for type 'VLC [6]'Michael Niedermayer
Fixes: 1639/clusterfuzz-testcase-minimized-5693801463021568 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/h264_cavlc: Fix runtime error: index -1 out of bounds for type 'VLC [15]Michael Niedermayer
Fixes: 1513/clusterfuzz-testcase-minimized-6246484833992704 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-22avcodec/h264_cavlc: Fix undefined behavior on qscale overflowMichael Niedermayer
Fixes: 1214/clusterfuzz-testcase-minimized-6130606599569408 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
2016-07-29Merge commit '9df889a5f116c1ee78c2f239e0ba599c492431aa'Clément Bœsch
* commit '9df889a5f116c1ee78c2f239e0ba599c492431aa': h264: rename h264.[ch] to h264dec.[ch] Merged-by: Clément Bœsch <u@pkh.me>
2016-07-01Merge commit '6e92181bf836f48627a4733b6fd240a99fd36365'Clément Bœsch
* commit '6e92181bf836f48627a4733b6fd240a99fd36365': h264: pass just the PPS to get_chroma_qp() Merged-by: Clément Bœsch <clement@stupeflix.com>
2016-06-26Merge commit '52567e8198669a1e7493c75771613f87a90466c3'Hendrik Leppkes
* commit '52567e8198669a1e7493c75771613f87a90466c3': get_bits: Drop some TRACE-level debug code Merged-by: Hendrik Leppkes <h.leppkes@gmail.com>
2016-06-21Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'Clément Bœsch
* commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb': cosmetics: Fix spelling mistakes Merged-by: Clément Bœsch <u@pkh.me>
2016-06-21h264: rename h264.[ch] to h264dec.[ch]Anton Khirnov
This is more consistent with the naming of other decoders.
2016-06-17avodec/h264dec: fix compilation with -DTRACEJames Almer
Signed-off-by: James Almer <jamrial@gmail.com>
2016-06-12h264: pass just the PPS to get_chroma_qp()Anton Khirnov
It does not need the whole context. This will simplify the following commit.
2016-06-12Merge commit '3176217c60ca7828712985092d9102d331ea4f3d'Clément Bœsch
* commit '3176217c60ca7828712985092d9102d331ea4f3d': h264: decouple h264_ps from the h264 decoder Main changes: - a local GetBitContext is created for the various ff_h264_decode_seq_parameter_set() attempts - just like the old code, remove_sps() is adjusted so it doesn't remove the pps. Fixes decode with Ticket #631 http://ffmpeg.org/pipermail/ffmpeg-user/attachments/20111108/dae58f17/attachment.mp4 but see next point as well. - ff_h264_update_thread_context() is updated to work even when SPS isn't set as it breaks current skip_frame code. This makes sure we can still decode the sample from ticket #631 without the need for -flags2 +chunks. (Thanks to Michael) - keep {sps,pps}_ref pointers that stay alive even when the active pps/sps get removed from the available lists (patch by michaelni with additionnal frees in ff_h264_free_context() from mateo) - added a check on sps in avpriv_h264_has_num_reorder_frames() to fix crashes with mpegts_with_dvbsubs.ts from Ticket #4074 http://samples.ffmpeg.org/ffmpeg-bugs/trac/ticket4074/mpegts_with_dvbsubs.ts - in h264_parser.c:h264_parse(), after the ff_h264_decode_extradata() is called, the pps and sps from the local parser context are updated with the pps and sps from the used h264context. This fixes fate-flv-demux. - in h264_slice.c, "PPS changed between slices" error is not triggered anymore in one condition as it makes fate-h264-xavc-4389 fails with THREADS=N (Thanks to Michael) Merged-by: Clément Bœsch <clement@stupeflix.com> Merged-by: Michael Niedermayer <michael@niedermayer.cc> Merged-by: Matthieu Bouron <matthieu.bouron@stupeflix.com>
2016-05-22get_bits: Drop some TRACE-level debug codeDiego Biurrun
It will not be provided by the new bit reader anyway.
2016-05-04cosmetics: Fix spelling mistakesVittorio Giovara
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2016-05-03h264: Drop broken trace debug outputDiego Biurrun
2016-04-27Merge commit 'ecc31f6b086453ab9811dce2ae5ceb6a7c19e4ad'Derek Buitenhuis
* commit 'ecc31f6b086453ab9811dce2ae5ceb6a7c19e4ad': h264: move ff_h264_check_intra[4x4]_pred_mode() to h264_parse Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24Merge commit 'a7da517f6a5c472f46f67dd33bb6b95ccc919923'Derek Buitenhuis
* commit 'a7da517f6a5c472f46f67dd33bb6b95ccc919923': h264data: Move all data tables from a header to a .c file Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-04-24h264: decouple h264_ps from the h264 decoderAnton Khirnov
Make the SPS/PPS parsing independent of the H264Context, to allow decoupling the parser from the decoder. The change is modelled after the one done earlier for HEVC. Move the dequant buffers to the PPS to avoid complex checks whether they changed and an expensive copy for frame threads.
2016-03-28h264: move ff_h264_check_intra[4x4]_pred_mode() to h264_parseAnton Khirnov
It is shared with svq3.
2016-03-25h264data: Move all data tables from a header to a .c fileDiego Biurrun
2016-02-24Merge commit '6b96d2dcdaa60d7919d710432c6ca204b7fab0ab'Derek Buitenhuis
* commit '6b96d2dcdaa60d7919d710432c6ca204b7fab0ab': cosmetics: Drop particularly redundant silly comments Merged-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
2016-02-18cosmetics: Drop particularly redundant silly commentsDiego Biurrun
2015-04-20Merge commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25'Michael Niedermayer
* 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>
2015-04-19lavc: Replace av_dlog and tprintf with internal macrosVittorio Giovara
2015-03-22avcodec/h264_cavlc: Drop local_ref_countMichael Niedermayer
This basically switches to the implementation from f6f7d1504134683c435e2c7d804279d982e52bb4 which seems faster Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '7505c8dfba255f8e6c6dbb574d0cec91da16f24d'Michael Niedermayer
* commit '7505c8dfba255f8e6c6dbb574d0cec91da16f24d': h264_cavlc: constify all uses of H264Context Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'e9b2383bf86b38ad18a001801aee20c8182e29bd'Michael Niedermayer
* commit 'e9b2383bf86b38ad18a001801aee20c8182e29bd': h264: move mb_mbaff into the per-slice context Conflicts: libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'bc98e8c0e0a8babfea35c98855e366b29cbe1191'Michael Niedermayer
* commit 'bc98e8c0e0a8babfea35c98855e366b29cbe1191': h264: move mb_field_decoding_flag into the per-slice context Conflicts: libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'f42485dbce614b3f63182845da43db690b427b7c'Michael Niedermayer
* commit 'f42485dbce614b3f63182845da43db690b427b7c': h264: use a separate GetBitContext for slice data Conflicts: libavcodec/h264.c libavcodec/h264_cavlc.c libavcodec/h264_parser.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '404a416d4b1fcbf9db5569481d8181f296c01ea9'Michael Niedermayer
* commit '404a416d4b1fcbf9db5569481d8181f296c01ea9': h264: remove some remnants of data partitioning Conflicts: libavcodec/h264.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'd4d9068cdf8f4b2b87ae87a2ef880d243f77b977'Michael Niedermayer
* commit 'd4d9068cdf8f4b2b87ae87a2ef880d243f77b977': h264: move mb_{x,y} into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264_cavlc.c libavcodec/h264_mb.c libavcodec/h264_slice.c libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '0edbe6faa7ef80daf0e84353cbe733389bf1a522'Michael Niedermayer
* commit '0edbe6faa7ef80daf0e84353cbe733389bf1a522': h264: move mb_xy into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264_cabac.c libavcodec/svq3.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '47a0d393504d6726c4a235951153bee0abb3f7d6'Michael Niedermayer
* commit '47a0d393504d6726c4a235951153bee0abb3f7d6': h264: move mb_skip_run into the per-slice context Conflicts: libavcodec/h264_cavlc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'e7226984ac13aacb84eae77a372df8ff7685848f'Michael Niedermayer
* commit 'e7226984ac13aacb84eae77a372df8ff7685848f': h264: move [{top,left}_]cbp into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'bf03a878a76dea29b36f368759e9f66102b39a5f'Michael Niedermayer
* commit 'bf03a878a76dea29b36f368759e9f66102b39a5f': h264: move mb[_{padding,luma_dc}] into the per-slice context Conflicts: libavcodec/h264.h libavcodec/h264_cavlc.c libavcodec/h264_mb.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'b063582e0c4f775a8ba377488bd085595e0e7fae'Michael Niedermayer
* commit 'b063582e0c4f775a8ba377488bd085595e0e7fae': h264: move intra_pcm_ptr into the per-slice context Conflicts: libavcodec/h264.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '95eb35f30513e335990ad0d5dca6ddc318477291'Michael Niedermayer
* commit '95eb35f30513e335990ad0d5dca6ddc318477291': h264: move the ref lists variables into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_direct.c libavcodec/h264_mb.c libavcodec/h264_picture.c libavcodec/h264_refs.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'ed451a08a46b2b07fd2dba3e55ffddd18ae6e3d6'Michael Niedermayer
* commit 'ed451a08a46b2b07fd2dba3e55ffddd18ae6e3d6': h264: move sub_mb_type into the per-slice context Conflicts: libavcodec/h264_cabac.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '56febc993b928ccc039a32158ca60b234c311875'Michael Niedermayer
* commit '56febc993b928ccc039a32158ca60b234c311875': h264: move the slice type variables into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_slice.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'e6287f077c3e8e4aca11e61dd4bade1351439e6b'Michael Niedermayer
* commit 'e6287f077c3e8e4aca11e61dd4bade1351439e6b': h264: move {mv,ref}_cache into the per-slice context Conflicts: libavcodec/h264_cabac.c libavcodec/h264_mb.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit 'f69574cf7aca4fe4d57a2155e925f37fc863474d'Michael Niedermayer
* commit 'f69574cf7aca4fe4d57a2155e925f37fc863474d': h264: move non_zero_count_cache into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264_cabac.c libavcodec/h264_cavlc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '64c81b2cd0dcf1fe66c381a5d2c707dddcf35a7e'Michael Niedermayer
* commit '64c81b2cd0dcf1fe66c381a5d2c707dddcf35a7e': h264: move *_samples_available into the per-slice context Conflicts: libavcodec/h264.c libavcodec/h264_mb.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '7d8154edd594981e7891d57de91f2260f8a62939'Michael Niedermayer
* commit '7d8154edd594981e7891d57de91f2260f8a62939': h264: move intra4x4_pred_mode[_cache] into the per-slice context Conflicts: libavcodec/h264.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '8b00f4df20f4a8ab0656fdaf7d00233a6515a052'Michael Niedermayer
* commit '8b00f4df20f4a8ab0656fdaf7d00233a6515a052': h264: move some neighbour information into the per-slice context Conflicts: libavcodec/h264_cabac.c libavcodec/h264_cavlc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '4bd5ac200d15b4f458a50f66006549825f9fc865'Michael Niedermayer
* commit '4bd5ac200d15b4f458a50f66006549825f9fc865': h264: move {chroma,intra16x16}_pred_mode into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
2015-03-21Merge commit '5355ed6b20e941430c4f8fb82644e87a65366d61'Michael Niedermayer
* commit '5355ed6b20e941430c4f8fb82644e87a65366d61': h264: move {prev,next}_mb_skipped into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>