Raspberry Pi カメラ映像のストリーミング配信

raspberry pi でよく使われているライブカメラ用ソフトはmotion、mjpg-streamerあたりだろうか。
ペット監視用カメラを作る際にRpiZeroを用いてこれらを使用したが、motionはfpsでなくてカクカク、mjpg-streamerは15fpsぐらいまでは出るが高負荷でチラつきが発生するので使用を断念した。
最終的にはh264ストリーミングが可能なv4l2rtspserverを使用することにした。WindowsMPCで再生して遅延は0.5秒程度、fpsも30で安定しているので満足。マイクがあれば音声も一緒にストリーミング可能だ。(音声不要ならブラウザから操作できるRpi-Web-Cam-Interfaceもオススメ。ほぼリアルタイムでブラウザ上で録画、静止画撮影、動体検知も可能。motion+mjpg-streamerみたいな感じ)
以下v4l2rtspserverインストール手順

・コンパイルに必要なものをインストール(カメラの初期設定は省略)

sudo apt-get install liblivemedia-dev libv4l-dev
sudo apt-get install libasound2-dev (音声ストリーミングする際に必要)

・v4l2rtspserver落としてコンパイル

git clone https://github.com/mpromonet/v4l2rtspserver.git
cd v4l2rtspserver
cmake . && make
・実行する(コマンド一覧)
./v4l2rtspserver/v4l2rtspserver -F 15 -W 1440 -H 1080 -P 8080

以上。

 

・自動起動したい場合はsystemdを使う。

#/etc/systemd/system/v4l2rtspserver.service
[Unit]
Description=v4l2rtspserver rtsp streaming server
After=network.target
[Service]
ExecStartPre=/usr/bin/v4l2-ctl --set-ctrl horizontal_flip=0,vertical_flip=0,video_bitrate=10000000,brightness=50,white_balance_auto_preset=7,saturation=30
ExecStart=/home/pi/v4l2rtspserver/v4l2rtspserver -F 15 -W 1440 -H 1080 -P 8080
Type=simple
User=root
Group=video
Restart=always
[Install]
WantedBy=multi-user.target

※上記例では起動前にExecStartPreでv4l2の設定を行っている。v4l2-ctl –list-ctrlsで設定可能な項目を確認できる。輝度、コントラスト、画面の回転、ビットレートなどの指定ができる。

・サービス登録

sudo systemctl enable v4l2rtspserver.service

関連記事:

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です