You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

FFmpeg多UDP流2×2拼接输出后部分流停止播放的问题排查求助

FFmpeg多UDP流2×2拼接输出后部分流停止播放的问题排查求助

我目前在网上找了些FFmpeg的示例,用它把四个UDP输入流拼成2×2的马赛克画面,输出到另一个UDP地址。刚启动的时候四个流都能正常播放,但过个几秒,输入流1、2、3就停了,只有流4能一直正常跑。有没有大佬能帮我分析下原因,怎么让四个流都稳定播放下去?

我用的命令是这样的:

ffmpeg -i "udp://239.86.0.2:3030" -i "udp://239.86.0.3:3030" -i "udp://239.86.0.4:3030" -i "udp://239.86.0.5:3030" -f lavfi -i anullsrc -filter_complex "[0:v] setpts=PTS-STARTPTS, scale=960x540,setsar=1[upperleft];[1:v] setpts=PTS-STARTPTS, scale=960x540,setsar=1[upperright];[2:v] setpts=PTS-STARTPTS, scale=960x540,setsar=1[bottomleft];[3:v] setpts=PTS-STARTPTS, scale=960x540,setsar=1[bottomright];[upperleft][upperright]hstack[topbase];[bottomleft][bottomright]hstack[bottombase];[topbase][bottombase]vstack[base]" -map [base] -map 4 -f mpegts udp://239.1.1.1:1234

我自己初步想到的几个排查点,但还没验证出结果:

  • 会不会是UDP流的丢包问题?前三个流的网络稳定性不如第四个?但我暂时没法直接测每个流的丢包率
  • FFmpeg的输入缓冲设置是不是不够?有没有可能前三个流的缓冲没跟上,导致被判定为超时中断了?
  • 滤镜链里的setpts设置会不会有问题?会不会同步逻辑导致某些流被丢弃?

有没有大佬能给点具体的调试方向或者修改建议?比如要不要加什么参数来强制保持输入流的连接,或者调整滤镜的同步策略?

备注:内容来源于stack exchange,提问作者Daniel Rodriguez

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.22 15:58:14