From Fedora Project Wiki

Revision as of 00:44, 26 June 2008 by Poelstra (talk | contribs)

Better Webcam Support

Summary

Currently many webcams do not work with Fedora out of the box even though Linux driver exist for them, the intent is to fix this.

Owner

  • Name: Hans de Goede

Current status

  • Targeted release: Fedora 10
  • Last updated: (Jun 25 2008)
  • Percentage of completion: 30%

Detailed Description

Webcams not working even though there are Linux drivers has 2 causes:

  1. The drivers are not in the mainline kernel
  2. Those drivers that are in the mainline kernel are often v4l2 while many applications will only work with v4l1. Even v4l2 apps often don't work with v4l2 webcam's as the webcams often have camspecific (compressed) pixelformats and most applications don't support all these,

The plan is to fix 1) by working together with the driver upstream on cleaning the driver (and porting it to v4l2 if needed in the process) and then submitting it for inclusion in the mainline kernel, currently I'm working together with gspca to get gspcav2 cleaned up and merged, this will vastly improve the amount of supported webcams.

2) has been fixed by creating a utility library which contains all the conversion stuff and v4l1 compatibility functions so that applications can easily be modified to work properly with v4l2 webcams, for more info on his library called libv4l, see: http://hansdegoede.livejournal.com/3636.html

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 the gspcav2 (and maybe other) drivers are clearly moving upstream, but not there yet in time for release.

This requires creating a wrapper library for v4l1 emulation and making modifcations to webcam using applications so that they load this wrapper library.

Test Plan

I've bought several different webcams (about 7 or so atm) and I intend to get them all working out of the box, with a wide palette of webcam using applications.

User Experience

Out of the box working hardware.

Dependencies

None.

Contingency Plan

Don't ship the drivers / wrapper if they aren't ready.

Documentation

None atm.

Release Notes

None, except that if this is finished in time it would be good to make some PR with this.