使用有来自至少两个数据流的码元及数据流之间的同步化起始码元标识符的源块的前向纠错的制作方法

文档序号:16404050发布日期:2018-12-25 20:18阅读:245来源:国知局
使用有来自至少两个数据流的码元及数据流之间的同步化起始码元标识符的源块的前向纠错的制作方法

本发明一般涉及信息和/或数据的传输、广播和/或储存。更具体地,本发明涉及对将传输、广播和/或储存的数据的前向纠错。根据本发明的一些实施方案涉及前向纠错数据生成器。本发明的一些实施方案涉及前向纠错解码器。一些实施方案涉及用于生成前向纠错数据的方法。另一些实施方案涉及用于解码前向纠错的方法。本发明的一些方面涉及重构具有同步si(码元id)的fec(前向纠错)源块。

背景技术

现在仍然对视频编码技术进行研究,以支持例如提高空间分辨率(例如,uhd,超高清晰度)。另一些研究关注在于减少传输的数和/或最佳化编码效率,对于移动应用尤其如此。在可用的视频编码标准中,h.264/mpeg-4avc标准可能是使用最广泛的,被用于超过10亿台装置。

自从2003年引入了h.264/mpeg-4avc标准,已经成功地对基础标准进行了数次扩展,例如,h.264/avc标准的可伸缩视频编码修订(svc)和多视点视频编码修订(mvc)。

h.264/avc标准的可伸缩视频编码修订(svc)提供了比特流水平的网络友好的可伸缩性,在解码器复杂性方面相对于单层h.264/avc有适度的增加。其支持例如以下功能:在有损传输环境中适度失真的比特率、格式和功率适配,以及将可伸缩品质的svc比特流无损重写成单层h.264/avc比特流。这些功能为传输和储存应用提供了改进。svc已经实现了在编码效率方面的显著改进,相对于之前的视频编码标准的可伸缩性具有升高的可伸缩性支持度。

h.264/avc标准的多视点视频编码修订(mvc)提供了比特流水平的视点可所伸缩性。这允许以高效并且后向兼容的方式来高效传输多视点视频(例如,具有2个视点的适于在立体展示上观看的视频)。传统的h.264/avc解码器解码包含于多视点比特流中的两个视点中的仅一个(所谓基础视点)。重构的视频序列可在常规的2d显示器上显示。与之相反,立体解码器能够解码两个视点,并且所解码的视频序列(一个用于左眼并且一个用于右眼)适用于3d显示器。

svc和mvc二者都可被视为所谓的分层媒体编码技术的例子,所述分层媒体编码技术生成具有多个媒体层的视频比特流,每个媒体层表示另一个品质水平。由于层间预测,在这些媒体层之间存在层级,其中媒体层依赖于其他媒体层以进行成功解码。层感知前向纠错(la-fec)利用对分层媒体流内存在的依赖性结构的认识。la-fec生成fec数据,使得对重要性较低的媒体层的保护可用于保护重要性更高的媒体层的数据,从而进行联合纠错。通过此方式,la-fec实现新功能,并且在不增加数据的总量的情况下提高对重要性较高的媒体的保护。

为了通过使用层感知前向纠错来对传输通道的接收器侧接收的数据进行纠错,fec解码器需要与指定的有效载荷数据部分与可用于在所述的有效载荷数据部分中进行纠错(例如,传输错误)的fec奇偶校验数据部分之间的相关性有关的认识。换言之,fec解码器必须能够在所述有效载荷数据部分与相应的fec奇偶校验数据部分之间的连接,以成功地对所述有效载荷数据和/或所示fec奇偶校验数据进行纠错。当使用不同的数据或数据流来传输基础表示、强化表示以及fec奇偶信息时,这方面变得特别重要。其中有效载荷数据与fec奇偶校验数据之间的相关性不明确的另一个可行性方案是,经分组交换网络传输有效载荷数据和fec奇偶校验数据,以使每个组可采取不同路线并且在不同时间到达接收器。



技术实现要素:

因此,期望fec奇偶校验数据与有效载荷数据之间的相关性的高效和/或稳定的信号发送,用于改进纠错能力和/或纠错效率等。通过如权利要求1所述的前向纠错数据生成器、如权利要求9所述的前向纠错解码器、如权利要求12所述的用于生成前向纠错数据的方法、如权利要求20所述的用于前向纠错解码的方法以及如权利要求23所述的计算机程序,实现了本发明的目的。

