RFC: IIDC YUV Type Constants

Steve Sisak steve.sisak at ioxperts.com
Tue Aug 31 14:18:38 GMT 2004


The first set are the YUV formats for FireWire (IIDC, DCam) cameras:

The IIDC spec defines 3 YUV pixel formats -- following are the 4 
character codes we are currently using:

enum
{
     // All IIDC YUV formats use "wide range" mapping with "offset 
128' Cr and Cb
     // y=[0..255] u,v=[0..255] in the following formats:

     kIIDCYUV444Format = 'UYV4',   // uyvu yvuy vuyv (4 pixels)
     kIIDCYUV422Format = 'UYV2',   // uyvy uyvy uyvy (6 pixels)
     kIIDCYUV411Format = 'UYV1',   // uyyv yyuy yvyy (8 pixels)

};


Note that kIIDCYUV422Format has the same byte order as Apple's '2vuy' 
format, but not the same data range.

We currently map all of these to 'yuv2' (Component Video) as that can 
be done losslessly, but will probably also provide '2vuy' support as 
Mac OS X appears to have serious speed issues with 'yuv2', despite 
the fact that it is supported in hardware for most video cards.

The corresponding ImageDescriptionshould obey all of the rules laid 
out in for YUV formats here:

   <http://developer.apple.com/quicktime/icefloe/dispatch019.html>
   <http://developer.apple.com/qa/qa2001/qa1183.html>

Depth should be 24, preferred color space 'yuv2'

We will provide transcoder codecs to convert to 'yuv2' and '2vuy'.

Cheers,

-Steve


More information about the Video-Developers mailing list