summaryrefslogtreecommitdiff
path: root/libavcodec/vc1dec.c
Commit message (Collapse)AuthorAge
* Merge commit '5c1d7246cd65dc4db1b6dc36e29ce39fc1068f3f'Michael Niedermayer2014-05-11
|\ | | | | | | | | | | | | | | | | | | * commit '5c1d7246cd65dc4db1b6dc36e29ce39fc1068f3f': lavc: set AVCodecContext.hwaccel in ff_get_format() Conflicts: libavcodec/mpeg12dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: set AVCodecContext.hwaccel in ff_get_format()Anton Khirnov2014-05-11
| | | | | | | | This way each decoder does not have to do the same thing manually.
* | Merge commit '632ad2248e2e5d8cd4b51e6c87c943a38c3da425'Michael Niedermayer2014-05-11
|\| | | | | | | | | | | | | | | | | | | | | * commit '632ad2248e2e5d8cd4b51e6c87c943a38c3da425': lavc: Add an internal wrapper around get_format() Conflicts: libavcodec/h264_slice.c libavcodec/mpeg12dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: Add an internal wrapper around get_format()Anton Khirnov2014-05-11
| | | | | | | | It will be useful in the following commits.
* | Fix skiping typosMichael Niedermayer2014-04-27
| | | | | | | | | | Found-by: Alessandro Ghedini <alessandro@ghedini.me> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: print debug message if a b frame without reference is skipedMichael Niedermayer2014-04-26
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'cdf6eb5a9710566be217a3f17d3d94ac4e4d2662'Michael Niedermayer2014-04-26
|\| | | | | | | | | | | | | * commit 'cdf6eb5a9710566be217a3f17d3d94ac4e4d2662': vc1: Do not return an error when skipping b frames Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vc1: Do not return an error when skipping b framesAlessandro Ghedini2014-04-25
| | | | | | | | | | | | | | | | | | This caused mpv (and possibly others) to fallback to software decoding after seeking a VC1 stream. Bug-Id: 667 Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | vc-1: Add platform-specific start code search routine to VC1DSPContext.Ben Avison2014-04-25
| | | | | | | | | | | | | | Initialise VC1DSPContext for parser as well as for decoder. Note, the VC-1 code doesn't actually use the function pointer yet. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | vc1dsp: introduce cases for 8x8 and 16x16Christophe Gisquet2014-04-20
| | | | | | | | | | | | | | | | | | | | | | | | This allows further unrolling the DSP implementation where possible. x86 and ARM DSP modified by simply moving the multiple calls from vc1dec to the DSP code. Decoding improvements should only occurs because of the compiler actually able to unroll more. Decoding time: ~8.80s -> 8.64s (ie around 2%) Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: use av_realloc_array()Michael Niedermayer2014-04-18
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | iavcodec/vc1dec: Fix missing {}Michael Niedermayer2014-04-16
| | | | | | | | | | | | Fixes part of Ticket3466 Found-by: Andrey_Karpov / PVS-Studio Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2014-04-09
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: mpegvideo: operate with pointers to AVFrames instead of whole structs Conflicts: libavcodec/h261dec.c libavcodec/h263dec.c libavcodec/intrax8.c libavcodec/mpeg12enc.c libavcodec/mpegvideo.c libavcodec/mpegvideo.h libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_motion.c libavcodec/mpegvideo_xvmc.c libavcodec/msmpeg4.c libavcodec/ratecontrol.c libavcodec/vaapi.c libavcodec/vc1dec.c libavcodec/vdpau_vc1.c See: fc567ac49e17151f00f31b59030cd10f952612ef Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegvideo: operate with pointers to AVFrames instead of whole structswm42014-04-09
| | | | | | | | | | | | | | | | | | | | | | | | | | The most interesting parts are initialization in ff_MPV_common_init() and uninitialization in ff_MPV_common_end(). ff_mpeg_unref_picture and ff_thread_release_buffer have additional NULL checks for Picture.f, because these functions can be called on uninitialized or partially initialized Pictures. NULL pointer checks are added to ff_thread_release_buffer() stub function. Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
| * vc1dec: fix a possible unitialized variable warningVittorio Giovara2014-04-02
| |
* | Merge commit '654c7446a806c5dc8ec7800874c49a4c1ba2ce80'Michael Niedermayer2014-03-31
|\| | | | | | | | | | | | | * commit '654c7446a806c5dc8ec7800874c49a4c1ba2ce80': vc1dec: improve hwaccel #ifdefs Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vc1dec: improve hwaccel #ifdefsRémi Denis-Courmont2014-03-31
| |
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2014-03-23
|\| | | | | | | | | | | | | | | | | | | | | | | * qatar/master: lavc: drop ff_pixfmt_list_420 Conflicts: libavcodec/flvdec.c libavcodec/msmpeg4dec.c libavcodec/rv10.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: drop ff_pixfmt_list_420Vittorio Giovara2014-03-23
| |
* | Merge commit 'e0c16e4e3259cf50b5bac4c23bb6e517f397c74b'Michael Niedermayer2014-03-17
|\| | | | | | | | | | | | | | | | | | | | | | | | | * commit 'e0c16e4e3259cf50b5bac4c23bb6e517f397c74b': mpegvideo: move mpegvideo formats-related defines to mpegutils.h Conflicts: libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_mvpred.h libavcodec/svq1enc.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegvideo: move mpegvideo formats-related defines to mpegutils.hVittorio Giovara2014-03-16
| |
* | avcodec/vc1dec: remove blocks_off use from vc1_pred_b_mv()Michael Niedermayer2014-02-04
| | | | | | | | | | | | it should always be 0 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: vc1_pred_b_mv() is not used for fields, simplify codeMichael Niedermayer2014-02-04
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: Print warning for frame pictures with direct mode MBs, ↵Michael Niedermayer2014-02-01
| | | | | | | | | | | | | | | | | | followed by field pictures This case is not implemented No non fuzzed samples are known to use this Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: field pictures with direct mode MBs, followed by frame ↵Michael Niedermayer2014-02-01
| | | | | | | | | | | | | | | | | | | | | | pictures are not supported This case could occur when cuting and concatenating bitstreams Fixes out of array read Fixes: asan_heap-oob_1b33fdd_2849_cov_478905890_SA10143.vc1 Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit 'ebfe622bb1ca57cecb932e42926745cba7161913'Michael Niedermayer2014-01-09
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'ebfe622bb1ca57cecb932e42926745cba7161913': mpegvideo: drop support for real (non-emulated) edges Conflicts: libavcodec/mpegvideo.c libavcodec/mpegvideo_motion.c libavcodec/wmv2.c If this is slower on a major platform then it should be investigated and potentially reverted. See: 8fc52a5ef94712d900fc8fe7503cf9c9ba635143 See: 3969b4b861ce8152e3195e8f8c3437abd273b90a Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegvideo: drop support for real (non-emulated) edgesAnton Khirnov2014-01-09
| | | | | | | | | | | | | | Several decoders disable those anyway and they are not measurably faster on x86. They might be somewhat faster on other platforms due to missing emu edge SIMD, but the gain is not large enough (and those decoders relevant enough) to justify the added complexity.
| * vc1: Fix mb_height for field picturesMichael Niedermayer2013-12-17
| | | | | | | | | | | | | | | | | | | | Tables are always allocated now with sufficient space for either progressive or interlaced content. The alternative would be to detect a change and reallocate. This fixes decoding of a sample. Signed-off-by: Martin Storsjö <martin@martin.st>
* | vc1: simplify *_use_ic initializationMichael Niedermayer2013-12-22
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: use av_mallocz for luma_mvMichael Niedermayer2013-12-17
| | | | | | | | | | | | | | This ensures that no mvs are uninitialized at the time of loop filtering Fixes: msan_uninit-mem_7f0b6dfe293c_2786_SA20021.vc1 Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: fix mby_start for interlaced contentMichael Niedermayer2013-12-14
| | | | | | | | | | | | Fixes first frame of Ticket2531 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1: fix mb_height for field picturesMichael Niedermayer2013-12-14
| | | | | | | | | | | | | | | | | | | | Fixes ticket2531 Tables are always allocated now with sufficient space for either progressive or interlaced content. The alternative would be to detect a change and reallocate. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1: Factorize imode enum out / remove duplicationMichael Niedermayer2013-12-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: propagate errors from vc1_parse_sprites()Michael Niedermayer2013-12-14
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: zero SpriteData structMichael Niedermayer2013-12-14
| | | | | | | | | | | | | | | | | | Fixes use of uninitialized data, as alternative alpha could be calculated conditionally Fixes part of msan_uninit-mem_7f51a8b0b3b0_1009_Arlington.wmv Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: dont calculate unused values from uninitialized spritesMichael Niedermayer2013-12-14
| | | | | | | | | | | | | | Fixes use of uninitialized data Fixes part of msan_uninit-mem_7f51a8b0b3b0_1009_Arlington.wmv Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '66499f34b56fc6a9fdef25543bd9d576fc787895'Michael Niedermayer2013-12-06
|\| | | | | | | | | | | | | | | | | | | * commit '66499f34b56fc6a9fdef25543bd9d576fc787895': mpegvideo: do not set current_picture_ptr in decoders Conflicts: libavcodec/mss2.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * mpegvideo: do not set current_picture_ptr in decodersAnton Khirnov2013-12-05
| | | | | | | | | | | | | | | | | | | | | | This code was originally added in 5f1948111a4920ff74e31b4284ab0200f7938539 to h263 to set decoded frame pts to some random numbers (removed in a1c5cc429d99216406170eac7e8352860076d3e8) and then cargo culted to other decoders. The code is left in h263dec for now, since some part of the decoder (apparently OBMC) relies on the specific previous frame to be reused.
* | Merge commit 'ac1fc92ea410c396594fcd79f5d4491fe6a8cc90'Michael Niedermayer2013-12-06
|\| | | | | | | | | | | | | | | | | | | * commit 'ac1fc92ea410c396594fcd79f5d4491fe6a8cc90': vc1dec: move setting repeat_pict after frame_start() has been called. Conflicts: libavcodec/vc1dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vc1dec: move setting repeat_pict after frame_start() has been called.Anton Khirnov2013-12-05
| | | | | | | | | | This will allow removing the hacks where each decoder sets current_picture_ptr on its own.
* | Merge commit 'de4ec972c06d9047bc1b73bb13f858a5d77d8df0'Michael Niedermayer2013-11-22
|\| | | | | | | | | | | | | | | | | | | * commit 'de4ec972c06d9047bc1b73bb13f858a5d77d8df0': vc1: fix a memleak. Conflicts: libavcodec/vc1dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vc1: fix a memleak.Anton Khirnov2013-11-21
| | | | | | | | | | | | | | Happens on a B-frame when neither low_delay nor last_picture_ptr is set (probably corrupted streams only). Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
* | Merge commit 'd48c20630214a4effcc920e93a5044bee4e2002e'Michael Niedermayer2013-11-17
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit 'd48c20630214a4effcc920e93a5044bee4e2002e': qtrleenc: use the AVFrame API properly. ulti: use the AVFrame API properly. vc1: use the AVFrame API properly. flashsv: use the AVFrame API properly. Conflicts: libavcodec/flashsv.c libavcodec/qtrleenc.c libavcodec/ulti.c libavcodec/vc1dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * vc1: use the AVFrame API properly.Anton Khirnov2013-11-16
| |
* | Merge commit '458446acfa1441d283dacf9e6e545beb083b8bb0'Michael Niedermayer2013-11-15
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '458446acfa1441d283dacf9e6e545beb083b8bb0': lavc: Edge emulation with dst/src linesize Conflicts: libavcodec/cavs.c libavcodec/h264.c libavcodec/hevc.c libavcodec/mpegvideo_enc.c libavcodec/mpegvideo_motion.c libavcodec/rv34.c libavcodec/svq3.c libavcodec/vc1dec.c libavcodec/videodsp.h libavcodec/videodsp_template.c libavcodec/vp3.c libavcodec/vp8.c libavcodec/wmv2.c libavcodec/x86/videodsp.asm libavcodec/x86/videodsp_init.c Changes to the asm are not merged, they are left for volunteers or in their absence for later. The changes this merge introduces are reordering of the function arguments See: face578d56c2d1375e40d5e2a28acc122132bc55 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * lavc: Edge emulation with dst/src linesizeRonald S. Bultje2013-11-15
| | | | | | | | | | | | Allow supporting files for which the image stride is smaller than the maximum block size + number of subpel mc taps, e.g. a 64x64 VP9 file or a 16x16 VP8 file with -fflags +emu_edge.
* | Merge remote-tracking branch 'qatar/master'Michael Niedermayer2013-11-10
|\| | | | | | | | | | | | | | | | | | | * qatar/master: hwaccel: Simplify ff_find_hwaccel Conflicts: libavcodec/mpeg12dec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * hwaccel: Simplify ff_find_hwaccelLuca Barbato2013-11-10
| | | | | | | | It is always called by passing fields from an AVCodecContext.
* | vcodec/vc1dec: remove dead codeMichael Niedermayer2013-10-27
| | | | | | | | | | | | Fixes CID732196 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/vc1dec: use logical operation instead of bitwise for twomvMichael Niedermayer2013-10-23
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>