提供了前向纠错数据生成器。所述前向纠错数据生成器包括用于将以关联的方式对至少两个数据流生成前向纠错数据的输入端,每个数据流包含多个码元,其中前向纠错数据码元基于可能包含所述至少两个数据流的码元子集的前向纠错(fec)源块。所述前向纠错数据生成器还包括信令信息生成器,其配置成通过确定指向所述至少两个数据流的第一数据流内的起始码元的指针、指向所述至少两个数据流的第二数据流内的起始码元的指针、所述第一数据流内的属于所述相应源块的码元数以及所述第二数据流内的属于所述相应源块的码元数,从而针对所述至少两个数据流内的哪些码元属于相应的源块来生成用于前向纠错数据码元的信令信息。

一些实施方案提供了前向纠错解码器,其包含配置成接收修复流的输入端,该修复流包含相对于将前向纠错的至少两个接收的数据流的修复码元。所述前向纠错解码器还包括配置成对修复码元内或与修复码元连接的信令信息进行分析的信令信息分析器。所述信令信息包含指向所述至少两个数据流中的至少一个内的起始码元的指针、所述第一数据流内的属于所述相应源块的码元数以及所述第二数据流内的属于所述相应源块的码元数。所述前向纠错解码器还包括配制成使用所述信令信息来收集所述至少两个数据流内的属于当前源块的码元的源块收集器。

此外,还提供了用于生成前向纠错数据的方法。所述方法包括接收至少两个数据流,将以关联的方式对所述至少两个数据流生成前向纠错数据。每个数据流包含多个码元。前向纠错数据码元基于可能包含所述至少两个数据流的码元子集的前向纠错(fec)源块。所述方法还包括针对所述至少两个数据流内的哪些码元属于相应的源块来生成用于所述前向纠错码元的信令信息。特别地,通过确定指向所述至少两个数据流的第一数据流内的起始码元的指针、指向所述至少两个数据流的第二数据流内的起始码元的指针、所述第一数据流内的属于所述相应源块的码元数以及所述第二数据流内的属于所述相应源块的码元数来生成所述信令信息。

关于解码方面,还提供了用于前向纠错解码的方法。所述方法包括接收包含与待前向纠错的至少两个接收的数据流有关的修复码元的至少一个修复流。所述方法还包括分析修复码元内或与修复码元连接的信令信息。所述信令信息包含指向所述至少两个数据流中的至少一个内的起始码元的指针、所述第一数据流内的属于所述相应源块的码元数以及所述第二数据流内的属于所述相应源块的码元数。所述方法还包括使用所述信令信息来收集所述至少两个数据流内的属于当前源块的码元。

此外,本发明还提供了在计算机或信令处理器上运行时用于实施上述方法中的计算机程序。

附图说明

以下,通过引用附图更详细地描述了本发明的实施方案,其中:

图1以图示的方式描述了分层编码媒体的结构的例子;

图2以图示的方式描述了用la-fec生成fec数据的思路;

图3以图示的方式描述了其中两个源流具有独立的码元标识符(si)的第一种方法;

图4以图示的方式描述了第二种方法,据此fec源块的同步点设置有每个fec源块的同步化的si;

图5以图示的方式描述了可如何为了la-fec对第一数据流和第二数据流内的码元进行分组或收集;

图6示出了描述如何在编码器侧处理数据流的示意框图;并且

图7示出fec数据生成器的一部分的示意框图。

具体实施方式

前向纠错(fec)或通道编码是一种可用在通过不稳定的信道或嘈杂的信道的数据传输中进行纠错的技术。为此,通过使用纠错码(ecc)在通道的传输器端向初始信息中添加一定量的冗余。由于添加了冗余,所以只要信息中的任何位置发生仅有限数量的错误,接收器就能够检测出该错误。一般地,甚至能够在不进行重新传输的情况下纠正这些错误。因此,无需反向通道来请求数据的重新传输。但是,纠错能力造成固定的、更高的前向通道带宽浪费。因此,通常在重新传输消耗大或者不可能实现重新传输的情况下,例如在单向通信连接以及当在组播中传输至多个接收器时,应用fec。fec的另一应用与大量存储装置有关,以能够回收损坏的数据。

