UVC 中的基礎結構數據流支援
在 Windows 10 1607 版和更新版本中,收件匣 USB 視訊類別 (UVC) 驅動程式支援產生基礎結構 (IR) 數據流的相機。
這些相機會擷取場景的 luma 值,並以未壓縮的格式或壓縮的 MJPEG 格式透過 USB 傳輸畫面。 這些相機及其串流會透過媒體擷取管線向應用程式公開。
下列 IR 格式類型 GUID 可用來指定資料流的視訊格式描述元,以便正確向應用程式公開 IR 資料流。
這些 IR 格式類型 GUID 定義於 ksmedia.h:
IR 格式類型 GUID | Description |
---|---|
KSDATAFORMAT_SUBTYPE_L8_IR | 僅限8位luma的畫面 |
KSDATAFORMAT_SUBTYPE_L16_IR | 僅限 luma 的 16 位畫面 |
KSDATAFORMAT_SUBTYPE_MJPEG_IR | MJPEG 壓縮的僅限 luma 框架 |
指定這些 IR 格式類型 GUID 時,擷取管線會自動將這些數據流標示為 IR 數據流,以協助應用程式為其案例選取正確的數據流。
// Example: Format descriptor for UVC 1.1 frame based uncompressed format
typedef struct _VIDEO_FORMAT_FRAME
{
UCHAR bLength;
UCHAR bDescriptorType;
UCHAR bDescriptorSubtype;
UCHAR bFormatIndex;
UCHAR bNumFrameDescriptors;
GUID guidFormat; // guidFormat must contain one of the IIR format type GUIDs from the table above
UCHAR bBitsPerPixel;
UCHAR bDefaultFrameIndex;
UCHAR bAspectRatioX;
UCHAR bAspectRatioY;
UCHAR bmInterlaceFlags;
UCHAR bCopyProtect;
UCHAR bVariableSize;
} VIDEO_FORMAT_FRAME, *PVIDEO_FORMAT_FRAME;