用于对话增强的解码方法和解码器与流程

文档序号:12513578阅读:425来源:国知局
用于对话增强的解码方法和解码器与流程

本文公开的本发明一般而言涉及音频编码。特别地,它涉及用于在基于声道的音频系统中增强对话的方法和设备。



背景技术:

对话增强是关于增强与其它音频内容相关的对话。这可以例如应用于允许听力受损的人跟随电影中的对话。对于基于声道的音频内容,对话通常存在于若干声道中,并且还与其它音频内容混合。因此,增强对话是非常重要的任务。

存在若干已知的用于在解码器中执行对话增强的方法。根据这些方法中的一些,全声道内容(即,全声道配置)被首先解码,然后接收到的对话增强参数被用于基于全声道内容预测对话。然后,预测的对话被用于增强相关声道中的对话。但是,这种解码方法依赖于能够解码全声道配置的解码器。

但是,低复杂度解码器通常没有被设计为解码全声道配置。相反,低复杂度解码器可以解码和输出表示全声道配置的下混版本的较低数量的声道。相应地,全声道配置在低复杂度解码器中不可用。由于对话增强参数是相对于全声道配置的声道(或至少相对于全声道配置的一些声道)定义的,因此已知的对话增强方法不能直接由低复杂度解码器应用。特别地,由于相对于对话增强参数所应用到的声道可能仍然与其它声道混合,因此是这种情况。

因此,存在允许低复杂度解码器应用对话增强而不必解码全声道配置的改进空间。

附图说明

在下文中,将参考附图更详细地描述示例实施例,其中:

图1a是根据第一下混方案被下混到5.1下混中的7.1+4声道配置的示意图。

图1b是根据第二下混方案被下混到5.1下混中的7.1+4声道配置的示意图。

图2是用于对完全解码的声道配置执行对话增强的现有技术解码器的示意图。

图3是根据第一模式的对话增强的示意图。

图4是根据第二模式的对话增强的示意图。

图5是根据示例实施例的解码器的示意图。

图6是根据示例实施例的解码器的示意图。

图7是根据示例实施例的解码器的示意图。

图8是对应于图2、图5、图6和图7中的任何一个解码器的编码器的示意图。

图9示出了用于基于控制每个子操作的参数来计算由两个子操作A和B组成的联合处理运算BA的方法。

所有图都是示意性的,并且一般仅示出为了说明本发明所必需的这些元素,而其它元素可以被省略或仅仅被建议。

具体实施方式

鉴于以上所述,目的是提供一种解码器和关联的方法,其允许应用对话增强而不必解码全声道配置。

I.概述

根据第一方面,示例性实施例提供了用于在音频系统的解码器中增强对话的方法。该方法包括以下步骤:

接收多个下混信号,它们是更多个声道的下混;

接收用于对话增强的参数,其中所述参数是关于包括含有对话的声道的所述多个声道的子集定义的,其中所述多个声道的所述子集被下混到所述多个下混信号的子集中;

接收重建参数,从而允许下混到所述多个下混信号的所述子集中的声道进行参数化重建;

基于重建参数参数化地上混所述多个下混信号的所述子集,以便重建关于其定义了用于对话增强的参数的所述多个声道的所述子集;

使用用于对话增强的参数对关于其定义了用于对话增强的参数的所述多个声道的所述子集应用对话增强,以便提供至少一个对话增强的信号;及

使所述至少一个对话增强的信号经受混合,以便提供所述多个下混信号的所述子集的对话增强的版本。

利用这种布置,解码器不必为了执行对话增强而重建全声道配置,由此降低了复杂度。相反,解码器重建应用对话增强所需的那些声道。特别地,这包括关于其定义了接收到的用于对话增强的参数的所述多个声道的子集。一旦对话增强已经被执行,即,当至少一个对话增强的信号已经基于用于对话增强的参数和关于其定义了这些参数的所述多个声道的所述子集被确定时,接收到的下混信号的对话增强版本通过使(一个或多个)对话增强的信号经受混合过程来确定。其结果是,产生了下混信号的对话增强版本,用于随后由音频系统重放。

在示例性实施例中,上混操作可以是完整的(重建编码声道的整个集合)或部分的(重建声道的子集)。

如本文所使用的,下混信号是指作为一个或多个信号/声道的组合的信号。

如本文所使用的,参数化地上混是指通过参数化技术从下混信号重建一个或多个信号/声道。要强调的是,本文公开的示例性实施例不限于基于声道的内容(在与不变的或预定义的空间中的方向、角度和/或位置关联的音频信号的意义上),而是还扩展到基于对象的内容。

根据示例性实施例,在参数化地上混所述多个下混信号的所述子集的步骤中,没有使用去相关的信号来重建关于其定义了用于对话增强的参数的多个声道的子集。

这是有利的,因为在它提高所得的下混信号的对话增强版本的质量(即,输出处的质量)的同时,它降低了计算复杂度。更详细而言,通过对话增强的信号所经受的后续混合减少在上混时使用去相关的信号获得的优点。因此,可以有利地省略去相关的信号的使用,由此节省计算复杂度。事实上,在上混中使用去相关的信号与对话增强相结合会导致更差的质量,因为它会对增强的对话导致去相关器混响。

根据示例性实施例,混合是根据混合参数来进行的,其中混合参数描述至少一个对话增强的信号对多个下混信号的子集的对话增强版本的贡献。因此可以存在一些混合参数,这些混合参数描述如何混合至少一个对话增强的信号,以便提供多个下混信号的子集的对话增强版本。例如,混合参数可以是以权重的形式,其描述至少一个对话增强的信号中有多少应当被混合到多个下混信号的子集中的每个下混信号中,以获得多个下混信号的子集的对话增强版本。这种权重可以例如是渲染参数的形式,其指示与至少一个对话增强的信号关联的、与多个声道(因此与下混信号的对应子集)相关联的空间位置有关的空间位置。根据其它示例,混合参数可以指示至少一个对话增强的信号是否应当对下混信号子集的特定一个对话增强版本有贡献,诸如被包括在其中。例如,“1”可以指示当形成下混信号的对话增强版本中特定一个时应当包括对话增强的信号,而“0”可以指示不应当包括。

在使至少一个对话增强的信号经受混合以便提供多个下混信号的子集的对话增强版本的步骤中,对话增强的信号可以与其他信号/声道混合。

