Ffmpegを使用してrtmpトランスコーダーサーバーを起動しようとしています。入力としてudpMPEG-TSストリームを受信し、それをトランスコードします。そして、URLへのrtmp出力を生成します。これは、ユーザーがrtmpストリームを受信して再生するためにアクセスできます。これらはすべてLANで実行され、すべてのユーザーが出力にアクセスすることが期待されています。
1)まず、URLがどこを指しているのかわかりません。システムのIPとオプションのポートを指定するだけで十分ですか?プログラムがそのポートでリッスンする必要がありますか?
2)URLでストリームを再生するにはどうすればよいですか?
IP = 10.1.1.229のLinuxubuntuマシンを使用しており、次のURLでマルチキャストストリームをトランスコードしたい:udp://@224.10.1.1:2001
。
これは、入力ストリームをトランスコードし、rtmp url "rtmp://10.1.1.229:2020"を生成するために使用されるコマンドです。
ffmpeg -y -f mpegts -i "udp://@224.10.1.1:2001" -re -vcodec libx264 -maxrate 700k -r 25 -s 640x360 -deinterlace -acodec libfaac -ab 64k -ac 1 -ar 44100 -f flv "rtmp://10.1.1.229:2020"
これが私がrtmpストリームを再生しようとしているコマンドです:
ffplay rtmp://10.1.1.229:2020
どんなガイダンスも役に立ちます。ありがとうございました。
ffmpegには(まだ)RTMPサーバー機能がありません。 rtmp URLに出力するときは、ストリームを出力します。これは、RTMPサーバー(Wowzaなど)の入力フィードです。簡単に言えば、ffmpegは実際のRTMPサーバーに入力を供給し、入力はそのRTMPサーバーによってブロードキャストされます。