見出し画像

今更だがRaspberry Pi 2でカメラストリーミング[2]

棚の中に眠っていたRaspberry Pi 2が、勿体ないので、カメラストリーミングサーバーとして動かしてみようとしています。
前回USBカメラからの入力映像が、Raspberry Pi のディスプレイ上で表示できることまで確認しました。

今回いよいよ、RTSP(Real-Time Streaming Protocol)サーバーを立てて、ストリーミングサーバーにしてみます。
今回は、Raspberry Pi にディスプレイ環境が立ち上がっている必要はないので、Raspberry Pi の電源を入れてSSH経由でリモート接続し操作しました。

1.gst-rtsp-serverインストール


ソースコードを取得してビルド。
最新ではなく、gst-rtsp-server-1.14.4を取得してみる。

2.ビルド

ビルドして使えるようにする。

$ wget https://gstreamer.freedesktop.org/src/gst-rtsp-server/gst-rtsp-server-1.14.4.tar.xz
$ tar -xf gst-rtsp-server-1.14.4.tar.xz
$ cd gst-rtsp-server-1.14.4
$ ./configure
$ make
$ sudo make install
$ sudo ldconfig

3.動作確認:カラーバー配信

exampleフォルダが生成されている。その中の"test-launch"で、カラーバーを配信するテストをすることができる。

$ cd example
$ ./test-launch '( videotestsrc ! x264enc ! rtph264pay name=pay0 pt=96 )'

stream ready at rtsp://127.0.0.1:8554/test
と表示されるとOK。

PC側で配信を見てみる。
VLCを起動し、rtsp://<Raspberry pi のIPアドレス>:8554/test を配信元として設定する。

「再生」ボタンを押すと、こうなる。

4.カメラからの動画配信

ではカメラからの動画を配信してみる。

手持ちのカメラの動画はMJPEG形式。
いろいろ試してみた。結局以下に落ち着いた。

$ ./test-launch ' v4l2src device=/dev/video0 ! image/jpeg,width=320,height=240,framerate=10/1 ! jpegdec ! videorate ! video/x-raw,framerate=10/1 ! x264enc tune=zerolatency ! h264parse ! rtph264pay name=pay0 pt=96'

VLCで見てみると、無事、映像が見れた。
(↓は動画の一コマをスクリーンショットしたものだが)

5.最後に

今回、一番うれしかった事。
Raspberry Pi 2 modeBでも、まだまだ使える!

まだまだ眠っている古いRaspberry Pi 達、ESP達がいるので、使い道を考えるぞー!

この記事が気に入ったらサポートをしてみませんか?