ffmpeg mp4ファイルをrtmpでストリーム配信する

nginx-rtmpをテストするとき、OBSを使用しているのですが、もっとお手軽に試せないか調べてみました。
ffmpegでmp4ファイルを読み取り、rtmp配信するのが良さそうです。


コマンド



調べた結果、こんなコマンドになりました。

ffmpeg -re -stream_loop -1 -i [mp4ファイル] -vcodec libx264 -vprofile baseline -g 30 -acodec aac -strict -2 -f flv [rtmpサーバーの配信ポイント]



「-re」でソースのフレームレートをエミュレート
※これを指定しないと一気に処理されます。

「-stream_loop -1」でずっと繰り返し

「-i」で使用するmp4ファイルを指定

[-f flv」で出力先のrtmpサーバーを指定します。


コマンドの実例はこのようになります。

ffmpeg -re -stream_loop -1 -i sample.mp4 -vcodec libx264 -vprofile baseline -g 30 -acodec aac -strict -2 -f flv rtmp://192.168.11.102/live/livekey



https://pixabay.com/ja/videos/
こちらから動画ファイルをお借りしました。

コマンド実行後、vlcの[メディア]-[ネットワークストリームを開く]で「rtmp://192.168.11.102/live/livekey」を指定。
mp4ファイルの内容が配信されていることが確認できました。

a39_01.png



【参考URL】
Setting up HLS live streaming server using NGINX + nginx-rtmp-module on Ubuntu
ffmpegでrtmp配信を行う
最新ffmpegのオプションまとめ
FFMPEG で無限入力が可能に
https://pixabay.com/ja/videos/
関連記事

コメント

プロフィール

Author:symfo
blog形式だと探しにくいので、まとめサイト作成中です。
https://symfo.web.fc2.com/

PR

検索フォーム

月別アーカイブ