2016年3月30日水曜日

玄箱用にストリーミングソフト mjpg-streamer をパッケージビルドしました

玄箱の初代と HG 用にストリーミング・ソフトウェアの mjpg-streamer (powerpc) をビルドしました。使用にあたっては、自己責任でおねがいします。なにせ初めてのパッケージ・ビルドですから、どんな不具合が発生するか解りません。

経緯

無線 LAN ルータのファームウェアの OpenWrt でウェブカメラの画像を配信するために mjpg-streamer や motion を使っていました。同じことを玄箱でも行おうとしたとき、motion は Debian 公式パッケージが存在していましたが、mjpg-streamer は存在していませんでした。そこで独自にビルドをする必要がありました。ネット上を検索すると mjpg-streamer をビルドする方法は数多く見つけられましたが、玄箱用のパッケージとしては見つけられませんでした。そこで今回、自分自身の学習のためにパッケージ・ビルドにチャレンジしてパッケージを作ってみました。その成果物のパッケージを公開します。

ダウンロード

下記の URL から mjpg-streamer のパッケージをダウンロードしてください。
mjpg-streamer_182-2_powerpc.deb
https://drive.google.com/file/d/0B5QdaY5lu2e3M3ZoUnVMRHdaT28/view?usp=sharing

mjpg-streamer のインストール

事前に依存関係にあるパッケージ(libjpeg-dev)をインストールしてください。なお libjpeg-dev はダミーパッケージとなっており、実際には libjpeg62-turbo-dev がインストールされます。
# apt-get update
# apt-get install libjpeg-dev

mjpg-streamer のインストール
# dpkg -i mjpg-streamer_182-2_powerpc.deb

(参考)アンインストールの場合
# dpkg -r mjpg-streamer

mjpg-streamer の起動

ウェブカメラに Logicool QuickCam Orbit AF/Sphere AF を使用した場合、次のコマンドで動作しました。設定情報は、ネット上を検索してください。ここでは画像サイズを 640x480 として、ポート 8080 へ出力するようにしています。ウェブカメラによって、オプションの "-y" の設定値を変更する必要があります。停止させる場合には Ctrl + C で終了します。
# mjpg_streamer -i "/usr/local/lib/input_uvc.so -f 1 -y YUYV -r 640x480 -d /dev/video0" -o "/usr/local/lib/output_http.so -w /usr/local/www -p 8080"

起動させたまま、端末を開放させたいときには、末尾にアンパサンド "&" を追加して実行してください。
# mjpg_streamer -i "/usr/local/lib/input_uvc.so -f 1 -y YUYV -r 640x480 -d /dev/video0" -o "/usr/local/lib/output_http.so -w /usr/local/www -p 8080" &

動作検証に使用した Logicool QuickCam Orbit AF/Sphere AF です。

ウェブカメラの制御ソフトウェア(uvcdynctrl)

首振りをする UVC ウェブカメラを使用している場合、制御するソフトウェアもインストールしておくと便利です。一緒にいくつかの依存関係にあるソフトウェアもインストールされます。
# apt-get update
# apt-get install uvcdynctrl

インストール直後は上手く動作してくれないようです。一度、玄箱を再起動させて、操作してください。

制御できる内容は次のコマンドで確認できます。
# uvcdynctrl -c -v

制御例

次のとおり制御例を示します。末尾の数字は動作のステップの大きさです。
パンの初期化
# uvcdynctrl -d video0 -s 'Pan Reset' 256

右向きにパン(ハイフンとスペースに注意)
# uvcdynctrl -d video0 -s 'Pan (relative)' -- -1024

左向きにパン
# uvcdynctrl -d video0 -s 'Pan (relative)' -- 1024

チルトの初期化
# uvcdynctrl -d video0 -s 'Tilt Reset' 256

上向きにチルト(ハイフンとスペースに注意)
# uvcdynctrl -d video0 -s 'Tilt (relative)' -- -1024

下向きにチルト
# uvcdynctrl -d video0 -s 'Tilt (relative)' -- 1024

0 件のコメント:

コメントを投稿