Projekte > MPEG-1/2 Video > MPEG-1 Elementar Stream Video

Stream Struktur

Ein Elementarstream enthält nur einen Inhaltstyp. Das heißt zum Beispiel nur Video oder nur Audio. Die Struktur eines MPEG-1 Video Elementarstreams sieht so aus:

Video Stream

Sequenz Sequenz ... Sequenz

Der Videostream besteht aus mehreren aufeinanderfolgenden Sequenzen. Bei Verwendung der Standardeinstellungen im TMPG Encoder 2.* wird ein Stream jedoch nur mit einer Sequenz encodet.

Sequenz

Sequenz
Startcode
Sequenz
Header
Group of
Picture
... Group of
Picture
Sequenz
Endcode

Die Sequenz kann bzw sollte weitere Sequenzheader enthalten. Üblicherweise vor jeder Group of Picture (GOP). Sie werden zum Beispiel benötigt, um Einsprungpunkte (Kapitelmarken) definieren zu können.

Group of Picture (GOP)

GOP
Startcode
Time
Code
GOP
Params
Picture ... Picture

Die GOP enthält verschiedene Bildtypen. Bekannt dürften I, P und B-Frames sein.

Intra Picture (I-Frames) sind Vollbilder. Predicted Picture (P-Frames) sind Teilbilder und beziehen sich auf die vorausgegangenen I/P-Frames. Bidirectorial Pictures (B-Frames) sind ebenfalls Teilbilder und beziehen sich auf das vorausgegangene sowie das folgende I/B-Frame.

Der vierte Typ sind Direct Coded Picture. Diese Bilder dienen dem schnellen Vorlauf und werden nur bei MPEG-1 verwendet.

Picture

Picture
Startcode
Type Buffer
Params
Encode
Params
Slice ... Slice

Die Reihenfolge der Bilder entspricht nicht der Reihenfolge, in welcher sie angezeigt werden. Die Bilder sind aus Slices zusammengesetzt.

Slice

Slice
Startcode
Vertical
Position
QScale Macroblock ... Macroblock

Slices sind eine vertikale und horizontale Zusammenfassung von Macroblöcken.

Macroblock

Address
Increment
Type Motion
Vector
QScale CBP b0 ... b5

Ein Macroblock umfasst einen Bildausschnitt von insgesamt 16x16 Bildpunkten (Pixeln). Darin werden die YUV 4:2:0 (YCbCr) Farbinformationen gespeichert. In den ersten vier Blöcken b0 bis b3 sind die Y-Komponenten aller Bildpunkte enthalten. Im fünften Block b4 sind die blauen Chrominanzwerte (Cb) für jeweils 4 Bildpunkte in einem Punkt gespeichert. Im sechsten Block b5 entsprechend die roten Chrominanzwerte (Cr).