Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Muchos formatos de vídeo tienen códigos FOURCC asignados. Un código FOURCC es un entero de 32 bits sin signo que se crea mediante la concatenación de cuatro caracteres ASCII. Por ejemplo, el código FOURCC para vídeo YUY2 es "YUY2".
Se definen diferentes macros de C/C++ para declarar valores FOURCC en el código fuente. La macro MAKEFOURCC se define en Mmsystem.h y la macro FCC se define en Aviriff.h y en diversos otros archivos de encabezado. También se puede declarar un código FOURCC directamente, como un literal de cadena simplemente invirtiendo el orden de los caracteres. Por tanto, las dos siguientes instrucciones son equivalentes:
DWORD fccYUY2 = MAKEFOURCC('Y','U','Y','2');
DWORD fccYUY2 = FCC('YUY2');
DWORD fccYUY2 = '2YUY'; // Declares the FOURCC 'YUY2'.
(En el último ejemplo, es necesario invertir el orden de bytes porque Windows usa una arquitectura little-endian. 'Y' = 0x59, 'U' = 0x55 y '2' = 0x32, por lo que '2YUY' es 0x32595559.)
Algunas de las APIs de DirectX Video Acceleration 2.0 utilizan un valor D3DFORMAT para describir un formato de vídeo. También se puede usar un código FOURCC en este contexto:
D3DFORMAT fmt = (D3DFORMAT)MAKEFOURCC('Y','U','Y','2');
D3DFORMAT fmt = (D3DFORMAT)FCC('YUY2');
D3DFORMAT fmt = D3DFORMAT('2YUY'); // Coerce to D3DFORMAT type.
Constantes FOURCC
En la siguiente tabla se presentan algunos códigos FOURCC habituales.
| Valor FOURCC | Descripción |
|---|---|
| 'AV01' | AOMedia Video 1. |
| AVP | Vídeo de vídeo profesional avanzado (APV). |
| 'H263' | Vídeo H.263. |
| 'H264' | Vídeo H.264. |
| 'I420' | Vídeo YUV guardado en formato plano 4:2:0. |
| 'I422' | Vídeo YUV almacenado en formato planar 4:2:2. |
| 'I444' | Vídeo YUV almacenado en formato planar 4:4:4. |
| 'IYUV' | Vídeo YUV guardado en formato plano 4:2:0. |
| 'M4S2' | Vídeo MPEG-4, parte 2. |
| MP4S | Microsoft MPEG 4 códec versión 3. Este códec ya no está soportado. |
| 'MP4V' | Vídeo MPEG-4, parte 2. |
| 'MPG1' | Vídeo MPEG-1. |
| 'MSS1' | Contenido codificado con el códec Windows Media Video 7 screen. |
| 'MSS2' | Contenido codificado con el códec Windows Media Video 9 screen. |
| 'theo' | Video de Theora. |
| 'UYVY' | Vídeo YUV guardado en formato empaquetado 4:2:2. Similar a YUY2, pero con un ordenamiento diferente de los datos. |
| 'VP10' | Vídeo VP10. |
| 'WMV1' | Contenido codificado con el códec Windows Media Video 7. |
| 'WMV2' | Contenido codificado con el códec Windows Media Video 8. |
| 'WMV3' | Contenido codificado con el códec Windows Media Video 9. |
| WMVA | Contenido codificado con la versión anterior, obsoleta, del códec Windows Media Video 9 Advanced Profile. |
| 'WMVP' | Contenido codificado con el códec Windows Media Video 9.1 Image. |
| 'WVC1' | SMPTE 421M ("VC-1"). Contenido codificado con Windows Media Video 9 Advanced Profile. |
| 'WVP2' | Contenido codificado con el códec Windows Media Video 9.1 Image v2. |
| 'YUY2' | Vídeo YUV guardado en formato empaquetado 4:2:2. |
| 'YV12' | Vídeo YUV guardado en formato plano 4:2:0 o 4:1:1. Idéntico a I420/IYUV, excepto por que los planos U y V se intercambian. |
| 'YVU9' | Vídeo YUV guardado en formato plano 16:1:1. |
| YVYU | Vídeo YUV guardado en formato empaquetado 4:2:2. Similar a YUY2, pero con un ordenamiento diferente de los datos. |
Temas relacionados