Projekte > MPEG-1/2 Video > 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

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

Als Schema:

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

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