まずはホストOS側で確認
ホストOSへカメラユーティリティをインストール
$ sudo apt install v4l-utils qv4l2
ホストOSで "USBカメラ認識" を確認
$ ll /dev/video*
/dev/video0
/dev/video1
または、
$ v4l2-ctl --list-devices
USB Live camera: USB Live cam (usb-0000:00:14.0-5.3):
/dev/video0
/dev/video1
ホストOSで "USBカメラ画像" を確認
$ qv4l2
ツールで再生ボタン▶を押して、画像が表示されればOK
つぎにコンテナで確認
コンテナ内へカメラユーティリティをインストール
$ sudo apt install v4l-utils qv4l2
コンテナでUSBカメラ認識を確認
- Tips:認識されない場合:
- udevで認識させる方法
udevをインストール
$ sudo apt install udev
udevルールを下記のように作成
SUBSYSTEM=="usb", ATTR{idVendor}=="<vendor_id>", ATTR{idProduct}=="<product_id>", MODE="0666", GROUP="plugdev"
下記でリロード
$ udevadm control --reload-rules && udevadm trigger
コンテナにUSBカメラを認識させる
いちどdocker stop
して、
再度docker runするときに、
下記オプションを追加してrunする。
"--privileged --device=/dev/video0"