AudioUnit:如何摆脱音调开始和结束时的弹出/点击?

Car*_*tle 3 iphone objective-c ios

在我正在使用AudioUnits生成声音效果的游戏上工作.我的声音生成代码来自这里的样本:http://cocoawithlove.com/2010/10/ios-tone-generator-introduction-to.html

我几乎所有的东西都在工作,除了每个音调开始和结束时都会产生一种非常烦人的砰砰声.有没有办法过滤掉这个?我已经工作了几个小时试图修复它,我真的可以使用一些指针.什么可能导致这种爆裂声?

Jos*_*ell 7

弹出的噪音是由你产生的声音的恒定振幅引起的.扬声器的振膜必须立即从静止位置(0幅度)移动到第一个样本振幅的正确位移.它所产生的"跳跃"会产生爆裂声.

您需要在前几十个样本上增加振幅,并在声音结束时同样减速.