我使用以下ffmpeg命令将屏幕流媒体共享到Facebook。

facebook - Facebook实时视频只能在流式传输Mac屏幕时预览-LMLPHP

ffmpeg -f avfoundation -r 10 -video_size 352x288 -i "0" -c:v h264 -f flv
"rtmp://rtmp-api.facebook.com:80/rtmp/1269140699772419?ds=1&a=AaYsXcYcdHQrrrUF"


然后我可以看到视频预览场景
facebook - Facebook实时视频只能在流式传输Mac屏幕时预览-LMLPHP

但是,一旦我按下“ Go Live”按钮,然后转到我的Facebook页面,我会发现一条信息,说我是Live Now。当我按下“播放按钮”时,只有黑色场景持续1到2秒钟,并且视频结束。

facebook - Facebook实时视频只能在流式传输Mac屏幕时预览-LMLPHP

还有一件奇怪的事,当我结束直播时可以播放视频。刷新页面时,我可以找到一个帖子,说我是Live,该帖子的视频可以成功播放。

任何人都知道为什么在预览和结束直播时可以观看视频,但没有确切的直播时间吗?

[更新]

在直播期间,如果按播放按钮,则只有1到2秒的黑色场景,直播结束。
facebook - Facebook实时视频只能在流式传输Mac屏幕时预览-LMLPHP

但是,如果我再次按视频帧,则会弹出另一个模式,那么我可以看到实时流。是Facebook错误吗?
facebook - Facebook实时视频只能在流式传输Mac屏幕时预览-LMLPHP

最佳答案

我也遇到了同样的问题。就我而言,我正在遍历图像以制作视频并将其流式传输到Facebook,而不发送任何音频流。

根据facebook的准则,直播视频流中必须包含音频流,否则直播视频将被视为结束。

确保要流式传输到fb的输入文件包含音频流。万一它没有任何音频流,您仍然可以将其与其他音频流一起使用,然后按“运行”按钮后就可以观看视频。

ffmpeg -loop 1 -re -y -f image2 -i "image_path" -i "silent_audio_or_any_other_audio" -codec:a aac -ac 1 -ar 44100 -b:a 128k -pix_fmt yuv420p -profile:v high -s 1280x720 -vb 400k -maxrate 400k -minrate 400k -bufsize 600k -deinterlace -vcodec libx264 -preset veryfast -g 30 -r 30 -strict -2 -f flv "rtmp_link"

我仍在使用此代码,这对我来说非常合适:)

希望这可以帮助某人。

07-27 13:42