如果网络源关闭,ffmpeg 保持连接

Vik*_*ras 7 ffmpeg

我知道这个问题已经被问了无数次,但也没有得到无数次像样的回答。

即使源不可用,如何使 ffmpeg 继续工作?VLC 等到连接再次恢复,为什么 ffmepg 没有这样的功能?

我试过:

-reconnect 1 -reconnect_at_eof 1 -reconnect_streamed 1 -reconnect_delay_max 4962 -timeout 2000000000
Run Code Online (Sandbox Code Playgroud)

但没有一个按预期工作。FFmpeg 仅在几秒钟后退出。如果连接中断,我不想重新启动 ffmpeg,因为我需要输出 HLS 片段可用。重新启动 ffmpeg 会使片段从头开始覆盖。

sli*_*bka 6

FFmpeg 命令行参数对位置敏感,因此您可能没有将它们添加到正确的位置。尝试将这些选项放在输入之前。例子:

ffmpeg -reconnect 1 -reconnect_at_eof 1 -reconnect_streamed 1 -reconnect_delay_max 2 -i input -c:v copy -c:a copy outputfile.m3u8
Run Code Online (Sandbox Code Playgroud)

'reconnect_delay_max' 范围是 [0 - 4294]

它对我有用。