最近毎日の様に庭を荒らしに来る犯人を見つける為に
監視カメラを自作することにした。
コストを掛けず、手持ちの材料で作るので
システム構成は以下のもので作ることにした。
・Webカメラ
使わなくなったWebカメラ(200万画素):
メーカー:BUFFALO
型番 :BSW20KM02H
・PC
OS:ubuntu
M/B:ASUS M4A78 PRO
メモリ:4GB
・ストリーミング配信用ソフト
MJPG-Streamer(フリーソフト)
製作手順は以下の通り
1)OSインストール
2)Webカメラ接続確認
3)ストリーミング配信用ソフトのインストール
4)環境設定
問題がなければこれでいいはず!
1)OSインストール
1)ubuntuをダウンロード
ダウンロードサイト:https://www.ubuntulinux.jp/products/JA-Localized/download
今回はISOイメージ(ubuntu-ja-20.04.1-desktop-amd64.iso)をダウンロードし、インストール用DVDを作成した。
2)Windows10の場合のISOイメージからDVDを作成
1)エクスプローラでダウンロードフォルダを表示
2)ダウンロードしたファイル名にマウスカーソルを当て右クリックし、「プログラムから開く」を選択
3)Windowsディスクイメージ書き込みツールを選択
4)必要な設定をして実行する。(今回はデフォルトのままにした)
3)PCのBIOS設定で起動順の最初にROMドライブを指定
4)インストール作業
ROMドライブへ作成したインストールディスクを入れ、PCを再起動する。
表示に従って設定をすすめる。
トラブルがなければ以上で完了。 Congratulations!
2)Webカメラ接続確認
WebカメラをUSBに差し込み、ターミナルから以下のコマンドを実行。
>lsusb
カメラデバイスが表示されればOK。
念の為、ubuntu付属アプリ「cheese」を起動し、カメラ映像が表示されることを確認。
ここまでで、ハードウェアの準備は完了~ 意外と簡単で順調!!
3)ストリーミング配信用ソフトのインストール
今回はMJPG-Streamerを使用することにした。
インストール作業はターミナルから行う。
始めにmakeとgccをインストールしておく必要がある。
・makeのインストール
>sudo apt install make
・gccのインストール
>sudo apt install build-essential
・MJPG-Streamerのインストール
※ターミナルのカレントパスにインストールされるので注意!
>sudo apt-get install subversion imagemagick libjpeg-dev
>svn checkout svn://svn.code.sf.net/p/mjpg-streamer/code/ mjpg-streamer
>cd mjpg-streamer/mjpg-streamer/
>make
>sudo make install
4)環境設定
ストリーミング通信用のポートを設定する必要がある。
空きポートならどこでも良さそうなので、使用したいポートを適宜開放しておく。
ubuntuの場合、初期状態ではファイアーウォールはdisable状態なのでまずはここから設定することになる。
・ファイアーウォールを有効にする。
>sudo ufw enable
>sudo ufw status ・・・状態確認
・ポートの使用を許可する。
>sudo ufw allow [ポート番号]
念の為ここでOSを再起動しておく。
5)MJPG-Streamer起動
アプリの起動時にはいくつかパラメータを渡す必要がある。
パラメータの詳細については、MJPG-Streamerのヘルプを参照することができる。
取り合えず起動するには、ターミナルで以下の通りに入れてみると起動する。
(カレントパスは ~/mjpg-streamer/mjpg-streamerでないとエラーになる?)
>mjpg_streamer -i "/usr/local/lib/input_uvc.so -y -q 100 -r 1280x720 -f 30" -o "/usr/local/lib/output_http.so -w /usr/local/www -p 8080" -b
次にブラウザで映像を確認してみる。
ブラウザのURL欄に、localhost:[ポート番号]を入力すると以下のページが表示される。
ここでエラー:404が出た場合は、起動時のパラメータで-w以下の所(上記赤字ヵ所)が間違っている可能性がある。
正常に表示されたなら、左列のStreamを選択すると動画が表示される。
以上で、無事ストリーミング配信が完成!
補足:
自宅LANで他のPCでストリーミング受信する場合のURLは
URL:[配信用PCのIPアドレス]:[ポート番号] になる。
※コメント投稿者のブログIDはブログ作成者のみに通知されます