RasPiに同じ種類のWEBカメラをつないで運用した時のメモ
実際のところ
複数の同じカメラ
複数の場所を一つのRasPiで見ないといけない状況が発生。
まずは装置と、手っ取り早く調達できて価格も安いロジクールさんのC270nを二台運用しました。
さてここで問題。
違う種類なら兎も角、同じ種類だとどう区別するのかという問題が。
$ lsusb Bus 002 Device 001: ID 1d6b:0003 Linux Foundation 3.0 root hub Bus 001 Device 005: ID 046d:0825 Logitech, Inc. Webcam C270 Bus 001 Device 007: ID 046d:0825 Logitech, Inc. Webcam C270 Bus 001 Device 002: ID 2109:3431 VIA Labs, Inc. Hub Bus 001 Device 001: ID 1d6b:0002 Linux Foundation 2.0 root hub
lsusbではデバイス名で判定できません。
v4l-utilのご登場
USBカメラも以前の記事で少し触れたようにv4l(Video for Linux)で管理されているためv4l-utilさんにご登場願います。
まだ入れてない人は以下のコマンドで。
$ sudo apt install v4l-utils
では早速デバイスのリストを出してみると……
$ sudo v4l2-ctl --list-devices bcm2835-codec-decode (platform:bcm2835-codec): /dev/video10 /dev/video11 /dev/video12 /dev/media1 bcm2835-isp (platform:bcm2835-isp): /dev/video13 /dev/video14 /dev/video15 /dev/video16 /dev/media0 C270 HD WEBCAM (usb-0000:01:00.0-1.2): /dev/video0 /dev/video1 /dev/media2 C270 HD WEBCAM (usb-0000:01:00.0-1.4): /dev/video2 /dev/video3 /dev/media3
C270nが二台、しかしポートが違うところで接続されているのが確認できます。
fswebcam,imvをつかった各カメラの試験
シェルコマンド大好きオヂさんなので、撮影試験にも可能な限りCLI系コマンドを使います。
$ sudo apt install imv fswebcam
これを機に、Windows側のXサーバーも VcXsrvに変更。
筐体上の問題
同じカメラで運用する場合、やはり区別は接続されているポートでしか判定できません。
起動チェックで毎回抜き差しのような不毛な問題が起こる前に、USBのコネクタ手前で刺し間違えを防止する治具を作ってやるのが手っ取り早いでしょう。