Wie kann ich mit avconv Untertitel in ein Video einblenden?

Wie kann ich mit avconv Untertitel in ein Video einblenden?

Ich verwende das folgende Skript, um einen DVD-Sub-Stream und einen Video-Stream zu überlagern.

avconv -i input.mkv \
       -i subtitles.sub -filter_complex "[0:v:0][1:s:0]overlay[vid]" -map "[vid]" \
       -s hd720 -sws_flags lanczos \
       -vcodec libx264 -crf 20 -preset medium \
       ~/Desktop/test.mkv

Ich erhalte die folgende Fehlermeldung:

Stream specifier ':s:0' in filtergraph description [0:v:0][1:s:0]overlay[vid] matches no streams.

Egal was ich tue, ich bekomme es einfach nicht zum Laufen. Kann mir jemand sagen, wie man mit avconv (oder ffmpeg) Untertitel „einbrennt“?

Antwort1

Für alle, die es interessiert: Ich habe es herausgefunden … avconv kann das nicht, ffmpeg kann es. Ich bin jetzt auf ffmpeg umgestiegen und werde avconv fallenlassen.

Ich habe die neueste Version von ffmpeg (v 2.3.3) kompiliert. Ich habe meine Untertitel im Format „sup“ in das Format „sub/idx“ konvertiert, dann die Datei „.idx“ als Untertiteldatei angegeben und der Overlay-Prozess hat wunderbar funktioniert.

Der letzte Befehl lautet:

ffmpeg -i input.mkv -i subtitles.idx -filter_complex '[0:v][1:s]overlay[vid]' -map '[vid]' -s hd720 -sws_flags lanczos -vcodec libx264 -crf 20 -preset medium ~/Desktop/test.mkv

Die x264-Einstellungen können natürlich beliebig konfiguriert werden.

verwandte Informationen