Suporte a fluxo infravermelho no UVC
No Windows 10, versão 1607 e posterior, o driver UVC (Classe de Vídeo USB) da caixa de entrada dá suporte a câmeras que produzem fluxos de IR (infravermelho).
Essas câmeras capturam o valor de luma da cena e transmitem os quadros por USB como um formato descompactado ou como um formato MJPEG compactado. Essas câmeras e seus fluxos são expostos a aplicativos por meio do pipeline de captura de mídia.
Os GUIDs do tipo de formato IR a seguir são usados para especificar o descritor de formato de vídeo do fluxo para que os fluxos de IR sejam expostos corretamente aos aplicativos.
Esses GUIDs de tipo de formato IR são definidos em ksmedia.h:
GUID do tipo de formato IR | Descrição |
---|---|
KSDATAFORMAT_SUBTYPE_L8_IR | Quadros somente luma de 8 bits |
KSDATAFORMAT_SUBTYPE_L16_IR | Quadros somente luma de 16 bits |
KSDATAFORMAT_SUBTYPE_MJPEG_IR | Quadros somente luma compactados do MJPEG |
Quando esses GUIDs de tipo de formato IR são especificados, o pipeline de captura marca automaticamente esses fluxos como fluxos de IR, o que ajuda os aplicativos a selecionar o fluxo correto para seus cenários.
// 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;