MPEG-Transportstrom

aus Wikipedia, der freien Enzyklopädie
Wechseln zu: Navigation, Suche
Multiple MPEG-Programme werden kombiniert und über eine Antenne gesendet. Beim US broadcast digital TV system dekodiert dann ein ATSC-Empfänger den Transportstrom und gibt das einzelne Programm auf dem Wiedergabegerät aus.

Ein Transportstrom (englisch: Transport Stream, TS, TP, und MPEG-TS) ist der Name für ein standardisiertes Kommunikationsprotokoll zur Übertragung von Audio, Video, und Daten. Es ist spezifiziert in MPEG-2 Part 1, Systems (ISO/IEC 13818-1 oder ITU-T Rec. H.222.0).

Mit MPEG-TS wird kontinuierlich digitales Video und digitales Audio gebündelt übertragen. Transportströme werden bei Übertragungswegen wie DVB (Satellit, Antenne, Kabel) und ATSC eingesetzt. MPEG-TS ist das Pendant zum Programmstrom (MPEG-PS), der für Medien wie DVDs entwickelt wurde.

Einführung[Bearbeiten]

Der Transportstrom wird auf Kanälen wie zum Beispiel Satellit, Antenne oder Kabel, also solche mit hoher Fehlerhäufigkeit, verwendet. Trotz der Fehlerkorrekturverfahren dieser Übertragungswege kommt es je nach Empfangsqualität zu Datenverlusten.

Ein Transportstrom besteht aus einer Folge von jeweils 188 Byte großen Paketen. Die Idee dahinter ist, dass bei einer nicht gesicherten Übertragung leicht Teile der Daten verlorengehen können. Bei einem kleinen Fehler ist dann jeweils ein Paket verloren. Durch kurze Pakete gewährleistet man, dass kleine Übertragungsfehler auch nur kleine Auswirkungen haben. Die Länge von 188 Byte ist an die Größe der zur Zeit der Erstellung des MPEG-2-Standards als zukunftsträchtig erachteten Übertragungstechnik ATM angepasst (ein Transportstrompaket passt in vier ATM-„Zellen“).

Transportströme mit mehreren Fernsehprogrammen werden beim weit verbreiteten Digitalfernsehstandard DVB eingesetzt. Bei der Übertragung von DVB-T werden üblicherweise vier Fernsehprogramme in einem Transportstrom untergebracht, dem sogenannten Bouquet.

Zusätzlich zu Video- und Audiokanälen sind auch Datenkanäle vorgesehen. Über die Datenkanäle können weitere Serviceinformationen, wie zum Beispiel Verschlüsselungsinformationen oder eine „elektronische Programmzeitschrift“ übertragen werden.

In den Transportstrom wiederholt eingebettete Tabellen (Program Association Table, Program Map Table) gruppieren Video-, Audio- und Datenkanäle zu Fernsehprogrammen. Die einzelnen Kanäle werden Elementarströme genannt.

Elemente des Transportstroms[Bearbeiten]

Paket[Bearbeiten]

Ein Paket ist die Basiseinheit eines Transportstroms. Es beginnt mit einem Synchronisierungs-Byte, dessen Wert 0x47 beträgt, gefolgt von drei 1-Bit-Flags und einem 13 Bit großen PID (packet identifier). Dann kommt ein 2-Bit-Feld zur Beschreibung einer eventuellen Verschlüsselung, 00 bedeutet unverschlüsselt, ein weiteres 2-Bit-Feld, welches anzeigt, ob noch optionale Felder (10) oder Nutzlast (01) oder beides (11) folgen, und noch ein 4-Bit-Kontinuitätszähler. Zusätzliche optionale Felder würden sich daran anschließen. Der Rest des Pakets besteht gegebenenfalls aus den eigentlichen Daten eines Elementarstroms. Eines der 1-Bit-Flags ist ein Startkennzeichen, um die logische Blockstruktur des Elementarstroms anzuzeigen.

PID (packet identifier)[Bearbeiten]

Jeder paketierte Elementarstrom in einem Transportstrom wird durch einen 13 Bit großen PID im Paketkopf identifiziert. Durch die Suche nach identischen PIDs extrahiert ein Demultiplexer einen Elementarstrom aus dem Transportstrom. Im Sender wird in den meisten Fällen das Zeitmultiplexverfahren eingesetzt, um zu entscheiden, wann und wie oft eine bestimmte PID im Transportstrom erscheint. Ist nichts zu übertragen, werden leere Pakete gesendet um den Transportstrom nicht abbrechen zu lassen.

Der 4-Bit-Kontinuitätszähler im Paketkopf dient der Erkennung fehlender Transportstrom-Pakete eines Elementarstroms.

Der Elementarstrom mit PID „0” ist für das regelmäßige senden der Programm-Tabelle (PAT) reserviert. Auch andere regelmäßig gesendete Tabellen belegen jeweils einen eigenen Elementarstrom (PMT, SIT, EPG). Mit diesen Informationen können die Video- und Audioströme den Programmen zugeordnet werden.

Programme[Bearbeiten]

Das grundsätzliche Konzept von Transportströmen sind Programme, die aus Gruppen von einem oder mehreren in Beziehung stehenden PIDs bestehen. Ein Transportstrom für digitales Fernsehen besteht zum Beispiel aus drei Programmen, die jeweils einen Fernsehkanal repräsentieren. Nehmen wir an, ein Programm besteht aus einem Videostream, zwei Audiostreams und zusätzlichen Metadaten, also vier Elementarströmen. Wenn ein Empfänger versuchen würde, ein bestimmtes Programm („Kanal“) einzustellen, dann müsste er zunächst einmal die Program Association Table (PAT) analysieren (erkennbar an der PID Null), woraufhin er die PID der zugehörigen Program Map Table (PMT) erfährt. Mit Hilfe der Service Description Table (SIT) auf PID 17 können diesen Programmen Namen wie z.B. "Das Erste" zugeordnet werden. Nun müsste er die dem Kanal zugeordnete PMT analysieren und erfährt dort, welche Elementarströme zu diesem Programm gehören. Dann muss er genau alle diejenigen Daten dekodieren, die zu den in der PMT angegebenen PIDs gehören.

Die Übertragung der Tabellenkopfdaten der beschreibenden Tabellen geschieht in einer einheitlichen Struktur, welche es erlaubt, die Pakete komplett mit Nutzdaten zu füllen.

PMT[Bearbeiten]

Die Program Map Table (PMT) enthält Informationen über die Programme. Für jedes Programm gibt es eine PMT, assoziiert mit ihrer eigenen PID. Die PMTs beschreiben, welche PIDs Daten für das Programm enthalten. PMTs stellen ebenso Metadaten für die Streams und ihre einzelnen PIDs bereit. Zum Beispiel sind bei einem Programm, bestehend aus einem MPEG-2-Videostrom, die PID des Videostroms und zusätzlich die Art der Daten, also in diesem Fall MPEG-2, enthalten. Die PMT kann außerdem zusätzliche Deskriptoren zur Beschreibung der einzelnen Ströme enthalten.

Senden Programme zeitweise das gleiche Programm, so kann die PMT der Programme für diese Zeit die gleichen Elementarströme enthalten, so dass die Elementarströme nicht mehrfach gesendet werden müssen.

PAT[Bearbeiten]

PAT steht für Program Association Table. Die PAT listet alle PIDs für alle PMTs im Strom. Pakete, die die PAT-Information enthalten, haben immer die PID 0x0.

PCR[Bearbeiten]

Um dem Dekoder eine zeitlich und geschwindigkeitsrichtige Darstellung zu ermöglichen, enthält das Programm eine Program Clock Reference, oder PCR, aufbauend auf den PIDs im Programm.

SDT[Bearbeiten]

Ein Service Description Table-Elementarstrom mit der PID 17 umfasst Informationen der einzelnen Programme, wie z.B. die Sendernamen.

EIT[Bearbeiten]

Ein Event Information Table-Elemantarstrom mit der PID 18 enthält die elektronische Programmzeitschrift aller Programme im Transportstrom.

Nullpakete[Bearbeiten]

Bestimmte Übertragungsprotokolle wie ATSC und DVB schreiben eine konstante Bitrate vor (CBR). Um dieses sicherzustellen, kann es vorkommen, dass ein Multiplexer zusätzliche Pakete einfügen muss. Hierfür ist die PID 0x1FFF reserviert, die dann keine Daten enthält und vom Empfänger ignoriert wird.

Speicherformate[Bearbeiten]

Einige Festplattenempfänger und viele Computer-TV-Karten können Aufnahmen von Transportströmen einzelner Sender und teilweise auch von kompletten Transpondern aufzeichnen. Das häufigst benutzte Containerformat ist dabei der oben beschriebene Transportstrom mit der Dateiendung *.ts. Dvb-Dateien beginnen als MPEG-Transportstrom mit dem Byte 0x47, welches sich alle 188 Byte wiederholt.

Vantage verwendet das TRP-Container-Format und Topfield speichert diese als *.rec. Einige dieser Transportstrom-Container lassen sich in andere konvertieren.[1] Weil häufig mehrere Programme innerhalb eines Transponders zu Transportstroms zusammengefasst werden, erlauben einige Empfänger ohne Doppeltuner, dennoch mehrere Programme zu sehen oder aufzunehmen.

Weblinks[Bearbeiten]

Siehe auch[Bearbeiten]

Einzelnachweise[Bearbeiten]

  1. Tutorial: Aufnahmen in H.264 TRP- und REC in TS formatieren (Version vom 15. August 2013 im Internet Archive) auf: HDTVTotal.com, vom 5. April 2008