FFMPEG stream_loop with Overlay

时间:2016-11-12 15:02:36

标签: ffmpeg

使用FFMPEG进行直播 我想在输入流上做无限循环 使用-stream_loop -1选项,但不起作用。我该怎么办?

-re -stream_loop -1 -i "Background.mp4" -f image2pipe -i pipe:0 -filter_complex "[0:v][1:v] overlay=0:0" -acodec aac -ar 44100 -b:a 128k -pix_fmt yuv420p -profile:v main -s 1280x720 -bufsize 8000k -maxrate 4000k -deinterlace -vcodec libx264 -preset veryfast -g 30 -r 30 -f flv "URL"

1 个答案:

答案 0 :(得分:0)

我的建议是你使用bash脚本来循环脚本,使它永远重复。为此,您需要创建一个文件并为其命名,例如: Loop.sh

打开文件并将其格式化为:

#!/bin/bash
while true
do
    ffmpeg "Background.mp4" -f image2pipe -i pipe:0 -filter_complex "[0:v][1:v] overlay=0:0" -acodec aac -ar 44100 -b:a 128k -pix_fmt yuv420p -profile:v main -s 1280x720 -bufsize 8000k -maxrate 4000k -deinterlace -vcodec libx264 -preset veryfast -g 30 -r 30 -f flv "URL"
done

保存文件并使用终端(假设您使用的是Linux或Mac)使其可执行。 cd进入目录并使用命令

sudo chmod +x Loop.sh

现在您只需输入./Loop.sh即可运行该脚本,它将永久执行(直到您停止它为止)。

while true等同于while 1=1之类的任何内容或导致true的任何变量组合。