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

Stefano Sabatini stefasab at gmail.com
Sun Apr 28 13:24:21 CEST 2013


On date Thursday 2013-04-25 18:10:08 +0200, Stefano Sabatini encoded:
> On date Thursday 2013-04-25 17:37:53 +0200, Stefano Sabatini encoded:
> > 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):
> 
> Well after more tests (this time with d=300):
> mp=tinterlace=0:
> bench: utime=6.600s
> bench: maxrss=481940kB
> tinterlace=0:
> bench: utime=6.588s
> bench: maxrss=59560kB
> 
> mp=tinterlace=1:
> bench: utime=6.296s
> bench: maxrss=491472kB
> tinterlace=1:
> bench: utime=6.316s
> bench: maxrss=26912kB
> 
> mp=tinterlace=2:
> bench: utime=6.296s
> bench: maxrss=491368kB
> tinterlace=2:
> bench: utime=6.276s
> bench: maxrss=28940kB
> 
> mp=tinterlace=3:
> bench: utime=7.072s
> bench: maxrss=41100kB
> tinterlace=3:
> bench: utime=7.000s
> bench: maxrss=60056kB
> 
> mp=tinterlace=4:
> bench: utime=6.364s
> bench: maxrss=491644kB
> tinterlace=4:
> bench: utime=6.376s
> bench: maxrss=26544kB
> 
> I suppose the slower times may be an artifact due to heating (latest
> tests have more chance to get higher values). More benchmarks are
> welcome, but I think it's safe to drop the wrapper.

Finally applied.
-- 
FFmpeg = Friendly Fast Moronic Pitiless Eccentric Gladiator


More information about the ffmpeg-devel mailing list