我想制作一个像http://itunes.apple.com/us/app/conga-drums-free/id473562183?mt=8这样的应用程序。
用户可以制作自己的节拍。我想在演奏时或以后记录他们的节拍并保存。然后将其发送到服务器。关于从麦克风录制的例子太多了,但我没有找到任何关于在 IOS 中录制输出声音的内容。
我想制作一个像http://itunes.apple.com/us/app/conga-drums-free/id473562183?mt=8这样的应用程序。
用户可以制作自己的节拍。我想在演奏时或以后记录他们的节拍并保存。然后将其发送到服务器。关于从麦克风录制的例子太多了,但我没有找到任何关于在 IOS 中录制输出声音的内容。
We can do it in 2 ways either using AVfoundation or CoreAudio.
I haven't explored coreAudio but in AVfoundation its pretty simple. using this blog... http://www.techotopia.com/index.php/Recording_Audio_on_an_iPhone_with_AVAudioRecorder_%28iOS_4%29
你将不得不学习处理 CoreAudio。虽然有一个很好的框架设计用于消除痛苦,称为novocaine。使它像(来自框架文档)一样简单
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等框架将数据上传到服务器。