Was ein Semikolon im Timecode tatsächlich besagt
Wird das letzte Trennzeichen eines Timecodes vom Doppelpunkt zum Semikolon, ist das meist der Hinweis: „Diese Timecode-Kette zeigt eine Drop-Frame-Schreibweise.“ Gemeint ist das Problem, dass die Framezählung bei einigen gebrochenen Bildraten über die Zeit von der mitlaufenden Uhrzeit abwegt. Beim Empfang einer Übergabedatei gilt jedoch, dass das Semikolon nur ein Hinweis ist und für sich nicht belegt, dass die Framepositionen nach der Drop-Frame-Regel umgerechnet wurden. Anzeigzeichen und Zählalgorithmus sind getrennt zu prüfen.
Das Semikolon sagt, dass diese Zeichenkette eine Drop-Frame-Schreibweise ausdrücken will; es sagt nicht automatisch, dass diese Framepositionen nach der Drop-Frame-Regel gerechnet wurden.
Warum es eine Drop-Frame-Zählweise gibt
Bei einer gebrochenen Bildrate wie 29.97 weicht die Zahl der Frames, die in einer Realzeitsekunde tatsächlich fortgeschrieben werden, in ihrem Tempo von dem Rhythmus ab, der entsteht, wenn mit der ganzen Zahl 30 nummeriert wird. Würde fortlaufend mit aufsteigenden ganzen Frame-Nummern ohne Ausgleich angezeigt, käme die Timecode-Lesung allmählich hinter die Realzeit zurück.
Nach der Formel gerechnet kommt eine fortlaufende Zählung bei 29.97 auf die Größenordnung von etwa einer Minute und einer halben Minute pro Tag. Die Drop-Frame-Zählung wirft deshalb nicht etwa Videoframes weg; sie überspringt innerhalb der Timecode-Nummerierung nach einer Regel bestimmte Nummern, damit Anzeigeuhr und verstrichene Zeit wieder zusammenfinden.
Die übliche Textvereinbarung schreibt das Trennzeichen des letzten Segments als Semikolon, etwa 01:00:00;00. Dieses Zeichen ist nützlich, weil die Empfängerseite auf einen Blick erkennt, dass die Datei gerade eine Drop-Frame-Schreibweise ausdrückt. Trotzdem bleibt es ein Teil der Zeichenkette.
Anzeigzeichen und Umrechnung der Framepositionen sind zwei Dinge
Eine echte Drop-Frame-Rechnung führt die Übersprungregel aus, sooft zwischen Frame-Nummer und Stunden, Minuten, Sekunden und Frames umgerechnet wird. Wird lediglich der letzte : durch ; ersetzt, ändert sich nur das Aussehen, nicht aber die Frameposition, die diese Ziffernfolge zuvor dargestellt hat.
In den Übergabedateien von SlateX liegen diese beiden Schreibweisen in verschiedenen Feldern. Eine bereits vorhandene Start- oder Outpunkt-Zeichenkette geht einen von zwei Wegen: eine von der Aufzeichnungskette in dem Augenblick erfasste Ablesung wird zu einer gültigen Drop-Frame-Adresse neu gesetzt – das bloße Setzen des Trennzeichens würde Werte wie ;00 oder ;01 ergeben, die SMPTE nicht definiert; eine Ablesung, die von der Maschine oder einem Panel abgeschrieben wurde, bleibt Ziffer für Ziffer unverändert, und nur das Trennzeichen des letzten Segments wird auf Semikolon gesetzt. Ist die Quelle nicht deklariert, wird nichts geraten: die Ziffern bleiben unberührt, und die Reconcile-Tabelle des Schlusstags benennt die fehlende Deklaration als TC_SOURCE_UNDECLARED. Duration ist die framegenaue Spanne zwischen den beiden Lesungen, ohne den letzten Frame; in Zeilen, die DF erklären, steht dieses Feld in Semikolonform.
Das ist die harte Grenze dieses Beitrags: Ein ; sagt, dass die Übergabeschicht diese Zeichenkette als Drop-Frame-Schreibweise gekennzeichnet hat. Aus dem Zeichen allein lässt sich nicht lesen, ob diese Ziffern zuvor mit der Drop-Frame-Regel entstanden sind.
Ein Wert nahe 29.97 erklärt noch kein Drop-Frame
Eine Bildrate nahe 29.97 ist für sich kein Beleg dafür, dass die gesamte Kette dieselbe Zählweise verwendet. Besondere Aufmerksamkeit verdienen Werte an der Grenze: Was der Bildschirm zeigt und was die Übergabedatei schreibt, kann in verschiedene Kategorien fallen. Prüfen lässt sich, was das Feld in der Datei am Ende sagt und ob die tatsächliche FPS-Angabe dieser Zeile, die Timecode-Zeichenkette und das Material zusammenpassen.
Die Empfängerseite prüft, wie ein tatsächliches Material auf einen Timecode sitzt, und nicht nur, wie ein Trennzeichen aussieht.
Live-Anzeige der App und Übergabedatei sind nicht dieselbe Darstellung
Der live auf dem Bildschirm angezeigte Timecode ist eine Zeichenkette mit durchgehend Doppelpunkten, ohne Semikolon. Was in der App live erscheint und was später in einer Übergabedatei stehen kann, folgt daher zwei verschiedenen Darstellungsregeln.
Ein Semikolon, das später in einer Übergabedatei auftaucht, belegt nicht, dass die Live-Anzeige schon nach derselben Zählregel gearbeitet hat.
Beim Empfang sind diese beiden Ebenen getrennt zu halten: welche Zeichenkette auf dem Bildschirm gelesen wurde, welche die Übergabedatei schreibt, ob bei einer vorhandenen Zeichenkette nur das Trennzeichen ersetzt wurde und ob die endgültigen Materialpositionen tatsächlich zusammenpassen. Fehlt eine dieser Prüfungen, reicht das Semikolon nicht als Abnahmeergebnis.
Wie eine Timecode mit Semikolon tatsächlich geprüft wird
Zuerst wird geprüft, ob die FPS dieser Zeile zu Material und Aufzeichnung vom Set passt; danach wird ein ortbares Material genommen und gegen den tatsächlichen Startpunkt und die verstrichene Zeit gehalten. Der Outpunkt ist eine abgeschriebene Lesung; bei diesem Feld ist zu prüfen, ob überhaupt abschrieben wurde. Die gerechnete Spanne ist Duration; sie zu prüfen führt zurück zu den beiden Lesungen von Start und Ende und zu der Zählart, mit der sie abgelesen wurden.
Handelt es sich bei Start- oder Outpunkt um eine vorhandene Zeichenkette, genügt es nicht zu sehen, ob ein Semikolon daran ist. Die Empfängerseite prüft die Framepositionen selbst gegen das Material. Eine Zeichenkette, bei der nur das Zeichen getauscht wurde, kann optisch einer korrekten Drop-Frame-Timecode sehr ähnlich sehen, und ihre Ziffern stammen trotzdem aus einer anderen Zählart.
Das Semikolon taugt damit als Hinweis „hier ist die Drop-Frame-Handhabung zu prüfen“ und nicht als Kennzeichen „diese Zeile ist geprüft“.
FAQ
Sichert ein Semikolon im letzten Segment, dass nach der Drop-Frame-Regel gerechnet wurde?
Nein. Das Semikolon kann nur ein Zeichen der Anzeigeseite sein. Auf dem aktuellen Übergabeweg wird an einer vorhandenen Timecode-Zeichenkette möglicherweise nur das letzte Trennzeichen ersetzt, ohne die Framepositionen neu zu rechnen.
Wirft die Drop-Frame-Zählung tatsächliche Videoframes weg?
Das meint dieser Zusammenhang nicht. Die Drop-Frame-Zählung verändert die Nummerierungsregel des Timecodes, um die dauernde Abweichung zwischen fortlaufender Nummer und Realzeit bei einer gebrochenen Bildrate auszugleichen.
Warum kann derselbe Bildratenwert unterschiedlich ausfallen?
Die Bildschirmanzeige und die Übergabedatei gehören zu zwei verschiedenen Stadien, daher kann ein Wert an der Grenze unterschiedlich ausfallen. Prüfen Sie die tatsächliche Datei und das Material und lesen Sie, was das Feld am Ende sagt.
Nutzt die Live-Timecode auf dem Bildschirm der App auch ein Semikolon?
Die aktuelle Live-Kette gibt Zeichenketten mit durchgehend Doppelpunkten aus und erzeugt keine Semikolon-Darstellung. Ein Semikolon in der Übergabedatei gehört zu einer anderen Stufe und lässt nicht darauf zurückkommen, dass die Live-Kette dieselbe Drop-Frame-Zählung verwendete.
Axiom One LLC — SlateX