如何使用afconvert从.caf格式转换为.mp3格式?

时间:2009-01-12 13:03:46

标签: iphone core-audio

我正在使用afconvert命令行实用程序将音频文件从.caf转换为.mp3格式。我使用过afconvert

afconvert -f 'MPG3 ' -d '.mp3' -v input.caf output.mp3 

但是这给了我以下错误:

Input file: input.caf, 19008 frames
Error: ExtAudioFileSetProperty ('cfmt') failed ('fmt?')

我也尝试了以下内容:

afconvert -f 'MPG3 ' -d LEI32@44100 -v input.caf  output.mp3

这也给了我错误:

Input file: min.caf, 19008 frames
Error: ExtAudioFileCreateWithURL failed ('fmt?')

我无法弄清楚为什么会出错。

有人可以指导我解决这个问题吗?

先谢谢。

3 个答案:

答案 0 :(得分:22)

你应该检查一下,

afconvert -f mp4f -d aac -b 128000   input.caf output2.mp4

这样您就可以将CAF文件转换为MPEG-4格式。

阅读:除了内置于iTunes中的Mac OS X,Apple不提供任何形式的MP3编码器。 来源:http://lists.apple.com/archives/coreaudio-api/2005/Jul/msg00182.html

如果你需要编码mp3,你应该使用第三方编码器 Mp3编码器示例:lame encoder或ffmpeg :)祝你好运。

答案 1 :(得分:6)

您可以安装LAME编码器并使用它。

如果您有Mac端口(如果没有 - 只需搜索并安装),只需运行:

sudo port install lame

首先,你必须将caf转换为wav(我没有机会检查LAME是否支持caf作为输入,但它确实支持wav)。 然后运行

lame --alt-preset cbr 128 sample.wav

这将创建具有128 kbps恒定比特率的mp3文件。 LAME有很多设置,您可以根据需要选择mp3参数。

答案 2 :(得分:-5)

试试这个:

afconvert -f mp4f -d aac -v input.caf output.mp3

我知道这不完全是mp3,但是我无法解决你遇到的同样的错误,所以我尝试了mp4f并且它有效。