ffmpeg Umlaute in Untertiteln

chrstu77

Cadet 2nd Year
Registriert
Sep. 2022
Beiträge
20
Hallo,
ich habe festgestellt das ffmpeg scheinbar bei Untertiteln alle Zeilen mit Umlauten ignoriert hat. Ich benutze zum muxen folgende Zeile:

for %f IN (*.mp4) DO ffmpeg -i "%f" -i "%~nf_ENGLISH.srt" -i "%~nf_GERMAN.srt" -c:s mov_text -c:v copy -c:a copy -map 0:v -map 0:a -map 1 -map 2 -metadata:s:s:0 language=eng -metadata:s:s:1 language=ger "%~nf_SRT.mp4"

Ich habe letztens auch schonmal bemerkt das ffmpeg während des Verarbeitens folgende Warnung ausgibt:

[srt @ 000001dfc4f5e200] Invalid UTF-8 in decoded subtitles text; maybe missing -sub_charenc option
Error while decoding stream #2:0: Invalid data found when processing input

Nach dem muxen habe ich mir die Episoden immer angeschaut ob die Zeiten passen. Alles war okay aber eben merke ich das in den deutschen Untertiteln ziemlich viele Zeilen fehlen und wie es ausschaut sind das alle Zeilen mit Umlauten.
Naja jetzt zu meiner Frage:

liegt es an diesem Befehl? -c:s mov_text
ich weis das es auch diesen gibt: -c:s srt

Wann man aber welchen Befehl benutzt ist mir nicht bekannt.
Oder muss ich wie in der Fehlermeldung beschrieben hiermit etwas machen? -sub_charenc option

Muss ich jetzt tatsächlich alle Untertitel von Umlauten befreien oder mit welchem Befehl verarbeitet ffmpeg sie mit?
Ja es wäre schön wenn mir jemand helfen könnte.

Gruß
chrstu77
 
Die Fehlermeldung SAGT dir doch schon was zu machen ist .... das Argument -sub_charenc hinzufügen sollte schon reichen .....
 
  • Gefällt mir
Reaktionen: NameHere und kartoffelpü
Ja aber irgend einen Wert muss noch dahinter und da habe ich bisher nichts gefunden was Umlaute verarbeiten würde. Immer der selbe Fehler...

-sub_charenc CP1252 oder CP1250 bringt leider nicht den gewünschten Erfolg
 
Ich muss schon sagen .... es spricht EXTREM (gegen) die Verwendung einer Software wo SELBST VERLANGTE Argumente in der (angeblich) vollständigen Befehlsbeschreibung auf der Herstellerseite NICHT genannt werden.

Ich würde mir eine andere software suchen .... eine die nicht über Befehlszeile läuft und laienhaft Dokumentiert ist .....
 
NatokWa schrieb:
Ich würde mir eine andere software suchen .... eine die nicht über Befehlszeile läuft und laienhaft Dokumentiert ist .....

Dann kannst du aber lange suchen. ffmpeg ist das Schweizer Taschenmesser für Multimedia und steckt beim Video-Transcoding fast überall unter der Haube.
 
4nanai schrieb:
Und bei


-sub_charenc ISO-8859-1
?
Werde ich nachher mal probieren. Danke. Also ich nehme ffmpeg das es mir einerseits Spaß macht mit Kommandozeile aber ich habe auch einen uralt Rechner und mit Programmen mit grafischer Oberfläche dauert das konvertieren komischerweise noch viel länger.
 
Übrigens noch ein Hinweis zu sub_charenc und alle verfügbaren Optionen:

Notes:
[-sub_charenc [character encoding]] is not mandatory, but whenever used, it must be placed right before the reference of the subtitle to be processed with that encoding.
When you set the subtitle encoding, don't forget to also set a subtitle codec (see below). The subtitle code page will not be converted if you use -c:s copy!
If you try to import ANSI subtitle files with a newer version of FFmpeg without using of "-sub_charenc" you can get an error message like:
Invalid UTF-8 in decoded subtitles text; maybe missing -sub_charenc option
Then you have to use option "-sub_charenc" to define the right coding format or code page of subtitle file.

https://ffmpeg.org/trac/ffmpeg/attachment/ticket/2431/sub_charenc_parameters.txt
 
Okay ich habe jetzt eine passende Lösung gefunden. Die deutschen *.srt lagen im ANSI Format vor, die englischen in UTF-8. Ich habe sie mit Notepad++ in UTF-8 konvertiert und nun verarbeitet FFmpeg jede Zeile fehlerfrei. Auch ohne das -sub_charenc Moped.
Danke an alle die mir geholfen haben.
 
  • Gefällt mir
Reaktionen: BFF, jb_alvarado und 4nanai
Zurück
Oben