[FFmpeg-user] ~50% performance difference overlaying static image with png series using -vf/-filter_complex

Paul B Mahol onemda at gmail.com
Fri Aug 23 12:51:33 CEST 2013


On 8/23/13, d-fens <d-fens at 00010111.de> wrote:
> Zitat von Paul B Mahol <onemda at gmail.com>:
>
>> On 8/23/13, d-fens <d-fens at 00010111.de> wrote:
>>> Zitat von Paul B Mahol <onemda at gmail.com>:
>>>
>>>> On 8/22/13, d-fens <d-fens at 00010111.de> wrote:
>>>>> hi,
>>>>>
>>>>> i have a background png and a sequence of pngs with transparency which
>>>>> should overlay the background.
>>>>>
>>>>> when i use
>>>>>
>>>>> ./ffmpeg -i %04d.png -vf "movie=bg.png [bg]; [in] format=rgb32, split
>>>>> [T1], fifo, [bg] overlay=0:0, [T2] overlay=0:0 [out]; [T1] fifo [T2]"
>>>>> out.mp4
>>>>>
>>>>> (taken from
>>>>> http://stackoverflow.com/questions/10438713/overlay-animated-images-with-transparency-over-a-static-background-image-using-f)
>>>>> i get arround 13fps for fullHD images, but using
>>>>>
>>>>> ./ffmpeg -loop 1 -i bg.png -i %04d.png -filter_complex
>>>>> overlay=shortest=1 out.mp4
>>>>
>>>> Try removing loop and shortest.
>>>
>>>
>>> this just outputs one frame, so no success :(
>>
>> Than change order of streams - make bg.png 2nd.
>
> well that puts the background over the sequence, its fast (15fps
> processing) though :| but very static ...

I didn't benchmark but I assume -loop takes most of time as it decodes
same file over and over again.
So instead adding looping of main input inside overlay it would be
better to add generic solution:
repeat filter which would repeat each frame [0-inf] times.

> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user at ffmpeg.org
> http://ffmpeg.org/mailman/listinfo/ffmpeg-user
>


More information about the ffmpeg-user mailing list