如何将用Red5 / FMS录制的FLV文件转换为MP3?
我正在寻找一种提取FLV文件的音频部分的方法。
我正在使用用户的麦克风录音,并且使用Nellymoser Asao编解码器对音频进行编码。这是默认的编解码器,无法更改。
解决方案
回答
这不是一个确切的答案,但是我针对业务需求调查FLV文件时做了一些相关的说明。
大多数FLV音频以MP3格式编码,这意味着我们可以直接从FLV容器中提取音频。如果FLV是由某人的麦克风录制而成的,则音频将使用专有(IIRC)的Nellymoser Asao编解码器进行编码。
我会检查libavcodec,它可以本地处理FLV / MP3 / Nellymoser,并且应该让我们收听音频。
回答
我本来建议这样做:http://code.google.com/hosting/takenDown?project=nelly2pcm¬ice=7281.
但是它被取下来了。很高兴我首先得到了一份副本:-)
回答
我目前正在为此使用FFmpeg版本SVN-r12665,没有任何问题(控制台版本,没有任何包装库)。在非控制台.NET环境中使用控制台应用程序有一些注意事项,但这非常简单。直接使用libavcodec DLL麻烦得多。
回答
ffMpeg是路要走!
它与SVN Rev 14277一起为我工作。
我使用的命令是:ffmpeg -i source.flv -nv -f mp3 destination.mp3
GOTCHA:
如果我们收到以下错误消息:`不支持的音频编解码器(n),
请在"音频标签"部分中查看FLV规范。
ffMpeg可以解码n = 6(Nellymoser)。
但是,对于n = 4(Nellymoser 8-kHz单声道)和n = 5(Nellymoser 16-kHz单声道),它不起作用。
要解决此问题,请在录制流时使用默认麦克风速率,否则ffMpeg无法解码它们。
希望这可以帮助 !