将.wav文件转换为.mp3

时间:2011-02-02 07:54:00

标签: iphone objective-c audio core-audio

我想将以.wav文件格式保存的音频文件转换为.mp3格式的文件。

请建议我如何通过Objective C编码实现这一目标。

提前致谢。

5 个答案:

答案 0 :(得分:6)

您必须使用LAME才能执行此操作。由于专利问题,Apple不提供MP3编码器。

答案 1 :(得分:3)

查看AVFoundation框架,尤其是AVAssetWriter类。它非常强大,但需要一些时间来消化。 Chris Adamson在decoding songs from the iPod library to PCM上有一篇很好的博客文章。这正是你想要的另一种方式,但这是一个良好的开端。

答案 2 :(得分:2)

我认为AVFoundation中没有API。我想如果您使用AVAssetWritter,我可以编写* .m4a(AVFileTypeAppleM4A)文件* .acc,我相信。 (ACC比mp3更轻,更好,所以是mp3的一个很好的替代品)

如果你使用CoreAudio可能会有很多工作但是应该可以编写mp3。我问过如何使用coreaudio在2年前的apple-list中读取mp3,我得到的代码使得speakHere示例应用程序能够读取* .mp3;)

也许,您感兴趣:Newbie trying to play mp3 files instead wav files

答案 3 :(得分:0)

CoreAudio框架有一个名为Extended Audio File Services的API,可以从一种格式转换为另一种格式。见这里:http://developer.apple.com/library/ios/#samplecode/iPhoneExtAudioFileConvertTest/Introduction/Intro.html#//apple_ref/doc/uid/DTS40009222-Intro-DontLinkElementID_2

答案 4 :(得分:0)

关于sbooth关于LAME的回答,在StackOverflow上有一个单独的帖子,它为您提供了为库创建.a所需的内容: How can I compile lame as static library(.a) for armv6 and armv7 of iPhone?

完成后,请按照LAME的文档进行设置。