CN101040475B - 对前向纠错帧进行组合的方法和设备 - Google Patents
对前向纠错帧进行组合的方法和设备 Download PDFInfo
- Publication number
- CN101040475B CN101040475B CN2004800441668A CN200480044166A CN101040475B CN 101040475 B CN101040475 B CN 101040475B CN 2004800441668 A CN2004800441668 A CN 2004800441668A CN 200480044166 A CN200480044166 A CN 200480044166A CN 101040475 B CN101040475 B CN 101040475B
- Authority
- CN
- China
- Prior art keywords
- bag
- error correction
- encoded media
- forward error
- correction frames
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04B—TRANSMISSION
- H04B7/00—Radio transmission systems, i.e. using radiation field
- H04B7/005—Control of transmission; Equalising
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/0078—Avoidance of errors by organising the transmitted data in a format specifically designed to deal with errors, e.g. location
- H04L1/0083—Formatting with frames or packets; Protocol or part of protocol for error control
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/47—Error detection, forward error correction or error protection, not provided for in groups H03M13/01 - H03M13/37
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/63—Joint error correction and other techniques
- H03M13/635—Error control coding in combination with rate matching
- H03M13/6356—Error control coding in combination with rate matching by repetition or insertion of dummy data, i.e. rate reduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0041—Arrangements at the transmitter end
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/004—Arrangements for detecting or preventing errors in the information received by using forward error control
- H04L1/0056—Systems characterized by the type of code used
- H04L1/0059—Convolutional codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
-
- H—ELECTRICITY
- H03—ELECTRONIC CIRCUITRY
- H03M—CODING; DECODING; CODE CONVERSION IN GENERAL
- H03M13/00—Coding, decoding or code conversion, for error detection or error correction; Coding theory basic assumptions; Coding bounds; Error probability evaluation methods; Channel models; Simulation or testing of codes
- H03M13/03—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
- H03M13/05—Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words using block codes, i.e. a predetermined number of check bits joined to a predetermined number of information bits
- H03M13/13—Linear codes
- H03M13/15—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes
- H03M13/151—Cyclic codes, i.e. cyclic shifts of codewords produce other codewords, e.g. codes defined by a generator polynomial, Bose-Chaudhuri-Hocquenghem [BCH] codes using error location or error correction polynomials
- H03M13/1515—Reed-Solomon codes
Abstract
本发明涉及用于组合针对编码媒体包的组的序列的FEC帧的方法。为了减少在译码端(15)的缓冲延迟,提出使FEC帧与媒体包的组对准。为此,确定完全适合于FEC帧的多个下一个后续组。如果有的话,与所确定的一组或多组相关联的所有编码媒体包被选择用于FEC帧(步骤202、402)。然后,编码所选择的编码媒体包以获得至少一个用于FEC帧的FEC包(步骤206、406)。此外,对于固定的FEC帧结构,根据需要,提出引入填充包作为附加媒体包。
Description
技术领域
本发明涉及用于组合针对编码媒体包的组的序列的前向纠错帧的方法、处理模块、电子设备、软件代码和软件程序产品。本发明还涉及支持前向纠错帧的组合的通信系统。
背景技术
大多数基于包的通信网络,尤其是不具有受保证的服务质量的网际协议(IP)网络,会遭受不定数量的丢包和删包。这些丢失可能源于许多来源,例如路由器或传输段过载或包中比特误差,导致它们的删除。应该理解,丢包是在大多数包网络架构中的公同操作点,而不是网络故障。
媒体传输,特别是压缩的视频的传输,极大地受到丢包的损害。
早前,已经公布了用于提高基于包的信道的质量的手段。基于重传的机制可以以不定延迟为代价确保无消除信道。然而,对于流和谈话应用而言,这是不期望的。
由在媒体传输中的消除引起的媒体呈现中的恼人的伪像可以进一步通过在媒体编码处理期间的许多不同手段来避免。然而,在媒体编码处理期间添加冗余位对于预编码内容来说是不可能的,并且通常比使用前向纠错(FEC)的信道编码中的最佳保护机制要低效。
前向纠错通过对各种待保护媒体包中待保护位计算多个冗余位,将这些位添加到FEC包,以及传输媒体包和FEC包这二者来工作。在接收器处,FEC包可用于检查媒体包的完整性以及重建可能缺失的媒体包。在下文中,媒体包和保护这些媒体包的FEC包将被称为FEC帧。
大多数用于消除保护的FEC方案允许选择待保护媒体包的数量 和将适应地被选择的FEC包的数量,以选择保护的强度和FEC子系统的延迟的约束。一般而言,实现所需保护强度花费的位越多,造成的延迟越少。可变FEC帧尺寸例如在1999年12月的规范RFC2733:“An RTP Payload Format for Generic Forward Error Correction”中或美国专利6,678,855中进行了讨论。
为了利用FEC的优势,在上述讨论的方面中基于包的FEC需要针对FEC帧结构的接收器同步。即,接收器必须在纠错可以开始之前缓冲FEC帧的所有媒体包和FEC包。
视频编码方案以及逐渐增加的一些音频编码方案例如使用所谓的预测编码技术。这种技术分别从之前的图像或音频帧预测之后的视频图像或音频帧的内容。以下,视频图像和音频帧将都被称为“图像”,以将它们与FEC帧相区别。通过使用预测编码技术,压缩方案可以非常有效,但预测链变得越长,压缩方案对于消除也变得越来越脆弱。因此,有时会插入所谓关键图像或非预测地编码的音频帧的等同物,以下都被称为关键图像,其通过仅使用非预测编码技术重建预测链的完整性。一些可选机制仅使用预测地编码的图像来避免使用关键图像来有利于保证刷新时间。在本文档的范围内,所谓逐步译码器刷新机制基本上与关键图像相同。通常地,关键图像比预测地编码的图像大5至20倍。每个编码的图像可以对应于例如一个待保护媒体包。
遵循MPEG-2视觉协议,以关键图像开始并跟有0个或多个非关键图像的图像序列以下被称为图像组(GOP)。在数字TV中,GOP通常包括不多于六个图像。这种短GOP的关键原因主要在于当切换TV频道时的延迟约束:由于有意义的译码仅可以开始于关键图像,译码器在它可以开始对有意义的关键图像进行译码之前平均必须等待GOP的位的传输时间的一半。在流应用中,GOP尺寸通常选择为较大,通常为一个GOP中的数百个图像,以便更好地利用预测地编码的图像的编码效率。因此对这种序列的“调谐(tune in)”会花费几秒。
当FEC帧为大尺寸时,例如当它们包括数百个包时,FEC方案可以设计得更有效。类似地,当选择较大GOP尺寸时,大多数媒体编码方案会赢得效率,这是因为GOP仅包括一个单一的关键图像,其在统计上远大于GOP的其他图像。
然而,大FEC帧和大GOP尺寸都要求针对它们各自的结构进行同步。对于FEC帧,这意味着接收时缓冲整个FEC帧以及纠正任何可纠正的错误。对于媒体GOP,这意味着解析和丢弃那些未形成GOP的开始(关键帧)的媒体包。
这不仅需要大量的缓冲存储器,而且还需要大量的缓冲时间。在传统系统中,其中FEC译码和媒体译码是独立实现的,调谐的平均延迟是1.5dFEC+0.5dMedia,其中dFEC是FEC帧的缓冲延迟(在等时网络中,其与FEC帧的尺寸成比例),并且dMedia是媒体GOP的缓冲延迟。最坏情况是,缓冲器大小必须被选择为使得完整的FEC帧和完整的GOP分别适合于FEC译码器的缓冲器和媒体译码器的缓冲器。
发明内容
本发明的目的是改善一种用于分组的媒体包的FEC编码。
根据本发明的一个方面,提供了一种用于针对编码媒体包的组的序列组合具有编码媒体包和至少一个前向纠错包的前向纠错帧的方法,其中前向纠错帧内编码媒体包的数量被固定为第一预定数量以及其中前向纠错帧内前向纠错包的数量被固定为第二预定数量,所述方法包括:对于部分包括在先前的前向纠错帧中的编码媒体包的组的没有剩余编码媒体包仍必须被包括在前向纠错帧中的情况,确定多个完全适合于前向纠错帧的编码媒体包的下一个后续组,并且如果有的话,选择与所述确定的编码媒体包的一组或多组相关联的所有编码媒体包以用于所述前向纠错帧;对于部分包括在先前的前向纠错帧中的编码媒体包的组的剩余编码媒体包仍必须被包括在前向纠错帧中的情况,其中所有所述剩余编码媒体包适合于单个前向 纠错帧,确定除所述剩余编码媒体包之外还完全适合于前向纠错帧的编码媒体包的多个下一个后续组,并且如果有的话,选择所述剩余编码媒体包和与所述确定的编码媒体包的一组或多组相关联的所述编码媒体包以用于所述前向纠错帧;在选择的所述编码媒体包的数量低于所述第一预定数量的情况下,添加包括作为有效载荷中的媒体数据的填充值的包以获得编码媒体包的所述第一预定数量用于所述前向纠错帧;以及编码所述编码媒体包以获得所述至少一个前向纠错包。
根据本发明的另一个方面,提供了一种用于针对编码媒体包的组的序列组合具有编码媒体包和至少一个前向纠错包的前向纠错帧的设备,其中前向纠错帧内编码媒体包的数量被固定为第一预定数量以及其中前向纠错帧内前向纠错包的数量被固定为第二预定数量,所述设备包括:用于对于部分包括在先前的前向纠错帧中的编码媒体包的组的没有剩余编码媒体包仍必须被包括在前向纠错帧中的情况,确定多个完全适合于前向纠错帧的编码媒体包的下一个后续组,并且如果有的话,选择与所述确定的编码媒体包的一组或多组相关联的所有编码媒体包以用于所述前向纠错帧的装置;用于对于部分包括在先前的前向纠错帧中的编码媒体包的组的剩余编码媒体包仍必须被包括在前向纠错帧中的情况,其中所有所述剩余编码媒体包适合于单个前向纠错帧,确定除所述剩余编码媒体包之外还完全适合于前向纠错帧的编码媒体包的多个下一个后续组,并且如果有的话,选择所述剩余编码媒体包和与所述确定的编码媒体包的一组或多组相关联的所述编码媒体包以用于所述前向纠错帧的装置;用于在选择的所述编码媒体包的数量低于所述第一预定数量的情况下,添加包括作为在有效载荷中的媒体数据的填充值的包,以获得编码媒体包的所述第一预定数量来用于所述前向纠错帧的装置;以及用于编码所述编码媒体包以获得所述至少一个前向纠错包来用于所述前向纠错帧的装置。
根据本发明的又一个方面,提供了一种包括根据本发明的设备的 电子设备。
根据本发明的又一个方面,提供了一种包括至少一个根据本发明的设备和至少一个前向纠错译码器的通信系统。
对于本发明的第一方面,提出一种用于组合针对编码媒体包的组的序列的FEC帧的方法。对于部分包括在先前的FEC帧中的编码媒体包的组中没有剩余编码媒体包仍必须被包括在FEC帧中的情况,该方法包括:
-确定多个完全适合于FEC帧的下一个后续编码媒体包的组,并且如果有的话,选择与所确定的编码媒体包一组或多组相关联的所有编码媒体包以用于FEC帧;以及
-编码所选择的编码媒体包以获得至少一个FEC包以用于FEC帧。
“下一个后续组”分别是那些紧跟着一个其媒体包已至少部分包括在先前FEC帧中的组的后续组。在处理开始时,下一个后续组从编码媒体包的第一组开始。
此外,提出一种用于组合针对编码媒体包的组的序列的FEC帧的FEC帧生成器。对于部分包括在先前的FEC帧中的编码媒体包的组中没有剩余编码媒体包必须被包括在FEC帧中的情况,该FEC帧生成器用于确定多个完全适合于FEC帧的编码媒体包的下一个后续组,并且如果有的话,选择与所确定的编码媒体包的一组或多组相关联的所有编码媒体包以用于FEC帧。该FEC帧生成器还用于编码所选择的编码媒体包以获得至少一个FEC包以用于FEC帧。FEC帧生成器可以例如通过硬件或通过运行对应软件的处理组件来实现。
此外,提出一种电子设备,其包括所提出的FEC帧生成器。这种设备可以是必须对分组媒体数据等应用FEC编码的任何设备,例如流服务器。
此外,提出一种用于组合针对编码媒体包的组的序列的FEC帧的软件代码。当在处理组件中运行时,该软件代码实现所提出的方法的步骤。
此外,提出一种软件程序产品,其存储所提出的软件代码。
最后,提出一种通信系统,其包括至少一个如所提出的述FEC帧生成器和至少一个FEC译码器。FEC译码器将适合于译码由FEC帧生成器提供的FEC帧。
本发明从以下考虑出发,如果FEC帧与媒体包的组对准,则FEC帧和媒体包的组针对它们各自结构的同步可以被加速。因此提出,只要可能,完整个数的组的媒体包专有地用于各个FEC帧中。
本发明的优点在于其减少了当调谐到编码媒体包的组的特定序列时的缓冲延迟。在译码端可以信赖的情况下,通过译码端来使用本发明,本发明的又一优点在于其减少了对于在译码端的缓冲区大小的需求。
对于部分包括在先前的FEC帧中的编码媒体包的组中剩余编码媒体包仍必须被包括在FEC帧中的情况,如果所有剩余编码媒体包适合于单个FEC帧,则可以使用类似的方法。更具体地,可以确定除剩余编码媒体包之外还完全适合于FEC帧的编码媒体包的多个下一个后续组。然后如果有的话,选择剩余编码媒体包以及与所确定的编码媒体包的一组或多组相关联的编码媒体包以用于FEC帧。此外,编码所选择的编码媒体包以获得至少一个FEC包以用于该FEC帧。
就是说,即使在该FEC帧中对编码媒体数据的组的对准是不可能的,也可确保这种对准可以通过下一FEC帧再次实现。
对于甚至编码媒体数据的单个下一组不完全适合于FEC帧或者已经部分包括在先前的FEC中的编码媒体数据的组的所有剩余编码媒体包不适合于单个FEC帧的情况,FEC可以仅利用编码媒体包尽可能地填满。因此,确定完全适合于FEC帧的下一个后续编码媒体包的最大数量,并且该确定的编码媒体包被选择以用于FEC帧。所选择的编码媒体包然后被编码以获得至少一个FEC包以用于FEC帧。
在本发明的一个实施方式中,对于编码,所有选择的编码媒体包 被补充为与所选择的编码媒体包中最大一个具有相同尺寸。为此,预定数据被添加到包括在所选择的编码媒体包中的媒体数据。此外,每个所获得的至少一个FEC包具有对应于所选择的编码媒体包中最大一个的尺寸的尺寸。
然而,在本发明的一个实施方式中,仅针对编码目的而执行所选择的编码媒体包的补充,以基于相等尺寸的媒体包获得FEC包。如果组合的FEC帧将被传输,所有选择的编码媒体包被以所包括的媒体数据的原始尺寸传输。通过传输原始编码媒体包,传输网络上的负荷被最小化。此外,编码媒体包可以包括原始包括的媒体数据的尺寸的指示,其然后可在接收端对其进行检查。
属于FEC帧的包的数量可以是固定的也可以是可调的。
在本发明的一个实施方式中,属于FEC帧的包的数量是可调的,并且基于所选择的编码媒体包的数量来调节该数量。即,如果仅很少的媒体包被选择,则FEC帧中包的数量可以小于如果大量媒体包被选择的情况。此外,将在编码中获得的FEC包的数量可以被选择为使得FEC帧的所得到的尺寸处于FEC帧的预定最小尺寸之上并且处于FEC帧的预定最大尺寸之下。
在本发明的另一实施方式中,FEC帧内编码媒体包的数量被固定为第一预定数量,以及FEC帧内FEC包的数量被固定为第二预定数量。在所选择的编码媒体包的数量低于第一预定数量时,包括作为有效载荷中的媒体数据的填充值的包被添加以获得编码媒体包的第一预定数量来用于编码所需的FEC帧。对于这种FEC帧的传输,包括填充值的包可以被虚拟填充包代替,该虚拟填充包具有0字节的有效载荷长度并且仅在有效载荷报头中指示包括填充值的媒体数据的尺寸。如果将被使用的填充值在编码端和译码端都已知,则译码端将可以仅从包括填充值的媒体数据的所指示的尺寸就知道实际上应当使用哪个填充值。
根据本发明的第二方面,后面的实施方式也可以独立于本发明的第一方面来使用。
因此,还提出一种用于组合具有编码媒体包和至少一个FEC包的FEC帧的方法,其中FEC帧内编码媒体包的数量被固定为第一预定数量,以及其中FEC帧内FEC包的数量被固定为第二预定数量。该方法包括在编码媒体包的数量低于第一预定数量的情况下,添加包括作为有效载荷中的媒体数据的填充值的包,以获得第一预定数量的编码媒体包来用于前向纠错帧。该方法还包括编码该编码媒体包以获得至少一个FEC包。
如上所述,对于FEC帧的传输,包括填充值的包可以被虚拟填充包代替,该虚拟填充包具有0字节的有效载荷长度并且在有效载荷报头中指示包括填充值的媒体数据的尺寸。
此外,对于本发明的第二方面,提出一种用于组合具有编码媒体包和至少一个FEC包的FEC帧的FEC帧生成器,其中FEC帧内编码媒体包的数量被固定为第一预定数量,以及其中前向纠错帧内FEC包的数量被固定为第二预定数量。该FEC帧生成器用于执行根据本发明第二方面的方法的步骤。
对于本发明的第二方面,还提出一种电子设备,其包括所述FEC帧生成器。同样,提出一种通信系统,其包括至少一个所述FEC帧生成器以及至少一个FEC译码器。
此外,对于本发明的第二方面,提出一种用于组合具有编码媒体包和至少一个前向纠错包的前向纠错帧的软件代码,其中前向纠错帧内编码媒体包的数量被固定为第一预定数量,以及其中前向纠错帧内前向纠错包的数量被固定为第二预定数量。当在处理模块中运行时,该软件代码实现根据本发明第二方面的方法的步骤。
最后,对于本发明的第二方面,提出一种存储所提出的软件代码的软件程序产品。
附图说明
本发明的其他目的和特征将通过后面结合附图的详细描述而变得显而易见。
图1是根据本发明实施方式的通信系统的示意图;
图2是示出根据本发明第一实施方式的图1的系统中前向纠错编码的流程图;
图3是示出当使用前向纠错帧的传统组合时与当使用根据图2的前向纠错帧的组合时在同步延迟上的差别的时序图;
图4是示出根据本发明第一实施方式的图1的系统中前向纠错编码的流程图;以及
图5是示出图4的前向纠错中前向纠错帧的结构的时序图。
具体实施方式
图1是示例性通信系统的示意图,其中根据本发明FEC帧与媒体包的组对准。
通信系统包括传输设备10和接收设备15,它们能够经由例如因特网的通信网络19彼此通信。
传输设备10可以例如是流服务器,提供用于经由通信网络19传输的音频和/或视频数据。传输设备包括存储组件11,其在文件12中存储预编码媒体GOP,每个GOP包括多个编码媒体包。因此每个GOP形成根据本发明的编码媒体包的组。此外,存储组件11存储文件13,其包含关于每个存储的预编码的GOP的尺寸的信息。应该理解,该第二文件不一定必须为文件系统中单独文件的形式。例如,它也可以以索引轨道(hint-track)或算法的形式来实现,该算法解析第一文件并识别GOP边界以及计算每个GOP的尺寸。本领域技术人员也应该看到其他的可能性。
传输设备10进一步包括FEC帧生成器14。FEC帧生成器14可以例如是运行FEC编码软件的处理组件。
接收设备15可以例如是由用户使用的家庭PC,用于请求经由通信网络19来自流服务器的音频和/或视频数据。接收设备15包括FEC译码器16、媒体译码器17和诸如屏幕或扬声器的输出装置18。FEC译码器16可以例如是运行FEC译码软件代码的处理组件,以及媒体 译码器17可以例如是运行媒体译码软件代码的相同或另一处理组件。
对于流会话,GOP和GOP的尺寸信息被存储组件11转发至FEC帧生成器14。FEC帧生成器14以如下方式由所提供的信息生成FEC帧,所述方式为只要可能的话,FEC帧的边界与GOP的边界对准,这将在下面更详细地描述。
所得到的FEC帧通过通信网络19传输至接收设备15。在接收设备15中,如果可能,则FEC译码器16重建最终丢失的编码媒体数据包,并将编码媒体包转发至媒体译码器17。最后媒体译码器17生成未压缩的媒体数据,准备好经由输出装置18呈现给用户。
以下,将针对本发明的两个不同的示例性实施方式呈现传输设备10的FEC帧生成器14的操作。
在两个实施方式中,FEC帧生成器14在应用层上操作并对将在IP/UDP/RTP协议结构中的基于包的Reed-Solomon FEC方案的包应用到所接收的GOP,该包被实现为RTP有效载荷格式。在Reed-Solomon FEC方案中,K个媒体包被N-K个FEC包保护以形成N个包的FEC帧。媒体包和FEC包都在单个RTP会话中传送,RTP有效载荷类型用于在接收端区别媒体包和FEC包。
在接收设备15处,可以通过观察RTP有效载荷类型和接收的RTP包的序号来识别FEC帧,其中每个FEC帧包括K个媒体包(开始于序号s)和N-K个FEC包(开始于序号s+K)。
采用Reed-Solomon的FEC帧的结构,即值K和N,可以是固定的或可变的。
图2是示出根据本发明第一示例性实施方式的传输设备10的FEC帧生成器14的操作的流程图。在本实施方式中,FEC帧生成器14能够使用可变FEC帧结构。
FEC帧生成器14首先从存储组件11中的文件12、13中读取预编码GOP媒体包以及相关联的GOP尺寸信息(步骤201)。
FEC帧生成器14已知FEC帧的最小和最大允许尺寸,这从应用 和网络统计观点来看是期望的。
基于GOP尺寸信息,FEC帧生成器14选择一个或多个完整GOP的媒体包,其适合于在尺寸上由最大帧尺寸限制的FEC帧(步骤202)。
如果至少一个完整GOP的媒体包适合于FEC帧(步骤203),则如果需要的话,FEC帧生成器14均衡所有选择的媒体包的尺寸(步骤204)。
进行均衡的原因是预记录的媒体包具有相同尺寸是非常不可能的。然而,对于FEC编码,需要相等尺寸的K个媒体包来获得相同尺寸的N-K个FEC包。令X是给定FEC帧的一部分的给定媒体包中媒体数据的尺寸,例如以字节为度量。令Xmax是给定FEC帧的所有媒体包的最大X。对于FEC计算,Xmax字节被认为是媒体数据,其中例如媒体数据的最后Xmax-X字节携带预定恒定值,例如0。对于前述均衡,这种预定恒定值被添加到不具有最大尺寸Xmax的所有选择的媒体包中。
如果期望在通常可以假设的包的消除的情况下重建该包的所有数据,则将媒体数据的尺寸放入每个媒体包的RTP有效载荷报头中,该报头与例如IP报头不同,其受到了FEC保护。包括其例如IP、UDP和RTP有效载荷报头的各种报头的完整媒体包的尺寸可以在其他包报头中表示,例如在IP报头中。
接着,FEC帧生成器14基于FEC帧的允许的最小和最大尺寸选择FEC帧的精确结构(步骤205)。媒体包数量K已经由紧接着的一个或多个GOP的传输所需的媒体包的所标识数量所确定。此外,帧中任何包的尺寸由最大的所选择的媒体包给出。因此,FEC帧生成器14仍然必须选择FEC帧的数量(N-K)。
然后,FEC帧生成器14通过计算适当FEC方案的冗余奇偶校验位以及通过将这些位打包到(N-K)个FEC包中来构造该确定数量的FEC帧(步骤206)。K和N的值包括在用于带内信令的每个FEC包的报头字段中。
通过遵循该处理,确保FEC帧的第一媒体包包括GOP的第一包。
然后FEC帧经由通信网络19传输至接收设备15(步骤207)。
然而,在该传输的FEC帧中,仅发送原始X个媒体字节和包报头以用于每个媒体包。值Xmax不一定要被信号传输。因为所有FEC包都是尺寸Xmax加上各种报头的尺寸,如果FEC帧的单个FEC包被接收,则在接收端知道Xmax。如果帧的所有FEC包在传输中丢失,则不可能重建任何丢失的媒体包。因此不管怎样仅所接收的媒体包可用于最终的重建,并且它们的尺寸信息是已知的。
然后所述FEC编码处理可以继续在步骤201用于下一FEC帧。
如果在某循环中检测到下一GOP的媒体包不完全适合于FEC帧(步骤203),则FEC帧生成器14选择最大限度适合于FEC帧的下一GOP的那些媒体包(步骤208)。然后这些选择的媒体包如上所述在步骤204至步骤207中被处理。
对于在下一循环中生成的后续FEC帧,这意味着不能确保FEC帧的第一媒体包包括GOP的第一包。然而,对比于传统方法,这并不增加任何附加的延迟或缓冲要求。
对于该后续帧,在步骤202中,选择完整GOP的多个媒体包,除了先前GOP的剩余媒体包之外,其还最大限度适合于FEC帧。
如果至少一个下一GOP的媒体包完全适合于FEC帧(步骤203),则如上所述执行步骤204至步骤207,并且为在下一循环中构造的FEC帧重建该对准。
如果至少一个下一GOP的媒体包不完全适合于FEC帧(步骤203),则选择最大限度适合于FEC帧的先前GOP的所有剩余媒体包,其可以但不必须是先前GOP的所有剩余媒体包(步骤208)。然后,步骤204至步骤207如上所述被执行。在这种情况下,最早将在下一个仅一个循环中重建对准。
图3是包括时间线的时序图,包括以传统FEC编码实现的调谐延迟和以如图2所示FEC编码实现的调谐延迟。
第一水平线301表示媒体GOP结构。小垂直线指示不同GOP之 间的边界。可以看出,如在实践中,GOP结构在尺寸上是可变的,并且若假定恒定传输带宽,其在时间上是可变的。然而,应当注意,本发明不要求可变GOP尺寸;这里示出为可变的仅出于示例目的。
为虚线的第二水平线302表示在现有技术设计中使用的FEC帧。小垂直线指示不同FEC帧之间的边界。简单起见,FEC帧被示出为恒定尺寸,并因此当假定相同恒定带宽链路时在传输时间上是恒定的。然而,应该注意,实际上它们也可以在尺寸上是可变的。
第三水平线303表示参照图2所述方法中使用的FEC帧。小垂直线指示不同FEC帧之间的边界。
此外,FEC译码器16和媒体译码器17两者的同步的持续时间在四个例子中被标记,一方面用于传统FEC帧302,另一方面用于当出于根据本发明的FEC帧303时。在所有四种情况中,各个箭头指示在调谐点与同步时刻之间的同步时间。对于传统方法,箭头以虚线示出,而对于本发明方法,箭头以实线示出。
应该注意,通常,首先必须实现FEC译码器16中的同步,即,FEC译码器16必须检测新FEC帧的开始。然后才能开始媒体译码器17中的同步,以检测新GOP的开始。同步也可以同时发生。
首先,将描述传统方法的四种情况中导致的延迟。
在第一情况,可以从调谐点311起在非常短的时间内达到同步,这是因为FEC帧的开始和媒体帧的开始在这里是对准的。在时间线312达到同步。基本上在连接启动时在当前设计中该特定情况是共同的。
在第二情况,在稍后时间执行对连接的调谐。这里调谐点在传统FEC帧的中间并且在媒体包的中间,如对应时间线313所示。为了达到接收设备15的两个译码器16、17的同步,首先FEC译码器16必须找到同步。该同步仅可以在时间线314处达到。此后媒体译码器17才能设法找到对准,并最终在时间线315找到。
在第三情况,调谐点精确位于媒体编码器的两个GOP的边界之上,如时间线315所示。然而,系统必须首先在时间线316处与FEC 译码器16对准,然后才能开始与媒体译码器17的同步。其在时间线318达到同步。
在第四情况,如第二情况,调谐点319位于FEC帧和媒体GOP的中间。然而,同步很快实现,这是因为在时间线316的FEC译码器16的同步点和在时间线318的媒体译码器17的同步点在时间上都在前方不远,并且以正确的顺序发生,即,首先是FEC接着是媒体。
总而言之,在示出的第一和第四情况中,结合的同步较快发生,但在示出的第二和第三情况中,其花费较长时间。
根据本发明,在FEC结构303中,FEC帧的边界已经与媒体GOP301的边界对准。
在第一情况,所建议的FEC帧结构303与传统FEC帧结构302一样保持调谐延迟相同,这是因为传统FEC结构302和媒体结构301碰巧同样对准。
然而,在第二情况,对准的FEC结构303导致在时间线321处的显著较低的调谐延迟。
在第三情况,其在现有技术设计中也导致很长的调谐延迟,通过对准的FEC结构303该调谐延迟被减少到0。
仅在第四情况,在调谐延迟中没有变化,与同样排列于时间线318处的FEC帧结构303的FEC帧相对照,即使在时间线316处的FEC帧结构302的FEC帧不与在时间线318处的GOP结构301的媒体包对准。
因此根据本发明的方法,通过强制流服务器10使FEC帧结构303与媒体GOP结构301对准,允许减少调谐延迟。这通常导致减少的调谐延迟,有时调谐延迟保持恒定,但决不会增加。
应该注意,在实践中,FEC译码器16在媒体译码器17可以开始与来自译码的FEC帧的媒体包进行的同步之前首先必须将完整FEC帧译码。然而,为清楚起见,这在图3所示中被忽略。为了绝对精确的表示,译码时间因此应该向过去移位一个FEC帧。实际上,这 将使该方案甚至更有效,因为平均而言算法将选择更小的FEC帧。
图4是示出根据本发明第二示例性实施方式的传输设备10的FEC帧生成器14的操作的流程图。在该实施方式中,FEC帧生成器14必须使用预定FEC帧结构。即,值N和K在流会话期间保持恒定并带外进行信号传输。
FEC帧生成器14首先从存储组件11中的文件12、13中读取预编码GOP媒体包以及相关联的尺寸信息(步骤201)。
FEC帧生成器14已知FEC帧的最小和最大允许尺寸,这从应用和网络统计观点来看是期望的。
基于GOP尺寸信息,FEC帧生成器14选择一个或多个完整GOP的媒体包,其适合于具有由最大帧尺寸定义的尺寸的FEC帧(步骤402)。所选择的媒体包的数量用L表示。
如果至少一个完整GOP的媒体包适合于FEC帧(步骤403),则如果需要的话,FEC帧生成器14均衡所有选择的媒体包的尺寸(步骤404),如图以上参照图2的步骤204所述。
如果L小于K,则FEC帧生成器14添加K-L个填充包到L个所选择的媒体包(步骤405)。填充包是扩展的虚拟填充包,在该步骤中其具有与均衡的媒体包相同的尺寸,并承载在发送器和接收器处已知的预定值(例如0)的有效载荷。
接着,FEC帧生成器14计算用于所选择的媒体包和填充包的奇偶校验位。然后奇偶校验位被打包到(N-K)个FEC包中(步骤406)。
对于经由通信网络19向接收设备15传输FEC帧,首先K-L个虚拟填充包被传输。这些虚拟填充包中的每个具有0字节的媒体有效载荷长度,但其在RTP有效载荷报头中指示FEC编码中使用的对应填充包的填充数据的尺寸,正如媒体包在RTP有效载荷报头中指示它们的原始媒体数据的尺寸那样。因此,当与媒体包的平均尺寸比较时,那些虚拟填充包非常小,并且不应构成对网络的显著负担。在许多网络架构中,当采用报头压缩时,它们的尺寸接近0。
K-L个虚拟填充包后面是所选择的L个媒体包,仅包括原始媒体 数据,如参照图2的步骤207所述的。最后,N-K个FEC包被传输(步骤407)。
类似FEC帧生成器14,FEC译码器16也对尺寸对应于最大原始媒体包的尺寸的K个媒体包进行操作。这通过使用RTP有效载荷报头中的填充尺寸信息以及基于预定填充位也将K-L个0长度的虚拟填充包扩展为全尺寸填充包来实现的。类似地,正如在编码器侧在步骤404中那样,L个编码媒体包被扩展。
然后可以在步骤401对下一FEC帧继续所述处理。
类似于图2,在图4中也另外考虑一些情况,其中在至少一个FEC帧期间防止所期望的对准。
如果在某循环中检测到下一GOP的媒体包不完全适合于FEC帧(步骤403),则FEC帧生成器14选择最大限度适合于FEC帧的下一GOP的最先L个媒体包(步骤408)。然后将这些选择的媒体包如上所述在步骤404至步骤407中进行处理。
对于在下一循环中生成的后续FEC帧,这意味着不能确保FEC帧的第一媒体包包括GOP的第一包。对于该后续帧,在步骤402中,选择完整GOP的多个媒体包,除了先前GOP的剩余媒体包之外其还最大限度适合于FEC帧。剩余的媒体包和所选择的媒体包的总数是L。
如果至少一个下一GOP的媒体包完全适合于FEC帧(步骤403),则如上所述执行步骤404至步骤407,并且为在下一循环中构造的FEC帧重建该对准。
如果至少一个下一GOP的媒体包不完全适合于FEC帧(步骤403),则选择最大限度适合于FEC帧的先前GOP的所有L个剩余媒体包(步骤408)。然后,步骤404至步骤407如上所述被执行。在这种情况下,将在下一循环中最早处重建对准。
对于本领域技术人员来说是明显的:FEC帧的其他架构可以在该第二实施方式中完全一样地使用。例如,K-L个填充包可以位于FEC帧的末端,或者与媒体包交错。不需要用信号传输FEC帧的精确结 构,因为填充包可以通过它们为0的媒体字节的数量加以识别,并且使用FEC方案对其进行保护。
图5是示出导致参照图4所述的操作的FEC帧结构的时序图。通信网络19以示例的方式假定为固定速率网络。
第一水平线表示不同尺寸的两个媒体GOP 501、502,并因此具有不同传输时间需求。小垂直线指示GOP 501、502的边界。
两个GOP 501、502被打包到两个FEC帧511、521中,其也要求不同传输时间。第二水平线表示两个FEC帧511、521。小垂直线指示FEC帧511、521的边界。
第一FEC帧511的更详细结构在左边示出,而第二FEC帧521的详细结构在右边示出。
在该例子中,两个FEC帧511、521分别具有单个FEC包512和522。两个FEC帧还具有四个非FEC包;因此K=4。
然而,第一FEC帧511包括仅两个媒体包513和两个很小的填充包514。例如使用上面参照图4所述的虚拟填充方法生成填充包514。
相比之下,第二FEC帧521承载大得多的GOP 502,其除了单个FEC包521之外,还专门地包括四个媒体包523。
尽管有该差别,但在两种情况中FEC结构都是N值等于5而K值等于4。
应该注意,所述实施方式可以以各种方式进行变化,并且它们仅构成本发明的各种可能实施方式中的两种。例如,该算法还用于具有不同于直接Reed-Solomon的架构的FEC方案,例如具有所有类型的“矩阵”方法。
Claims (12)
1.一种用于针对编码媒体包的组的序列组合具有编码媒体包和至少一个前向纠错包的前向纠错帧的方法,其中前向纠错帧内编码媒体包的数量被固定为第一预定数量以及其中前向纠错帧内前向纠错包的数量被固定为第二预定数量,所述方法包括:
对于部分包括在先前的前向纠错帧中的编码媒体包的组的没有剩余编码媒体包仍必须被包括在前向纠错帧中的情况,确定多个完全适合于前向纠错帧的编码媒体包的下一个后续组,并且如果有的话,选择与所述确定的编码媒体包的一组或多组相关联的所有编码媒体包以用于所述前向纠错帧;
对于部分包括在先前的前向纠错帧中的编码媒体包的组的剩余编码媒体包仍必须被包括在前向纠错帧中的情况,其中所有所述剩余编码媒体包适合于单个前向纠错帧,确定除所述剩余编码媒体包之外还完全适合于前向纠错帧的编码媒体包的多个下一个后续组,并且如果有的话,选择所述剩余编码媒体包和与所述确定的编码媒体包的一组或多组相关联的所述编码媒体包以用于所述前向纠错帧;
在选择的所述编码媒体包的数量低于所述第一预定数量的情况下,添加包括作为有效载荷中的媒体数据的填充值的包以获得编码媒体包的所述第一预定数量用于所述前向纠错帧;以及
编码所述编码媒体包以获得所述至少一个前向纠错包。
2.根据权利要求1所述的方法,其中对于所述前向纠错帧的传输,包括填充值的所述包被虚拟填充包代替,所述虚拟填充包具有0字节的有效载荷长度并且在有效载荷报头中指示包括所述填充值的所述媒体数据的尺寸。
3.根据权利要求1所述的方法,进一步包括:对于下一组编码媒体数据不完全适合于前向纠错帧或者部分包括在先前的前向纠错中的编码媒体数据的组的所有剩余编码媒体包不适合于单个前向纠错帧的情况,
-确定完全适合于前向纠错帧的下一个后续编码媒体包的最大数量,并且选择所述确定的编码媒体包来用于所述前向纠错帧。
4.根据权利要求1所述的方法,其中对于所述编码,通过添加预定数据到包括在所述选择的编码媒体包中的媒体数据,所有选择的编码媒体包被补充为具有与所述选择的编码媒体包中最大一个相同的尺寸,以及其中每个所述获得的至少一个前向纠错包具有所述选择的编码媒体包的所述最大一个的所述尺寸。
5.根据权利要求4所述的方法,其中对于所述前向纠错帧的传输,所有选择的编码媒体包被以包括的媒体数据的原始尺寸传输,每个编码媒体包包括对所包括的媒体数据的尺寸的指示。
6.一种用于针对编码媒体包的组的序列组合具有编码媒体包和至少一个前向纠错包的前向纠错帧的设备,其中前向纠错帧内编码媒体包的数量被固定为第一预定数量以及其中前向纠错帧内前向纠错包的数量被固定为第二预定数量,所述设备包括:
用于对于部分包括在先前的前向纠错帧中的编码媒体包的组的没有剩余编码媒体包仍必须被包括在前向纠错帧中的情况,确定多个完全适合于前向纠错帧的编码媒体包的下一个后续组,并且如果有的话,选择与所述确定的编码媒体包的一组或多组相关联的所有编码媒体包以用于所述前向纠错帧的装置;
用于对于部分包括在先前的前向纠错帧中的编码媒体包的组的剩余编码媒体包仍必须被包括在前向纠错帧中的情况,其中所有所述剩余编码媒体包适合于单个前向纠错帧,确定除所述剩余编码媒体包之外还完全适合于前向纠错帧的编码媒体包的多个下一个后续组,并且如果有的话,选择所述剩余编码媒体包和与所述确定的编码媒体包的一组或多组相关联的所述编码媒体包以用于所述前向纠错帧的装置;
用于在选择的所述编码媒体包的数量低于所述第一预定数量的情况下,添加包括作为在有效载荷中的媒体数据的填充值的包,以获得编码媒体包的所述第一预定数量来用于所述前向纠错帧的装置;以及
用于编码所述编码媒体包以获得所述至少一个前向纠错包来用于所述前向纠错帧的装置。
7.根据权利要求6所述的设备,包括用于对于所述前向纠错帧的传输,用虚拟填充包代替包括填充值的所述包,所述虚拟填充包具有0字节的有效载荷长度并且在有效载荷报头中指示包括所述填充值的所述媒体数据的尺寸的装置。
8.根据权利要求6所述的设备,包括用于对于下一组编码媒体数据不完全适合于前向纠错帧或者部分包括在先前的前向纠错中的编码媒体数据的组的所有剩余编码媒体包不适合于单个前向纠错帧的情况,确定完全适合于前向纠错帧的下一个后续编码媒体包的最大数量,并且选择所述确定的编码媒体包来用于所述前向纠错帧的装置。
9.根据权利要求6所述的设备,包括用于对于所述编码,通过添加预定数据到包括在所述选择的编码媒体包中的媒体数据,所有选择的编码媒体包被补充为具有与所述选择的编码媒体包中最大一个相同的尺寸的装置,其中每个所述获得的至少一个前向纠错包具有所述选择的编码媒体包的所述最大一个的所述尺寸。
10.根据权利要求9所述的设备,包括用于传输所述前向纠错帧,使得所有选择的编码媒体包被以包括的媒体数据的原始尺寸传输的装置,每个编码媒体包包括对所包括的媒体数据的尺寸的指示。
11.一种包括根据权利要求6的设备的电子设备。
12.一种包括至少一个根据权利要求6的设备和至少一个前向纠错译码器的通信系统。
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
PCT/IB2004/003258 WO2006038055A1 (en) | 2004-10-06 | 2004-10-06 | Assembling forward error correction frames |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101040475A CN101040475A (zh) | 2007-09-19 |
CN101040475B true CN101040475B (zh) | 2012-06-27 |
Family
ID=34958839
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2004800441668A Expired - Fee Related CN101040475B (zh) | 2004-10-06 | 2004-10-06 | 对前向纠错帧进行组合的方法和设备 |
Country Status (7)
Country | Link |
---|---|
US (1) | US7779336B2 (zh) |
EP (1) | EP1797661B1 (zh) |
KR (1) | KR100908646B1 (zh) |
CN (1) | CN101040475B (zh) |
AT (1) | ATE511721T1 (zh) |
TW (1) | TWI357739B (zh) |
WO (1) | WO2006038055A1 (zh) |
Families Citing this family (27)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7826536B2 (en) * | 2005-12-29 | 2010-11-02 | Nokia Corporation | Tune in time reduction |
JP2008011096A (ja) * | 2006-06-28 | 2008-01-17 | Toshiba Corp | Fecエンコード方法、fecデコード方法、fecデコード装置 |
US8010863B2 (en) * | 2006-07-28 | 2011-08-30 | Thomson Licensing | Method and apparatus for synchronizing multiple multimedia streams |
US20080025312A1 (en) * | 2006-07-28 | 2008-01-31 | Qualcomm Incorporated | Zero-header compression for improved communications |
US20080025249A1 (en) * | 2006-07-28 | 2008-01-31 | Qualcomm Incorporated | 1xEVDO WIRELESS INTERFACE TO ENABLE COMMUNICATIONS VIA A SATELLITE RELAY |
US7746882B2 (en) | 2006-08-22 | 2010-06-29 | Nokia Corporation | Method and device for assembling forward error correction frames in multimedia streaming |
KR100819302B1 (ko) * | 2006-12-01 | 2008-04-02 | 삼성전자주식회사 | 광대역 무선 접속 시스템의 멀티캐스트 및 브로드캐스트서비스를 위한 데이터 송수신 방법 |
US8055982B2 (en) * | 2007-02-21 | 2011-11-08 | Sigmatel, Inc. | Error correction system and method |
CN101296055B (zh) * | 2007-04-29 | 2013-01-09 | 华为技术有限公司 | 数据包收发方法及装置 |
EP2145270B1 (en) * | 2007-05-04 | 2016-08-17 | Nokia Technologies Oy | Media stream recording into a reception hint track of a multimedia container file |
US8570869B2 (en) * | 2007-09-21 | 2013-10-29 | Nokia Corporation | Scalable error detection and cross-session timing synchronization for packet-switched transmission |
US20090254794A1 (en) | 2008-04-04 | 2009-10-08 | Nxp B.V. | Method for efficient packet framing in a communication network |
US8245095B2 (en) | 2008-04-30 | 2012-08-14 | Futurewei Technologies, Inc. | Upgraded codeword lock state machine |
US20100183033A1 (en) * | 2009-01-20 | 2010-07-22 | Nokia Corporation | Method and apparatus for encapsulation of scalable media |
WO2010099801A1 (en) * | 2009-03-04 | 2010-09-10 | Telefonaktiebolaget Lm Ericsson (Publ) | Processing of multimedia data |
US8359525B2 (en) | 2009-03-06 | 2013-01-22 | Electronics And Telecommunications Research Institute | Method and apparatus for transmitting data in optical transport network |
EP2566110B1 (de) * | 2011-08-30 | 2014-10-01 | Siemens Aktiengesellschaft | Verfahren zum Übertragen von Telegrammen in einem Automatisierungssystem |
KR20130094160A (ko) * | 2012-01-20 | 2013-08-23 | 삼성전자주식회사 | 스트리밍 서비스를 제공하는 방법 및 장치 |
US10356143B2 (en) * | 2012-10-10 | 2019-07-16 | Samsung Electronics Co., Ltd. | Method and apparatus for media data delivery control |
KR102139721B1 (ko) * | 2013-08-29 | 2020-07-30 | 삼성전자주식회사 | 다중 경로 프로토콜에서 이중으로 네트워크 코딩을 적용하는 방법 및 그 장치 |
WO2015148844A1 (en) * | 2014-03-26 | 2015-10-01 | Nant Holdings Ip, Llc | Protocols for interacting with content via multiple devices, systems and methods |
CN106416266B (zh) | 2014-06-02 | 2019-08-20 | Lg电子株式会社 | 发送广播信号的设备、接收广播信号的设备、发送广播信号的方法以及接收广播信号的方法 |
US20160323063A1 (en) * | 2015-05-01 | 2016-11-03 | Qualcomm Incorporated | Bundled Forward Error Correction (FEC) for Multiple Sequenced Flows |
JP6868802B2 (ja) * | 2015-08-03 | 2021-05-12 | パナソニックIpマネジメント株式会社 | 送信方法、受信方法、送信装置及び受信装置 |
FR3041850B1 (fr) * | 2015-09-30 | 2018-05-25 | Vogo | Procede d'encodage de flux de donnees video basees sur des groupements d'images (gop) |
WO2017107095A1 (en) * | 2015-12-23 | 2017-06-29 | Intel Corporation | Technologies for adaptive erasure code |
CN108667563B (zh) * | 2018-01-19 | 2021-05-11 | 唐桥科技(杭州)有限公司 | 一种前向纠错包个数获取方法及装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1249577A (zh) * | 1998-08-31 | 2000-04-05 | 朗迅科技公司 | 高速光学传输系统用的前向纠错 |
EP0996291A1 (en) * | 1998-10-22 | 2000-04-26 | Lucent Technologies Inc. | Method and apparatus for coding and transmitting MPEG video over the internet |
CN1418418A (zh) * | 2000-01-20 | 2003-05-14 | 北方电讯网络有限公司 | 传输高速数据的可变速率无线信道的帧结构 |
US6609223B1 (en) * | 1999-04-06 | 2003-08-19 | Kencast, Inc. | Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter |
Family Cites Families (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5889791A (en) * | 1996-08-13 | 1999-03-30 | Motorola, Inc. | System, device and method of FEC coding and interleaving for variable length burst transmission |
US5991912A (en) * | 1997-05-15 | 1999-11-23 | Next Level Communications | Digital video transport error handling in cell based communications systems |
US6075545A (en) | 1997-10-29 | 2000-06-13 | Microsoft Corporation | Methods and apparatus for storing, accessing and processing images through the use of row and column pointers |
US6141788A (en) | 1998-03-13 | 2000-10-31 | Lucent Technologies Inc. | Method and apparatus for forward error correction in packet networks |
US6400720B1 (en) * | 1999-06-21 | 2002-06-04 | General Instrument Corporation | Method for transporting variable length and fixed length packets in a standard digital transmission frame |
KR100677070B1 (ko) * | 1999-10-02 | 2007-02-01 | 삼성전자주식회사 | 무선 멀티미디어 통신에서의 비디오 비트스트림 데이터의 오류 제어방법 및 이를 위한 기록 매체 |
US6678855B1 (en) | 1999-12-02 | 2004-01-13 | Microsoft Corporation | Selecting K in a data transmission carousel using (N,K) forward error correction |
US6907020B2 (en) | 2000-01-20 | 2005-06-14 | Nortel Networks Limited | Frame structures supporting voice or streaming communications with high speed data communications in wireless access networks |
US6675340B1 (en) * | 2000-10-19 | 2004-01-06 | Network Equipment Technologies, Inc. | Forward error correction (FEC) for packetized data networks |
US6980567B1 (en) * | 2001-05-10 | 2005-12-27 | Cisco Technology, Inc. | Method of encoding a data packet |
US6745364B2 (en) | 2001-06-28 | 2004-06-01 | Microsoft Corporation | Negotiated/dynamic error correction for streamed media |
US7403828B2 (en) * | 2002-01-16 | 2008-07-22 | Aviom, Inc. | System and method for transmitting and distributing audio or video data over a network system having multiple receivers |
FR2837332A1 (fr) * | 2002-03-15 | 2003-09-19 | Thomson Licensing Sa | Dispositif et procede d'insertion de codes de correction d'erreurs et de reconstitution de flux de donnees, et produits correspondants |
WO2003090363A1 (en) * | 2002-04-19 | 2003-10-30 | Thomson Licensing S.A. | Diversity scheme for error control coding in a system with prioritized data |
KR100448220B1 (ko) * | 2002-10-07 | 2004-09-10 | 한국전자통신연구원 | 디지털 방송 송신 시스템에서의 널 패킷 삽입 방법 및 그장치 |
US7472334B1 (en) * | 2003-10-15 | 2008-12-30 | Scott Thomas P | Efficient method for the reconstruction of digital information |
US7533324B2 (en) * | 2004-09-22 | 2009-05-12 | Kencast, Inc. | System, method and apparatus for FEC encoding and decoding |
-
2004
- 2004-10-06 KR KR1020077007830A patent/KR100908646B1/ko not_active IP Right Cessation
- 2004-10-06 CN CN2004800441668A patent/CN101040475B/zh not_active Expired - Fee Related
- 2004-10-06 EP EP04769568A patent/EP1797661B1/en not_active Not-in-force
- 2004-10-06 AT AT04769568T patent/ATE511721T1/de not_active IP Right Cessation
- 2004-10-06 WO PCT/IB2004/003258 patent/WO2006038055A1/en active Application Filing
-
2005
- 2005-10-04 TW TW094134581A patent/TWI357739B/zh not_active IP Right Cessation
- 2005-10-05 US US11/244,858 patent/US7779336B2/en not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1249577A (zh) * | 1998-08-31 | 2000-04-05 | 朗迅科技公司 | 高速光学传输系统用的前向纠错 |
EP0996291A1 (en) * | 1998-10-22 | 2000-04-26 | Lucent Technologies Inc. | Method and apparatus for coding and transmitting MPEG video over the internet |
US6609223B1 (en) * | 1999-04-06 | 2003-08-19 | Kencast, Inc. | Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter |
CN1418418A (zh) * | 2000-01-20 | 2003-05-14 | 北方电讯网络有限公司 | 传输高速数据的可变速率无线信道的帧结构 |
Also Published As
Publication number | Publication date |
---|---|
US20060107189A1 (en) | 2006-05-18 |
KR20070088580A (ko) | 2007-08-29 |
CN101040475A (zh) | 2007-09-19 |
EP1797661A1 (en) | 2007-06-20 |
ATE511721T1 (de) | 2011-06-15 |
WO2006038055A1 (en) | 2006-04-13 |
EP1797661B1 (en) | 2011-06-01 |
TWI357739B (en) | 2012-02-01 |
US7779336B2 (en) | 2010-08-17 |
TW200625860A (en) | 2006-07-16 |
KR100908646B1 (ko) | 2009-07-21 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101040475B (zh) | 对前向纠错帧进行组合的方法和设备 | |
US7751324B2 (en) | Packet stream arrangement in multimedia transmission | |
JP5374768B2 (ja) | 追加的なネットワーク抽象化層(nal)を用いるマルチメディア・データの保護方法 | |
EP0996292B1 (en) | Method and apparatus for receiving MPEG video over the internet and decoding thereof | |
US6317462B1 (en) | Method and apparatus for transmitting MPEG video over the internet | |
CN101272495B (zh) | 用于传输基于分组的图像帧的方法和装置 | |
FI120125B (fi) | Kuvankoodaus | |
JP3931595B2 (ja) | データ修正装置及びデータ修正方法 | |
US7864805B2 (en) | Buffering in streaming delivery | |
EP1501310A1 (en) | Moving picture data code conversion/transmission method and device, code conversion/reception method and device | |
US20100263007A1 (en) | Method and Apparatus for Increasing Quality of IPTV Transmission | |
EP2783475B1 (en) | Interleaving for layer-aware forward error correction | |
JP4135395B2 (ja) | 符号化パケット伝送受信方法およびその装置ならびにプログラム | |
JP2004523181A (ja) | 非符号化マクロブロックのランレングス符号化方法 | |
JP2004523181A5 (zh) | ||
CN108353183A (zh) | 用于基于图片组(gop)对视频数据流进行编码的方法 | |
US20120213283A1 (en) | Method of decoding a sequence of encoded digital images | |
KR20130044782A (ko) | 멀티미디어 시스템에서 순방향 오류 정정 부호화 방법 및 장치 | |
GB2480819A (en) | Error resilience for multimedia transmission | |
JP2002027476A (ja) | 画像送受信方法及び画像通信システム |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C41 | Transfer of patent application or patent right or utility model | ||
TR01 | Transfer of patent right |
Effective date of registration: 20160114 Address after: Espoo, Finland Patentee after: Technology Co., Ltd. of Nokia Address before: Espoo, Finland Patentee before: Nokia Oyj |
|
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20120627 Termination date: 20161006 |
|
CF01 | Termination of patent right due to non-payment of annual fee |