summaryrefslogtreecommitdiff
path: root/libavcodec/mpegvideo.c
Commit message (Collapse)AuthorAge
* mpegvideo: split ff_draw_horiz_band().Anton Khirnov2013-02-15
| | | | Split out dependency on MpegEncContext.
* error_resilience: decouple ER from MpegEncContextAnton Khirnov2013-02-15
|
* dsputil: Move ff_block_permute to mpegvideo_encDiego Biurrun2013-02-07
|
* mpegvideo: remove an unused function parameterAnton Khirnov2013-02-06
|
* mpegvideo: initialize dummy reference frames.Anton Khirnov2013-02-06
| | | | | | | Do not rely on get_buffer initializing them. Changes yadif tests (off by one in one border pixel), because yadif reads from those uninitialized lines.
* hwaccel: do not offer unsupported pixel formatsRémi Denis-Courmont2013-01-27
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* Drop DCTELEM typedefDiego Biurrun2013-01-22
| | | | | | It does not help as an abstraction and adds dsputil dependencies. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* mpegvideo: fix loop condition in draw_line()Xi Wang2013-01-19
| | | | | | | | | | | The loop condition `x = ex' is incorrect. It should be `x <= ex'. This bug was introduced in commit c65dfac4 "mpegvideo.c: K&R formatting and cosmetics." CC:libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vdpau: Add MPEG-1/2 decoding via hwaccel infrastructureRémi Denis-Courmont2013-01-13
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mpegvideo: initialize videodsp with correct pixel depthJanne Grunau2012-12-26
| | | | | Fixes decoding of 9/10 bit per pixel h264 videos as reported in https://bugzilla.libav.org/show_bug.cgi?id=404 .
* lavc: introduce VideoDSPContextRonald S. Bultje2012-12-20
| | | | | | | | Move some functions from dsputil. The idea is that videodsp contains functions that are useful for a large and varied set of video decoders. Currently, it contains emulated_edge_mc() and prefetch(). Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* mpegvideo: increase edge_emu_buffer size for VC1Janne Grunau2012-12-19
| | | | | | | | | The VC1 decoder uses edge_emu_buffer simultaneously for luma and chroma and needs more space. That was not a problem before f1d8763a02b5fce since the size for edge_emu_buffer was always calculated with 2 byte per pixel since the linesize was not known. Fixes occasionally fate errors in vc1_sa10143.
* mpegvideo: allocate scratch buffers after linesize is knownJanne Grunau2012-12-18
| | | | | | | | | | | Since we can't know which stride a custom get_buffer() implementation is going to use we have to allocate this scratch buffers after the linesize is known. It was pretty safe for 8 bit per pixel pixel formats since we always allocated memory for up to 16 bits per pixel. It broke hoever with cmdutis.c's alloc_buffer() and high pixel bit depth since it allocated larger edges than mpegvideo expected. Fixes fuzzed sample nasa-8s2.ts_s244342.
* mpegvideo: treat delayed pictures as usedJanne Grunau2012-12-13
| | | | | | This requires to move the avcodec_default_free_buffers() call to ff_MPV_common_end() since otherwise delayed pictures would get freed during a size change.
* cosmetics: Fix dropable --> droppable typoDiego Biurrun2012-12-09
|
* h264: set Picture.owner2 to the current threadJanne Grunau2012-11-27
| | | | | | | | This does not seem to have an effect currently. Fate-h264 passes with THREADS=1..16 and both threading types as before. It fixes however a segfault during error resilience with my adaptive-frame-mt patchset. A picture in use during error resilience gets realloced in another thread in the fuzzed sample sample_varPAR.avi_s226019.
* pixdesc: add av_pix_fmt_get_chroma_sub_sampleLuca Barbato2012-11-13
| | | | Deprecate avcodec_get_chroma_sub_sample.
* mpeg4videodec: Disable frame multithreading for GMC, its not implemented at allMichael Niedermayer2012-10-19
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* mpegvideo: remove write-only variableMans Rullgard2012-10-12
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* avcodec: Remove broken MMI optimizationsDiego Biurrun2012-10-12
| | | | The code fails to compile and is broken beyond repair.
* lavc: do not use av_pix_fmt_descriptors directly.Anton Khirnov2012-10-12
|
* mpegvideo: fix indentationAnton Khirnov2012-10-12
|
* Move avutil tables only used in libavcodec to libavcodec.Diego Biurrun2012-10-11
|
* Replace PIX_FMT_* -> AV_PIX_FMT_*, PixelFormat -> AVPixelFormatAnton Khirnov2012-10-08
|
* mpegvideo: set extended_data in ff_update_duplicate_context()Janne Grunau2012-10-03
| | | | | | AVFrame.extended_data has to reset to the AVFrame.data of the current thread context after copying the frame contents. Fixes crashes with frame-threading after 2bc0de38584.
* avcodec: Convert some commented-out printf/av_log instances to av_dlogDiego Biurrun2012-10-01
|
* avcodec: Drop some silly commented-out av_log() invocationsDiego Biurrun2012-10-01
|
* mpeg4: support frame parameter changes with frame-mtJanne Grunau2012-09-19
| | | | | | | Adds a flag context_reinit to MpegEncContext to relieable keep track of frame parameter changes which require a context reinitialization. This is required for broken inputs which change the frame size but error out before the context can be reinitialized.
* mpegvideo: check ff_find_unused_picture() return value for errorsJanne Grunau2012-09-19
|
* mpegvideo: release frame buffers before freeing themJanne Grunau2012-09-19
| | | | | Fixes triggering an assert in avcodec_default_release_buffer() introduced in 1b3439b30.
* mpegvideo: add reinit function for frame parameter changesJanne Grunau2012-09-19
| | | | | | This is mainly required for frame parameter changes during frame based multithreading but single threaded usage profits too from avoiding ff_MPV_common_end()/ff_MPV_common_init() cycles.
* mpegvideo: move frame size dependent memory management to separate functionsJanne Grunau2012-09-19
| | | | | This is a preparation for supporting frame size changes during frame-based multithreading.
* mpegvideo: set AVFrame fields to NULL after freeing the base memoryJanne Grunau2012-09-06
| | | | | | Prevents dangling pointers and makes access after free more obvious. Setting AVFrame.qscale_table to NULL is required for successfully allocating a previously freed Picture with ff_alloc_picture().
* mpegvideo: remove last_picture_ptr / h264 assert.Michael Niedermayer2012-09-04
| | | | | | | This assert is no longer true since h264 error concealment needs last_picture_ptr to be set. Signed-off-by: Martin Storsjö <martin@martin.st>
* MSS2 decoderAlberto Delmás2012-08-31
| | | | Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* x86: mpegvideo: more sensible names for optimization file and init functionDiego Biurrun2012-08-24
|
* mpegvideo: convert mpegvideo_common.h to a .c fileMans Rullgard2012-08-09
| | | | | | | | | | This file defines a single, huge function, MPV_motion(), which although being declared inline is not actually inlined by the compiler (for good reason). There is thus no sense in defining this function in a header file, resulting in multiple copies of it in the final library. Signed-off-by: Mans Rullgard <mans@mansr.com>
* Replace all CODEC_ID_* with AV_CODEC_ID_*Anton Khirnov2012-08-07
|
* mpegvideo: remove unnecessary inclusions of faandct.hMans Rullgard2012-07-29
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* mpegvideo: remove VLAsRonald S. Bultje2012-07-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Remove lowres video decodingMans Rullgard2012-04-21
| | | | | | | This feature is complex, of questionable utility, and slows down normal decoding. Signed-off-by: Mans Rullgard <mans@mansr.com>
* MPV: set reference frame pointers to NULL when allocation of dummy pictures ↵Janne Grunau2012-03-23
| | | | fails
* MPV: always mark dummy frames as referenceJanne Grunau2012-03-16
| | | | | | | If the dummy frame are not created from a reference frame they could be deleted untimely resulting in multithreaded decoder waiting on the current frame to finish. Noticed by Ronald S. Bultje in the RV34 decoder with a broken file.
* mpeg4: report frame decoding completion at ff_MPV_frame_end().Ronald S. Bultje2012-03-16
| | | | | | | Prevents hangs on corrupt input. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* Replace AVFrame pointer casts by proper struct member accesses.Diego Biurrun2012-03-01
|
* mpegvideo: Add ff_ prefix to nonstatic functionsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* dsputil: Add ff_ prefix to the dsputil*_init* functionsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vlc/rl: Add ff_ prefix to the nonstatic symbolsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Remove Sun medialib glue code.Diego Biurrun2012-02-08
| | | | | It is obscure, most likely unused and not bit-exact compared to libavcodec due to a different IDCT transform algorithm.
* mpegvideo: fix invalid memory access for small video dimensionsJohn Brooks2012-01-21
| | | | | | | | | | When either video dimension is only one macroblock, subtractions based on v_edge_pos and the macroblock size may be negative. In that situation, an unsigned comparison isn't sufficent to test for MV overruns, because a limit of (unsigned)-1 will let any other value pass. Signed-off-by: Anton Khirnov <anton@khirnov.net>