如何将实时RTMP视频转换为实时mp3 Icecast流

时间:2015-04-16 17:39:44

标签: audio rtmp icecast

我有RTMP直播视频和音频。 我可以从RTMP获取ogg音频直播流并将其转换为Icecast2并使用JPlayer在我的网站上获取它。 现在我使用这样的命令:

/usr/local/bin/ffmpeg -re -i rtmp://192.168.22.12/live/live1 \
-vn -acodec libvorbis -b:a 48k -f ogg - | oggfwd -p -d "" \
-g "" -u "" localhost 8000 somepass live2

然后我使用Icecast2流式传输现场音频,但它采用的是OGG格式,因此移动设备无法播放(Android设备在开始播放前有30秒的时间滞后,iOS设备不会播放;我想玩它。)

如何在发送到Icecast2之前将其转码为mp3?

1 个答案:

答案 0 :(得分:3)

如果你使用的是(非常)最新版本,你可以使用ffmpeg。 要测试您的ffmpeg是否能够流式传输到Icecast,请执行以下操作:

ffmpeg -protocols -v 0 | grep icecast

如果这返回“icecast”,那么你可以做以下事情:

ffmpeg -re -i rtmp://192.168.22.12/live/live1 -vn \
       -codec:a libmp3lame -b:a 64k -f mp3 \
       -content_type audio/mpeg \
       icecast://source:pass@example.com:8000/mountpoint.mp3

如果您已配置任何用户名,请将source替换为特定用户名,否则将其保留为来源。其他事情应该是显而易见的。