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
2014-02-14h264_sei: name buffering period type consistentlyVittorio Giovara
2014-02-14h264: drop outdated commentsVittorio Giovara
2014-02-14h264: store current_sps_id inside the current spsVittorio Giovara
In preparation for MVC support.
2014-02-08h264: give numbers to nalusVittorio Giovara
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2013-12-09h264: parse frame packing arrangement SEI messages and save relevant ↵Vittorio Giovara
stereo3d information
2013-10-31h264: wait for initial complete frame before outputing framesJohn Stebbins
This can be optionally disabled whith the "output_corrupt" flags option. When in "output_corrupt" mode, incomplete frames are signalled through AVFrame.flags FRAME_FLAG_INCOMPLETE_FRAME. Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-10-16lavc: Convert some remaining strides to ptrdiff_tRonald S. Bultje
2013-10-15h264_parser: Fix POC parsing for the case where MMCO_RESET is present.Yusuke Nakamura
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-24h264_parser: Set field_order and picture_structure.Yusuke Nakamura
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-04-19h264: fully support cropping.Anton Khirnov
Based on a patch by Vittorio Giovara <vittorio.giovara@gmail.com> Fixes Bug 378.
2013-03-21h264: add a parameter to the CHROMA444 macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: add a parameter to the CHROMA422 macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: add a parameter to the CABAC macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: add a parameter to the FIELD_OR_MBAFF_PICTURE macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: add a parameter to the FIELD_PICTURE macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: add a parameter to the FRAME_MBAFF macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: add a parameter to the MB_FIELD macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: add a parameter to the MB_MBAFF macro.Anton Khirnov
This way it does not look like a constant.
2013-03-21h264: make ff_h264_frame_start static.Anton Khirnov
It is not called from outside h264.c
2013-03-08lavc decoders: work with refcounted frames.Anton Khirnov
2013-03-07Add missing error_resilience includes to files that use ERDiego Biurrun
2013-02-23Remove pointless av_cold attributes in header filesDiego Biurrun
The init functions marked as av_cold have to be executed in any case, so there is no gain from trying to mark paths leading to such functions as unlikely.
2013-02-20h264/svq3: Stop using draw_edgesRonald S. Bultje
Instead, only extend edges on-demand when the motion vector actually crosses the visible decoded area using ff_emulated_edge_mc(). This changes decoding time for cathedral from 8.722sec to 8.706sec, i.e. 0.2% faster overall. More generally (VP8 uses this also), low-motion content gets significant speed improvements, whereas high-motion content tends to decode in approximately the same time. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-20h264: Don't store intra pcm samples in h->mbRonald S. Bultje
Instead, keep them in the bitstream buffer until we read them verbatim, this saves a memcpy() and a subsequent clearing of the target buffer. decode_cabac+decode_mb for a sample file (CAPM3_Sony_D.jsv) goes from 6121.4 to 6095.5 cycles, i.e. 26 cycles faster. Signed-off-by: Martin Storsjö <martin@martin.st>
2013-02-15h264: deMpegEncContextizeAnton Khirnov
Most of the changes are just trivial are just trivial replacements of fields from MpegEncContext with equivalent fields in H264Context. Everything in h264* other than h264.c are those trivial changes. The nontrivial parts are: 1) extracting a simplified version of the frame management code from mpegvideo.c. We don't need last/next_picture anymore, since h264 uses its own more complex system already and those were set only to appease the mpegvideo parts. 2) some tables that need to be allocated/freed in appropriate places. 3) hwaccels -- mostly trivial replacements. for dxva, the draw_horiz_band() call is moved from ff_dxva2_common_end_frame() to per-codec end_frame() callbacks, because it's now different for h264 and MpegEncContext-based decoders. 4) svq3 -- it does not use h264 complex reference system, so I just added some very simplistic frame management instead and dropped the use of ff_h264_frame_start(). Because of this I also had to move some initialization code to svq3. Additional fixes for chroma format and bit depth changes by Janne Grunau <janne-libav@jannau.net> Signed-off-by: Anton Khirnov <anton@khirnov.net>
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.