summaryrefslogtreecommitdiff
path: root/libavcodec/h264_cabac.c
Commit message (Collapse)AuthorAge
* Eliminate FF_COMMON_FRAME macro.Diego Biurrun2011-07-11
| | | | | 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.
* H.264: use fill_rectangle in CABAC decodingJason Garrett-Glaser2011-07-08
|
* H.264: template left MB handlingJason Garrett-Glaser2011-07-03
| | | | Faster H.264 decoding with ALLOW_INTERLACE off.
* H.264: faster write_back_*Jason Garrett-Glaser2011-07-03
| | | | Avoid aliasing, unroll loops, and inline more functions.
* 4:4:4 H.264 decoding supportJason Garrett-Glaser2011-06-13
| | | | Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
* Roll back 4:4:4 H.264 for nowJason Garrett-Glaser2011-06-13
| | | | Needs some ARM/PPC asm modifications.
* 4:4:4 H.264 decoding supportJason Garrett-Glaser2011-06-13
| | | | Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
* Add support for higher QP values in h264.Oskar Arvidsson2011-05-10
| | | | | | | | 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-10
| | | | | | | | | | 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-02
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* Revert 2a1f431d38ea9c05abb215d70c7dc09cdb6888ab, it broke H264 lossless.Ronald S. Bultje2011-01-20
|
* Set gray (128) U/V planes for chroma-less samples. Fixes two fate samplesRonald S. Bultje2011-01-20
| | | | when played with -flags emu_edge.
* Remove evil timers that snuck their way into r26375.Jason Garrett-Glaser2011-01-15
| | | | Originally committed as revision 26377 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix r26375 on non-x86.Jason Garrett-Glaser2011-01-15
| | | | Originally committed as revision 26376 to svn://svn.ffmpeg.org/ffmpeg/trunk
* H.264: Partially inline CABAC residual decodingJason Garrett-Glaser2011-01-15
| | | | | | | | | | Improves CABAC performance about ~1.2%. Trick originates from x264 and has also been used in ffvp8. It's useful because coded block flags are usually zero, so it helps to have the early termination inlined into the main function. Originally committed as revision 26375 to svn://svn.ffmpeg.org/ffmpeg/trunk
* H.264/SVQ3: make chroma DC work the same way as luma DCJason Garrett-Glaser2011-01-15
| | | | | | | 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-14
| | | | | | | 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-14
| | | | | | | | | | 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
* Remove explicit filename from Doxygen @file commands.Diego Biurrun2010-04-20
| | | | | | | | 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
* Replace @returns by @return.Benoit Fouet2010-03-30
| | | | Originally committed as revision 22729 to svn://svn.ffmpeg.org/ffmpeg/trunk
* h264: Use + instead of | in some placesAlexander Strange2010-03-26
| | | | | | 6 insns less on x86-64/gcc 4.2. Originally committed as revision 22692 to svn://svn.ffmpeg.org/ffmpeg/trunk
* h264: Remove unused function argumentAlexander Strange2010-03-26
| | | | Originally committed as revision 22690 to svn://svn.ffmpeg.org/ffmpeg/trunk
* h264: Simplify decode_cabac_residual() specializationAlexander Strange2010-03-26
| | | | | | Gives more consistent inlining with some compilers (such as llvm). Originally committed as revision 22689 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove some unneeded fill_rectangle() for 16x16 blocks.Michael Niedermayer2010-02-28
| | | | Originally committed as revision 22124 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Optimize (amvd>2)+(amvd>32), about 1 cpu cycles faster.Zhou Zongyi2010-02-26
| | | | | | patch by Zhou Zongyi @ zhouzy () os punkt pku dot edu speck cn Originally committed as revision 22084 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change mvd_cache & mvd_table to 8bit, this is overall a bit fasterMichael Niedermayer2010-02-24
| | | | | | | for high resolution videos. about 20cycles faster per MB for cathederal. Originally committed as revision 22038 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Calculate mvd without abs()Michael Niedermayer2010-02-24
| | | | | | same speed (ask gcc why, i dont know) Originally committed as revision 22035 to svn://svn.ffmpeg.org/ffmpeg/trunk
* switch back to (amvd>2)+(amvd>32), its 5 cpu cycles faster now.Michael Niedermayer2010-02-24
| | | | Originally committed as revision 22032 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Factorize common code from the top of decode_cabac_mb_mvd()Michael Niedermayer2010-02-24
| | | | | | 10-15 cpu cycles faster. Originally committed as revision 22029 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace mvd>2 + mvd>32 by MIN((mvd+28)*17>>9, 2)Michael Niedermayer2010-02-24
| | | | | | | | same speed as far as i can meassure but it might have fewer branches on some archs. Idea from x264 / jason Originally committed as revision 22027 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace ad-hoc fill rectangle by fill_rectangle().Michael Niedermayer2010-02-24
| | | | Originally committed as revision 22025 to svn://svn.ffmpeg.org/ffmpeg/trunk
* get rid of an if() 1 cpu cycle faster.Michael Niedermayer2010-02-19
| | | | Originally committed as revision 21889 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Get rid of a local variable, 10 cpu cycles faster.Michael Niedermayer2010-02-19
| | | | Originally committed as revision 21888 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move abs() from decode_cabac_mb_mvd() to the code that writes mvd_cache.Michael Niedermayer2010-02-18
| | | | | | 4-8 cycles faster Originally committed as revision 21887 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Speedup decode_cabac_field_decoding_flag() by 9 cpu cycles.Michael Niedermayer2010-02-18
| | | | Originally committed as revision 21875 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move check for and call of predict_field_decoding_flag() from the mb code toMichael Niedermayer2010-02-17
| | | | | | the row code. This function would only be needed on a MB basis for MBAFF+FMO Originally committed as revision 21860 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 2x faster ff_h264_init_cabac_states(), 4k cpu cycles less.Michael Niedermayer2010-02-16
| | | | | | Sadly this is just per slice so the speedup with normal files should be negligible. Originally committed as revision 21859 to svn://svn.ffmpeg.org/ffmpeg/trunk
* 2 cpu cycles faster context calculation for decode_cabac_intra_mb_type()Michael Niedermayer2010-02-16
| | | | Originally committed as revision 21845 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Drop a few redundant slice_num checks.Michael Niedermayer2010-02-16
| | | | Originally committed as revision 21844 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Drop compute_mb_neighbors() and move fill_decode_neighbors() up to take itsMichael Niedermayer2010-02-15
| | | | | | | role. Should be faster as this is a strict code removial. Originally committed as revision 21843 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Split setting neighboring MBs from fill_decode_caches()Michael Niedermayer2010-02-15
| | | | | | no speed change. Originally committed as revision 21842 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Simplify decode_cabac_mb_intra4x4_pred_mode().Michael Niedermayer2010-02-15
| | | | | | same speed Originally committed as revision 21839 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Merge decode_cabac_mb_type_b() into calling code.Michael Niedermayer2010-02-15
| | | | | | This avoids a conditional branch and is about 3 cpu cyclues faster. Originally committed as revision 21838 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Merge the single line function decode_cabac_mb_transform_size()Michael Niedermayer2010-02-15
| | | | | | | into the calling code. 8 cpu cycles faster Originally committed as revision 21828 to svn://svn.ffmpeg.org/ffmpeg/trunk
* indentMichael Niedermayer2010-02-14
| | | | Originally committed as revision 21827 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Merge decode_cabac_mb_dqp() with surronding code.Michael Niedermayer2010-02-14
| | | | | | ~20 cpu cycles faster Originally committed as revision 21826 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Set sub_mb_type in direct_cache instead of just the direct flag.Michael Niedermayer2010-02-14
| | | | | | Simpler, cleaner and faster. Originally committed as revision 21822 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Store sub_mb_type in direct_cache/direct_table.Michael Niedermayer2010-02-14
| | | | | | This is equal complexity but could be more usefull. Originally committed as revision 21821 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove slice_table checks from decode_cabac_mb_cbp_luma() and set ↵Michael Niedermayer2010-02-14
| | | | | | | | left/top_cbp so these checks arent needed. Originally committed as revision 21819 to svn://svn.ffmpeg.org/ffmpeg/trunk