Wie konvertiere ich einen hdmv_pgs_subtitle (der bildbasiert ist) in einen textbasierten Untertitel in einer MKV-Datei?
Ich habe es versucht ffmpeg -i in.mkv -c:v copy -c:a copy -c:s mov_text out.mkv
, aber das Ergebnis ist der folgende Fehler:
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Stream #0:2 -> #0:2 (hdmv_pgs_subtitle (pgssub) -> mov_text (native))
Error while opening encoder for output stream #0:2 - maybe incorrect > parameters such as bit_rate, rate, width or height
Antwort1
Das Umwandeln von bildbasierten Untertiteln in Text ist kein einfacher Vorgang, da Sie eine Art OCR-System benötigen, um die Bitmaps zu interpretieren und den entsprechenden Text herauszufinden. ffmpeg
Allein reicht das nicht aus.
Mir ist keine App bekannt, die den gesamten Vorgang für Linux/UNIX in einem Durchgang durchführt. Dieser Vorgang sollte jedoch funktionieren:
- Extrahieren Sie die Untertitel mit
mkvextract
oderffmpeg
- Konvertieren Sie die PGS-Untertitel in das DVD SUB-Format mitBDSup2Sub
- OCR der Untertitel in das SRT-Format mitVobSub2SRT
- Muxen Sie die Untertitel zurück in eine MKV-Datei mit
mkvmerge
oderffmpeg
Antwort2
Dasscheint auch als Online-Tool zu funktionieren, allerdings muss man ggf. etwas warten.
Um die Untertiteldatei zu extrahieren, können Sie Folgendes verwenden:
ffmpeg -i input.mkv -c copy -map 0:2 sub.sup