HOA系数的获取方法和装置

文档序号:31464102发布日期:2022-09-09 19:52阅读:47来源:国知局
hoa系数的获取方法和装置
技术领域
:1.本技术涉及音频处理技术,尤其涉及一种hoa系数的获取方法和装置。
背景技术
::2.三维音频技术是通过计算机、信号处理等方式对真实世界中声音事件和三维声场信息进行获取、处理,传输和渲染回放的音频技术。三维音频技术使声音具有强烈的空间感、包围感及沉浸感,给人以“声临其境”的听觉体验。目前主流的三维音频技术是高阶立体混响(higherorderambisonics,hoa)技术,hoa技术因其在录制和编码中与回放阶段的扬声器布局无关的性质,以及hoa格式数据的可旋转特性,使得hoa技术在三维音频回放时具有更高的灵活性,因而也得到了更为广泛的关注和研究。3.hoa技术是将hoa信号转为实际扬声器信号后进行回放,或者是将hoa信号转为虚拟扬声器信号再映射为双耳信号进行回放。在上述过程中,计算hoa系数是关键步骤。相关技术中是根据p阶球谐函数展开公式计算hoa系数。4.但是上述方法计算量大,且存储空间需求高。技术实现要素:5.本技术提供一种hoa系数的获取方法和装置,以减少预先阶段的计算量,节省存储空间。6.第一方面,本技术提供一种hoa系数的获取方法,包括:获取虚拟扬声器在预设球面上的位置信息,所述位置信息包括俯仰角信息和/或水平角信息;所述预设球面上包含m个经线圈和n个纬线圈,所述经线圈和所述纬线圈的交叉点称作参考点,位于同一个经线圈上的n个参考点等间距排列,位于同一个纬线圈上的m个参考点等间距排列;根据所述位置信息以及预设的参考三角函数表获取所述位置信息对应的三角函数值,所述参考三角函数表包括俯仰三角函数表和/或水平三角函数表;所述俯仰三角函数表包括多个第一参考点的俯仰角信息对应的多个三角函数值,所述多个第一参考点是第一经线圈上的参考点,所述多个第一参考点的数量不小于表示向下取整,所述第一经线圈是所述m个经线圈的其中之一;所述水平三角函数表包括多个第二参考点的水平角信息对应的多个三角函数值,所述多个第二参考点是第一纬线圈上的参考点,所述多个第二参考点的数量不小于所述第一纬线圈是所述n个纬线圈的其中之一;根据所述位置信息对应的三角函数值获取所述虚拟扬声器的高阶立体混响hoa系数。7.本技术中,预先只需要获取预设球面上的某一经线圈上的所有参考点中的四分之一个参考点的三角函数值(俯仰三角函数表),和/或,预设球面上的某一纬线圈上的所有参考点中的四分之一个参考点的三角函数值(水平三角函数表),可以基于前述三角函数表获取到0°~360°的任意角度的三角函数值。这样一方面可以减少预先阶段的计算量,另一方面由于三角函数表中的角度数量减少,从而需要存储的三角函数表的数据量也相应的减少,可以节省存储空间。8.预设球面上包含m个经线圈和n个纬线圈,经线圈和纬线圈的交叉点称作参考点,位于同一个经线圈上的n个参考点等间距排列,位于同一个纬线圈上的m个参考点等间距排列。为了保证参考点可以尽可能覆盖到所有虚拟扬声器,因此可以满足m了保证参,其中k为虚拟扬声器总数,例如k可以取值为2048,1024,530等。本技术中,两两相邻的经线圈之间的水平角信息是相等的,即m个经线圈在球面上是均匀分布的,因此位于同一个经线圈上的n个参考点等间距排列;两两相邻的纬线圈之间的俯仰角信息是相等的,即n个纬线圈在球面上是均匀分布的,因此位于同一个纬线圈上的m个参考点等间距排列。相应的,由于位于同一个经线圈上的n个参考点等间距排列,因此位于同一个经线圈上的两两相邻的参考点的俯仰角信息差相等;由于位于同一个经线圈上的n个参考点等间距排列,因此位于同一个经线圈上的两两相邻的参考点的水平角信息差相等。9.上述虚拟扬声器可以是针对声音渲染设置的任意一个虚拟扬声器。虚拟扬声器在上述球面上的位置信息包括俯仰角信息(elevation)和/或水平角信息。虚拟扬声器设置的位置和球心之间的连线与水平面(例如赤道圈所在平面)之间的夹角为虚拟扬声器的位置信息的俯仰角信息(或称作高度角信息);虚拟扬声器设置的位置和球心之间的连线在水平面上的投影与设定初始方向的夹角为虚拟扬声器的位置信息的水平角信息。可选的,本技术中的水平角信息也可以被称作方位角(azimuth)。10.参考三角函数表包括俯仰三角函数表和/或水平三角函数表。其中,11.俯仰三角函数表包括多个第一参考点的俯仰角信息对应的多个三角函数值,多个第一参考点是第一经线圈上的参考点,多个第一参考点的数量不小于表示向下取整,第一经线圈是m个经线圈的其中之一。12.本技术从m个经线圈中任意选取一条视作第一经线圈,用于计算俯仰三角函数表的参考点(即上述多个第一参考点)是从该第一经线圈上的n个参考点中选取的。基于三角函数的原理,可以将0°(0)~360°(2π)的角度范围划分为四个子范围,即0°(0)~90°(π/2),90°(π/2)~180°(π),180°(π)~270°(3π/2)以及270°(3π/2)~360°(2π),通过该四个子范围的任意一个子范围计算得到的三角函数值可以扩展到0°(0)~360°(2π)的角度范围的三角函数值。因此本技术在选取上述多个第一参考点时,其数量不小于即从第一经线圈上的n个参考点中选取至少四分之一个参考点作为上述多个第一参考点。13.可选的,上述多个第一参考点的俯仰角信息可以属于上述四个子范围的其中之一,例如,多个第一参考点的俯仰角信息在0°(0)~90°(π/2)内;或者,多个第一参考点的俯仰角信息在90°(π/2)~180°(π)内;或者,多个第一参考点的俯仰角信息在180°(π)~270°(3π/2)内;或者,多个第一参考点的俯仰角信息在270°(3π/2)~360°(2π)内。14.可选的,上述多个第一参考点的俯仰角信息可以属于上述四个子范围的其中至少两个,例如,多个第一参考点中的第一部分参考点的俯仰角信息在0°(0)~90°(π/2)内,第二部分参考点的俯仰角信息在90°(π/2)~180°(π)内,这两部分参考点的俯仰角信息在计算三角函数值时不会重叠;或者,多个第一参考点中的部分参考点的俯仰角信息在90°(π/2)~180°(π)内,另一部分参考点的俯仰角信息在180°(π)~270°(3π/2)内,这两部分参考点的俯仰角信息在计算三角函数值时不会重叠;或者,多个第一参考点中的部分参考点的俯仰角信息在180°(π)~270°(3π/2)内,另一部分参考点的俯仰角信息在270°(3π/2)~360°(2π)内,这两部分参考点的俯仰角信息在计算三角函数值时不会重叠;或者,多个第一参考点中的第一部分参考点的俯仰角信息在0°(0)~90°(π/2)内,第二部分参考点的俯仰角信息在90°(π/2)~180°(π)内,第三部分参考点的俯仰角信息在180°(π)~270°(3π/2)内,这三部分参考点的俯仰角信息在计算三角函数值时不会重叠;或者,多个第一参考点中的第一部分参考点的俯仰角信息在90°(π/2)~180°(π)内,第二部分参考点的俯仰角信息在180°(π)~270°(3π/2)内,第三部分参考点的俯仰角信息在270°(3π/2)~360°(2π)内,这三部分参考点的俯仰角信息在计算三角函数值时不会重叠;或者,多个第一参考点中的第一部分参考点的俯仰角信息在0°(0)~90°(π/2)内,第二部分参考点的俯仰角信息在90°(π/2)~180°(π)内,第三部分参考点的俯仰角信息在180°(π)~270°(3π/2)内,第四部分参考点的俯仰角信息在270°(3π/2)~360°(2π)内,这四部分参考点的俯仰角信息在计算三角函数值时不会重叠。15.上述不会重叠可以是指属于不同子范围的俯仰角信息计算得到的三角函数值不相等,例如,多个第一参考点共有四个(n1、n2、n3和n4),其中,n1的俯仰角信息为0,n2的俯仰角信息为π/6,n3的俯仰角信息为π/3,n4的俯仰角信息为π/2;或者,n1的俯仰角信息为0,n2的俯仰角信息为2/3π,n3的俯仰角信息为4/3π,n4的俯仰角信息为2π。需要说明的是,本技术中对多个第一参考点的俯仰角信息所述的子范围不做具体限定,只要该多个第一参考点的俯仰角信息的三角函数值可以覆盖其中一个子范围的全部角度的三角函数值即可。16.相应的,上述位置信息的俯仰角信息取值范围为0~2π。17.本技术中多个第一参考点的俯仰角信息对应的多个三角函数可以是正弦函数值,也可以是余弦函数值。18.可选的,第i个第一参考点的俯仰角信息对应的正弦函数值满足如下公式(1):[0019][0020]其中,i=0,1,…,n’,ri表示上述第一经线圈的半径。[0021]可选的,第i个第一参考点的俯仰角信息对应的余弦函数值满足如下公式(2):[0022][0023]其中,i=0,1,…,n’,ri表示上述第一经线圈的半径。[0024]水平三角函数表包括多个第二参考点的水平角信息对应的多个三角函数值,多个第二参考点是第一纬线圈上的参考点,多个第二参考点的数量不小于表示向下取整,第一纬线圈是n个纬线圈的其中之一。[0025]本技术从n个纬线圈中任意选取一条视作第一纬线圈,用于计算水平三角函数表的参考点(即上述多个第二参考点)是从该第一纬线圈上的m个参考点中选取的。同样基于三角函数的原理,可以将0°(0)~360°(2π)的角度范围划分为四个子范围,即0°(0)~90°(π/2),90°(π/2)~180°(π),180°(π)~270°(3π/2)以及270°(3π/2)~360°(2π),通过该四个子范围的任意一个子范围计算得到的三角函数值可以扩展到0°(0)~360°(2π)的角度范围的三角函数值。因此本技术在选取上述多个第二参考点时,其数量不小于即从第一纬线圈上的m个参考点中选取至少四分之一个参考点作为上述多个第二参考点。[0026]可选的,上述多个第二参考点的水平角信息可以属于上述四个子范围的其中之一,例如,多个第二参考点的水平角信息在0°(0)~90°(π/2)内;或者,多个第二参考点的水平角信息在90°(π/2)~180°(π)内;或者,多个第二参考点的水平角信息在180°(π)~270°(3π/2)内;或者,多个第二参考点的水平角信息在270°(3π/2)~360°(2π)内。[0027]可选的,上述多个第二参考点的水平角信息可以属于上述四个子范围的其中至少两个,例如,多个第二参考点中的第一部分参考点的水平角信息在0°(0)~90°(π/2)内,第二部分参考点的水平角信息在90°(π/2)~180°(π)内,这两部分参考点的水平角信息在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角信息在90°(π/2)~180°(π)内,第二部分参考点的水平角信息在180°(π)~270°(3π/2)内,这两部分参考点的水平角信息在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角信息在180°(π)~270°(3π/2)内,第二部分参考点的水平角信息在270°(3π/2)~360°(2π)内,这两部分参考点的水平角信息在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角信息在0°(0)~90°(π/2)内,第二部分参考点的水平角信息在90°(π/2)~180°(π)内,第三部分参考点的水平角信息在180°(π)~270°(3π/2)内,这三部分参考点的水平角信息在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角信息在90°(π/2)~180°(π)内,第二部分参考点的水平角信息在180°(π)~270°(3π/2)内,第三部分参考点的水平角信息在270°(3π/2)~360°(2π)内,这三部分参考点的水平角信息在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角信息在0°(0)~90°(π/2)内,第二部分参考点的水平角信息在90°(π/2)~180°(π)内,第三部分参考点的水平角信息在180°(π)~270°(3π/2)内,第四部分参考点的水平角信息在270°(3π/2)~360°(2π)内,这四部分参考点的水平角信息在计算三角函数值时不会重叠。[0028]上述不会重叠可以是指属于不同子范围的水平角信息计算得到的三角函数值不相等,例如,多个第二参考点共有四个(n1、n2、n3和n4),其中,n1的水平角信息为0,n2的水平角信息为π/6,n3的水平角信息为π/3,n4的水平角信息为π/2;或者,n1的水平角信息为0,n2的水平角信息为2/3π,n3的水平角信息为4/3π,n4的水平角信息为2π。需要说明的是,本技术中对多个第二参考点的水平角信息所述的子范围不做具体限定,只要该多个第二参考点的水平角信息的三角函数值可以覆盖其中一个子范围的全部角度的三角函数值即可。[0029]相应的,上述位置信息的水平角信息取值范围为0~2π。[0030]本技术中多个第二参考点的水平角信息对应的多个三角函数可以是正弦函数值,也可以是余弦函数值。[0031]可选的,第i个第二参考点的水平角信息对应的正弦函数值满足如下公式(3):[0032][0033]其中,j=0,1,…,m’,rj表示上述第一纬线圈的半径。[0034]可选的,第i个第二参考点的水平角信息对应的余弦函数值满足如下公式(4):[0035][0036]其中,j=0,1,…,m’,rj表示上述第一纬线圈的半径。[0037]需要说明的是,上述俯仰三角函数表和水平三角函数表可以是预先计算并存储的,也可以根据m和n的值实时计算并存储。可选的,由于编码器和解码器均采用分帧处理,因此在hoa系数计算过程中,当前音频帧的m与前一音频帧的m取值相等时,处理当前帧时可以不用重新计算水平三角函数表,直接使用前一音频帧的水平三角函数表即可;当前音频帧的n与前一音频帧的n取值相等时,处理当前帧时可以不用重新计算俯仰三角函数表,直接使用前一音频帧的俯仰三角函数表即可。[0038]本技术中可以根据虚拟扬声器在预设球面上的位置信息的俯仰角信息以及上述俯仰三角函数表获取位置信息的俯仰角信息对应的三角函数值;和/或,根据虚拟扬声器在预设球面上的位置信息的水平角信息以及上述水平三角函数表获取位置信息的水平角信息对应的三角函数值。[0039]可见针对虚拟扬声器在预设球面上的位置信息,可以根据其位置信息包含的具体内容,以及预先设置的参考三角函数表的具体内容来获得该位置信息对应的三角函数值,即位置信息包含俯仰角信息,可以根据该俯仰角信息和参考三角函数表(如果有俯仰三角函数表,则用俯仰三角函数表,如果没有俯仰三角函数表,则用水平三角函数表)获得位置信息的俯仰角信息对应的三角函数值;位置信息包含水平角信息,可以根据该水平角信息和参考三角函数表(如果有水平三角函数表,则用水平三角函数表,如果没有水平三角函数表,则用俯仰三角函数表)获得位置信息的水平角信息对应的三角函数值。[0040]本技术可以采用以下几种方法获取位置信息的俯仰角信息对应的三角函数值:[0041]一、当位置信息的俯仰角信息与多个第一参考点中的一个参考点的俯仰角信息相等时,将俯仰三角函数表中前述一个参考点的俯仰角信息对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0042]位置信息的俯仰角信息与多个第一参考点中的一个参考点的俯仰角信息相等表示虚拟扬声器在预设球面上的位置对应的俯仰角信息正好与俯仰三角函数表中的某一个角度相等,即虚拟扬声器在预设球面上的位置与选取出来用于获取俯仰三角函数表的参考点的位置重合。因此可以直接从俯仰三角函数表中查询该俯仰角信息的三角函数值即可。[0043]二、当位置信息的俯仰角信息与n个参考点中除多个第一参考点外的一个参考点的俯仰角信息相等时,将位置信息的俯仰角信息转换为多个第一参考点中的一个参考点的俯仰角信息,将俯仰三角函数表中前述一个参考点的俯仰角信息对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0044]位置信息的俯仰角信息与n个参考点中除多个第一参考点外的一个参考点的俯仰角信息相等表示虚拟扬声器在预设球面上的位置对应的俯仰角信息不属于俯仰三角函数表中的角度,与第一经线圈上的某一其他参考点的俯仰角信息相等,即虚拟扬声器在预设球面上的位置与某一参考点的位置重合,该参考点没有用于获取俯仰三角函数表,但其俯仰角信息与三角函数表中的角度存在三角函数对应关系。因此可以基于三角函数的原理将位置信息的俯仰角信息转换为多个第一参考点中的一个参考点的俯仰角信息,然后查表得到多个第一参考点中的一个参考点的俯仰角信息对应的三角函数值,将多个第一参考点中的一个参考点的俯仰角信息对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0045]三、当位置信息的俯仰角信息与参考点的俯仰角信息均不相等时,根据位置信息的俯仰角信息获得与位置信息对应的参考点的俯仰角信息;当与位置信息对应的参考点的俯仰角信息与多个第一参考点中的一个参考点的俯仰角信息相等时,将俯仰三角函数表中前述一个参考点的俯仰角信息对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值;当与位置信息对应的参考点的俯仰角信息与n个参考点中除多个第一参考点外的一个参考点的俯仰角信息相等时,将与位置信息对应的参考点的俯仰角信息转换为多个第一参考点中的一个参考点的俯仰角信息,将俯仰三角函数表中前述一个参考点的俯仰角信息对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0046]位置信息的俯仰角信息与参考点的俯仰角信息均不相等表示虚拟扬声器在预设球面上的位置既不在经线圈上,也不在纬线圈上。因此先获得与位置信息对应的参考点的俯仰角信息,再参照上述方法一或方法二的方式获取参考点的俯仰角信息对应的三角函数值,将该参考点的俯仰角信息对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0047]可选的,可以通过索引的方式表示位置信息,索引可以包括俯仰角索引和水平角索引。例如,在任意一个纬线圈上,将该未分布其上的其中一个参考点的水平角度设置为0,然后根据预设的水平角度与水平角索引之间的转换公式转换获得对应的水平角索引;由于纬线圈上的任意相邻参考点之间的水平角差值是相等的,因此可以获得该纬线圈上的其他参考点的水平角度,从而根据上述转换公式获得所述其他参考点各自的水平角索引。需要说明的是,本技术对将纬线圈上的哪个参考点的水平角度设置为0不作具体限定。同理,由于在经线圈方向相邻参考点之间的俯仰角差值满足前述的要求,因此在设置了俯仰角度为0的参考点后,就可以获得其他参考点的俯仰角度,基于预设的俯仰角度和俯仰角索引之间的转换公式就可以获得经线圈上所有参考点的俯仰角索引。需要说明的是,本技术对将经线圈上哪个参考点的俯仰角度设置为0不作具体限定,例如可以是位于所述赤道圈上的参考点,或者所述位于所述南极点上的参考点,或者位于所述北极点上的参考点。[0048]可选的,俯仰角度和该俯仰角信息的索引满足如下公式(5)(即俯仰角度和俯仰角索引的转换公式):[0049][0050]其中,ri表示第一经线圈的半径,round()表示取整。[0051]本技术可以采用以下几种方法获取位置信息的水平角信息对应的三角函数值:[0052]一、当位置信息的水平角信息与多个第二参考点中的一个参考点的水平角信息相等时,将水平三角函数表中前述一个参考点的水平角信息对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0053]位置信息的水平角信息与多个第二参考点中的一个参考点的水平角信息相等表示虚拟扬声器在预设球面上的位置对应的水平角信息正好与水平三角函数表中的某一个角度相等,即虚拟扬声器在预设球面上的位置与选取出来用于获取水平三角函数表的参考点的位置重合。因此可以直接从水平三角函数表中查询该水平角信息的三角函数值即可。[0054]二、当位置信息的水平角信息与m个参考点中除多个第二参考点外的一个参考点的水平角信息相等时,将位置信息的水平角信息转换为多个第二参考点中的一个参考点的水平角信息,将水平三角函数表中前述一个参考点的水平角信息对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0055]位置信息的水平角信息与m个参考点中除多个第二参考点外的一个参考点的水平角信息相等表示虚拟扬声器在预设球面上的位置对应的水平角信息不属于水平三角函数表中的角度,与第一经线圈上的某一其他参考点的水平角信息相等,即虚拟扬声器在预设球面上的位置与某一参考点的位置重合,该参考点没有用于获取水平三角函数表,但其水平角信息与三角函数表中的角度存在三角函数对应关系。因此可以基于三角函数的原理将位置信息的水平角信息转换为多个第二参考点中的一个参考点的水平角信息,然后查表得到多个第二参考点中的一个参考点的水平角信息对应的三角函数值,将多个第二参考点中的一个参考点的水平角信息对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0056]三、当位置信息的水平角信息与参考点的水平角信息均不相等时,根据位置信息的水平角信息获得与位置信息对应的参考点的水平角信息;当与位置信息对应的参考点的水平角信息与多个第二参考点中的一个参考点的水平角信息相等时,将水平三角函数表中前述一个参考点的水平角信息对应的三角函数值作为位置信息的水平角信息对应的三角函数值;当与位置信息对应的参考点的水平角信息与m个参考点中除多个第二参考点外的一个参考点的水平角信息相等时,将与位置信息对应的参考点的水平角信息转换为多个第二参考点中的一个参考点的水平角信息,将水平三角函数表中前述一个参考点的水平角信息对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0057]位置信息的水平角信息与参考点的水平角信息均不相等表示虚拟扬声器在预设球面上的位置既不在经线圈上,也不在纬线圈上。因此先获得与位置信息对应的参考点的水平角信息,再参照上述方法一或方法二的方式获取参考点的水平角信息对应的三角函数值,将该参考点的水平角信息对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0058]可选的,水平角度θ和该水平角信息的索引θ’满足如下公式(6)(即水平角度和水平角索引的转换公式):[0059][0060]其中,rj表示第一纬线圈的半径,round()表示取整。[0061]本技术中,预先只需要获取预设球面上的某一经线圈上的所有参考点中的四分之一个参考点的三角函数值(俯仰三角函数表),和/或,预设球面上的某一纬线圈上的所有参考点中的四分之一个参考点的三角函数值(水平三角函数表),可以基于前述三角函数表获取到0°~360°的任意角度的三角函数值。这样一方面可以减少预先阶段的计算量,另一方面由于三角函数表中的角度数量减少,从而需要存储的三角函数表的数据量也相应的减少,可以节省存储空间。[0062]第二方面,本技术提供一种hoa系数的获取装置,包括:获取模块,用于获取虚拟扬声器在预设球面上的位置信息,所述位置信息包括俯仰角信息和/或水平角信息;所述预设球面上包含m个经线圈和n个纬线圈,所述经线圈和所述纬线圈的交叉点称作参考点,位于同一个经线圈上的n个参考点等间距排列,位于同一个纬线圈上的m个参考点等间距排列;计算模块,用于根据所述位置信息以及预设的参考三角函数表获取所述位置信息对应的三角函数值,所述参考三角函数表包括俯仰三角函数表和/或水平三角函数表;所述俯仰三角函数表包括多个第一参考点的俯仰角索引对应的多个三角函数值,所述多个第一参考点是第一经线圈上的参考点,所述多个第一参考点的数量不小于表示向下取整,所述第一经线圈是所述m个经线圈的其中之一;所述水平三角函数表包括多个第二参考点的水平角索引对应的多个三角函数值,所述多个第二参考点是第一纬线圈上的参考点,所述多个第二参考点的数量不小于所述第一纬线圈是所述n个纬线圈的其中之一;根据所述位置信息对应的三角函数值获取所述虚拟扬声器的高阶立体混响hoa系数。[0063]在一种可能的实现方式中,所述计算模块,具体用于根据所述位置信息的俯仰角信息以及所述俯仰三角函数表获取所述位置信息的俯仰角信息对应的三角函数值;和/或,根据所述位置信息的水平角信息以及所述水平三角函数表获取所述位置信息的水平角信息对应的三角函数值。[0064]在一种可能的实现方式中,所述计算模块,具体用于当所述位置信息的俯仰角信息与所述多个第一参考点中的一个参考点的俯仰角索引对应上时,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值;或者,当所述位置信息的俯仰角信息与所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引对应上时,将所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引转换为所述多个第一参考点中的一个参考点的俯仰角索引,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值;或者,当所述位置信息的俯仰角信息与所述参考点的俯仰角索引均不对应时,根据所述位置信息的俯仰角信息获得与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;当所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息与所述多个第一参考点中的一个参考点的俯仰角索引对应上时,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值;当所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息与所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引对应上时,将所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引转换为所述多个第一参考点中的一个参考点的俯仰角索引,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值。[0065]在一种可能的实现方式中,所述计算模块,具体用于当所述位置信息的水平角信息与所述多个第二参考点中的一个参考点的水平角索引对应上时,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值;或者,当所述位置信息的水平角信息与所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引对应上时,将所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引转换为所述多个第二参考点中的一个参考点的水平角索引,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值;或者,当所述位置信息的水平角信息与所述参考点的水平角索引均不对应时,根据所述位置信息的水平角信息获得与所述位置信息的水平角信息对应的参考点的水平角信息;当所述与所述位置信息的水平角信息对应的参考点的水平角信息与所述多个第二参考点中的一个参考点的水平角索引对应上时,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值;当所述与所述位置信息的水平角信息对应的参考点的水平角信息与所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引对应上时,将所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引转换为所述多个第二参考点中的一个参考点的水平角索引,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值。[0066]在一种可能的实现方式中,所述位置信息的俯仰角信息包括所述位置信息的俯仰角度或者所述位置信息的俯仰角索引;所述位置信息的水平角信息包括所述位置信息的水平角度或者所述位置信息的水平角索引。[0067]在一种可能的实现方式中,所述三角函数值是指正弦函数值或者余弦函数值。[0068]在一种可能的实现方式中,当所述多个第一参考点的俯仰角索引对应的多个三角函数为正弦函数值时,第i个第一参考点的俯仰角索引对应的正弦函数值满足如下公式(1):[0069][0070]其中,i=0,1,…,n’,ri表示所述第一经线圈的半径;[0071]或,[0072]当所述多个第一参考点的俯仰角索引对应的多个三角函数为余弦函数值时,其中,第i个第一参考点的俯仰角索引对应的余弦函数值满足如下公式(2):[0073][0074]其中,i=0,1,…,n’,ri表示所述第一经线圈的半径。[0075]在一种可能的实现方式中,当所述多个第二参考点的水平角索引对应的多个三角函数为正弦函数值时,第j个第二参考点的水平角索引对应的正弦函数值满足如下公式(3):[0076][0077]其中,j=0,1,…,m’,rj表示所述第一纬线圈的半径;[0078]或,[0079]当所述多个第二参考点的水平角索引对应的多个三角函数为余弦函数值时,第j个第二参考点的水平角索引对应的余弦函数值满足如下公式(4):[0080][0081]其中,j=0,1,…,m’,rj表示所述第一纬线圈的半径。[0082]在一种可能的实现方式中,俯仰角度和俯仰角索引满足如下公式(5):[0083][0084]其中,ri表示所述第一经线圈的半径,round()表示取整。[0085]在一种可能的实现方式中,水平角度θ和水平角索引θ’满足如下公式(6):[0086][0087]其中,rj表示所述第一纬线圈的半径,round()表示取整。[0088]在以俯仰角索引的形式表示参考点的位置的俯仰三角函数表中,如果假设n=1024,那么俯仰三角函数表可以包含257个参考点的俯仰角索引分别对应的三角函数值,例如,sin[0]~sin[256]。[0089]同理,在以水平角索引的形式表示参考点的位置的水平三角函数表中,如果假设m=1024,那么水平三角函数表也可以包含257个参考点的水平角索引分别对应的三角函数值,例如,sin[0]~sin[256]。[0090]在一种可能的实现方式中,当m≠n时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0091][0092][0093][0094][0095][0096][0097][0098][0099]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_n()表示所述俯仰三角函数表;[0100]当m≠n时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0101][0102][0103][0104][0105][0106][0107][0108][0109]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_m()表示所述水平三角函数表;[0110]或,[0111]当m=n时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0112][0113][0114][0115][0116][0117][0118][0119][0120]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_n()表示所述俯仰三角函数表;[0121]当m=n时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0122][0123][0124][0125][0126][0127][0128][0129][0130]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_n()表示所述俯仰三角函数表;[0131]或,[0132]当m≠n,m=k1×n,k1≥2时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0133][0134][0135][0136][0137][0138][0139][0140][0141]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_m()表示所述水平三角函数表;[0142]当m≠n,m=k1×n,k1≥2时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0143][0144][0145][0146][0147][0148][0149][0150][0151]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_m()表示所述水平三角函数表;[0152]或,[0153]当m≠n,n=k2×m,k2≥2时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0154][0155][0156][0157][0158][0159][0160][0161][0162]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_n()表示所述俯仰三角函数表;[0163]当m≠n,n=k2×m,k2≥2时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0164][0165][0166][0167][0168][0169][0170][0171][0172]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_n()表示所述俯仰三角函数表;[0173]或,[0174]当m≠n时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0175][0176][0177][0178][0179][0180][0181][0182][0183]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;cos_table_n()表示所述俯仰三角函数表;[0184]当m≠n时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0185][0186][0187][0188][0189][0190][0191][0192][0193]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;cos_table_m()表示所述水平三角函数表。[0194]第三方面,本技术提供一种音频处理设备,包括:一个或多个处理器;存储器,用于存储一个或多个程序;当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述第一方面中任一项所述的方法。[0195]第四方面,本技术提供一种计算机可读存储介质,包括计算机程序,所述计算机程序在计算机上被执行时,使得所述计算机执行上述第一方面中任一项所述的方法。附图说明[0196]图1为本技术音频播放系统的一个示例性的结构图;[0197]图2为本技术音频译码系统10的一个示例性的结构图;[0198]图3为本技术hoa编码装置的一个示例性的结构图;[0199]图4是本技术hoa系数的获取方法的一个示例性的流程图;[0200]图5为本技术预设球面的一个示例性的示意图;[0201]图6为本技术位置信息的一个示例性的示意图;[0202]图7为本技术hoa系数的获取装置的一个示例性的结构图。具体实施方式[0203]为使本技术的目的、技术方案和优点更加清楚,下面将结合本技术中的附图,对本技术中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本技术一部分实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获取的所有其他实施例,都属于本技术保护的范围。[0204]本技术的说明书实施例和权利要求书及附图中的术语“第一”、“第二”等仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元。方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。[0205]应当理解,在本技术中,“至少一个(项)”是指一个或者多个,“多个”是指两个或两个以上。“和/或”,用于描述关联对象的关联关系,表示可以存在三种关系,例如,“a和/或b”可以表示:只存在a,只存在b以及同时存在a和b三种情况,其中a,b可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。“以下至少一项(个)”或其类似表达,是指这些项中的任意组合,包括单项(个)或复数项(个)的任意组合。例如,a,b或c中的至少一项(个),可以表示:a,b,c,“a和b”,“a和c”,“b和c”,或“a和b和c”,其中a,b,c可以是单个,也可以是多个。字符“~”连接的两个数值一般表示一个取值范围,该取值范围包含“~”连接的两个数值。[0206]本技术涉及到的相关名词解释:[0207]音频帧:音频数据是流式的,在实际应用中,为了便于音频处理和传输,通常取一时长内的音频数据量作为一帧音频,该时长被称为“采样时间”,可以根据编解码器和具体应用的需求确定其值,例如该时长为2.5ms~60ms,ms为毫秒。[0208]音频信号:音频信号是带有语音、音乐和音效的有规律的声波的频率、幅度变化信息载体。音频是一种连续变化的模拟信号,可用一条连续的曲线来表示,称为声波。音频通过模数转换或计算机生成的数字信号即为音频信号。声波有三个重要参数:频率、幅度和相位,这也就决定了音频信号的特征。[0209]以下是本技术所应用的系统架构。[0210]图1为本技术音频播放系统的一个示例性的结构图,如图1所示,该音频播放系统包括:音频发送设备和音频接收设备,其中,音频发送设备包括例如手机、电脑(笔记本电脑、台式电脑等)、平板(手持平板、车载平板等)等可以进行音频编码并发送音频码流的设备;音频接收设备包括例如tws耳机、普通无线耳机、音响、智能手表、智能眼镜等可以接收音频码流、解码音频码流并播放的设备。[0211]音频发送设备和音频接收设备之间可以建立蓝牙连接,二者之间可以支持语音和音乐的传输。音频发送设备和音频接收设备的较为广泛的示例是手机与tws耳机、无线头戴式耳机或者无线颈圈式耳机之间,或者手机与其他终端设备(例如智能音箱、智能手表、智能眼镜和车载音箱等)之间。可选的,音频发送设备和音频接收设备的示例也可以是平板、笔记本电脑或者台式电脑与tws耳机、无线头戴式耳机、无线颈圈式耳机或其他终端设备(例如智能音箱、智能手表、智能眼镜和车载音箱)之间。[0212]需要说明的是,音频发送设备和音频接收设备之间除蓝牙连接外,还可以通过其他通信方式连接,例如wifi连接、有线连接或其他无线连接等,本技术对此不做具体限定。[0213]图2为本技术音频译码系统10的一个示例性的结构图,如图2所示,音频译码系统10可包括源设备12和目的设备14,源设备12可以是图1的音频发送设备,目的设备14可以是图1的音频接收设备。源设备12产生经编码的码流信息,因此,源设备12也可以被称为音频编码设备。目的设备14可对由源设备12所产生的经编码的码流信息进行解码,因此,目的设备14也可以被称为音频解码设备。本技术中,源设备12、音频编码设备可以被统一称作音频发送设备,目的设备14、音频解码设备可以被统一称作音频接收设备。[0214]源设备12包括编码器20,可选地,可包括音频源16、音频预处理器18、通信接口22。[0215]音频源16,可以包括或可以为任何类别的音频捕获设备,例如,捕获现实世界声音,和/或任何类别的音频生成设备,例如,计算机音频处理器,或用于获取和/或提供现实世界音频、计算机动画音频(例如,屏幕内容、虚拟现实(virtualreality,vr)中的音频)的任何类别设备,和/或其任何组合(例如,增强现实(augmentedreality,ar)中的音频、混合现实(mixedreality,mr)中的音频和/或扩展现实(extendedreality,xr)中的音频)。音频源16可以为用于捕获音频的麦克风或者用于存储音频的存储器,音频源16还可以包括存储先前捕获或产生的音频和/或获取或接收音频的任何类别的(内部或外部)接口。当音频源16为麦克风时,音频源16可例如为本地的或集成在源设备中的音频采集装置;当音频源16为存储器时,音频源16可为本地的或例如集成在源设备中的集成存储器。当所述音频源16包括接口时,接口可例如为从外部音频源接收音频的外部接口,外部音频源例如为外部音频捕获设备,比如话筒、麦克风、外部存储器或外部音频生成设备,外部音频生成设备例如为外部计算机音频处理器、计算机或服务器。接口可以为根据任何专有或标准化接口协议的任何类别的接口,例如有线或无线接口、光接口。[0216]本技术中,音频源16获取当前场景音频信号,该当前场景音频信号是指对空间中麦克风所在位置的声场进行采集得到的音频信号,当前场景音频信号也可以称为原始场景音频信号。例如,当前场景音频信号可以是通过高阶立体混响(higherorderambisonics,hoa)技术得到的音频信号。音频源16获取待编码的hoa信号,例如,可以采用实际采集设备获取hoa信号或采用人工音频对象合成hoa信号。可选的,待编码的hoa信号可以是时域hoa信号或者频域hoa信号。[0217]音频预处理器18,用于接收原始音频信号并对原始音频信号执行预处理,以获取经预处理的音频信号。例如,音频预处理器18执行的预处理可以包括整修或去噪。[0218]编码器20,用于接收经预处理的音频信号,对经预处理的音频信号进行处理,从而提供经编码的码流信息。[0219]源设备12中的通信接口22可用于接收码流信息并通过通信信道13向目的设备14发送该码流。通信信道13例如为直接有线或无线连接,任何类别的网络例如为有线或无线网络或其任何组合,或任何类别的私网和公网,或其任何组合。[0220]目的设备14包括解码器30,可选地,可包括通信接口28、音频后处理器32和播放设备34。[0221]目的设备14中的通信接口28用于直接从源设备12接收码流信息,并将码流信息提供给解码器30。通信接口22和通信接口28可用于通过源设备12与目的设备14之间的通信信道13发送或接收码流信息。[0222]通信接口22和通信接口28均可配置为如图2中从源设备12指向目的设备14的对应通信信道13的箭头所指示的单向通信接口,或双向通信接口,并且可用于发送和接收消息等,以建立连接,确认并交换与通信链路和/或编码音频数据等数据传输相关的任何其它信息,等等。[0223]解码器30,用于接收码流信息,并解码码流信息得到经解码的音频数据。[0224]音频后处理器32,用于对解码的音频数据进行后处理,得到后处理后的音频数据。音频后处理器32执行的后处理可以包括例如修剪或重采样等。[0225]播放设备34,用于接收后处理后的音频数据,以向用户或收听者播放音频。播放设备34可以为或包括任意类型的用于播放重建后音频的播放器,例如,集成或外部扬声器。例如,扬声器可包括喇叭、音响等。[0226]图3为本技术hoa编码装置的一个示例性的结构图,如图3所示,hoa编码装置可以应用于上述音频译码系统10的编码器20中。hoa编码装置包括:虚拟扬声器配置单元、编码分析单元、虚拟扬声器集合生成单元、虚拟扬声器选择单元、虚拟扬声器信号生成单元和核心编码器处理单元。其中,[0227]虚拟扬声器配置单元,用于根据编码器配置信息对虚拟扬声器进行配置,以得到虚拟扬声器配置参数。编码器配置信息包括且不限于:hoa阶数,编码比特率,用户自定义信息等,虚拟扬声器配置参数包括且不限于:虚拟扬声器的个数,虚拟扬声器的hoa阶数等。[0228]虚拟扬声器配置单元输出的虚拟扬声器配置参数作为虚拟扬声器集合生成单元的输入。[0229]编码分析单元,用于对待编码hoa信号进行编码分析,例如分析待编码hoa信号的声场分布,包括待编码hoa信号的声源个数、方向性、弥散度等特征,作为决定如何选择目标虚拟扬声器的判断条件之一。[0230]不限定的是,本技术中,hoa编码装置中也可以不包括编码分析单元,即hoa编码装置可以不对输入信号进行分析,则采用一种默认配置决定如何选择目标虚拟扬声器。[0231]其中,hoa编码装置获取待编码hoa信号,例如可以将从实际采集设备记录的hoa信号或采用人工音频对象合成的hoa信号作为编码器的输入,同时编码器输入的待编码hoa信号可以是时域hoa信号也可以是频域hoa信号。[0232]虚拟扬声器集合生成单元,用于生成虚拟扬声器集合,该虚拟扬声器集合中可以包括:多个虚拟扬声器,虚拟扬声器集合中的虚拟扬声器也可以称为“候选虚拟扬声器”。[0233]虚拟扬声器集合生成单元生成指定的候选虚拟扬声器hoa系数。由虚拟扬声器配置单元提供的候选虚拟扬声器的坐标(即位置信息)和候选虚拟扬声器的hoa阶数用于生成候选虚拟扬声器hoa系数。候选虚拟扬声器的坐标确定方法包括且不限于按等距规则产生k个虚拟扬声器、根据听觉感知原理生成非均匀分布的k个候选虚拟扬声器。根据候选虚拟扬声器的个数生成分布均匀的候选虚拟扬声器的坐标。[0234]接下来生成候选虚拟扬声器hoa系数。[0235]这里采用本技术提供的hoa系数的获取方法获得每一个虚拟扬声器的hoa系数并进行表示,得到虚拟扬声器集合。[0236]虚拟扬声器集合生成单元输出的候选虚拟扬声器的hoa系数作为虚拟扬声器选择单元的输入。[0237]虚拟扬声器选择单元,用于根据待编码hoa信号从虚拟扬声器集合中的多个候选虚拟扬声器中选择出目标虚拟扬声器,该目标虚拟扬声器可以称为“与待编码hoa信号匹配的虚拟扬声器”,或者简称为匹配虚拟扬声器。[0238]虚拟扬声器选择单元根据待编码hoa信号与虚拟扬声器集合生成单元输出的候选虚拟扬声器hoa系数,选择出指定的匹配虚拟扬声器。[0239]接下来对匹配虚拟扬声器的选择方法进行举例说明:在一种可能的实现方式中,使用候选虚拟扬声器hoa系数匹配与待编码hoa信号做内积,选取内积绝对值最大的候选虚拟扬声器为目标虚拟扬声器,即匹配虚拟扬声器,并将待编码hoa信号在该候选虚拟扬声器的投影叠加到该候选虚拟扬声器hoa系数的线性组合上,然后将投影向量从待编码hoa信号中减去得到差值,对差值重复上述过程实现迭代计算,每迭代一次产生一个匹配虚拟扬声器,输出匹配虚拟扬声器坐标和匹配虚拟扬声器hoa系数。可以理解的是,匹配虚拟扬声器会选取多个,每迭代一次产生一个匹配虚拟扬声器。(除此之外,不限定其他实现方法)[0240]虚拟扬声器选择单元输出的目标虚拟扬声器的坐标和目标虚拟扬声器的hoa系数作为虚拟扬声器信号生成单元的输入。[0241]虚拟扬声器信号生成单元,用于根据待编码hoa信号和目标虚拟扬声器的属性信息生成虚拟扬声器信号,其中当属性信息为位置信息时,根据所述目标虚拟扬声器的位置信息确定所述目标虚拟扬声器的hoa系数,当属性信息包括hoa系数时,从所述属性信息中获取所述目标虚拟扬声器的hoa系数。[0242]虚拟扬声器信号生成单元通过待编码hoa信号和目标虚拟扬声器的hoa系数计算虚拟扬声器信号。[0243]虚拟扬声器的hoa系数用矩阵a表示,用矩阵a可以线性组合出待编码hoa信号,进一步的可以采用最小二乘方法求得理论的最优解w,即为虚拟扬声器信号,例如可以采用如下计算公式:[0244]w=a-1x,[0245]其中,a-1代表矩阵a的逆矩阵,矩阵a的大小为(m×c),c为目标虚拟扬声器个数,m为n阶的hoa系数的通道个数,m=(n+1)2,a表示目标虚拟扬声器的hoa系数,例如,[0246][0247]x代表待编码hoa信号,矩阵x的大小为(m×l),m为n阶的hoa系数的通道个数,l为时域或频域样点个数,x表示待编码hoa信号的系数,例如,[0248][0249]虚拟扬声器信号生成单元输出的虚拟扬声器信号作为核心编码器处理单元的输入。[0250]核心编码器处理单元,用于对虚拟扬声器信号进行核心编码器处理,得到传输码流。[0251]核心编码器处理包括且不限于变换、量化、心理声学模型、码流产生等,可以对频域传输通道进行处理也可以对时域传输通道进行处理,此处不做限定。[0252]基于上述实施例的描述,本技术提供了一种hoa系数的获取方法。[0253]图4是本技术hoa系数的获取方法的一个示例性的流程图。该过程400可由上述实施例中的编码器20或解码器30执行,即由音频发送设备中的编码器20实现音频编码,然后将码流信息发送给音频接收设备,由音频接收设备中的解码器30对码流信息进行解码以获得目标音频帧,进而基于该目标音频帧渲染得到对应于一个或多个虚拟扬声器的声场音频信号。过程400描述为一系列的步骤或操作,应当理解的是,过程400可以以各种顺序执行和/或同时发生,不限于图4所示的执行顺序。如图4所示,该方法包括:[0254]步骤401、获取虚拟扬声器在预设球面上的位置信息,位置信息包括俯仰角信息和/或水平角信息。[0255]预设球面上包含m个经线圈和n个纬线圈,m和n可以相同也可以不同,m和n均为正整数,例如,n为512,768或1024等等,m为512,768或1024等等。经线圈和纬线圈的交叉点称作参考点,位于同一个经线圈上的n个参考点等间距排列,位于同一个纬线圈上的m个参考点等间距排列。为了保证参考点可以尽可能覆盖到所有虚拟扬声器,因此可以满足m×n≥k,其中k为虚拟扬声器总数,例如k可以取值为2048,1669,1024,530等。例如,图5为本技术预设球面的一个示例性的示意图,如图5所示,将空间声场假设为一个以渲染中心为球心的球体空间,虚拟扬声器可以部署于球体空间的球面上,该球面被m个经线圈和n个纬线圈划分,其中,任意一个经线圈所在的平面均包含球心,因此m个经线圈的半径与球体空间的半径相等;纬线圈中只有赤道圈的半径与球体空间的半径相等,其他纬线圈越远离赤道圈半径越小。本技术中,两两相邻的经线圈之间的水平角度差是相等的,即m个经线圈在球面上是均匀分布的,因此位于同一个纬线圈上的m个参考点等间距排列;两两相邻的纬线圈之间的俯仰角度差也是相等的,即n个纬线圈在球面上是均匀分布的,因此位于同一个经线圈上的n个参考点等间距排列。相应的,由于位于同一个经线圈上的n个参考点等间距排列,因此位于同一个经线圈上的所有相邻的参考点的俯仰角度差相等;由于位于同一个纬线圈上的m个参考点等间距排列,因此位于同一个纬线圈上的所有相邻的参考点的水平角度差相等。[0256]上述虚拟扬声器可以是针对声音渲染设置的任意一个虚拟扬声器。虚拟扬声器在上述球面上的位置信息包括俯仰角信息和/或水平角信息。例如,图6为本技术位置信息的一个示例性的示意图,如图6所示,虚拟扬声器设置的位置和球心之间的连线与预设水平面(例如赤道圈所在平面,或者南极点所在的平面,或者北极点所在的平面,其中,南极点所在的平面垂直于南极点和北极点之间的连线,北极点所在的平面垂直于南极点和北极点之间的连线)之间的夹角为虚拟扬声器的位置信息的俯仰角信息;虚拟扬声器设置的位置和球心之间的连线在水平面上的投影与设定初始方向的夹角为虚拟扬声器的位置信息的水平角信息。[0257]可选的,虚拟扬声器的位置信息中的俯仰角信息可以用俯仰角度表示,也可以用俯仰角索引表示,同理,虚拟扬声器的位置信息中的水平角信息可以用水平角度表示,也可以用水平角索引表示。[0258]例如,经线圈上有n个参考点,该n个参考点是等间距排列的,相邻两个参考点的俯仰角信息差为2π/n,因此该n个参考点各自的俯仰角信息可以由参考点的俯仰角索引表示,即该n个参考点的俯仰角信息可以表示为0~n-1。如果虚拟扬声器的位置正好选在参考点上,就可以用前述俯仰角索引表示该虚拟扬声器的俯仰角信息。同理,纬线圈上有m个参考点,该m个参考点是等间距排列的,相邻两个参考点的水平角信息差为2π/m,因此该m个参考点各自的水平角信息可以由参考点的水平角索引表示,即该m个参考点的水平角信息可以表示为0~m-1。如果虚拟扬声器的位置正好选在参考点上,就可以用前述水平角索引表示该虚拟扬声器的水平角信息。由此可见,参考点的俯仰角索引和俯仰角度之间具有一一对应关系,参考点的水平角索引和水平角度之间也具有一一对应关系。而如果虚拟扬声器的位置不在参考点的位置上,那么就无法确定是用哪一个参考点的俯仰角索引和/或水平角索引来表示其位置信息,因此可以用俯仰角度和/或水平角度的方式来表示其位置信息。应当理解的,即使虚拟扬声器的位置正好选在参考点上,也可以采用俯仰角度和/或水平角度的方式来表示其位置信息,对此不做具体限定。[0259]步骤402、根据位置信息以及预设的参考三角函数表获取位置信息对应的三角函数值。[0260]参考三角函数表包括俯仰三角函数表和/或水平三角函数表。其中,[0261]俯仰三角函数表包括多个第一参考点的俯仰角索引对应的多个三角函数值,多个第一参考点是第一经线圈上的参考点,多个第一参考点的数量不小于表示向下取整,第一经线圈是m个经线圈的其中之一。[0262]本技术从m个经线圈中任意选取一条视作第一经线圈,用于计算俯仰三角函数表的参考点(即上述多个第一参考点)是从该第一经线圈上的n个参考点中选取的。基于三角函数的原理,可以将0°(0)~360°(2π)的角度范围划分为四个子范围,即0°(0)~90°(π/2),90°(π/2)~180°(π),180°(π)~270°(3π/2)以及270°(3π/2)~360°(2π),通过该四个子范围的任意一个子范围计算得到的三角函数值可以扩展到0°(0)~360°(2π)的角度范围的三角函数值。因此本技术在选取上述多个第一参考点时,其数量不小于即从第一经线圈上的n个参考点中选取至少四分之一个参考点作为上述多个第一参考点。进一步的,选取的多个第一参考点中,任意两个参考点的俯仰角度在计算三角函数值时不会重叠。[0263]可选的,上述多个第一参考点的俯仰角度可以属于上述四个子范围的其中之一,例如,多个第一参考点的俯仰角度在0°(0)~90°(π/2)内;或者,多个第一参考点的俯仰角度在90°(π/2)~180°(π)内;或者,多个第一参考点的俯仰角度在180°(π)~270°(3π/2)内;或者,多个第一参考点的俯仰角度在270°(3π/2)~360°(2π)内。[0264]可选的,上述多个第一参考点的俯仰角度可以属于上述四个子范围的其中至少两个,例如,多个第一参考点中的第一部分参考点的俯仰角度在0°(0)~90°(π/2)内,第二部分参考点的俯仰角度在90°(π/2)~180°(π)内,这两部分参考点的俯仰角度在计算三角函数值时不会重叠;或者,多个第一参考点中的部分参考点的俯仰角度在90°(π/2)~180°(π)内,另一部分参考点的俯仰角度在180°(π)~270°(3π/2)内,这两部分参考点的俯仰角度在计算三角函数值时不会重叠;或者,多个第一参考点中的部分参考点的俯仰角度在180°(π)~270°(3π/2)内,另一部分参考点的俯仰角度在270°(3π/2)~360°(2π)内,这两部分参考点的俯仰角度在计算三角函数值时不会重叠;或者,多个第一参考点中的第一部分参考点的俯仰角度在0°(0)~90°(π/2)内,第二部分参考点的俯仰角度在90°(π/2)~180°(π)内,第三部分参考点的俯仰角度在180°(π)~270°(3π/2)内,这三部分参考点的俯仰角度在计算三角函数值时不会重叠;或者,多个第一参考点中的第一部分参考点的俯仰角度在90°(π/2)~180°(π)内,第二部分参考点的俯仰角度在180°(π)~270°(3π/2)内,第三部分参考点的俯仰角度在270°(3π/2)~360°(2π)内,这三部分参考点的俯仰角度在计算三角函数值时不会重叠;或者,多个第一参考点中的第一部分参考点的俯仰角度在0°(0)~90°(π/2)内,第二部分参考点的俯仰角度在90°(π/2)~180°(π)内,第三部分参考点的俯仰角度在180°(π)~270°(3π/2)内,第四部分参考点的俯仰角度在270°(3π/2)~360°(2π)内,这四部分参考点的俯仰角度在计算三角函数值时不会重叠。[0265]上述不会重叠可以是指属于不同子范围的俯仰角度计算得到的三角函数值不相等,例如,多个第一参考点共有四个(n1、n2、n3和n4),其中,n1的俯仰角度为0,n2的俯仰角度为π/6,n3的俯仰角度为π/3,n4的俯仰角度为π/2;或者,n1的俯仰角度为0,n2的俯仰角度为2/3π,n3的俯仰角度为4/3π,n4的俯仰角度为2π。需要说明的是,本技术中对多个第一参考点的俯仰角度所述的子范围不做具体限定,只要该多个第一参考点的俯仰角度的三角函数值可以覆盖其中一个子范围的全部角度的三角函数值即可。[0266]相应的,上述位置信息的俯仰角度取值范围为0~2π。[0267]如上所述,上述多个第一参考点也可以用各自的俯仰角索引进行标识,基于俯仰角索引和相邻纬线圈的俯仰角度差可以在第一参考点的俯仰角度和俯仰角度差之间进行转换。[0268]本技术中多个第一参考点的俯仰角索引对应的多个三角函数可以是正弦函数值,也可以是余弦函数值。[0269]可选的,第i个第一参考点的俯仰角索引对应的正弦函数值满足如下公式(1):[0270][0271]其中,i=0,1,…,n’,ri表示上述第一经线圈的半径。可选的,i的取值也可以是在范围内不连续的,例如,i=0,2,4,5,9,…,n’。[0272]可选的,第i个第一参考点的俯仰角索引对应的余弦函数值满足如下公式(2):[0273][0274]其中,i=0,1,…,n’,ri表示上述第一经线圈的半径。[0275]水平三角函数表包括多个第二参考点的水平角索引对应的多个三角函数值,多个第二参考点是第一纬线圈上的参考点,多个第二参考点的数量不小于表示向下取整,第一纬线圈是n个纬线圈的其中之一。[0276]本技术从n个纬线圈中任意选取一条视作第一纬线圈,用于计算水平三角函数表的参考点(即上述多个第二参考点)是从该第一纬线圈上的m个参考点中选取的。同样基于三角函数的原理,可以将0°(0)~360°(2π)的角度范围划分为四个子范围,即0°(0)~90°(π/2),90°(π/2)~180°(π),180°(π)~270°(3π/2)以及270°(3π/2)~360°(2π),通过该四个子范围的任意一个子范围计算得到的三角函数值可以扩展到0°(0)~360°(2π)的角度范围的三角函数值。因此本技术在选取上述多个第二参考点时,其数量不小于即从第一纬线圈上的m个参考点中选取至少四分之一个参考点作为上述多个第二参考点。进一步的,选取的多个第二参考点中,任意两个参考点的水平角度在计算三角函数值时不会重叠。[0277]可选的,上述多个第二参考点的水平角度可以属于上述四个子范围的其中之一,例如,多个第二参考点的水平角度在0°(0)~90°(π/2)内;或者,多个第二参考点的水平角度在90°(π/2)~180°(π)内;或者,多个第二参考点的水平角度在180°(π)~270°(3π/2)内;或者,多个第二参考点的水平角度在270°(3π/2)~360°(2π)内。[0278]可选的,上述多个第二参考点的水平角度可以属于上述四个子范围的其中至少两个,例如,多个第二参考点中的第一部分参考点的水平角度在0°(0)~90°(π/2)内,第二部分参考点的水平角度在90°(π/2)~180°(π)内,这两部分参考点的水平角度在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角度在90°(π/2)~180°(π)内,第二部分参考点的水平角度在180°(π)~270°(3π/2)内,这两部分参考点的水平角度在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角度在180°(π)~270°(3π/2)内,第二部分参考点的水平角度在270°(3π/2)~360°(2π)内,这两部分参考点的水平角度在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角度在0°(0)~90°(π/2)内,第二部分参考点的水平角度在90°(π/2)~180°(π)内,第三部分参考点的水平角度在180°(π)~270°(3π/2)内,这三部分参考点的水平角度在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角度在90°(π/2)~180°(π)内,第二部分参考点的水平角度在180°(π)~270°(3π/2)内,第三部分参考点的水平角度在270°(3π/2)~360°(2π)内,这三部分参考点的水平角度在计算三角函数值时不会重叠;或者,多个第二参考点中的第一部分参考点的水平角度在0°(0)~90°(π/2)内,第二部分参考点的水平角度在90°(π/2)~180°(π)内,第三部分参考点的水平角度在180°(π)~270°(3π/2)内,第四部分参考点的水平角度在270°(3π/2)~360°(2π)内,这四部分参考点的水平角度在计算三角函数值时不会重叠。[0279]上述不会重叠可以是指属于不同子范围的水平角度计算得到的三角函数值不相等,例如,多个第二参考点共有四个(n1、n2、n3和n4),其中,n1的水平角度为0,n2的水平角度为π/6,n3的水平角度为π/3,n4的水平角度为π/2;或者,n1的水平角度为0,n2的水平角度为2/3π,n3的水平角度为4/3π,n4的水平角度为2π。需要说明的是,本技术中对多个第二参考点的水平角度所述的子范围不做具体限定,只要该多个第二参考点的水平角度的三角函数值可以覆盖其中一个子范围的全部角度的三角函数值即可。[0280]相应的,上述位置信息的水平角度取值范围为0~2π。[0281]如上所述,上述多个第二参考点也可以用各自的水平角索引进行标识,基于水平角索引和相邻经线圈的水平角度差可以在第二参考点的水平角度和水平角度差之间进行转换。[0282]本技术中多个第二参考点的水平角索引对应的多个三角函数可以是正弦函数值,也可以是余弦函数值。[0283]可选的,第i个第二参考点的水平角索引对应的正弦函数值满足如下公式(3):[0284][0285]其中,j=0,1,…,m’,rj表示上述第一纬线圈的半径。可选的,j的取值也可以是在范围内不连续的,例如,i=1,3,5,8,9,10,…,m’。[0286]可选的,第i个第二参考点的水平角索引对应的余弦函数值满足如下公式(4):[0287][0288]其中,j=0,1,…,m’,rj表示上述第一纬线圈的半径。[0289]需要说明的是,上述俯仰三角函数表和水平三角函数表可以是预先计算并存储的,也可以根据m和n的值实时计算并存储。可选的,由于编码器和解码器均采用分帧处理,因此在hoa系数计算过程中,当前音频帧的m与前一音频帧的m取值相等时,处理当前帧时可以不用重新计算水平三角函数表,直接使用前一音频帧的水平三角函数表即可;当前音频帧的n与前一音频帧的n取值相等时,处理当前帧时可以不用重新计算俯仰三角函数表,直接使用前一音频帧的俯仰三角函数表即可。[0290]本技术中可以根据虚拟扬声器在预设球面上的位置信息的俯仰角信息以及上述俯仰三角函数表获取位置信息的俯仰角信息对应的三角函数值;和/或,根据虚拟扬声器在预设球面上的位置信息的水平角信息以及上述水平三角函数表获取位置信息的水平角信息对应的三角函数值。[0291]可见针对虚拟扬声器在预设球面上的位置信息,可以根据其位置信息包含的具体内容,以及预先设置的参考三角函数表的具体内容来获得该位置信息对应的三角函数值,即位置信息包含俯仰角信息,可以根据该俯仰角信息和参考三角函数表(如果有俯仰三角函数表,则用俯仰三角函数表,如果没有俯仰三角函数表,则用水平三角函数表)获得位置信息的俯仰角信息对应的三角函数值;位置信息包含水平角信息,可以根据该水平角信息和参考三角函数表(如果有水平三角函数表,则用水平三角函数表,如果没有水平三角函数表,则用俯仰三角函数表)获得位置信息的水平角信息对应的三角函数值。[0292]本技术可以采用以下几种方法获取位置信息的俯仰角信息对应的三角函数值:[0293]一、当位置信息的俯仰角信息与多个第一参考点中的一个参考点的俯仰角索引对应上时,将俯仰三角函数表中一个参考点的俯仰角索引对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0294]位置信息的俯仰角信息与多个第一参考点中的一个参考点的俯仰角索引对应上表示虚拟扬声器在预设球面上的位置对应的俯仰角度正好与俯仰三角函数表中的某一个俯仰角索引对应的俯仰角度相等,或者,虚拟扬声器在预设球面上的位置对应的俯仰角索引正好与俯仰三角函数表中的某一个俯仰角索引相等,即虚拟扬声器在预设球面上的位置与选取出来用于获取俯仰三角函数表的参考点的位置重合。因此可以直接从俯仰三角函数表中查询该俯仰角信息的三角函数值即可。[0295]二、当位置信息的俯仰角信息与n个参考点中除多个第一参考点外的一个参考点的俯仰角索引对应上时,将n个参考点中除多个第一参考点外的一个参考点的俯仰角索引转换为多个第一参考点中的一个参考点的俯仰角索引,将俯仰三角函数表中一个参考点的俯仰角索引对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0296]位置信息的俯仰角信息与n个参考点中除多个第一参考点外的一个参考点的俯仰角索引对应上表示虚拟扬声器在预设球面上的位置对应的俯仰角信息与俯仰三角函数表中的各个俯仰角索引对应的俯仰角度均不相等,但与第一经线圈上的某一其他参考点的俯仰角索引对应的角度相等,或者,虚拟扬声器在预设球面上的位置对应的俯仰角索引与第一经线圈上的某一其他参考点的俯仰角索引相等,即虚拟扬声器在预设球面上的位置与某一参考点的位置重合,该参考点没有用于获取俯仰三角函数表,但其俯仰角索引与三角函数表中的俯仰角索引存在三角函数对应关系。因此可以基于三角函数的原理将将n个参考点中除多个第一参考点外的一个参考点的俯仰角索引转换为多个第一参考点中的一个参考点的俯仰角索引,然后查表得到多个第一参考点中的一个参考点的俯仰角索引对应的三角函数值,将多个第一参考点中的一个参考点的俯仰角索引对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0297]三、当位置信息的俯仰角信息与参考点的俯仰角索引均不对应时,根据位置信息的俯仰角信息获得与位置信息的俯仰角信息对应的参考点的俯仰角信息;当与位置信息的俯仰角信息对应的参考点的俯仰角信息与多个第一参考点中的一个参考点的俯仰角索引对应上时,将俯仰三角函数表中一个参考点的俯仰角索引对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值;当与位置信息的俯仰角信息对应的参考点的俯仰角信息与n个参考点中除多个第一参考点外的一个参考点的俯仰角索引对应上时,将n个参考点中除多个第一参考点外的一个参考点的俯仰角索引转换为多个第一参考点中的一个参考点的俯仰角索引,将俯仰三角函数表中一个参考点的俯仰角索引对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0298]位置信息的俯仰角信息与参考点的俯仰角索引均不对应表示虚拟扬声器在预设球面上的位置既不在经线圈上,也不在纬线圈上。因此先获得与位置信息的俯仰角信息对应的参考点的俯仰角信息,再参照上述方法一或方法二的方式获取参考点的俯仰角信息对应的三角函数值,将该参考点的俯仰角信息对应的三角函数值作为位置信息的俯仰角信息对应的三角函数值。[0299]可选的,俯仰角度和俯仰角索引满足如下公式(5):[0300][0301]其中,ri表示第一经线圈的半径,round()表示取整。[0302]本技术可以采用以下几种方法获取位置信息的水平角信息对应的三角函数值:[0303]一、当位置信息的水平角信息与多个第二参考点中的一个参考点的水平角索引对应上时,将水平三角函数表中一个参考点的水平角索引对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0304]位置信息的水平角信息与多个第二参考点中的一个参考点的水平角索引对应上表示虚拟扬声器在预设球面上的位置对应的水平角度正好与水平三角函数表中的某一个水平角索引对应的水平角度相等,或者,虚拟扬声器在预设球面上的位置对应的水平角索引正好与水平三角函数表中的某一个水平角索引相等,即虚拟扬声器在预设球面上的位置与选取出来用于获取水平三角函数表的参考点的位置重合。因此可以直接从水平三角函数表中查询该水平角信息的三角函数值即可。[0305]二、当位置信息的水平角信息与m个参考点中除多个第二参考点外的一个参考点的水平角索引对应上时,将m个参考点中除多个第二参考点外的一个参考点的水平角索引转换为多个第二参考点中的一个参考点的水平角索引,将水平三角函数表中一个参考点的水平角索引对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0306]位置信息的水平角信息与m个参考点中除多个第二参考点外的一个参考点的水平角索引对应上表示虚拟扬声器在预设球面上的位置对应的水平角信息与水平三角函数表中的各个俯仰角索引对应的俯仰角度均不相等,但与第一纬线圈上的某一其他参考点的水平角索引对应的角度相等,或者,虚拟扬声器在预设球面上的位置对应的水平角索引与第一纬线圈上的某一其他参考点的水平角索引相等,即虚拟扬声器在预设球面上的位置与某一参考点的位置重合,该参考点没有用于获取水平三角函数表,但其水平角索引与三角函数表中的水平角索引存在三角函数对应关系。因此可以基于三角函数的原理将m个参考点中除多个第二参考点外的一个参考点的水平角索引转换为多个第二参考点中的一个参考点的水平角索引,然后查表得到多个第二参考点中的一个参考点的水平角索引对应的三角函数值,将多个第二参考点中的一个参考点的水平角索引对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0307]三、当位置信息的水平角信息与参考点的水平角索引均不对应时,根据位置信息的水平角信息获得与位置信息的水平角信息对应的参考点的水平角信息;当与位置信息的水平角信息对应的参考点的水平角信息与多个第二参考点中的一个参考点的水平角索引对应上时,将水平三角函数表中一个参考点的水平角索引对应的三角函数值作为位置信息的水平角信息对应的三角函数值;当与位置信息的水平角信息对应的参考点的水平角信息与m个参考点中除多个第二参考点外的一个参考点的水平角索引对应上时,将m个参考点中除多个第二参考点外的一个参考点的水平角索引转换为多个第二参考点中的一个参考点的水平角索引,将水平三角函数表中一个参考点的水平角索引对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0308]位置信息的水平角信息与参考点的水平角索引均不对应表示虚拟扬声器在预设球面上的位置既不在经线圈上,也不在纬线圈上。因此先获得与位置信息的水平角信息对应的参考点的水平角信息,再参照上述方法一或方法二的方式获取参考点的水平角信息对应的三角函数值,将该参考点的水平角信息对应的三角函数值作为位置信息的水平角信息对应的三角函数值。[0309]可选的,水平角度θ和水平角索引θ’满足如下公式(6):[0310][0311]其中,rj表示第一纬线圈的半径,round()表示取整。[0312]步骤403、根据位置信息对应的三角函数值获取虚拟扬声器的hoa系数。[0313]以下对虚拟扬声器的hoa系数的生成过程进行说明:[0314]声波在理想介质中传播,其波速为k=w/c,角频率w=2πf,f表示声波频率,c表示声速。因此声压p满足如下公式(7):[0315][0316]其中,为拉普拉斯算子。[0317]在球坐标下求解公式(7),声压p可以得到如下公式(8):[0318][0319]其中,r表示球半径,θ表示水平角度,表示俯仰角度,k表示波速,s表示理想平面波的幅度,m表示hoa阶数序号,表示球贝塞尔函数,亦称作径向基函数,第一个j是虚数单位,不随角度变化,是θ和对应的球谐函数,是声源方向的球谐函数。[0320]立体混响(ambisonics)系数为:[0321]因此可以得到声压p的一般展开形式(10):[0322][0323]上述公式(9)可以表明声场可以在球面上按球谐函数展开,其通过ambisonics系数进行表示。[0324]相应的,已知ambisonics系数则可以重建声场,将公式(9)截断到第n项,以ambisonics系数作为对声场的近似描述,则称为n阶的hoa系数,该hoa系数亦称作ambisonics系数。n阶ambisonics系数共有(n+1)2个通道。可选的,hoa阶数可以为2阶~10阶,将球谐函数按照hoa信号的一个采样点对应的系数进行叠加,就能实现该采样点对应的时刻空间声场的重构。根据该原理可以生成虚拟扬声器的hoa系数。将公式(9)中的θs和分别设置为虚拟扬声器的位置信息,即水平角度和俯仰角度,根据式(9)可以获得该虚拟扬声器的hoa系数,也称作ambisonics系数。例如,针对3阶hoa信号,假设s=1,其对应的16通道的hoa系数可通过球谐函数得到,3阶hoa信号对应的16通道的hoa系数计算公式具体如表1所示:[0325]表1[0326][0327][0328]表1中θ表示虚拟扬声器在预设球面上的位置信息的水平角信息,表示虚拟扬声器在预设球面上的位置信息的俯仰角信息,l表示hoa阶数,l=0,1,…,n,m表示每一阶中的方向参数,m=-l,…,l。按照表1中的极坐标的表达式,可以根据虚拟扬声器的位置信息,获得该虚拟扬声器的3阶hoa信号对应的16个通道的hoa系数。除此之外,本发明方法也可以用于获取任意阶数的球谐函数展开hoa系数。[0329]本技术中,预先只需要获取预设球面上的某一经线圈上的所有参考点中的四分之一个参考点的三角函数值(俯仰三角函数表),和/或,预设球面上的某一纬线圈上的所有参考点中的四分之一个参考点的三角函数值(水平三角函数表),可以基于前述三角函数表获取到0°~360°的任意角度的三角函数值。表1中的其他三角函数例如幂次三角函数和倍角三角函数均可以通过现有技术进行展开,得到由sin三角函数和cos三角函数组成的一般展开形式,进而可以通过本发明方法得到相应的其他三角函数值。这样一方面可以减少预先阶段的计算量,另一方面由于三角函数表中的角度数量减少,从而需要存储的三角函数表的数据量也相应的减少,可以节省存储空间。[0330]以下通过几个具体的实施例,示例性的说明获取位置信息的俯仰角信息和水平角信息分别对应的三角函数值的方法。表示位置信息的俯仰角信息,或者表示与位置信息对应的参考点的俯仰角信息,表示俯仰角索引;θ表示位置信息的水平角信息,或者表示与位置信息对应的参考点的水平角信息,θ’表示水平角索引。[0331]需要说明的是,本技术中俯仰角信息和水平角信息可以用索引号的方式表示,例如,经线圈上有n个参考点,该n个参考点是等间距排列的,相邻两个参考点的俯仰角信息差为2π/n,因此该n个参考点各自的俯仰角信息可以由参考点的索引号表示,即该n个参考点的俯仰角信息可以表示为0~n-1,上述多个第一参考点的数量为那么该多个第一参考点的俯仰角信息可以表示为同理,纬线圈上有m个参考点,该m个参考点是等间距排列的,相邻两个参考点的水平角信息差为2π/m,因此该m个参考点各自的水平角信息可以由参考点的索引号表示,即该m个参考点的水平角信息可以表示为0~m-1,上述多个第二参考点的数量为那么该多个第二参考点的水平角信息可以表示为本技术可以采用上述公式(5)获得俯仰角度和俯仰角索引之间的关系,采用上述公式(6)获得水平角度θ和水平角索引θ’之间的关系。[0332]实施例一[0333]m≠n,采用上述步骤402的方法预先设定了俯仰正弦函数表sin_table_n和水平正弦函数表sin_table_m。[0334]可以按照以下规则获取位置信息的俯仰角信息对应的正弦函数值和余弦函数值:[0335][0336][0337][0338][0339][0340][0341][0342][0343]可以按照以下规则获取位置信息的水平角信息对应的正弦函数值和余弦函数值:[0344][0345][0346][0347][0348][0349][0350][0351][0352]实施例二[0353]m=n,采用上述步骤402的方法预先设定了俯仰正弦函数表sin_table_n,由于m和n相等,因此水平正弦函数表sin_table_m与俯仰正弦函数表sin_table_n相同,本实施例中可以只获取一个三角函数表,例如sin_table,这样可以进一步减少三角函数表的计算量和存储量,节省存储空间。[0354]可以按照以下规则获取位置信息的俯仰角信息对应的正弦函数值和余弦函数值:[0355][0356][0357][0358][0359][0360][0361][0362][0363]可以按照以下规则获取位置信息的水平角信息对应的正弦函数值和余弦函数值:[0364][0365][0366][0367][0368][0369][0370][0371][0372]实施例三[0373]m≠n,m=k1×n,k1≥2,采用上述步骤402的方法预先设定了水平正弦函数表sin_table_m,由于m和n具有倍数关系,因此俯仰正弦函数表sin_table_n可以通过前述倍数关系结合三角函数原理获得,因此本实施例中可以只获取一个三角函数表,例如sin_table_m,这样可以进一步减少三角函数表的计算量和存储量,节省存储空间。[0374]可以按照以下规则获取位置信息的水平角信息对应的正弦函数值和余弦函数值:[0375][0376][0377][0378][0379][0380][0381][0382][0383]可以按照以下规则获取位置信息的俯仰角信息对应的正弦函数值和余弦函数值:[0384][0385][0386][0387][0388][0389][0390][0391][0392]实施例四[0393]m≠n,n=k2×m,k2≥2,采用上述步骤402的方法预先设定了俯仰正弦函数表sin_table_n,由于m和n具有倍数关系,因此水平正弦函数表sin_table_m可以通过前述倍数关系结合三角函数原理获得,因此本实施例中可以只获取一个三角函数表,例如sin_table_n,这样可以进一步减少三角函数表的计算量和存储量,节省存储空间。[0394]可以按照以下规则获取位置信息的俯仰角信息对应的正弦函数值和余弦函数值:[0395][0396][0397][0398][0399][0400][0401][0402][0403]可以按照以下规则获取位置信息的水平角信息对应的正弦函数值和余弦函数值:[0404][0405][0406][0407][0408][0409][0410][0411][0412]实施例五[0413]m≠n,采用上述步骤402的方法预先设定了俯仰余弦函数表cos_table_n和水平余弦函数表cos_table_m。[0414]可以按照以下规则获取位置信息的俯仰角信息对应的正弦函数值和余弦函数值:[0415][0416][0417][0418][0419][0420][0421][0422][0423]可以按照以下规则获取位置信息的水平角信息对应的正弦函数值和余弦函数值:[0424][0425][0426][0427][0428][0429][0430][0431][0432]图7为本技术hoa系数的获取装置的一个示例性的结构图,如图7所示,该装置可以应用于上述实施例中的编码器20或解码器30。本实施例的hoa系数的获取装置可以包括:获取模块701和计算模块702。其中,[0433]获取模块701,用于获取虚拟扬声器在预设球面上的位置信息,所述位置信息包括俯仰角信息和/或水平角信息;所述预设球面上包含m个经线圈和n个纬线圈,所述经线圈和所述纬线圈的交叉点称作参考点,位于同一个经线圈上的n个参考点等间距排列,位于同一个纬线圈上的m个参考点等间距排列;计算模块702,用于根据所述位置信息以及预设的参考三角函数表获取所述位置信息对应的三角函数值,所述参考三角函数表包括俯仰三角函数表和/或水平三角函数表;所述俯仰三角函数表包括多个第一参考点的俯仰角索引对应的多个三角函数值,所述多个第一参考点是第一经线圈上的参考点,所述多个第一参考点的数量不小于表示向下取整,所述第一经线圈是所述m个经线圈的其中之一;所述水平三角函数表包括多个第二参考点的水平角索引对应的多个三角函数值,所述多个第二参考点是第一纬线圈上的参考点,所述多个第二参考点的数量不小于所述第一纬线圈是所述n个纬线圈的其中之一;根据所述位置信息对应的三角函数值获取所述虚拟扬声器的高阶立体混响hoa系数。[0434]在一种可能的实现方式中,所述计算模块702,具体用于根据所述位置信息的俯仰角信息以及所述俯仰三角函数表获取所述位置信息的俯仰角信息对应的三角函数值;和/或,根据所述位置信息的水平角信息以及所述水平三角函数表获取所述位置信息的水平角信息对应的三角函数值。[0435]在一种可能的实现方式中,所述计算模块,具体用于当所述位置信息的俯仰角信息与所述多个第一参考点中的一个参考点的俯仰角索引对应上时,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值;或者,当所述位置信息的俯仰角信息与所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引对应上时,将所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引转换为所述多个第一参考点中的一个参考点的俯仰角索引,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值;或者,当所述位置信息的俯仰角信息与所述参考点的俯仰角索引均不对应时,根据所述位置信息的俯仰角信息获得与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;当所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息与所述多个第一参考点中的一个参考点的俯仰角索引对应上时,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值;当所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息与所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引对应上时,将所述n个参考点中除所述多个第一参考点外的一个参考点的俯仰角索引转换为所述多个第一参考点中的一个参考点的俯仰角索引,将所述俯仰三角函数表中所述一个参考点的俯仰角索引对应的三角函数值作为所述位置信息的俯仰角信息对应的三角函数值。[0436]在一种可能的实现方式中,所述计算模块,具体用于当所述位置信息的水平角信息与所述多个第二参考点中的一个参考点的水平角索引对应上时,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值;或者,当所述位置信息的水平角信息与所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引对应上时,将所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引转换为所述多个第二参考点中的一个参考点的水平角索引,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值;或者,当所述位置信息的水平角信息与所述参考点的水平角索引均不对应时,根据所述位置信息的水平角信息获得与所述位置信息的水平角信息对应的参考点的水平角信息;当所述与所述位置信息的水平角信息对应的参考点的水平角信息与所述多个第二参考点中的一个参考点的水平角索引对应上时,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值;当所述与所述位置信息的水平角信息对应的参考点的水平角信息与所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引对应上时,将所述m个参考点中除所述多个第二参考点外的一个参考点的水平角索引转换为所述多个第二参考点中的一个参考点的水平角索引,将所述水平三角函数表中所述一个参考点的水平角索引对应的三角函数值作为所述位置信息的水平角信息对应的三角函数值。[0437]在一种可能的实现方式中,所述位置信息的俯仰角信息包括所述位置信息的俯仰角度或者所述位置信息的俯仰角索引;所述位置信息的水平角信息包括所述位置信息的水平角度或者所述位置信息的水平角索引。[0438]在一种可能的实现方式中,所述三角函数值是指正弦函数值或者余弦函数值。[0439]在一种可能的实现方式中,当所述多个第一参考点的俯仰角索引对应的多个三角函数为正弦函数值时,第i个第一参考点的俯仰角索引对应的正弦函数值满足如下公式(1):[0440][0441]其中,i=0,1,…,n’,ri表示所述第一经线圈的半径;[0442]或,[0443]当所述多个第一参考点的俯仰角索引对应的多个三角函数为余弦函数值时,第i个第一参考点的俯仰角索引对应的余弦函数值满足如下公式(2):[0444][0445]其中,i=0,1,…,n’,ri表示所述第一经线圈的半径。[0446]在一种可能的实现方式中,当所述多个第二参考点的水平角索引对应的多个三角函数为正弦函数值时,第j个第二参考点的水平角索引对应的正弦函数值满足如下公式(3):[0447][0448]其中,j=0,1,…,m’,rj表示所述第一纬线圈的半径;[0449]或,[0450]当所述多个第二参考点的水平角索引对应的多个三角函数为余弦函数值时,第j个第二参考点的水平角索引对应的余弦函数值满足如下公式(4):[0451][0452]其中,j=0,1,…,m’,rj表示所述第一纬线圈的半径。[0453]在一种可能的实现方式中,俯仰角度和俯仰角索引满足如下公式(5):[0454][0455]其中,ri表示所述第一经线圈的半径,round()表示取整。[0456]在一种可能的实现方式中,水平角度θ和水平角索引θ’满足如下公式(6):[0457][0458]其中,rj表示所述第一纬线圈的半径,round()表示取整。[0459]在一种可能的实现方式中,[0460]当m≠n时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0461][0462][0463][0464][0465][0466][0467][0468][0469]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_n()表示所述俯仰三角函数表;[0470]当m≠n时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0471][0472][0473][0474][0475][0476][0477][0478][0479]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_m()表示所述水平三角函数表;[0480]或,[0481]当m=n时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0482][0483][0484][0485][0486][0487][0488][0489][0490]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_n()表示所述俯仰三角函数表;[0491]当m=n时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0492][0493][0494][0495][0496][0497][0498][0499][0500]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_n()表示所述俯仰三角函数表;[0501]或,[0502]当m≠n,m=k1×n,k1≥2时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0503][0504][0505][0506][0507][0508][0509][0510][0511]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_m()表示所述水平三角函数表;[0512]当m≠n,m=k1×n,k1≥2时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0513][0514][0515][0516][0517][0518][0519][0520][0521]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_m()表示所述水平三角函数表;[0522]或,[0523]当m≠n,n=k2×m,k2≥2时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0524][0525][0526][0527][0528][0529][0530][0531][0532]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;sin_table_n()表示所述俯仰三角函数表;[0533]当m≠n,n=k2×m,k2≥2时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0534][0535][0536][0537][0538][0539][0540][0541][0542]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;sin_table_n()表示所述俯仰三角函数表;[0543]或,[0544]当m≠n时,所述位置信息的俯仰角信息对应的三角函数值满足如下公式:[0545][0546][0547][0548][0549][0550][0551][0552][0553]其中,表示所述位置信息的俯仰角信息,或者,表示所述与所述位置信息的俯仰角信息对应的参考点的俯仰角信息;cos_table_n()表示所述俯仰三角函数表;[0554]当m≠n时,所述位置信息的水平角信息对应的三角函数值满足如下公式:[0555][0556][0557][0558][0559][0560][0561][0562][0563]其中,θ表示所述位置信息的水平角信息,或者,θ表示所述与所述位置信息的水平角信息对应的参考点的水平角信息;cos_table_m()表示所述水平三角函数表。[0564]本实施例的装置,可以用于执行图4所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。[0565]在实现过程中,上述方法实施例的各步骤可以通过处理器中的硬件的集成逻辑电路或者软件形式的指令完成。处理器可以是通用处理器、数字信号处理器(digitalsignalprocessor,dsp)、特定应用集成电路(application-specificintegratedcircuit,asic)、现场可编程门阵列(fieldprogrammablegatearray,fpga)或其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。本技术公开的方法的步骤可以直接体现为硬件编码处理器执行完成,或者用编码处理器中的硬件及软件模块组合执行完成。软件模块可以位于随机存储器,闪存、只读存储器,可编程只读存储器或者电可擦写可编程存储器、寄存器等本领域成熟的存储介质中。该存储介质位于存储器,处理器读取存储器中的信息,结合其硬件完成上述方法的步骤。[0566]上述各实施例中提及的存储器可以是易失性存储器或非易失性存储器,或可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(read-onlymemory,rom)、可编程只读存储器(programmablerom,prom)、可擦除可编程只读存储器(erasableprom,eprom)、电可擦除可编程只读存储器(electricallyeprom,eeprom)或闪存。易失性存储器可以是随机存取存储器(randomaccessmemory,ram),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的ram可用,例如静态随机存取存储器(staticram,sram)、动态随机存取存储器(dynamicram,dram)、同步动态随机存取存储器(synchronousdram,sdram)、双倍数据速率同步动态随机存取存储器(doubledataratesdram,ddrsdram)、增强型同步动态随机存取存储器(enhancedsdram,esdram)、同步连接动态随机存取存储器(synchlinkdram,sldram)和直接内存总线随机存取存储器(directrambusram,drram)。应注意,本文描述的系统和方法的存储器旨在包括但不限于这些和任意其它适合类型的存储器。[0567]本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本技术的范围。[0568]所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。[0569]在本技术所提供的几个实施例中,应该理解到,所揭露的系统、装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。[0570]所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。[0571]另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。[0572]所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(个人计算机,服务器,或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(read-onlymemory,rom)、随机存取存储器(randomaccessmemory,ram)、磁碟或者光盘等各种可以存储程序代码的介质。[0573]以上所述,仅为本技术的具体实施方式,但本技术的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本技术揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本技术的保护范围之内。因此,本技术的保护范围应以所述权利要求的保护范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1