许多不同的纠错码可用于实施前向纠错方案。可行的纠错码的例子是:bch码、hadamard码、hamming码、低密度奇偶校验(ldpc)码、raptor码、reed-solomon纠错、reed-mutter码、turbo码和walsh-hadamard码。

层感知fec(la-fec)是用于分层媒体数据的特定fec方案,其利用fec结构跨越媒体层的依赖性。图1描述了如何将la-fec应用于分成编码的媒体数据,例如由可伸缩视频编码(svc)或多视点视频编码(mvc)或可伸缩的hevc扩展(shvc)编码的的内容。在所示的实例中,存在可独立解码的基础表示(br)12(例如,基础分辨率或左视图),以及依赖于所示基础表示的一个添加/增强表示(er1)14(例如,增强的分辨率或右视图)。注意,表示的数量和结构的依赖性取决于媒体编码,并且可与给定的例子不同。

所述基础表示12可视为表示基础品质的基础层/表示(bl/br),在svc和mvc两种情况下,所述基础品质为具有例如720p分辨率的视频流。在解码过程中额外整合增强层/表示(el/er),改进了视频品质。对于svc,品质提高至1080p的分辨率。对于mvc,el(或er)的解码添加了用于3d电视的第二视点。如图1所示,媒体层之间存在依赖性。基础层/表示bl(或br)可独立于其他媒体层来解码,而增强层/表示el(或er)需要bl(或br)用于无错解码。虽然在例如svc或mvc等分层媒体编码技术的上下文中描述了前向纠错数据生成器,但是所提出的用于前向纠错信令信息的概念还可用于不同环境。例如,数据流中的一个可包含视频轨道,并且另一个数据流可包含相应的音频轨道。另一个例子可为若干音频信号,例如用于5.1环绕声多通道音频系统。此外,甚至有可能至少两个数据流(或其内容)不是彼此相关的而是彼此独立的。一个可能的例子可以是经同一通道(例如,经卫星)广播的两个独立的电视节目。

对于la-fec,某一表示的fec信息块由多个fec信息子块组成,其中一个子块用于其本身的表示,并且一个子块用于该表示的每个补码表示。这些fec信息子块中的每一个仅由来自一个表示的数据生成。图2示出了针对分层编码的媒体结构例子生成la-fec的示例性图示。因为基础表示(br)独立于任何其他表示,所以其fec信息块32仅包含br的fec信息子块22,而增强表示(er1)的fec信息块34由相同的br的fec信息子块22以及er1的fec信息子块24组成。

图2还示出了la-fec编码器42,其用于编码基础表示的fec信息块32,并且更具体地用于生成基础表示的fec奇偶校验块52。提供了另一la-fec编码器44,用于编码增强表示的fec信息块34,并且更具体地用于生成增强表示的fec奇偶校验块54。这两个la-fec编码器52、54可组合成单一的la-fec编码器。

对于la-fec,依赖的表示(在示例性的er1中)的fec奇偶校验块额外地保护其自身的所有补码表示(在示例性的br中)的所有数据。因此,可通过使用由该表示相应的fec信息块生成的fec包块、由来自与该表示相关的表示的fec信息块生成的fec包块,或者通过以联合解码的方法使用相关表示和所有其补码表示的所有fec奇偶校验块,来恢复给定的表示。

例如,如果接收实体仅接收基础表示br,则其可通过使用fec包块52(br)来解码和纠正该表示。如果接收实体接收br和er1,则其能够用fec包块52(br)、fec包块54(er1)或以联合解码的方法用fec包块52(br)和fec包块54(er1)来解码和纠正br。由此,la-fec允许增强分层编码媒体的鲁棒性(robustness)。更具体地,在不能用fec包块(br)来矫正br的情况下,具有la-fec的接收实体可试图通过fec包块(er1)或通过对fec包块(br)和fec包块(er1)进行联合解码来纠正br。

方法1:fec源块的重构:

从接收的码元重构源块需要认识哪些源码元是部分的fec源块。对于la-fec,此外还需要连接基础层的fec源块(sb)与增强层,因为增强层fec数据基于这两层的数据来生成。

