技术宅,开源软件爱好者 虚拟机,编译器,编辑器,MCU IP,数据结构,操作系统,TCP/IP协议
分类: LINUX
2010-12-08 19:42:37
我的摄像头终于出现图像了!
李迟按:本文章不是教程,不是心得总结,而是记录我在做毕业设计过程中遇到的一些问题,以及怎么去解决
(有些还是没有解决)。可能带有牢骚,可能带有某些让人不悦的话。希望大家见谅。
今晚很高兴,捣鼓了几天,郁闷了几天的事,今天解决了一些了。起码我能在linux下看到摄像头的图像了。
提起USB摄像在linux下的使用,无论是百度还是Google,出现的多数是法国人写的一个通用驱动程序,即spca5xx,
我也是找了很久才找到,——因为在网上看到的那个网站已经不能登陆了,就是说不再维护了(这个后来再作说明),所以
找了很久。可惜不能用。因为我make都不通过,出现的错误如下:
make -C /lib/modules/`uname -r`/build SUBDIRS=/usr/local/gspcav1-20071224 CC=cc modules
make[1]: Entering directory `/usr/src/linux-2.6.30.2'
CC [M] /usr/local/gspcav1-20071224/gspca_core.o
/usr/local/gspcav1-20071224/gspca_core.c:54:27: error: asm/semaphore.h: No such file or directory
In file included from /usr/local/gspcav1-20071224/gspca_core.c:845:
/usr/local/gspcav1-20071224/utils/spcausb.h: In function ‘spca5xxRegRead’:
/usr/local/gspcav1-20071224/utils/spcausb.h:95: error: implicit declaration of function ‘info’
/usr/local/gspcav1-20071224/utils/spcausb.h: In function ‘spca_set_interface’:
/usr/local/gspcav1-20071224/utils/spcausb.h:278: error: implicit declaration of function ‘warn’
In file included from /usr/local/gspcav1-20071224/gspca_core.c:853:
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h: In function ‘sp5xxfw2_init’:
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h:122: error: called object ‘info’ is not a function
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h:136: error: called object ‘info’ is not a function
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h:141: error: called object ‘info’ is not a function
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h:148: error: called object ‘info’ is not a function
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h:176: error: called object ‘info’ is not a function
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h: In function ‘sp5xxfw2_start’:
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h:214: error: called object ‘info’ is not a function
/usr/local/gspcav1-20071224/Sunplus-jpeg/sp5xxfw2.h:230: error: called object ‘info’ is not a function
/usr/local/gspcav1-20071224/gspca_core.c: In function ‘spca5xx_ioctl’:
/usr/local/gspcav1-20071224/gspca_core.c:2463: error: implicit declaration of function ‘video_usercopy’
/usr/local/gspcav1-20071224/gspca_core.c: At top level:
/usr/local/gspcav1-20071224/gspca_core.c:2609: error: unknown field ‘owner’ specified in initializer
/usr/local/gspcav1-20071224/gspca_core.c:2609: warning: initialization from incompatible pointer type
/usr/local/gspcav1-20071224/gspca_core.c:2611: error: unknown field ‘type’ specified in initializer
/usr/local/gspcav1-20071224/gspca_core.c:2615: warning: initialization from incompatible pointer type
/usr/local/gspcav1-20071224/gspca_core.c: In function ‘spca50x_create_sysfs’:
/usr/local/gspcav1-20071224/gspca_core.c:2769: error: implicit declaration of function ‘video_device_create_file’
/usr/local/gspcav1-20071224/gspca_core.c:2780: error: implicit declaration of function ‘video_device_remove_file’
/usr/local/gspcav1-20071224/gspca_core.c: In function ‘spca5xx_probe’:
/usr/local/gspcav1-20071224/gspca_core.c:4301: error: incompatible types in assignment
make[2]: *** [/usr/local/gspcav1-20071224/gspca_core.o] Error 1
make[1]: *** [_module_/usr/local/gspcav1-20071224] Error 2
make[1]: Leaving directory `/usr/src/linux-2.6.30.2'
make: *** [default] Error 2
以我现在的能力,我不能解决,我google过,但得不到好的解决方法。
更重要的是,现在想找一个几年前驱动支持的摄像头很难啊!现在都流行免驱了——根据OS相关理论,这是不成功的,
设备没有驱动哪能访问?他们说的是用户免去安装驱动程序这一步骤,——是这个“免驱”。我买的摄像头不
在spca5xx支持范围之中。我好容易找到一个,是小郭用的,摄像头ID刚好是上述驱动所支持的。当时很兴
奋,心想,万事俱备,只差编译、测试了。可惜,以失败告终。错误如上所述。
我试的几个版本为spca5xx-20060501和gspcav1-20071224,都不行。
在网上找了那么多文章看,但一个也行不通。我不知大家的感受是什么,反正我很郁闷,很无奈。
后来,在插入我买的摄像头时,使用了lsusb,将ID那一行复制到google中,一不小心,发现了一个
好网站:。上面竟然有我摄像头的ID号!!继续研究,发现有UVC这个东东,
我在配置内核时也碰到过,但没有注意,没想到如此有用!后来在一个网站中找到有关使用UVC驱动摄像头的
文章,地址忘了,我也不知是怎么搜索到的。此外还下载一个观看图像的小软件(补充一下:luvcview 或者cheese[debian自带])。
结果成了!可以显示图像了!下面写一下过程:
如果你能在找到你的摄像头的ID,即UVC支持的,那么就可以在linux下使用了。
至于从哪个版本开始内核支持UVC,官方的话是“Linux 2.6.26 and newer includes the Linux UVC driver natively.”
1、查看摄像头ID:
[root@151 dev]# lsusb
Bus 002 Device 013: ID 0ac8:3313 Z-Star Microelectronics Corp.
0xc8:3313在UVC中支持了。
2、插入摄像头后,就可以在/dev/下查看是否有video设备文件:
[root@151 dev]# ls | grep video
video
video0
其中,video是video0的连接。如果没有再现,可能UVC没有配置到内核中,重新配置就可以了
(大致在Device DriversàMultimedia devicesàVideo capture adaptersàV4L USB devices下面)。如果内核配置了,
还是不出现,可以使用modprobe uvcvideo来加载该模块。
3、先看看摄像头的相关信息:
lshal | grep Cam
出现:
info.product = 'Vega USB 2.0 Camera.' (string)
usb_device.product = 'Vega USB 2.0 Camera.' (string)
usb.interface.description = 'Vega USB 2.0 Camera.' (string)
info.product = 'Vega USB 2.0 Camera.' (string)
input.product = 'Vega USB 2.0 Camera.' (string)
info.product = 'Vega USB 2.0 Camera.' (string)
对USB有研究的,就很熟悉这些字段。
再看一下系统能不能识别出摄像头:
[root@151 log]# dmesg | grep Cam
uvcvideo: Found UVC 1.00 device Vega USB 2.0 Camera. (0ac8:3313)
input: Vega USB 2.0 Camera. as /class/input/input6
usb 2-7: Product: Vega USB 2.0 Camera.
uvcvideo: Found UVC 1.00 device Vega USB 2.0 Camera. (0ac8:3313)
input: Vega USB 2.0 Camera. as /class/input/input7
usb 2-7: Product: Vega USB 2.0 Camera.
uvcvideo: Found UVC 1.00 device Vega USB 2.0 Camera. (0ac8:3313)
input: Vega USB 2.0 Camera. as /class/input/input8
usb 2-7: Product: Vega USB 2.0 Camera.
[root@151 ~]# dmesg | grep video
pci 0000:05:00.0: Boot video device
Linux video capture interface: v2.00
usbcore: registered new interface driver uvcvideo
uvcvideo 2-7:1.0: usb_probe_interface
uvcvideo 2-7:1.0: usb_probe_interface - got id
uvcvideo: Found UVC 1.00 device Vega USB 2.0 Camera. (0ac8:3313)
uvcvideo 2-7:1.0: usb_probe_interface
uvcvideo 2-7:1.0: usb_probe_interface - got id
uvcvideo: Found UVC 1.00 device Vega USB 2.0 Camera. (0ac8:3313)
uvcvideo 2-7:1.0: usb_probe_interface
uvcvideo 2-7:1.0: usb_probe_interface - got id
uvcvideo: Found UVC 1.00 device Vega USB 2.0 Camera. (0ac8:3313)
哈哈,识别出来了!可以测试了。
4、我使用的软件是luvcview,这个软件google就可以找到的。安装过程很简单,——make,make install就可以了。(哈哈,这里才说)
下面这个过程是测试过程,从看到图像到结束的过程:
[root@151 dev]# luvcview -d /dev/video0 -f yuv -s 640x480 (直接运行luvcview也可)
uvcview verion 0.1.4
size width: 640 height: 480
Video driver: x11
A window manager is available
video /dev/video0
Stop asked
Clean Up done Quit
[root@151 dev]#
解释命令:
-d 设备名,这里/dev/video或/dev/video0都可以,因为它们都是一个文件
-f 格式,有yuv和jpg两种,后者测试不行
-s 大小,能支持的最大尺度可能由luvcview决定,也可能由摄像头决定,(应该是后者,暂没有研究)
更具体的参见luvcview目录下的README文件。
另外,如果没有插入摄像头,即使modprobe uvcvideo也不会出现/dev/video设备文件;插入摄像头,即使没有modprobe uvcvideo,
也会出现/dev/video设备文件,当然这是我的测试,没有代表性,也没有理论根据的。
注:
1、UVC:USB Video Class
2、gspcav不是不再维护,而是在某一版本开始已经纳入内核了,至于哪个版本(2.6.26),就不太清楚了。特此说明。
3、这次毕业设计所不再编译gspca到内核中了。不支持它,直接使用UVC。
第一张图:红旗6.2,内核2.6.28.8
500)this.width=500;" width="500" border="0">
虚拟机FC9,内核2.6.30
500)this.width=500;" width="500" border="0">
Welcome to the USB Video Class Linux device driver home.
The goal of this project is to provide all necessary software components to fully support UVC compliant devices in Linux. This include a V4L2 kernel device driver and patches for user-space tools.
The USB Device Class Definition for Video Devices, or USB Video Class, defines video streaming functionality on the Universal Serial Bus. Much like nearly all mass storage devices (USB flash disks, external SATA disk enclosures, ...) can be managed by a single driver because they conform to the USB Mass Storage specification, UVC compliant peripherals only need a generic driver.
The UVC specification covers webcams, digital camcorders, analog video converters, analog and digital television tuners, and still-image cameras that support video streaming for both video input and output.
Due to the limited available man power and the broad scope of the UVC specification, the Linux UVC project will concentrate the development efforts on video input devices, especially webcams. Video output devices are supported in bulk mode only.
Please visit the BerliOS project page for mailing list archives.
The Linux UVC projects is currently focussing on kernel support for UVC devices. The driver implements the Video4Linux 2 (V4L2) API. Support for V4L1 is not planned.
The following table lists the UVC features supported by the Linux UVC driver.
UVC Feature | Status | Comments |
---|---|---|
UVC 1.0 descriptors | Yes |
|
UVC 1.1 descriptors | Yes |
|
Camera input terminal | Yes |
|
USB Streaming terminal | Yes |
|
Processing unit | Yes |
|
Selector unit | Yes |
|
Extension unit | Yes |
Extension units can be accessed directly or mapped to V4L2 controls. They require a user-space management tool. |
Still image capture | No |
|
Video streaming | Yes |
|
Uncompressed payload | Partially | Timestamps support is not implemented. |
MJPEG payload | Partially | Timestamps support is not implemented. |
DV payload | Partially | Timestamps support is not implemented. |
MPEG-2 TS payload | No |
|
Frame-based payload | Partially | Timestamps support is not implemented. |
Stream-based payload | No |
|
The table below lists known UVC devices. Other UVC compliant video input devices are very likely to be supported. If your UVC device is not listed below, please report it to the Linux UVC development mailing list. You need to subscribe to the list before posting.
For Logitech UVC webcams, the QuickCam Team website hosts a very detailed list of cameras models with part numbers and chipset models.
Device ID | Name | Manufacturer | Status | |
---|---|---|---|---|
0402:5606 | USB 2.0 Camera (VIT D2010 notebooks) | ALi Corporation | [] | |
0408:030c | HP Webcam (HP Pavilion DV6744 and DV6750) | Quanta Computer | ||
041e:4057 | Creative Live! Cam Optia | Creative Labs | ||
041e:4058 | Creative Live! Cam Optia AF | Creative Labs | ||
041e:4063 | Creative Live! Cam Video IM Pro | Creative Labs | [] | |
041e:4065 | Creative Live! Cam Optia Pro | Creative Labs | ||
041e:406a | Creative Live! Cam Notebook Ultra | Creative Labs | ||
041e:4080 | Creative Live! Cam Socialize HD | Creative Labs | ||
0458:505e | Genius iSlim 330 | Genius | ||
0458:7055 | Genius iSlim 2020AF | Genius | ||
0458:705d | Genius iSlim 2000AF | Genius | ||
0458:706e | Genius eFace 2025 | Genius | ||
0458:7070 | Genius FaceCam 310 | Genius | [] | |
0458:7071 | Genius iSlim 1300 V2 | Genius | ||
045e:00f8 | Microsoft LifeCam NX-6000 | Microsoft | ||
045e:074a | Microsoft LifeCam VX-500 | Microsoft | ||
045e:075d | Microsoft LifeCam Cinema | Microsoft | [] | |
046d:0802 | Logitech Webcam C200 | Logitech | ||
046d:0804 | Logitech Webcam C250 | Logitech | ||
046d:0805 | Logitech Webcam C300 | Logitech | ||
046d:0807 | Logitech Webcam C500 | Logitech | ||
046d:0808 | Logitech Webcam C600 | Logitech | ||
046d:0809 | Logitech Webcam Pro 9000 | Logitech | ||
046d:080a | Logitech Portable Webcam C200 | Logitech | ||
046d:081d | Logitech Webcam C310 | Logitech | ||
046d:0821 | Logitech Portable Webcam C910 | Logitech | ||
046d:08c1 | Logitech Quickcam Fusion | Logitech | [,] | |
046d:08c2 | Logitech Quickcam Orbit/Sphere MP | Logitech | [,] | |
046d:08c3 | Logitech Quickcam for Notebooks Pro | Logitech | [,] | |
046d:08c5 | Logitech Quickcam Pro 5000 | Logitech | [,] | |
046d:08c6 | Logitech Quickcam OEM Dell Notebook | Logitech | [,] | |
046d:08c7 | Logitech Quickcam OEM Cisco VT Camera II | Logitech | [,] | |
046d:08c9 | Logitech Quickcam Ultra Vision | Logitech | [,] | |
046d:08ca | Logitech Quickcam Fusion (2006 model) | Logitech | [,] | |
046d:08cb | Logitech Quickcam for Notebooks Pro (2006 model) | Logitech | [,] | |
046d:08cc | Logitech Quickcam Orbit/Sphere MP (2006 model) | Logitech | [,] | |
046d:08ce | Logitech Quickcam Pro 5000 (2006 model) | Logitech | [,] | |
046d:0990 |
Logitech Quickcam Pro 9000 Logitech Quickcam Pro 9000 for Business |
Logitech | [] | |
046d:0991 |
Logitech Quickcam Pro for Notebooks (2007 model) Logitech Quickcam Pro for Notebooks for Business |
Logitech | ||
046d:0992 | Logitech Quickcam Communicate Deluxe | Logitech | ||
046d:0994 | Logitech Quickcam Orbit/Sphere AF | Logitech | ||
046d:09a1 |
Logitech Quickcam Communicate MP/S5500 Logitech Quickcam Communicate MP for Business |
Logitech | ||
046d:09a2 | Logitech Quickcam Communicate Deluxe/S7500 | Logitech | ||
046d:09a4 | Logitech Quickcam E 3500 | Logitech | ||
046d:09a5 | Logitech Quickcam 3000 for Business | Logitech | ||
046d:09a6 | Logitech Quickcam Vision Pro | Logitech | ||
046d:09b0 | Acer OrbiCam (Acer notebooks) | Logitech | ||
046d:09b2 | Fujitsu Webcam (Fujitsu-Siemens notebooks) | Logitech | [] | |
046d:09c0 | Quickcam for Dell Notebooks (Dell notebooks) | Logitech | [,] | |
046d:09c1 |
Logitech Quickcam Deluxe for Notebooks Logitech Quickcam Deluxe for Notebooks for Business |
Logitech | [,] | |
0471:0331 | Philips SPC 1300NC | Philips | ||
0471:0332 | Philips SPC 1000NC | Philips | ||
0471:0333 | Philips SPC 620NC | Philips | ||
0471:0334 | Philips SPC 520/525NC | Philips | ||
0471:2034 | Philips SPC 530NC | Philips | ||
0471:2037 | Philips SPC 1330NC | Philips | ||
0471:2038 | Philips SPC 2050NC | Philips | ||
0474:02da | Sanyo Xacti HD2000 | Sanyo Electric | ||
0474:0722 | Sanyo W33SA | Sanyo Electric | ||
0474:0b0e | Sanyo VPC-CA102 | Sanyo Electric | ||
0489:d00a | Traveler DC 8900 | Schenker Inc. | ||
04cb:014c | Fujifilm FinePix A340 | Fujifilm | ||
04cb:016f | Fujifilm FinePix S5500 Zoom | Fujifilm | ||
04cb:0172 | Fujifilm FinePix E550 | Fujifilm | ||
04da:2318 | Panasonic Camcorder NV-GS11/230/250 (webcam mode) | Panasonic | ||
04da:231a | Panasonic Camcorder NV-GS11/230/250 (DV mode) | Panasonic | ||
04da:231d | Panasonic Camcorder NV-GS27/37/320/500 (webcam mode) | Panasonic | ||
04da:231e | Panasonic Camcorder NV-GS27/37/320/500 (DV mode) | Panasonic | ||
04f2:a133 | Chicony USB 2.0 1.3MP UVC Camera (Maxell MaxCam MWC-1300D) | Chicony Electronics | ||
04f2:a13c | HP KQ246AA 8.0MP Deluxe Webcam | Chicony Electronics | ||
04f2:a13e | Panda 10C | Chicony Electronics | ||
04f2:a147 | Medion P86004 2MP Webcam with Headset | Chicony Electronics | ||
04f2:b008 | Chicony USB 2.0 Camera | Chicony Electronics | ||
04f2:b012 | Chicony 1.3M UVC Webcam (Asus G1S notebooks) | Chicony Electronics | [] | |
04f2:b013 | Chicony USB 2.0 Camera (Lenovo 3000 N200 notebooks) | Chicony Electronics | ||
04f2:b015 | Chicony VGA 24fps UVC Webcam (HP notebooks) | Chicony Electronics | ||
04f2:b016 | Chicony VGA 30fps UVC Webcam (HP notebooks) | Chicony Electronics | ||
04f2:b018 | Chicony 2M UVC Webcam (Compal notebooks) | Chicony Electronics | ||
04f2:b021 | ViewSonic 1.3M, USB2.0 Webcam (ViewSonic VX2255WMB screens) | Chicony Electronics | [] | |
04f2:b022 | Gateway USB 2.0 Webcam (One C34xx notebooks) | Chicony Electronics | ||
04f2:b023 | Gateway USB 2.0 Webcam (HP Pavilion DV9560EG notebooks) | Chicony Electronics | ||
04f2:b024 | USB 2.0 Webcam (Packard Bell notebooks) | Chicony Electronics | ||
04f2:b027 | Gateway USB 2.0 Webcam (Gateway T-1616 notebooks) | Chicony Electronics | ||
04f2:b029 | USB 2.0 1.3M UVC WebCam (Asus F6S notebooks) | Chicony Electronics | ||
04f2:b033 | USB 2.0 1.3M UVC WebCam (Asus M70VM notebooks) | Chicony Electronics | ||
04f2:b044 | Acer CrystalEye webcam (Acer Aspire 5535 notebooks) | Chicony Electronics | ||
04f2:b062 | CNF7045 (Packard-Bell notebooks) | Chicony Electronics | ||
04f2:b070 | Toshiba Satellite L350D notebooks | Chicony Electronics | ||
04f2:b071 | CNF7129 (Asus N10JA2 and EeePC 1000HE netbooks, K50IN notebooks) | Chicony Electronics | [,] | |
04f2:b073 | CNF7231 (MSI MS-1722 ID1 notebooks) | Chicony Electronics | ||
04f2:b082 | CKA7227 (HP EliteBook 2530p notebooks) | Chicony Electronics | ||
04f2:b083 | CKF7063 (HP Compaq 6830s notebooks) | Chicony Electronics | ||
04f2:b084 | Unnamed (Acer Aspire One D150) | Chicony Electronics | ||
04f2:b105 | Lenovo EasyCamera (Lenovo IdeaPad Y530 notebooks) | Chicony Electronics | ||
04f2:b106 | CNF7246 (Asus G71V notebooks) | Chicony Electronics | ||
04f2:b107 | CNF7070 (HP 2133 notebooks) | Chicony Electronics | ||
04f2:b1b9 | (Asus U52F notebooks) | Chicony Electronics | [] | |
04f2:b1bb | (Asus N82JV notebooks) | Chicony Electronics | [] | |
04f2:b1be | USB2.0 0.3M UVC WebCam (Asus UL30JT notebooks) | Chicony Electronics | [] | |
04f2:b1e5 | USB2.0 0.3M UVC WebCam (Asus K25JC notebooks) | Chicony Electronics | ||
058f:3820 | Future Boy PC USB Webcam (Alcor Micro AU3820 chipset) | Alcor Micro | ||
05a9:2640 | OmniVision OV2640 (Dell Inspiron 1420/1720 notebooks) | OmniVision | ||
05a9:2643 | OmniVision Monitor Webcam (Dell SP2208WFP) | OmniVision | ||
05a9:2649 | OmniVision Monitor Webcam (Dell SP2309W) | OmniVision | ||
05a9:7670 | OmniVision OV7670 (Dell XPS m1330 notebooks) | OmniVision | ||
05ac:8502 | Apple built-in iSight | Apple | [] | |
05c8:0103 | FO13FF-65 PC-CAM | Foxlink | ||
05ca:18a1 | Integrated Webcam (Dell Studio 1535 notebooks) | Ricoh | ||
05ca:18b7 | Sony Visual Communication Camera (Sony VPCS12J1E notebooks) | Ricoh | ||
064e:a100 | Acer OrbiCam (Acer notebooks) | SuYin | ||
064e:a101 | Acer CrystalEye webcam (Acer notebooks) | SuYin | ||
064e:a102 | Webcam (Acer Timeline 1810T notebooks) | SuYin | ||
064e:a103 | Acer OrbiCam (Acer Aspire 7730ZG-343G32Mn notebooks) | SuYin | ||
064e:a110 | HP Webcam (HP TX2000 notebooks) | SuYin | ||
064e:a111 | USB 2.0 Camera (Datron TW7A notebooks) | SuYin | ||
064e:a116 | USB 2.0 UVC 1.3M WebCam (Asus N20A notebooks) | SuYin | [] | |
064e:a117 | Acer HD Crystal Eye webcam (Acer 4930 notebooks) | SuYin | ||
064e:a118 | Integrated Webcam (Dell Mini 9 netbooks) | SuYin | ||
064e:a136 | USB 2.0 UVC 0.3M Webcam (Asus UL50VT netbooks) | SuYin | ||
064e:a219 | UVC 1.3M Webcam (Acer Aspire 5745G notebooks) | SuYin | ||
064e:d101 | Acer Crystal Eye webcam (Acer Aspire One AOA150-Ab netbooks) | SuYin | ||
064e:e201 | Integrated Webcam (Lenovo Thinkpad Edge 13" notebooks) | SuYin | ||
06f8:3005 | Hercules Dualpix Exchange | Guillemot Corp. | ||
06f8:3007 | Hercules Dualpix Chat and Show | Guillemot Corp. | ||
06f8:300a | Hercules Dualpix Infinite | Guillemot Corp. | ||
06f8:3020 | Hercules Webcam EC300 (Malata PC-81005 netbooks and clones) | Guillemot Corp. | ||
090c:37b3 |
|
Lenovo EasyCamera (Lenovo G560 notebooks) | Silicon Motion | |
090c:b370 | Silicon Motion SM370 | Silicon Motion | ||
090c:b371 | Silicon Motion SM371 | Silicon Motion | ||
093a:2700 |
iSonic W002 A4Tech PK-635K Digital Innovations 1.3MP Webcam |
Pixart Imaging | ||
093a:2800 | DealExtreme USB 2.0 Camera | Pixart Imaging | ||
093a:2900 | Agama V-315 | Pixart Imaging | ||
0ac8:0336 | Elecom UCAM-DLQ30 (Vimicro VC0336 chipset) | Solid Years | ||
0ac8:3313 | TopSpeed USB 2.0 Camera B. | Vimicro | ||
0ac8:332d | Vega USB 2.0 Camera (AOC screens and Techsolo TCA-4900) | Vimicro | ||
0ac8:3330 | Sirius USB 2.0 Camera (Xinyi Y867 LCD Prince) | Vimicro | ||
0ac8:3343 | Sirius USB 2.0 Camera (Fujitsu A6110 notebook) | Vimicro | ||
0ac8:3410 | Venus USB 2.0 Camera (Minoru3D) | Vimicro | [] | |
0ac8:3420 | Venus USB 2.0 Camera (Tevion MD 85872 and Minoru3D) | Vimicro | [] | |
0ac8:3450 | A4Tech PK-333E | A4Tech | ||
0ac8:c302 | Vega USB 2.0 Camera (Samsung Q45 notebook) | Vimicro | ||
0ac8:c303 | Saturn USB 2.0 Camera (Samsung screens) | Vimicro | ||
0ac8:c315 | HP Elite Autofocus Webcam | Vimicro | ||
0ac8:c338 | Namuge 2MP Webcam | Namuga | ||
0c45:62c0 |
Sonix USB 2.0 Camera (Acer Aspire 5050 and HP Pavilion DV6000 notebooks) Trust SpotLight Webcam Pro Centrios 1.3MP auto focus |
Sonix Technology | ||
0c45:62e0 | MSI Starcam Racer | Sonix Technology | ||
0c45:62f1 |
Avatec CMA-L688 HueHD |
Sonix Technology HueHD |
[] | |
0c45:63e0 | Sonix Integrated Webcam (Dell notebooks) | Sonix Technology | ||
0c45:63ea | Laptop Integrated Webcam 2M (Dell Studio 1555 notebooks) | Sonix Technology | ||
0c45:6409 | USB 2.0 Camera (Nokia Booklet 3G netbooks) | Sonix Technology | ||
0c45:6415 | Laptop Integrated Webcam 1.3M (Dell Inspiron 13z notebooks) | Sonix Technology | ||
0e8d:0004 | MediaTek MT6227 phone | MediaTek Inc | ||
13d3:509b | USB 2.0 Camera (Asus EeePC T91 netbooks) | Genesys Logic Technology | ||
13d3:5103 | USB 2.0 Camera (Medion Akoya All-in-one PC) | Sonix Technology | ||
13d3:5130 | USB 2.0 Camera (Asus K40AE and K50IE notebooks) | Sonix Technology | [] | |
145f:013e | Trust Megapixel USB2 WB-5600R | Trust | ||
145f:013f | Trust Megapixel USB2 Auto Focus Webcam | Trust | ||
145f:0142 | Trust WB-6250X Webcam | Trust | ||
145f:015b | Trust WB-8500X Webcam | Trust | ||
174f:5212 | Syntek USB 2.0 UVC PC Camera (HP Spartan notebooks) | Syntek | ||
174f:5215 | Syntek USB 2.0 UVC PC Camera (upcoming UMPC device) | Syntek | ||
174f:5271 | Syntek USB 2.0 UVC PC Camera (upcoming UMPC device) | Syntek | ||
174f:5931 | Syntek USB 2.0 UVC PC Camera (Samsung Q310 notebooks) | Syntek | ||
174f:5a11 | Unknown (Asus A8Sc notebook) | Unknown | ||
174f:5a31 | Sonix USB 2.0 Camera (Asus M50SV notebook) | Sonix | ||
174f:5a35 | Sonix USB 2.0 Camera (Asus F3KE and G2S notebook) | Sonix | [] | |
174f:8a12 | Syntek USB 2.0 UVC PC Camera (Packard Bell Easynote MX52 notebooks) | Syntek | ||
174f:8a33 | Syntek USB 2.0 UVC PC Camera (Asus U3S notebooks) | Syntek | ||
174f:8a34 | Syntek USB 2.0 UVC PC Camera (JAOtech Smart Terminal) | Syntek | ||
177f:0060 | Sweex | WC060 Series HD Webcam | ||
1778:0204 | PEVO corp | IPEVO Point 2 View | ||
17dc:0202 | Miricle 307K | Thermoteknix | ||
17ef:1004 | Integrated Camera (Lenovo Thinkpad T61 notebooks) | Lenovo | ||
17ef:480b | Integrated Camera (Lenovo SL400 and SL500 notebooks) | Lenovo | ||
17ef:481c | Integrated Camera (Lenovo SL510 notebooks) | Lenovo | ||
1871:01f0 | Aveo Technology USB 2.0 Camera | Aveo Technology | ||
1871:0306 | Aveo Technology USB 2.0 Camera | Aveo Technology | ||
18cd:cafe | Pico iMage | Ecamm | ||
18ec:3188 | Manta MM-353 Plako | ArkMicro | ||
18ec:3288 | FSC WebCam V30S | ArkMicro | [] | |
18ec:3290 | USB 2.0 PC Camera (Sabrent WCM-6LNV) | ArkMicro | ||
18ec:3299 | USB 2.0 PC Camera (model number QC3231) | ArkMicro | ||
199e:8101 | DFx 21BU04 | ImagingSource | ||
19ab:1000 | Bodelin ProScope HR | Bodelin | ||
19ab:1020 | Bodelin ProScope HR2 | Bodelin | ||
19ff:0102 | Dynex 1.3MP Webcam | Dynex | ||
1b3b:2951 | MSI StarCam 370i | Unknown | ||
1c4f:3000 | SiGma Micro USB Web Camera | SiGma Micro | ||
1cac:a332 | Kinstone C8 webcam (Vimicro chipset) | Kinstone | ||
1cac:b288 | Kinstone C18 webcam (Sonix chipset) | Kinstone | ||
1e4e:0100 | USB 2.0 Camera | Etron Technologies | [] | |
22b8:6006 | Motorola MOTOROKR E6 | Motorola | ||
5986:0100 | Acer OrbiCam (Acer notebooks) | Bison Electronics | ||
5986:0101 | USB2.0 Camera (Packard Bell Easynote SJ notebooks) | Bison Electronics | ||
5986:0102 | Acer Crystal Eye webcam (Acer TravelMate 7720 notebooks) | Bison Electronics | ||
5986:0200 | Acer OrbiCam (Acer notebooks) | Bison Electronics | ||
5986:0202 | Bison (Fujitsu-Siemens Amilo SI2636 notebooks) | Bison Electronics | ||
5986:0203 | Bison (Advent 4211 and MSI Wind notebooks) | Bison Electronics | ||
5986:0205 | Lenovo EasyCamera (Lenovo N500 and U330 notebooks) | Bison Electronics | [] | |
5986:0241 | Bison (MSI Wind Top AE1900 nettop) | Bison Electronics | ||
eb1a:2571 | eMPIA 27xx based camera (unbranded) | eMPIA Technology | ||
eb1a:2761 | eMPIA 2761 based camera (unbranded) | eMPIA Technology | ||
eb1a:2771 | eMPIA 2771 based camera (Intelbras iPlug notebook) | eMPIA Technology |
1 First and second generation Logitech webcams suffer from firmware bug which make the camera somehow unstable. As the issue is timing-related, the exact impact of the bug on a particular user can't be predicted. If you plan to buy a Logitech webcam, consider getting one of the models not affected by the bug. More information about the issue, including possible workarounds, are available on the QuickCam Team website.
2 Starting at version 2.6.22, the Linux kernel includes a USB audio bug fix which triggers a (possibly identical to the above) bug in first and second generation Logitech webcams. See the for a workaround.
3 This camera module is known to be mounted upside-down in some notebooks. Applications that use the libv4l library should display the video correctly, as libv4l detects upside-down cameras and rotates the image automatically. See Hans de Goede's post on the linux-uvc-devel mailing list for more information. For applications that don't use libv4l, try holding your computer upside-down.
4 iSight webcams require a proprietary firmware that can't be redistributed. Tools to extract the firmware from the MacOS X driver and load it into the device are available at .
5 Video corruption has been noticed when the camera is connected to a USB 1.1 controller. For better performances, connect the camera to a USB 2.0 controller.
6 Some revisions of this model suffer from issues similar to those described in []. Only specific part numbers are affected. See Logitech UVC devices list for more information.
7 Creative Labs released at least two different devices under the Live! Cam Video IM Pro model name. While the one listed in this table is UVC compatible, the other(s) might not be. If in doubt, check the webcam USB product ID.
8 Resolutions below 640x480 might only work at the full 30fps frame rate.
9 This Device ID is known to be used by several different webcams among which at least one is currently not supported by the driver. If you plan to buy this camera make sure it matches the product name.
10 The camera has been reported not to work when connected to a USB 1.1 hub.
11 The HueHD camera claims to have a true 2MP CMOS sensor, but the highest resolution available seems to be 640x480.
12 Recent versions of the device use UVC as a fa?ade. They talk a vendor-specific protocol with a vendor-provided Windows driver, and trying to handle them with the UVC protocol results in low frame rate and corrupted frames at most resolutions. Device BCD 1.00 is known to be affected, BCD 0.02 seems to work.
13 Despite being able to work with lower USB bandwidths, this device always requests the maximum possible bandwidth, even for the MJPEG format. Using one of those cameras in conjunction with another USB device (including the camera internal microphone) will likely fail. You can tell the uvcvideo driver to estimate the required bandwidth instead of trusting the camera by setting the FIX_BANDWIDTH quirk. This will only affect uncompressed formats, and even there there's no guarantee of success.
14 The camera severely underexpose images under low-light conditions when using any frame rate other than the default (which also happens to be the maximum), probably because auto-exposure is only enabled at the default or maximum frame rate. The RESTRICT_FRAME_RATE quirk has been added to the driver to ignore all non-default frame rates.
Linux 2.6.26 and newer includes the Linux UVC driver natively. You will not need to download the driver sources manually unless you want to test a newer version or help with development.
Source code for the Linux UVC kernel driver is maintained in a repository on .
If you are an end-user the easiest way to retrieve an up-to-date driver is to download a tarball from the v4l-dvb repository web browser at . Both tar.gz and tar.bz2 formats are provided. The code includes support for older kernel versions, but might lag behind the uvcvideo git repository by a few days.
Instructions to build and install drivers from the linuxtv.org trees are available on . You can skip the "Retrieve v4l-dvb sources" section if you have downloaded the source tarball.
git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6.git uvcvideo cd uvcvideo git remote add uvcvideo git://linuxtv.org/pinchartl/uvcvideo.git git remote update git checkout -b uvcvideo-master uvcvideo/uvcvideo-next
More information can be found in the .
For developers, the USB Video Class specification is available on the USB Implementers Forum website.