扬声器控制

文档序号:1941947 发布日期:2021-12-07 浏览:17次 >En<

阅读说明:本技术 扬声器控制 (Loudspeaker control ) 是由 F·M·法兹 E·哈姆丹 A·福兰克 M·西蒙 于 2021-06-07 设计创作,主要内容包括:提供了一种控制扬声器阵列的方法。该方法包括:接收要通过所述阵列在声学环境中的相应多个控制点处再现的多个输入音频信号;以及通过将滤波器集合应用于所述多个输入音频信号来生成所述阵列中每一扬声器的相应输出音频信号。所述滤波器集合基于:基于传递函数集合的第一近似的第一多个滤波器元件,所述传递函数集合中的每一传递函数在应用于所述扬声器中的相应一个扬声器的音频信号与在所述控制点中的相应一个控制点处从所述扬声器中的所述相应一个扬声器接收到的音频信号之间;以及基于所述传递函数集合的第二近似的第二多个滤波器元件。(A method of controlling a loudspeaker array is provided. The method comprises the following steps: receiving a plurality of input audio signals to be reproduced by the array at a respective plurality of control points in an acoustic environment; and generating a respective output audio signal for each speaker in the array by applying a set of filters to the plurality of input audio signals. The set of filters is based on: a first plurality of filter elements based on a first approximation of a set of transfer functions, each transfer function in the set of transfer functions between an audio signal applied to a respective one of the speakers and an audio signal received from the respective one of the speakers at a respective one of the control points; and a second plurality of filter elements based on a second approximation of the set of transfer functions.)

扬声器控制

技术领域

本公开涉及一种控制扬声器阵列的方法以及相应的装置和计算机程序。

背景技术

扬声器阵列可被用于在多个控制点处再现多个不同的音频信号。应用于扬声器阵列的音频信号是使用滤波器生成的,它可被设计以避免串扰。然而,这些滤波器的权重的确定在计算上可能是昂贵的,尤其是在控制点正在移动并且因此需要实时计算滤波器权重的情况下。例如,如果控制点对应于收听者在声学环境中的位置,则情况可能如此。

在WO 2017/158338A1中描述了用于确定扬声器阵列的滤波器权重的先前办法。

发明内容

本公开的各方面在所附权利要求书中定义。

附图说明

现在将参照附图解释本公开的各示例,附图中:

图1示出了控制扬声器阵列的方法;

图2示出了用于控制扬声器阵列的装置,其可被用于实现图1的方法;

图3a示出了声场控制应用,该声场控制应用旨在通过执行串扰消除和创建针对收听者耳朵的窄波束来再现3D双耳音频;

图3b示出了旨在为不同收听者再现不同内容信号的声场控制应用;

图3c示出了声场控制应用,该声场控制应用旨在通过执行串扰消除和创建针对多个收听者的耳朵的窄波束来再现3D双耳音频,同时还将声音从环境的墙壁反弹以创建进一步的3D图像源;

图3d示出了头部跟踪系统的使用,该头部跟踪系统估计收听者相对于扬声器阵列的实时3D位置;

图4示出了利用扬声器阵列在多个控制点处再现多个声学信号的潜在声学控制问题的信号处理框图;

图5示出了在阵列信号处理中用来用L个扬声器再现M个输入信号的多输入多输出(MIMO)控制过程的简化信号处理图;

图6示出了被称为‘技术1’的以用L个扬声器再现M个输入信号的滤波办法的简化信号处理图;

图7示出了技术1办法的扩展信号处理图,其示出M×M个无关滤波器和M×L个相关滤波器;

图8示出了用于本文描述的办法(称为‘技术2’)的信号处理框图;

图9a示出了将技术2过程划分成多个频带以允许信号处理参数在不同频带中取不同值的第一信号处理方案;

图9b示出了将技术2过程划分成多个频带的第二信号处理方案;

图9c示出了将技术2过程划分成多个频带的第三信号处理方案;

图10a示出了与传统的收听者自适应和静态MIMO办法相比,基于技术1办法的收听者自适应阵列滤波器的处理功率需求的仿真结果;以及

图10b示出了使用本文描述的技术1办法和技术2办法获得的滤波器之间的串扰消除性能的比较。

在整个说明书和附图中,相同的附图标记指代相同的部件。

具体实施方式

一般而言,本公开涉及一种控制扬声器阵列以避免串扰的方式(这降低了要在第一控制点处再现的音频信号也在其他控制点处被再现的程度)在相应的多个控制点处再现多个输入音频信号的方法。对输入音频信号应用滤波器集合以获得输出到扬声器阵列的多个输出音频信号。本公开主要涉及确定这些滤波器的方式。

图1示出了控制扬声器阵列的方法。

在步骤S100,接收要通过扬声器阵列在声学环境中的相应多个控制点处再现的多个输入音频信号。

在步骤S110,可以使用位置传感器接收多个控制点。具体而言,可以接收或确定多个控制点中的每一者的位置。

