产生数据流的设备和方法和读取数据流的设备和方法技术

技术编号:3423460 阅读:152 留言:0更新日期:2012-04-11 18:40
熵编码器包括一个产生包括两个基准点的可变长度码字数据流的设备(10),这个设备包括一个将一个码字的至少一部分沿一个第一写方向从一个第一基准点开始写入数据流的第一装置(16)和一个将一个码字的至少一部分沿一个与第一写方向相反的第二写方向从另一个基准点开始写入数据流的第二装置(18)。具体地说,在用一个具有多个段的格栅将可变长度码字写入数据流时,在最佳情况下,可以在栅格点开始写入的码字的数目可以加倍,从而使可变长度码字数据流对于序列性差错的传播是鲁棒的。(*该技术在2020年保护过期,可自由使用*)

【技术实现步骤摘要】

本专利技术与用可变长度码字进行编码的技术有关,具体地说,本专利技术涉及产生和读取对在传输中出现的差错不敏感即鲁棒(robust)的用可变长度码字编码的数据流。
技术介绍
现代的例如遵从MPEG层3标准的音频编码或解码方法可以将音频信号的数据率压缩到例如1/12(即压缩因子为12),而不会使音频信号的质量有明显的下降。为了实现这样高的数据率的压缩,通过对音频信号采样得到一个离散时间样点序列。如在该
所知的那样,这个离散时间样点序列经窗处理后,得到一系列经窗处理的时间样点块。一个在时间上加窗的样点块用滤波器组、变型离散余弦变换(MDCT)或其他适当的措施变换到频域,得到一些频谱值,这些频谱值作为一个整体就是这个离散时间样点块确定的这段时间的音频信号的频域表示。通常,以50%的交叠产生时间块,通过MDCT变换到频域,由于MDCT的特性,例如1024个离散时间样点总是产生1024个频谱值。众所周知,人耳的感觉取决于音频信号本身的瞬时频谱。这个关系遵从所谓的心理声学模型,用这个模型可以为一段时间计算出一些取决于瞬时频谱的遮蔽门限。遮蔽意味着一个特定的音或频谱分量在例如一个相邻的频谱范围具有比较高的能量的情况下会受到掩盖。为了尽可能尽可能精确地量化变换后得得出的频谱值,可以利用遮蔽这个现实。目的是一方面避免再解码得到的音频信号内有听得到的干扰,另一方面也可以在这种情况下用尽可能少的比特来编码或量化音频信号。所希望的是,量化引入的干扰,即量化噪声,低于遮蔽门限,从而成为听不见的。按照已知的方法,将这些频谱值分成一些所谓的比例因子频带(scale factor band),这些频带应该相应于人耳的临界频带,即频率组。在一个比例因子组内的各个频谱值乘以一个比例因子,执行对一个比例因子频带的各个频谱值整体定标。然后对用比例因子定标的这些比例因子频带进行量化,产生量化的频谱值。当然,分成比例因子频带并不是关键性的。然而,它用于MPEG层3标准或MPEG 2 AAC(高级音频编码)标准。数据压缩的一个非常重要的方面是对量化后的频谱值进行熵编码。熵编码通常用霍夫曼(Huffman)编码。霍夫曼编码是一种可变长度编码,也就是说,一个需编码的值的码字长度取决于这个值的出现概率。在逻辑上,霍夫曼编码对最可几的字符赋予最短的码,即最短的码字,从而可以实现很好的冗余度压缩。一个普遍所知的用普通长度编码的例子是莫尔斯(Morse)码。在音频编码领域,用霍夫曼码对量化的频谱值编码。一种现代的例如按照MPEG 2 AAC标准工作的音频编码器用不同的霍夫曼码表对这些量化的频谱值编码,这些霍夫曼码表由一定的准则分配给频谱各段。在这个过程中,2个或4个频谱值总是一起编码成一个码字。遵从MPEG 2 AAC的方法与遵从MPEG层3的方法之间的一个差别是将不同的比例因子频带,即不同的频谱值,组合成任何个数的频谱段。采用AAC,一个频谱段包括至少四个频谱值,最好是四个以上的频谱值。因此,这些频谱值的整个频率范围分割成一些相邻的段,一段表示一个频带,而所有的段一起覆盖了整个频率范围,它是变换后的这些频谱值的叠加。在MPEG层3方法中,从多个所谓的“霍夫曼表”中将一个可以实现最大的冗余度压缩的表分配给一个段。在AAC方法的比特流中,通常包括1024个频谱值,现在就是这些频谱值按频率递升次序排列的霍夫曼码字。有关在各频率段中所用的表的信息在辅助信息中传送。这种情况如图6所示。图6示出了包括10个霍夫曼码字的比特流的示范性情况。在一个码字总是由一个频谱值形成的情况下,这可以是对10个频谱值编码得到的结果。然而,通常总是将2个或4个频谱值一起编码成一个码字,这样图6就示出了包括20个或40个频谱值的编码比特流的一部分。在各霍夫曼码字包括2个频谱值的情况下,标号为1的码字表示开头两个频谱值,码字1的长度比较短,意味着开头两个频谱值(即两个频率最小的系数)较为经常地出现这。然而,标号为2的码字具有比较长的长度,这意味着在编码音频信号中的第三和第四个频谱系数这样的值较少出现,因此用比较多的比特编码。此外,从图6可见,表示频谱系数5和6、7和8、9和10的编号为3、4、5的码字也较为经常地出现,因为这些码字的长度也比较短。对于编号为6至10的这些码字同样也可以作这样的分析。如已经提到的那样,从图6可以清楚地看到,在考虑比特流由已知的编码设备产生的情况下,这些编码频谱值的霍夫曼码字在这个比特流中按频率线性递增方式排列。霍夫曼码的一个主要缺点是在信道不理想的情况下会出现差错传播。例如,假设图6中的码字2受到了干扰。这很可能也改变了这个错误的码字2的长度,因此使它与正确的长度不同。在图6这个例子中,在码字2由于受到干扰而长度改变的情况下,一个解码器就不再能确定码字3至10(几乎表示整个音频信号)的开始点。这意味着在受到干扰的码字之后的所有其他码字不再能正确地编码,因为不知道这些码字的开始点,而由于这个差错选择了不正确的开始点。作为差错传播问题的一种解决方案,欧洲专利No.0 612 156建议将一部分可变长度的码字排列在一个格栅(raster)内,而将其余的码字分布在剩下的空隙内,因此不需要完全译码或者在传输有错的情况下可以更为容易地发现排列在栅格点上的码字的开始点。确实,这种已知方法通过重排码字对差错传播提供了某些改善措施。对于某些码字,可以占用比特流中的一些固定位置,而剩余的空隙可用于剩下的码字。这并不需要任何额外的比特,但是防止了在有差错的情况下差错在这些重排的码字之间传播。在本申请提交日期后公布的德国专利申请19 747 119.6-31建议不是就将任何码字置在栅格点上,而是将从心理声学看来是重要的码字,即对音频信号有明显影响的那些频谱值的码字,置于栅格点上。诸如由这样的编码器产生的可变长度码字数据流示于图5。如在图6中那样,该数据流也包括10个码字,其中打上了阴影线的是优先码字。第一优先码字安排成在第一格栅点100处开始,第二优先码字安排成在第二格栅点101处开始,第三优先码字安排成在第三格栅点102处开始,第四优先码字安排成在第四格栅点103处开始,而第五优先码字安排成在第五格栅点104处开始。第一段105由栅格点100和101限定。类似,第二段106、第三段107、第四段108和最后段109也相应这样限定。由图5可见,前两段105和106的长度与下两段107和108的不同,还与最后段109的不同。然后,将非优先码字6、7、8、9和10接在这些优先码字之后填满数据流。如图5所示,在这种后发表的方法中,非优先码字相继插入已经写有优先码字的栅格。具体地说,非优先码字6插在优先码字1后。在这段105还剩下的空间内充以接着的非优先码字7,而非优先码字7的剩余部分,即7b,写入下一空闲空间,即写入段107内,紧接优先码字3。对于非优先码字8至10,也是这样处理。图5所示的这种后发表的方法的优点是,优先码字1至5得到保护,不受差错传播影响,因为它们的开始点与栅格点一致,因此是已知的。例如,在优先码字2在传输中受到损害的情况下,用图6所示的现有技术很可能解码器就不能对任何其余的码字3至10正确解码。然而,用图5所示的方法,下一个码字,即优先码字3,在栅格点10本文档来自技高网...

【技术保护点】
一种产生一个包括两个基准点(41-47)的可变长度码字数据流(38)的设备(10),所述设备包括: 一个将一个码字的至少一部分沿一个第一写方向从一个第一基准点开始写入所述数据流的第一装置(16); 一个将一个码字的至少一部分在一个与所述第一写方向相反的第二方向从另一个基准点开始写入所述数据流的第二装置(18)。

【技术特征摘要】
...

【专利技术属性】
技术研发人员:拉尔夫斯皮尔施内德马丁迪茨丹尼尔霍姆雷恩霍尔德贝姆
申请(专利权)人:弗兰霍菲尔运输应用研究公司
类型:发明
国别省市:DE[德国]

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1