将图像流式传输到 RTMP 并持续特定时长

将图像流式传输到 RTMP 并持续特定时长

有没有办法使用 ffmpeg 将图像(如视频)流式传输到 rtmp 服务器。但不同之处在于它应该播放特定的时长。

例如,在 rtmp 服务器(youtube)上显示图像约 2 分钟。然后停止流式传输?

答案1

在 ffmpeg 命令行中使用-re -t 120,120 秒后停止编码。

另一种解决方案是从脚本启动命令并在两分钟后终止进程。这可以通过异步启动进程、记住进程 ID 并在休眠两分钟后终止它来实现。或者使用timeout公用事业来自 GNU coreutils。

注意: -re当您想要直接流式传输到 RTMP 或 UDP 时,是必需的。因为如果没有此标志,ffmpeg 将尽可能快地渲染输出,从而提前停止流。当您想从图片创建输出视频文件时,-re和 一起-t 120意味着编码在 120 秒后停止。

相关内容