在步骤S120,可以确定滤波器集合。如果步骤S110被执行,则可以基于所确定的多个控制点来确定该滤波器集合。或者,可以基于预定的多个控制点来确定该滤波器集合。下面详细描述确定该滤波器集合的方式。

在步骤S130,通过将该滤波器集合应用于多个输入音频信号来确定阵列中每一扬声器的相应输出音频信号。

该滤波器集合可以在频域中应用。在这一情形中,对输入音频信号应用诸如快速傅立叶变换(FFT)之类的变换,应用滤波器,然后应用逆变换以获得输出音频信号。

在步骤S140,可以将输出音频信号输出到扬声器阵列。

步骤S100到S140可以用另外多个输入音频信号来重复。在重复步骤S100到S140时,该滤波器集合可以保持相同,在这一情形中,不需要执行步骤S120,或者可以改变。

如本领域技术人员将理解的,可以针对连贯地接收到的多个输入音频信号帧来执行图1的步骤。相应地,在开始重复步骤S100到S140之前,不需要全部完成步骤S100到S140。例如,在一些实现中,在步骤S140被第一次执行之前,第二次执行步骤S100。

图2中示出了用于实现本文所述的任何方法(诸如图1的方法)的示例性装置200的框图。装置200包括处理器210(例如,数字信号处理器),其被布置成执行可经由存储器220、网络接口230或输入接口250中的一者或多者提供给装置200的计算机可读指令。

存储器220,例如随机存取存储器(RAM),被布置成能够检索、存储并向处理器210提供已经存储在存储器220中的指令和数据。网络接口230被布置成使处理器210能够与诸如因特网之类的通信网络进行通信。输入接口250被布置成接收经由诸如鼠标、键盘或触摸屏之类的输入设备(未示出)提供的用户输入。处理器210还可以耦合到显示适配器240,显示适配器240进而耦合到显示设备(未示出)。处理器210还可耦合到音频接口260,音频接口260可被用于将音频信号输出到一个或多个音频设备,诸如扬声器阵列300。音频接口260可包括数模转换器(DAC)(未示出),例如用于具有模拟输入的音频设备。

现在描述用于确定滤波器集合的各种办法。

上下文

基于收听者自适应的串扰消除(CTC)3D音频系统依靠多个控制滤波器来生成驱动一个或多个扬声器的声音。这些滤波器的参数根据一个或多个收听者的瞬时位置来实时地适配,该瞬时位置是使用收听者跟踪设备(例如,相机、全球定位系统设备或可穿戴设备)来估计的。这一滤波器参数自适应需要昂贵的计算资源,从而使得小型嵌入式设备难以使用这种音频再现办法。计算资源消耗的一部分来自于对多个逆滤波器的需求,这是由于在系统扬声器和给定收听者的耳朵之间使用复杂、精确的传递函数模型。可以使用更简单的声学传递函数来降低计算负载,但是这是以降低再现音频的质量为代价的,特别是在其感知空间属性方面。因此,难以创建具有低计算负载且具有高质量性能的自适应系统。

收听者自适应CTC系统可以基于立体声扬声器布置。收听者自适应系统还可使用四扬声器的布置,以便让收听者能够在360度范围内转头和听到声音。这些收听者自适应CTC系统示例使用时变信号处理控制办法来适应时变收听者位置和头部取向。控制滤波器可以是从数据库中读取的,也可以是以显著的计算成本来即时计算的。虽然这种信号处理办法可以使用诸如个人计算机(PC)中可用的中央处理器之类的大型中央处理器(CPU)来实现,但是当使用两个以上的扬声器时,它们的底层信号处理成为嵌入式系统的限制因素。

当使用两个以上的扬声器时,基于CTC的3D音频系统具有经改进的响应。这些可以与非收听者自适应的、固定的办法一起使用。然而,这样的办法可能不适合消费者应用程序,因为它们假设收听者停留在单个收听位置。

从信号处理的角度来看,许多办法的主要问题是,它们基于需要M×L个控制滤波器——M是声压控制点的数量(通常收听者的每一耳朵有一个),L是扬声器阵列的扬声器数量——的‘经典’多输入多输出(MIMO)信号流。对于双扬声器系统,只需要四个滤波器;然而,如果要使系统是收听者自适应的,则需要两倍的数量,并且如果要使用更多的扬声器,则处理成本增长非常快。

WO 2017/158338 A1中描述的技术(下文称为‘技术1’)允许使用两个以上的扬声器的扬声器阵列来进行处理高效的收听者自适应音频再现。由技术1引入的主CPU开销(或消耗)降低是由于将滤波信号处理音频流分解成扬声器相关滤波器(DF)和扬声器无关滤波器(IF)的组合。在技术1中,诸扬声器无关滤波器(IFs)被实现为时变有限冲激响应(FIR)滤波器集合,而诸扬声器相关滤波器(DFs)被实现为时变增益延迟元件集合。由于这种分解,只需要M×M个控制滤波器和M个延迟线(每个延迟线有L个读取点)。这种处理方案与其他方法所需的滤波器的M×L矩阵相比,造成处理复杂度的大幅降低,因为在大多数实现中,L远大于M。

