2009年3月20日星期五

One man writes Linux drivers for 235 USB webcams

就是他!这位抽着大烟袋锅子的老家伙;)

这些Made in
China的廉价摄像头,都没有驱动程序,这位Linux爱好者一怒之下写了235个USB摄像头的驱动程序。
最近好像免驱动摄像头比较火爆,但是我对这种摄像头在Linux下的驱动还是担忧哦,这些厂商,基本上不会考虑Linux用户的。
所以,我们要感谢这样的人!
看看支持的列表吧!
最后,让我们记住这个名字, Michel Xhaard


A LONE HOBBYIST

programmer sitting at his home in France is responsible for adding 235 USB
webcams to the list of those supported by Linux. He tells the INQUIRER
about this often unknown and unrecognised achievement.Near three years
ago, I purchased the cheapest USB webcams - actually, pair - I could find
at the time, without taking into consideration whether those webcams
worked with Linux or not. I ran one desktop PC with Win2K and one of the
webcams was plugged to that box. I quickly found out several things:
first, "Made in China" webcams surely are cheap, but that comes at a price
of often having no support web site, no physical address of the
manufacturer, and no updates to its drivers. The Win2K drivers for the
"DigiGR8″ 301P had apparently a memory leak under Win2k, forcing me to
reboot the win2k box on a daily basis. Basically it just stopped working
after a dozen hours of continuous use, and rebooting was the only solution.

I then concluded I had enough with Win2K and decided to install my Linux
distro of choice - back then Sun Microsystem's ill-fated Java Desktop
System for Linux R2. It soon became evident that the device was a
power-sucking brick as far as Linux compatibility was concerned. After
finding the chipset used by the webcam and writing to both the chipset
manufacturer and the webcam builder and receiving no reply whatsoever, I
was on my own. I asked on the newsgroups, and was told that the ZC0301
chipset, manufactured by "Z-Star Corp" -a firm now apparently going by the
name Vimicro Corp- was on the "Linux (in)compatibility list".


All 235 low-cost webcams supported in Linux thanks to… this man

Imagine my surprise when, by pure chance, I found out last week that there
are now Linux drivers for hundreds of those cheap "Made in China" webcams
with strange brand names and a Vimicro chipset inside. The surprise was
more shocking when I realized that drivers for 235 webcams - at the time
of this writing - are the work of a single unknown hero who works from his
home in France, does so with no corporate sponsorship, and what's even
more outrageous, very few people know about the existence of those drivers
and about the person behind them.


Project web page showing some of the supported USB Webcam chipsets


More webcams supported


…near the end of the list.

FC: Who are you and what do you do?
MX: My name is Michel Xhaard, I am a Physician and work in Doppler and
Ultrasound imaging for years. I am now near 60 years old.

FC: Interesting, as it kind of breaks the "young school kit" stereotype of
the Linux advocates. When did you start in this project and why?.
MX: I started working on the "spca50x" project in 2003, when I bought two
webcams for my daughters for Christmas but there was no support under
Linux for those.

FC: So you decided to take matters in your own hands. How did you know
where to start?
MX: After asking the gPhoto team, Till Adam (http://hubbahubba.de/) and
Thomas G. (http://home.tiscali.dk/tomasgc/labtec/) provided me with some
useful help to start. Few weeks later we had full support of the Sunplus
spca504b chipset in Gphoto -userspace picture support- and Spca50x for
video streaming.

FC: Why "GSPCA"? What does it stand for?
MX: "Generic Software Package for Camera Adapters" :)

FC: So how did the ice ball grow to reach today's 253+ webcams supported
with several different chipsets?
MX: Starting with the Sunplus chipset support, I realised that most code
in the core driver could be "shareable" to support several webcam
chipset(s). That is why the "GSPCA" drivers now support over 250 webcams
from different chipset vendors.


Linux application GnomeMeeting (Netmeeting clone, now renamed Ekiga)
detecting USB webcam

FC: May I ask you why you decided to host your project web site on
Free.FR? Don't you think Sourceforge.Net or other such OSS project
repository would be more appropriate? What if Free.FR disappears?. In a
sense, don't you think it's as risky as hosting an OSS project on
Geocities or Tripod?
MX: I like "free.fr" because it is, well, free :) Have you seen the same
content in Geocities.com or tripod.com ??. Check out ftp://ftp.free.fr/pub/
Also, you can be sure that "free.fr" will not disappear. I personally
don't like Sourceforge.net because it can be at times too slow, and
there's a lot of dead projects …

FC: Are you aware that your site is not very well indexed?. I came across
not one but three pages claiming that the ZC0301 was not supported, or
that there was a Linux driver project, which got abandoned (true, but
outdated). Don't you think that having a domain name would help?
MX: Yes.

FC: How do you feel knowing that there are a few really big corporations
with million dollar budgets all peddling Linux, and you do all this
critical work of helping Linux gain webcams support -by the hundreds!-,
yet not a single one of those big firms has decided to formally sponsor
your work?
MX: my work is not "Linux Kernel centred" my goal is to provided video
input support for Linux users, and I am not sure that these big companies
are interested in the end user :).

FC: well, I think they should. Google does, for instance, since they
bought this Nordic firm days ago which does cross-platform video
conferencing software in Java. So if they want everyone to do video
conferencing regardless of OS, drivers suddenly is an issue. OK, you won't
say it but I will: shame on RedHat, Novell, Linspire, and IBM, to name
just a few, for not caring about this. Is there anything you want to add?.
MX: Yes, that despite the old picture you are going to use on the article,
notice that I stopped smoking in June 2006. :) [I'm sure Mr. Ballmer will
be sending you tons of tobacco after reading this article]. :)

