使用 ffmpeg 将 HLS 转码/转复用到 RTMP 以进行 nginx 联播不起作用



我想获取一个HLS流并将其转码为RTMP,并使用nginx RTMP模块进行联播。

但是,它不起作用(我将其放置在RTMP模块的应用程序部分中)。

exec ffmpeg -i -re http://<HLS>.m3u8 -acodec aac -vcodec libx264 -f flv rtmp://localhost/live/test;

当我尝试在 VLC 中查看我的 RTMP 流时,它没有加载。我已经尝试了该 ffmpeg 指令的几种变体,但没有一种奏效。有什么建议吗?如果您需要查看更多我的配置文件,我可以提供,但是该服务器以前在通过 Teradek 编码器发送视频时一直工作良好。这种新的皱纹只是不起作用。

编辑:刚刚有一个想法。拥有传入 HLS 流的编解码器信息可能会有所帮助。在这里:

  • 视频编解码器: H264 - MPEG-4 AVC
  • 分辨率: 640x360
  • 帧率:24
  • 解码格式:平面 4:2:0 YUV
  • 音频编解码器: MPEG AAC 音频 (mp4a)
  • 道:立体声
  • 采样率:48000Hz

如果你在终端中运行

ffmpeg -i -re http://<HLS>.m3u8 -acodec aac -vcodec libx264 -f flv rtmp://localhost/live/test;

你能在 VLC 中播放流吗?

最新更新