|
||
Philips - Logitech USB camera setup for RedHat 8.0 Linux |
||
[chongo's home] [Astronomy] [Mathematics] [Prime Numbers] [Programming] [Technology] [contacting Landon] |
NOTE: The maintainers of the kernel pwc and pwcx modules choose to protest a Linux kernel decision related to the pwcx module by removing their support and their support web site (www.smcc.demon.nl/webcam) from the net. Luc Saillard restored the pwc module without the disputed pwcx module soon afterwards. See the new mainter's support site for more details.
NOTE: LavaRand users: LavaRand does not need pwcx module, so this change will not impact your use of Philips USB Webcams that are already supported.
If you are using a
RedHat 8.0
or
with an equivalent Linux 2.4.18-14 kernel,
or a later 2.4 kernel then
you should follow:
These instructions
Q: What if I am running a non-RedHat Linux distribution?
A: It is also likely that a non-RH distributions will also work as long as their software as critical updates applied and below fixed critical software packages are as up to date.
Q: How do I know if my system is up to date enough to use these instructions?
A: To use these instructions, you system needs have:
Run the command:
rpm -q kernel hotplug hwdata usbutilsto determine if your system is running at those levels.
FYI: If that rpm command says:
package something is not installedthen you need to install that package from your vendor's distribution.
See the Prerequisites for additional information on system requirements.
NOTE: RedHat 8.0 was released with kernel version 2.4.18-14. We did successfully run with both kernel version 2.4.18-14 and kernel version 2.4.18-18.7.x. We recommend version 2.4.18-19.8.0 (or later) because of useful bug fixes to components not related to the camera.
NOTE: RedHat 8.0 was released with hwdata version 0.47-1, they shortly thereafter released hwdata version 0.48-1. Our camera worked with both versions. There are more up to date versions of hwdada available such as hwdata version 0.64.1 which contain updates and configurations for other hardware as well.
(top)
The PWC 8.6 module works with a number of other cameras:
The PWC project page for information on supported cameras.
Some cameras such as the Logitech QuickCam 4000 Pro require a PWC version later than PWC 8.6 and a kernel version later than kernel version 2.4.18. If your camera requires this, you will need to install a newer kernel and/or PWC module. Installing a newer kernel and/or PWC module is beyond the scope of this document.
Nearly all of the code was written by somebody else. Landon helped debug and submitted a few (important) bug fixes and created the pwc hotplug support script.
We do not support this code. We do not maintain this code ... the maintainers do.
And as a standard disclaimer regarding this document:
Copyright © 2003 by Landon Curt Noll. All Rights Reserved. Permission to use, copy, modify, and distribute this software and its documentation for any purpose and without fee is hereby granted, provided that the above copyright, this permission notice and text this comment, and the disclaimer below appear in all of the following: supporting documentation source copies source works derived from this source binaries derived from this source or from derived source LANDON CURT NOLL DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL LANDON CURT NOLL BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. chongo (Landon Curt Noll, www.isthe.com/chongo/index.html) /\oo/ Share and enjoy! :-)
While these instructions worked for us, they may not work for you. You assume the risk if you follow in our footsteps.
(top)
We started with RedHat's 8.0 distribution with the security alerts, bug fixes, and enhancements applied as of 24 Dec 2002. Your system should be running at least Linux kernel version 2.4.18-19.8.0 or later. Although Linux kernels as early as version 2.4.18-14 have been known to work as well. Look at the RedHat 8.0 kernel area for a recent RedHat 8.0 kernel.Q: How do you know your kernel version?
A: Try:uname -rIt should say something such as:
2.4.18-19.8.0 or 2.4.18-19.8.0customor better.
FYI: The kernel version 2.4.18-14, as shipped in the RedHat 8.0 distribution may also work. The bug fixes made for kernel version 2.4.18-14 will not directly likely impact the use of your camera. Even so, you may want to upgrade anyway to gain the benefit of other bug fixes.
When we say RedHat 8.0 we mean either the RedHat Linux 8.0 Professional edition or the Linux 8.0 Personal edition. For purposes of this camera software, these editions are equivalent.
We suspect that later RedHat (RH) distributions should also work provided that the critical RPMs (listed below) are up to date. Hopefully future versions (RH distributions, kernels and RPMs) will work just fine. Most likely it will work as long as the RPMs supplied as at or above the versions of the critical RPMs listed below.
It is also likely that a non-RH distributions will also work as long as their software as critical updates applied and below fixed critical software packages are as up to date.
FYI: We are running this on an AMD Athlon processor, so we am going to select i*86 and Athlon architecture specific options. If you are using a different processor (PPC or Alpha or ...) then you should install the architecture appropriate RPM as needed.
You do not need recompile the kernel or use kernel source. In particular, 2.4.18 kernels include the PWC 8.6 module, or later
Note that these instructions were tested under 2.4 kernels. Hopefully 2.6 and later kernels will work just as well. If you are using a 2.6 or later kernel version, then you may need to adjust your actions accordingly.
FYI: RedHat 8.0 was shipping with the hotplug-2002_04_01-13 rpm. If you are running Linux 8.0 Personal then you may already have this module as it is typically installed by default.See the Linux hotplug project page or consult the hotplug rpm find page for this or later versions.
Q: How do you know your hotplug RPM version? How do you know if you have the hotplug RPM installed?
A: Try:rpm -q hotplugIt should say something such as:
hotplug-2002_04_01-13or better.
FYI: RedHat 8.0 was shipping with the hwdata-0.47-1 rpm. If you are running Linux 8.0 Personal then you may already have this module as it is typically installed by default.See the hwdata search page for this or later versions.
NOTE: RedHat 8.0 was released with hwdata version 0.47-1, they shortly thereafter released hwdata version 0.48-1. Our camera worked with both versions. There are more up to date versions of hwdada available such as hwdata version 0.64.1 which contain updates and configurations for other hardware as well.
The hwdata and usbutils RPMs mutually depend on each other. You may find that you have to update both of them at the same time.
Q: How do you know your hwdata RPM version? How do you know if you have the hwdata RPM installed?
A: Try:rpm -q hwdataIt should say something such as:
hwdata-0.47-1or better.
FYI: RedHat 8.0 was shipping with the usbutils-0.9-7 rpm. If you are running Linux 8.0 Personal then you may already have this module as it is typically installed by default.See the usbutils search page for this or later versions.
The hwdata and usbutils RPMs mutually depend on each other. You may find that you have to update both of them at the same time.
Q: How do you know your usbutils RPM version? How do you know if you have the usbutils RPM installed?
A: Try:rpm -q usbutilsIt should say something such as:
usbutils-0.9-7or better.
See the Phillips USB webcams project page or the camstream project page for details and the most recent version.This program is useful for testing Phillips cameras, Logitech Webcam 3000 Pro cameras, the PWC module.
Q: How do you know your camstream version?
A: There is no easy way. Just the most recent stable version and install it.
(top)
NOTE: You must be the root user to do this.
We are now ready to install the pwc hotplug script.
Create the pwc hotplug script:
cd /etc/hotplug/usb cat >pwc <<EOF #!/bin/bash # # Phillips webcam module setup # # See: http://www.saillard.org/linux/pwc/ for support or # www.isthe.com/chongo/tech/comp/pwc/index.html for hints. # # Placed in the public domain by Landon Curt Noll # # chongo (Share and enjoy! :-)) www.isthe.com/chongo/index.html # /usr/bin/logger -p daemon.notice -t hotplug/usb/pwc -i Phillips webcam setup # place any pwc options such as size=vga fps=15 on the end of the next line /sbin/modprobe pwc /usr/bin/logger -p daemon.notice -t hotplug/usb/pwc -i Phillips webcam complete EOF chmod 0555 /etc/hotplug/usb/pwc
NOTE: If you want to change the default PWC module parameters then add them onto the /sbin/modprobe pwc line. For example:
/sbin/modprobe pwc size=vga power_save=1 fps=15 leds=250,750
See the kernel documentation file:
/usr/src/linux-2.4/Documentation/usb/philips.txt
for more details.
(top)
NOTE: You must be the root user to do this.
The USB audio module can, in some cases, confuse certain sound enabled software that expects to use non-USB based audio hardware.
Some of our systems have non-USB based audio hardware. We discovered that when systems with PWC based USB cameras and non-USB based audio hardware were booted, certain sound enabled software failed to emit sound. For example, both KDE and Gnome desktops and most sound enabled desktop applications failed to emit sound when the system was booted with a Logitech QuickCam 3000 Pro camera. We were able to play audio CDs, but little else.
It is unfortunate that a number of desktops and applications get confused when they encounter both USB and non-USB capabilities. One easy work-a-round to this problem is to remove the USB audio module if it is not needed. By removing the USB audio module early on in the boot process, systems with PWC based USB cameras and non-USB based audio hardware frequently avoid such problems.
NOTE: We have found that you plug in a PWC based USB camera after a system has booted, then this problem does not arise. However, if you forget that the camera is plugged in and then reboot, then you will likely encounter this problem again.
NOTE: A number of PWC based USB cameras have microphones. For example the Logitech QuickCam 3000 Pro camera has a microphone. Removing the USB audio module will disable the camera's microphone.
If you want to use a PWC based USB camera microphone, then do not perform this step!
The following usbaudiooff script, when installed in /etc/init.d/usbaudiooff and chkconfig-ed on, then will disable USB audio functionality and avoid the audio problems noted above.
To automatically disable USB audio functionality, run this script:
cd /etc/init.d cat >usbaudiooff <<EOF #!/bin/sh # # usbaudiooff Disable USB audio so that non-USB sound will not be confused # # chkconfig: 2345 04 04 # description: Remove the USB audio module # # See: http://www.saillard.org/linux/pwc/ for support or # www.isthe.com/chongo/tech/comp/pwc/index.html for hints. # # Placed in the public domain by Landon Curt Noll # # chongo (Share and enjoy! :-)) www.isthe.com/chongo/index.html # Source function library. . /etc/rc.d/init.d/functions # setup AUDIO_FOUND="`/sbin/lsmod | /bin/grep '^audio '`" # See how we were called. case "$1" in start|restart|reload) echo -n "Disable USB audio: " if [ -z "$AUDIO_FOUND" ]; then passed "Disable USB audio -" else /sbin/rmmod audio RETVAL=$? if [ "$RETVAL" -eq 0 ]; then success "Disable USB audio -" else failure "Disable USB audio -" fi fi echo ;; stop) RETVAL=0 ;; status) echo -n "Looking for the USB audio module: $AUDIO_FOUND" RETVAL=0 echo ;; *) echo "Usage: usbaudiooff {start|stop|reload|status}" RETVAL=1 ;; esac exit $RETVAL EOF chmod 0555 /etc/init.d/usbaudiooff /sbin/chkconfig usbaudiooff reset /etc/init.d/usbaudiooff start
The above script is written with the RedHat startup script system in mind. On non-RedHat systems, you may need to adjust the above script to suit your needs.
(top)
NOTE: You must be the root user to do this.
You consider allowing any user to look at the camera:
chmod 0644 /dev/video0
If it complains about no such file, try creating the device file instead:
mknod --mode=0644 /dev/video0 c 81 0
(top)
NOTE: While anyone can plug in a USB device, you often need to be the root user to view the system log files.
By now you should have performed the pwc hotplug script installation, and setup the /dev/video0 permissions.
Tail the system log file:
tail -f /var/log/messages
and them plug in a Philips USB camera, Logitech QuickCam 3000 Pro, or PWC supported USB camera.
You should see something like the following messages in /var/log/messages:
kernel: hub.c: USB new device connect on bus1/2, assigned device number 3 kernel: pwc Logitech QuickCam 3000 Pro USB webcam detected. kernel: pwc Registered as /dev/video0. kernel: usbaudio: device 3 audiocontrol interface 1 has 1 input and 0 output AudioStreaming interfaces kernel: usbaudio: device 3 interface 2 altsetting 0 FORMAT_TYPE descriptor not found kernel: usbaudio: valid input sample rate 44100 kernel: usbaudio: device 3 interface 2 altsetting 1: format 0x00000010 sratelo 44100 sratehi 44100 attributes 0x00 kernel: usbaudio: valid input sample rate 22050 kernel: usbaudio: device 3 interface 2 altsetting 2: format 0x00000010 sratelo 22050 sratehi 22050 attributes 0x00 kernel: usbaudio: valid input sample rate 11025 kernel: usbaudio: device 3 interface 2 altsetting 3: format 0x00000010 sratelo 11025 sratehi 11025 attributes 0x00 kernel: usbaudio: valid input sample rate 8000 kernel: usbaudio: device 3 interface 2 altsetting 4: format 0x00000010 sratelo 8000 sratehi 8000 attributes 0x00 kernel: usbaudio: registered dsp 14,19 kernel: usbaudio: registered mixer 14,16 /etc/hotplug/usb.agent: Setup pwc audio for USB product 46d/8b0/2 /etc/hotplug/usb.agent: Module setup pwc for USB product 46d/8b0/2 hotplug/usb/pwc[7273]: Phillips webcam setup hotplug/usb/pwc[7277]: Phillips webcam complete
When you remove the camera you see something like the following messages in /var/log/messages:
kernel: usb.c: USB disconnect on device 3 kernel: usbaudio: unregister dsp 14,19 kernel: usbaudio: unregister mixer 14,16
(top)
NOTE: You must be the root user to do this.
Create a camstream build directory:
mkdir -p /usr/local/src/camstream
Download the camstream or later source
See the camstream project page for details and the most recent version.
into the /usr/local/src/camstream directory.
Untar it:
cd /usr/local/src/camstream tar -zxvf camstream-0.26.tar.gz
Compile camstream:
cd /usr/local/src/camstream/camstream-0.26/src ./configure make
NOTE: If you run into problems compiling camstream, you may be missing some other things such as KDE or Qt. See the camstream installation and the troubleshooting pages for more help.
Install camstream:
cd /usr/local/src/camstream/camstream-0.26/src make install
(top)
By now you should have performed the pwc hotplug script installation, setup the /dev/video0 permissions, tested hotplug, and installed camstream.
To test with camstream, do the following:
NOTE: If you run into problems, look at the various project pages. Read their FAQs. If you still cannot figure things out, ask the project people for help. Since we didn't write most of this code, we are probably not the people who want to ask for detailed help.
Good luck and happy webcaming!
(top)
© 1994-2013
Landon Curt Noll chongo (was here) /\oo/\ $Revision: 8.1 $ $Date: 2022/07/07 23:47:07 $ |