根据示例性实施例,至少一个对话增强的信号与在上混步骤中重建但还没有经受对话增强的声道混合。更详细地,参数化地上混多个下混信号的子集的步骤可以包括重建除关于其定义了用于对话增强的参数的所述多个声道之外的至少一个另外的声道,并且其中混合包括将所述至少一个另外的声道与至少一个对话增强的信号混合。例如,下混到多个下混信号的子集中的所有声道可以被重建并包括在混合中。在这种实施例中,通常在每个对话增强的信号和声道之间具有直接的对应关系。

根据其它示例性实施例,至少一个对话增强的信号与多个下混信号的子集混合。更详细地,参数化地上混多个下混信号的子集的步骤可以包括只重建关于其定义了用于对话增强的参数的多个声道的子集,并且应用对话增强的步骤可以包括使用用于对话增强的参数来预测和增强来自关于其定义了用于对话增强的参数的多个声道的子集的对话成分,以便提供至少一个对话增强的信号,并且混合可以包括混合至少一个对话增强的信号与多个下混信号的子集。因此,这种实施例用来预测和增强对话内容并将其混合到多个下混信号的子集中。

一般应当指出的是,声道可以包括与非对话内容混合的对话内容。另外,对应于一个对话的对话内容可以被混合到多个声道中。通过从关于其定义了用于对话增强的参数的多个声道的子集预测对话成分一般意味着将对话内容从声道中提取(即,分离)并组合,以便重建对话。

对话增强的质量可以通过接收和使用表示对话的音频信号来进一步改善。例如,表示对话的音频信号可以以低位速率进行编码,当分别收听时会产生清楚的可听伪影。但是,当与参数化对话增强一起使用时,即,使用用于对话增强的参数对关于其定义了用于对话增强的参数的多个声道的子集应用对话增强的步骤,所得的对话增强可以改进,例如在音频质量方面。更特别地,该方法还可以包括:接收表示对话的音频信号,其中应用对话增强的步骤包括还使用表示对话的音频信号对关于其定义了用于对话增强的参数的多个声道的子集应用对话增强。

在一些实施例中,混合参数可能在解码器中已经可用,例如,它们可以被硬编码。如果至少一个对话增强的信号总是以相同的方式混合,例如,如果它总是与相同的重建声道混合,则将尤其是如此情况。在其它实施例中,该方法包括接收用于使至少一个对话增强的信号经受混合的步骤的混合参数。例如,混合参数可以形成对话增强参数的一部分。

根据示例性实施例,该方法包括:接收描述下混方案的混合参数,该下混方案描述多个声道中的每一个混合到哪个下混信号中。例如,如果每个对话增强的信号对应于声道,该声道又与其它重建声道混合,则根据该下混方案执行混合,使得每个声道被混合到正确的下混信号中。

下混方案可以随时间变化,即,它可以是动态的,由此增加系统的灵活性。

该方法还可以包括接收识别关于其定义了用于对话增强的参数的多个声道的子集的数据。例如,可以在用于对话增强的参数中包括识别关于其定义了用于对话增强的参数的多个声道的子集的数据。以这种方式,可以向解码器发信号通知关于应当对哪个声道执行对话增强。可替代地,这种信息可以在解码器中可用,例如被硬编码,这意味着对话增强的参数总是关于相同的声道来定义。特别地,该方法还可以包括接收指示要经受混合的对话增强的信号的哪些信号的信息。例如,根据这种变型的方法可以由以特定模式操作的解码系统执行,其中对话增强的信号不被混合回到用于提供对话增强的信号的完全相同的下混信号集合中。以这种方式,混合操作实际上可以被限制到多个下混信号的子集的非完整选择(一个或多个信号)。其它对话增强的信号被添加到稍微不同的下混信号,诸如经过格式转换的下混信号。一旦识别关于其定义了用于对话增强的参数的多个声道的子集的数据以及下混方案已知,就有可能找出关于其定义了用于对话增强的参数的多个声道的子集下混到其中的多个下混信号的子集。更详细地,识别关于其定义了用于对话增强的参数的多个声道的子集的数据连同下混方案一起可以用于找出关于其定义了用于对话增强的参数的多个声道的子集被下混到其中的多个下混信号的子集。

上混多个下混信号的子集、应用对话增强以及混合的步骤可以分别作为由重建参数、用于对话增强的参数和混合参数定义的矩阵运算来执行。这是有利的,因为该方法可以通过执行矩阵乘法有效地执行。

而且,该方法可以包括在对多个下混信号的子集应用之前通过矩阵乘法将与上混多个下混信号的子集的步骤、应用对话增强的步骤和混合的步骤相对应的矩阵运算组合成单个矩阵运算。因此,可以将不同的矩阵运算组合成单个矩阵运算,从而进一步提高方法的效率和降低计算复杂度。

对话增强参数和/或重建参数可以是依赖于频率的,从而允许参数在不同频带之间不同。以这种方式,对话增强和重建可以在不同频带中被优化,由此提高输出音频的质量。

更详细地,用于对话增强的参数可以关于第一频带集合来定义,并且重建参数可以关于第二频带集合来定义,第二频带集合不同于第一频带集合。当例如重建过程需要比对话增强过程处于更高频率分辨率的参数时,和/或当例如对话增强过程在比重建过程更小的带宽上执行时,这对于减少用于在位流中发送用于对话增强的参数和重建参数的位速率可能是有利的。

根据示例性实施例,用于对话增强的参数的(优选地离散的)值可以被重复接收并与第一时刻集合关联,在该第一时刻集合处,相应的值确切地应用。在本公开内容中,值“确切地”在某个时刻应用或已知的陈述旨在指该值已经被解码器接收,通常与其应用的时刻的显式或隐含指示一起接收。相比之下,对某个时刻内插或预测的值在这个意义上未在该时刻“确切地”应用,而是解码器侧的估计。“确切地”并不意味着该值实现音频信号的确切重建。在集合中的连续时刻之间,可以规定预定义的第一内插模式。定义如何估计位于集合中已知参数值的两个界定时刻之间的时刻的参数的近似值的内插模式可以是例如线性内插或分段恒定内插。如果预测时刻距离其中一个界定时刻有一定距离,则线性内插模式基于以下假设,即,在预测时刻的参数的值线性依赖于所述距离,而分段恒定内插模式确保参数的值在每个已知值和下一个值之间不会改变。还可以存在其它可能的内插模式,包括例如使用次数高于1的多项式、样条、有理函数、高斯过程、三角多项式、小波或其组合的模式,以估计在给定预测时刻的参数的值。时刻的集合可以不被明确地发送或陈述,而是从内插模式推断,例如,线性内插间隔的起始点或终点,其可以被隐式地固定到音频处理算法的帧边界。重建参数可以以类似的方式被接收:重建参数的(优选地离散的)值可以与第二时刻集合关联,而第二内插模式可以在连续的时刻之间执行。

