基于虚拟现实模型的混响实时生成方案设计

2019-07-30 08:52董雪婷毛润坤
复旦学报(自然科学版) 2019年3期
关键词:混响听者声源

董雪婷, 张 莹, 毛润坤, 吴 昊

(上海大学 上海电影学院,上海 200072)

虚拟现实意图在虚拟世界中模拟现实世界的一切,如何通过虚拟现实技术来提升使用者的沉浸感一直是研究的重点.听觉同视觉一样,是帮助人类感知世界必不可少的部分,因此也需要考虑如何让虚拟世界听起来更加符合现实世界.

在真实世界中,受声波本身特性的影响,声波的传播非常复杂,会因障碍物造成各类声学现象[1],而现实世界中常见的障碍物就是建筑.在建筑声学中,很多情况下需要考虑声波在闭室内传播这一具有特定声学特性的室内声场.就虚拟现实(Virtual Reality, VR)而言,构建一个虚拟的3维空间是核心所在,即对建筑进行建模.因此在虚拟现实技术中,建声仿真必不可少.

在室内声场中,混响受室内容积、建筑结构和吸声材料的影响最大,也最能体现室内的空间感.一个真实的混响效果能够有效地帮助虚拟建筑模型形成逼真的空间环境感.

虚拟现实的另一大特征是交互性,用户应当可以随意地在空间中走动.在真实的室内环境中,随着听者的走动,其在空间中的位置会发生变化,无论声源是来自听者本身,还是来自空间中某一固定或移动的位置,听感都会相应地发生改变.因此,在虚拟现实中也需要模拟这种自然的交互体验,实时地根据用户的操作改变其在空间中听到的声音,更好地增加用户的沉浸感.

1 相关研究

1.1 室内声学

图1 室内声场的构成Fig.1 Composition of room sound field

在室内声场中,听者在某一位置所听到的声音由3部分构成,分别为直达声、早期反射声和混响声,其能量(本文用声压级来度量)和时间(t)的关系如图1所示.直达声指的是声源经直线段传播至听音点的声音,听感只受距离的影响,距离每增加1倍,声压级下降6dB.早期反射声指的是延迟于直达声50ms以内到达的声音,受室内界面的影响较大.混响声指的是在早期反射声之后经多次反射到达的声音.

早期反射声与直达声由于时间相差很小,因此难以分开,只有助于增强直达声的空间感.而混响声由于经过多次反射,且每一次都受室内建筑的影响,因此它对室内真实空间感的营造最为重要[2].

19世纪末,赛宾提出了混响时间(T60)这一概念,即声能密度在声源停止发声后衰减到原数值的百万分之一(60dB)所需要的时间,以此奠定了建筑声学的基础.很久以来,这一直是唯一可测量、可计算的室内声学参量,也是对室内空间感影响最大的参量.直到后来,研究者对声音传播有了更全面的认识,添加了传播中因障碍物材料的吸声机制引起的衰减现象.而后由于计算机技术的辅助,对建筑声学的研究更是进入了可听化的阶段[3].

声波有反射、透射和吸收现象,室内铺设的不同材料具有不同的吸声系数,吸声系数不仅与材料本身的性质有关,还与声波的频率、入射方向和材料厚度等因素有关.工程上一般选择125,250,500,1000,2000和4000Hz这6个频率的吸声系数来表示该材料的吸声性能,若未说明具体频率,则专指500Hz时.混响时间与吸声系数有关,因此混响时间的计算也需要考虑以上6个不同频率.

室内声场的另一关键指标是室内声压级,它与听者到声源的距离以及房间常数R(根据室内吸声系数和室内总表面积得出)有关.根据距离的不同,听者所听到的声音分别由直达声或混响声起主要作用,其临界距离也称为混响半径,它取决于空间类型和房间常数R.

1.2 传统建声仿真的局限性

声学特性的设计是建筑设计中必不可少的一个环节,在没有计算机辅助进行仿真的情况下,只能凭借设计人员的经验和复杂计算,对音响系统的设计更是需要在建筑竣工后才能开始.而通过计算机进行建声和音响系统的仿真,可以更轻松、直观地获得各个声学参数,能够在工程实施之前发现设计中存在的问题,还可以不断地尝试多种方案,并对方案进行有效的验证[4].因此,在建声领域的研究中,引入计算机仿真非常必要.

丹麦的ODEON以及德国的EASE软件是目前应用广泛的建声仿真软件,它们能够通过计算机建立工程的3维模型,对输入的各类建声信息进行运算,从而输出准确、真实的声学参量.二者均采用了声线跟踪法与虚拟声源法.ODEON多用于厅堂本身建声特性的仿真,但无法监听输出混响效果[5].而EASE则多用于扬声器系统在厅堂内部的仿真,可以通过外挂的EARS模块,对输出结果进行双耳试听,但是由于受制于计算机本身的性能,使用声线跟踪法生成监听效果耗时很长,并且不能做到根据监听位置的移动进行混响效果的实时生成.

而虚拟现实技术追求沉浸感,因此需要对建筑模型进行真实的建声仿真,并要求较快的计算速度,同时由于交互性的存在,需要实时计算并生成混响效果.

1.3 传统人工混响的局限性

原本混响效果是一种只能通过建筑声学才能产生的自然声学现象,只能利用特定的建筑结构来产生特定的混响效果.随着对相关技术的深入研究,混响效果已经可以利用数字信号处理的方式进行实现.

目前人工混响的研究领域已有多种混响模型和优秀的混响算法,如经典模型Schroeder和Moorer,以及较新的模型Gardner、Jot和Dattorro[6].商业领域也有各类硬件效果器和混响插件被运用于影视声音设计和音乐创作中,这些技术起到了不可或缺的作用.

但是这类混响效果器都需要声音设计师凭借自身经验,自行调整参数以达到最终效果,并且参数需要提前进行设置.而虚拟现实的交互性决定了系统必须根据用户的操作实时进行输出效果的调整,因此需要对以上人工混响模型加以改进.

2 混响实时生成方案的设计

虚拟现实中的声音制作,涉及到复杂的双耳听觉,其制作流程和思路可以参考Ambisonics的音频制作方式.在实景拍摄的情况下,一般使用Ambisonics话筒进行拾音,再通过支持4声道的音频工作站进行处理,调整音源在虚拟现实空间的定位和音量等[7].而本文探讨的是除了实景拍摄之外,利用CG技术来构建虚拟场景及角色的情况,这种情况一般使用游戏引擎进行制作,对于声音而言,同样是借助游戏引擎所搭建的虚拟3维空间来构建声场.

游戏引擎内部所具有的空间坐标信息,不但可以预先将声源放置在空间中,还可以绘制声源的运动轨迹,并且实时监测用户行为,不断计算听者与声源之间的距离.由于虚拟现实场景要模拟真实世界,因此坐标系单位长度与真实世界的长度应该对应,从而计算出真实的距离信息.利用坐标系还可计算出房间的长、宽、高,以此计算出室内总表面积、体积等房间信息.对于建筑模型表面的材质,系统内可预置一些常见墙表面材料供用户选择,如砖墙、水泥、瓷砖、布等,并将其对各频段的吸声系数存于系统.

Unity是一个常用的游戏开发引擎,目前也应用于虚拟现实的开发,并且可以很好地支持其他语言编译的插件,因此本文基于Unity来设计混响实时生成系统方案.

本系统设计目的为基于虚拟现实模型,计算其对应的建声参量,输出对应的混响效果,并根据听者与声源位置的移动进行实时调整.考虑到应用于虚拟现实声音制时作,需要平衡准确性与实时性,若完全采用EASE中运用的几何声学的研究方法,虽然结果精确,但生成速度低.因此,可以将各理论方法与电影混音艺术方法相结合,追求生成速度的同时,保持艺术真实.

根据室内声场的组成,将系统分为3个部分: 直达声、早期反射声以及混响声,其总体架构如图2所示,再分别计算与生成.

图2 生成系统的总体架构图Fig.2 Overall architecture of the generating system

2.1 直达声的生成

考虑到在音源录制过程中,一般使用指向性电容话筒在强吸声的专业录音棚内录制,因此录制出的声音各频段的响度受话筒的频响曲线等因素影响,并不完全符合真实世界的情况,其声压级也取决于录制时的增益设置,因此录制的素材仍需要后期处理.例如,需要使用均衡器(Equalizer, EQ)消除录制过程中话筒的影响,同时,要将其音量调整到听者位于发生源位置时所听到的真实效果.

根据建声理论,直达声不受室内各界面的影响,其声压级只与距离有关,距离每增加1倍,声压级下降6 dB.因此,系统需要实时计算听者与声源的距离,并根据距离调整其增益.

另外,还需要考虑声音各频率在传播过程中的衰减程度不同,当声源较近时,高频成分会更丰富,从墙面和地面传来的混响声的影响也会更少,当声源较远时则相反[8].因此系统需要为声源添加一个低通(Low Pass,LP)滤波器,并根据距离实时调整滤波器的参数,使其产生真实的距离感.

