Avatar
www.fr-an.de

MPEG-1 Multiplexed Stream

System Header

Der System Header ist optional und nur am Anfang des Streams vorhanden. Der Code beginnt wie jeder Code mit dem PACK_START_CODE_PREFIX und wird mit dem Wert $BB identifiziert. Das im Header enthaltene Fixed Flag gibt an, ob der Stream mit konstanter (Standard) oder variabler Bitrate gemuxt wurde.

Aufbau

  1. 4 Byte: PACK_START_CODE = $000001BB
  2. 2 Byte: Headerlänge
  3. 1 Bit: Marker
  4. 22 Bit: Maximale Multiplex Bitrate aus allem Streams
  5. 1 Bit: Marker
  6. 6 Bit: Anzahl der Audiospuren
  7. 1 Bit: Fixed Flag - Flag für Konstante Bitrate.
  8. 1 Bit: CSPS Flag - Flag für Constrained.
  9. 1 Bit: System Audio Lock Flag
  10. 1 Bit: System Video Lock Flag
  11. 1 Bit: Marker
  12. 5 Bit: Anzahl der Videospuren
  13. 1 Byte: Reserviert, auf $FF gesetzt.

Als Schema:

  7 6 5 4 3 2 1 0
0 SYSTEM_HEADER_START_CODE
 
$000001BB
1
2
3
4 Headerlänge
5
6 Marker Maximale Multiplex Bitrate
7 noch Maximale Multiplex Bitrate
8 noch Maximale Multiplex Bitrate Marker
9 Anzahl der Audiospuren Fixed Flag CSPS Flag
10 Audio Lock Video Lock Marker Anzahl der Videospuren
11 Reserved, gesetzt auf $FF.

 

Erläuterungen

Die System Audio/Video Lock Flags geben an, ob die Audio Sample Rate und Video Picture Rate in einem konstanten Verhältnis mit der Systemuhrfrequenz des Decoders steht.

Der Multiplex Rate ist die Gesamtbitrate des Streams. Sie wird in Einheite zu 400 Bit je Sekunde angegeben.

Markerbits dienen dazu, Fehler zu erkennen. Sie müssen immer den Wert 1 besitzen.

 

Testprogramm

Mit dem folgenden kleinen Testprogramm kann man einen MPEG-1 Stream scannen und den System Header anzeigen lassen.

MPEG1 System Test 3 (165 kb) MD5
Stand: 13. Oktober 2008.

Fr_An - Letzte Änderung: 13. Oktober 2008

seit 28. Juli 2010