我想对iPhone中的用户语音应用音频过滤器。 滤波器非常重,需要许多音频样本才能获得所需的质量。我不想实时应用过滤器,但我想要几乎实时的性能。我希望在收集有害样本时以及当用户停止录制以听到(几秒钟后)失真声音时,处理与记录并行发生。 我的问题是: 1.对于此任务,哪个是正确的技术层,例如音响单位? 2.涉及的步骤是什么? 3.使用哪些关键概念和API方法? 我想捕捉用户的声音。哪个是正确的录音设置?如果我的滤镜改变了频率,我应该使用更宽的范围吗? 5.如何为我的过滤器收集必要的样品?我该如何处理音频数据?我的意思是取决于录制设置如何打包数据? 6.如何将最终的录音记录到文件中?
提前致谢!
答案 0 :(得分:0)
如果发现可接受的延迟超过一百毫秒,您可以使用音频队列API,它比使用RemoteIO音频单元更简单,用于捕获和音频播放。您可以在自己的NSOperationQueue中处理缓冲区,作为从音频队列进入的缓冲区,并将处理后的结果保存到文件中,或者只在有空间时保存在内存中。
问题4:如果您的音频滤波器是线性的,那么您将不需要任何更宽的频率范围。如果您正在进行非线性过滤,则所有投注均已关闭。