在本系列博文中,我们广泛审视了过去、现有、以及新出现的混响技术,并且从沉浸式和空间角度评论了它们。在前面的文章中,我们讲到了沉浸式混响在虚拟现实中如此有挑战性的原因,以及经典混响算法背后的一些技术。在这篇文章,我们会评论声学模拟中近期的一些趋势,它们可以用于创造空间混响特效。
金属板上声音传播的声学模拟
正如之前文章所说,虽然经典混响技术现在仍然非常有意义,我们还是得开始寻找新的方法让它们变得更为沉浸式。就像混响技术在过去为了新的制作需求不断演进,虚拟现实目前也正在将我们聆听虚拟空间混响的方式推向极限。
由于双耳声算法,我们现在在耳机里比过去任何时候都能更好地感知声源的方向。虽然未来双耳声算法将继续不断改善,不断打磨邻近效应,提供个性化的Head Related Transfer Function(头部相关传输函数,HRTF)滤波器,但我们也需要保证混响能在最初声音直接传来后的长时间内也能保留这些空间提示。经典混响算法能高效地随着时间增加回声密度,但在过程中,我们失去了对于传达空间提示至关重要的互动性。对于带有重要感知信息的早期反射来说,这一点尤其突出。为了达到这个目标我们得开始使用来自虚拟空间的几何信息并将其输入到模拟算法中。
使用耳机让渲染空间音频特效变得简单,因为听者位置总处在扬声器中心【1】
随着我们的目光从传统混响上移开,我们会研究各种虚拟音景可听化的方法,换句话说,就是要聆听虚拟混响空间。虚拟声学中的可听化(Auralization)是一个专门研究领域,旨在通过借用物理和图形概念来模拟声音传播。确实,为了得到带有空间信息而且更为真实的模拟,我们需要重新审视声音如何在封闭空间传播,我们又能怎样模拟它。
空间声对于多声道设置也是必须的,比如蒙特利尔的SATosphere(SAT球幕影院),它拥有157个扬声器【2】。
声音传播是一种异常复杂的现象。提高模拟的精度就意味着所需的计算量要增加。因此,最重要的就是考虑这些方法的长处和短处所在,以及每种方式会带来怎样的感知影响。
声音传播
高速振动所释放的能量——我们所感知的声音——作为机械波传播经过各种物质。这种来自起始点(比如声带)振动位移的动能,传递到周围媒介(比如空气)的不同分子上。声音本身实际上是不动的,它只是将自己的动能传递到一个又一个分子上,然后由于接受能量的物质黏性而慢慢损耗掉。
致密的物质会让传播速度更快,因为分子之间更紧密,而更重的物质会让能量损耗更多,因为让分子动起来需要的能量更多。另一个性质,叫做声阻抗,它可以描述不同的频率传播到某种物质上的效果好坏。能量中没有从空气传播到墙壁材质上的部分会反射回去,并成为室内混响的一部分。这就解释了为什么低密度的物质,比如纤维材料,能够在录音工作室里面很好地减少回声。物质的外表面纹理也会引导反射的方向。需要注意到所有这些现象都取决于声音的波长,也就是说这些都是依赖频率的现象。长波长被视为低频声,而短波长被视为高频声。
要说明声音本质上是频率相关的,最简单的方法就是考虑声音传播的另一个关键要素,衍射。通过衍射——在游戏音频中被称为声障现象——声波能绕过障碍物,穿过开口,到达听者的位置,虽然听者视线内看不到发声点。低通滤波器经常被用于模拟声障的原因就是由于现实中衍射的行为方式。当小于障碍物的波长接触障碍物时,声音会反射。然而,当波长长于障碍物,它就会绕过障碍。所以,你可以想想这两种频率结合在一个信号里,向着同一个障碍物传播,那么墙壁后面的听者就只能听见更低频的声音(波长更长)。这个效果在遇到复杂形状时也会更复杂。举个例子,绕过我们头部的衍射是相当复杂的,以至于我们需要用入耳麦克风和脉冲声来录音。我们就是这样确定HRTF滤波器并以此创造双耳声特效的。因此,大小、形状、密度、声阻抗、纹理这些物理性质都是能影响到不同频率的声音在空间中传播的。
短波长更倾向于碰到障碍物反射,而长波长会衍射绕过障碍物。
作为对比,光传播的过程完全不同。作为一种电磁波,光能在真空中传播。实际上,光甚至是需要真空传播的,也就是说,它是在物质分子之间行进的。因此,致密物质会减缓、甚至阻挡传播。此外,我们可见的光波长比我们可听的声波长要小多了。实际上,我们的眼睛可以捕捉波长400到700纳米之间的光,而声波长要在17毫米到17米之间,我们才能听得见。而且,声音传播要慢多了,在空气中大约343米每秒,而光传播可以达到几乎3亿米每秒。这就解释了我们为什么需要重视混响声的延迟问题。所有这些区别都说明了光波和声波与不同物质和障碍互相作用时会有区别,尤其是衍射时。话虽如此,衍射在封闭空间并不明显,也就意味着模拟光传播是模拟声波的一个很好的起点。
基于光线的方法
基于光线的声学就是从光传播中寻求提示的声音传播模拟技术。在这个方法中,声音以直线传播,而且用上一点线性代数,你就能根据不同墙壁的位置轻松计算出声音的反射方向。我们可以把延迟加入这些模型,这样可以更好地考虑到声音传播速度慢的特性,而且滤波器可以模拟墙壁对于不同频率的吸收。基于光线的方法一般使用简化过的几何空间,能快速精确地模拟高频声早期反射的声音传播。确实,因为房间在现实中形状一般会比较复杂,声音会在更多的表面上反射,产生密度更为丰富的回声,所以这些技术用于后期混响再现时并不出色。而且,一个空间在几何上越复杂,低频波的衍射就会显得越明显。在这种情况下,假设我们知道不同反射光线的入射方向,衍射是可以独立模拟的。
光线法的两个主要变体是影像源法和光线追踪法。影像源法会计算来自每个墙的声音反射路径,当反射本身又在另一堵墙上反射时,这个计算过程还可以包括高阶反射。在光线追踪法中,光线向不同方向发出,达到障碍物时反射。从某表面上反射之后,又会产生多条新的光线,向不同方向发出。我们可以随机选择几个方向,来模拟声音碰到墙壁纹理或者角落后的分散。这一方法在几何空间复杂时很有用,但需要的计算量也更大。两种情况下,我们都可以对算法的深度做出限制,专注于早期反射。因为我们知道每条光线的确切位置,所以根据声源和听者的位置,光线法让我们能够交互式地在空间和时间里自由放置声音。为了模拟声音传播的距离,根据声音在空气中的传播速度,该方法还引入了延迟值。
以下视频由爱丁堡大学声学和音频小组的成员Brian Hamilton【4】提供。我们可以用光线法看到一个声源的声音随着时间的传播。
基于光线的声音传播模拟
|
|
|
|
基于波的建模
我们之前说了,声音传播并不太像光波。所以,另一族方法瞄准的是更精确地模拟声波传播。比如,通过使用叫做Finite Difference Time Method(有限差分时间法,FDTD)的数值计算法,我们可以模拟出一个模式,更接近声能从一个分子传递到另一个分子的行为。我们用的不是实际的分子,而是把三维空间分割成固定大小的网格。
这个方法的关键概念就是任何时刻的声压都会在很短的时间后影响到周围的点。应用这一简单原则、加上一些媒介物质的信息和大量的数学计算,每一点的声压值都可以使用周围点之前时刻的数值计算出来。换句话说,如果你知道声音之前在哪,你就能预测它未来在哪。这也意味着每一帧网格上每个点的数值都要重新计算。在完全可听带宽的情况下,这就相当于每秒44100帧。网格的间距是根据想要的采样率确定的。确实,想要模拟高频信号,就需要小网格才能精确地模拟短波长的行为。
在FDTD法中,时间和空间的相邻点被用来计算一个点的声压【5】
在FDTD中,想要播放一个声源,我们只要在需要的时间范围内将信号设置到模型中的特定点就好。随着时间变化,信号的幅度在每一帧都会转化为声压。相似地,我们定位听者是通过读取某个点上计算出来的随时间变化的声压,来形成信号。在FDTD中,每个点的声音振动是同时模拟的,无论听者位置在哪。
根据房间的大小和需要的最小波长,最终的计算所花时间可能短至几分钟,长至几小时。所以我们怎么可能做到实时使用这个方法呢?这个模拟方法可以离线进行,使用一个脉冲作为声源来产生冲激响应(IR)(见之前文章的卷积混响)。这一过程会产生一系列IR,之后可以通过卷积来实时使用。为了空间音频目的,做出高阶ambisonics IR是可能的;但是就像是预录室内冲激响应一样,用来表示不同的发声点到听者位置所需要的存储空间太大,很可能是不现实的。
因为高频的精确结果需要更小的网格间距——也就是几毫米左右——来模拟所有可听频率,所以我们可以通过减少网格尺寸来节约计算量。因此,这个方法更适用于低频的声音传播模拟。使用低取样率也能节约计算成本和存储空间。好消息是,高频通常不会传播得很远,空气和墙体的吸收在其中扮演着重要角色。
基于波的模拟也长于模拟在复杂形状的几何空间下频率相关的衍射,而这点是基于光线法做不到的。总体上说,基于波的方法也被视为更擅长生成后期混响,因为能更精确地模拟回声密度。话虽如此,就像现实中不是所有空间都有理想的混响,有些模拟的结果从媒体制作角度来看也没有那种听起来很棒的声学特征,而且所需的渲染时间会导致周转时间更长,进一步复杂优化调整的过程。
FDTD法在模拟声波传播时相当名副其实,但还有一些其它的基于波的方法也可以模仿物理性质的一部分,且提供更快速的模拟。因此,不同方法具体都有不同的优势和局限性。
除了直接进行 IR 卷积,生成的数据也可以用其它方式使用。比如,可以渲染一个声音传播的低频信号模拟,500Hz或者更低,并使用结果数据来分析混响随着时间的幅度衰减。然后这个信息可以用来提供经典混响算法的参数【6】。这个方法能很好地将混响自动参数化,这对于含有多个房间的大型虚拟世界很有用。这个方法由Microsoft(微软)为最近新作《Gears of War 4(战争机器4)》在 Wwise 插件里实现。
以下视频也由Brian Hamilton【4】提供,展示了基于波的方法如何渲染声音传播。请注意产生了很多新波阵面的内角。
基于波的声音传播建模
|
|
|
|
这是另外两种模拟【4】,演示了基于光线和基于波的声学模拟的区别。
基于光线的声学建模
基于波的声学建模
那么,两种方法哪个更好 ?两者都是!虽然基于波的方法看起来处理复杂模拟更好,但基于光线法在使用得当的前提下依然能提供非常棒的声音。虽然声音传播背后的物理特性可能很复杂,但通过极大简化该过程,我们还是能得到出色的声音。所以,我们得保证,如果需要额外计算资源来进行完整模拟,那从感官角度来看这个多花的资源必须是值得的。有趣的是,基于光线和基于波的方法似乎在优点上是互补的。确实,基于光线法很擅长模拟高频信号和早期反射,而基于波的建模在模拟复杂形状的几何空间中低频信号、后期混响和衍射特效上更有优势。
在下一篇文章中,我们会讲到怎样融合经典混响、基于光线法和基于波的方法,来形成各种在模拟互动空间特效上足够灵活和高效的新型混合混响。
想要更多了解虚拟声学,我推荐这本很棒的互动教材【8】,它通过互动式动画展示了以上讨论过的一些技术。
互动教材【8】
爱丁堡大学声学和音频小组也有一个有趣的网站【9】,上面介绍了很多值得注意的关于基于波模拟的信息,也介绍了如何使用该方法来为房间,甚至是乐器来建模。
注释:
[1] http://sat.qc.ca/en/albums/symposium-ix-2016#lg=1&slide=14
[2] http://sat.qc.ca/en/albums/symposium-ix-2016#lg=1&slide=17
[3] http://interactiveacoustics.info/html/GA_RT.html
[4] http://www.acoustics.ed.ac.uk/group-members/brian-hamilton/
[5] C. Webb, "Computing virtual acoustics using the 3D finite difference time domain method and Kepler architecture GPUs", In Proceedings of the Stockholm Music Acoustics Conference, pages 648-653, Stockholm, Sweden, July 2013.
[6] Nikunj Raghuvanshi and John Snyder. 2014. Parametric wave field coding for precomputed sound propagation. ACM Trans. Graph. 33, 4, Article 38 (July 2014), 11 pages. http://dx.doi.org/10.1145/2601097.2601184
[8] http://interactiveacoustics.info/
[9] http://www.ness.music.ed.ac.uk/
评论