2017-04-24 431 views
2

我有一个音频流,使用FFmpeg的即时消息流式传输到YouTube直播视频与图片作为背景,下面的命令,FFMPEG到YouTube直播视频

ffmpeg -loop 1 -i x.jpg -i http://xxx.xxx.xxx.xxxx:5305/stream -c:a aac -s 1280x720 -ab 128k -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/xxxxx

但即时得到在YouTube上,

以下消息

YouTube is not receiving enough video to maintain smooth streaming. As such, viewers will experience buffering 这会导致输出流中的缓冲。

任何人都知道如何解决它?

帮助,将不胜感激。

+0

添加'-g 50'来定期插入关键帧。 – Mulvya

回答

2

所以我有一个解决方案。

ffmpeg -re -loop 1 -framerate 2 -i test1.jpg -i https://xxxxxxx:8443/live.ogg -c:a aac -s 2560x1440 -ab 128k -maxrate 2048k -bufsize 2048k -framerate 30 -g 60 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/xxxxxxxxxxxxx 

重要的部分是

-re

在其中具有缓冲问题涉及的开始。
然后

-framerate 2

的 “-loop 1” 和图像之间。这工作,我得到一个很好的干净的高质量流不缓冲。

希望这对你有所帮助!

编辑1

ffmpeg -re -loop 1 -framerate 2 -i test1.jpg -i https://xxxxxxxxxxx:8443/live.ogg -c:a aac -s 2560x1440 -ab 128k -vcodec libx264 -pix_fmt yuv420p -maxrate 2048k -bufsize 2048k -framerate 30 -g 2 -strict experimental -f flv rtmp://a.rtmp.youtube.com/live2/xxxxxxxxxxxxx 

好了,所以这个更新版本应该可以解决几乎所有问题的流。

-vcodec libx264 -pix_fmt YUV420P

改为H.264法典修正这个问题

-g 2

该固定最终缓冲问题。

+0

你的ffmpeg是什么版本? – moeiscool

+0

@moeiscool应该在当前版本上工作,我还没有测试! – Jonese1234

+0

我的问题是,我试过3.3(一个静态构建)和3.2.4(ppa)..这是在Ubuntu 17顺便说一句......它拒绝工作。当我启动FFMPEG时,它会让YouTube上的绿灯亮起约20秒,然后变成灰色,没有任何东西显示出来。最终它会说离线...将视频上传到我的频道,可能会将我的所有用户全部爆出很多没有:P – moeiscool