然而,由技术1引入的处理节省要求每一扬声器和声压控制点之间的声学传递函数可以用线性相位和频率无关增益来表示,例如假设自由场点单极传播模型。然而,使用更复杂的传递函数可能有用,这将显著改善虚拟声音图像的感知质量并且不能用简单的增益和延迟来表示。

技术1的概述

基于扬声器阵列的声场控制系统旨在在空间中的一个或多个点(控制点)处再现一个或多个声学信号,同时消除到其他控制点的声学串扰(或声音泄漏)。这种声学控制导致产生窄声束,这些窄声束可以在空间中以精确的方式定向控制或操纵,以促进各种声学应用。

例如,一个应用可以精确地控制对一个或多个收听者341、342、343的耳朵的压力,以创建‘虚拟耳机’并再现3D声音,这被称为串扰消除(CTC),如图3a所示。另一应用可以是向两个或更多个收听者再现各种不同且独立的声束320,使得他们中的每一者都可以收听不同的声音节目或具有因用户而异的声级的同一节目,如图3b所示。由于声束320控制耳朵周围的声场,这些控制技术以“使收听者周围的声音个性化的能力”而闻名。此外,可以控制由扬声器阵列300产生的波束,以便也将声音引导到再现声音的房间的墙壁330。这种声音从墙壁上反弹并到达收听者,从而创造一种身临其境的体验,如图3c所示。

L通道扬声器阵列包括位于位置处的扬声器。对于给定的再现频率ω=2πf(以弧度/秒为单位),目标是在一组控制点处再现由扬声器阵列创建的M个波束所呈现的一组M个音频信号d(ω)=[d1(ω),…,dM(ω)]T。收听者可以在收听空间中自由地四处移动,并且控制点{xm}的位置可以在空间中变化。为了允许这一点,控制点{xm}的瞬时空间位置可以由提供收听者的耳朵相对于扬声器阵列的每一扬声器的实时坐标的收听者跟踪系统310(相机、可穿戴、激光、基于声音)来收集,如图3d所示。

图4中描绘了由扬声器阵列再现的声压控制问题的框图。潜在的声压控制问题可以在频域中表示为

p(ω)=S(ω)H(ω)d(ω), (1)

其中p(ω)=[p1(ω),…,pM(ω)]T包含在不同控制点xm处再现的声压信号。(·)T表示向量或矩阵转置,是所谓的目标矩阵(plant matrix),其元素是L个源和M个控制点之间的声学传递函数,且是设计用于给定S(ω),在控制点处再现音频输入信号d(ω)的控制滤波器矩阵。H的每一列hm被设计成在控制点xm处再现其对应的音频信号dm,同时最小化其他控制点处的辐射压力。除非必要,对ω的依赖此后将省略。

声音控制系统的最终目标是获得

p=e-jωTd,

其中和e-jωT是用来确保解的因果关系的建模延迟。如果SH=e-jωTI,其中I是M×M单位矩阵,则这一条件被满足。允许大致满足这一条件的一种办法是计算H作为S的正则化伪逆矩阵,即

H=e-jωTSH[SSH+A]-1 (3)

其中A是正则化矩阵,且(·)H表示Hermitian转置。上述方程可称为不确定系统的伪逆解,并且因此它返回的控制滤波器集合可称为“逆”滤波器。这样的系统将具有用于M个音频信号的M个输入和用于阵列的L个扬声器的L个输出,如图5的框图所示。对于诸如在经典阵列信号处理中使用的那些MIMO系统之类的MIMO系统的情形,需要M×L个控制滤波器。

在阵列信号处理中,阵列控制滤波器H是针对给定的声学目标矩阵S来计算得到的。目标矩阵是阵列扬声器与要控制其处的声压的控制点之间的电声传递函数的模型。理想地,目标矩阵将尽可能准确地表征实际声学系统中找到的物理传递函数。然而,这在实际应用中并不总是可能的。虽然以相对较大的精确度执行声学测量并估计给定系统的目标矩阵是可能的,但这是只能在实验室条件下精确地执行的复杂过程。此外,即使收听者的很小移动,目标矩阵也会显著变化,这需要密集的测量网格以允许对收听者移动有广泛的适应性。此外,这种办法还产生了一组L×M个复杂的逆滤波器,这使得重建的计算复杂度很高。因此,使用非常简单但精确的声学传播模型来表示目标矩阵S是有帮助的。

一种特定情形是当目标矩阵S由简单矩阵C来近似的时候,该简单矩阵C是假设每一扬声器和声压控制点之间的自由场点-源声学传播模型而形成的。因此,矩阵C被定义为

其中这一矩阵的每一元素是由延迟和增益元素形成的,例如,

