Customizing applications to control USB 2.0 cameras

Last Revision Date: 4/29/2015

This article discusses how we have designed our USB 2.0 cameras to implement the IIDC 1394-based Digital Camera Specification over a USB connection, and the implications of this design on application development for customers.

To date, the USB 2.0 cameras in our product line include the Chameleon™ and the Firefly® MV. We have designed our USB 2.0 cameras to implement the IIDC 1394-based Digital Camera Specification over a USB 2.0 connection. Essentially, IIDC register reads and writes have been mapped to a USB 2.0 control endpoint. As a result, these cameras behave like other FireWire cameras, with the exception that isochronous streaming is done using USB 2.0 bulk transfers at a maximum data rate of 480 Mb/s.

All of the libraries in the FlyCapture SDK can be used in conjunction with our USB 2.0 cameras in the same manner as with FireWire cameras. As well, our system-level drivers for interfacing with DirectShow or ActiveX applications work the same for both USB and FireWire cameras. To take advantage of our implementation of IIDC over USB with other APIs, you may need to customize your applications. For example, members of the libdc1394 community have worked with us to make all of their functions support our USB 2.0 cameras. For more information, see the libdc1394 implementation of IIDC over USB at http://sourceforge.net/projects/libdc1394/.

Related Articles