Delen via


Video FOURCCs

Aan veel video-indelingen zijn FOURCC-codes toegewezen. Een FOURCC-code is een 32-bits geheel getal zonder teken dat wordt gemaakt door vier ASCII-tekens samen te heffen. De FOURCC-code voor YUY2-video is bijvoorbeeld 'YUY2'.

Verschillende C/C++-macro's worden gedefinieerd voor het declareren van FOURCC-waarden in broncode. De MAKEFOURCC- macro wordt gedefinieerd in Mmsystem.h en de FCC- macro wordt gedefinieerd in Aviriff.h en verschillende andere headerbestanden. U kunt een FOURCC-code ook rechtstreeks declareren als een letterlijke tekenreeks door de volgorde van de tekens om te draaien. De volgende beweringen zijn dus gelijkwaardig:

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

(In het laatste voorbeeld is het omkeren van de bytevolgorde nodig omdat Windows gebruikmaakt van een little-endian-architectuur. 'Y' = 0x59, 'U' = 0x55 en '2' = 0x32, dus '2YUY' is 0x32595559.)

Sommige api's van DirectX Video Acceleration 2.0 gebruiken een D3DFORMAT waarde om een video-indeling te beschrijven. In deze context kan ook een FOURCC-code worden gebruikt:

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

FOURCC-constanten

De volgende tabel bevat enkele veelvoorkomende FOURCC-codes.

FOURCC-waarde Beschrijving
'H264' H.264 video.
'I420' YUV-video opgeslagen in planar 4:2:0-indeling.
'IYUV' YUV-video opgeslagen in planar 4:2:0-indeling.
'M4S2' MPEG-4 deel 2 video.
MP4S Microsoft MPEG 4 codec versie 3. Deze codec wordt niet meer ondersteund.
'MP4V' MPEG-4 deel 2 video.
'MPG1' MPEG-1-video.
MSS1 Inhoud die is gecodeerd met de schermcodec van Windows Media Video 7.
MSS2 Inhoud die is gecodeerd met de schermcodec van Windows Media Video 9.
'UYVY' YUV-video opgeslagen in verpakte 4:2:2-indeling. Vergelijkbaar met YUY2, maar met verschillende volgorde van gegevens.
'WMV1' Inhoud gecodeerd met de Windows Media Video 7-codec.
'WMV2' Inhoud die is gecodeerd met de Windows Media Video 8-codec.
'WMV3' Inhoud die is gecodeerd met de Windows Media Video 9-codec.
'WMVA' Inhoud die is gecodeerd met de oudere, verouderde versie van de Windows Media Video 9 Advanced Profile-codec.
'WMVP' Inhoud die is gecodeerd met de Windows Media Video 9.1-afbeeldingscodec.
'WVC1' SMPTE 421M ("VC-1"). Inhoud gecodeerd met Windows Media Video 9 Advanced Profile.
'WVP2' Inhoud gecodeerd met de Windows Media Video 9.1 Image v2 codec.
'YUY2' YUV-video opgeslagen in verpakte 4:2:2-indeling.
'YV12' YUV-video opgeslagen in planar 4:2:0 of 4:1:1. Identiek aan I420/IYUV, behalve dat de u- en V-vliegtuigen worden overgeschakeld.
'YVU9' YUV-video opgeslagen in planar 16:1:1-indeling.
'YVYU' YUV-video opgeslagen in verpakte 4:2:2-indeling. Vergelijkbaar met YUY2, maar met verschillende volgorde van gegevens.

 

videomediatypen

VIDEO-subtype-GUID's