Can I use Logitech webcams for my own application?
Up to Table of Contents
Of course you can, thanks for asking! :-)
And the best part about it is that you don't need any special header files or SDK from Logitech. All our webcams (UVC compliant or not) come with a driver that implements the standard DirectShow interface for capture devices. Therefore, after you plug in your camera, you can enumerate the DirectShow capture devices and it should show up with the corresponding name.
Getting started
If you need help getting started with DirectShow programming, you should definitely have a look at the official documentation (link at the end) and especially the samples in the Samples\Multimedia\DirectShow subdirectory of the Windows SDK installation path.
You can also check out the GraphEdit (in the bin subdirectory) tool as well as AMCap. They can give you some useful insight into how DirectShow works and what you can do with your camera.
GraphEdit
With GraphEdit you can create DirectShow graphs and control them. For example you can render the live video from your webcam using the following steps:- Click Graph|Insert filters... in the menu.
- Pick your webcam from the Video Capture Sources category and click the Insert filter button.
- Right-click the Capture pin of the newly created node and choose Render pin. A Video Renderer node should appear.
- Click the Play button in the tool bar to start the streaming process.
AMCap
You either need to compile AMCap yourself-it's one of the DirectShow samples that come with the Windows SDK-or download it from the web. There are many different versions available all of which are based on the original Microsoft sample code. It also comes with certain TV cards.
With AMCap you can also display the live stream of your webcam. Just select the right device in the Devices menu and check the Preview item in the Options menu. With the other items in the Options menu you can choose different video resolutions, formats, and framerates; and you can change several other properties that influence image quality and control certain camera functions.
Features
By using DirectShow you gain access to many, but not all, features of Logitech webcams. The following non-exhaustive list gives some examples of what you can and cannot do today. Of course, it will be updated if we add new functions to the API. Please also keep in mind that some functionality depends on the device capabilities and may not be available for all cameras.
Supported
- Video capture (preview and recording)
- Still image capture
- Standard DirectShow property sets (most properties of CameraControl, VideoProcAmp)
- Mechanical pan/tilt (if supported by the device)
- Digital pan/tilt/zoom
- LED control
- Focus control (experimental through the CameraControl property set)
Not supported
- Enabling/disabling face tracking
- Access to face tracking data (face position, etc.)
- Enabling/disabling auto-focus