Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2013-02-07h264: remove silly macrosAnton Khirnov
They serve no useful purpose and wreak all kind of havoc when h264.h is included elsewhere.
2013-02-06dsputil: Separate h264chromaDiego Biurrun
2013-01-24dsputil: Separate h264 qpelMans Rullgard
The sh4 optimizations are removed, because the code is 100% identical to the C code, so it is unlikely to provide any real practical benefit. Signed-off-by: Diego Biurrun <diego@biurrun.de> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-01-23Drop DCTELEM typedefDiego Biurrun
It does not help as an abstraction and adds dsputil dependencies. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2013-01-18h264: avoid pointless copying of ref listsAnton Khirnov
ref_list is constructed from other fields per slice when needed, so do not copy it for both frame and slice threading. default_ref_list is constructed per frame and still needs to be copied to per-slice contexts for slice threading, but a copy is not needed for frame threading.
2013-01-15h264: fix ff_generate_sliding_window_mmcos() prototype.Anton Khirnov
It's been returning an error value since bad446e251405dc250c3cbee199072e083a1e4b9 Also check for the errors it returns.
2013-01-14h264: don't clobber mmco opcode tables for non-first slice headers.Ronald S. Bultje
Clobbering these tables will temporarily clobber the template used as a basis for other threads to start decoding from. If the other decoding thread updates from the template right at that moment, subsequent threads will get invalid (or, usually, none at all) mmco tables. This leads to invalid reference lists and subsequent decode failures. Therefore, instead, decode the mmco tables only for the first slice in a field or frame. For other slices, decode the bits and ensure they are identical to the mmco tables in the first slice, but don't ever clobber the context state. This prevents other threads from using a clobbered/invalid template as starting point for decoding, and thus fixes decoding in these cases. This fixes occasional (~1%) failures of h264-conformance-mr1_bt_a with frame-multithreading enabled. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2012-12-18h264: support frame parameter changes during frame-mtJanne Grunau
Fixes CVE-2012-2782.
2012-12-18h264: increase dist_scale_factor for up to 32 referencesJanne Grunau
Compute dist_scale_factor_field only for MBAFF since that is the only case in which it is used.
2012-12-18h264: prevent decoding of slice NALs in extradataJanne Grunau
It is not posible to call get_buffer during frame-mt codec initialization. Libavformat might pass huge amounts of data as extradata after parsing broken files. The 'extradata' for the fuzzed sample sample_varPAR_s5374_r001-02.avi is 2.8M large and contains multiple slices.
2012-12-14mpegvideo: treat delayed pictures as usedJanne Grunau
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.
2012-12-14h264: set parameters from SPS whenever it changesJanne Grunau
Fixes a crash in the fuzzed sample sample_varPAR.avi_s26638 with alternating bit depths.
2012-12-07h264: add a pointer for weighted prediction temporary bufferJanne Grunau
Reusing MpegEncContext's obmc_scratchpad for this becomes a mess with adaptive frame-mt.
2012-05-10h264: K&R formatting cosmetics for header files (part I/II)Diego Biurrun
2012-04-05h264: Factorize declaration of mb_sizes array.Diego Biurrun
2012-03-30h264: Make ff_h264_decode_end() static, it is not used externally.Diego Biurrun
Also drop the now unnecessary ff_ prefix from its name.
2012-02-10h264: disallow constrained intra prediction modes for luma.Ronald S. Bultje
Conversion of the luma intra prediction mode to one of the constrained ("alzheimer") ones can happen by crafting special bitstreams, causing a crash because we'll call a NULL function pointer for 16x16 block intra prediction, since constrained intra prediction functions are only implemented for chroma (8x8 blocks). Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
2011-12-19Revert "h264: skip start code search if the size of the nal unit is known"Janne Grunau
This reverts commit 87eebb3454ff0cd6af6ebf9e1d31bdfd1c3b601b.
2011-12-19h264: skip start code search if the size of the nal unit is knownJanne Grunau
Start code emulation prevention is only required in Annex B bytestream packed NAL units. For other coding formats the size is already known. Looking for a start code prefix can result in false positives like in http://streams.videolan.org/streams/mp4/Mr_MrsSmith-h264_aac.mp4 which has a false positive in the SPS.
2011-12-13error_resilience: use the ER_ namespaceLuca Barbato
Add the namespace to {AC_,DC_,MV_}{END,ERROR} macros Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-12-13doxygen: misc consistency, spelling and wording fixesDiego Biurrun
2011-12-03h264: fix frame reordering code.Ronald S. Bultje
Fixes fate-h264-conformance-{mr2_tandberg_e,mr3_tandberg_b} without requiring -strict 1.
2011-11-05h264: improve calculation of codec delay.Ronald S. Bultje
Fixes the following conformance suite samples: HCBP1_HHI_A.264, HCBP2_HHI_A.264, HCMP1_HHI_A.264 (main) HCHP1_HHI_B.264, HCHP2_HHI_A.264, HCHP3_HHI_A.264 (frext)
2011-10-21h264: 4:2:2 intra decoding supportBaptiste Coudurier
Signed-off-by: Diego Biurrun <diego@biurrun.de> Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-14h264: move fill_decode_neighbors()/fill_decode_caches() to h264_mvpred.hDiego Biurrun
This fixes a bunch of unused function warnings.
2011-07-12h264: move decode_mb_skip() from h264.h to h.264_mvpred.hDiego Biurrun
This resolves a circular dependency between the headers.
2011-07-12h264: move h264_mvpred.h include.Ronald S. Bultje
Fixes the following compile error with darwin/gcc-4.2.1: In file included from libavcodec/error_resilience.c:33: libavcodec/h264.h: In function ‘decode_mb_skip’: libavcodec/h264.h:773: error: ‘always_inline’ function could not be inlined in call to ‘pred_pskip_motion’: the function body must appear before caller libavcodec/h264.h:1334: error: called from here
2011-07-11Eliminate FF_COMMON_FRAME macro.Diego Biurrun
FF_COMMON_FRAME holds the contents of the AVFrame structure and is also copied to struct Picture. Replace by an embedded AVFrame structure in struct Picture.
2011-07-09H.264: merge fill_rectangle into P-SKIP MV prediction, to match B-SKIPJason Garrett-Glaser
2011-07-09H.264: faster P-SKIP decodingJason Garrett-Glaser
Inline the relevant parts of fill_decode_caches into P-SKIP mv prediction to avoid calling the whole thing.
2011-07-09H.264: av_always_inline some more functionsJason Garrett-Glaser
These weren't getting inlined all the time in all gcc versions.
2011-07-04H.264: template left MB handlingJason Garrett-Glaser
Faster H.264 decoding with ALLOW_INTERLACE off.
2011-07-04H.264: faster fill_decode_cachesJason Garrett-Glaser
Aliasing avoidance and general cleanup.
2011-07-04H.264: faster write_back_*Jason Garrett-Glaser
Avoid aliasing, unroll loops, and inline more functions.
2011-07-02doxygen: Prefer member groups over grouping into modulesReinhard Tartler
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.
2011-06-144:4:4 H.264 decoding supportJason Garrett-Glaser
Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
2011-06-14Roll back 4:4:4 H.264 for nowJason Garrett-Glaser
Needs some ARM/PPC asm modifications.
2011-06-134:4:4 H.264 decoding supportJason Garrett-Glaser
Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
2011-06-03svq3: Move svq3-specific fields to their own context.Baptiste Coudurier
Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-06-02H264/MPEG frame-level multi-threading.Alexander Strange
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10Add support for higher QP values in h264.Oskar Arvidsson
In high bit depth, the QP values may now be up to (51 + 6*(bit_depth-8)). Preparatory patch for high bit depth h264 decoding support. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10Add the notion of pixel size in h264 related functions.Oskar Arvidsson
In high bit depth the pixels will not be stored in uint8_t like in the normal case, but in uint16_t. The pixel size is thus 1 in normal bit depth and 2 in high bit depth. Preparatory patch for high bit depth h264 decoding support. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-02Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.Stefano Sabatini
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-26Eliminate pointless '#if 1' statements without matching '#else'.Diego Biurrun
2011-03-19Replace FFmpeg with Libav in licence headersMans Rullgard
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-02-01h264: Add Intra and Constrained Baseline profiles to avctx.profileJanne Grunau
2011-01-25Make ff_h264_decode_rbsp_trailing static to h264.cDiego Elio Pettenò
Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
2011-01-21Revert 2a1f431d38ea9c05abb215d70c7dc09cdb6888ab, it broke H264 lossless.Ronald S. Bultje
2011-01-15H.264/SVQ3: make chroma DC work the same way as luma DCJason Garrett-Glaser
No speed improvement, but necessary for some future stuff. Also opens up the possibility of asm chroma dc idct/dequant. Originally committed as revision 26349 to svn://svn.ffmpeg.org/ffmpeg/trunk
2011-01-15H.264: switch to x264-style tracking of luma/chroma DC NNZJason Garrett-Glaser
Useful so that we don't have to run the hierarchical DC iDCT if there aren't any coefficients. Opens up some future opportunities for optimization as well. Originally committed as revision 26337 to svn://svn.ffmpeg.org/ffmpeg/trunk