根据第一种可行的信号发送方法,提出对每个源码元具有增量id,在下文中称为码元id(si)。对于这样的方法,所述码元id独立于图3中所示的各层。因此,图3以图示的方式示出了两个源流的独立的si。

如图3中以图示的方式描述的用于发送la-fec的方法充当如下文中描述的修复码元,用于将修复码元与不同流的源码元关联。

基础层/增强层

fec源id:[si]

基础层fec修复id:[fecsb的起始si;长度;]

增强层fec修复id:fecsb的起始si;长度;

fecsb(基础)的起始si;长度(基础)]

例如,以[]表示一组信号发送,以图1中的方法对图3中的fecsb2源和修复码元(2码元)进行的示例性信号发送可以为:

源(基础):[6][7][8][9]源(增强):[7][8]

修复(基础):[6;4][6;4]修复(增强):[7;2;6;4][7;2;6;4]

注意,在以上例子中,修复码元的信号发送[7;2;6;4]表示该修复码元涉及增强层的两个码元,其以源流2中的码元id7开始,并且还涉及基础层中的四个码元。源流1包含基础表示。源流2包含增强表示。在以上例子中,涉及基础表示的信令信息以粗体字表示。

方法2:用同步化id重构fec源区段:

另一种用于信号发送的可行方法使得能够用同步id(码元id)来重构fec源区段。该信号发送方法在图4中以图示的方式示出,其用每个fec源块(fecsb)的同步化的起始si描述fecsb的同步化点。

对于根据图4的信号发送方法,需要下面的用于修复码元的信号发送来使修复码元与源码元关联:

源流1/2fec源id:[si]

源流1fec修复id:[fecsb的起始si;长度;]

源流2fec修复id:[fecsb的起始si;长度;长度(基础)]

例如,以[]表示一组信令信息,以第二种方法对图4中的fecsb2源和修复码元(2码元)进行的示例性信号发送可以为:

源流1:[7][8][9][10]源流2:[7][8]

修复流1:[7;4][7;4]修复流2:[7;2;4][7;2;4]

注意,在图4的实施方案中以及在相关实施方案中,“fecsb的起始si”对基础表示(源流1)和增强表示(源流2)二者都有效。

图5描述了第一数据流(在该实施例中对应于增强层)内的码元和第二数据流(此处对应于基础层)内的码元可以为了层感知fec的目的而如何分组或收集。以图示的方式用小方块来表示每个码元。例如,第一fec源块(fec源块1)将来自增强层数据流(第一数据流)的三个码元和来自基础层数据流(第二数据流——或反之)的两个码元纳入考虑。注意到,基础层可额外地由另一基础层专用的fec保护。例如在仅能稳定地接收携带基础层的数据流但是接收不到携带增强层的数据流(例如,出于带宽限制的原因等)的情况下,这样的基础层专用的fec可用。

