CN101019326A - 文件下载和流系统 - Google Patents

文件下载和流系统 Download PDF

Info

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
Application number
CNA2005800010267A
Other languages
English (en)
Other versions
CN101019326B (zh
Inventor
M·G·路比
M·A·肖克罗拉希
M·华生
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Qualcomm Inc
Original Assignee
Digital Fountain Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Digital Fountain Inc filed Critical Digital Fountain Inc
Priority to CN201310014760.3A priority Critical patent/CN103124182B/zh
Publication of CN101019326A publication Critical patent/CN101019326A/zh
Application granted granted Critical
Publication of CN101019326B publication Critical patent/CN101019326B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/32Carrier systems characterised by combinations of two or more of the types covered by groups H04L27/02, H04L27/10, H04L27/18 or H04L27/26
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/29Coding, 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/37Decoding methods or techniques, not specific to the particular type of coding provided for in groups H03M13/03 - H03M13/35
    • H03M13/3761Decoding 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0041Arrangements at the transmitter end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0045Arrangements at the receiver end
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0057Block codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/004Arrangements for detecting or preventing errors in the information received by using forward error control
    • H04L1/0056Systems characterized by the type of code used
    • H04L1/0064Concatenated codes
    • H04L1/0065Serial concatenated codes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L27/00Modulated-carrier systems
    • H04L27/02Amplitude-modulated carrier systems, e.g. using on-off keying; Single sideband or vestigial sideband modulation
    • H04L27/06Demodulator circuits; Receiver circuits
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/11Error 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/1102Codes on graphs and decoding on graphs, e.g. low-density parity check [LDPC] codes
    • HELECTRICITY
    • H03ELECTRONIC CIRCUITRY
    • H03MCODING; DECODING; CODE CONVERSION IN GENERAL
    • H03M13/00Coding, 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/03Error detection or forward error correction by redundancy in data representation, i.e. code words containing more digits than the source words
    • H03M13/05Error 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/13Linear codes
    • H03M13/19Single 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所述的方法,其特征在于,所述多个冗余码元包括静态码元、汉明码元和填充码元,其中码元数量之和被选为质数。
CN2005800010267A 2004-05-07 2005-05-09 文件下载和流系统 Active CN101019326B (zh)

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)

* Cited by examiner, † Cited by third party
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)

* Cited by examiner, † Cited by third party
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

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