我正在研究一个允许用户录制某些音频的iOS应用程序。使用AVAudioRecorder录制音频,然后保存到文件。从AVAudioRecorder录制的音频中消除静音
我想从记录音频的开头和结尾去掉沉默。
任何想法?
我正在研究一个允许用户录制某些音频的iOS应用程序。使用AVAudioRecorder录制音频,然后保存到文件。从AVAudioRecorder录制的音频中消除静音
我想从记录音频的开头和结尾去掉沉默。
任何想法?
我目前的工作没有类似的任务。这不是微不足道的。因为沉默不会是一个直截了当的零线。会有一些波动。
如果保证有干净的信号,在绝对值大于0.001的第一个样本上设置一个标记是相当简单的。
您可以设置结束标记而不必向后遍历文件。你所做的只是,每个样本大于这个阈值,你将结束标记设置为这个样本。
如果您的输入可能包含blips和squips,然后才能正确启动,那么您将需要更先进的技术。在下面发表评论,我会延长答案。
当我为iOS构建音频应用程序时,音频最终会在服务器上结束。我不知道你的应用在这方面是否相似。如果是这样,你可以做我所做的:
在后端使用SoX来后处理音频,使用阈值消除静音。
如果您需要在手机上完成所有操作,将会变得更加困难。您应该使用OpenAL或OpenAL wrapper library
来构建功率级别滤波器