Features/BetterWebcamSupportF13

= Better Webcam Support Continued =

Summary
The Better Webcam support feature for F-10 and F-12 has added support for many webcams, but there still are models which are unsupported the goal of this feature is to get even more webcams supported out of the box, with a special focus on so called dual mode camera's for this release.

Owner

 * Name: Hans de Goede
 * Email: hdegoede redhat com

Current status

 * Targeted release:  Fedora 13
 * Last updated: (Mar 18 2010)
 * Percentage of completion: 100%

Detailed Description
The Better Webcam support feature for F-10 has done much of the groundwork needed for properly supporting webcams in Linux. We now have a library (libv4l) for decompressing various proprietary video formats in userspace, and almost all webcam using applications have been patched to use this library.

This third push for better webcam contains of 4 pieces:
 * 1) Lots of testing and bugfixing / improving of existing in kernel drivers. I need access to cams for this! As you can see in the matrix below I already have quite a few of them, most of which were bought from my own money especially for this. If you have old cams to donate please contact me!
 * 2) Try to make the ever growing list of upside down mounted laptop webcams as complete as possible, so people will not have any upside down issues out of the box.
 * 3) Clean up existing out of tree drivers, moving the decompression to libv4l where needed and merge them into the mainline, specifically the following ones:
 * 4) stv0680 dual mode camera bridge (done as of 2.6.33rc2)
 * 5) w996Xcf dual mode camera bridge (done as of 2.6.33rc2)
 * 6) ovfx2 webcam bridge (done as of 2.6.33rc2)
 * 7) cpia1 webcam soc (done as of 2.6.33-0.49.rc8.git4)
 * 8) Help upstream and specifically Theodore Kilgore from gphoto2 to get kernel drivers supporting the streaming mode of dual mode cameras (still cams which can act as webcams) into the mainline kernel, specifically for the following chipsets:
 * 9) mr97310a dual mode camera bridge (done as of 2.6.33rc2)
 * 10) sn9c2028 dual mode camera bridge (done as of 2.6.33-0.49.rc8.git4)
 * 11) benq dual mode camera bridge (done as of 2.6.33-0.49.rc8.git4)

Benefit to Fedora
Out of the box working hardware makes for happy end users and good reviews.

Scope
This may require temporarily carrying kernel patches if drivers are clearly moving upstream, but not there yet in time for release.

This requires updating libv4l to a version which contains an up2date upside down table and can decompress any formats produced by new drivers.

Test Plan
I currently test with the following webcams:

Legenda: Note that the status column refers to the status with the latest v4l-dvb mercurial tree¸ which Fedora is tracking pretty closely, but Fedora can lag a little.
 * good, works well
 * ok, works but not the best cam ever (with the Linux drivers)
 * needs work, works ok in (not too bright) daylight, but needs more work to work better in other lighting conditions.
 * WIP, the driver for this is currently being written / cleaned up for mainline merger

Credits, cameras marked (#) are donated by: Many many thanks to these people!
 * 1) Jan Gnodde
 * 2) Dave Jones
 * 3) Andy Walter
 * 4) Simon Wood
 * 5) Erik de Castro Lopo
 * 6) Hans Verkuil
 * 7) Laurent Pinchart
 * 8) Paulus (Laudaka)

Also see here for cams which are supported by gspca and their testing status with the new cleaned up gspcav2.

Tests are done with the following applications:


 * xawtv
 * cheese
 * ekiga
 * camorama
 * vlc *
 * mplayer *
 * skype *

(*) Not in Fedora

User Experience
Out of the box working hardware.

Dependencies
None.

Contingency Plan
Don't ship the new drivers / updated libv4l if they aren't ready.

Documentation
Fedora 13 now supports even more webcams and has the support for several existing cams improved.

Release Notes
Fedora 13 now supports the webcam mode of a lot of so called dual mode cameras, these are cheap still cameras (which usually only on board storage, no memory card slot), which can can also function as a webcam.

When running the GNOME desktop (Fedora's default desktop), these camera's will be seen as a storage device by default. To use them as webcam go to Places -> Computer, right click on the camera icon and select unmount, you should now be able to use the camera as webcam.

For a list of all webcams and applications with which Fedora-13's improved webcam support has been tested see the BetterWebcamSupport feature page.

Comments and Discussion
See Talk:Features/BetterWebcamSupport13