MJPGstremerから動画を保存する

ラズパイからラズパイカメラやUSBカメラで動画を配信する方法はよく使用されています。ここではMJPGstreamerで配信している動画を保存します。

ロボットから動画の配信+保存に使います。

MJPG stremerでインターバル撮影

MJPGStreamerでファイルとして保存する機能はありますが、画像として保存されます。コマンドから保存するなら、一秒間に30枚の画像を保存する設定にしておき、後ほど画像から動画にする必要があります。

piフォルダのmjpg-streamer下のmjpg-streamer-experimentに実行ファイルがあるとき以下のコマンドで画像を保存できます。(予め mkdir /home/pi/mjpg-streamer/mjpg-streamer-experimental/pics を実行して、保存先フォルダを作成しておきます)

-d 1000で撮影間隔を設定します。この設定では一秒

動画ファイルとして保存

mjpg streamerだけでは動画として保存はできなさそうなので、配信している動画を読み込んで保存します。

保存にはffmpegを利用します。ffmpegは動画の変換やちょっとした編集に使われます。ここでは、ffmpegの入力にストリーミングを出力先をファイルにすることで保存します。

インストール

実行

カメラを搭載しているラズパイに保存するときのコマンドです。

まずは、mjpgstreamerを実行しておきます。(ここではラズパイカメラからの配信です)

配信をしてから、保存するときに以下のコマンドを実行します。最後のfile.flvがファイル名ですので、お好みで変更してください。終了時はキーボードの[q]を押します。

画質を変更するときはmjpgstreamerの配信側の設定で行います。今回の例では-x 640 -y 480を変更する。Full HD なら -x 1920 -y 1080(このときの動画は4fpsぐらい)

また,ffmpegを実行するところの127.0.0.1をラズパイのIPアドレスに変更すると同じネットワークに接続した他のラズパイに保存できます。(PCにffmpegを入れればパソコンに保存も可能、Widnows PCならBash on Windowsが手っ取り早い) 

もちろん、動画を保存しながらブラウザ上で動画を見られます。

コメントを残す

メールアドレスが公開されることはありません。

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください