具体实施方式
1.根据图1的音频信号解码器
图1示出了根据本发明实施例的音频信号编码器100的方块示意图。音频信号编码器100被配置为接收音频内容的输入表示110,并且基于此来提供音频内容的编码表示112。音频内容的编码表示112包含频谱系数的第一集合112a、多个线性预测域参数112b及混迭抵消刺激信号的表示112c。
音频信号编码器100包含时域至频域变换器120,其被配置为处理音频内容的输入表示110(或等价地,其预处理版本110’)以获得音频内容的频域表示122(其可呈频谱系数的集合的形式)。
音频信号编码器100还包含一频谱处理器130,其被配置为根据用于欲以线性预测域编码的音频内容部分的线性预测域参数的集合140,向音频内容的频域表示122或其预处理版本122’应用频谱成形,以获得该音频内容的一频谱成形频域表示132。频谱系数的第一集合112a可等于音频内容的频谱成形频域表示132,或可自音频内容的频谱成形频域表示132导算出。
音频信号编码器100还包含一混迭抵消信息提供器150,其被配置为提供混迭抵消刺激信号的表示112c,使得根据线性预测域参数140的至少子集对该混迭抵消刺激信号的滤波,导致产生用以抵消音频信号解码器中的混迭假影的混迭抵消合成信号。
还应当注意,线性预测域参数112b例如可等于线性预测域参数140。
音频信号编码器110提供极为适合用于音频内容重建的信息,即便该音频内容的不同部分(例如帧或子帧)以不同模式编码亦如此。对以线性预测域编码(例如以变换编码激发线性预测域模式)编码的音频内容部分,带来噪声成形并因此允许以相对低的位率量化音频内容的频谱成形,在时域至频域变换后执行。这允许以线性预测域编码的音频内容部分和以频域模式编码的前一音频内容部分或后一音频内容部分混迭抵消重叠及相加。通过使用线性预测域参数140用于频谱成形,该频谱成形极为适合于类似口语的音频内容,使得对于类似口语的音频内容可获得特优的编码效率。此外,在自或向以代数码激发线性预测模式编码的音频内容部分(例如帧或子帧)转变处,混迭抵消刺激信号的表示允许高效的混迭抵消。通过根据线性预测域参数提供混迭抵消刺激信号的表示,获得了混迭抵消刺激信号的特高效表示,在考虑不管用什么方法在解码器为已知的线性预测域参数的解码器侧,可解码该表示。
综上所述,音频信号编码器100极为适合用于实现以不同编码模式编码的音频内容部分间的转变,且能够以特定压缩的形式提供混迭抵消信息。
2.根据图2的音频信号解码器
图2示出了根据本发明实施例的音频信号解码器200的方块示意图。该音频信号解码器200配置为接收音频内容的编码表示210,并且基于此来例如以混迭减少时域信号的形式提供该音频内容的解码表示212。
音频信号解码器200包含一变换域路径(例如,变换编码激发线性预测域路径),其被配置为基于频谱系数的(第一)集合220、混迭抵消刺激信号的表示224及多个线性预测域参数222,来获得以变换域模式编码的音频内容的时域表示212。该变换域路径包含一频谱处理器230,其被配置为根据线性预测域参数222的至少子集来对频谱系数的(第一)集合220应用频谱成形,以获得频谱系数的第一集合220的频谱成形版本232。该变换域路径还包含(第一)频域至时域变换器240,其被配置为基于频谱系数的(第一)集合220的频谱成形版本232来获得音频内容的时域表示242。该变换域路径还包含混迭抵消刺激滤波器250,其被配置为根据线性预测域参数222的至少子集来滤波一混迭抵消刺激信号(其由表示符号224来表示),以从该混迭抵消刺激信号导算出一混迭抵消合成信号252。该变换域路径还包含一组合器260,其被配置为将音频内容的时域表示242(或等价地,其后处理版本242’)与混迭抵消合成信号252(或等价地,其后处理版本252’)组合来获得一混迭减少时域信号212。
音频信号解码器200可包含一选择性处理270,用以自线性预测域参数的至少子集导算出频谱处理器230的设定值,频谱处理器230例如执行定标和/或频域噪声成形。
音频信号解码器200还包含一选择性处理280,其被配置为自线性预测域参数222的至少子集导算出混迭抵消刺激滤波器250的设定值,混迭抵消刺激滤波器250例如可执行用以合成混迭抵消合成信号252的合成滤波。
音频信号解码器200被配置为提供混迭减少时域信号212,其极为适合用来与下列二者组合:表示音频内容且以频域运算模式获得的时域信号;及表示音频内容且以ACELP运算模式获得的时域信号。在使用频域运算模式(使用图2未示出的频域路径)解码的音频内容部分(例如帧)与使用图2的变换域路径解码的音频内容部分(例如帧或子帧)间存在有特良好的重叠及相加特性,原因在于噪声成形由频谱处理器230在频域之前执行,亦即在频域至时域变换240之前。此外,在使用图2的变换域路径解码的音频内容部分(例如帧或子帧)与使用ACELP解码路径解码的音频内容部分(例如帧或子帧)之间还获得了特别良好的混迭抵消,原因在于混迭抵消合成信号252是基于根据线性预测域参数对混迭抵消刺激信号进行滤波来提供的。以此方式获得的混迭抵消合成信号252通常极为适合用于在以TCX-LPD模式编码的音频内容部分与以ACELP模式编码的音频内容部分间转变时出现的混迭假影。有关音频信号解码的运算的其他可选细节容后详述。
3.根据图3a及图3b图的切换音频解码器
下文中,将参考图3a及图3b简短讨论多模式音频信号解码器的构想。
3.1.根据图3a的音频信号解码器300
图3a示出了参考多模式音频信号解码器的方块示意图;及图3b示出了根据本发明实施例的多模式音频信号解码器的方块示意图。换言之,图3a示出了参考系统的基本解码器信号流(例如,根据USAC标准草案的工作草案4),图3b示出了根据本发明实施例的所提出的系统的基本解码器信号流。
首先将参考图3a描述音频信号解码器300。音频信号解码器300包含一位多路复用器310,其被配置为接收输入位流并且将位流中包括的信息提供给处理分支的适当处理单元。
音频信号解码器300包含一频域模式路径320,其被配置为接收定标因子信息322及编码频谱系数信息324,并且基于此提供以频域模式编码的音频帧的时域表示326。音频信号解码器300还包含变换编码激发线性预测域路径330,其被配置为接收编码变换编码激发信息332及线性预测系数信息334(也称作为线性预测编码信息或或称作为线性预测域信息或称作为线性预测编码滤波信息),并且基于此提供以变换编码激发线性预测域(TCX-LPD)模式编码的音频帧或音频子帧的时域表示。音频信号解码器300还包含代数码激发线性预测(ACELP)路径340,其被配置为接收编码激发信息342及线性预测编码信息344(也称作为线性预测系数信息、或线性预测域信息、或线性预测编码滤波信息),并且基于此提供时域线性预测编码信息来作为以ACELP模式编码的音频帧或音频子帧的表示。音频信号解码器300还包含转变开窗(transition windowing),其被配置为接收以不同模式编码的音频内容的帧或子帧的时域表示326、336、346,并且使用转变开窗组合该时域表示。
频域路径320包含一算术解码器320a,其被配置为解码该编码频谱表示324以获得解码频谱表示320b;一反量化器(inverse quantizer)320d,其被配置为基于解码频谱表示320b提供反量化的频谱表示320e;定标320e,其被配置为根据定标因子对反量化的频谱表示320d进行定标,以获得定标频谱表示320f;以及(反)修正离散余弦变换320g,用以基于定标频谱表示320f提供时域表示326。
TCX-LPD分支330包含一算术解码器330a,其被配置为基于编码的频谱表示332提供解码的频谱表示330b;一反量化器330c,其被配置为基于解码的频谱表示330b提供反量化的频谱表示330d;一(反)修正离散余弦变换330e,用以基于反量化的频谱表示330d提供一激发信号330f;及一线性预测编码合成滤波器330g,用以基于激发信号330f及线性预测编码滤波系数334(有时也被称作为线性预测域滤波系数)来提供时域表示336。
ACELP分支340包含一ACELP激发处理器340a,其被配置为基于编码的激发信号342提供ACELP激发信号340b;及一线性预测编码合成滤波器340c,用以基于ACELP激发信号340b及线性预测编码滤波系数344提供时域表示346。
3.2.根据图4的转变开窗
现在参考图4,将描述转变开窗350的进一步细节。首先,将描述音频信号解码器300的一般帧结构。但须注意,仅具有微小差异的极为类似的帧结构,或甚至相同的一般帧结构将用于本文中所描述的其它音频信号编码器或音频信号解码器中。也须注意,音频帧典型地包含N个样本的长度,其中N可等于2048。音频内容的随后帧可重叠约50%,例如重叠N/2音频样本。音频帧可以频域编码,使得音频帧的N个时域样本由例如N/2频谱系数的集合表示。可替换地,音频帧的N个时域样本还可由例如多个集合,例如128个频谱系数的8个集合表示。如此,可获得较高的时间分辨率。
若音频帧的N个时域样本是使用频谱系数的单一集合以频域模式编码的,则诸如以所谓的「STOP_START」窗、所谓的「AAC长」窗、所谓的「AAC开始」窗或所谓的「AAC停止」窗为例的单个窗可用来对由反修正离散余弦变换320g提供的时域样本326开窗。与之相比,若音频帧的N个时域样本是使用频谱系数的多个集合编码的,则多个短窗(例如「AAC短」窗类型)可用来对使用频谱系数的不同集合获得的时域表示开窗。举例言之,分离的短窗可应用于基于与单个音频帧相关联的各个频谱系数集合所获得的时域表示。
以线性预测域模式编码的音频帧可再划分成多个子帧,其有时被称作为“帧”。各个子帧可以以TCX-LPD模式或以ACELP模式编码。据此,然而在TCX-LPD模式下,使用描述变换编码激发的频谱系数的单个集合可对两个或甚至四个子帧一起进行编码。
以TCX-LPD模式编码的子帧(或2个或4个子帧的组)可由频谱系数的集合及一个或多个线性预测编码滤波系数集合表示。以ACELP域编码的音频内容的子帧可由编码的ACELP激发信号及一个或多个线性预测编码滤波系数集合表示。
现在参考图4,将描述帧或子帧间的转变的实施。在图4的示意表示中,横坐标402a至402i描述以音频样本表示的时间,及纵坐标404a至404i描述提供时域样本的窗口和/或时间区。
参考标号410示出了以频域编码的两个重叠帧间的转变。在参考标号420,示出了自以ACELP模式编码的子帧至以频域模式编码的帧的转变。在参考标号430,示出了自以TCX-LPD模式(还被称作为“wLPT”模式)编码的帧(或子帧)至以频域模式编码的帧的转变。在参考标号440,示出了以频域模式编码的帧与以ACELP模式编码的子帧间的转变。在参考标号450,示出了以ACELP模式编码的子帧间的转变。在参考标号460,示出了自以TCX-LPD模式编码的子帧至以ACELP模式编码的子帧的转变。在参考标号470,示出了自以频域模式编码的帧至以TCX-LPD模式编码的子帧间的转变。在参考标号480,示出了以ACELP模式编码的子帧与以TCX-LPD模式编码的子帧间的转变。在参考标号490,示出了以该模式编码的子帧间的转变。
感兴趣的是,在参考标号430,示出的自TCX-LPD模式至频域模式的转变略为无效,或甚至TCX-LPD极为无效,原因在于传输至解码器的部分信息被丢弃。类似地,在参考标号460及480,示出的ACELP模式与TCX-LPD模式间的转变实际无效,原因在于传输至解码器的部分信息被丢弃。
3.3.根据图3b的音频信号解码器360
下文中,将描述根据本发明实施例的音频信号解码器360。
音频信号解码器360包含位多路复用器或位流解析器362,其被配置为接收音频内容的位流表示361,并基于此提供信息元素至音频信号解码器360的不同分支。
音频信号解码器360包含频域分支370,其接收来自位流多路复用器362的编码的定标因子信息372及编码的频谱信息374,并基于此提供以频域模式编码的帧的时域表示376。音频信号解码器360还包含TCX-LPD路径380,其被配置为接收编码的频谱表示382及编码的线性预测编码滤波系数384,并且基于此提供以TCX-LPD模式编码的音频帧或音频子帧的时域表示386。
音频信号解码器360包含一ACELP路径390,其被配置为接收编码的ACELP激发392及编码的线性预测编码滤波系数394,并基于此提供以ACELP模式编码的音频子帧的时域表示396。
音频信号解码器360还包含一转变开窗398,其被配置为对以不同模式编码的帧及子帧的时域表示376、386、396应用合适的转变开窗,以导算出连续音频信号。
此处应当注意,频域分支370在其总体结构及功能上可与频域分支320相同,即便如此,频域分支370可以有不同的或额外的混迭抵消机制。此外,ACELP分支390在其总体结构及功能上可与ACELP分支340相同,故也适用前文说明。
然而,TCX-LPD分支380与TCX-LPD分支330的差异在于,在TCX-LPD分支380中,噪声成形在反修正离散余弦变换之前执行。此外,TCX-LPD分支380包含额外混迭抵消功能。
TCX-LPD分支380包含一算术解码器380a,其被配置为接收编码的频谱表示382,并基于此提供解码的频谱表示380b。TCX-LPD分支380还包含一反量化器380c其被配置为接收解码的频谱表示380b,并基于此提供反量化的频谱表示380d。TCX-LPD分支380还包含一定标和/或频域噪声成形380e,其被配置为接收反量化的频谱表示380d及一频谱成形信息380f,并基于此提供一频谱成形频谱表示380g至一修正离散余弦反变换380h,其基于频谱成形频谱表示380g提供时域表示386。TCX-LPD分支380还包含一线性预测系数至频域变换器380i,其被配置为基于线性预测编码滤波系数384提供频谱定标信息380f。
有关音频信号解码器360的功能,可谓频域分支370和TCX-LPD分支380极为类似,在于它们中的每个包括以相同处理顺序的一处理链,该处理链具有一算术解码、一反量化、一频谱定标及一修正离散余弦反变换。如此,频域分支370和TCX-LPD分支380的输出信号376、386极为类似,在于其皆为修正离散余弦反变换的未经滤波的(除转变开窗之外)输出信号。据此,时域信号376、386极为适合用于重叠及加法运算,其中通过重叠及加法运算实现时域混迭抵消。如此,可通过单纯的重叠及加法运算在不需要任何额外混迭抵消信息且不舍弃任何信息的情况下,有效执行以频域模式编码的一音频帧与以TCX-LPD模式编码的音频帧或一音频子帧间的转变。如此,旁信息的最小量就足以。
此外,须注意,根据定标因子信息在频域路径370中执行的反量化频谱表示的定标,可有效地带来对由编码器侧量化及解码器侧反量化320c所引入的量化噪声的噪声成形,该噪声成形良好适合用于一般音频信号,诸如音乐信号。与之相比,根据线性预测编码滤波系数执行的定标和/或频域噪声成形380e,有效地带来对由编码器侧量化及解码器侧反量化380c所造成的量化噪声的噪声成形,该噪声成形良好地适合用于类似口语的音频信号。据此,频域分支370及TCX-LPD分支380的功能的不同之处仅在于在频域中应用不同的噪声成形,使得在使用频域分支370时编码效率(或音频质量)对一般音频信号特佳,及使得在使用TCX-LPD分支380时,编码效率或音频质量对类似口语的音频信号为特高。
须注意,TCX-LPD分支380优选地包含额外混迭抵消机制,用于以TCX-LPD模式及以ACELP模式编码的音频帧或音频子帧间的转变。现在将描述细节。
3.4.根据图5的转变开窗
图5示出了可以应用于音频信号解码器360或根据本发明的任何其它音频信号编码器及音频信号解码器中的预想的开窗方案的实例的曲线表示。图5表示在不同节点编码的帧或子帧间的可行转变处的开窗。横坐标502a至502i描述以音频样本表示的时间,及纵坐标504a至504i描述窗或用以提供音频内容的时域表示的子帧。
参考标号510的曲线表示示出了以频域模式编码的随后帧间的转变。由此可知,对帧的第一右半提供的时域样本(例如,通过修正离散余弦反变换(MDCT)320g)通过窗的右半512开窗,该窗可以是例如窗类型“AAC长”或窗类型“AAC停止”。同理,对随后第二帧的左半提供的时域样本(例如,通过MDCT 320g)使用窗的左半514开窗,该窗可以是例如窗类型“AAC长”或窗类型“AAC开始”。右半512例如可包含相对长的右侧转变斜坡,而随后窗的左半514可包含相对长的左侧转变斜坡。第一音频帧的时域表示的开窗版本(使用右半窗512开窗)及随后第二音频帧的时域表示的开窗版本(使用左半窗514开窗)可重叠且可相加。据此,可有效地抵消由MDCT引起的混迭。
参考标号520的曲线表示示出了自以ACELP模式编码的子帧转变至以频域模式编码的帧。于此转变,可应用正向混迭抵消来减少混迭假影。
参考标号530的曲线表示示出了自以TCX-LPD模式编码的子帧转变至以频域模式编码的帧。由此可知,窗532被施加至由TCX-LPD路径的反MDCT 380h提供的时域样本,该窗532例如可以是窗类型「TCX256」、「TCX512」或「TCX1024」。窗532可包含128时域样本长度的右侧转变斜坡533。窗534被施加至频域路径370的MDCT为以频域模式编码的随后音频帧所提供的时域样本。窗534例如可以是窗类型「停止开始」或「AAC停止」,且可包含例如具有128时域样本长度的左侧转变斜坡535。由右侧转变斜坡533开窗的TCX-LPD模式子帧的时域样本与由左侧转变斜坡535开窗的以频域模式编码的随后音频帧的时域样本重叠和相加。转变斜坡533与535匹配,使得在自TCX-LPD模式编码子帧至随后的频域模式编码子帧的转变时获得混迭抵消。通过在反MDCT 380h的执行前,执行定标/频域噪声成形380e,来使混迭抵消变成可能。换言之,混迭抵消系由下述事实造成:频域路径370的反MDCT 320g及TCX-LPD路径380的反MDCT 380h二者被馈以已应用噪声成形的频谱系数(例如,以定标因子依赖性定标及LPC滤波系数依赖性定标的形式)。
参考标号540的曲线表示示出了自以频域模式编码的音频帧转变至以ACELP模式编码的子帧。如图可知,施用正向混迭抵消(FAC)来减少或甚至消除此转变处的混迭假影。
参考标号550的曲线表示示出了自以ACELP模式编码的音频子帧转变至以ACELP模式编码的另一音频子帧。在一些实施例中,此处无需特定混迭抵消处理。
参考标号560的曲线表示示出了自以TCX-LPD模式(也被称为wLPT模式)编码的子帧转变至以ACELP模式编码的音频子帧。如图可知,由TCX-LPD分支380的MDCT 380h所提供的时域样本使用窗562来开窗,该窗562例如可以是窗类型「TCX256」、「TCX512」或「TCX1024」。窗562包含相对短的右侧转变斜坡563。对以ACELP模式编码的随后音频子帧所提供的时域样本包含与由窗532的右侧转变斜坡563开窗的并为先前以TCX-LPD模式编码的音频子帧提供的音频样本重叠的部分时间。对以ACELP模式编码的音频子帧所提供的时域音频样本由参考标号564的方块表示。
如此可知,在自以TCX-LPD模式编码的音频帧至以ACELP模式编码的音频帧的转变处,施加正向混迭抵消信号566,以减少或甚至消除混迭假影。以下将叙述有关混迭抵消信号566的提供的细节。
参考标号570的曲线表示示出了自以频域模式编码的帧转变至以TCX-LPD模式编码的随后帧。由频域分支370的反MDCT 320g所提供的时域样本可由具有相对短的右侧转变斜坡573的窗572开窗,例如由窗类型「停止开始」或「AAC开始」开窗。由TCX-LPD分支380的反MDCT380h为随后以TCX-LPD模式编码的音频子帧提供的时域表示可由包含相对短的左侧转变斜坡575的窗574开窗,该窗574可以是窗类型例如「TCX256」、「TCX512」或「TCX1024」。由右侧转变斜坡573开窗的时域样本与由左侧转变斜坡575开窗的时域样本借助于转变开窗398重叠并相加,使得混迭假影减少或甚至消除。据此,无需额外旁信息来执行自以频域模式编码的音频帧至以TCX-LPD模式编码的音频子帧的转变。
参考标号580的曲线表示示出了自以ACELP模式编码的音频帧转变至以TCX-LPD模式(也被称作为wLPT模式)编码的音频帧。用于由ACELP分支提供的时域样本的时间区被指示为582。窗584施用至由TCX-LPD分支380的反MDCT 380h所提供的时域样本。该窗584例如可属窗类型「TCX256」、「TCX512」或「TCX1024」,可包含相对短的左侧转变斜坡585。窗584的左侧转变斜坡585与由ACELP分支所提供的时域样本(以方块582表示)部分重叠。此外,提供混迭抵消信号586来减少或甚至消除出现在自以ACELP模式编码的音频子帧至以TCX-LPD模式编码的音频子帧的转变处的混迭假影。有关混迭抵消信号586的提供的细节容后详述。
参考标号590的示意性表示示出了自以TCX-LPD模式编码的音频子帧转变至以TCX-LPD模式编码的另一音频子帧。以TCX-LPD模式编码的第一音频子帧的时域样本使用窗592来开窗,窗592例如可属窗类型例如「TCX256」、「TCX512」或「TCX1024」,并可包含相对短的右侧转变斜坡593。由TCX-LPD分支380的反MDCT 380h提供的并以TCX-LPD模式编码的第二音频子帧的时域音频样本可使用包含相对短的左侧转变斜坡595并且属于窗类型例如「TCX256」、「TCX512」或「TCX1024」的窗594开窗。使用右侧转变斜坡593开窗的时域样本与使用左侧转变斜坡595开窗的时域样本借助于转变开窗398重叠与相加。如此,由反MDCT380h造成的混迭减少或甚至消除。
4.所有窗类型的概述
下文中,将提供所有窗类型的概述。为了达成此目的,参考图6,其示出了不同窗类型及其特性的曲线表示。在图6的表中,栏610描述左侧重叠长度,其可等于左侧转变斜坡的长度。栏612描述变换长度,亦即用以产生由各个窗开窗的时域表示的频谱系数数目。栏614描述右侧重叠长度,其可等于右侧转变斜坡的长度。栏616描述窗类型名称。栏618示出了各个窗的曲线表示。
第一行630示出了「AAC短」窗类型的特性。第二行632示出了「TCX256」窗类型的特性。第三行634示出了「TCX512」窗类型的特性。第四行636示出了「TCX1024」窗类型的特性。第五行638示出了「AAC长」窗类型的特性。第六行640示出了「AAC开始」窗类型的特性。第七行642示出了「AAC停止」窗类型的特性。
值得注意,「TCX256」、「TCX512」及「TCX1024」类型的窗的转变斜坡适用于窗类型「AAC开始」的右侧转变斜坡及适用于窗类型「AAC停止」的左侧转变斜坡,以通过将使用不同类型的窗开窗的时域表示重叠及相加来允许时域混迭抵消。在优选实施例中,具有相同左侧重叠长度的所有窗类型的左侧窗斜坡(转变斜坡)可相同,而具有相同右侧重叠长度的所有窗类型的左侧转变斜坡可相同。此外,具有相同重叠长度的左侧转变斜坡及右侧转变斜坡适用于允许混迭抵消,以满足MDCT混迭抵消的条件。
5.容许的窗序列
下文中,将参考图7说明容许的窗序列,该图示出了此种容许的窗序列的表格表示。从图7的表可看出,其时域样本是使用「AAC停止」窗类型开窗的并且以频域模式编码的音频帧,在时域样本是使用「AAC长」窗类型或「AAC开始」窗类型开窗的并以频域模式编码的音频帧之前。
其时域样本是使用「AAC长」窗类型开窗的并且以频域模式编码的音频帧,在时域样本是使用「AAC长」或「AAC开始」窗类型开窗的并且以频域模式编码的音频帧之前。
其时域样本是使用「AAC开始」类型窗;使用8个「AAC短」类型窗或使用「AAC短停止」类型窗开窗的并且以线性预测域模式编码的音频帧,在时域样本是使用8个「AAC短」类型窗开窗的并以频域模式编码的音频帧之前。可替换地,其时域样本是使用「AAC开始」类型窗,使用8个「AAC短」型窗,或使用「AAC停止开始」型窗开窗的并以频域模式编码的音频帧,在以TCX-LPD模式(也被表示为LPD-TCX)编码的音频帧或音频子帧之后,或在以ACELP模式(也被表示为LPD ACELP)编码的音频帧或音频子帧之前。
以TCX-LPD模式编码的音频帧或音频子帧在其时域样本是使用8个「AAC短」窗,使用「AAC停止」窗,或使用「AAC停止开始」窗开窗的并且以频域模式编码的音频帧之前,或在以TCX-LPD模式编码的音频帧或音频子帧之前,或在以ACELP模式编码的音频帧或音频子帧之前。
以ACELP模式编码的音频帧可在其时域样本是使用8个「AAC短」窗,使用「AAC停止」窗,或使用「AAC停止开始」窗开窗的并以频域模式编码的音频帧之前,或在以TCX-LPD模式编码的音频帧之前,或在以ACELP模式编码的音频帧之前。
为了自以ACELP模式编码的音频帧至以频域模式编码的音频帧的转变,或至以TCX-LPD模式编码的音频帧的转变,执行所谓的正向混迭抵消(FAC)。据此,混迭抵消合成信号于这种帧转变时添加至该时域表示,由此减少或甚至消除混迭假影。同理,当自以频域模式编码的帧或子帧,或自以TCX-LPD模式编码的帧或子帧切换至以ACELP模式编码的帧或子帧时,也执行正向混迭抵消(FAC)。
有关正向混迭抵消(FAC)的细节讨论如下。
6.根据图8的音频信号编码器
下文中,将参考图8说明多模式音频信号编码器800。
音频信号编码器800被配置为接收一音频内容的输入表示810,且基于此提供表示该音频内容的位流812。音频信号编码器800被配置为以不同的运作模式运作,即,频域模式、变换编码激发线性预测域模式及代数码激发线性预测域模式。音频信号编码器800包含编码控制器814,其被配置为根据该音频内容的输入表示810的特性和/或根据可达到的编码效率或质量来选择用于对音频内容的部分进行编码的一种模式。
音频信号编码器800包含一频域分支820,其被配置为基于该音频内容的输入表示810,提供编码频谱系数822、编码定标因子824及选择性地编码混迭抵消系数826。音频信号编码器800还包含一TCX-LPD分支850,其被配置为根据音频内容的输入表示810提供编码频谱系数852、编码线性预测域参数854及编码混迭抵消系数856。音频信号编码器800还包含一ACELP分支880,其被配置为根据该音频内容的输入表示810提供编码ACELP激发882及编码线性预测域参数884。
频域分支820包含一时域至频域变换830,其被配置为接收该音频内容的输入表示810或其预处理版本,且基于此提供该音频内容的频域表示832。频域分支820还包含一心理声学分析834,其被配置为评估该音频内容的频率遮蔽效应和/或时间遮蔽效应,并基于此提供描述定标因子的定标因子信息836。频域分支820还包含一频谱处理器838,其被配置为接收该音频内容的频域表示832及定标因子信息836,且根据该定标因子信息836来对该频域表示832的频谱系数施用频率依赖性及时间依赖性定标,以获得该音频内容的定标频域表示840。频域分支还包含一量化/编码842,其被配置为接收定标频域表示840,并且基于该定标频域表示840执行量化及编码,以获得编码频谱系数822。频域分支还包含量化/编码844,其被配置为接收该定标因子信息836,并基于此提供编码定标因子信息824。可选地,频域分支820还包含混迭抵消系数计算846,其可配置为提供混迭抵消系数826。
TCX-LPD分支850包含一时域至频域变换860,其可被配置为接收该音频内容的输入表示810,并基于此提供该音频内容的频域表示861。TCX-LPD分支850还包含一线性预测域参数计算862,其被配置为接收该音频内容的输入表示810或其预处理版本,且自该音频内容的输入表示810导算出一个或多个线性预测域参数(例如线性预测编码滤波系数)863。TCX-LPD分支850还包含一线性预测域至频谱域变换864,其被配置为接收线性预测域参数(例如线性预测编码滤波系数)且基于此提供频谱域表示或频域表示。线性预测域参数的频谱域表示或频域表示例如可表示由线性预测域参数于频域或频谱域限定的一滤波器的滤波响应。TCX-LPD分支850还包含一频谱处理器866,其被配置为接收该频域表示861或其预处理版本861’,及线性预测域参数863的频谱域表示或频域表示。该频谱处理器866被配置为执行该频域表示861或其预处理版本861’的频谱成形,其中线性预测域参数863的频域表示或频谱域表示865用来调整该频域表示861或其预处理版本861’的不同频谱系数的定标。据此,频谱处理器866根据线性预测域参数863来提供该频域表示861或其预处理版本861’的频谱成形版本867。TCX-LPD分支850还包含一量化/编码868,其被配置为接收频谱成形的频域表示867,并基于此提供编码频谱系数852。TCX-LPD分支850还包含另一量化/编码869,其被配置为接收线性预测域参数863,并基于此提供编码线性预测域参数854。
TCX-LPD分支850进一步包含一混迭抵消系数提供器,其被配置为提供编码的混迭抵消系数。该混迭抵消系数提供器包含一误差计算870,其被配置为根据编码频谱系数及根据该音频内容的输入表示810,计算混迭误差信息871。误差计算870可选择性地将由其它机构所提供的有关额外混迭抵消成分的信息872列入考虑。混迭抵消系数提供器还包含一分析滤波计算873,其被配置为根据线性预测域参数863提供用于描述误差滤波的信息873a。混迭抵消系数提供器还包含一误差分析滤波874,其被配置为接收混迭误差信息871及分析滤波组态信息873a,且对该混迭误差信息871施用根据分析滤波信息873a调整的误差分析滤波,以获得经滤波的混迭误差信息874a。混迭抵消系数提供器还包含一时域至频域变换875,其可具有IV型离散余弦变换功能,并且被配置为接收经滤波的混迭误差信息874a,并基于此提供经滤波的混迭误差信息874a的频域表示875a。混迭抵消系数提供器还包含一量化/编码876,其被配置为接收频域表示875a,并基于此提供编码的混迭抵消系数856,使得该编码的混迭抵消系数856编码频域表示875a。
混迭抵消系数提供器还包含用于对混迭抵消的贡献的可选ACELP计算877。计算877可被配置为计算或估算对混迭抵消的贡献,其可自于以TCX-LPD模式编码的音频帧之前的以ACELP模式编码的音频子帧导算出。ACELP对混迭抵消的贡献的计算可包含计算后ACELP合成、计算后ACELP合成的开窗及计算开窗的后ACELP合成的折叠(folding),来获得有关额外混迭抵消成分的信息872,其可自以ACELP模式编码的前一音频子帧导算出。此外或可替换地,计算877可包含通过以ACELP模式编码的前一个音频子帧解码所启动的滤波器的零输入响应的计算,及该零输入响应的开窗,以获得有关额外混迭抵消组分的信息872。
下文中,将简短讨论ACELP分支880。ACELP分支880包含一线性预测域参数信息计算890,其被配置为基于该音频内容的输入表示810计算线性预测域参数890a。ACELP分支880还包含一ACELP激发计算892,其被配置为根据该音频内容的输入表示810及该线性预测域参数890a来计算ACELP激发信息892。ACELP分支880还包含一编码894,其被配置为编码ACELP激发信息892以获得编码的ACELP激发882。此外,ACELP分支880还包含量化/编码896,其被配置为接收该线性预测域参数890a,并基于此提供编码的线性预测域参数884。
音频信号解码器800还包含一位流格式化器898,其被配置为基于编码的频谱系数822、编码的定标因子信息824、混迭抵消系数826、编码的频谱系数852、编码的线性预测域参数852、编码的混迭抵消系数856、编码的ACELP激发882及编码的线性预测域参数884,来提供位流812。
有关编码的混迭抵消系数852的提供的细节将叙述如下。
7.根据图9的音频信号解码器
下文中,将描述根据图9的音频信号解码器900。
根据图9的音频信号解码器900类似于根据图2的音频信号解码器200并也类似于根据图3b的音频信号解码器360,因此上述说明仍然适用。
音频信号解码器900包含一位多路复用器902,其被配置为接收一位流,并将从该位流提取的信息提供至相应的处理路径。
该音频信号解码器900包含一频域分支910,其被配置为接收编码的频谱系数912及一编码的定标因子信息914。该频域分支910可选地被配置为还接收编码的混迭抵消系数,其例如允许在以频域模式编码的音频帧与以ACELP模式编码的音频帧间的转变进行所谓的正向混迭抵消。频域路径910提供以频域模式编码的音频帧的音频内容的时域表示918。
该音频信号解码器900包含一TCX-LPD分支930,其被配置为接收编码的频谱系数932、编码的线性预测域参数934及编码的混迭抵消系数936,并基于此提供以TCX-LPD模式编码的音频帧或音频子帧。该音频信号解码器900还包含一ACELP分支980,其被配置为接收一编码的ACELP激发982及编码的线性预测域参数984,并基于此提供以ACELP模式编码的音频帧或音频子帧的时域表示986。
7.1.频域路径
下文中,将描述有关频域路径的细节。须注意,该频域路径类似于音频解码器300的频域路径320,故参考前文的描述。频域分支910包含一算术解码920,其接收编码的频谱系数912,并基于此提供解码的频谱系数920a;及一反量化921,其接收解码的频谱系数920a,并基于此提供反量化频谱系数921a。频域分支910还包含一定标因子解码922,其接收编码的定标因子信息,并基于此提供解码的定标因子信息922a。频域分支包含一定标923,其接收反量化频谱系数921a且根据定标因子922a定标该反量化频谱系数,以获得定标的频谱系数923a。举例言之,定标因子922a可提供用于多个频带,其中频谱系数921a的多个频率二进制与各个频带相关联。据此,可执行频谱系数921a的逐频带定标。如此,与音频帧相关联的定标因子的数目通常小于与该音频帧相关联的频谱系数921a的数目。频域分支910还包含一反MDCT 924,其被配置为接收定标的频谱系数923a,并且基于此提供当前音频帧的音频内容的时域表示924a。频域分支910可选地还包含一组合925,其被配置为将时域表示924a与混迭抵消合成信号929a组合以获得时域表示918。然而,在一些其它的实施例中,组合925可被省略,使得时域表示924a作为音频内容的时域表示918来提供。
为了提供该混迭抵消合成信号929a,该频域路径包含一解码926a,其基于编码的混迭抵消系数916提供解码的混迭抵消系数926b;及一混迭抵消系数的定标926c,其基于解码的混迭抵消系数926b提供定标的混迭抵消系数926d。该频域路径还包含一IV型反离散余弦变换927,其被配置为接收定标的混迭抵消系数926d,并基于此提供混迭抵消刺激信号927a该混迭抵消刺激信号927a被输入合成滤波927b中。该合成滤波927b被配置为基于混迭抵消刺激信号927a及根据由合成滤波计算927d所提供的合成滤波系数927c来执行合成滤波运算,以获得作为合成滤波结果的混迭抵消系数929a。合成滤波计算927d根据线性预测域参数提供合成滤波系数927c,其中线性预测域参数例如可自以TCX-LPD模式编码的帧或以ACELP模式编码的帧的位流中所提供的线性预测域参数导算出(或可等于该线性预测域参数)。
据此,合成滤波927d可提供混迭抵消合成信号929a,该混迭抵消合成信号929a可相当于图5所示的混迭抵消合成信号522或相当于图5所示的混迭抵消合成信号542。
7.2.TCX-LPD路径
下文中,将简短讨论音频信号解码器900的TCX-LPD路径。进一步细节提供如下。
TCX-LPD路径930包含一主信号合成940,其被配置为基于编码的频谱系数932及编码的线性预测域参数934,提供音频帧或音频子帧的音频内容的时域表示940a。TCX-LPD分支930还包含一混迭抵消处理,其将说明如下。
主信号合成940包含一频谱系数的算术解码941,其中该解码的频谱系数941a基于编码的频谱系数932获得。主信号合成940还包含一反量化942,其被配置为基于解码的频谱系数941a提供反量化频谱系数942a。可选的噪声填补943可施用至反量化频谱系数942a,以获得噪声填补的频谱系数。反量化且噪声填补的频谱系数943a还可标示为r[i]。反量化且噪声填补的频谱系数943a r[i]可由频谱解成形944处理,以获得频谱解成形频谱系数944a,其有时也可标示为r[i]。定标945可被配置为频域噪声成形945。在该频域噪声成形945中,获得频谱系数945a的频谱成形的集合,其也可标示以rr[i]。在该频域噪声成形945,频谱解成形频谱系数944a对频谱成形的频谱系数945a的贡献由频域噪声成形参数945b确定,频域噪声成形参数945b由以下将讨论的频域噪声成形参数提供器提供。若由线性预测域参数934所描述的线性预测滤波的频域响应对于所考虑的个别频谱系数(频谱系数集合944a之外的)相关联的频率具有较小值,则利用频域噪声成形945,频谱系数944a的频谱解成形集合的频谱系数被赋予相对大的权重。与之相比,若由线性预测域参数934所描述的线性预测滤波的频域响应对于与所考虑的(集合944a之外的)频谱系数相关联的频率具有较小值,则当获得频谱成形频谱系数的集合945a的相应频谱系数时,频谱系数集合944a之外的频谱系数被赋予相对大的权重。据此,当自频谱解成形频谱系数944a导算出频谱成形的频谱系数945a时,由线性预测域参数934所定义的频谱成形施用于频域中。
主信号合成940还包含一反MDCT 946,其被配置为接收频谱成形的频谱系数945a,并基于此提供时域表示946a。增益定标947被施加至时域表示946a,以自该时域信号946a导算出音频内容的时域表示940a。增益因子g被施用于增益定标947,这优选为频率非依赖性(非频率选择性)运算。
主信号合成还包含频域噪声成形参数945b的处理,这将在下文中进行描述。为了提供频域噪声成形参数945b,主信号合成940包含解码950,其基于编码的线性预测域参数934提供解码的线性预测域参数950a。解码的线性预测域参数例如可采用解码的线性预测域参数的第一集合LPC1及线性预测域参数的第二集合LPC2的形式。线性预测域参数的第一集合LPC1例如可与以TCX-LPD模式编码的帧或子帧的左侧转变相关联,并且线性预测域参数的第二集合LPC2例如可与以TCX-LPD模式编码的帧或子帧的右侧转变相关联。解码的线性预测域参数被馈入频谱计算951,其提供由线性预测域参数950a定义的脉冲响应的频域表示。举例言之,为解码的线性预测域参数950的第一集合LPC1及第二集合LPC2可提供频域系数的不同集合X0[k]。
增益计算952将频谱值X0[k]映射至增益值,其中增益值的第一集合g1[k]与频谱系数的第一集合LPC1相关联,及其中增益值的第二集合g2[k]与频谱系数的第二集合LPC2相关联。举例言之,增益值可与相应频谱系数的幅度成反比。滤波参数计算953可接收增益值,并基于此提供用于频域成形945的滤波参数945b。举例言之,可提供滤波参数a[i]及b[i]。滤波参数945b确定频谱解成形频谱系数944a对频谱定标频谱系数945a的贡献。有关滤波参数的可行计算的细节将提供如下。
TCX-LPD分支930包含一正向混迭抵消合成信号计算,其包含二分支。(正向)混迭抵消合成信号生成的第一分支包含解码960,被配置为接收编码的混迭抵消系数936,并基于此提供解码的混迭抵消系数960a,其由定标961根据增益值g定标以获得定标的混迭抵消系数961a。在一些实施例,同一增益值g可用于混迭抵消系数960a的定标961,以及用于由反MDCT 946所提供的时域信号946a的增益定标947。混迭抵消合成信号生成还包含频谱解成形962,其可被配置为施用频谱解成形至定标的混迭抵消系数961a,以获得增益定标的且频谱解成形的混迭抵消系数962a。频谱解成形962可以类似于频谱解成形944的方式执行,容后详述。增益定标的且频谱解成形的混迭抵消系数962a被输入IV型离散余弦反变换,其标示以参考标号963,并且提供混迭抵消刺激信号963a来作为基于增益定标且频谱解成形的混迭抵消系数962a执行的离散余弦反变换的结果。合成滤波964接收混迭抵消刺激信号963a,并且通过使用根据合成滤波系数965a配置的合成滤波器对混迭抵消刺激信号963a进行合成滤波来提供第一正向混迭抵消合成信号964a,其中合成滤波系数965a由合成滤波计算965根据线性预测域参数LPC1、LPC2来提供。有关合成滤波964及合成滤波系数965a的计算细节容后详述。
因此,第一混迭抵消合成信号964a是基于混迭抵消系数936及线性预测域参数的。通过在音频内容的时域表示940a的提供及混迭抵消合成信号964的提供两者中施用相同定标因子g,并且通过在音频内容的时域表示940a的提供及混迭抵消合成信号964的提供中施用相似的或甚至相同的频谱解成形944、962,来达成混迭抵消合成信号964a与音频内容的时域表示940a间的良好一致性。
TCX-LPD分支930进一步包含根据前一个ACELP帧或子帧提供额外混迭抵消合成信号973a、976a。ACELP对混迭抵消的贡献的该计算970被配置为接收ACELP信息,诸如以由ACELP分支980所提供的时域表示986和/或ACELP合成滤波器的内容为例。ACELP对混迭抵消的贡献的计算970包含后ACELP合成971a的计算971、后ACELP合成971a的开窗972及后ACELP合成972a的折叠。因此,通过对开窗的后ACELP合成972a进行折叠来获得开窗且折叠的后ACELP合成973a。此外,ACELP对混迭抵消的贡献的计算970还包含零输入响应的计算975,其中零输入响应可算出以用来合成前一个ACELP子帧的时域表示所使用的合成滤波器,其中该合成滤波器的初始状态可等于前一个ACELP子帧结束时的ACELP合成滤波器状态。据此,获得零输入响应975a,对其施用开窗976以获得开窗的零输入响应976a。有关开窗的零输入响应976a的提供的进一步细节容后详述。
最后,执行组合978,以将音频内容的时域表示940a、第一正向混迭抵消合成信号964a、第二正向混迭抵消合成信号973a及第三正向混迭抵消合成信号976a组合。据此,以TCX-LPD模式编码的音频帧或音频子帧的时域表示938被提供来作为组合978的结果,容后详述。
7.3.ACELP路径
下文中,将简要地说明音频信号解码器900的ACELP分支980。ACELP分支980包含编码的ACELP激发982的解码988,以获得解码的ACELP激发988a。随后,激发的激发信号计算及后处理989被执行,以获得后处理的激发信号989a。ACELP分支980包含线性预测域参数984的解码990,以获得解码的线性预测域参数990a。后处理的激发信号989a经滤波,并根据线性预测域参数990a执行合成滤波991,以获得合成的ACELP信号991a。然后,使用后处理992处理合成的ACELP信号991a,以获得以ACELP负载编码的音频子帧的时域表示986。
7.4.组合
最后,执行组合996,以获得以频域模式编码的音频帧的时域表示918、以TCX-LPD模式编码的音频帧的时域表示938及以ACELP模式编码的音频帧的时域表示986,从而获得该音频内容的一时域表示998。
进一步细节将叙述如下。
8.编码器及解码器细节
8.1.LPC滤波
8.1.1.工具描述
下文中,将叙述关于使用线性预测编码滤波系数编码及解码的细节。
在ACELP模式,传输的参数包括LPC滤波器984、适应性及固定码本目录982、适应性及固定码本增益982。
在TCX模式,传输的参数包括LPC滤波器934、能量参数及MDCT系数的量化指标932。本部分描述LPC滤波器(例如LPC滤波系数a1至a16)950a、990a的解码。
8.1.2.定义
下文中,将给出一些定义。
参数「nb_lpc」描述以位流解码的LPC参数的总数。
位流参数「mode_lpc」描述随后LPC参数集合的编码模式。
位流参数「lpc[k][x]」描述集合k的LPC参数数目x。
位流参数「qnk」描述与相对应的码本号码nk相关联的二进制码。
8.1.3.LPC滤波器数目
在位流内编码的LPC滤波器的实际数目「nb_lpc」取决于超帧的ACELP/TCX模式组合,其中超帧与包含多个子帧的帧相同。ACELP/TCX模式组合提取自字段「lpd_mode」,而其又为构成超帧的4个帧(也标示为子帧)的每一个确定编码模式「mod[k]」,k=0至3。ACELP的模式值为0,短TCX(256个样本)的模式值为1,中尺寸TCX(512样本)为2,长TCX(1024样本)为3。此处,须注意,可被认为是位字段「mode」的位流参数「lpd_mode 」为线性预测域信道流的一个超帧(其与一个频域模式音频帧(诸如进阶音频编码帧或AAC帧相对应)内部的四个帧的每一个定义编码模式。编码模式存储于一数组「mod[]」且具有自0至3的值。从位流参数「LPD_mode」至数组「mod[]」的映射可根据表7来确定。
关于数组「mod[0…3]」,可谓数组「mod[]」指示每个帧中的各个编码模式。有关细节请参考表8,表8描述数组「mod[]」指示的编码模式。
除了超帧的1至4个LPC滤波器外,对使用LPD核心编解码器编码的每段的第一超帧传输可选的LPC滤波器LPC0。由设定为1的旗标「first_lpd_flag」指示予LPC解码程序。
LPC滤波器在位流通常出现的顺序为:LPC4、可选的LPC0、LPC2、LPC1及LPC3。位流内的给定LPC滤波器的存在条件总结于表1。
该位流被解析,以提取与由ACELP/TCX模式组合要求的各个LPC滤波器相对应的量化指标。下文将叙述解码LPC滤波器中之一者所需的运算。
8.1.4.反量化器的一般原理
在解码950或在解码990中执行的LPC滤波器的反量化如图13执行。LPC滤波器使用线-频谱-频率(LSF)表示量化。首先,如章节8.1.6所述计算第一阶段估算。然后如章节8.1.7所述,计算可选的代数向量量化(AVQ)精化细分1330。通过将第一阶段估算1350与反加权AVQ贡献1342相加1350而重建量化LSF向量。AVQ精化细分的存在取决于LPC滤波器的实际量化模式,如章节8.1.5的解释说明。之后,反量化LSF向量被变换成LSP(线谱对)参数的向量,然后进行内插再次被变换成LPC参数。
8.1.5.LPC量化模式的解码
下文中,将说明LPC量化模式的解码,其可为解码950或解码990的一部分。
LPC4通常使用绝对量化法来量化。其它LPC滤波器可使用绝对量化法或一些相对量化法中之一者来量化。对这些LPC滤波器,提取自位流的第一信息为量化模式。此信息被标示为「mode_lpc」,且使用表2的末栏指示的可变长度二进制码而在该位流中进行信号传输。
8.1.6.第一阶段估算
对各个LPC滤波器,量化模式确定如何计算图13的第一阶段估算。
对于绝对量化模式(mode_lpc=0),与随机VQ量化第一阶段估算相对应的8-位指标提取自该位流。然后由简单查表计算第一阶段估算1320。
对于相对量化模式,使用反量化的LPC滤波器计算第一阶段估算,如表2的第二栏指示。举例言之,对于LPC0,只有一个相对量化模式,对该模式,反量化LPC4滤波器构成第一阶段估算。对于LPC1,有两个可能的相对量化模式,其中一个是反量化LPC2组构成第一阶段估算,而对另一模式,反量化LPC0滤波器与LPC2滤波器间的平均构成第一阶段估算。至于与LPC量化相关的全部其它运算,第一阶段估算的计算在线性频谱频率(LSF)域中进行。
8.1.7.AVQ精化细分
8.1.7.1.概论
提取自该位流的下一条信息与创建反量化LSF向量所需的AVQ精化细分有关。唯一例外是针对LPC1:当此滤波器相对于(LPC0+LPC2)/2编码时,该位流未含AVQ精化细分。
AVQ是基于于AMR-WB+用来量化TCX模式的频谱的8-维RE8点阵向量量化器的。解码LPC滤波器涉及解码加权余差LSF向量的两个8-维子向量k=1及2。
此二子向量的AVQ信息提取自该位流。其包含两个编码的码本号码「qn1」及「qn2」及相应的AVQ指标。这些参数如下进行解码。
8.1.7.2.码本号码的解码
对前述两个子向量中的每一个,从位流中提取以解码AVQ精化细分的第一参数为两个码本号码nk,k=1及2。码本号码的编码方式取决于LPC滤波器(LPC0至LPC4)及取决于其量化模式(绝对或相对)。如表3所示,有四种不同方式来编码nk。关于用于nk的密码的细节说明如下。
nk模式0及3:
码本号码nk被编码为可变长度码qnk,如下:
Q2→nk的密码为00
Q3→nk的密码为01
Q4→nk的密码为10
其它:nk的密码为11,后方接续:
Q5→0
Q6→10
Q0→110
Q7→1110
Q8→11110
等。
nk模式1:
码本号码nk被编码为一元码qnk如下:
Q0→nk的一元码为0
Q2→nk的一元码为10
Q3→nk的一元码为110
Q4→nk的一元码为1110
等。
nk模式2:
码本号码nk被编码为可变长度码qnk如下:
Q2→nk的密码为00
Q3→nk的密码为01
Q4→nk的密码为10
其它:nk的密码为11,后方接续:
Q0→0
Q5→10
Q6→110
等。
8.1.7.3.AVQ指标的解码
LPC滤波器的解码涉及对用于描述加权余差LSF向量的各个量化子向量的代数VQ参数进行解码。注意,各个区块Bk具有维度8。对各个区块解码器接收二进制指标的三个集合:
a)码本号码nk如前述使用熵码「qnk」传输;
b)在所谓基本码本中选定的阵点(lattice point)z的排序Ik,其指示须对特定头标(leader)施加什么置换来获得阵点z;
c)以及若量化区块(阵点)不在基本码本中,梵罗诺(Voronoi)延伸指标向量k的8指标,则可根据梵罗诺延伸指标计算延伸向量v。在指标向量k的各个分量的多个位以延伸顺序r给定,该延伸顺序r可得自指标nk的码值。梵罗诺延伸的定标因子M以M=2r给定。
然后,自该定标因子M、梵罗诺延伸向量v((RE8)的阵点)及基本码本的阵点z(也是RE8的阵点),可将各个量化定标区块计算为:
当无梵罗诺延伸时(亦即nk<5,M=1及z=0),基本码本为得自M.Xie及J.-P.Adoul,「嵌入式代数向量量化(EAVQ)应用至宽带音频编码」,IEEE国际声学、语音、及信号处理会议(ICASSP),美国乔治亚州亚特兰大第1期第240-243页1996年的码本Q0、Q2、Q3、或Q4时。于是,无需位来传输向量k。否则,当因足够大而使用梵罗诺延伸时,则只有得自前述参考文献的Q3、或Q4用作基本码本。Q3或Q4的选用隐含在码本码值nk。
8.1.7.4.LSF权值的计算
在该编码器,在AVQ量化前施加至余差LSF向量的分量的权值为:
i=0..15
其中:
d0=LSF1st[0]
d16=SF/2-LSF1st[15]
di=LSF1st[i]-LSF1st[i-1],i=1...15
其中LSF1st为第一阶段LSF估算,及W为取决于量化模式的定标因子(表4)。
相应反加权1340于解码器施加以获得经量化余差的LSF向量。
8.1.7.5.反量化LSF向量的重建
反量化LSF向量的获得方式如下:首先连接(concatenate)如章节8.1.7.2及8.1.7.3所述解码的两个AVQ精化细分子向量及以形成一个单个加权余差LSF向量;然后,对此加权余差LSF向量施加如章节8.1.7.4所述所算得的权值倒数来形成余差LSF向量;及然后再度将此余差LSF向量添加至如章节8.1.6所算出的第一阶段估算。
8.1.8.量化LSF的重排序
记录反量化LSF,及在使用前引入相邻50Hz LSF间的最小距离。
8.1.9.变换成LSP参数
至目前为止,所述反量化处理导致于LSF域的LPC参数集合。然后,使用关系式qi=cos(ωi),i=1,…,16,其中ωi为线谱频率(LSF),将LSF变换至余弦域(LSP)。
8.1.10.LSP参数的内插
对各个ACELP帧(或子帧),虽然只传输与帧终点相对应的一个LPC滤波器,但使用线性内插来于各个子帧(或子帧的一部分)获得不同的滤波器(每个ACELP帧或子帧4个滤波器)。在与前一个帧(或子帧)终点相对应的LPC滤波器与(当前)ACELP帧终点相对应的LPC滤波器间执行内插。假设LSP(new)为新的可用LSP向量,而LSP(old)为前一个可用LSP向量。对Nsfr=4子帧的内插LSP向量给定为:
对i=0,...,Nsfr-1
内插LSP向量用来使用后述LSP至LP变换方法来计算各个子帧的不同LP滤波器。
8.1.11.LSP至LP变换
对各个子帧,内插LSP系数被变换成LP滤波系数ak,950a、990a,其用于合成子帧中的重建信号。定义上,16阶LP滤波器的LSP为两个多项式的根
F1′(z)=A(z)+z-17A(z-1)
及
F2′(z)-A(z)-z-17A(z-1)
其可表示为
F1′(z)=(1+z-1)F1(z)
及
F2′(z)=(1-z-1)F2(z)
具有
及
其中qi,i=1,…,16为余弦域的LSF,亦称LSP。变换至LP域如下进行。通过将知晓量化且内插LSP的前述式子扩展来得到F1(z)及F2(z)的系数。使用下述递归关系式来计算F1(z):
具有初值f1(0)=1及f1(-1)=0。同理,通过以q2i置换q2i-1而计算F2(z)系数。
一旦得到F1(z)及F2(z)的系数,F1(z)及F2(z)分别乘以1+z-1及1-z-1来获得F'1(z)及F'2(z);换言之
f1′(i)=f1(i)+f1(i-1),i=1,...,8
f2′(i)=f2(i)-f2(i-1),i=1,...,8
最后,通过下式而根据f′1(i)及f′2(i)算出LP系数
此式是自式子A(z)=(F'1(z)及F'2(z))/2直接导出,及考虑到F'1(z)及F'2(z)分别为对称多项式及非对称多项式的事实。
8.2.ACELP
下文中,将说明有关由音频信号解码器900的ACELP分支980执行处理的一些细节,以协助理解混迭抵消机制,容后详述。
8.2.1.定义
下文中,将提供一些定义。
位流元素「mean_energy」描述每帧的量化平均激发能。位流元素「acb_index[sfr]」指示各个子帧的适应性码本指标。
位流元素「ltp_filtering_flag[sfr]」为适应性码本激发滤波旗标。位流元素「lcb_index[sfr]」指示各个子帧的革新码本指标。位流元素「gains[sfr]」描述适应性码本及革新码本对激发贡献的量化增益。
此外,有关位流元素「mean_energy」的编码细节请参考表5。
8.2.2.使用过去FD合成及LPC0的ACELP激发缓冲器设定值
下文中,将叙述ACELP激发缓冲器的选择性起动,其可由方块990b执行。
在自FD转变至ACELP的情况下,过去激发缓冲器u(n)及含有过去预强调合成的缓冲器在ACELP激发解码前,使用过去FD合成(包括FAC)及LPC0(亦即,滤波系数集合LPC0的LPC滤波系数)更新。为此,FD合成通过应用预强调滤波器(1-0.68z-1),及结果拷贝至所得预强调合成然后使用LPC0由分析滤波器滤波,以获得激发信号u(n)。
8.2.3.CELP激发的解码
若帧的模式为CELP模式,则激发由定标适应性码本向量及固定码本向量的相加组成。在各个子帧,激发通过重复下列步骤而构建:
解码CELP信息所需的信息可视为编码ACELP激发982。也须注意,CELP激发的解码可由ACELP分支980的方块988、989执行。
8.2.3.1.根据位流元素「acb_index[]」,解码适应性码本激发
所接收的音高指标(适应性码本指标)用来找出音高延迟的整数及分数部分。
通过使用FIR内插滤波器,在音高延迟及相位(分数),内插过去激发u(n)而得到初始适应性码本激发向量v’(n)。
对64样本的子帧大小计算适应性码本激发。然后,所接收的适应性滤波指标(ltp_filtering_flag[])用来判定滤波的适应性码本为v(n)=v’(n)还是v(n)=0.18v’(n)+0.64v’(n-1)+0.18v’(n-2)。
8.2.3.2.使用位流元素「icb_index[]」解码革新的码本激发
所接收的代数码本指标用来提取激发脉冲的位置及振幅(符号),及得到代数码向量c(n)。亦即
其中mi及si为脉冲位置及符号,及M为脉冲数。
一旦代数码向量c(n)被解码,则执行音高锐利化处理。首先,由如下定义的预强调滤波器对c(n)进行滤波:
Femph(z)=1-0.3z-1
预强调滤波器具有减少低频处的激发能的作用。其次,利用具有定义为如下的传递函数的适应性前置滤波器进行周期性增强:
此处n为子帧指标(n=0,…,63),及此处T为音高延迟的整数部分T0及分数部分T0,frac的舍入版本,并通过以下给出:
在语音信号情况下,通过对人类耳朵而言为恼人的谐波间频率进行减幅,适应性前置滤波器Fp(z)润色频谱。
8.2.3.3.由位流元素「gains[]」描述的适应性及革新码本增益的解码
所接收的每个子帧7-位指标直接提供适应性码本增益及固定码本增益校正因子通过增益校正因子乘以估算得的固定码本增益而求出固定码本增益。如下求出估算的固定码本增益g’c。首先,由下式求出平均革新能量
然后以分贝表示的估算增益G'c由下式求出
此处E为每帧的解码平均激发能。帧中的平均革新激发能E以每帧2位(18、30、42或54分贝)编码为「mean_energy」。
线性域的预测增益如下表示
量化固定码本增益如下表示
8.2.3.4.计算重建的激发
下列步骤用于n=0,…,63。通过下式构建总激发:
其中c(n)为经适应性前置滤波器F(z)滤波后的得自固定码本的码向量。激发信号u’(n)用来更新适应性码本内容。然后激发信号u’(n)被进行如下节所述的后处理,以获得在合成滤波器的输入端使用的经后处理的激发信号u(n)。
8.3.激发后处理
8.3.1.概论
下文中,将叙述激发信号后处理,其可在方块989执行。换言之,对于信号合成,激发元素的后处理执行如下。
8.3.2.用于噪声增强的增益平滑化
非线性增益平滑化技术施加至固定码本增益来增强噪声的激发。基于口语节段的稳定及发声,固定码本向量的增益被平滑化以在稳态信号的情况下减少激发能的起伏波动。如此改善稳态背景噪声情况下的性能。发声因子表示为:
λ=0.5(1-rv)
其中
rv=(Ev-Ec)/(Ev+Ec),
其中Ev及Ec分别为定标音高码向量及定标革新码向量的能量(rv给定信号周期性的测量值)。注意,由于rv值介于-1至1间,故λ值介于0至1。注意,因子λ与非发声量有关,纯粹发声节段具有0值,而纯粹非发声节段具有1值。
稳定因子θ基于两相邻LP滤波器间的距离测量值计算。此处,因子θ与ISF距离测量值有关。ISF距离测量值表示为
其中fi为现在帧的ISF,而为过去帧的ISF。稳定因子θ表示为
θ=1.25-ISFdist/400000限于0≤θ≤1
ISF距离测量值在稳定信号情况下较小。由于θ值与ISF距离测量值逆相关,于是较大的θ值对应于较稳定的信号。增益平滑化因子Sm由下式给出:
Sm=λθ
对非发声且稳定信号,Sm值趋近于1,此乃稳态背景噪声信号情况。对纯发声信号或对不稳定信号,Sm值趋近于0。初修正增益g0通过比较固定码本增益与由得自前一个子帧的初修正增益g-1所给定的临界值来计算。若大于或等于g-1,则g0通过将减量1.5分贝,但限于g0≦g-1来计算。若小于g-1,则g0通过将增量1.5分贝,但限于g0≦g-1来计算。
最后,增益以平滑化增益值更新为如下:
8.3.3.音高增强器
音高增强器方案通过利用原创滤波器滤波该固定码本激发来修正总激发u’(n),该原创滤波器的频率响应强调较高的频率,并减低原创码向量的低频部分的能量,及其系数与信号的周期性有关。使用下述形式的滤波器
Finno(z)=cpez+1-cpez-1
其中cpe=0.125(1+rv),而rv为如前述以rv=(Ev-Ec)/(Ev+Ec)给定的周期性因子。已滤波的固定码本码向量由下式给定
c′(n)=c(n)-cpe(c(n+1)+c(n-1))
而更新的后处理激发由下式给定
通过更新激发989a,u(n)如下而以一个步骤完成前述处理
8.4.合成与后处理
下文中,将叙述合成滤波991及后处理992。
8.4.1.概论
LP合成通过LP合成滤波器滤波后处理的激发信号989a,u(n)进行。LP合成滤波子帧内的重建信号所使用的每个子帧的内插LP滤波器以下式给定
n=0,...,63
然后,合成信号通过滤波器1/(1-0.68z-1)(在编码器输入端施加的前置强调滤波器的倒数)滤波而解除强调。
8.4.2.合成信号的后处理
LP合成后,重建信号使用低频音高增强来后处理。使用二频带分解,及适应性滤波只施加至较低频带。如此导致总后处理,其主要靶定在靠近合成的语音信号的第一谐波的频率。
信号在二分支被处理。在较高分支,解码信号由高通滤波器滤波来产生较高频带信号sH。在较低分支,解码信号首先通过适应性音高增强器处理,及然后通过低通滤波器滤波来获得较低频带后处理信号sLEF。将较低频带后处理信号与较高频带信号相加获得后处理的解码信号。音高增强器的目的在于减低解码信号的谐波间噪声,这里由时变线性滤波器以传递函数达成
且由下式描述:
其中α为控制谐波间衰减的系数,T为输入信号的音高周期,而sLE(n)为音高增强器的输出信号。参数T及α随时间而异,且由音高追踪模块给定。在α值等于0.5的情况下,在频率1/(2T)、3/(2T)、5/(2T)等,亦即于谐波频率1/T、3/T、5/T等间的中点,滤波器的增益恰为0。当α趋近于0时,由滤波器所产生的谐波间的衰减减少。
为了将后处理局限于低频区,增强信号sLE经低通滤波来产生信号sLEF,其添加至经高通滤波的信号sH来获得经后处理的合成信号sE。
使用相当于前述的替代处理,免除高通滤波的需求。此由将z域的后处理信号sE(n)表示如下而达成
其中PLT(z)为长期预测器滤波器的传递函数,由下式给定PLT(z)=1-0.5zT-0.5z-T
及HLP(z)为低通滤波器的传递函数。
如此,后处理相当于自合成信号中扣除已定标经低通滤波的长期误差信号。
T值由各个子帧所接收的死循环音高延迟而给定(分数音高延迟舍入至最近的整数)。执行简单追踪用以检查音高加倍。若在延迟T/2的标准化音高相关性大于0.95,则T/2值用作后处理的新音高延迟。
因子α由下式给定
限于0≤α≤0.5
其中为解码的音高增益。
注意,在TCX模式及频域编码期间,α值设定为零。使用有25系数的线性相位FIR低通滤波器,截止频率在5Fs/256kHz(滤波延迟为12样本)。
8.5.基于MDCT的TCX
下文中,将说明基于MDCT的TCX的细节,其由TXC-LPD分支930的主信号合成940来实施。
8.5.1.工具描述
当位流变量「core_mode」等于1时,其指示编码使用线性预测域参数进行,及当三个TCX模式中之一者或多者被选用作「线性预测域」编码时,亦即mod[]的4数组条目中之一者大于零时,使用基于MDCT的TCX。基于MDCT的TCX自算术解码器941接收量化的频谱系数941a。量化的频谱系数941a(或其反量化版本942a)首先由舒适噪声(噪声填补943)完成。然后施加基于LPC的频域噪声成形945至所得频谱系数943a(或其频谱解成形版本944a),及进行反MDCT变换946来获得时域合成信号946a。
8.5.2.定义
下文中,将提供一些定义。变量「lg」描述由算术解码器输出的量化频谱系数的数目。位流元素「noise_factor」描述噪声电平量化指标。变量「噪声电平」描述注入重建频谱的噪声电平。变量「noise[]」描述所产生的噪声向量。位流元素「global_gain 」描述重新定标增益量化指标。变量「g」描述重新定标的增益。变量「rms」描述合成时域信号x[]的均方根。变量「x[]」描述合成时域信号。
8.5.3.解码处理
基于MDCT的TCX向算术解码器941请求量化频谱系数的数目lg,其由mod[]值测定。此值(lg)还定义将施加于反MDCT的窗长度及形状。反MDCT 946中或之后所施加的窗由三部分组成,亦即L样本的左侧重叠部、M样本的一中部及R样本的右侧重叠部。为了获得长度2*lg的MDCT窗,ZL个零加至左侧,而ZR个零加至右侧。在自或至SHORT_WINDOW转变的情况下,相应重叠区L或R可能须减至128来调整适应SHORT_WINDOW的较短窗类型。结果M区及相应的零区ZL或ZR可能须各自放大64样本。
反MDCT 946期间或反MDCT 946之后可施加的MDCT窗由下式给定
表6示出了频谱系数的数目随mod[]的变化。
由算术解码器941所递送的量化频谱系数quant[]941a或反量化频谱系数942a由舒适噪声(噪声填补943)完成。注入的噪声电平由解码变量noise_factor测定如下:
noise_level=0.0625*(8-noise_factor)
然后,噪声向量noise[]使用随机函数random_sign()来算的,随机递送值-1或+1。
noise[i]=random_sign()*noise_level;
quant[]及noise[]向量经组合而形成重建的频谱系数向量r[]942a,组合方式为quant[]中的一段连续8个零由noise[]分量置换。一段8个非零根据下式检测:
获得重建的频谱943a如下:
频谱解成形944根据下列步骤,选择性地施用至重建频谱943a:
1.对频谱首四分之一的各个8维区块,计算在指标m的8维区块的能量Em
2.计算比Rm=sqrt(Em/EI),此处I为具有全部Em中的最大值的区块指标
3.若Rm<0.1,则设定Rm=0.1
4.若Rm<Rm-1,则设定Rm=Rm-1
属于频谱首四分之一的各个8维区块然后乘以因子Rm。据此,获得频谱解成形频谱系数944a。
在施加反MDCT 946之前,与MDCT区块两极端(亦即左及右折叠点)相对应的两个量化LPC滤波器LPC1、LPC2(各自以滤波系数a1至a10描述)经获取(方块950),然后求出加权版本,并且计算相应的十进制(64点,无论变换长度如何)频谱951a(方块951)。通过施加ODFT(奇离散傅里叶变换)至LPC滤波器系数950a而求出这些加权LPC频谱951a。计算ODFT前,复合调变施加至LPC系数,使得ODFT频点(用于频谱计算951)与(反MDCT 946的)MDCT频点完美排齐。举例言之,给定LPC滤波器(例如由时域滤波系数a1至a16界定)的加权LPC合成频谱951a计算如下:
其中
其中n=0…lpc_order+1为加权LPC滤波器的(时域)系数,由下式给定:
其中γ1=0.92
增益g[k]952a可根据下式自LPC系数的频谱表示X0[k],951a求出:
其中M=64为其中施用算得的增益的频带数目。
假设g1[k]及g2[k],k=0,…,63分别为与如上述所述所算出的左及右折叠点相对应的十进制LPC频谱。反FDNS运算945包含使用递归滤波器滤波重建频谱r[i],944a:
rr[i]=a[i]·r[i]+b[i]·rr[i-1],i=0...1g,
其中,a[i]及b[i],945b使用下式而自左及右增益g1[k]和g2[k],952a导算出:
a[i]=2·g 1[k]·g2[k]/(g1[k]+g2[k]),
b[i]=(g2[k]-g1[k])/(g1[k]+g2[k]).
前文中,变量k等于i/(lg/64),以考虑LPC频谱为十进制的事实。
重建的频谱rr[],945a被馈至反MDCT 946。非开窗输出信号x[],946a通过由解码「global_gain」指数的反量化获得的增益g重新定标:
其中,rms被计算为:
重新定标的合成的时域信号940a于是等于:
xw[i]=x[i]·g
重新定标后,例如在方块978中应用开窗及重叠加法。
然后,重建的TCX合成x(n)938可选地通过预强调滤波器(1-0.68z-1)滤波。然后,所得预强调的合成由分析滤波器滤波,以获得激发信号。算出的激发更新ACELP适应性码本,并允许在随后帧中自TCX切换至ACELP。最后,通过应用滤波器1/(1-0.68z-1)解除预强调合成的强调来重建信号。注意,分析滤波系数以子帧基准内插。
也须注意,TCX合成长度由TCX帧长度(无重叠)给定:对1、2或3的mod[]分别为256、512或1024样本。
8.6正向混迭抵消(FAC)工具
8.6.1正向混迭抵消工具描述
后文,将描述在ACELP与变换编码(TC)(以频域模式或以TCX-LPD模式)间的转变期间执行的正向混迭抵消(FAC)运算来获得最终合成信号。FAC的目的在于抵消由TC引入的且无法由前一或后一ACELP帧抵消的时域混迭。此处,注意,TC的概念包括遍及长区块和短区块(频域模式)的MDCT以及基于MDCT的TCX(TCX-LPC模式)。
图10表示不同的中间信号,其被计算以获得用于TC帧的最终合成信号。在所示实例中,TC帧(例如,以频域模式或以TCX-LPD模式编码的帧1020)在其之前及之后都接有一ACELP帧(帧1010及1030)。其它情况下(ACELP帧接续多于一个TC帧,或多于一个TC帧接续一个ACELP帧),只计算所需信号。
现在参考图10,将提供关于正向混迭抵消的综论,其中须注意,将由方块960、961、962、963、964、965及970执行正向混迭抵消。
在图10示出的正向混迭抵消解码运算的曲线表示中,横坐标1040a、1040b、1040c、1040d描述音频样本方面的时间。纵坐标1042a描述例如振幅方面的正向混迭抵消合成信号。纵坐标1042b描述表示编码音频内容的信号,例如ACELP合成信号及变换编码帧输出信号。纵坐标1042c描述ACELP对正向混迭抵消的贡献,诸如开窗ACELP零脉冲响应及开窗且折叠ACELP合成。纵坐标1042d描述原始域中的合成信号。
如图可知,正向混迭抵消合成信号1050在自以ACELP模式编码的音频帧1010至以TCX-LPD模式编码的音频帧1020的转变时提供。正向混迭抵消合成信号1050通过施加合成滤波964及由IV型反DCT 963所提供的混迭抵消刺激信号963a来提供。合成滤波964基于合成滤波系数965a,其自线性预测域参数的集合LPC1或LPC滤波器系数导算出。如自图10可知,(第一)正向混迭抵消合成信号1050的第一部分1050a可为通过对非零混迭抵消刺激信号963a进行合成滤波964提供的非零输入响应。然而,正向混迭抵消合成信号1050还包含零输入响应部分1050b,其可通过对混迭抵消刺激信号963b的零部分进行合成滤波964所提供。据此,正向混迭抵消合成信号1050可包含非零输入响应部分1050a及零输入响应部分1050b。须注意,正向混迭抵消合成信号1050可优选地基于线性预测域参数的集合LPC1来提供,后者有关帧或子帧1010与帧或子帧1020间的转变。此外,在自帧或子帧1020至帧或子帧1030间的转变处,提供另一个正向混迭抵消合成信号1054。正向混迭抵消合成信号1054可通过混迭抵消刺激信号963a的合成滤波964来提供,而后者由反DCT IV963基于混迭抵消系数提供。须注意,正向混迭抵消合成信号1054可基于线性预测域参数的集合LPC2来提供,后者与帧或子帧1020至随后的帧或子帧1030间的转变相关联。
此外,在自ACELP帧或子帧1010至TCX-LPD帧或子帧1020的转变处,提供额外混迭抵消合成信号1060、1062。举例言之,ACELP合成信号986、1056的开窗及折叠版本973a、1060例如可由方块971、972、973提供。此外,开窗ACELP零输入响应976a、1062将例如由方块975、976提供。例如,开窗且折叠ACELP合成信号973a、1060可通过对ACELP合成信号986、1056开窗及通过施加开窗结果的时间折叠973来获得,容后详述。开窗ACELP零输入响应976a、1062可通过提供零输入至合成滤波器975获得,合成滤波器975等于合成滤波器991,其用来提供ACELP合成信号986、1056,其中该合成滤波器975的初态等于帧或子帧1010的ACELP合成信号986、1056的提供结束时合成滤波器981的状态。如此,开窗且折叠的ACELP合成信号1060可相当于正向混迭抵消合成信号973a,及开窗ACELP零输入响应1062可相当于正向混迭抵消合成信号976a。
最后,变换编码帧输出信号1050a,当与正向混迭抵消合成信号1052、1054及额外ACELP贡献1060、1062组合时可等于时域表示型态940a的开窗版本以进行混迭抵消。
8.6.2.定义
后文中,将提供一些定义。位流元素「fac_gain」描述7-位增益指数。位流元素「nb[i]」描述码本号码。语法元素「FAC[i]」描述正向混迭抵消数据。变量「fac_length」描述正向混迭抵消变换的长度,其对于自自及至「EIGHT_SHORT_SEQUENCES」型窗的转变可等于64,否则等于128。变量「use_gain 」指示外在增益信息的使用。
8.6.3.解码处理
后文中,将描述解码处理。为了此目的,将简短综述不同步骤。
1.解码AVQ参数(方块960)
-FAC信息使用与用于LPC滤波器编码相同的代数向量量化(AVQ)工具进行编码(参考章节8.1)。
-对i=0,…,FAC变换长度:
○码本号码nq[i]是使用修正一元码编码的
○相应FAC数据FAC[i]是使用4*nq[i]位编码的
-因此,对于i=0,…fac_length的向量FAC[i]提取自位流
2.施加增益因子g至FAC数据(方块961)
-对于关于基于MDCT的TCX(wLPT)的转变,使用相应的「fcx_coding」元素的增益
-对于其它转变,从该位流(使用7-位定标器量化器编码)重新取得增益信息「fac_gain」。增益g使用该增益信息计算为g=10fac_gain/28。
3.在基于MDCT的TCX与ACELP间的转变的情况下,频谱解成形962施加至FAC频谱数据961a的第一四分之一。解成形增益是对相应的基于MDCT的TCX(为了由频谱解成形944使用)计算的那些,如在章节8.5.3中说明的,使得FAC及基于MDCT的TCX的量化具有相同形状。
4.计算增益定标FAC数据的反DCT-IV(方块963)。
-FAC变换长度fac_length默认等于128
-对于短方块的转变,此长度减至64。
5.应用加权合成滤波器\/W(z)(例如,由合成滤波系数965a描述)(方块964),以获得FAC合成信号964a。所得信号表示在图10的行(a)。
-加权合成滤波器基于LPC滤波器,其与折叠点相对应[图10中,标示为用于自ACELP至TCX-LPD的转变的LPC1,及自wLPD TC(TCX-LPD)至ACELP的转变的LPC2,及自FD TC(频码变换编码)至ACELP的转变的LPC0]。
-对于ACELP运算,使用相同的LPC加权因子:
(ζ)=Α(ζ/γι),其中γ,=0.92,
-为了计算FAC合成信号964a,加权合成滤波器964的初始存储被设定为0
-对于自ACELP的转变,FAC合成信号1050通过附接加权合成滤波器(128样本)的零输入响应(ZIR)1050b来进一步扩展。
6.在自ACELP转变的情况下,计算开窗的过去ACELP合成972a,折叠其(例如以获得信号973a或信号1060),并且将其添加至开窗的ZIR信号(例如信号976a或信号1062)。ZIR响应使用LPC1来计算。施加至fac_length过去ACELP合成样本的窗为:
sine[n+fac_length]*sine[fac_length-l-n],n=-facjength...-1,
及施加至ZIR的窗为:
l-sine[n+fac_length]2,n=0...fac_length-1
此处sine[n]为正弦周期的四分之一:
sine[n]=sin(n*7t/(2*facjength)),n=0...2*facjength-l
所得信号表示在图10的行(c),并被标示为ACELP贡献(信号贡献1060、1062)。
7.将FAC合成964a、1050(及在自ACELP转变的情况下,ACELP贡献973a、976a、1060、1062)添加至TC帧(表示为图10的行(b))(或添加至时域表示型态940a的开窗版本),以获得合成信号998(表示为图10的行(d))。
8.7.正向混迭抵消(FAC)编码处理
后文中,将叙述有关正向混迭抵消所需信息的编码的一些细节。具体地,将说明混迭抵消系数936的计算及编码。
图11示出了当以变换编码(TC)编码的帧1120在前而以ACELP模式编码的帧1110、1130在后时,在编码器的处理步骤。此处,TC的概念包括如同AAC中遍及长区块及短区块的MDCT,及基于MDCT的TCX(TCX-LPD)。图11示出了时域标记1140及帧边界1142、1144。垂直虚线示出了以TC编码的帧1120的起点1142及终点1144。LPC1及LPC2指示分析窗的中心,以计算两个LPC滤波器:在以TC编码的帧1120的起点计算LPC1,而在同一帧1120的终点1144计算LPC2。「LPC1」标记左侧的帧1110被假设为以ACELP模式编码。「LPC2」标记右侧的帧1130也被假设为以ACELP模式编码。
图11中共有4行1150、11601170、1180。各行表示计算编码器处的FAC目标的步骤。应当理解,各行的时间上与上一行对齐。
图11的行1(1150)表示原始音频信号,如前述以帧1110、1120、1130分段。中间帧1120被假定使用FDNS以MDCT域编码,并且将被称作TC帧。前一帧1110中的信号被假定为已经以ACELP模式编码。该编码模式顺序(ACELP,然后TC,然后ACELP)被选择为示出了FAC的全部处理,原因在于FAC有关两项转变(ACELP至TC,及TC至ACELP)。
图11的行2(1160)与各帧中的解码(合成)信号(可由编码器通过使用解码算法的知识来判定)相对应。自TC帧起点延伸至终点的上曲线1162示出了开窗效应(中间平坦,但于起点及终点则否)。在该段的起点及终点的下部曲线1164、1166则示出了折叠效应(段的起点带有「-」符号,而段的终点带有「+」符号)。然后可使用FAC来校正这些效应。
图11的行3(1170)表示用在TC帧起点来减少FAC编码负担的ACELP贡献。该ACELP贡献由二部分形成:1)自前一帧终点的开窗并折叠的ACELP合成877f、1170,及2)LPC1滤波器的开窗零输入响应877j、1172。
此处,须注意,开窗并折叠的ACELP合成1110相当于开窗并折叠的ACELP合成1060,及开窗的零输入响应1172相当于开窗的ACELP零输入响应1062。换言之,音频信号编码器可估算(或计算)合成结果1162、1164、1166、1170、1172,其将于音频信号解码器侧获得(方块869a及877)。
然后,通过仅自行1(1150)减去行2(1160)及行3(1170)获得在行4(1180)示出的ACELP误差(方块870)。时域的误差信号871、1182的预期包络的近似视图在图11的行4(1180)示出。ACELP帧的误差(1120)预计在时域振幅接近平坦。然后TC帧的误差(标记LPC1与LPC2间)预计呈现出如图11中的行4(1180)的此段1182所示出的一般形状(时域包络)。
为了有效补偿于图10行4的TC帧起点及终点的开窗及时域混迭效应,及假设TC帧使用FDNS,根据图11施加FAC。须注意,图11描述了对TC帧的左部分(自ACELP转变至TC)及右部分(自TC转变至ACELP)的该处理。
综述,由编码混迭抵消系数856、936所表示的变换编码帧误差信号871、1182通过自原始域(即,时域)中的信号1152减去变换编码帧输出信号1162、1164、1166(例如以信号869b描述)及ACELP贡献1170、1172(例如由信号872描述)二者获得。据此,获得变换编码帧误差信号1182。
后文中,将叙述变换编码帧误差信号871、1182的编码。
首先,自LPC1滤波器算出加权滤波器874、1210、W1(z)。在图11的行4(1180)的TC帧1120起点的误差信号871、1182(也称作图11及图12的FAC目标)通过W1(z)滤波,W1(z)具有图11行4的ACELP帧1120中的ACELP误差871、1182作为初态或滤波内存。然后在图12的顶部的滤波器874、1210、W1(z)的输出信号形成DCT-IV变换875、1220的输入信号。然后得自DCT-IV 875、1220的变换系数875a、1222使用AVQ工具876(以Q,1230表示)量化及编码。此种AVQ工具与用以量化LPC系数的工具相同。这些编码的系数被传输至解码器。然后AVQ1230的输出作为反DCT-IV 963、1240的输入,以形成时域信号963a、1242。然后,此时域信号通过具有零存储(零初态)的反相滤波器964、1250、1/W1(z)滤波。通过1/W1(z)的滤波延伸超过使用用于延伸超过FAC目标的样本的零输入的FAC目标长度。滤波器1250、1/W1(z)的输出信号964a、1252为FAC合成信号,其为现在可施加于TC帧起点来补偿开窗及时域混迭效应的校正信号(例如信号964a)。
现在,转向用于在TC帧的终点进行开窗及时域混迭校正的处理我们考虑图12的底部。图11的行4的TC帧1120终点的误差信号871、1182b(FAC目标)通过滤波器874、1210、W2(z)滤波,W2(z)具有图11行4的TC帧1120中的误差作为初态或滤波内存。然后全部进一步处理步骤与处理TC帧起点的FAC目标的图12的上部分相同,但FAC合成中的ZIR扩展除外。
注意,当施加于编码器(来获得局部FAC合成)时,完整地执行图12的处理(自左至右),而在解码器侧,图12的处理仅从所接收的解码的DCT-IV系数开始施加。
9.位流
后文中,将叙述有关位流的一些细节来协助理解本发明。此处,须注意,大量的配置信息可包含在该位流中。
然而,基于频域模式编码的帧的音频内容主要由称作「fd_channel_stream()」的位流元素表示。此位流元素「fd_channel_stream()」包含全局增益信息「global_gain」、编码的定标因子数据「scale_factor_data()」及算术编码的频谱数据「ac_spectral_data」。此外,若(且只有当)前一帧(在一些实施例也标示为「超帧」)已经以线性预测域模式编码,而前一帧的最末子帧已经以ACELP模式编码,位流元素「fd_channel_stream()」选择性地包括包含增益信息的正向混迭抵消数据(也标示为「fac_data(1)」)。换言之,若前一帧或子帧以ACELP模式编码,则包含增益信息的正向混迭抵消数据被选择性地提供以用于频域模式音频帧。这是有利的,原因在于通过TCX-LPD模式编码的前一音频帧或音频子帧与以频域模式编码的当前音频帧间的仅仅重叠及相加功能,即可执行混迭抵消,如上述已经说明的。
有关其细节,将参考图14,示出了位流元素「fd_channel_stream()」的语法表示,该位流元素包含全局增益信息「global_gain」、定标因子数据「scale_factor_data()」及算术编码的频谱数据「ac_spectral_data()」。变量「core_mode_last 」描述最末核心模式,及对基于定标因子的频域编码具有0值,及对基于线性预测域参数(TCX-LPD或ACELP)的编码具有1值。变量「last_lpd_mode」描述最末帧或子帧的LPD模式,并对ACELP模式编码的编码的帧或子帧具有零值。
现在参考图15,将对编码以线性预测域模式编码的音频帧(也标示为「超帧」)的信息的位流元素「lpd_channel_stream()」的语法进行描述。以线性预测域模式编码的音频帧(「超帧」)可包含多个子帧(有时也标示为「帧」,例如与术语「超帧」组合时)。子帧(或「帧」)可具有不同类型,使得一些子帧可以TCX-LPD模式编码,而其它子帧可以ACELP模式编码。
位流变量「acelp_core_mode」描述了使用ACELP的情况下位分配方案。位流元素「lpd_mode 」已经在上述进行了描述。变量「first_tcx_flag」在以LPD模式编码的各个帧的起点处设定为真。变量「first_lpd_flag」为指示当前帧或超帧是否为以线性预测域编码的帧或超帧序列中的第一者的标记。变量「last_lpd」被更新以描述最末子帧(或帧)的编码模式(ACELP;TCX256;TCX512;TCX1024)。在参考标号1510可知,若最末子帧以ACELP模式编码(last_lpd_mode==0),则对以TCX-LPD模式编码的子帧(mod[k]>0)包括不含增益信息的正向混迭抵消数据(「fac_data(0)」);若前一子帧以TCX-LPD模式编码(last_lpd_mode>0),则对以ACELP模式编码的一子帧(mod[k]==0)包括不含增益信息的正向混迭抵消数据(「fac_data(0)」)。
与之相比,若前一帧以频域模式编码(core_mode_last=0),及当前帧的第一子帧以ACELP模式编码(mod[0]==0),则包括增益信息的正向混迭抵消数据(「fac_data(1)」)包含于位流元素「lpd_channel_stream」中。
综述,若在以频域模式编码的帧与以ACELP模式编码的帧或子帧间直接转变,则包括专用正向混迭抵消增益值的正向混迭抵消数据包含在该位流中。相反地,若在以TCX-LPD模式编码的帧或子帧与以ACELP模式编码的帧或子帧间转变,则不含专用正向混迭抵消增益值的正向混迭抵消信息包含在该位流中。
现在参考图16,将说明由位流元素「fac_data()」描述的正向混迭抵消数据的语法。参数「useGain」指示是否有专用正向混迭抵消增益值位流元素「fac_gain」,如参考标号1610所示。此外,位流元素「fac_data」包含多个码本号码位流元素「nq[i]」及「fac_data」位流元素的数目「fac[i]」。
以上已经描述该码本号码及该正向混迭抵消数据的解码。
10.实施替代例
尽管在装置的背景下描述了一些方面,但显然地,这些方面还表示相应方法的描述,其中一块或一装置对应于与一方法步骤或一方法步骤的一特征。同理,在方法步骤的背景下所描述的方面也表示相应装置的相应块或项目或特征的描述。部分或全部方法步骤可由(或使用)硬件装置(例如微处理器、可编程计算机或电子电路)执行。在一些实施例中,最重要方法步骤中的某一个或多个可由这种装置执行。
本发明的编码音频信号可存储于数字存储介质或可通过诸如无线传输介质或有线传输介质的传输介质(诸如因特网)来传输。
根据一些实施要求,本发明的实施例可以硬件或软件实施。可使用其上存储有电子可读控制信号的数字存储介质(例如软盘、DVD、蓝光光盘、CD、ROM、PROM、EPROM、EEPROM或闪存)来执行实施,这些电子可读控制信号与可编程计算机系统协合(或能够协作),而执行各个方法。因此,数字存储介质可为计算机可读式。
根据本发明的一些实施例包含具有电子可读控制信号的数据载体,该电子可读控制信号能够与可编程计算机系统协作,而执行本文中所述方法中之一者。
一般而言,本发明的实施例可实施为具有程序代码的计算机程序产品,该程序代码可用于在该计算机程序产品于计算机上运行时执行这些方法中之一者。程序代码例如可存储于机器可读载体上。
其它实施例包含用以执行本文所述方法中之一者并且存储在机器可读载体上的计算机程序。
换言之,因而,本发明方法的实施例为一种具有程序代码的计算机程序,当该计算机程序产品于计算机上运行时执行本文所述方法中之一者。
因而,本发明方法的又一实施例为一种数据载体(或数字存储介质,或计算机可读介质)包含记录在其上用以执行本文所述方法中之一者的计算机程序。该数据载体或数字存储介质或记录介质典型地为实体的和/或非瞬时的。
因此,本发明方法的又一实施例为一种数据流或信号序列,用于表示用以执行本文中所述方法中之一者的计算机程序。该数据流或信号序列例如可被配置为通过数据通信连接,例如通过因特网传输。
又一实施例包含一种处理装置,例如计算机或可编程逻辑装置,其被配置为或被用于执行本文所述方法中之一者。
又一实施例包含一种计算机,所述计算机上安装有用以执行本文所述方法中之一者的计算机程序。
根据本发明的又一实施例包括一种装置或系统,其被配置为将用以执行本文中所述方法中之一者的计算机程序(例如电子方式或光学方式)传输至接收器。接收器例如可以为计算机、移动装置、存储器装置等。该装置或系统例如可包含一种用以将该计算机程序传输至接收器的文件服务器。
在一些实施例中,可编程逻辑装置(例如,现场可编程门阵列)可用来执行本文中所述方法的部分或全部功能。在一些实施例中,现场可编程门阵列可与微处理器协作来执行本文所述方法之一。一般,这些方法优选由任意硬件装置执行。
前述实施例仅仅用于说明本发明的原理。须理解,本文所描述的配置及细节的修正及变化对于本领域技术人员来说是显而易见的。因此,意旨本发明只由所附的专利权利要求的范围来限定,而不受通过对本文中实施例的描述及解释所呈现的特定细节限定。
11.结论
后文中,将综述用于统一语音及音频编码(USAC)开窗及帧转变的统一的本提案。
首先,将给出引言及一些背景信息的描述。USAC参考模型的目前设计(也标示为参考设计)由(或包含)三个不同编码模块组成。对于各个给定音频信号部分(例如一帧或子帧),选用一个编码模块(或编码模式)来编码/解码该部分,结果获得不同的编码模式。因此,当这些模块轮流处于使用中时,需要特别注意从一个模式至另一模式的转变。过去已经提出对用于解决编码模式间的转变的修正的各种贡献。
根据本发明的实施例提供了一种设想全面的开窗及转变方案。将描述完成本方案的进程上的进展,示出了用于质量及系统结构改良的极具前途的证据。
本文总结了所提出的对参考设计(也标示为工作草案4设计)的改变以创建用于USAC的更灵活的编码结构,从而减少过度编码并且降低编解码器的变换编码区段的复杂性。
为了实现能够避免昂贵的非临界取样(过度编码)的开窗方案,引入两个元素,其在一些实施例中其可视为必需的:
1)正向混迭抵消(FAC)窗;及
2)频域噪声成形(FDNS),用于LPD核心编解码器的变换编码分支(TCX,亦称TCX-LPD或wLPT)。
两项技术的组合使其可能采用一开窗方案,其允许以最低位需求获得变换长度的高灵活性切换。
后文中,将叙述参考系统的挑战以协助理解根据本发明的实施例所提供的优点。根据USAC草案标准的工作草案4的参考构想由(或包含)MPEG环绕所组成的预处理/后处理阶段结合工作的一切换核心编解码器及一增强的SBR模块组成。切换核心的特征结构包含一频域(FD)编解码器及一线性预测域(LPD)编解码器。后者采用一ACELP模块及一于加权域工作的变换编码器(「加权线性预测变换」(wLPT)亦称变换编码激发(TCX))。发现,由于基本上不同的编码原理,模式间的转变对处理是特别复杂的。业已发现,须审慎注意各模式间的有效交混。
后文将叙述自时域转变至频域所产生的挑战。业已发现,自时域编码至变换域编码的转变是错综复杂的,具体地是因为变换编码器是基于MDCT中的邻近区块的变换域混迭抵消(TDAC)性质的。业已发现,一频域编码区块在未使用来自其相邻重叠区块的额外信息的情况下是不能整体解码的。
后文将叙述出现在从信号域至线性预测域 转变处的挑战。业已发现,至及自线性预测域的转变暗示不同量化噪声成形范例模式的转变。业已发现,这些范例模式利用不同方式来传递及施加心理声学激励噪声成形信息,其可能在编码模式改变位置处造成听觉质量的不连续性。
后文将叙述有关根据USAC草案标准的工作草案4的参考构想的帧转变矩阵的细节。由于参照USAC参考模型的混合本质,存在大量的可设想的窗转变。图4的3x3表示出了根据USAC草案标准的工作草案4的构想当前实施的这些转变的概述。
前文列举的贡献各自解决图4的表中所示出的转变中的一个或多个。值得注意,非齐次转变(不在主对角线)各自应用不同的特定处理步骤,其是试图实现临界取样、避免分块效应、找出共享开窗方案,与允许编码器死循环模式判定间折衷的结果。一些情况下,此项折衷是以丢弃编码的传输样本为代价的。
后文中,将叙述一些提出的系统的变化。换言之,将叙述根据USAC工作草案4的参考构想的改良。为了解决所列举的窗转变的困难,根据本发明的实施例与根据USAC草案标准的工作草案4的参考构想比较,引入了对现有系统的两项修正。第一项修正旨在通过采用补充正向混迭抵消窗来普遍地改善从时域至频域的转变。第二项修正通过引入LPC系数的变形步骤而融合有信号域及线性预测域的处理,其然后可应用于频域中。
后文中,将叙述频域噪声成形(FDNS)的构想,其允许LPC应用于频域。此工具(FDNS)的目标在于允许于不同域工作的MDCT编码器的TDAC处理。虽然USAC频域部分的MDCT于信号域工作,但参考构想的wLPT(或TCX)于加权滤波域工作。通过频域中的等价处理步骤将用于参考构想的加权LPC合成滤波器替换,两个变换编码器的MDCT可于同一域工作,可实现TDAC而未在量化噪声成形中引入不连续性。
换言之,加权LPC合成滤波器330g可由定标/频域噪声成形380e与LPC至频域变换380i的组合替代。如此,频域路径的MDCT 320g及TCX-LPD分支的MDCT 380h于相同域工作,因而实现变换域混迭抵消(TDAC)。
后文中,将叙述有关正向混迭抵消窗(FAC窗)的若干细节。已经介绍和说明正向混迭抵消窗(FAC窗)。该补充窗补偿遗漏的TDAC信息,其在连续进行变换代码中通常由后一窗或前一窗贡献。因ACELP时域编码器表现出与相邻帧无重叠,故FAC可补偿此种遗漏重叠的缺失。
已经发现,通过在频域中施用LPC滤波器,LPC编码路径释放出了ACELP与wLPT(TCX-LPD)编码段间的内插LPC滤波的一些平滑化影响。但业已发现,因FAC被设计为恰在此位置实现有利的转变,故也可补偿此影响。
由于导入FAC窗及FDNS,可实现全部可能的转变而无任何固有的过度编码。
后文中,将叙述有关开窗方案的若干细节。
已经描述了FAC窗如何融合ACELP与wLPT间的转变。有关进一步细节,请参考下列文献:ISO/IEC JTC1/SC29/WG11,MPEG2009/M16688,2009年6-7月,英国伦敦,「用于USAC开窗的替代物」。
因FDNS将wLPT移位至信号域,故FAC窗现在可以完全相同的方式(或至少以类似方式)施加至二者:自/至ACELP转变至/自wLPT及亦自/至ACELP转变至/自FD模式。
类似,先前在FD窗间或在wLPT窗间(亦即自/至FD转变至/自FD;或自/至wLPT转变至/自wLPT)可能被排外的基于TDAC的变换编码器转变,现在也可在自频域至wLPT的跨界使施用,反之亦然。如此,组合两项技术允许ACELP成帧栅格64样本朝右(朝向时间轴的「后期」)移位。由此,不再需要一端上的64样本重叠相加及另一端的额外长频域变换窗。两种情况下,与参考构想相比,根据本发明的实施例中可避免64样本的过度编码。最重要地,全部其它转变维持原状而不需要进一步修正。
下文将简要地讨论新帧转变矩阵。新帧转变矩阵的实例提供于图5中。主对角线上的转变仍维持USAC草案标准的工作草案4。全部其它转变可由信号域中的FAC窗或直捷TDAC处理。在一些实施例中,对于上述方案需要相邻变换域窗间的仅两个重叠长度,亦即1024样本及128样本,但其它重叠长度也是可想象的。
12.主观评估
须注意,已经进行两次收听测试来示出了于实施的目前状态,所提出的新技术不会有损质量。最后,因在先前丢弃样本位置处位的节省,使得预计根据本发明的实施例可提供更高的质量。至于另一项副效应,于编码器的分类器控制可更加具有灵活性,原因在于模式转变不再苦恼于非临界取样。
13.额外注释
综上所述,与在USAC标准草草案的工作草案4中使用的现有方案相比,本说明书叙述了用于具有若干个优点的USAC的设想开窗及转变方案。所提出的开窗及转变方案维持全部变换编码帧中的临界取样,避免两项变换的无力需要,及妥善排齐全部变换编码帧。该提议基于两个新工具。第一工具亦即正向混迭抵消(FAC)记载于参考文献[M16688]中。第二工具亦即频域噪声成形(FDNS)允许在相同的域处理频域帧及wLPT帧,而不会在量化噪声成形中引入不连续性。如此,USAC中的全部模式转变可以这二基本工具来进行,允许全部变换编码模式的统一开窗。本说明书中还提供了主观测试结果,显示出,与根据USAC草案标准的工作草案4的参考构想相比,所提出的工具提供相等的或更佳的质量。
参考文献:[M16688]ISO/IEC JTC1/SC29/WG11,MPEG2009/M 16688,June-July 2009,London,United Kingdom,"Alternativesfor windowing in USAC"。