Video FOURCCs

Vielen Videoformaten sind FOURCC-Codes zugewiesen. Ein FOURCC-Code ist eine 32-Bit-Ganzzahl ohne Vorzeichen, die durch Verkettung von vier ASCII-Zeichen erstellt wird. Der FOURCC-Code für das YUY2-Video ist beispielsweise "YUY2".

Verschiedene C/C++-Makros werden definiert, um FOURCC-Werte im Quellcode zu deklarieren. Das MAKEFOURCC-Makro ist in Mmsystem.h definiert, und das FCC-Makro wird in Aviriff.h und verschiedenen anderen Headerdateien definiert. Sie können einen FOURCC-Code auch direkt als Zeichenfolgenliteral deklarieren, indem Sie einfach die Reihenfolge der Zeichen umkehren. Daher sind die folgenden Anweisungen gleichwertig:

DWORD fccYUY2 = MAKEFOURCC('Y','U','Y','2');
DWORD fccYUY2 = FCC('YUY2');
DWORD fccYUY2 = '2YUY';  // Declares the FOURCC 'YUY2'.

(Im letzten Beispiel ist das Umkehren der Byte reihenfolge erforderlich, da Windows eine Little-Endian-Architektur verwendet. "Y" = 0x59, "U" = 0x55 und "2" = 0x32, sodass "2 UIY" 0x32595559.)

Einige der DirectX Video Acceleration 2.0-APIs verwenden einen D3DFORMAT-Wert, um ein Videoformat zu beschreiben. Ein FOURCC-Code kann auch in diesem Kontext verwendet werden:

D3DFORMAT fmt = (D3DFORMAT)MAKEFOURCC('Y','U','Y','2');
D3DFORMAT fmt = (D3DFORMAT)FCC('YUY2');
D3DFORMAT fmt = D3DFORMAT('2YUY'); // Coerce to D3DFORMAT type.

FOURCC-Konstanten

In der folgenden Tabelle sind einige allgemeine FOURCC-Codes aufgeführt.

FOURCC-Wert BESCHREIBUNG
'H264' H.264-Video.
'I420' YUV-Video im planaren 4:2:0-Format gespeichert.
'IYUV' YUV-Video im planaren 4:2:0-Format gespeichert.
'M4S2' MPEG-4- Teil 2-Video.
'MP4S' Microsoft MPEG 4 Codec Version 3. Dieser Codec wird nicht mehr unterstützt.
'MP4V' MPEG-4- Teil 2-Video.
'MPG1' MPEG-1-Video.
'MSS1' Inhalt, der mit dem Windows Media Video 7-Bildschirmcodec codiert ist.
'MSS2' Inhalt, der mit dem Windows Media Video 9-Bildschirmcodec codiert ist.
"UYVIG" YUV-Video im gepackten 4:2:2-Format gespeichert. Ähnlich wie YUY2, aber mit unterschiedlicher Reihenfolge der Daten.
'WMV1' Inhalt, der mit dem Windows Media Video 7-Codec codiert ist.
'WMV2' Inhalt, der mit dem Windows Media Video 8-Codec codiert ist.
'WMV3' Inhalt, der mit dem Windows Media Video 9-Codec codiert ist.
WMVA Inhalt, der mit der älteren, veralteten Version des Windows Media Video 9 Advanced Profile-Codecs codiert ist.
'WMVP' Inhalt, der mit dem Windows Media Video 9.1-Bildcodec codiert ist.
"WVC1" SMPTE 421M ("VC-1"). Inhalt, der mit dem Windows Media Video 9 Advanced Profile codiert ist.
"WVP2" Inhalt, der mit dem Windows Media Video 9.1 Image v2-Codec codiert ist.
"YUY2" YUV-Video im gepackten 4:2:2-Format gespeichert.
'YV12' YUV-Video im planaren Format 4:2:0 oder 4:1:1. Identisch mit I420/IYUV, außer dass die Du- und V-Ebenen umgeschaltet sind.
'YVU9' YUV-Video im planaren 16:1:1-Format gespeichert.
'YVILI' YUV-Video im gepackten 4:2:2-Format gespeichert. Ähnlich wie YUY2, aber mit unterschiedlicher Reihenfolge der Daten.

Videomedientypen

Video-Untertyp-GUIDs