其中是波数且c0是声音在空气中的速度,并且rmL是依赖于第m声学控制点与第l扬声器的声学中心之间的距离的频率无关实数。使用这样的传播模型使得一旦控制点相对于扬声器阵列的位置是已知的,就可以容易地计算矩阵C的元素,因此需要适当的处理来计算新的控制滤波器集合H。

使用简单的电声模型有助于减少获得新的滤波器集合所需的计算量,同时也有助于减少过滤给定量的数字音频内容所需的低级操作的数量。通过分析方程(3)的结构可以进行进一步简化,方程(3)是欠定最小二乘方问题的伪逆的公式。仔细分析表明,某些项(滤波器元件)对一些输出/扬声器是通用的。这些被称为无关过滤器(IF)。其他项因某些扬声器而异并且称为相关滤波器(DF)。因此,可以将等式(3)的项以及由此得到的信号处理架构进行如下编组:

其中T1和T2是满足关系T1+T2=T的延迟。这使得可以将式(6)中的信号处理分解为一组M×M个IF和一组L×M个DF。这得到图6所示的信号处理方案,其在图7中以其展开形式示出。

这一阵列信号处理的特点之一是采用常规(时变)FIR滤波实现M×M个IF和使用每一者具有L个接入点的M个(时变)延迟线实现M×L个DF是可能的。此时,诸DF就像一个延迟-和-求和波束成形器。与传统的基于M×L个可变滤波器的MIMO滤波办法相比时,这一实现引入了对过滤一定量的数字音频所需的计算成本的大幅降低,从而允许减少每秒浮点运算(FLOPS)的数量并且允许将处理嵌入在较小的设备中。实现计算复杂度的这一降低的唯一要求是矩阵C的元素只包括频率无关的增益和延迟。

技术2办法

使用比上面介绍的矩阵C提供的更精确、频率相关的传递函数模型可能是有用的。例如,使用刚性球或测得的头部相关传递函数(HRTF)来消除串扰以计入收听者的头部衍射并从而改善空间音频质量可能是合需的,或者补偿扬声器的频率响应和方向性可能是有用的,或者补偿环境中其他元素的衍射可能是有用的。

实现这一点的一种方式是用更复杂的矩阵G代替简单的矩阵C,该矩阵G提供了物理传递函数矩阵S的更好近似。例如,矩阵G可以通过测量物理传递函数S来创建(在这一情形中,G的元素可以是例如头部相关传递函数),或者通过使用S的分析或数值模型(诸如刚性球或人类头部的边界元素模型来创建)。然而,在这一情形中,G的元素将不像C的情况那样是简单的延迟和增益,而是将基于更复杂的频率相关数据或函数。如果将这样的矩阵G用在式(6)中以用于数字滤波器计算,则一方面,这将造成系统的更好的音频质量性能,但另一方面,它将需要复杂得多的诸DF,从而导致总体计算负载的显著增加。

发明人已经得到如下洞察:通过使用相对复杂、更精确的矩阵G和相对简单、较不精确的矩阵C,技术1的音频质量可以在不显著增加计算负载的情况下得到显著改进。首先,回顾一下,由于滤波器设计步骤的目标是p=e-jωTd,其中p=SHd,滤波器H应使得

SH≈e-jωTI (7)

其中I是M×M单位矩阵。

用于计算H的式(6)由下式取代(暂且忽略正则化矩阵A)

与SCH[CCH]-1相比,SCH[GCH]-1提供对单位矩阵的好得多的近似,因为G与C相比是对S的好得多的近似。这允许显著改进的音频质量。

然而,使用更精确但计算上更复杂的矩阵G受限于IF,而DF是矩阵中包含的简单增益和延迟。与矩阵GH也用于DF所需的相比,这允许低得多的计算成本。

在这一情形中,前面的声压问题现在给出如下

p=e-jωTSCH[GCH]-1d。 (9)

将正则化方案(例如Tikhonov正则化)应用于IF的设计也是可能的。在这一情形中,式(8)重写为

H=e-jωTCH[GCH+A]-1 (10)

其中A是用于控制阵列滤波器的能量的正则化矩阵。与这一数字信号处理(DSP)架构相对应的框图在图8中描绘。可以观察滤波器H如何被划分为M×M个无关滤波器IF和M×L个相关滤波器DF。

计算无关滤波器IF的替换方式是求解(凸)优化问题

受限于||CHIFs||p2≤Hmax。 (12)这里表示合适的矩阵范数,例如Frobenius范数,而Hmax是阵列滤波器H的矩阵范数的容许上限。

在这一点上值得注意的是,矩阵G和C的组合提供了创建阵列控制滤波器的其他可能性,这可能受益于使用这种混合控制办法和更现实的传递函数模型。例如,通过如下计算H,采用“加权”控制办法来调整来自任何所选择的扬声器的贡献以控制任何控制点处的声压可能是有用的

H=e-jωTWLCH[GWLCH+A]-1, (13)

在这一情形中,WL是L×L对角加权矩阵,包含每一扬声器的正权重。

类似的办法对于希望以不同方式控制每一控制点处的声压的一些用例可以是有用的。在这一情形中,可以使用包含正权重的大小是M×M的矩阵WM,其中控制滤波器由下式给出:

H=[GWMCH+A]-1CHWMe-jωT。 (14)

现在定义如下一组项:

新引入的矩阵G(即Gm,l)的元素具有形式其中τ(xm,yl)是取决于每一扬声器和控制点的位置的位置相关延迟,且G0(xm,yl,ω)是复杂的频率相关函数。

C(即Cm,l)的元素由形式的增益和延迟形成。

实值增益gm,l取决于扬声器和控制点的相对位置。

包括在Gm,l的定义中的延迟项τ(xm,yl)可以是定义矩阵C的相应元素Cm,l的相同延迟。

延迟项τ(xm,yl)可以如下选择:矩阵GCH对角线上的项的相位尽可能接近于零。

因此,延迟的可能选择是值τ(xm,yl)使得ωτ(xm,yl)是Gm,l的相位的最佳线性近似(跨频率)。

C的设计的其他可能性是基于共线因子的

其中||·||是l2范数算子,且cm′和gm分别是矩阵C的第m′行和矩阵G的第m行。

一个选项是选择延迟项τ(xm,yl)和增益项gm,l,以使共线因子γm,m′在感兴趣的频率范围内对于下标m=m′的行的每一组合被最大化(或增加)。

另一可能性是选择延迟项τ(xm,yl)和增益项gm,l,以同样在感兴趣的频率范围内,在下标m=m′的行的每一组合的共线因子最大化(或增加)与下标m≠m′的行的共线因子最小化(或降低)之间达到最佳折衷。

作为示例,这一优化问题的一个可能的数学公式是

其中设计参数αk和ζk是非负实数,且分别是所有延迟τ(xm,yl)和增益gm,l的集合。{ωk}k=1,...,K是跨感兴趣的频率范围的频率集合(注意γm,m′是频率相关的量)。

这一优化办法的优点之一是增加了系统的稳定性。对于M=2的情况,这可以通过如下事实来证明:det(GCH)(其是用于滤波计算的要反转的矩阵的行列式)的绝对值是

其中φ是相位项。可以看出,如果不对φ作出假设,则最大化(或增加)γ1,1和γ2,2以及最小化(或降低)γ1,2和y2,1使行列式的绝对值最大化(或增加),并且从而提高系统的稳定性。

上述办法使用两个传递函数集合来计算阵列滤波器,并且被称为‘技术2’。

滤波器组实现

对于某些应用,实现同一信号处理算法的并行版本(但适用于不同的频带)可能有用。例如,如果不同类型的声学致动器被用于不同的频率范围(高音和低音),则可能需要这样做。在这一情形中,可为每一不同的频带使用不同数量的扬声器Ln。这要求针对不同的频带对矩阵C和G进行不同的计算,以便这些矩阵的元素可以针对n=[1,…,N]个不同频带取不同的值。下面介绍了实现这一点的三种不同办法。

第一多频带架构如图9a所示。在输入端使用一组N个带通滤波器Bn,并且核心技术2处理被重复N次。在这一情形中,每一频带的IF和DF是不同的。带通滤波器可以另选地是低通滤波器或高通滤波器。在这一情形中,第n频带的IF和DF可以定义为

IFn=[GnCn H+An]-1 (18)

DFn=Cn (19)

其中矩阵Gn、Cn、An如在本文中如上所定义,但具有特定于第n频带的参数值。使用IF和DF的这些定义,在频域中,通过下式给出了与第n频带相对应的Ln扬声器信号qn

qn=Cn H[GnCn H+An]-1Bnd (20)

第二可能的多频带DSP架构在图9b中示出。在这一情形中,IF考虑对于每一频带而言都不同的矩阵Cn中的各种延迟,并且IF的输出稍后被划分为被馈送到N组DF的N个频带,每一频带的缩放延迟的值是不同的。此方案只需要使用M×M个IF,与针对每一频带具有不同的一组IF相反。这些IF可被定义为

其中Wn是频率加权函数,它主要依赖于带通滤波器Bn并且可以是复值。DF可以按式(19)计算。

第三可能的多频带DSP架构在图9c中示出。在这一情形中,多频带处理被包括在IF和DF这两者中,以使得需要单组M×M个IF和M×L个DF(与每一频带一个不同的集合相对)。IF可以如在式(21)中定义,而DF可被定义为

通过这一办法,DF不再是增益延迟元件。在该第三办法中,对于每一给定的扬声器,将与各频带相关的信号相加在一起。因此,这一方法不适用于针对不同频段(高音和低音)使用不同声学驱动器的情形。然而,在其他应用中,这种方法可以是有用的,例如当G的元素的群延迟被不同频带中的不同延迟更好地近似时。根据上述IF和DF的定义,在频域中如下给出L个扬声器信号q

技术1和技术2办法的效果

图10a示出了与传统的收听者自适应和静态MIMO办法相比,基于技术1办法的收听者自适应阵列滤波器的处理功率需求的仿真结果。具体而言,对于静态MIMO办法1001、收听者自适应MIMO办法1002和技术1办法1003,示出作为扬声器L的数量的函数的所需MFLOPS的数量。

为了说明技术2办法提供的优点,图10b中示出了针对具有三个扬声器的扬声器阵列的仿真结果。在这一仿真中,示出了CTC频谱,代表在收听者耳中传递的声学信号的通道分离。理想地,对于通过CTC传输3D声音的阵列,该性能度量应尽可能大,以提供良好的3D沉浸感。如在图10b中观察到的,技术2 1004的性能在音频频率范围上比技术1 1005的性能好得多,特别是在2kHz以上,其中头部衍射的影响很大。

技术2办法组合了技术1的简单性和低计算成本,因为存在由矩阵CH表示的简单DF,但它还允许在IF的计算中引入更精确的目标矩阵G,而没有显著增加算法的总体计算成本。这允许将复杂的声学现象(诸如由于头部的衍射或声学环境的反射)纳入考虑并对其补偿,并且从而提高再现音频的质量。

本公开的效果是提供一种滤波器计算方案,其允许在使用有限数量的处理资源的同时使用复杂的传递函数模型。

本公开的效果是提供一种具有经改进稳定性的滤波办法。

替换实现

将明白,上述办法(特别是技术1和技术2)可以用多种方式来实现。下面是对上述办法的许多实现而言可能共同的特性的一般描述。当然将理解,除非另有说明,上述办法的任何特征都可以与下面列出的任何共同特性结合起来。

提供了一种控制(或‘驱动’)扬声器阵列(例如,L个扬声器的线阵列)的方法。

该方法可包括在声学环境(或‘声学空间’)中,在相应多个控制点(或‘收听位置’)(例如,)接收由阵列再现的多个输入音频信号(例如d)。

该多个输入音频信号中的每一者可以不同。

该多个输入音频信号中的至少一者可以不同于该多个输入音频信号中的至少一个另一者。

该方法还可包括通过对多个输入音频信号(例如,d)应用滤波器集合(例如,H),来为阵列中的每一扬声器生成(或‘确定’)相应的输出音频信号(例如,Hd或q)。

滤波器集合可以是数字滤波器。该滤波器集合可以在频域中应用。

该滤波器集合可以基于第一多个滤波器元件(例如,C)和第二多个滤波器元件(例如,G)。

第一多个滤波器元件(例如,C)可以基于传递函数集合(例如,S)的第一近似。

第二多个滤波器元件(例如,G)可以基于传递函数集合(例如,S)的第二近似。

传递函数集合中的每一传递函数可以在应用于扬声器中的相应一个的音频信号和在控制点中的相应一个处从扬声器中的该相应一个接收到的音频信号之间。

第一和第二多个滤波器元件可以基于传递函数集合的不同近似。具体而言,不同的近似可以基于传递函数集合的不同模型。

滤波器元件可以是滤波器的权重。多个滤波器元件可以是任意一组滤波器权重。滤波器元件可以是滤波器的权重的任何分量。多个滤波器元件可以是滤波器的相应权重的多个分量。

滤波器集合可以通过组合两个不同的矩阵C和G来获得,它们进而是使用构成系统目标矩阵S的物理电声传递函数的两个不同近似来计算得到的。矩阵G(例如,如在式10中使用的)可以使用目标矩阵S的精确的、频率相关的近似来形成。矩阵C(例如,如式10中使用的)可以使用频率无关增益和延迟形成,或者更一般地,可以使用如下元素形成:其不同于G的元素并允许与基于G计算的DF相比可以在减少的计算负荷下计算的DF。

第一近似(例如,用于确定C)可以基于自由场声学传播模型和/或点-源声学传播模型。

第二近似(例如用于确定G)可计及声音在声学环境中的反射、折射、衍射或散射中的一者或多者。作为替换或补充,第二近似可以计及来自一个或多个收听者的头部的散射。作为替换或补充,第二近似可以计及每一扬声器的频率响应或每一扬声器的方向图中的一者或多者。

滤波器集合(例如H)可包括:

基于第一(例如,C)和第二(例如,G)多个滤波器元件的第一滤波器子集(例如,[GCH]-1);以及

基于第一或第二多个滤波器元件中的一者的第二滤波器子集(例如,CH)。

为阵列中的每一扬声器生成相应的输出音频信号可包括:

通过对输入音频信号(例如,d)应用第一滤波器子集(例如,[GCH]-1),为每一控制点(m)生成相应的中间音频信号;以及

通过对中间音频信号应用第二滤波器子集(例如,CH),为每一扬声器生成相应的输出音频信号。

