音频解码的方法及系统的制作方法

文档序号:7539598阅读:301来源:国知局
专利名称:音频解码的方法及系统的制作方法
技术领域
本发明涉及数字通信系统,更具体地说,本发明涉及一种当表示音频信号的部分比特流在数字通信系统环境中丢失时,用于提高其音频质量的方法。
背景技术
在音频编码(有时称为“音频压缩”)中,编码器将输入语音信号编码为压缩数字比特流,以便于传输或保存。而解码器将已传输或已保存的比特流解码为输出音频信号。编码器和解码器的组合可称为编解码器。压缩比特流通常被分割为帧。当解码器对比特流进行解码时,压缩比特流中的某些帧可能被认为是“丢失”,因此不能进行正常的解码操作。帧丢失可能是因为数据包在数据包传输系统中的延时或丢失,或者是因为无线传输系统中帧被严重破坏。由于种种原因,也可能在音频保存应用程序中发生帧丢失。
当发生帧丢失时,解码器需要执行特定操作以试图隐藏由于帧丢失造成的质量下降的影响;否则,输出语音质量可能严重下降。解码器中的这些特定操作有各种名称,如“帧丢失隐藏(FLC)”、“帧删除隐藏(FEC)”或“包丢失隐藏(PLC)”。这些名称在此可交换使用。
最简单也最常用的FLC技术中的一种技术包括重复丢失帧之前的最近一个好帧的比特流,并对该重复比特流进行正常解码,就好像是丢失帧的已接收比特流一样。该机制通常被称为“帧重复”方法。如果音频编解码器使用瞬时量化,如脉冲编码调制(PCM),而不经过任何交叠一添加操作,则使用这种帧重复方法的应用程序一般会在帧边界上造成波形中断,这样就会产生听起来像某些“滴答声”的可听到的缺陷。
另一方面,现在的音频编解码器一般都进行频域变换,诸如快速傅立叶变换(FFT)或修正离散余弦变换(MDCT),而且这些变换一般在输入信号的加窗形式(windowed version)中进行,其中相邻视窗可能会有一定程度的交叠。相应音频解码器一般使用本领域公知的交叠—添加技术来合成输出语音信号。利用这样的音频编解码器,帧重复FLC方法一般不会在帧边界上造成波形中断,因为交叠—添加操作会从一段波形逐渐变换到下一交叠波形,这样就平滑了帧边界的波形中断。
尽管帧重复方法与在解码器端采用了交叠—添加合成的音频编解码器结合使用时不会导致波形中断,但它仍然会导致某些类型的音频信号产生语音失真,尤其是那些近似于周期性的信号,诸如语音信号(有声语音)的元音部分。这是可以理解的,因为以帧速率重复的波形与丢失帧中的原始输入波形一般不匹配或“同相”。当帧重复方法将这两个“异相”波形交叠并相加在一起,结果输出信号一般会包括某些音频失真,从而使输出信号听上去有点“忙音”,而没有原始信号那么“清晰”。因此,帧重复方法一般不用于诸如有声语音等接近于周期性的信号。
令人惊讶地是,当与在解码器端采用了交叠—添加合成的音频编解码器(包括了大部分现有音频编解码器的标准)结合使用时,帧重复FLC方法作用在各种“忙音(busy-sounding)”且远远不是周期性的音频信号时,其效果惊人地好。这是因为这些忙音音频信号没有明确定义的“相位”,而且异相交叠—添加的干扰结果不像接近于周期性的信号那么明显。输出音频信号中的任何残余“干扰”可能被音频信号中的忙音“覆盖”。对于这样的音频信号,要检测到由于帧重复FLC方法引起的失真实际上是相当困难的。
相对于简单帧重复FLC方法,在另一极端,有另一种利用复杂信号处理算法的FLC方法,用于根据先前接收到的好帧来推断波形,进而填补对应于丢失帧的波形缺口。对应于当前丢失帧之前的好帧的波形被认为是大致周期性时,许多这样的FLC方法都进行周期性波形外推(PWE)。对于非周期性信号,这些方法使用各种其它技术来推断波形。这类基于PWE的FLC方法实例包括,但不限于,Goodman等人在“Waveform Substitution Techniques for RecoveringMissing Speech Segments in Packet Voice Communications”,IEEE Transaction onAcoustics,Speech and Signal Processing,1986年12月,1440-1448页中提出的方法,D.Kapilow研发的PLC method of ITU-T Recommendation G.711 AppendixI,和J.-H.Chen在美国专利申请号为11/234,291、2005年9月26日提出且其名称为“Packet Loss Concealment for Block Independent Speech Codecs”的申请中提出的方法。所有这些文档都被全文引用,合并在此。
这类基于PWE的FLC方法通常因语音信号而调整,因此这些方法一般对语音非常有效。不过,当应用到一般音频信号,如音乐时,尽管这些方法仍然工作,但他们容易出现更多的问题且有音频失真。最常见的问题之一就是对于忙音音乐信号,这些技术的周期性波形外推通常会产生一些“嗡嗡”的声音,因为周期性外推波形比对应于丢失帧的原始波形更具周期性。
总而言之,当与在解码器端采用了交叠—添加合成的音频编解码器结合使用时,帧重复FLC方法对大多数音乐信号很有作用,但对语音则表现较差。在另一方面,基于PWE的FLC方法对于语音很有作用,但对忙的非周期性的音乐信号则经常产生可听得见的“嗡嗡”声。不过,在许多应用程序中,诸如电影、电视和无线电节目中的音轨中,音频信号经常在纯语音、纯音乐和音乐中的语音之间变换。在这种情况下,使用帧重复或基于PWE的FLC方法至少在音频信号中的某部分中会有性能问题。
因此需要一种能至少对语音和音乐都很有作用的FLC技术。理想地,所需的FLC方法应该是“通用的”,这样它可对任何一种音频信号的效果都很好,不过至少所需的FLC方法应该对语音和音乐效果要好,因为语音和音乐是电影、TV和无线电的音轨中的音频信号的主要类型。本发明解决了这一问题并能对语音和音乐信号获得较好的性能。

发明内容
在本发明的最一般形式中,音频解码系统采用了多种不同的FLC方法,其中每种方法对一种不同类型的音频信号的效果很好。当某个帧被认为是丢失时,音频解码系统分析对应于音频比特流的先前已解码帧的先前已解码的音频信号。根据分析结果,音频解码系统从多个不同FLC方法中选择一种对先前解码音频信号的执行效果可能最好的方法来对丢失帧进行FLC操作。
在本发明的典型实施例中,采用了一种为音乐设计的FLC方法,如帧重复FLC方法,以及一种为语音设计的FLC方法,如基于PWE的FLC方法。当某个帧被认为是丢失时,音频解码系统分析与音频比特流的先前已解码帧相对应的先前已解码音频信号。如果先前已解码音频信号被分类为语音信号,则选择为语音设计的FLC方法来执行FLC操作。而如果先前已解码音频信号被分类为音乐信号,则选择为音乐设计的FLC方法来执行FLC操作。选择性地或附加地,如果先前已解码音频表现为具有足够的周期性,则选择为语音设计的FLC方法,而如果先前已解码音频没有表现为具有足够的周期性,则选择为音乐设计的FLC方法。用这种方式,自适应切换FLC系统应在这两方面都获得最佳,并对语音和音乐信号的执行效果都应相当好。
根据本发明的一方面,提供了一种在音频解码器中生成与音频比特流的丢失帧相对应的输出音频信号的方法,包括分析与音频比特流的先前已解码帧相对应的至少一部分先前已解码音频信号;根据分析结果选择多种帧丢失隐藏(FLC)技术中的一种;和将多种FLC技术中选中的一种应用到先前已解码音频信号中,以生成对应于丢失帧的输出音频信号。
优选地,分析至少一部分先前已解码音频信号包括判断该先前已解码音频信号是否为语音或音乐。
优选地,分析至少一部分先前已解码音频信号包括判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
优选地,分析至少一部分先前已解码音频信号进一步包括判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
优选地,根据分析结果选择多个FLC技术中的一种包括选择为音乐设计的FLC技术。
优选地,选择为音乐设计的FLC技术包括选择帧重复FLC技术。
优选地,根据分析结果选择多个FLC技术中的一种包括选择为语音设计的FLC技术。
优选地,选择为语音设计的FLC技术包括选择基于周期性波形外推(PWE)的FLC技术。
根据本发明的一方面,提供了一种音频解码系统,其中包括已解码信号缓存,用于保存与音频比特流的先前已解码帧相对应的先前已解码音频信号;与已解码信号缓存相连的多个处理模块,多个处理模块中的每一个都配置为执行相应帧丢失隐藏(FLC)技术;与已解码信号缓存和多个处理模块相连的信号分类器,信号分类器被配置为分析保存在已解码信号缓存中的至少一部分先前已解码音频信号,根据分析结果,选择多个处理模块中的一个对先前已解码音频信号执行FLC操作,进而生成对应于音频比特流丢失帧的输出音频信号。
优选地,信号分类器被配置为判断先前已解码音频信号是否为语音或音乐。
优选地,信号分类器被配置为判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
优选地,信号分类器进一步被配置为判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
优选地,多个处理模块中的一个被配置为执行为音乐设计的FLC技术。
优选地,被配置为执行为音乐设计的FLC技术的多个处理模块中的一个,被配置为执行帧重复FLC技术。
优选地,多个处理模块中的一个被配置为执行为语音设计的FLC技术。
优选地,被配置为执行为语音设计的FLC技术的多个处理模块中的一个,被配置为执行基于周期性波形外推(PWE)的FLC技术。
根据本发明的一方面,提供了一种包含计算机可用媒介的计算机程序产品,其中记录了计算机程序逻辑,可让计算机系统中的处理器生成与音频比特流中的丢失帧相对应的输出音频信号,包括用于使处理器分析与音频比特流的先前已解码帧相对应的至少一部分先前已解码音频信号的第一部分;
用于使处理器根据分析结果选择多个帧丢失隐藏(FLC)技术中的一种的第二部分;和用于使处理器将多个FLC技术中选中的一种应用到先前已解码音频信号中,以生成对应于丢失帧的输出音频信号的第三部分。
优选地,第一部分包括使处理器判断该先前已解码音频信号是否为语音或音乐的部分。
优选地,第一部分包括使处理器判断与先前已解码音频信号相关的周期性测量值是否超过预定极限的部分。
优选地,第一部分进一步包括使处理器判断与先前已解码音频信号相关的周期性测量值是否超过预定极限的部分。
优选地,第二部分包括使处理器选择为音乐设计的FLC技术的部分。
优选地,使处理器选择为音乐设计的FLC技术的部分包括使处理器选择帧重复FLC技术的部分。
优选地,第二部分包括使处理器选择为语音设计的FLC技术的部分。
优选地,使处理器选择为语音设计的FLC技术的部分包括使处理器选择基于周期性波形外推(PWE)的FLC技术的部分。


在此说明的附图构成了说明书的一部分,示出了本发明的一个或多个实施例,并与具体实施方式
一起进一步解释了本发明的目的、优点和原理,使本领域的技术人员可以理解并使用该发明。
图1是根据本发明实施例,执行基于分类的通用帧丢失隐藏(FLC)的音频解码系统的示意图;图2是根据本发明实施例,在音频解码系统中执行基于分类的通用FLC的方法流程图;图3是根据本发明实施例,利用两种FLC方法来执行基于分类的FLC的音频解码系统的示意图;图4是根据本发明实施例,用于在支持两种FLC方法的音频解码系统中执行基于分类的FLC的第一方法的流程图;图5是根据本发明实施例,用于在支持两种FLC方法的音频解码系统中执行基于分类的FLC的第二方法的流程图;图6是根据本发明实施例,用于在支持两种FLC方法的音频解码系统中执行基于分类的FLC的第三方法的流程图;图7是本发明可在其中实施的计算机系统的示意图。
附图与下面的具体实施方式
相结合,更清楚地说明了本发明的特征和优点。其中第一次出现某元件的附图由对应参考编号中的最左边一位十进制数字来表示。
具体实施例方式
本发明的具体实施方式
参考了用于说明本发明所包括的典型实施例的附图。其它的实施例也是可能的,并且可以在在本发明的精神和范围内对这些实施例进行修改。因此,下面的实施例的意图并不是限制本发明。本发明的保护范围由权利要求来限定。
本领域技术人员很清楚,如下所述的本发明可通过附图中所示的硬件、软件、固件和/或元件的多个不同实施例来实现。用于实现本发明的带有特定控制硬件的任何实际软件代码均不会限制本发明。因此,在描述本发明的操作和性能时,应理解在所给具体级别的细节基础上,可对实施例进行修改和变化。
A.根据本发明的实施例、基于分类的通用FLC系统和方法图1是根据本发明实施例,执行基于分类的通用帧丢失隐藏(FLC)的音频解码系统100的示意图。如图1所示,音频解码系统100包括音频解码器110、已解码信号缓存120、信号分类器130、第一和第二FLC方法选择开关140和150、多个FLC处理模块161到169以及输出信号选择开关170。相关领域技术人员应了解,系统100的各部件可由软件、硬件或软硬件的组合来实现。
总体上,音频解码系统100用于将输入音频比特流的一系列帧的每一个解码为已解码音频信号样本的对应帧。系统100每次对音频比特流中的一帧进行解码。在此使用的术语“当前帧”是指系统100当前正在对其进行解码的音频比特流中的帧,而“前一帧”是指系统100已经解码的音频比特流中的帧。在此使用的术语“解码”可包括将音频比特流中的已接收帧正常解码为对应音频信号样本,以及利用FLC技术为音频比特流中的丢失帧生成音频信号样本。接下来将详细描述系统100中各部件的功能。
如果音频比特流的当前帧被认为已接收,则音频解码器110将当前帧解码为对应音频信号样本。输出信号选择开关170受丢失帧指示符的控制,系统100根据音频比特流的当前帧被认为是已接收还是丢失来生成该指示符。如果当前帧被认为是已接收,开关170被置于上方位置,与标识为“(帧已接收)”的节点连接,而音频解码器110输出处的正常解码音频信号被用作当前帧的输出音频信号。此外,当前帧的已解码音频信号也将保存在已解码信号缓存120中,以备于未来帧的可能FLC操作。
反之,如果音频比特流的当前帧被认为是已丢失,则输出信号选择开关170被置于下方位置,与标识为“(帧已丢失)”的节点连接。在这种情况下,信号分类器130分析保存在已解码信号缓存120中的先前已解码的音频信号或其中的一部分,从N种可能FLC方法中选择一个来执行FLC操作。该先前已解码音频信号对应于当前丢失帧之前的已接收帧。
如图1所示,音频解码系统100可使用N种可能的FLC方法。这N种可能的FLC方法在图1被标识为模块161到模块169。这N种FLC方法中的每一种方法可指定为或调整为处理特定种类或类型的表现出某些信号属性的音频信号。理想情况下,N种可能FLC方法可覆盖所有可能的音频信号类型。换而言之,对于任意语音信号,N种可能的FLC方法中至少有一种可隐藏丢失帧的影响,且性能相当好。
信号分类器130的功能是分析存储在已解码信号缓存120中的先前已解码的音频信号,或者分析其中的一部分,从而为已解码信号缓存120中这类语音信号从N种可能FLC方法中确定其最适合的FLC操作方法。如图1所示,最终的FLC方法决定将控制两个连接的(同步的)FLC方法选择开关140和150,这样可为已保存音频信号选择最适合的FLC方法,用于处理已保存的音频信号,进而为当前丢失帧生成输出音频信号。
在图1所示的特定实例中,开关140和150位于最上面的位置,因此选择了FLC方法1。当然,这仅仅是一个例子。对于丢失的不同帧,信号分类器130可选择不同的FLC方法。一般地,信号分类器130可针对音频信号中的任一给定丢失帧来动态选择N种可能FLC方法中的任一种。这对于上面所给的电影和电视音轨的例子是一致的,其中音频信号可能在纯语音、纯音乐、音乐中的语音和其它声音效果中频繁切换。
一旦选择了特定FLC方法(例如,图1中的FLC方法1),该FLC方法取出存储在已解码信号缓存120中的先前已解码音频信号,或其中一部分音频信号,并执行相关的FLC操作。接着最终输出信号通过开关150和170转发出去,并作为音频解码系统100的输出音频信号。请注意,尽管为了简化在图1没有示出,可以理解且一般也可取的做法是,开关150处获得的FLC输出信号也被回传到已解码信号缓存120中,这样由选中FLC方法为当前丢失帧生成的音频信号也被作为“先前已解码音频信号”的最新部分保存起来。这样做是为了在下一帧也丢失的情况下,可以为下一帧准备已解码信号缓存120。换而言之,已解码信号缓存120保存与丢失帧之前处理的最后一帧相对应的音频信号是有利的,不管该音频信号是由音频解码器110生成的,还是由FLC处理模块161到169中的一个模块处理得到的。
图2是根据本发明实施例,在音频解码系统中执行基于分类的通用FLC的方法流程图200。所述方法流程图200将继续参考图1中的音频解码系统100,尽管相关领域技术人员可明白,本发明并不限于该实施例。
如图2所示,流程图200的开始步骤由标记为“开始”的单元202标识。处理流程立即转到步骤204,在此判决音频解码器110接收到的输入音频比特流中的下一帧为已接收或丢失。如果该帧被认为已接收,则音频解码器110对已接收帧进行一般的解码操作,以生成相应的已解码音频信号样本,如步骤206所示。接着该处理流程将转到步骤208,在此对应于已接收帧的已解码音频信号被保存在已解码信号缓存120中。已解码音频信号也可作为音频解码系统100的输出音频信号,如步骤210所示。参照图1,这是通过输出信号选择开关170(受丢失帧指示符的控制)来实现的,从而将音频解码器110的输出连接到系统100的最终输出。该处理流程接着转到步骤212,在此判断由音频解码系统100处理的音频比特流中是否还有帧。如果还有更多帧,则处理流程返回到判决步骤204;否则,处理流程结束,如标记为“结束”的单元224所示。
返回到判决步骤204,如果判定输入音频比特流中的下一帧为丢失,则处理流程转到步骤214,在此信号分类器130分析保存在已解码信号缓存120中的至少一部分先前已解码音频信号。根据该分析,信号分类器130从N种FLC方法中选择一种作为最适合于为保存在已解码信号缓存120中的音频信号类型执行FLC操作的方法,如步骤216所示。参照图1,该选择通过由信号分类器130所作的FLC方法决定来执行,信号分类器130控制FLC方法选择开关140和150、在多个FLC处理模块161到169中选择其中一个。接着处理流程转到步骤218,在此已选中的FLC方法被应用于保存在已解码信号缓存120中的先前已解码的音频信号或该音频信号中的一部分。已选FLC方法应用生成的音频信号接着被作为音频解码系统100的输出音频信号,如步骤220所示。在图1所示的实现方式中,这是通过输出信号选择开关170(受丢失帧指示符的控制)的操作来实现的,该操作将开关150的输出连接到系统100的最终输出。应用所选FLC方法所生成的音频信号也被保存到已解码信号缓存120中,如步骤222所示。接着处理流程转到步骤212,在此判断由音频解码系统100处理的音频比特流中是否还有帧。如果还有更多帧,则处理流程返回到判决步骤204否则,处理流程结束,如标记为“结束”的单元224所示。
B、根据本发明实施例的利用两种FLC方法的基于分类的FLC系统和方法图3是根据本发明实施例,利用两种FLC方法来执行基于分类的FLC的音频解码系统300的示意图。系统300基本上是图1中的系统100的特例,其中N=2。因此,上述关于系统100的描述大部分也适用于系统300,在此不再重复。下面的描述将集中在系统300支持的两种特定FLC方法为音乐信号设计的FLC方法,如帧重复FLC方法;和为语音信号设计的FLC方法,如基于周期性波形外推的FLC方法。
帧重复方法已在背景技术部分描述。在同一部分,也说明了基于PWE的FLC方法的三个实例(Goodman等人、D.Kapilow和J.-H.Chen提出的方法),描述这些方法的文件通过引用合并在此。不过,这些实例并非用于限制。相关领域技术人员应明白,在本发明的范围和精神中,也可使用其它各种帧重复和基于PWE的FLC方法。
此外,本发明并不限于对音乐使用帧重复FLC方法。相反地,可使用任何为音乐设计的FLC方法。类似地,本发明也不限于对语音使用基于PWE的FLC方法,也可使用任何为语音设计的FLC方法。
图3中的信号分类器330用于分析保存在已解码信号缓存320中的至少一部分已解码音频信号,根据该分析结果,选择第一FLC处理模块361或第二FLC处理模块362,进而对已解码音频信号或其中一部分应用FLC方法。第一FLC处理模块361使用为音乐设计的FLC方法,如帧重复FLC方法,而第二FLC处理模块362应用为语音设计的FLC方法,如基于PWE的FLC方法。现在将说明信号分类器330分析和分类已解码音频信号的方法。
在一个实施例中,信号分类器330包括语音/音乐分类器,用于一帧一帧地判断先前已解码音频信号是否为语音或音乐。本领域技术人员将明白,现有技术中已提出许多语音/音乐分类器(有时称为“鉴别器”)。同样地,将不描述语音/音乐分类器的特定实现。如果信号分类器330判断保存在已解码信号缓存320中的先前已解码音频信号是音乐,则选择处理模块361中的FLC方法来执行FLC操作。另一方面,如果信号分类器330判断先前已解码音频信号是语音,则选择处理模块362中的FLC方法来执行FLC操作。
上文给出了对先前已解码音频信号进行分类的简单方法。不过,在实际中,某些音乐信号也表现出高度的周期性,诸如说唱或单音乐器,如喇叭、萨克斯等。此时,为语音设计的FLC方法,如基于PWE的FLC方法,比为音乐设计的FLC方法,如帧重复FLC方法,表现地更为出色。因此,在另一实施例中,信号分类器330在判断先前已解码音频信号为音乐或语音之外,进一步判断先前已解码音频信号的周期性级别(或者只单独判断已解码音频信号的周期性级别)。如果周期性级别足够高,则即使先前已解码音频信号已被认为是音乐而非语音,仍然选择为语音设计的FLC方法。例如,在实施例中,信号分类器330将先前已解码音频信号的周期性测量值与预定极限相比较,如果周期性测量值超过该极限值,则信号分类器330选择为语音设计的FLC方法。
对于一般的音频信号,经过适当处理后,图3所示的音频解码系统300会比单独为音乐设计的FLC方法(如帧重复FLC方法)或单独为语音设计的FLC方法(如基于PWE的FLC方法)表现地更为出色。换而言之,音频解码系统300比它所使用的两种FLC方法中的任何一种更为“通用”。因此,这说明与只使用为音乐设计的FLC方法或为语音设计的FLC方法的现有技术相比,进行了改进。
图4是根据本发明实施例,用于在支持两种FLC方法的音频解码系统中执行基于分类的FLC的一种方法流程图。方法流程图400的说明将继续参考图3的音频解码系统300,尽管相关领域技术人员将明白本发明并不限于该实施例。
如图4所示,流程图400的开始步骤由标记为“开始”的单元标识。处理流程立即转到步骤404,在此判断被音频解码器310接收的输入音频比特流中的下一帧为已接收或丢失。如果该帧被认为已接收,则音频解码器310对已接收帧进行正常的解码操作,以生成相应的已解码音频信号样本,如步骤406所示。接着该处理流程将转到步骤408,在此对应于已接收帧的已解码音频信号被保存在已解码信号缓存320中。已解码音频信号也可作为音频解码系统300的输出音频信号,如步骤410所示。参照图3,这是通过输出信号选择开关370(受丢失帧指示符的控制)的操作来实现的,该开关将音频解码器310的输出连接到系统300的最终输出。该处理流程接着转到步骤412,在此判断由音频解码系统300处理的音频比特流中是否还有帧。如果还有更多帧,则处理流程返回到判决步骤404;否则,处理流程结束,如标记为“结束”的单元426所示。
返回到判决步骤404,如果判定输入音频比特流中的下一帧为丢失,则处理流程转到步骤414,在此信号分类器330分析保存在已解码信号缓存320中的至少一部分先前已解码音频信号。根据该分析,信号分类器330判断该先前已解码音频信号是否为语音信号或音乐信号,如判断步骤416所示。如果先前已解码音频信号被判断为语音信号,则信号分类器330选择为语音设计的FLC方法,诸如基于PWE的FLC方法,进而对保存在已解码信号缓存120中的先前已解码音频信号进行FLC操作,如步骤418所示。参照图3,通过信号分类器330所作的FLC方法决定来执行选择,信号分类器330控制FLC方法选择开关340和350,从而选择FLC处理模块362。
不过,如果先前已解码音频信号被判断为非语音(如,是音乐信号),则信号分类器330选择为音乐设计的FLC方法,诸如帧重复FLC方法,进而对保存在已解码信号缓存320中的先前已解码音频信号或其中一部分音频信号进行FLC操作,如步骤420所示。参照图3,通过信号分类器330所作的FLC方法决定来执行选择,信号分类器330控制FLC方法选择开关340和350,从而选择FLC处理模块361。
不管是在步骤418中应用为语音设计的FLC方法,还是在步骤420中应用为音乐设计的FLC方法,在步骤422中,由所选FLC方法生成的音频信号均作为音频解码系统300的输出音频信号。在图3所示的实现方式中,这是通过让输出信号选择开关370(受丢失帧指示符的控制)的操作来实现的,该操作将开关350与系统300的最终输出相连。如步骤424所示,所选FLC方法应用后生成的音频信号也被保存到已解码信号缓存120中。接着处理流程转到步骤412,在此判断由音频解码系统300处理的音频比特流中是否还有帧。如果还有更多帧,则处理流程返回到判决步骤404;否则,处理流程结束,如标记为“结束”的单元426所示。
图5是根据本发明实施例,用于在支持两种FLC方法的音频解码系统中执行基于分类的FLC的又一方法流程图。流程图500的方法步骤与流程图400基本相同,除了判断步骤416被不同的判断步骤516替代之外。在判断步骤516中,信号分类器330将先前已解码音频信号的周期性测量值与预定极限相比,如果周期性测量值超过该极限,则信号分类器330选择为语音设计的FLC方法,进而对保存在已解码信号缓存320中的先前已解码音频信号或其中一部分进行FLC操作。不过,如果周期性测量值未超过该极限,则信号分类器330选择为音乐设计的FLC方法,进而对保存在已解码信号缓存320中的先前已解码音频信号或其中一部分进行FLC操作。
图6是根据本发明实施例,用于在支持两种FLC方法的音频解码系统中执行基于分类的FLC的再一方法流程图。流程图600包括与流程图400和流程图500基本相同的方法步骤,除了它还包括与判断步骤416类似的第一判断步骤616以及与与判断步骤516类似的第二判断步骤620。因此,根据流程图600,信号分类器330分析至少一部分先前已解码音频信号,以判断其是否为语音信号或音乐信号。根据判断步骤616,如果先前已解码音频信号被判断为语音信号,信号分类器330选择为语音设计的FLC方法,进而对保存在已解码信号缓存320中的先前已解码音频信号进行FLC操作,如步骤618所示。
不过,如果先前已解码音频信号被判断为非语音(换而言之,是音乐信号),则处理流程转到步骤620,其中信号分类器330将先前已解码音频信号的周期性测量值与预定极限相比较。如果周期性测量值超过该极限,则信号分类器330选择为语音设计的FLC方法,进而对保存在已解码信号缓存320中的先前已解码音频信号或其中一部分进行FLC操作,如延伸到处理步骤618的箭头所示。不过,如果周期性测量值未超过该极限,则信号分类器330选择为音乐设计的FLC方法,进而对保存在已解码信号缓存320中的先前已解码音频信号或其中一部分进行FLC操作,如步骤622所示。
C、硬件和软件实现下面对通用计算机系统的描述是为了完整性的目的。本发明可用硬件或软硬件结合的方式来实现。因此,本发明可在计算机系统或其它处理系统的环境下实现。图7给出了该计算机系统700的实例。本发明中,图1-6的所有处理模块或步骤,可在一个或多个不同的计算机系统700中执行,进而实现本发明的各种方法。计算机系统700包括一个或多个处理器,如处理器704。处理器704可以是专用或通用的数字信号处理器。处理器704连接到通信设施702(如,总线或网络)。在本示例性计算机系统方面,说明了各种软件实现。阅读该说明之后,相关领域技术人员可了解如何利用其它计算机系统和/或计算机结构来实现本发明。
计算机系统700还包括主存储器706,最好是随机存储器(RAM),也可包括辅助存储器720。辅助存储器720可包括硬盘驱动器722和/或可移动存储驱动器724,可移动存储驱动可为软盘驱动器、磁带驱动器、光盘驱动器等。可移动存储驱动器724按周知方式从可移动存储单元728读取信息或向可移动存储单元728写入信息。可移动存储单元728表现为软盘、磁带、光盘等,它们可由可移动存储724读取和写入。可以理解的是,可移动存储单元728包括计算机可用存储媒介,其中保存了计算机软件和/或数据。
在另一实现中,辅助存储器720可包括其它类似形式的存储器,用于将计算机程序或其它指令载入到计算机系统700中。这种形式的存储器包括可移动存储单元730和接口726。这种形式的存储器实例包括程序盒式存储器和盒式存储器接口(诸如在视频游戏设备中),可移动存储芯片(诸如EPROM或PROM)和相关插口,以及其它可移动存储单元730和接口726,用于将软件和数据从可移动存储单元730中传送到计算机系统700中。
计算机系统700也可包括通信接口740。通信接口740允许在计算机系统700和外部设备间传送软件和数据。通信接口740的实施例包括调制解调器、网络接口(如以太网卡)、通信端口、PCMCIA插槽和卡等。通过通信接口740传送的软件和数据以信号形式出现,如电子信号、电磁信号、光信号或其它可由通信接口740接收的信号。这些信号通过通信信道742提供给通信接口740。通信信道742承载信号,且可由电线或电缆、光纤、电话线、蜂窝电话链路、RF链路和其它通信信道来实现。
在此使用的术语“计算机程序媒介”和“计算机可用媒介”用于泛指媒介,诸如可移动存储单元728和730,安装在硬盘驱动器722中的硬盘,和通信接口740接收的信号。这些计算机程序产品是为计算机系统700提供软件的方式。
计算机程序(也称为计算机控制逻辑)保存在主存储器706和/或辅助存储器720中。也可通过通信接口740接收计算机程序。当运行时,该计算机程序可使计算机系统执行如上所述的本发明。特别地,执行时,计算机程序可使处现器700执行本发明的处理流程,如图2、4、5和6所述的方法。相应地,该计算机程序表示计算机系统700的控制器。利用软件实现本发明时,软件可保存在计算机程序产品中,并利用可移动存储驱动724、接口726或通信接口740载入到计算机系统700中。
在另一实施例中,本发明的特征可主要由硬件实现,如使用专用集成电路(ASIC)和门阵列等硬件元件来实现。对于相关领域技术人员而言,采用硬件状态机实现所述功能也是很明显的。
D、结论上面已描述本发明的各种实施例,应理解这些实施例仅作为示例,而不是限制。相关领域技术人员应明白,在不脱离本发明精神和范围时,可进行各种形式和细节的变化。
已借助于功能构造模块和方法流程对本发明进行了描述,说明了其中的特定功能性能和关系。在此为了描述方便,自定义了功能构造模块和方法流程的界限。只要能适当执行特定功能和关系,也可定义其它界限。所有这些替代界限均落入在本发明所申明的范围和精神内。本领域技术人员应明白,这些功能构造模块可通过独立元件、专用集成电路、运行适当软件的处理器等或其中几种的组合来实现。因此,本发明的宽度和范围不应限于上述任何特定实施例,而只能由下列权利要求及其等同条件来定义。
权利要求
1.一种在音频解码器中生成与音频比特流中的丢失帧相对应的输出音频信号的方法,其特征在于,包括分析对应于音频比特流的先前已解码帧的至少一部分先前已解码音频信号;根据分析结果选择多个帧丢失隐藏技术中的一种;和将多个帧丢失隐藏技术中选中的一种应用到先前已解码音频信号中,以生成对应于丢失帧的输出音频信号。
2.根据权利要求1所述的方法,其特征在于,分析至少一部分先前已解码音频信号包括判断该先前已解码音频信号是否为语音或音乐。
3.根据权利要求1所述的方法,其特征在于,分析至少一部分先前已解码音频信号包括判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
4.根据权利要求2所述的方法,其特征在于,分析至少一部分先前已解码音频信号进一步包括判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
5.根据权利要求1所述的方法,其特征在于,根据分析结果选择多个帧丢失隐藏技术中的一种包括选择为音乐设计的帧丢失隐藏技术。
6.一种音频解码系统,其特征在于,包括已解码信号缓存,用于保存与音频比特流的先前已解码帧相对应的先前已解码音频信号;与已解码信号缓存相连的多个处理模块,多个处理模块中的每一个都配置为执行相应的帧丢失隐藏技术;与已解码信号缓存和多个处理模块相连的信号分类器,信号分类器被配置为分析保存在已解码信号缓存中的至少一部分先前已解码音频信号,根据分析结果,选择多个处理模块中的一个对先前已解码音频信号执行帧丢失隐藏操作,进而生成与音频比特流丢失帧相对应的输出音频信号。
7.根据权利要求6所述的音频解码系统,其特征在于,所述信号分类器被配置为判断先前已解码音频信号是否为语音或音乐。
8.根据权利要求6所述的音频解码系统,其特征在于,所述信号分类器被配置为判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
9.根据权利要求6所述的音频解码系统,其特征在于,所述信号分类器进一步被配置为判断与先前已解码音频信号相关的周期性测量值是否超过预定极限。
10.一种包含计算机可用媒介的计算机程序产品,其中记录了计算机程序逻辑,可让计算机系统中的处理器生成与音频比特流中的丢失帧相对应的输出音频信号,其特征在于,包括用于使处理器分析对应于音频比特流的先前已解码帧的至少一部分先前已解码音频信号的第一部分;用于使处理器根据分析结果选择多个帧丢失隐藏技术中的一种的第二部分;和用于使处理器将多个帧丢失隐藏技术中选中的一种应用到先前已编码音频信号中,以生成与丢失帧相对应的输出音频信号的第三部分。
全文摘要
本发明涉及一种当表示音频信号的部分比特流在数字通信系统中丢失时,用于进行帧丢失隐藏(FLC)的系统和方法。该系统和方法采用了多个不同的FLC方法,其中每个方法为一个不同类型的音频信号进行调整或设计。当某个帧丢失时,分析与一个或多个先前已接收的好帧相对应的先前已解码音频信号。根据分析结果,选择一种对先前解码音频信号执行效果可能最好的方法对当前丢失帧进行FLC操作。在一个实施例中,多个不同的FLC技术包括为音乐设计的FLC技术,诸如帧重复FLC技术,以及为语音设计的FLC技术,诸如周期性波形外推(PWE)技术。
文档编号H03M7/30GK101071568SQ20061016401
公开日2007年11月14日 申请日期2006年11月21日 优先权日2005年11月23日
发明者朱因韦·陈 申请人:美国博通公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1