[IOXperts Video-Developers] Pixel format support

Daniel Heckenberg danielh at cse.unsw.edu.au
Mon Feb 9 17:07:34 GMT 2004


Hi Steve,

Thanks for this.  I was a little baffled by the apparent behaviour.

I've also been experimenting with other "unreported pixel formats:  a  
while ago on the quicktime-api list you mentioned the possibility of  
getting the raw 4:1:1 data sent on the wire out of the vdig.  Is this  
possible with the current drivers?  I've had somewhat strange behaviour  
when attempting to use the FourCCs that you provided then:
e.g.

kIIDCYUV411Format  'UYV1'

   VDGetImageDescription (called after VDSetCompression) returns -8961  
(noCodecErr) but the returned image description seems correct, with the  
cType set to 'UYV1' as requested and the depth set to 12.  Attempting  
to capture asynchronously yields no return code errors but the  
VDCompressDone always returns 0 queued buffers.

Thanks,
Daniel

On 07/02/2004, at 1:20 AM, Steve Sisak wrote:

> At 3:44 PM +1100 2/5/04, Daniel Heckenberg wrote:
>> I've been working on direct vdig capture with the IOXperts IIDC  
>> driver (and the Apple driver).  I'm using the latest 1.1b30 driver.
>>
>> I can't make the IOXperts driver return frames in '2yuv' format.  
>> Using the following call:
>>  err = VDSetCompression(	vdigCompInst,
>>                             '2vuy ',//'yuv2' and 'raw ' work as  
>> expected
>>                             0,
>>                             &bounds,
>>                             0,
>>                             0,
>>                             0);
>> returns noErr however the frames are returned in the default 'yuv2'  
>> format.  If I try the same call (and surrounding call sequence with  
>> 'raw ' I have no problems.  I've tried a number of sensible settings  
>> for the bounds including a null pointer.
>>
>> The list of supported compression types reported by  
>> VDGetCompressionTypes is:
>> 'yuvs' , 'yuv2' , '2vuy' , 'raw ' , ' yuvu'
>
> Hi Daniel,
>
> You're doing it correctly -- I'll have to take a look at the code, but  
> I've added and removed 2vuy support a few times.
>
> FYI-2vuy is a lossy conversion from the IIDC native YUV formats as it  
> involves compressing the range of all of the components (the native  
> formats use full-range for Y,U,V), for instance, the camera produces  
> y=[0..255] u,v=[0..255] which must be mapped to y=[16..240]  
> u,v=[16..236]
>
> yuv2 is a lossless conversion as all we do is scramble the bytes and  
> flip the high bit if u,v to convert from the IIDC yuv 4:2:2 formats  
> (for the 4:1:1 and 4:4:4 formats, we replicate and drop the odd u,v  
> respectively) -- you may ba able to use this  if you're doing further  
> conversion
>
> For the time being, if you like, I can send you a fast routine for  
> converting yuv2 to 2vuy in place.
>
> HTH,
>
> -Steve
>
> P.S. I got rid of the list prefix in the subject -- I'm assuming most  
> people filter on the headers and it was way too long
>
> P.P.S. For anyone who's not on the beta-announce list, please test  
> 1.1b30
> --  
> _______________________________________________________________________ 
> __
> Steve Sisak, CTO                                  
> steve.sisak at ioxperts.com
> IOXperts, Inc.                                     voice: +1 617  
> 876-2572
> 87 Bristol St #3A                                    fax: +1 617  
> 876-2337
> Cambridge, MA 02139                               mobile: +1 617  
> 388-6476
>



More information about the Video-Developers mailing list