【CentOS7】mjpg-streamerのインストール
前提
- OSインストール済み
- ネットワークの設定済み
- パッケージのアップデート済み
インストール環境
- CentOSは7.3 Minimal
- mjpg-streamerはリビジョン182
作業1【必要なパッケージのインストール】
下記パッケージを適宜インストール(依存関係含む)
- gcc(コンパイル時に使用)
- subversion(ソースコードのダウンロードに使用)
- glibc(ライブラリ)
- libjpeg(ライブラリ
- libjpeg-devel(ライブラリ)
- v4l-utils(ライブラリとUVCのツール)
作業2【mjpg-streamerのmake】
ソースコードのダウンロード
$ svn co https://svn.code.sf.net/p/mjpg-streamer/code/mjpg-streamer mjpg-streamer
上の手順でmjpg-streamerというディレクトリが作られるので、cdする。
cdしたらおもむろにmake。
$ make
おそらく↑で必要なパッケージはインストールされているはずだが、エラーが出たら適宜必要なものを入れて解決。
作業3【起動スクリプトの作成、自動起動設定】
サンプルとしてstart.shが用意されている。
./mjpg_streamer -i "./input_uvc.so" -o "./output_http.so -w ./www"
なにも編集せずにstart.shを実行すると↑の内容で動作する。
詳細は割愛するが、-iでインプットの指定、-oでアウトプットの指定、-wでディレクトリの指定。
-iの ” ” 内に-dでビデオデバイスの指定をする必要がある。
複数カメラを使用したい場合はこことポート番号を変えてあげれば可能。
また、インプットの設定でフレームレートや解像度の指定も可能。
スクリプトA.sh
./mjpg_streamer -i "/input_uvc.so -f 10 -r 800*600 -d /dev/video0"
~~~
スクリプトB.sh
./mjpg_streamer -i "/input_uvc.so -f 10 -r 800*600 -d /dev/video1"
補足:コマンドの最後に -b 入れておくとバックグラウンドで動作するようになる。
##### ./www -p $PORT" -b
適宜、環境に合わせてシェルを用意し、自動起動の設定に進む。
下記の自動起動の設定は、rc.localファイルにシェルを追記する方法をとる。
が、現在は推奨されてないっぽい。(systemdでサービス化するのがベター?)↓
(例)rc.local
~~~
sh /root/mjpg-streamer/start.sh
ここまでで最低限動いている気がする…。