Document Actions

libwebcam

by Martin Rubli last modified 2008-05-20 23:56

The Webcam Library libwebcam is designed to simplify the development of webcam applications, primarily on Linux but with an option to be ported to other platforms, in particular Solaris. It realizes part of what the unwritten Video4Linux user space library was always supposed to be: an easy to use library that shields its users from many of the difficulties and problems of using the V4L2 API directly.

Today libwebcam provides the following core features:

  • Enumeration of all cameras available in the system.
  • Provide detailed information about the detected devices and their controls.
  • Wrapper for the V4L2 frame format enumeration.
  • Convenient access to device controls.
  • Support for configuring the Linux UVC driver's dynamic controls (extension unit controls).

In addition, the interface is prepared to handle device events ranging from newly detected cameras over control value changes to device button events. It is easy to add new features without breaking application compatibility and the addition of new controls or events is straightforward.

License

libwebcam is released under the GNU Lesser General Public License (LGPL).

uvcdynctrl is released under the GNU General Public License (GPL).

Download

libwebcam and uvcdynctrl

The current version of libwebcam is 0.1.1, the current version of uvcdynctrl is 0.2. Both of them are contained in the same package.

Please note that this is a beta release. In particular the documentation of the XML format is still somewhat incomplete, but the README files contain some useful information.

Important note: libwebcam 0.1.1 is not fully compatible with revisions of the UVC driver later than 178. Until libwebcam 0.1.2 is available, users are advised to use uvcvideo r178.

At the moment there are only source code archives available but we are working on binary packages for this release.

Source repository

The latest source code ("pre-0.1.2") can always be found in the Subversion repository. You can check it out directly using the SVN client and the following URL:

http://svn.quickcamteam.net/svn/qct/Linux/

Dynamic controls configuration file

Version 0.15 of the dynamic controls configuration file for Logitech cameras comes as part of the libwebcam 0.1.1 package. However, it can also be downloaded separately here: logitech.xml.

Compared to the previous version, 0.15 brings a new LED-related control and controls required to use Bayer mode. Details can be found in the change log.

Documentation

libwebcam comes with extensive API documentation, which is generated with the help of Doxygen.

We also have a list of past changes and planned features.

Questions and feedback

There is a forum for developers and users of the Webcam Library. Please feel free to post your questions and comments:

QuickCam Team discussion forums
Powered by Plone CMS.