summaryrefslogtreecommitdiff
path: root/libavcodec/h264.h
Commit message (Collapse)AuthorAgeFilesLines
* Merge remote branch 'qatar/master'Michael Niedermayer2011-05-111-5/+5
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (30 commits) AVOptions: make default_val a union, as proposed in AVOption2. arm/h264pred: add missing argument type. h264dsp_mmx: place bracket outside #if/#endif block. lavf/utils: fix ff_interleave_compare_dts corner case. fate: add 10-bit H264 tests. h264: do not print "too many references" warning for intra-only. Enable decoding of high bit depth h264. Adds 8-, 9- and 10-bit versions of some of the functions used by the h264 decoder. Add support for higher QP values in h264. Add the notion of pixel size in h264 related functions. Make the h264 loop filter bit depth aware. Template dsputil_template.c with respect to pixel size, etc. Template h264idct_template.c with respect to pixel size, etc. Preparatory patch for high bit depth h264 decoding support. Move some functions in dsputil.c into a new file dsputil_template.c. Move the functions in h264idct into a new file h264idct_template.c. Move the functions in h264pred.c into a new file h264pred_template.c. Preparatory patch for high bit depth h264 decoding support. Add pixel formats for 9- and 10-bit yuv420p. Choose h264 chroma dc dequant function dynamically. ... Conflicts: doc/APIchanges ffmpeg.c ffplay.c libavcodec/alpha/dsputil_alpha.c libavcodec/arm/dsputil_init_arm.c libavcodec/arm/dsputil_init_armv6.c libavcodec/arm/dsputil_init_neon.c libavcodec/arm/dsputil_iwmmxt.c libavcodec/arm/h264pred_init_arm.c libavcodec/bfin/dsputil_bfin.c libavcodec/dsputil.c libavcodec/h264.c libavcodec/h264.h libavcodec/h264_cabac.c libavcodec/h264_cavlc.c libavcodec/h264_loopfilter.c libavcodec/h264_ps.c libavcodec/h264_refs.c libavcodec/h264dsp.c libavcodec/h264idct.c libavcodec/h264pred.c libavcodec/mlib/dsputil_mlib.c libavcodec/options.c libavcodec/ppc/dsputil_altivec.c libavcodec/ppc/dsputil_ppc.c libavcodec/ppc/h264_altivec.c libavcodec/ps2/dsputil_mmi.c libavcodec/sh4/dsputil_align.c libavcodec/sh4/dsputil_sh4.c libavcodec/sparc/dsputil_vis.c libavcodec/utils.c libavcodec/version.h libavcodec/x86/dsputil_mmx.c libavformat/options.c libavformat/utils.c libavutil/pixfmt.h libswscale/swscale.c libswscale/swscale_internal.h libswscale/swscale_template.c tests/ref/seek/lavf_avi Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Add support for higher QP values in h264.Oskar Arvidsson2011-05-101-3/+4
| | | | | | | | | | | | | | | | 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>
| * Add the notion of pixel size in h264 related functions.Oskar Arvidsson2011-05-101-4/+5
| | | | | | | | | | | | | | | | | | | | 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>
| * Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.Stefano Sabatini2011-05-021-3/+3
| | | | | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* | SVQ3: Move svq3 specific fields to their own context.Baptiste Coudurier2011-05-051-7/+0
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*Stefano Sabatini2011-05-021-3/+3
| |
* | Merge remote branch 'qatar/master'Michael Niedermayer2011-04-271-2/+0
|\ \ | |/ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * qatar/master: (23 commits) ac3enc: correct the flipped sign in the ac3_fixed encoder Eliminate pointless '#if 1' statements without matching '#else'. Add AVX FFT implementation. Increase alignment of av_malloc() as needed by AVX ASM. Update x86inc.asm from x264 to allow AVX emulation using SSE and MMX. mjpeg: Detect overreads in mjpeg_decode_scan() and error out. documentation: extend documentation for ffmpeg -aspect option APIChanges: update commit hashes for recent additions. lavc: deprecate FF_*_TYPE macros in favor of AV_PICTURE_TYPE_* enums aac: add headers needed for log2f() lavc: remove FF_API_MB_Q cruft lavc: remove FF_API_RATE_EMU cruft lavc: remove FF_API_HURRY_UP cruft pad: make the filter parametric vsrc_movie: add key_frame and pict_type. vsrc_movie: fix leak in request_frame() lavfi: add key_frame and pict_type to AVFilterBufferRefVideo. vsrc_buffer: add sample_aspect_ratio fields to arguments. lavfi: add fieldorder filter scale: make the filter parametric ... Conflicts: Changelog doc/filters.texi ffmpeg.c libavcodec/ac3dec.h libavcodec/dsputil.c libavfilter/avfilter.h libavfilter/vf_scale.c libavfilter/vf_yadif.c libavfilter/vsrc_buffer.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * Eliminate pointless '#if 1' statements without matching '#else'.Diego Biurrun2011-04-261-2/+0
| |
| * Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-191-4/+4
| | | | | | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
| * h264: Add Intra and Constrained Baseline profiles to avctx.profileJanne Grunau2011-02-011-0/+6
| |
| * Make ff_h264_decode_rbsp_trailing static to h264.cDiego Elio Pettenò2011-01-251-6/+0
| | | | | | | | Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net>
| * Revert 2a1f431d38ea9c05abb215d70c7dc09cdb6888ab, it broke H264 lossless.Ronald S. Bultje2011-01-201-1/+0
| |
* | H264: Split out hl_motion and template it, this seems a bit fasterMichael Niedermayer2011-04-101-0/+6
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | H264: replace pixel_size by pixel_shiftMichael Niedermayer2011-04-101-1/+1
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Add support for higher QP values in h264.Oskar Arvidsson2011-04-101-3/+4
| | | | | | | | | | | | | | | | 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: Michael Niedermayer <michaelni@gmx.at>
* | Add the notion of pixel size in h264 related functions.Oskar Arvidsson2011-04-101-4/+5
| | | | | | | | | | | | | | | | | | | | 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: Michael Niedermayer <michaelni@gmx.at>
* | Fake-Merge remote-tracking branch 'ffmpeg-mt/master'Michael Niedermayer2011-03-221-1/+3
| |
* | h264: Add Intra and Constrained Baseline profiles to avctx.profileJanne Grunau2011-02-021-0/+6
| | | | | | | | (cherry picked from commit fe9a3fbe42ebe5debd57550313ed4c3a065f1770)
* | Make ff_h264_decode_rbsp_trailing static to h264.cDiego Elio Pettenò2011-01-261-6/+0
| | | | | | | | | | Signed-off-by: Janne Grunau <janne-ffmpeg@jannau.net> (cherry picked from commit 8529731961d79fc0e747b16152df3d470b530537)
* | Revert 2a1f431d38ea9c05abb215d70c7dc09cdb6888ab, it broke H264 lossless.Ronald S. Bultje2011-01-211-1/+0
|/ | | | (cherry picked from commit 66c6b5e2a5e6376c4a5c65b1d96fd7a1580bdfcf)
* H.264/SVQ3: make chroma DC work the same way as luma DCJason Garrett-Glaser2011-01-151-0/+1
| | | | | | | 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
* H.264: switch to x264-style tracking of luma/chroma DC NNZJason Garrett-Glaser2011-01-141-3/+16
| | | | | | | 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
* H.264: split luma dc idct out and implement MMX/SSE2 versionsJason Garrett-Glaser2011-01-141-4/+1
| | | | | | | | | | About 2.5x the speed. NOTE: the way that the asm code handles large qmuls is a bit suboptimal. If x264-style dequant was used (separate shift and qmul values), it might be possible to get some extra speed. Originally committed as revision 26336 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Add av_unused to decode_mb_skip declaration to fix the following warning:Eli Friedman2010-07-061-1/+1
| | | | | | | libavcodec/h264.h:1260: warning: ‘decode_mb_skip’ defined but not used patch by Eli Friedman, eli.friedman gmail com Originally committed as revision 24069 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Factorize ff_generate_sliding_window_mmcos() out.Michael Niedermayer2010-07-051-0/+2
| | | | Originally committed as revision 24056 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix grammar errors in documentationMåns Rullgård2010-06-301-11/+11
| | | | Originally committed as revision 23904 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cleanup prev commit, flag variable should start with 0Howard Chu2010-05-281-1/+1
| | | | Originally committed as revision 23364 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Parse avctx->extradata if available.Howard Chu2010-05-281-0/+1
| | | | | | Fixes many "non-existing PPS referenced" error messages Originally committed as revision 23363 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Factorize ff_h264_decode_extradata().Howard Chu2010-05-261-0/+1
| | | | | | Patch by Howard Chu, hyc highlandsun com Originally committed as revision 23340 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove explicit filename from Doxygen @file commands.Diego Biurrun2010-04-201-1/+1
| | | | | | | | Passing an explicit filename to this command is only necessary if the documentation in the @file block refers to a file different from the one the block resides in. Originally committed as revision 22921 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move static function fill_filter_caches() from h264.h to h264.c.Diego Biurrun2010-04-131-216/+0
| | | | | | | | The function is only used within that file, so it makes sense to place it there. This fixes many warnings of the type: h264.h:1170: warning: ‘fill_filter_caches’ defined but not used Originally committed as revision 22876 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix implicit weight for b frames in mbaff.Michael Niedermayer2010-03-301-1/+1
| | | | Originally committed as revision 22733 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace @returns by @return.Benoit Fouet2010-03-301-4/+4
| | | | Originally committed as revision 22729 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move H264 dsputil functions into their own structMåns Rullgård2010-03-161-0/+2
| | | | | | | | | | | This moves the H264-specific functions from DSPContext to the new H264DSPContext. The code is made conditional on CONFIG_H264DSP which is set by the codecs requiring it. The qpel and chroma MC functions are not moved as these are used by non-h264 code. Originally committed as revision 22565 to svn://svn.ffmpeg.org/ffmpeg/trunk
* H264: fix signed overflow in constant multiplicationMåns Rullgård2010-03-151-1/+1
| | | | | | This fixes libavcodec/h264.h:1100: warning: integer overflow in expression Originally committed as revision 22558 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove DECLARE_ALIGNED_{8,16} macrosMåns Rullgård2010-03-061-6/+6
| | | | | | | These macros are redundant. All uses are replaced with the generic DECLARE_ALIGNED macro instead. Originally committed as revision 22233 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Port Optimizations about *_type init from decode to filter code.Michael Niedermayer2010-03-041-6/+11
| | | | | | 1 cpu cycle faster Originally committed as revision 22193 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Optimize *_type init, 1.5 cpu cycles faster.Michael Niedermayer2010-03-041-1/+9
| | | | Originally committed as revision 22192 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Reorder indexes in weight tables.Michael Niedermayer2010-03-031-2/+2
| | | | | | 5 cpu cycles faster. Originally committed as revision 22183 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move all context fields that are not used in the mb and block layersMichael Niedermayer2010-03-031-64/+73
| | | | | | | to the end of the structure. 4 cpu cycles faster in 3k cpu cycles Originally committed as revision 22181 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove unused left_border field from context.Michael Niedermayer2010-03-031-1/+0
| | | | Originally committed as revision 22179 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Note about luma/chroma_weight tables and their datatype.Michael Niedermayer2010-03-031-0/+1
| | | | Originally committed as revision 22177 to svn://svn.ffmpeg.org/ffmpeg/trunk
* move svq3 specific fields to the end of the contextMichael Niedermayer2010-03-031-8/+7
| | | | Originally committed as revision 22171 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Merge weight & offset tables, 15 cpu cycles faster.Michael Niedermayer2010-03-031-4/+2
| | | | Originally committed as revision 22169 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Another 3 useless zeroing instructions.Michael Niedermayer2010-03-031-3/+0
| | | | Originally committed as revision 22162 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Load the whole left side of mv&ref only when needed.Michael Niedermayer2010-03-031-0/+12
| | | | | | 30 cpu cycles faster Originally committed as revision 22161 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Merge h->slice_table[left_xy[0/1] ] checks, 4 cpu cycles speedupMichael Niedermayer2010-02-271-2/+1
| | | | Originally committed as revision 22086 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Split *_type setting up, 4 cpu cycles faster.Michael Niedermayer2010-02-271-5/+12
| | | | Originally committed as revision 22085 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Only load the topleft mv/ref when the topright is unavailable.Michael Niedermayer2010-02-261-10/+11
| | | | | | 8 cpu cycles faster. Originally committed as revision 22079 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove some useless operations from the code setting left_cbp.Michael Niedermayer2010-02-261-3/+3
| | | | | | maybe 0.5 cpu cycles faster Originally committed as revision 22078 to svn://svn.ffmpeg.org/ffmpeg/trunk