我目前在 iPhone 上使用音频队列来录制和播放音频。
我想做的是录制一些音频,允许用户暂停录制队列,并在音频中来回搜索以选择他们可以再次开始录制的位置。
通过使播放 AudioQueueBuffer 大小足够小,我已经克服了寻找问题,以便播放音频队列回调以允许用户在来回调整滑块时使用滑块控件听到音频的速率发生。
我想我可以通过设置我从音频录制队列回调调用的 AudioFileWritePackets 函数的 inStartingPacket 参数来实现在新位置的录制。
问题是这只会在先前录制的音频上插入音频。文件长度显然不会改变,所以如果用户倒退并录制比以前更少的音频,旧音频在新录制的音频结束后仍然保留。
有没有一种方法可以让 AudioFile 在用户开始插入新音频时截断,是否有其他方法可以从插入位置开始删除旧音频,或者有更好的方法来完成这项任务?
谢谢