该阵列可以包括L个扬声器,并且多个控制点可以包括M个控制点,并且第一滤波器子集可以包括M2个滤波器且第二滤波器子集可以包括L×M个滤波器。

滤波器集合或第一滤波器子集可基于包含第一(例如,C)和第二(例如,G)多个滤波器元件的矩阵(例如,[GCH])的逆来确定。

包含第一和第二多个滤波器元件的矩阵(例如,[GCH])可以在被反转之前被正则化(例如,通过正则化矩阵A)。

包含第一和第二多个滤波器元件的矩阵(例如,[GCH])可基于以下来确定:

在频域中,包含第二多个滤波器元件的矩阵(例如,G)和包含第一多个滤波器元件的矩阵(例如[CH])的乘积;或者

时域中的等价运算。

滤波器集合可基于以下来确定:

在频域中,包含第一多个滤波器元件的矩阵(例如,[CH])和包含第一和第二多个滤波器元件的矩阵(例如,[GCH])的乘积;或者

时域中的等价运算。

可使用优化技术来确定滤波器集合。

第一滤波器子集可被确定以降低标量矩阵(例如,单位矩阵I)与包含如下各项之积的矩阵之间的差:包括第二多个滤波器元件的矩阵(例如,G)、包含第一多个滤波器元件的矩阵(例如C)、以及表示第一滤波器子集(例如IF)的矩阵。

第一多个滤波器元件(例如C)中的每一者可以是频率无关的延迟-增益元件(例如)。

第一多个滤波器元件中的每一者可以包括延迟项(例如)和/或增益项(例如,gm,l),所述增益项基于控制点之一和扬声器之一(例如yl)的相对位置(例如,xm)。

对于多个控制点中的每个给定一个控制点(m):

第一向量(例如cm)可以包含来自与给定控制点(m)相对应的第一多个滤波器元件(例如C)的滤波器元件,以及

第二向量(例如gm)可以包含来自与给定控制点(m)相对应的第二多个滤波器元件(例如G)的滤波器元件;

并且,第一多个滤波器元件中的每一者可以包括基于第一向量和第二向量之间的共线性(例如,γ)确定的延迟项和/或增益项。

延迟项(例如)和/或增益项(例如,gm,l)可被确定,以便对于多个控制点中的每一给定的一个控制点(m),增加(或最大化)对应于给定控制点的第一向量(例如,cm)和对应于给定的控制点的第二向量(例如,gm)之间的共线性(例如,γm,m′)。

延迟项(例如)和/或增益项(例如,gm,l)可被确定,以便:

对于多个控制点中的每一对不同的第一(m1)和第二(m2)给定控制点,降低(或最小化)对应于第一给定控制点的第一向量(例如)和对应于第二给定控制点的第二向量(例如)之间的共线性(例如);以及

对于多个控制点中的每一第三给定控制点(m3),增加(或最大化)对应于第三给定控制点的第一向量(例如)和对应于第三给定控制点的第二向量(例如)之间的共线性(例如)。

第一多个滤波器元件中的每一者可包括延迟项(例如,)和/或增益项(例如,gm,l),所述延迟项和/或增益项是针对包括第一多个滤波器元件的第一矩阵(例如,C)的每一给定行来确定的,以便:

增加(或最大化)第一矩阵(例如,C)的给定行和包括第二多个滤波器元件的第二矩阵(例如,G)的对应行之间的共线性(例如,γ);以及

可任选地,降低(或最小化)第一矩阵(例如,C)的给定行和第二矩阵(例如,G)的非对应行之间的共线性(例如,γ)。

第一多个滤波器元件中的每一者可包括基于第二多个滤波器元件(例如,G)中对应的一个滤波器元件的相位的线性近似的延迟项(例如,)。

多个控制点(例如,)可包括相应多个收听者的位置,例如,在‘个人音频’模式下操作时。

多个控制点(例如,)可包括一个或多个收听者的耳朵的位置,例如在“双耳”模式下操作时。

第二近似可基于一个或多个头部相关传递函数HRTF。一个或多个HRTF可以是测得的HRTF。一个或多个HRTF可以是仿真的HRTF。一个或多个HRTF可以使用头部的边界元模型来确定。

第二多个滤波器元件可通过测量传递输函数集来确定。

该方法还可包括使用位置传感器确定多个控制点。

生成相应的输出音频信号(例如,Hd)可包括使用滤波器组在多个子频带中应用滤波器集合的至少一部分。

滤波器的第一子集(例如,[GCH]-1)和滤波器的第二子集(例如CH)可以应用于每一子频带(例如,如图9a所示)。

滤波器的第一子集(例如,[GCH]-1)和滤波器的第二子集(例如CH)可以应用在滤波器组内(例如,如图9a所示)。

滤波器的第一子集(例如,[GCH]-1)可被应用在全频带中,而滤波器的第二子集(例如CH)可以应用在每一子频带中(例如,如图9b所示)。换言之,滤波器的第一子集(例如,[GCH]-1)可以应用于滤波器组之外,而滤波器的第二子集(例如CH)可以应用在滤波器组内。

