CN101019326A - 文件下载和流系统 - Google Patents
文件下载和流系统 Download PDFInfo
- Publication number
- CN101019326A CN101019326A CNA2005800010267A CN200580001026A CN101019326A CN 101019326 A CN101019326 A CN 101019326A CN A2005800010267 A CNA2005800010267 A CN A2005800010267A CN 200580001026 A CN200580001026 A CN 200580001026A CN 101019326 A CN101019326 A CN 101019326A
- Authority
- CN
- China
- Prior art keywords
- symbols
- symbol
- input symbols
- source
- code element
- 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.)
- Granted
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/32—Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
-
- 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/29—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 combining two or more codes or code structures, e.g. product codes, generalised product codes, concatenated codes, inner and outer codes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F17/00—Digital computing or data processing equipment or methods, specially adapted for specific functions
-
- 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/37—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
- H03M13/3761—Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35 using code combining, i.e. using combining of codeword portions which may have been transmitted separately, e.g. Digital Fountain codes, Raptor codes or Luby Transform [LT] codes
-
- 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/0045—Arrangements at the receiver 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/0057—Block codes
-
- 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/0064—Concatenated codes
- H04L1/0065—Serial concatenated codes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L27/00—Modulated-carrier systems
- H04L27/02—Amplitude-modulated carrier systems, e.g. using on-off keying; Single sideband or vestigial sideband modulation
- H04L27/06—Demodulator circuits; Receiver circuits
-
- 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/11—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 using multiple parity bits
- H03M13/1102—Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] 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/19—Single error correction without using particular properties of the cyclic codes, e.g. Hamming codes, extended or generalised Hamming codes
Abstract
提供了一种编码用于在通信信道(145)上从源传送到目标的数据的方法。该方法在输入码元(205)的有序集上运算,并包括从输入码元(205)产生多个冗余码元。该方法还包括从包含输入码元和冗余码元的码元的组合集中产生多个输出码元,其中可能的输出码元的数量比码元的组合集中码元的数量多得多,其中至少一个输出码元是从码元的组合集中的一个以上码元、并从码元的组合集中的少于全部码元的码元中产生的,从而输入码元(205)的有序集可从任何预定数量的输出码元中以期望准确度再生。
Description
相关申请
本申请要求对共同待批的于2004年5月7日提交的题为“File Download andStreaming System”的美国临时专利申请60/569,127的优先权,该申请如在本文档中完全陈述地那样通过引用结合于此。
技术领域
本发明涉及在通信系统中编码和解码数据,尤其涉及编码和解码数据以说明传送的数据中的差错和间隔的通信系统。在各实施例中,数据通过广播和/或多点传送无线网络被传送给接收器。
背景技术
发送器和接收器之间文件和流在通信信道上的传送已经成为许多著作的主题。较佳地,接收器想要有一定确定性地接收发送器在信道上传送的数据的准确副本。在信道不具有完美保真度时(包括大多数可全部物理实现的系统),所关心的一方面是如何处理传输中丢失或出错的数据。丢失的数据(删除)常常比遭破坏的数据(差错)更易于处理,因为接收器常常无法分清何时遭破坏的数据是错误接收的数据。已经开发了许多纠错码,用来校正删除和/或差错。通常,所使用的特定代码是基于有关传送数据的信道的失真和所传送的数据的性质的一些信息来选择的。例如,当已知信道具有较长时段的失真时,则突发差错码(burst error code)可能最为适合该应用。在预期到仅仅较短、较少发生的差错的情况下,简单的奇偶检验码可能是最好的。
在传送器和接收器具有通信所需的全部计算能力和电能,且传送器和接收器之间的信道足够干净以供相对无差错的通信使用时,数据传送是直接的。数据传送的问题在信道处于不利环境或者传送器和/或接收器具有有限能力时变得更加困难。
一种方案是使用前向纠错(FEC)技术,其中数据在传送器上编码从而接收器能从传送删除和差错中恢复。在可行时,从接收器到传送器的反向信道供接收器用于与传送器进行有关差错的通信,后者可相应地调整其传送过程。然而,反向信道常常并不可用或可行。例如,当传送器向大量接收器传送时,传送器可能不能处理来自全部这些接收器的反向信道。结果,通信协议常常需要被设计成没有反向信道,从而传送器可能不得不在没有那些信道条件的全视图的情况下广泛地改变信道条件。
传送器和接收器之间的数据传送问题在接收器需要是低功率、可便携或移动的小设备并需要以高带宽接收数据时,变得更加困难。例如,无线网络可设置成从一固定传送器向大量或不确定数量的便携式或移动接收器按照广播或者多点传送来传送文件或流,这些接收器受限于其计算能力、存储器大小、可用电功率、天线大小、设备大小和其它设计约束。
在这种系统中,要作的考虑包括几乎没有或没有反向信道、有限的存储器、有限的计算周期、移动性和定时。较好地,设计应当最小化将数据传送给可能极多接收器所需的传送时间量,其中各个接收器可在不可预期的时间上打开和关闭、移入和移出范围、因链接错误而导致损失、单元(cell)改变、单元中的拥塞,从而使低优先级的文件或流分组暂时中断等。
在用于数据传送的分组协议的情形中,要在分组网络上传送的文件、流、或其它数据块被分成相等大小的输入码元,且输入码元被置入连续的分组中。输入码元的“大小”可用比特来度量,而不管输入码元是否实际上被分成比特流,其中当在从2M个码元的字母表中选择输入码元时,输入码元具有M比特的大小。在这种基于分组的通信系统中,面向分组的编码方案可能是适当的。如果允许预期的接收者即使在面对网络中的删除时也能恢复原始文件的准确副本,则文件传输被称为是可靠的。如果允许预期的接收者即使在面对网络中的删除时也能及时地恢复流的每一部分的准确副本,则流传输被称为是可靠的。在文件或流的一部分不可恢复,或者对于流而言如果流的某些部分不能及时恢复的意义上,文件传输或流传输也可以是有几分可靠的。因为零星的拥塞使路由器中的缓存机制达到其容量限度从而迫使它丢弃输入的分组,所以常常发生分组丢失。对传输期间免遭删除的保护已是许多研究的主题。
众所周知的是,使用连锁反应码来供从文件或流的输入码元中产生任意数量的输出码元。这具有许多用途,包括用与信息复制方法相反的信息附加方法产生输出码元,其中信息复制方法是接收器接收复制接收器已知数据的附加数据。用于产生、使用和操作连锁反应码的各种新技术在例如以下专利(或专利申请)中示出:颁发给Luby的题为“Information Additive Code Generator and Decoder forCommunication Systems”(用于通信系统的信息附加码发生器和解码器)的美国专利6,307,487(“Luby I”),颁发给Luby等人的题为“Information Additive Group CodeGenerator and Decoder for Communication Systems”(用于通信系统的信息附加组码发生器和解码器)的美国专利6,320,520(下文中称为“Luby II”),以及Shokrollahi等人的于2003年3月27日公布的题为“Multi-stage Code Generator and Decoder forCommunication Systems”(用于通信系统的多级码发生器和解码器)的申请号为2003/0058958的美国已公布的专利申请(下文中称为“Shokrollahi”)。在所许可的范围内,其全部揭示内容通过引用结合于此。
连锁反应编码器所产生的输出码元的一个属性是:一接收到足够的输出码元,接收器就能恢复原始文件或原始流的块。具体地,为了较大可能地恢复原始的K个输入码元,接收器需要约K+A个输出码元。比例A/K称为“相对接收开销”。相对接收开销取决于输入码元的数量K,并取决于解码器的可靠性。例如,在一个特定实施例中,且当K等于60,000时,5%的相对接收开销确保解码器以至少1-10-8的概率成功解码所输入的文件或流块,且当K等于10,000时,15%的相对接收开销确保解码器相同的成功概率。在一实施例中,连锁反应码的相对接收开销按照(13*sqrt(K)+200)/K来计算,其中sqrt(K)是输入码元数量K的平方根。在该实施例中,对较小值K,连锁反应码的相对接收开销倾向于较大。
Luby I,Luby II和Shokrollahi提供了可在根据本发明的某些实施例中采用的系统和方法的教示。然而,可以理解,这些系统和方法并非是本发明所必需的,并可使用许多其它变体、更改或替换。
还众所周知的是使用多级连锁反应(“MSCR”)码,诸如在Shokrollahi中描述的和由Digital Fountain Inc.开发的商品名为“Raptor”的码。多级连锁反应码用于例如从源文件或源流中接收输入码元、从中产生中间码元、并使用连锁反应码编码中间码元的编码器。更特别地,从输入码元的有序集中产生要传送的多个冗余码元。多个输出码元从包括输入码元和冗余码元的码元的组合集中产生,其中可能的输出码元的数量比码元的组合集中码元的数量多得多,其中至少一个输出码元是从码元的组合集中的一个以上的码元、以及少于码元的组合集的全部码元的码元中产生的,从而输入码元的有序集可从任何预定数量N的输出码元中以所需准确度而重新产生。
对于一些应用程序,码的其它变体可能更适合或更佳。
发明内容
根据本发明一实施例,提供了编码用于在通信信道上从源传送到目标的数据的方法。该方法对输入码元的有序集操作,并包括从这些输入码元中产生多个冗余码元。该方法还包括从包含输入码元和冗余码元的码元的组合集中产生多个输出码元,其中可能的输出码元的数量比码元的组合集中码元的数量多得多,其中至少一个输出码元是从码元的组合集中的一个以上码元、以及少于码元的组合集的全部码元的码元中产生的,从而输入码元的有序集可从任何预定数量的输出码元中以所需准确度而重新产生。多个冗余码元从输入码元的有序集中产生以以下确定性过程传输,即使用第一输入码元计算的第一个静态码元集与使用不同于第一输入码元的第二输入码元计算的第二个静态码元集具有较少的共同成员。
根据本发明的又一实施例,提供了使用相似技术接收在通信信道上从源传送的数据的系统。该系统包括与的通信信道相耦合用于接收在通信信道上传送的输出码元的接收模块,其中每个输出码元是从输入码元和冗余码元的组合集中的至少一个码元产生的,其中至少一个输出码元是从组合集中的一个以上码元、以及少于组合集的全部码元的码元中产生的,其中可能的输出码元的数量比组合集中码元的数量多得多,其中输入码元来自输入码元的有序集,其中冗余码元从输入码元中产生,且其中所述多个冗余码元是从输入码元的有序集中产生以以下确定性过程传输,即使用第一输入码元计算的第一个静态码元集与使用不同于第一输入码元的第二输入码元计算的第二个静态码元集具有较少的共同成员。
根据本发明的再一实施例,提供了用载波实现的计算机数据信号。
众多优点通过本发明来实现。例如,在一特定实施例中,编码用于在信道上传输的数据的计算开销下降。在另一特定实施例中,解码这种数据的计算开销下降。取决于该实施例,可实现这些优点中的一个或多个。这些和其它优点可通过本说明书在下面更详细地提供。
对在此揭示的本发明性质和优点的进一步理解可通过参照本说明书的剩余部分和附图来实现。
附图说明
图1是根据本发明一实施例的通信系统的框图。
图2是根据本发明一实施例的编码器的框图。
图3是根据本发明一实施例的产生冗余码元的方法的简化框图。
图4是根据本发明一实施例的静态编码器的基本操作的简化框图。
图5是根据本发明一实施例的动态编码器的简化框图。
图6是根据本发明一实施例的动态编码器的基本操作的简化框图。
图7是根据本发明一实施例的静态编码器的简化框图。
图8是根据本发明一实施例的静态编码器的基本操作的简化框图。
图9是根据静态编码器的一特定实施例的用于计算编码参数的方法的简化图。
图10是根据本发明另一实施例的解码器的简化流程图。
图11是根据本发明一实施例的解码器的简化框图。
图12是根据本发明一实施例的解码器的操作的简化流程图。
图13是根据本发明另一实施例的解码器的操作的简化流程图。
图14是根据本发明又一实施例的解码器的操作的简化流程图。
图15是根据本发明一实施例的动态解码器的简化框图。
图16是根据本发明一实施例的静态解码器的简化框图。、
图17示出来自子码元映射的源码元。
图18示出用于各种文件大小的文件下载参数的可能设置。
图19示出用于各种源块大小的流参数的可能设置。
图20示出表示源和中间码元之间关系的矩阵的形式。
图21示出次数发生器的次数分布。
图22示出可用于解码的矩阵A的形式。
详细描述后有三个附录:附录A包含用于系统索引J(K)的示例值;附录B.1包含用于表V0的示例值;以及附录B.2包含用于表V1的示例值。
具体实施方式
在以下所述的各个特定实施例中,描述表示为“多级编码”的编码方案,其各实施例在Shokrollahi中提供。
在此所述的多级编码,以多级来编码数据。通常(但并非总是如此),第一级向数据添加预定量的冗余。然后第二级使用连锁反应码等以从原始数据产生输出码元以及通过第一级编码计算出的冗余码元。在本发明的一特定实施例中,所接收的数据首先使用连锁反应解码过程来解码。如果该过程不能成功地完全恢复原始数据,则可应用第二个解码步骤。
在多级编码的各个实施例中,在第一级编码期间从输入文件或流块中产生冗余码元。在这些实施例中,在第二级编码中,输出码元从输入文件或流块与冗余码元的组合中产生。在一部分这些实施例中,输出码元可按需产生。在第二级包括连锁反应编码的实施例中,每个输出码元可与其它输出码元如何产生无关地生成。一旦生成后,这些输出码元就可置入分组中并传送到其目标,其中每个分组包含一个或多个输出码元。作为替代,也可使用非分组化的传输技术。
当在此使用时,术语“文件”指在一个或多个源上存储并作为一个单元向一个或多个目标传送的任何数据。从而,来自文件服务器或计算机存储设备的文档、图像和文件都是能够被传送的“文件”的示例。文件可以是已知大小(诸如存储在硬盘上的一兆字节的图像)、或未知大小(诸如从流源的输出中取得的文件)。不管是哪种情形,文件都是一系列的输入码元,其中每个输入码元具有文件中的位置和值。
当在此使用时,术语“流”涉及在一个或多个源上存储或产生、并按所产生的顺序在每个时间点上以指定速率向一个或多个目标传送的任何数据。流可以是固定速率或可变速率。因而,MPEG视频流、AMR音频流、以及用于控制远程设备的数据流都是可被传送的“流”的示例。流在每个时间点上的速率可以是已知的(诸如每秒4兆比特)或未知的(诸如每个时间点上的速率事先未知的可变速率流)。不管是哪种情形,流是一系列输入码元,其中每个输入码元都具有流中的位置和值。
传输是为了传送文件或流而通过信道从一个或多个发送器向一个或多个接收器传送数据的过程。发送器有时也称为编码器。如果一个发送器通过完美的信道与任何数量的接收器相连,则由于将准确接收所有数据,则所接收的数据可以是输入文件或流的准确副本。在此,我们假设信道作为大多数实际信道的情形不是完美的。对于许多信道缺陷,两种感兴趣的缺陷是数据删除和数据不完整(可视为是数据删除的特定情形)。数据删除在信道丢失或丢弃数据时发生。直到一部分数据已在下列情形中传送时接收器尚未开始接收数据时,数据不完整才发生:在传输结束之前接收器停止接收数据,接收器选择仅接收所传送数据的一部分、和/或接收器间歇地停止和开始接收数据。作为数据不完整的一个示例,移动卫星发送器可传送表示输入文件或流的数据,并在接收器处于范围内之前开始该传输。一旦该接收器在范围内,则可接收数据直到该卫星移出范围,此时接收器可改变其卫星接收器的方向(在此期间它不接收数据)以开始接收由已移入范围内的另一卫星正在传送的相同输入文件或流。从阅读该说明书可显而易见,数据不完整是数据删除的特定情形,因为接收器可将数据不完整(接收器具有相同的问题)视为:好像接收器全部时间都在范围内,但信道丢失所有数据直到接收器开始接收数据。此外,如在通信系统设计中众所周知的,通过简单地丢弃具有可检测的差错的所有数据块或码元,可检测差的错可被视为等同于删除。
在某些通信系统中,接收器接收由多个发送器(或由使用多个连接的一个发送器)产生的数据。例如,为加快下载,接收器可同时与一个以上传送关于同一文件的数据的发送器相连。作为另一示例,在多点传送传输中,可传送多个多点传送数据流以允许接收者与这些流中的一个或多个相连,从而使得合计传输速率匹配使它们与发送器相连的信道的带宽。在所有这些情形中,所关心的是确保:即使当传输速率对不同流都有很大不同时,并且当有任意模式的损失时,所有传送的数据对接收者都是独立使用的,即,多源数据在各个流之间不是冗余的。
一般而言,通信信道连接发送器和接收器用于数据传送。该通信信道可以是实时信道,其中当信道得到数据时该信道将数据从发送器移到接收器,或者通信信道可以是存储在其从发送器到接收器的传送中的部分或全部数据的存储信道。后者的一个示例是盘存储或其他存储设备。在该示例中,产生数据的程序或设备可被视为发送器,向存储设备传送数据。接收器是从存储设备中读取数据的程序或设备。发送器用来将数据置入存储设备上的机制、存储设备本身、以及接收器用来从存储设备得到数据的机制共同形成了所述信道。如果那些机制或存储设备有丢失数据的机会,则将被视为通信信道中的数据删除。
当发送器和接收器由其中可能删除码元的通信信道分隔时,则最好不传送输入文件或流的准确副本,而是传送从有助于恢复删除的输入文件或流(可包括输入文件或流本身的全部或部分)所产生的数据。编码器是处理该任务的电路、设备、模块或代码段。一种查看编码器的操作的方法是编码器从输入码元中产生输出码元,其中输入码元值的序列表示输入文件或流块。每个输入码元因而会具有输入文件或流块中的位置和值。解码器是从接收器接收的输出码元中重构输入码元的电路、设备、模块或代码段。在多级编码中,编码器和解码器进一步细分成执行不同任务的多个子模块。
在多级编码系统的各个实施例中,编码器和解码器可进一步细分成子模块,每个子模块执行不同任务。例如,在一些实施例中,编码器包括在此称为静态编码器和动态编码器。当在此使用时,“静态编码器”是从输入码元集中产生若干冗余码元的编码器,其中冗余码元的数目在编码之前确定。静态编码码的示例包括里德索罗门(Reed-Solomon)码、龙卷风(Tornado)码、汉明(Hamming)码、低密度奇偶校验(LDPC)码等。术语“静态解码器”在此用来指可解码由静态编码器编码的数据的解码器。
当在此使用时,“动态解码器”是从输入码元集产生输出码元的编码器,其中可能的输出码元的数量的数量级大于输入码元的数量,且其中要产生的输出码元的数量不需要固定。动态编码器的一个示例是连锁反应编码器,诸如Luby I和LubyII中所述的编码器。术语“动态解码器”在此用来指可解码由动态编码器编码的数据的解码器。
多级编码的各个实施例无需受限于任何特定类型的输入码元。通常,输入码元的值是从2M个码元的字母表中选择的,M为某一正整数。在这些情形中,输入码元可由来自输入文件或流的M比特数据序列表示。M的值常常基于例如应用的用途、通信信道、和/或输出码元的大小来确定。此外,输出码元的大小常常基于应用、信道和/或输入码元的大小确定。在一些情形中,如果输出码元值和输入码元值的大小相同(即可由相同数量的比特表示,或从同一字母表中选择),则编码过程能得到简化。如果是这种情形,则所输入码元值大小在输出码元值大小受限时受到限制。例如,可能需要将输出码元置入有限大小的分组中。如果有关关联于输出码元的密钥的某些数据被传送以便于在接收器上恢复该密钥,则输出码元最好足够小以在一个分组中容纳输出码元值和有关密钥的数据。
作为示例,如果输入文件是一多兆字节文件,则该输入文件可分成数千、数万、或数十万个输入码元,其中每个输入码元编码数千、数百、或仅数个字节。作为另一示例,对于基于分组的因特网信道,具有1024字节大小的有效载荷的分组可能是适当的(一个字节是8比特)。在该示例中,假设每个分组包含一个输出码元和8个字节的辅助信息,8128比特的输出码元大小((1024-8)*8)会是适当的。因而,输入码元大小可被选为M=(1024-8)*8或8128比特。作为又一示例,一些卫星系统使用MPEG分组标准,其中每个分组的有效载荷包括188个字节。在该示例中,假设每个分组包含一个输出码元和4个字节的辅助信息,1472比特的输出码元大小((188-4)*8)会是适当的。因而,输入码元大小可被选为M=(188-4)*8或1472比特。在使用多级编码的通用通信系统中,诸如输入码元大小(即由输入码元编码的比特数量M)的应用特定(application-specific)的参数可以是由应用设置的变量。
作为另一示例,对于使用可变大小的源分组的流,码元大小可被选成相当小,从而每个源分组可用整数数量的输入码元覆盖,这些输入码元具有比源分组稍大一些的合计大小。
每个输出码元都具有值。在以下考虑的一个较佳实施例中,每个输出码元还与称为其“密钥”的标识符相关联。较佳地,每个输出码元的密钥可由接收器来简便地确定,以使接收器能从其他输出码元中辨认一个输出码元。较佳地,输出码元的密钥不同于所有其他输出码元的密钥。本领域中所讨论的有各种形式的密钥方法。例如,Luby I描述可在本发明各个实施例中采用的各种形式的密钥方法。
在预期有数据删除时或当接收器没有正好在传送开始和结束时开始和结束接收时,多级编码特别有用。后一条件在此被称为“数据不完整”。对于删除事件,多级编码享有Luby I中所述的连锁反应编码的许多优点。特别地,多级输出码元是信息附加的,因此任何适当数量的分组可用来将输入文件或流恢复到所需准确度。这些条件在使用多级编码时不会不利地影响通信过程,因为用多级编码生成的输出码元是信息附加的。例如,如果100个分组因为噪音突发而丢失从而导致数据删除,则可在该突发后拾取额外的100个分组以替换被删除分组的丢失。如果数千分组因为接收器未在开始传送时调入传送器而丢失,则接收器可从任何其它传输时段、甚至从另一传送器中拾取该数千分组。使用多级编码,接收器未受限于拾取任何特定的分组集,所以它可从一个传送器中接收一些分组、切换到另一个传送器、丢失一些分组、丢失给定传输的开始或结束、并仍然恢复输入文件或流块。无需接收器-传送器合作而加入和离开传输的能力有助于简化该通信过程。
在一些实施例中,使用多级编码传送文件或流可包括从输入文件或流块中产生、形成或提取输入码元,计算冗余码元,将输入和冗余码元编码成一个或多个输出码元,其中每个输出码元是基于其密钥而独立于所有其它输出码元而产生的,以及在信道上将输出码元传送给一个或多个接收器。此外,在一些实施例中,使用多级编码接收(和重构)输入文件或流块的副本可包括从一个或多个数据流中接收输出码元的某个集或子集,并从接收到的输出码元的值和密钥中解码输入码元。
在此所述的适当的FEC删除码可用来克服上述困难,并会在包括多媒体广播和多点传送系统及服务的众多领域中找到用途。下文称为“多级连锁反应码”的FEC删除码具有符合这些系统和服务的许多当前和将来的要求的属性。
多级连锁反应码的一些基本属性是,对于任何分组丢失情形以及传送任何相关大小的源文件或任何相关速率的流:(a)每个接收器设备(“RD”)的接收开销最小化;(b)将源文件传送给任何数量的RD所需的总传输时间可最小化;(c)通过适当地选择传输时间表,传送给任何数量RD的流的质量可为相对于输入码元的数量而发送的输出码元的数量最大化。RD可以是手持式设备、可装在车辆中、可以是便携式(即可移动但使用时通常不移动)或固定在某一位置。
解码所需的工作存储器的数量较少并仍然能提供以上属性,并且编码和解码所需的计算量是最少的。在该文档中,我们提供简便的方法来实现多级连锁反应码的一些变体的描述。
多级连锁反应码是源泉码(fountain code),即所需的编码分组可在工作中产生,每一个都包含等效用于恢复源文件或流块的唯一编码码元。使用源泉码而非其它类型的FEC码有许多优点。一个优点是:不管分组丢失情形和RD可用性如何,源泉码最小化每个RD需要接收以重构源文件或流块的编码分组的数量。即使在苛刻的分组丢失情形中,且当例如移动RD在长文件下载会话上仅间歇地打开或可用时,这也是真的。
另一个优点是按需准确地产生编码分组,判断在传输进行时要在工作中产生多少编码分组。如果例如有来自RD反馈指示是否它们接收了足够的编码分组来回复源文件或流块,则这可能是有用的。当分组丢失情形没有预期的严重时,则该传输可及早予以结束。当分组丢失情形比预期的更严重时,或者RD比预期更频繁地不可用时,则该传输可无缝地延长。
另一个优点是逆复用的能力。逆复用是当RD能组合接收到的在独立发送器上产生的编码分组时,重构源文件或流块。逆复用的一种实际用途如下参照从不同接收器接收编码分组来描述。
在将来的分组丢失、RD可用性和应用情形难以预测的情况下,重要的是选择尽可能灵活的FEC方案以在不可预测情形下良好地工作。多级连锁反应码提供了其它类型的FEC码难以匹敌的灵活度。
本发明的各个方面将参照附图进行描述。
系统综述
图1是使用多级编码的通信系统100的框图。在通信系统100中,输入文件101或输入流105被提供给输入码元发生器110。输入码元发生器110从输入文件或流中产生一个或多个输入码元(IS(0),IS(1),IS(2)...)的一个序列,其中每个输入码元具有值和位置(在图1中示为加括号的整数)。如上所述,输入码元的可能值,即其字母表,通常是2M个码元的字母表,从而每个输入码元对输入文件或流的M个比特编码。M的值通常通过使用通信系统100确定,但通用系统可包括对输入码元发生器110的码元大小输入,从而M可在使用时变化。输入码元发生器110的输出被提供给编码器115。
静态密钥发生器130产生静态密钥S0、S1……的流。所产生静态密钥的数量通常受到限值并取决于编码器115的特定实施例。静态密钥的产生随后将作更详细的描述。动态密钥发生器120对要由编码器115产生的每个输出码元产生动态密钥。每个动态密钥被生成为同一输入文件或流块的大部分动态密钥都是唯一的。例如,Luby I描述了可使用的密钥发生器的各个实施例。动态密钥发生器120和静态密钥发生器130的输出被提供给编码器115。
根据动态密钥发生器120提供的每个密钥I,编码器115从输入码元发生器提供的输入码元中产生值为B(I)的输出码元。编码器115的操作将在后面详细描述。根据每个输出码元的密钥、一个或多个输入码元的某一函数、以及可能根据已从输入码元计算出的一个或多个冗余码元,产生每个输出码元的值。产生特定输出码元的输入码元和冗余码元的集合在此被称为输出码元的“关联码元”或仅称为其“关联”。函数(“值函数”)和关联的选择是根据以下更详细描述的过程来完成的。通常,但并非总是这样,M对输入码元和输出码元是相同的,即它们都对相同数量的比特编码。
在一些实施例中,输入码元的数量K由编码器115用来选择关联。如果K为事先未知,诸如输入为流式文件的情况,则K仅是估计值。值K还可由编码器115用来分配对输入码元和由编码器115产生的任何中间码元的存储。
编码器115将输出码元提供给传送模块140。传送模块140还被供以来自动态密钥发生器120的每个输出码元的密钥。传送模块140传送输出码元,并取决于所使用的密钥方法,传送模块140还可在信道145上向接收模块150传送有关所传送的输出码元的密钥的一些数据。信道145假设为删除信道,但并非是通信系统100的正常操作所必需的。模块140、145和150可以是任何适当硬件组件、软件组件、物理介质、或其任何组合,只要传送模块140适于向信道145传送输出码元和有关其密钥的任何所需数据,而接收模块150适于从信道145接收码元和可能的有关其密钥的一些数据。K的值,如果用来确定关联,则可在信道145上发送,或者它按照编码器115和解码器155达成的协议预先设置。
如上所述,信道145可以是实时信道,诸如通过因特网的路径、或者从电视传送器到电视接收器的广播链接、或者从一个点到另一个点的电话连接,或者信道145可以是存储信道,诸如CD-ROM、盘驱动器、网站等。信道145甚至可以是实时信道和存储信道的组合,诸如当一个人通过电话线将输入文件从个人计算机传送到因特网服务供应商(ISP)、输入文件存储在Web服务器上并随后通过因特网传送给了接收器时形成的信道。
因为信道145被假设为删除信道,所以通信系统100不假定从接收模块150出来的输出码元与进入传送模块140的输出码元之间的一对一对应性。实际上,当信道145包括分组网络时,通信系统100甚至可能不能假设任意的两个或多个分组的相对顺序在通过信道145传送时得以保留。因此,输出码元的密钥是使用上述一个或多个密钥方案来确定的,并且无需按照输出码元从接收模块150出来的顺序来确定。
接收模块150向解码器155提供输出码元,并且接收模块150接收的有关这些输出码元的密钥的任何数据被提供给动态密钥发生器160。动态密钥发生器160重新产生接收到的输出码元的动态密钥,并将这些动态密钥提供给解码器155。静态密钥发生器163重新产生静态密钥S0、S1……并将它们提供给解码器155。静态密钥发生器可访问在编码和解码过程期间使用的随机数发生器135。这可以是如果随机数在物理设备上产生则访问该相同设备的形式,或者访问产生随机数的相同算法以实现同样动作的形式。解码器155使用动态密钥再生器160和静态密钥发生器163提供的密钥、以及相应的输出码元,以恢复输入码元(再一次为IS(0),IS(1),IS(2),…)。解码器155向产生输入文件101或输入流105的副本170的输入文件重组器165提供恢复的输入码元。
编码器
图2是图1中示出的编码器115的一个特定实施例的框图。编码器115包括静态编码器210、动态编码器220、和冗余计算器230。静态编码器210接收以下输入:a)由输入信号发生器110提供的并存储在输入码元缓冲器205中的原始输入码元IS(0),IS(1),……IS(K-1);b)原始输入码元的数量K;c)由静态密钥发生器130提供的静态密钥S0,S1,……;以及d)R个冗余码元。在接收这些输入之后,静态编码器205如以下所述地计算R个冗余码元RE(0),RE(1),……,RE(R-1)。通常,但并非总是如此,冗余码元具有与输入码元相同的大小。在一特定实施例中,静态编码器210产生的冗余码元存储在输入码元缓冲器205中。输入码元缓冲器205可以只是逻辑的,即,文件或流块可物理地存储在一个地方,且输入码元在码元缓冲器205内的位置只是这些码元在原始文件或流块内位置的重命名。
动态编码器接收输入码元和冗余码元并产生输出码元,如下更详细地描述。在冗余码元存储于输入码元缓冲器205的一个实施例中,动态编码器220从输入码元缓冲器205中接收输入码元和冗余码元。
冗余计算器230从K个输入码元中计算R个冗余码元。该计算在后面进行更详细的描述。
静态编码器的综述
静态编码器210的一般操作参照图3和4示出。图3是示出静态编码方法的一个实施例的简化流程图。在步骤305,跟踪已产生多少冗余码元的变量j被设置为0。然后,在步骤310,码元按照至少一些输入码元IS(0),……IS(K-1)的函数F0计算第一冗余码元RE(0)。然后,在步骤315,变量j增1。然后,在步骤320,测试是否已产生了全部的冗余码元(即j>R-1?)如果是,则流程结束。否则,流程继续到步骤325。在步骤325,按照输入码元IS(0),……,IS(K-1)和先前产生的冗余码元RE(0),……,RE(j-1)的函数Fj来计算RE(j),其中Fj无需是依赖于每一个输入码元或每一个冗余码元的函数。重复步骤315,320和325直到已计算了R个冗余码元。
再参看图1和2,在一些实施例中,静态编码器210从静态密钥发生器130中接收一个或多个静态密钥S0,S1,……。在这些实施例中,静态编码器210使用静态密钥来确定部分或全部函数F0,F1,……,Fj-1。例如,静态密钥S0可用来确定函数F0,静态密钥S1可用来确定函数F1等。或者,一个或多个静态密钥S0,S1,……可用来确定函数F0,一个或多个静态密钥S0,S1,……可用来确定函数F1等。在其它实施例中,不需要静态密钥,因而也不需要静态密钥发生器130。
现在参看图2和3,在一些实施例中,静态编码器210产生的冗余码元可存储在输入码元缓冲器205中。图4是静态编码器210的一个实施例的操作的简化视图。特别地,静态编码器210产生码元按照从输入码元缓冲器205接收的输入码元IS(0),……,IS(K-1),RE(0),……,RE(j-1)的函数来产生冗余码元RE(j),,并将其存储回输入码元缓冲器205。函数F0,F1,……,FR-1的准确形式取决于特定应用。通常,但并非总是如此,函数F0,F1,……,FR-1包括部分或全部相应自变量的异或。如上所述,这些函数实际上可采用或不采用图1的静态密钥发生器130所产生的静态密钥。例如,在以下所述的一个特定实施例中,前几个函数实现汉明码而不使用静态密钥S0,S1……,而剩下的函数实现低密度奇偶校验码并使用静态密钥。
多级编码器的综述
再参看图2,动态编码器220接收输入码元IS(0),……,IS(K-1)和冗余码元RE(0),……,RE(R-1),以及它要对每个输出码元产生的密钥I。包括原始输入码元和冗余码元的集合将在下文中称为“动态输入码元”的集合。图5是动态编码器的一个实施例的简化框图,包括权重选择器510、关联器515、值函数选择器520和计算器525。如图5所示,K+R个动态输入码元被存储在动态码元缓冲器505中。实际上,动态编码器500执行图6所示的动作,即,按照选定输入码元的一些值函数产生输出码元值B(I)。
图7是根据本发明的静态编码器的一特定实施例的简化框图。静态编码器600包括参数计算器605、汉明编码器610、以及低密度奇偶校验(LPDC)编码器620。汉明编码器610被耦合成接收来自输入码元缓冲器625的输入码元IS(0),……,IS(K-1)、输入码元个数K、和参数D。作为响应,汉明编码器610根据汉明码产生D+1个冗余码元HA(0),HA(1),……,HA(D)。
图8示出采用图7中示出的静态编码器的本发明的一个实施例的操作。
图9是示出参数计算器的一个实施例的简化流程图,诸如图7的如上所述计算参数D和E的参数计算器605。首先,在步骤705,参数D被初始化为1。然后,在步骤710,确定2D-D-1是否小于K。如果不是,则流程继续到步骤730。如果是,则流程继续到步骤720,其中参数D增1。然后,流程回到步骤710。一旦已确定D,则在步骤730,参数按照R-D-1计算参数E。
图10是根据本发明一实施例的这种编码器的简化流程图,如下所述。首先,在步骤805,变量i被初始化为0。变量i跟踪已产生冗余码元的数量。在步骤810,按照大于或等于K/2的最小奇数来计算数字t。在步骤815,值P1,P2,……,Pt基于K、t和静态密钥Si产生。值P1,P2,……,Pt指示将用来产生冗余码元的输入码元的位置。在一特定实施例中,诸如图5的关联器515的关联器被用来产生P1,P2,……,Pt。特别地,值t可被提供为W(I)输入,值K可被提供为K+R输入,而静态密钥Si可被提供为密钥I输入。应注意,许多不同的值t会产生相似的编码效果,因而该特定选择仅是一示例。在步骤820中,按照值IS(P1),IS(P2),……,IS(Pt)的XOR来计算RE(i)。在步骤825,变量i增1以准备计算下一冗余码元,且在步骤830确定是否已计算了全部冗余码元。如果不是,则流程返回步骤815。
图11是示出根据本发明的解码器的一个实施例的简化框图。解码器900可用来例如实现图1的解码器155。
解码器900包括动态解码器905和静态解码器910。动态解码器905所恢复的输入码元和冗余码元被存储在重组缓冲器915中。在完成动态解码之后,静态解码器910尝试恢复动态解码器905尚未恢复的任何输入码元(如果有的话)。特别地,静态解码器910从重组缓冲器915中接收输入码元和冗余码元。
图12是示出根据本发明的用于解码的方法的一个实施例的简化流程图。在步骤1005,Q个输出码元由解码器接收。Q的值取决于输入码元的数量和所使用的特定动态编码器。Q的值还取决于解码器能恢复输入码元的所期望的准确度。例如,如果希望解码器可较大可能地恢复全部输入码元,则Q应选为比输入码元的数量大。特别地,在一些应用中,当输入码元的数量较大时,Q可比原始输入码元的数量大3%不到。在其它应用中,当输入码元的数量较小时,Q可比输入码元的数量大至少10%。具体地,Q可选为输入码元的数量K加上数A,其中A被选为确保解码器可较大可能地再生全部输入码元。数A的确定在下面更详细地描述。如果对解码器而言(有时或总是)不能解码全部输入码元是可接受的,则Q可小于K+A、等于K、或者甚至小于K。显然,整体编码系统的一个目的常常是尽可能地减小数Q,同时保持对参照所需准确度的解码过程的成功的较大概率保证。
在步骤1010,动态解码器905从所接收的Q个输出码元中重新产生输入码元和冗余码元。可以理解,步骤1005和1010实际上可并发执行。例如,动态解码器905可在解码器接收Q个输出码元之前再生输入码元和冗余码元。
在动态解码器905已处理Q个输出码元之后,确定输入码元是否已恢复到期望准确度。期望准确度可以是例如全部输入码元、或少于全部输入码元的部分数量或百分比等。如果是,则该流程结束。如果不是,则流程继续到步骤1020。在步骤1020,静态解码器910尝试恢复动态解码器905不能恢复的任何输入码元。在静态编码器910已处理了动态编码器905所恢复的输入码元和冗余码元之后,流程结束。
图13是示出根据本发明的用于解码的方法的另一实施例的简化流程图。该实施例与参照图11所述的相似,并包括共同步骤1005、1010、1015和1025。但是,在步骤1025之后,流程继续到步骤1030,其中确定输入码元是否已恢复到期望准确度。如果是,则流程结束。如果不是,则流程继续到步骤1035。在步骤1035,接收一个或多个额外的输出码元。然后,流程返回步骤1010,从而动态解码器905和/或静态解码器910可尝试恢复剩余的未恢复的输入码元。
图14是根据本发明的用于解码的方法的又一实施例的简化流程图。在步骤1055,输出码元由解码器接收,而在步骤1060,动态解码器905从所接收的输出码元中再生输入码元和冗余码元。然后,在步骤1065,确定动态解码是否应结束。该确定可基于所处理的输出码元的数量、所恢复的输入码元的数量、其它输入码元当前的恢复速率、处理输出码元所花的时间等的一个或多个。
在步骤1065,如果确定不要终止动态解码,则流程继续回到步骤1055。但是,如果在步骤1065确定结束动态解码,则流程继续到步骤1070。在步骤1070,确定输入码元是否已恢复到期望准确度。如果是,则流程结束。如果不是,则流程继续到步骤1075。在步骤1075,静态解码器910尝试恢复动态解码器905未能恢复的任何输入码元。在静态解码器910已处理了动态解码器905所恢复的输入码元和冗余码元之后,流程结束。
图15示出根据本发明的动态解码器的一个实施例。动态解码器1100包括与图5所示的动态编码器相似的组件。解码器1100与Luby I和Luby II中所述的连锁反应解码器的实施例相似。动态解码器1100包括权重选择器510、关联器515、值函数选择器520、输出码元缓冲器1105、缩减器1115、重组器1120和重组缓冲器1125。
图16是示出静态解码器的一个实施例的简化框图。该实施例可在数据用诸如参照图7所述的静态编码器编码时使用。静态解码器1200包括LDPC解码器1205和汉明解码器1210。LDPC解码器1205从重组缓冲器1215中接收输入码元和冗余码元,并尝试重组在动态解码器的解码步骤之后重组缓冲器1215未恢复的那些码元。在一些实施例中,重组缓冲器1215是重组缓冲器1125(图15)。
LDPC解码器和汉明解码器的许多变体都是本领域技术人员所众所周知的,并可在根据本发明的各个实施例中采用。在一特定实施例中,汉明解码器使用高斯消元算法来实现。高斯消元算法的许多变体是本领域技术人员众所周知的,并可在根据本发明的各个实施例中采用。
变体
如上所述的多级连锁反应码不是系统码,即,源块的全部原始源码元没有必要在所发送的编码码元中。然而,系统FEC码对文件下载系统或服务有用,并且对流系统或服务是非常重要的。如在以下实现中所示,更改后的码可变成是系统的,并仍然保持源泉码和其它所述属性。
使用多级码便于构建多种补充服务的一个原因是:它可组合接收到的来自多个发送器的编码码元以重构源文件或流,而无需在各发送器之间进行协调。唯一的要求是发送器使用不同的密钥集来产生它们用编码分组发送给码的编码码元。实现方法包括:指定每个发送器要使用的不同的密钥空间范围,或在每个发送器上随机产生密钥。
作为使用该能力的一个示例,考虑向文件下载服务提供一补充服务,以允许未从文件下载会话中接收足够的重构源文件的编码分组的多级连锁反应码请求例如通过HTTP会话从组成发送器中发送其它编码分组。组成发送器从源文件中产生编码码元并例如使用HTTP发送它们,并且所有这些编码码元都能与从文件下载会话中接收的编码码元相组合,以恢复该源文件。使用该方法使不同的发送器能提供增量式源文件传送服务而无需在发送器之间进行协调,并确保每个接收器仅需要接收最少量的编码分组,以恢复每个源文件。
多级码的各级的实现
FEC方案定义
使用这些技术的分组可呈现为具有标头信息,诸如包括源块号码(SBN)(分组内编码码元与之相关的源块的16比特整数标识符)、以及编码码元ID(ESI)(分组内编码码元的16比特整数标识符)的4个八位字节的FEC有效负载ID。源块号码和编码码元标识符的一个适当解释在以下小节B中定义。FEC对象传输信息可包括FEC编码ID、传送长度(F)和以下定义的参数T、Z、N和A。参数T和Z是16比特的无符号整数,N和A是8比特的无符号整数。
用于MBMS前向纠错的FEC编码方案在以下各小节中定义。它定义两种不同的FEC有效载荷ID格式,一种用于FEC源分组而另一种用于FEC修复分组,但非系统码的变体也是可能的。
源FEC有效载荷ID可包括源块号码(SBN)(分组内编码码元与之相关的源块的16比特整数标识符)、以及编码码元ID(ESI)(分组内编码码元的16比特整数标识符),而修复FEC有效载荷ID可包括源块号码(SBN)(分组内修复码元与之相关的源块的16比特整数标识符)、编码码元ID(ESI)(分组内修复码元的16比特整数标识符)、以及源块长度(SBL)(16比特,表示源码元在源块中的数量)。源块号码、编码码元标识符和源块长度如下作定义。
FEC对象传输信息可包括FEC编码ID、以码元为单位的最大源块长度、以及以字节为单位的码元大小。码元大小和最大源块长度可包括4个八位字节的码元大小(T)(表示以字节为单位的编码码元的大小的16比特)、以及最大源块长度(表示以码元为单位的源块的最大长度的16比特)。
以下小节指定系统MSCR前向纠错码及其在MBMS中的应用和其它用途。MSCR是源泉码,即,按所需那么多的编码码元可由编码器在工作中从块的源码元中产生。解码器能从数量上仅比源码元数量略多一点的任何编码码元集中恢复源块。在该文档中描述的码是系统码,即原始源码元以及众多修复码元未经更改地从发送器发送到接收器。
B.1.定义、码元和缩写
B.11定义
为了本说明书的目的,应用以下术语和定义。
源块:为MSCR编码目的考虑的K个源码元的块。
源码元:在编码过程期间使用的最小单位的数据。源块内的所有源码元都具有相同的大小。
编码码元:包括在数据分组中的码元。编码码元包括源码元和修复码元。从源块产生的修复码元与该源块的源码元大小相同。
系统码:其中源码元被包括作为对源块发送的编码码元的一部分的码。
修复码元:为不是源码元的对源块发送的编码码元。修复码元基于源码元产生。
中间码元:使用逆编码过程从源码元中产生的码元。然后修复码元直接从中间码元中产生。编码码元不包括中间码元,即,中间码元不包括在数据分组中。
码元:数据单位。以字节为单位的码元大小被称为码元大小。
编码码元组:一起发送(即在同一分组内)的编码码元组,其与源码元的关系可从单个编码码元ID中导出。
编码码元ID:定义编码码元组的各个码元和源码元之间关系的信息。
编码分组:包含编码码元的数据分组。
子块:源块有时被分成子块,每个子块都足够小以在工作存储器中被解码。对于包括K个源码元的源块,每个子块包括K个子码元,源块的每个码元由来自每个子块的一个子码元构成。
子码元:码元的一部分。每个源码元由像源块中的子块一样多的子码元构成。
源分组:包含源码元的数据分组。
修复分组:包含修复码元的数据分组。
B.1.2符号
i,j,x,h,a,b,d,v,m | 表示正整数 |
ceil(x) | 表示大于或等于x的最小正整数 |
choose(i,j) | 表示可从i个对象中不重复地选择j个对象的方法的数量 |
floor(x) | 表示小于或等于x的最大正整数 |
i%j | 表示i模j |
X^Y | 表示对于相等长度的比特串X和Y,逐个比特地异或X和Y。 |
A | 表示码元对齐参数。码元和子码元的大小都受限于A的倍数。 |
AT | 表示矩阵A的转置矩阵 |
A-1 | 表示矩阵A的逆矩阵 |
K | 表示单个源块中的码元数量 |
KMAX | 表示可在单个源块中的源码元的最大数量。设置成8192。 |
L | 表示单个源块的预编码码元的数量。 |
S | 表示单个源块的LDPC码元的数量。 |
H | 表示单个源块的半码元的数量。 |
C | 表示中间码元的数组,C[0],C[1],C[2],……,C[L-1] |
C’ | 表示源码元的数组,C’[0],C’[1],C’[2],……,C’[K-1] |
X | 非负整数值 |
V0,V1 | 4-字节整数的两个数组,V0[0],V0[1],V0[2],……,V0[255]和V1[0],V1[1],V1[2],……,V1[255] |
Rand[X,i,m] | 伪随机数发生器 |
Deg[v] | 次数发生器 |
LTEnc[K,C,(d,a,b)] | LT编码码元发生器 |
Trip[K,X] | 三元发生器函数 |
G | 编码码元组内码元的数量 |
N | 源块内子块的数量 |
T | 以字节为单位的码元大小。如果源块不分成子块,则T=T’·N。 |
T’ | 以字节为单位的子码元大小。如果源块不分成子块,则T’是不相关的。 |
F | 以字节为单位的用于文件下载的文件大小 |
I | 以字节为单位的子块大小 |
P | 对文件下载,以字节为单位的每个分组的有效载荷大小,用于文件下载传输参数的推荐导出。对于流,以字节为单位的每个修复分组的有效载荷大小,用于流传输参数的推荐导出。 |
Q | Q=65521,Q是比216小的最大质数。 |
Z | 用于文件下载的源块数量 |
J(K) | 与K相关联的系统索引 |
G | 表示任何发生器矩阵 |
IS | 表示SxS单位矩阵 |
OSxH | 表示SxH零矩阵 |
B.1.3缩写
以下缩写用于本文档:
ESI | 编码码元ID |
LDPC | 低密度奇偶校验 |
LT | Luby变换 |
SBN | 源块号码 |
SBL | 源块长度(以码元为单位) |
B.2.综述
MSCR前向纠错码可应用于MBMS文件传送和MBMS流应用。对每个这些应用特定的MSCR码方面在本文档的小节B.3和B.4中讨论。
系统MSCR码的构成是小节B.5中所述的基本编码器。首先,描述如何从原始源码元中导出中间码元集的值,使得知道了中间码元就足以重构源码元。其次,编码器产生修复码元,它们是众多中间码元的异或。编码码元是源和修复码元的组合。修复码元被生成为中间码元和因此源码元可从任何足够大的编码码元集中恢复。
本文档定义系统MSCR码编码器。众多可能的解码算法是可能的。一种有效的解码算法在小节B.6中提供。
中间和修复码元的构建部分地基于小节B.5中所述的伪随机数发生器。该发生器基于可用于发送器和接收器的512个随机数的一个固定集。一个示例数集如附录B.1中所提供。
最终,中间码元根据源码元的构建受“系统索引”管理。系统索引的值的示例集如附录A中所示,用于从4个源码元到KMAX=8192个源码元的源块大小。
B.3.文件下载
B.3.1源块构建
B.3.1.1概述
为了将MSCR编码器应用于源文件,文件可分成Z≥1块,称为源块。MSCR编码器独立地应用于每个源块。每个源块由唯一的整数源块号码(SBN)标识,其中第一源块具有SBN 0,第二源块具有SBN 1等等。每个源块被分成K个大小为T个字节的源码元。每个源码元由唯一的整数编码码元标识符(ESI)标识,其中源块的第一源码元具有ESI 0,第二源码元具有ESI 1等。
每个具有K个源码元的源块被分成N≥1个子块,子块足够小以在工作存储器中被解码。每个子块被分成大小为T’的K个子码元。
注意,K值对文件的每个源块没有必要是相同的,而T’值对源块的每个子块也没有必要是相同的。然而,码元大小T对文件的所有源块都是相同的,且码元数K对源块的每个子块都相同。文件到源块和子块的确切划分如下在B.3.1.2中所述。
图17示出置入两维数组的一示例源块,其中每个条目是T’字节的子码元,每行是子块而每列是源码元。在该示例中,T’值对每个子块都相同。每个子码元条目中所示的数字指示其在源块内的原始顺序。例如,标号为K的子码元包含该源块的T’·K~T’·(K+1)-1字节。然后,源码元i是来自每个子块的第i个子码元的串联拼接,它对应于标号为i,K+i,2·K+i,……,(N-1)·K+i的源块的子码元。
B.3.1.2源块和子块划分
源块和子块的构建基于5个输入参数F、A、T、Z和N以及函数Partition[]来确定。5个输入参数定义如下:
F 以字节为单位的文件的大小
A 以字节为单位的码元对齐参数
T 以字节为单位的必须是A的倍数的码元大小
Z 源块的数量
N 每个源块中子块的数量
这些参数可设置成使ceil(ceil(F/T)/Z)≤KMAX。推导这些参数的推荐在小节B.3.4中提供。
函数Partition[]取一对整数(I,J)为输入,并导出4个整数(IL,IS,JL,JS)作为输出。具体地,Partition[I,J]是4个整数(IL,IS,JL,JS)的一个序列,其中IL=ceil(I/J),IS=floor(I/J),JL=I-IS·J和JS=J-JL。Partition[]导出用于将块的大小I分成J个大小近似相等的块的参数。具体地,JL个长度为IL的块以及JS个长度为IS的块。
源文件可如下分成多个源块和子块:
设Kt=ceil(F/T)
(KL,KS,ZL,ZS)=Partition[Kt,Z]
(TL,TS,NL,NS)=Partition[T/A,N]
然后,文件可被分成Z=ZL+ZS个连续源块,前ZL个源块每个都具有长度KL·T字节,而剩下的ZS个源块每个都具有KS·T字节。
如果Kt·T>F,则出于编码目的,最后一个码元可在末端用Kt·T-F个零字节填充。
然后,每个源块可分成N=NL+NS个连续子块,前NL个子块每个都包括大小为TL·A的K个连续子码元,而剩下的NS个子块每个都包括大小为TS·A的K个连续子码元。码元对齐参数A确保子码元总是A的倍数字节。
最后,源块的第m个码元包括来自N个子块的每一个的第m个子码元的串联拼接。
B.3.2编码分组构建
B.3.2.1概论
每个编码分组包含以下信息:
源块号码 (SBN)
编码码元 ID(ESI)
编码码元 (s)
每个源块独立于其它源块编码。源块从0开始连续编号。
从0到K-1的编码码元ID值标识各源码元。K以上的编码码元ID标识修复码元。
B.3.2.2编码分组构建
每个编码分组最好完全由源码元构成(源分组),或者完全由修复码元构成(修复分组)。分组可包含来自相同源块的任何数量的码元。在分组中最后一个码元包括为FEC编码目的添加的填充字节的情形中,这些字节不需要包括在分组中。否则,只可包括完整的码元。
在每个源分组中携带的编码码元ID X是在该分组中携带的第一源码元的编码码元ID。该分组中的后续的源码元具有按顺序排列的编码码元ID X+1~X+G-1,其中G是分组中码元的数量。
类似地,置入修复分组中的编码码元ID X是修复分组中第一修复码元的编码码元ID,且该分组中的后续的修复码元具有按顺序排列的编码码元ID X+1~X+G-1,其中G是分组中码元的数量。
注意,接收器不需要知道修复分组的总数量。置入具有ESI X的修复分组的修复码元的G个修复码元三元组(d[0],a[0],b[0]),……,(d[G-1],a[G-1],b[G-1])使用B.5.3.4中定义的三元发生器计算如下:
对于每个i=0,……,G-1
(d[i],a[i],b[i])=Trip[K,X+i]
要置入具有ESI X的修复分组的G个修复码元使用中间码元C和LT编码器LTenc[K,C,(d[i],a[i],b[i])]如小节B.5.3所述基于修复码元三元组来计算。
B.3.3传输
本节描述使用对文件传送的MSCR前向纠错在MSCR编码器/解码器和任何传输协议之间的信息交换。
用于文件传送的MSCR编码器和解码器需要来自传输协议的以下信息:以字节为单位的文件大小F、码元对齐参数A、以字节为单位的是A倍数的码元大小T、源块数量Z、每个源块中的子块数量N。用于文件传送的MSCR编码器还需要要被编码的文件,F字节。
MSCR编码器向传输协议提供编码分组信息,包括每个分组的SBN、ESI和编码码元。传输协议可将该信息透明地传送给MSCR解码器。
B.3.4推荐参数(提供信息的)
B.3.4.1参数导出算法
本节提供对导出4个传送参数A、T、Z和N的推荐。该推荐基于以下输入参数:
F 以字节为单位的文件大小
W 以字节为单位的对子块大小的目标
P 以字节为单位的最大分组有效载荷大小,假设为A的倍数
A 以字节为单位的码元对齐因数
KMAX 每个源块源码元的最多数量
KMIN 对每个源块码元数量的最小目标
GMAX 每个分组码元的最多目标数量
基于以上输入,传送参数T、Z和N计算如下:
设G=min{ceil(P·KMIN/F),P/A,GMAX}-每个分组码元的大约数量
T=floor(P/(A·G))·A
K=ceil(F/T)-文件中码元的总量
Z=ceil(Kt/KMAX)
N=min{ceil(ceil(Kt/Z)·T/W),T/A}
以上导出的G和N值都应视为下限。将这些值增大为例如最接近的2的幂是有利的。特别地,以上算法不能确保码元大小T能被最大分组大小P除尽,因此不可能使用大小精确为P的分组。如果相反,G被选为能被P/A除尽的值,则码元大小T将是P的除数并可使用大小为P的分组。
输入参数W、A、KMIN和GMAX的推荐设置如下:
W=256KB A=4 KMIN=1024 GMAX=10
R.3.4.2示例
以上算法导出如图18所示的传送参数,假设W、A、KMIN和GMAX的推荐值且P=512。
B.4.流
B.4.1源块构建
源块由例如本文档中定义的传送协议使用系统MSCR前向纠错码构建。用于源块构建和修复码元构建的码元大小T由传送协议提供。参数T可设置成任何源块中源码元的数量最多为KMAX。
推荐参数如小节B.4.4所示。
B.4.2编码分组构建
如B.4.3中所述,每个修复分组都包含SBN、ESI、SBL和修复码元。包含在修复分组内的修复码元的数量根据分组长度计算。置入修复分组的ESI值和用来产生修复码元的修复码元三元组如小节B.3.2.2所述进行计算。
B.4.3传送
本节描述MSCR编码器/解码器和任何对流使用MSCR前向纠错的传输协议之间的信息交换。用于流的MSCR编码器可对每个源块使用以下来自传输协议的信息:以字节为单位的码元大小T、源块中的码元数量K、源块号码(SBN)和要编码的源码元K·T字节。MSCR编码器向传输协议提供编码分组信息,包括每个修复分组的SBN、ESI、SBL和修复码元。该传输协议可将该信息透明地传送给MSCR解码器。
B.4.4.推荐参数
B.4.4.1参数导出算法
本节提供对传送参数T的推导的推荐。该推荐基于以下输入参数:
B | 以字节为单位的最大源块大小 |
P | 以字节为单位的最大修复分组有效载荷大小,为A的倍数 |
A | 以字节为单位的码元对齐因数 |
KMAX | 每个源块中的源码元的最大数量 |
KMIN | 对每个源块中码元数量的最小目标 |
GMAX | 每个修复分组中码元的最大目标数量 |
对这些参数的要求是ceil(B/P)≤KMAX。基于以上输入,传送参数T计算如下:
设G=min{ceil(P·KMIN/B),P/A,GMAX}-每个分组码元的大约数量
T=floor(P/(A·G))·A
以上导出的T值应被视为所使用实际T值的基准。确保T能被P除尽是有利的,或者将T值设置得更小以在全尺寸大小的修复码元用来在丢失的源分组的末端恢复部分源码元时使浪费最少(只要源块中源码元的最多数量不超过KMAX)是有利的。此外,对T的选择可取决于源分组大小的分布,即如果全部源分组大小都相同,则将T选成修复分组P’的实际有效载荷大小(其中P’是T的倍数)等于每个源分组占据源块的字节数(或者比之大尽可能少的字节)是有利的。
输入参数A、KMIN和GMAX的推荐设置如下:
A=4 KMIN=1024 GMAX=10
B.4.4.2示例
以上算法导出如图19所示的传送参数,假设A、KMIN和GMAX的推荐值且P=512。
B.5.系统MSCR编码器
B.5.1.编码综述
系统MSCR编码器用来从包括K个源码元的源块中产生修复码元。
码元是编码和解码过程的基本数据单位。对于每个源块(子块),所有码元(子码元)大小都相同。对码元(子码元)执行的编码和解码的原子运算是异或运算。
设C’[0],……,C’[K-1]表示K个源码元。
设C[0],……,C[L-1]表示L个中间码元。
编码的第一个步骤是从K个源码元中产生L>K个中间码元。在该步骤中,K个源三元组(d[0],a[0],b[0]),……,(d[K-1],a[K-1],b[K-1])使用小节B.5.4.4中所述的Trip[]发生器产生。K个源三元组与K个源码元相关联,然后使用逆编码过程用来从源码元中确定L个中间码元C[0],……,C[L-1]。该过程可由MSCR解码过程实现。
一定的“预编码关系”必需在L个中间码元内保持。小节B.5.2描述这些关系以及中间码元如何从源码元中产生。
一旦中间码元已经产生,修复码元就产生且一个或多个修复码元作按照组被置入单个数据分组。每个修复码元组与编码码元ID(ESI)和G个编码码元相关联。ESI用来产生用于每个修复码元的三个整数的三元组(d,a,b),再次使用小节B.5.4.4中所述的Trip[]发生器。这使用如小节B.5.4所述的发生器如小节B.3和B.4所述地完成。然后,使用小节B.5.4.3中所述的LTEnc[K,C[0],……,C[L-1],(d,a,b)]发生器,每个(d,a,b)三元组被用来从中间码元中产生相应的修复码元。
B.5.2.第一编码步骤:中间码元产生
B.5.2.1概述
第一编码步骤是从源码元C’[0],……,C’[K-1]中产生L个中间码元C[0],……,C[L-1]的预编码步骤。中间码元由两套约束条件唯一限定:
1.中间码元通过源码元三元组集与源码元相关。源码元三元组的产生使用小节B.5.4.4中所述的Trip[]发生器在小节B.5.2.2中定义。
2.预编码关系集在各中间码元本身内保持。这些在小节B.5.2.3中定义。然后L个中间码元的产生在小节5.2.4中定义。
B.5.2.2源码元三元组
K个源码元的每一个都与三元组(d[i],a[i],b[i])(0≤i≤K)相关联。源码元三元组使用小节B.5.4.4中定义的三元组发生器确定为:
对于每个i,0≤i<K
(d[i],a[i],b[i])=Trip[K,i]
B.5.2.3预编码关系
L个中间码元之间的预编码关系通过根据前K个中间码元表达后面L-K个中间码元来定义。
后面L-K个中间码元C[K],……,C[L-1]包括S个LDPC码元和H个半码元(Half码元)。S和H的值都如下所述根据K来确定。然后L=K+S+H。
设
X 使X·(X-1)=2·K的最小正整数
S 使S≥ceil(0.01·K)+X的最小质数
H 使choose(H,ceil(H/2))≥K+S的最小整数
H’ =ceil(H/2))L=K+S+H
C[0], ……,C[K-1]表示前K个中间码元
C[K], ……,C[K+S-1]表示S个LDPC码元,初始化为零
C[K+S],……,C[L-1]表示H个半码元,初始化为零
S个LDPC码元被定义为以下过程结束时的C[K],……,C[K+S-1]值:
For i=0,……,K-1 do
a=1+(floor(i/S)%(S-1))
b=i%S
C[K+b]=C[K+b]^C[i]
b=(b+a)%S
C[K+b]=C[K+b]^C[i]
b=(b+a)%S
C[K+b]=C[K+b]^C[i]
H个半码元被定义如下:
设
对于所有的正整数i,g[i]=i^(floor(i/2))
注意:g[i]是Gray序列,其中每个元素与前一个元素有单个比特位置的不同
g[j,k]表示g[i]子序列的第j个元素,j=0,1,2,……,其元素在其二进制表示中有正好k个非零比特。
然后,半码元被定义为以下过程后的C[K+S],……,C[L-1]值:
for h=0,……,H-1 do
for j=0,……,K+S-1 do
if g[j,H’]的比特h等于1,then C[h+K+S]=C[h+K+S]^C[j]。
B.5.2.4中间码元
B.5.2.4.1 定义
给定K个源码元C’[0],C’[1],……,C’[K-1],L个中间码元C[0],C[1],……C[L-1]是满足以下条件的唯一定义的码元值:
1.K个源码元C’[0],C’[1],……,C’[K-1]满足K个约束条件
C’[i]≡LTEnc[K,(C[0],……,C[L-1]),(d[i],a[i],b[i])],对于全部i,0≤i<K
2.L个中间码元C[0],……,C[L-1]满足B.5.2.3中定义的预编码关系。
B.5.2.4.2 计算中间码元
本小节描述计算满足B.5.2.4.1中约束条件的L个中间码元C[0],……,C[L-1]的一种可能方法。
用于从K个输入码元中产生N个输出码元的码的发生器矩阵G是GF(2)上的NxK矩阵,其中每行对应于输出码元之一而每列对应于输入码元之一,且第i个输出码元等于其列包含行i中非零条目的那些列的输入码元之和。
然后,L个中间码元可如下计算:
设
C表示L个中间码元C[0],……,C[L-1]的列向量
D表示包括S+H个零码元后跟K个源码元C’[0],C’[1]……,C’[K-1]的列向量
则以上约束条件将GF(2)上的LxL矩阵A定义为:
A·C=D
矩阵A可构建如下:
设:
GLDPC是LDPC码元的SxK发生器矩阵。所以
GLDPC·(C[0],……,C[K-1])T=(C[K],……,C[K+S-1])T
GHalf是半码元的Hx(K+S)发生器矩阵。所以
GHalf·(C[0],……,C[K-1])T=(C[K],……,C[K+S+H-1])T
IS是SxS单位矩阵。
IH是HxH单位矩阵。
0SxH是SxH零矩阵。
GLT是由LT编码器产生的编码码元的KxL发生器矩阵。
所以,
GLT·(C[0],……,C[L-1])T=(C’[0],C’[1],……,C’[K-1])T
即,当且仅当C[i]包括在相异或产生LTEnc[K,(C[0],……,C[L-1]),(d[i],a[i],b[i])],GLti,j=1。
则:
A的前S行等于GLDPC|IS|ZSxH
A接下来的H行等于GHalf|IH
A剩下的K行等于GLT。
矩阵A如图20所示。然后中间码元可计算为:
C=A-1·D
源三元组被生成为:对于任何K,矩阵A都满秩,因此可逆。该计算可通过将MSCR解码过程应用于K个源码元C’[0],C’[1],……,C’[K-1]来实现,以产生L个中间码元C[0],……,C[L-1]。
为了有效地从源码元产生中间码元,建议使用诸如小节B.6所述的有效解码器实现。源码元三元组被设计成使用该算法来便于源码元的有效解码。
B.5.3.第二个编码步骤:LT编码
在第二个编码步骤中,使用根据小节B.3.2.2和B.4.2产生的三元组(d,a,b)=Trip[K,X],具有ESI X的修复码元通过将在小节B.5.4中定义的发生器LTEnc[K,(C[0],……,C[L-1]),(d,a,b)]应用于L个中间码元C[0],……,C[L-1]来产生。
B.5.4发生器
B.5.4.1随机发生器
随机数发生器Rand[X,i,m]定义如下,其中X是非负整数,i是非负整数,且m是正整数,所产生的值是0到m-1之间的整数。设V0和V1都是256个条目的数组,其中每个条目都是4-字节的无符号整数。这些数组在小节B.7中提供。
然后,Rand[X,i,m]=(V0[X+i]%256)^V1[(floor(X/256)+i)%256]%m
B.5.4.2次数发生器
次数发生器Deg[v]定义如下,其中v是至少为0并小于220=1048576的整数。
在图21中,寻找索引j使f[j-1]≤v<f[j]
Deg[v]=d[j]
B.5.4.3 LT编码码元发生器
编码码元发生器LTEnc[K,(C[0],……,C[L-1]),(d,a,b)]取以下输入:
K是源块(子块)的源码元(或子码元)的数量。设L根据小节B.5.2所述的K导出,并设L’为大于或等于L的最小质数。
(C[0],……,C[L-1])是如小节B.5.2所述地产生的L个中间码元(子码元)的数组。(d,a,b)是使用小节B.5.3.4中定义的三元组发生器确定的源三元组,而d是表示编码码元次数的整数,a是1到L’-1(包括1和L’-1)之间的整数,b是0到L’-1(包括1和L’-1)之间的整数。
编码码元发生器根据以下算法,产生单个编码码元作为输出:
while(b≥L)do b=(b+a)%L’
LTEnc[K,(C[0],……,C[L-1]),(d,a,b)]=C[b]
Forj=1,……,min(d-1,L-1) do
b=(b+a)%L’
while(b≥L)do b=(b+a)%L’
LTEnc[K,(C[0],……,C[L-1]),(d,a,b)]=LTEnc[K,(C[0],……,C[L-1]),(d,a,b)]^C[b]
B.5.4.4三元组发生器
三元组发生器Trip[K,X]取以下输入:
K 源码元的数量
X 编码码元ID
设
L 根据如小节B.5.2中所述的K确定
L’是大于或等于L的最小质数
Q=65521,小于216的最大质数
J(K)是与K相关联的系统索引,如附录A中所定义。
三元组发生器的输出是如下确定的三元组(d,a,b):
1.A=(53591+J(K)·997)%Q
2.B=10267·(J(K)+1)%Q
3.Y=(B+X·A)%Q
4.V=Rand[Y,0,220]
5.d=Deg[v]
6.a=1+Rand[Y,1,L’-1]
7.b=Rand[Y,2,L’]
B.6 FEC解码器实现
B.6.1概论
本节描述用于本说明书所述的MSCR码的有效解码算法。注意:每个所接收的编码码元可视为中间码元在其中的方程的值。根据这些联立方程,以及中间码元之间的已知预编码关系,任何用于解联立方程的算法可成功地解码中间码元和源码元。然而,所选择的算法对解码的计算效率有主要影响。
B.6.2解码源块
B.6.2.1概论
假设解码器知道它要解码的源块的结构,包括码元大小T、以及源块中的码元数量K。
根据小节B.5中所述的算法,MSCR解码器可计算预编码码元的总量达L=K+S+H,并确定它们如何从要被解码的源块中产生。在本说明书中,假设接收到的要被解码的源块的编码码元被传递给了解码器。此外,对于每个这种编码码元,假设其异或等于编码码元的中间码元的数量和集被传递给了解码器。在源码元的情形中,小节B.5.2.2中所述的源码元三元组表示其和给出每个源码元的中间码元的数量和集。
设N≥K为所接收的源块的编码码元的数量,并设M=S+H+N。随后MxL比特矩阵A可从传递给解码器的要解码的源块的信息中导出。设C是L个中间码元的列向量,并设D是M个其值为接收器已知的码元的列向量,其中M个码元的前S+H个是与LDPC和半码元相对应的零值码元(这些是LDPC和半码元的校验码元,而不是LDPC和半码元本身),并且M个码元的剩余N个是接收到的源块的编码码元。然后,A是满足A·C=D的比特矩阵,其中·表示GF[2]上的矩阵乘法。特别地,如果与索引j相对应的中间码元异或成对应于编码中索引i的LDPC、半或编码码元,或者如果索引i对应于LDPC或半码元而索引j对应于同一LDPC或半码元,则A[i,j]=1。对于其它的i和j,则A[i,j]=0。
解码源块等效于根据已知的A和D来解码C。显然当且仅当GF[2]上A的秩为L时C可被解码。一旦C已被解码,则遗漏的源码元就可通过使用源码元三元组来获取,以确定要异或以获得每个遗漏的源码元的中间码元的数量和集。
解码C的第一个步骤是形成解码时间表。在该步骤中,使用高斯消元算法(使用行运算以及行和列的重新排序)并去掉M-L行之后,A被转换成LxL单元矩阵。解码时间表包括在高斯消元过程期间的行运算的序列、以及行和列的重新排序,并仅依赖于A而非D。根据D对C的解码可与形成解码时间表并发地进行,或者解码可基于解码时间表在之后进行。
解码时间表和C的解码之间对应如下。开始时设c[0]=0,c[1]=1,……,c[L-1]=L-1,并设d[0]=0,d[1]=1,……,d[M-1]=M-1。
-每当A的行i被异或成解码时间表中的行i’时,在解码过程中码元D[d[i]]被异或成码元D[d[i’]]。
-每当行i与解码时间表中的行i’交换时,在解码过程中d[i]的值与d[i’]的值交换。
-每当列j与解码时间表中的列j’交换时,在解码过程中c[j]的值与c[j’]的值交换。
根据该对应关系,显然解码源块时码元异或的总数量是高斯消元中行运算的数量(未作交换)。因为A是高斯消元之后并去掉最后M-L行之后的LxL单位矩阵,所以显然在成功解码结束时,L个码元D(d[0]),D(d[1]),……,D(d[L-1])是L个码元C(c[0]),C(c[1]),……,C(c[L-1])的值。
执行高斯消元以形成解码时间表的顺序对解码是否成功没有关系。然而,解码速度较强地取决于执行高斯消元的顺序(此外,保持A的稀疏表示是重要的,尽管并未在此描述)。本节的剩下部分描述相对高效的执行高斯消元的顺序。
B.6.2.2第一阶段
高斯消元的第一阶段:矩阵A在概念上被分成多个子矩阵。子矩阵的大小非负整数i和u为参数,初始化为0。A的子矩阵为:
(1)由前i行和前i列的交点限定的子矩阵I。这是该阶段中每个步骤结束时的单位矩阵。
(2)由前i行与除前i列和最后u列之外的所有列的交点限定的子矩阵。该子矩阵的所有条目都为零。
(3)由前i列与除前i行之外的所有行的交点限定的子矩阵。该子矩阵的所有条目都为零。
(4)由所有行和最后u列的交点限定的子矩阵U。
(5)由除前i列和最后u列之外的全部列与除前i行之外的所有行的交点形成的子矩阵V。
图22示出A的子矩阵。在第一阶段开始时,V=A。在每个步骤中,选择A的一行。由V的结构限定的跟踪图用于确定选择A的哪一行。与V相交的各个列为图中的节点,并且V中具有正好2个1的行是在该两个1的位置上连接两列(节点)的图的边。该图中的一个组成是节点(列)和边(行)的最大集,从而图中每对节点/边之间都有路径。组成的大小是该组成中节点(列)的数量。
在第一阶段中最多有L个步骤。当i+u=L时,即当V和V上所有零矩阵消失且A包括I、I下的所有零子矩阵和U时,该阶段成功结束。如果在V消失前的某一步骤上V中有非零行待选,则该阶段不成功地结束,解码失败。在每个步骤中,如下选择行A:
如果V的所有条目都为零,则不选择行,且解码失败。
设r为使A的至少一行在V中恰好有r个1的最小整数。
如果r≠2,则选择V中正好有r个1的行,该行是所有这些行中具有最小原始次数的行。
如果r=2,则选择V中正好有2个1的任一行,它是由X限定的图中最大尺寸组成的一部分。
在本步骤中选择该行后,与V相交的A的第一行与选定行交换,使该选定行是与V相交的第一行。A中与V相交的各列重新排序,使得选定行中r个1之一出现在V的第一列,并使剩下的r-1个1出现在V后面的列中。然后,选定行被异或成V的第一列中有1的选定行之下A的所有其它行。最后,i增1而u增r-1,从而完成该步骤。
B.6.2.3第二个步骤
子矩阵U进一步被分成前i行Uupper,以及剩下的M-i行Ulower。在第二阶段对Ulower执行高斯消元,以确定其秩小于u(解码失败)、或将其转换成前u行为单位矩阵的矩阵(第二阶段成功)。称该uxu单位矩阵为Iu。与Ulower-Iu相交的A的M-L行被去除。该阶段之后A具有L行和L列。
B.6.2.4第三阶段
在第二阶段之后,需要清零去除以将A转换成LxL单位矩阵的A的那部分是Uupper。子矩阵Uupper的行数i通常比Uupper的列数u大得多。为了有效地对Uupper清零去除,随后在第三阶段基于Iu计算预算矩阵U’,并在第四阶段将U’用于清零去除Uupper。Iu的u个行被分成ceil(u/8)个每个为8行的组。然后,对于每个8行的组,计算该8个行的所有非零组合,结果为28-1=255行(这可通过每组各行的28-8-1=247次异或来完成,因为Iu中出现的汉明权1的组合不需要重新计算)。因而,最后的预算矩阵U’具有ceil(u/8)·255行和u列。注意,U’形式上并非是矩阵A的一部分,但将用于第四阶段以清零去除Uupper。
B.6.2第四阶段
对于A的前I行,对该行的Uupper子矩阵中每个8列组,如果Uupper中8列条目的集并非全为零,则与8列中模式相匹配的预算矩阵U’的行被异或到该行中,从而以将U’的一行异或到该行的代价清零去除该行中的那8列。
在该阶段之后A为LxL的单位矩阵,并已成功形成完整的解码时间表。然后,包括异或已知编码码元的相应解码可被执行,以基于解码时间表恢复中间码元。
与全部源码元相关联的三元组根据B.5.2.2计算。接收到的源码元的三元组在解码中使用。遗漏源码元的三元组用来确定那些中间码元需要异或,以恢复所遗漏的源码元。
一些多级码的部分属件
在上述大多数示例中,输入和输出码元对相同数量的比特编码,且每个输出码元都被置入一分组中(分组是全部接收或全部丢失的传送单位)。在一些实施例中,通信系统被更改使每个分组都包含若干输出码元。输出码元值的大小基于众多因素,被设置成由在开始将文件或流块分成输入码元时输入码元值的大小确定的大小。解码过程保持基本不变,除非接收每个分组时输出码元成串到达。
输入码元和输出码元大小的设置通常由文件或流块的大小、以及输出码元要在其上传送的通信系统命令。例如,如果通信系统将数据比特分成限定大小的分组、或用其它方法来分组比特,则码元大小的设计从分组或组的大小开始。然后,设计者将确定在一个分组或组中携带多少输出码元,并确定输出码元大小。为了简便,设计者可能将输入码元大小设置成等于输出码元大小,但如果输入数据使用不同的输入码元大小会更方便,则可使用之。
上述编码过程基于原始文件或流块产生包含输出码元的分组流。流中每个输出码元独立于所有其它输出码元产生,且对可创建的输出码元数量没有上限和下限。密钥与每个输出码元相关联。该密钥,以及输入文件或流块的部分内容确定输出码元的值。连续产生的输出码元不需要具有连续密钥,且在某些应用中,最好随机产生密钥序列,或伪随机地产生该序列。
多级解码具有一属性,即,如果原始文件或流块可分成K个大小相等的输入码元,且每个输出码元值都具有与输入码元值相同的长度,则该文件或块平均地可从K+A个输出码元中恢复,其中A比K小的概率极高。例如,对于以上介绍的权重分布,如果K大于19,681,则A值超过α*K的概率最高为10-12;对于任何K值,概率最高为10-10。因为特定输出码元以随机顺序或伪随机顺序产生,且在传输中特定输出码元的丢失假设为随机,则恢复输入文件或块所需的输出码元的施加数量存在一些较小变化。在一些情形中,当K+A个分组的特定集合不足以解码逐个输入文件或块时,如果接收器能从输入分组的一个或多个源中收集更多分组时,该输入文件或块仍然是可恢复的。
因为输出码元的数量仅受I的解的限制,所以可产生多于K+A个的输出码元。例如,如果I是32比特数,则可产生40亿个不同的输出码元,而文件或流块可包括K=50,000个输入码元。在一些应用中,只可产生并传送40亿个输出码元的一小部分,并且用极少量的可能输出码元可恢复输入文件或流块是几乎肯定的,用略多于K个输出码元就可恢复输入文件或块也是相当可能的(假设输入码元大小与输出码元大小相同)。
在一些应用中,能解码全部输入码元或不能解码全部输入码元都是可以接受的,只是概率相对较低。在这种应用中,接收器可在接收K+A个输出码元之后停止解码全部输入码元。或者,接收器在接收少于K+A个输出码元之后停止接收输出码元。在一些应用中,接收器甚至只接收K个或更少输出码元。因而,可以理解,在本发明的一些实施例中,所需准确度不需要完全恢复所有输入码元。
此外,在一些可接受不完全恢复的应用中,数据可编码成不能恢复所有输入码元,或者完全恢复输入码元将需要接收比输入码元数量多得多的输出码元。这种编码通常需要较少的计算成本,因而是降低编码计算成本的可接受方法。
可以理解,上述各图中的各个功能块可通过硬件和/或软件的组合实现,并且在特定实现中,一些块的部分或全部功能可加以组合。类似地,也可以理解,在此所述的各种方法可通过硬件和/或软件的组合实现。
以上描述是说明性而非限制性的。对本领域技术人员而言,在阅读本说明书之后本发明的许多变体变得显而易见。因此,本发明的范围不应参照以上描述确定,相反应参照所附权利要求以及等效方案的全部范围来确定。
附录A.系统索引J(K)的值
对于每个值K,系统索引J(K)被设计成具有以下属性:源码元三元组(d[0],a[0],b[0]),……,(d[L-1],a[L-1],b[L-1])的集使L个中间码元唯一限定,即小节B.5.2.4.2中的矩阵A具有满秩并因此可逆。下面是介于4和8192(包括4和8192)的K值的系统索引的列表。各值的顺序是读取顺序,即从第一行的第一个数到第一行的最后一个数,然后是第二行的第一个数,依此类推。
18,14,61,46,14,22,20,40,48,1,29,40,43,46,18,8,20,2,61,26,13,29,36,19,58,5,58,0,
54,56,24,14,5,67,39,31,25,29,24,19,14,56,49,49,63,30,4,39,2,1,20,19,61,4,54,70,
25,52,9,26,55,69,27,68,75,19,64,57,45,3,37,31,100,41,25,41,53,23,9,31,26,30,30,
46,90,50,13,90,77,61,31,54,54,3,21,66,21,11,23,11,29,21,7,1,27,4,34,17,85,69,17,
75,93,57,0,53,71,88,119,88,90,22,0,58,41,22,96,26,79,118,19,3,81,72,50,0,32,79,
28,25,12,25,29,3,37,30,30,41,84,32,31,61,32,61,7,56,54,39,33,66,29,3,14,75,75,
78,84,75,84,25,54,25,25,107,78,27,73,0,49,96,53,50,21,10,73,58,65,27,3,27,18,54,
45,69,29,3,65,31,71,76,56,54,76,54,13,5,18,142,17,3,37,114,41,25,56,0,23,3,41,
22,22,31,18,48,31,58,37,75,88,3,56,1,95,19,73,52,52,4,75,26,1,25,10,1,70,31,31,
12,10,54,46,11,74,84,74,8,58,23,74,8,36,11,16,94,76,14,57,65,8,22,10,36,36,96,
62,103,6,75,103,58,10,15,41,75,125,58,15,10,34,29,34,4,16,29,18,18,28,71,28,43,
77,18,41,41,41,62,29,96,15,106,43,15,3,43,61,3,18,103,77,29,103,19,58,84,58,1,
146,32,3,70,52,54,29,70,69,124,62,1,26,38,26,3,16,26,5,51,120,41,16,1,43,34,34,
29,37,56,29,96,86,54,25,84,50,34,34,93,84,96,29,29,50,50,6,1,105,78,15,37,19,50,
71,36,6,54,8,28,54,75,75,16,75,131,5,25,16,69,17,69,6,96,53,96,41,119,6,6,88,50,
88,52,37,0,124,73,73,7,14,36,69,79,6,114,40,79,17,77,24,44,37,69,27,37,29,33,37,
50,31,69,29,101,7,61,45,17,73,37,34,18,94,22,22,63,3,25,25,17,3,90,34,34,41,34,
41,54,41,54,41,41,41,163,143,96,18,32,39,86,104,11,17,17,11,86,104,78,70,52,78,
17,73,91,62,7,128,50,124,18,101,46,10,75,104,73,58,132,34,13,4,95,88,33,76,74,
54,62,113,114,103,32,103,69,54,53,3,11,72,31,53,102,37,53,11,81,41,10,164,10,41,
31,36,113,82,3,125,62,16,4,41,41,4,128,49,138,128,74,103,0,6,101,41,142,171,39,
105,121,81,62,41,81,37,3,81,69,62,3,69,70,21,29,4,91,87,37,79,36,21,71,37,41,75,
128,128,15,25,3,108,73,91,62,114,62,62,36,36,15,58,114,61,114,58,105,114,41,61,
176,145,46,37,30,220,77,138,15,1,128,53,50,50,58,8,91,114,105,63,91,37,37,13,
169,51,102,6,102,23,105,23,58,6,29,29,19,82,29,13,36,27,29,61,12,18,127,127,12,
44,102,18,4,15,206,53,127,53,17,69,69,69,29,29,109,25,102,25,53,62,99,62,62,29,
62,62,45,91,125,29,29,29,4,117,72,4,30,71,71,95,79,179,71,30,53,32,32,49,25,91,
25,26,26,103,123,26,41,162,78,52,103,25,6,142,94,45,45,94,127,94,94,94,47,209,
138,39,39,19,154,73,67,91,27,91,84,4,84,91,12,14,165,142,54,69,192,157,185,8,95,
25,62,103,103,95,71,97,62,128,0,29,51,16,94,16,16,51,0,29,85,10,105,16,29,29,13,
29,4,4,132,23,95,25,54,41,29,50,70,58,142,72,70,15,72,54,29,22,145,29,127,29,85,
58,101,34,165,91,46,46,25,185,25,77,128,46,128,46,188,114,46,25,45,45,114,145,
114,15,102,142,8,73,31,139,157,13,79,13,114,150,8,90,91,123,69,82,132,8,18,10,
102,103,114,103,8,103,13,115,55,62,3,8,154,114,99,19,8,31,73,19,99,10,6,121,32,
13,32,119,32,29,145,30,13,13,114,145,32,1,123,39,29,31,69,31,140,72,72,25,25,
123,25,123,8,4,85,8,25,39,25,39,85,138,25,138,25,33,102,70,25,25,31,25,25,192,
69,69,114,145,120,120,8,33,98,15,212,155,8,101,8,8,98,68,155,102,132,120,30,25,
123,123,101,25,123,32,24,94,145,32,24,94,118,145,101,53,53,25,128,173,142,81,81,
69,33,33,125,4,1,17,27,4,17,102,27,13,25,128,71,13,39,53,13,53,47,39,23,128,53,
39,47,39,135,158,136,36,36,27,157,47,76,213,47,156,25,25,53,25,53,25,86,27,159,
25,62,79,39,79,25,145,49,25,143,13,114,150,130,94,102,359,4,39,61,77,228,22,25,
47,119,205,122,119,205,119,22,119,258,143,22,81,179,22,22,143,25,65,53,168,36,
79,175,37,79,70,79,103,70,25,175,4,96,96,49,128,138,96,22,62,47,95,105,95,62,95,
62,142,103,69,103,30,103,34,173,127,70,127,132,18,85,22,71,18,206,206,18,128,
145,70,193,188,8,125,114,70,128,114,145,102,25,12,108,102,94,10,102,1,102,124,
22,22,118,132,22,116,75,41,63,41,189,208,55,85,69,8,71,53,71,69,102,165,41,99,
69,33,33,29,156,102,13,251,102,25,13,109,102,164,102,164,102,25,29,228,29,259,
179,222,95,94,30,30,30,142,55,142,72,55,102,128,17,69,164,165,3,164,36,165,27,
27,45,21,21,237,113,83,231,106,13,154,13,154,128,154,148,258,25,154,128,3,27,10,
145,145,21,146,25,1,185,121,0,1,95,55,95,95,30,0,27,95,0,95,8,222,27,121,30,95,
121,0,98,94,131,55,95,95,30,98,30,0,91,145,66,179,66,58,175,29,0,31,173,146,160,
39,53,28,123,199,123,175,146,156,54,54,149,25,70,178,128,25,70,70,94,224,54,4,
54,54,25,228,160,206,165,143,206,108,220,234,160,13,169,103,103,103,91,213,222,
91,103,91,103,31,30,123,13,62,103,50,106,42,13,145,114,220,65,8,8,175,11,104,94,
118,132,27,118,193,27,128,127,127,183,33,30,29,103,128,61,234,165,41,29,193,33,
207,41,165,165,55,81,157,157,8,81,11,27,8,8,98,96,142,145,41,179,112,62,180,206,
206,165,39,241,45,151,26,197,102,192,125,128,67,128,69,128,197,33,125,102,13,
103,25,30,12,30,12,30,25,77,12,25,180,27,10,69,235,228,343,118,69,41,8,69,175,
25,69,25,125,41,25,41,8,155,146,155,146,155,206,168,128,157,27,273,211,211,168,
11,173,154,77,173,77,102,102,102,8,85,95,102,157,28,122,234,122,157,235,222,241,
10,91,179,25,13,25,41,25,206,41,6,41,158,206,206,33,296,296,33,228,69,8,114,148,
33,29,66,27,27,30,233,54,173,108,106,108,108,53,103,33,33,33,176,27,27,205,164,
105,237,41,27,72,165,29,29,259,132,132,132,364,71,71,27,94,160,127,51,234,55,27,
95,94,165,55,55,41,0,41,128,4,123,173,6,164,157,121,121,154,86,164,164,25,93,
164,25,164,210,284,62,93,30,25,25,30,30,260,130,25,125,57,53,166,166,166,185,
166,158,94,113,215,159,62,99,21,172,99,184,62,259,4,21,21,77,62,173,41,146,6,41,
128,121,41,11,121,103,159,164,175,206,91,103,164,72,25,129,72,206,129,33,103,
102,102,29,13,11,251,234,135,31,8,123,65,91,121,129,65,243,10,91,8,65,70,228,
220,243,91,10,10,30,178,91,178,33,21,25,235,165,11,161,158,27,27,30,128,75,36,
30,36,36,173,25,33,178,112,162,112,112,112,162,33,33,178,123,123,39,106,91,106,
106,158,106,106,284,39,230,21,228,11,21,228,159,241,62,10,62,10,68,234,39,39,
138,62,22,27,183,22,215,10,175,175,353,228,42,193,175,175,27,98,27,193,150,27,
173,17,233,233,25,102,123,152,242,108,4,94,176,13,41,219,17,151,22,103,103,53,
128,233,284,25,265,128,39,39,138,42,39,21,86,95,127,29,91,46,103,103,215,25,123,
123,230,25,193,180,30,60,30,242,136,180,193,30,206,180,60,165,206,193,165,123,
164,103,68,25,70,91,25,82,53,82,186,53,82,53,25,30,282,91,13,234,160,160,126,
149,36,36,160,149,178,160,39,294,149,149,160,39,95,221,186,106,178,316,267,53,
53,164,159,164,165,94,228,53,52,178,183,53,294,128,55,140,294,25,95,366,15,304,
13,183,77,230,6,136,235,121,311,273,36,158,235,230,98,201,165,165,165,91,175,
248,39,185,128,39,39,128,313,91,36,219,130,25,130,234,234,130,234,121,205,304,
94,77,64,259,60,60,60,77,242,60,145,95,270,18,91,199,159,91,235,58,249,26,123,
114,29,15,191,15,30,55,55,347,4,29,15,4,341,93,7,30,23,7,121,266,178,261,70,169,
25,25,158,169,25,169,270,270,13,128,327,103,55,128,103,136,159,103,327,41,32,
111,111,114,113,215,173,25,173,180,114,173,173,98,93,25,160,157,159,160,159,159,
160,320,35,193,221,33,36,136,248,91,215,125,215,156,68,125,125,1,287,123,94,30,
184,13,30,94,123,206,12,206,289,128,122,184,128,289,178,29,26,206,178,65,206,
128,192,102,197,36,94,94,155,10,36,121,280,121,368,192,121,121,179,121,36,54,
192,121,192,197,118,123,224,118,10,192,10,91,269,91,49,206,184,185,62,8,49,289
30,5,55,30,42,39,220,298,42,347,42,234,42,70,42,55,321,129,172,173,172,13,98,
129,325,235,284,362,129,233,345,175,261,175,60,261,58,289,99,99,99,206,99,36,
175,29,25,432,125,264,168,173,69,158,273,179,164,69,158,69,8,95,192,30,164,101,
44,53,273,335,273,53,45,128,45,234,123,105,103,103,224,36,90,211,282,264,91,228,
91,166,264,228,398,50,101,91,264,73,36,25,73,50,50,242,36,36,58,165,204,353,165,
125,320,128,298,298,180,128,60,102,30,30,53,179,234,325,234,175,21,250,215,103,
21,21,250,91,211,91,313,301,323,215,228,160,29,29,81,53,180,146,248,66,159,39,
98,323,98,36,95,218,234,39,82,82,230,62,13,62,230,13,30,98,0,8,98,8,98,91,267,
121,197,30,78,27,78,102,27,298,160,103,264,264,264,175,17,273,273,165,31,160,17,
99,17,99,234,31,17,99,36,26,128,29,214,353,264,102,36,102,264,264,273,273,4,16,
138,138,264,128,313,25,420,60,10,280,264,60,60,103,178,125,178,29,327,29,36,30,
36,4,52,183,183,173,52,31,173,31,158,31,158,31,9,31,31,353,31,353,173,415,9,17,
222,31,103,31,165,27,31,31,165,27,27,206,31,31,4,4,30,4,4,264,185,159,310,273,
310,173,40,4,173,4,173,4,250,250,62,188,119,250,233,62,121,105,105,54,103,111,
291,236,236,103,297,36,26,316,69,183,158,206,129,160,129,184,55,179,279,11,179,
347,160,184,129,179,351,179,353,179,129,129,351,11, 111,93,93,235,103,173,53,93,
50,111,86,123,94,36,183,60,55,55,178,219,253,321,178,235,235,183,183,204,321,
219,160,193,335,121,70,69,295,159,297,231,121,231,136,353,136,121,279,215,366,
215,353,159,353,353,103,31,31,298,298,30,30,165,273,25,219,35,165,259,54,36,54,
54,165,71,250,327,13,289,165,196,165,165,94,233,165,94,60,165,96,220,166,271,
158,397,122,53,53,137,280,272,62,30,30,30,105,102,67,140,8,67,21,270,298,69,173,
298,91,179,327,86,179,88,179,179,55,123,220,233,94,94,175,13,53,13,154,191,74,
83,83,325,207,83,74,83,325,74,316,388,55,55,364,55,183,434,273,273,273,164,213,
11,213,327,321,21,352,185,103,13,13,55,30,323,123,178,435,178,30,175,175,30,481,
527,175,125,232,306,232,206,306,364,206,270,206,232,10,30,130,160,130,347,240,
30,136,130,347,136,279,298,206,30,103,273,241,70,206,306,434,206,94,94,156,161,
321,321,64,161,13,183,183,83,161,13,169,13,159,36,173,159,36,36,230,235,235,159,
159,335,312,42,342,264,39,39,39,34,298,36,36,252,164,29,493,29,387,387,435,493,
132,273,105,132,74,73,206,234,273,206,95,15,280,280,280,280,397,273,273,242,397,
280,397,397,397,273,397,280,230,137,353,67,81,137,137,353,259,312,114,164,164,
25,77,21,77,165,30,30,231,234,121,234,312,121,364,136,123,123,136,123,136,150,
264,285,30,166,93,30,39,224,136,39,355,355,397,67,67,25,67,25,298,11,67,264,374,
99,150,321,67,70,67,295,150,29,321,150,70,29,142,355,311,173,13,253,103,114,114,
70,192,22,128,128,183,184,70,77,215,102,292,30,123,279,292,142,33,215,102,468,
123,468,473,30,292,215,30,213,443,473,215,234,279,279,279,279,265,443,206,66,
313,34,30,206,30,51,15,206,41,434,41,398,67,30,301,67,36,3,285,437,136,136,22,
136,145,365,323,323,145,136,22,453,99,323,353,9,258,323,231,128,231,382,150,420,
39,94,29,29,353,22,22,347,353,39,29,22,183,8,284,355,388,284,60,64,99,60,64,150,
95,150,364,150,95,150,6,236,383,544,81,206,388,206,58,159,99,231,228,363,363,
121,99,121,121,99,422,544,273,173,121,427,102,121,235,284,179,25,197,25,179,511,
70,368,70,25,388,123,368,159,213,410,159,236,127,159,21,373,184,424,327,250,176,
176,175,284,316,176,284,327,111,250,284,175,175,264,111,176,219,111,427,427,176,
284,427,353,428,55,184,493,158,136,99,287,264,334,264,213,213,292,481,93,264,
292,295,295,6,367,279,173,308,285,158,308,335,299,137,137,572,41,137,137,41,94,
335,220,36,224,420,36,265,265,91,91,71,123,264,91,91,123,107,30,22,292,35,241,
356,298,14,298,441,35,121,71,63,130,63,488,363,71,63,307,194,71,71,220,121,125,
71,220,71,71,71,71,235,265,353,128,155,128,420,400,130,173,183,183,184,130,173,
183,13,183,130,130,183,183,353,353,183,242,183,183,306,324,324,321,306,321,6,6,
128,306,242,242,306,183,183,6,183,321,486,183,164,30,78,138,158,138,34,206,362,
55,70,67,21,375,136,298,81,298,298,298,230,121,30, 230,311,240,311,311,158,204,
136,136,184,136,264,311,311,312,312,72,311,175,264,91,175,264,121,461,312,312,
238,475,350,512,350,312,313,350,312,366,294,30,253,253,253,388,158,388,22,388,
22,388,103,321,321,253,7,437,103,114,242,114,114,242,114,114,242,242,242,306,
242,114,7,353,335,27,241,299,312,364,506,409,94,462,230,462,243,230,175,175,462,
461,230,428,426,175,175,165,175,175,372,183,572,102,85,102,538,206,376,85,85,
284,85,85,284,398,83,160,265,308,398,310,583,289,279,273,285,490,490,211,292,
292,158,398,30,220,169,368,368,368,169,159,368,93,368,368,93,169,368,368,443,
368,298,443,368,298,538,345,345,311,178,54,311,215,178,175,222,264,475,264,264,
475,478,289,63,236,63,299,231,296,397,299,158,36,164,164,21,492,21,164,21,164,
403,26,26,588,179,234,169,465,295,67,41,353,295,538,161,185,306,323,68,420,323,
82,241,241,36,53,493,301,292,241,250,63,63,103,442,353,185,353,321,353,185,353,
353,185,409,353,589,34,271,271,34,86,34,34,353,353,39,414,4,95,95,4,225,95,4,
121,30,552,136,159,159,514,159,159,54,514,206,136,206,159,74,235,235,312,54,312,
42,156,422,629,54,465,265,165,250,35,165,175,659,175,175,8,8,8,8,206,206,206,50,
435,206,432,230,230,234,230,94,299,299,285,184,41,93,299,299,285,41,285,158,285,
206,299,41,36,396,364,364,120,396,514,91,382,538,807,717,22,93,412,54,215,54,
298,308,148,298,148,298,308,102,656,6,148,745,128,298,64,407,273,41,172,64,234,
250,398,181,445,95,236,441,477,504,102,196,137,364,60,453,137,364,367,334,364,
299,196,397,630,589,589,196,646,337,235,128,128,343,289,235,324,427,324,58,215,
215,461,425,461,387,440,285,440,440,285,387,632,325,325,440,461,425,425,387,627,
191,285,440,308,55,219,280,308,265,538,183,121,30,236,206,30,455,236,30,30,705,
83,228,280,468,132,8,132,132,128,409,173,353,132,409,35,128,450,137,398,67,432,
423,235,235,388,306,93,93,452,300,190,13,452,388,30,452,13,30,13,30,306,362,234,
721,635,809,784,67,498,498,67,353,635,67,183,159,445,285,183,53,183,445,265,432,
57,420,432,420,477,327,55,60,105,183,218,104,104,475,239,582,151,239,104,732,41,
26,784,86,300,215,36,64,86,86,675,294,64,86,528,550,493,565,298,230,312,295,538,
298,295,230,54,374,516,441,54,54,323,401,401,382,159,837,159,54,401,592,159,401,
417,610,264,150,323,452,185,323,323,185,403,185,423,165,425,219,407,270,231,99,
93,231,631,756,71,364,434,213,86,102,434,102,86,23,71,335,164,323,409,381,4,124,
41,424,206,41,124,41,41,703,635,124,493,41,41,487,492,124,175,124,261,600,488,
221,488,261,206,677,261,308,723,908,704,691,723,488,488,441,136,476,312,136,550,
572,728,550,22,312,312,22,55,413,183,280,593,l91,36,36,427,36,695,592,19,544,13,
468,13,544,72,437,321,266,461,266,441,230,409,93,521,521,345,235,22,142,150,102,
569,235,264,91,521,264,7,102,7,498,521,235,537,235,6,241,420,420,631,41,527,103,
67,337,62,264,527,131,67,174,263,264,36,36,263,581,253,465,160,286,91,160,55,4,
4,631,631,608,365,465,294 427,427,335,669,669,129,93,93,93,93,74,66,758,504,347,
130,505,504,143,505,550,222,13,352,529,291,538,50,68,269,130,295,130,511,295,
295,130,486,132,61,206,185,368,669,22,175,492,207,373,452,432,327,89,550,496,
611,527,89,527,496,550,516,516,91,136,538,264,264,124,264,264,264,264,264,535,
264,150,285,398,285,582,398,475,81,694,694,64,81,694,234,607,723,513,234,64,581,
64,124,64,607,234,723,717,367,64,513,607,488,183,488,450,183,550,286,183,363,
286,414,67,449,449,366,215,235,95,295,295,41,335,21,445,225,21,295,372,749,461,
534,481,397,427,427,427,714,481,714,427,717,165,245,486,415,245,415,486,274,415,
441,456,300,548,300,422,422,757,11,74,430,430,136,409,430,749,191,819,592,136,
364,465,231,231,918,160,589,160,160,465,465,231,157,538,538,259,538,326,22,22,
22,179,22,22,550,179,287,287,417,327,498,498,287,488,327,538,488,583,488,287,
335,287,335,287,41,287,335,287,327,441,335,287,488,538,327,498,8,8,374,8,64,427,
8,374,417,760,409,373,160,423,206,160,106,499,160,271,235,160,590,353,695,478,
619,590,353,13,63,189,420,605,427,643,121,280,415,121,415,595,417,121,398,55,
330,463,463,123,353,330,582,309,582,582,405,330,550,405,582,353,309,308,60,353,
7,60,71,353,189,183,183,183,582,755,189,437,287,189,183,668,481,384,384,481,481,
481 477,582,582,499,650,481,121,461,231,36,235,36,413,235,209,36,689,114,353,
353,235,592,36,353,413,209,70,308,70,699,308,70,213,292,86,689,465,55,508,128,
452,29,41,681,573,352,21,21,648,648,69,509,409,21,264,21,509,514,514,409,21,264,
443,443,427,160,433,663,433,231,646,185,482,646,433,13,398,172,234,42,491,172,
234,234,832,775,172,196,335,822,461,298,461,364,1120,537,169,169,364,694,219,
612,231,740,42,235,321,279,960,279,353,492,159,572,321,159,287,353,287,287,206,
206,321,287,159,321,492,159,55,572,600,270,492,784,173,91,91,443,443,582,261,
497,572,91,555,352,206,261,555,285,91,555,497,83,91,619,353,488,112,4,592,295,
295,488,235,231,769,568,581,671,451,451,483,299,1011,432,422,207,106,701,508,
555,508,555,125,870,555,589,508,125,749,482,125,125,130,544,643,643,544,488,22,
643,130,335,544,22,130,544,544,488,426,426,4,180,4,695,35,54,433,500,592,433,
262,94,401,401,106,216,216,106,521,102,462,518,271,475,365,193,648,206,424,206,
193,206,206,424,299,590,590,364,621,67,538,488,567,51,51,513,194,81,488,486,289,
567,563,749,563,338,338,502,563,822,338,563,338,502,201,230,201,533,445,175,201,
175,13,85,960,103,85,175,30,445,445,175,573,196,877,287,356,678,235,489,312,572,
264,717,138,295,6,295,523,55,165,165,295,138,663,6,295,6,353,138,6,138,169,129,
784,12,129,194,605,784,445,234,627,563,689,627,647,570,627,570,647,206,234,215,
234,816,627,816,234,627,215,234,627,264,427,427,30,424,161,161,916,740,180,616,
481,514,383,265,481,164,650,121,582,689,420,669,589,420,788,549,165,734,280,224,
146,681,788,184,398,784,4,398,417,417,398,636,784,417,81,398,417,81,185,827,420,
241,420,41,185,185,718,241,101,185,185,241,241,241,241,241,185,324,420,420,1011,
420,827,241,184,563,241,183,285,529,285,808,822,891,822,488,285,486,619,55,869,
39,567,39,289,203,158,289,710,818,158,818,355,29,409,203,308,648,792,308,308,91,
308,6,592,792,106,106,308,41,178,91,751,91,259,734,166,36,327,166,230,205,205,
172,128,230,432,623,838,623,432,278,432,42,916,432,694,623,352,452,93,314,93,93,
641,88,970,914,230,61,159,270,159,493,159,755,159,409,30,30,836,128,241,99,102,
984,538,102,102,273,639,838,102,102,136,637,508,627,285,465,327,327,21,749, 327,
749,21,845,21,21,409,749,1367,806,616,714,253,616,714,714,112,375,21,112,375,
375,51,51,51,51,393,206,870,713,193,802,21,1061,42,382,42,543,876,42,876,6,382,
696,543,635,490,353,353,417,64,1257,271,64,377,127,127,537,417,905,353,538,465,
605,876,427,324,514,852,427,53,427,557,173,173,7,1274,563,31,31,31,745,392,289,
230,230,230,91,218,327,420,420,128,901,552,420,230,608,552,476,347,476,231,159,
137,716,648,716,627,740,718,679,679,6,718,740,6,189,679,125,159,757,1191,409,
175,250,409,67,324,681,605,550,398,550,931,478,174,21,316,91,316,654,409,425,
425,699,61,699,321,698,321,698,61,425,699,321,409,699,299,335,321,335,61,698,
699,654,698,299,425,231,14,121,515,121,14,165,81,409,189,81,373,465,463,1055,
507,81,81,189,1246,321,409,886,104,842,689,300,740,380,656,656,832,656,380,300,
300,206,187,175,142,465,206,271,468,215,560,83,215,83,215,215,83,175,215,83,83,
111,206,756,559,756,1367,206,559,1015,559,559,946,1015,548,559,756,1 043,756,698,
159,414,308,458,997,663,663,347,39,755,838,323,755,323,159,159,717,159,21,41,
128,516,159,717,71,870,755,159,740,717,374,516,740,51,148,335,148,335,791,120,
364,335,335,51,120,251,538,251,971,1395,538,78,178,538,538,918,129,918,129,538,
538,656,129,538,538,129,538,1051,538,128,838,931,998,823,1095,334,870,334,367,
550,1061,498,745,832,498,745,716,498,498,128,997,832,716,832,130,642,616,497,
432,432,432,432,642,159,432,46,230,788,160,230,478,46,693,103,920,230,589,643,
160,616,432,165,165,583,592,838,784,583,710,6,583,583,6,35,230,838,592,710,6,
589,230,838,30,592,583,6,583,6,6,583,30,30,6,375,375,99,36,1158,425,662,417,681,
364,375,1025,538,822,669,893,538,538,450,409,632,527,632,563,632,527,550,71,698,
550,39,550,514,537,514,537,111,41,173,592,173,648,173,173,173,1011,514,173,173,
514,166,648,355,161,166,648,497,327,327,550,650,21,425,605,555,103,425,605,842,
836,1011,636,138,756,836,756,756,353,1011,636,636,1158,741,741,842,756,741,1011,
677,1011,770,366,306,488,920,920,665,775,502,500,775,775,648,364,833,207,13,93,
500,364,500,665,500,93,295,183,1293,313,272,313,279,303,93,516,93,1013,381,6,93,
93,303,259,643,168,673,230,1261,230,230,673,1060,1079,1079,550,741,741,590,527,
741,741,442,741,442,848,741,590,925,219,527,925,335,442,590,239,590,590,590,239,
527,239,1033,230,734,241,741,230,549,548,1015,1015,32,36,433,465,724,465,73,73,
73,465,808,73,592,1430,250,154,154,250,538,353,353,353,353,353,175,194,206,538,
632,1163,960,175,175,538,452,632,1163,175,538,960,194,175,194,632,960,632,94,
632,461,960,1163,1163,461,632,960,755,707,105,382,625,382,382,784,707,871,559,
387,387,871,784,559,784,88,36,570,314,1028,975,335,335,398,573,573,573,21,215,
562,738,612,424,21,103,788,870,912,23,186,757,73,818,23,73,563,952,262,563,137,
262,1022,952,137,1273,442,952,604,137,308,384,913,235,325,695,398,95,668,776,
713,309,691,22,10,364,682,682,578,481,1252,1072,1252,825,578,825,1072,1149,592,
273,387,273,427,155,1204,50,452,50,1142,50,367,452,1142,611,367,50,50,367,50,
1675,99,367,50,1501,1099,830,681,689,917,1089,453,425,235,918,538,550,335,161,
387,859,324,21,838,859,1123,21,723,21,335,335,206,21,364,1426,21,838,838,335,
364,21,21,859,920,838,838,397,81,639,397,397,588,933,933,784,222,830,36,36,222,
1251,266,36,146,266,366,581,605,366,22,966,681,681,433,730,1013,550,21,21,938,
488,516,21,21,656,420,323,323,323,327,323,918,581,581,830,361,830,364,259,364,
496,496,364,691,705,691,475,427,1145,600,179,427,527,749,869,689,335,347,220,
298,689,1426,183,554,55,832,550,550,165,770,957,67,1386,219,683,683,355,683,355,
355,738,355,842,931,266,325,349,256,1113,256,423,960,554,554,325,554,508,22,142,
22,508,916,767,55,1529,767,55,1286,93,972,550,931,1286,1286,972,93,1286,1392,
890,93,1286,93,1286,972,374,931,890,808,779,975,975,175,173,4,681,383,1367,173,
383,1367,383,173,175,69,238,146,238,36,148,888,238,173,238,148,238,888,185,925,
925,797,925,815,925,469,784,289,784,925,797,925,925,1093,925,925,925,1163,797,
797,815,925,1093,784,636,663,925,187,922,316,1380,709,916,916,187,355,948,916,
187,916,916,948,948,916,355,316,316,334,300,1461,36,583,1179,699,235,858,583,
699,858 699,1189,1256,1189,699,797,699,699,699,699,427,488,427,488,175,815,656,
656,150,322,465,322,870,465,1099,582,665,767,749,635,749,600,1448,36,502,235,
502,355,502,355,355,355,172,355,355,95,866,425,393,1165,42,42,42,393,939,909,
909,836,552,424,1333,852,897,1426,1333,1446,1426,997,1011,852,1198,55,32,239,
588,681,681,239,1401,32,588,239,462,286,1260,984,1160,960,960,486,828,462,960,
1199,581,850,663,581,751,581,581,1571,252,252,1283,264,430,264,430,430,842,252,
745,21,307,681,1592,488,857,857,1161,857,857,857,138,374,374,1196,374,1903,1782,
1626,414,112,1477,1040,356,775,414,414,112,356,775,435,338,1066,689,689,1501,
689,1249,205,689,765,220,308,917,308,308,220,327,387,838,917,917,917,220,662,
308,220,387,387,220,220,308,308,308,387,1009,1745,822,279,554,1129,543,383,870,
1425,241,870,241,383,716,592,21,21,592,425,550,550,550,427,230,57,483,784,860,
57,308,57,486,870,447,486,433,433,870,433,997,486,443,433,433,997,486,1292,47,
708,81,895,394,81,935,81,81,81,374,986,916,1103,1095,465,495,916,667,1745,518,
220,1338,220,734,1294,741,166,828,741,741,1165,1371,1371,471,1371,647,1142,1878,
1878,1371,1371,822,66,327,158,427,427,465,465,676,676,30,30,676,676,893,1592,93,
455,308,582,695,582,629,582,85,1179,85,85,1592,1179,280,1027,681,398,1027,398,
295,784,740,509,425,968,509,46,833,842,401,184,401,464,6,1501,1501,550,538,883,
538,883,883,883,1129,550,550,333,689,948,21,21,241,2557,2094,273,308,58,863,893,
1086,409,136,1086,592,592,830,830,883,830,277,68,689,902,277,453,507,129,689,
630,664,550,128,1626,1626,128,902,312,589,755,755,589,755,407,1782,589,784,1516,
1118,407,407,1447,589,235,755,1191,235,235,407,128,589,1118,21,383,1331,691,481,
383,1129,1129,1261,1104,1378,1129,784,1129,1261,1129,947,1129,784,784,1129,1129,
35,1104,35,866,1129,1129,64,481,730,1260,481,970,481,481,481,481,863,481,681,
699,863,486,681,481,481,55,55,235,1364,944,632,822,401,822,952,822,822,99,550,
2240,550,70,891,860,860,550,550,916,1176,1530,425,1530,916,628,1583,916,628,916,
916,628,628,425,916,1062,1265,916,916,916,280,461,916,916,1583,628,1062,916,916,
677,1297,924,1260,83,1260,482,433,234,462,323,1656,997,323,323,931,838,931,1933,
1391,367,323,931,1391,1391,103,1116,1116,1116,769,1195,1218,312,791,312,741,791,
997,312,334,334,312,287,287,633,1397,1426,605,1431,327,592,705,1194,592,1097,
1118,1503,1267,1267,1267,618,1229,734,1089,785,1089,1129,1148,1148,1089,915,
1148,1129,1148,1011,1011,1229,871,1560,1560,1560,563,1537,1009,1560,632,985,592,
1308,592,882,145,145,397,837,383,592,592,832,36,2714,2107,1588,1347,36,36,1443,
1453,334,2230,1588,1169,650,1169,2107,425,425,891,891,425,2532,679,274,274,274,
325,274,1297,194,1297,627,314,917,314,314,1501,414,1490,1036,592,1036,1025,901,
1218,1025,901,280,592,592,901,1461,159,159,159,2076,1066,1176,1176,516,327,516,
1179,1176,899,1176,1176,323,1187,1229,663,1229,504,1229,916,1229,916,1661,41,36,
278,1027,648,648,648,1626,648,646,1 179,1580,1061,1514,1008,1741,2076,1514,1008,
952,1089,427,952,427,1083,425,427,1089,1083,425,427,425,230,920,1678,920,1678,
189,189,953,189,133,189,1075,189,189,133,1264,725,189,1629,189,808,23 0,230,2179,
770,230,770,230,21,21,784,1118,230,230,230,770,1118,986,808,916,30,327,918,679,
414,916,1165,1355,916,755,733,433,1490,433,433,433,605,433,433,433,1446,679,206,
433,21,2452,206,206,433,1894,206,822,206,2073,206,206,21,822,21,206,206,21,383,
1513,375,1347,432,1589,172,954,242,1256,1256,1248,1256,1256,1248,1248,1256,842,
13,592,13,842,1291,592,21,175,13,592,13,13,1426,13,1541,445,808,808,863,647,219,
1592,1029,1225,917,1963,1129,555,1313,550,660,550,220,660,552,663,220,533,220,
383,550,1278,1495,636,842,1036,425,842,425,1537,1278,842,554,1508,636,554,301,
842,792,1392,1021,284,1172,997,1021,103,1316,308,1210,848,848,1089,1089,848,848,
67,1029,827,1029,2078,827,1312,1029,827,590,872,1312,427,67,67,67,67,872,827,
872,2126,1436,26,2126,67,1072,2126,1610,872,1620,883,883,1397,1189,555,555,563,
1189,555,640,555,640,1089,1089,610,610,1585,610,1355,610,1015,616,925,1015,482,
230,707,231,888,1355,589,1379,151,931,1486,1486,393,235,960,590,235,960,422,142,
285,285,327,327,442,2009,822,445,822,567,888,2611,1537,323,55,1537,323,888,2611,
323,1537,323,58,445,593,2045,593,58,47,770,842,47,47,842,842,648,2557,173,689,
2291,1446,2085,2557,2557,2291,1780,1535,2291,2391,808,691,1295,1165,983,9248,
2000,948,983,983,2225,2000,983,983,705,948,2000,1795,1592,478,592,1795,1795,663,
478,1790,478,592,1592,173,901,312,4,1606,173,838,754,754,128,550,1166,551,1480,
550,550,1875,1957,1166,902,1875,550,550,551,2632,551,1875,1875,551,2891,2159,
2632,3231,551,815,150,1654,1059,1059,734,770,555,1592,555,2059,770,770,1803,627,
627,627,2059,931,1272,427,1606,1272,1606,1187,1204,397,822,21,1645,263,263,822,
263,1645,280,263,605,1645,2014,21,21,1029,263,1916,2291,397,397,496,270,270,
1319,264,1638,264,986,1278,1397,1278,1191,409,1191,740,1191,754,754,387,63,948,
666,666,1198,548,63,1248,285,1248,169,1248,1248,285,918,224,285,1426,1671,514,
514,717,514,51,1521,1745,51,605,1191,51,128,1191,51,51,1521,267,513,952,966,
1671,897,51,71,592,986,986,1121,592,280,2000,2000,1165,1165,1165,1818,222,1818,
1165,1252,506,327,443,432,1291,1291,2755,1413,520,1318,227,1047,828,520,347,
1364,136,136,452,457,457,132,457,488,1087,1013,2225,32,1571,2009,483,67,483,740,
740,1013,2854,866,32,2861,866,887,32,2444,740,32,32,866,2225,866,32,1571,2627,
32,850,1675,569,1158,32,1158,1797,2641,1565,1158,569,1797,1158,1797,55,1703,42,
55,2562,675,1703,42,55,749,488,488,347,1206,1286,1286,488,488,1206,1286,1206,
1286,550,550,1790,860,550,2452,550,550,2765,1089,1633,797,2244,1313,194,2129,
194,194,194,818,32,194,450,1313,2387,194,1227,2387,308,2232,526,476,278,830,830,
194,830,194,278,194,714,476,830,714,830,278,830,2532,1218,1759,1446,960,1747,
187,1446,1759,960,105,1446,1446,1271,1446,960,960,1218,1446,1446,105,1446,960,
488,1446,427,534,842,1969,2460,1 969,842,842,1969,427,941,2160,427,230,938,2075,
1675,1675,895,1675,34,129,1811,239,749,1957,2271,749,1908,129,239,239,129,129,
2271,2426,1355,1756,194,1583,194,194,1583,194,1355,194,1628,2221,1269,2425,1756,
1355,1355,1583,1033,427,582,30,582,582,935,1444,1962,915,733,915,938,1962,767,
353,1630,1962,1962,563,733,563,733,353,822,1630,740,2076,2076,2076,589,589,2636,
866,589,947,1528,125,273,1058,1058,1161,1635,1355,1161,1161,1355,1355,650,1260,
1206,784,784,784,784,784,412,461,412,2240,412,679,891,461,679,679,189,189,1933,
1651,2515,189,1386,538,1386,1386,1187,1386,2423,2601,2285,175,175,2331,194,3079,
384,538,2365,2294,538,2166,1841,3326,1256,3923,976,85,550,550,1295,863,863,550,
1249,550,1759,146,1069,920,2633,885,885,1514,1489,166,1514,2041,885,2456,885,
2041,1081,1948,362,550,94,324,2308,94,2386,94,550,874,1329,1759,2280,1487,493,
493,2099,2599,1431,1086,1514,1086,2099,1858,368,1330,2599,1858,2846,2846,2907,
2846,713,713,1854,1123,713,713,3010,1123,3010,538,713,1123,447,822,555,2011,493,
508,2292,555,1736,2135,2704,555,2814,555,2000,555,555,822,914,327,679,327,648,
537,2263,931,1496,537,1296,1745,1592,1658,1795,650,1592,1745,1745,1658,1592,
1745,1592,1745,1658,1338,2124,1592,1745,1745,1745,837,1726,2897,1118,1118,230,
1118,1118,1118,1388,1748,514,128,1165,931,514,2974,2041,2387,2041,979,185,36,
1269,550,173,812,36,1165,2676,2562,1473,2885,1982,1578,1578,383,383,2360,383,
1578,2360,1584,1982,1578,1578,1578,2019,1036,355,724,2023,205,303,355,1036,1966,
355,1036,401,401,401,830,401,849,578,401,849,849,578,1776,1123,552,2632,808,
1446,1120,373,1529,1483,1057,893,1284,1430,1529,1529,2632,1352,2063,1606,1352,
1606,2291,3079,2291,1529,506,838,1606,1606,1352,1529,1529,1483,1529,1606,1529,
259,902,259,902,612,612,284,398,2991,1534,1118,1118,1118,1118,1118,734,284,2224,
398,734,284,734,398,3031,398,734,1707,2643,1344,1477,475,1818,194,1894,691,1528,
1184,1207,1501,6,2069,871,2069,3548,1443,2069,2685,3265,1350,3265,2069,2069,128,
1313,128,663,414,1313,414,2000,128,2000,663,1313,699,1797,550,327,550,1526,699,
327,1797,1526,550,550,327,550,1426,1426,1426,2285,1123,890,728,1707,728,728,327,
253,1187,1281,1364,1571,2170,755,3232,925,1496,2170,2170,1125,443,902,902,925,
755,2078,2457,902,2059,2170,1643,1129,902,902,1643,1129,606,36,103,338,338,1089,
338,338,338,1089,338,36,340,1206,1176,2041,833,1854,1916,1916,1501,2132,1736,
3065,367,1934,833,833,833,2041,3017,2147,818,1397,828,2147,398,828,818,1158,818,
689,327,36,1745,2132,582,1475,189,582,2132,1191,582,2132,1176,1176,516,2610,
2230,2230,64,1501,537,1501,173,2230,2988,1501,2694,2694,537,537,173,173,1501,
537,64,173,173,64,2230,537,2230,537,2230,2230,2069,3142,1645,689,1165,1165,1963,
514,488,1963,1145,235,1145,1078,1145,231,2405,552,21,57,57,57,1297,1455,1988,
2310,1885,2854,2014,734,1705,734,2854,734,677,1988,1660,734,677,734,677,677,734,
2854,1355,677,1397,2947,2386,1698,128,1698,3028,2386,2437,2947,2386,2643,2386,
2804,1188,335,746,1187,1187,861,2519,1917,2842,1917,675,1308,234,1917,314,314,
2339,2339,2592,2576,902,916,2339,916,2339,916,2339,916,1089,1089,2644,1221,1221,
2446,308,308,2225,2225,3192,2225,555,1592,1592,555,893,555,550,770,3622,2291,
2291,3419,465,250,2842,2291,2291,2291,935,160,1271,308,325,935,1799,1799,1891,
2227,1799,1598,112,1415,1840,2014,1822,2014,677,1822,1415,1415,1822,2014,2386,
2159,1822,1415,1822,179,1976,1033,179,1840,2014,1415,1970,1970,1501,563,563,563,
462,563,1970,1158,563,563,1541,1238,383,235,1158,383,1278,383,1898,2938,21,2938,
1313,2201,2059,423,2059,1313,872,1313,2044,89,173,3327,1660,2044,1623,173,1114,
1114,1592,1868,1651,1811,383,3469,1811,1651,869,383,383,1651,1651,3223,2166,
3469,767,383,1811,767,2323,3355,1457,3341,2640,2976,2323,3341,2323,2640,103,103,
1161,1080,2429,370,2018,2854,2429,2166,2429,2094,2207,871,1963,1963,2023,2023,
2336,663,2893,1580,691,663,705,2046,2599,409,2295,1118,2494,1118,1950,549,2494,
2453,2046 2494,2453,2046,2453,2046,409,1118,4952,2291,2225,1894,1423,2498,567,
4129,1475,1501,795,463,2084,828,828,232,828,232,232,1818,1818,666,463,232,220,
220,2162,2162,833,4336,913,35,913,21,2927,886,3037,383,886,876,1747,383,916,916,
916,2927,916,1747,837,1894,717,423,481,1894,1059,2262,3206,4700,1059,3304,2262,
871,1831,871,3304,1059,1158,1934,1158,756,1511,41,978,1934,2603,720,41,756,41,
325,2611,1158,173,1123,1934,1934,1511,2045,2045,2045,1423,3206,3691,2512,3206,
2512,2000,1811,2504,2504,2611,2437,2437,2437,1455,893,150,2665,1966,605,398,
2331,1177,516,1962,4241,94,1252,760,1292,1962,1373,2000,1990,3684,42,1868,3779,
1811,1811,2041,3010,5436,1780,2041,1868,1811,1780,1811,1868,1811,2041,1868,1811,
5627,4274,1811,1868,4602,1811,1811,1474,2665,235,1474,2665
附录B.1用于表V0的值
这些值表示用于上述应用中小节B.5.4.1所述的表V0的示例值集。每个条目是10进制表示的32-比特整数。值的顺序是从第一列的顶部到第一列的底部,然后是第二列的顶部,依此类推。
251291136 3676575285 1255426612 138853680 2213589897
3952231631 2581671944 4213663089 4160398285 2734638932
3370958628 3312220480 1521339547 3322241130 1129721478
4070167936 681232419 3041843489 2068983570 3187422815
123631495 307306866 420130494 2247491078 2859178611
3351110283 4112503940 10677091 3669524410 3284308411
3218676425 1158111502 515623176 1575146607 3819792700
2011642291 709227802 3457502702 828029864 3557526733
774603218 2724140433 2115821274 3732001371 451874476
2402805061 4201101115 2720124766 3422026452 1740576081
1004366930 4215970289 3242576090 3370954177 3592838701
1843948209 4048876515 854310108 4006626915 1709429513
428891132 3031661061 425973987 543812220 3702918379
3746331984 1909085522 325832382 1243116171 3533351328
1591258008 510985033 1796851292 3928372514 1641660745
3067016507 1361682810 2462744411 2791443445 179350258
1433388735 129243379 1976681690 4081325272 2380520112
504005498 3142379587 1408671665 2280435605 3936163904
2032657933 2569842483 1228817808 885616073 3685256204
3419319784 3033268270 3917210003 616452097 3156252216
2805686246 1658118006 263976645 3188863436 1854258901
3102436986 932109358 2593736473 2780382310 2861641019
3808671154 1982290045 2471651269 2340014831 3176611298
2501582075 2983082771 4291353919 1208439576 834787554
3978944421 3007670818 650792940 258356309 331353807
246043949 3448104768 1191583883 3837963200 517858103
4016898363 683749698 3046561335 2075009450 3010168884
649743608 778296777 2466530435 3214181212 4012642001
1974987508 1399125101 2545983082 3303882142 2217188075
2651273766 1939403708 969168436 880813252 3756943137
2357956801 1692176003 2019348792 1355575717 3077882590
689605112 3868299200 2268075521 207231484 2054995199
715807172 1422476658 1169345068 2420803184 3081443129
2722736134 593093658 3250240009 358923368 3895398812
191939188 1878973865 3963499681 1617557768 1141097543
3535520147 2526292949 2560755113 3272161958 2376261053
3277019569 1591602827 911182396 1771154147 2626898255
1470435941 3986158854 760842409 2842106362 2554703076
3763101702 3964389521 3569308693 1751209208 401233789
3232409631 2695031039 2687243553 1421030790 1460049922
122701163 1942050155 381854665 658316681 678083952
3920852693 424618399 2613828404 194065839 1064990737
782246947 1347204291 2761078866 3241510581 940909784
372121310 2669179716 1456668111 38625260 1673396780
2995604341 2434425874 883760091 301875395 528881783
2045698575 540801947 3294951678 4176141739 1712547446
2332962102 1384069776 1604598575 297312930 3629685652
4005368743 4123580443 1985308198 2137802113 1358307511
218596347 1523670218 1014570543 1502984205
3415381967 2708475297 2724959607 3669376622
4207612806 1046771089 3062518035 3728477036
861117671 2229796016 3115293053 234652930
附录B.2用于表V1的值
这些值表示用于上述应用中小节B.5.4.1所述的表V1的示例值集。每个条目是10进制表示的32-比特整数。值的顺序是从第一列的顶部到第一列的底部,然后是第二列的顶部,依此类推。
807385413 3843885867 3545667983 644189126 922673938
2043073223 4201106668 332038910 226475395 3877430102
3336749796 415906198 976628269 307789415 3422391938
1302105833 19296841 3123492423 1196105631 1414347295
2278607931 2402488407 3041418372 3191691839 1971054608
541015020 2137119134 2258059298 782852669 3061798054
1684564270 1744097284 2139377204 1608507813 830555096
372709334 579965637 3243642973 1847685900 2822905141
3508252125 2037662632 3226247917 4069766876 167033190
1768346005 852173610 3674004636 3931548641 1079139428
1270451292 2681403713 2698992189 2526471011 4210126723
2603029534 1047144830 3453843574 766865139 3593797804
2049387273 2982173936 1963216666 2115084288 429192890
3891424859 910285038 3509855005 4259411376 372093950
2152948345 418775776520 2358481858 3323683436 1779187770
4114760273 2589870048 747331248 568512177 3312189287
915180310 989448887 1957348676 3736601419 204349348
3754787998 3292758024 1097574450 1800276898 452421568
700503826 506322719 2435697214 4012458395 2800540462
2131559305 176010738 3870972145 1823982 3733109044
1308908630 1865471968 1888833893 27980198 1235082423
224437350 2619324712 2914085525 2023839966 1765319556
4065424007 564829442 4161315584 869505096 3174729780
3638665944 1996870325 1273113343 431161506 3762994475
1679385496 339697593 3269644828 1024804023 3171962488
3431345226 4071072948 3681293816 1853869307 442160826
1779595665 3618966336 412536684 3393537983 198349622
3068494238 2111320126 1156034077 1500703614 45942637
1424062773 1093955153 3823026442 3019471560 132408631 1
1033448464 957978696 1066971017 1351086955 2901868599
4050396853 892010560 3598330293 3096933631 678860040
3302235052 1854601078 1979273937 3034634988 3812229107
420600373 1873407527 2079029895 2544598006 19936821
2868446243 2498544695 1195045909 1230942551 1119590141
311689386 2694156259 1071986421 3362230798 3640121682
259047959 1927339682 2712821515 159984793 3545931032
4057180909 1650555729 3377754595 491590373 2102949142
1575367248 183933047 2184151095 3993872886 2828208598
4151214153 3061444337 750918864 3681855622 3603378023
110249784 2067387204 2585729879 903593547 4135048896
3006865921 228962564 4249895712 3535062472
4293710613 3904109414 1832579367 1799803217
3501256572 1595995433 1192240192 772984149
998007483 1780701372 946734366 895863112
499288295 2463145963 31230688 1899036275
1205710710 307281463 3174399083 4187322100
2997199489 3237929991 3549375728 101856048
640417429 3852995239 1642430184 234650315
3044194711 2398693510 1904857554 3183125617
486690751 3754138664 861877404 3190039692
2686640734 522074127 3277825584 525584357
2394526209 146352474 4267074718 1286834489
2521660077 4104915256 3122860549 455810374
49993987 3029415884 666423581 1869181575
Claims (11)
1.一种编码用于在通信信道上从源传送到目标的数据的方法,所述方法包括:
从输入码元的有序集中产生多个冗余码元以如下的确定性过程传送,即使用第一输入码元计算的第一静态码元集与使用不同于第一输入码元的第二输入码元计算的第二静态码元集具有较少的共同成员;以及
从包含输入码元和冗余码元的码元的组合集中产生多个输出码元,其中可能的输出码元的数量比码元的组合集中的码元的数量多得多,其中至少一个输出码元是从码元的组合集中的一个以上码元、并从码元的组合集中的少于全部码元的码元中产生的,从而输入码元的有序集可从任何预定数量N的输出码元中以期望准确度再生。
2.如权利要求1所述的方法,还包括在通信信道上传送多个输出码元。
3.如权利要求1所述的方法,还包括在存储介质上存储多个输出码元。
4.如权利要求1所述的方法,其特征在于,多个冗余码元是根据LPDC码产生的。
5.如权利要求1所述的方法,其特征在于,期望准确度是完全恢复输入码元。
6.如权利要求1所述的方法,其特征在于,期望准确度是高概率地完全恢复输入码元。
7.如权利要求1所述的方法,其特征在于,期望准确度是恢复G个输入码元,其中G比输入码元的有序集中的输入码元的数量少。
8.如权利要求1所述的方法,其特征在于,至多G个输入码元可从任意数量的输出码元中再生,其中G比输入码元的有序集中的输入码元的数量少。
9.如权利要求1所述的方法,其特征在于,产生多个冗余码元包括,对于每个冗余码元:
根据分布确定t个不同的输入码元;以及
按照t个不同输入码元的异或来计算每个冗余码元。
10.如权利要求1所述的方法,还包括在通信信道上传送多个输出码元,其中产生多个输出码元的步骤基本上与传送多个输出码元的步骤并发地进行。
11.如权利要求1所述的方法,其特征在于,所述多个冗余码元包括静态码元、汉明码元和填充码元,其中码元数量之和被选为质数。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310014760.3A CN103124182B (zh) | 2004-05-07 | 2005-05-09 | 文件下载和流系统 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US56912704P | 2004-05-07 | 2004-05-07 | |
US60/569,127 | 2004-05-07 | ||
PCT/US2005/016334 WO2005112250A2 (en) | 2004-05-07 | 2005-05-09 | File download and streaming system |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310014760.3A Division CN103124182B (zh) | 2004-05-07 | 2005-05-09 | 文件下载和流系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101019326A true CN101019326A (zh) | 2007-08-15 |
CN101019326B CN101019326B (zh) | 2013-02-27 |
Family
ID=35394825
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2005800010267A Active CN101019326B (zh) | 2004-05-07 | 2005-05-09 | 文件下载和流系统 |
CN201310014760.3A Active CN103124182B (zh) | 2004-05-07 | 2005-05-09 | 文件下载和流系统 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310014760.3A Active CN103124182B (zh) | 2004-05-07 | 2005-05-09 | 文件下载和流系统 |
Country Status (6)
Country | Link |
---|---|
US (3) | US7418651B2 (zh) |
EP (2) | EP2202888A1 (zh) |
JP (2) | JP4971144B2 (zh) |
KR (2) | KR101161193B1 (zh) |
CN (2) | CN101019326B (zh) |
WO (1) | WO2005112250A2 (zh) |
Families Citing this family (87)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7068729B2 (en) * | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US20020129159A1 (en) | 2001-03-09 | 2002-09-12 | Michael Luby | Multi-output packet server with independent streams |
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
US6909383B2 (en) | 2002-10-05 | 2005-06-21 | Digital Fountain, Inc. | Systematic encoding and decoding of chain reaction codes |
CN101834610B (zh) | 2003-10-06 | 2013-01-30 | 数字方敦股份有限公司 | 通过通信信道接收从源发射的数据的方法和装置 |
KR101161193B1 (ko) | 2004-05-07 | 2012-07-02 | 디지털 파운튼, 인크. | 파일 다운로드 및 스트리밍 시스템 |
US20070242955A1 (en) * | 2004-06-01 | 2007-10-18 | The Penn State Research Foundation | Optical Wireless Communications Using Ultra Short Light Pulses and Pulse Shaping |
WO2006020826A2 (en) * | 2004-08-11 | 2006-02-23 | Digital Fountain, Inc. | Method and apparatus for fast encoding of data symbols according to half-weight codes |
US7533324B2 (en) * | 2004-09-22 | 2009-05-12 | Kencast, Inc. | System, method and apparatus for FEC encoding and decoding |
US7739580B1 (en) * | 2005-02-17 | 2010-06-15 | Kencast, Inc. | System, method and apparatus for reducing blockage losses on information distribution networks |
US7788393B2 (en) * | 2005-02-23 | 2010-08-31 | Cisco Technology, Inc. | Switching a client from unicasting to multicasting by increasing the unicast stream rate to the client |
US8140699B2 (en) * | 2005-02-23 | 2012-03-20 | Cisco Technology, Inc. | Switching a client from unicasting to multicasting by simultaneously providing unicast and multicast streams to the client |
US8223643B1 (en) | 2005-09-06 | 2012-07-17 | Kencast, Inc. | Method for packet-level FEC encoding a stream of source packets using shifted interleaving |
CN101379712B (zh) | 2006-02-08 | 2011-12-14 | 汤姆森特许公司 | 瑞普特代码的解码 |
US8713195B2 (en) | 2006-02-10 | 2014-04-29 | Cisco Technology, Inc. | Method and system for streaming digital video content to a client in a digital video network |
EP1980074A4 (en) | 2006-02-13 | 2012-12-19 | Digital Fountain Inc | CONTINUOUS CONTINUOUS CONTINUOUS TRANSMISSION WITH CONCURRENT FLUX AGGREGATION FOR CONTINUOUS CONTROL CALCULATION |
EP1985021A4 (en) * | 2006-02-13 | 2013-05-29 | Digital Fountain Inc | CONTINUOUS TRANSMISSION AND BUFFER DELIVERY USING CONTINUOUS MONITORING OVERVIEW AND PERIODS OF PROTECTION |
US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
US7971129B2 (en) * | 2006-05-10 | 2011-06-28 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems |
US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US9419749B2 (en) * | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
US20100211690A1 (en) * | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
WO2008003094A2 (en) | 2006-06-29 | 2008-01-03 | Digital Fountain, Inc. | Efficient representation of symbol-based transformations with application to encoding and decoding of forward error correction codes |
US8943401B2 (en) * | 2006-09-29 | 2015-01-27 | Yahoo! Inc. | Script-based content-embedding code generation in digital media benefit attachment mechanism |
US8707139B2 (en) | 2006-10-18 | 2014-04-22 | Kencast, Inc. | Systems, methods, apparatus, and computer program products for providing forward error correction with low latency |
WO2009036378A1 (en) | 2007-09-12 | 2009-03-19 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
US9521186B2 (en) | 2007-09-13 | 2016-12-13 | International Business Machines Corporation | Method and system for file transfer over a messaging infrastructure |
TWI357245B (en) | 2007-12-31 | 2012-01-21 | Ind Tech Res Inst | System and method for downloading real-time intera |
US8418034B2 (en) | 2008-02-08 | 2013-04-09 | Kencast, Inc. | Systems, methods, apparatus and computer program products for highly reliable file delivery using compound and braided FEC encoding and decoding |
US20090254794A1 (en) * | 2008-04-04 | 2009-10-08 | Nxp B.V. | Method for efficient packet framing in a communication network |
CA2723386A1 (en) * | 2008-05-07 | 2009-11-12 | Digital Fountain, Inc. | Fast channel zapping and high quality streaming protection over a broadcast channel |
US9100153B2 (en) * | 2008-09-25 | 2015-08-04 | The Royal Institution For The Advancement Of Learning/Mcgill University | Methods and systems for improving iterative signal processing |
US8812455B1 (en) | 2008-09-30 | 2014-08-19 | Emc Corporation | Efficient data backup |
US8090689B1 (en) | 2008-09-30 | 2012-01-03 | Emc Corporation | Efficient data recovery |
US8347388B1 (en) | 2008-09-30 | 2013-01-01 | Emc Corporation | System and method for orchestrating services |
TWI363501B (en) * | 2008-12-23 | 2012-05-01 | Ind Tech Res Inst | Method and apparatus for data package in broadcast networks |
US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US9288010B2 (en) | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US9015564B2 (en) | 2009-08-19 | 2015-04-21 | Qualcomm Incorporated | Content delivery system with allocation of source data and repair data among HTTP servers |
FR2949632B1 (fr) * | 2009-08-28 | 2012-05-18 | Commissariat Energie Atomique | Procede d'egalisation de la taille des paquets de donnees par blocs d'un flux multimedia |
US20110096828A1 (en) * | 2009-09-22 | 2011-04-28 | Qualcomm Incorporated | Enhanced block-request streaming using scalable encoding |
US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
US9136981B2 (en) * | 2010-03-03 | 2015-09-15 | Qualcomm Incorporated | Block aggregation of objects in a communication system |
US8627073B2 (en) * | 2010-03-24 | 2014-01-07 | GM Global Technology Operations LLC | Adaptive certificate distribution mechanism in vehicular networks using forward error correcting codes |
US9225961B2 (en) | 2010-05-13 | 2015-12-29 | Qualcomm Incorporated | Frame packing for asymmetric stereo video |
US9485546B2 (en) | 2010-06-29 | 2016-11-01 | Qualcomm Incorporated | Signaling video samples for trick mode video representations |
US8918533B2 (en) | 2010-07-13 | 2014-12-23 | Qualcomm Incorporated | Video switching for streaming video data |
US9185439B2 (en) | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
US9596447B2 (en) | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
US8578241B2 (en) * | 2011-10-10 | 2013-11-05 | Lsi Corporation | Systems and methods for parity sharing data processing |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
JP5795446B2 (ja) | 2011-11-01 | 2015-10-14 | クゥアルコム・インコーポレイテッドQualcomm Incorporated | Httpサーバの間でのソースデータおよび修復データの割り当てを伴うコンテンツ配送システム |
WO2013078558A1 (en) * | 2011-11-28 | 2013-06-06 | Jigsee Inc. | Method of determining transport parameters for efficient data transport across a network |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
US9646020B2 (en) * | 2012-05-02 | 2017-05-09 | Microsoft Technology Licensing, Llc | Integrated format conversion during disk upload |
KR101983032B1 (ko) * | 2012-05-07 | 2019-05-30 | 삼성전자주식회사 | 방송 및 통신 시스템에서 패킷 송수신 장치 및 방법 |
TWI485992B (zh) * | 2012-08-31 | 2015-05-21 | Ind Tech Res Inst | 猛禽碼之編碼加速裝置與方法 |
JP2014068295A (ja) * | 2012-09-27 | 2014-04-17 | Kddi Corp | 無線環境に適したマルチキャストデータを配信する配信サーバ、システム及びプログラム |
WO2014065734A1 (en) * | 2012-10-26 | 2014-05-01 | Telefonaktiebolaget L M Ericsson (Publ) | METHODS AND ARRANGEMENT FOR HANDLING FILE REPAIR DURING MBMS OR eMBMS DELIVERY |
US9294227B2 (en) * | 2013-01-29 | 2016-03-22 | Qualcomm Incorporated | LT staircase FEC code |
US9119144B2 (en) * | 2013-02-25 | 2015-08-25 | Qualcomm Incorporated | Method and apparatus for generation of balanced weight preamble sequences |
CN104079369A (zh) | 2013-03-28 | 2014-10-01 | 株式会社日立制作所 | 服务器、数据缓存方法、使用该服务器的通信系统及方法 |
KR102093731B1 (ko) * | 2013-10-22 | 2020-03-26 | 삼성전자주식회사 | 오류 정정 부호를 사용하는 통신 시스템에서 패킷 송수신 기법 |
TWI523465B (zh) * | 2013-12-24 | 2016-02-21 | 財團法人工業技術研究院 | 檔案傳輸系統和方法 |
TWI519143B (zh) | 2013-12-30 | 2016-01-21 | 財團法人工業技術研究院 | 通訊系統、其方法與其接收端 |
KR20150084632A (ko) | 2014-01-13 | 2015-07-22 | 삼성전자주식회사 | 통신 시스템에서 패킷 송수신 방법 및 장치 |
US9596218B1 (en) * | 2014-03-03 | 2017-03-14 | Google Inc. | Methods and systems of encrypting messages using rateless codes |
US9455750B2 (en) * | 2014-07-28 | 2016-09-27 | Qualcomm Incorporated | Source block size selection |
US9935654B2 (en) * | 2015-02-06 | 2018-04-03 | Alcatel-Lucent Usa Inc. | Low power low-density parity-check decoding |
US9590657B2 (en) | 2015-02-06 | 2017-03-07 | Alcatel-Lucent Usa Inc. | Low power low-density parity-check decoding |
US10903858B2 (en) * | 2015-05-27 | 2021-01-26 | Quantum Corporation | Dynamically variable error correcting code (ECC) system with hybrid rateless reed-solomon ECCs |
US10826539B2 (en) | 2016-05-11 | 2020-11-03 | Idac Holdings, Inc. | Method and system for advanced outer coding |
CN106357693B (zh) * | 2016-11-09 | 2020-06-09 | 深圳市云之讯网络技术有限公司 | 实时媒体流丢包补偿方法 |
EP3457601B1 (en) * | 2017-09-13 | 2019-12-25 | Siemens Aktiengesellschaft | A method for sending digital data over a number of channels |
US10771191B2 (en) * | 2018-03-09 | 2020-09-08 | Kencast, Inc. | System for highly reliable file delivery of using continuous FEC encoding/decoding |
US11083961B2 (en) * | 2018-12-21 | 2021-08-10 | Universal City Studios Llc | Scalable interactive video systems and methods |
US10785098B1 (en) | 2019-04-30 | 2020-09-22 | Alibaba Group Holding Limited | Network configuration using multicast address modulation |
CN110278054B (zh) * | 2019-04-30 | 2021-11-16 | 创新先进技术有限公司 | 一种配网方法和装置 |
Family Cites Families (552)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US560738A (en) * | 1896-05-26 | Overhead traveling crane | ||
US3909721A (en) | 1972-01-31 | 1975-09-30 | Signatron | Signal processing system |
US4365338A (en) | 1980-06-27 | 1982-12-21 | Harris Corporation | Technique for high rate digital transmission over a dynamic dispersive channel |
US4965825A (en) * | 1981-11-03 | 1990-10-23 | The Personalized Mass Media Corporation | Signal processing apparatus and methods |
US4589112A (en) * | 1984-01-26 | 1986-05-13 | International Business Machines Corporation | System for multiple error detection with single and double bit error correction |
US4901319A (en) * | 1988-03-18 | 1990-02-13 | General Electric Company | Transmission system with adaptive interleaving |
GB8815978D0 (en) | 1988-07-05 | 1988-08-10 | British Telecomm | Method & apparatus for encoding decoding & transmitting data in compressed form |
US5136592A (en) | 1989-06-28 | 1992-08-04 | Digital Equipment Corporation | Error detection and correction system for long burst errors |
US5421031A (en) * | 1989-08-23 | 1995-05-30 | Delta Beta Pty. Ltd. | Program transmission optimisation |
US5701582A (en) | 1989-08-23 | 1997-12-23 | Delta Beta Pty. Ltd. | Method and apparatus for efficient transmissions of programs |
US7594250B2 (en) | 1992-04-02 | 2009-09-22 | Debey Henry C | Method and system of program transmission optimization using a redundant transmission sequence |
US5329369A (en) | 1990-06-01 | 1994-07-12 | Thomson Consumer Electronics, Inc. | Asymmetric picture compression |
US5455823A (en) * | 1990-11-06 | 1995-10-03 | Radio Satellite Corporation | Integrated communications terminal |
US5164963A (en) | 1990-11-07 | 1992-11-17 | At&T Bell Laboratories | Coding for digital transmission |
US5465318A (en) | 1991-03-28 | 1995-11-07 | Kurzweil Applied Intelligence, Inc. | Method for generating a speech recognition model for a non-vocabulary utterance |
US5379297A (en) * | 1992-04-09 | 1995-01-03 | Network Equipment Technologies, Inc. | Concurrent multi-channel segmentation and reassembly processors for asynchronous transfer mode |
EP0543070A1 (en) * | 1991-11-21 | 1993-05-26 | International Business Machines Corporation | Coding system and method using quaternary codes |
US5371532A (en) | 1992-05-15 | 1994-12-06 | Bell Communications Research, Inc. | Communications architecture and method for distributing information services |
US5425050A (en) | 1992-10-23 | 1995-06-13 | Massachusetts Institute Of Technology | Television transmission system using spread spectrum and orthogonal frequency-division multiplex |
US5372532A (en) | 1993-01-26 | 1994-12-13 | Robertson, Jr.; George W. | Swivel head cap connector |
EP0613249A1 (en) | 1993-02-12 | 1994-08-31 | Altera Corporation | Custom look-up table with reduced number of architecture bits |
DE4316297C1 (de) | 1993-05-14 | 1994-04-07 | Fraunhofer Ges Forschung | Frequenzanalyseverfahren |
AU665716B2 (en) | 1993-07-05 | 1996-01-11 | Mitsubishi Denki Kabushiki Kaisha | A transmitter for encoding error correction codes and a receiver for decoding error correction codes on a transmission frame |
US5590405A (en) | 1993-10-29 | 1996-12-31 | Lucent Technologies Inc. | Communication technique employing variable information transmission |
JP2576776B2 (ja) | 1993-11-10 | 1997-01-29 | 日本電気株式会社 | パケット伝送方法・パケット伝送装置 |
US5517508A (en) * | 1994-01-26 | 1996-05-14 | Sony Corporation | Method and apparatus for detection and error correction of packetized digital data |
CA2140850C (en) | 1994-02-24 | 1999-09-21 | Howard Paul Katseff | Networked system for display of multimedia presentations |
US5566208A (en) | 1994-03-17 | 1996-10-15 | Philips Electronics North America Corp. | Encoder buffer having an effective size which varies automatically with the channel bit-rate |
US5432787A (en) * | 1994-03-24 | 1995-07-11 | Loral Aerospace Corporation | Packet data transmission system with adaptive data recovery method |
US5757415A (en) * | 1994-05-26 | 1998-05-26 | Sony Corporation | On-demand data transmission by dividing input data into blocks and each block into sub-blocks such that the sub-blocks are re-arranged for storage to data storage means |
US5802394A (en) | 1994-06-06 | 1998-09-01 | Starlight Networks, Inc. | Method for accessing one or more streams in a video storage system using multiple queues and maintaining continuity thereof |
US5739864A (en) | 1994-08-24 | 1998-04-14 | Macrovision Corporation | Apparatus for inserting blanked formatted fingerprint data (source ID, time/date) in to a video signal |
US5568614A (en) | 1994-07-29 | 1996-10-22 | International Business Machines Corporation | Data streaming between peer subsystems of a computer system |
US5668948A (en) | 1994-09-08 | 1997-09-16 | International Business Machines Corporation | Media streamer with control node enabling same isochronous streams to appear simultaneously at output ports or different streams to appear simultaneously at output ports |
US5926205A (en) | 1994-10-19 | 1999-07-20 | Imedia Corporation | Method and apparatus for encoding and formatting data representing a video program to provide multiple overlapping presentations of the video program |
US5659614A (en) | 1994-11-28 | 1997-08-19 | Bailey, Iii; John E. | Method and system for creating and storing a backup copy of file data stored on a computer |
US5617541A (en) | 1994-12-21 | 1997-04-01 | International Computer Science Institute | System for packetizing data encoded corresponding to priority levels where reconstructed data corresponds to fractionalized priority level and received fractionalized packets |
JP3614907B2 (ja) * | 1994-12-28 | 2005-01-26 | 株式会社東芝 | データ再送制御方法及びデータ再送制御システム |
EP0823153A4 (en) | 1995-04-27 | 1999-10-20 | Stevens Inst Technology | HIGH INTEGRITY TRANSPORT METHOD FOR TIME-CRITICAL MULTIMEDIA NETWORK APPLICATIONS |
US5835165A (en) | 1995-06-07 | 1998-11-10 | Lsi Logic Corporation | Reduction of false locking code words in concatenated decoders |
US5805825A (en) | 1995-07-26 | 1998-09-08 | Intel Corporation | Method for semi-reliable, unidirectional broadcast information services |
US6079041A (en) | 1995-08-04 | 2000-06-20 | Sanyo Electric Co., Ltd. | Digital modulation circuit and digital demodulation circuit |
US5754563A (en) * | 1995-09-11 | 1998-05-19 | Ecc Technologies, Inc. | Byte-parallel system for implementing reed-solomon error-correcting codes |
KR0170298B1 (ko) | 1995-10-10 | 1999-04-15 | 김광호 | 디지탈 비디오 테이프의 기록 방법 |
US5751336A (en) * | 1995-10-12 | 1998-05-12 | International Business Machines Corporation | Permutation based pyramid block transmission scheme for broadcasting in video-on-demand storage systems |
JP3305183B2 (ja) | 1996-01-12 | 2002-07-22 | 株式会社東芝 | ディジタル放送受信端末装置 |
US6012159A (en) * | 1996-01-17 | 2000-01-04 | Kencast, Inc. | Method and system for error-free data transfer |
US5852565A (en) | 1996-01-30 | 1998-12-22 | Demografx | Temporal and resolution layering in advanced television |
US5936659A (en) | 1996-01-31 | 1999-08-10 | Telcordia Technologies, Inc. | Method for video delivery using pyramid broadcasting |
US5903775A (en) * | 1996-06-06 | 1999-05-11 | International Business Machines Corporation | Method for the sequential transmission of compressed video information at varying data rates |
US5745504A (en) | 1996-06-25 | 1998-04-28 | Telefonaktiebolaget Lm Ericsson | Bit error resilient variable length code |
US5940863A (en) | 1996-07-26 | 1999-08-17 | Zenith Electronics Corporation | Apparatus for de-rotating and de-interleaving data including plural memory devices and plural modulo memory address generators |
US5936949A (en) | 1996-09-05 | 1999-08-10 | Netro Corporation | Wireless ATM metropolitan area network |
KR100261706B1 (ko) | 1996-12-17 | 2000-07-15 | 가나이 쓰도무 | 디지탈방송신호의 수신장치와 수신 및 기록재생장치 |
US6044485A (en) * | 1997-01-03 | 2000-03-28 | Ericsson Inc. | Transmitter method and transmission system using adaptive coding based on channel characteristics |
US6141053A (en) | 1997-01-03 | 2000-10-31 | Saukkonen; Jukka I. | Method of optimizing bandwidth for transmitting compressed video data streams |
US6011590A (en) * | 1997-01-03 | 2000-01-04 | Ncr Corporation | Method of transmitting compressed information to minimize buffer space |
US5946357A (en) | 1997-01-17 | 1999-08-31 | Telefonaktiebolaget L M Ericsson | Apparatus, and associated method, for transmitting and receiving a multi-stage, encoded and interleaved digital communication signal |
EP0854650A3 (en) | 1997-01-17 | 2001-05-02 | NOKIA TECHNOLOGY GmbH | Method for addressing a service in digital video broadcasting |
US5983383A (en) * | 1997-01-17 | 1999-11-09 | Qualcom Incorporated | Method and apparatus for transmitting and receiving concatenated code data |
US6014706A (en) * | 1997-01-30 | 2000-01-11 | Microsoft Corporation | Methods and apparatus for implementing control functions in a streamed video display system |
EP1024672A1 (en) | 1997-03-07 | 2000-08-02 | Sanyo Electric Co., Ltd. | Digital broadcast receiver and display |
US6115420A (en) | 1997-03-14 | 2000-09-05 | Microsoft Corporation | Digital video signal encoder and encoding method |
DE19716011A1 (de) | 1997-04-17 | 1998-10-22 | Abb Research Ltd | Verfahren und Vorrichtung zur Informationsübertragung über Stromversorgungsleitungen |
US6226259B1 (en) * | 1997-04-29 | 2001-05-01 | Canon Kabushiki Kaisha | Device and method for transmitting information device and method for processing information |
US5970098A (en) * | 1997-05-02 | 1999-10-19 | Globespan Technologies, Inc. | Multilevel encoder |
US5844636A (en) | 1997-05-13 | 1998-12-01 | Hughes Electronics Corporation | Method and apparatus for receiving and recording digital packet data |
JP4110593B2 (ja) | 1997-05-19 | 2008-07-02 | ソニー株式会社 | 信号記録方法及び信号記録装置 |
JPH1141211A (ja) | 1997-05-19 | 1999-02-12 | Sanyo Electric Co Ltd | ディジタル変調回路と変調方法、ディジタル復調回路と復調方法 |
EP0933768A4 (en) | 1997-05-19 | 2000-10-04 | Sanyo Electric Co | DIGITAL MODULATION AND DEMODULATION |
US6128649A (en) | 1997-06-02 | 2000-10-03 | Nortel Networks Limited | Dynamic selection of media streams for display |
US6081907A (en) | 1997-06-09 | 2000-06-27 | Microsoft Corporation | Data delivery system and method for delivering data and redundant information over a unidirectional network |
US5917852A (en) | 1997-06-11 | 1999-06-29 | L-3 Communications Corporation | Data scrambling system and method and communications system incorporating same |
KR100240869B1 (ko) | 1997-06-25 | 2000-01-15 | 윤종용 | 이중 다이버서티 시스템을 위한 데이터 전송 방법 |
US5933056A (en) | 1997-07-15 | 1999-08-03 | Exar Corporation | Single pole current mode common-mode feedback circuit |
US6175944B1 (en) * | 1997-07-15 | 2001-01-16 | Lucent Technologies Inc. | Methods and apparatus for packetizing data for transmission through an erasure broadcast channel |
US6047069A (en) | 1997-07-17 | 2000-04-04 | Hewlett-Packard Company | Method and apparatus for preserving error correction capabilities during data encryption/decryption |
US6904110B2 (en) * | 1997-07-31 | 2005-06-07 | Francois Trans | Channel equalization system and method |
US6178536B1 (en) | 1997-08-14 | 2001-01-23 | International Business Machines Corporation | Coding scheme for file backup and systems based thereon |
FR2767940A1 (fr) * | 1997-08-29 | 1999-02-26 | Canon Kk | Procedes et dispositifs de codage et de decodage et appareils les mettant en oeuvre |
EP0903955A1 (en) | 1997-09-04 | 1999-03-24 | STMicroelectronics S.r.l. | Modular architecture PET decoder for ATM networks |
US6088330A (en) | 1997-09-09 | 2000-07-11 | Bruck; Joshua | Reliable array of distributed computing nodes |
US6134596A (en) | 1997-09-18 | 2000-10-17 | Microsoft Corporation | Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates |
US6272658B1 (en) | 1997-10-27 | 2001-08-07 | Kencast, Inc. | Method and system for reliable broadcasting of data files and streams |
US6163870A (en) | 1997-11-06 | 2000-12-19 | Compaq Computer Corporation | Message encoding with irregular graphing |
US6081909A (en) | 1997-11-06 | 2000-06-27 | Digital Equipment Corporation | Irregularly graphed encoding technique |
US6073250A (en) | 1997-11-06 | 2000-06-06 | Luby; Michael G. | Loss resilient decoding technique |
US6195777B1 (en) | 1997-11-06 | 2001-02-27 | Compaq Computer Corporation | Loss resilient code with double heavy tailed series of redundant layers |
US6081918A (en) | 1997-11-06 | 2000-06-27 | Spielman; Daniel A. | Loss resilient code with cascading series of redundant layers |
JP3472115B2 (ja) | 1997-11-25 | 2003-12-02 | Kddi株式会社 | マルチチャンネルを用いるビデオデータ伝送方法及びその装置 |
US6243846B1 (en) | 1997-12-12 | 2001-06-05 | 3Com Corporation | Forward error correction system for packet based data and real time media, using cross-wise parity calculation |
US5870412A (en) * | 1997-12-12 | 1999-02-09 | 3Com Corporation | Forward error correction system for packet based real time media |
US6849803B1 (en) | 1998-01-15 | 2005-02-01 | Arlington Industries, Inc. | Electrical connector |
US6097320A (en) | 1998-01-20 | 2000-08-01 | Silicon Systems, Inc. | Encoder/decoder system with suppressed error propagation |
US6226301B1 (en) | 1998-02-19 | 2001-05-01 | Nokia Mobile Phones Ltd | Method and apparatus for segmentation and assembly of data frames for retransmission in a telecommunications system |
US6141788A (en) | 1998-03-13 | 2000-10-31 | Lucent Technologies Inc. | Method and apparatus for forward error correction in packet networks |
US6278716B1 (en) | 1998-03-23 | 2001-08-21 | University Of Massachusetts | Multicast with proactive forward error correction |
US6459811B1 (en) | 1998-04-02 | 2002-10-01 | Sarnoff Corporation | Bursty data transmission of compressed video data |
US6185265B1 (en) * | 1998-04-07 | 2001-02-06 | Worldspace Management Corp. | System for time division multiplexing broadcast channels with R-1/2 or R-3/4 convolutional coding for satellite transmission via on-board baseband processing payload or transparent payload |
US6067646A (en) * | 1998-04-17 | 2000-05-23 | Ameritech Corporation | Method and system for adaptive interleaving |
US6018359A (en) * | 1998-04-24 | 2000-01-25 | Massachusetts Institute Of Technology | System and method for multicast video-on-demand delivery system |
US6445717B1 (en) | 1998-05-01 | 2002-09-03 | Niwot Networks, Inc. | System for recovering lost information in a data stream |
US6421387B1 (en) | 1998-05-15 | 2002-07-16 | North Carolina State University | Methods and systems for forward error correction based loss recovery for interactive video transmission |
US6937618B1 (en) | 1998-05-20 | 2005-08-30 | Sony Corporation | Separating device and method and signal receiving device and method |
US6333926B1 (en) | 1998-08-11 | 2001-12-25 | Nortel Networks Limited | Multiple user CDMA basestation modem |
BR9913277A (pt) | 1998-09-04 | 2001-09-25 | At & T Corp | Codificação de bloco-espaço e codificação de canal combinado em um arranjo de multi-antenas |
US6415326B1 (en) | 1998-09-15 | 2002-07-02 | Microsoft Corporation | Timeline correlation between multiple timeline-altered media streams |
US7068729B2 (en) | 2001-12-21 | 2006-06-27 | Digital Fountain, Inc. | Multi-stage code generator and decoder for communication systems |
US7243285B2 (en) | 1998-09-23 | 2007-07-10 | Digital Fountain, Inc. | Systems and methods for broadcasting information additive codes |
US6320520B1 (en) | 1998-09-23 | 2001-11-20 | Digital Fountain | Information additive group code generator and decoder for communications systems |
US6307487B1 (en) | 1998-09-23 | 2001-10-23 | Digital Fountain, Inc. | Information additive code generator and decoder for communication systems |
US6704370B1 (en) * | 1998-10-09 | 2004-03-09 | Nortel Networks Limited | Interleaving methodology and apparatus for CDMA |
IT1303735B1 (it) | 1998-11-11 | 2001-02-23 | Falorni Italia Farmaceutici S | Acidi ialuronici reticolati e loro usi medici. |
US6408128B1 (en) | 1998-11-12 | 2002-06-18 | Max Abecassis | Replaying with supplementary information a segment of a video |
US6483736B2 (en) | 1998-11-16 | 2002-11-19 | Matrix Semiconductor, Inc. | Vertically stacked field programmable nonvolatile memory and method of fabrication |
JP2000151426A (ja) | 1998-11-17 | 2000-05-30 | Toshiba Corp | インターリーブ・デインターリーブ回路 |
US6166544A (en) | 1998-11-25 | 2000-12-26 | General Electric Company | MR imaging system with interactive image contrast control |
US6876623B1 (en) | 1998-12-02 | 2005-04-05 | Agere Systems Inc. | Tuning scheme for code division multiplex broadcasting system |
JP3464981B2 (ja) | 1998-12-03 | 2003-11-10 | フラウンホーファー−ゲゼルシャフト・ツール・フェルデルング・デル・アンゲヴァンテン・フォルシュング・アインゲトラーゲネル・フェライン | 情報送信装置及びその方法並びに情報受信装置及びその方法 |
US6229827B1 (en) * | 1998-12-04 | 2001-05-08 | Cidra Corporation | Compression-tuned bragg grating and laser |
US6637031B1 (en) * | 1998-12-04 | 2003-10-21 | Microsoft Corporation | Multimedia presentation latency minimization |
US6496980B1 (en) | 1998-12-07 | 2002-12-17 | Intel Corporation | Method of providing replay on demand for streaming digital multimedia |
US6223324B1 (en) * | 1999-01-05 | 2001-04-24 | Agere Systems Guardian Corp. | Multiple program unequal error protection for digital audio broadcasting and other applications |
JP3926499B2 (ja) | 1999-01-22 | 2007-06-06 | 株式会社日立国際電気 | 畳み込み符号軟判定復号方式の受信装置 |
US6618451B1 (en) | 1999-02-13 | 2003-09-09 | Altocom Inc | Efficient reduced state maximum likelihood sequence estimator |
US6041001A (en) * | 1999-02-25 | 2000-03-21 | Lexar Media, Inc. | Method of increasing data reliability of a flash memory device without compromising compatibility |
EP1083496A1 (en) | 1999-03-03 | 2001-03-14 | Sony Corporation | Transmitter, receiver, transmitter/receiver system, transmission method and reception method |
US6785323B1 (en) | 1999-11-22 | 2004-08-31 | Ipr Licensing, Inc. | Variable rate coding for forward link |
US6466698B1 (en) | 1999-03-25 | 2002-10-15 | The United States Of America As Represented By The Secretary Of The Navy | Efficient embedded image and video compression system using lifted wavelets |
US6535920B1 (en) * | 1999-04-06 | 2003-03-18 | Microsoft Corporation | Analyzing, indexing and seeking of streaming information |
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 |
JP3256517B2 (ja) | 1999-04-06 | 2002-02-12 | インターナショナル・ビジネス・マシーンズ・コーポレーション | 符号化回路、回路、パリティ生成方法及び記憶媒体 |
US6804202B1 (en) | 1999-04-08 | 2004-10-12 | Lg Information And Communications, Ltd. | Radio protocol for mobile communication system and method |
US7885340B2 (en) | 1999-04-27 | 2011-02-08 | Realnetworks, Inc. | System and method for generating multiple synchronized encoded representations of media data |
FI113124B (fi) | 1999-04-29 | 2004-02-27 | Nokia Corp | Tiedonsiirto |
KR100784652B1 (ko) | 1999-05-06 | 2007-12-12 | 소니 가부시끼 가이샤 | 데이터 처리 방법/장치, 데이터 재생 방법/장치, 및 기록매체 |
KR100416996B1 (ko) * | 1999-05-10 | 2004-02-05 | 삼성전자주식회사 | 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법 |
US6229824B1 (en) | 1999-05-26 | 2001-05-08 | Xm Satellite Radio Inc. | Method and apparatus for concatenated convolutional endcoding and interleaving |
US6154452A (en) | 1999-05-26 | 2000-11-28 | Xm Satellite Radio Inc. | Method and apparatus for continuous cross-channel interleaving |
AU5140200A (en) | 1999-05-26 | 2000-12-18 | Enounce, Incorporated | Method and apparatus for controlling time-scale modification during multi-media broadcasts |
JP2000353969A (ja) | 1999-06-11 | 2000-12-19 | Sony Corp | デジタル音声放送の受信機 |
US6577599B1 (en) | 1999-06-30 | 2003-06-10 | Sun Microsystems, Inc. | Small-scale reliable multicasting |
IL141800A0 (en) | 1999-07-06 | 2002-03-10 | Samsung Electronics Co Ltd | Rate matching device and method for a data communication system |
US6643332B1 (en) * | 1999-07-09 | 2003-11-04 | Lsi Logic Corporation | Method and apparatus for multi-level coding of digital signals |
JP3451221B2 (ja) | 1999-07-22 | 2003-09-29 | 日本無線株式会社 | 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体 |
US6279072B1 (en) | 1999-07-22 | 2001-08-21 | Micron Technology, Inc. | Reconfigurable memory with selectable error correction storage |
US6453440B1 (en) | 1999-08-04 | 2002-09-17 | Sun Microsystems, Inc. | System and method for detecting double-bit errors and for correcting errors due to component failures |
JP2001060934A (ja) | 1999-08-20 | 2001-03-06 | Matsushita Electric Ind Co Ltd | Ofdm通信装置 |
US6430233B1 (en) * | 1999-08-30 | 2002-08-06 | Hughes Electronics Corporation | Single-LNB satellite data receiver |
US6332163B1 (en) | 1999-09-01 | 2001-12-18 | Accenture, Llp | Method for providing communication services over a computer network system |
JP4284774B2 (ja) * | 1999-09-07 | 2009-06-24 | ソニー株式会社 | 送信装置、受信装置、通信システム、送信方法及び通信方法 |
JP2003510734A (ja) | 1999-09-27 | 2003-03-18 | コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ | ストリーミングのエミュレート用ファイル分割 |
US7529806B1 (en) | 1999-11-04 | 2009-05-05 | Koninklijke Philips Electronics N.V. | Partitioning of MP3 content file for emulating streaming |
JP2001094625A (ja) | 1999-09-27 | 2001-04-06 | Canon Inc | データ通信装置、データ通信方法及び記憶媒体 |
US20050160272A1 (en) | 1999-10-28 | 2005-07-21 | Timecertain, Llc | System and method for providing trusted time in content of digital data files |
US6523147B1 (en) * | 1999-11-11 | 2003-02-18 | Ibiquity Digital Corporation | Method and apparatus for forward error correction coding for an AM in-band on-channel digital audio broadcasting system |
US6678855B1 (en) * | 1999-12-02 | 2004-01-13 | Microsoft Corporation | Selecting K in a data transmission carousel using (N,K) forward error correction |
US6748441B1 (en) | 1999-12-02 | 2004-06-08 | Microsoft Corporation | Data carousel receiving and caching |
US6798791B1 (en) | 1999-12-16 | 2004-09-28 | Agere Systems Inc | Cluster frame synchronization scheme for a satellite digital audio radio system |
US6487692B1 (en) | 1999-12-21 | 2002-11-26 | Lsi Logic Corporation | Reed-Solomon decoder |
US20020009137A1 (en) | 2000-02-01 | 2002-01-24 | Nelson John E. | Three-dimensional video broadcasting system |
US6965636B1 (en) | 2000-02-01 | 2005-11-15 | 2Wire, Inc. | System and method for block error correction in packet-based digital communications |
US7304990B2 (en) | 2000-02-03 | 2007-12-04 | Bandwiz Inc. | Method of encoding and transmitting data over a communication medium through division and segmentation |
IL140504A0 (en) | 2000-02-03 | 2002-02-10 | Bandwiz Inc | Broadcast system |
WO2001057667A1 (en) | 2000-02-03 | 2001-08-09 | Bandwiz, Inc. | Data streaming |
JP2001251287A (ja) | 2000-02-24 | 2001-09-14 | Geneticware Corp Ltd | ハードウエア保護内部秘匿鍵及び可変パスコードを利用する機密データ伝送方法 |
DE10009443A1 (de) | 2000-02-29 | 2001-08-30 | Philips Corp Intellectual Pty | Empfänger und Verfahren zum Detektieren und Dekodieren eines DQPSK-modulierten und kanalkodierten Empfangssignals |
US6765866B1 (en) | 2000-02-29 | 2004-07-20 | Mosaid Technologies, Inc. | Link aggregation |
US6384750B1 (en) | 2000-03-23 | 2002-05-07 | Mosaid Technologies, Inc. | Multi-stage lookup for translating between signals of different bit lengths |
US6510177B1 (en) | 2000-03-24 | 2003-01-21 | Microsoft Corporation | System and method for layered video coding enhancement |
JP2001274776A (ja) | 2000-03-24 | 2001-10-05 | Toshiba Corp | 情報データ伝送システムとその送信装置及び受信装置 |
US6851086B2 (en) * | 2000-03-31 | 2005-02-01 | Ted Szymanski | Transmitter, receiver, and coding scheme to increase data rate and decrease bit error rate of an optical data link |
US6473010B1 (en) | 2000-04-04 | 2002-10-29 | Marvell International, Ltd. | Method and apparatus for determining error correction code failure rate for iterative decoding algorithms |
US8572646B2 (en) | 2000-04-07 | 2013-10-29 | Visible World Inc. | System and method for simultaneous broadcast for personalized messages |
US7073191B2 (en) | 2000-04-08 | 2006-07-04 | Sun Microsystems, Inc | Streaming a single media track to multiple clients |
US6631172B1 (en) | 2000-05-01 | 2003-10-07 | Lucent Technologies Inc. | Efficient list decoding of Reed-Solomon codes for message recovery in the presence of high noise levels |
US6742154B1 (en) | 2000-05-25 | 2004-05-25 | Ciena Corporation | Forward error correction codes for digital optical network optimization |
US6694476B1 (en) * | 2000-06-02 | 2004-02-17 | Vitesse Semiconductor Corporation | Reed-solomon encoder and decoder |
US6738942B1 (en) | 2000-06-02 | 2004-05-18 | Vitesse Semiconductor Corporation | Product code based forward error correction system |
GB2366159B (en) | 2000-08-10 | 2003-10-08 | Mitel Corp | Combination reed-solomon and turbo coding |
US6834342B2 (en) | 2000-08-16 | 2004-12-21 | Eecad, Inc. | Method and system for secure communication over unstable public connections |
KR100447162B1 (ko) | 2000-08-19 | 2004-09-04 | 엘지전자 주식회사 | 래디오 링크 콘트롤(rlc)에서 프로토콜 데이터 유닛(pdu) 정보의 길이 지시자(li) 처리방법 |
JP2002073625A (ja) | 2000-08-24 | 2002-03-12 | Nippon Hoso Kyokai <Nhk> | 放送番組に同期した情報提供の方法、サーバ及び媒体 |
US7340664B2 (en) | 2000-09-20 | 2008-03-04 | Lsi Logic Corporation | Single engine turbo decoder with single frame size buffer for interleaving/deinterleaving |
US6486803B1 (en) | 2000-09-22 | 2002-11-26 | Digital Fountain, Inc. | On demand encoding with a window |
US7031257B1 (en) | 2000-09-22 | 2006-04-18 | Lucent Technologies Inc. | Radio link protocol (RLP)/point-to-point protocol (PPP) design that passes corrupted data and error location information among layers in a wireless data transmission protocol |
US7151754B1 (en) | 2000-09-22 | 2006-12-19 | Lucent Technologies Inc. | Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding |
US7490344B2 (en) | 2000-09-29 | 2009-02-10 | Visible World, Inc. | System and method for seamless switching |
US6411223B1 (en) | 2000-10-18 | 2002-06-25 | Digital Fountain, Inc. | Generating high weight encoding symbols using a basis |
US7613183B1 (en) | 2000-10-31 | 2009-11-03 | Foundry Networks, Inc. | System and method for router data aggregation and delivery |
US6694478B1 (en) | 2000-11-07 | 2004-02-17 | Agere Systems Inc. | Low delay channel codes for correcting bursts of lost packets |
US6732325B1 (en) * | 2000-11-08 | 2004-05-04 | Digeo, Inc. | Error-correction with limited working storage |
US20020133247A1 (en) | 2000-11-11 | 2002-09-19 | Smith Robert D. | System and method for seamlessly switching between media streams |
US7072971B2 (en) | 2000-11-13 | 2006-07-04 | Digital Foundation, Inc. | Scheduling of multiple files for serving on a server |
US7240358B2 (en) | 2000-12-08 | 2007-07-03 | Digital Fountain, Inc. | Methods and apparatus for scheduling, serving, receiving media-on demand for clients, servers arranged according to constraints on resources |
ATE464740T1 (de) | 2000-12-15 | 2010-04-15 | British Telecomm | Übertagung von ton- und/oder bildmaterial |
AU2092702A (en) | 2000-12-15 | 2002-06-24 | British Telecomm | Transmission and reception of audio and/or video material |
US6850736B2 (en) | 2000-12-21 | 2005-02-01 | Tropian, Inc. | Method and apparatus for reception quality indication in wireless communication |
US7143433B1 (en) | 2000-12-27 | 2006-11-28 | Infovalve Computing Inc. | Video distribution system using dynamic segmenting of video data files |
US20020085013A1 (en) | 2000-12-29 | 2002-07-04 | Lippincott Louis A. | Scan synchronized dual frame buffer graphics subsystem |
NO315887B1 (no) * | 2001-01-04 | 2003-11-03 | Fast Search & Transfer As | Fremgangsmater ved overforing og soking av videoinformasjon |
US20080059532A1 (en) * | 2001-01-18 | 2008-03-06 | Kazmi Syed N | Method and system for managing digital content, including streaming media |
DE10103387A1 (de) | 2001-01-26 | 2002-08-01 | Thorsten Nordhoff | Windkraftanlage mit einer Einrichtung zur Hindernisbefeuerung bzw. Nachtkennzeichnung |
FI118830B (fi) | 2001-02-08 | 2008-03-31 | Nokia Corp | Tietovirran toisto |
US6868083B2 (en) | 2001-02-16 | 2005-03-15 | Hewlett-Packard Development Company, L.P. | Method and system for packet communication employing path diversity |
US20020129159A1 (en) | 2001-03-09 | 2002-09-12 | Michael Luby | Multi-output packet server with independent streams |
KR100464360B1 (ko) | 2001-03-30 | 2005-01-03 | 삼성전자주식회사 | 고속 패킷 데이터 전송 이동통신시스템에서 패킷 데이터채널에 대한 효율적인 에너지 분배 장치 및 방법 |
US20020143953A1 (en) | 2001-04-03 | 2002-10-03 | International Business Machines Corporation | Automatic affinity within networks performing workload balancing |
US6785836B2 (en) | 2001-04-11 | 2004-08-31 | Broadcom Corporation | In-place data transformation for fault-tolerant disk storage systems |
US6820221B2 (en) | 2001-04-13 | 2004-11-16 | Hewlett-Packard Development Company, L.P. | System and method for detecting process and network failures in a distributed system |
US7010052B2 (en) * | 2001-04-16 | 2006-03-07 | The Ohio University | Apparatus and method of CTCM encoding and decoding for a digital communication system |
US7035468B2 (en) * | 2001-04-20 | 2006-04-25 | Front Porch Digital Inc. | Methods and apparatus for archiving, indexing and accessing audio and video data |
US20020191116A1 (en) | 2001-04-24 | 2002-12-19 | Damien Kessler | System and data format for providing seamless stream switching in a digital video recorder |
US6497479B1 (en) | 2001-04-27 | 2002-12-24 | Hewlett-Packard Company | Higher organic inks with good reliability and drytime |
US7962482B2 (en) | 2001-05-16 | 2011-06-14 | Pandora Media, Inc. | Methods and systems for utilizing contextual feedback to generate and modify playlists |
US6633856B2 (en) | 2001-06-15 | 2003-10-14 | Flarion Technologies, Inc. | Methods and apparatus for decoding LDPC codes |
US7076478B2 (en) | 2001-06-26 | 2006-07-11 | Microsoft Corporation | Wrapper playlists on streaming media services |
US6745364B2 (en) | 2001-06-28 | 2004-06-01 | Microsoft Corporation | Negotiated/dynamic error correction for streamed media |
JP2003018568A (ja) | 2001-06-29 | 2003-01-17 | Matsushita Electric Ind Co Ltd | 再生システム、サーバ装置及び再生装置 |
US6895547B2 (en) * | 2001-07-11 | 2005-05-17 | International Business Machines Corporation | Method and apparatus for low density parity check encoding of data |
US6928603B1 (en) | 2001-07-19 | 2005-08-09 | Adaptix, Inc. | System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system |
US6961890B2 (en) * | 2001-08-16 | 2005-11-01 | Hewlett-Packard Development Company, L.P. | Dynamic variable-length error correction code |
US7110412B2 (en) | 2001-09-18 | 2006-09-19 | Sbc Technology Resources, Inc. | Method and system to transport high-quality video signals |
FI115418B (fi) | 2001-09-20 | 2005-04-29 | Oplayo Oy | Adaptiivinen mediavirta |
US6990624B2 (en) | 2001-10-12 | 2006-01-24 | Agere Systems Inc. | High speed syndrome-based FEC encoder and decoder and system using same |
US7480703B2 (en) | 2001-11-09 | 2009-01-20 | Sony Corporation | System, method, and computer program product for remotely determining the configuration of a multi-media content user based on response of the user |
US7003712B2 (en) * | 2001-11-29 | 2006-02-21 | Emin Martinian | Apparatus and method for adaptive, multimode decoding |
US7363354B2 (en) | 2001-11-29 | 2008-04-22 | Nokia Corporation | System and method for identifying and accessing network services |
JP2003174489A (ja) | 2001-12-05 | 2003-06-20 | Ntt Docomo Inc | ストリーミング配信装置、ストリーミング配信方法 |
FI114527B (fi) | 2002-01-23 | 2004-10-29 | Nokia Corp | Kuvakehysten ryhmittely videokoodauksessa |
EP1479245A1 (en) | 2002-01-23 | 2004-11-24 | Nokia Corporation | Grouping of image frames in video coding |
JP4472347B2 (ja) * | 2002-01-30 | 2010-06-02 | エヌエックスピー ビー ヴィ | 可変の帯域を有するネットワーク上でのマルチメディアデータのストリーミング |
WO2003071440A1 (en) | 2002-02-15 | 2003-08-28 | Digital Fountain, Inc. | System and method for reliably communicating the content of a live data stream |
JP4126928B2 (ja) | 2002-02-28 | 2008-07-30 | 日本電気株式会社 | プロキシサーバ及びプロキシ制御プログラム |
JP4116470B2 (ja) | 2002-03-06 | 2008-07-09 | ヒューレット・パッカード・カンパニー | メディア・ストリーミング配信システム |
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 |
WO2003090391A1 (en) * | 2002-04-15 | 2003-10-30 | Nokia Corporation | Rlp logical layer of a communication station |
US6677864B2 (en) * | 2002-04-18 | 2004-01-13 | Telefonaktiebolaget L.M. Ericsson | Method for multicast over wireless networks |
JP3629008B2 (ja) | 2002-04-19 | 2005-03-16 | 松下電器産業株式会社 | データ受信装置及びデータ配信システム |
JP3689063B2 (ja) | 2002-04-19 | 2005-08-31 | 松下電器産業株式会社 | データ受信装置及びデータ配信システム |
JP4134027B2 (ja) | 2002-04-25 | 2008-08-13 | シャープ株式会社 | 画像符号化装置、画像復号装置、及び画像記録装置 |
US20030204602A1 (en) | 2002-04-26 | 2003-10-30 | Hudson Michael D. | Mediated multi-source peer content delivery network architecture |
US7177658B2 (en) | 2002-05-06 | 2007-02-13 | Qualcomm, Incorporated | Multi-media broadcast and multicast service (MBMS) in a wireless communications system |
US7200388B2 (en) | 2002-05-31 | 2007-04-03 | Nokia Corporation | Fragmented delivery of multimedia |
AU2002368007A1 (en) | 2002-06-11 | 2003-12-22 | Telefonaktiebolaget Lm Ericsson (Publ) | Generation of mixed media streams |
US6856263B2 (en) | 2002-06-11 | 2005-02-15 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
US9240810B2 (en) | 2002-06-11 | 2016-01-19 | Digital Fountain, Inc. | Systems and processes for decoding chain reaction codes through inactivation |
US6956875B2 (en) | 2002-06-19 | 2005-10-18 | Atlinks Usa, Inc. | Technique for communicating variable bit rate data over a constant bit rate link |
JP4154569B2 (ja) | 2002-07-10 | 2008-09-24 | 日本電気株式会社 | 画像圧縮伸長装置 |
JP4120461B2 (ja) | 2002-07-12 | 2008-07-16 | 住友電気工業株式会社 | 伝送データ生成方法及び伝送データ生成装置 |
CN101232616B (zh) | 2002-07-16 | 2015-07-22 | 诺基亚有限公司 | 用于在视频编码中随机存取和逐步更新图像的方法 |
AU2003252347A1 (en) | 2002-07-31 | 2004-03-11 | Sharp Kabushiki Kaisha | Data communication device, its intermittent communication method, program describing its method, and recording medium on which program is recorded |
JP2004070712A (ja) | 2002-08-07 | 2004-03-04 | Nippon Telegr & Teleph Corp <Ntt> | データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム |
DK1529389T3 (en) | 2002-08-13 | 2016-05-30 | Nokia Technologies Oy | Symbol Interleaving |
US6985459B2 (en) * | 2002-08-21 | 2006-01-10 | Qualcomm Incorporated | Early transmission and playout of packets in wireless communication systems |
CN100393012C (zh) * | 2002-09-09 | 2008-06-04 | 西南交通大学 | 在混合自动重发请求系统中并行冗余发送与并行合并接收分组数据的方法 |
WO2004030273A1 (ja) | 2002-09-27 | 2004-04-08 | Fujitsu Limited | データ配信方法、システム、伝送方法及びプログラム |
JP3534742B1 (ja) | 2002-10-03 | 2004-06-07 | 株式会社エヌ・ティ・ティ・ドコモ | 動画像復号方法、動画像復号装置、及び動画像復号プログラム |
US6909383B2 (en) | 2002-10-05 | 2005-06-21 | Digital Fountain, Inc. | Systematic encoding and decoding of chain reaction codes |
JP2004135013A (ja) | 2002-10-10 | 2004-04-30 | Matsushita Electric Ind Co Ltd | 伝送装置及び伝送方法 |
FI116816B (fi) | 2002-10-14 | 2006-02-28 | Nokia Corp | Median suoratoisto |
US7289451B2 (en) | 2002-10-25 | 2007-10-30 | Telefonaktiebolaget Lm Ericsson (Publ) | Delay trading between communication links |
US8320301B2 (en) | 2002-10-25 | 2012-11-27 | Qualcomm Incorporated | MIMO WLAN system |
WO2004040831A1 (en) | 2002-10-30 | 2004-05-13 | Koninklijke Philips Electronics N.V. | Adaptative forward error control scheme |
JP2004165922A (ja) | 2002-11-12 | 2004-06-10 | Sony Corp | 情報処理装置および方法、並びにプログラム |
GB0226872D0 (en) | 2002-11-18 | 2002-12-24 | British Telecomm | Video transmission |
WO2004047455A1 (en) | 2002-11-18 | 2004-06-03 | British Telecommunications Public Limited Company | Transmission of video |
KR100502609B1 (ko) | 2002-11-21 | 2005-07-20 | 한국전자통신연구원 | Ldpc 코드를 이용한 부호화기 및 부호화 방법 |
US7086718B2 (en) | 2002-11-23 | 2006-08-08 | Silverbrook Research Pty Ltd | Thermal ink jet printhead with high nozzle areal density |
JP2004192140A (ja) | 2002-12-09 | 2004-07-08 | Sony Corp | データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム |
JP2004193992A (ja) | 2002-12-11 | 2004-07-08 | Sony Corp | 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム |
US8135073B2 (en) | 2002-12-19 | 2012-03-13 | Trident Microsystems (Far East) Ltd | Enhancing video images depending on prior image enhancements |
US7164882B2 (en) * | 2002-12-24 | 2007-01-16 | Poltorak Alexander I | Apparatus and method for facilitating a purchase using information provided on a media playing device |
WO2004068715A2 (en) | 2003-01-29 | 2004-08-12 | Digital Fountain, Inc. | Systems and processes for fast encoding of hamming codes |
US7525994B2 (en) * | 2003-01-30 | 2009-04-28 | Avaya Inc. | Packet data flow identification for multiplexing |
US7756002B2 (en) | 2003-01-30 | 2010-07-13 | Texas Instruments Incorporated | Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer |
US7231404B2 (en) | 2003-01-31 | 2007-06-12 | Nokia Corporation | Datacast file transmission with meta-data retention |
US7062272B2 (en) | 2003-02-18 | 2006-06-13 | Qualcomm Incorporated | Method and apparatus to track count of broadcast content recipients in a wireless telephone network |
EP1455504B1 (en) | 2003-03-07 | 2014-11-12 | Samsung Electronics Co., Ltd. | Apparatus and method for processing audio signal and computer readable recording medium storing computer program for the method |
JP4173755B2 (ja) | 2003-03-24 | 2008-10-29 | 富士通株式会社 | データ伝送サーバ |
US7610487B2 (en) * | 2003-03-27 | 2009-10-27 | Microsoft Corporation | Human input security codes |
US7266147B2 (en) | 2003-03-31 | 2007-09-04 | Sharp Laboratories Of America, Inc. | Hypothetical reference decoder |
JP2004343701A (ja) | 2003-04-21 | 2004-12-02 | Matsushita Electric Ind Co Ltd | データ受信再生装置、データ受信再生方法及びデータ受信再生処理プログラム |
US7408486B2 (en) | 2003-04-21 | 2008-08-05 | Qbit Corporation | System and method for using a microlet-based modem |
US20050041736A1 (en) * | 2003-05-07 | 2005-02-24 | Bernie Butler-Smith | Stereoscopic television signal processing method, transmission system and viewer enhancements |
KR100492567B1 (ko) | 2003-05-13 | 2005-06-03 | 엘지전자 주식회사 | 이동통신 시스템의 http 기반 비디오 스트리밍 장치및 방법 |
US7113773B2 (en) | 2003-05-16 | 2006-09-26 | Qualcomm Incorporated | Reliable reception of broadcast/multicast content |
JP2004348824A (ja) | 2003-05-21 | 2004-12-09 | Toshiba Corp | Eccエンコード方法、eccエンコード装置 |
US8161116B2 (en) | 2003-05-23 | 2012-04-17 | Kirusa, Inc. | Method and system for communicating a data file over a network |
JP2004362099A (ja) | 2003-06-03 | 2004-12-24 | Sony Corp | サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム |
MXPA05013237A (es) | 2003-06-07 | 2006-03-09 | Samsung Electronics Co Ltd | Aparato y metodo para la organizacion e interpretacion de datos multimedia en un medio de grabacion. |
KR101003413B1 (ko) | 2003-06-12 | 2010-12-23 | 엘지전자 주식회사 | 이동통신 단말기의 전송데이터 압축/해제 방법 |
US7603689B2 (en) | 2003-06-13 | 2009-10-13 | Microsoft Corporation | Fast start-up for digital video streams |
RU2265960C2 (ru) | 2003-06-16 | 2005-12-10 | Федеральное государственное унитарное предприятие "Калужский научно-исследовательский институт телемеханических устройств" | Способ передачи информации с использованием адаптивного перемежения |
US7391717B2 (en) | 2003-06-30 | 2008-06-24 | Microsoft Corporation | Streaming of variable bit rate multimedia content |
US20050004997A1 (en) | 2003-07-01 | 2005-01-06 | Nokia Corporation | Progressive downloading of timed multimedia content |
US8149939B2 (en) | 2003-07-07 | 2012-04-03 | Samsung Electronics Co., Ltd. | System of robust DTV signal transmissions that legacy DTV receivers will disregard |
US7254754B2 (en) | 2003-07-14 | 2007-08-07 | International Business Machines Corporation | Raid 3+3 |
KR100532450B1 (ko) | 2003-07-16 | 2005-11-30 | 삼성전자주식회사 | 에러에 대해 강인한 특성을 가지는 데이터 기록 방법,이에 적합한 데이터 재생 방법, 그리고 이에 적합한 장치들 |
US20050028067A1 (en) * | 2003-07-31 | 2005-02-03 | Weirauch Charles R. | Data with multiple sets of error correction codes |
US8694869B2 (en) | 2003-08-21 | 2014-04-08 | QUALCIMM Incorporated | Methods for forward error correction coding above a radio link control layer and related apparatus |
IL157885A0 (en) | 2003-09-11 | 2004-03-28 | Bamboo Mediacasting Ltd | Iterative forward error correction |
IL157886A0 (en) | 2003-09-11 | 2009-02-11 | Bamboo Mediacasting Ltd | Secure multicast transmission |
JP4183586B2 (ja) | 2003-09-12 | 2008-11-19 | 三洋電機株式会社 | 映像表示装置 |
WO2005029237A2 (en) | 2003-09-15 | 2005-03-31 | Digital Networks North America, Inc. | Method and system for adaptive transcoding and transrating in a video network |
KR100608715B1 (ko) | 2003-09-27 | 2006-08-04 | 엘지전자 주식회사 | QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법 |
DE60307852D1 (de) | 2003-09-30 | 2006-10-05 | Ericsson Telefon Ab L M | In-place Entschachtelung von Daten |
US7559004B1 (en) | 2003-10-01 | 2009-07-07 | Sandisk Corporation | Dynamic redundant area configuration in a non-volatile memory system |
CN101834610B (zh) | 2003-10-06 | 2013-01-30 | 数字方敦股份有限公司 | 通过通信信道接收从源发射的数据的方法和装置 |
US7516232B2 (en) * | 2003-10-10 | 2009-04-07 | Microsoft Corporation | Media organization for distributed sending of media data |
US7614071B2 (en) * | 2003-10-10 | 2009-11-03 | Microsoft Corporation | Architecture for distributed sending of media data |
WO2005036811A2 (en) * | 2003-10-14 | 2005-04-21 | Matsushita Electric Industrial Co., Ltd. | Data converter |
US7650036B2 (en) * | 2003-10-16 | 2010-01-19 | Sharp Laboratories Of America, Inc. | System and method for three-dimensional video coding |
US7168030B2 (en) * | 2003-10-17 | 2007-01-23 | Telefonaktiebolaget Lm Ericsson (Publ) | Turbo code decoder with parity information update |
US8132215B2 (en) | 2003-10-27 | 2012-03-06 | Panasonic Corporation | Apparatus for receiving broadcast signal |
JP2005136546A (ja) | 2003-10-29 | 2005-05-26 | Sony Corp | 送信装置および方法、記録媒体、並びにプログラム |
EP1528702B1 (en) | 2003-11-03 | 2008-01-23 | Broadcom Corporation | FEC (forward error correction) decoding with dynamic parameters |
US20050102371A1 (en) * | 2003-11-07 | 2005-05-12 | Emre Aksu | Streaming from a server to a client |
WO2005055016A2 (en) | 2003-12-01 | 2005-06-16 | Digital Fountain, Inc. | Protection of data from erasures using subsymbol based codes |
US7428669B2 (en) | 2003-12-07 | 2008-09-23 | Adaptive Spectrum And Signal Alignment, Inc. | Adaptive FEC codeword management |
US7574706B2 (en) | 2003-12-15 | 2009-08-11 | Microsoft Corporation | System and method for managing and communicating software updates |
US7590118B2 (en) | 2003-12-23 | 2009-09-15 | Agere Systems Inc. | Frame aggregation format |
JP4536383B2 (ja) | 2004-01-16 | 2010-09-01 | 株式会社エヌ・ティ・ティ・ドコモ | データ受信装置およびデータ受信方法 |
KR100770902B1 (ko) | 2004-01-20 | 2007-10-26 | 삼성전자주식회사 | 고속 무선 데이터 시스템을 위한 가변 부호율의 오류 정정부호 생성 및 복호 장치 및 방법 |
KR100834750B1 (ko) | 2004-01-29 | 2008-06-05 | 삼성전자주식회사 | 엔코더 단에서 스케일러빌리티를 제공하는 스케일러블비디오 코딩 장치 및 방법 |
JP4321284B2 (ja) | 2004-02-03 | 2009-08-26 | 株式会社デンソー | ストリーミングデータ送信装置、および情報配信システム |
US7599294B2 (en) | 2004-02-13 | 2009-10-06 | Nokia Corporation | Identification and re-transmission of missing parts |
KR100596705B1 (ko) | 2004-03-04 | 2006-07-04 | 삼성전자주식회사 | 비디오 스트리밍 서비스를 위한 비디오 코딩 방법과 비디오 인코딩 시스템, 및 비디오 디코딩 방법과 비디오 디코딩 시스템 |
KR100586883B1 (ko) | 2004-03-04 | 2006-06-08 | 삼성전자주식회사 | 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법 |
US7609653B2 (en) | 2004-03-08 | 2009-10-27 | Microsoft Corporation | Resolving partial media topologies |
WO2005094020A1 (en) | 2004-03-19 | 2005-10-06 | Telefonaktiebolaget Lm Ericsson (Publ) | Higher layer packet framing using rlp |
US7240236B2 (en) | 2004-03-23 | 2007-07-03 | Archivas, Inc. | Fixed content distributed data storage using permutation ring encoding |
JP4433287B2 (ja) | 2004-03-25 | 2010-03-17 | ソニー株式会社 | 受信装置および方法、並びにプログラム |
US8842175B2 (en) | 2004-03-26 | 2014-09-23 | Broadcom Corporation | Anticipatory video signal reception and processing |
US20050216472A1 (en) | 2004-03-29 | 2005-09-29 | David Leon | Efficient multicast/broadcast distribution of formatted data |
KR20070007810A (ko) | 2004-03-30 | 2007-01-16 | 코닌클리케 필립스 일렉트로닉스 엔.브이. | 디스크 기반 멀티미디어 콘텐츠에 대한 개선된 트릭 모드수행을 지원하는 시스템 및 방법 |
TW200534875A (en) | 2004-04-23 | 2005-11-01 | Lonza Ag | Personal care compositions and concentrates for making the same |
FR2869744A1 (fr) | 2004-04-29 | 2005-11-04 | Thomson Licensing Sa | Methode de transmission de paquets de donnees numeriques et appareil implementant la methode |
KR101161193B1 (ko) | 2004-05-07 | 2012-07-02 | 디지털 파운튼, 인크. | 파일 다운로드 및 스트리밍 시스템 |
US7633970B2 (en) | 2004-05-07 | 2009-12-15 | Agere Systems Inc. | MAC header compression for use with frame aggregation |
US20050254575A1 (en) | 2004-05-12 | 2005-11-17 | Nokia Corporation | Multiple interoperability points for scalable media coding and transmission |
US20060037057A1 (en) * | 2004-05-24 | 2006-02-16 | Sharp Laboratories Of America, Inc. | Method and system of enabling trick play modes using HTTP GET |
US8331445B2 (en) | 2004-06-01 | 2012-12-11 | Qualcomm Incorporated | Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques |
US20070110074A1 (en) | 2004-06-04 | 2007-05-17 | Bob Bradley | System and Method for Synchronizing Media Presentation at Multiple Recipients |
US8112531B2 (en) | 2004-07-14 | 2012-02-07 | Nokia Corporation | Grouping of session objects |
US7139660B2 (en) | 2004-07-14 | 2006-11-21 | General Motors Corporation | System and method for changing motor vehicle personalization settings |
US8544043B2 (en) | 2004-07-21 | 2013-09-24 | Qualcomm Incorporated | Methods and apparatus for providing content information to content servers |
US7409626B1 (en) | 2004-07-28 | 2008-08-05 | Ikanos Communications Inc | Method and apparatus for determining codeword interleaver parameters |
US7590922B2 (en) | 2004-07-30 | 2009-09-15 | Nokia Corporation | Point-to-point repair request mechanism for point-to-multipoint transmission systems |
US7376150B2 (en) | 2004-07-30 | 2008-05-20 | Nokia Corporation | Point-to-point repair response mechanism for point-to-multipoint transmission systems |
US7930184B2 (en) | 2004-08-04 | 2011-04-19 | Dts, Inc. | Multi-channel audio coding/decoding of random access points and transients |
WO2006020826A2 (en) | 2004-08-11 | 2006-02-23 | Digital Fountain, Inc. | Method and apparatus for fast encoding of data symbols according to half-weight codes |
JP4405875B2 (ja) * | 2004-08-25 | 2010-01-27 | 富士通株式会社 | エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体 |
JP2006074335A (ja) | 2004-09-01 | 2006-03-16 | Nippon Telegr & Teleph Corp <Ntt> | 伝送方法、伝送システム及び伝送装置 |
JP4576936B2 (ja) | 2004-09-02 | 2010-11-10 | ソニー株式会社 | 情報処理装置、情報記録媒体、コンテンツ管理システム、およびデータ処理方法、並びにコンピュータ・プログラム |
JP2006115104A (ja) | 2004-10-13 | 2006-04-27 | Daiichikosho Co Ltd | 高能率符号化された時系列情報をパケット化してリアルタイム・ストリーミング送信し受信再生する方法および装置 |
US7529984B2 (en) | 2004-11-16 | 2009-05-05 | Infineon Technologies Ag | Seamless change of depth of a general convolutional interleaver during transmission without loss of data |
US7751324B2 (en) | 2004-11-19 | 2010-07-06 | Nokia Corporation | Packet stream arrangement in multimedia transmission |
JP5053097B2 (ja) | 2004-11-22 | 2012-10-17 | トムソン リサーチ ファンディング コーポレイション | Dslシステムにおけるチャンネル切り替えの方法及び装置 |
US8015474B2 (en) | 2004-12-02 | 2011-09-06 | Thomson Licensing | Adaptive forward error correction |
KR20060065482A (ko) | 2004-12-10 | 2006-06-14 | 마이크로소프트 코포레이션 | 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스 |
JP2006174032A (ja) | 2004-12-15 | 2006-06-29 | Sanyo Electric Co Ltd | 画像データ伝送システム、画像データ受信装置及び画像データ送信装置 |
JP2006174045A (ja) | 2004-12-15 | 2006-06-29 | Ntt Communications Kk | 画像配信装置、プログラム及び方法 |
US7398454B2 (en) | 2004-12-21 | 2008-07-08 | Tyco Telecommunications (Us) Inc. | System and method for forward error correction decoding using soft information |
JP4391409B2 (ja) | 2004-12-24 | 2009-12-24 | 株式会社第一興商 | 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置 |
EP1847087A1 (en) | 2005-02-08 | 2007-10-24 | Telefonaktiebolaget LM Ericsson (publ) | On-demand multi-channel streaming session over packet-switched networks |
US7925097B2 (en) | 2005-02-18 | 2011-04-12 | Sanyo Electric Co., Ltd. | Image display method, image coding apparatus, and image decoding apparatus |
US7822139B2 (en) | 2005-03-02 | 2010-10-26 | Rohde & Schwarz Gmbh & Co. Kg | Apparatus, systems, methods and computer products for providing a virtual enhanced training sequence |
WO2006096104A1 (en) | 2005-03-07 | 2006-09-14 | Telefonaktiebolaget Lm Ericsson (Publ) | Multimedia channel switching |
US8028322B2 (en) | 2005-03-14 | 2011-09-27 | Time Warner Cable Inc. | Method and apparatus for network content download and recording |
US7219289B2 (en) | 2005-03-15 | 2007-05-15 | Tandberg Data Corporation | Multiply redundant raid system and XOR-efficient method and apparatus for implementing the same |
US7418649B2 (en) | 2005-03-15 | 2008-08-26 | Microsoft Corporation | Efficient implementation of reed-solomon erasure resilient codes in high-rate applications |
US7450064B2 (en) | 2005-03-22 | 2008-11-11 | Qualcomm, Incorporated | Methods and systems for deriving seed position of a subscriber station in support of unassisted GPS-type position determination in a wireless communication system |
JP4487028B2 (ja) | 2005-03-31 | 2010-06-23 | ブラザー工業株式会社 | 配信速度制御装置、配信システム、配信速度制御方法、及び配信速度制御用プログラム |
US7715842B2 (en) | 2005-04-09 | 2010-05-11 | Lg Electronics Inc. | Supporting handover of mobile terminal |
EP1869891A4 (en) | 2005-04-13 | 2014-06-11 | CODING, STORAGE AND SIGNALING OF SCALABILITY INFORMATION | |
JP4515319B2 (ja) | 2005-04-27 | 2010-07-28 | 株式会社日立製作所 | コンピュータシステム |
US8683066B2 (en) * | 2007-08-06 | 2014-03-25 | DISH Digital L.L.C. | Apparatus, system, and method for multi-bitrate content streaming |
US7961700B2 (en) | 2005-04-28 | 2011-06-14 | Qualcomm Incorporated | Multi-carrier operation in data transmission systems |
JP2006319743A (ja) | 2005-05-13 | 2006-11-24 | Toshiba Corp | 受信装置 |
US8228994B2 (en) | 2005-05-20 | 2012-07-24 | Microsoft Corporation | Multi-view video coding based on temporal and view decomposition |
KR20100037659A (ko) | 2005-05-24 | 2010-04-09 | 노키아 코포레이션 | 디지털 방송에서 계층적인 전송/수신을 위한 방법 및 장치 |
US7644335B2 (en) * | 2005-06-10 | 2010-01-05 | Qualcomm Incorporated | In-place transformations with applications to encoding and decoding various classes of codes |
US7676735B2 (en) | 2005-06-10 | 2010-03-09 | Digital Fountain Inc. | Forward error-correcting (FEC) coding and streaming |
JP2007013436A (ja) | 2005-06-29 | 2007-01-18 | Toshiba Corp | 符号化ストリーム再生装置 |
US20070006274A1 (en) | 2005-06-30 | 2007-01-04 | Toni Paila | Transmission and reception of session packets |
JP2007013675A (ja) | 2005-06-30 | 2007-01-18 | Sanyo Electric Co Ltd | ストリーミング配信システム及びサーバ |
US7725593B2 (en) * | 2005-07-15 | 2010-05-25 | Sony Corporation | Scalable video coding (SVC) file format |
US20070022215A1 (en) * | 2005-07-19 | 2007-01-25 | Singer David W | Method and apparatus for media data transmission |
ATE514246T1 (de) | 2005-08-19 | 2011-07-15 | Hewlett Packard Development Co | Andeutung von verlorenen segmenten über schichtgrenzen |
CN101053249B (zh) * | 2005-09-09 | 2011-02-16 | 松下电器产业株式会社 | 图像处理方法、图像存储方法、图像处理装置及文件格式 |
US7924913B2 (en) | 2005-09-15 | 2011-04-12 | Microsoft Corporation | Non-realtime data transcoding of multimedia content |
US20070067480A1 (en) | 2005-09-19 | 2007-03-22 | Sharp Laboratories Of America, Inc. | Adaptive media playout by server media processing for robust streaming |
US9113147B2 (en) * | 2005-09-27 | 2015-08-18 | Qualcomm Incorporated | Scalability techniques based on content information |
US20070078876A1 (en) * | 2005-09-30 | 2007-04-05 | Yahoo! Inc. | Generating a stream of media data containing portions of media files using location tags |
US7720062B2 (en) | 2005-10-05 | 2010-05-18 | Lg Electronics Inc. | Method of processing traffic information and digital broadcasting system |
US7164370B1 (en) * | 2005-10-06 | 2007-01-16 | Analog Devices, Inc. | System and method for decoding data compressed in accordance with dictionary-based compression schemes |
CN100442858C (zh) * | 2005-10-11 | 2008-12-10 | 华为技术有限公司 | 分组网络中多媒体实时传输的唇同步方法及其装置 |
RU2407217C2 (ru) | 2005-10-11 | 2010-12-20 | Нокиа Корпорейшн | Система и способ для эффективной адаптации масштабируемых потоков |
US7720096B2 (en) | 2005-10-13 | 2010-05-18 | Microsoft Corporation | RTP payload format for VC-1 |
JP5587552B2 (ja) | 2005-10-19 | 2014-09-10 | トムソン ライセンシング | スケーラブル映像符号化を用いた多視点映像符号化 |
JP4727401B2 (ja) | 2005-12-02 | 2011-07-20 | 日本電信電話株式会社 | 無線マルチキャスト伝送システム、無線送信装置及び無線マルチキャスト伝送方法 |
FR2894421B1 (fr) | 2005-12-07 | 2008-01-18 | Canon Kk | Procede et dispositif de decodage d'un flux video code suivant un codage hierarchique |
KR100759823B1 (ko) | 2005-12-08 | 2007-09-18 | 한국전자통신연구원 | 제로 복귀 신호 발생 장치 및 그 방법 |
JP4456064B2 (ja) | 2005-12-21 | 2010-04-28 | 日本電信電話株式会社 | パケット送信装置、受信装置、システム、およびプログラム |
US20070157267A1 (en) | 2005-12-30 | 2007-07-05 | Intel Corporation | Techniques to improve time seek operations |
CN101416526B (zh) | 2006-01-05 | 2013-06-19 | 艾利森电话股份有限公司 | 媒体容器文件管理方法和服务器 |
US8214516B2 (en) | 2006-01-06 | 2012-07-03 | Google Inc. | Dynamic media serving infrastructure |
US8767818B2 (en) | 2006-01-11 | 2014-07-01 | Nokia Corporation | Backward-compatible aggregation of pictures in scalable video coding |
EP1977593A4 (en) | 2006-01-12 | 2010-06-16 | Lg Electronics Inc | PROCESSING MORE VIEW VIDEO |
WO2007086654A1 (en) | 2006-01-25 | 2007-08-02 | Lg Electronics Inc. | Digital broadcasting system and method of processing data |
RU2290768C1 (ru) | 2006-01-30 | 2006-12-27 | Общество с ограниченной ответственностью "Трафиклэнд" | Система медиавещания в инфраструктуре оператора мобильной связи |
US7262719B2 (en) | 2006-01-30 | 2007-08-28 | International Business Machines Corporation | Fast data stream decoding using apriori information |
GB0602314D0 (en) | 2006-02-06 | 2006-03-15 | Ericsson Telefon Ab L M | Transporting packets |
US8990153B2 (en) | 2006-02-07 | 2015-03-24 | Dot Hill Systems Corporation | Pull data replication model |
CN101379712B (zh) * | 2006-02-08 | 2011-12-14 | 汤姆森特许公司 | 瑞普特代码的解码 |
EP1985021A4 (en) | 2006-02-13 | 2013-05-29 | Digital Fountain Inc | CONTINUOUS TRANSMISSION AND BUFFER DELIVERY USING CONTINUOUS MONITORING OVERVIEW AND PERIODS OF PROTECTION |
US9270414B2 (en) | 2006-02-21 | 2016-02-23 | Digital Fountain, Inc. | Multiple-field based code generator and decoder for communications systems |
US20070200949A1 (en) | 2006-02-21 | 2007-08-30 | Qualcomm Incorporated | Rapid tuning in multimedia applications |
JP2007228205A (ja) | 2006-02-23 | 2007-09-06 | Funai Electric Co Ltd | ネットワークサーバ |
US8320450B2 (en) | 2006-03-29 | 2012-11-27 | Vidyo, Inc. | System and method for transcoding between scalable and non-scalable video codecs |
US20080010153A1 (en) | 2006-04-24 | 2008-01-10 | Pugh-O'connor Archie | Computer network provided digital content under an advertising and revenue sharing basis, such as music provided via the internet with time-shifted advertisements presented by a client resident application |
US20090100496A1 (en) * | 2006-04-24 | 2009-04-16 | Andreas Bechtolsheim | Media server system |
US7640353B2 (en) | 2006-04-27 | 2009-12-29 | Microsoft Corporation | Guided random seek support for media streaming |
US7971129B2 (en) | 2006-05-10 | 2011-06-28 | Digital Fountain, Inc. | Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems |
US7525993B2 (en) | 2006-05-24 | 2009-04-28 | Newport Media, Inc. | Robust transmission system and method for mobile television applications |
US20100211690A1 (en) | 2009-02-13 | 2010-08-19 | Digital Fountain, Inc. | Block partitioning for a data stream |
US9380096B2 (en) | 2006-06-09 | 2016-06-28 | Qualcomm Incorporated | Enhanced block-request streaming system for handling low-latency streaming |
TWM302355U (en) * | 2006-06-09 | 2006-12-11 | Jia-Bau Jeng | Fixation and cushion structure of knee joint |
US9209934B2 (en) | 2006-06-09 | 2015-12-08 | Qualcomm Incorporated | Enhanced block-request streaming using cooperative parallel HTTP and forward error correction |
US9386064B2 (en) | 2006-06-09 | 2016-07-05 | Qualcomm Incorporated | Enhanced block-request streaming using URL templates and construction rules |
US9432433B2 (en) | 2006-06-09 | 2016-08-30 | Qualcomm Incorporated | Enhanced block-request streaming system using signaling or block creation |
US9419749B2 (en) | 2009-08-19 | 2016-08-16 | Qualcomm Incorporated | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes |
US9178535B2 (en) | 2006-06-09 | 2015-11-03 | Digital Fountain, Inc. | Dynamic stream interleaving and sub-stream based delivery |
JP2008011404A (ja) | 2006-06-30 | 2008-01-17 | Toshiba Corp | コンテンツ処理装置及びコンテンツ処理方法 |
JP4392004B2 (ja) | 2006-07-03 | 2009-12-24 | インターナショナル・ビジネス・マシーンズ・コーポレーション | パケット回復のための符号化および復号化技術 |
CN102148857A (zh) | 2006-07-20 | 2011-08-10 | 桑迪士克股份有限公司 | 内容分布系统 |
US7711797B1 (en) | 2006-07-31 | 2010-05-04 | Juniper Networks, Inc. | Optimizing batch size for prefetching data over wide area networks |
US8209736B2 (en) * | 2006-08-23 | 2012-06-26 | Mediatek Inc. | Systems and methods for managing television (TV) signals |
WO2008023328A2 (en) | 2006-08-24 | 2008-02-28 | Nokia Corporation | System and method for indicating track relationships in media files |
US20080066136A1 (en) | 2006-08-24 | 2008-03-13 | International Business Machines Corporation | System and method for detecting topic shift boundaries in multimedia streams using joint audio, visual and text cues |
JP2008109637A (ja) * | 2006-09-25 | 2008-05-08 | Toshiba Corp | 動画像符号化装置及びその方法 |
US8428013B2 (en) | 2006-10-30 | 2013-04-23 | Lg Electronics Inc. | Method of performing random access in a wireless communcation system |
JP2008118221A (ja) | 2006-10-31 | 2008-05-22 | Toshiba Corp | 復号装置及び復号方法 |
WO2008054100A1 (en) | 2006-11-01 | 2008-05-08 | Electronics And Telecommunications Research Institute | Method and apparatus for decoding metadata used for playing stereoscopic contents |
CA2668670C (en) | 2006-11-14 | 2013-04-30 | Qualcomm Incorporated | Systems and methods for channel switching |
US8027328B2 (en) | 2006-12-26 | 2011-09-27 | Alcatel Lucent | Header compression in a wireless communication network |
ES2709208T3 (es) | 2007-01-05 | 2019-04-15 | Sonic Ip Inc | Sistema de distribución de vídeo que incluye reproducción progresiva |
US20080168516A1 (en) | 2007-01-08 | 2008-07-10 | Christopher Lance Flick | Facilitating Random Access In Streaming Content |
EP2122874A1 (en) | 2007-01-09 | 2009-11-25 | Nokia Corporation | Method for supporting file versioning in mbms file repair |
US20080172430A1 (en) | 2007-01-11 | 2008-07-17 | Andrew Thomas Thorstensen | Fragmentation Compression Management |
MX2009000619A (es) | 2007-01-11 | 2009-04-16 | Panasonic Corp | Metodo para la reproduccion de truco de datos multimedia en flujo y encriptados. |
WO2008085013A1 (en) | 2007-01-12 | 2008-07-17 | University-Industry Cooperation Group Of Kyung Hee University | Packet format of network abstraction layer unit, and algorithm and apparatus for video encoding and decoding using the format, qos control algorithm and apparatus for ipv6 label switching using the format |
KR20080066408A (ko) | 2007-01-12 | 2008-07-16 | 삼성전자주식회사 | 3차원 영상 처리 장치 및 방법 |
US8126062B2 (en) | 2007-01-16 | 2012-02-28 | Cisco Technology, Inc. | Per multi-block partition breakpoint determining for hybrid variable length coding |
US7721003B2 (en) | 2007-02-02 | 2010-05-18 | International Business Machines Corporation | System and method to synchronize OSGi bundle inventories between an OSGi bundle server and a client |
US20080192818A1 (en) | 2007-02-09 | 2008-08-14 | Dipietro Donald Vincent | Systems and methods for securing media |
US20080232357A1 (en) | 2007-03-19 | 2008-09-25 | Legend Silicon Corp. | Ls digital fountain code |
JP4838191B2 (ja) | 2007-05-08 | 2011-12-14 | シャープ株式会社 | ファイル再生装置、ファイル再生方法、ファイル再生を実行させるプログラム及びそのプログラムを記録した記録媒体 |
JP2008283571A (ja) | 2007-05-11 | 2008-11-20 | Ntt Docomo Inc | コンテンツ配信装置、コンテンツ配信システム、およびコンテンツ配信方法 |
US8275002B2 (en) | 2007-05-14 | 2012-09-25 | Samsung Electronics Co., Ltd. | Broadcasting service transmitting apparatus and method and broadcasting service receiving apparatus and method for effectively accessing broadcasting service |
JP5317222B2 (ja) | 2007-05-16 | 2013-10-16 | トムソン ライセンシング | 信号を符号化および復号する方法および装置 |
FR2917262A1 (fr) | 2007-06-05 | 2008-12-12 | Thomson Licensing Sas | Dispositif et procede de codage d'un contenu video sous la forme d'un flux scalable. |
US8487982B2 (en) | 2007-06-07 | 2013-07-16 | Reald Inc. | Stereoplexing for film and video applications |
US8274551B2 (en) | 2007-06-11 | 2012-09-25 | Samsung Electronics Co., Ltd. | Method and apparatus for generating header information of stereoscopic image data |
EP2158747B1 (en) | 2007-06-20 | 2016-11-23 | Telefonaktiebolaget LM Ericsson (publ) | Method and arrangement for improved media session management |
RU2010102823A (ru) * | 2007-06-26 | 2011-08-10 | Нокиа Корпорейшн (Fi) | Система и способ индикации точек переключения временных уровней |
US7917702B2 (en) | 2007-07-10 | 2011-03-29 | Qualcomm Incorporated | Data prefetch throttle |
JP2009027598A (ja) | 2007-07-23 | 2009-02-05 | Hitachi Ltd | 映像配信サーバおよび映像配信方法 |
US8327403B1 (en) | 2007-09-07 | 2012-12-04 | United Video Properties, Inc. | Systems and methods for providing remote program ordering on a user device via a web server |
WO2009036378A1 (en) * | 2007-09-12 | 2009-03-19 | Digital Fountain, Inc. | Generating and communicating source identification information to enable reliable communications |
US8233532B2 (en) | 2007-09-21 | 2012-07-31 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Information signal, apparatus and method for encoding an information content, and apparatus and method for error correcting an information signal |
US8346959B2 (en) | 2007-09-28 | 2013-01-01 | Sharp Laboratories Of America, Inc. | Client-controlled adaptive streaming |
EP2046044B1 (en) | 2007-10-01 | 2017-01-18 | Cabot Communications Ltd | A method and apparatus for streaming digital media content and a communication system |
WO2009048277A2 (en) * | 2007-10-09 | 2009-04-16 | Samsung Electronics Co., Ltd. | Apparatus and method for generating and parsing mac pdu in a mobile communication system |
US8635360B2 (en) * | 2007-10-19 | 2014-01-21 | Google Inc. | Media playback point seeking using data range requests |
US8706907B2 (en) | 2007-10-19 | 2014-04-22 | Voxer Ip Llc | Telecommunication and multimedia management method and apparatus |
US20090125636A1 (en) | 2007-11-13 | 2009-05-14 | Qiong Li | Payload allocation methods for scalable multimedia servers |
EP2215595B1 (en) | 2007-11-23 | 2012-02-22 | Media Patents S.L. | A process for the on-line distribution of audiovisual contents with advertisements, advertisement management system, digital rights management system and audiovisual content player provided with said systems |
US8543720B2 (en) | 2007-12-05 | 2013-09-24 | Google Inc. | Dynamic bit rate scaling |
JP5385598B2 (ja) | 2007-12-17 | 2014-01-08 | キヤノン株式会社 | 画像処理装置及び画像管理サーバ装置及びそれらの制御方法及びプログラム |
US9313245B2 (en) | 2007-12-24 | 2016-04-12 | Qualcomm Incorporated | Adaptive streaming for on demand wireless services |
KR101506217B1 (ko) | 2008-01-31 | 2015-03-26 | 삼성전자주식회사 | 스테레오스코픽 영상의 부분 데이터 구간 재생을 위한스테레오스코픽 영상 데이터스트림 생성 방법과 장치, 및스테레오스코픽 영상의 부분 데이터 구간 재생 방법과 장치 |
EP2086237B1 (en) | 2008-02-04 | 2012-06-27 | Alcatel Lucent | Method and device for reordering and multiplexing multimedia packets from multimedia streams pertaining to interrelated sessions |
US8151174B2 (en) | 2008-02-13 | 2012-04-03 | Sunrise IP, LLC | Block modulus coding (BMC) systems and methods for block coding with non-binary modulus |
US20090219985A1 (en) | 2008-02-28 | 2009-09-03 | Vasanth Swaminathan | Systems and Methods for Processing Multiple Projections of Video Data in a Single Video File |
US7984097B2 (en) | 2008-03-18 | 2011-07-19 | Media Patents, S.L. | Methods for transmitting multimedia files and advertisements |
US8606996B2 (en) | 2008-03-31 | 2013-12-10 | Amazon Technologies, Inc. | Cache optimization |
US20090257508A1 (en) | 2008-04-10 | 2009-10-15 | Gaurav Aggarwal | Method and system for enabling video trick modes |
EP2263341B1 (en) | 2008-04-14 | 2018-09-19 | Amazon Technologies, Inc. | Method and apparatus for performing random access procedures |
US20100049865A1 (en) * | 2008-04-16 | 2010-02-25 | Nokia Corporation | Decoding Order Recovery in Session Multiplexing |
WO2009130561A1 (en) * | 2008-04-21 | 2009-10-29 | Nokia Corporation | Method and device for video coding and decoding |
KR101597377B1 (ko) * | 2008-04-28 | 2016-02-25 | 애플 인크. | 업링크 v-mimo를 위한 후보 리스트 생성 방법 및 장치 |
CA2723386A1 (en) | 2008-05-07 | 2009-11-12 | Digital Fountain, Inc. | Fast channel zapping and high quality streaming protection over a broadcast channel |
US7979570B2 (en) | 2008-05-12 | 2011-07-12 | Swarmcast, Inc. | Live media delivery over a packet-based computer network |
JP5022301B2 (ja) | 2008-05-19 | 2012-09-12 | 株式会社エヌ・ティ・ティ・ドコモ | プロキシサーバおよび通信中継プログラム、並びに通信中継方法 |
CN101287107B (zh) | 2008-05-29 | 2010-10-13 | 腾讯科技(深圳)有限公司 | 媒体文件的点播方法、系统和设备 |
US7925774B2 (en) | 2008-05-30 | 2011-04-12 | Microsoft Corporation | Media streaming using an index file |
US20100011274A1 (en) * | 2008-06-12 | 2010-01-14 | Qualcomm Incorporated | Hypothetical fec decoder and signalling for decoding control |
US8775566B2 (en) | 2008-06-21 | 2014-07-08 | Microsoft Corporation | File format for media distribution and presentation |
US8387150B2 (en) | 2008-06-27 | 2013-02-26 | Microsoft Corporation | Segmented media content rights management |
US8468426B2 (en) | 2008-07-02 | 2013-06-18 | Apple Inc. | Multimedia-aware quality-of-service and error correction provisioning |
US8539092B2 (en) | 2008-07-09 | 2013-09-17 | Apple Inc. | Video streaming using multiple channels |
US20100153578A1 (en) | 2008-07-16 | 2010-06-17 | Nokia Corporation | Method and Apparatus for Peer to Peer Streaming |
US8638796B2 (en) * | 2008-08-22 | 2014-01-28 | Cisco Technology, Inc. | Re-ordering segments of a large number of segmented service flows |
KR101019634B1 (ko) | 2008-09-04 | 2011-03-07 | 에스케이 텔레콤주식회사 | 미디어 전송 시스템 및 방법 |
US8325796B2 (en) | 2008-09-11 | 2012-12-04 | Google Inc. | System and method for video coding using adaptive segmentation |
US8370520B2 (en) | 2008-11-24 | 2013-02-05 | Juniper Networks, Inc. | Adaptive network content delivery system |
US8099476B2 (en) | 2008-12-31 | 2012-01-17 | Apple Inc. | Updatable real-time or near real-time streaming |
US8743906B2 (en) | 2009-01-23 | 2014-06-03 | Akamai Technologies, Inc. | Scalable seamless digital video stream splicing |
AU2010206977B2 (en) | 2009-01-26 | 2016-02-25 | Interdigital Vc Holdings, Inc. | Frame packing for video coding |
CN104780385B (zh) | 2009-01-29 | 2018-01-16 | 杜比实验室特许公司 | 视频装置、用于将多视图帧的序列编码为比特流的装置 |
US9281847B2 (en) | 2009-02-27 | 2016-03-08 | Qualcomm Incorporated | Mobile reception of digital video broadcasting—terrestrial services |
US8621044B2 (en) | 2009-03-16 | 2013-12-31 | Microsoft Corporation | Smooth, stateless client media streaming |
US8909806B2 (en) | 2009-03-16 | 2014-12-09 | Microsoft Corporation | Delivering cacheable streaming media presentations |
WO2010120804A1 (en) | 2009-04-13 | 2010-10-21 | Reald Inc. | Encoding, decoding, and distributing enhanced resolution stereoscopic video |
US9807468B2 (en) | 2009-06-16 | 2017-10-31 | Microsoft Technology Licensing, Llc | Byte range caching |
US8903895B2 (en) | 2009-07-22 | 2014-12-02 | Xinlab, Inc. | Method of streaming media to heterogeneous client devices |
US8355433B2 (en) | 2009-08-18 | 2013-01-15 | Netflix, Inc. | Encoding video streams for adaptive video streaming |
US9288010B2 (en) * | 2009-08-19 | 2016-03-15 | Qualcomm Incorporated | Universal file delivery methods for providing unequal error protection and bundled file delivery services |
US20120151302A1 (en) | 2010-12-10 | 2012-06-14 | Qualcomm Incorporated | Broadcast multimedia storage and access using page maps when asymmetric memory is used |
KR101598317B1 (ko) | 2009-09-02 | 2016-02-26 | 애플 인크. | 무선 시스템들의 mac 패킷 데이터 유닛 구성 |
US20110096828A1 (en) * | 2009-09-22 | 2011-04-28 | Qualcomm Incorporated | Enhanced block-request streaming using scalable encoding |
US9917874B2 (en) | 2009-09-22 | 2018-03-13 | Qualcomm Incorporated | Enhanced block-request streaming using block partitioning or request controls for improved client-side handling |
US9438861B2 (en) * | 2009-10-06 | 2016-09-06 | Microsoft Technology Licensing, Llc | Integrating continuous and sparse streaming data |
JP2011087103A (ja) | 2009-10-15 | 2011-04-28 | Sony Corp | コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供 |
CN107911332B (zh) | 2009-11-04 | 2021-01-08 | 阿莫泰克有限公司 | 媒体内容流播的方法、系统和计算机可读介质 |
KR101786050B1 (ko) | 2009-11-13 | 2017-10-16 | 삼성전자 주식회사 | 데이터 전송 방법 및 장치 |
KR101786051B1 (ko) | 2009-11-13 | 2017-10-16 | 삼성전자 주식회사 | 데이터 제공 방법 및 장치와 데이터 수신 방법 및 장치 |
CN101729857A (zh) | 2009-11-24 | 2010-06-09 | 中兴通讯股份有限公司 | 一种接入视频服务的方法及视频播放系统 |
US8510375B2 (en) | 2009-12-11 | 2013-08-13 | Nokia Corporation | Apparatus and methods for time mapping media segments in streaming media files |
CA2786257C (en) | 2010-02-19 | 2018-03-06 | Telefonaktiebolaget L M Ericsson (Publ) | Method and arrangement for adaptation in http streaming |
JP5996439B2 (ja) | 2010-02-19 | 2016-09-21 | テレフオンアクチーボラゲット エルエム エリクソン(パブル) | Httpストリーミングにおける表現切り替えのための方法及び装置 |
JP5071495B2 (ja) | 2010-03-04 | 2012-11-14 | ウシオ電機株式会社 | 光源装置 |
EP3079269B1 (en) * | 2010-03-11 | 2020-10-28 | Electronics and Telecommunications Research Institute | Method and apparatus for transceiving data in a mimo system |
US9225961B2 (en) | 2010-05-13 | 2015-12-29 | Qualcomm Incorporated | Frame packing for asymmetric stereo video |
US9497290B2 (en) | 2010-06-14 | 2016-11-15 | Blackberry Limited | Media presentation description delta file for HTTP streaming |
US8918533B2 (en) * | 2010-07-13 | 2014-12-23 | Qualcomm Incorporated | Video switching for streaming video data |
US9185439B2 (en) * | 2010-07-15 | 2015-11-10 | Qualcomm Incorporated | Signaling data for multiplexing video components |
US9131033B2 (en) | 2010-07-20 | 2015-09-08 | Qualcomm Incoporated | Providing sequence data sets for streaming video data |
KR20120010089A (ko) | 2010-07-20 | 2012-02-02 | 삼성전자주식회사 | Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치 |
US9596447B2 (en) * | 2010-07-21 | 2017-03-14 | Qualcomm Incorporated | Providing frame packing type information for video coding |
US8711933B2 (en) | 2010-08-09 | 2014-04-29 | Sony Computer Entertainment Inc. | Random access point (RAP) formation using intra refreshing technique in video coding |
US8806050B2 (en) | 2010-08-10 | 2014-08-12 | Qualcomm Incorporated | Manifest file updates for network streaming of coded multimedia data |
KR101737325B1 (ko) | 2010-08-19 | 2017-05-22 | 삼성전자주식회사 | 멀티미디어 시스템에서 멀티미디어 서비스의 경험 품질 감소를 줄이는 방법 및 장치 |
US8615023B2 (en) | 2010-10-27 | 2013-12-24 | Electronics And Telecommunications Research Institute | Apparatus and method for transmitting/receiving data in communication system |
US8958375B2 (en) | 2011-02-11 | 2015-02-17 | Qualcomm Incorporated | Framing for an improved radio link protocol including FEC |
US20120208580A1 (en) | 2011-02-11 | 2012-08-16 | Qualcomm Incorporated | Forward error correction scheduling for an improved radio link protocol |
US9270299B2 (en) | 2011-02-11 | 2016-02-23 | Qualcomm Incorporated | Encoding and decoding using elastic codes with flexible source block mapping |
US9253233B2 (en) | 2011-08-31 | 2016-02-02 | Qualcomm Incorporated | Switch signaling methods providing improved switching between representations for adaptive HTTP streaming |
US9843844B2 (en) | 2011-10-05 | 2017-12-12 | Qualcomm Incorporated | Network streaming of media data |
US9294226B2 (en) | 2012-03-26 | 2016-03-22 | Qualcomm Incorporated | Universal object delivery and template-based file delivery |
-
2005
- 2005-05-09 KR KR1020067009106A patent/KR101161193B1/ko active IP Right Grant
- 2005-05-09 EP EP10002379A patent/EP2202888A1/en not_active Ceased
- 2005-05-09 CN CN2005800010267A patent/CN101019326B/zh active Active
- 2005-05-09 CN CN201310014760.3A patent/CN103124182B/zh active Active
- 2005-05-09 US US11/125,818 patent/US7418651B2/en active Active
- 2005-05-09 EP EP05747947A patent/EP1743431A4/en not_active Withdrawn
- 2005-05-09 JP JP2007511719A patent/JP4971144B2/ja active Active
- 2005-05-09 WO PCT/US2005/016334 patent/WO2005112250A2/en active Application Filing
- 2005-05-09 KR KR1020117024580A patent/KR101205758B1/ko active IP Right Grant
-
2008
- 2008-08-25 US US12/197,993 patent/US9136878B2/en active Active
-
2012
- 2012-01-05 JP JP2012000796A patent/JP5485302B2/ja active Active
- 2012-02-29 US US13/408,944 patent/US9236887B2/en active Active
Also Published As
Publication number | Publication date |
---|---|
KR101161193B1 (ko) | 2012-07-02 |
US7418651B2 (en) | 2008-08-26 |
KR101205758B1 (ko) | 2012-12-03 |
CN103124182B (zh) | 2017-05-10 |
WO2005112250A3 (en) | 2006-10-26 |
WO2005112250A2 (en) | 2005-11-24 |
EP1743431A2 (en) | 2007-01-17 |
JP5485302B2 (ja) | 2014-05-07 |
US20050257106A1 (en) | 2005-11-17 |
EP2202888A1 (en) | 2010-06-30 |
JP2007536834A (ja) | 2007-12-13 |
US9236887B2 (en) | 2016-01-12 |
JP4971144B2 (ja) | 2012-07-11 |
CN101019326B (zh) | 2013-02-27 |
US20130067295A1 (en) | 2013-03-14 |
KR20110122226A (ko) | 2011-11-09 |
KR20070008520A (ko) | 2007-01-17 |
EP1743431A4 (en) | 2007-05-02 |
US9136878B2 (en) | 2015-09-15 |
US20090031199A1 (en) | 2009-01-29 |
CN103124182A (zh) | 2013-05-29 |
JP2012114929A (ja) | 2012-06-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101019326B (zh) | 文件下载和流系统 | |
CN101427495B (zh) | 用于通信系统的基于多域的码生成器和解码器 | |
US9876607B2 (en) | Methods and apparatus employing FEC codes with permanent inactivation of symbols for encoding and decoding processes | |
CN101432969B (zh) | 前向纠错(fec)编码和流送 | |
US6909383B2 (en) | Systematic encoding and decoding of chain reaction codes | |
CN101222295B (zh) | 将数据分为多段部分数据来分发的系统 | |
JP2005514828A (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 | ||
TR01 | Transfer of patent right |
Effective date of registration: 20180417 Address after: American California Patentee after: Qualcomm Inc. Address before: American California Patentee before: Digital Fountain Inc. |
|
TR01 | Transfer of patent right |