UVC YUV2、NV12、M420、I420无压缩视频帧描述符GUID
无压缩数据格式的官方文档为:USB_Video_Payload_Uncompressed_1.5.pdf,其下载地址为:https://www.usb.org/sites/default/files/USB_Video_Class_1_5.zip
UVC无压缩的数据格式支持四种数据格式类型,见下表:
Format | GUID |
---|---|
YUY2 | 32595559-0000-0010-8000-00AA00389B71 |
NV12 | 3231564E-0000-0010-8000-00AA00389B71 |
M420 | 3032344D-0000-0010-8000-00AA00389B71 |
I420 | 30323449-0000-0010-8000-00AA00389B71 |
无压缩的视频格式
无压缩的视频格式描述符定义了特定视频流的特征。 它用于承载 无压缩视频信息的格式,包括所有YUV变体。对应于USB IN或OUT端点的终端及其所属的接口支持一种或多种格式定义。 为了选择特定格式,主机软件将控制请求发送到相应的接口。
bFormatIndex字段包含此格式描述符的从一开始的索引,并且主机发出的请求用于设置和获取当前视频格式。
guidFormat字段唯一标识在与此接口进行相应格式索引通信时应使用的视频数据格式。 对于视频源功能,主机软件将根据此字段中指定的格式部署相应的视频格式解码器(如果需要)。
bAspectRatioX和bAspectRatioY字段分别为视频场(隔行)数据指定图片高宽比的X和Y尺寸。 例如,对于16:9的显示,bAspectRatioX将为16,bAspectRatioY将为9。
无压缩的视频格式描述符后跟一个或多个 无压缩的视频帧描述符; 每个视频帧描述符都传达特定于该格式支持的帧大小的信息。 无压缩的视频格式描述符标识以下内容。
数据格式定义:
typedef struct _UNCOMPRESSED_VIDEO_FORMAT_DESCRIPTOR
{
UINT8 bLength;
UINT8 bDescriptorType;
UINT8 bDescriptorSubtype;
UINT8 bFormatIndex;
UINT8 bNumberFrameDescriptor;
GUID guidFormat:指定了; //UINT[16]
UINT8 bBitsPerPixel;
UINT8 bDefaultFrameIndex;
UINT8 bAspectRatioX;
UINT8 bAspectRatioY;
UINT8 bmInterlaceFlags;
UINT8 bCopyProtect;
}UNCOMPRESSED_VIDEO_FORMAT_DESCRIPTOR;
- bLength:该结构体长度,固定为27字节;
- bDescriptorType:描述符类型,固定为0x24,代表视频流接接口。
- bDescriptorSubtype:子描述符类型,固定为0x05,代表无压缩数据格式
- bFormatIndex:数据格式编号。
- bNumberFrameDescriptor:帧格式数量。
- guidFormat:指定了无压缩数据格式的类型。
- bBitsPerPixel:一个像素的多少位。如NV12为12位,YUV2为16位。
- bDefaultFrameIndex:默认的帧格式。
- bAspectRatioX:X宽度比例
- bAspectRatioY:Y高度比例
- bmInterlaceFlags:标志信息
- bCopyProtect:是否支持视频流分流。
无压缩的帧描述符帧格式定义:
无压缩的视频帧描述符(或简称为帧描述符)用于描述解码视频和静止图像的帧尺寸以及特定流支持的其他特定于帧的特性。 一个或多个帧描述符遵循它们所对应的 无压缩视频格式描述符。 帧描述符还用于确定指定帧大小支持的帧间隔范围。
无压缩视频帧描述符仅适用于适用 无压缩视频格式描述符的视频格式。
bFrameIndex字段包含此帧描述符的从一开始的索引,并且主机请求使用它来设置和获取所使用格式的当前帧索引。 对于设备支持的每个相应格式描述符,此索引均基于一个索引。
支持的帧间隔范围可以是连续范围或一组离散值。 对于连续范围,dwMinFrameInterval,dwMaxFrameInterval和dwFrameIntervalStep指示范围的限制和粒度。 对于离散值,dwFrameInterval(x)字段指示在此帧大小下支持的帧间隔范围(以及帧速率)。 帧间隔是以100ns为单位的单个解码视频帧的平均显示时间。
typedef struct _UNCOMPRESSED_VIDEO_FRAME_DESCRIPTOR
{
UINT8 bLength;
UINT8 bDescriptorType;
UINT8 bDescriptorSubtype;
UINT8 bFrameIndex;
UINT8 bmCapabilities;
UINT16 wWidth;
UINT16 wHeight;
UINT32 dwMinBitRate;
UINT32 dwMaxBitRate;
UINT32 dwMaxVideoFrameBufferSize;
UINT32 dwDefaultFrameInterval;
UINT8 bFrameIntervalType;
UINT32 adwFrameInterval[7];
} UNCOMPRESSED_VIDEO_FRAME_DESCRIPTOR;
Offset | Field | Size | Value | Description |
---|---|---|---|---|
0 | bLength | 1 | Number | 当bFrameIntervalType为0时,此描述符的大小以字节为单位;当bFrameIntervalType> 0时,此描述符的大小以字节为单位:26+(4 * n) |
1 | bDescriptorType | 1 | Constant | CS_INTERFACE描述符类型 |
2 | bDescriptorSubtype | 1 | Constant | VS_FRAME_UNCOMPRESSED描述符子类型 |
3 | bFrameIndex | 1 | Number | 该帧描述符的索引 |
4 | bmCapabilities | 1 | Number | D0: 支持静止图像指定此帧设置是否支持静止图像。 这仅适用于具有使用静止图像捕获方法1的IN视频终结点的VS接口,在所有其他情况下应将其设置为0。 <br> D1: 固定帧速率指定设备是否在与此帧描述符关联的流上提供固定帧速率。如果启用了固定速率,则设置为1;否则,设置为0。 <br> D7..2: 保留,设置为0。 |
5 | wWidth | 2 | Number | 解码后的位图帧的宽度(以像素为单位) |
7 | wHeight | 2 | Number | 解码后的位图帧的高度(以像素为单位) |
9 | dwMinBitRate | 4 | Number | 指定最长帧间隔处的最小比特率,以bps为单位可以传输数据。 |
13 | dwMaxBitRate | 4 | Number | 指定可以传输数据的最短帧间隔的最大比特率,以bps为单位。 |
17 | dwMaxVideoFrameBufferSize | 4 | Number | 不建议使用此字段。指定压缩器将为视频帧或静止图像生成的最大字节数。Video Probe and Commit控件的dwMaxVideoFrameSize字段替换了此描述符字段。 为了与实现本规范较早版本的主机软件兼容,应选择该字段的值。 |
21 | dwDefaultFrameInterval | 4 | Number | 指定设备要指示用作默认值的帧间隔。 这必须是以下字段中所述的有效帧间隔。 |
25 | bFrameIntervalType | 1 | 编号指示如何设置帧间隔: <br> 0: 连续帧间隔 <br> 1..255: 支持的离散帧间隔数(n) | |
26… | 请参阅以下帧间隔表。 |
连续帧间隔
Offset | Field | Size | Value | Description |
---|---|---|---|---|
26 | dwMinFrameInterval | 4 | Number | 支持的最短帧间隔(以最高帧速率),以100 ns为单位。 |
30 | dwMaxFrameInterval | 4 | Number | 支持的最长帧间隔(最低帧速率),以100 ns为单位。 |
34 | dwFrameIntervalStep | 4 | Number | 表示帧间隔范围的粒度,以100 ns为单位。 |
离散帧间隔
Offset | Field | Size | Value | Description |
---|---|---|---|---|
26 | dwFrameInterval(1) | 4 | Number | 支持的最短帧间隔(以最高帧速率),以100 ns为单位。 |
… | … | … | … | … |
26+(4*n)-4 | dwFrameInterval(n) | 4 | Number | 支持的最长帧间隔(最低帧速率),以100 ns为单位。 |
如YUV2数据参数初始为:
------- VS Uncompressed Format Type Descriptor --------
bLength : 0x1B (27 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x04 (Uncompressed Format Type)
bFormatIndex : 0x01 (1)
bNumFrameDescriptors : 0x15 (21)
guidFormat : {32595559-0000-0010-8000-00AA00389B71} (YUY2)
bBitsPerPixel : 0x10 (16 bits)
bDefaultFrameIndex : 0x13 (19)
bAspectRatioX : 0x10
bAspectRatioY : 0x09
*!*ERROR: Both bAspectRatioX and bAspectRatioY must equal 0 if stream is non-interlaced
bmInterlaceFlags : 0x00
D0 IL stream or variable: 0 (no)
D1 Fields per frame : 0 (2 fields)
D2 Field 1 first : 0 (no)
D3 Reserved : 0
D4..5 Field pattern : 0 (Field 1 only)
D6..7 Display Mode : 0 (Bob only)
bCopyProtect : 0x00 (No restrictions)
Data (HexDump) : 1B 24 04 01 15 59 55 59 32 00 00 10 00 80 00 00 .$...YUY2.......
AA 00 38 9B 71 10 13 10 09 00 00 ..8.q......
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x01
bmCapabilities : 0x00
wWidth : 0x0280 (640)
wHeight : 0x0168 (360)
dwMinBitRate : 0x034BBFE4 (55295972 bps -> 6.911 MB/s)
dwMaxBitRate : 0x0D2EFE50 (221183568 bps -> 27.647 MB/s)
dwMaxVideoFrameBufferSize: 0x00070800 (460800 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 01 00 80 02 68 01 E4 BF 4B 03 50 FE 2E 6$.....h...K.P..
0D 00 08 07 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ................
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x02
bmCapabilities : 0x00
wWidth : 0x0280 (640)
wHeight : 0x01E0 (480)
dwMinBitRate : 0x0464FFD8 (73727960 bps -> 9.215 MB/s)
dwMaxBitRate : 0x1193FDC0 (294911424 bps -> 36.863 MB/s)
dwMaxVideoFrameBufferSize: 0x00096000 (614400 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 02 00 80 02 E0 01 D8 FF 64 04 C0 FD 93 6$.........d....
11 00 60 09 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ..`.............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x03
bmCapabilities : 0x00
wWidth : 0x02D0 (720)
wHeight : 0x01E0 (480)
dwMinBitRate : 0x04F19FD8 (82943960 bps -> 10.367 MB/s)
dwMaxBitRate : 0x13C67D80 (331775360 bps -> 41.471 MB/s)
dwMaxVideoFrameBufferSize: 0x000A8C00 (691200 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 03 00 D0 02 E0 01 D8 9F F1 04 80 7D C6 6$............}.
13 00 8C 0A 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ................
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x04
bmCapabilities : 0x00
wWidth : 0x02D0 (720)
wHeight : 0x0240 (576)
dwMinBitRate : 0x05EEBFD0 (99532752 bps -> 12.441 MB/s)
dwMaxBitRate : 0x17BAFCE0 (398130400 bps -> 49.766 MB/s)
dwMaxVideoFrameBufferSize: 0x000CA800 (829440 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 04 00 D0 02 40 02 D0 BF EE 05 E0 FC BA 6$.....@........
17 00 A8 0C 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ................
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x05
bmCapabilities : 0x00
wWidth : 0x0300 (768)
wHeight : 0x0240 (576)
dwMinBitRate : 0x0653FFC8 (106168264 bps -> 13.271 MB/s)
dwMaxBitRate : 0x194FFCC0 (424672448 bps -> 53.84 MB/s)
dwMaxVideoFrameBufferSize: 0x000D8000 (884736 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 05 00 00 03 40 02 C8 FF 53 06 C0 FC 4F 6$.....@...S...O
19 00 80 0D 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ................
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x06
bmCapabilities : 0x00
wWidth : 0x0320 (800)
wHeight : 0x0258 (600)
dwMinBitRate : 0x06DDCFC8 (115199944 bps -> 14.399 MB/s)
dwMaxBitRate : 0x1B773C80 (460799104 bps -> 57.599 MB/s)
dwMaxVideoFrameBufferSize: 0x000EA600 (960000 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 06 00 20 03 58 02 C8 CF DD 06 80 3C 77 6$... .X......<w
1B 00 A6 0E 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ................
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x07
bmCapabilities : 0x00
wWidth : 0x0358 (856)
wHeight : 0x01E0 (480)
dwMinBitRate : 0x05E0AFD0 (98611152 bps -> 12.326 MB/s)
dwMaxBitRate : 0x1782BD00 (394444032 bps -> 49.305 MB/s)
dwMaxVideoFrameBufferSize: 0x000C8A00 (821760 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 07 00 58 03 E0 01 D0 AF E0 05 00 BD 82 6$...X..........
17 00 8A 0C 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ................
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x08
bmCapabilities : 0x00
wWidth : 0x03C0 (960)
wHeight : 0x021C (540)
dwMinBitRate : 0x076A6FC0 (124415936 bps -> 15.551 MB/s)
dwMaxBitRate : 0x1DA9BC20 (497663008 bps -> 62.207 MB/s)
dwMaxVideoFrameBufferSize: 0x000FD200 (1036800 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 08 00 C0 03 1C 02 C0 6F 6A 07 20 BC A9 6$........oj. ..
1D 00 D2 0F 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ................
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x09
bmCapabilities : 0x00
wWidth : 0x0400 (1024)
wHeight : 0x0240 (576)
dwMinBitRate : 0x086FFFC0 (141557696 bps -> 17.694 MB/s)
dwMaxBitRate : 0x21BFFBC0 (566229952 bps -> 70.778 MB/s)
dwMaxVideoFrameBufferSize: 0x00120000 (1179648 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 09 00 00 04 40 02 C0 FF 6F 08 C0 FB BF 6$.....@...o....
21 00 00 12 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B !...............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x0A
bmCapabilities : 0x00
wWidth : 0x0400 (1024)
wHeight : 0x0300 (768)
dwMinBitRate : 0x0B3FFFA0 (188743584 bps -> 23.592 MB/s)
dwMaxBitRate : 0x2CFFFA40 (754973248 bps -> 94.371 MB/s)
dwMaxVideoFrameBufferSize: 0x00180000 (1572864 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 0A 00 00 04 00 03 A0 FF 3F 0B 40 FA FF 6$.........?.@..
2C 00 00 18 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ,...............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x0B
bmCapabilities : 0x00
wWidth : 0x0500 (1280)
wHeight : 0x02D0 (720)
dwMinBitRate : 0x0D2EFF90 (221183888 bps -> 27.647 MB/s)
dwMaxBitRate : 0x34BBF940 (884734272 bps -> 110.591 MB/s)
dwMaxVideoFrameBufferSize: 0x001C2000 (1843200 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 0B 00 00 05 D0 02 90 FF 2E 0D 40 F9 BB 6$...........@..
34 00 20 1C 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B 4. .............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x0C
bmCapabilities : 0x00
wWidth : 0x0500 (1280)
wHeight : 0x0320 (800)
dwMinBitRate : 0x0EA5FF80 (245759872 bps -> 30.719 MB/s)
dwMaxBitRate : 0x3A97F880 (983038080 bps -> 122.879 MB/s)
dwMaxVideoFrameBufferSize: 0x001F4000 (2048000 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 0C 00 00 05 20 03 80 FF A5 0E 80 F8 97 6$..... ........
3A 00 40 1F 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B :.@.............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x0D
bmCapabilities : 0x00
wWidth : 0x0500 (1280)
wHeight : 0x03C0 (960)
dwMinBitRate : 0x1193FF60 (294911840 bps -> 36.863 MB/s)
dwMaxBitRate : 0x464FF700 (1179645696 bps -> 147.455 MB/s)
dwMaxVideoFrameBufferSize: 0x00258000 (2457600 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 0D 00 00 05 C0 03 60 FF 93 11 00 F7 4F 6$.......`.....O
46 00 80 25 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B F..%............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x0E
bmCapabilities : 0x00
wWidth : 0x0500 (1280)
wHeight : 0x0400 (1024)
dwMinBitRate : 0x12BFFF60 (314572640 bps -> 39.321 MB/s)
dwMaxBitRate : 0x4AFFF680 (1258288768 bps -> 157.286 MB/s)
dwMaxVideoFrameBufferSize: 0x00280000 (2621440 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 0E 00 00 05 00 04 60 FF BF 12 80 F6 FF 6$.......`......
4A 00 00 28 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B J..(............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x0F
bmCapabilities : 0x00
wWidth : 0x0558 (1368)
wHeight : 0x0300 (768)
dwMinBitRate : 0x0F077F80 (252149632 bps -> 31.518 MB/s)
dwMaxBitRate : 0x3C1DF840 (1008597056 bps -> 126.74 MB/s)
dwMaxVideoFrameBufferSize: 0x00201000 (2101248 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 0F 00 58 05 00 03 80 7F 07 0F 40 F8 1D 6$...X.......@..
3C 00 10 20 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B <.. ............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x10
bmCapabilities : 0x00
wWidth : 0x05A0 (1440)
wHeight : 0x0384 (900)
dwMinBitRate : 0x128A1760 (311039840 bps -> 38.879 MB/s)
dwMaxBitRate : 0x4A285680 (1244157568 bps -> 155.519 MB/s)
dwMaxVideoFrameBufferSize: 0x00278D00 (2592000 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 10 00 A0 05 84 03 60 17 8A 12 80 56 28 6$.......`....V(
4A 00 8D 27 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B J..'............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x11
bmCapabilities : 0x00
wWidth : 0x0640 (1600)
wHeight : 0x04B0 (1200)
dwMinBitRate : 0x1B773F20 (460799776 bps -> 57.599 MB/s)
dwMaxBitRate : 0x6DDCF200 (1843196416 bps -> 230.399 MB/s)
dwMaxVideoFrameBufferSize: 0x003A9800 (3840000 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 11 00 40 06 B0 04 20 3F 77 1B 00 F2 DC 6$...@... ?w....
6D 00 98 3A 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B m..:............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x12
bmCapabilities : 0x00
wWidth : 0x0690 (1680)
wHeight : 0x041A (1050)
dwMinBitRate : 0x193BF520 (423359776 bps -> 52.919 MB/s)
dwMaxBitRate : 0x64EFCB00 (1693436672 bps -> 211.679 MB/s)
dwMaxVideoFrameBufferSize: 0x0035D540 (3528000 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 12 00 90 06 1A 04 20 F5 3B 19 00 CB EF 6$....... .;....
64 40 D5 35 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B d@.5............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
---> This is the Default (optimum) Frame index
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x13
bmCapabilities : 0x00
wWidth : 0x0780 (1920)
wHeight : 0x0438 (1080)
dwMinBitRate : 0x1DA9BF00 (497663744 bps -> 62.207 MB/s)
dwMaxBitRate : 0x76A6F080 (1990652032 bps -> 248.831 MB/s)
dwMaxVideoFrameBufferSize: 0x003F4800 (4147200 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 13 00 80 07 38 04 00 BF A9 1D 80 F0 A6 6$.....8........
76 00 48 3F 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B v.H?............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x14
bmCapabilities : 0x00
wWidth : 0x0780 (1920)
wHeight : 0x04B0 (1200)
dwMinBitRate : 0x20F57F00 (552959744 bps -> 69.119 MB/s)
dwMaxBitRate : 0x83D5EF00 (2211835648 bps -> 276.479 MB/s)
dwMaxVideoFrameBufferSize: 0x00465000 (4608000 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 14 00 80 07 B0 04 00 7F F5 20 00 EF D5 6$.......... ...
83 00 50 46 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ..PF............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..
-------- VS Uncompressed Frame Type Descriptor --------
bLength : 0x36 (54 bytes)
bDescriptorType : 0x24 (Video Streaming Interface)
bDescriptorSubtype : 0x05 (Uncompressed Frame Type)
bFrameIndex : 0x15
bmCapabilities : 0x00
wWidth : 0x0800 (2048)
wHeight : 0x0438 (1080)
dwMinBitRate : 0x1FA3FF00 (530841344 bps -> 66.355 MB/s)
dwMaxBitRate : 0x7E8FEF80 (2123362176 bps -> 265.420 MB/s)
dwMaxVideoFrameBufferSize: 0x00438000 (4423680 bytes)
dwDefaultFrameInterval : 0x00028B0B (16.6667 ms -> 59.990 fps)
bFrameIntervalType : 0x07 (7 discrete frame intervals supported)
adwFrameInterval[1] : 0x00028B0B (16.6667 ms -> 59.990 fps)
adwFrameInterval[2] : 0x00028BB2 (16.6834 ms -> 59.930 fps)
adwFrameInterval[3] : 0x00030D40 (20.0000 ms -> 50.000 fps)
adwFrameInterval[4] : 0x00051615 (33.3333 ms -> 30.000 fps)
adwFrameInterval[5] : 0x00051763 (33.3667 ms -> 29.970 fps)
adwFrameInterval[6] : 0x00061A80 (40.0000 ms -> 25.000 fps)
adwFrameInterval[7] : 0x000A2C2B (66.6667 ms -> 14.990 fps)
Data (HexDump) : 36 24 05 15 00 00 08 38 04 00 FF A3 1F 80 EF 8F 6$.....8........
7E 00 80 43 00 0B 8B 02 00 07 0B 8B 02 00 B2 8B ~..C............
02 00 40 0D 03 00 15 16 05 00 63 17 05 00 80 1A ..@.......c.....
06 00 2B 2C 0A 00 ..+,..