2.2 早期反射声的生成

早期反射声指晚于直达声50ms内的反射声,其叠加产生了前期的混响效果,可利用延时单元来模拟单个反射声.根据室内声学原理,声音传播路径不同以及墙面等障碍物的吸收和反射效果会导致有限多个反射声产生.因此,可以利用多级延时线混响算法实现,利用每一个延时线的抽头对应一个离散的反射声,通过对增益的控制来模拟声音在实际传播过程中的衰减[9].

图3 早期反射声模型Fig.3 Early reflections model

对于利用多级延时线混响算法来模拟混响声,Schroeder首先提出了一种模型进行实现[10],而后Moorer对模型又进行了改进,二者的区别在于后期的混响实现方式,对于早期反射声的部分则一致,其结构图如图3所示[11],其中mi代表延时,αi代表衰减.为了追求更准确真实的效果,Schroeder曾建议将每个衰减αi都替换成滤波器来模拟墙面对各频段的吸收效应,但由于哈斯效应的存在,各个反射声在听觉上最终会混合在一起,人耳无法区分每个反射声,并且全部替换成滤波器会极大的增加系统的运算量.而本文设计的虚拟现实系统需要进行混响效果的实时输出,替换会得不偿失,因此选择了为信号整体添加一个低通滤波器的方式,用于模拟声音在空气传播过程中的衰减以及室内墙壁的吸收、反射效果.

系统需要根据室内空间的大小、声音的传播速度、室内铺设材料对各频段的吸声情况,计算出模型需要的各个关键参数,并根据听音者与声源位置的改变,作出相应的改变,最后实时输出效果.

2.3 混响声的生成

由于早期反射声时间短,一般只经墙壁、天花板、地面反射1~2次后到达听者耳朵,数量有限,因此可用上节中所述方式实现,而后期混响声无法用同样的方法进行模拟,需要使用递归型结构的IIR(Infinite Impulse Response)滤波器.Moorer模型实现后期混响的结构图如图4所示,C1~C6为6个并联的低通梳状滤波器.

现今,在Schroeder与Moorer这两个经典的人工混响模型基础上,利用数字信号处理技术制作混响效果器方面已有了很多优秀的研究成果,例如Gardner、Jot、Dattoroo等模型[6,12],这些模型已广泛运用于影视、游戏声音的混音工作中.

这些人工混响模型已经可以很好地完成特定混响的生成,但在实际应用过程中,例如音频工作站ProTools的混响插件Revibe(如图5所示),则需要用户自行设置混响时间、房间大小、延迟时间、各频段的衰减情况、增益等各项关键声学参数,然后输出最终效果.

图4 Moorer混响模型Fig.4 Moorer reverberation model

图5 混响插件RevibeFig.5 Reverberation plug-in Revibe

在虚拟现实中,关键是如何根据房间模型的建声信息,基于建筑声学基础理论,利用计算机代替混音师自动计算得出以上关键参数,并生成最终效果.后期混响声与房间内部构造以及所铺设材料吸声情况关系较大,若仅考虑单一闭室内部,一旦在建模过程中将房间基本信息确定,混响则随之确定,声源以及听者位置的改变所造成的影响很小,因此不必进行实时的改变.

3 结 语

将建筑声学引入虚拟现实技术,建立混响实时生成系统,可以使虚拟现实世界更符合真实的建筑声学理论,帮助提升用户的沉浸感.系统还可应用于ODEON、EASE等建声设计软件,可供设计师在虚拟建筑空间中随意走动的同时,实时监听方案的最终效果.同时,系统也可用于影视混音阶段,帮助混音师根据真实拍摄空间的建声信息,计算得出对应的声学参量,并直接输出生成混响的效果.

本文只简单地考虑了单一闭室的情况,且闭室内不包含其他障碍物,但在真实情况下,闭室内的情况复杂,会包含更多障碍物,而用户更有可能在不同房间之间走动.因此,本文所涉及的方案为虚拟现实的声音制作提供参考的同时,仍有很大的改进空间.

猜你喜欢
混响听者声源
虚拟声源定位的等效源近场声全息算法
劳工(外二首)
基于GCC-nearest时延估计的室内声源定位
海洋混响特性分析与建模仿真研究∗
浅谈音响效果器的应用
岭南园林声景美研究
运用内积相关性结合迭代相减识别两点声源
用于室内环境说话人识别的混响补偿方法
力-声互易在水下声源强度测量中的应用
三人成虎