在IOS中记录样本



我想制作一个类似http://itunes.apple.com/us/app/conga-drums-free/id473562183?mt=8。

用户可以制作自己的节拍。我想在播放时或以后录制他们的节拍并保存。然后将其发送到服务器。有太多关于从麦克风录制的例子,但我没有发现任何关于在IOS中录制输出声音的东西。

您必须学会处理CoreAudio。尽管有一个很好的框架被设计用来减轻这种疼痛,那就是利多卡因。让它变得像(从框架文档中)一样简单

Novocaine *audioManager = [Novocaine audioManager];
[audioManager setInputBlock:^(float *newAudio, UInt32 numSamples, UInt32 numChannels) {
    // Now you're getting audio from the microphone every 20 milliseconds or so. How's that for easy?
    // Audio comes in interleaved, so,
    // if numChannels = 2, newAudio[0] is channel 1, newAudio[1] is channel 2, newAudio[2] is channel 1, etc.
}];

如果您对更精细的控制感兴趣,那么查看框架的源代码将是一个很好的开端。一旦您获得了数据,您就可以使用像AFNetworking这样的框架将数据上传到服务器。

我们可以使用AVfoundation或CoreAudio通过两种方式实现。

我还没有探索过coreAudio,但在AVfoundation中它非常简单。正在使用此博客。。。http://www.techotopia.com/index.php/Recording_Audio_on_an_iPhone_with_AVAudioRecorder_%28iOS_4%29

最新更新