UbuntuがRTPストリームを受信できないのはなぜですか?

UbuntuがRTPストリームを受信できないのはなぜですか?

私はコンピュータAでffmpegを使ってrtpを介してデスクトップをストリーミングしています。これは私のffmpegコードです。

ffmpeg -f x11grab -framerate 25 -video_size 1920x1080 -i :1.0 -c:v libx264 -preset fast -pix_fmt bgr0 -b:v 3M -g 25 -an -f rtp_mpegts rtp://230.0.0.1:5005

コンピュータAのvlcで「rtp://@230.0.0.1:5005」のライブストリームを再生できます。ただし、VLCで「rtp://@230.0.0.1:5005」を開こうとすると、コンピュータAと同じネットワーク上のコンピュータBのストリームを再生できません。

http経由でmp4ファイルを転送すると、コンピュータBで再生できます。 http ストリーミングの場合は、VLC -> メディア -> ストリーミング -> (mp4 ファイルを追加) に進み、A のポート 8080 から HTTP にストリーミングします。次に、マシンBのVLCで「http://serverip:portnumber」を使用します。

私がここで何を間違っているのか?

答え1

UbuntuがRTPストリームを受信できないのはなぜですか?

これはマルチキャストアドレスを使用しており、230.0.0.1現在の設定には2つのホスト間にマルチキャストパスがないためです。

したがって、この問題を解決する現在の方法の1つは、ユニキャスト転送を使用することです。230.0.0.1視聴したいホストのIPアドレスを変更するだけです。

ffmpeg -f x11grab -framerate 25 -video_size 1920x1080 -i :1.0 -c:v libx264 -preset fast -pix_fmt bgr0 -b:v 3M -g 25 -an -f rtp_mpegts rtp://a.b.c.d:5005

a.b.c.dUbuntuホストのIPアドレスはどこにありますか?

その後、Ubuntuホストで次のことができます。

vlc rtp://@:5005

関連情報