Поделиться через


Поддержка инфракрасного потока в UVC

В Windows 10 версии 1607 и более поздних версиях драйвер UVC поддерживает камеры, создающие инфракрасные (IR) потоки.

Эти камеры захватывают значение luma сцены и передают кадры по USB в виде несжатого формата или сжатого формата MJPEG. Эти камеры и их потоки предоставляются приложениям через конвейер захвата мультимедиа.

Следующие идентификаторы GUID формата IR используются для указания дескриптора формата видеопотока, чтобы потоки IR правильно предоставлялись приложениям.

Эти идентификаторы GUID формата IR определяются в ksmedia.h:

GUID типа формата IR Описание
KSDATAFORMAT_SUBTYPE_L8_IR 8-разрядные кадры luma
KSDATAFORMAT_SUBTYPE_L16_IR 16-разрядные кадры luma
KSDATAFORMAT_SUBTYPE_MJPEG_IR Сжатые кадры luma в MJPEG

Если указаны идентификаторы GUID формата IR, конвейер отслеживания автоматически помечает эти потоки как потоки 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;