Avatar
www.fr-an.de

MPEG-1 Multiplexed Stream

Pack Header

Wie die Elementarstreams beginnen auch bei den multiplexten Stream die Header mit dem PACK_START_CODE_PREFIX $000001. Und auch hier schliesst sich eine ID an. Beim Pack Header ist dies der Wert $BA. Während die Header/Packet-Längen variable sind, beträgt sie hier abzüglich Startcode immer 8 Byte. Der Abstand der Pack Header zueinander ergibt die Paketgröße. Bei einem Systemstream beträgt sie 2048 Byte, bei VCD 2324.

Aufbau

  1. 4 Byte: PACK_START_CODE = $000001BA
  2. 5 Byte: Identikator und System Clock Reference
    1. 4 Bit: Identikator für MPEG-1 = 0010
    2. 3 Bit: Bit 32-30 der System Clock Reference
    3. 1 Bit: Marker
    4. 15 Bit: Bit 29-15 der System Clock Reference
    5. 1 Bit: Marker
    6. 15 Bit: Bit 14-0 der System Clock Reference
    7. 1 Bit: Marker
  3. 3 Byte: Multiplex Rate
    1. 1 Bit: Marker
    2. 22 Bit: Multiplex Rate
    3. 1 Bit: Marker

Als Schema:

  7 6 5 4 3 2 1 0
0 PACK_START_CODE
 
$000001BA
1
2
3
4 ID 0010 SCR Bit 32-30 Marker
5 System Clock Reference Bit 29-22
6 System Clock Reference Bit 21-15 Marker
7 System Clock Reference Bit 14-7
8 System Clock Reference Bit 6-0 Marker
9 Marker Multiplex Bitrate
10 noch Multiplex Bitrate
11 noch Multiplex Bitrate Marker

 

Erläuterungen

Der Identikator für MPEG-1 ist immer 0010. MPEG-2 hat beispielsweise den Wert 01.

Die System Clock Reference ist die 'Intended Time, in 90 kHz clock zycles'.

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

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

 

Testprogramm

Mit dem folgenden kleinen Testprogramm kann man einen MPEG-1 Stream scannen, die Packs und Streams sowie den Pack Header anzeigen lassen.

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

Fr_An - Letzte Änderung: 13. Oktober 2008
Counter
seit 28. Juli 2010