Video-Overlays nach der eingestellten Zeit-offset mit FFmpeg
Ich versuche zum hinzufügen von überlagerungen zu einem Eingang video mit ffmpeg, das scheinen einige Zeit, nachdem das video beginnt.
Der einfachste Weg, um das hinzufügen einer overlay ist:
ffmpeg -i in.avi -vf "movie=overlay.avi [ovl]; [in][ovl] overlay" out.avi
Aber dadurch wird die overlay-video (oder Bild) vom Anfang des Videos bis eines der videos endet.
Ich weiß, wie ausgeglichen die overlay-video mit movie=overlay.avi:seek_point=1.4
, aber was ist ein offset auf den Eingang video?
Konnte ich immer video-clip an die gewünschte Stelle hinzufügen, overlay auf dem zweiten clip, dann Nähen Sie die beiden, aber das ist nicht sehr effizient.
- Hast du eine Lösung?!
InformationsquelleAutor Future Optical | 2011-11-15
Schreibe einen Kommentar Antworten abbrechen
Du musst angemeldet sein, um einen Kommentar abzugeben.
Erweiterung auf arttronics " aufschlussreiche, aber spekulative Antwort, video kann in der Tat leicht überlagerten offset mit der
-itsoffset
Flagge.Den
-itsoffset
flag funktioniert so:(NB: Trotz der Formulierung "input-Dateis", die Flagge gilt eigentlich nur für den input sofort nach es. Beachten Sie auch dieser Fehler über offsets nicht die Anwendung, um audio-streams. H/T attronics.)
Also die überlagerung mit einem offset ist so einfach wie:
Dieser funktioniert unabhängig von der Gebindeart.
-itsoffset
wird der offset für BEIDE Dateien, nicht nur dieoverlay.avi
- Datei. Verweis ffmpeg-Ticket 1349 itsoffset funktioniert nicht für die zweite input-Datei. Außerdem, den Ausschnitt, den Sie geschrieben, bestätigt es sowohl Dateien: der Zeitstempel des input-filesEntsprechend der begrenzten FFmpeg-overlay-Dokumentation, der Prozess erwartet, dass beide videos haben die gleichen
timestamp
(z.B., 0:00:00:00) - Wert, um die Dinge in sync, und warnt wenn nicht erfolgt dann dieavi.out
haben unerwünschte offset aus deroverlay.avi
video-Datei verwendet.Können Sie jedoch, dass diese Tatsache und nutzen Sie es!
Ist es dann denkbar, dass, wenn die
overlay.avi
video beginnttimestamp
mit der gewünschten offset die erforderlich auf diein.avi
video-Eingang, dann dieoverlay.avi
video Feuer im gleichentimestamp
(zur Verfügung gestellt vonin.avi
) zu erstellen, die das erwartete Ergebnis für dieout.avi
video.Die einzige schlechte Nachricht ist die
.avi
container nicht mit timestamps, im Gegensatz zu.mp4
oder.mkv
- Datei-Formate zu tun. Sie haben, um Schalter zu einem Datei-format, dass unterstützt*timestamps*
für diese Arbeit (z.B.overlay.mp4
oderoverlay.mkv
) für die Erstellung des endgültigen Ausgang video-Datei erforderlich.