Windows の UDP ポートで ffmpeg mpegts ストリームを開くことができません

Windows の UDP ポートで ffmpeg mpegts ストリームを開くことができません

ffmpeg からのストリームをビデオ プレーヤーに表示しようとしています。

もともとはカメラ入力でしたが、問題はビデオファイルやスクリーンキャプチャでも同じです。私が使用しているコードはffmpeg -i INPUT -f mpegts udp://host:port

この質問の目的のために、私は次のように答えることにします:

ffmpeg -f dshow -i video="CAMERA-NAME" -preset ultrafast -vcodec libx264 -tune zerolatency -b 900k -f mpegts udp://10.1.0.102:1234

macOS と Ubuntu では、mplayer または VLC で実行したりffplay udp://10.1.0.102:1234開いたりできます。udp://10.1.0.102:1234

Windows では、ffplay から取得していますnan : 0.000 fd= 0 aq= 0KB vq= 0KB sq= 0B f=0/0。ポートは開いており、ファイアウォールはオフになっており、Wireshark でパケット トラフィックが確認できます。

何が問題なのか、何か考えはありますか?

[アップデート]

試しに使ってみようかという馬鹿げたアイデアがあったのですlocalhost:1234が、うまくいきました。疑問はまだ残っています。なぜ他の IP はうまくいかないのでしょうか?

答え1

以下の例のように、使用するインターフェースを指定する必要がある場合があります。

ffmpeg -f dshow -i video="CAMERA-NAME" -preset ultrafast -c:v libx264 -tune zerolatency \
-b 900k -f mpegts "udp://239.0.0.2:1234?pkt_size=1316&localaddr=192.168.1.109"

関連情報