Web cam で Streaming
WebカメラをRaspberry pi にこちらのように接続できたので、今度はstreamingに挑戦してみます。How to setup a Raspberry Pi Security Camera Livestreamを参考にさせていただきました。
1.パッケージの準備
まずは、パッケージのアップデートをしておきます。
$ sudo apt-get update $ sudo apt-get upgrade
続いて、Motionをインストールします。これにより、ストリーミングが可能になります。
$ sudo apt-get install motion -y
Webカメラがちゃんと認識されているか確認します。
$ lsusb $ ls /dev/video*
正しく認識されていれば、ビデオデバイスに追加されています。
2.設定の変更
インストールしたWebカメラの詳細を確認しておきます。
$ v4l2-ctl -V
Format Video Capture:
Width/Height : 640/480
Pixel Format : 'JPEG' (JFIF JPEG)
Field : None
Bytes per Line : 640
Size Image : 115790
Colorspace : JPEG
Transfer Function : Default (maps to sRGB)
YCbCr/HSV Encoding: Default (maps to ITU-R 601)
Quantization : Default (maps to Full Range)
Flags :
使用したCreativeのWebカメラでは、このように表示されました。次に`Motionのコンフィギュレーションファイルを変更します。
$ sudo nano /etc/motion/motion.conf
nanoで編集します。次の7点を変更します。nanoでは検索はCtrl+Wで可能です。
# Start in daemon (background) mode and release terminal (default: off) daemon on ... # Restrict stream connections to localhost only (default: on) stream_localhost off ... # Target base directory for pictures and films # Recommended to use absolute path. (Default: current working directory) target_dir /home/pi/Monitor v4l2_palette 15 # Nummer aus der Tabelle davor entnehmen, 15 enstpricht YUYV ... # Image width (pixels). Valid range: Camera dependent, default: 352 width 640 # Image height (pixels). Valid range: Camera dependent, default: 288 height 480 # Maximum number of frames to be captured per second. # Valid range: 2-100. Default: 100 (almost no limit). framerate 10
編集後、Ctrl+O(保存)->Ctrl+X(終了)させます。
次に、デーモンを起動させる準備をします。同じくnanoを使って、内容を変更します。
$ sudo nano /etc/default/motion
次のように、noをyesに変更します。
start_motion_daemon=yes
コンフィギュレーションファイル内で指定したように、モーションをキャプチャしたデータを保存するフォルダを作成します。また、書き込み許可を変更します。
$ mkdir /home/pi/Monitor $ sudo chgrp motion /home/pi/Monitor $ chmod g+rwx /home/pi/Monitor
準備が整いましたので、デーモンを起動します。
$ sudo service motion start
3.ライブストリームのテスト
以上で、設定は完了しました。実際にライブストリームができるか確認しましょう。
ブラウザから:8081ポートへアクセスします。Raspberry piの設定を変更していなければ、http://raspberrypi:8081/ で接続できるはずです。ブラウザの真ん中にこのような画像がストリーミングされると成功です。
