DirectDraw utilizes a special set of codes that are four characters in length. These codes, called four character codes or FOURCCs, are stored in file headers of files containing multimedia data such as bitmap images, sound, or video. FOURCCs describe the software technology that was used to produce multimedia data. By implication, they also describe the format of the data itself.
DirectDraw applications use FOURCCs for image color and format conversion. If an application calls the IDirectDrawSurface3::GetPixelFormat method to request the pixel format of a surface whose format is not RGB, the dwFourCC member of the DDPIXELFORMAT structure identifies the FOURCC when the method returns. For more information, see Converting Color and Format.
In addition, the biCompression member of the BITMAPINFOHEADER structure can be set to a FOURCC to indicate the codec used to compress or decompress an image.
FOURCCs are registered with Microsoft by the vendors of the respective multimedia software technologies. Some common FOURCCs appear in the following list.
FOURCC | Company | Technology Name |
---|---|---|
AUR2 | AuraVision Corporation | AuraVision Aura 2: YUV 422 |
AURA | AuraVision Corporation | AuraVision Aura 1: YUV 411 |
CHAM | Winnov, Inc. | MM_WINNOV_CAVIARA_CHAMPAGNE |
CVID | Supermac | Cinepak by Supermac |
CYUV | Creative Labs, Inc | Creative Labs YUV |
FVF1 | Iterated Systems, Inc. | Fractal Video Frame |
IF09 | Intel Corporation | Intel Intermediate YUV9 |
IV31 | Intel Corporation | Indeo 3.1 |
JPEG | Microsoft Corporation | Still Image JPEG DIB |
MJPG | Microsoft Corporation | Motion JPEG Dib Format |
MRLE | Microsoft Corporation | Run Length Encoding |
MSVC | Microsoft Corporation | Video 1 |
PHMO | IBM Corporation | Photomotion |
RT21 | Intel Corporation | Indeo 2.1 |
ULTI | IBM Corporation | Ultimotion |
V422 | Vitec Multimedia | 24 bit YUV 4:2:2 |
V655 | Vitec Multimedia | 16 bit YUV 4:2:2 |
VDCT | Vitec Multimedia | Video Maker Pro DIB |
VIDS | Vitec Multimedia | YUV 4:2:2 CCIR 601 for V422 |
YU92 | Intel Corporation | YUV |
YUV8 | Winnov, Inc. | MM_WINNOV_CAVIAR_YUV8 |
YUV9 | Intel Corporation | YUV9 |
YUYV | Canopus, Co., Ltd. | BI_YUYV, Canopus |
ZPEG | Metheus | Video Zipper |