我有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?
答案 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
替换为特定用户名,否则将其保留为来源。其他事情应该是显而易见的。