为阵列中的每一扬声器生成相应的输出音频信号可包括:

对于扬声器的第一子集中的每一者,生成在多个子频带中的第一子频带中的相应的输出音频信号;以及

对于扬声器的第二子集中的每一者,生成在多个子频带中的第二子频带中的相应的输出音频信号,

扬声器的第一和第二子集不同,并且多个子频带的第一和第二子频带不同。

第一多个滤波器元件可包括用于多个子频带中的第一子频带的第一滤波器元件的第一子集和用于多个子频带中的第二子频带的第一滤波器元件的第二子集;和/或第二多个滤波器元件可包括用于多个子频带中的第一子频带的第二滤波器元件的第一子集和用于多个子频带中的第二子频带的第二滤波器元件的第二子集。

第一滤波元件的第一子集和第一滤波元件的第二子集可以不同和/或第二滤波元件的第一子集和第二滤波元件的第二子集可以不同。

滤波器集合(例如H)可以是时变的。或者,滤波器集合(例如H)可以是固定的或时不变的,例如当收听者位置和头部方向被认为是相对静态的时候。

该方法还可包括将输出音频信号(例如Hd或q)输出到扬声器阵列。

该方法还可包括例如从另一处理设备或从滤波器确定模块接收滤波器集合(例如H)。该方法还可包括确定滤波器集合(例如,H)。

第一和第二近似可不同。

第一多个滤波器元件(例如,C)中的至少一者可以不同于第二多个滤波器元件(例如,C)中的对应的一者。

该方法还可包括使用本文中列出的任何等式来确定本文中列出的任何变量。

可以使用本文中列出的任何等式(例如,式6、8、10、13、14)来确定滤波器集合。

提供一种配置成执行本文所述的任何方法的装置。

该装置可包括数字信号处理器,其被配置成执行本文所述的任何方法。

该装置可包括扬声器阵列。

该装置可以耦合到扬声器阵列,或者可以被配置成耦合到扬声器阵列。

提供了一种计算机程序,其包括当由处理系统执行时使处理系统执行本文所述的任何方法的指令。

提供了一种(非瞬态)计算机可读介质或包括该计算机程序的数据载体信号。

在一些实现中,上述各种方法由计算机程序实现。在一些实现中,计算机程序包括被布置成指令计算机执行上述各种方法中的一者或多者的功能的计算机代码。在一些实现中,用于执行这些方法的计算机程序和/或代码在一个或多个计算机可读介质或更一般地在计算机程序产品上提供给诸如计算机之类的设备。计算机可读介质是瞬态的或非瞬态的。一个或多个计算机可读介质可以是例如电子、磁性、光学、电磁、红外或半导体系统,或者用于数据传输的传播介质,例如用于通过因特网下载代码。或者,一个或多个计算机可读介质可以采取一个或多个物理计算机可读介质的形式,例如半导体或固态存储器、磁带、可移动计算机软盘、随机存取存储器(RAM)、只读存储器(ROM)、硬磁盘、或光盘(诸如CD-ROM、CD-R/W或DVD)。

在一实现中,本文所描述的模块、组件和其他特征被实现为分立组件或集成在诸如ASIC、FPGA、DSP或类似设备的硬件组件的功能性中。

‘硬件组件’是能够执行特定操作并以特定物理方式配置或布置的有形(例如,非瞬态)物理组件(例如,一组一个或多个处理器)。在一些实现中,硬件组件包括永久配置为执行某些操作的专用电路系统或逻辑。在一些实现中,硬件组件是或包括专用处理器,诸如现场可编程门阵列(FPGA)或ASIC。在一些实现中,硬件组件还包括通过软件临时配置为执行某些操作的可编程逻辑或电路系统。

因此,术语‘硬件组件’应被理解为包括物理上构造的、永久地配置的(例如,硬接线)或临时配置的(例如,编程)以特定方式操作或执行本文所述的特定操作的有形实体。

此外,在一些实现中,模块和组件被实现为硬件设备内的固件或功能电路系统。此外,在一些实现中,模块和组件在硬件设备和软件组件的任何组合中实现,或者仅在软件中实现(例如,在机器可读介质或传输介质中存储或以其他方式实现的代码)。

本领域技术人员将认识到,可以针对上述示例进行各种各样的修改、变更和组合而不脱离所公开概念的范围,并且这些修改、变更和组合将被视为在本公开的范围内。

将明白,尽管上述各种方法可能隐含地或显式地描述为‘最优’,但工程设计涉及折中,并且因此从一个角度来看是最优的方法从另一个角度来看可能不是最优的。此外,稍微次优的办法可能仍然有用。因此,最优和次最优解决方案都应被视为在本公开的范围内。

本领域技术人员还将认识到,本发明的范围不受本文所述示例的限制,而是由所附权利要求书限定。

29页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:立体声耳机的声音定位控制方法、立体声耳机及相关设备

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!