summaryrefslogtreecommitdiff
path: root/libavcodec/vc1.c
Commit message (Collapse)AuthorAge
* cosmetics: Fix spelling mistakesVittorio Giovara2016-05-04
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* Drop pointless assert.h #includesDiego Biurrun2016-05-03
|
* msmpeg4data: Move WMV2 data tables to their own fileDiego Biurrun2016-02-19
|
* cosmetics: Drop empty comment linesDiego Biurrun2016-02-18
|
* lavc: Replace av_dlog and tprintf with internal macrosVittorio Giovara2015-04-19
|
* lavc: deprecate the use of AVCodecContext.time_base for decodingAnton Khirnov2014-10-15
| | | | | | | | | | | When decoding, this field holds the inverse of the framerate that can be written in the headers for some codecs. Using a field called 'time_base' for this is very misleading, as there are no timestamps associated with it. Furthermore, this field is used for a very different purpose during encoding. Add a new field, called 'framerate', to replace the use of time_base for decoding.
* 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>
* Add av_image_check_sar() and use it to validate SARJustin Ruggles2014-06-20
|
* 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>
* vc1: Always reset numref when parsing a new frame header.Michael Niedermayer2014-01-20
| | | | | | | | | Fixes an issue where the B-frame coding mode switches from interlaced fields to interlaced frames, causing incorrect decisions in the motion compensation code and resulting in visual artifacts. CC: libav-stable@libav.org Signed-off-by: Tim Walker <tdskywalker@gmail.com>
* vc1: Enable the interlaced B-frame codepath.Tim Walker2014-01-13
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vc1: Fix intensity compensation performance regressionMason Carter2013-12-22
| | | | | | | | | | | Introduced by 28243b0d35b47bbf9abbd454fc444a6e0a9e7b71 Intensity compensation is always used once it was encountered, because v->next_use_ic is never set back to zero. Reset v->next_use_ic, when resetting v->next_luty/uv. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* 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: move MpegEncContext.resync_marker into VC1Context.Anton Khirnov2013-11-29
| | | | | The field still remains in MpegEncContext because it is used by the mpeg4 decoder.
* vc1: Reset numref if fieldmode is not setKostya Shishkov2013-11-26
| | | | | | | | | There are samples in the wild with B-frames and P-frames with different interlace mode. CC: libav-stable@libav.org Reported-by: Jean-Baptiste Kempf <jb@videolan.org> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vc1dec: Remove interlaced warningMichael Niedermayer2013-05-28
| | | | | | Also add a note about the feature in the changelog. 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>
* vc1: Reindent INIT_LUT(), align backslashesMartin Storsjö2013-05-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: Make INIT_LUT() self containedMichael Niedermayer2013-05-15
| | | | | | | Move the local variables it uses into the macro, enclosing them in a do {} while (0) scope. Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: Simplify code by using INIT_LUT()Michael Niedermayer2013-05-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: Move INIT_LUT() further up to allow using it in more placesMichael Niedermayer2013-05-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1dec: Do not allow field_mode to change after the first headerMichael Niedermayer2013-05-15
| | | | | | | | This fixes out of array accesses. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: implement frame interlaced b-frame header parsingHendrik Leppkes2013-05-14
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* avcodec: Add av_cold attributes to init functions missing themDiego Biurrun2013-05-04
|
* av_log_missing_feature() ---> avpriv_report_missing_feature()Diego Biurrun2013-03-13
|
* Remove unnecessary dsputil.h #includesDiego Biurrun2013-02-26
|
* vc1: Use codec ID from AVCodecContext while parsing frame headerMashiat Sarker Shakkhar2012-10-13
| | | | | | | This fixes a segfault with samples that I have (both of them MPEG-TS). Looks like avctx->codec is not being set during parsing. Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* Double motion vector range for HPEL interlaced picture in proper placeMashiat Sarker Shakkhar2012-10-10
| | | | | | | The existing code is not in the right place and it should cover both interlaced frame and field pictures. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* 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
|
* MSS2 decoderAlberto Delmás2012-08-31
| | | | Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* vc1: Do not read from array if index is invalid.Mashiat Sarker Shakkhar2012-03-26
| | | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* vc1: Move init code shared between decoder and parser to common code file.Diego Biurrun2012-03-07
| | | | This fixes standalone compilation of the VC-1 parser.
* vc1: Add ff_ prefix to nonstatic symbolsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* msmpeg4: Add ff_ prefixes to nonstatic symbolsMartin Storsjö2012-02-15
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* vc1: always read the bfraction element for interlaced fieldsHendrik Leppkes2012-01-26
| | | | | | | Previously, it would not be read if refdist_flag was not set, however according to the spec and the reference decoder, it should always be read. Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* vc1: don't read the interpfrm and bfraction elements for interlaced framesHendrik Leppkes2012-01-23
| | | | | | | This matches the spec as well as the reference decoder, and fixes a bug with interlaced frame decoding. Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* vc1: use an enum for Frame Coding ModeLuca Barbato2011-11-28
| | | | Document it a little and possibly fix a bug in dxva2_vc1.
* vc1: explicitly zero interlaced mode coding variables for progressive modeKostya Shishkov2011-10-13
| | | | | | | | Both v->fcm and v->field_mode are used in common code, now they won't be reset for progressive frame after interlaced one causing writing past the frame end for example. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* vc1: K&R reformatting cosmeticsKostya Shishkov2011-10-10
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* vc1dec: interlaced stream decoding support 3/3Mashiat Sarker Shakkhar2011-10-10
| | | | | | Cosmetics: break some lines and reformat TODOs Signed-off-by: Anton Khirnov <anton@khirnov.net>
* VC1: Support dynamic dimension changesAlberto Delmás2011-08-31
| | | | | | | | Fixes SA00072, SA00073, SA10150, SA10151, Issue2076 Improves SA10153 Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vc1: fix VC-1 Pulldown handling.John Stebbins2011-08-25
| | | | | | | | | | | | Pulldown flags are being set incorrectly and AVFrame->repeat_pict is not being set. Also, skipped frames exit header parsing too early and do not set pulldown flags appropriately. Ticks_per_frame needs to be set and time_base adjusted so player can extend frame duration by a field time. This fixes problems encountered when attempting to transcode HD-DVD EVOB files with HandBrake. Also makes these files play smoothly in avplay. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* Windows Media Image decoder (WMVP/WVP2)Alberto Delmás2011-08-23
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>
* VC-1: fix reading of custom PAR.Reimar Döffinger2011-08-15
| | | | | | | Custom PAR num/denum are in 1-256 range. Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de> Signed-off-by: Diego Biurrun <diego@biurrun.de>
* simple_idct: add 10-bit versionMans Rullgard2011-07-20
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* doxygen: Prefer member groups over grouping into modulesReinhard Tartler2011-07-02
| | | | | | | | | Before this, almost all module groups have been used for grouping functions and fields in structures semantically. This causes them to not appear properly in the file documentation and needlessly clutters up the "Modules" index. Additionally, this commit streamlines some spelling and appearances.
* Revert "VC1: merge idct8x8, coeff adjustments and put_pixels."Ronald S. Bultje2011-05-04
| | | | | | | This reverts commit f8bed30d8b176fa030f6737765338bb4a2bcabc9. The reason for this is that the overlap filter, which runs after IDCT, should run on unclamped values, and thus IDCT and put_pixels() cannot be merged if we want to attempt to be bitexact.
* Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.Stefano Sabatini2011-05-02
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* Parse sprite data for WMVP and WVP2, and decode sprites for the latterAlberto Delmás2011-04-10
| | | | Signed-off-by: Anton Khirnov <anton@khirnov.net>