Red Hat Bugzilla – Bug 471726
My Webcam Doesn't Work.
Last modified: 2009-09-07 04:32:12 EDT
I just installed kernel 126.96.36.199-37 on my x86_64. My Logitech webcam does not work.
I can't get a picture in kopete, ekiga and skype.
Could you please make this work. Thank you.
The relevant output from lsmod is
gspca_spca561 19840 0
gspca_main 29184 1 gspca_spca561
compat_ioctl32 16384 1 gspca_main
videodev 40704 2 gspca_main,compat_ioctl32
v4l1_compat 21380 1 videodev
add to that list a Ezonics PAC207:
gspca_pac207 9856 0
gspca_main 21504 1 gspca_pac207
videodev 32000 1 gspca_main
v4l1_compat 16004 1 videodev
Camstream gives DEVICE "CIF Single Chip" and exists with "error -22"
XSANE recognizes it (distorted picture).
Ekiga recognizes chip ... but no video
I can confirm this with a ZC0301 camera, which uses gspca also. It doesn't work anymore with Cheese (which uses gstreamer) after installing the latest kernel.
$ uname -r
0ac8:301b Z-Star Microelectronics Corp. ZC0301 WebCam
gspca_zc3xx 48256 0
gspca_main 21504 1 gspca_zc3xx
videodev 32000 1 gspca_main
I suspect that it's related to this upstream problem:http://bugzilla.kernel.org/show_bug.cgi?id=11920.
Please add to the list:
04FC:0561 - Sunplus Flexcam 100
wrongly identified as generic, I say this because it WAS PREVIOUSLY identified correctly as Sunplus Flexcam 100
093A:2468 - Pixart
correctly identified as PAC207, but, no longer works
Ok, so 4 cases presented here have 1 theme in common: they didn't work before the kernel 188.8.131.52-37 update either. Atleast they did not work out of the box. The 3 of you probably have installed gspca version 1 from some third party repository or directly from source.
The pac207 and spca561 cams both deliver raw bayer data compressed with 2 different custom proprietary compression algorithms, which no apps know how to handle. The zc0301 cam delivers JPEG data, so it will work with some apps (try ekiga) but not with cheese as cheese does not know how to handle JPEG sources.
The old gspca driver solves this by doing format conversion inside the kernel. Which is a very bad thing to do and thus has been removed in the new version.
As most apps / libraries do not know how to handle the multitude of video formats webcams can produce, I've written libv4l:
I've just done a build of the latest libv4l for F-9, so it should be available through "yum install libv4l" soon. In the mean time you can download the rpm from here: http://koji.fedoraproject.org/koji/buildinfo?buildID=70038
As no applications in F-9 have been patched to use libv4l (most apps are patched in F-10), you will need to use the libv4l C-libary wrapper to tunnel the v4l calls the apps make through libv4l.
Todo this you need to launch the applications from a terminal and instead of typing just <app-name> you type:
Note that for 64 bit applications this becomes:
So for example to launch cheese you type:
One last note the use of LD_PRELOAD=/usr/lib64/libv4l/v4l1compat.so only applies to 64 bit *applications*, 32 bit applications on 64 bit installations, such as skype, still must use the version without the "64" in it, so: LD_PRELOAD=/usr/lib/libv4l/v4l1compat.so. To get the 32 bit libv4l installed on a 64 bit system do: "yum install libv4l.i386"
With these instructions all 4 mentioned cams should work fine in F-9, if not please file a new bug against the kernel and put me in the CC, and one cam per bug / one bug per cam please!
Actually, the PAC207 worked FINE until the update.
Created attachment 323888 [details]
My Ezonics cam (PAC207), my penquin and I
This camera worked fine until 2.6.27
(In reply to comment #5)
> Actually, the PAC207 worked FINE until the update.
As said before, if it did so, it only did so because you were using a not part of the official kernel, third party provided, hacky, and not supported by Fedora driver, which you have had to install on top of a default Fedora install.
With the cleaning up of gspca driver and moving it into the mainline kernel, these cams will now work out of the box for everyone in F-10.
I don't wish to sound ungrateful and I'm sure everything will work just fine out of the box as advertised in Fedora 10. However, Fedora 10 is yet to be released, and Fedora 9 still has some life in it.
Please consider us users. If you are going to include these drivers please ensure that us users can use them. If not, then let us install the drivers that do.
As it turns out, we can't compile the old gspca drivers because of changes made to the kernel.
Fedora is also being used.... It is not just being developed on.
Thank you for your consideration.
(In reply to comment #8)
> I don't wish to sound ungrateful and I'm sure everything will work just fine
> out of the box as advertised in Fedora 10. However, Fedora 10 is yet to be
> released, and Fedora 9 still has some life in it.
> Please consider us users. If you are going to include these drivers please
> ensure that us users can use them.
Have I not a few comments back gone to the trouble of creating a package to make things work, and provided such package as an update + instructions how to use, have I not also written a blog post advising users not aware of this ticket about the same problem
This all seems rather ungrateful to me.
> If not, then let us install the drivers that
> As it turns out, we can't compile the old gspca drivers because of changes made
> to the kernel.
Yes, well that is the risk of using out of tree kernel drivers, they can break with kernel upgrades, go complain to the long defunct upstream of gspcav1.
> Fedora is also being used.... It is not just being developed on.
You are free to keep booting the old kernel, or use the provided workaround.
Downloaded from koji the x86_64 and i386 version of libv4l as suggested.
Running 3 applications with the suggested settngs in comment 4.
Camera seems to work OK in kopete, and ekiga when previewing the output for the fisrt time. But when I close the window with the camera preview, the camera dies.
When I try to test my cam in skype, skype crashes and takes the camera with it.
Thanks, it works wonderfully. I look forward to getting Fedora 10 loaded as soon as it is released.
This compatibility library is useful though not well known. One problem is that the libraries aren't in standard locations (/lib for instance), and the RPM doesn't update ld.conf.d. Can this be fixed?
(In reply to comment #12)
> This compatibility library is useful though not well known. One problem is that
> the libraries aren't in standard locations (/lib for instance), and the RPM
> doesn't update ld.conf.d. Can this be fixed?
It is not in the standard location, because it is not meant to be used with
standard linking, You need to explicitly tell the dynamic linker to link it in
while starting the application using LD_PRELOAD.
well, I accept that, but I note that other compatibility libraries are in /lib, and assuming that distributions other than Fedora might like to use this library (it's mentioned on the Skype.com forums, for instance), a generic wrapper script needs LD_LIBRARY_PATH as well ... that's my challenge, as I'm in the midst of writing one ... or else I have to tell them to modify ld.so.conf(.d), or I have to have variants for Fedora, Ubuntu, etc. ... anyhow just a suggestion, and thanks for the work