NameDateSize

..23-Oct-201828

AddOn.cppH A D19-Oct-20214.2 KiB

AddOn.hH A D22-Nov-20121.6 KiB

addons/H19-Oct-20217

CamBufferedFilterInterface.cppH A D22-Nov-20121.9 KiB

CamBufferedFilterInterface.hH A D22-Nov-20121.2 KiB

CamBufferingDeframer.cppH A D29-Oct-20203.4 KiB

CamBufferingDeframer.hH A D22-Nov-2012614

CamColorSpaceTransform.cppH A D22-Nov-20121.5 KiB

CamColorSpaceTransform.hH A D22-Nov-20121,007

CamDebug.hH A D22-Nov-2012360

CamDeframer.cppH A D22-Nov-20123.9 KiB

CamDeframer.hH A D22-Nov-20122.2 KiB

CamDevice.cppH A D19-Oct-202113.8 KiB

CamDevice.hH A D22-Nov-20125.7 KiB

CamFilterInterface.cppH A D22-Nov-20122 KiB

CamFilterInterface.hH A D22-Nov-20121.5 KiB

CamRoster.cppH A D29-Oct-20203.3 KiB

CamRoster.hH A D22-Nov-2012830

CamSensor.cppH A D19-Oct-20212.1 KiB

CamSensor.hH A D22-Nov-20122.6 KiB

CamStreamingDeframer.cppH A D18-Jul-20235.5 KiB

CamStreamingDeframer.hH A D22-Nov-2012546

cstransforms/H22-Nov-20123

JamfileH A D29-Apr-20192.5 KiB

Producer.cppH A D18-Jul-202323.2 KiB

Producer.hH A D22-Nov-20125.2 KiB

README.txtH A D22-Nov-20124.9 KiB

sensors/H19-Oct-20218

README.txt

1USB Webcam driver
2(c) 2004-2008 François Revol.
3Parts (c) Be,Inc. (ProducerNode sample code).
4
5Current version of my USB Webcam driver. WORK IN PROGRESS!
6Uses the USB Kit (userland API, needs libusb) to publish a
7media node representing the webcam.
8
9It currently only works with my Sonix webcam (3Euro cheapo
10cam, using an SN9C120 chip), but is modular enough to easily 
11expand it, some code is already there to detect Quickcams.
12
13Note however that most webcams only support isochronous 
14transfers, so will NOT work in R5 or even Zeta as isochronous 
15is mostly not working. That's the reason for only supporting
16my Sonix webcam as it is bulk capable.
17As soon as iso support is added to the USB stack and the 
18USB Kit it should be possible to support other webcams quite 
19easily.
20
21For now you should be able to build it under Zeta with the
22makefile provided.
23
24There are 3 kinds of device-specific folders :
25addons/ contains actual usb chip support code for each device.
26sensors/ contains code to handle CMOS sensors, as each model 
27	of a specific brand usually have a different CMOS chip 
28	despite a common usb chip.
29cstransforms/ for colorspace transforms so other device using 
30	the same weird colorspace can reuse the code (not yet 
31	used, sonix has its own code for now). It should be 
32	possible to use Translator-based transforms, making 
33	it easy to support webcams sending JPEG pictures. 
34	Another option is to turn all cstransforms into actual
35	Translators usable by other apps, or also media codecs 
36	but that would be more work for few added value.
37
38Other notes and TODO:
39- finish the bayer cstransform and use that instead of copied 
40(MIT) code in Sonix addon.
41- implement handling picture sizes correctly (currently forced 
42in the ProducerNode and the Sonix code to 320x240)
43- there are currently 2 Deframer classes, the StreamingDeframer 
44although more complex seems to work much better than the 
45BufferingDeframer. Make my mind about them.
46- write isochronous code when USB Kit supports it
47- add quickcam support (I have some code around) (requires iso)
48- add code to support Fuji FinePix to merge the FinePix addon 
49from bebits ? (need to find one to test)
50- design an extensible API to publish possible controls as 
51ParameterWeb or forward ParameterWeb changes right to the 
52device-specific addon and provide default handlers for usual 
53controls ?
54
55References and other drivers of interest:
56
57* Logitech opensource effort:
58http://www.quickcamteam.net/
59
60* Sonix linux drivers (several of them):
61http://sourceforge.net/projects/sonix/ -- http://sonix.sourceforge.net/
62http://freshmeat.net/projects/sonic-snap/?branch_id=55324&release_id=183982
63http://tgnard.free.fr/linux/
64(datasheet)
65http://www.mnementh.co.uk/sonix/sn9c102.pdf
66
67* some of the (many!) linux quickcam drivers:
68http://www.lrr.in.tum.de/~acher/quickcam/quickcam.html
69http://www.seismo.ethz.ch/linux/webcam.html
70
71* NW80x based:
72http://nw802.cvs.sourceforge.net NW80x based (like the QuickCam I have here)
73http://tuukkat.awardspace.com/quickcam/quickcam.html for PID 0xd001
74http://blognux.free.fr/sources/EasyCam2/04032006_11:11/drivers/nw802/
75datasheets:
76http://www.digchip.com/datasheets/parts/datasheet/132/NW800.php
77
78* Creative's own list of linux drivers:
79http://connect.creativelabs.com/opensource/Lists/Webcam%20Support/AllItems.aspx
80
81* Other webcam drivers:
82http://zc0302.sourceforge.net/zc0302.php?page=cams
83http://www.smcc.demon.nl/webcam/ (philips)
84http://www.medias.ne.jp/~takam/bsd/NetBSD.html
85http://blognux.free.fr/sources/EasyCam2/04032006_19:49/
86http://www.wifi.com.ar/english/doc/webcam/ov511cameras.html
87http://mxhaard.free.fr/spca5xx.html
88
89http://lkml.indiana.edu/hypermail/linux/kernel/0904.0/03427.html
90
91* CMOS Sensor datasheets (rather, marketing buzz):
92http://mxhaard.free.fr/spca50x/Doc/ many
93http://www.tascorp.com.tw/product_file/TAS5110C1B_Brief_V0.3.pdf
94http://www.tascorp.com.tw/product_file/TAS5130D1B_Brief_V0.3.pdf
95http://www.mnementh.co.uk/sonix/hv7131e1.pdf
96Divio NW80x:
97http://www.digchip.com/datasheets/parts/datasheet/132/NW800.php
98http://www.digchip.com/datasheets/parts/datasheet/132/NW802.php
99http://web.archive.org/web/*/divio.com/*
100All from eTOMS (ET31X110 would be == NW800 but isn't there):
101http://www.etomscorp.com/english/webdesign/product_search.asp
102http://web.archive.org/web/*re_pd_sr_1nr_50/http://etomscorp.com/*
103Agilent HDCS:
104http://www.ortodoxism.ro/datasheets2/2/05jj45dcrga6zr0zjg7hrde83cpy.pdf
105
106* Linux USB stack:
107http://www.iglu.org.il/lxr/source/include/linux/usb.h
108
109* Linux V4L webcam list:
110http://linuxtv.org/v4lwiki/index.php/Webcams
111
112* Linux source code crossref:
113http://lxr.linux.no/linux
114
115* Fuji FinePix BeOS driver, should probably be merged at some point:
116http://bebits.com/app/4185
117
118* Macam generic OSX webcam driver (interesting but sadly GPL and in ObjC):
119http://webcam-osx.sourceforge.net/index.html
120http://webcam-osx.sourceforge.net/cameras/index.php list of supported cams in OSX
121http://sourceforge.net/projects/webcam-osx
122