从AVAudioRecorder中删除静音录制的音频

时间:2011-04-26 20:06:42

标签: ios avaudiorecorder

我正在开发一款允许用户录制某些音频的iOS应用。使用AVAudioRecorder录制音频,然后保存到文件中。

我想从录制的音频的开头和结尾剥去沉默。

有什么想法吗?

2 个答案:

答案 0 :(得分:1)

我目前的工作没有类似的任务。无论如何,这并非无足轻重。因为沉默不会是一个简单的零线。会有一些波动。

如果你保证信号干净,那么在第一个样本上设置一个绝对值大于0.001的标记是相当简单的。

您可以设置结束标记,而无需在文件中向后移动。您所做的就是,每个样本都大于此阈值,您将结束标记设置为此样本。

如果您的输入在正确启动之前可能包含blip和squips,则需要更高级的技术。在下面发表评论,我会延长答案。

答案 1 :(得分:1)

当我为iOS构建音频应用时,音频最终会在服务器上结束。我不知道您的应用在这方面是否相似。如果是这样,你可以做我做的事情:

在后端使用SoX对音频进行后处理,使用阈值消除静音。

如果您需要在手机上完成所有操作,那就更难了。您应该使用OpenALOpenAL wrapper library

构建功率级别过滤器