Michael Niedermayer
cd6aa95caa
h264_loopfilter: use av_assert
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Michael Niedermayer
28a613b09b
h264: dont mess with chroma planes for grayscale h264.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Diego Biurrun
e44c11e9fa
cosmetics: Move static and inline attributes to more standard places.
Fixes several "‘static’ is not at beginning of declaration" warnings.
13 years ago
Baptiste Coudurier
76741b0e56
h264: 4:2:2 intra decoding support
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years ago
Baptiste Coudurier
231a6df9ea
h264dec: h264: 4:2:2 intra decoding
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
13 years ago
Jason Garrett-Glaser
b5bbc84fe2
H.264: add filter_mb_fast support for >8-bit decoding
Much faster high bit depth deblocking.
14 years ago
Jason Garrett-Glaser
f6b7f72461
H.264: avoid redundant alpha/beta calculations in loopfilter
14 years ago
Jason Garrett-Glaser
a4f6be86d6
H.264: optimize intra/inter loopfilter decision
14 years ago
Diego Biurrun
657ccb5ac7
Eliminate FF_COMMON_FRAME macro.
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.
14 years ago
Jason Garrett-Glaser
7f7dc4fb55
H.264: fix filter_mb_fast with 4:4:4 + 8x8dct
14 years ago
Jason Garrett-Glaser
6a2176aac0
H.264: improve qp_thresh check
Eliminate redundant check in filter_mb_fast, consider bit depth in calculating qp_thresh.
14 years ago
Jason Garrett-Glaser
a625e13208
H.264: make loopfilter bS const where applicable
14 years ago
Jason Garrett-Glaser
556f8a066c
H.264: template left MB handling
Faster H.264 decoding with ALLOW_INTERLACE off.
14 years ago
Jason Garrett-Glaser
4320a309ce
H.264: make filter_mb_fast support the case of unavailable top mb
Significantly faster deblocking in streams with lots of slices.
14 years ago
Jason Garrett-Glaser
84153d1883
H.264: make filter_mb_fast support 4:4:4
14 years ago
Jason Garrett-Glaser
2702a6f114
H.264: fix 4:4:4 + deblocking + 8x8dct + cavlc + MBAFF
14 years ago
Jason Garrett-Glaser
7c9079ab4c
H.264: fix 4:4:4 + deblocking + MBAFF
14 years ago
Jason Garrett-Glaser
7b442ad918
H.264: fix CODEC_FLAG_GRAY
It was broken in 4:4:4, and still did chroma deblocking for no reason in 4:2:0.
14 years ago
Jason Garrett-Glaser
c90b94424c
4:4:4 H.264 decoding support
Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
14 years ago
Jason Garrett-Glaser
504811baea
Roll back 4:4:4 H.264 for now
Needs some ARM/PPC asm modifications.
14 years ago
Jason Garrett-Glaser
c177cfb4fb
H.264: fix CODEC_FLAG_GRAY
It was broken in 4:4:4, and still did chroma deblocking for no reason in 4:2:0.
14 years ago
Jason Garrett-Glaser
c9c493872c
4:4:4 H.264 decoding support
Note: this is 4:4:4 from the 2007 spec revision, not the previous (now deprecated) 4:4:4 mode in H.264.
14 years ago
Oskar Arvidsson
6e3ef511d7
Add the notion of pixel size in h264 related functions.
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>
14 years ago
Oskar Arvidsson
44ca80df34
Make the h264 loop filter bit depth aware.
Preparatory patch for high bit depth h264 decoding support.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
14 years ago
Ronald S. Bultje
dd561441b1
h264: DSP'ize MBAFF loopfilter.
14 years ago
Michael Niedermayer
e7077f5e7b
H264: replace pixel_size by pixel_shift
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Oskar Arvidsson
dc172ecc6e
Add the notion of pixel size in h264 related functions.
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>
14 years ago
Oskar Arvidsson
86b0d9cd58
Make the h264 loop filter bit depth aware.
Preparatory patch for high bit depth h264 decoding support.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
14 years ago
Mans Rullgard
2912e87a6c
Replace FFmpeg with Libav in licence headers
Signed-off-by: Mans Rullgard <mans@mansr.com>
14 years ago
Diego Biurrun
ba87f0801d
Remove explicit filename from Doxygen @file commands.
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
15 years ago
Måns Rullgård
4693b031a3
Move H264 dsputil functions into their own struct
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
15 years ago
Måns Rullgård
84dc2d8afa
Remove DECLARE_ALIGNED_{8,16} macros
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
15 years ago
Måns Rullgård
19769ece3b
H264: use alias-safe macros
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
15 years ago
Måns Rullgård
40d1122752
Use LOCAL_ALIGNED macro for local arrays
Originally committed as revision 21866 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Alexander Strange
78998bf217
h264: Remove unused variables.
Originally committed as revision 21815 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
9873ae0d44
Fix CAVLC+8x8DCT+MBAFF loopfiltering.
Fixes issue1250
Originally committed as revision 21665 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
37b2b0d6cd
Get rid of a check in one direction that cant be true in it in that part
of the code.
No meassureable speed change.
Originally committed as revision 21566 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
2646814897
Split first reference list comparission from mv comparission.
about 0.5% faster MBAFF loop filtering
Originally committed as revision 21552 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
4e992796a9
Replace h->left_type[0] by the local variable for it we have.
No meassureable speed effect.
Originally committed as revision 21541 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
012dbcce08
slightly faster bit trickery.
Originally committed as revision 21540 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
77821e11b3
Replace ?: by branchless code.
about 0.5% faster loop filtering
Originally committed as revision 21539 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
34032e26ab
factorize first filter call out, this makes the code somewhat
smaller without any speed loss.
Originally committed as revision 21514 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
592e03a8da
Change wraper functions to always inline, they are faster now that way.
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
15 years ago
Michael Niedermayer
5364db2893
indent
Originally committed as revision 21506 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
2cf0d46d4c
Restructure check_mv()
~20 cpu cycles faster loopfilter
Originally committed as revision 21505 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
fabd704b37
Restructure if() in check_mv()
quite a bit faster
Originally committed as revision 21504 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
ca7c784fdf
Unroll loops in check_mv()
~6% faster (slow path) loopfilter (should be ~2% overall)
Originally committed as revision 21503 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
e814817b74
Factor mv/ref compare code out.
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
15 years ago
Michael Niedermayer
3b84924516
Simplify first edge filter condition.
Originally committed as revision 21497 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago
Michael Niedermayer
b6302d0c55
Cosmetics, mostly indention, 2 or so new fixme comments that i was to lazy
to split out
Originally committed as revision 21496 to svn://svn.ffmpeg.org/ffmpeg/trunk
15 years ago