Struktur eines MPEG-2 Programmstreams.
| Sequence | Sequence | ... | Sequence |
Der Videostream besteht aus mehreren aufeinanderfolgenden Sequenzen.
| Sequence Startcode |
Video Parameter |
Bitstream Parameter |
QTs, Misc |
Group of Picture |
... | Group of Picture |
Sequence Endcode |
Die Sequenz kann bzw sollte weitere Sequenzheader enthalten. Üblicherweise vor jeder
Group of Picture (GOP). Die Sequenzheader werden zum Erstellen von Einsprungpunkten
(Kapitelmarken) und zum schnellen Spulen benötigt. Am Ende sollte eine Sequenzendecode
stehen. Dies scheint bei MPEG-2 jedoch nicht üblich zu sein.
| GOP Startcode |
Time Code |
GOP Params |
Picture | ... | Picture |
Die GOP enthält die verschiedene Bildtypen. Es gibt I, P, B und D-Frames.
Intra Picture (I-Frames) sind Vollbilder. Predicted Picture (P-Frames) sind Teilbilder und referieren auf die vorausgegangenen I/P-Frames. Bidirectorial Pictures (B-Frames) sind ebenfalls Teilbilder und referieren auf das vorausgegangene sowie das folgende I/B-Frame. Direct Coded Picture (D-Frames) werden in MPEG-2 nicht verwandt.
| 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 Startcode |
Vertical Position |
QScale | Macroblock | ... | Macroblock |
Slices sind eine vertikale und horizontale Zusammenfassung von Macroblöcken.
| 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).
Fr_An - Letzte Änderung: 28. September 2008
seit 28. Juli 2010