该方法还可以包括以以下这样一种方式选择参数类型,该类型或者是用于对话增强的参数或者是重建参数:使得与所选择的类型关联的时刻集合包括作为与未选择的类型关联的集合中缺少的时刻的至少一个预测时刻。例如,如果与重建参数关联的时刻集合包括与用于对话增强的参数关联的时刻集合中缺少的某个时刻,那么,如果所选择的参数类型是重建参数并且未选择的参数类型是用于对话增强的参数,则该某个时刻将是预测时刻。以类似的方式,在另一种情况下,可以在与用于对话增强的参数关联的时刻集合中找到预测时刻,并且所选择的和未选择的类型将切换。优选地,所选择的参数类型是具有对于关联参数值的最高时刻密度的类型;在给定的用例中,这可以减少必需的预测操作的总量。

可以预测在预测时刻未选择的类型的参数的值。预测可以使用合适的预测方法(诸如内插或外推)以及考虑到用于参数类型的预定义内插模式来执行。

该方法可以包括基于至少未选择的类型的参数的预测值和所选择的类型的参数的接收值来计算联合(joint)处理运算的步骤,该联合处理运算表示至少下混信号的子集的上混后面跟着在预测时刻的对话增强。除了重建参数的值和用于对话增强的参数,计算还可以基于其它值(诸如用于混合的参数值),并且联合处理运算还可以表示将对话增强的信号混合回到下混信号的步骤。

该方法可以包括基于所选择的类型的参数的至少(接收或预测的)值和未选择的类型的参数的至少(接收或预测的)值(使得所述值中的至少一个是接收值)来计算与所选择或未选择的类型关联的集合中的相邻时刻的联合处理运算的步骤。相邻时刻可以早于或晚于预测时刻,并且不必要求相邻时刻是距离方面最近的邻居。

在该方法中,上混多个下混信号的子集并应用对话增强的步骤可以通过计算出的联合处理运算的内插值在预测时刻和相邻时刻之间执行。通过内插计算出的联合处理运算,可以实现降低的计算复杂度。通过不分别内插两个参数类型,并且通过不形成乘积(即,联合处理运算),在每个内插点处,可能需要更少的数学加法和乘法运算来实现在感知的听觉质量方面同样有用的结果。

根据另外的示例性实施例,在相邻时刻的联合处理运算可以基于所选择的类型的参数的接收值和未选择的类型的参数的预测值来计算。相反的情况也是可能的,其中在相邻时刻的联合处理运算可以基于所选择的类型的参数的预测值和未选择的类型的参数的接收值来计算。如果例如集合中与所选择的参数类型关联的时刻严格地位于集合中与未选择的参数类型关联的时刻之间,则相同参数类型的值在预测时刻是接收值并且在相邻时刻是预测值的情况可以发生。

根据示例性实施例,在相邻时刻的联合处理运算可以基于所选择的参数类型的参数的接收值和未选择的参数类型的参数的接收值来计算。例如,如果两种类型的参数的确切值都对帧边界接收,但是对于所选择的类型也对于边界之间的中间时刻接收,则这种情况会发生。于是,相邻的时刻是与帧边界关联的时刻,并且预测时刻位于帧边界之间的中间位置。

根据另外的示例性实施例,该方法还可以包括:基于第一和第二内插模式,根据预定义的选择规则来选择联合内插模式,其中计算出的相应联合处理运算的内插符合联合内插模式。预定义的选择规则可以针对第一和第二内插模式相同的情况定义,并且也可以针对第一和第二内插模式不同的情况定义。作为示例,如果第一内插模式是线性的(并且优选地,如果在对话增强操作的参数和定量性质之间存在线性关系),并且第二内插模式是分段恒定,则可以选择联合内插模式为线性的。

根据示例性实施例,根据用于未选择的类型的参数的内插模式来对在预测时刻的未选择的类型的参数的值进行预测。这可以涉及在集合中在与预测时刻相邻的与未选择的类型关联的时刻使用未选择的类型的参数的确切值。

根据示例性实施例,联合处理运算被计算为单个矩阵运算,然后应用到多个下混信号的子集。优选地,上混步骤和应用对话增强的步骤作为由重建参数和用于对话增强的参数定义的矩阵运算被执行。作为联合内插模式,可以选择线性内插模式,并且可以通过线性矩阵内插来计算计算出的相应联合处理运算的内插值。内插可以限于在预测时刻和相邻时刻之间改变的这种矩阵元素,以便降低计算复杂度。

根据示例性实施例,接收到的下混信号可以被分段成时间帧,并且该方法可以包括在稳态操作中接收确切地在每个时间帧中的时刻应用的各参数类型的至少一个值。如本文所使用,“稳态”是指不涉及例如歌曲的初始和最终部分的存在的操作,以及不涉及使得需要帧细分的内部过渡的操作。

根据第二方面,提供了包括具有指令的计算机可读介质的计算机程序产品,其中指令用于执行第一方面的方法。计算机可读介质可以是非暂时性计算机可读介质或设备。

根据第三方面,提供了用于在音频系统中增强对话的解码器,该解码器包括:

接收部件,被配置为接收:

多个下混信号,它们是更多个声道的下混,

用于对话增强的参数,其中所述参数是关于包括含有对话的声道的所述多个声道的子集定义的,其中所述多个声道的子集被下混到多个下混信号的子集中,及

重建参数,从而允许对下混到多个下混信号的所述子集中的声道进行参数化重建;

上混部件,被配置为基于重建参数参数化地上混多个下混信号的所述子集,以便重建关于其定义了用于对话增强的参数的多个声道的子集;及

对话增强部件,被配置为使用用于对话增强的参数对关于其定义了用于对话增强的参数的所述多个声道的所述子集应用对话增强,以便提供至少一个对话增强的信号;及

混合部件,被配置为使所述至少一个对话增强的信号经受混合,以便提供所述多个下混信号的所述子集的对话增强的版本。

一般而言,第二和第三方面可以包括与第一方面相同的特征和优点。

II.示例性实施例

图1a和图1b示意性地示出7.1+4声道配置(对应于7.1+4扬声器配置),其具有:三个前声道L、C、R,两个环绕声道LS、RS,两个后声道LB、RB,四个升高声道TFL、TFR、TBL、TBR以及低频效果声道LFE。在编码7.1+4声道配置的过程中,声道通常被下混,即,组合成较低数量的信号,称为下混信号。在下混过程中,声道可以以不同的方式组合,以形成不同的下混配置。图1a示出了具有下混信号I、c、r、Is、rs、Ife的第一5.1下混配置100a。图中的圆圈指示哪些声道被下混到哪个下混信号中。图1b示出了具有下混信号I、c、r、tl、tr、Ife的第二5.1下混配置100b。第二5.1下混配置100b与第一5.1下混配置100a的不同之处在于声道以不同的方式组合。例如,在第一下混配置100a中,L和TFL声道被下混到I下混信号中,而在第二下混配置100b中,L、LS、LB声道被下混到I下混信号中。下混配置在本文中有时被称为下混方案,其描述哪些声道被下混到哪些下混信号中。下混配置(或者说下混方案)可以是动态的,因为它可以在音频编码系统的时间帧之间变化。例如,第一下混方案100a可以在一些时间帧中使用,而第二下混方案100b可以在其它时间帧中使用。在下混方案动态变化的情况下,编码器可以向解码器发送指示在编码声道时使用哪种下混方案的数据。

图2示出了用于对话增强的现有技术解码器200。解码器包括三个主要部件,接收部件202、上混(或重建)部件204以及对话增强(DE)部件206。解码器200是以下类型:其接收多个下混信号212、基于接收到的下混信号212重建全声道配置218、关于全声道配置218或至少其子集执行对话增强、并且输出对话增强声道220的全配置。

更详细地,接收部件202被配置为从编码器接收数据流210(有时被称为位流)。数据流210可以包括不同类型的数据,并且接收部件202可以将接收到的数据流210解码为不同类型的数据。在这种情况下,数据流包括多个下混信号212、重建参数214和用于对话增强216的参数。

然后,上混部件204基于多个下混信号212和重建参数214重建全声道配置。换句话说,上混部件204重建被下混到下混信号212中的所有声道218。例如,上混部件204可以基于重建参数214参数化地重建全声道配置214。

在所示示例中,下混信号212对应于图1a和1b的5.1下混配置之一的下混信号,并且声道218对应于图1a和1b的7.1+4声道配置的声道。但是,解码器200的原理当然适用于其它声道配置/下混配置。

然后,重建声道218或重建声道218的至少子集通过对话增强部件206经受对话增强。例如,对话增强部件206可以对重建声道218或至少重建声道218的子集执行矩阵运算,以便输出对话增强声道。这种矩阵运算通常由对话增强参数216定义。作为示例,对话增强部件206可以使声道C、L、R经受对话增强,以便提供对话增强声道CDE、LDE、RDE,而其它声道刚刚通过,如图2中的虚线所示。在这种情况下,对话增强参数仅关于C、L、R声道(即,关于多个声道218的子集)定义。例如,对话增强参数216可以定义3×3矩阵,其可以应用到C、L、R声道。

可替代地,通过在对应的对角线位置上为1并且在对应的行和列中的所有其它元素上都为0的对话增强矩阵,对话增强中不涉及的声道可以通过。

对话增强部件206可以根据不同模式执行对话增强。图3中示出了第一模式,在本文被称为声道独立的参数化增强。对话增强是关于重建声道218的至少子集(通常是包括对话的声道,在这里是声道L、R、C)执行的。用于对话增强216的参数包括用于每个要增强的声道的参数集。在所示示例中,参数集分别由对应于声道L、R、C的参数p1、p2、p3给出。原则上,对于声道中的时间频率分块(tile),以这种模式发送的参数表示对话对混合能量的相对贡献。另外,在对话增强过程中涉及增益因子g。增益因子g可以表示为:

其中G是以dB表示的对话增强增益。对话增强增益G可以例如由用户输入,因此通常不包括在图2的数据流210中。

当处于声道独立的参数化增强模式时,对话增强部件206将每个声道乘以其对应的参数pi和增益因子g,然后将结果加到声道,从而产生对话增强声道220,在这里是LDE、RDE、CDE。使用矩阵表示法,可以写成:

Xe=(I+diag(p)·g)·X

其中X是以声道218(L,R,C)作为行的矩阵,Xe是以对话增强声道220作为行的矩阵,p是具有对应于用于每个声道的对话增强参数p1、p2、p3的条目的行向量,diag(p)是对角线上具有条目p的对角矩阵。

图4中示出了第二对话增强模式,在这里称为多声道对话预测。在这种模式下,对话增强部件206以线性组合来组合多个声道218,以预测对话信号419。除了在多个声道中一致地添加对话的存在之外,这种做法可以受益于使用另一个没有对话的声道在包括对话的声道中减去背景噪声。为此,对话增强参数216包括用于每个声道218的参数,所述参数定义在形成线性组合时对应声道的系数。在所示示例中,对话增强参数216分别包括对应于L、R、C声道的参数p1、p2、p3。通常,最小均方误差(MMSE)优化算法可以被用于在编码器侧生成预测参数。

然后,对话增强部件206可以通过应用增益因子g来增强(即,获得)预测对话信号419,并将增强的对话信号添加到声道218,以便产生对话增强声道220。为了在正确的空间位置向正确的声道添加增强的对话信号(否则将不会以预期的增益增强对话),三个声道之间的平移通过渲染系数(在这里是r1、r2、r3)被发送。在渲染系数是能量保存的限制下,即

第三个渲染系数r3可以从前两个系数确定,使得

使用矩阵表示法,当处于多声道对话预测模式时由对话增强206部件执行的对话增强可以被写为:

Xe=(I+g·H·P)·X

或者

其中I是单位矩阵,X是以声道218(L,R,C)作为行的矩阵,Xe是以对话增强声道220作为行的矩阵,P是具有对应于用于每个声道的对话增强参数p1、p2、p3的条目的行向量,H是具有渲染系数r1、r2、r3作为条目的列向量,并且g是增益因子,其中

根据第三模式,在本文被称为波形参数化混杂,对话增强部件206可以组合第一和第二模式中的任一模式与表示对话的附加音频信号(波形信号)的传输。后者通常以低位速率编码,从而在分别收听时会造成清楚的可听伪影。依赖于对话和声道218的信号性质,以及指派给对话波形信号编码的位速率,编码器还确定混和参数ac,该参数指示增益贡献应当如何在(来自第一或第二模式的)参数化贡献和表示对话的附加音频信号之间划分。

结合第二模式,第三模式的对话增强可以被写为:

Xe=H·g1·dc+(I+H·g2·P)·X

或者

其中dc是表示对话的附加音频信号,其中

对于与声道独立的增强(第一模式)的组合,为每个声道218接收表示对话的音频信号dc,i。让对话增强可以被写为:

Xe=g1·Dc+(I+diag(p)·g2)·X.

图5示出了根据示例实施例的解码器500。解码器500是对多个下混信号进行解码的类型,它是更多个声道的下混,用于随后重放。换句话说,解码器500与图2的解码器不同,因为它未配置为重建全声道配置。

解码器500包括接收部件502,以及包括上混部件504、对话增强部件506和混合部件508的对话增强块503。

如参考图2所解释的,接收部件502接收数据流510并将其解码为其成分,在这种情况下,多个下混信号512是更多个声道(参见图1a和1b)、重建参数514以及用于对话增强的参数516的下混。在一些情况下,数据流510还包括指示混合参数522的数据。例如,混合参数可以形成用于对话增强的参数的一部分。在其它情况下,混合参数522在解码器500处已经可用,例如,它们可以在解码器500中被硬编码。在其它情况下,混合参数522可用于混合参数的多个集合,并且数据流510中的数据提供使用这多个混合参数中哪个集合的指示。

用于对话增强的参数516通常关于多个声道的子集来定义。识别关于其定义了用于对话增强的参数的多个声道的子集的数据可以被包括在接收到的数据流510中,例如作为用于对话增强的参数516的一部分。可替代地,关于其定义了用于对话增强的参数的多个声道的子集可以在解码器500中进行硬编码。例如,参考图1a,可以关于被下混到I下混信号中的声道L、TFL,关于包括在c下混信号中的C声道,以及关于被下混到r下混信号中的R、TFR声道来定义用于对话增强的参数516。为了说明的目的,假设对话仅存在于L、C和R声道中。应当指出,用于对话增强的参数516可以关于包括对话的声道(诸如L、C、R声道)来定义,但是,在这个例子中,也可以关于不包括对话的声道(诸如TFL、TFR声道)来定义。以那种方式,包括对话的声道中的背景噪声可以例如使用没有对话的另一个声道来减去。

关于其定义了用于对话增强的参数516的声道的子集被下混到多个下混信号512的子集512a中。在所示示例中,下混信号的子集512a包括c、I和r下混信号。下混信号的这个子集512a被输入到对话增强块503中。下混信号的相关子集512a可以例如基于关于其定义了用于对话增强的参数的多个声道的子集以及下混方案的知识来找出。

上混部件514使用本领域中已知的参数化技术来重建被下混到下混信号的子集512a中的声道。重建基于重建参数514。特别地,上混部件504重建关于其定义了用于对话增强的参数516的多个声道的子集。在一些实施例中,上混部件504仅重建关于其定义了用于对话增强的参数516的多个声道的子集。将参考图7来描述这种示例性实施例。在其它实施例中,除了关于其定义了用于对话增强的参数516的多个声道的子集之外,上混部件504还重建至少一个声道。将参考图6来描述这种示例性实施例。

重建参数不仅可以是时间变量,而且也可以是依赖于频率的。例如,对于不同的频带,重建参数可以采用不同的值。这一般将会改善重建声道的质量。

如本领域中已知的,参数化上混一般可以包括从经受上混的输入信号形成去相关的信号,并且基于输入信号和去相关的信号参数化地重建信号。参见例如Jeroen Breebaart和Christof Faller所写的“Spatial Audio Processing:MPEG Surround and Other Applications”一书,ISBN:978-9-470-03350-0。但是,上混部件504优选地在不使用任何这种去相关的信号的情况下执行参数上混。在这种情况下,通过使用去相关的信号所获得的优点由于在混合部件508中执行的后续下混被减少了。因此,去相关的信号的使用可以有利地被上混部件504省略,由此节省计算复杂度。事实上,在上混中使用去相关的信号将会与对话增强相结合导致更差的质量,因为它会导致去相关器对于对话的混响。

然后,对话增强部件506对关于其定义了用于对话增强的参数516的多个声道的子集应用对话增强,以便以产生至少一个对话增强的信号。在一些实施例中,对话增强的信号对应于关于其定义了用于对话增强的参数516的多个声道的子集的对话增强版本。这将在下面参考图6更详细地解释。在其它实施例中,对话增强的信号对应于关于其定义了用于对话增强的参数516的多个声道的子集的预测和增强的对话成分。这将在下面参考图7更详细地解释。

与重建参数类似,用于对话增强的参数可以在时间上和频率上变化。更详细地,用于对话增强的参数可以对不同的频带采用不同的值。关于其定义了重建参数的频带集合可以与关于其定义了对话增强参数的频带集合不同。

然后,混合部件508基于至少一个对话增强的信号执行混合,以便提供下混信号的子集512a的对话增强版本520。在所示示例中,下混信号的子集512a的对话增强版本520分别由对应于下混信号c、I、r的cDE、IDE、rDE给出。

混合可以根据混合参数522进行,混合参数522描述至少一个对话增强的信号对下混信号的子集512a的对话增强版本520的贡献。在一些实施例中,参见图6,至少一个对话增强的信号与由上混部件504重建的声道混合在一起。在这种情况下,混合参数522可以对应于下混方案,参见图1a和1b,其描述了每个声道应当混合到哪个对话增强的下混信号520中。在其它实施例中,参见图7,至少一个对话增强的信号与下混信号的子集512a混合在一起。在这种情况下,混合参数522可以对应于描述至少一个对话增强的信号应当如何加权到下混信号的子集512a中的加权因子。

由上混部件504执行的上混操作、由对话增强部件506执行的对话增强操作以及由混合部件508执行的混合操作通常是线性操作,各线性操作可以由矩阵运算(即,由矩阵向量乘积)定义。这至少在去相关器信号在上混操作中被省略的情况下是成立的。特别地,与上混操作(U)关联的矩阵由重建参数514定义/可以从重建参数514导出。在这方面应当指出,去相关器信号在上混操作中的使用仍然是可能的,但是去相关的信号的创建则不是用于上混的矩阵运算的一部分。利用去相关器的上混操作可以被看作是两阶段的方法。在第一阶段,输入下混信号被馈送到预去相关器矩阵,并且在应用预去相关器矩阵之后的输出信号分别被馈送到去相关器。在第二阶段,输入下混信号和来自去相关器的输出信号被馈送到上混矩阵中,在那里对应于输入下混信号的上混矩阵的系数形成所谓的“干上混矩阵”,并且对应于来自去相关器的输出信号的系数形成所谓的“湿上混矩阵”。每个子矩阵映射到上混声道配置。当不使用去相关器信号时,与上混操作关联的矩阵被配置为仅对输入信号512a操作,并且与去相关的信号(湿上混矩阵)相关的列不包括在矩阵中。换句话说,在这种情况下,上混矩阵对应于干混合矩阵。但是,如上面所指出的,在这种情况下,去相关器信号的使用通常会导致更差的质量。

与对话增强操作关联的矩阵(M)由用于对话增强的参数516定义/可以从用于对话增强的参数516导出,并且与混合操作关联的矩阵(C)由混合参数522定义/可以从混合参数522导出。

由于上混操作、对话增强操作和混合操作都是线性运算,因此相应的矩阵可以通过矩阵乘法组合成单个矩阵E(于是XDE=E·X,其中E=C·M·U)。在这里,X是下混信号512a的列向量,XDE是对话增强的下混信号520的列向量。因此,完整的对话增强块503可以对应于应用到下混信号的子集512a的单个矩阵运算,以便产生下混信号的子集512a的对话增强版本520。相应地,本文所述的方法可以以非常高效的方式实现。

图6示出了对应于图5的解码器500的示例性实施例的解码器600。解码器600包括接收部件602、上混部件604、对话增强部件606以及混合部件608。

类似于图5的解码器500,接收部件602接收数据流610并将其解码为多个下混信号612、重建参数614和用于对话增强的参数616。

上混部件604接收多个下混信号612的子集612a(对应于子集512a)。对于子集612a中的每个下混信号,上混部件604重建在下混信号中被下混的所有声道(Xu=U·X)。这包括关于其定义了用于对话增强的参数的声道618a,以及不参与对话增强的声道618b。参考图1b,关于其定义了用于对话增强的参数的声道618a可以例如对应于L、LS、C、R、RS声道,并且不参与对话增强的声道618b可以对应于LB、RB声道。

然后,关于其定义了用于对话增强的参数的声道618a(X′u)然后通过对话增强部件606进行对话增强(Xe=M·X′u),而不参与对话增强的声道618b(X″u)绕过对话增强部件606。

对话增强部件606可以应用上述对话增强的第一、第二和第三模式中的任何一种。在应用第三模式的情况下,如上面所解释的那样数据流610可以包括要在对话增强中连同关于其定义了用于对话增强的参数的多个声道的子集618a一起应用的表示对话的音频信号(即,表示对话的编码波形)。

结果,对话增强部件606输出对话增强的信号619,其在这种情况下对应于关于其定义了用于对话增强的参数的声道的子集618a的对话增强版本。作为示例,对话增强的信号619可以对应于图1b的L、LS、C、R、RS声道的对话增强版本。

然后,混合部件608将对话增强的信号619与不参与对话增强的声道618b混合以便产生下混信号的子集612a的对话增强版本620。混合部件608根据当前的下混方案(诸如图1b中所示的下混方案)进行混合。在这种情况下,混合参数622因此对应于描述每个声道619、618b应当混合到哪个下混信号620中的下混方案。下混方案可以是静态的,因此由解码器600知道,这意味着相同的下混方案总是适用,或者下混方案可以是动态的,这意味着它可以逐帧变化,或者它可以是在解码器中已知的若干方案之一。在后一种情况下,关于下混方案的指示包括在数据流610中。

在图6中,解码器配备有可选的重新安排部件630。重新安排部件630可以被用于在不同的下混方案之间进行转换,例如,从方案100b转换到方案100a。应当指出,重新安排部件630通常使c和Ife信号保持不变,即,关于这些信号,它充当直通部件。重新安排部件630可以基于各种参数(诸如重建参数614和用于对话增强的参数616)来接收和操作(未示出)。

图7示出了对应于图5的解码器500的示例性实施例的解码器700。解码器700包括接收部件702、上混部件704、对话增强部件706以及混合部件708。

类似于图5的解码器500,接收部件702接收数据流710并将其解码为多个下混信号712、重建参数714和用于对话增强的参数716。

上混部件704接收多个下混信号712的子集712a(对应于子集512a)。与关于图6所述的实施例形成对比,上混部件704重建仅关于其定义了用于对话增强的参数716的多个声道的子集718a(X′u=U′·X)。参考图1b,关于其定义了用于对话增强的参数的多个声道的子集718a可以例如对应于C、L、LS、R、RS声道。

然后,对话增强部件706对关于其定义了用于对话增强的参数的声道718a执行对话增强(Xd=Md·X′u)。在这种情况下,对话增强部件706根据第二对话增强模式通过形成声道718a的线性组合基于声道718a来继续预测对话成分。当形成线性组合时使用的、由图7中的p1至p5表示的系数被包括在用于对话增强的参数716中。然后,通过与增益因子g的乘法来增强预测对话成分,以产生对话增强的信号719。增益因子g可以表示为:

其中G是以dB表示的对话增强增益。对话增强增益G可以例如由用户输入,因此通常不包括在数据流710中。应当指出,在存在若干对话成分的情况下,可以对每个对话成分应用上述预测和增强过程一次。

然后,预测的对话增强的信号719(即,预测和增强的对话成分)被混合到下混信号的子集712a中,以便产生下混信号的子集712a的对话增强版本720根据描述对话增强的信号719对下混信号的子集的对话增强版本720的贡献的混合参数722进行混合。混合参数通常包括在数据流710中。在这种情况下,混合参数722对应于描述至少一个对话增强的信号719应当如何加权到下混信号的子集712a中的加权因子r1、r2、r3

更详细地,加权因子可以对应于描述至少一个对话增强的信号719关于下混信号的子集712a的平移的渲染系数,使得对话增强的信号719在正确的空间位置被添加到下混信号712a。

数据流710中的渲染系数(混合参数722)可以对应于上混声道718a。在所示示例中,存在五个上混声道718a,并且因此可以存在比如五个对应的渲染系数rc1、rc2、…、rc5。然后可以与下混方案一起从rc1、rc2、…、rc5计算r1、r2、r3(其对应于下混信号712a)的值。当多个声道718a对应于相同的下混信号712a时,对话渲染系数可以求和。例如,在所示示例中,r1=rc1、r2=rc2+rc3、r3=rc4+rc5成立。在使用下混系数进行声道的下混的情况下,这也可以是加权求和。

应当指出,在这种情况下,对话增强部件706可以使用附加接收的表示对话的音频信号。在这种情况下,预测的对话增强的信号719可以在输入到混合部件708之前与表示对话的音频信号一起加权(Xd=(1-αc)·Md·X′uc·g·Dc)。适当的加权由被包括在用于对话增强的参数716中的混和参数ac给出。混和参数ac指示增益贡献应当如何在预测的对话成分719(如上所述)和表示对话Dc的附加音频信号之间划分。这类似于当与第二对话增强模式组合时关于第三对话增强模式所描述的内容。

在图7中,解码器配备有可选的重新安排部件730。重新安排部件730可以被用于在不同的下混方案之间进行转换,例如,从方案100b转换到方案100a。应当指出,重新安排部件730通常使c和Ife信号保持不变,即,对于这些信号,它充当直通部件。重新安排部件730可以基于各种参数(诸如重建参数714和用于对话增强的参数716)来接收和操作(未示出)。

以上主要关于7.1+4声道配置和5.1下混进行解释。但是,应当理解,本文所述的解码器和解码方法的原理同样适用于其它声道和下混配置。

图8是可以被用于编码多个声道818的编码器800的图示,其中一些声道包括对话,以便产生用于发送到解码器的数据流810。编码器800可以与解码器200、500、600、700中的任一个一起使用。编码器800包括下混部件805、对话增强编码部件806、参数化编码部件804和发送部件802。

编码器800接收多个声道818,例如,图1a和1b中所绘出的声道配置100a、100b的那些。

下混部件805将多个声道818下混成多个下混信号812,然后将下混信号812馈送到发送部件802,用于包括在数据流810中。多个声道818可以例如根据下混方案(诸如图1a或图1b中所示的)进行下混。

多个声道818和下混信号812被输入到参数编码部件804。基于其输入信号,参数编码部件804计算重建参数814,该重建参数使得能够从下混信号812重建声道818。重建参数814可以例如使用本领域中已知的最小均方误差(MMSE)优化算法来计算。然后,重建参数814被馈送到发送部件802,用于包括在数据流810中。

对话增强编码部件806基于多个声道818中的一个或多个以及一个或多个对话信号813来计算用于对话增强的参数816。对话信号813表示纯对话。值得注意的是,对话已经被混合到一个或多个声道818中。在声道818中,因此可以存在对应于对话信号813的一个或多个对话成分。通常,对话增强编码部件806使用最小均方误差(MMSE)优化算法计算用于对话增强的参数816。这种算法可以提供使得能够从多个声道818中的一些声道预测对话信号813的参数。因此,可以关于多个声道818的子集(即,可以从其预测对话信号813的声道)来定义用于对话增强的参数816。用于对话预测的参数816被馈送到发送部件802,用于包括在数据流810中。

总之,数据流810因此至少包括多个下混信号812、重建参数814以及用于对话增强的参数816。

在解码器的正常操作期间,由解码器以一定的速率重复地接收不同类型的参数(诸如用于对话增强的参数或者重建参数)的值。如果用于接收不同参数值的速率低于必须用于计算来自解码器的输出的速率,则可能需要对参数值进行内插。如果通用参数p的值在时刻t1和t2分别为p(t1)和p(t2),则处于中间时间t1≤t<t2的参数的值p(t)可以使用不同的内插方案来计算。在本文被称为线性内插模式的这种方案的一个示例可以使用线性内插法(例如,p(t)=p(t1)+[p(t2)-p(t1)](t-t1)/(t2-t1))来计算中间值。在本文被称为分段恒定内插模式的另一种模式可以代替地包括在整个时间间隔期间将参数值保持固定在已知值之一,例如,p(t)=p(t1)或者p(t)=p(t2),或者已知值的组合,诸如平均值p(t)=[p(t1)+p(t2)]/2.。关于在某个时间间隔期间对某个参数类型应当使用哪种内插方案的信息可以内置到解码器中,或者以不同的方式提供给解码器,诸如连同参数本身或者作为包含在接收信号中的附加信息。

在说明性示例中,解码器接收用于第一和第二参数类型的参数值。每个参数类型的接收值分别可在第一时刻集合(T1={t11,t12,t13,...})和第二时刻集合(T2={t21,t22,t23,...})确切地应用,并且解码器还能够访问关于在需要估计在对应集合中不存在的时刻的值的情况下每个参数类型的值要如何被内插的信息。参数值控制对信号的数学运算的定量性质,这些操作可以例如表示为矩阵。在下面的示例中,假设由第一参数类型控制的运算由第一矩阵A表示,由第二参数类型控制的运算由第二矩阵B表示,术语“运算”和“矩阵”可以在示例中可互换使用。在需要计算来自解码器的输出值的时刻,要计算对应于两个运算的组合的联合处理运算。如果进一步假设矩阵A是上混(由重建参数控制的)操作,而矩阵B是应用对话增强(由用于对话增强的参数控制的)操作,则因此,上混后面跟着对话增强的联合处理运算由矩阵乘积BA表示。

计算联合处理运算的方法在图9a-9e中示出,其中时间沿水平轴行进,并且轴刻度线指示要计算联合处理运算的时刻(输出时刻)。在图中,三角形对应于矩阵A(表示上混的操作),圆圈对应于矩阵B(表示应用对话增强的操作)并且方形对应于联合运算矩阵BA(表示上混后面跟着对话增强的联合运算)。填充的三角形和圆圈指示在对应时刻确切地知道相应的矩阵(即,控制矩阵表示的运算的参数是确切地已知的),而空的三角形和圆圈指示相应的矩阵的值是预测或内插的(使用例如上面概述的任何内插模式)。填充的方形指示在对应时刻已经计算出的联合运算矩阵BA,例如,通过矩阵A和B的矩阵乘积,并且空的方形指示BA的值已经从较早的时刻内插。此外,虚线箭头指示在哪些时刻之间执行内插。最后,连接各时刻的实线水平线指示矩阵的值被假设在那个间隔上是分段恒定的。

在图9a中示出了不使用本发明的计算联合处理运算BA的方法。运算A和B的接收值分别在时刻t11、t21和t12、t22确切地应用,以计算在该方法单独内插每个矩阵的每个输出时刻的联合处理运算矩阵。为了在时间上完成每个前进步骤,表示联合处理运算的矩阵被计算为A和B的预测值的乘积。在这里,假设每个矩阵将使用线性内插模式进行内插。如果矩阵A具有N'行和N列,并且矩阵B具有M行和N'列,则时间方面的每个前进步骤将需要每个参数带进行O(MN'N)次乘法运算(为了执行计算联合处理矩阵BA所需的矩阵乘法)。输出时刻的高密度和/或大量的参数带,因此有对计算资源置以高要求(由于与加法运算相比,乘法运算的相对较高的计算复杂度)的风险。为了降低计算复杂度,可以使用图9b中所示的替代方法。通过仅在参数值改变的时刻(即,接收值恰好确切适用的时刻,在t11、t21和t12、t22)计算联合处理运算(例如,执行矩阵乘法),联合处理运算矩阵BA可以被直接内插,而不是分别内插矩阵A和B。通过这样做,如果运算由矩阵表示,则时间方面的每个前进步骤(在确切参数值改变的时刻之间)将仅需要每个参数带的O(NM)次操作(用于矩阵加法),并且减少的计算复杂度对计算资源的需求减少。而且,如果矩阵A和B使得N'>N×M/(N+M),则表示联合处理运算BA的矩阵将具有比组合的单独矩阵A和B中找到的元素更少的元素。但是,直接内插矩阵BA的方法将要求A和B在同一时刻都是已知的。当定义A的时刻(至少部分地)与定义B的时刻不同时,需要改进的内插方法。根据本发明示例性实施例的这种改进方法在图9c-9e中示出。联系到图9a-9e的讨论,为了简单起见,假设联合处理运算矩阵BA被计算为单独的矩阵A和B的乘积,每个矩阵A和B都已经基于(接收的或预测的/内插的)参数值生成。在其它情况下,直接从参数值计算由矩阵BA表示的运算而不经由表示作为两个矩阵因子可能同样或更有利。结合参考图9c-9e所示的任何技术,这些做法中的每一种都在本发明的范围内。

在图9c中,示出了用于对应于矩阵A的参数的时刻集合T1包括不存在于集合T2(用于对应于矩阵B的参数的时刻)中的时间值t12的情况。两个矩阵都将使用线性内插模式进行内插,并且该方法识别出必须预测矩阵B的值(使用例如内插)的预测时刻tp=t12。在找到该值之后,可以通过将A和B相乘来计算在tp处的联合处理运算矩阵BA的值。为了继续,该方法计算在相邻时刻ta=t11的BA的值,然后在ta和tp之间内插BA。如果期望,该方法还可以计算BA在另一个相邻时刻ta=t13的值,并从tp到ta内插BA。即使需要附加的矩阵乘法(在tp=t12),该方法也允许直接内插联合处理运算矩阵BA,与例如图9a中的方法相比,仍然降低计算复杂度。如上所述,联合处理运算可以可替代地直接从(接收或预测/内插的)参数值计算,而不是作为两个矩阵的显式乘积,这两个矩阵进而依赖于各个参数值。

在前一种情况下,只有对应于A的参数类型具有不被包括在对应于B的参数类型的时刻中的时刻。在图9d中,示出了时刻t12从集合T2中缺少并且时刻t22从集合T1中缺少的不同情况。如果要在t12和t22之间的中间时刻t'计算BA的值,则该方法可以预测在tp=t12处的B值和ta=t22的A值。在计算出在这两个时间的联合处理运算矩阵BA之后,可以内插BA,以找出其在t'处的值。一般而言,该方法仅在参数值改变的时刻(即,在集合T1和T2中接收值被确切应用的时刻)执行矩阵乘法。在这之间,联合处理运算的内插仅需要矩阵加法,矩阵加法具有比它们的乘法更少的计算复杂度。

在上面的例子中,假设所有内插模式都是线性的。当参数最初被使用不同方案进行内插时用于内插的方法也在9e中示出。在该图中,对应于矩阵A的参数的值保持分段恒定,直到时刻t12,在那里值突然改变。如果逐帧接收参数值,则每个帧可以携带指示接收值确切适用的时刻的信令。在该示例中,对应于B的参数仅具有在t21和t22处确切适用的接收值,并且该方法可以在紧接t12之前的时刻tp处首先预测B的值。在tp处计算联合处理运算矩阵BA之后,并且ta=t11,矩阵BA可以在ta和tp之间内插。然后,该方法可以在新的预测时刻tp=t12处预测B的值,计算在tp和ta=t22处的BA的值,并直接在tp和ta之间内插BA。再次,联合处理运算BA已经跨越该间隔进行了内插,并且其值已经在所有输出时刻被发现。与如图9a中所示的较早的情况相比,其中A和B将已经被单独内插,并且BA通过在每个输出时刻将A和B相乘来计算,需要减少数量的矩阵乘法,并且降低了计算复杂度。

等同物、扩展、替代方案和其他

在研究了上述描述之后,本公开内容的另外的实施例对于本领域技术人员将变得清楚。虽然本描述和附图公开了实施例和示例,但是本公开内容不限于这些具体示例。在不背离由所附权利要求限定的本公开内容的范围的情况下,可以进行许多修改和变化。权利要求中出现的任何标号不应当被理解为限制其范围。

此外,根据对附图、公开内容和所附权利要求的研究,对所公开的实施例的变化可以被本领域技术人员在实践公开内容时理解和实现。在权利要求中,“包括”一词并不排除其它元素或步骤,并且不定冠词“一个”不排除多个。在相互不同的从属权利要求中陈述某些措施的单纯事实并不指示这些措施的组合不能被有利地使用。

上文所公开的系统和方法可以被实现为软件、固件、硬件或其组合。在硬件实现中,任务在上述描述中提及的功能单元之间的划分不一定对应于物理单元的划分;相反,一个物理部件可以具有多个功能,并且一个任务可以由若干物理部件合作执行。某些部件或所有部件可以被实现为由数字信号处理器或微处理器执行的软件,或者被实现为硬件或专用集成电路。这种软件可以分布在可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)的计算机可读介质上。如本领域技术人员众所周知的,术语“计算机存储介质”包括以用于存储信息(诸如计算机可读指令、数据结构、程序模块或其它数据)的任何方法或技术实现的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储器技术,CD-ROM、数字通用盘(DVD)或其它光盘存储器,磁带盒、磁带、磁盘存储器或其它磁存储设备,或者可用于存储期望信息并且可由计算机存取的任何其它介质。另外,本领域技术人员众所周知,通信介质通常在诸如载波或其它传输机制之类的调制数据信号中体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何信息输送介质。

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