VirtualBox内Linux上でのmotionによるWebカメラ使用

Mac内でVBox実行、その中のLubuntuでmotionを実行、WebカメラMacのUSBポートに刺して、Lubuntu上で録画とかをしたい。


環境
[PC]
Mac mini(macOS Sierra 10.12.2)  > VirtualBox(5.1.12)
  > Lubuntu(16.04 LTS) > motion(Version 3.2.12+git20140228)
[Webカメラ]
Logicool HD Webcam C270
インストール

この辺を参考にさせてもらってmotionのインストール&設定

Motion の導入手順 ~ インストールと基本設定(CentOS 6.4 6.5)

起動
sudo motion
ブラウザでプレビュー

下のURLでカメラで撮ってる画像が見れる はず

http://localhost:8081

が、残念ながらちゃんと表示されない。
灰色画面で『UNABLE TO OPEN VIDEO DEVICE』という表示が出ちゃった。
f:id:pyoropyoro:20170114230324j:plain
Webカメラの撮影中を示すLEDも光ってない。

灰色画面の原因と直し方
  • 原因

原因は環境によって色々あるらしいけど、今回はVirtualBoxのUSBがUSB1.0設定になっていたためだった。

  • 直し方

1. VirtualBoxの設定からUSBの設定を確認する。

対象の仮想マシンを選んで
[設定] > ポート > USB

USBが『USB 1.1』になっているとアウト
f:id:pyoropyoro:20170114231853p:plain

2. 変更したいけど、1.1以外が無効になっている場合、VirtualBoxのエクステンションパックをインストールする必要がある。

・VitualBox Extension Packダウンロード
 →VirtualBoxの公式サイトからダウンロード
 →Downloads – Oracle VM VirtualBox

f:id:pyoropyoro:20170114234142p:plain

・VitualBox Extension Packインストール
 →この辺を参考に

エクステンションパックの導入 | VirtualBox Mania

USB1.1以外も選択可能になる。

3. 対象の仮想マシンのUSBを3.0に変更
f:id:pyoropyoro:20170114233026p:plain

USB2.0でも大丈夫そうに思うけど、なぜか3.0じゃないとNGだった

4. 再度VBox起動、motion実行、ブラウザから確認

f:id:pyoropyoro:20170114233211j:plain

⇒ちゃんと映りました。