Video FOURCCs
Många videoformat har FOURCC-koder tilldelade till sig. En FOURCC-kod är ett 32-bitars osignerat heltal som skapas genom att sammanfoga fyra ASCII-tecken. Till exempel är FOURCC-koden för YUY2-videon "YUY2".
Olika C/C++-makron definieras för att deklarera FOURCC-värden i källkoden. Makrot MAKEFOURCC definieras i Mmsystem.h och makrot FCC definieras i Aviriff.h och olika andra huvudfiler. Du kan också deklarera en FOURCC-kod direkt som en strängliteral genom att helt enkelt återställa teckenordningen. Följande påståenden är därför likvärdiga:
DWORD fccYUY2 = MAKEFOURCC('Y','U','Y','2');
DWORD fccYUY2 = FCC('YUY2');
DWORD fccYUY2 = '2YUY'; // Declares the FOURCC 'YUY2'.
(I det sista exemplet är det nödvändigt att återställa byteordningen eftersom Windows använder en lite endiansk arkitektur. 'Y' = 0x59, 'U' = 0x55 och '2' = 0x32, så '2YUY' är 0x32595559.)
Några av api:erna DirectX Video Acceleration 2.0 använder ett D3DFORMAT värde för att beskriva ett videoformat. En FOURCC-kod kan också användas i den här kontexten:
D3DFORMAT fmt = (D3DFORMAT)MAKEFOURCC('Y','U','Y','2');
D3DFORMAT fmt = (D3DFORMAT)FCC('YUY2');
D3DFORMAT fmt = D3DFORMAT('2YUY'); // Coerce to D3DFORMAT type.
FOURCC-konstanter
I följande tabell visas några vanliga FOURCC-koder.
FOURCC-värde | Beskrivning |
---|---|
"H264" | H.264 video. |
"I420" | YUV-video som lagras i planar 4:2:0-format. |
"IYUV" | YUV-video som lagras i planar 4:2:0-format. |
"M4S2" | MPEG-4 del 2 video. |
"MP4S" | Microsoft MPEG 4 codec version 3. Den här codec stöds inte längre. |
"MP4V" | MPEG-4 del 2 video. |
"MPG1" | MPEG-1 video. |
"MSS1" | Innehåll som kodas med Windows Media Video 7-skärmkodc. |
"MSS2" | Innehåll som kodas med Windows Media Video 9-skärmkodc. |
"UYVY" | YUV-video lagrad i packat 4:2:2-format. Liknar YUY2 men med olika sortering av data. |
"WMV1" | Innehåll som kodas med Windows Media Video 7 codec. |
"WMV2" | Innehåll som kodas med Windows Media Video 8 codec. |
"WMV3" | Innehåll som kodas med Windows Media Video 9 codec. |
"WMVA" | Innehåll som kodas med den äldre, föråldrade versionen av Windows Media Video 9 Advanced Profile codec. |
"WMVP" | Innehåll som kodas med Windows Media Video 9.1 Image codec. |
"WVC1" | SMPTE 421M ("VC-1"). Innehåll som kodas med Avancerad profil för Windows Media Video 9. |
"WVP2" | Innehåll som kodas med Windows Media Video 9.1 Image v2 codec. |
"YUY2" | YUV-video lagrad i packat 4:2:2-format. |
"YV12" | YUV-video som lagras i planar 4:2:0- eller 4:1:1-format. Identisk med I420/IYUV förutom att du- och V-planen är växlade. |
"YVU9" | YUV-video som lagras i planar 16:1:1-format. |
"YVYU" | YUV-video lagrad i packat 4:2:2-format. Liknar YUY2 men med olika sortering av data. |
Relaterade ämnen