カメラは Web カメラを購入 のエントリーによると 2005-12-02 に購入した
というものです。
詳しいスペックはこんな感じです。
この Web カメラを Linux が入っているサーバーにつないで、画像をとりこめるようにします。
で、当然メーカーからは Linux 用のドライバが出ているわけはなく、google で探してみると、
というところで作られているドライバを使うとつなげられるようです。
というわけで、ダウンロードして書いてある手順どおりにインストールします。(私は kernel 2.4 系を使っていますが、kernel 2.6 系では手順が違うようです。)
まず最初にカーネルのヘッダをインストールして、コンパイルします。
% sudo apt-get install kernel-headers % cd /usr/src/linux % make dep
次にドライバ本体をダウンロードして普通に make install します。
% wget http://mxhaard.free.fr/spca50x/Download/spca5xx-20060101.tar.gz % tar xfz spca5xx-20060101.tar.gz % cd spca5xx-20060101 % make % sudo make install
インストールに成功すると、lsmod コマンドで spca5xx というモジュールが読み込まれていることが確認できます。::
% lsmod Module Size Used by Tainted: P spca5xx 651868 0 videodev 8576 1 [spca5xx] :
次に、Web カメラを Linux が入っているサーバーにつないで、自動的に認識するか試します。 が、その前に HotPlug 機能(?)をサポートするために murasaki を立ち上げておきます。
% sudo /etc/init.d/murasaki start
dmesg コマンドで確認すると、ちゃんと Web カメラを認識して適切なドライバが読み込まれたようです。
% dmesg : hub.c: new USB device 00:10.1-1, assigned address 3 usb.c: USB device 3 (vend/prod 0xac8/0x301b) is not claimed by any active driver. Linux video capture interface: v1.00 usb.c: registered new driver spca5xx drivers/usb/spca5xx.c: USB SPCA5XX camera found. Type Vimicro Zc301P 0x301b drivers/usb/spca5xx.c: [spca5xx_probe:8435] Camera type JPEG drivers/usb/zc3xx.h: [zc3xx_config:405] Find Sensor PB0330 drivers/usb/spca5xx.c: [spca5xx_getcapability:2217] maxw 640 maxh 480 minw 176 minh 144 drivers/usb/spca5xx.c: spca5xx driver 00.57.08 registered
次に、カメラの認識ができたので、そのカメラを使って画像をとりこもうと思います。
といっても、サーバーなので普段画面はつないでいませんし、Login もしていません。
なので、xawtv とかを使うのはちょっと違う感じです。
そこでドライバと同じところで公開されている SpcaView を使うことにします。
インストールの手順は下記の通りで、make の前に必要とするライブラリ
SDL-devel をインストールしておきます。
% apt-get install SDL-devel % wget http://mxhaard.free.fr/spca50x/Download/spcaview-20051212.tar.gz % tar xfz spcaview-20051212.tar.gz % cd spcaview-20051212 % make % sudo make install
インストールに成功すると、/usr/local/bin に spcaview, spcaserv, spcacat という3つのコマンドがインストールされます。
で、 spcacat コマンドを実行すると画像を取り込んで jpeg 形式に落としてくれそうなんですが、エラーが出てうまくいきません。
なんでだろうと調べてみると、video デバイスへの読み書きが root じゃないとできないからのようです。というわけで video デバイスを誰でも読み書きできるようにしちゃいます。
% sudo chmod a+rw /dev/video0
これで、一般ユーザからでも spcacat コマンドを使って画像がとりこめるようになりました。
下記のコマンドを実行すると、SpcaPict.jpg というファイルに10秒(10000ミリ秒)ごとに画像をとりこんでくれました。
% spcacat -p 10000
あとはこれを定期的にサーバから見えるようにすれば、家の監視ができるようになります。