JP4971144B2 - ファイルダウンロードおよびストリーミングのシステム - Google Patents

ファイルダウンロードおよびストリーミングのシステム Download PDF

Info

Publication number
JP4971144B2
JP4971144B2 JP2007511719A JP2007511719A JP4971144B2 JP 4971144 B2 JP4971144 B2 JP 4971144B2 JP 2007511719 A JP2007511719 A JP 2007511719A JP 2007511719 A JP2007511719 A JP 2007511719A JP 4971144 B2 JP4971144 B2 JP 4971144B2
Authority
JP
Japan
Prior art keywords
symbols
symbol
input
output
source
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.)
Active
Application number
JP2007511719A
Other languages
English (en)
Other versions
JP2007536834A (ja
Inventor
マイケル ジー. ルビー,
エム. アミン ショクロラーヒ,
マーク ワトソン,
Original Assignee
デジタル ファウンテン, インコーポレイテッド
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 デジタル ファウンテン, インコーポレイテッド filed Critical デジタル ファウンテン, インコーポレイテッド
Publication of JP2007536834A publication Critical patent/JP2007536834A/ja
Application granted granted Critical
Publication of JP4971144B2 publication Critical patent/JP4971144B2/ja
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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Probability & Statistics with Applications (AREA)
  • Mathematical Physics (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Error Detection And Correction (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Digital Transmission Methods That Use Modulated Carrier Waves (AREA)

Description

本発明は、通信システムにおける符号化、復号化に関するものであり、より詳細には通信データの誤りおよびギャップを考慮した符号化、復号化を行う通信システムに関するものである。実施例において、データは、ブロードキャストまたはマルチキャスト無線ネットワークを介して受信機に転送される。
送り手と受け手との間で通信チャネルを介して行うファイルおよびストリームの転送は多くの文献の主題として取り上げられてきた。好ましくは、受け手は、送り手からチャネルを介して送信される正確なデータのコピーをあるレベルの確実性をもって受信することを望む。ほとんどの物理的に実現可能なシステムがそうであるように、チャネルは完全な忠実度を有していないため、転送により消失するか歪められるデータを取り扱う方法に関心が生じる。受け手は、いつ破損データが誤ってデータ受信されたかの判断を常に行えるとは限らないので、通常、破損データ(誤り)に比較し欠落データ(消去)を取扱うのは容易である。多くの誤り訂正符号は、消去および/または誤りを修正するために開発された。一般的に、データが送信されているチャネルおよび送信されているデータの性質の不忠実度に関する何らかの情報に基づいて使用する特定の符号(コード)が選択される。たとえば、チャネルが長期間の不忠実度を有することが既知の場合、そのアプリケーションのためにはバースト誤り符号が最適であり得る。短くまれな誤りだけが予想される場合、簡単なパリティ符号が最善であり得る。
送信機および受信機が通信のために必要とされる演算能力および電力の全てを有し、送受信装置間のチャネルが相対的にエラーフリーの通信を可能とするのに十分クリーンであるときに、データ転送は直接なされる。そして、チャネルが悪環境であるか、または、送信機および/または受信機の能力が制限されている場合に、データ転送の問題はより難しくなる。
1つのソリューションは、受信機が転送における消去および誤りから回復可能とするために、データを送信機で符号化する前方エラー訂正(FEC)技術を活用する方法である。受信機が送信機に誤りについての通信が可能な受信機から送信機への逆方向チャネルが利用可能な場合、その伝送プロセスを調整可能である。しかし、しばしば逆方向チャネルは利用可能ではない。たとえば、送信機が多数の受信機に対して送信している場合、送信機はそれらの全ての受信機からの逆方向チャネルを処理することが可能でないかもしれない。その結果、通信プロトコルはしばしば逆方向チャネルなしで設計されることを必要とし、そして、送信機はこれらのチャネル状況の全容無しに広く様々なチャネル状況を取扱わなければならないかもしれない。
受信機がポータブルまたは移動可能である低出力の小型デバイスであり高帯域でデータを受信することを必要とする場合、送信機と受信機間のデータ転送の問題はより難しくなる。たとえば、ファイルまたはストリームをブロードキャストまたはマルチキャストにより、固定された送信機から多数もしくは不確定数のポータブルまたは移動可能な受信機に配信するよう設定される無線ネットワークであり、受信機が演算能力、記憶容量、利用できる電力、アンテナサイズ、デバイスサイズおよびその他の設計制約条件において拘束される場合である。
このようなシステムでは、逆方向チャネルが少ないか皆無であり、メモリー制限、コンピューティングサイクル制限、移動可能性およびタイミングを含む考慮が必要である。各々の受信機の電源の予測不可能なオン/オフ、範囲の出入り、リンクエラー、セル切替、セル内輻輳によるファイルまたはストリームパケットに対する強制的一時的な優先度引き下げなどにより損失が発生するため、望ましくは、潜在的に大きい数の受信機に配信するために必要なデータの転送時間の最小化するよう設計しなければならない。
データ転送のために使用するパケットプロトコルの場合、パケット網を通じて送信されるファイル、ストリームまたは他のデータブロックは等しいサイズ入力シンボルに仕切られ、入力シンボルは連続的なパケットとして配置される。入力シンボルが実際にビットストリームに分解されるか否かに関わらず、入力シンボルの”サイズ”はビット単位で測定することができる。そして、入力シンボルが2個のシンボルのアルファベットから選択される場合、入力シンボルはMビットのサイズを有する。この種のパケットベースの通信システムにおいて、パケットに基づいた符号体系が適切である。指定された受け手がネットワークによる消去が発生したにもかかわらずオリジナルファイルの正確なコピーを回復可能な場合、ファイル転送は信頼性が高いと呼ばれる。指定された受け手がネットワークによる消去が発生したにもかかわらずタイムリーな方法でストリーム各部の正確なコピーを回復可能な場合、ストリーム転送は信頼性が高いと呼ばれる。また、ファイルまたはストリームの一部が回復可能でない、または、ストリーミングにおいてストリームの一部がただちに回復可能ではない場合などには、ファイル転送およびストリーム転送は信頼性の無いものになり得る。パケット損失は、散発的な輻輳の発生によりルータのバッファリングメカニズムが処理限界に達し入力パケットが強制的にドロップされることにより生じる。そのため、転送中の消去発生に対する保護について多くの研究がなされてきた。
ファイルまたはストリームの入力シンボルから任意数の出力シンボルを生成する連鎖反応符号を使用することが知られている。受信機が、既に知っているデータを複製する追加データを受信する情報複製の方法に対して、この方法には情報付加的な出力シンボルの生成を含む多くの用途がある。連鎖反応符号を生成、利用、動作している新規の技術がいくつか公開されており、たとえば、Lubyに発行される米国特許第6,307,487号”Information Additive Code Generator and Decoder for Communication Systems”(”ルビーI”)、Lubyらに発行される米国特許第6,320,520号”Information Additive Group Code Generator and Decoder for Communication Systems”(以下、”ルビーII”)、そして、2003年3月27日にショクロラヒらに発行された米国特許公開2003/0058958号”Multi-Stage Code Generator and Decoder for Communication Systems”(以下、”ショクロラヒ”)に示されている。許可される範囲において、全ての目的のためこれらの全ての開示を本願明細書に引用する。
連鎖反応符号器により作成される出力シンボルの特性の1つとして、受信機は十分な出力シンボルを受信するとすぐにオリジナルファイルまたはオリジナルストリームのブロックを回復することが可能であるということがある。具体的には、高確率を有するオリジナルのK個の入力シンボルを回復するために、受信機はおよそK+A個の出力シンボルを必要とする。ここで、比A/Kは”相対的受信オーバーヘッド”と呼ばれる。相対的受信オーバーヘッドは、入力シンボル数K、および、復号器の信頼性に依存する。たとえば、ある特定実施例において、K=60,000であり、少なくとも1−10−8の確率で入力ファイルまたはストリームのブロックを復号器が復号化可能な相対的受信オーバーヘッドが5%の場合、K=10,000では、相対的受信オーバーヘッドが15%の場合同様の確率で復号化可能となる。ある実施例においては、連鎖反応コードの相対的受信オーバーヘッドは(13*sqrt(K)+200)/Kとして計算することが出来、ここで、sqrt(K)は入力シンボル数Kの二乗根である。この実施例において、連鎖反応コードの相対的受信オーバーヘッドは、Kが小さい値であるほど大きくなる傾向がある。
ルビーI、ルビーIIおよびショクロラヒは、本発明による特定の実施例において使用可能なシステム及び方法の教示を提供する。しかしながら、それらのシステム及び方法は、本発明および他の多くのバリエーション、変更態様を必要とせず、代替物が使用可能であることが理解できるであろう。
また、マルチステージ連鎖反応(”MSCR”)符号を使用することも公知であり、例えばショクラヒに記載されデジタルファウンテン社により開発され”Raptor”として商品名の符号がある。マルチステージ連鎖反応符号は、たとえば、ソースファイルまたはソースストリームから入力シンボルを受信し、そこから中間シンボルを生成し、連鎖反応符号を用いた中間シンボルを符号化する符号器により用いられる。より詳しくは、送信される入力シンボルの順序集合から複数の冗長シンボルが生成される。そして、入力シンボルおよび冗長シンボルを含むシンボルの複合セットから複数の出力シンボルが生成される。ここで、可能な出力シンボルの数はシンボルの複合セットのシンボルの数に比較し非常に大きい。また、少なくとも一つの出力シンボルは、シンボルの複合セットの1つのシンボルより多く全てシンボル数より少ないシンボルから生成され、入力シンボルの順序集合が所定数Nの何れの出力シンボルからも所望の精度まで再生できるようなシンボルである。
用途によっては、他のバリエーションの符号がより適切であり、他のもの選択されるかもしれない。
転送元から転送先まで通信チャネルを介して転送されるデータを符号化する方法を提供する。
本発明のある実施例によれば、転送元から転送先まで通信チャネルを介して転送されるデータを符号化する方法が提供される。その方法は、入力シンボルの順序集合を操作し、入力シンボルから複数の冗長シンボルを生成することを含む。また、その方法は、入力シンボルおよび冗長シンボルを含むシンボルの複合セットから複数の出力シンボルを生成することを含み、可能な出力シンボルの数はシンボルの複合セットのシンボルの数に比較し非常に大きく、少なくとも一つの出力シンボルはシンボルの複合セットの1つのシンボルより多く全てシンボル数より少ないシンボルから生成され、入力シンボルの順序集合が任意の所定数の出力シンボルからも所望の精度まで再生できるようなシンボルである。複数の冗長シンボルは、第1入力シンボルを使用して算出されるスタティックシンボルの第1セットは、第1入力シンボルと異なる第2入力シンボルを使用して算出されるスタティックシンボルの第2セットと弱い関連性を有するように、確定的過程において送信される入力シンボルの順序集合から生成される。
本発明のさらに別の実施例によれば、通信チャネルを介して転送先から転送されるデータを受信するシステムは類似した技術を使用し提供される。そのシステムは、通信チャネルを通じて送信される出力シンボルを受信するための通信チャネルに接続された受信モジュールを含み、各々の出力シンボルは入力シンボルおよび冗長シンボルの複合セットの少なくとも1つのシンボルから生成され、少なくとも1つの出力シンボルは複合セットの1より多く全てより少ないシンボルから生成され、可能な出力シンボルの数は複合セットのシンボルの数に比較し非常に大きく、入力シンボルは順序集合からなる入力シンボルであり、冗長シンボルは入力シンボルから生成される。ここで、複数の冗長シンボルは、第1入力シンボルを使用して算出されるスタティックシンボルの第1セットは、第1入力シンボルと異なる第2入力シンボルを使用して算出されるスタティックシンボルの第2セットと弱い関連性を有するように、確定的過程において送信される入力シンボルの順序集合から生成される。
本発明のさらに別の実施例によれば、搬送波により表現されるコンピュータデータ信号が提供される。
多数の利点が、本発明により達成される。たとえば、ある実施例においては、チャネルを介して転送するデータの符号化に必要な計算能力が低減可能である。さらに他の実施例において、このデータの復号化に必要な計算能力が低減可能である。実施例により、これらの利点の1つ以上を達成できる。これらおよびその他の利点の更なる詳細が、本願明細書全体および特に下記記載により提供される。
本願明細書において開示される本発明の性質および効果の更なる理解は、明細書および添付の図面の残りの部分を参照することで認識される。
(関連出願の相互参照)
本出願は、2004年5月7日に出願された米国特許出願番号第60/569,127号の”FILE DOWNLOAD AND STREAMING SYSTEM”に基づく優先権を主張する。それは、全ての目的のためにその開示全体を本願明細書に引用しこの文書に全部記載されるものとして組み込まれる。
詳細な説明の後に以下の3つの付録を示す。付録Aは、システマチックインデックスJ(K)の値の例を含む。付録B.1は、テーブルVの値の例を含む。そして、付録B.2は、テーブルVの値の例を含む。
(特定実施例の詳細な説明)
ここに記載される特定実施例において、”マルチステージ符号化”として表記される符号体系が記載されており、その実施例はショクロラヒにより提供される。
ここに記載されるマルチステージ符号化は複数の段階によりデータを符号化する。常にではないが、一般的には、第1段階では予め指定される量の冗長性をデータに付加する。第2段階ではオリジナルデータおよび符号化の第1段階により計算される冗長シンボルから連鎖反応コード等を使用し出力シンボルを生成する。本発明の一特定実施例において、受信されたデータは、最初に連鎖反応復号プロセスを使用して復号化される。その処理により完全にオリジナルデータを回復することが出来ない場合、第2の復号ステップが適用される。
マルチステージ符号化の実施例において、冗長シンボルは、符号化の第一段階において、入力ファイルまたはストリームのブロックから生成される。これらの実施例では、符号化の第二段階で、出力シンボルは、入力ファイルまたはストリームのブロックおよび冗長シンボルの組合せから生成される。これらの実施例において、出力シンボルは、必要に応じて生成されることができる。第二段階が連鎖反応符号化を含む実施例において、各々の出力シンボルは他の出力シンボルが生成される方法に関係なく生成されることができる。一旦生成されると、これらの出力シンボルはパケット内に配置され転送先に転送される。ここで、各々のパケットは1個以上の出力シンボルを含んでいる。非パケット化転送技術も利用可能であり同様に使うことができる。
ここで使用される用語”ファイル”は、1個以上のソースを格納し1以上の転送先にユニットとして配信される任意のデータを示している。したがって、文書、画像、およびファイルサーバまたはコンピュータ記憶装置からのファイルは、すべて、転送される”ファイル”の例である。ファイルは、周知のサイズ(例えばハードディスクに保存される1メガバイトの画像)でもよいし、未知のサイズ(例えばストリーミングソースの出力から取得されるファイル)でもよい。いずれの場合においても、ファイルは一連の入力シンボルであり、各々の入力シンボルはファイル内の位置および値を有する。
ここで使用される用語”ストリーム”は、1個以上のソースを格納もしくは生成された順番に各時点で特定のレートで配信される任意のデータを示している。ストリームは、固定レートまたは可変レートでありえる。したがって、MPEG映像ストリーム、AMR音声ストリーム、遠隔装置の制御に使用されるデータストリームは全て転送される”ストリーム”の例である。各時点でのストリームのレートは、既知(例えば4メガビット/秒)でもよいし、未知(例えば各時点のレートが前もって分からない可変レートストリーム)いずれの場合においても、ストリームは一連の入力シンボルであり、各々の入力シンボルはストリーム内の位置および値を有する。
転送は、ファイルまたはストリームを配信するために1以上の送信機から1以上の受信機までチャネルを介してデータを送信する処理である。また、送信機を符号器と称することもある。1台の送信機が完全なチャネルにより任意数の受信機に接続している場合、受信データは入力ファイルまたはストリームの正確なコピーであり、全てのデータが正しく受信される。ここでは、現実のチャネルの多くの場合と同様、チャネルが完全でないと仮定する。多くのチャネルの欠点の中で、重要な2つの欠点は、データ消去およびデータ消去の特殊例とみなすことが可能なデータ不完全性である。データ消去は、チャネルが消失またはデータがドロップした場合に発生する。データ不完全性は、いくつかのデータが素通りするまで受信機がデータを受信し始めない場合、受信機が転送が終了する前にデータを受信するのを止めた場合、受信機が一部の送信データを受信することを選択する場合、および/または、受信機が断続的に止まり、再びデータを受信し始めた場合に発生する。データ不完全性の例としては、移動中の衛星送信機が入力ファイルまたはストリームを示すデータを送信している場合、受信機が範囲内に入る前に転送を始めるかもしれない。一旦受信機が範囲内に入ると衛星が動いて範囲外に出るまでデータを受信することが出来、一旦受信機が範囲に入るとデータを受信可能となり、それまで、受け側がどのポイント、他のものにより送信されている同じ入力ファイルかストリームについてデータを受信し始めるためにその衛星アンテナ(それは、どの時間の間にデータを受信していないか)をリダイレクトすることができるかそれが有する衛星は範囲へ移動した。この説明を読むことから明らかでなければならなくしながら、データ不完全性はデータ消去の特例である。これは、次のことの故である。あたかも受け側が全ての時範囲において、あるかのように、受け側はデータ不完全性(そして、受け側には、同じ問題がある)を処理できる、しかし、チャネルは受け側がデータを受信し始めた位置まで全てのデータを消失した。また、周知のように、通信システム設計で、検出可能な誤りは、単に検出可能な誤りを有する全てのデータブロックまたはシンボルをドロップすることによって、消去に等しいとみなされることができる。
若干の通信システムにおいて、受け側は、多数の送信機によってまたは並列に接続を使用している1台の送信機により生成されるデータを受信する。たとえば、ダウンロードの速度を上げるために、受け側は、同時に同じファイルに関して送信データに複数の送信機につながるかもしれない。別の例としてマルチキャスト転送で、多数のマルチキャストデータストリームは、受け側が総計の伝送速度をそれらを送信機に接続しているチャネルの帯域幅と適合させるためにこれらのストリームの一つ以上につながることができるために送信されるかもしれない。全てのこの種の場合において、懸念は、全てのその送信データを確保することが受け側に独立用途の中であるということである。すなわち、多重ソースデータは、そうである冗長ストリームの伝送速度が異なるストリームのために非常に異なるときでも、そして、損失の任意のパターンがあるときに、一つの。
一般に、通信チャネルは、送信機およびデータ転送のための受け側を接続するそれである。通信チャネルはリアルタイムチャネルでありえた。ここで、チャネルがデータを得ながら、チャネルは送信機から受け側までデータを移動する、または、通信チャネルは、送信機から受け側までいくつかまたはデータの全てをその通過に格納する格納チャネルであるかもしれない。後者の実施例は、ディスク記憶装置または他の記憶装置である。その実施例において、送信機、データを生成するプログラムまたはデバイスを、案出できる。そして、記憶装置にデータを送信する。受け側は、記憶装置からデータを読み込むプログラムまたはデバイスである。送信機が記憶装置(記憶装置自体)上へデータを得るために使用するメカニズムそして、受け側が集合的に記憶装置からデータを得るために使用するメカニズムは、チャネルを形成する。それらのメカニズムまたは記憶装置がデータを消失できるという可能性がある場合、それは通信チャネルのデータ消去とみなされるだろう。
送信機および受け側がシンボルが消されることができる通信チャネルによって、隔てられるときに、入力ファイルまたはストリームの正確なコピーを送信しなくて、その代わりに、入力ファイルから生成されるデータまたはそれが消去の回復によって、アシストするストリーム(それは、入力ファイルまたはストリームの全部または一部を含むことができた)を伝送しないことが、好ましい。エンコーダとは、そのようなタスクを処理する回路、デバイス、モジュール、または符号セグメントである。1つの符号器の動作を見る方法は符号器が入力シンボルから出力シンボルを生成するということである。ここで、一連の入力シンボル値は入力ファイルまたはストリームのブロックを表す。ストリームおよび値の入力ファイルまたはブロックで、各々の入力シンボルは、このように位置を有する。復号器は、受け側により受信される出力シンボルから入力シンボルを回復する回路、デバイス、モジュールまたはコードセグメントである。マルチステージ符号化において、符号器および復号器は、各々異なる作業を実行しているサブモジュールに、更に分けられる。
マルチステージコード体系の実施例において、符号器および復号器はサブモジュールに更に分けられることが可能である。そして、各々が異なる作業を実行する。例えば、実施例によっては、符号器は、本明細書において、スタティック符号器およびダイナミック符号器と称されることを含む。ここで使用しているように、「スタティック符号器」は入力シンボルのセットから多くの冗長シンボルを生成する符号器である。そこにおいて、冗長シンボルの数は符号化の前に決定される。スタティック符号化しているコードの実施例はリード−ソロモン符号、トルネード符号、ハミング符号、低密度パリティチェック(LDPC:Low Density Parity Check)符号、その他を含む。そして、用語スタティック復号器がスタティック符号器によって、符号化されたデータを復号化できる復号器に関連するために本願明細書において、使われる。
ここで使用しているように、”ダイナミック符号器”は、入力シンボルのセットから出力シンボルを生成する、可能な出力シンボルの数が入力シンボルの数大きい大きさの程度である。そして、生成される出力シンボルの数が固定する必要はない符号器である。ダイナミック符号器の1つの実施例は、連鎖反応符号器(例えばLuby IおよびLuby IIに記載されている符号器)である。用語”ダイナミック復号器”が、ダイナミック符号器によって、符号化されたデータを復号化できる復号器に関連するために、本願明細書において、使われる。
マルチステージ符号化の実施例は、いかなる特定の種類もの入力シンボルに、限られている必要はない。一般的に、入力シンボルのための値は若干の自然数M.のための2Mのシンボルのアルファベットから選ばれるにおいて、この種の場合、入力シンボルは入力ファイルまたはストリームからデータの一連のMビットにより表されることができる。たとえば、Mの値は、出力シンボルのアプリケーション、通信チャネルおよび/またはサイズを使う能力に基づいて、しばしば決定される。加えて、出力シンボルのサイズは、入力シンボルのアプリケーション、チャネルおよび/またはサイズに基づいてしばしば決定される。場合によっては、出力シンボル値および入力シンボル値が同一サイズ(すなわち、ビットの同数により表現されるか同じアルファベットから選択された)である場合、符号化処理は単純化されるかもしれない。この場合それから、出力シンボル値サイズが制限されるときに、入力シンボル値サイズは制限される。たとえば、それは、制限されたサイズのパケットの出力シンボルをすることを要求されることができる。出力シンボルに伴うキーについての若干のデータが受信機でキーを回復するために送信されることになっている場合、出力シンボルは、1つのパケットにおいて、キーについて出力シンボル値およびデータに対応するのに十分好ましくは小さいだろう。
一例として、入力ファイルが倍数である、メガバイトファイル、入力ファイルは、各々の入力シンボルを符号化している数千、何百または数バイトだけを有する数千、数万または何十万もの入力シンボルに分解されるかもしれない。別の例としてパケットベースのインターネットチャネルのために、1024バイトのサイズのペイロードを有するパケットは、適当かもしれない(1バイトは、8ビットである)。この例では、各々のパケットが1出力シンボルおよび8バイトの補助情報を含む場合、8128bits((1024−8)*8)の出力シンボルサイズは適当だろう。このように、入力シンボルサイズは、M=(1024−8)*8つまり8128ビットに選ばれることができた。別の例として、若干の衛星システムはMPEGパケット規格を使用する。ここで、各々のパケットのペイロードは188バイトを含む。その実施例において、各々のパケットが1出力を含む場合、シンボルおよび4バイトの補助情報(1472bits((188−4)*8)の出力シンボルサイズ)は適当だろう。このように、入力シンボルサイズは、M=(188−4)*8または1472ビットに選ばれることができた。汎用の通信システムを使用しているマルチステージ符号化において、アプリケーション特有のパラメータ(例えば入力シンボルサイズ(すなわちM個の入力シンボルによって、符号化されるビットの数)は、アプリケーションによって、セットされる変数であるかもしれない。
別の例として、可変サイズ転送元パケットを使用させられるストリームのために、各々の転送元パケットが最高でも総計のサイズを転送元パケットわずかに大きくする入力シンボルの整数でおおわれていることができるために、シンボルサイズはむしろ小さいために選ばれるかもしれない。
各々の出力シンボルは、値を有する。好ましい一実施例(下で考慮する)において、各々の出力シンボルもそれとともにその”キー”と呼ばれている識別子を結びつける。望ましくは、各々の出力シンボルのキーは、受け側が1出力シンボルと他の出力シンボルを区別できるために、受け側で容易に測定されることができる。望ましくは、出力シンボルのキーは、他の全ての出力シンボルのキーとは別である。前の技術で述べられるキーイングのさまざまな形式が、ある。たとえば、Luby Iは、本本発明の実施例において、使用されることができるキーイングのさまざまな形式を描く。
データ消去または受け側が必ずしも転送が開始するときに受信を開始しなくて、終えないところの予想および端がある所で、マルチステージ符号化は特に役立つ。後の状態は本明細書において、”データ不完全性”と呼ぶ。消去イベントとみなす事項において、Luby I.に記載されている連鎖反応符号化の利点で多くのマルチステージ符号、マルチステージ出力シンボルは情報付加的であるので、任意の適当な数のパケットは所望の精度に入力ファイルまたはストリームを回復するために用いることがありえる。マルチステージ符号化が使われるときに、これらの状況は通信プロセスに悪影響を与えない。−その理由は、次のことにある。マルチステージ符号化により生成される出力シンボルは情報付加的である。たとえば、100のパケットが突然のノイズを引き起こしているデータ消去のために消失する場合、パケットがありえる余分の百は消されたパケットの損失を交換するために爆発の後、上向いた。それが送信し始めるときに受信機が送信機に同調を行わなかったので何千ものパケットが消失する場合、受信機は、そうすることができたちょうど受信転送の他のいかなる期間からも何千ものそれらのパケット、または他のものから送信機。マルチステージ符号化については、受信機は特定のいずれもパケットの中でセットしたピックアップを強いられないので、それは1台の送信機から若干のパケットを受信することができて、送信機を他のものに切り替えることができて、若干のパケットを消失することができて、始めまたは既知の転送の端を見のがすことができて、まだストリームの入力ファイルまたはブロックを回復できる。受信機送信機間で協調のない転送を接続して、残す能力は、通信プロセスを単純化するのに役に立つ。
いくつかの実施形態において、マルチステージ符号化を使用してファイルまたはストリームを送信する、とは、入力シンボルを入力ファイルまたはストリームのブロックからの生成、形成または抽出、冗長シンボルの計算、入力および冗長シンボルから1つ以上の出力シンボルへの符号化(各々の出力シンボルは、各々に対応するキーに基づいて、他の全ての出力シンボルと独立に生成される)、チャネルを介した1つ以上の受け側への出力シンボルの送信を含み得る。さらに、いくつかの実施形態において、マルチステージ符号化を使用して入力ファイルまたはストリームのブロックのコピーを受信する(そして再構築する)、とは、1つ以上のデータストリームからの出力シンボルのいくつかのセットあるいはサブセットの受信、および、受信した出力シンボルの値およびキーからの入力シンボルの復号化を含み得る。
本願明細書において、記載されていながら、消去が符号化する適切なFECは、上記のあげられた問題点を克服するために用いることができて、用途をマルチメディアの同報およびマルチキャスティングシステムおよびサービスを含む多くのフィールドで見つける。この後に「マルチステージ連鎖反応コード」と称するFEC消去コードは、この種のシステムおよびサービスの電流および将来の必要条件の多数を満たす特性を有する。
いかなるパケット損失状況のためにも、そして、いかなる関連したサイズものソースファイルまたはいかなる関連したレートものストリームの交付のために、マルチステージ連鎖反応コードの若干の基本特性は、以下の通りである。
(a)個々の受信機デバイス”RD”の受信オーバーヘッドは、最小化される、
(b)ソースファイルをいかなる数のRDに配信するために必要なトータル転送時間を、最小化できる
(c)転送スケジュールの適切な選択については、いかなる数のRDに対する配信されたストリームの品質は、入力シンボルの数と関連して送られる出力シンボルの数のために最大にされることができる。
RDは、携帯デバイスであるかもしれないか、車両に埋め込まれているかもしれないか、持ち歩けるかもしれない(すなわち、使用中のときに、移動可能であるが、一般的に動いていない)かまたは、場所に固定するかもしれない。
復号化のために必要とされる作業メモリの量は低くて、上記の特性をまだ提供できる。そして、必要とされる計算の量は符号化する。そして、復号化する最小限である。この文書において、我々は、提供するシンプルな、そして、容易なマルチステージ連鎖反応コードの若干のバリエーションの説明をインプリメントする。
マルチステージ連鎖反応コードは、ファウンテンコードである。すなわち、必要に応じてパケットを符号化することがありえるさらに同じだけはオンザフライを生成した。そして、各々がストリームのソースファイルまたはブロックを回復することに等しく役立つユニークな符号化しているシンボルを含んだ。多くの効果が、FECコードの他方式に対してファウンテンコードを使用することにある。1つの効果は、パケット損失状況およびRD有効性に関係なく、ファウンテンコードが各々のRDがストリームのソースファイルまたはブロックを回復するために受信することを必要とするパケットを符号化することの数を最小化するということである。これは、厳しいパケット損失状況の下でさえ真で、移動機RDが、たとえば、断続的につけられるだけである時であるまたは長いファイルダウンロードセッションにわたって利用できる。
有利さが能力である他のものは、転送が進行中である間、どれくらいの符号化しているパケットにオンザフライを生成するべきかについて決定になされて、必要に応じて多くの符号化しているパケットとして正確に生成する。これは、たとえば応答がそれらがストリームのソースファイルかブロックを回復するのに十分な符号化しているパケットを受信したか否か、指示しているRDからある場合、役立つことがありえる。期待されてパケット損失状況が厳しくないときに、転送は、早く終了されることができる。パケット損失状況がより厳しい期待されるまたはRDは、期待されてしばしば利用できない、転送は、継ぎ目なく延長されることができる。
他の効果は、逆多重化の能力である。逆多重化は、RDがストリームのソースファイルまたはブロックを回復するために独立送信機で生成されるパケットを符号化して受信されて組み合わさることが可能である時である。逆多重化の1つの実用は、異なる送信機からパケットを符号化することを受信することに関して、下に記載されている。
将来のパケット損失、RD有効性およびアプリケーション状況は、予測するのが難しい、予測不可能な状況の下で適切に作用するために可能に、柔軟なとしてあるFECソリューションを選択することは重要である。マルチステージ連鎖反応コードは、FECコードの他方式によって、マッチしない柔軟度を提供する。
本発明の態様は、次に図に関して記載されている。
<システムの概要>
図1は、マルチステージ符号化を使用する通信システム100のブロック図である。通信システム100において、入力ファイル101または入力ストリーム105が、入力シンボル生成器110に対し提供される。入力シンボル生成器110は入力ファイルまたはストリームから1個以上の一連の入力シンボル(IS(0),IS(1),IS(2),...)を生成し、各々の入力シンボルは値および位置(図1の括弧内の整数として示す)を有する。上述したように、各々の入力シンボルが入力ファイルまたはストリームのMビットを符号化するため、入力シンボルの可能な値(すなわちアルファベット)は一般的に2個のシンボルからなるアルファベットである。Mの値は通常使用する通信システム100により決定される、しかし、Mが使用する用途が多様でありえるため汎用システムでは入力シンボル生成器110のためのシンボルサイズ入力を含むかもしれない。入力シンボル生成器110の出力は、符号器115に提供される。
スタティックキー生成器130は、スタティックキーS,S...のストリームを生成する。通常、生成されるスタティックキーの数は制限されており特定実施例の符号器115に依存する。スタティックキーの生成は、以降で更に詳細に説明する。ダイナミックキー生成器120は、符号器115により生成される各々の出力シンボルに対するダイナミックキーを生成する。同じ入力ファイルまたはストリームのブロックのダイナミックキーの大部分がユニークとなるように、各々のダイナミックキーは生成される。たとえば、利用可能なキー生成器の実施例がルビーIに記載されている。ダイナミックキー生成器120およびスタティックキー生成器130の出力は、符号器115に提供される。
ダイナミックキー生成器120によって提供された各々のキーIから、符号器115は値B(I)の出力シンボルを生成する。そして、入力シンボルは入力シンボル生成器により提供される。符号器115の動作については以下で更に詳細に説明する。各々の出力シンボルの値は対応するキー、1個以上の入力シンボルの何らかの関数、そして、おそらく入力シンボルから計算される冗長シンボルに基づいて生成される。本明細書において、ある特定の出力シンボルのもとである入力シンボルおよび冗長シンボルの集合を、出力シンボルの”関連シンボル”または単にその”付随物(associates)”と呼ぶ。関数(”値関数”)および付随物の選択については、以降で更に詳細に記載されている処理に従って行われる。常にではないが、一般的にはMは入力シンボルおよび出力シンボルに対して同一である、すなわち、それら双方は同じビット数に符号化する。
いくつかの実施形態では、符号器115は付随物を選択するために入力シンボルの数Kを使用する。入力がストリーミングファイルである場合のようにKが前もってわかっていない場合には、Kは単に推定値であってもよい。また、符号器115により生成される入力シンボルおよび任意の中間シンボルの配置割り当てに対し、値Kが符号器115により使用されるかもしれない。
符号器115は送信モジュール140に出力シンボルを提供する。また、送信モジュール140にはダイナミックキー生成器120から各々の出力シンボルのキーが提供される。送信モジュール140は出力シンボルを送信する。そして、送信モジュール140は使用するキーイング方法に従い送信された出力シンボルのキーに関する何らかのデータをチャネル145を介して受信モジュール150に送信するかもしれない。チャネル145は消去チャネルであるとみなされるが、それは通信システム100が適切に動作するための必要条件ではない。送信モジュール140はチャネル145を介して出力シンボルおよび対応するキーに関する必要データを送信するのに適合しており、受信モジュール150はチャネル145を介してシンボルと対応するキーに関する何らかのデータを受信するのに適合していれば、モジュール140、145および150は、適切なハードウェア構成機器、ソフトウェア構成要素、物理メディアまたはそれのいかなる組合せによっても実現可能である。Kの値は、付随物を決定するために用られる場合、チャネル145を介して送信されるか、または、定刻より早い持間に符号器115および復号器155に対して予めセットしておいてもよい。
前述したように、チャネル145はリアルタイムチャネル(例えば、インターネット、テレビ送信機からテレビ受信機への放送リンク経路、あるポイントから他のポイントへの電話接続)で有り得る他、チャネル145は格納チャネル(例えば、CD−ROM、ディスク装置、ウェブサイト等)でも有り得る。さらに、チャネル145はリアルタイムチャネルおよび格納チャネルの組合せでも有り得る。例えば、ある人がパソコンから電話回線を介してインターネットサービスプロバイダー(ISP)まで入力ファイルを送信する際に形成されるチャネルのように、入力ファイルはウェブサーバに格納され、インターネットを介して受け側に送信される。
チャネル145が消去チャネルであると仮定されるので、システム100において、受信モジュール150から出力される出力シンボルと送信モジュール140に入力される出力シンボルとは1対1の対応があると仮定することは出来ない。実際、チャネル145がパケット網を含む場合、2個以上のパケットの相対的順序がチャネル145を通過中に保存されると仮定することさえ出来ないかもしれない。従って、出力シンボルのキーは上述の1以上のキーイング方法を利用して決定され、必ずしも受信モジュール150から出力シンボルが出力される順序で決定されるというわけではない。
受信モジュール150は復号器155に出力シンボルを提供し、受信モジュール150が受信するこれらの出力シンボルのキーに関するデータはダイナミックキー再生器160に提供される。ダイナミックキー再生器160は、受信された出力シンボルのためのダイナミックキーを再生し、復号器155にダイナミックキーを提供する。スタティックキー生成器163は、スタティックキーS,S...を再生し、復号器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(2),...,IS(K−1)
b)オリジナルの入力シンボルの数K
c)スタティックキー生成器130により提供されるスタティックキーS,S,...
d)冗長シンボルの数R
スタティック符号器205は、これらの入力を受信するとすぐに、後述するようにR個の冗長シンボルRE(0),RE(1),...,RE(R−1)を計算する。常にではないが一般的に冗長シンボルは入力シンボルと同じサイズである。一特定実施例において、スタティック符号器210により生成される冗長シンボルは、入力シンボルバッファ205に格納される。入力シンボルバッファ205は論理的なものでもよい。すなわち、ファイルまたはストリームのブロックは1つの場所に物理的に格納してもよいし、入力シンボルのシンボルバッファ205内の位置は、ただ単にオリジナルのファイルまたはストリームのブロック内のシンボルの位置の名称変更でもよい。
ダイナミック符号器は、入力シンボルおよび冗長シンボルを受信し下記に詳述されているように出力シンボルを生成する。冗長シンボルが入力シンボルバッファ205に格納される一実施例においては、ダイナミック符号器220は入力シンボルバッファ205から入力シンボルおよび冗長シンボルを受信する。
冗長計算機230は、入力シンボルの数Kから冗長シンボルの数Rを計算する。この計算は下記に詳述されている。
<スタティック符号器の概要>
スタティック符号器210の一般動作は図3および図4に示される。図3は、スタティック符号化の方法一実施例の簡略フローチャートを例示している。ステップ305において、変数j(どれだけ冗長シンボルが生成されたかについての情報を保持する)はゼロにセットされる。そして、ステップ310では、第1の冗長シンボルRE(0)は少なくともいくつかの入力シンボルIS(0),...,IS(K−1)の関数Fとして計算される。それから、ステップ315で、変数jはインクリメントされる。次に、ステップ320で、冗長シンボルの全てが生成されたか(すなわち、jがR−1より大きいか?)どうかが検査される。もしYesの場合はフローは終了する。そうでなければ、フローは、ステップ325へ進む。ステップ325において、RE(j)は入力シンボルIS(0),...,IS(K−1)および以前に生成された冗長シンボルRE(0),...,RE(j−1)の関数Fとして計算される。ここで、Fは入力シンボルの何れかまたは冗長シンボルの何れかに依存する関数である必要はない。ステップ315、320および325はR個の冗長シンボルが計算されるまで繰り返される。
再度図1および図2を参照すると、実施例によっては、スタティック符号器210はスタティックキー生成器130から1個以上のスタティックキーS,S...を受信する。これらの実施例では、スタティック符号器210は、いくつかまたは全部の関数F,F,...Fj−1を決定するためにスタティックキーを使用する。たとえば、スタティックキーSは関数Fを決定するために利用可能であり、スタティックキーSは関数Fを決定するために利用可能である。もしくは、1個以上のスタティックキーS,S,...を関数Fを決定するために利用可能であり、1個以上のスタティックキーS,S,...を関数Fを決定するために利用可能である。他の実施態様では、スタティックキーは必要でなく、スタティックキー生成器130は必要でない。
次に図2および図3を参照すると、実施例によっては、スタティック符号器210により生成される冗長シンボルは、入力シンボルバッファ205に格納されてもよい。図4は、スタティック符号器210の一実施例の動作の簡略図である。特に、スタティック符号器210は、入力シンボルバッファ205から受信した入力シンボルIS(0),...,IS(K−1),RE(0),...,RE(j−1)の関数Fとして、冗長シンボルRE(j)を生成する。そして、入力シンボルバッファ205の中に戻し格納する。関数F,F,...,FR−1の正確な形式は、特定の用途に依存する。常ではないが一般的には、関数F,F,...,FR−1は、関連するいくつかあるいは全ての引数の排他的論理和を含んでいる。上述の通り、これらの関数は実際に図1のスタティックキー生成器130により生成されるスタティックキーを使用するかもしれないし使用しないかもしれない。たとえば、後述する一特定実施例では、最初のいくつかの関数はハミング符号を実装し、スタティックキーS,S,...を全く使用しない。また、残りの関数は低密度パリティチェック符号を実装し、スタティックキーを明示的に利用する。
<マルチステージ符号器の概要>
再度図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および低密度パリティチェック(LDPC)符号器620を備えている。ハミング符号器610は、入力シンボルバッファ625からの入力シンボルIS(0),...,IS(K−1)、入力シンボルの数K、および、パラメータDを受信するように接続される。そして、ハミング符号器610は、ハミング符号に従ってD+1個の冗長シンボルHA(0),HA(1),...,HA(D)を生成する。
図8は、図7に示されるスタティック符号器を使用する本発明の一実施例の動作を例示する。
図9は、パラメータ計算機(例えば図7のパラメータ計算機605)の一実施例の簡略フローチャートであり、上述のパラメータDおよびEを計算する。最初に、ステップ705で、パラメータDは1に初期化される。そして、ステップ710で、2−D−1がK未満かどうかが判定される。NOの場合フローはステップ730へ進む。YESの場合フローはステップ720へ進み、パラメータDはインクリメントされる。それから、フローはステップ710へ進む。Dが決定されると、ステップ730で、R−D−1としてパラメータEが算出される。
図10は本発明の一実施例に従うこのような符号器の簡略フローチャートであり以下に説明する。最初に、ステップ805で、変数iはゼロに初期化される。変数iは、すでに生成される冗長シンボルの数の情報を得続ける。ステップ810において、数tは、K/2以上の最も少ない奇数の整数として算出される。ステップ815において、値P1,P2,...,Ptは、K、tおよびスタティックキーSに基づいて生成される。値P1,P2,...,Ptは、冗長シンボルを生成するために用いる入力シンボルの位置を指示する。ある特定の実施例では、図5のアソシエータ515のようなアソシエータは、PI,P2,...,Ptを生成するために用いる。特に、W(I)個の入力として値tは提供され、K+R個の入力として値Kは提供される。そして、スタティックキーSiはキーIの入力として提供される。tの多くの異なる値が類似した符号化効果を得る点に留意する必要がある。このように、この特定の選択は1つの例にすぎない。ステップ820において、RE(i)の値は、値IS(PI),IS(P2),...,IS(Pt)のXORとして計算される。ステップ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未満でありえる。明確に、全体のコード体系の1つの目的はしばしば可能な限り数Qを減少させることである、その一方で、所望の精度に関して復号プロセスの成功に関する良好な見込みに基づく保証を維持する。
ステップ1010において、ダイナミック復号器905は受信したQ個出力シンボルから入力シンボルおよび冗長シンボルを再生する。ステップ1005および1010が実質的に並行して実行されることができることは、よく理解されている。たとえば、ダイナミック復号器905は、復号器がQ個の出力シンボルを受信する前に入力シンボルおよび冗長シンボルを再生させ始めることができる。 ダイナミック復号器905がQ個の出力シンボルを処理したあと、入力シンボルが所望の精度に回復されたかどうかは判定される。所望の精度は、たとえば、全ての入力シンボルまたは全てより少ないいくつか、パーセンテージ、その他である。YESの場合、フローは終わる。NOの場合は、フローはステップ1020へ進む。ステップ1020において、スタティック復号器910は、ダイナミック復号器905が回復することができなかった入力シンボルの回復を試みる。スタティック符号器910がダイナミック復号器905により回復された入力シンボルおよび冗長シンボルを処理した後フローが終了する。
図13は、本発明による復号化のための方法の他の実施例を示している簡略フローチャートである。この実施例は、図11に関して記載されたものと類似していて、共通のステップ1005、1010、1015および1025を含む。しかし、ステップ1025の後、フローはステップ1030へ進む。そこにおいて、入力シンボルが所望の精度に回復されたかどうかは判定される。YESの場合、フローは終了する。NOの場合、フローはステップ1035へ進む。ステップ1035において、一つ以上の付加的な出力シンボルが受信される。それから、フローはステップ1010へ進行する。その結果、ダイナミック復号器905および/またはスタティック復号器910は残留する非回復の入力シンボルを回復することを試みることができる。
図14は、本発明による復号化のための方法のさらにもう一つの実施例を示している簡略フローチャートである。ステップ1055において、出力シンボルは復号器により受信される。そして、ステップ1060で、ダイナミック復号器905は受信された出力シンボルから入力シンボルおよび冗長シンボルを再生させる。それから、ステップ1065で、ダイナミック復号化が終了すべきかどうかが判定される。この判定は、処理した出力シンボルの数、回復した入力シンボルの数、付加的な入力シンボルが回復されている現在の速度、出力シンボルの処理に費やした時間は、その他の一つ以上に基づいて行われる。
ステップ1065において、ダイナミック復号化を終了しないと決定される場合、フローはステップ1055へ進行する。しかし、ステップ1065において、ダイナミック復号化を終了すると決定される場合、フローはステップ1070へ進む。ステップ1070において、入力シンボルが所望の精度に回復されたかどうかが判定される。YESである場合、フローは終了する。NOの場合は、フローはステップ1075へ進む。ステップ1075において、スタティック復号器910は、ダイナミック復号器905が回復することができなかった入力シンボルの回復を試みる。スタティック符号器910が、ダイナミック符号器905によって回復された入力シンボルおよび冗長シンボルを処理した後、フローは終了する。
図15は、本発明によるダイナミック復号器の一実施例を示す。ダイナミック復号器1100は、図5に示されるダイナミック符号器500と類似した構成要素を含む。復号器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復号器およびハミング復号器の多くのバリエーションは、当業者にとって周知で、本発明による各種実施形態において、使用されることができる。1つの特定実施例において、ハミング復号器は、ガウス消去アルゴリズムを使用して行う。ガウス消去アルゴリズムの多くのバリエーションは、当業者にとって周知で、本発明による各種実施形態において、使用されることができる。
<バリエーション>
上述のマルチステージ連鎖反応コードはシステマティックコードではない。すなわち、ソースブロックのオリジナルソースシンボルの全てが必ずしも送信される符号化シンボルであるというわけではない。しかしながら、システマチックFECコードは、ファイルダウンロードシステムまたはサービスに役立ち、ストリーミングシステムまたはサービスにとって非常に重要である。下記の実施に示すように、変更を加えられたコードは、システマチックで、まだファウンテンコードおよび他の記載されている特性を維持するよう実行されることができる。
それがマルチステージ符号を使用した補足的なサービスのバラエティが設計者に容易である一つの理由は、それが送信機の中の関連性の無いソースファイルまたはストリームを復元するために多数の送信機から符号化シンボルを受信して組み合わせることができるということである。唯一の必要条件は、送信機がそれらがコードのパケットを符号化する際に送信する符号化シンボルを生成するためのキーと異なるセットを使用するということである。これを達成する方法は、この種の各々の送信機によって、異なる範囲のキー空間を使用するか、または、各々の送信機でランダムにキーを生成することを含む。
例えば、この能力の用途の中で、ファイルダウンロードサービスに対する補足的なサービスがマルチステージ連鎖反応符号を許容するならば、ファイルダウンロードセッションからソースファイルを復元するのに十分な符号化しているパケットを受信せず、送信機から付加的な符号化コードが送信されるよう要求する(例えば、HTTPセッションを経て)。送信機はソースファイルから符号化シンボルを生成し送信し(例えばHTTPを使用して)、ソースファイルを回復するため全てのこれらの符号化シンボルはファイルダウンロードセッションから受信されるそれと混合されうる。このアプローチを使用することによって、異なる送信機同士が送信機間の調整を必要とせずインクリメント式ソースファイル配信サービスを提供でき、その各々個々の受信機は各々のソースファイルを回復するための符号化パケットを最低限の数だけ受信すればよい。
<マルチステージコードのさまざまなステージの実現例>
<FEC方式定義>
これらの技術を使用しているパケットは、ヘッダ情報(例えばソースブロック番号(SBN)(パケットの範囲内の符号化シンボルが関係するソースブロックのための16ビット整数識別子)および符号化シンボルID(ESI)(パケットの範囲内の符号化シンボルのための16ビット整数識別子)を含んでいる4オクテットのFECペイロードID)により表されるかもしれない。ソースブロック番号および符号化シンボルIDの1つの適切な解釈は、下記のセクションBにおいて定義される。FECオブジェクト転送情報は、FEC符号化ID、転送長(F)およびパラメータT(下において、定められるZ、NおよびA)を含みうる。パラメータTおよびZは16ビット符号なし整数である、NおよびAは8ビット符号なし整数である。
MBMS前方誤り訂正のFEC符号化方式は、下記のセクションにおいて定義される。それは2つの異なるFECペイロードIDフォーマット(1つはFEC転送元パケットのため、もう1つはFEC修復パケットのため)を定義する。しかし、非システマチック符号のバリエーションもまた可能である。
転送元FECペイロードIDは、ソースブロック番号(SBN)(パケットの範囲内の符号化シンボルが関係するソースブロックのための16ビット整数識別子)および符号化シンボルID(ESI)(パケットの範囲内の符号化シンボルのための16ビット整数識別子)を含むかもしれない。その一方で、修復FECペイロードIDは、ソースブロック番号(SBN)(パケットの範囲内の修復シンボルが関係するソースブロックのための16ビット整数識別子)、符号化シンボルID(ESI)(パケットの範囲内の修復シンボルのための16ビット整数識別子)およびソースブロック長(SBL)(16ビット:ソースブロック内のソースシンボルの数を表す)を含みうる。ソースブロック番号、符号化シンボルIDおよびソースブロック長の解釈は、以下定義される。
FECオブジェクト転送情報は、FEC符号化ID、最大ソースブロック長(シンボル単位)およびシンボルサイズ(バイト単位)を含みうる。シンボルサイズおよび最大ソースブロック長は、シンボルサイズ(T)(16ビット:符号化シンボルのサイズを表す(バイト単位)および)最大ソースブロック長(16ビット:ソースブロックの最大長を表す(シンボル単位))の4オクテット部を含み得る。
下記のセクションは、システマチックMSCR前方誤り訂正符号およびMBMSおよび他の用途へのその適用を指定する。MSCRはファウンテンコードである。すなわち、符号器はブロックのソースシンボルからオンザフライで必要なだけ多く数ののソースシンボルを生成することが出来る。復号器は、ソースシンボルの数よりわずかに多いいかなる符号化シンボルのセットからもソースブロックを回復可能である。この文書に記載されている符号はシステマティック符号であり、修復シンボルと同じ数だけオリジナルソースシンボルは受信機に送信機から変形されずに送信される。
<B.1 定義、記号および略号>
<B.1.1 定義>
本明細書において以下の用語および定義を適用する。
ソースブロック:MSCR符号化の目的で一緒に考慮されるK個のソースシンボルのブロック。
ソースシンボル:符号化プロセスの間使用されるデータの最小単位。ソースブロック内の全てのソースシンボルは同一のサイズである。
符号化シンボル:データパケットに含まれるシンボル。符号化シンボルは、ソースシンボルおよび修復シンボルを含む。ソースブロックから生成される修復シンボルは、ソースブロックのソースシンボルと同様に同一のサイズである。
システマティックコード:ソースブロックのため送信される符号化シンボルの一部としてソースシンボルが含まれるコード。
修復シンボル:ソースブロックのため送信されるソースシンボルでない符号化シンボル。修復シンボルはソースシンボルに基づいて生成される。
中間シンボル:逆の符号化プロセスを使用してソースシンボルから生成されるシンボル。修復シンボルは中間シンボルから直接生成される。符号化シンボルは中間シンボルを含まない。すなわち、中間シンボルはデータパケットに含まれない。
シンボル:データの単位。バイトで表現されるサイズはシンボルサイズとして既知である。
符号化シンボルグループ:一緒に送られる符号化シンボルグループ。すなわち、同一パケット内においてソースシンボルに対する関係が単一の符号化シンボルIDに由来するもの。
符号化シンボルID:符号化シンボルグループのシンボルとソースシンボルの関係を定義する情報。
符号化パケット:符号化シンボルを含むデータパケット
サブブロック:ソースブロックはサブブロックに分解され、それぞれは作業メモリ内において復号化されるために十分に小さい。K個のソースシンボルを含むソースブロックに対して、各々のサブブロックはK個のサブシンボルを含み、ソースブロックの各シンボルは各サブブロックの1個のサブシンボルから構成される。
サブシンボル:シンボルの一部。各ソースシンボルは、ソースブロック内のサブブロックである多くのサブシンボルから構成される。
ソースパケット:ソースシンボルを含むデータパケット。
修復パケット:修復シンボルを含むデータパケット。
<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の倍数に制限される
:Aの転置行列を表す
−1:Aの逆行列を表す
K:1個のソースブロック内にあるシンボルの数を表す
MAX:1つのソースブロック内にあるソースシンボルの最大数を表し、8192に設定される
L:1つのソースブロックに対する予め符号化されるシンボルの数を表す
S:1つのソースブロックに対するLDPCシンボルの数を表す
H:1つのソースブロックに対するハーフシンボルの数を表す
C:中間シンボル(C[0],C[1],C[2],...,C[L−1])の配列を表す
C’:ソースシンボル(C’[0],C’[1],C’[2],...,C’[K−1])の配列を表す
X:負でない整数値を表す
、V:4バイト整数の2つの配列、V[0],V[1],...,V[255]およびV[0],V[1],...,V[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:任意の生成行列を表す
:SxSの恒等行列を表す
SxH:SxHの零行列を表す
<B.1.3 略号>
本明細書において以下の略号を用いる。
ESI(Encoding Symbol ID):符号化シンボルID
LDPC(Low Density Parity Check):低密度パリティチェック
LT(Luby Transform):ルビー変換
SBN(Source Block Number):ソースブロック番号
SBL(Source Block Length):ソースブロック長(シンボル単位)
<B.2 概要>
これら各々のアプリケーションに特定されるMSCR前方誤り訂正符号は、MBMSファイル配信およびMBMSストリーミングアプリケーションの双方に適用可能である。MSCR符号の態様は、本明細書のセクションB.3およびB.4で述べる。
システマチックMSCR符号の構成要素は、セクションB.5に記載されている基本的な符号器である。第1に、中間シンボルについての知識がソースシンボルを復元するのに十分であるように、どのようにオリジナルソースシンボルから一組の中間シンボルの値を導き出すかが記述される。第2に、符号器は、各々多数の中間シンボルの排他的論理和である修復シンボルを作成する。符号化シンボルは、ソースおよび修復シンボルの組合せである。中間シンボル従ってまたソースシンボルはいかなる十分に大きい符号化シンボル群からも回復可能な方法で修復シンボルは生成される。
この文書は、システマチックMSCRコード符号器を定義する。多くの考えられる復号化アルゴリズムが利用可能である。効率的な復号化アルゴリズムは、セクションB.6において提供される。
中間のおよび修復シンボルの組立の一部分は、セクションB.5に記載されている擬似乱数発生器に基づく。この生成器は、送信機および受信機の双方で利用できる512の乱数の固定セットに基づく。数の実施例のセットは、付録B.1において提供される。
最後に、ソースシンボルからの中間シンボルの組立は、”システマチックインデックス”により支配される。システマチックインデックスの値の実施例セットは、4個のソースシンボルからKMAX=8192個のソースシンボルまでのソースブロックサイズのためものが付録Aに示される。
<B.3 ファイルダウンロード>
<B.3.1 ソースブロック構築>
<B.3.1.1 全般>
MSCR符号器をソースファイルに適用するために、ファイルはZ(≧1)個のブロック(ソースブロックとして知られる)としてに分解されうる。MSCR符号器は、それぞれに各々のソースブロックに適用される。各々のソースブロックは一意な整数ソースブロック番号(SBN)であり、第1のソースブロックのSBNは0、第2は1などである。各々のソースブロックは各々のサイズがTバイトのソースシンボルの数(K)に分割される。各々のソースシンボルは一意の整数符号化シンボル識別子(ESI)であり、ソースブロックの第1のソースシンボルのESIは0、第2は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 ソースブロックとサブブロック分割>
ソースブロックおよびサブブロックの構築は、F、A、T、Z、Nの5個のパラメータおよび関数Partition[]に基づいて決定される。5個のパラメータは次のように定義される。
F:ファイルサイズ(バイト)である
A:シンボル配列パラメータ(バイト)である
T:シンボルサイズ(バイト)であり、必ずAの倍数となる
Z:ソースブロックの数である
N:各ソースブロック内のサブブロックの数である
これらのパラメータは、ceil(ceil(F/T)/Z)=<KMAXとなるようにセットされる。これらのパラメータ導出の推奨値がセクションB.3.4において提供される。
関数Partition[]は一対の整数(I、J)を入力として4整数(I、I、J、J)を導出する。具体的には、Partition[I、J]の値は、4整数のシーケンス(I、I、J、J)であり、I、=ceil(I/J)、I=Floor(I/J)、J=I−I・J、J=J−Jである。Partition[]は、サイズIのブロックをほぼ等しいJのブロックに分割するパラメータを導出する。具体的には、長さIのJ個のブロックと長さIのJ個のブロックである。
ソースファイルは、以下の通りにソースブロックおよびサブブロックに仕切られる。
=ceil(F/T)のとき
(K、K、Z、Z)=Partition[K,Z]
(T、T、N、N)=Partition[T/A,N]
それから、ファイルは、Z=Z+Z個の隣接するソースブロックに仕切られ、最初のZ個のソースブロックは各々K・Tバイトであり、残りのZ個のソースブロックは各々K・Tバイトである。
・T>Fのとき、符号化に用いられ、最後のシンボルは最後のK・T−Fの部分をパディングされる。
次に、各々のソースブロックはN=N+N個の隣接するサブブロックに仕切られ、最初のN個のサブブロックは各々T・AのサイズのK個の隣接するサブシンボルを含み、残りのN個のサブブロックは各々T・AのサイズのK個の隣接するサブシンボルを含む。シンボル配列パラメータAは、サブシンボルが常にAバイトの倍数であることを確保する。
最後に、ソースブロックの第m番目のシンボルは、各々N個のサブブロックから第m番目のサブシンボルの連結を含む。
<B.3.2 符号化パケット構築>
<B.3.2.1 全般>
各々の符号化パケットは、以下の情報を含む。
ソースブロック番号(SBN)
符号化シンボルID(ESI)
符号化シンボル
各々のソースブロックは、他と独立してそれぞれに符号化される。ソースブロックはゼロから連続的に番号をつけられる。
0からK−1の符号化シンボルID値は、ソースシンボルを識別する。Kからの符号化シンボルは前方へ修復シンボルを識別する。
<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はパケット内のシンボルの数である。
ここで、受信機が修復パケットの合計数を知ることは必要でない点に注意する。修復シンボルのG個の修復シンボルトリプル(d[0],a[0],b[0]),...,(d[G−1],a[G−1],b[G−1])は、ESI Xを有する修復パケット内に配置され、以降のB.5.3.4において定義されるトリプル生成器を使用して計算される。
各々のi=0,...,G−1に対して、
(d[i],a[i],b[i])=Trip[K,X+i]
ESI Xを有する修復パケットに配置されるG個の修復シンボルは、セクションB.5.3にて説明したように、中間シンボルCおよびLT符号器LTenc[K,C,(d[i],a[i],b[i])]を用い修復シンボルトリプルに基づいて計算される。
<B.3.3 転送>
このセクションは、ファイル送出のためのMSCR前方誤り訂正を利用しているMSCR符号器/復号器およびいかなる転送プロトコルの間でも情報交換を記載する。
ファイル送出のためのMSCR符号器および復号器は、転送プロトコルから以下の情報を必要とする。バイト単位のファイルサイズ、F、シンボル配列パラメータ、A、シンボルサイズ(T)(バイト単位でAの倍数である)、ソースブロックの数、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:シンボル配列ファクタ(バイト)
MAX:ソースブロック当たりのソースシンボルの最大数
MIN:ソースブロック当たりのシンボルの最小目標数
MAX:パケット当たりのシンボルの最大目標数
上記の入力に基づいて、転送パラメータT、ZおよびNは、以下の通りに算出される。
G=min{ceil(P・KMIN/F),P/A,GMAX}−パケット当たりの平均シンボル数
T=floor(P/(A・G))・A
Kt=ceil(F/T)−ファイル内の総シンボル数
Z=ceil(K/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
<B.3.4.2 例>
上記のアルゴリズムは図18に示すように結果として転送パラメータに導く。そして、W、A、KMINおよびGMAXおよびP=512のための推奨値となる。
<B.4 ストリーミング>
<B.4.1 ソースブロック構築>
この文書において定義したように、ソースブロックは転送プロトコルによって組み立てられる。そして、システマチックMSCR前方誤り訂正符号を利用する。ソースブロックの組立および修復シンボルの組立に使われるシンボルサイズTは転送プロトコルにより提供される。いかなるソースブロックについてもソースシンボルの数が最高でもKMAXであるために、パラメータTがセットされるかもしれない。
推奨されたパラメータは、セクション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:シンボル配列ファクタ(バイト)
MAX:ソースブロック当たりのソースシンボルの最大数
MIN:ソースブロック当たりのシンボルの最小目標数
MAX:修復パケット当たりのシンボルの最大目標数
これらの入力上の必要条件は、ceil(B/P)=<KMAXである。上記の入力に基づいて、転送パラメータTは、以下の通りに算出される。
G=min{ceil(P・KMIN/B),P/A、GMAX}−パケット当たりのシンボル平均数
T=floor(P/(A・G))・A
上で導出されるTの値は、使用するTの実効値のガイドと思われなければならない。そのTをPに区分することは有利でもある。または、フルサイズ修復シンボルが消失する転送元パケット(ソースブロックのソースシンボルの最大数KMAXを超えない限り)終了後部分的なソースシンボルを回復するために用いるときに、より小さいTの値が消耗を最小化することはセットに有利でもよい。P、全ての転送元パケットが同一サイズである場合、それがそのようにTをそれに選ぶために有利で修復パケットPの中で、さらに、例えば、Tで優れたものは、転送元パケット径分布に依存できる実際のペイロードサイズは、Tの倍数であって、各々の転送元パケットがソースブロックにおいて、占めるバイト数(数バイトできる限りより大きく、または)に等しい。
入力パラメータ、A、KMINおよびGMAXの推奨された設定は、以下の通りである。
A=4 KMIN=1024 GMAX=10
<B.4.4.2 例>
上記のアルゴリズムは図19に示すように結果として転送パラメータに導く。そして、A、Kおよび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は、生成するために用いるトリプルの3整数(d、a、b)(各々の修復シンボル間のセクションB.5.4.4.にて説明したように、Trip[]を使用する)。これは、セクションB.3およびセクションB.5.4に記載されている生成器を使用し、B.4にて説明したように実行される。各々の(d,a,b)−トリプルはセクションB.5.4.3.に記載されているLTEnc[K,C[0],...,C[L−1],(d,a,b)]生成器を使用している中間シンボルから、対応する修復シンボルを生成するために用いる。
<B.5.2 符号化の第1段階:中間シンボル生成>
<B.5.2.1 全般>
第1の符号化しているステップは、ソースシンボルC’[0],...,C’[K−1]からL個の中間シンボルC[0],...,C[L−1]を生成する予め行われる符号化ステップである。中間シンボルは、制約条件の2つのセットによって、独自に定義される。
1.中間シンボルは、ソースシンボルのトリプルの一組によって、ソースシンボルに関連がある。セクションB.5.4.4にて説明したように、ソースシンボルトリプルの生成には、セクション5.2.2で定義されるを使用しているTrip[]を使用する。
2.一組の予め行われる符号化関係は、それ自身を中間シンボルの中で保持する。これらは、セクションB.5.2.3において定義される。
L個の中間シンボルの生成は、セクション5.2.4において定義される。
<B.5.2.2 ソースシンボルのトリプル>
K個のソースシンボルのそれぞれは、0<i<Kのトリプル(d[i],a[i],b[i])に関係している。ソースシンボルトリプルは、セクションB.5.4.4で定義されるトリプル生成器を使用して決定される。
0<i<Kを満たすそれぞれのiについて、
(d[i],a[i],b[i])=Trip[K,i]
<B.5.2.3 符号化前の関連付け>
L個の中間シンボルの間の予めの符号化関係は、第1のK個の中間シンボルに関して最後のL−K個の中間シンボルを表すことにより定義される。
最後のL−K個の中間シンボルC[K],...,C[L−1]はS LDPCシンボルを含む、そして、SおよびHの値がそうであるHハーフシンボルは後述するようにKから決定される。そのため、L=K+S+Hである。
X:X・(X−1)=2・Kとなる最小の自然数である
S:S>=ceil(0.01・K)+Xとなる最小の素数整数
H:(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]の値であるように定義される。
i=0、...、K−1 について以下を実行
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 ハ−フシンボルは以下のように定義される。
g[i]=i^(floor(i/2)) 全ての自然数iについて
注:g[i]はグレイシーケンスであり、各々の要素は前のものと単一のビット位置において異なる。
g[j,k]は、jth要素を示す、j=0,1,2,...要二進表示で素が正確にk個のゼロでないビットを備えているg[i]の部分系列を示す。
それから、ハーフシンボルは、以下の処理の後、C[K+S],...,C[L−1]の値として定義される。
h=0,...,H−1 について以下を実行
j=0,...,K+S−1 について以下を実行
もしg[j,H’]のビットhが1の場合、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])] 0<i<Kである全てのiについて
2.B.5.2.3で予め定義された符号化関係を満足するL個の中間シンボルC[0],C[1],...,C[L−1]
<B.5.2.4.2 中間シンボルの計算>
このサブセクションは、B.5.2.4.1の制約条件を満たしているL中間シンボルC[0],C[1],...,C[L−1]の算出方法を記載する。 K個の入力シンボルからN個の出力シンボルを生成するコードのための生成行列GはGF(2)の上のNxKマトリックスである。各々の列は出力シンボルのうちの1つに対応する。そして、入力シンボルのうちの1つおよびithとなる出力シンボルのところに対する各々の行は行が列のゼロでないエントリを含むそれらの入力シンボルの合計に等しい。
そして、L個の中間シンボルは、以下の通りに算出されることができる。
C:L個の中間シンボル(C[0],C[1],...,C[L−1])の列ベクトルを示す
D:S+Hのゼロシンボルを含む列ベクトルで、K個のソースシンボルC’[0],C’[1],...,C’[K−1]が続く
よって、上記の制約条件はGF(2)の上のLxLマトリックスと定義され、Aは
A・C=D である。
マトリックスAは、以下の通りに組み立てられることが可能である。
LDPCは、DPCシンボルのSxKの生成行列である、そのため、
LDPC・(C[0],...,C[K−1])=(C[K],...,C[K+S−1])
Halfは、ハーフシンボルのH×(K+S)の生成行列である、そのため、
Half・(C[0],...,C[S+K−1])=(C[K+S],...,C[K+S+H−1])
:SxSの恒等行列を表す
:HxHの恒等行列を表す
SxH:SxHの零行列を表す
LT:LT符号器により生成される符号化シンボルのK×Lの生成行列である
そのため、
LT・(C[0],...,C[L−1])=(C’[0],C’[1],...,C’[K−1])
すなわち、GLTi,j=1 もしC[i]は排他的論理和の生成したシンボルを含むだけなら
LTEnc[K,(C[0],...,C[L−1]),(d[i],a[i],b[i])]
そして、
Aの最初のS列は、GLDPC|I|ZS×Hに等しい。
Aの次のH列は、GHalf|Iに等しい。
Aの残りのK列は、GLTに等しい。
マトリックスAは、図20に示される。中間シンボルはそれから算出されることができる。
C=A−1・D
いかなるKにおいても行列Aは最大ランクを有し、逆変換可能であるようにソーストリプルは生成される。この算出は、L個の中間シンボルC[0],C[1],...,C[L−1]を作成するためにMSCR復号プロセスをK個のソースシンボルC’[0],C’[1],...,C’[K−1]に適用することにより認識されることができる。
ソースシンボルから効率的に中間シンボルを生成するために、それのような効率的な復号器実施態様がセクションB.6に記載されて用いられるというそれは、推奨される。ソースシンボルトリプルは、そのアルゴリズムを使用しているソースシンボルの効率的な復号化を容易にするように設計されている。
<B.5.3 符号化の第2段階:LT符号化>
第二の符号化ステップにおいて、ESI Xを有する修復シンボルは、生成器を適用することによって、セクションB.3.2.2およびB.4.2に従ってトリプル(d,a,b)=Trip[K,X]を使用しているL個の中間シンボルC[0],C[1],...,C[L−1]にセクションB.5.4において定義されるLTEnc[K,(C[0],C[1],...,C[L−1]),(d,a,b)]を生成する。
<B.5.4 生成器>
<B.5.4.1 乱数生成器>
乱数発生器Rand[X,m]は以下の通りに定められる。ここで、Xは非負整数である、iは非負整数である。そして、mは自然数である。そして、生成される値は0とm−1との間の整数である。VおよびVを各々256のエントリの配列であるようにさせる。ここで、各々のエントリは4バイトの符号なし整数である。これらの配列は、セクションB.7において提供される。そして、
Rand[X,i,m]=(V[(X+i)%256]^V[(floor(X/256)+i)%256])%m
<B.5.4.2 度数生成器>
度数生成器[v]は以下の通りに定められる。vは少なくとも0で220=1048576より小さい整数である。
図21において、 f[j−1]≦v<f[j]となるインデックスjを探す
Deg[v]=d[j]
<B.5.4.3 LT符号化シンボル生成器>
符号化シンボル生成器LTEnc[K,(C[0],C[1],...,C[L−1]),(d,a,b)]は、以下の入力をする。
Kは、ソースブロック(サブブロック)のためのソースシンボル(またはサブシンボル)の数である。LはセクションB.5.2にて説明したように、Kに由来するようにさせる。そして、L’L以上の最小の素数とする。
(C[0],C[1],...,C[L−1])はセクションB.5.2にて説明したように、生成されるL個の中間シンボル(サブシンボル)である。
(d、a、b)はセクションB.5.3.4で定義されたトリプル生成器使用して決定されるソーストリプルである。ここで、dは符号化シンボル度数を示す整数であり、aは1からL’−1に含まれる整数であり、bは0からL’−1に含まれる整数である。
以下のアルゴリズムにより、符号化シンボル生成器は1つの符号化シンボルを出力として生成する。
b≧Lにあいだ、b=(b+a)%L’を実行する
LTEnc[K,(C[0],C[1],...,C[L−1]),(d,a,b)]=C[b]
j=1,...,min(d−1,L−1) について以下を実行する。
b=(b+a)%L’
LTEnc[K,(C[0],C[1],...,C[L−1]),(d,a,b)]=LTEnc[K,(C[0],C[1],...,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)は、付録Aにおいて定義される、Kと関係するシステマチックデックスである。
トリプル生成器の出力はトリプル(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。LビットマトリックスAによる以下のMは、復号化されるソースブロックのための復号器に通過する情報に由来できる。CはL個の中間シンボルの列ベクトルであって、Dは受信機(MシンボルでぶりのS+HがLDPCおよびHalfシンボル(これらは、それ自身LDPCおよびHalfシンボルおよびLDPCおよびHalfシンボルのためでない検査符号である)に対応する0値を有するシンボルである)にとって公知の値を有するMシンボルの列ベクトルであるようにさせるようにさせる。そして、Mシンボルの残りのNは、ソースブロックのための受信された符号化しているシンボルである。それから、AはA・C=Dを満たすビットマトリックスである。ここで、GF[2]の上のマトリックス乗算を示す。一旦Cが複号化されるとインデックスjに対応する中間シンボルが符号化のインデックスiに対応するLDPC、Halfまたは符号化しているシンボルにXOR演算される場合A[i,j]=1である。または、インデックスiがLDPCまたはHalfシンボルおよびインデックスに対応する場合、jは同じLDPCまたはHalfシンボルに対応する。他の全てのiおよびjについて、A[i,j]=0である。
ソースブロックが周知のAからCを復号化して、等しい復号化およびそれがそうであるDはそのCをクリアする復号化できるのときかつそのときに限ってGF[2]はLである。シンボルがシンボルが各々の行方不明のソースシンボルを得るためにXOR演算される中間シンボルの数およびセットを決定するためにトリプルにするソースを使用して得られることが可能である転送元をはずす。
復号化Cの第一段階は、復号化予定を形成することになっている。このステップにおいて、L恒等行列によるLに、Aは、ガウス消去(列動作および列および行の並べ替えを使用する)を用いて、そして、M−L列を放棄した後に変換される。復号化予定はガウス消去処理の間、列動作および列および行の並べ替えのシーケンスを含んで、Aに、そして、DからのCの復号化が復号化予定の化成と並行して場所に持っていくことができるD.以外に依存するだけである、または、復号化が復号化予定に基づいてその後起こることができる。
復号化予定およびCの復号化の間の相関関係は、以下の通りである。まず最初にc[0]=0,c[1]= 1...,c[L−1]=L−1およびd[0]=0,d[1]=1...,d[M−1]=M−1である。
復号化予定において、そしてD[d[i]]がXOR演算される復号プロセスシンボルにおいて、−Aの各々の時間列iは、列iにXOR演算されるシンボルD[d[i’]]。
復号化予定において、そしてd[i]の値が値と交換される復号プロセスで−各々の時間列iは、列iと交換されるd[i’]。
復号化予定において、そしてc[j]の値がc[j’]の値と交換した復号プロセスで−各々の時間行jは、行jと交換される。
この通信から、ソースブロックの復号化のシンボルの排他的論理和の合計数がガウス消去の段数動作(交換でない)であることは、明らかである。Aがガウス消去の後のLの恒等行列による。そして、最後のM−Lを廃棄した後のLであるので、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 第1段階>
マトリックスAが下位行列に仕切られて、概念的にあるガウス消去の第一段階。部分行列サイズは、0まで初期化される非負整数iおよびuによって、パラメータで表される。Aのサブマトリックスは、以下の通りである
(1) Iが第1のi列および第1のi行の交差によって、定めた部分行列。これは、位相における各々のステップ終了後の恒等行列である。
(2) 第1のi列および第1のi行以外はおよび最後のu行の交差により定義される部分行列。この部分行列の全てのエントリは、ゼロである。
(3) 第1のi行および第1のi列以外はの交差により定義される部分行列。この部分行列の全てのエントリは、ゼロである。
(4) 全ての列および最後のu行の交差により定義される部分行列U。
(5) 部分行列Vは、第1のi行以外はおよび最後のu行および第1のi列以外はの交差によって、形をなした。
図22は第一段階の初めのA.対各々のステップの= A.の下位行列を例示する、列のAは選択される。Vの構造により定義される以下のグラフが、Aのどの列が選択されるか決定する際に使われる。Vを横切る行は、グラフのノードである。そして、正確にVの2つのものを有する列は、2つのものの位置の2つの行(ノード)を接続するグラフの端である。グラフのノード/刃の各対間の経路があるように、このグラフのA構成要素はノード(行)および端(列)の最大セットである。構成要素のサイズは、構成要素のノード数(行)である。
Lステップが、最高でも第一段階にある。i+u=Lとき、位相は、うまく終える、すなわちVおよびVより上の全ゼロ部分行列が消える。そして、Aは、含むI、下記の全0部分行列I、そして、U.失敗していくつかでVの前のステップがそこで消える場合、失敗を復号化する際の位相両端部は、そのステップで選択をするVのゼロでない列でない。各々のステップにおいて、Aの列は、以下の通りに選択される。Vの全てのエントリがゼロである場合、列は選択されない、そして、復号化は失敗する。Aの少なくとも一つの列が正確にVのrものを有するように、rを最小限の整数であるようにさせる。r#2がそれから正確に最小限のオリジナル程度を有するVのrものを有する列を全てのこの種の列から選択する場合。r=2がそれから正確にXにより定義されるグラフの最大サイズ構成要素の一部であるVの2つのものを有する列を選択する場合、列がこのステップで選択されたあと、選ばれた列がVと交差する第一系列であるために、Vを横切るAの第一系列は選ばれた列と交換される。選ばれた列のrのうちの1つがVの第一塔に現れるために、そして、残りのr−1がVの最後の行に現れるために、Vを横切るものの中のAの行は追加注文される。
それから、選ばれた列は、Vの第一のものを有する選ばれた列の下で、Aの全ての他の列にXOR演算される。
最後に、iは1時までに増加する。そして、uはr−1まで増加する。そして、それはステップを完了する。
<B.6.2.3 第2段階>
部分行列Uは、更に仕切られる最初のi列、Uupper、そして、残りのM−i列、Ulower。ガウス消去は、その順位がu(復号化失敗)より少ないと決定するかuがこぐ第一が恒等行列(第二段階の成功)であるマトリックスにそれを変換するために、Ulower上の第二段階において、実行される。u恒等行列Iによって、このuを呼ぶ。Ulower−Iと交差するAのM−L列は、放棄される。この位相の後、Aは、L列およびL行を有する。
<B.6.2.4 第3段階>
第二段階の後、L恒等行列によって、LにAを変換し終わるために外へゼロに合うことを必要とするAの唯一の部分は、Uupperである。部分行列Uupperの段数iは、通常、Uupperの行uの数非常に大きい。効率的にUupper(以下の前計算マトリックスU)からのゼロまで』、第三段階およびそれからUのIに基づいて計算される』が、Uupperからゼロまで第四段階において、使われる。Iの列が仕切られるuは、各々(u/8)グループの8本の列を張る。それから、8本の列の各群のために、8本の列の全てのゼロ以外の組合せは、計算される。そして、28に結果としてなる−1=255列(これは、28−8−1=247により行われることができるグループにつき列の中で排他論理和は、ハミング重みの組合せからIuに現れるものがある必要を行わないことを−計算する)。このように、結果として生じる前計算マトリックスUは、.255がこぐceil(u/8)およびu行を有する。そのUを強調する形式的にマトリックスAの一部でない、しかし、Uupper−B.からのゼロに対する第四段階の使われる。
<B.6.2.5 第4段階>
列にAの各々の第1のi列間の、Uupperの8つの行エントリのセットが全てゼロ(そして前計算マトリックスUの列)でない場合この列のUupper部分行列の8つの行の各群間の、8つの行のパターンがそうであるマッチは、列にXOR演算した。このようにねらいを定める排他的論理和を犠牲にした列のそれらの8つの行が、Uの中で外に。
この位相AがL恒等行列および完全な復号化によるLであったあと、予定はうまく形成された。それから、シンボルを符号化して公知の対応する復号化を含んでいる排他的論理和は、復号化予定に基づいて中間シンボルを回復するために完成していることがありえる。
全てのソースシンボルと関連するトリプルは、B.5.2.2に従って計算される。受信されたソースシンボルのためのトリプルが、復号化において、使われる。行方不明のソースシンボルのためのトリプルは、どの中間シンボルが行方不明のソースシンボルを回復するためにXOR演算されることを必要とするかについて決定するために用いる。
<マルチステージ符号の特性>
上述の多くの例において、入出力シンボルはビットの同数のための98を符号化する。そして、各々の出力シンボルは1つのパケット(完全に受信されるか完全に消失する輸送の装置であるパケット)において、配置される。いくつかの実施形態では、各々のパケットがいくつかの出力シンボルを含むために、通信システムは変更を加えられる。多くの要因に基づいて、出力シンボル値のサイズは、それから、ストリームのファイルまたはブロックを入力シンボルに最初に分割する際の入力シンボル値のサイズで測定されるサイズに対するセットである。復号プロセスは基本的に不変のままである。但し、次の場合は除く−各々のパケットが受信されながら、出力シンボルは束に到着する。
入力シンボルおよび出力シンボルサイズの設定は、通常、ストリームのファイルまたはブロックのサイズおよび出力シンボルが送信されることになっている通信システムにより口述される。たとえば、通信システムが少しのデータを定義済みサイズのパケットまたは他の方法のグループビットに分類する場合、シンボルサイズの計画はパケットまたはグループ化サイズから開始される。そこから、デザイナーはどれくらいの出力シンボルが1つのパケットかグループにおいて、担持されるかについて決定する。そして、それは出力シンボルサイズを決定する。説明を簡単にするため、デザイナーは入力シンボルサイズを出力シンボルサイズに等しくたぶん設定する、しかし、入力データが異なる入力シンボルサイズをより便利にする場合、それが使うことができる。
上記の符号化プロセスは、ストリームのオリジナルファイルまたはブロックに基づいて出力シンボルを含んでいるパケットのストリームを作成する。ストリームの各々の出力シンボルは他の全ての出力シンボルの中でそれぞれに生成される。そして、作成されることができる出力シンボルの数上の下であるか上の跳躍がない。キーは、各々の出力シンボルを伴う。そのキーおよびストリーム(出力シンボルの値を決定する)の入力ファイルまたはブロックの若干の内容。連続的に生成された出力シンボルは連続的なキーを有する必要はない、そして、それがランダムに好ましい使用目的によってはキーのシーケンスを生成するか、または疑似ランダム的にシーケンスを生成する。
マルチステージ復号化は入力シンボル値、それからファイルまたはブロックが、非常に高い確率によって、平均上のK+A出力シンボルからの改装本でありえながら、ストリームのオリジナルファイルかブロックがK等しい大きさの入力シンボルおよび各々の出力シンボル値に分割されることができるかどうかは同じ長さである特性を有する。ここで、AはKと比較して小さい。たとえば、上に導入される重み分布のために、Kが19,681大きい場合、Aの値がa*Kを上回るという確率は多くても10−12である。そして、それはKのいかなる値のためもの多くても10−10である。特定の出力シンボルがランダムであるか疑似乱数のオーダーにおいて、生成されるので、移動中の特定の出力シンボルの損失がランダムとみなされて、そして、若干の小さい相違は、入力ファイルを回復するために必要な出力シンボルまたはブロックの実数値の中に存在する。場合によっては。ここで受信機が出力パケットの一つ以上の転送元からより多くのパケットを集めることができる場合、パケットが十分に全ての入力ファイルまたはブロック、入力ファイルまたはブロックを復号化しないためにそうであるK+Aの特定のコレクションはまだ回収可能である。
出力シンボルの数が1の解答により制限されるだけであるので、K+Aより適切に、出力シンボルを、生成できる。たとえば、Iが32ビット数である場合、40億の異なる出力シンボルを、生成できるのに、ストリームのファイルまたはブロックはK=50,000入力シンボルを含むことができた。ある用途では、少数のそれらの40億の出力シンボルだけは生成されることができて、送信されることができる。そして、それはストリームの入力ファイルまたはブロックが可能な出力シンボルの非常に小さい割合いを有する改装本でありえるという近い確信および入力ファイルまたはブロックがK出力シンボル(入力シンボルサイズが出力シンボルサイズと同様であると仮定する)よりわずかに改装本でありえるかなりの確率である。
ある用途では、それは、受け入れられてもよいために入力シンボルの全てを復号化するか、または、比較的低い確率によって、以外、入力シンボルの全てを復号化することが可能なことが可能である。この種のアプリケーションにおいて、受信機は、K+A出力シンボルを受信した後に入力シンボルの全てを復号化することを試みるのを止めることができる。または、受信機は、K+A出力シンボル未満の受信の後で出力シンボルを受信するのを止めることができる。ある用途では、受信機は、K以下出力シンボルを受信しさえすることができるだけである。このように、本本発明の若干の実施例で、所望の精度が全ての入力シンボルの完全回復である必要があるというわけではないと理解されることになっている。
更に、不完全な回復が受け入れられる若干のアプリケーションで、データが入力シンボルの全てが回復されることができるというわけでないようであるものまたはこの種のその完全回復を符号化されることができること、入力シンボルは、そうする必要とする多くのより多くの出力シンボルの中で受信入力シンボルの数である。この種の符号化は、通常、より計算でない能力を必要として、このように、符号化の計算能力を減少させる受け入れられる方法であってもよい。 上記の図のさまざまな機能ブロックがハードウェアおよび/またはソフトウェアの組合せにより行うことができることが、よく理解されていることになっている。そして、いくつかまたはいくつかのブロックの相関性の全てがそうすることができる特殊作成のそれは、ある合成。同様に、また、本願明細書において、記載されているさまざまな方法がハードウェアおよび/またはソフトウェアの組合せにより行うことができると理解されることになっている。
前記説明は、例示的であり限定的でない。本発明の多くのバリエーションは、この開示の再調査に応じて、従来技術において、技術のそれらにとって明らかになる。本発明の範囲は、従って、前記説明に関して決定されてはならない。その代わりに等価物のそれらの完全な範囲とともに、添付の請求の範囲に関して決定されなければならない。
<付録A. システマチックインデックスJ(K)の値>
Kの値それぞれについて、ソースシンボルトリプル群(d[0],a[0],b[0]),...,(d[L−1],a[L−1],b[L−1])がL個の中間シンボルが固有となるよう指定可能な特性を有するように、システマチックインデックスJ(K)は設計されている。すなわち、セクションB.5.2.4.2のマトリックスAは最大の階数(ランク)であり逆変換可能な特性を有するように設計されている。以下は、4から8192が含まれるKの値に対応するシステマチックインデックスのリストである。値の順序は、読書の順序と同じである。すなわち、第1行の最初の数値から第1行の最後の数値、そして、第2行の最初の数値に続き、以下同様である。
Figure 0004971144
Figure 0004971144
Figure 0004971144
Figure 0004971144
Figure 0004971144
Figure 0004971144
Figure 0004971144
Figure 0004971144
Figure 0004971144
<付録B.1 テーブルVの値>
これらの値は、上述の明細書のセクションB.5.4.1で述べられたテーブルVの値の例示的なセットを示している。各々の成分は10進数表記の32ビット整数である。値の順序は、第1カラムの最上段から第1カラムの最下段、そして、第2カラムの最上段に続き、以下同様である。
Figure 0004971144
<付録B.2 テーブルVの値>
これらの値は、上述の明細書のセクションB.5.4.1で述べられたテーブルVの値の例示的なセットを示している。各々の成分は10進数表記の32ビット整数である。値の順序は、第1カラムの最上段から第1カラムの最下段、そして、第2カラムの最上段に続き、以下同様である。
Figure 0004971144
本発明の一実施例に従う通信システムのブロック図である。 本発明の一実施例に従う符号器のブロック図である。 本発明の一実施例に従う冗長シンボルを生成する方法の簡略ブロック図である。 本発明の一実施例に従うスタティック符号器の基本操作の簡略ブロック図である。 本発明の一実施例に従うダイナミック符号器の簡略ブロック図である。 本発明の一実施例に従うダイナミック符号器の基本操作の簡略ブロック図である。 本発明の一実施例に従うスタティック符号器の簡略ブロック図である。 本発明の一実施例に従うスタティック符号器の基本操作の簡略ブロック図である。 一特定実施例に従うスタティック符号器の符号化パラメータを算出する方法の簡略図である。 本発明の他の実施例に従うスタティック符号器の簡略フローチャートである。 本発明の一実施例に従う復号器の簡略ブロック図である。 本発明の一実施例に従う復号器の動作の簡略フローチャートである。 本発明の他の実施例に従う復号器の動作の簡略フローチャートである。 本発明のさらにもう一つの実施例に従う復号器の動作の簡略フローチャートである。 本発明の一実施例に従うダイナミック復号器の簡略ブロック図である。 本発明の一実施例に従うスタティック復号器の簡略ブロック図である。 サブシンボル写像からのソースシンボルを示す図である。 さまざまなファイルサイズのファイルのダウンロードパラメータの可能な設定を示す図である。 さまざまなソースブロックサイズのストリーミングパラメータの可能な設定を示す図である。 ソースおよび中間シンボルとの関係を示すマトリックスの形式を示す図である。 度数生成器の度数分布を示す図である。 復号化に使用可能なマトリックスAの形式を示す図である。

Claims (11)

  1. 通信チャネルを介して転送元から転送先へ送信されるデータを符号化する方法であって、ここにおいて、前記送信されるデータは順序付けられた入力シンボル群で表されることができる、
    確定的過程において前記順序付けられた入力シンボル群から複数の冗長シンボルを生成することと、ここにおいて、前記複数の冗長シンボルの中の各冗長シンボルは、前記順序付けられた入力シンボル群のうちの1または複数を使用して算出される、ここにおいて、前記複数の冗長シンボルを生成することは、
    各配列要素が既知の値であるように配列C[K],...,C[K+S−1]を初期化すること、ここにおいて、Kは入力シンボルの数であり、Sは生成される冗長シンボルの数であり、C[0],...,C[K−1]はK個の入力シンボルに対応する、
    カウンタi=0を用いて、以下のステップを行うこと、ここにおいて、aおよびbは中間変数であり、“%”はモジュロ演算を表し、floor()は関数の引数より小さい最大の整数値を表す関数であり、“^”はビット毎のXOR演算を表す:
    (1)a=1+(floor(i/S)%(S−1))
    (2)b=i%S
    (3)C[K+b]=C[K+b]^C[i]
    (4)b=(b+a)%S
    (5)C[K+b]=C[K+b]^C[i]
    (6)b=(b+a)%S
    (7)C[K+b]=C[K+b]^C[i]
    1からK−1までのカウンタiの各値に関して、これらのステップを繰り返すこと、
    少なくとも結果として生じる配列C[K],...,C[K+S−1]を前記複数のS個の冗長シンボルとして出力すること、
    前記入力シンボルおよび冗長シンボルを含む複合シンボル群から複数の出力シンボルを生成することであって、可能な出力シンボルの数は該複合シンボル群のシンボルの数に比較して非常に大きく、少なくとも1つの出力シンボルは前記複合シンボル群の中の2以上であって、かつ前記複合シンボル群のすべてより少ないシンボルから生成され、複数の出力シンボルを生成することと、
    を含む方法。
  2. さらに、前記通信チャネルを介して前記複数の出力シンボルを送信することを含む請求項1に記載の方法。
  3. さらに、前記複数の出力シンボルを記憶媒体に蓄積することを含む請求項1に記載の方法。
  4. 前記複数の冗長シンボルは、LDPC符号により生成される請求項1に記載の方法。
  5. 複数の出力シンボルは、任意の所定数Nの出力シンボルから前記順序付けられた入力シンボル群が再生可能であるようなものであり、ここでNは入力シンボルの数よりわずかに大きい、請求項1に記載の方法。
  6. 前記複数の出力シンボルは、前記複数の出力シンボルのうちのN個のものから前記順序付けられた入力シンボル群が再生可能である高い確率が存在するようなものであり、ここでNは少なくとも入力シンボルの数と同じである、請求項1に記載の方法。
  7. 前記複数の出力シンボルは、前記複数の出力シンボルのうちのK個のものから前記順序付けられた入力シンボル群のうちのG個のものが再生可能であるようなものであり、ここでKは入力シンボルの数であり、GはKより小さい、請求項1に記載の方法。
  8. 多くとも、前記順序付けられた入力シンボル群の入力シンボルの数より少ないG個の入力シンボルが任意の個数の出力シンボルから再生可能である請求項1に記載の方法。
  9. 前記複数の冗長シンボルを生成することは、各々の冗長シンボルについて、
    分布にしたがってt個の互いに異なる入力シンボルを決定することと
    前記t個の互いに異なる入力シンボルのXOR演算として各々の冗長シンボルを計算することと
    を含む、請求項1に記載の方法。
  10. さらに、通信チャネルを介して前記複数の出力シンボルを送信することを含み、前記複数の出力シンボルを生成するステップは該複数の出力シンボルを送信するステップと実質的に並行して実行される請求項1に記載の方法。
  11. 前記複数の冗長シンボルは、スタティックシンボル、ハミングシンボル、および、パディングシンボルを含み、該シンボルの合計個数は素数となるよう選択される請求項1に記載の方法。
JP2007511719A 2004-05-07 2005-05-09 ファイルダウンロードおよびストリーミングのシステム Active JP4971144B2 (ja)

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
JP2012000796A Division JP5485302B2 (ja) 2004-05-07 2012-01-05 ファイルダウンロードおよびストリーミングのシステム

Publications (2)

Publication Number Publication Date
JP2007536834A JP2007536834A (ja) 2007-12-13
JP4971144B2 true JP4971144B2 (ja) 2012-07-11

Family

ID=35394825

Family Applications (2)

Application Number Title Priority Date Filing Date
JP2007511719A Active JP4971144B2 (ja) 2004-05-07 2005-05-09 ファイルダウンロードおよびストリーミングのシステム
JP2012000796A Active JP5485302B2 (ja) 2004-05-07 2012-01-05 ファイルダウンロードおよびストリーミングのシステム

Family Applications After (1)

Application Number Title Priority Date Filing Date
JP2012000796A Active JP5485302B2 (ja) 2004-05-07 2012-01-05 ファイルダウンロードおよびストリーミングのシステム

Country Status (6)

Country Link
US (3) US7418651B2 (ja)
EP (2) EP1743431A4 (ja)
JP (2) JP4971144B2 (ja)
KR (2) KR101205758B1 (ja)
CN (2) CN101019326B (ja)
WO (1) WO2005112250A2 (ja)

Cited By (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012114929A (ja) * 2004-05-07 2012-06-14 Digital Fountain Inc ファイルダウンロードおよびストリーミングのシステム
US8887020B2 (en) 2003-10-06 2014-11-11 Digital Fountain, Inc. Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters
US8918533B2 (en) 2010-07-13 2014-12-23 Qualcomm Incorporated Video switching for streaming video data
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9185439B2 (en) 2010-07-15 2015-11-10 Qualcomm Incorporated Signaling data for multiplexing video components
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9236885B2 (en) 2002-10-05 2016-01-12 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
US9237101B2 (en) 2007-09-12 2016-01-12 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US9253233B2 (en) 2011-08-31 2016-02-02 Qualcomm Incorporated Switch signaling methods providing improved switching between representations for adaptive HTTP 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
US9294226B2 (en) 2012-03-26 2016-03-22 Qualcomm Incorporated Universal object delivery and template-based file delivery
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
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
US9843844B2 (en) 2011-10-05 2017-12-12 Qualcomm Incorporated Network streaming of media data
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

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6307487B1 (en) * 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US20020129159A1 (en) 2001-03-09 2002-09-12 Michael Luby Multi-output packet server with independent streams
US20070242955A1 (en) * 2004-06-01 2007-10-18 The Penn State Research Foundation Optical Wireless Communications Using Ultra Short Light Pulses and Pulse Shaping
US7721184B2 (en) * 2004-08-11 2010-05-18 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
WO2006091736A2 (en) * 2005-02-23 2006-08-31 Arroyo Video Solutions, Inc. Fast channel change with conditional return to multicasting
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
EP1985022B1 (en) 2006-02-08 2011-06-08 Thomson Licensing Decoding of raptor codes
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
WO2007095551A2 (en) 2006-02-13 2007-08-23 Digital Fountain, Inc. Fec streaming with aggregation of concurrent streams for fec computation
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US20100211690A1 (en) * 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US8006160B2 (en) 2006-06-29 2011-08-23 Digital Fountain, Inc. Efficient encoding and decoding methods for representing schedules and processing 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
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
TW200943794A (en) * 2008-04-04 2009-10-16 Nxp Bv Method for efficient packet framing in a communication network
EP2286585A4 (en) * 2008-05-07 2015-06-17 Digital Fountain Inc FAST CHANNEL CHANGE AND HIGH QUALITY CONTINUOUS FLOW BROADCAST PROTECTION ON 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
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
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
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US9485546B2 (en) 2010-06-29 2016-11-01 Qualcomm Incorporated Signaling video samples for trick mode video representations
US9596447B2 (en) 2010-07-21 2017-03-14 Qualcomm Incorporated Providing frame packing type information for video coding
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups 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
US8578241B2 (en) * 2011-10-10 2013-11-05 Lsi Corporation Systems and methods for parity sharing data processing
CN104067594A (zh) 2011-11-01 2014-09-24 高通股份有限公司 在http服务器之间分配源数据和修复数据的内容传送系统
US9723063B2 (en) 2011-11-28 2017-08-01 Vuclip (Singapore) Pte. Ltd. Method of determining transport parameters for efficient data transport across a network
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 無線環境に適したマルチキャストデータを配信する配信サーバ、システム及びプログラム
US20150278022A1 (en) * 2012-10-26 2015-10-01 Telefonaktiebolaget L M Ericsson (Publ) METHODS AND ARRANGEMENTS 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
JP2019515588A (ja) * 2016-05-11 2019-06-06 アイディーエーシー ホールディングス インコーポレイテッド 進化型外部符号化のための方法およびシステム
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
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
US5421031A (en) 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
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 가나이 쓰도무 디지탈방송신호의 수신장치와 수신 및 기록재생장치
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
US6044485A (en) * 1997-01-03 2000-03-28 Ericsson Inc. Transmitter method and transmission system using adaptive coding based on channel characteristics
US5983383A (en) 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
EP0854650A3 (en) 1997-01-17 2001-05-02 NOKIA TECHNOLOGY GmbH Method for addressing a service in digital video broadcasting
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
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 ソニー株式会社 信号記録方法及び信号記録装置
WO1998053454A1 (fr) 1997-05-19 1998-11-26 Sanyo Electric Co., Ltd. Modulation et demodulation numeriques
JPH1141211A (ja) 1997-05-19 1999-02-12 Sanyo Electric Co Ltd ディジタル変調回路と変調方法、ディジタル復調回路と復調方法
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 윤종용 이중 다이버서티 시스템을 위한 데이터 전송 방법
US6175944B1 (en) 1997-07-15 2001-01-16 Lucent Technologies Inc. Methods and apparatus for packetizing data for transmission through an erasure broadcast channel
US5933056A (en) 1997-07-15 1999-08-03 Exar Corporation Single pole current mode common-mode feedback circuit
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
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
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6081909A (en) 1997-11-06 2000-06-27 Digital Equipment Corporation Irregularly graphed encoding technique
JP3472115B2 (ja) 1997-11-25 2003-12-02 Kddi株式会社 マルチチャンネルを用いるビデオデータ伝送方法及びその装置
US5870412A (en) 1997-12-12 1999-02-09 3Com Corporation Forward error correction system for packet based real time media
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
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
EP1110344A1 (en) 1998-09-04 2001-06-27 AT&T Corp. Combined channel coding and space-block coding in a multi-antenna arrangement
US6415326B1 (en) 1998-09-15 2002-07-02 Microsoft Corporation Timeline correlation between multiple timeline-altered media streams
US6320520B1 (en) 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
US7243285B2 (en) 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
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
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
US7157314B2 (en) 1998-11-16 2007-01-02 Sandisk Corporation 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
ES2185244T3 (es) 1998-12-03 2003-04-16 Fraunhofer Ges Forschung Aparato y procedimiento para transmitir informacion y aparato y procedimiento para recibir informacion.
DE69924002T2 (de) * 1998-12-04 2006-04-06 Cidra Corp., Wallingford Kompressions-abgestimmtes bragggitter und kompressions-abgestimmter 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
WO2000052600A1 (fr) 1999-03-03 2000-09-08 Sony Corporation Emetteur, recepteur, systeme d'emetteur/recepteur, procede de transmission et procede de reception
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
JP3256517B2 (ja) 1999-04-06 2002-02-12 インターナショナル・ビジネス・マシーンズ・コーポレーション 符号化回路、回路、パリティ生成方法及び記憶媒体
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
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
MY130203A (en) 1999-05-06 2007-06-29 Sony Corp Methods and apparatus for data processing, methods and apparatus for data reproducing and recording media
KR100416996B1 (ko) 1999-05-10 2004-02-05 삼성전자주식회사 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법
US6154452A (en) 1999-05-26 2000-11-28 Xm Satellite Radio Inc. Method and apparatus for continuous cross-channel interleaving
US6229824B1 (en) 1999-05-26 2001-05-08 Xm Satellite Radio Inc. Method and apparatus for concatenated convolutional endcoding and 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 ソニー株式会社 送信装置、受信装置、通信システム、送信方法及び通信方法
US7529806B1 (en) 1999-11-04 2009-05-05 Koninklijke Philips Electronics N.V. Partitioning of MP3 content file for emulating streaming
EP1131930B1 (en) 1999-09-27 2007-01-17 Koninklijke Philips Electronics N.V. Partitioning of 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
WO2001057667A1 (en) 2000-02-03 2001-08-09 Bandwiz, Inc. Data streaming
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
JP2001251287A (ja) 2000-02-24 2001-09-14 Geneticware Corp Ltd ハードウエア保護内部秘匿鍵及び可変パスコードを利用する機密データ伝送方法
US6765866B1 (en) 2000-02-29 2004-07-20 Mosaid Technologies, Inc. Link aggregation
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
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 情報データ伝送システムとその送信装置及び受信装置
WO2001076077A2 (en) 2000-03-31 2001-10-11 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
DE60121930T2 (de) 2000-04-08 2007-07-26 Sun Microsystems, Inc., Santa Clara Methode zum streamen einer einzelnen medienspur zu mehreren 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
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
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
US6486803B1 (en) 2000-09-22 2002-11-26 Digital Fountain, Inc. On demand encoding with a window
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
US7447791B2 (en) 2000-12-15 2008-11-04 British Telecommunications Public Limited Company Transmission and reception of audio and/or video material
EP1342363B9 (en) 2000-12-15 2012-09-12 BRITISH TELECOMMUNICATIONS public limited company 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
US8595340B2 (en) 2001-01-18 2013-11-26 Yahoo! Inc. 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
US7363354B2 (en) 2001-11-29 2008-04-22 Nokia Corporation System and method for identifying and accessing network services
US7003712B2 (en) 2001-11-29 2006-02-21 Emin Martinian Apparatus and method for adaptive, multimode decoding
JP2003174489A (ja) 2001-12-05 2003-06-20 Ntt Docomo Inc ストリーミング配信装置、ストリーミング配信方法
FI114527B (fi) 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
EP1670260A3 (en) 2002-01-23 2010-03-03 Nokia Corporation Grouping of image frames in video coding
US7483489B2 (en) 2002-01-30 2009-01-27 Nxp B.V. Streaming multimedia data over a network having a variable bandwith
US7249291B2 (en) 2002-02-15 2007-07-24 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
EP1495566A4 (en) 2002-04-15 2005-07-20 Nokia Corp RLP LOGIC LAYER OF A COMMUNICATION STATION
US6677864B2 (en) 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
JP3689063B2 (ja) 2002-04-19 2005-08-31 松下電器産業株式会社 データ受信装置及びデータ配信システム
JP3629008B2 (ja) 2002-04-19 2005-03-16 松下電器産業株式会社 データ受信装置及びデータ配信システム
US7529400B2 (en) 2002-04-25 2009-05-05 Sharp Kabushiki Kaisha Image encoder, image decoder, record medium, and image recorder
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
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
ES2445761T3 (es) 2002-06-11 2014-03-05 Digital Fountain, Inc. Descodificación de códigos de reacción en cadena mediante inactivación
WO2003105484A1 (en) 2002-06-11 2003-12-18 Telefonaktiebolaget L M Ericsson (Publ) Generation of mixed media streams
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> データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム
AU2002319335B2 (en) 2002-08-13 2008-12-04 Nokia Corporation 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 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号装置、及び動画像復号プログラム
EP2357732B1 (en) 2002-10-05 2022-04-06 QUALCOMM Incorporated 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
US8320301B2 (en) 2002-10-25 2012-11-27 Qualcomm Incorporated MIMO WLAN system
US7289451B2 (en) 2002-10-25 2007-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Delay trading between communication links
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
ATE410029T1 (de) 2002-11-18 2008-10-15 British Telecomm Videoübertragung
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
US7293222B2 (en) 2003-01-29 2007-11-06 Digital Fountain, Inc. Systems and processes for fast encoding of hamming codes
US7756002B2 (en) 2003-01-30 2010-07-13 Texas Instruments Incorporated Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer
US7525994B2 (en) 2003-01-30 2009-04-28 Avaya Inc. Packet data flow identification for multiplexing
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
US7408486B2 (en) 2003-04-21 2008-08-05 Qbit Corporation System and method for using a microlet-based modem
JP2004343701A (ja) 2003-04-21 2004-12-02 Matsushita Electric Ind Co Ltd データ受信再生装置、データ受信再生方法及びデータ受信再生処理プログラム
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
IL157886A0 (en) 2003-09-11 2009-02-11 Bamboo Mediacasting Ltd Secure multicast transmission
IL157885A0 (en) 2003-09-11 2004-03-28 Bamboo Mediacasting Ltd Iterative forward error correction
JP4183586B2 (ja) 2003-09-12 2008-11-19 三洋電機株式会社 映像表示装置
JP4988346B2 (ja) 2003-09-15 2012-08-01 ザ・ディレクティービー・グループ・インコーポレイテッド ビデオネットワークにおける適応トランスコーディング及び速度変換のための方法及びシステム
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
EP1521373B1 (en) 2003-09-30 2006-08-23 Telefonaktiebolaget LM Ericsson (publ) In-place data deinterleaving
US7559004B1 (en) 2003-10-01 2009-07-07 Sandisk Corporation Dynamic redundant area configuration in a non-volatile memory system
KR101170629B1 (ko) 2003-10-06 2012-08-02 디지털 파운튼, 인크. 단일 송신기 또는 다중 송신기를 갖는 통신 시스템의 에러 정정 다중-스테이지 코드 생성기 및 디코더
US7614071B2 (en) 2003-10-10 2009-11-03 Microsoft Corporation Architecture for distributed sending of media data
US7516232B2 (en) 2003-10-10 2009-04-07 Microsoft Corporation Media organization 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
EP1528808A3 (en) 2003-10-27 2008-03-26 Matsushita Electric Industrial Co., Ltd. Apparatus for receiving a 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
JP4787167B2 (ja) 2003-12-01 2011-10-05 デジタル ファウンテン, インコーポレイテッド サブシンボル・ベース符号を使用する消去からのデータの保護
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
KR100586883B1 (ko) 2004-03-04 2006-06-08 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩방법, 프리디코딩방법, 비디오 디코딩방법, 및 이를 위한 장치와, 이미지 필터링방법
KR100596705B1 (ko) 2004-03-04 2006-07-04 삼성전자주식회사 비디오 스트리밍 서비스를 위한 비디오 코딩 방법과 비디오 인코딩 시스템, 및 비디오 디코딩 방법과 비디오 디코딩 시스템
US7609653B2 (en) 2004-03-08 2009-10-27 Microsoft Corporation Resolving partial media topologies
US20050207392A1 (en) 2004-03-19 2005-09-22 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
WO2005096301A1 (en) 2004-03-30 2005-10-13 Koninklijke Philips Electronics N.V. System and method for supporting improved trick mode performance for disc-based multimedia content
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
US7633970B2 (en) 2004-05-07 2009-12-15 Agere Systems Inc. MAC header compression for use with frame aggregation
EP1743431A4 (en) 2004-05-07 2007-05-02 Digital Fountain Inc SYSTEM FOR DOWNLOADING AND RECORDING AND CONTINUOUS READING OF FILES
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
US7139660B2 (en) 2004-07-14 2006-11-21 General Motors Corporation System and method for changing motor vehicle personalization settings
US8112531B2 (en) 2004-07-14 2012-02-07 Nokia Corporation Grouping of session objects
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
US7721184B2 (en) 2004-08-11 2010-05-18 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
BRPI0518304A2 (pt) 2004-11-22 2008-11-11 Thomson Res Funding Corp mÉtodo e aparelho para mudar canal em sistema dsl
EP1817859A1 (en) 2004-12-02 2007-08-15 THOMSON Licensing Adaptive forward error correction
KR20060065482A (ko) 2004-12-10 2006-06-14 마이크로소프트 코포레이션 스트리밍 미디어 데이터의 코딩 비트 레이트의 제어 시스템및 프로세스
JP2006174045A (ja) 2004-12-15 2006-06-29 Ntt Communications Kk 画像配信装置、プログラム及び方法
JP2006174032A (ja) 2004-12-15 2006-06-29 Sanyo Electric Co Ltd 画像データ伝送システム、画像データ受信装置及び画像データ送信装置
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 株式会社第一興商 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置
CN101116306A (zh) 2005-02-08 2008-01-30 艾利森电话股份有限公司 在分组交换网络上的按需多频道流会话
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
US20090222873A1 (en) 2005-03-07 2009-09-03 Einarsson Torbjoern 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
CN101120593A (zh) 2005-04-13 2008-02-06 诺基亚公司 可扩展性信息的编码、存储和信号发送
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
MX2007014744A (es) 2005-05-24 2008-02-14 Nokia Corp Metodo y aparatos para transmision/recepcion jerarquica en transmision digital.
US7676735B2 (en) 2005-06-10 2010-03-09 Digital Fountain Inc. Forward error-correcting (FEC) coding and streaming
US7644335B2 (en) 2005-06-10 2010-01-05 Qualcomm Incorporated In-place transformations with applications to encoding and decoding various classes of codes
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
US8879856B2 (en) 2005-09-27 2014-11-04 Qualcomm Incorporated Content driven transcoder that orchestrates multimedia transcoding using 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 华为技术有限公司 分组网络中多媒体实时传输的唇同步方法及其装置
EP2375749B1 (en) 2005-10-11 2016-11-23 Nokia Technologies Oy System and method for efficient scalable stream adaptation
US7720096B2 (en) 2005-10-13 2010-05-18 Microsoft Corporation RTP payload format for VC-1
CN101292538B (zh) 2005-10-19 2012-11-28 汤姆森特许公司 使用可缩放的视频编码的多视图视频编码
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
US8185794B2 (en) 2006-01-05 2012-05-22 Telefonaktiebolaget L M Ericsson (Publ) Media container file management
US8214516B2 (en) 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
CN101390399B (zh) 2006-01-11 2010-12-01 诺基亚公司 可伸缩视频编码中的图片的后向兼容聚合
US7817865B2 (en) 2006-01-12 2010-10-19 Lg Electronics Inc. Processing multiview video
WO2007086654A1 (en) 2006-01-25 2007-08-02 Lg Electronics Inc. Digital broadcasting system and method of processing data
US7262719B2 (en) 2006-01-30 2007-08-28 International Business Machines Corporation Fast data stream decoding using apriori information
RU2290768C1 (ru) 2006-01-30 2006-12-27 Общество с ограниченной ответственностью "Трафиклэнд" Система медиавещания в инфраструктуре оператора мобильной связи
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
EP1985022B1 (en) 2006-02-08 2011-06-08 Thomson Licensing Decoding of raptor codes
US9136983B2 (en) 2006-02-13 2015-09-15 Digital Fountain, Inc. Streaming and buffering using variable FEC overhead and protection periods
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
WO2007127741A2 (en) 2006-04-24 2007-11-08 Sun Microsystems, Inc. Media server system
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
WO2007134196A2 (en) 2006-05-10 2007-11-22 Digital Fountain, Inc. Code generator and decoder using hybrid codes
US7525993B2 (en) 2006-05-24 2009-04-28 Newport Media, Inc. Robust transmission system and method for mobile television applications
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
TWM302355U (en) 2006-06-09 2006-12-11 Jia-Bau Jeng Fixation and cushion structure of knee joint
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
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
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
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
JP2008011404A (ja) 2006-06-30 2008-01-17 Toshiba Corp コンテンツ処理装置及びコンテンツ処理方法
JP4392004B2 (ja) 2006-07-03 2009-12-24 インターナショナル・ビジネス・マシーンズ・コーポレーション パケット回復のための符号化および復号化技術
EP2044528A4 (en) 2006-07-20 2013-03-06 Sandisk Technologies Inc CONTENT DISTRIBUTION SYSTEM
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
KR101021831B1 (ko) 2006-08-24 2011-03-17 노키아 코포레이션 미디어 파일에서 트랙 관계를 표시하는 시스템 및 방법
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 動画像符号化装置及びその方法
EP2084928B1 (en) 2006-10-30 2017-08-23 LG Electronics Inc. Method of performing random access in a wireless communication 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
WO2008061164A2 (en) 2006-11-14 2008-05-22 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
EP4213033A1 (en) 2007-01-05 2023-07-19 DivX, LLC Video distribution system including progressive playback
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
MX2009000619A (es) 2007-01-11 2009-04-16 Panasonic Corp Metodo para la reproduccion de truco de datos multimedia en flujo y encriptados.
US20080172430A1 (en) 2007-01-11 2008-07-17 Andrew Thomas Thorstensen Fragmentation Compression Management
KR20080066408A (ko) 2007-01-12 2008-07-16 삼성전자주식회사 3차원 영상 처리 장치 및 방법
US9344362B2 (en) 2007-01-12 2016-05-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
US8135071B2 (en) 2007-01-16 2012-03-13 Cisco Technology, Inc. Breakpoint determining for hybrid variable length coding using relationship to neighboring blocks
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
MX2009012361A (es) 2007-05-16 2009-12-01 Thomson Licensing Aparato y metodo para codificar y descodificar señales.
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
EP2153670A4 (en) 2007-06-11 2011-03-09 Samsung Electronics Co Ltd METHOD AND DEVICE FOR GENERATING HEADLINE INFORMATION ON A STEREOSCOPIC IMAGE
WO2008156390A1 (en) 2007-06-20 2008-12-24 Telefonaktiebolaget Lm Ericsson (Publ) Method and arrangement for improved media session management
EP2174502A2 (en) 2007-06-26 2010-04-14 Nokia Corporation System and method for indicating temporal layer switching points
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
AU2008298602A1 (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
KR101446359B1 (ko) 2007-10-09 2014-10-01 삼성전자주식회사 이동 통신 시스템에서 맥 프로토콜 데이터 유닛의 생성과 분리 장치 및 방법
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
WO2009127961A1 (en) 2008-04-16 2009-10-22 Nokia Corporation Decoding order recovery in session multiplexing
US8855199B2 (en) 2008-04-21 2014-10-07 Nokia Corporation Method and device for video coding and decoding
EP2272210B1 (en) * 2008-04-28 2012-12-26 Apple Inc. Method and apparatus for spectrally efficient link adaptation using harq in ofdma systems
EP2286585A4 (en) 2008-05-07 2015-06-17 Digital Fountain Inc FAST CHANNEL CHANGE AND HIGH QUALITY CONTINUOUS FLOW BROADCAST PROTECTION ON A BROADCAST CHANNEL
WO2009140208A2 (en) 2008-05-12 2009-11-19 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 腾讯科技(深圳)有限公司 媒体文件的点播方法、系统和设备
US8370887B2 (en) 2008-05-30 2013-02-05 Microsoft Corporation Media streaming with enhanced seek operation
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
US20100169303A1 (en) 2008-12-31 2010-07-01 David Biderman Playlists for real-time or near real-time streaming
US8743906B2 (en) 2009-01-23 2014-06-03 Akamai Technologies, Inc. Scalable seamless digital video stream splicing
BRPI1007163A2 (pt) 2009-01-26 2018-09-25 Thomson Licensing compactação de quadro para codificação de vídeo
CN105376549B (zh) 2009-01-29 2017-08-11 杜比实验室特许公司 视频编码方法及解码视频信号的方法
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US8909806B2 (en) 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
JP2012523804A (ja) 2009-04-13 2012-10-04 リアルディー インコーポレイテッド 向上した解像度の立体ビデオのエンコード、デコード、および配信
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
WO2012037635A1 (en) 2009-09-02 2012-03-29 Nortel Networks Limited Mac packet data unit construction for wireless systems
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 中兴通讯股份有限公司 一种接入视频服务的方法及视频播放系统
CN102687518B (zh) 2009-12-11 2016-06-01 诺基亚技术有限公司 用于流媒体文件内表示的描述和定时的装置及方法
KR101624013B1 (ko) 2010-02-19 2016-05-24 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치
WO2011102791A1 (en) 2010-02-19 2011-08-25 Telefonaktiebolaget L M Ericsson (Publ) Method and arrangement for representation switching in http streaming
JP5071495B2 (ja) 2010-03-04 2012-11-14 ウシオ電機株式会社 光源装置
EP3783822A1 (en) 2010-03-11 2021-02-24 Electronics and Telecommunications Research Institute Method and apparatus for transceiving data in a mimo system
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding 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
US9456015B2 (en) 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups 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

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9240810B2 (en) 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
US9236885B2 (en) 2002-10-05 2016-01-12 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
US8887020B2 (en) 2003-10-06 2014-11-11 Digital Fountain, Inc. Error-correcting multi-stage code generator and decoder for communication systems having single transmitters or multiple transmitters
JP2012114929A (ja) * 2004-05-07 2012-06-14 Digital Fountain Inc ファイルダウンロードおよびストリーミングのシステム
US11477253B2 (en) 2006-06-09 2022-10-18 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9628536B2 (en) 2006-06-09 2017-04-18 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9237101B2 (en) 2007-09-12 2016-01-12 Digital Fountain, Inc. Generating and communicating source identification information to enable reliable communications
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
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
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
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
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
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
WO2005112250A3 (en) 2006-10-26
US20090031199A1 (en) 2009-01-29
WO2005112250A2 (en) 2005-11-24
KR101161193B1 (ko) 2012-07-02
KR20110122226A (ko) 2011-11-09
CN101019326B (zh) 2013-02-27
US9236887B2 (en) 2016-01-12
CN103124182A (zh) 2013-05-29
US9136878B2 (en) 2015-09-15
JP2007536834A (ja) 2007-12-13
EP2202888A1 (en) 2010-06-30
EP1743431A4 (en) 2007-05-02
EP1743431A2 (en) 2007-01-17
US20130067295A1 (en) 2013-03-14
CN103124182B (zh) 2017-05-10
KR101205758B1 (ko) 2012-12-03
CN101019326A (zh) 2007-08-15
KR20070008520A (ko) 2007-01-17
JP5485302B2 (ja) 2014-05-07
US7418651B2 (en) 2008-08-26
JP2012114929A (ja) 2012-06-14
US20050257106A1 (en) 2005-11-17

Similar Documents

Publication Publication Date Title
JP4971144B2 (ja) ファイルダウンロードおよびストリーミングのシステム
JP5329239B2 (ja) 通信システムのための多体ベース符号の生成器および復号化器
US9236976B2 (en) Multi stage code generator and decoder for communication systems
JP4546246B2 (ja) 連鎖的暗号化反応の系統的記号化および復号化
EP2467942A2 (en) Methods and apparatus employing fec codes with permanent inactivation of symbols for encoding and decoding processes

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080507

RD03 Notification of appointment of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7423

Effective date: 20090713

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20090727

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110322

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110705

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111005

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111013

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111107

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111114

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111205

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111212

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120105

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20120306

A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20120405

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20150413

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 4971144

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

S111 Request for change of ownership or part of ownership

Free format text: JAPANESE INTERMEDIATE CODE: R313113

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250