我正在寻找一种方法来提取FLV文件的音频部分。
我正在使用用户的麦克风进行录制,并使用Nellymoser Asao Codec对音频进行编码。这是默认的编解码器,没有办法改变它。
答案 0 :(得分:6)
ffMpeg是要走的路! 它适用于SVN Rev 14277。
我使用的命令是:ffmpeg -i source.flv -nv -f mp3 destination.mp3
GOTCHA :
如果收到以下错误消息:Unsupported audio codec (n)
,
查看音频标签部分中的FLV Spec。
ffMpeg可以解码n = 6(Nellymoser) 但是对于n = 4(Nellymoser 8-kHz单声道)和n = 5(Nellymoser 16-kHz单声道),它不起作用。
要在录制视频流时修复此使用默认麦克风速率,过度ffMpeg无法对其进行解码。
希望这有帮助!
答案 1 :(得分:2)
这不是一个确切的答案,而是我根据业务需求调查FLV文件所做的一些相关说明。
大多数FLV音频都是以MP3格式编码的,这意味着您可以直接从FLV容器中提取它。如果FLV是由从麦克风录制的人创建的,则音频使用Nellymoser Asao编解码器进行编码,该编解码器是专有的(IIRC)。
我会查看libavcodec,它本身可以处理FLV / MP3 / Nellymoser,并且可以让你获得音频。
答案 2 :(得分:1)
我目前正在使用FFmpeg版本SVN-r12665,没有任何问题(控制台版本,没有任何包装库)。从非控制台.NET环境中使用控制台应用程序有一些注意事项,但这一切都非常简单。直接使用libavcodec DLL会更加麻烦。
答案 3 :(得分:0)
我打算推荐这个:http://code.google.com/hosting/takenDown?project=nelly2pcm¬ice=7281。
但它被取消了。很高兴我先得到一份副本: - )
答案 4 :(得分:0)