mjpg-streamerでライブストリーミング

自宅でただサーバーをただのウェブサーバーとして起動しっぱなしにしているのもつまらないので、防犯がてらウェブカメラでストリーミング配信をできるようにしてみた。

OS:Ubuntu 12.04 LTS(Kernel3.2.0)
ウェブカメラ:UCAM-DLA200H(エレコム製)
はこにUVC(USB Video Drive Class)対応と書いてあるので信じることに。

ウェブカメラはヤマダ電機で1480円で購入。気にしていなかったが、USBバスパワーで動くため別途電源は不要。

さて、買ってから約3週間ほど放置していたがお盆休みの余暇を利用してインストールしてみることに。

Kernelが2.6のどこからかドライバがカーネルドライバとして組み込まれているとの事で、挿しただけで認識した様子。

kenji@r61:/usr/local/www$ dmesg | grep uvc
[ 11.663620] uvcvideo: Found UVC 1.00 device Venus USB2.0 Camera (056e:700a)
[ 11.665917] usbcore: registered new interface driver uvcvideo

kenji@r61:/usr/local/www$ lsmod | grep uvc
uvcvideo 72627 0
videodev 98259 1 uvcvideo

ストリーミング用として使用するソフトウェアはmjpg-streamerというものが一般的らしい。なぜかUbuntuのパッケージとして用意されていないので、ソースからビルトすることになる。ソースはSorceforgeからダウンロードしたものを使用したところ、

mjpg_streamer.c:27:28: 致命的エラー: linux/videodev.h: そのようなファイルやディレクトリはありません

となり色々なサイトでレポートされているようにSubversionでソースをダウンロードし、ビルトすることにする。Subversionはaptでインストール。

makeするとconvertが無いと言われる。これは、apt-get install imagemagickとすることで解決。うまくmakeが通り、make install。

起動は、

sudo mjpg_streamer -o “/usr/local/lib/output_http.so -w /usr/local/www”

としたところ、ブラウザでアクセスすると

404: Not Found!
Invalid input plugin number

と言われてしまったので、起動を以下のように訂正したところストリーミング映像が出てきた。

sudo mjpg_streamer -i “/usr/local/lib/input_uvc.so” -o “/usr/local/lib/output_http.so -w /usr/local/www”

起動すると沢山Invalid argumentと出るがとりあえず動作の確認が行えた。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください