虚拟环绕声都是基于 HRTF(Head Related Transfer Functions)头部相关传输函数来实现的,只是各家的算法以及测量数据有差异,效果也就各不相同。关于 HRTF 引用数码多上的简单介绍:人耳在接收到音源发出的声音时,人的耳廓、耳道、头盖骨、肩部等对声波的折射、绕射和衍射以及鼓膜接收到的信息会被大脑所接受,大脑通过经验来对声音的方位进行判断。根据这一原理,通过信号处理的数学方法,我们构建了 HRTF(Head Related Transfer Functions)头部相关传输函数,根据多组的滤波器来虚拟实现人耳接收到的“位置信息”。关于 HRTF 的详细原理,数码多上同样有一篇文章 HRTF音频3D定位技术综述。有了这个基础知识,我们就可以分析各种各样的虚拟环绕声相关技术。
2.1 人头录音(Dummy head recording)
一般录制环绕声音频需要使用多个麦克风,例如 5.1 声道至少需要 5 个麦克风,而一般音乐是双声道两个麦克风。人头录音也是使用两个麦克风录音,但是模拟了人头听音的效果,相当于把两个麦克风放在人的耳朵里面。因为就算是多声道的音箱,人最终都是靠两个耳朵来听,所以在最理想的情况下人头录音是可以达到真实环绕声效果的。但是现实都是不完美的,首先人头录音要求回放时必须使用耳机(录音时麦克风也是放在耳朵里),保证声音没有串扰;其次每个人身体有差异,大脑对声音的判断也不同,录音不可能按照每个人去完美适配。这就造成了人头录音,包括下面提到的虚拟环绕声技术,效果都不如多声道音箱理想。
2.2 游戏 3D 音效
很多游戏也有 3D 音效,计算游戏场景中多个音源(脚步声、远处动物等等)与环境相互作用的效果(反射、阻碍等等)得出游戏中玩家所在位置的全方位声音,这个声音可以认为是环绕声的,然后这个声音经过 HRTF 处理得到立体声输出,当然也可以直接编码成杜比或 DTS 输出到外部多声道音箱。创新的 EAX 以及以前的 Aureal 3D 音效就是属于这一类。