CN118020319A - 用于空间音频渲染的系统、方法和电子设备 - Google Patents
用于空间音频渲染的系统、方法和电子设备 Download PDFInfo
- Publication number
- CN118020319A CN118020319A CN202280065188.0A CN202280065188A CN118020319A CN 118020319 A CN118020319 A CN 118020319A CN 202280065188 A CN202280065188 A CN 202280065188A CN 118020319 A CN118020319 A CN 118020319A
- Authority
- CN
- China
- Prior art keywords
- spatial
- signal
- spatial audio
- sound source
- reverberation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000009877 rendering Methods 0.000 title claims abstract description 112
- 238000000034 method Methods 0.000 title claims abstract description 67
- 230000005236 sound signal Effects 0.000 claims abstract description 75
- 238000012545 processing Methods 0.000 claims abstract description 21
- 230000004044 response Effects 0.000 claims description 50
- 230000015654 memory Effects 0.000 claims description 45
- 238000004364 calculation method Methods 0.000 claims description 25
- 238000004590 computer program Methods 0.000 claims description 21
- 230000008569 process Effects 0.000 claims description 15
- 238000004422 calculation algorithm Methods 0.000 description 28
- 239000011159 matrix material Substances 0.000 description 22
- 238000010586 diagram Methods 0.000 description 18
- 230000007613 environmental effect Effects 0.000 description 12
- 230000006870 function Effects 0.000 description 9
- 238000004088 simulation Methods 0.000 description 8
- 238000004891 communication Methods 0.000 description 7
- 238000005070 sampling Methods 0.000 description 7
- 230000010365 information processing Effects 0.000 description 6
- 239000000463 material Substances 0.000 description 6
- 238000003672 processing method Methods 0.000 description 6
- 238000013459 approach Methods 0.000 description 5
- 239000000872 buffer Substances 0.000 description 5
- 230000001934 delay Effects 0.000 description 5
- 210000005069 ears Anatomy 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 5
- 230000008859 change Effects 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 241000282412 Homo Species 0.000 description 3
- 238000010521 absorption reaction Methods 0.000 description 3
- 230000001419 dependent effect Effects 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012546 transfer Methods 0.000 description 3
- 241000288673 Chiroptera Species 0.000 description 2
- 241001465754 Metazoa Species 0.000 description 2
- MHABMANUFPZXEB-UHFFFAOYSA-N O-demethyl-aloesaponarin I Natural products O=C1C2=CC=CC(O)=C2C(=O)C2=C1C=C(O)C(C(O)=O)=C2C MHABMANUFPZXEB-UHFFFAOYSA-N 0.000 description 2
- 238000012952 Resampling Methods 0.000 description 2
- 239000012814 acoustic material Substances 0.000 description 2
- 230000004913 activation Effects 0.000 description 2
- 238000004458 analytical method Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000007654 immersion Methods 0.000 description 2
- 238000007781 pre-processing Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 208000003443 Unconsciousness Diseases 0.000 description 1
- 239000008186 active pharmaceutical agent Substances 0.000 description 1
- 238000013528 artificial neural network Methods 0.000 description 1
- 230000003139 buffering effect Effects 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 230000003111 delayed effect Effects 0.000 description 1
- 238000009792 diffusion process Methods 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000013507 mapping Methods 0.000 description 1
- 230000003278 mimic effect Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000000422 nocturnal effect Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 210000000056 organ Anatomy 0.000 description 1
- 230000008447 perception Effects 0.000 description 1
- 239000000700 radioactive tracer Substances 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 230000002123 temporal effect Effects 0.000 description 1
- 238000002834 transmittance Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S1/00—Two-channel systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S5/00—Pseudo-stereo systems, e.g. in which additional channel signals are derived from monophonic signals by means of phase shifting, time delay or reverberation
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Stereophonic System (AREA)
Abstract
本公开涉及一种空间音频渲染方法,包括:基于元数据,确定用于空间音频渲染的参数,其中,元数据包括声学环境信息、听者空间信息和声源空间信息中的至少一部分,用于空间音频渲染的参数指示听者所处场景中声音传播的特性;基于用于空间音频渲染的参数,对声源的音频信号进行处理,以获得编码的音频信号;以及对编码的音频信号进行空间解码,以得到解码的音频信号。
Description
相关申请的交叉引用
本申请是以申请号为PCT/CN2021/121729,申请日为2021年9月29日的国际专利申请为基础,并主张其优先权,该申请的公开内容在此作为整体引入本申请中。
本公开涉及音频信号处理技术领域,特别涉及一种用于空间音频渲染的系统、方法、芯片、电子设备、计算机程序、计算机可读存储介质和计算机产品。
真实世界中的所有声音都是以空间音频的形式存在的,形成了真实世界中的空间音频现象。
声音来源于物体的振动,并经由介质传播到达诸如人耳的听觉器官,从而被听到。在现实世界中,振动的物体可以出现在任何地方,它们与人的头部形成一个三维的方向向量。方向向量的水平角会影响声音到达双耳的响度差、时间差以及相位差,并且方向向量的垂直角会影响声音到达双耳的频率响应。人类正是利用这些物理信息,通过大量无意识的后天训练,得到了根据双耳中的声音信号判断声源所处位置的能力。
在现实世界中,对于人类以及其他动物而言,感知到的声音并非只有从声源直达耳朵的直达声,还有声源振动波经由环境反射、散射以及衍射而产生的声音,从而产生了环境声学现象。其中,环境反射和散射声会直接影响听者对声源及其自身所处环境的听觉感知。这种感知能力是蝙蝠等夜行性动物能够在黑暗中定位自身并理解自身所处环境的基本原理。
人类也许没有蝙蝠的听觉灵敏,但是也可以通过感受到环境对声源的影响而获得大量的信息。例如,同样是在聆听一位歌手演唱,听者能够明显分辨出是在一个大型教堂内听歌,还是在停车场上听歌,因为混响时长不同。又例如,同样是在教堂内听歌,听者能够明确分辨出是在歌手正前方1米处听歌,还是在歌手正前方20米处听歌,因为混响和直达声的比例不同;也能够明确分辨出是在教堂的中心听歌,还是有一个耳朵在离墙壁仅10厘米处听歌,因为早期反射声的响度不同。
发明内容
根据本公开的一些实施例,提供了一种空间音频渲染方法,包括:基于元数据,确定用于空间音频渲染的参数,其中,元数据包括声学环境信息、听者空间信息和声源空间信息中的至少一部分,用于空间音频渲染的参数指示听者所处场景中声音传播的特性;基于用于空间音频渲染的参数,对声源的音频信号进行处理,以获得编码的音频信号;以及对编码的音频信号进行空间解码,以得到解码的音频信号。
根据本公开的一些实施例,提供了一种空间音频渲染系统,包括:场景信息处理器,被配置为基于元数据,确定用于空间音频渲染的参数,其中,元数据包括声学环境信息、听者空间信息和声源空间信息中的至少一部分,用于空间音频渲染的参数指示听者所处场景中声音传播的特性;空间音频编码器,被配置为基于用于空间音频渲染的参数,对声源的音频信号进行处理,以获得编码的音频信号;以及空间音频解码器,被配置为对编码的音频信号进行空间解码,以得到解码的音频信号。
根据本公开的又一些实施例,提供一种芯片,包括:至少一个处理器和接口,接口,用于为至少一个处理器提供计算机执行指令,至少一个处理器用于执行计算机执行指令,实现本公开中的任一实施例的空间音频渲染方法。
根据本公开的又一些实施例,提供计算机程序,包括:指令,指令当由处理器执行时使处理器执行本公开中的任一实施例的空间音频渲染方法。
根据本公开的又一些实施例,提供一种电子设备,包括:存储器;和耦接至存储器的处理器,处理器被配置为基于存储在存储器装置中的指令,执行本公开中的任一实施例的空间音频渲染方法。
根据本公开的再一些实施例,提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现本公开中的任一实施例的空间音频渲染方法。
根据本公开的再一些实施例,提供一种计算机程序产品,包括指令,指令当由处理器执行时实现本公开中的任一实施例的空间音频渲染方法。
通过以下参照附图对本公开的示例性实施例的详细描述,本公开的其它特征及其优点将会变得清楚。
此处所说明的附图用来提供对本公开的进一步理解,构成本申请的一部分,本公开的示意性实施例及其说明用于解释本公开,并不构成对本公开的不当限定。在附图 中:
图1A是例示根据本公开的实施例的空间音频渲染系统的配置的概念性示意图;
图1B是例示根据本公开的实施例的空间音频渲染系统的实现方式的示例的示意图;
图1C是例示根据本公开的实施例的空间音频渲染系统的应用示例的简化示意图;
图2A是例示根据本公开的实施例的场景信息处理器的配置的概念性示意图;
图2B是例示根据本公开的实施例的场景信息处理器的实现方式的示例的示意图;
图3A是例示根据本公开的实施例的人工混响单元的实现方式的示例的示意图;
图3B是例示根据本公开的实施例的人工混响单元的实现方式的又一示例的示意图;
图4A示出了根据本公开的实施例的空间音频渲染方法的示意流程图;
图4B示出了根据本公开的实施例的场景信息处理方法的示意流程图;
图5示出本公开的电子设备的一些实施例的框图;
图6示出本公开的电子设备的另一些实施例的框图;
图7示出本公开的芯片的一些实施例的框图。
下面将结合本公开实施例中的附图,对本公开实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本公开一部分实施例,而不是全部的实施例。以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本公开及其应用或使用的任何限制。基于本公开中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本公开保护的范围。
除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本公开的范围。同时,应当明白,为了便于描述,附图中所示出的各个部分的尺寸并不是按照实际的比例关系绘制的。对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为授权说明书的一部分。在这里示出和讨论的所有示例中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它示例可以具有不同的值。应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
空间音频在虚拟世界中的模拟
为了在沉浸式的虚拟环境中尽可能地模拟现实世界给予的各种信息,从而不打破用户的沉浸感,需要高质量地模拟声音的位置对于收听的双耳信号的影响。
在静态环境中声源位置和听者位置已经确定的情况下,该影响可以用头相关传输函数(Head related transfer function,HRTF)来表示。HRTF是一个双声道的有限冲激响应(Finite Impulse Respons,FIR)滤波器。通过将原始信号与指定位置的HRTF进行卷积,就能得到当声源在该位置时听者所听到的信号。
然而,一个HRTF只能表示一个固定的声源和一个确定的听者的相对位置关系。当需要渲染例如N个声源的时候(N为整数),理论上需要N个HRTF,并对N个原始信号进行2N次卷积。此外,当听者发生旋转时,需要更新所有的N个HRTF,才能正确地渲染虚拟的空间音频场景。这种处理的计算量很大。
为了解决多声源渲染以及听者三自由度(Degree of freedom,3DOF)的旋转,提出在空间音频渲染中应用球形声场全景声技术(Ambisonics)。Ambisonics可以使用球谐函数(Spherical Harmonics)来实现。Ambisonics的基本思路是假设声音分布在一个球面上,多个指向不同方向的信号通道各司其职,负责对应方向部分的声音。基于Ambisonics的空间音频渲染算法如下:
(1)将各个Ambisonics通道中的采样点均设置为0;
(2)利用声源相对于听者的水平角和俯仰角,计算出各个Ambisonics通道的权重值;
(3)将原始信号乘以各个Ambisonics通道的权重值,并叠加到各个通道;
(4)对场景中所有声源,重复步骤(2)~(3);
(5)将双耳输出信号的所有采样点设置为0;
(6)将各个Ambisonics通道的信号与通道对应方向的HRTF做卷积,并叠加到双耳输出信号上;以及
(7)对所有Ambisonics通道重复步骤(6)。
如此,卷积运算的次数只与Ambisonics通道数有关,与声源个数无关,而将声源编码到Ambisonics域(domain)相比于卷积运算要快得多。不仅如此,如果听者旋转了,可以相应地旋转所有的Ambisonics通道,同样,该计算的量与声源个数无关。
除了将Ambisonics信号渲染到双耳,还可以简单地将它渲染到扬声器阵列。
环境声学现象在虚拟世界中的模拟
环境声学现象在现实中无所不在。为了在沉浸式的虚拟环境中尽可能地模拟现实世界给予的各种信息,从而不打破用户的沉浸感,需要高质量地模拟虚拟场景对于场景中的声音的影响。
相关技术中,对环境声学现象的模拟主要包括以下三类方法:基于有限元分析的波动求解器、射线追踪,以及化简环境的几何形状。
一.基于有限元分析的波动求解器(波动物理模拟)
待计算的空间需要被分割成密集排列的立方体,称之为“体素”(voxel)。与用于表示二维平面上的极小面积单位的像素的概念类似,体素可以表示三维空间中的极小体积单位。微软的Project Acoustics运用了这个算法思想。该算法的基本过程如下:
(1)在虚拟场景中,从声源的位置处的体素内激发一个脉冲;
(2)在下一个时间片段,根据体素大小以及邻接体素是否包含场景形状,计算该体素的所有邻接体素的脉冲;
(3)多次重复步骤(2),计算出场景中的声波场,其中重复的次数越多,计算出的声波场就越精确;
(4)将听者位置处的体素上的所有历史振幅的数组确定为当前场景下从声源到该位置的脉冲响应;以及
(5)对场景中所有的声源重复上述步骤(1)~步骤(4)。
基于波形求解器的环境声学模拟算法可以实现非常高的空间精度和时间精度,只要选取的体素足够小,以及选取的时间片长足够短。另外,该模拟算法可适应于任意形状、材质的场景。
但是,该算法的计算量巨大。特别地,计算量与体素的大小的三次方成反比,与时间片长成正比。在现实应用场景下,几乎不可能在保证合理的时间精度和空间精度的同时,实时计算波动物理。
因此,在需要实时渲染环境声学现象时,软件开发者会选择预渲染在不同位置组合下的大量的声源和听者之间的脉冲响应,并将之参数化,并且在实时演算时,根据听者和声源的不同位置,实时切换渲染参数。这要求强大的计算设备(例如,微软使用了自家的Azure云)进行预渲染计算,并需要额外的存储空间来存放大量的参数。
如上所述,在场景中发生了预渲染过程中没考虑到的变化时,这种方法不能正确地反映出场景声学特性的变化,因为并没有保存对应的渲染参数。
二.射线追踪
这种算法的核心思想是:寻找尽可能多的从声源到听者之间的声音传播路径,从而获得该路径会带来的能量方向、延迟、以及滤波特性。此类算法是Oculus与Wwise的环境声学模拟系统的核心。
寻找声源到听者的传播路径的算法可以简单地归结于如下步骤:
(1)以听者位置为原点,向空间中放射若干条在球面上均匀分布的射线;以及(2)对于每一条射线:
(a)若某一声源到该射线的垂直距离小于一个预设值的话,则将当前路径标记为该声源的有效路径,并保存,
(b)当射线与场景相交时,根据相交点所在的三角形预设的材质信息,改变射线方向,使其继续在场景中发射,以及
(c)重复步骤(a)、(b),直到该射线反射的次数到达预设的最大反射深度,则回到步骤(2),对下一个射线初始方向执行步骤(a)~(c)的处理。
至此,每个声源都记录了一些路径信息。接下来,利用这些信息,可以计算每个声源的每个路径的能量方向、延迟、以及滤波特性。这些信息被统称为声源与听者之间的空间脉冲响应。最后,通过可听化(auralize)每个声源的空间脉冲响应,可以模拟出非常真实的声源方位、距离,以及声源与听者所处环境的特征。空间脉冲响应的可听化包括以下方法。
在一种方法中,通过将空间脉冲响应编码到Ambisonics域,在Ambisonics域生成双耳房间脉冲响应(Binaural Room Impulse Response,BRIR),并把声源原始信号与该BRIR进行卷积,可以得到具有房间反射和混响的空间音频。
在另一种方法中,利用空间脉冲响应的信息,将声源原始信号编码到Ambisonics域,然后把得到的Ambisonics信号渲染到双耳输出(双耳化)即可。
相比于波动物理仿真,基于射线追踪的环境声学模拟算法的计算量低得多,因此也不需要进行预渲染。此外,该模拟算法能够适应动态变化的场景(诸如,开门,材质变化,屋顶被打飞了,等等),也能够适应任何形状的场景。
但是,此类算法的精度极其依赖于射线初始方向的采样量,即需要更多的射线。然而,由于射线追踪算法的复杂度是O(nlog(n)),更多的射线势必会带来爆炸式增长的计算量。而且,无论是BRIR卷积,还是将原始信号编码到Ambisonics域,所需的计算量都十分可观。随着场景中声源个数的增加,计算量也会线性上涨。综上看,这 对于计算能力有限的移动端设备不是很友好。
三.化简环境的几何形状
这种算法的思路是:在给定当前场景的几何形状和表面材质后,试图去寻找一种近似但简单许多的几何图形以及表面材质,从而大幅度降低环境声学模拟的计算量。此类做法不是很常见,一个示例是Google的Resonance引擎,包括如下步骤:
(1)在预渲染阶段,估计一个正方体的房间形状;
(2)假设声源和听者在同一位置,利用正方体的几何特性,用查表的方法快速计算出场景中声源到听者之间的直达声以及早期反射声;以及
(3)在预渲染阶段,利用立方体房间中混响时长的经验公式,推算出当前场景中晚期混响的时长,从而控制一个人工混响来模拟场景的晚期混响效果。
此类算法的计算量极少,而且理论上可模拟无限长的混响时长,而没有额外的CPU和内存开销。
但是至少从目前公开的方法来看,此类算法具有如下劣势:场景近似形状是在预渲染阶段计算的,因此无法适应动态变化的场景(诸如开门、材质变化、屋顶被打飞了,等等);声源和听者被假设永远处在同一位置,极不符合现实;所有场景形状都被假设可近似为三条边分别与世界坐标平行的立方体,因此不能正确渲染很多现实场景(诸如狭长的走廊、倾斜的楼梯间、废旧的歪着的集装箱,等等)。简单来说,此类算法的极致的渲染速度是通过极大地牺牲渲染质量来换取的。
本申请的发明人提出了一种模拟环境声学的空间音频渲染技术。有利地,使用本公开的技术能够在不太影响渲染速度的前提下,使得基于几何化简的环境声学模拟算法能够具有接近于射线追踪算法的渲染质量,从而能够利用计算能力较为薄弱的设备实时地、高质量地模拟大量声源。
图1A示出了根据本公开的实施例的空间音频渲染系统的概念性示意图。如图1A所示,在该系统中,从描述渲染技术的控制信息的元数据(诸如动态的声源和听者的位置信息、渲染的声学环境信息,例如房屋形状、大小、墙体材质等)提取渲染参数,从而对声源的音频信号进行渲染,使其以适当的形式呈现给用户,满足用户体验。应指出,这样的空间音频渲染系统可适用于各种应用场景,尤其是空间音频在虚拟世界中的模拟。
下面将详细描述空间音频渲染系统100的各个核心模块及其相互关系。
场景信息处理器110
如图1A所示,根据本公开的实施例的空间音频渲染系统100包括场景信息处理器110。
下面将参考图2A-图2B详细描述根据本公开的实施例的场景信息处理器。图2A是例示根据本公开的实施例的场景信息处理器110的示例框图,以及图2B是例示场景信息处理器110的实现方式的示例的示意图。
如图2A所示,在本公开的实施例中,场景信息处理器110被配置为基于元数据(输入),确定用于空间音频渲染的参数(输出)。
在本公开的实施例中,元数据可以包括声学环境信息、听者空间信息和声源空间信息中的至少一部分。
在一些实施例中,声学环境信息(又称场景信息),可以包括但不限于组成场景的物体的集合以及该集合中各个物体的声学材质信息。作为示例,组成场景的物体的集合可以包括三面墙、一扇门和门前的一棵树。在一些实施例中,可以使用集合中各个物体的形状的三角形网格(例如包括它们的顶点和下标数组)来表示该物体的集合。此外,在一些实施例中,物体的声学材质信息包括但不限于物体的吸收率,散射率,透射率等。在一些实施例中,听者空间信息可以包括但不限于与听者的位置、朝向等相关的信息,以及声源空间信息可以包括但不限于与声源的位置、朝向等相关的信息。
值得注意的是,在一些实施例中,使用的声学环境信息、听者空间信息,声源空间信息中的至少部分信息可以不必是实时信息。由此,可以仅重新获取部分元数据来确定新的可用于空间音频渲染的参数。例如,在声学环境信息的变化相对缓慢的情况下,可以在预设时间段内使用相同的声学环境信息。又例如,在一些实施例中,在预测到听者空间信息的变化趋势后,可以使用预测的听者空间信息。本领域技术人员容易理解,本申请不限于上述示例。
在本公开的实施例中,用于空间音频渲染的参数可以指示听者所处场景中声音传播的特性。这里,场景中声音传播的特性可以用于模拟场景对于听者听到的声音的影响,包括例如各个声源的各条路径的能量方向、延迟、以及滤波特性以及各个频段的混响参数等。在一些实施例中,用于空间音频渲染的参数可以包括空间脉冲响应的集合和/或混响时长。其中,空间脉冲响应的集合可以包括直达声路径的空间脉冲响应和/或早期反射声路径的空间脉冲响应。此外,在一些实施例中,混响时长与频率相关,因此混响时长还可以解释为各频段的混响时长。但本领域技术人员容易理解,本申请不限于此。
在一些实施例中,场景信息处理器110可以进一步包括场景模型估计模块112和参 数计算模块114。
其中,场景模型估计模块112可以被配置为基于声学环境信息,估计与听者所处场景近似的场景模型。进一步地,在一些实例中,场景模型估计模块112可以被配置为基于声学环境信息以及听者空间信息二者来估计场景模型。但本领域技术人员容易理解,场景模型本身与听者空间信息无关,因此听者空间信息对于估计场景模型而言不是必须的。
此外,参数计算模块114可以被配置为基于估计的场景模型、听者空间信息和声源空间信息中的至少一部分,计算上述用于空间音频渲染的参数。
具体地,在一些实施例中,参数计算模块114可以被配置为基于估计的场景模型、听者空间信息和声源空间信息,计算上述空间脉冲响应的集合。此外,在一些实施例中,参数计算模块114可以被配置为基于估计的场景模型来计算混响时长。但本领域技术人员容易理解,本申请不限于此。例如,在一些实施例中,听者空间信息和声源空间信息也可以被参数计算模块114用来计算混响时长。
在图2B所示的场景信息处理器110的实现方式的示例中,场景模型估计模块112可以被配置为利用盒房间估计(Shoebox Room Estimation,SRE)算法来估计场景模型。在图2B例示的基于SRE算法的实现方式中,场景模型估计模块112所估计的场景模型可以是与听者所在的当前场景近似的长方体房间模型。长方体房间模型可以用例如房间特性(Room Properties)表示。在一些实施例中,房间特性包括但不限于房间的中心坐标、大小(比如长、宽、高)、朝向和壁材料等。有利地,该算法能够实时、高效地计算出与当前场景近似的长方体房间模型。但本领域技术人员容易理解,本申请中用于估计场景模型的算法不限于此。
如图2B所示,可以基于场景的点云数据来执行盒房间估计。在一些实施例中,基于场景信息(即,声学环境信息)和听者空间信息,通过从听者所在位置向场景四周发出射线来获取点云。可替换地,可以通过从任一参照位置向场景四周发出射线来获取点云。即,如上所述,听者空间信息对于环境模型的估计不是必须的。此外,本领域技术人员容易理解,获取点云对于估计场景模型也不是必须的。例如,在一些实施例中,可以使用其它测绘手段、成像手段等来代替获取点云的步骤。
在图2B所示的场景信息处理器110的实现方式的示例中,参数计算模块114可以被配置为基于估计的房间特性(场景模型的示例),可选地结合元数据中的听者空间信息和涉及N个声源的声源空间信息,计算可听化参数(用于空间音频渲染的参数的示例)。
例如,如图2B所示,参数计算模块114可以基于估计的房间特性、听者空间信息和 声源空间信息来计算直达声路径(Direct Sound Path)和/或早期反射声路径(Early Reflection Path),从而获得相应的直达声路径的空间脉冲响应和/或早期反射声路径的空间脉冲响应。
在一些实施例中,计算直达声路径可以通过以下方式实现:在听者与声源之间连一条直线,通过射线追踪器(ray tracer)和输入的声学环境信息,判断声源的直达声路径是否被遮挡。若直达声路径未被遮挡,则记录该直达声路径;反之,则不记录该直达声路径。
在一些实施例中,计算早期反射声路径可以通过以下方式实现,其中假设早期反射声的最大反射深度为depth:
(1)(可选步骤)判断声源是否在当前房间特性所表示的长方体房间范围内,若不在,则返回,不记录该声源早期反射声路径;
(2)将声源位置推入队列q;
(3)记录下此时队列q的长度w;
(4)对队首w个声源位置,计算它们对于6个墙壁的镜面位置,并计算他们到听者的距离d0以及他们的镜面位置到听者的距离d1。若d1>d0,则将这个镜面位置推入队列;同时,记录镜面位置到听者的直线路径,以及路径上会经过的墙壁的吸收率与散射率的乘积;
(5)将队列q的前w个元素出队;以及
(6)重复步骤(3)~(6)(depth–1)次。
但本领域技术人员容易理解,用于计算直达声路径或计算早期反射声路径的方式不限于以上示例,而是可以根据需要自行设计。此外,虽然图中例示了计算直达声路径和早期反射声路径二者,但这仅是示例,本申请不限于此。例如,在一些实施例中,可以仅计算直达声路径。
此外,如图2B所示,参数计算模块114还可以基于估计的房间特性来计算当前场景各频段的混响时长(例如,RT60)。
如上所述,场景模型估计模块112可以用于估计场景模型,同时,参数计算模块114可以利用所估计的场景模型,可选地结合声源与听者的位置、朝向等信息,计算相应的用于空间音频渲染的参数。在空间音频渲染系统100运行期间,以上对场景模型的估计和对用于空间音频渲染的参数的计算可以持续地进行。有利地,通过提供持续更新的用于空间音频渲染的参数,提高了空间音频渲染系统的响应速度和表达能力。
需要注意的是,场景模型估计模块112与参数计算模块114的运行不需要一定是同步的。也就说是,在该算法的具体实施方式中,场景模型估计模块112与参数计算模块114可以被设置在不同的线程中运行,即,场景模型估计模块112与参数计算模块114的运行可以是异步的。例如,鉴于声学环境的变化相对缓慢,场景模型估计模块112的运行周期可以远大于参数计算模块114的运行周期。在这种异步的实现方式中,需要实现场景模型估计模块112与参数计算模块114之间安全的线程通信,从而传递场景模型。例如,在一些实施例中,可以使用乒乓缓冲(ping pong buffer)的方式实现无锁零拷贝的信息传递。但本领域技术人员容易理解,用于实现安全线程通信的方式不限于乒乓缓冲,甚至不限于无锁零拷贝的实现方式。
空间音频编码器120
返回参考图1A,根据本公开的实施例的空间音频渲染系统100还包括空间音频编码器120。如图1A所示,空间音频编码器120被配置为基于从场景信息处理器110输出的用于空间音频渲染的参数,对声源的音频信号进行处理,以获得编码的音频信号。
在空间音频渲染系统100的实现方式的示例中,如图1B所示,声源的音频信号可以包括来自声源1至声源N的输入信号。
在一些实施例中,空间音频编码器120可以进一步包括第一编码单元122和/或第二编码单元124。第一编码单元122可以被配置为利用直达声路径的空间脉冲响应对声源的音频信号进行空间音频编码,得到直达声的空间音频编码信号。第二编码单元124可以被配置为利用早期反射声路径的空间脉冲响应对声源的音频信号进行空间音频编码,得到早期反射声的空间音频编码信号。虽然图中例示了第一编码单元122和第二编码单元124二者,但这仅是示例,本申请不限于此。例如,在一些实施例中,可以包括第一编码单元122。
在一些实施例中,空间音频编码可以使用球形声场全景声技术(Ambisonics)。由此,各个空间音频编码信号可以是Ambisonics类型的音频信号。Ambisonics类型的音频信号可以包括一阶Ambisonics(First Order Ambisonics,FOA),高阶Ambisonics(Higher Order Ambisonics,HOA)等。
例如,在图1B所示的空间音频渲染系统100的实现方式的示例中,第一编码单元122可以被配置为利用直达声路径的空间脉冲响应对声源的音频信号进行编码,计算直达声的Ambisonics信号。即,第一编码单元122的输入可以包括由声源1至声源N的输入信号组成的声源的音频信号以及直达声路径的空间脉冲响应。通过用直达声路径 的空间脉冲响应将声源的音频信号编码到Ambisonics域,第一编码单元122的输出可以包括针对声源的音频信号的直达声的Ambisonics信号。
类似地,第二编码单元124可以被配置为利用早期反射声路径的空间脉冲响应对声源的音频信号进行编码,计算早期反射声的Ambisonics信号。即,第二编码器124的输入可以包括由声源1至声源N的输入信号组成的声源的音频信号以及早期反射声路径的空间脉冲响应。通过用早期反射声路径的空间脉冲响应将声源的音频信号编码到Ambisonics域,第二编码单元124的输出可以包括声源的音频信号的早期反射声的Ambisonics信号。
这样,通过用空间脉冲响应的集合将声源的音频信号编码到Ambisonics域,得到了声源的音频信号经空间脉冲响应的集合描述的所有传播路径到达听者后在所有空间化的路径上的Ambisonics信号之和。
作为示例,在一些实施例中,在编码单元中对声源信号进行编码可以通过以下方式实现:
对于每个声源,考虑到声音在空间中传播的延时,声源的音频信号被写入一个延时器。根据场景信息处理器110得到的结果,每个声源会具有一条或多条到达听者的传播路径,可以根据每条路径的长度来计算该声源通过该路径到达听者所需要的时间t1。编码单元从该声源的延时器中获取t1时刻前该声源的音频信号s,根据路径能量强度进行滤波E,并结合路径到达听者的方向θ对信号进行Ambisonics编码,将其转换成HOA信号s
N,其中N为HOA信号的声道总数。可选的,这里也可以使用路径相对于坐标系的方向,而不是到听者的方向θ,以便在后续步骤中通过与旋转矩阵相乘来得到目标声场信号。一种典型的编码方法如下,其中Y
N为对应声道的球谐函数:
s
N=E(s(t-t
1))Y
N(θ)
在一些实施例中,编码操作可以在时域或者频域进行。此外,编码单元可以进一步根据空间传播路径的长度,采用近场补偿函数(near-field compensation),扩散函数(source spread)中的至少一者来进行编码,以增强效果。
最后,对于每个声源的每条传播路径的转换后得到的HOA信号,可以根据声源的权重,进行加权叠加。叠加的结果是所有声源的音频信号的直达声和早期反射声在Ambisonics域的表示。
此外,在一些实施例中,空间音频编码器120可以进一步包括人工混响(Artificial Reverb)单元126。
在一些实施例中,人工混响单元126可以被配置为基于混响时长和声源的音频信号确定混合信号。
具体地,在一些实施例中,所述系统可以包括混响预处理单元,该混响预处理单元被配置为根据听者和声源的距离以及所述声源的音频信号来确定混响输入信号。由此,人工混响单元126可以被配置为基于混响时长,对混响输入信号进行人工混响处理,得到上述混合信号。在一些实施例中,混响预处理单元可以被包括在人工混响单元126中,但这仅是示例,本申请不限于此。
可替代地,在另一些实施例中,人工混响单元126可以被配置为基于混响时长,对早期反射声的空间音频编码信号进行人工混响处理,输出早期反射声的空间音频编码信号与晚期混响的空间音频编码信号的混合信号。
例如,在图1B所示的空间音频渲染系统100的实现方式的示例中,人工混响单元126的输入可以包括早期反射声的Ambisonics信号以及各频段的混响时长(例如RT60)。由此,人工混响单元126的输出可以包括早期反射声的Ambisonics信号和晚期混响的Ambisonics信号的混合信号。即,人工混响单元126可以输出带有晚期混响的Ambisonics信号。
在一些实施例中,可以在人工混响单元126中使用反馈延迟网络(Feedback Delay Network,FDN)算法来实现人工混响处理,FDN算法的优点在于具有随时间增长的回声密度(echo density)以及易于灵活调节的输入输出通道个数。
作为示例,在一些实施例中,可以使用如图3A-图3B所示的人工混响单元126的实现方式的示例。
图3A示出了根据本公开的实施例的接受FOA输入和FOA输出(FOA in,FOA out)的16阶FDN混响器(一个频段)的配置的示例。
其中,延迟0~延迟15是固定长度的延迟(delay)。在一些实施例中,延迟0~延迟15可以通过在例如30ms~50ms的范围内随机选取互为质数的数,并取该数与采样率乘积的近似正整数来设定。反射矩阵(Reflection Matrix)可以例如是一个16x 16的豪斯霍尔德(Householder)矩阵。g0~g15是每个延迟之后的反馈增益。根据输入的混响时长(例如RT60),g的具体数值可以如下计算:
另外,在一些实施例中,如果在实现FDN算法时使用了多频段吸收率,则该混响需要改成多频段可调的形式,可参考如图3B所示的实现方式。
图3B示出了根据本公开的实施例的接受FOA输入和FOA输出的FDN混响器(多个频段)的配置的示例。
其中,“全通*4”是4个级联的施罗德(Schroeder)全通滤波器;每个滤波器的延迟采样数可以通过在例如5ms~10ms的范围内随机选取互为质数的数并取该数与采样率乘积的近似正整数来设定;以及每个滤波器的g可设为0.7。
值得注意的是,上述实现人工混响单元的方式都接受FOA输入和FOA输出。有利地,这种实现方式能够保持早期反射声的方向性。
本领域技术人员容易理解,以上示例仅用于说明可选择的实现方法是存在的,而不代表只能使用这种方法,用于实现人工混响单元的方式不限于以上示例。
空间音频解码器140
返回参照图1A,根据本公开的实施例的空间音频渲染系统100还包括空间音频解码器140。如图1A所示,空间音频解码器140被配置为对编码的音频信号进行空间解码,以得到解码的音频信号。
在一些实施例中,输入空间音频解码器140的编码的音频信号包括直达声的空间音频编码信号以及混合信号。该混合信号包括晚期混响的空间音频编码信号和/或早期反射声的空间音频编码信号。即,第一编码单元122和人工混响单元126的输出信号被输入空间音频解码器140。
例如,在图1B所示的空间音频渲染系统100的实现方式的示例中,输入空间音频解码器140的信号包括直达声的Ambisonics信号以及早期反射声的Ambisonics信号与晚期混响的Ambisonics信号的混合信号。
在一些实施例中,空间音频解码器140的输入还可以包括除编码的音频信号以外的其它信号,例如,透传信号(诸如非叙事声道信号)。
可选地,在一些实施例中,在空间音频解码器140执行空间解码之前,可以对编码的音频信号进行其它处理。例如,在图1B所示的空间音频渲染系统100的实现方式的示例中,空间音频解码器140可以在执行空间解码之前,根据元数据中的旋转信息,按需要将Ambisonics信号与旋转矩阵相乘以获取旋转后的Ambisonics信号。
在一些实施例中,根据不同的需求,空间音频解码器140可以输出成多种信号,包括但不限于输出适应于扬声器以及适应于耳机的不同种类的信号。
在一些实施例中,空间音频解码器140可以基于用户应用场景的回放类型进行空间解码,以获取适合于在用户回放应用场景中进行回放的音频信号。以下列举了基于用户应 用场景的回放类型进行空间解码的方法的一些实施例,但本领域技术人员容易理解,解码方法不限于此。
一.标准扬声器阵列空间解码
在一些实施例中,扬声器阵列为在标准中定义的扬声器阵列,如5.1扬声器阵列。在这种情况下,解码器会内置解码矩阵系数,通过Ambisonics信号与解码矩阵相乘即可获取回放信号L。
L=DS
N
其中,L为扬声器阵列信号,D为解码矩阵,S
N为HOA信号。
同时根据标准扬声器的定义,可以将透传的信号转换到扬声器阵列中,具体手段可以有VBAP等。
二.自定义扬声器阵列空间解码
在一些实施例中,扬声器阵列为自定义扬声器阵列,这类扬声器通常具有球形、半球形设计或矩形,可以包围或半包围听音者。在这种情况下,空间音频解码器140可根据自定义扬声器的排列方式计算解码矩阵,需要的输入包括每个扬声器的方位角与俯仰角,或扬声器的三维坐标值。扬声器解码矩阵的计算方式可以有抽样Ambisonics解码器(Sampling Ambisonics Decoder,SAD)、模式匹配解码器(Mode Matching Decoder,MMD)、能量保存Ambisonics解码器(Energy preserved Ambisonics Decoder,EPAD)、全方位Ambisonics解码器(All Round Ambisonics Decoder,AllRAD)等。
三.特殊扬声器阵列空间解码
在一些实施例中,扬声器阵列为Sound Bar或一些更为特殊的扬声器阵列。在这种情况下,需要扬声器制造商提供对应设计的解码矩阵。系统提供解码矩阵设置接口,通过制定解码矩阵进行解码处理。
四.耳机(双耳回放)空间解码
在一些实施例中,用户应用环境为耳机回放环境。作为示例,对于耳机的回放环境,有几种可选的解码方式。
一种方式是直接将Ambisonics信号解码成为双耳信号,典型的方法有最小二乘法(least squares,LS)、幅度最小二乘法(Magnitude LS)、空间重采样(Spatial resampling,SPR)等。对于透传的信号,通常为双耳信号,可以直接进行回放。
另一种方式是进行间接渲染,即先将使用扬声器阵列,再根据扬声器的位置进行 HRTF卷积来对扬声器进行虚拟化处理。
有利地,使用本公开的技术能够在不太影响渲染速度的前提下,使得基于几何化简的环境声学模拟算法能够具有接近于射线追踪算法的渲染质量,从而能够利用计算能力较为薄弱的设备实时地、高质量地模拟大量声源。
图1C例示了根据本公开的实施例的空间音频渲染系统100的应用示例的简化示意图。
在图1C所示的应用示例中,空间编码部分对应于上述实施例中的空间音频编码器,空间解码部分对应于上述实施例中的空间音频解码器,场景信息处理器被配置为基于元数据确定用于空间编码的参数(对应于上述实施例中的用于空间音频渲染的参数)。
此外,基于对象的空间音频表示信号对应于上述实施例中的声源的音频信号。空间编码部分被配置为基于从场景信息处理器输出的参数,对基于对象的空间音频表示信号进行处理以获得作为中间信号介质的一部分的编码的音频信号。值得注意的是,基于场景的空间音频表示信号和基于声道的空间音频表示信号可以直接作为特定空间格式信号来直传至空间解码器,而无需进行前述空间音频处理。
根据不同的需求,空间解码部分可以输出成多种信号,包括但不限于输出适应于各种扬声器以及适应于耳机的不同种类的信号。
应注意,如上所述的空间音频渲染系统的各个元件仅是根据其所实现的具体功能划分的逻辑模块,而不是用于限制具体的实现方式,例如可以以软件、硬件或者软硬件结合的方式来实现。在实际实现时,上述各个单元可被实现为独立的物理实体、或者也可由单个实体(例如,处理器(CPU或DSP等)、集成电路等)来实现,例如,编码器、解码器等等可以采用芯片(诸如包括单个晶片的集成电路模块)、硬件部件或完整的产品此外,附图中用虚线示出的元件指示这些元件可以存在,但是无需实际存在,而它们所实现的操作/功能可由处理电路本身来实现。
此外,可选地,空间音频渲染系统100还可以包括未示出的其它部件,诸如接口、存储器、通信单元等。作为示例,接口和/或通信单元可用于接收输入的待渲染的音频信号,还可以将最终产生的音频信号输出给回放环境中的回放设备以供回放。作为示例,存储器可以存储空间音频渲染中所使用的和/或空间音频渲染过程中所产生的各种数据、信息、程序等等。存储器可以包括但不限于随机存储存储器(RAM)、动态随机存储存储器(DRAM)、静态随机存取存储器(SRAM)、只读存储器(ROM)、闪存存储器。
图4A示出了根据本公开的实施例的空间音频渲染方法40的示意流程图;图4B示出了根据本公开的实施例的场景信息处理方法420的示意流程图。以上描述的关于场景信息处理器和空间音频渲染系统的相应内容也适应于这部分内容,这里不再重复描述。
如图4A所示,根据本公开的实施例的空间音频渲染方法40包括以下步骤:在步骤42中,执行场景信息处理方法420,以确定用于空间音频渲染的参数;在步骤44中,基于用于空间音频渲染的参数,对声源的音频信号进行处理,以获得编码的音频信号;以及在步骤46中,对编码的音频信号进行空间解码,以得到解码的音频信号。
如图4B所示,根据本公开的实施例的场景信息处理方法420包括以下步骤:在步骤422,获取元数据,其中元数据包括声学环境信息、听者空间信息和声源空间信息中的至少一部分;以及在步骤424中,基于元数据,确定用于空间音频渲染的参数,其中,用于空间音频渲染的参数指示听者所处场景中声音传播的特性。
在一些实施例中,步骤424可以进一步包括以下子步骤:在子步骤4242,基于声学环境信息,估计与听者所处场景近似的场景模型;以及在子步骤4244,基于估计的场景模型、听者空间信息和声源空间信息中的至少一部分,计算用于空间音频渲染的参数。
在一些实施例中,用于空间音频渲染的参数可以包括空间脉冲响应的集合和/或混响时长。其中,空间脉冲响应的集合可以包括直达声路径的空间脉冲响应和/或早期反射声路径的空间脉冲响应。此外,在一些实施例中,混响时长与频率相关,因此混响时长还可以解释为各频段的混响时长。但本领域技术人员容易理解,本申请不限于此。
在一些实施例中,计算用于空间音频渲染的参数包括基于估计的场景模型、听者空间信息和声源空间信息,计算空间脉冲响应的集合。此外,在一些实施例中,计算用于空间音频渲染的参数包括基于估计的场景模型,计算混响时长。
在一些实施例中,估计场景模型的子步骤4242与计算用于空间音频渲染的参数的子步骤4244被异步地执行。
返回参考图4A,在一些实施例中,步骤44可以进一步包括以下子步骤:在子步骤442,利用直达声路径的空间脉冲响应,对声源的音频信号进行空间音频编码,以得到直达声的空间音频编码信号;以及在子步骤444,利用早期反射声路径的空间脉冲响应,对声源的音频信号进行空间音频编码,以得到早期反射声的空间音频编码信号。但这仅是示例,本申请不限于此,例如,步骤44可以仅包括子步骤442。
此外,在一些实施例中,步骤44还可以进一步包括子步骤446。在子步骤446,基于混响时长,对早期反射声的空间音频编码信号进行人工混响处理,输出早期反射声的空 间音频编码信号与晚期混响的空间音频编码信号的混合信号。
可替换地,在一些实施例中,在子步骤446中,基于混响时长和声源的音频信号确定上述混合信号。具体地,子步骤446包括:根据听者和声源的距离以及声源的音频信号确定混响输入信号;以及,基于混响时长,对混响输入信号进行人工混响处理,得到上述混合信号。
由此,在一些实施例中,要在步骤46中经历空间音频解码的编码的音频信号包括直达声的空间音频编码信号以及上述混合信号。该混合信号包括晚期混响的空间音频编码信号和/或早期反射声的空间音频编码信号。
本领域技术人员容易理解,以上描述的根据本公开的空间音频渲染系统的特征也适用于根据本公开的空间音频渲染方法中的相关内容,这里不再重复描述。
尽管未示出,根据本公开的空间音频渲染方法还可以包括其它步骤来实现前文所述的各个处理/操作,这里将不再详细描述。应指出,根据本公开的空间音频渲染方法以及其中的步骤可以由任何适当的设备来执行,例如处理器、集成电路、芯片等来执行,例如可以由前述音频渲染系统以及其中各个模块来执行,该方法中也可以体现在计算机程序、指令、计算机程序介质、计算机程序产品等中来实现。
图5示出本公开的电子设备的一些实施例的框图。
如图5所示,该实施例的电子设备5包括:存储器51以及耦接至该存储器51的处理器52,处理器52被配置为基于存储在存储器51中的指令,执行本公开中任意一个实施例中的空间音频渲染方法。
其中,存储器51例如可以包括系统存储器、固定非易失性存储介质等。系统存储器例如存储有操作系统、应用程序、引导装载程序(Boot Loader)、数据库以及其他程序等。
下面参考图6,其示出了适于用来实现本公开实施例的电子设备的结构示意图。本公开实施例中的电子设备可以包括但不限于诸如移动电话、笔记本电脑、数字广播接收器、PDA(个人数字助理)、PAD(平板电脑)、PMP(便携式多媒体播放器)、车载终端(例如车载导航终端)等等的移动终端以及诸如数字TV、台式计算机等等的固定终端。图6示出的电子设备仅仅是一个示例,不应对本公开实施例的功能和使用范围带来任何限制。
图6示出本公开的电子设备的另一些实施例的框图。
如图6所示,电子设备可以包括处理装置(例如中央处理器、图形处理器等)601, 其可以根据存储在只读存储器(ROM)602中的程序或者从存储装置608加载到随机访问存储器(RAM)603中的程序而执行各种适当的动作和处理。在RAM 603中,还存储有电子设备操作所需的各种程序和数据。处理装置601、ROM 602以及RAM 603通过总线604彼此相连。输入/输出(I/O)接口605也连接至总线604。
通常,以下装置可以连接至I/O接口605:包括例如触摸屏、触摸板、键盘、鼠标、图像传感器、麦克风、加速度计、陀螺仪等的输入装置606;包括例如液晶显示器(LCD)、扬声器、振动器等的输出装置607;包括例如磁带、硬盘等的存储装置608;以及通信装置609。通信装置609可以允许电子设备与其他设备进行无线或有线通信以交换数据。虽然图6示出了具有各种装置的电子设备,但是应理解的是,并不要求实施或具备所有示出的装置。可以替代地实施或具备更多或更少的装置。
根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信装置609从网络上被下载和安装,或者从存储装置608被安装,或者从ROM 602被安装。在该计算机程序被处理装置601执行时,执行本公开实施例的方法中限定的上述功能。
在一些实施例中,还提供了芯片,包括:至少一个处理器和接口,接口,用于为至少一个处理器提供计算机执行指令,至少一个处理器用于执行计算机执行指令,实现上述任一个实施例的场景信息处理方法或空间音频渲染方法。
图7示出本公开的芯片的一些实施例的框图。
如图7所示,芯片的处理器70作为协处理器挂载到主CPU(Host CPU)上,由Host CPU分配任务。处理器70的核心部分为运算电路,控制器704控制运算电路703提取存储器(权重存储器或输入存储器)中的数据并进行运算。
在一些实施例中,运算电路703内部包括多个处理单元(Process Engine,PE)。在一些实施例中,运算电路703是二维脉动阵列。运算电路703还可以是一维脉动阵列或者能够执行例如乘法和加法这样的数学运算的其它电子线路。在一些实施例中,运算电路703是通用的矩阵处理器。
例如,假设有输入矩阵A,权重矩阵B,输出矩阵C。运算电路从权重存储器702中取矩阵B相应的数据,并缓存在运算电路中每一个PE上。运算电路从输入存储器701中取矩阵A数据与矩阵B进行矩阵运算,得到的矩阵的部分结果或最终结果,保 存在累加器(accumulator)708中。
向量计算单元707可以对运算电路的输出做进一步处理,如向量乘,向量加,指数运算,对数运算,大小比较等等。
在一些实施例中,向量计算单元能707将经处理的输出的向量存储到统一缓存器706。例如,向量计算单元707可以将非线性函数应用到运算电路703的输出,例如累加值的向量,用以生成激活值。在一些实施例中,向量计算单元707生成归一化的值、合并值,或二者均有。在一些实施例中,处理过的输出的向量能够用作到运算电路703的激活输入,例如用于在神经网络中的后续层中的使用。
统一存储器706用于存放输入数据以及输出数据。
存储单元访问控制器705(Direct Memory Access Controller,DMAC)将外部存储器中的输入数据搬运到输入存储器701和/或统一存储器706、将外部存储器中的权重数据存入权重存储器702,以及将统一存储器706中的数据存入外部存储器。
总线接口单元(Bus Interface Unit,BIU)510,用于通过总线实现主CPU、DMAC和取指存储器709之间进行交互。
与控制器704连接的取指存储器(instruction fetch buffer)709,用于存储控制器704使用的指令;
控制器704,用于调用指存储器709中缓存的指令,实现控制该运算加速器的工作过程。
一般地,统一存储器706、输入存储器701、权重存储器702以及取指存储器709均为片上(On-Chip)存储器,外部存储器为该NPU外部的存储器,该外部存储器可以为双倍数据率同步动态随机存储器(Double Data Rate Synchronous Dynamic Random AccessMemory,DDR SDRAM)、高带宽存储器(High Bandwidth Memory,HBM)或其他可读可写的存储器。
在一些实施例中,还提供了一种计算机程序,包括:指令,指令当由处理器执行时使处理器执行上述任一个实施例的场景信息处理方法或空间音频渲染方法。
本领域内的技术人员应当明白,本公开可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。在使用软件实现时,上述实施例可以全部或部分地以计算机程序产品的形式实现。计算机程序产品包括一个或多个计算机指令或计算机程序。在计算机上加载或执行计算机指令或计算机程序时,全部或部分地产生按照本申请实施例的流程或功能。计算机可以为通用计算机、专用计算机、计算机网 络、或者其他可编程装置。而且,本公开可采用在一个或多个其中包含有计算机可用程序代码的计算机可用非瞬时性存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
虽然已经通过示例对本公开的一些特定实施例进行了详细说明,但是本领域的技术人员应该理解,以上示例仅是为了进行说明,而不是为了限制本公开的范围。本领域的技术人员应该理解,可在不脱离本公开的范围和精神的情况下,对以上实施例进行修改。本公开的范围由所附权利要求来限定。
Claims (27)
- 一种空间音频渲染方法,其中,所述方法包括:基于元数据,确定用于空间音频渲染的参数,其中,所述元数据包括声学环境信息、听者空间信息和声源空间信息中的至少一部分,所述用于空间音频渲染的参数指示听者所处场景中声音传播的特性;基于所述用于空间音频渲染的参数,对声源的音频信号进行处理,以获得编码的音频信号;以及对所述编码的音频信号进行空间解码,以得到解码的音频信号。
- 根据权利要求1所述的方法,其中,确定所述用于空间音频渲染的参数包括:基于声学环境信息,估计与听者所处场景近似的场景模型;以及基于估计的场景模型、听者空间信息和声源空间信息中的至少一部分,计算所述用于空间音频渲染的参数。
- 根据权利要求2所述的方法,其中,所述用于空间音频渲染的参数包括空间脉冲响应的集合和/或混响时长。
- 根据权利要求3所述的方法,其中,所述空间脉冲响应的集合包括直达声路径的空间脉冲响应和/或早期反射声路径的空间脉冲响应。
- 根据权利要求3或4所述的方法,其中,所述混响时长是基于估计的场景模型计算得到的。
- 根据权利要求3至5中任一项所述的方法,其中,所述空间脉冲响应的集合是基于估计的场景模型、听者空间信息和声源空间信息计算得到的。
- 根据权利要求3至6中任一项所述的方法,其中,所述编码的音频信号包括:直达声的空间音频编码信号,和/或混合信号,其中,所述混合信号中包括晚期混响的空间音频编码信号和/或早期反射声的空间音频编码信号。
- 根据权利要求7所述的方法,其中,所述直达声的空间音频编码信号是利用所述直达声路径的空间脉冲响应,对所述声源的音频信号进行空间音频编码得到的。
- 根据权利要求7或8所述的方法,其中,所述混合信号是通过以下步骤得到的:基于所述混响时长和所述声源的音频信号确定所述混合信号。
- 根据权利要求9所述的方法,其中,基于所述混响时长和所述声源的音频信号确定所述混合信号包括:根据听者和声源的距离以及所述声源的音频信号,确定混响输入信号;以及基于所述混响时长,对所述混响输入信号进行人工混响处理,得到所述混合信号。
- 根据权利要求7或8所述的方法,其中,所述混合信号是通过以下步骤得到的:利用所述早期反射声路径的空间脉冲响应,对所述声源的音频信号进行空间音频编码,得到所述早期反射声的空间音频编码信号;以及基于所述混响时长,对所述早期反射声的空间音频编码信号进行人工混响处理,得到所述早期反射声的空间音频编码信号与所述晚期混响的空间音频编码信号混合的所述混合信号。
- 一种空间音频渲染系统,包括:场景信息处理器,被配置为基于元数据,确定用于空间音频渲染的参数,其中,所述元数据包括声学环境信息、听者空间信息和声源空间信息中的至少一部分,所述用于空间音频渲染的参数指示听者所处场景中声音传播的特性;空间音频编码器,被配置为基于所述用于空间音频渲染的参数,对声源的音频信号进行处理,以获得编码的音频信号;以及空间音频解码器,被配置为对所述编码的音频信号进行空间解码,以得到解码的音频信号。
- 根据权利要求12所述的系统,其中,所述场景信息处理器进一步包括:场景模型估计模块,被配置为基于声学环境信息,估计与听者所处场景近似的场景模型;以及参数计算模块,被配置为基于估计的场景模型、听者空间信息和声源空间信息中的至少一部分,计算所述用于空间音频渲染的参数。
- 根据权利要求13所述的系统,其中,所述用于空间音频渲染的参数包括空间脉冲响应的集合和/或混响时长。
- 根据权利要求14所述的系统,其中,所述空间脉冲响应的集合包括直达声路径的空间脉冲响应和/或早期反射声路径的空间脉冲响应。
- 根据权利要求14或15所述的系统,其中,所述混响时长是由所述参数计算模块基于估计的场景模型计算得到的。
- 根据权利要求14-16中任一项所述的系统,其中,所述空间脉冲响应的集合是由所述参数计算模块基于估计的场景模型、听者空间信息和声源空间信息计算得到的。
- 根据权利要求14至17中任一项所述的系统,其中所述编码的音频信号包括:直达声的空间音频编码信号,和/或混合信号,其中,所述混合信号中包括晚期混响的空间音频编码信号和/或早期反射声的空间音频编码信号。
- 根据权利要求18所述的系统,其中,所述空间音频编码器包括第一编码单元,所述直达声的空间音频编码信号是由所述第一编码单元利用所述直达声路径的空间脉冲响应,对所述声源的音频信号进行空间音频编码得到的。
- 根据权利要求18或19所述的系统,其中,所述空间音频编码器包括人工混响单元,所述混合信号是由所述人工混响单元基于所述混响时长和所述声源的音频信号确定的。
- 根据权利要求20所述的系统,其中,所述混合信号是由所述人工混响单元通过以下步骤确定的:基于所述混响时长,对混响输入信号进行人工混响处理,得到所述混合信号,其中,所述混响输入信号是根据听者和声源的距离以及所述声源的音频信号确定的。
- 根据权利要求18或19所述的系统,其中,所述空间音频编码器包括第二编码单元和人工混响单元,所述混合信号是通过所述第二编码单元和所述人工混响单元进行以下操作得到的:所述第二编码单元利用所述早期反射声路径的空间脉冲响应,对所述声源的音频信号进行空间音频编码,得到所述早期反射声的空间音频编码信号;以及所述人工混响单元基于所述混响时长,对所述早期反射声的空间音频编码信号进行人工混响处理,得到所述早期反射声的空间音频编码信号与所述晚期混响的空间音频编码信号混合的所述混合信号。
- 一种芯片,包括:至少一个处理器和接口,所述接口,用于为所述至少一个处理器提供计算机执行指令,所述至少一个处理器用于执行所述计算机执行指令,实现根据权利要求1-11中任一项所述的空间音频渲染方法。
- 一种计算机程序,包括:指令,所述指令当由处理器执行时使所述处理器执行根据权利要求1-11中任一项所述的空间音频渲染方法。
- 一种电子设备,包括:存储器;和耦接至所述存储器的处理器,所述处理器被配置为基于存储在所述存储器装置中的指令,执行根据权利要求1-11中任一项所述的空间音频渲染方法。
- 一种非瞬时性计算机可读存储介质,其上存储有计算机程序,该程序被处理器执 行时实现根据权利要求1-11中任一项所述的空间音频渲染方法。
- 一种计算机程序产品,包括指令,所述指令当由处理器执行时使所述处理器执行根据权利要求1-11中任一项所述的空间音频渲染方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2021121729 | 2021-09-29 | ||
CNPCT/CN2021/121729 | 2021-09-29 | ||
PCT/CN2022/122657 WO2023051708A1 (zh) | 2021-09-29 | 2022-09-29 | 用于空间音频渲染的系统、方法和电子设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN118020319A true CN118020319A (zh) | 2024-05-10 |
Family
ID=85781374
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202280065188.0A Pending CN118020319A (zh) | 2021-09-29 | 2022-09-29 | 用于空间音频渲染的系统、方法和电子设备 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN118020319A (zh) |
WO (1) | WO2023051708A1 (zh) |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20090110242A (ko) * | 2008-04-17 | 2009-10-21 | 삼성전자주식회사 | 오디오 신호를 처리하는 방법 및 장치 |
US11395087B2 (en) * | 2017-09-29 | 2022-07-19 | Nokia Technologies Oy | Level-based audio-object interactions |
US10921446B2 (en) * | 2018-04-06 | 2021-02-16 | Microsoft Technology Licensing, Llc | Collaborative mapping of a space using ultrasonic sonar |
JP7321170B2 (ja) * | 2018-04-16 | 2023-08-04 | ドルビー ラボラトリーズ ライセンシング コーポレイション | 方向性音源のエンコードおよびデコードのための方法、装置およびシステム |
KR20210148238A (ko) * | 2019-04-02 | 2021-12-07 | 에스와이엔지, 인크. | 공간적 오디오 렌더링을 위한 시스템들 및 방법들 |
-
2022
- 2022-09-29 CN CN202280065188.0A patent/CN118020319A/zh active Pending
- 2022-09-29 WO PCT/CN2022/122657 patent/WO2023051708A1/zh unknown
Also Published As
Publication number | Publication date |
---|---|
WO2023051708A1 (zh) | 2023-04-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Raghuvanshi et al. | Parametric directional coding for precomputed sound propagation | |
Cuevas-Rodríguez et al. | 3D Tune-In Toolkit: An open-source library for real-time binaural spatialisation | |
US8908875B2 (en) | Electronic device with digital reverberator and method | |
US20230100071A1 (en) | Rendering reverberation | |
KR100606734B1 (ko) | 삼차원 입체음향 구현 방법 및 그 장치 | |
US9940922B1 (en) | Methods, systems, and computer readable media for utilizing ray-parameterized reverberation filters to facilitate interactive sound rendering | |
CN116156411A (zh) | 用于交互式音频环境的空间音频 | |
WO2021186107A1 (en) | Encoding reverberator parameters from virtual or physical scene geometry and desired reverberation characteristics and rendering using these | |
Tsingos et al. | Soundtracks for computer animation: sound rendering in dynamic environments with occlusions | |
CN108391199B (zh) | 基于个性化反射声阈值的虚拟声像合成方法、介质和终端 | |
JP2005080124A (ja) | リアルタイム音響再現システム | |
EP4101182A1 (en) | Augmented reality virtual audio source enhancement | |
Beig et al. | An introduction to spatial sound rendering in virtual environments and games | |
CN116671133A (zh) | 用于融合虚拟场景描述和收听者空间描述的方法和装置 | |
US20230306953A1 (en) | Method for generating a reverberation audio signal | |
Schissler et al. | Interactive sound rendering on mobile devices using ray-parameterized reverberation filters | |
WO2023246327A1 (zh) | 音频信号处理方法、装置和计算机设备 | |
Raghuvanshi et al. | Interactive and Immersive Auralization | |
WO2023051708A1 (zh) | 用于空间音频渲染的系统、方法和电子设备 | |
WO2023274400A1 (zh) | 音频信号的渲染方法、装置和电子设备 | |
CN117837173A (zh) | 用于音频渲染的信号处理方法、装置和电子设备 | |
KR20200003051A (ko) | 인코히어런트 멱등 앰비소닉스 렌더링 | |
CN117242796A (zh) | 渲染混响 | |
WO2023051703A1 (zh) | 一种音频渲染系统和方法 | |
Foale et al. | Portal-based sound propagation for first-person computer games |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |