我制作了一款使用ADPCM样本和音乐的HTML5游戏。
音乐本身是11025Hz单声道,我做了一个简单的最近邻重采样器,得到22050Hz加上假立体声算法。
在加载过程中对样本进行预上采样,以减少运行期间的CPU负载(无需实时重采样)。
所以我在90年代后期实现了那种真正的复古声音。
到目前为止工作正常。
但是,在某些浏览器上,将22050Hz与内部采样率相匹配的WebAudio的“真正”重采样器似乎并不是更好:-D。
如何切断11025Hz以上的所有信号(奈奎斯特频率为22050Hz)?理想的是:0-11025Hz未触及但是11026Hz-max滤出。
WebAudio api提供的低通滤波器不够陡峭,并且在滤波器频率下会产生共振。
我不想让“蹩脚”的频率如此之高。 “蹩脚”的重新采样应停在11025Hz。我认为,高频扬声器,甚至是高强度低音频率在高频范围内镜像时听到的播放器也不好。
这里不要MP3& Co。 ADPCM-> MP3需要比实际ADPCM更多的比特率(在没有听觉损失的情况下,所需的伪像难以编码): - )。
我读过关于FIR和IIR滤波器但我不理解它们,因为它对我来说太过数学了。
我认为,这就是我所需要的。
我需要能够在没有学位的情况下转化为代码的东西:-D。
答案 0 :(得分:0)
我可能迟到了派对,但是为了获得更陡峭的滤镜曲线,您只需要对双二阶滤镜进行多次应用,即将多个BiquadFilterNode对象链接在一起。
单个具有lowpass
的BiquadFilterNode具有每个八度音程的12db滚降,从中您可以轻松计算所需的滤波器节点数。如果你担心共振,只需减少它(Q
设置)。