我正尝试使用此命令通过ffmpeg通过UDP将外部HLS(m3u8)链接编码为MPEG-TS:
ffmpeg -re -i http://example.com/index400.m3u8 -vcodec copy -acodec copy -f mpegts udp://127.0.0.1:10000?pkt_size=1316
目前我正在我在Centos服务器上打开的终端内直接执行命令。但是,经过一段时间(易变)后,我收到以下错误:
无法解析主机名example.com:名称解析暂时失败
[hls,applehttp @ 0x349b420]无法重新加载播放列表0
我的问题是,如何在bash脚本或upstart或...中运行此命令,以便每当它意外停止时,它会自动重启。 我不想使用像monit那样的第三方,请明确写下带有新手注释的脚本,我对此并不熟悉。
答案 0 :(得分:-1)
原来比我想象的要简单。为了将来参考,这就是我在终端中所做的:
创建一个新脚本:
vi test.sh
插入以下代码:
#!/bin/bash
while :
do
echo `ffmpeg -re -i http://example.com/index400.m3u8 -vcodec copy -acodec copy -f mpegts udp://127.0.0.1:10000?pkt_size=1316`
done
按 Esc W Q 输入保存并退出。
执行以下命令:
chmod +x test.sh
./test.sh
然后,ffmpeg
会在发生错误时自动重启。