[FFmpeg-user] ffmpeg architecture question
Mark Filipak
markfilipak.windows+ffmpeg at gmail.com
Fri Apr 17 16:30:30 EEST 2020
I reran the tests with these command lines:
SET FFREPORT=file=FOO-GH.LOG:level=32
ffmpeg -i %1 -filter_complex
"telecine=pattern=46,split[A][B],[A]select='not(eq(mod(n+1\,5)\,3))'[C],[B]split[E][F],[E]select='eq(mod(n+1\,5)\,2)',datascope=size=1920x1080:x=45:y=340:mode=color2[G],[F]select='eq(mod(n+1\,5)\,3)'[H],[G][H]blend[D],[C][D]interleave"
-map 0 -c:v libx264 -crf 20 -an -sn "C:\AVOut\FOO-GH.MKV"
SET FFREPORT=file=FOO-HG.LOG:level=32
ffmpeg -i %1 -filter_complex
"telecine=pattern=46,split[A][B],[A]select='not(eq(mod(n+1\,5)\,3))'[C],[B]split[E][F],[E]select='eq(mod(n+1\,5)\,2)',datascope=size=1920x1080:x=45:y=340:mode=color2[G],[F]select='eq(mod(n+1\,5)\,3)'[H],[H][G]blend[D],[C][D]interleave"
-map 0 -c:v libx264 -crf 20 -an -sn "C:\AVOut\FOO-HG.MKV"
The datascope doesn't appear in either output, so frame 1 (zero-based) is not traversing [E][H]
(upper command) or [E][G] (lower command).
Therefore, I'm pretty confident that once frame 1 gets enqueued at [C], the filter chain is not
recursed.
Another interesting thing is the behavior of 'blend'.
If blend gets a hit to its 2nd input (but not the 1st) the total frames output = 479.
If blend gets a hit to its 1st input (but not the 2nd) the total frames output = 594.
More information about the ffmpeg-user
mailing list