summaryrefslogtreecommitdiff
path: root/libavcodec/h264_loopfilter.c
Commit message (Collapse)AuthorAge
...
* h264: DSP'ize MBAFF loopfilter.Ronald S. Bultje2011-05-10
|
* Replace FFmpeg with Libav in licence headersMans Rullgard2011-03-19
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* 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
* Move H264 dsputil functions into their own structMåns Rullgård2010-03-16
| | | | | | | | | | | 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
* Remove DECLARE_ALIGNED_{8,16} macrosMåns Rullgård2010-03-06
| | | | | | | 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
* H264: use alias-safe macrosMåns Rullgård2010-02-18
| | | | | | | This eliminates all aliasing violation warnings in h264 code. No measurable speed difference with gcc-4.4.3 on i7. Originally committed as revision 21881 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use LOCAL_ALIGNED macro for local arraysMåns Rullgård2010-02-17
| | | | Originally committed as revision 21866 to svn://svn.ffmpeg.org/ffmpeg/trunk
* h264: Remove unused variables.Alexander Strange2010-02-13
| | | | Originally committed as revision 21815 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix CAVLC+8x8DCT+MBAFF loopfiltering.Michael Niedermayer2010-02-07
| | | | | | Fixes issue1250 Originally committed as revision 21665 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Get rid of a check in one direction that cant be true in it in that partMichael Niedermayer2010-01-31
| | | | | | | of the code. No meassureable speed change. Originally committed as revision 21566 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Split first reference list comparission from mv comparission.Michael Niedermayer2010-01-30
| | | | | | about 0.5% faster MBAFF loop filtering Originally committed as revision 21552 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace h->left_type[0] by the local variable for it we have.Michael Niedermayer2010-01-30
| | | | | | No meassureable speed effect. Originally committed as revision 21541 to svn://svn.ffmpeg.org/ffmpeg/trunk
* slightly faster bit trickery.Michael Niedermayer2010-01-30
| | | | Originally committed as revision 21540 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Replace ?: by branchless code.Michael Niedermayer2010-01-30
| | | | | | about 0.5% faster loop filtering Originally committed as revision 21539 to svn://svn.ffmpeg.org/ffmpeg/trunk
* factorize first filter call out, this makes the code somewhatMichael Niedermayer2010-01-28
| | | | | | smaller without any speed loss. Originally committed as revision 21514 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Change wraper functions to always inline, they are faster now that way.Michael Niedermayer2010-01-28
| | | | | | 1% faster MBAFF decoding overall, maybe ~0.1% faster for the cathedral sample. Originally committed as revision 21507 to svn://svn.ffmpeg.org/ffmpeg/trunk
* indentMichael Niedermayer2010-01-28
| | | | Originally committed as revision 21506 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Restructure check_mv()Michael Niedermayer2010-01-28
| | | | | | ~20 cpu cycles faster loopfilter Originally committed as revision 21505 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Restructure if() in check_mv()Michael Niedermayer2010-01-28
| | | | | | quite a bit faster Originally committed as revision 21504 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Unroll loops in check_mv()Michael Niedermayer2010-01-28
| | | | | | ~6% faster (slow path) loopfilter (should be ~2% overall) Originally committed as revision 21503 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Factor mv/ref compare code out.Michael Niedermayer2010-01-28
| | | | | | | | This is a hair slower (0.15% maybe) but i really dont want to have the identical code duplicated 3 times because gcc adds odd threaded jumps with register reshuffling and register safe/restore. Originally committed as revision 21502 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Simplify first edge filter condition.Michael Niedermayer2010-01-28
| | | | Originally committed as revision 21497 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Cosmetics, mostly indention, 2 or so new fixme comments that i was to lazyMichael Niedermayer2010-01-28
| | | | | | to split out Originally committed as revision 21496 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make the fast loop filter path work with unavailable left MBs.Michael Niedermayer2010-01-28
| | | | | | | | This prevents the issue with having to switch between slow and fast code paths in each row. 0.5% faster loopfilter for cathedral Originally committed as revision 21495 to svn://svn.ffmpeg.org/ffmpeg/trunk
* get rid of the start variable.Michael Niedermayer2010-01-28
| | | | | | a few cycles faster Originally committed as revision 21494 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Unroll main loop so the edge==0 case is seperate.Michael Niedermayer2010-01-28
| | | | | | | | | | This allows many things to be simplified away. h264 decoder is overall 1% faster with a mbaff sample and 0.1% slower with the cathedral sample, probably because the slow loop filter code must be loaded into the code cache for each first MB of each row but isnt used for the following MBs. Originally committed as revision 21493 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Update comment.Michael Niedermayer2010-01-27
| | | | Originally committed as revision 21479 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use table to speedup access to non_zero_count in MBAFF with differing ↵Michael Niedermayer2010-01-27
| | | | | | | | interlacing. ~4 cpu cycles speedup Originally committed as revision 21474 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Optimize loop filtering of the left edge in MBAFF.Michael Niedermayer2010-01-26
| | | | | | 60 cpu cycles speedup Originally committed as revision 21467 to svn://svn.ffmpeg.org/ffmpeg/trunk
* remove unneeded checkMichael Niedermayer2010-01-26
| | | | Originally committed as revision 21460 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Use left_mb_xy from fill_caches instead of recalculating it.Michael Niedermayer2010-01-26
| | | | Originally committed as revision 21459 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Simplify loop filter a little by using top/left_type.Michael Niedermayer2010-01-26
| | | | Originally committed as revision 21457 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Remove all uses of slice_type* from the loop filter, also remove itsMichael Niedermayer2010-01-24
| | | | | | initialization befre the loop filter. Originally committed as revision 21416 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move +52 from the loop filter to the alpha/beta offsets in the context.Michael Niedermayer2010-01-23
| | | | | | | This should fix a segfault, also it might be faster on systems where the +52 wasnt free. Originally committed as revision 21406 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Set edges based on cbp and mv partitioning, not just skiped MBs.Michael Niedermayer2010-01-23
| | | | | | This is faster for videos that have lots of MBs that fall in this category. Originally committed as revision 21400 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Optimize filter_mb_mbaff_edge*()Michael Niedermayer2010-01-23
| | | | Originally committed as revision 21397 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Optmize 8x8dct check used to skip some borders in the loop filter.Michael Niedermayer2010-01-23
| | | | | | 4 cpu cycles faster. Originally committed as revision 21396 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Move array specifiers outside DECLARE_ALIGNED() invocationsMåns Rullgård2010-01-22
| | | | Originally committed as revision 21377 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Gcc idiocy fixes related to filter_mb_edge*.Michael Niedermayer2010-01-22
| | | | | | | | | | | | | | Change order of operands as gcc uses a hardcoded register per operand it seems even for static functions thus reducing unneeded moved (now functions try to pass the same argument in the same spot). Change signed int to unsigned int for array indexes as signed requires signed extension while unsigned is free. move the +52 up and merge it where it will end as a lea instruction, gcc always splits the 52 out there turning the free +52 into an expensive one otherwise. The changed code becomes a little faster. Originally committed as revision 21375 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Make calculation of mask_edge free of branches, faster of course but probablyMichael Niedermayer2010-01-21
| | | | | | little effect overall as this is not that often executed. Originally committed as revision 21366 to svn://svn.ffmpeg.org/ffmpeg/trunk
* H.264: Declare bS with DECLARE_ALIGNED_8 for uint64_t casts.Alexander Strange2010-01-20
| | | | Originally committed as revision 21345 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Simplify/Optimize another of the mbaff loop filter cases.Michael Niedermayer2010-01-20
| | | | | | Its faster but too rarely used to make a differnce. Originally committed as revision 21344 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Only calculate the second chroma qp if it differs from the firstin the mainMichael Niedermayer2010-01-20
| | | | | | loop filter. (a little faster for the common case where they are equal) Originally committed as revision 21342 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Set bS with 64bits at a time.Michael Niedermayer2010-01-20
| | | | Originally committed as revision 21341 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Merge multiple IS_* macro uses where possible.Michael Niedermayer2010-01-20
| | | | Originally committed as revision 21340 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Simplify and optimize intra code in h264_loopfilter.cMichael Niedermayer2010-01-20
| | | | Originally committed as revision 21339 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Sightly simplify initialization of int start.Michael Niedermayer2010-01-20
| | | | | | No real speed change. Originally committed as revision 21336 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Reenable ff_h264_filter_mb_fast() for all slices it supported before.Michael Niedermayer2010-01-19
| | | | Originally committed as revision 21328 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Fix compilation with -O0.Michael Niedermayer2010-01-18
| | | | Originally committed as revision 21308 to svn://svn.ffmpeg.org/ffmpeg/trunk
* Rather call filter_mb_mbaff_edge*v() more often than do extra calculationsMichael Niedermayer2010-01-18
| | | | | | in the innerst loop. ~150 cpu cycles faster Originally committed as revision 21299 to svn://svn.ffmpeg.org/ffmpeg/trunk