USB compliance Test fails with error in GUIDformat for Y16 / Y8

Tip / Sign in to post questions, reply, level up, and achieve exciting badges. Know more

cross mob
kir_4703346
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

USB3CV test fails with following error, When uncompressed format Y16 or Y8 used. 

INFO Uncompressed Video Format Descriptor guidFormat is not a recognized YUV variant ({20203859-0000-0010-8000-00AA00389B71}).
FAIL (UVC: 6.10.2) Uncompressed Video Format Descriptor guidFormat is not a recognized YUV variant.
INFO CV does not recognize this GUID as a variant of YUV
 
GUID format used for Y16 
20363159-0000-0010-8000-00AA00389B71
GUID format used for Y8
20203859-0000-0010-8000-00AA00389B71
/* Class specific Uncompressed VS format descriptor */
0x1B, /* Descriptor size */
ES_UVC_CS_INTRFC_DESCR, /* Class-specific VS interface Type */
0x04, /* Subtype : VS_FORMAT_UNCOMPRESSED */
0x01, /* Format desciptor index */
0x04, /* Number of Frame Descriptors that follow this descriptor: 1 */
/* GUID, globally unique identifier used to identify streaming-encoding format: Y8 */
0x59,0x38,0x20,0x20,//Y8
0x00,0x00,0x10,0x00,
0x80,0x00,0x00,0xAA,
0x00,0x38,0x9B,0x71,
0x08, /* Number of bits per pixel */
0x02, /* Optimum Frame Index for this stream: 1 (1596x1300) */
0x00, /* X dimension of the picture aspect ratio; Non-interlaced */
0x00, /* Y dimension of the pictuer aspect ratio: Non-interlaced */
0x00, /* Interlace Flags: Progressive scanning, no interlace */
0x00, /* duplication of the video stream restriction: 0 - no restriction */
 
 
Class specific Uncompressed VS frame descriptor 1
Class specific Uncompressed VS frame descriptor 2
Class specific Uncompressed VS frame descriptor 3
Class specific Uncompressed VS frame descriptor 4
 Still image descriptor 
 

/* Class specific Uncompressed VS format descriptor */
0x1B, /* Descriptor size */
ES_UVC_CS_INTRFC_DESCR, /* Class-specific VS interface Type */
0x04, /* Subtype : VS_FORMAT_UNCOMPRESSED */
0x03, /* Format desciptor index */
0x04, /* Number of Frame Descriptors that follow this descriptor: 1 */
/* GUID, globally unique identifier used to identify streaming-encoding format: Y16 */
0x59,0x31,0x36,0x20, // Y16
0x00,0x00,0x10,0x00,
0x80,0x00,0x00,0xAA,
0x00,0x38,0x9B,0x71,
0x10, /* Number of bits per pixel */
0x02, /* Optimum Frame Index for this stream: 1 (1596x1300) */
0x00, /* X dimension of the picture aspect ratio; Non-interlaced */
0x00, /* Y dimension of the pictuer aspect ratio: Non-interlaced */
0x00, /* Interlace Flags: Progressive scanning, no interlace */
0x00, /* duplication of the video stream restriction: 0 - no restriction */

Class specific Uncompressed VS frame descriptor 1
Class specific Uncompressed VS frame descriptor 2
Class specific Uncompressed VS frame descriptor 3
Class specific Uncompressed VS frame descriptor 4
Still image descriptor
0 Likes
1 Solution
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

Y16 and Y8 are not standard YUV formats and hence CV test fails for these formats. Below link provides standard YUV variants.

https://docs.microsoft.com/cs-cz/windows/win32/medfound/video-subtype-guids#luminance-and-depth-form...

You can also see the same problem discussed in msdn forum as well:

https://social.msdn.microsoft.com/Forums/WINDOWS/en-US/c0531030-67a5-4b0d-a8e0-5c06ca0994af/uvc-y16-...

Windows in box UVC driver does not support Y16 format where as Linux does.

Regards

Hemanth

View solution in original post

5 Replies
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

Can you please try YUY2 GUID just for compliance test. It is given below:

0x59,0x55,0x59,0x32, /* GUID used to identify streaming-encoding format: YUY2 */
0x00,0x00,0x10,0x00,
0x80,0x00,0x00,0xAA,
0x00,0x38,0x9B,0x71,

Regards

Hemanth
0 Likes
kir_4703346
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Yes, with YUY2 format compliance test passed.. But my question is.. i want to use two format, one  Y8 and another format Y16. However if i can replace YUY2 for Y16 since both are 16bit formats. How can i use Y8 here

0 Likes
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

The reason why I asked to try first with YUY2 is just to make sure rest of the descriptors are fine and that only problem with formats.

Is it possible for you to attach firmware project?

Regards

Hemanth
0 Likes
lock attach
Attachments are accessible only for community members.
kir_4703346
Level 1
Level 1
10 sign-ins 5 replies posted 5 sign-ins

Hi,

I have attached the SS configuration with YUY2 and Y8 formats for your reference

0 Likes
Hemanth
Moderator
Moderator
Moderator
First like given First question asked 750 replies posted

Hi,

Y16 and Y8 are not standard YUV formats and hence CV test fails for these formats. Below link provides standard YUV variants.

https://docs.microsoft.com/cs-cz/windows/win32/medfound/video-subtype-guids#luminance-and-depth-form...

You can also see the same problem discussed in msdn forum as well:

https://social.msdn.microsoft.com/Forums/WINDOWS/en-US/c0531030-67a5-4b0d-a8e0-5c06ca0994af/uvc-y16-...

Windows in box UVC driver does not support Y16 format where as Linux does.

Regards

Hemanth