Raspberry Pi & Python 開発ブログ ☆彡

Raspberry PiとPythonの基本的な使い方をわかりやすく解説。初心者、入門者必見!!

Raspberry Piでストリーミング映像を配信する。Mjpg-Streamerで超簡単!

video stream

この記事の内容はRaspberry Pi 4と3の両方で動作確認済みです

ブログ管理者のP.Hです!

今回はカメラを使って、ストリーミング映像を配信する方法を紹介したいと思います。WebカメラのようにRaspberry Piを使うことができ、遠隔地の状況を確認することができます。

それでは、ビデオストリーミングの手順を紹介します。

mjpg-streamerのインストール

mjpg-streamerというソフトウェアをインストールします。このソフトウェアを使うと簡単にストリーミング映像を見ることができます。Raspberry Piにはいろいろなソフトウェアが公開されているので便利ですね。

まず、下記コマンドでmjpg-streamerに必要なモジュールをインストールします。

$ sudo apt-get install build-essential imagemagick libv4l-dev libjpeg-dev cmake -y

mjpgというフォルダを作り、mjpg-streamerのソースコードをダウンロードします。

$ mkdir ~/mjpg
$ cd ~/mjpg
$ git clone https://github.com/jacksonliam/mjpg-streamer.git
$ cd mjpg-streamer/mjpg-streamer-experimental

makeして、mjpg-streamerをインストールします。

$ make
$ sudo make install

ストリーミング再生

makeファイルがあるフォルダ(mjpg-streamer-experimental)内にstart.shというシェルスクリプトがあります。下記コマンドでstart.shを実行して、mjpg-streamerを起動します。

$ bash start.sh

ブラウザでストリーミング映像を見る

ブラウザからストリーミングの映像を見ることができます。ブラウザのアドレスバーに"http://[Raspbery PiのIPアドレス]:8080" と入力して、ストリーミング映像が表示されるか確認します。

ストリーミング映像の設定

上記のstart.shを開いて、コードを見てください。いろいろなオプションの設定方法が記載してありますので、参考にしてstart.shを編集してみてください。使いそうなものだけ、説明しておきます。

export LD_LIBRARY_PATH="$(pwd)"
./mjpg_streamer -i "./input_uvc.so -f 30 -r 1920x1080" -o "./output_http.so -w ./www --port 8081 -c test:password"
  • フレームレート : -f 設定値
  • 解像度 : -r 設定値
  • ポート : --port ポート番号
  • ログインID、パスワード : -c ログインID:パスワード

上記の場合は、フレームレート:30、解像度1920x1080、ポート番号:8081の設定になります。ブラウザのアドレスバーに"http://[Raspbery PiのIPアドレス]:8081"と入力すると、IDとパスワードを聞かれますので、ID:test、パスワード:passwordと入力してください。
下記写真のようにStreamタブ(赤丸)をクリックすると、ストリーミング映像を見ることができます。 また、青丸の"here"をクリックするとストリーミング映像のみの画面が表示されます。

mjpg-streamer web

これで、ビデオストリーミングができるようになりました。遠隔監視が出来そうです。また、下記ブログで簡単に写真や動画を撮影する方法を紹介していますので、あわせてご覧ください。

www.raspberrypirulo.net