Denke momentan daran ein kleines CommandLine Tool zu schreiben, was die Zeitmarken in von Untertitelstreams anpasst, damit sie bei einem SpeedUp/Slowdown des Quellmaterials noch synchron sind.
(noch keine Zeile Code geschrieben, ist momentan nur eine Überlegung)
Hier was ich mir bis dato überlegt habe:
.idx/.sub Untertitel:
Dem Aufbau der .idx Datei nach zu urteilen:
# Vob/Cell ID: 1, 1 (PTS: 0)timestamp: 00:00:14:400, filepos: 000000000timestamp: 00:00:17:440, filepos: 000001000timestamp: 00:00:19:280, filepos: 000002000timestamp: 00:00:21:120, filepos: 000002800timestamp: 00:00:23:600, filepos: 000003800
sollte es reichen einfach den Wert hinter 'timestamp' auszulesen, in ms umzuwandeln mit dem Skalierungsfaktor zu skalieren und den alten durch den neuen Wert (wieder als hh:mm:ss:zzz) zu ersetzen.
ttxt Untertitel:
Dem Aufbau der Datei nach zu urteilen:
<TextSample sampleTime="00:00:00.000" xml:space="preserve"></TextSample><TextSample sampleTime="00:00:14.680" xml:space="preserve">At the left we can see...</TextSample><TextSample sampleTime="00:00:17.513" xml:space="preserve"></TextSample><TextSample sampleTime="00:00:17.720" xml:space="preserve">At the right we can see the...</TextSample><TextSample sampleTime="00:00:19.560" xml:space="preserve">...the head-snarlers</TextSample><TextSample sampleTime="00:00:21.400" xml:space="preserve">Everything is safe.Perfectly safe.</TextSample>
sollte es reichen einfach den Wert hinter 'sampleTime' auszulesen, in ms umzuwandeln mit dem Skalierungsfaktor zu skalieren und den alten durch den neuen Wert (wieder als hh:mm:ss:zzz) zu ersetzen.
srt Untertitel:
Dem Aufbau der Datei nach zu urteilen:
100:00:14,680 --> 00:00:17,513At the left we can see...200:00:17,720 --> 00:00:19,560At the right we can see the...300:00:19,560 --> 00:00:21,400...the head-snarlers400:00:21,400 --> 00:00:23,675Everything is safe.Perfectly safe.
sollte es reichen einfach die Zeiten in den Zeilen nach der Untertitelnummer auszulesen, umzuwandeln, zu skalieren und eine neue Zeile zu schreiben.
.ass Untertitel:
Dem Aufbau der .ass Datei nach zu urteilen:
Dialogue: 0,0:00:15.04,0:00:18.04,Default,,0000,0000,0000,,Auf der linken Seite sehen wir...
Dialogue: 0,0:00:18.75,0:00:20.33,Default,,0000,0000,0000,,Auf der rechten Seite sehen wir die...
Dialogue: 0,0:00:20.41,0:00:21.91,Default,,0000,0000,0000,,...die Enthaupter.
Dialogue: 0,0:00:22.00,0:00:24.62,Default,,0000,0000,0000,,Alles ist sicher.|Vollkommen sicher.
sollte es reichen den zweiten und dritten der CSV Werte auszulesen, umzuwandln, zu skallieren und auszutauschen.
Würde mich freuen, wenn der ein oder andere der sich mit Untertitel besser auskennt etwas schreiben könnte:
1. Habe ich etwas übersehen? Gibt es z.B. bei .ass noch andere Werte 'Dialogue' mit denen eine Zeile anfängt bei der man die Zeiten anpassen sollte? Gibt es irgendwelche Sonderfälle die man kennen und beachten sollte?
2. Gibt es andere Untertitelformate die man beschleunigen/ausbremsen will, zu denen es Informationen im Netz gibt?
3. Gibt es eventuell schon ein kleines Tool, was Untertitel per CommandLine beschleunigen/verlangsamen kann und ich kenne es nur nicht?
Cu Selur