summaryrefslogtreecommitdiff
path: root/libavcodec/vc1dec.c
Commit message (Collapse)AuthorAge
* vc1: initialize color propertiesVittorio Giovara2014-10-08
|
* vc1: Split the decoder in componentsLuca Barbato2014-10-08
| | | | Speed up the overall compilation time.
* vc1: Do not assume seek happens after decodingLuca Barbato2014-10-04
| | | | | | | If a seek is requested before the decoding start there is no current picture. CC: libav-stable@libav.org
* vc1: Use logical instead of bitwise or for twomvMichael Niedermayer2014-09-26
| | | | | | CC: libav-stable@libav.org Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Tim Walker <tdskywalker@gmail.com>
* vc1: Use logical instead of bitwise or for coded_interTim Walker2014-09-26
| | | | This appears to be the intended behavior.
* vc1: Add missing parentheses to conditions in vc1_decode_b_mb_intfr()Diego Biurrun2014-08-19
|
* cosmetics: Write NULL pointer inequality checks more compactlyGabriel Dume2014-08-15
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* cosmetics: Write NULL pointer equality checks more compactlyGabriel Dume2014-08-15
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mpegvideo: cosmetics: Lowercase ugly uppercase MPV_ function name prefixesDiego Biurrun2014-08-15
|
* vc-1: Add platform-specific start code search routine to VC1DSPContext.Ben Avison2014-08-04
| | | | | | | 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: Luca Barbato <lu_zero@gentoo.org>
* dsputil: Split off IDCT bits into their own contextDiego Biurrun2014-06-30
|
* mpeg: Split error resilience bits off into a separate fileDiego Biurrun2014-06-22
|
* dsputil: Split clear_block*/fill_block* off into a separate contextDiego Biurrun2014-06-18
|
* dsputil: Split off quarterpel bits into their own contextDiego Biurrun2014-05-29
|
* 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.
* lavc: Add an internal wrapper around get_format()Anton Khirnov2014-05-11
| | | | It will be useful in the following commits.
* 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>
* 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
|
* vc1dec: improve hwaccel #ifdefsRémi Denis-Courmont2014-03-31
|
* lavc: drop ff_pixfmt_list_420Vittorio Giovara2014-03-23
|
* mpegvideo: move mpegvideo formats-related defines to mpegutils.hVittorio Giovara2014-03-16
|
* 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>
* 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.
* 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.
* 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
* vc1: use the AVFrame API properly.Anton Khirnov2013-11-16
|
* 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.
* hwaccel: Simplify ff_find_hwaccelLuca Barbato2013-11-10
| | | | It is always called by passing fields from an AVCodecContext.
* cosmetics: Group .name and .long_name together in codec/format declarationsDiego Biurrun2013-10-03
|
* vc1dec: Check the error handling flags on slice/field header decode errorsMartin Storsjö2013-09-22
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Don't decode slices when the latest slice header failed to decodeMichael Niedermayer2013-09-22
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Make sure last_picture is initialized in vc1_decode_skip_blocksMartin Storsjö2013-09-22
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Undo mpegvideo initialization if unable to allocate tablesMartin Storsjö2013-09-22
| | | | | | | | | | Previously, s->context_initialized was left set to 1 if ff_vc1_decode_init_alloc_tables failed, skipping the initialization completely on the next decode call. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Fix leaks in ff_vc1_decode_init_alloc_tables on errorsMartin Storsjö2013-09-22
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: check mb_height validity.Luca Barbato2013-08-05
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* vc1: check the source buffer in vc1_mc functionsLuca Barbato2013-08-05
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* vdpau: remove old-style decodersRémi Denis-Courmont2013-08-05
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vc1dec: Fix mixed field/frame intensity compensationMichael Niedermayer2013-05-28
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Match addressing between compensation and MC in vc1_mc_4mv_chroma4Michael Niedermayer2013-05-28
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Handle top and bottom blocks in vc1_mc_4mv_chroma4() differently if ↵Michael Niedermayer2013-05-28
| | | | | | | | | | | needed Now it can use different references for those blocks and even use averaging. This fixes several chroma artifacts in several videos. Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Fix doxy for vc1_mc_4mv_chroma4()Michael Niedermayer2013-05-28
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Drop old use_ic code from vc1_b_mcMichael Niedermayer2013-05-28
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: Use shuffled use_ic instead of equally shuffled mv_modeMichael Niedermayer2013-05-28
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Implement intensity compensation for vc1_interp_mc()Michael Niedermayer2013-05-28
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Redesign the intensity compensationMichael Niedermayer2013-05-28
| | | | | | | | | | | Use the intensity-compensated reference frame for subsequent fields/B-frames. Since we currently don't change the reference frame we have to maintain lookup tables for intensity compensation in the following dependent frames. Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Shuffle field MVs after decoding, not beforeMichael Niedermayer2013-05-28
| | | | | | | | | | | | This simplifies the code since copying MVs to the reference is not needed anymore (and maybe something about fixing artifacts). Also remove the unused mv_f_last. Fixes a small number of artifacts in black_screen_VC-1.mkv and several more artifacts in other videos. Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Add support for interlaced B-framesSebastian Sandberg2013-05-17
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Remove some now unused variablesMartin Storsjö2013-05-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>