[FFmpeg-user] ffmpeg architecture question

Mark Filipak markfilipak.windows+ffmpeg at gmail.com
Fri Apr 17 10:44:49 EEST 2020


On 04/17/2020 02:41 AM, Michael Koch wrote:
> Am 17.04.2020 um 08:02 schrieb Mark Filipak:
>> Thanks to pdr0 -at- shaw.ca, My quest for the (nearly perfect) p24-to-p60 transcode has concluded.
>>
>> But remaining is an ffmpeg behavior that seems (to me) to be key to understanding ffmpeg 
>> architecture, to wit: The characteristics of frame traversal through a filter chain.
>>
>> From a prior topic:
>> -----
>> Filter graph:
>>
>> split[A]    select='not(eq(mod(n+1\,5)\,3))'       [C]interleave
>>      [B]split[D]select='eq(mod(n+1\,5)\,2)'[F]blend[D]
>>              [E]select='eq(mod(n+1\,5)\,3)'[G]
>>
>> What I expected/hoped:
>>
>> split[A]         0 1 _ 3 4         [C]interleave 0 1 B 3 4  //5 frames
>>      [B]split[D] _ 1 _ _ _ [F]blend[D]               |
>>              [E] _ _ 2 _ _ [G]                       blend of 1+2
>>
>> What appears to be happening:
>>
>> split[A]         0 1 _ 3 4         [C]interleave 0 1 _ 3 4  //4 frames
>>      [B]split[D] _ _ _ _ _ [F]blend[D]
>>              [E] _ _ 2 _ _ [G]
>>
>> The behavior is as though because frame 1 (see Note) can take the [A][C] path, it does take it & 
>> that leaves nothing left to also take the [B][D][F] path, so blend never outputs.
> 
> Only an untested idea, what happens when you change the order of the inputs of the blend filter, 
> first [G] and then [F]?

This would be an important topic for someone writing a book, eh?

I assume you mean this, Michael:

split[A]    select='not(eq(mod(n+1\,5)\,3))'       [C]interleave
      [B]split[D]select='eq(mod(n+1\,5)\,2)'[F]blend[D]
              [E]select='eq(mod(n+1\,5)\,3)'[G]

split[A]         0 1 _ 3 4         [C]interleave 0 1 _ 3 4  //4 frames
      [B]split[D] _ _ 2 _ _ [F]blend[D]
              [E] _ _ _ _ _ [G]

Yes, I've done that, not because I thought it would make a difference, but because it just happens 
to have been my first configuration.


More information about the ffmpeg-user mailing list