我去https://packages.debian.org/source/stable/ffmpeg并下载ffmpeg_3.2.14.orig.tar.xz
,然后我配置和制作并安装,最后我成功构建了 ffmpeg。
但是当我使用RTMPS协议时,例如:
ffmpeg -stream_loop -1 -re -i /root/video/xxx.mp4 -acodec copy -vcodec copy -f flv "rtmps://xxx/xxx/xxx"
然后出现错误:
... 未找到协议
但在https://ffmpeg.org/general.html,它说ffmpeg现在支持RTMPS。
那么我在构建 ffmpeg 时是否遗漏了一些东西?
答案1
您没有遗漏任何东西。ffmpeg 使用模块librtsp
来处理所有形式的 RTMP 请求,如 RTMPS。问题是它librtsp
依赖于 SSL/TLS 模块或服务来进行加密 - 但标准 ffmpeg 版本不支持这一点。
因此,RTMPS 请求在使用时会停滞。我仍在研究要使用的正确 SSL/TLS 模块。最重要的是,看起来我们只需要编译我们自己的 ffmpeg,其中包括使用 OpenSSL。
编辑后补充:我在这里说的有些事情并不完全正确。请参阅下面的评论。