Mehrere PNG-Sequenzen als Overlays zu verschiedenen Zeitpunkten mit FFMPEG

576
user1950067

Ich versuche drei verschiedene PNG-Sequenzen zu verschiedenen Zeitpunkten in einem Video zu überlagern. Die erste Sequenz funktioniert wie vorgesehen. Es animiert zwischen 0 und 4 Sekunden. Von 4 bis 8 sek. Ich sehe nur den letzten Frame der zweiten Sequenz und von 8 bis 12 Sekunden. es gibt nur den letzten Frame der dritten Sequenz. Alle drei Sequenzen bestehen aus 100 Frames.

Irgendwelche Ideen?

Das habe ich versucht:

"C:\ffmpeg\bin\ffmpeg.exe" -i %1 ^ -start_number 0 -i "C:\Users\ojan\Documents\2017 Lukker\Vandmaerke_Start\Vandmaerke_Start_%%03d.png" ^ -start_number 0 -i "C:\Users\ojan\Documents\2017 Lukker\Vandmaerke_Midt\Vandmaerke_Midt_%%03d.png" ^ -start_number 0 -i "C:\Users\ojan\Documents\2017 Lukker\Vandmaerke_End\Vandmaerke_End_%%03d.png" ^ -filter_complex ^ "[0:v][1:v]overlay=enable='between(t,0,4)' [temp0]; ^ [temp0][2:v]overlay=enable='between(t,4,8)' [temp1]; ^ [temp1][3:v]overlay=enable='between(t,8,12)' [out]" -map [out] -map 0:a -c:a copy "C:\Users\ojan\Documents\2017 Lukker\output.mp4" 
2

1 Antwort auf die Frage

1
Gyan

Benutzen

ffmpeg -i %1 ^ -start_number 0 -i "C:\Users\ojan\Documents\2017 Lukker\Vandmaerke_Start\Vandmaerke_Start_%%03d.png" ^ -start_number 0 -itsoffset 4 -i "C:\Users\ojan\Documents\2017 Lukker\Vandmaerke_Midt\Vandmaerke_Midt_%%03d.png" ^ -start_number 0 -itsoffset 8 -i "C:\Users\ojan\Documents\2017 Lukker\Vandmaerke_End\Vandmaerke_End_%%03d.png" ^ -filter_complex ^ "[0:v][1:v]overlay=enable='between(t,0,4)' [temp0]; ^ [temp0][2:v]overlay=enable='between(t,4,8)' [temp1]; ^ [temp1][3:v]overlay=enable='between(t,8,12)' [out]" -map [out] -map 0:a -c:a copy "C:\Users\ojan\Documents\2017 Lukker\output.mp4" 

FFmpeg kann mit Dateien arbeiten, die zeitgesteuerte Samples enthalten. overlayDer Filter verwendet Rahmenpaare (BG / FG) gemäß den entsprechenden Zeitstempeln. -itsoffset XVersetzt die im Video enthaltenen oder von ffmpeg (wie bei Bildsequenzen) generierten Zeitmarken um X Sekunden.