录制音频iOS

时间:2012-02-29 05:22:58

标签: ios core-audio

如何使用iOS录制音频?不是来自麦克风的输入录音,但我希望能够在我的应用中捕捉/录制当前播放的音频?

所以,例如我开始录制会话,以及只在我的应用程序中播放的任何声音,我想将其录制到文件中?

我已经对此进行了研究,但我对使用什么感到困惑,因为看起来混合音频框架会导致问题?

我只是希望能够捕获并保存在我的应用程序中播放的音频。

4 个答案:

答案 0 :(得分:4)

好吧,如果你想要记录你的应用产生的音频,那么这是非常有可能的。

不可能的是录制通过扬声器输出的所有音频。 (编辑:我只是想澄清一下,没有办法记录其他应用程序产生的音频输出。你只能录制你制作的音频样本。)

如果要录制应用的音频输出,则必须使用远程io音频设备(http://atastypixel.com/blog/using-remoteio-audio-unit/)。

您需要做的就是在填充后复制播放缓冲区。

离)

 memcpy(void *dest, ioData->mBuffers[0].mData, int amount_of_bytes);

答案 1 :(得分:2)

这可以通过包装Core Audio公共实用程序文件CAAudioUnitOutputCapturer来实现 http://developer.apple.com/library/mac/#samplecode/CoreAudioUtilityClasses/Introduction/Intro.html

请参阅我在这个问题中对包装类的回复。 Properly use Objective C++

答案 2 :(得分:1)

没有用于从iOS应用程序捕获或记录所有通用音频输出的公共API。

答案 3 :(得分:1)

查看Apple的MixerHostAudio示例应用程序。这是开始学习音频单元的好方法。一旦掌握了这一点,就会有很多在线教程谈论添加录音。