Ich bin seit Jahrzehnten ein Liebhaber von Weltfilmen und regionalen Filmen. Untertitel sind das wesentliche Werkzeug, das es mir ermöglicht hat, die besten Filme in verschiedenen Sprachen und aus verschiedenen Ländern zu genießen.
Wenn Sie gerne Filme mit Untertiteln ansehen, ist Ihnen vielleicht aufgefallen, dass die Untertitel manchmal nicht synchronisiert oder nicht korrekt sind.
Wussten Sie, dass Sie Untertitel bearbeiten und verbessern können? Lassen Sie mich Ihnen einige grundlegende Untertitelbearbeitungen in Linux zeigen.
Extrahieren von Untertiteln aus Untertiteldaten
Um 2012, 2013 herum lernte ich ein Tool namens CCEextractor kennen. Im Laufe der Zeit wurde es zu einem der wichtigsten Werkzeuge für mich, besonders wenn ich auf eine Mediendatei stoße, in die der Untertitel eingebettet ist.
CCExtractor analysiert Videodateien und erstellt unabhängige Untertiteldateien aus den Untertiteldaten.
CCExtractor ist ein plattformübergreifendes, kostenloses Open-Source-Tool. Das Tool ist seit seinen Gründungsjahren ziemlich gereift und war Teil von
Das Tool ist, um es einfach auszudrücken, mehr oder weniger eine Reihe von Skripten, die nacheinander in einer fortlaufenden Reihenfolge arbeiten, um Ihnen einen extrahierten Untertitel zu geben.
Sie können den Installationsanweisungen für CCExtractor auf dieser Seite folgen.
Wenn Sie nach der Installation Untertitel aus einer Mediendatei extrahieren möchten, gehen Sie wie folgt vor:
ccextractor <path_to_video_file>
Die Ausgabe des Befehls sieht in etwa so aus:
Diese Datei enthält bidirektionalen Unicode-Text, der möglicherweise anders als unten dargestellt interpretiert oder kompiliert wird. Öffnen Sie die Datei zur Überprüfung in einem Editor, der verborgene Unicode-Zeichen anzeigt.Weitere Informationen zu bidirektionalen Unicode-Zeichen Versteckte Zeichen anzeigen$ ccextractor $something.mkv | |
CCExtractor 0.87, Carlos Fernandez Sanz, Volker Quetschke. | |
Teletext-Teile aus Petr Kutaleks telxcc | |
————————————————— ———————– | |
Eingabe:$something.mkv | |
[Extract:1] [Stream mode:Autodetect] | |
[Programm:Auto] [Hauppage-Modus:Nein] [MythTV-Code verwenden:Auto ] | |
[Timing-Modus:Auto] [Debug:Nein] [Puffereingabe:Nein] | |
[pic_order_cnt_lsb für H.264 verwenden:Nein] [CC-Decoder-Traces drucken:Nein ] | |
[Zielformat:.srt] [Kodierung:UTF-8] [Verzögerung:0] [Trimmlinien:Nein] | |
[Schriftfarbendaten hinzufügen:Ja] [Schriftsatz hinzufügen:Ja] | |
[Groß-/Kleinschreibung konvertieren:Nein] [Video-Bearbeitungsteilnahme:Nein] | |
[Startzeit der Extraktion:nicht festgelegt (vom Start)] | |
[Extraction end time:not set (to end)] | |
[Livestream:Nein] [Taktfrequenz:90000] | |
[Teletext page:Autodetect] | |
[Start-Credits-Text:None] | |
[Quantisierungsmodus:CCExtractors interne Funktion] | |
————————————————— ————– | |
Öffnungsdatei:$something.mkv | |
Datei scheint ein Matroska/WebM-Container zu sein | |
Analysieren von Daten im Matroska-Modus | |
Dokumenttyp:matroska | |
Timecode-Skalierung:1000000 | |
Muxing-App:libebml v1.3.1 + libmatroska v1.4.2 | |
Schreib-App:mkvmerge v8.2.0 ('World of Adventure') 64bit | |
Titel:$etwas | |
Track-Eintrag: | |
Titelnummer:1 | |
UID:1 | |
Typ:video | |
Codec-ID:V_MPEG4/ISO/AVC | |
Sprache:mal | |
Name:$something | |
Track-Eintrag: | |
Titelnummer:2 | |
UID:2 | |
Typ:audio | |
Codec-ID:A_MPEG/L3 | |
Sprache:mal | |
Name:$something | |
Track-Eintrag: | |
Titelnummer:3 | |
UID:irgendeine Nummer | |
Typ:Untertitel | |
Codec-ID:S_TEXT/UTF8 | |
Name:$something | |
99 % | 144:34 | |
100 % | 144:34 | |
Ausgabedatei:$something_eng.srt | |
Fertig, Verarbeitungszeit =6 Sekunden | |
Probleme? Eröffnen Sie hier ein Ticket | |
https://github.com/CCExtractor/ccextractor/issues |
Es scannt im Grunde die Mediendatei. In diesem Fall wurde festgestellt, dass sich die Mediendatei in
CCExtractor ist ein wunderbares Tool, das verwendet werden kann, um Untertitel zusammen mit Subtitle Edit zu verbessern, das ich im nächsten Abschnitt vorstellen werde.
Interessante Lektüre:Es gibt eine interessante Zusammenfassung der Untertitel bei
Bearbeiten von Untertiteln mit dem SubtitleEditor Tool
Sie wissen wahrscheinlich, dass die meisten Untertitel im
1 | |
00:00:00,959 –> 00:00:13,744 | |
"THE CABINET | |
OF DR. CALIGARI" | |
2 | |
00:00:40,084 –> 00:01:02,088 | |
EINE GESCHICHTE über das moderne Wiederauftauchen eines Mythos aus dem 11. Jahrhundert | |
der den seltsamen und mysteriösen Einfluss aufruft | |
eines Mountebank-Mönchs gegenüber einem Schlafwandler. |
Der von mir geteilte Untertitelauszug stammt aus einem hübschen altdeutschen Film namens The Cabinet of Dr. Caligari (1920)
Subtitleeditor ist ein wunderbares Werkzeug, wenn es um die Bearbeitung von Untertiteln geht. Der Untertitel-Editor ist und kann verwendet werden, um die Zeitdauer, die Bildrate der Untertiteldatei so zu manipulieren, dass sie mit der Mediendatei synchronisiert ist, die Dauer der Pausen dazwischen und vieles mehr. Ich werde hier einige der grundlegenden Untertitelbearbeitungen teilen.
Installieren Sie zuerst subtitleeditor auf die gleiche Weise wie ccextractor, indem Sie Ihre bevorzugte Installationsmethode verwenden. In Debian können Sie diesen Befehl verwenden:
sudo apt install subtitleeditor
Wenn Sie es installiert haben, sehen wir uns einige der häufigsten Szenarien an, in denen Sie einen Untertitel bearbeiten müssen.
Manipulieren von Bildraten zum Synchronisieren mit Mediendateien
Wenn Sie feststellen, dass die Untertitel nicht mit dem Video synchronisiert sind, könnte einer der Gründe der Unterschied zwischen den Bildraten der Videodatei und der Untertiteldatei sein.
Woher kennen Sie dann die Bildraten dieser Dateien?
Um die Bildrate einer Videodatei zu ermitteln, können Sie das Mediainfo-Tool verwenden. Möglicherweise müssen Sie es zuerst mit dem Paketmanager Ihrer Distribution installieren.
Die Verwendung von mediainfo ist einfach:
$ mediainfo somefile.mkv | grep Frame Format settings : CABAC / 4 Ref Frames Format settings, ReFrames : 4 frames Frame rate mode : Constant Frame rate : 25.000 FPS Bits/(Pixel*Frame) : 0.082 Frame rate : 46.875 FPS (1024 SPF)
Jetzt können Sie sehen, dass die Bildrate der Videodatei 25.000 FPS beträgt. Die andere Bildrate, die wir sehen, ist für das Audio. Obwohl ich mitteilen kann, warum bestimmte fps bei der Video-Codierung, Audio-Codierung usw. verwendet werden, wäre dies ein anderes Thema. Es ist viel Geschichte damit verbunden.
Als nächstes müssen Sie die Bildrate der Untertiteldatei herausfinden, und das ist etwas kompliziert.
Normalerweise sind die meisten Untertitel in einem gezippten Format. Entpacken des .zip-Archivs zusammen mit der Untertiteldatei, die auf something.srt endet. Daneben gibt es in der Regel auch eine .info-Datei mit dem gleichen Namen, die manchmal die Bildrate des Untertitels enthalten kann.
Wenn nicht, ist es normalerweise eine gute Idee, zu einer Website zu gehen und den Untertitel von einer Website herunterzuladen, die diese Bildrateninformationen enthält. Für diese spezielle deutsche Datei werde ich
Wie Sie im Link sehen können, beträgt die Bildrate des Untertitels 23.976 FPS. Ganz offensichtlich funktioniert es nicht gut mit meiner Videodatei mit einer Bildrate von 25.000 FPS.
In solchen Fällen können Sie die Bildrate der Untertiteldatei mit dem Untertitel-Editor-Tool ändern:
Wählen Sie den gesamten Inhalt der Untertiteldatei aus, indem Sie STRG+A ausführen. Gehen Sie zu Timings -> Change Framerate und ändern Sie die Frameraten von 23.976 fps auf 25.000 fps oder was auch immer gewünscht wird. Speichern Sie die geänderte Datei.
Ändern der Startposition einer Untertiteldatei
Manchmal kann die obige Methode ausreichen, manchmal jedoch nicht.
Möglicherweise finden Sie einige Fälle, in denen sich der Start der Untertiteldatei von dem im Film oder einer Mediendatei unterscheidet, während die Bildrate die
Gehen Sie in solchen Fällen wie folgt vor:
Wählen Sie den gesamten Inhalt der Untertiteldatei aus, indem Sie STRG+A ausführen. Gehen Sie zu Timings -> Wählen Sie Untertitel verschieben.
Ändern Sie die neue Startposition der Untertiteldatei. Speichern Sie die geänderte Datei.
Wenn Sie genauer sein möchten, verwenden Sie mpv, um den Film oder die Mediendatei anzuzeigen, und klicken Sie auf das Timing. Wenn Sie auf die Zeitleiste klicken, die anzeigt, wie viel der Film oder die Mediendatei verstrichen ist, wird durch Klicken darauf auch angezeigt Mikrosekunde.
Normalerweise mag ich es, genau zu sein, also versuche ich, so genau wie möglich zu sein. Bei MPV ist es sehr schwierig, da die menschliche Reaktionszeit ungenau ist. Wenn ich supergenau sein will, benutze ich so etwas wie Audacity, aber das ist ein ganz anderes Ballspiel, da man so viel mehr damit machen kann. Das könnte auch etwas sein, das in einem zukünftigen Blogbeitrag untersucht werden sollte.
Manipulieren der Dauer
Manchmal reicht es nicht aus, beides zu tun, und Sie müssen sogar die Dauer verkleinern oder hinzufügen, um sie mit der Mediendatei zu synchronisieren. Dies ist eine der mühsameren Arbeiten, da Sie die Dauer jedes Satzes einzeln festlegen müssen. Dies kann insbesondere passieren, wenn Sie variable Bildraten in der Mediendatei haben (heutzutage selten, aber Sie erhalten immer noch solche Dateien).
In einem solchen Szenario müssen Sie die Dauer möglicherweise manuell bearbeiten, und eine Automatisierung ist nicht möglich. Der beste Weg ist entweder, die Videodatei zu reparieren (ohne Verschlechterung der Videoqualität nicht möglich) oder das Video von einer anderen Quelle in höherer Qualität zu beziehen und es dann mit den von Ihnen bevorzugten Einstellungen zu transcodieren. Auch dies ist zwar ein großes Unterfangen, das ich in einem zukünftigen Blogbeitrag beleuchten könnte.
Schlussfolgerung
Was ich oben mitgeteilt habe, betrifft mehr oder weniger die Verbesserung bestehender Untertiteldateien. Wenn Sie mit einem Scratch beginnen würden, brauchen Sie viel Zeit. Ich habe das überhaupt nicht geteilt, weil ein Film oder irgendein Videomaterial von sagen wir einer Stunde leicht zwischen 4 und 6 Stunden oder sogar mehr dauern kann, abhängig von den Fähigkeiten des Untertitelers, der Geduld, dem Kontext, dem Jargon, den Akzenten, dem englischen Muttersprachler, Übersetzer usw., was sich auf die Qualität des Untertitels auswirkt.
Ich hoffe, Sie finden das interessant und werden von nun an etwas besser mit Ihren Untertiteln umgehen. Wenn Sie Vorschläge zum Hinzufügen haben, hinterlassen Sie bitte unten einen Kommentar.