ロジクール製の古い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 件のコメント:
コメントを投稿