1 .. SPDX-License-Identifier: GPL-2.0 2 3 Philips webcams (pwc driver) 4 ============================ 5 6 This file contains some additional information 7 E-mail: webcam@smcc.demon.nl 8 Site: http://www.smcc.demon.nl/webcam/ 9 10 As of this moment, the following cameras are s 11 12 * Philips PCA645 13 * Philips PCA646 14 * Philips PCVC675 15 * Philips PCVC680 16 * Philips PCVC690 17 * Philips PCVC720/40 18 * Philips PCVC730 19 * Philips PCVC740 20 * Philips PCVC750 21 * Askey VC010 22 * Creative Labs Webcam 5 23 * Creative Labs Webcam Pro Ex 24 * Logitech QuickCam 3000 Pro 25 * Logitech QuickCam 4000 Pro 26 * Logitech QuickCam Notebook Pro 27 * Logitech QuickCam Zoom 28 * Logitech QuickCam Orbit 29 * Logitech QuickCam Sphere 30 * Samsung MPC-C10 31 * Samsung MPC-C30 32 * Sotec Afina Eye 33 * AME CU-001 34 * Visionite VCS-UM100 35 * Visionite VCS-UC300 36 37 The main webpage for the Philips driver is at 38 a lot of extra information, a FAQ, and the bin 39 contains decompression routines that allow you 40 framerates; in addition the webcam uses less b 41 if you want to run more than 1 camera simultan 42 under a NDA, and may therefore not be distribu 43 is completely optional. 44 45 You can build this code either into your kerne 46 the latter, since it makes troubleshooting a l 47 microphone is supported through the USB Audio 48 49 When you load the module you can set some defa 50 camera; some programs depend on a particular i 51 don't know how to set it properly in the drive 52 53 size 54 Can be one of 'sqcif', 'qsif', 'qcif', 'sif 55 'vga', for an image size of resp. 128x96, 1 56 320x240, 352x288 and 640x480 (of course, on 57 support these resolutions). 58 59 fps 60 Specifies the desired framerate. Is an inte 61 62 fbufs 63 This parameter specifies the number of inte 64 frames from the cam. This will help if the 65 the cam is a bit slow or momentarily busy. 66 only introduces lag, so choose carefully. T 67 reasonable. You can set it between 2 and 5. 68 69 mbufs 70 This is an integer between 1 and 10. It wil 71 buffers to reserve for mmap(), VIDIOCCGMBUF 72 The default is 2, which is adequate for mos 73 buffering). 74 75 Should you experience a lot of 'Dumping fra 76 grabbing with a tool that uses mmap(), you 77 However, it doesn't really buffer images, i 78 slack when your program is behind. But you 79 forked program to really take advantage of 80 81 The absolute maximum is 10, but don't set i 82 up 460 KB of RAM, so unless you have a lot 83 something more than 4 is an absolute waste. 84 allocated during open(), so nothing is wast 85 use. 86 87 power_save 88 When power_save is enabled (set to 1), the 89 the cam on close() and re-activate on open( 90 turn off the LED. Not all cameras support t 91 don't have power saving at all), and some m 92 will shut down, but never wake up). Conside 93 default this option is disabled. 94 95 compression (only useful with the plugin) 96 With this option you can control the compre 97 uses to squeeze the image through the USB b 98 parameter between 0 and 3:: 99 100 0 = prefer uncompressed images; if the re 101 in an uncompressed format, the driver 102 compression. 103 1 = low compression. 104 2 = medium compression. 105 3 = high compression. 106 107 High compression takes less bandwidth of co 108 introduce some unwanted artefacts. The defa 109 See the FAQ on the website for an overview 110 compression. 111 112 The compression parameter does not apply to 113 and OEM models derived from those (only a f 114 parameter. 115 116 leds 117 This settings takes 2 integers, that define 118 (in milliseconds). One of the interesting t 119 this is let the LED blink while the camera 120 121 leds=500,500 122 123 will blink the LED once every second. But w 124 125 leds=0,0 126 127 the LED never goes on, making it suitable f 128 129 By default the camera's LED is on solid whi 130 when the camera is not used anymore. 131 132 This parameter works only with the ToUCam r 133 750) and OEMs. For other cameras this comma 134 the LED cannot be controlled. 135 136 Finally: this parameters does not take effe 137 open the camera device. Until then, the LED 138 139 dev_hint 140 A long standing problem with USB devices is 141 never know what device a camera gets assign 142 order, the hub configuration, the order in 143 and the phase of the moon (i.e. it can be r 144 can give the driver a hint as to what video 145 should use with a specific camera. This is 146 cameras of the same model. 147 148 A camera is specified by its type (the numb 149 like PCA645, PCVC750VC, etc) and optionally 150 in /sys/kernel/debug/usb/devices). A hint c 151 following format:: 152 153 [type[.serialnumber]:]node 154 155 The square brackets mean that both the type 156 optional, but a serialnumber cannot be spec 157 would be rather pointless). The serialnumbe 158 by a '.'; the node number by a ':'. 159 160 This somewhat cryptic syntax is best explai 161 162 dev_hint=3,5 The first detec 163 /dev/video3, th 164 other cameras w 165 available slot 166 167 dev_hint=645:1,680:2 The PCA645 came 168 and a PCVC680 / 169 170 dev_hint=645.0123:3,645.4567:0 The PC 171 0123 g 172 camera 173 gets / 174 175 dev_hint=750:1,4,5,6 The PCVC750 ca 176 next 3 Philips 177 through /dev/v 178 179 Some points worth knowing: 180 181 - Serialnumbers are case sensitive and must 182 leading zeroes (it's treated as a string) 183 - If a device node is already occupied, reg 184 the webcam is not available. 185 - You can have up to 64 video devices; be s 186 nodes in /dev if you want to spread the n 187 After /dev/video9 comes /dev/video10 (not 188 - If a camera does not match any dev_hint, 189 the first available device node, just as 190 191 trace 192 In order to better detect problems, it is n 193 'trace' of some of the calls the module mak 194 kernel log at debug level. 195 196 The trace variable is a bitmask; each bit r 197 If you want to trace something, look up the 198 below, add the values together and supply t 199 200 ====== ======= ============================ 201 Value Value Description 202 (dec) (hex) 203 ====== ======= ============================ 204 1 0x1 Module initialization; this 205 while loading and unloading 206 207 2 0x2 probe() and disconnect() tra 208 209 4 0x4 Trace open() and close() cal 210 211 8 0x8 read(), mmap() and associate 212 213 16 0x10 Memory allocation of buffers 214 215 32 0x20 Showing underflow, overflow 216 messages 217 218 64 0x40 Show viewport and image size 219 220 128 0x80 PWCX debugging 221 ====== ======= ============================ 222 223 For example, to trace the open() & read() f 224 so you would supply trace=12 during insmod 225 you want to turn the initialization and pro 226 The default value for trace is 35 (0x23). 227 228 229 230 Example:: 231 232 # modprobe pwc size=cif fps=15 power_save 233 234 The fbufs, mbufs and trace parameters are glob 235 cameras. Each camera has its own set of buffer 236 237 size and fps only specify defaults when you op 238 accommodate some tools that don't set the size 239 settings after open() with the Video4Linux ioc 240 defaults is QCIF size at 10 fps. 241 242 The compression parameter is semiglobal; it se 243 preference for all camera's, but this paramete 244 the VIDIOCPWCSCQUAL ioctl() call. 245 246 All parameters are optional. 247
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.