UVC摄像头VS_PROBE_CONTROL和VS_COMMIT_CONTROL对应的数据结构定义
2021-08-30
1234
0
UVC 视频流接口控制请求 http://www.usbzh.com/article/detail-45.html 需要使用一些数据字段进行通讯,如UVC1.0是26个字节的长度,UVC1.1是34字节的长度,UVC1.5是48字节的长度。
这里我们定义一个通用长48字节结构体,对应VS_PROBE_CONTROL和VS_COMMIT_CONTROL进行数据通讯的结构体。
注意:这个结构体需要1字节对齐
// VideoStreaming Requests
typedef struct _VideoControl
{
#pragma pack(1)
UINT16 bmHint;
UINT8 bFormatIndex;
UINT8 bFrameIndex;
UINT32 dwFrameInterval;
UINT16 wKeyFrameRate;
UINT16 wPFrameRate;
UINT16 wCompQuality;
UINT16 wCompWindowSize;
UINT16 wDelay;
UINT32 dwMaxVideoFrameSize;
UINT32 dwMaxPayloadTransferSize; //UVC1.0 分隔符
UINT32 dwClockFrequency;
UINT8 bmFramingInfo;
UINT8 bPreferedVersion;
UINT8 bMinVersion;
UINT8 bMaxVersion; UVC1.1 分隔符
UINT8 bUsage;
UINT8 bBitDepthLuma;
UINT8 bmSettings;
UINT8 bMaxNumberOfRefFramesPlus1;
UINT16 bmRateControlModes;
UINT16 bmLayoutPerStream[4]; //UVC1.5 分隔符
#pragma pack()
} VideoControl;
HID人机交互QQ群:564808376
UAC音频QQ群:218581009
UVC相机QQ群:331552032
BOT&UASP大容量存储QQ群:258159197
STC-USB单片机QQ群:315457461
USB技术交流QQ群2:580684376
USB技术交流QQ群:952873936