声明: 原创文章,未经允许不得转载。
音频可视化是一个“听”起来非常“美”好的话题,其复杂程度很大程度上依赖视觉方案(一些例子),不同的视觉方案决定了你的技术方案选型,比如three.js,pixi.js等引擎。
不管你选用什么渲染方案,处理音频信号部分是相通的,本文会围绕音频信号的处理进行阐述,期望能够给大家普及一下音频相关的基础知识(由于能力所限难免疏错,欢迎指出)。
前五部分主要是一些理论性的基础概念,如果你不敢兴趣可以直接跳过。
三个示例(音频放在git上加载较慢,需要等久一点):
一、什么是声音?
声音来源于 振动,通过声波传播,人耳中无数 毛细胞 会将振动信号转换成电信号并通过听觉神经传递给大脑,形成人主观意识上的“声音”。声波进入人耳后,因为耳蜗的特殊构造,不同部位对声音的敏感程度是不一样的:
高频声音会被耳蜗近根部位置所感知,低频声音在近端部位置被感知,因此人对不同频率声的感受是非线性的,这是后续声学计权的基础。
二、声学计权
声学计权常见的有频率计权和时间计权,其作用在于模拟人耳对不同频率声音的非线性感受:
对低频部分声音不敏感;
最灵敏的区域在1~5K Hz之间&#