2009/07/28

Debian lennyなALIXに古いQuickCamを接続してみる

ロジクール製の古いQuickCamが出てきたので、USBで接続してWebカメラを作ってみました。

最近のUSBカメラは共通のUSB Video Class (UVC)に対応しているので、パッケージなどに”ドライバレス”などと書かれています。 QuickCamに限らず昔のUSBカメラはそれぞれに対応するドライバが必要です。

手元のUbuntu 8.04 LTSに接続したところ簡単に認識してJPGファイルを作成する事ができました。 いろいろなユーテリティがありますが、10秒間隔でJPGファイルを生成したいと思えば、次のような方法があります。

$ sudo apt-get install vgrabbj
$ sudo vgrabbj -d /dev/video0 -l 10 -f ~/public_html/webcam.jpg

"vgrabbj"はforkしてバックグラウンドで10秒間隔でwebcam.jpgを更新してくれます。 こんな感じでwebcam.jpgを定期的に確認すれば簡単にWebで静止画をみる事ができます。 もちろんストリーミングさせるツールもあります。

ALIXでつまずいたところ

内部で使われている制御用ICに依存する独自のドライバが必要というのは知っていましたが、 Ubuntuで簡単に認識したのでvgrabbjを入れれば使えるだろうぐらいに思っていました。

まぁ、video4linuxのモジュールは入っていてUVC対応カメラであれば良かったのですが、結局パッケージを探してきて入れる必要があって、情報を手に入れるのに手間取りました。 使っているkernelは486用なので、対応するモジュールも486用にします。 Linux lenny 2.6.26-2-486 #1 Sun Jun 21 04:15:19 UTC 2009 i586 GNU/Linux

$ sudo apt-get install gspca-modules-2.6-486

後はUSBケーブルを差し直せば"/dev/video0"デバイスが新しく作成されるので、 各種ユーティリティが使えます。

dmesgでは次のようなメッセージが表示されていました。

[ 1501.500629] Linux video capture interface: v2.00
[ 1501.527229] gspca: USB GSPCA camera found.(ZC3XX) 
[ 1501.527513] gspca: [spca5xx_probe:4275] Camera type JPEG 
[ 1502.376030] gspca: [zc3xx_config:669] Find Sensor HV7131R(c)
[ 1502.389448] gspca: [spca5xx_getcapability:1249] maxw 640 maxh 480 minw 160 minh 120
[ 1502.395204] usbcore: registered new interface driver gspca
[ 1502.402978] gspca: gspca driver 01.00.20 registered

昔のWebカメラ用だから30万画素ぐらいしか解像度がないんだよなぁ。 最近のドライバレスなUSBカメラも準備しておこう。 Ubuntuの方を使ってリアルタイムで読み込めばCUDAのお題にもなりそうだし。

0 件のコメント: