USB and Video

I have a client just embarking on a design for a USB-based camera. The
camera is used for thermal imaging, and essentially generates a 15fps
stream of 16 bit per pixel monochrome images. I had originally advised
them to design it to USB Video Class, but now I’m wondering if that
advice was misplaced.

The only uncompressed format supported in the UVC specification is
YUY2. (What were these guys smoking? No RGB at all? But I digress.)
That means that our format will have to be sent as a frame-based payload
with vendor-defined format. Does USBVIDEO.SYS even support the
vendor-defined formats? We can certainly supply a simple transform
filter to accept our invented monochrome format and produce an RGB
colorized format.

I’m beginning to wonder if it wouldn’t be better to create a
USBCAMD-based driver based on USBINTEL. That technology is certainly
well-proven and downward-compatible, completely unlike USBVIDEO.SYS, and
allows us the flexibility to control the output format. Plus, we would
be able to tweak the driver as strangenesses arise.

Has anyone had a glowing experience with USBVIDEO.SYS that they’d like
to share, in order to reassure me?


Tim Roberts, xxxxx@probo.com
Providenza & Boekelheide, Inc.