Zusammenfassung

  • RFC 3189 setzte das M-Bit im letzten RTP-Paket eines DV-Bildes, verbot aber, den Bildwechsel davon abhängig zu machen: Gerade dieses Paket konnte fehlen, deshalb war die Änderung des 90-kHz-RTP-Zeitstempels die maßgebliche Grenze.
  • Der Standard trennte weitere Aussagen: Ein Paket enthielt vollständige 80-Byte-DIF-Blöcke nur eines Bildes; die Uhr lief über absichtlich ausgelassene Bilder weiter; VAUX und AAUX blieben im Strom nötig; und Verlustverdeckung ersetzte fehlende Blöcke, ohne sie wiederherzustellen.

Die schnellste Abschlussmeldung war die verletzlichste

DV stammte aus einer Aufzeichnungswelt mit Schrägspurband und IEEE 1394. Ein Bild bestand aus DIF-Sequenzen, die wiederum aus festen 80-Byte-Blöcken aufgebaut waren. Blockkennungen beschrieben Position und Funktion: Video, Audio, VAUX, Subcode oder Sequenzkopf.

RFC 3189 übernahm diese Einheit unverändert in die RTP-Nutzlast. Nach dem gewöhnlichen RTP-Header folgte kein eigener DV-Header. Die Nutzlast war ein Vielfaches von 80 Bytes. Mehrere Blöcke durften in ein Paket, aber nur aus demselben Bild. Restlicher Platz durfte nicht mit dem Anfang des nächsten Bildes gefüllt werden.

Alle Pakete eines Bildes teilten einen 90-kHz-Zeitstempel. Sein Wechsel bedeutete ein neues Bild. Das Markerbit bot eine frühere Entscheidung: War das letzte Paket da, musste der Empfänger nicht erst auf den neuen Zeitstempel warten.

Seine Abwesenheit war jedoch mehrdeutig. Sie konnte bedeuten, dass weitere Pakete unterwegs waren. Sie konnte ebenso bedeuten, dass genau das letzte Paket samt M-Bit verloren ging. Deshalb durfte die Bilderkennung nicht auf dem Marker beruhen.

Eine richtige Uhr konnte über ein unvollständiges Bild hinweggehen

Der nächste Zeitstempel beseitigte die Grenzunsicherheit. Er vervollständigte das vorherige Bild nicht. Ob Blöcke fehlten, blieb eine andere Frage, zu der Sequenzlücken und empfangene Blockpositionen gehörten.

Manche Lücken waren sogar vorgesehen. Ein Sender durfte Bilder samt Video- und VAUX-Daten auslassen, um die Rate zu verringern. Der Zeitstempel musste trotzdem um die ausgelassene Zeit steigen. Unveränderte Bildbereiche konnten ebenfalls ohne ihre Video-DIF-Blöcke übertragen werden.

Empfänger sollten fehlende Bereiche verbergen können, etwa durch Wiederholung des entsprechenden Blocks aus dem vorherigen Bild. Das verbesserte die Darstellung unter Echtzeitbedingungen. Es verwandelte einen alten Block aber nicht in den verlorenen neuen.

Ein flüssiges Bild konnte daher gleichzeitig eine korrekte Zeitlinie und unvollständige Übertragung enthalten. Wer nur die gerenderte Ausgabe archivierte, verlor womöglich die Unterscheidung zwischen empfangenem Material und späterer Ersetzung.

Sitzungsbeschreibung und Mediendaten teilten sich die Arbeit

Audio konnte im DV-Videostrom gebündelt oder separat übertragen werden. Diese Entscheidung gehörte zur dynamischen Payload-Type-Zuweisung und blieb für die Sitzung fest, damit sich Sequenznummern nicht während eines Moduswechsels neu ordnen mussten. Verschiedene DV-Encodings verlangten verschiedene dynamische Typen.

SDP beschrieb Encoding und Audio-Bündelung. Es beschrieb nicht jede Kombination aus Seitenverhältnis, Bildposition, Audioquantisierung, Kanalzahl, Kanalbelegung und Sprache.

Diese Angaben blieben in den DV-Paketen source und source-control. Der Sender musste die unentbehrlichen VAUX-Blöcke oder AAUX-Informationen mitsenden. SDP benannte den beabsichtigten Medientyp; Hilfsblöcke erklärten das konkrete Material; Paketzustellung und Decoderfolg waren weitere Ebenen.

Für getrenntes Audio empfahl RFC 3189 eine Verpackung als DAT12, L16 oder L20, damit auch nicht DV-fähige Empfänger es verarbeiten konnten. Gleiche Zeitstempel in getrennten DV-Strömen vereinfachten Lippensynchronität. Sie bewiesen weder vollständige Ankunft noch fehlerfreie Wiedergabe.

Der Nachfolger korrigierte, ohne die Vergangenheit umzubenennen

RFC 6469 löste RFC 3189 im Jahr 2011 ab. Er ergänzte SMPTE-370M-HDTV-Formate, Offer/Answer-Regeln und Source-Specific-Multicast-Hinweise. Außerdem präzisierte er das Weglassen von Subcode und modernisierte die Medientypregistrierung.

Der neue Text erklärte, dass die SDP-Beispiele in RFC 3189 fmtp falsch verwendet hatten. SMPTE 306M wurde als rückwärtskompatible Bezeichnung eingeordnet, deren Format bereits von SMPTE 314M abgedeckt war.

Ältere Systeme blieben trotzdem erreichbar. Ein 306M-Angebot durfte akzeptiert oder nach einer Ablehnung als Fallback versucht werden. Korrektur bedeutete nicht, historische Beobachtungen heimlich in neue Beschreibungen umzuschreiben.

Die Markerregel blieb unverändert. Auch RFC 6469 nutzte M für eine schnelle Anzeige und verlangte den Zeitstempelwechsel als Grenze, falls das Endpaket fehlte. Die Revision änderte Formatkatalog und Signalisierung, nicht die Möglichkeit des Paketverlusts.

Kleine Felder brauchen kleine Zuständigkeiten

Ein empfangenes M=1 belegt, wie dieses Paket markiert war. Es belegt nicht, dass alle früheren Pakete ankamen. Ein neuer Zeitstempel belegt den Beginn eines neuen Bildes. Er belegt nicht die Vollständigkeit des alten. Verdeckung belegt eine Darstellungsentscheidung, keine Wiederherstellung.

RFC 3189 ist deshalb mehr als eine Liste von DV-Modi. Der Text zeigt, wie ein Echtzeitsystem schnell entscheiden kann, ohne seine schnellen Hilfen zu umfassenden Wahrheitsquellen zu erklären. Die Transportkette blieb belastbar, weil Marker, Uhr, Blöcke und Ersatzhandlungen getrennt verbucht wurden.