ffmpeg 重新流式传输到另一个 RTMP

ffmpeg 重新流式传输到另一个 RTMP

如何防止 ffmpeg 重新流式传输崩溃?我在 .BAT 文件中运行以下命令:

:loop
ffmpeg -i "RTMP://IPADDRESS:1935/LIVE/STREAMNAME.STREAM pageUrl=http://URL.COM swfurl=http://domain.com/licensed/player-licensed.swf live=1" -isync  -vcodec copy -b:v 400k -acodec copy -b:a 128000 -ar 32000 -f flv "rtmp://IP:1935/LIVE/CHANNELNAME"
goto loop

除了我为了演示目的而放置的链接之外,这行代码还有什么问题吗?

它总是崩溃——与 DTS 编解码器有关。也许我应该使用除“复制”之外的其他音频编解码器?

答案1

#!/bin/bash

until ffmpeg -i http://serverIP:host/user/pass/stream -c:v libx264 -preset medium -maxrate 3500k -bufsize 6000k -pix_fmt yuv420p -g 50 -c:a aac -b:a 160k -ac 2 -ar 44100 -f flv rtmp://serverIP:port/live/name;do

echo "restarting ffmpeg command"
sleep 1
done

编写一个 bash 脚本,重新启动 ffmpeg 指令。运行nohup ./batch-file.sh > /dev/null 2>&1 &

相关内容