Wie kann ich eine PNG-Bildsequenz überlagern, aber mit einem bestimmten Frame mit FFmpeg beginnen?

584
Shannon Hochkins

Ich habe hier eine Million Dinge ausprobiert. Dies überlagert das PNG zur richtigen Zeit, aber die Sequenz selbst startet dann nicht, sie erscheint im fertigen Zustand.

ffmpeg -i C:\projects\src\assets\video\base.mp4 -r 25  -itsoffset 24.24 -i C:\projects\temp\q\s\xyz%03d.png -y  -filter_complex [0:v]overlay=x=0:y=0:enable='between(t,438/25,606/25)'[out]  -map [out] -map 0:a C:\projects\temp\q\composit.mp4 

Ich brauche die Bildsequenz xyz000, um ihre Sequenz bei Bild 438 (438/25 == 24.24) zu starten und bei Bild 606 (Länge der Sequenz) wieder zu deaktivieren.

Ich habe hier mehrere verschiedene Dinge ausprobiert, aber nichts scheint zu funktionieren.

Irgendwelche Ideen?

0

1 Antwort auf die Frage

1
Gyan

Setze keine Eingabe -r. Es regeneriert neue Zeitstempel mit dieser Geschwindigkeit. Während dessen Offset die nativen Zeitstempel um einen gewissen Betrag versetzt. Verwenden Sie -frameratestattdessen.

ffmpeg -i C:\projects\src\assets\video\base.mp4 -framerate 25  -itsoffset 24.24 -i C:\projects\temp\q\s\xyz%03d.png -y  -filter_complex [0:v]overlay=x=0:y=0:enable='between(t,438/25,606/25)'[out]  -map [out] -map 0:a C:\projects\temp\q\composit.mp4