代码之家  ›  专栏  ›  技术社区  ›  Demi

在cocoa中从mac捕获音频并保存到文件的代码示例?

  •  18
  • Demi  · 技术社区  · 16 年前

    我将在一个小应用程序上工作,该应用程序从Mac的音频队列中捕获音频,并需要将其以某种合理的音频格式保存到磁盘上。

    是否有人有他们可以共享的合适的样本代码(cocoa/objective-c)?

    我特别需要捕获正在传递给内置输出设备的音频,以便对其进行录制。有什么见解吗?到目前为止,答案是有帮助的,但并没有帮助我理解如何捕获输出数据,输入源的不可知性。

    2 回复  |  直到 7 年前
        1
  •  9
  •   James T Snell    7 年前

    在Mac OS X中使用音频涉及到与核心音频的接口。要快速浏览,请查看 Core Audio Overview .

    您需要与AUHAL接口来执行输入和输出;a technical note 存在,详细说明执行此操作所需的步骤。这个代码似乎通常是用C++编写的,因为这是在 SimplePlayThru demo .

    这不包括捕获音频输入所需的实际步骤。但是,这些链接应该为您提供足够的示例代码,以便开始与输入设备进行交互。如果我遇到他们,我会在这个答案中发布更多链接。


    看一看 /Developer/Example/CoreAudio/Services/AudioFileTools . 具体来说,看看 afrecord.cpp . 不可否认,这不是可可 本身 可可本身似乎没有任何特定的录音能力。如果你想与C++文件接口,你可能需要在SimplePlayThru写一些类似的目标C++。

        2
  •  3
  •   Thomas Zoechling    16 年前

    Ulli Kusterres有一个很好的示例代码 website
    科科阿德夫也有一个 article 关于那个话题。页面底部的源代码使用QuickTimes序列抓取器API。我会用核心音频。