一种声音对象的动态渲染方法与流程

文档序号:13984770阅读:497来源:国知局

本发明属于声学设备技术领域,涉及一种声音对象的动态渲染方法,尤其涉及一种给定自定义配置下扬声器系统的动态渲染方法。



背景技术:

2009年,3d电影迎来了历史新纪元,《阿凡达》的上映在全球掀起3d电影狂潮,让世人震惊。近年来的高速发展,3d银幕已经成为现代影城的一种标配。虽然现有影视系统已经拓展到了三维空间,但目前主流的影视声音系统还是以传统的双声道立体声或水平面单层的5.1/7.1环绕声系统为主。与立体声相比,传统的水平面单层环绕声系统虽然在声音的空间方位感、层次分布感、清晰度、临场感等方面有了明显的进步,但仍存在一些固有的缺陷:营造的声场不真实,观众的沉浸感不够强烈,导致画面与音效严重脱节,因此如何在3d音频系统上自然流畅地渲染出音频对象,成为亟待解决的重要问题。

全球著名的研究机构和高校已经纷纷开始了3d音频技术的研究,主流的3d音频技术按照回放方式不同可以分成基于耳机回放的3d音频技术和基于扬声器阵列回放的3d音频技术。在基于扬声器阵列回放的3d音频技术中代表性技术包括波场合成(wavefieldsynthesis,wfs)、高阶ambisonics(hoa)和幅度平移(amplitudepanning,ap)技术,在实际应用中,幅度平移技术运用最为广泛。

幅度平移技术的核心是利用球面摆放的三个扬声器,重构三扬声器所围成区域内的一个虚拟声源。但是幅度平移方法重点解释了三个扬声器信号分配的方法,却没有说明三扬声器如何选取,使得选取不同三扬声器组会严重影响虚拟声源的渲染。因此,为能在三维音频系统上更方便地渲染声音对象的空间位置,需要设计一种声音对象的动态渲染方法能保证虚拟声像的空间位置与原始声源空间位置误差最小。



技术实现要素:

为了解决上述技术问题,本发明提出了一种给定自定义配置下扬声器系统的动态渲染方法,是给定n声道音频系统中所有扬声器的位置信息,根据音频对象轨迹将其渲染到原音频系统中,保证动态渲染后的系统的音频质量不会因此降低,且算法简单,计算复杂度低。

本发明所采用的技术方案是:一种声音对象的动态渲染方法,其特征在于,包括以下步骤:

步骤1:采集n个扬声器的空间位置信息,并将其编号为i,i=1、2、…、n;

步骤2:计算音频对象轨迹运动帧数m,采集运动轨迹每一帧的空间信息,并将其编号为j,j=1、2、…、m;

步骤3:分析n个扬声器中形成的球面三角形扬声器组的所有组合,得到集合记为s;其中,当n个扬声器中任意三个能构成球面三角形时,构成一个球面三角形扬声器组;

步骤4:从集合s中挑选出能包含第j个扬声器空间位置的球面三角形集合,并将该集合记为t;

步骤5:在集合t中,直线连接每个球面三角形的三个顶点,得到对应平面三角形,记为集合t1;计算球心到所有平面三角形的距离h1,根据h1的值由大到小排序,选取h1最大值记为h_max;计算平面三角形法向量与顶点向量之间夹角α,选择α=α1对应的h1值记为h_min,将得到的h_max和h_min进行求平均运算,记为h_average;

步骤6:在集合t1中,找到h1值与h_average最接近的扬声器三角形组,记为t2;判断集合t2中元素是否唯一,若唯一则执行步骤8,否则执行步骤7;

步骤7:计算扬声器三角形组的编号和sum,根据sum从小到大排序,选出sum最小者对应的球面三角形扬声器组;

步骤8:将扬声器j信号分配到所选定的球面三角形所对应的三个扬声器上;

步骤9:判断j是否等于m;若不相等则回转执行步骤4,否则执行步骤10;

步骤10:读取音频信号,将n个声道下m帧的数据依次进行叠加合并,得到渲染后的n声道数据,并输出信号,完成动态渲染。

相对于现有技术,本发明的有益效果是:当声音对象在不同球面三角形间切换时,传统方法会让听者明显感受到虚拟声像移动出现卡顿、跳跃等现象,而本方法能有效地改善声音对象移动轨迹的听觉体验,让听者感受虚拟声像的空间位置移动更自然。

附图说明

图1为本发明实施例的流程图。

具体实施方式

为了便于本领域普通技术人员理解和实施本发明,下面结合附图及实施例对本发明作进一步的详细描述,应当理解,此处所描述的实施示例仅用于说明和解释本发明,并不用于限定本发明。

本发明提供的一种给定三维n声道音频系统动态渲染对象的方法,用于将给定n声道音频系统中所有扬声器的位置信息,根据对象运动轨迹将其渲染到音频系统上。显然,n为自然数,n的取值一般为给定的成熟系统,如22.2系统。本发明技术方案可采用计算机软件技术实现自动运行,如图1所示,实施例的实现流程包含以下步骤:

步骤1:采集待精简n声道系统扬声器空间位置信息,并将其编号为i(i=1,2,…,n)。

三维n声道音频系统对应有n扬声器,设以听音区域中心点o为顶点构造三维坐标系xyz,扬声器与中心点之间的距离记为ρ,扬声器在平面xoy上的投影与x轴所成的角度记为θ,扬声器与xoy平面所成角度记为扬声器空间位置参数标记为在三维声场重建中,可以设将n个扬声器排布在与中心点之间距离为ρ的球面上,实施例中设ρ的值为2米。因为重建声场中扬声器与中心点之间距离与原声场中扬声器与中心点距离相等,所以在实施例中采集精简前音频系统中扬声器空间位置参数简化标记为

步骤2:计算音频对象轨迹运动帧数m,采集运动轨迹每一帧的空间信息,并将其编号为j(j=1,2,…,m);

根据对象运动轨迹获得每一帧对应扬声器排布,设以听音区域中心点o为顶点构造三维坐标系xyz,扬声器与中心点之间的距离记为ρ,扬声器在平面xoy上的投影与x轴所成的角度记为θ,扬声器与xoy平面所成角度记为扬声器空间位置参数标记为在三维声场重建中,可以设将m个扬声器排布在与中心点之间距离为ρ的球面上,实施例中设ρ的值为2米。因为重建声场中扬声器与中心点之间距离与原声场中扬声器与中心点距离相等,所以在实施例中采集精简前音频系统中扬声器空间位置参数简化标记为

步骤3:分析n个扬声器中形成的球面三角形扬声器组的所有组合,得到集合记为s;

当n个扬声器中任意三个能构成球面三角形时,构成一个球面三角形扬声器组。实施例在目标扬声器系统中的n个扬声器中任选三个的所有组合中分析能构成球面三角形的所有扬声器组合,构成球面三角形扬声器组集合,记为集合s。

例如,从n个扬声器中任意挑选三个构成一个扬声器组合(ξ1,ξ2,ξ3),可以得到三个扬声器ξ1、ξ2和ξ3的空间位置为因为只有在这个扬声器组合中的三个扬声器空间位置不同时共弧线才能将这三个扬声器所对应的空间位置点构成球面三角形,所以若希望扬声器组合(ξ1,ξ2,ξ3)能作为一个球面三角形扬声器组,则必须满足θ1、θ2和θ3不同时相等或不同时相等。

步骤4:从集合s中挑选出能包含第i个扬声器空间位置的球面三角形集合,并将该集合记为t;

实施例从当前的集合s中挑选出其球面三角形内仅包含n声道扬声器系统中的单个扬声器ζ的球面三角形扬声器组,得到包含单个扬声器球面三角形扬声器组。

设集合s中的任一球面三角形扬声器组由扬声器ξ1、ξ2和ξ3构成,一个扬声器ζ被一个球面三角形δξ1ξ2ξ3所包含是指扬声器ζ的空间位置坐标不等于扬声器ξ1、ξ2和ξ3的空间位置在由三个扬声器空间构成球面三角形区域内部或在球面三角形的三条边上。则当有且只有一个扬声器ζ的空间位置处于球面三角形δξ1ξ2ξ3的区域内部或三条边上,且扬声器ζ的空间位置不等于扬声器ξ1、ξ2或ξ3的空间位置时,扬声器ξ1、ξ2和ξ3构成的球面三角形扬声器组包含待精简扬声器。

步骤5:在集合t中,直线连接每个球面三角形的三个顶点,得到对应平面三角形,记为集合t1,计算球心到所有平面三角形的距离h1,根据h1的值由大到小排序,选取h1最大值记为h_max,计算平面三角形法向量与顶点向量之间夹角α,选择α=α1(本实施例α=30度),将α对应的h1值记为h_min,将得到的h_max和h_min进行求平均运算,记为h_average;

步骤6:在集合t1中,找到h1值与h_average最接近的扬声器三角形组,记为t2,判断集合t2中元素是否唯一,若唯一则跳到步骤8,否则继续步骤7;

步骤7:计算扬声器三角形组的编号和sum,根据sum从小到大排序,选出sum最小者对应的球面三角形扬声器组;

步骤8:将扬声器j信号分配到所选定的球面三角形所对应的三个扬声器上;

设该球面三角形扬声器组由扬声器ξ1、ξ2或ξ3构成,该球面三角形扬声器组包含扬声器ζ,删除扬声器ζ,将扬声器ζ的输出信号分配到扬声器ξ1、ξ2或ξ3上;

通过将扬声器ζ的输出信号分配到扬声器ξ1、ξ2或ξ3,避免声场恢复出现明显损失。本发明进一步提供扬声器组替代方法,实施例包括以下步骤:

步骤8.1:将扬声器ξ1、ξ2、ξ3和ζ输出的时域信号经傅里叶变换得到对应的频域信号和sζ(ω)。

步骤8.2:根据扬声器ξ1、ξ2、ξ3和ζ的空间位置信息,计算权值分配:

当已知扬声器ξ1、ξ2、ξ3和ζ的空间位置信息根据以下公式计算权值分配,得到相应的权值w1、w2、w3。

其中,参数d、计算如下:

步骤8.3,将扬声器ζ的频域信号按照相应权值大小分配到扬声器ξ1、ξ2和ξ3的频域信号上;

计算分配了扬声器ζ频域信号后扬声器ξ1、ξ2和ξ3的频域信号如下:

步骤8.4,将步骤5.3所得扬声器ξ1、ξ2和ξ3的频域信号经过逆傅里叶变换为对应时域信号。

具体实施时,输入的时域信号可以从输入音频文件中得到,输出的时域信号形成新的输出音频文件。

步骤9:判断j是否等于m,若不相等则跳到步骤4;否则继续步骤10;

步骤10:读取音频信号,将n个声道下m帧的数据依次进行叠加合并,得到渲染后的n声道数据,并输出信号,动态渲染完成。

本发明提供的给定三维n声道音频系统动态渲染的方法,采集自定义配置的扬声器系统位置信息,以及对象轨迹的位置信息,经过上述步骤可以实现扬声器动态渲染的方案,得到的是n声道扬声器系统进行对象动态渲染的权值分配方案。通过该算法得到动态渲染系统可以保证在中心位置处的听音效果不受影响。

应当理解的是,本说明书未详细阐述的部分均属于现有技术。

应当理解的是,上述针对较佳实施例的描述较为详细,并不能因此而认为是对本发明专利保护范围的限制,本领域的普通技术人员在本发明的启示下,在不脱离本发明权利要求所保护的范围情况下,还可以做出替换或变形,均落入本发明的保护范围之内,本发明的请求保护范围应以所附权利要求为准。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1