summaryrefslogtreecommitdiff
path: root/libavcodec/h264_mvpred.h
Commit message (Collapse)AuthorAgeFilesLines
* avcodec/h264_*: Remove unnecessary internal.h inclusionsAndreas Rheinhardt2022-01-261-2/+0
| | | | | | Also remove some other unnecessary headers while at it. Signed-off-by: Andreas Rheinhardt <andreas.rheinhardt@outlook.com>
* lavu/mem: move the DECLARE_ALIGNED macro family to mem_internal on next+1 bumpAnton Khirnov2021-01-011-0/+1
| | | | They are not properly namespaced and not intended for public use.
* avcodec/h264_mvpred: Fix runtime error: left shift of negative value -1Michael Niedermayer2017-03-091-1/+1
| | | | | | | Fixes: 734/clusterfuzz-testcase-4821293192970240 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* avcodec/h264_mvpred: Fix multiple runtime error: left shift of negative valueMichael Niedermayer2017-03-041-1/+1
| | | | | | | Fixes: 710/clusterfuzz-testcase-5091051431788544 Found-by: continuous fuzzing process https://github.com/google/oss-fuzz/tree/master/targets/ffmpeg Signed-off-by: Michael Niedermayer <michael@niedermayer.cc>
* Merge commit '9df889a5f116c1ee78c2f239e0ba599c492431aa'Clément Bœsch2016-07-291-1/+1
|\ | | | | | | | | | | | | * commit '9df889a5f116c1ee78c2f239e0ba599c492431aa': h264: rename h264.[ch] to h264dec.[ch] Merged-by: Clément Bœsch <u@pkh.me>
| * h264: rename h264.[ch] to h264dec.[ch]Anton Khirnov2016-06-211-1/+1
| | | | | | | | This is more consistent with the naming of other decoders.
* | Merge commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb'Clément Bœsch2016-06-211-2/+2
|\ \ | |/ | | | | | | | | | | * commit '41ed7ab45fc693f7d7fc35664c0233f4c32d69bb': cosmetics: Fix spelling mistakes Merged-by: Clément Bœsch <u@pkh.me>
| * cosmetics: Fix spelling mistakesVittorio Giovara2016-05-041-2/+2
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | Merge commit '3176217c60ca7828712985092d9102d331ea4f3d'Clément Bœsch2016-06-121-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * h264: decouple h264_ps from the h264 decoderAnton Khirnov2016-04-241-1/+1
| | | | | | | | | | | | | | | | | | 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.
* | avcodec/h264_mvpred: Fix undefined shifts in MAP_F2FMichael Niedermayer2015-07-011-2/+2
| | | | | | | | | | | | | | Fixes: asan_heap-oob_17301a3_2100_cov_3226131691_ff_add_pixels_clamped_mmx.m2ts Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '6a85dfc830f51f1f5c2d36d4182d265c1ea3ba25'Michael Niedermayer2015-04-201-9/+9
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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-191-9/+9
| |
* | Merge commit 'bc98e8c0e0a8babfea35c98855e366b29cbe1191'Michael Niedermayer2015-03-211-6/+6
|\ \ | |/ | | | | | | | | | | | | | | | | * 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>
| * h264: move mb_field_decoding_flag into the per-slice contextAnton Khirnov2015-03-211-6/+6
| |
* | Merge commit '3bea6409a1868354a1d29b34de424c3636c222b7'Michael Niedermayer2015-03-211-8/+8
|\ \ | |/ | | | | | | | | | | * commit '3bea6409a1868354a1d29b34de424c3636c222b7': h264_mvpred: constify all uses of H264Context Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264_mvpred: constify all uses of H264ContextAnton Khirnov2015-03-211-8/+8
| | | | | | | | | | All the variables modified by this code are either per-MB arrays or have been moved to the per-slice context
* | Merge commit 'd4d9068cdf8f4b2b87ae87a2ef880d243f77b977'Michael Niedermayer2015-03-211-8/+8
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * h264: move mb_{x,y} into the per-slice contextAnton Khirnov2015-03-211-8/+8
| |
* | Merge commit '0edbe6faa7ef80daf0e84353cbe733389bf1a522'Michael Niedermayer2015-03-211-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * 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>
| * h264: move mb_xy into the per-slice contextAnton Khirnov2015-03-211-2/+2
| |
* | Merge commit 'bd3e460b73dd54a68dc253e010c239cefc8d8d55'Michael Niedermayer2015-03-211-1/+1
|\ \ | |/ | | | | | | | | | | * commit 'bd3e460b73dd54a68dc253e010c239cefc8d8d55': h264: move direct_cache into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move direct_cache into the per-slice contextAnton Khirnov2015-03-211-1/+1
| |
* | Merge commit '6479c79f5517e2881bc881e737b2dbce69553878'Michael Niedermayer2015-03-211-3/+3
|\ \ | |/ | | | | | | | | | | * commit '6479c79f5517e2881bc881e737b2dbce69553878': h264: move mvd_cache into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move mvd_cache into the per-slice contextAnton Khirnov2015-03-211-3/+3
| |
* | Merge commit 'a67f8ae9a2c8529bf6a635e8ca4e3483592708b1'Michael Niedermayer2015-03-211-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | * commit 'a67f8ae9a2c8529bf6a635e8ca4e3483592708b1': h264: move mvd_table into the per-slice context Conflicts: libavcodec/h264.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move mvd_table into the per-slice contextAnton Khirnov2015-03-211-1/+1
| |
* | Merge commit 'e7226984ac13aacb84eae77a372df8ff7685848f'Michael Niedermayer2015-03-211-4/+4
|\ \ | |/ | | | | | | | | | | * commit 'e7226984ac13aacb84eae77a372df8ff7685848f': h264: move [{top,left}_]cbp into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move [{top,left}_]cbp into the per-slice contextAnton Khirnov2015-03-211-4/+4
| |
* | Merge commit '95eb35f30513e335990ad0d5dca6ddc318477291'Michael Niedermayer2015-03-211-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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>
| * h264: move the ref lists variables into the per-slice contextAnton Khirnov2015-03-211-1/+1
| |
* | Merge commit '066aafced4dc6c7c9e7b37082635472249f1e93e'Michael Niedermayer2015-03-211-3/+3
|\ \ | |/ | | | | | | | | | | | | | | | | * commit '066aafced4dc6c7c9e7b37082635472249f1e93e': h264: move direct_spatial_mv_pred into the per-slice context Conflicts: libavcodec/h264_mvpred.h Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move direct_spatial_mv_pred into the per-slice contextAnton Khirnov2015-03-211-3/+3
| |
* | Merge commit '56febc993b928ccc039a32158ca60b234c311875'Michael Niedermayer2015-03-211-10/+10
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | * 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>
| * h264: move the slice type variables into the per-slice contextAnton Khirnov2015-03-211-10/+10
| |
* | Merge commit '99a35d1ccbb6b6cd260ce5c8369a897a79fe6a3a'Michael Niedermayer2015-03-211-1/+1
|\ \ | |/ | | | | | | | | | | * commit '99a35d1ccbb6b6cd260ce5c8369a897a79fe6a3a': h264: move neighbor_transform_size into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move neighbor_transform_size into the per-slice contextAnton Khirnov2015-03-211-1/+1
| |
* | Merge commit 'e6287f077c3e8e4aca11e61dd4bade1351439e6b'Michael Niedermayer2015-03-211-32/+32
|\ \ | |/ | | | | | | | | | | | | | | | | | | * 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>
| * h264: move {mv,ref}_cache into the per-slice contextAnton Khirnov2015-03-211-32/+32
| |
* | Merge commit 'f69574cf7aca4fe4d57a2155e925f37fc863474d'Michael Niedermayer2015-03-211-1/+1
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * 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>
| * h264: move non_zero_count_cache into the per-slice contextAnton Khirnov2015-03-211-1/+1
| |
* | Merge commit '64c81b2cd0dcf1fe66c381a5d2c707dddcf35a7e'Michael Niedermayer2015-03-211-17/+17
|\ \ | |/ | | | | | | | | | | | | | | | | | | * 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>
| * h264: move *_samples_available into the per-slice contextAnton Khirnov2015-03-211-17/+17
| |
* | Merge commit '7d8154edd594981e7891d57de91f2260f8a62939'Michael Niedermayer2015-03-211-10/+10
|\ \ | |/ | | | | | | | | | | | | | | | | * commit '7d8154edd594981e7891d57de91f2260f8a62939': h264: move intra4x4_pred_mode[_cache] into the per-slice context Conflicts: libavcodec/h264.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move intra4x4_pred_mode[_cache] into the per-slice contextAnton Khirnov2015-03-211-10/+10
| |
* | Merge commit '8b00f4df20f4a8ab0656fdaf7d00233a6515a052'Michael Niedermayer2015-03-211-76/+82
|\ \ | |/ | | | | | | | | | | | | | | | | | | * 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>
| * h264: move some neighbour information into the per-slice contextAnton Khirnov2015-03-211-76/+82
| |
* | Merge commit '5355ed6b20e941430c4f8fb82644e87a65366d61'Michael Niedermayer2015-03-211-1/+1
|\ \ | |/ | | | | | | | | | | * commit '5355ed6b20e941430c4f8fb82644e87a65366d61': h264: move {prev,next}_mb_skipped into the per-slice context Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: move {prev,next}_mb_skipped into the per-slice contextAnton Khirnov2015-03-211-1/+1
| |
* | Merge commit 'd231e84b06a9964c840cff4e228509f706165fb6'Michael Niedermayer2015-03-211-2/+2
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | * commit 'd231e84b06a9964c840cff4e228509f706165fb6': h264: move the quantizers into the per-slice context Conflicts: libavcodec/dxva2_h264.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c Merged-by: Michael Niedermayer <michaelni@gmx.at>