[FFmpeg-devel] [PATCH] address speed regression in h264 deblocking filter after PAFF

Andreas Öman andreas
Wed Nov 7 11:47:51 CET 2007


I took a look at the speed regression introduced by
`svn diff -r10679:10690 libavcodec/h264.c`

The patch creates a three derivates of a inlined filter_mb_fast()
and uses a callback which is setup in decode_slice_header() to reduce
a number of unnecessary checks.

Stripped code size increases with ~2.5k

$ ls -l unmodified/ffmpeg
-rwxr-xr-x 1 andoma pf 4705928 Nov  7 07:24 unmodified/ffmpeg

$ ls -l newdeblock/ffmpeg
-rwxr-xr-x 1 andoma pf 4708616 Nov  7 11:28 deblock/ffmpeg

The speed increase is a bit more than I initially expected (2%),
and decoding of the SVT trailer is almost 6% faster !? (this is
on a core2)
I've double checked the numbers and md5sums matches.

If someone else can perform some checks on various content I'd be happy.


svn:      User: avg: 10.040  stddev: 0.034  med: 10.047
new:      User: avg: 9.849  stddev: 0.042  med: 9.851

svn:      User: avg: 3.781  stddev: 0.034  med: 3.770
new:      User: avg: 3.699  stddev: 0.014  med: 3.698

SVT_HD_Teaser.ts: (single run)
new:      user    5m26.768s
svn:      user    5m45.450s
-------------- next part --------------
A non-text attachment was scrubbed...
Name: deblock.patch
Type: text/x-patch
Size: 11955 bytes
Desc: not available
URL: <http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/attachments/20071107/4559d163/attachment.bin>

More information about the ffmpeg-devel mailing list