FC: Thanks very much Michel for your time, and for the drivers as well. I
see that the ZC0301P chipset used in my "DigiGR8″ webcam is listed, but I
haven't been able to make my webcam work yet, so let's cut the chat and
start the (virtual) hair-pulling exercise.
MX: You're welcome. µ

一位法国人在他自己的房间里,为Linux增添了对235种USB摄像头的支持。他向INQUIRER(一个媒体)述说了这种在开源世界经常都存在的,默默无闻的贡献行为。

大约在三年前,我购买了一些最便宜的USB摄像头,当然,那个时候我并没有想过它是否可以在Linux下面正常使用。当时,我PC上的系统是Windows
2000,我准备在上面使用我的USB摄像头。慢慢地,我发现了一些问题:首先,"Made
in
China",这东西真是相当的便宜,但是,既然是便宜货,也就说明没有支持网站,没有生产厂址,没有升级的驱动程序。Win2k中,针对"DigiGR8"的驱动程序301P似乎有内存泄露的问题,因为它使我的系统经常重启。基本上,每十二小时抽风一次,重启是唯一的办法。

之后,我对Win2k说拜拜了,转而去使用Linux,我选择的是比较稳定的Sun的Java桌面系统。Linux下自然无法避免"驱动程序"这个一直以来都很尴尬的问题。我给这个USB摄像头使用的芯片的制造商写了E-mail,也给组装商写过,但都毫无回应。好吧,我觉得这个问题只有我自己来解决了。我开始在新闻组上求助,他们说这是ZC0301芯片,制造商是Z-Star,它似乎与名列Linux支持列表中的Vimicro有关。

我很吃惊,一个偶然的机会,上周我发现在Linux形形色色的针对"Made in
China"廉价USB摄像头的驱动中,有Vimicro芯片的支持。更令我惊讶的是,在我写这篇文章之际,那个驱动已经可以支持235种USB摄像头
--
这是一名在法国的无名英雄贡献的。没有商业支持,也很少人有知道这些驱动与它们背后的作者。

(以下是采访内容)

-- ./images/2008-11-16_Michel_X.png --

(All 235 low-cost webcams supported in Linux thanks to... this man)

FC:介绍一下你自己吧。
MX:我的名字叫Michel
Xhaard,是一名内科医生,主要研究领域是超声波成像方面。今年60年。

FC:看来Linux的拥护者中不光是年青人些啊。你是什么时候开始这个项目,又是出于什么目的呢?
MX:是在2003年的时候,我开始参与"spca50x"这个项目。那时,我给我的两个女儿买了两个USB摄像头作为圣诞礼物,但是,它们却不能在Linux下使用。

FC:所有,你就决定自己干了?你是怎么知道从哪里开始着手的呢?
MX:是这样的。我在[url=http:www.gphoto.org/]gPhoto[/url]这个项目组得到了很多帮助,特别感谢[url=http:hubbahubba.de/]Till
Adam[/url]
和Thomas G.。几周后,我在gPhoto得到了"Sunplus
spca504b"芯片组的驱动,还有"Spca50x"的。

FC:什么是"GSPCA"?
MX:"Generic Software Package for Camera Adapters" : )

FC:那之后,你是怎么做到对各种各样的芯片组的驱动支持,以至达到了253种之多的呢?
MX:从"Sunplus"这个芯片的驱动开始,我发现驱动程序中的核心部分代码,大部分都可以用来支持其它的USB摄像头芯片,所以,现在的"GSPCA"可以支持250种USB摄像头了。

FC:我能问下,为什么你决定把你的项目主页放到Free.FR?为什么不是Sourceforge.Net或其它的一些开源软件支持机构,我是说,那些机构或许更容易得到资助。Free.FR是什么样的呢?比如说,就像你把一个开源项目放到Geocities或Tripod要承担的风险之类的。
MX:我喜欢"free.fr",它很好,自由 : )
这些你在Geocities.com或tripod.com能看到吗?看看ftp://ftp.free.fr/pub/吧。我坚信"free.fr"会一起做下去的。从我个人而言,我不太喜欢Sourceforge.net,因为它进展得太慢了,而且上面有很多死项目。

FC:你有注意,你的站点在索引,宣传方面做得不是很好吗?我曾经在三个页面见过,说ZC0301在Linux下没有驱动,也许曾经有过想支持ZC0301的项目,但找不到了。你认为如果有一个好点域名,那会给你带来一些帮助吗?
MX:是的。

FC:当你了解到,只有很少的大公司会出钱去支持Linux平台,而你所做的工作却让Linux支持了上百种USB摄像头设备时作何感想?有没有公司愿意资助你的工作呢?
MX:我做的工作并不是一个Linux的关键核心,我只是想为Linux的用户们,在视频输入方面做点事。我不太清楚那些大公司些是否在意这群用户
: )

FC:嗯,我觉得它们应该要在意了。Google是这样的,它前几天才收购了用Java实现跨平台视频会议解决方案的Nordic。所以,如果他们想让所有人在任何操作系统上都能进行视频会议,那驱动程序的问题就不得不考虑了。好吧,也许你不想,但是我要说了,我为RedHat,
Novell, Linspire,
IBM等这些不关心驱动程序问题的公司感觉羞耻。你还有什么需要补充的吗?
MX:是的,那个,你用在这篇文章中的我的照片,事实上,我在2006年6月就戒烟了:
) [我肯定Mr. Ballmer看过这篇文章后会送你很多烟的]: )

FC:非常感谢Michel接受采访,也非常感谢你贡献的那些驱动程序。还有那个,我看见在你的驱动程序的支持列表中有我的"DigiGR8"的ZC0301P芯片,但是我还是没搞定。好了,谈话结束,让我们开始干正事吧。
MX:乐意奉陪。

没有评论: