libwebcam Webcam Library and tools ================================== Introduction ------------ The libwebcam package contains the following two components: - libwebcam - Webcam Library - uvcdynctrl - Manage dynamic controls in uvcvideo This README file contains information that is common to all of the above components. For component specific information please refer to the README files in Libs/libwebcam and Apps/uvcdynctrl. Versions -------- Note that the latest versions of the Webcam Library, its API documentation, and uvcdynctrl can always be found at the following address: QuickCam Team http://www.quickcamteam.net/ Building -------- External dependencies: - uvcvideo (Linux UVC driver) - libxml2 - gengetopt (optional) Important note on the uvcvideo dependency: Unless the USE_UVCVIDEO constant is disabled (it is enabled by default), libwebcam needs one or two header files from the Linux UVC driver (uvcvideo). Starting with kernel 2.6.26 the uvcvideo driver is part of the kernel. You can find it in the directory drivers/media/video/uvc. If your kernel is older than that you may download a historic stand-alone version from the uvcvideo project's home page at http://linux-uvc.berlios.de/ or directly from the Subversion repository at: http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk/ Either way, you must copy or link uvcvideo.h into the /Common/include/ directory, e.g. using the commands below. If you are compiling against the stand-alone version you need to do the same thing with uvc_compat.h. cd Common/include/ ln -s /usr/src/linux-2.6.26/drivers/media/video/uvc/uvcvideo.h or, for the stand-alone version: cd Common/include/ wget http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk/uvcvideo.h wget http://svn.berlios.de/svnroot/repos/linux-uvc/linux-uvc/trunk/uvc_compat.h Once you have those files in place you can continue as normal. The uvcdynctrl directory ships with the two files cmdline.[ch]. As long as those are present, gnugetopt is not required. If they are missing, the build system will try to create them with the help of gnugetopt. The build system is based on CMake. Because of the way CMake works, Makefiles do not ship with libwebcam, so you have to have CMake installed. Don't worry, though, you are likely to have much fewer illegible error messages than with the previous GNU Automake. Once you have CMake installed you can build and install it by running the following commands in the libwebcam source directory: mkdir build cd build cmake .. make make install (as root) You need at least CMake 2.4.4 in order for the Libxml2 detection to work. CMake defaults to installing binaries and libraries to /usr/local. To use a different install prefix, you can replace the above 'cmake' command with the following: cmake .. -DCMAKE_INSTALL_PREFIX=/usr If you prefer to leave the prefix alone, you should make sure that /usr/local/bin is in your path and LD_LIBRARY_PATH contains the /usr/local/lib directory. 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 http://forums.quickcamteam.net/forumdisplay.php