录制audioiOS
如何使用iOS录制audio? 不是来自麦克风的input录音,但我希望能够捕捉/logging我的应用程序中当前播放的audio?
所以,例如,我开始录制会话,以及任何只在我的应用程序中播放的声音,我想将其logging到文件中?
我已经做了这方面的研究,但我混淆了什么使用,因为它看起来像混音audio框架可能会导致问题?
我只是想要能够捕捉和保存我的应用程序中的audio播放。
那么如果你只是想logging你的应用程序产生的audio,那么是的,这是非常有可能的。
不可能的是logging通过扬声器输出的所有audio。 (编辑:我只是想澄清,没有办法logging其他应用程序产生的audio输出,你只能logging你制作的audio样本)。
如果要录制应用程序的audio输出,则必须使用远程ioaudio单元(http://atastypixel.com/blog/using-remoteio-audio-unit/)。
您真正需要做的就是在填充播放缓冲区之后复制播放缓冲区。
EX)
memcpy(void *dest, ioData->mBuffers[0].mData, int amount_of_bytes);
这是可能的包装核心audio公用程序文件CAAudioUnitOutputCapturer http://developer.apple.com/library/mac/#samplecode/CoreAudioUtilityClasses/Introduction/Intro.html
看到我在这个问题的包装类的答复。 正确使用Objective C ++
没有公开的API来捕获或loggingiOS应用程序的所有通用audio输出。
查看来自Apple的MixerHostAudio示例应用程序。 它是开始学习audio单元的好方法。 一旦你掌握了这一点,网上有很多教程讨论添加录音。