[FFmpeg-devel] [NOPATCH] lavfi/mp: drop tinterlace wrapper

Stefano Sabatini stefasab at gmail.com
Thu Apr 25 17:37:53 CEST 2013


On date Thursday 2013-04-25 16:21:02 +0200, Clément Bœsch encoded:
> On Thu, Apr 25, 2013 at 04:08:44PM +0200, Stefano Sabatini wrote:
> [...]
> > First note, mp=tinterlace only supports yuv420p and variants formats,
> > so it doesn't make sense to test other formats, nor with modes which
> > are only supported in tinterlace. With the other formats tinterlace
> > is faster since it avoids conversions.
> > 
> > Second observations, due to various issues the null muxer is
> > duplicating frames, I need to set PTS to NAN (thus reproducing the
> > same issue of mp=tinterlace) in order to avoid the dup problem.
> > 
> > Updated benchmarks follow.
[...]
> Here are my results:
> 
> % for i in 0 1 2 3 4; do for f in mp=tinterlace tinterlace; do filter="$f=$i"; echo "$filter:"; ./ffmpeg -v 0 -f lavfi -i "testsrc=d=200,format=yuv420p,$filter,setpts=nan" -f null - -benchmark; done; echo; done 
> mp=tinterlace=0:
> bench: utime=3.320s
> bench: maxrss=355984kB
> tinterlace=0:
> bench: utime=3.100s
> bench: maxrss=58360kB
> 
> mp=tinterlace=1:
> bench: utime=3.093s
> bench: maxrss=351176kB
> tinterlace=1:
> bench: utime=2.967s
> bench: maxrss=42944kB
> 
> mp=tinterlace=2:
> bench: utime=3.127s
> bench: maxrss=350920kB
> tinterlace=2:
> bench: utime=2.967s
> bench: maxrss=43680kB
> 
> mp=tinterlace=3:
> bench: utime=3.603s
> bench: maxrss=56320kB
> tinterlace=3:
> bench: utime=3.360s
> bench: maxrss=57104kB
> 
> mp=tinterlace=4:
> bench: utime=3.120s
> bench: maxrss=350908kB
> tinterlace=4:
> bench: utime=3.003s
> bench: maxrss=44200kB
> 
> ... I believe we can drop mp=tinterlace.

Even with optimizations tinterlace is still slightly slower (I wonder
why):

mp=tinterlace=0:
bench: utime=4.296s
bench: maxrss=320044kB
tinterlace=0:
bench: utime=4.348s
bench: maxrss=35784kB

mp=tinterlace=1:
bench: utime=4.088s
bench: maxrss=330612kB
tinterlace=1:
bench: utime=4.212s
bench: maxrss=19448kB

mp=tinterlace=2:
bench: utime=4.144s
bench: maxrss=330612kB
tinterlace=2:
bench: utime=4.200s
bench: maxrss=20432kB

mp=tinterlace=3:
bench: utime=4.656s
bench: maxrss=40552kB
tinterlace=3:
bench: utime=4.592s
bench: maxrss=59240kB

mp=tinterlace=4:
bench: utime=4.196s
bench: maxrss=330684kB
tinterlace=4:
bench: utime=4.268s
bench: maxrss=19396kB
-- 
FFmpeg = Frightening Forgiving Mega Portentous Exxagerate Geisha


More information about the ffmpeg-devel mailing list