码元计数器具有初始计数值25(任意选择的,可为其他任意的数字)。因此,fec源块中的第一和第二数据流的起始码元接收下一个数,在此为26。根据当前考虑的第一数据流或第二数据流中的fec源块是否存在更多码元,下一fec块的起始码元增加该数量,即,增加贡献fec源块的数据流之一内的最大码元数。在当前的情况下,fec源块1包含增强层中的三个码元和基础层中的两个码元。因此,对于fec源块1而言,每个数据流的最大码元数是三。因此,第二fec源块(fec源块2)中的起始码元由数字或索引“29”表示。注意,在图5中,fec源块2的起始码元没有对齐(即,将必须考虑这些码元的不同出现次数的有效载荷数据编码器或解码器),但是,这不影响该fec方案,因为fec编码器或fec解码器需要知道的所有是:数据流内的哪个码元是给定fec源块(即,第一数据流和第二数据流二者中的#29)的第一码元(即,起始码元),以及对于给定的fec源块,总共必须考虑来自该数据流的多少个码元(即,对于fec源块2:第一数据流中的3个码元,以及第二数据流中的3个码元)。

图6示出了描述如何在编码器侧处理数据流的示意框图。特别地,通过上文提到的图4的方法,所描述的码元id同步器可通过添加关于至少两个数据流的同步化的可用于fec的信息来改造第一和第二数据流。

如图6以图示的方式所示的编码器侧布置包括有效载荷数据编码器602、前向纠错数据生成器644和码元id同步器660。还设置有另一个前向纠错数据生成器,但是,该另外的前向纠错数据生成器642是可选的。在更详细地描述表示本发明的可行实施方案的前向纠错数据生成器644的功能之前,我们首先描述如图6中以图示的方式示出的编码器侧布置的框架。

所述编码器侧布置是为了编码有效载荷数据,并准备用于经通道或网络传输的编码的有效载荷数据。为此,使用该编码的有效载荷数据来形成一个或若干个数据流(或源流)。例如,该有效载荷数据可为可能包含音频轨道的视频数据。其他类型的有效载荷数据也是可行的,并且不进行排除。在有效载荷数据编码器602处接收有效载荷数据,有效载荷数据编码器602可使用例如h.264/mpeg-avc等有损视频编码方法来编码有效载荷数据。此外,有效载荷数据编码器602配置成提供编码的有效载荷数据的两个数据流:用于基础层(基础表示)的第一数据流和用于增强层(增强表示)的第二数据流。在一些可选的实施方案中,所述有效载荷数据编码器可配置成提供用于不同增强层的多个数据流(多于两个)。例如,所述有效载荷数据编码器602可为svc(可伸缩视频编码)编码器或mvc(多视点视频编码)编码器。

我们现在考虑接收两个数据的,即基础层数据和增强层数据流的fec数据生成器644。为此,fec数据生成器644包括至少两个数据流的输入,将以联合的方式对所述至少两个数据流生成前向纠错数据。每个数据流包含多个码元。前向纠错数据码元基于前向纠错(fec)源块。前向纠错(fec)源块可能包含所述至少两个数据流的码元的子集(参见图3至5)。在说明书的一些部分中以及在一些权利要求中,fec数据码元也称为“修复码元”,因为从解码器的角度来看,所述“修复码元”可用于在更多的有效载荷数据流中的一个数据流中进行修复(即,使用fec来纠正传输错误)。

fec数据生成器644包括配置成生成用于前向纠错数据码元的信令信息的信令信息生成器。信令信息指示哪些码元属于与预期fec数据码元对应的fec源块。fec数据生成器644可决定基础层和增强层的数据流中的哪些(有效载荷)码元应分组在一起以形成指定的fec源块。fec数据生成器的该决定可基于相关码元之间的时间关系,以使例如将被认为在一定时间间隔(如由例如“出现时间戳”限定)期间出现的基础层和增强层数据流中的所有码元并入特定的fec源块中。如图3至5中所示,fec源块通常考虑数据流中时间相干的一系列码元,即,不存在数据流内的两个或更多个fec源块的重叠或交错。该性质使得能够保持对于指定fec数据码元的信令相对短并且简单,因为其足以告知一系列考虑的源码元中的第一码元,以及码元的数量(即,该系列的长度)。

具体地,根据一些实施方案,所述信令信息生成器可配置成通过以下来生成信令信息:

-确定指向至少两个数据流中的第一数据流内的起始码元的指针

-确定指向至少两个数据流中的第二数据流内的起始码元的指针

-确定第一数据流内的属于相应fec源块的码元的数量

-确定第二数据流内的属于相应fec源块的码元的数量。

可将所述信令信息并入相应的fec数据码元(修复码元)中,或者可以将所述信令信息与相应的fec数据码元(修理码元)连接,例如经不同数据流传输至解码器。由fec数据生成器644产生的fec数据码元形成用于增强层和基础层的修复流。

图7示出fec数据生成器的一部分的示意框图。码元id计数器确定每个数据流和fec源块的最大码元数。当传递至后续的fec源块时,当前的计数器值增加所确定的数量。

图7中以图示的方式描述的fec数据生成器包括fec源块定义782、已经提及的码元id计数器784和码元id同步器786。

fec源块定义782配置成接收包含多个基础层码元的基础层流。所述fec源块清晰度还配置成接收包含多个增强层码元的一个或多个增强层流。fec源块定义782还配置成通过对基础层和一个或多个增强层的特定码元进行分组来形成fec源块。换言之,fec源块定义782配置成确定基础层和增强层的哪些码元将用于形成特定的fec源块。码元的选择可基于多种选入标准,例如,码元的时间相关性。

码元id计数器784配置成作为通用计数器值的当前计数器值。具体地,通过确定每个数据流(基础流和一个或多个增强流)的对当前fec源块由贡献的码元的数量来更新所述通用计数器。多种数据流中的最高码元数确定通用计数器增加的值。例如,假定基础层流向当前的fec源块贡献六(6)个码元,并且增强层流向同一fec源块贡献十一(11)个码元;则通用计数器的增量值为十一(11)。因此,始于当前fec源块的码元与后续fec源块的码元之间的码元id差是十一。码元id同步器786基于从码元id计数器784接收的信息来修改码元id。因此,码元id同步器786输出同步化的基础层和增强层数据流,这意味着,每个新的fec源块以与对fec源块有贡献的所有数据流相等的通用码元id起始。注意,单一数据流内的码元id可能不再是连贯的/连续的,而是可表现出两个fec源区段边界处的跳跃或间隔。这些跳跃或间隔的存在通常不从根本上具体改变fec的功能以及总体上改变数据传输方案的功能。

在前面的描述中,已经提出了用于使修复码元与多个流的源码元相关联以重构fec源块的方法。第一种可行的方法(例如在图3和相应的描述中以图示的方式描述的)使用相关源流的指针和长度。第二种可行的方法(例如在图4和相应的描述中以图示的方式描述的)使用同步化点作为所有源流中的起始si。对于第二种方法,可通过发送基础层中的源码元数来重构la-fec的fec源块,而通过所提及的第一种方法,这额外地需要指明基础层中的起始si。

虽然在装置的上下文中已经描述了一些方面,但显而易见的是,这些方面还体现了对相应方法的描述,其中,块或装置与方法步骤或方法步骤的特征相对应。同样地,在方法步骤的上下文中所描述的方面也体现了对相应装置的相应块或项或特征的描述。

该发明性的分解的信号可储存于数字储存介质上,或可通过例如无线传输媒介或有线传输媒介(例如,因特网)等传输媒介来传输。

根据某些的实施要求,本发明的实施方案可进行硬件实施或软件实施。所述实施可使用其上存储有电可读控制信号的数字储存介质来进行,例如,软磁盘、dvd、cd、rom、prom、eprom、eeprom或闪存,所述数字存储介质与可编程的计算机系统协作(或者能够与其协作)从而执行相应的方法。

根据本发明的一些实施方案包括非瞬时性的具有电可读控制信号的数据载体,所述数据载体能够与可编程的计算机系统协作,从而执行本文描述的其中一种方法。

一般而言,本发明的实施方案可实施为具有程序代码的计算机程序产物,所述程序代码用于在计算机上运行所述计算机程序是执行所述方法中的一种。所述程序代码例如可储存于机器可读载体上。

另一些实施方案包括用于执行本文描述的其中一种方法的计算机程序,该计算机程序储存于机器可读的载体上。

因此,换言之,当所述计算机程序在计算机上运行时,本发明性的方法的一个实施方案是具有用于执行本文描述的其中一种方法的程序代码的计算机程序。

因此,所述发明性的方法的另一个实施方案是包含用于执行本发明描述的其中一种方法的计算机程序的数据载体(或数字存储介质,或计算机可读介质),该计算机程序记录在所述数据载体上。

因此,所述发明性的方法的另一个实施方案是反映用于执行本文描述的其中一种方法的计算机程序的数据流或信号序列。所述数据流或信号序列例如可以配置成经数据通信连接来进行传输,例如,经因特网来进行传输。

另一个实施方案包括配置成或适配成执行本文描述的其中一种方法的处理工具,例如计算机,或可编程逻辑装置。

另一个实施方案包括其上安装了用于执行本文描述的其中一种方法的计算机程序的计算机。

在一些实施方案中,可使用可编程逻辑装置(例如,现场可编程门阵列)来执行本文描述的方法的一些功能或全部功能。在一些实施方案中,现场可编程门阵列可与微处理器协作从而执行本文描述的方法中的一种。一般而言,优选通过任何硬件装置来执行所述方法。

上文描述的实施方案仅是对本发明的原理的举例说明。应理解,对本领域技术人员而言,本文描述的布置和细节的修改和改形应是显而易见的。因此,本发明旨在仅由所附的专利权利要求的范围所限制,而不由通过描述和解释本文的实施方案的方式所呈示的具体细节来限制。

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