我正在尝试使用 ffmpeg 将网页流式传输到 Facebook Live 视频。我知道我可以使用 OBS,但我正在尝试从服务器上进行操作,所以我不能使用 OBS。当我预览时它工作正常,但是当我按下“开始直播”时,起初它似乎正在开始,但当它带我进入实时视图时,它只是说视频已经结束。我什至使用 Graph API 检查了视频日志的错误,什么都没有。我正在使用 PhantomJS 将屏幕截图传输到 ffmpeg:
phantomjs phantom.js | ffmpeg -y -c:v mjpeg \
-f image2pipe \
-r 5 -i \
- -c:v libx264 \
-x264-params keyint=5 \
-b:v 1000k -minrate 1000k -maxrate 1000k -bufsize 500k \
-f flv 'rtmp://rtmp-api.facebook.com:80/rtmp/xxxxxxxxxxxxxxxx'
正如我所说,它在 Facebook 上的直播预览中运行良好,但在我上线时立即结束。我添加了比特率选项以尝试按照 Facebook(https://developers.facebook.com/docs/videos/live-video/production-broadcasts)的要求保持恒定的比特率,并且我每 5 帧就有一个关键帧(而不是5fps 的低帧速率),因此也满足了这一要求。
我没有发送任何音频,这会导致问题吗?