Untertitel ins Video integrieren (hardcode): UHD-Datei + PC langsam

marko11

Lt. Junior Grade
Registriert
Nov. 2009
Beiträge
258
Guten Abend,

ich habe eine mkv-Datei (h265) mit integrierten Untertiteln. Im VLC-Player kann ich zwischen verschiedenen Spuren auswählen.

Ich möchte nun eine der Untertitel-Dateien (englisch) fest ins Bild integrieren. Hintergrund: Fernseher erkennt die Untertitel-Datei nicht und kann sie daher nicht abspielen.

Da mein PC sehr alt+langsam ist und es sich um UHD-Qualität handelt, ist mir klar, dass es etwas länger dauern wird, wäre mir aber egal.

Gibt es dafür eine galante Möglichkeit, zB via ffmpeg?

Danke Euch
 
Hancock schrieb:
Das Problem ist das re-enkodieren, das wird dauern, aber sonst: HowToBurnSubtitlesIntoVideo – FFmpeg falls dir die Dateigröße egal ist, kannst du natürlich das Encoden erschlagen mit Bitrate und auch Hardwareencoder der Grafikkarte nutzen, falls die aktuell genug ist.
Danke für den Tipp, werde es mit diesem Befehl versuchen
Code:
ffmpeg -i video.mkv -vf subtitles=video.mkv out.avi

Weißt Du vielleicht, wie ich da eine von mehreren Untertiteln auswählen kann? Der MKV-Container enthält 4 verschiedene Sprachen
 
Du kannst dir auch mal HandBrake anschauen. Ist eine schöne und übersichtliche Software, welche am Ende auch auf ffmpeg für den Encode setzt. Dafür weißt du am Ende genau was du eingestellt hast - kinderleicht.

Zumal, mit den Settings von Hancock würde ich wohl niemals ein Video encoden, außer es ist mir am Ende egal, dass das was rauskommt viel schlechter ist als das Original.
 
Hancock schrieb:
FFmpeg Filters Documentation sagt, es sollte mit
Code:
subtitles=video.mkv:si=1
gehen. (0 sollte der erste sein, 1 der zweite usw.)

Deine ganze Kommandozeile sollte natürlich etwas länger sein
Code:
ffmpeg -i video.mkv -vf subtitles=video.mkv:si=1 -c:v libx265 -b:v 50M -preset:v fast -c:a copy out.avi
Vielen Dank, mir wäre wichtig dass die Qualität der Originaldatei beibehalten wird, es sollen nur die Untertitel ergänzt werden. Ist das bei Deinem Befehl gewährleistet? Darf dann gern auch etwas länger brauchen fürs encoding :) Danke!
 
Ganz Original geht das nur mit lossless encoding, aber das ist langsam und führt zu wirklich gigantischen Dateigrößen, auch kann das nicht jeder Decoder (schnell genug) dekodieren. Du kannst die Qualität erhalten mit wirklich hohen Bitraten, was aber limitiert wird durch die maximale Bitrate, die der Fernseher kann, und durch Encoding-Parameter (die z.B. durch die Presets eingestellt werden (fastest, fast, faster, normal, slower, slow, slowest, placebo)), welche aber u.U. deutlich mehr Zeit brauchen (und damit auch Strom, 5 h @ 200 W = 1 kWh <=> 0,30 €). Was du auswählst, hängt daher von dir ab. ffmpeg zeigt dir ja die Geschwindigkeit an, teste ein paar settings durch (abbrechen mit STRG+C und dann die Datei anschauen) und wähl das, was zu deinem Geschmack und Geduld passt.
 
Zurück
Oben