法国老医生和他“驱动”的摄像头们

Michel Xhaard是一名法国医师(Physician),现年60岁,他从事“三维超声及彩色多普勒成像”方面的研究多年。可是就是这个看起来似乎跟IT没多大关系的人,却写出了一个几乎是“万能”的Linux版摄像头驱动。

故事还要从三年前开始,他买了一对当时能找到的最便宜的摄像头,当然,“Made in China”。可能是因为被低廉的价格吸引,他没有考虑是否可用于Linux的问题就将它们带回了家。

他有一台电脑,使用Windows 2000系统,他把其中一个摄像头插在这台电脑上。但是不久之后,他就发现了问题——“中国制造”的摄像头确实非常便宜,不过这也就意味着很差的产品支持,大家应该见过,这类摄像头上面一般没有官方技术支持网站也没有厂址,更别提驱动升级了。而这个摄像头自带的驱动在内存控制上肯定存在缺陷,至少在W2K系统下,工作十二小时之后需要重启一下才能保持流畅运行系统。

为了避免这种麻烦,他决定使用Linux系统,可以想象,这个系统下摄像头罢工了。他写信给制造商,却没有任何回应,于是他咨询了一些媒体,他们告诉他这个摄像头的芯片组是ZC0301,制造商现在名叫“中星微(Vimicro)”,这个厂商在Linux兼容名单之中。

他想到,那么多使用各种廉价摄像头的人因为驱动问题而困扰,便自己编写了一个Linux下的摄像头驱动。他表示当他想到,在没有任何的企业支持的情况下,已经有235款(软件初始版本支持数量)摄像头因为一个不知名的人的劳动而能够正常运行时,感到突然的惊喜,有种“幕后英雄”的感觉。

随着版本的改进,越来越多的摄像头被添加到支持列表中,目前已经有244款了,详细支持列表请点这里。该驱动本站已经提供下载:

2.6.11以下核心版本的Linux系统 
2.6.11及其以上核心版本的Linux系统

 
部分支持芯片

 

附文:在 Linux 中如何使用中星微芯片的摄像头

目前,这颗DSP在廉价型摄像头市场中以及占据了绝对统治地位。在售的数10款不同品牌、外观的廉价摄像头,无一例外全部是使用这个芯片。一个市场领先的产品却长期无法在 Linux 下使用,这样的状况是不可接受的。

中星微电子的 zc-0301 是一颗廉价摄像头常用的 DSP 控制芯片。这类芯片的摄像头在 Windows 下看驱动,可以看见 Vimicro 以及 301P 等类似字样,在 Linux 下 lsusb 则可看见如下字样:

  idVendor           0x0ac8 Z-Star Microelectronics Corp.
  idProduct          0x301b
  iManufacturer           1 Z-Star Corp.
  iProduct                2 PC Camera

 

这颗芯片也称为 zc-0301/0302。目前,这颗DSP在廉价型摄像头市场中以及占据了绝对统治地位。我在 5.1 节期间去商店调查了一番,抽了3个店铺,数10款不同品牌、外观的廉价摄像头,无一例外全部是使用这个芯片。

然而,该公司对 Linux 并不友好,既不提供驱动,也拒绝公开文档。几年来我曾数度寻找,都未能在 Linux 下用起来。一个市场领先的产品却长期无法在 Linux 下使用,这样的状况是不可接受的。51节期间发布的2个新发布的驱动,都可以驱动这款摄像头,它们是 spca5xx 和 zc030x。

spca5xx

这个驱动的主页位于 http://mxhaard.free.fr/ 。主页显得有些凌乱。驱动下载后, make && make install 即可完成编译与安装。

安装完成后相应的模块被装进了 /lib/modules/ 下面相应版本的内核所在的目录中,所以装载只要执行 modprobe spca5xx ,然后打开 gnomemeeting,此设备就已经出现在了 V4L 设备列表中。如图

"Gnomemeeting 的设备列表截图":按下确定后,就看见了摄像头的画面。

 

相当的顺利,不由让人十分欣喜。不过,图像质量却不如 Windows 下的好。画面显得灰暗,估计是白平衡没有设好。但 gnomemeeting 下不像 Windows MSN Messenger 中,没有”自动白平衡“这个选项。手动调节的话,gnomemeeting 提供的4个滑块,只有”对比度“一项拉动有效果,别的3个都没有任何作用。

尽管画质不佳,但画面速度还可以,更重要的是给人看到了希望。

另外,spca5xx 项目主页下面还提供了一个简单易用的摄像头操作软件,不仅可以用于 spca5xx 驱动,而且可以和所有 V4L 驱动配合,很不错,如图

 

ZC030X

ZC030X 项目从名字上看,就是专门给 Z-Star 30x 系列芯片写的驱动,他们甚至在 sourceforge 注册了个项目,主页位于 http://zc0302.sourceforge.net/ 。

这个项目资料和文档齐全,不过还没有开发完成。至今还没有一个发行版,所有代码都在 CVS 中。网站上有个 beta 版的 tarball,我下载了这个包。

编译和 spca5xx 一样顺利,不过它的脚本没有 spca5xx 完善,并不做安装的工作。有一个 load 脚本用于此内核模块的装载,但装载时忘了先装入 V4L 的模块 videodev 。

此模块装入后即识别出了我的摄像头,并立刻开启之,点亮了上面的绿灯。但是,当我开启 gnomemeeting 打算看看它的画质时,gnomemeeting 冻住了。最终,我也没看到画面。

虽然如此,但是一个对 Linux 不友好的中国公司的产品,终于在 Linux 下有了解决方案,也实在难得,让人至少有了希望。不足的是,最终这项工作仍然是由外国人完成的,而不是在它的原产地中国。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值