如何使用AVAudioRecorder仅录制最后10秒的音频?

时间:2011-03-01 23:49:43

标签: iphone avaudiorecorder avaudiosession

这可能是一个非常简单的请求,如果是这样,请道歉。

我正在使用AVAudioRecorder录制来自iphone麦克风的声音。目前我将其保存到文件中。只有当用户点击一个按钮然后播放时,录制才会停止。

我的问题是如何才能让录音机只保存最后10秒的声音?

我知道我可能让播放器只能播放最后10秒,但我不希望录制的音频文件变得庞大。我宁愿只记录最后10秒。

1 个答案:

答案 0 :(得分:0)

请勿使用AVAudioRecorder API。它不能做你想要的。使用音频队列API(或可能是RemoteIO音频单元)将样本记录到10秒长的循环缓冲区(大小小于1兆字节)。然后在将样本写入WAVE / RIFF文件头后面的.wav文件时,展开此循环缓冲区。