问题场景:
我正在尝试用FFmpeg在网络上捕获多个多播摄像机。在接收到流后,我发现运行的每个FFmpeg实例都在接收和解码去往其他实例的数据包。这导致每个实例的视频在正确的图像和所有其他相机的图像之间闪烁。每个摄像头都使用相同的目的UDP端口,我相信这就是它发生的原因。
示例
过程1
ffmpeg -rtsp_transport udp_multicast -i "rtsp://192.168.1.1/stream1m" test1.mp4
过程2
ffmpeg -rtsp_transport udp_multicast -i "rtsp://192.168.1.2/stream1m" test2.mp4
预期输出
每个MP4只包含一个非中断流
实际输出
如上所述
我浏览了FFmpeg的文档,以及大量的"谷歌搜索",但我只能在使用rtp://或udp://输入时找到一种过滤传入数据包的方法。这在这个应用程序中是不可能的,因为我想将RTSP用于它提供的SDP。
非常感谢您的帮助!
我使用不同的多播IP和端口实现了这一点。诀窍在于端口——即使IP不同,它们在流端也必须不同。
这似乎是ffmpeg的一个问题。