在iPhone上混合声音文件

时间:2010-04-16 14:07:03

标签: iphone audio mixing

我有几个wav文件,可能还有一个mp3,我想混合到一个wav或mp3文件中。我正在使用C / C ++ / Obj-C(iPhone)。我真的没有这方面的经验。如果有人能给我一些指示,我将非常感激。

基本上我想要做的是类似的事情,例如Audacity可以做的,但是以编程方式。是不是有一个声音库,您可以轻松打开音频文件并将它们“粘贴”到一个新的定义位置?在哪里混合是你不必担心的?

感谢。

3 个答案:

答案 0 :(得分:3)

混合线性PCM的两个声音缓冲区只需将每个样本值加在一起,当然也要确保不会溢出。通常,您会在缓冲区中使用浮点值,因此问题是当您返回到文件时。您还应该在iPhone上提供CoreAudio,它具有以不同格式打开/读取/写入声音文件的所有方法。我认为iPhone上还有一个更高级别的api,不在Mac上,查看苹果文档。

答案 1 :(得分:2)

如果您专门寻找Audacity的功能,它会使用PortAudio(看起来像MIT许可证)。也许你可以尝试使用它?

答案 2 :(得分:0)

阅读Multimedia support作为起点,它包含很多信息。这是一个摘录:

有三种方法可以在iphone上混合音频:

  • 音频单元框架
    • 多声道混音器 - “允许您将多个音频流混合到单个流”
    • 3D混音器单元 - “让您混合多个音频流,指定立体声输出平移,操纵采样率”
  • OpenAl用于游戏开发

同时检查以下示例:iPhoneMultichannelMixerTest

  

创建两个输入总线,每个总线都有输入音量控制。还提供整体混音器输出音量控制,并且可以启用或禁用每个总线