[go: up one dir, main page]

JP5027305B2 - 信頼できる通信を可能にするためのソース識別情報の生成および伝達 - Google Patents

信頼できる通信を可能にするためのソース識別情報の生成および伝達 Download PDF

Info

Publication number
JP5027305B2
JP5027305B2 JP2010525048A JP2010525048A JP5027305B2 JP 5027305 B2 JP5027305 B2 JP 5027305B2 JP 2010525048 A JP2010525048 A JP 2010525048A JP 2010525048 A JP2010525048 A JP 2010525048A JP 5027305 B2 JP5027305 B2 JP 5027305B2
Authority
JP
Japan
Prior art keywords
source
data
stream
identification data
source data
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Fee Related
Application number
JP2010525048A
Other languages
English (en)
Other versions
JP2010539816A (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 JP2010539816A publication Critical patent/JP2010539816A/ja
Application granted granted Critical
Publication of JP5027305B2 publication Critical patent/JP5027305B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L1/12Arrangements for detecting or preventing errors in the information received by using return channel
    • H04L1/16Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
    • H04L1/18Automatic repetition systems, e.g. Van Duuren systems
    • H04L1/1829Arrangements specially adapted for the receiver end
    • H04L1/1835Buffer management
    • H04L1/1841Resequencing
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L47/00Traffic control in data switching networks
    • H04L47/10Flow control; Congestion control
    • H04L47/11Identifying congestion
    • 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/0072Error control for data other than payload data, e.g. control data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L1/00Arrangements for detecting or preventing errors in the information received
    • H04L2001/0092Error control systems characterised by the topology of the transmission link
    • H04L2001/0093Point-to-multipoint

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Detection And Prevention Of Errors In Transmission (AREA)
  • Communication Control (AREA)
  • Information Transfer Between Computers (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

優先権
本出願は、2007年9月12日に出願された米国特許出願第60/971,884号、および2008年8月29日に出願された米国特許出願第61/093,277号の非仮出願の、米国特許法第119条(e)項に基づく利益を主張する。これらの出願のすべては、すべての目的のために全文が参照により組み込まれる。
相互参照
以下の参考文献は、本明細書に含まれ、すべての目的のために参照により組み込まれる。
Lubyに発行された「Information Additive Code Generator and Decoder for Communication Systems」と題する米国特許第6,307,487号(以下「Luby I」)。
Lubyらの「File Download and Streaming System」と題する米国特許第7,418,651号(以下「Luby II」)。
Shokrollahiらに発行された「Multi Stage Code Generator and Decoder for Communication Systems」と題する米国特許第7,068,729号(以下「Shokrollahi I」)。
2006年2月16日に公開されたLubyらの「Method and Apparatus for Fast Encoding of Data Symbols According to Half-Weight Codes」と題する米国公開特許出願第2006/0036930号(以下「Luby III」)。
Shokrollahiらに発行された「Systems and Processes for Decoding Chain Reaction Codes Through Inactivation」と題する米国特許第6,856,263号(以下「Shokrollahi II」)。
2007年12月27日に公開されたWatsonらの「Code Generator and Decoder for Communications Systems Operating Using Hybrid Codes to Allow for Multiple Efficient Users of the Communications Systems」と題する米国公開特許出願第2007/0300127号(以下「Watson」)。
2007年7月24日にJens Rasmussenらに発行された「System and Method for Reliably Communicating the Content of a Live Data Stream」と題する米国特許第7,249,291号(以下「Rasmussen」)。
本発明は、通信システム中でデータを符号化および復号することに関し、より詳細には、通信における誤りおよびギャップをなくすようにデータを符号化および復号する通信システムに関する。
通信チャネルを介した送信側と受信者との間のファイルおよびストリームの送信は、多くの文献の主題であった。好ましくは、受信者は、ある程度の確度でチャネルを介して送信側によって送信されたデータの正確なコピーを受信することを望む。チャネルが、物理的に最も実現可能なシステムを特徴づける完全な忠実度を有していない場合、1つの懸念は、送信中に損失または破損したデータをどのように処理するかということである。受信者は、送信されたデータがいつ破損したかを常に認識することができるわけではないので、損失したデータ(消去)は、破損したデータ(誤り)よりも、しばしば処理しやすい。
消去および/または誤りを訂正するために多数の誤り訂正コードが開発されてきた。一般に、使用される特定のコードは、データが送信されているチャネルの不忠実度と、送信されているデータの性質とに関する何らかの情報に基づいて選択される。たとえば、チャネルが長い周期の不忠実度を有することが知られている場合、バースト誤りコードがその適用例に最も適しているだろう。ごく短い、まれにしか起こらない誤りが予想される場合、単純なパリティーコードが最良であろう。
信頼できるデータ配信を行うための一般的に使用される別の技法は、データ再送信の使用である。たとえば、よく知られているTCP/IPプロトコルは、損失または消失したパケットのパケット再送信を使用して、データの信頼できる配信を保証する。別の例は、TCP/IPの上に構築され、TCP/IPプロトコルの信頼性を使用して、信頼できるデータ配信を行うHTTPプロトコルである。受信機において損失または消失したパケットに対処する方法として、RTPプロトコルなどの他のプロトコルを、再送信を使用するように拡張することも提案されてきた。
ストリーミングアプリケーションの改善のために提案されてきた別の技法は、1つのチャネル中でストリームの初期データを受信機に送信し、次いで、第2のチャネル中で主データストリームを受信機に送信することに移行することである。たとえば、Rasmussenでは、そのような方法を提案している。別の例として、受信機がビデオまたはマルチメディアストリームのプレイアウトを迅速に開始するのに十分なデータを有するように、初期データをユニキャスト接続を介して受信機に送信することができ、次いで、受信機は、ストリームのさらなるデータを受信するように、マルチキャスト接続に切り替わることができる。
本明細書で使用する「通信」は、ある位置から別の位置に送信されるデータ、または、ある時点で記憶され、別の時点で使用されるデータなど、空間および/または時間を介したデータ送信を指す。チャネルは、送信側と受信機とを分離するチャネルである。空間的なチャネルは、送信側と受信機との間のワイヤ、ネットワーク、ファイバ、ワイヤレス媒体などとすることができる。時間的なチャネルは、データストレージデバイスとすることができる。実現可能なチャネルでは、送信側によって送信または記憶されたデータが、受信者によって受信または読み取られたときと異なる可能性がゼロでないことがしばしばあり、それらの差異は、チャネル中にもたらされる誤りに起因するものであろう。
送信機および受信機が、通信に必要な計算能力および電力のすべてを有しているとき、データ送信は簡単であり、送信機と受信機との間のチャネルは、比較的誤りのない通信を可能にするのに十分信頼できる。チャネルが劣悪な環境にあるとき、データ送信はより困難になるか、あるいは送信機および/または受信機が能力を制限される。いくつかの適用例では、連続的な誤りのない通信が、長い時間期間にわたって必要とされる。たとえば、デジタルテレビジョンシステムでは、送信が一度に何時間もの間、誤りなく受信されることが期待される。これらの場合、データ送信の問題は、比較的低いレベルの誤りの状態においてさえ困難である。
データ通信が困難である別のシナリオは、単一の送信が、大幅に異なるデータ損失状態を経験することがある複数の受信機に向けられている場合である。さらに、1つの所与の受信機が経験する状態は、大幅に異なるか、または時間がたつにつれて比較的一定になることがある。
データ損失(誤りおよび/または消去)の処理に対する1つの解決策は、受信機が送信消去および誤りを訂正することができるように送信機においてデータを符号化する、前方誤り訂正(FEC)技法の使用である。実行可能な場合、受信機から送信機への逆方向チャネルは、受信機がこれらの誤りに関する情報を送信機に中継できるようにし、次いで、送信機は、それに応じてその送信プロセスを調整することができる。しかしながら、逆方向チャネルは、利用可能または実行可能でないか、あるいは限られた容量でしか利用可能でないことがある。たとえば、送信機が多数の受信機に送信している場合、送信機は、すべての受信機からの逆方向チャネルを維持することが不可能であろう。別の例では、通信チャネルはストレージ媒体とすることができる。
たとえば、データは年代順に送信されることがあり、因果律は、誤りが起こる前に誤りを修正することができる逆方向チャネルを妨げる。したがって、しばしば逆方向チャネルなしに、または限られた容量の逆方向チャネルで通信プロトコルを設計する必要があり、したがって、送信機は、それらのチャネル状態の事前知識なしに、大幅に異なるチャネル状態を処理しなければならない。一例は、逆方向通信が行われないか、あるいは行われるとしても、ごく限られているかまたは費用のかかる、ブロードキャストまたはマルチキャストチャネルがある。そのような状況が関係する別の例は、FECを使用してデータを符号化して記憶し、次いでその後の時点で、場合によってはFEC復号を使用して、データを回復する、ストレージ適用例である。
別の解決策は、受信機がどのパケットが受信されないかを理解し、次いでそれらの消失したパケットを再送信するように要求を送信側に送信することに基づく再送信に基づく。消失したパケットの識別情報は、しばしば、パケット内で搬送されるシーケンス番号に基づく。そのようなプロトコルの例には、TCP/IP、NORM、再送信を用いたRTPなどがある。
別の解決策は、FECと再送信との組合せに基づく。この場合、FECは事前に送信され、次いで、たとえば、受信機は、FEC復号器によって回復できるものよりも多くを損失した場合のみ、元のソースパケットを回復するのに十分なパケットをFEC復号器に与えるために、パケットの再送信、または追加のFECパケットの送信を要求する。別の例として、FECが最初に送信されず、消失したパケットがある場合のみ、受信機は、元のソースパケットを回復するために使用できるFECパケットとすることができる、追加のパケットを要求することになる。たとえば、これは、マルチキャストを介して元のソースストリームを送信する場合に注目すべき解決策になり、その場合、要求されたパケットはまた、同じストリームまたは異なるマルチキャストストリームのいずれかで送信される。たとえば、受信機によって損失するパケットの数が異なることがあり、その場合、要求されたパケットを送信している送信側は、たとえば、すべての受信機によって要求されたFECパケットの最大数を送信し、それにより、すべての受信機は、それらの個々のパケット損失パターンとは無関係に元のソースを回復できるようになる。
パケットを損失する可能性があるチャネルを介したデータトランスポートに使用されるパケットプロトコルの場合、パケットネットワークを介して送信すべきデータのファイル、ストリーム、または他のブロックを(すべて等しいサイズであるか、あるいはブロックサイズまたは他のファクタに応じてサイズが異なる)ソースシンボルに分割する。FECコードを使用してソースシンボルから符号化シンボルを生成し、符号化シンボルをパケット中に配置し、送信する。シンボルが実際にビットストリームに分解されるか否かにかかわらず、シンボルの「サイズ」をビットで測定することができ、シンボルが2個のシンボルのアルファベットから選択されたとき、シンボルはMビットのサイズを有する。そのようなパケットベースの通信システムでは、パケット指向消去FECコーディング方式が好適であろう。
ファイル送信は、ネットワークを介して送信されたデータの消去および/または他の破損にもかかわらず、意図された受信者が元のファイルの正確なコピーを回復できる場合、信頼できると呼ばれる。ストリーム送信は、ネットワーク内の消去および/または破損にもかかわらず、意図された受信者がストリームの各部分の正確なコピーを適時に回復できる場合、信頼できると呼ばれる。ファイル送信とストリーム送信の両方は、むしろ、ファイルまたはストリームのいくつかの部分が回復可能でないか、または、ストリーミングの場合、ストリームのいくつかの部分が回復可能であるが、適時には回復可能でないという意味で、いくぶん信頼できるが、完全に信頼できるというわけではない。いくつかの制約条件に応じてできるだけ高い信頼性を提供することは、しばしば目的であり、制約の例としては、ストリーミング適用例のための適時の配信、または解決策が動作すると予想されるネットワーク状態のタイプがある。
パケット損失は、散発的な輻輳によりルータ中のバッファ機構がその容量に達し、着信パケットを削除してしまうために、しばしば発生する。パケット損失の他の原因には、弱い信号、断続的な信号、および雑音干渉があり、破損したパケットは廃棄される。トランスポート中の消去に対する保護は、多くの研究の主題であった。
単一の送信が2つ以上の受信機に向けられ、受信機によって経験する状態が大幅に異なるシステムでは、送信は、しばしば送信機と任意の受信機との間の状態のある組のために構成され、より悪い状態にある受信機は、送信を確実に受信することができない。
そのようなシナリオにおいて損失したパケットの優れた回復を行う消去コードが知られている。たとえば、リードソロモンコードがよく知られており、この目的に適合できる。しかしながら、リードソロモンコードの知られている欠点は、それらの計算の複雑さが比較的大きいことである。LT(商標)連鎖反応コードおよびRaptor(商標)マルチステージ連鎖反応(「MSCR」)コードを含む、連鎖反応コードは、損失したパケットの優れた回復を行い、異なるチャネル状態に大いに適合可能である。たとえば、連鎖反応コードの態様が記載されているLuby I、およびマルチステージ連鎖反応コードの態様が記載されているShokrollahi Iを参照されたい。本明細書では、「連鎖反応コード」という用語は、別段に規定がない限り、連鎖反応コードまたはマルチステージ連鎖反応コードを含むものと理解されたい。
再送信プロトコルも、損失したパケットを回復する良い方法であることが知られている。TCP/IP、NORM、UDPおよびRTPベースの再送信プロトコルはすべて、そのような再送信プロトコルの例である。加えて、消去コードプロトコルと再送信プロトコルとの組合せを使用することは、損失したパケットを回復するのに極めて有用である。再送信プロトコルは、受信機が、受信機に送信されるべき特定のパケットまたはパケットの数を要求し、送信側が、それに応答して、特定のパケットまたはパケットの数を、その受信機に、または受信機のグループに送信することができるプロトコルを含む。
いくつかの通信システムは、同じストリーム中の他のソースパケットに対するソースパケットの位置またはシーケンスを識別するのに使用可能な情報を含む、RTPなど、トランスポートプロトコルを使用する。各パケットのシーケンス情報を提供することによって、受信機は、ネットワーク順序からはずれて受信されたパケットを検出し、訂正することができる。受信機はまた、パケットが損失したときを検出することができ、DVB−IPIの技法(たとえば、Watson中の記述を参照されたい)など、アプリケーション層FEC技法と組み合わせると、受信機は、損失したパケットを回復し、ネットワーク信頼性の欠陥を効果的にマスキングすることができる。DVBの詳細については、DVB−IPI規格の参考文献「DVB BlueBook A086r4 (03/07)/ETSI Technical Specification 102 034 v1.3.1」から知られている。また、DVB−IPI規格は、URL:http://www.dvb.org/technology/standards/a086r4.dTS102034.V1.3.1.pdfで入手可能である。
多くの展開された通信システムは、いかなる形式のタイミングまたはシーケンス情報をも含まないトランスポートレベルプロトコルを使用する。たとえば、IPTVネットワークでは、「ローUDP」を介してMPEG2トランスポートストリームパケットを配信することが慣例である。受信機にとって利用可能な唯一のシーケンス情報は、アクセスが難しいか、または信頼できず、概してトランスポートレベルで利用可能でないオーディオおよびビデオエレメンタリストリーム中に埋め込まれる。したがって、受信機が、パケットがネットワーク順序からはずれて受信されたときを認識できるようにするか、または消失したパケットを識別できるようにするローUDPストリームを用いた、トランスポートレベルにおける固有の機構がない。アプリケーション層FEC(「AL−FEC」)など、よく知られている機構を使用して、損失したパケットを効率的に回復することができるが、ソースストリームパケット上にトランスポートレベルシーケンス情報がないので、そのような回復技法の直接の適用範囲が限定される。これらの同じ問題は、再送信解決策、および再送信とAL−FEC解決策との組合せに当てはまる。したがって、これは、いくつかの既存の手法の一般的な問題である。
いくつかの通信システムの別の問題は、部分同士が相互に関係することである。場合によっては、展開後に通信システムの信頼性を高めることが必要であるか、または望ましいことがある。しかしながら、ネットワーク信頼性の改善が必要であるが、ネットワーク中のすべての受信デバイスを一度に交換またはアップグレードすることは、一般に実行可能でないか、またはまったく実行可能でない。たとえば、ネットワーク信頼性の劣化、トラフィック負荷の増大、ネットワークの拡大および/または変更などにより、実際のネットワークパケット損失が最初の予定よりも大きくなること、またはサービス品質要件は、競合するサービスに合うように増加する必要があることが判明するであろうが、通信システムのすべてのノードに新しい受信機を一度に用意すること、または新しい受信機を徐々に分配し、新しい受信機が到着するまで、いくつかの受信局を使用不能にしておくことは、実際的でないであろう。
レガシーデバイスが、アップグレードされた受信機または新しい受信機によって使用される、AL−FECまたは再送信、あるいはAL−FECと再送信との組合せなどのプロトコル拡張の影響を受けないように、同じトランスポートレベルプロトコルを使用してソースパケットを配信し続けることが必要である。さらに、レガシーデバイスに配信されるソースパケットがバースト損失を受けやすくならないように、同じソースパケットタイミング分配またはパケット間タイミングを維持することが必要である。いくつかの通信システムでは、リペアパケットを関連するソースパケットの直後に配信できるようにするために、ソースブロック内のソースパケットをより小さいパケット間ギャップで送信することがあるが、そのような技法は、バースト損失へのソースストリームの露出を増加させるので、レガシーデバイスのトランスポート有効性を劣化させることになる。
可能な最良のサービスを最小のコストで配信するために、通信システムは、競合するリソース制約を同時に均衡させなければならない。ネットワーク帯域幅は重要なリソース制約である。送信デバイスおよび受信デバイスは、信頼できるサービスをサポートする際にネットワーク帯域幅を効率的に使用できるようにする必要がある。受信デバイス上の利用可能なCPU処理は一般に厳しい制限であり、いかなるトランスポート信頼性拡張方法も、適当な量の計算労力しか必要としてはならないことを意味する。加えて、特にストリーミングメディアの場合、エンドユーザがシステム応答性の低減を知覚しないように、信頼できるトランスポート方法に関連する増分待ち時間を制限することもしばしば必要である。
本発明の一実施形態による、ソースストリームから、ソース識別データまたは情報と呼ばれる、ソース識別情報またはデータを生成する方法について説明する。本方法は、元のソースストリームに対して動作し、他のソースパケットに対するソースパケットの位置を識別するため、および損失または破損したソースパケットを識別するために受信デバイスによって使用される比較的コンパクトなソース識別情報またはデータを生成することができる。ソース識別情報またはデータの生成方法により、ソースパケット識別情報をコンパクトに表現することができるようになり、それにより、比較的少ない量のネットワーク帯域幅を使用してソースパケットのブロックのソース識別情報を配信することが可能になる。ソース識別情報を導出する計算負荷は小さい。
損失または破損したソースパケットの回復を可能にするために、ソース識別データを前方誤り訂正(「FEC」)技法と組み合わせることができる。損失または破損したソースパケットの回復を可能にするために、ソース識別データを、再送信技法、およびFEC技法と再送信技法との組合せと組み合わせることもできる。ソース識別データはまた、いくつかの送信されたパケットが損失し、破損し、または再順序付けされたときでも、ソースパケットのシーケンスがどの順序で送信側から受信機に送信されるかをその受信機において識別する技法とともに使用できる。
本発明の別の実施形態では、ソースパケットの識別情報または相対位置を受信デバイスにおいて判断することができ、拡張によって、受信したソースパケットの不在を導出することができるように、ソース識別データの信頼できる配信を可能にする方法および装置が提供されるであろう。ソース識別の信頼できる配信を行うために、ソース識別を搬送するパケットを、バースト損失または周期的な損失パターンへの露出を最小限に抑える方法で送信することができる。ソース識別データがソースパケットの内容から導出されるので、2つ以上のソースパケットが同じソース識別データを共有することができ、これらの方法の変形形態は、受信機においてそのようなソース識別の衝突に対して保護することができる。
本発明の別の実施形態によれば、通信チャネルを介してデータを送信する方法であって、元の変更されていないソースストリームを送信するステップと、元の変更されていないソースストリーム中の損失または破損したパケットを効率的に回復するために使用できる追加のストリームとして、FECリペアデータおよびソース識別データを送信するステップとを備える方法が提供される。
本発明の別の実施形態によれば、通信チャネルを介してデータを送信する方法であって、元の変更されていないソースストリームを送信するステップと、どのデータが受信データから消失または破損したかを識別し、再送信を要求するために使用できる追加のストリームとして、ソース識別データを送信するステップとを備える方法が提供される。本実施形態のさらなる拡張では、ソース識別情報を使用して、再送信されたデータをも識別する。本実施形態のさらなる拡張では、ソース識別情報を使用して、順序からはずれたデータ受信を識別し、再順序付けする。さらなる拡張では、ソース識別情報を使用して、FECを用いて元の変更されていないソースストリーム中の損失または破損したデータを回復するとともに、どのデータが元のソースストリームから消失または破損したかを識別し、消失または破損したデータの再送信、または変更されていないソースストリーム中のデータを回復するために使用できる追加のリペアデータの送信を要求する。本実施形態のさらなる拡張では、元の変更されていないソースストリームとともに第1のリペアストリームを送信する。本実施形態のさらなる拡張では、再送信の要求に応答して第2のリペアストリームを送信する。本実施形態のさらなる拡張では、様々なストリームの1つまたは複数をキャッシュする。
本発明の別の実施形態によれば、ソース識別情報は、データの変更されていないソースストリーム内のどのデータブロックにソースパケットが関連付けられているのかを識別する。この場合、変更されていない各ソースパケットの一意の識別子を生成することができない、すなわち、ソース識別情報は、ソースパケットが関連付けられているデータブロックを識別するために使用できるが、ブロック内のソースパケットを互いと区別することができない。
本発明の別の実施形態によれば、通信チャネルを介して送信されるデータを受信する方法であって、(1)非FEC対応受信機の場合、または、0個以上のFEC対応受信機の場合、元の変更されていないソースストリームを受信するステップと、(2)1つまたは複数のFEC対応受信機の場合、元の変更されていないソースストリーム、およびFECリペアデータとソース識別データとの追加のストリームの一部または全部を受信し、元のソースストリームから損失したパケットを効率的に回復するためにこれを使用するステップとを備える方法が提供される。
本発明の別の実施形態によれば、通信チャネルを介して送信されるデータを受信する方法であって、(1)非再送信対応受信機の場合、または、0個以上の再送信対応受信機の場合、元の変更されていないソースストリームを受信するステップと、(2)1つまたは複数の再送信対応受信機の場合、元の変更されていないソースストリーム、および再送信リペアデータとソース識別データとの追加のストリームの一部または全部を受信し、元のソースストリームから損失したパケットを効率的に回復するためにこれを使用するステップとを備える方法が提供される。
本発明の別の実施形態によれば、通信チャネルを介して送信されるデータを受信する方法であって、(1)非FECおよび非再送信対応受信機の場合、または、0個以上のFECおよび再送信対応受信機の場合、元の変更されていないソースストリームを受信するステップと、(2)1つまたは複数のFECおよび再送信対応受信機の場合、元の変更されていないソースストリーム、ならびにFECおよび再送信リペアデータの追加のストリームの一部または全部、ならびにソース識別データを受信し、元のソースストリームから損失したパケットを効率的に回復するためにこれを使用するステップと、を備える方法が提供される。
本発明の別の実施形態によれば、通信チャネルを介して送信されるデータを受信する方法であって、(1)FEC対応または再送信対応受信機の場合、受信されている特定のストリームが、関連する利用可能なFECリペアデータまたは再送信データを有するかどうかを判断するステップと、(2)FECリペアデータまたは再送信データが利用可能な場合、必要に応じてFECおよび再送信リペアデータの追加のストリームの一部または全部、ならびにソース識別データを受信し、元のソースストリームから損失したパケットを効率的に回復するためにこれを使用するステップと、を備える方法が提供される。
本発明の別の実施形態によれば、通信チャネルを介してデータを送信する方法であって、元の変更されていないソースストリームを送信するステップと、元の変更されていないソースストリーム中の損失したパケットを効率的に回復するために使用できる関係するデータの追加のストリームを送信するステップとを備える方法が提供される。
本開示を検討すれば当業者には明らかであるように、本明細書で説明する方法は上記の多くの変形形態に当然拡張でき、FECリペアデータの複数の層を送信すること、ソースストリームを1つのIPアドレスに、および追加のストリームを他のIPアドレスに送信すること、再送信データを受信機に個々に送信すること、同じ再送信データをブロードキャストまたはマルチキャストを介して複数の受信機に送信すること、FECリペアデータと再送信データとの組合せを受信機に送信すること、FECリペアデータを受信機の1つのセットに送信し、再送信を受信機の第2のセットに送信すること、同じIPアドレスであるが、パケット内で異なるポート番号を使用することによって区別されるIPアドレスにすべてのストリームを送信すること、ストリームのいくつかを受信機のいくつかの部分にのみ送信し、他の受信機に送信しないことなどを含む。
本明細書の残りの部分を参照すれば、本明細書で開示する実施形態の性質および利点をより良く理解することができる。
FECリペア技法とともに使用する本明細書に記載のソース識別技法の1つまたは複数を生成し、使用することができる通信システムのブロック図。 レガシーセットトップボックスとFEC対応セットトップボックスの両方をサポートする通信システムのブロック図。 リペアが特定のストリームに利用可能か否かを判断するFEC対応受信機の状態図。 可能なFEC対応受信機の流れ図。 1つのソース識別データ方法の例を示す流れ図。 1つのソース識別データ方法の例を示すブロック図。 いくつかのソース識別データの構成の例を示すブロック図。 受信機がソース識別データを使用して、変更されていない受信したソースパケットの識別情報を計算する方法を示す流れ図。 いくつかのソース識別データの構成の例を示すブロック図。 ソース識別データの構成のいくつかのさらなる詳細の例を示すブロック図。 可能なソース識別データフォーマットの例を示すブロック図。 ソース識別データの構成中で隣接するソースブロックとのソースブロック境界および重複の例を示すブロック図。 別の可能なソース識別データフォーマットの例を示すブロック図。 2つの同じパケットが同じ値にハッシュしている例を示すブロック図。 同じパケットを処理することができるシーケンスと位置との対応を示すブロック図。 同じでないパケットが同じ値にハッシュする例を示すブロック図。 ソース識別データをFEC保護する方法を示すブロック図。 変更されていないソースパケットからFECリペアシンボルを生成する方法を示すブロック図。 FECリペアデータとソース識別データの両方を備えるパケットの可能なフォーマットを示すブロック図。 パケットで搬送されるソース識別データからのソース識別情報の可能な部分再構成を示すブロック図。 受信機がソース識別情報を使用して、受信したソースデータを処理する方法の例を示す流れ図。 2つのソースブロックにわたる受信機における受信タイムアウト中の損失したパケットを示すブロック図。 ソースブロック中で早期に発生する受信機における受信タイムアウト中の損失したパケットを示すブロック図。 受信機における受信中のソースブロック内の遅延パケットを示すブロック図。 受信機における受信中のソースブロック間の遅延パケットを示すブロック図。 拡張ブロックを越える受信機における受信中の遅延パケットを示すブロック図。 図23Aおよび図23Bの例とともに拡張ブロック内の受信機における重複パケット受信を示すブロック図。 図23Aおよび図23Bの例とともに拡張ブロック内の受信機における重複パケット受信を示すブロック図。 拡張ブロックを越えた受信機における重複パケット受信を示すブロック図。 FECリペアデータおよびソース識別データを用いたストリームの保護のいくつかの例示的な結果を示す表。 FECリペアデータおよびソース識別データおよび再送信リペアデータを用いてストリームを保護する例を示すブロック図。
本明細書の残りの部分および添付の図面を参照すれば、本明細書で開示する本発明の性質および利点をさらに理解することができる。
本明細書で説明する様々な機能ブロックはハードウェアおよび/またはソフトウェアの組合せによって実装でき、特定の実装形態では、ブロックの一部の機能の一部または全部を組み合わせることができることを理解されたい。同様に、本明細書で説明する様々な方法はハードウェアおよび/またはソフトウェアの組合せによって実装できることも理解されたい。したがって、「次いでステップXを実行する」のように記述される場合がある計算ステップを実施する場合、そのような記述は、典型的には通信プロセスの一部として、人間または手動による相互作用を伴わずに、それらのステップを実施する電子ハードウェアおよび/またはソフトウェアなどを含むことを理解されたい。
本明細書で説明するいくつかの実施形態では、符号化されるデータは「ソースブロック」にセグメント化され、各ブロックは、「ソースパケット」として知られるいくつかのデータのパケットを備え、ブロック中のソースパケットの数は、場合によってはブロック間で異なる。ソースブロックごとに、いくつかの「FECリペア」パケットが符号器によって生成され、その数は、同じく場合によってはブロック間で異なる。「ソースパケット」および「FECリペア」、(または「リペア」)パケットは、ソースパケットと、ソースパケットの数と同数またはそれ以上のリペアパケットとの組合せを受信する受信機が、すべてのソースパケットを回復する0ではないある確率を有するという特徴を有する。
ソース識別データのタイプおよび使用法
本明細書のいくつかの実施形態では、ソース識別データは、他のソースシンボルに対する(以下より一般的にソースデータ単位と呼ぶ、パケットまたは他の搬送単位で送信できる)ソースシンボルの位置、ならびに損失したソースシンボルの位置を受信デバイスにおいて識別することができるデータを指すことがある。本明細書で使用するソースシンボルマップまたはソースシステムマップ(いずれも「SSM」と呼ぶことがある)は、ソース識別データまたは情報の一形式である。本開示では、ソースシンボルマップおよびソースシステムマップはソース識別データと互換的に使用される。本明細書のいくつかの実施形態では、ソース識別データは、受信パケットと損失したパケットの両方の位置を備える、他のパケットに対するパケットのストリーム中の送信パケットの位置を受信デバイスにおいて識別することができるデータを指すことがある。本明細書のいくつかの実施形態では、ソース識別データは、受信機から再送信を要求されたパケットまたはシンボルまたは他のデータ単位を識別するために送信側で使用されるデータを指すことがある。ソース識別データは、ソースおよびリペアのシンボルまたはパケットの組合せから損失したシンボルまたはパケットまたは他のデータ単位を回復するために受信機において使用できる。ソース識別データは、再送信を要求するために、どのシンボルまたはパケットまたは他のデータ単位が損失しているかを識別するために使用できる。ソース識別データはまた、他のパケットまたはシンボルに対する、パケットまたはシンボルの元の送信順序を受信機において判断するために使用できる。ソース識別データは、単一パーツとして考えるか、サブパーツに分割するか、またはストリームと考えることができるが、ソース識別データの単一パーツ、サブパーツ、またはストリームは、ソースデータ単位の全部または一部を識別するために使用でき、たとえば、ソース識別データの一部はソースブロック内のソースデータ単位を識別するために使用できる。当業者なら認識されるように、本明細書では列挙しないが、本明細書で開示する方法およびプロセスを使用して容易に推測できる、ソース識別データの多くの他の可能な使用法がある。ソース識別データの可能な様々なタイプおよび使用法は以下を含むが、これらに限定されない。
(1)知られているソースデータ単位の識別ラベルを判断する方法−ソース識別データから知られている各ソースデータ単位の短い識別ラベルを判断する能力。1つの例示的な使用法は、受信機が、受信したソースデータ単位のラベルを送信側に送信して、それにより受信されなかったラベルに関連するソースデータ単位を送信側から受信機に送信できるようにすることである。この方法の変形態では、可能なソースデータ単位、たとえば、特定のソースブロックに属するソースデータ単位、または指定の時間期間内に送信されたソースデータ単位の制限されたセットの識別データを判断することができる。
(2)すべてのソースデータ単位の識別データを判断する方法−ソース識別データから、ソースデータ単位が知られているか知られていないかにかかわらずすべてのソースデータ単位の短い識別ラベルを判断する能力。1つの例示的な使用法は、受信機が、消失したソースデータ単位のラベルを送信側に送信して、それにより受信したラベルに関連するソースデータ単位を送信側から受信機に送信できるようにすることである。この方法の変形態では、可能なソースデータ単位、たとえば、特定のソースブロックに属するソースデータ単位、または指定の時間期間内に送信されたソースデータ単位の制限されたセットの識別データを判断することができる。
(3)配置判断方法−ソースデータ単位のすべての順序付けに関して、知られているソースデータ単位と知られていないソースデータ単位の両方に対して各ソースデータ単位の位置を判断する能力であり、この順序付けは、ソース識別データによって判断されるが、データ単位の送信順序と異なっていても、あるいはストリームまたはファイル内のソースデータ単位の順序と異なっていてもよい。1つの例示的な使用法は、送信側および受信機がこの情報を使用して、FEC符号化およびFEC復号のために、ソースブロック内のどこにソースデータ単位を配置すべきかを判断できるようにすることである。この方法の変形態では、可能なソースデータ単位、たとえば、特定のソースブロックに属するソースデータ単位、または指定の時間期間内に送信されたソースデータ単位の制限されたセットの位置を判断することができる。
(4)シーケンシング判断方法−ソースデータ単位のすべての(ファイル中のソースデータ単位の順序、またはオーディオビデオストリーム中のデータの順序などの)送信順序シーケンスまたは他のソース判断順序シーケンスに関して、知られているソースデータ単位と知られていないソースデータ単位の両方に対して各ソースデータ単位の位置をソース識別データから判断する能力。1つの例示的な使用法は、受信機がこの順序付けを使用して、データ単位をどんな順序でアプリケーションに送出すべきか、たとえば、データ単位をどんな順序でファイルに書き込むべきか、または媒体ストリームのデータ単位をどんな順序でメディアプレーヤに送信すべきかを判断できるようにすることである。この方法の変形態では、可能なソースデータ単位、たとえば、特定のソースブロックに属するソースデータ単位、または指定の時間期間内に送信されたソースデータ単位の制限されたセットの位置を判断することができる。
配置判断方法をFEC方法とともに使用するとき、ソースブロック内でのソースシンボルの順序付けは、配置判断方法からの位置に従うことができ、この場合、ソース識別方法は、FEC符号化および復号の方法の動作の仕方と相互作用する。一方、シーケンシング判断方法をFEC方法とともに使用するとき、ソースブロック内でのソースシンボルの順序付けはシーケンシングに従うことができ、シーケンシングは一般にシーケンシング判断方法によって規定されないので、この場合、ソース識別方法は、FEC符号化および復号の方法の動作の仕方とはほとんど無関係とすることができる。場合によっては、配置判断方法とシーケンシング判断方法との組合せであるソース識別方法を使用することができ、たとえば、何らかの最初のソース識別データが存在することができ、この最初のソース識別データを使用してソースブロック内のソースシンボルの位置を判断し、次いでFEC復号を実施して位置に従ってソースシンボルを回復し、その場合、そのソースブロックの一部である何らかの追加のソース識別データが存在することができ、この追加のソース識別データを使用して、回復されたソースシンボルのシーケンシングを判断して、アプリケーションに送出する。
配置判断方法を再送信方法とともに使用するとき、受信機によって再送信を要求されたソースパケットをそれらの位置によって識別することができ、たとえば、受信機は、送信側に再送信を要求されたソースパケットの位置を送信することができる。これらの場合、シーケンシング順序は位置順序と異なってよいので、送信側は、シーケンス順序に従って再送信パケットを送信し、受信機は、損失していないソースパケットの受信の元の順序と再送信されたソースパケットの受信の順序とに基づいてシーケンシングを判断することができる。シーケンシング判断方法を再送信方法とともに使用するとき、受信機によって再送信を要求されたソースパケットをそれらのシーケンシングによって識別することができ、たとえば、受信機は、送信側に再送信を要求されたソースパケットのシーケンス番号を送信することができる。場合によっては、配置判断方法とシーケンシング判断方法との組合せであるソース識別方法を使用することができ、たとえば、何らかの最初のソース識別データが存在することができ、この最初のソース識別データを使用して、ソースパケットの元の送信中に送信されたソースブロック内の位置を判断し、その場合、再送信中に送信された何らかの追加のソース識別データが存在することができ、この追加のソース識別データを使用して、そのソースパケットのシーケンシングを判断して、アプリケーションに送出する(たとえば、再送信されたソースパケットのシーケンス番号)。
当業者なら認識されるように、上記には多くの変形態が存在する。たとえば、ソース識別方法をFEC方法と再送信方法との組合せとともに使用することができ、その場合、再送信の要求は、特定のソースパケットに対して、特定のリペアパケットに対して、または特定のリペアパケットに対してではなくリペアパケットの指定された数に対してのものとすることができる。
ソース識別方法をFEC方法とともに使用する例
図1は、FECリペア方法とともに使用する本明細書に記載のソース識別技法を生成し、使用することができる通信システムのブロック図である。
通信システム100では、入力ストリームまたはファイル110がソース識別情報生成器120に供給される。ソース識別情報生成器120は、パケットまたはシンボルのストリーム内でのソースパケットまたはシンボルの相対位置に関する情報を含むソース識別データを生成する。すべてのソースシンボルまたはパケットは、一般に通信システム100を使用することによって決定される同じサイズを有することができ、あるいはシンボルサイズまたはパケットサイズは、使用ごとに異なるまたはストリーム内で異なることができる。ソース識別データの生成はソースシンボルサイズまたはパケットサイズとは無関係とすることができる。
入力ストリームまたはファイル110はFEC符号器130に供給できる。いくつかの実施形態では、FEC符号器130はシステマティックFEC符号化を実施し、このシステマティックFEC符号化は、入力ソースシンボルおよびそれらの位置の1つまたは複数に基づいてFECリペアシンボルを生成し、多くの場合、送信のためにこれらのFECリペアシンボルをリペアパケット中に配置する。
通信チャネルを介した送信のために使用される入力ストリームまたはファイル110から構築されたソースパケットが存在することができ、これらのソースパケットの構築はソースシンボルサイズとは無関係とすることができることに注目すべきである。ソースパケットとソースシンボルとの間に1対1の写像があっても、なくてもよい。ソースパケットは可変長であっても、なくてもよい。
入力ストリームまたはファイル110からのソースパケット、ソース識別情報生成器120からのソース識別データ、およびFEC符号器130からのFECリペアシンボルは、送信モジュール140に供給される。送信モジュール140は、ソース識別データおよびFECリペアシンボルをパケットでチャネル145に送信することができ、これらのソース識別データおよびFECリペアシンボルは、このプロセス中にパケット中で組み合わせても、組み合わせなくてもよい。これらのパケットはソースパケットとともにチャネル145を介して送信される。
チャネル145は消去チャネルであってよいが、それは通信システム100が適切に動作するための要件ではない。一般に、元のソースパケットは、他のパケットから論理的に別個のデータストリームとして送信される。論理的に別個のデータストリームの例には、異なるマルチキャストグループによって送信されるストリーム、または異なるポートに送信されるストリームがあるが、これらに限定されない。チャネル145に送信されたデータストリームは、受信モジュール150および155が受信することができる。受信モジュール150はFEC復号器と協働するものであるが、受信モジュール155は、FEC復号を含まないことがあるレガシーデバイスである。通信システム100は、レガシー受信モジュール155が、ソースパケットのみを受信するように、あるいはパケットの組合せを受信するがソースパケット以外のパケットをフィルタ処理するように設計できることに留意されたい。
レガシー受信モジュール155は、チャネル145からのソースパケットを認識し処理できるようにすることが可能である。リペアパケットまたはソース識別データが到着した場合、それらは論理的に別個のストリーム上にあることができ、レガシー受信モジュール155はそれらを無視する(黙って廃棄する)ことができる。受信ストリーム185はレガシー受信モジュール155から作り出される。
受信モジュール150は、ソースパケットからソース識別データ、リペアシンボルを論理的に区別することができる。ソースパケットおよびソース識別データは、ソース識別情報解釈器160に供給され、このソース識別情報解釈器160から、ソースパケットで搬送されたソースシンボルを識別するソースシンボルIDを識別することができる。受信したソースシンボル値とそれらの位置との間の関係を与えるソース識別データは、FEC復号器170に送信される。
さらに、FEC復号器170はまた、FECリペアシンボルおよびソースパケットを入力として受け取り、その両方は受信モジュール150から供給される。FEC復号器170は、もしあれば、消失したソースパケットを回復しようと試みる。受信したソースパケットは、必要ならばFEC復号器170から回復された消失したソースパケットと再統合されて、回復されたストリームまたはファイル180を作り出す。回復された入力ストリームまたはファイル180として送信されるソースパケットは、入力ストリーム110から送信された元の順序とまったく同じにまたは近似して送信できる。
通信システム100には多数の変形態が存在する。たとえば、FEC符号器130を使用しないか、あるいはFEC符号器130の代わりに、損失または消失したパケットの再送信の要求を受信し、ソース識別データに基づいてそれらのパケットを再送信するレトランスミッタ送信側モジュールを使用することができる。別の例として、FEC復号器170を使用せず、あるいはFEC復号器170の代わりに、ソース識別データに基づいてどのパケットまたはシンボルが損失または消失しているかを判断し、それらの消失したパケットまたはシンボルを求める要求を送信し、再送信されたパケットまたはシンボルを受信するとそれらを適切な順序に配置し、回復されたストリーム180として渡すレトランスミッタ受信機モジュールを使用することができる。別の例として、FEC符号器130およびFEC復号器170を使用せず、代わりにFEC復号器170の代わりにパケット再順序付け器を使用して、誤って順序付けされた受信ソースパケットをソース識別情報に基づいて再順序付けすることができる。別の例として、FEC符号器130およびFEC復号器170を、FECリペアと再送信ロジックおよび方法の両方の処理を備えるように拡張することができる。別の例として、ソース識別データのある部分を受信機に直接送信し、ソース識別データの他の部分をFEC回復プロセスの一部として回復することができる。
通信システム100は、ストリーム、ファイル、または他のタイプのデータを配信するために使用できる。
シームレスアップグレードパス
通信システムの完全なアップグレードに長時間かかるのには様々な理由がある。たとえば、より旧式のデバイスが、計算リソースまたはメモリの制限により、アップグレードされたシステムをサポートする機能を有しない場合である。別の例として、一部のデバイスがアップグレードできない特性で設計されており、したがって、そのデバイスを、すでにアップグレードがインストールされた新しいデバイスと交換したときにしか、アップグレードが行えない。他の場合には、理論的にはアップグレードが可能であっても、実際には、アップグレードソフトウェアを何百万個ものデバイスにリモートでインストールし、アップグレードが正しく動作していることを確認し、ならびにインストール中の問題を解決するなどの費用のために、多数のデバイスをアップグレードするにはあまりに費用がかかるか危険なことがある。さらに、設置された多数のデバイスが存在し、システムが再び稼動する前にすべてのデバイスをアップグレードする必要がある場合には、数千、数万、さらには何百万個もの受信機を用いたIPTVサービスの大規模な運用展開の場合のように、完全にアップグレードするのに数日または数カ月かかることがあるように、アップグレード中にシステムをシャットダウンすることは実際には不可能なことがある。
そのような場合、シームレスアップグレードパスが大いに望ましいが、達成するのは、しばしば困難である。
以前にFECを使用していなかったシステム内のストリーミングデータのFEC保護の展開に関して、よく知られている潜在的なシームレスアップグレードパスが存在する。これを行う方法は、元のソースストリームが送信され、次いではるかに高品質のストリームプレイアウトをサポートするためにアップグレードされた受信機が使用することができる論理的に別個のストリーム中で追加のFECリペアデータが送信され、同時に、アップグレードされていないより旧式の受信機が、単にFECリペアデータを無視し、データの元のソースストリームを使用して依然として従来通り動作することができるように、FECのアプリケーションを設計することである。このシームレスアップグレードパスの実現可能性が、ストリーミングアプリケーションにはシステマティックFECコードが好ましい主な理由の1つである。システマティックFECコードは、元のソースデータがFEC符号化データの一部として含まれ、送信されるという性質を有し、この文脈では、生成され、送信される追加のFECデータはFECリペアデータと呼ばれる。
このシームレスアップグレードパスに対する障害は、FECリペアデータと、FECリペアデータが生成される元のソースデータストリームとの間の関連付けを受信機において判断する必要があることである。特に、多くのFEC方式では、元のソースデータストリームを備えるソースシンボルまたはパケットをソースシンボル識別子またはパケット識別子によって識別および/または順序付けすることができ、FEC復号器は、ソースシンボル識別子またはパケット識別子を使用して、受信FECリペアデータから消失または損失したソースデータを回復することができる。しかしながら、多くのストリーミングシステムでは、そのようなソースシンボルまたはパケット識別子は、含まれないか、部分的にのみ含まれるか、完全には信頼できないか、または元のソースストリーム中でアクセスするのが困難である。ソースパケット識別子および/またはシーケンサとして使用できる各ソースパケットにおいてシーケンス情報をネイティブに含むRTPなどのトランスポートプロトコルが存在するが、多数の展開された通信システムはこれらのプロトコルを使用せず、したがってタイミングまたはシーケンス情報は、元のソースパケット中に含まれないか、またはトランスポート層においてアクセスできない。一例として、IPTV展開は、しばしば、MPEG2 TS単位を搬送するUDPパケットを使用し、これらの展開では、識別子は、しばしば、トランスポートレベルにおいて容易にアクセスしたりまたは利用したりできない。さらに、元のソースストリーム中のシンボルまたはパケットに識別データを追加することは、様々な理由で不可能である。これらの理由の中には、元のソースストリームが何らかの形で変更されると、既存の展開されたデバイスが動作しなくなること、あるいは既存の通信プロトコルが様々な他の理由で変更されないことが望まれるか、または変更することが不可能なことがある。これらの状況では、上述の単純なシームレスアップグレードパスは不可能であり、他の方法およびプロセスが必要になる。
これらのシステムにおいてレガシーデバイスとの互換性を維持するために、およびパケットまたはシンボルまたはデータシーケンシングまたは識別情報をネイティブに含まない通信システムの使用を可能にするために、本明細書で導入する方法は、論理的に別個のストリーム中でソースパケットシーケンスまたは識別子情報を送信し、それにより、能力のある受信機が、この情報をFECリペアデータとともに収集し、消去または損失または消失または破損したソースパケットまたはシンボルを回復することができるようにする方法を開示する。一実施形態において概説したソース識別データは、この情報を捕捉し、表現することができる。いくつかの実施形態では、この識別子またはシーケンス情報は、FECリペアデータが送信されるチャネルのうちの1つで送信されるが、これは絶対に必要なわけではない。
図2に、FEC方法をサポートするデバイスとサポートしないデバイスの混合を使用している通信システム200のシームレスアップグレードパスの一例を示す。ヘッドエンドデバイス210は、元のソースデータを備える元のプログラムと、FECリペアデータおよびソース識別データを備えるプログラムのリペアの両方を生成し、コアネットワーク220に送信する。コアネットワーク220は、元のプログラムをアクセスネットワーク230(1)、230(2)に送信し、FECをサポートしないレガシーセットトップボックス(STB)240(1)、240(2)が存在するアクセスネットワーク230(1)にはリペアプログラムを送信せず、FEC方法をサポートするSTB250(1)、250(2)が存在するアクセスネットワーク230(2)にはリペアプログラムを送信する。通信システム200には多くの変形形態が存在し、レガシーSTB240(1)はリペアプログラムを受信するが、元のプログラムのみを使用する変形形態、コアネットワークとアクセスネットワークとの間の区別がない変形形態、元のプログラムおよびリペアプログラムが1つの論理ストリームとして送信される変形形態、FEC方法の代わりにまたはFEC方法と組み合わせて再送信方法をサポートする変形形態、セットトップボックスが他のタイプの受信デバイスである変形形態、ある受信デバイスはソース識別データ方法をサポートせず、ある受信デバイスはソース識別データ方法をFEC方法とともにサポートし、別の受信デバイスはソース識別方法を再送信方法とともにサポートし、別の受信デバイスはソース識別方法を再送信方法とFEC方法の両方とともにサポートし、別の受信デバイスはソース識別方法をデータ再順序付け方法とともにサポートする変形形態、複数の送信デバイスが存在する変形形態、プログラムのリペアの送信および/または生成デバイスが元のプログラムの送信および/または生成デバイスとは論理的または物理的に異なる変形形態、送信デバイスが少なくとも時々受信デバイスとなるかまたはその逆の変形形態、FEC方法または再送信方法以外の理由により、たとえばデータ再順序付け方法をサポートするためにソース識別データ方法をサポートする変形形態がある。
ソース識別方法と(FEC方法および再送信方法など)関連する回復方法とをサポートする通信システムは、そのような方法をサポートしない通信システムと比較してシグナリングおよびデータ配信に関して、できる限り相違が少ないことが望ましい。たとえば、特定のストリームがソース識別方法および関連する方法をサポートするかどうかを示すために特殊なプレシグナリングが必要とされない場合、プレシグナリングは、たとえば電子的プログラムガイドまたはその均等物を含むことができることが望ましい。たとえば、様々な理由で、あるデータストリームは、ソース識別方法と関連する回復方法とをサポートすることができるが、他のストリームは、ソース識別方法と関連する回復方法とを同時にまたは異なる時点においてサポートすることができない。たとえば、最初はどのストリームもソース識別方法をサポートしないが、時間がたつにつれてますます多くのストリームがソース識別方法をサポートするようになり、最終的にすべてのストリームがソース識別方法をサポートすることができるようになる場合である。ストリームがソース識別方法をサポートするかしないかをシグナリングする必要がないこと、たとえば、電子的プログラムガイド中に記載された各ストリームがソース識別方法をサポートするかどうかをガイド中に含める必要がないことが大いに望ましいことがある。
図3に、ソース識別方法とFEC方法とをサポートする受信デバイスでロジックとして使用され、特定のストリームがソース識別方法とFEC方法とを使用するかどうかを示すためにプレシグナリングが必要とされない、起こりうる状態図300の一例を示す。状態図300では、受信機は、ストリームに最初に合流するときレガシー状態310で始動する、すなわち、受信機は、最初、送信中のストリームがソース識別方法とFEC方法とを使用していないと仮定する。とはいえ、レガシー状態310で、受信機は、現在のストリームのパケットの受信を継続的に監視し、ソース識別データ(またはFECリペアデータ)を受信すると、受信機は状態図のSI非同期状態320に移行する。若干の時間が経った後、たとえば、100ms後、最初のソース識別データ(またはFECリペアデータ)が、ソース識別方法とFEC方法とを使用するストリーム用の受信機に到着し、これにより、SI非同期状態320に移行するのに若干の待ち時間が生じる。受信機がSI非同期状態320になると、受信機は、入手可能ならばFECリペアデータと、ソース識別データの両方を継続的に受信し、受信機は、これらのデータを使用して識別情報を解釈し、および/または受信したおよび消失したソースパケットもしくはシンボルの相対的な順序付けを判断しようと試みる。受信機が現在のソース識別データを解釈することができる場合、受信機はSI同期状態330に移行する。SI同期状態330にある間、受信機は、ソース識別データの解釈を使用して、受信および消失したソースパケットまたはシンボルの相対的な順序付けを識別および/または判断し、今度はこれを使用して、受信したFECリペアデータを使用してデータの元のソースストリームの一部を回復することができる。受信機がSI同期状態310にあり、現在のソース識別データをもはや解釈することができなくなると、現在のソース識別データが再び解釈できるようになるまで、受信機はSI非同期状態320に移行する。SI同期状態310とSI非同期状態320との間を移行する際の待ち時間の量は、ソースデータがソースブロックに編成され、ソース識別データがソースブロックごとに編成される場合、保護期間、すなわち、ストリームからデータのソースブロック上で受信するのにかかる時間期間の程度とすることができる。
状態図300には多くの変形態が存在する。たとえば、FEC方法の代わりにまたはFEC方法とともに再送信方法を使用することができる。別の例として、FEC方法の代わりに再順序付け方法を使用することができる。別の例として、たとえば、FECリペアまたは再送信方法が使用中であるかどうか、またはどんなタイプのFECコードが使用されているか、またはどんなタイプの再送信方法がストリームに対して使用中であるかを示すために、ソース識別データに加えて他のデータを搬送することができる。
図4に、ソース識別方法とFEC方法とをサポートする受信デバイス内で使用されるプロセスフローチャートの一例を与える。ステップ420において、プロセスはパケットの受信を監視し、パケットを受信すると、プロセスはステップ430に移動する。ステップ430において、プロセスは、SI同期状態が現在の状態である(図3のSI同期330にあることに対応する)かどうかを確認する。ステップ430においてSI同期が現在の状態である場合、プロセスはステップ440に移動する。ステップ440において、プロセスは、ソース識別データに基づいて受信パケットを適切なソースブロックに関連付け、プロセスはステップ450に進む。ステップ450において、プロセスは、現在のソースブロックをFEC復号すべき時刻であるかどうかを確認し、FEC復号すべき時刻ではない場合、プロセスはステップ420に戻ってさらなるパケットを受信するが、FEC復号すべき時刻である場合、プロセスはステップ460に移動し、受信したソースおよびリペアパケットと、リペアパケットをソースパケットに関係づける関連するソース識別データとを使用して、現在のソースブロックをFEC復号し、次いでステップ470において、現在のソースブロックを(たとえば、受信デバイス上のメディアプレーヤに)出力し、次のソースブロックが現在のソースブロックになり、処理はステップ420に続く。ステップ430においてSI同期が現在の状態ではない場合、プロセスはステップ480に移動する。ステップ480において、受信パケットがソースパケットである場合は、それを(たとえばメディアプレーヤデバイスに)出力し、他の場合は廃棄し、処理はステップ420に戻る。
図4には詳細の多くを示していない。たとえば、図4には、ソースおよびリペアパケットとパケットの順序との間の関連付けを判断するために使用され、ステップ430においてSI同期状態の状態を判断するために使用されるソース識別データの受信を示していない。図4に示すプロセスには多くの変形態が存在する。たとえば、ステップ420において、複数のパケットを受信し、その後ステップ430に進むことができる。
パケットとシンボルとの間の関係
前方消去訂正コードは、しばしば、固定のアルファベットから選択されたシンボルに作用する。たとえば、サイズ2のアルファベットからシンボルを選択することができ、その場合、シンボルとM個の2進数字の文字列との間には明白な対応がある。以下、そのようなシンボルはMビットのサイズを有すると呼ぶ。データは、しばしば、パケットの形態で通信チャネルを介して送信される。場合によっては、シンボルとパケットとの間に1対1の対応がある。たとえばLuby IIに記載のものを含む、他の場合には、パケットがシンボルよりも大きく、1つのパケットがいくつかのシンボルを備えることがある。さらに、シンボルおよびパケットは、ビット順序を除いて同じデータを備え、配置が異なり、またはパケット内に明示的に含まれないFECシンボルの中に、追加の情報、たとえばパケット長の2進表現を入れることができる。同様に、データ、たとえば、使用されないフィールドまたはあらゆるパケット中で同じ値を有するフィールドを備えるために、あるいは他の方法で回復できるために、FECコードによって保護する必要がないデータは、FECシンボル中に存在しないパケット中に存在することができる。
再送信方法はシンボルに基づくこともでき、シンボルは、バイトまたは何らかの大きいデータ単位とすることができる。たとえば、受信機は、ファイルまたは送信すべきデータストリームに、ある一定のバイト範囲を要求することができる。
ソースブロックとシンボルとの間の関係
多くの前方誤り訂正コードは、ソースブロックとして知られるソースシンボルの個別の集合に作用する。たとえば、ソースブロックは、ファイルのすべてのソースシンボル、またはストリーミングサービス時における特定のフラグメントのすべてのソースシンボルを備えることができる。
各ソースシンボルには、そのソースシンボルが属するソースブロック内で一意の識別情報が与えられる。この識別情報は、多くの場合、ソースパケットデータの一部ではないが、しばしば、FEC復号プロセスのために使用される1つの情報である。
再送信方法はソースブロックに基づくこともでき、再順序付け方法はソースブロックに基づくこともできる。たとえば、ソースブロックは、受信機メモリに都合よく収まるサイズとすることができ、たとえば、そのサイズは、メモリに入れられる、またはメモリからディスクに書き込まれるデータブロックを識別するために都合がよいことがある。別の例として、ソースブロックは、特定の時間期間にわたって送信されるデータ量に対応するサイズとすることができ、たとえば、そのサイズは、データがどのソースブロックに属するかに基づいて、1つの時間期間中に送信されるデータを別の時間期間中に送信されるデータと区別するために都合がよいことがある。
本明細書で説明する方法の実施形態の多くでは、ソースブロックを使用する。ソースブロックは本方法の必須要素ではなく、ソースブロックを使用しない方法の変形態が存在することが当業者には認識されよう。
受信機
受信機がFECリペアデータを利用するために、受信機は、しばしば、ソース識別データを取得することができる必要があり、このソース識別データは、FECリペアデータと同じチャネルに配信されても、配信されなくてもよい。通常、送信側および受信機は、ソース識別データを表現するのに同じプロトコルを使用しなければならない。そのようなプロトコルの一例を特定の実施形態で与える。受信機は、ソース識別データを使用して、ソースブロック内での受信ソースパケットの位置、ならびに消失したパケットの位置を識別する。次いでFECリペアデータを使用して、可能ならば、これらの消失したパケットを回復する。
アップグレードプロセス中、レガシー受信機は、受信した場合、ソース識別情報とFECリペアデータの両方を無視することができる。レガシー受信機は、アップグレード前のようにソースパケットを受信し、アップグレードされるまでアップグレード前のレベルで動作し続ける。
ソース識別方法
ソース識別データを表現し、搬送する多くの方法がある。一般に、帯域幅オーバーヘッド、CPU負荷、およびサービス品質(QoS)の間でトレードオフがある。
ソース識別方法の使用は、送信すべきすべてのソースシンボルまたはソースパケットまたは他のソースデータ単位の間、たとえば、ファイルまたはストリーム用に送信すべきすべてのソースデータの間を区別、識別または順序付ける能力を含む。他の場合には、(たとえば、送信順序の、または小さい時間ウィンドウ内で送信される)他のソースデータ単位のごく近傍にあるソースデータ単位が、たとえばデータストリーム用に区別、識別、または順序付けされるべきであり、再順序付け、区別、または識別の量が、送信側と受信機との間を動いているソースデータの最大数を超えるだけでよいように、ソース識別方法を適用することができる。これらの場合、実施の方法については本開示内で後述するように、ソースデータ単位を複数のソースブロックまたはそれらの均等物に分割するソース識別方法が適切であることがある。ソース識別方法によって使用されるソースブロック構造は、使用する場合、FECまたは再送信方法によって使用されるソースブロック構造に一致しても、一致しなくてもよい。
以下で説明するソース識別方法の多くは、それらの説明でハッシュ関数を使用する。ハッシュ関数の役目の1つは、別個の長い文字列が別個のより短い文字列に写像されるように、長い文字列をはるかに短い文字列に写像することである。等価的に、ハッシュ関数は値を値に写像することができる。本明細書で説明する方法のために使用できる多数の可能なハッシュ関数があり、たとえば「Pairwise Independence and Derandomization」、Mike LubyおよびAvi Wigderson、Foundations and Trends in Theoretical Computer Science、第1巻、第4号、2005年、Print ISSN 1551-305X、Online ISSN 1551-3068と題する刊行物に記載されているハッシュ関数(以下「ハッシュ関数」)を使用することができる。ハッシュ関数のリストを表現する多くの方法が存在し、そのうちのいくつかは「ハッシュ関数」に記載されており、たとえば、特定の入力についてどのようにハッシュ関数を計算するかを決定するビットシーケンスを表現するもの、またはハッシュ関数族からハッシュ関数の小リストを選択し、このリストへのインデックスでハッシュ関数を表現するものがある。可能なハッシュ関数族の一例は、正の整数(a,b)によって記述でき、aとbは、0と正の整数値Pとの間の値の範囲にあり、対(a,b)によって決定されるハッシュ関数は入力Xを(a*X+b) modulo Pに写像する。この例では、1対の値(a,b)を使用して、Pが固定であるかまたは(a,b)によって決定される場合は(a,b)によって決定される、あるいは代替的に、Pが(a,b)によって決定されない場合は3つ組(a,b,P)によって決定される、ハッシュ関数の選択を示すことができる。ハッシュ関数の範囲内の値の数は素数に制限されず、値の数が任意の正の数とすることができる本明細書に記載の方法と同様のよく知られているハッシュ方法がある。この同じハッシュ関数族(または任意のハッシュ関数族)から選択されたハッシュ関数を示す別の方法は、値の3つ組の所定のリスト(a,b,P)、(a,b,P)、...、(a,b,P)に関するものであり、インデックスjを使用して、(a,b,P)によって決定されるハッシュ関数の選択を示すことができる。
第1のソース識別方法の説明を以下に述べる。送信すべきソースデータを備えるK個の異なるソースデータ単位(たとえばソースパケットまたはシンボル)があると仮定する。すべてのK個のソースデータ単位が異なる値を有すると仮定する。K個のソースデータ単位をK個のLビットベクトル(v(0),v(1),...,v(k−1))に写像するハッシュ関数をHとする。Hがランダムなハッシュ関数である場合、K個のLビットベクトルのうちの2つが同じ値に写像する確率は約K^2/(2^(L+1))であり、ただし「^」は指数関数である。したがって、K個のLビットベクトルが少なくとも1−epsの確率で異なるようにするためには、Lの値は約2*log(K)+log(1/eps)でなければならず、ただしlogは、2を底とする対数演算子である。第1の例として、K=1000=1e3およびeps=1e−6である場合、Lは、約40ビットすなわち5バイトでなければならず、ただし「1e3」は10^3=1000の科学的指数表現である。第2の例として、K=1e6およびeps=1e−12である場合、Lは約80ビットすなわち10バイトでなければならない。送信側と受信機が同じハッシュ関数Hを計算することができると仮定すれば、ソース識別データは、単に、ソースデータ単位の順序で連結された、K個のLビットベクトルの連結とすることができる。送信側は、ハッシュ関数Hをソースデータ単位の各々に適用してK個のLビットベクトルを生成することによって、K個のソースデータ単位からソース識別データを計算することができる。ソースデータ単位を受信すると、受信機は、Hをソースデータ単位に適用して、対応するLビットベクトル値を計算し、次いで受信機は、ソース識別データから、K個のソースデータ単位の間で受信したソースデータ単位を区別、識別、および順序付けすることができ、すなわち、これが、シーケンシング判断方法の一例である。上記の第1の例では、ソース識別データはサイズが5,000バイトであり、上記の第2の例では、ソース識別データはサイズが10,000,000バイトである。これらは両方とも、いくつかの適用例ではサイズが法外に大きくなることがある。ソース識別データのいくつかの使用法、たとえばいくつかの再送信方法では、受信機においてソースデータ単位を識別し、要求するのには、はるかに短いソース識別データで十分なことがある。たとえば、NACKベースの再送信方法では、受信機に伝達されるソース識別データは、ハッシュ関数Hの記述とすることができ、受信機は、受信した各ソースデータ単位に対してハッシュ関数Hを計算し、受信したソースデータ単位が写像されたLビットベクトルを送信側に送信することができる。この場合、送信側は、どのLビットベクトルが受信されたかに基づいて受信機によってどのソースデータ単位が受信されていないかを判断することができ、すなわち、これが、知られているソースデータ単位の識別ラベル判断方法の一例である。したがって、送信側および受信機がどのハッシュ関数Hを使用するかをあらかじめ決めていると仮定すると、受信機に明示的に伝達されるソース識別データの量を0にすることさえ可能である。しかしながら、この場合、消失したソースデータ単位の再送信を要求するために、ソースデータ単位ラベルの形態のかなりのデータ量を受信機から送信側に伝達することができる。
上記のソース識別方法の変形態では、送信側が、ハッシュ関数族から新しいハッシュ関数Hを繰り返し選択し、ハッシュ関数HがK個のソースデータ単位を異なるベクトルに写像するまで、HをK個のソースデータ単位に適用する。Hが、少なくとも1/2の確率でK個のソースデータ単位を異なるベクトルに写像するのには、L=2*log(K)で十分であることに留意されたい。したがって、log(1/eps)ランダムハッシュ関数のリストから、少なくとも1−epsの確率でK個のソースデータ単位を異なるベクトルに写像する少なくとも1つのハッシュ関数が存在する。この場合、ソース識別データは、送信側によって選択されたハッシュ関数Hのインデックスと、Kの値と、K個のLビットベクトルとの連結とすることができる。受信機は、ソース識別データを使用して、使用すべきハッシュ関数HのインデックスとKの値とを決定し、次いでソースデータ単位を受信すると、Hをそのソースデータ単位に適用して、K個のソースデータ単位の間でソースデータ単位を区別、識別、または順序付けするLビットベクトルを決定することができ、すなわち、これが、シーケンシング判断方法の一例である。K=1,000の場合、ソース識別データは、ハッシュ関数と、Kの値と、1,000個の20ビットベクトル、すなわち約2500バイトとを識別するために20ビットになり、K=1,000,000の場合、ソース識別データは、ハッシュ関数と、Kの値と、1,000,000個の40ビットベクトル、すなわち約5,000,000バイトとを識別するために40ビットになる。
ソース識別データ方法の第3の変形態について以下に述べる。送信側は、ソース識別データを次のように計算することができる。たとえば上述の第1または第2のソース識別データ方法を使用して、K個のソースデータ単位をK個の異なるLビットベクトルu(1)、u(2)、...、u(K)に写像する第1のハッシュ関数Hを選択する。集合S={0,1,...,K−1}とする。異なる変形態では、SのサイズはKよりも大きくても小さくてもよいが、いくつかの実施形態では、SのサイズとしてKを選ぶのがよいことに留意されたい。LビットベクトルをSに写像するハッシュ関数Hを選択する。u(1)、u(2)、...、u(K)をSに写像するHを使用する。Hに関してu(j)がu(i)と同じ値に写像するようなjがない場合、ベクトルu(i)はHに関して一意に写像すると言われ、他の場合、u(i)はHに関して衝突を起こすと言われる。Hに関してしきい値数未満のu(1)、u(2)、...、u(K)が一意に写像する場合、新しいハッシュ関数Hを選択し、Hに関して一意に写像するu(1)、u(2)、...、u(K)の数が少なくともしきい値数になるまで上記のプロセスを繰り返す。任意のiについて、u(i)が、ランダムに一様に選択されたハッシュ関数Hに関して一意に写像する確率は約1/eであり(ただし、e=2.718281828459045)、したがって、K/eはしきい値数の妥当な選択肢であるが、Kの値に応じて他のしきい値数が適切となり、たとえば、Kが0に近づくにつれて、しきい値数がKに近づくかまたは達することに留意されたい。適切なHを決定した後、KビットベクトルVをK個の0ビットに初期化する。Hに関してu(i)が位置jに一意に写像するようなiが存在するあらゆる位置jについて、Vの第jビットを1に設定する。
に関して衝突を起こすK個のベクトルからのKベクトルをu(1)、...、u(K)とする。集合S={0,...,K−1}とし、LビットベクトルをSに写像するハッシュ関数Hを選択する。u(1)、...、u(K)をSに写像するHを使用する。Hに関してしきい値数未満のu(1)、...、u(K)が一意に写像する場合、新しいハッシュ関数Hを選択し、Hに関して一意に写像するu(1),…,u(K)の数が少なくともしきい値数になるまで上記のプロセスを繰り返し、ただし、しきい値はKに依存する。KビットベクトルVをK個の0ビットに初期化する。Hに関してu(i)が位置jに一意に写像するようなiが存在するあらゆる位置jについて、Vの第jビットを1に設定する。
u(1)、u(2)、...、u(K)のすべてがハッシュ関数に関して一意に写像するようになるまで、追加のハッシュ関数H、...、Hを用いて上記のプロセスを繰り返すことができる。特に、Hは、uh−1(1)、uh−1(2)、...、uh−1(K)を一意に写像し、ただしuh−1(1)、uh−1(2)、...、uh−1(K)は、H、…、Hh−1に関して衝突を起こすK個のベクトルからのK個のベクトルである。
図5Aに、ソース識別データ方法の第3の変形態のステップの概略を示す。K個のソースパケット(501)を異なるベクトルu(1)、u(2)、...、u(K)に写像するハッシュ関数Hを選択する(502)。次に、前のハッシュ関数によってまだ一意に写像されていないK個のベクトルのサブセットに作用するハッシュ関数を選択する(503)(第1のハッシュ関数に対して、このサブセットはK個のベクトルのフルセットである)。次いで選択されたハッシュ関数を使用して、K個のベクトルのサブセットをハッシュする(504)。このハッシング中、作用されたパケットのインデックス、ハッシュ関数および得られた値、ならびに潜在的な衝突を表す情報を記録する(506)。一実施形態では、このデータはビットベクトル中に記録される。次に、ハッシュ関数の出力を分析して、衝突が発生したかどうかを判断することができる(505)。衝突がある場合、異なるハッシュ関数を用いて上記のプロセスを繰り返す。衝突が存在しない場合、記録情報(506)を使用してソースシンボルマップを形成することができる(507)。
ソース識別データまたは等価的にソースシンボルマップは、ハッシュ関数Hのインデックスと、Kの値と、追加のハッシュ関数の数hと、ハッシュ関数H、...、Hのインデックスと、K、...、Kh−1の値と、ビットベクトルV、...、Vとの連結とすることができる。ソースデータ単位の位置は次のように求めることができる。ソースデータ単位にハッシュ関数Hを適用して、Lビットラベルuを生成する。Hに関してuが一意に写像されるような最初のiが存在するまでuにH、...、Hを連続的に適用し、Hがuを写像する位置をjとする。ソースデータ単位の位置は、1に設定されたV、...、Vi−1中のビットの総数+最初のj個のビット内で1に設定されたV中のビット数である。ソースデータ単位の順序付けおよびそれらの位置を判断するための本方法は、配置判断方法を可能にするソース識別方法の一例であり、すなわち、ソースデータ単位の位置はソース識別データに基づいて判断されるが、その位置は必ずしもソースデータ単位の送信位置ではない。K=1000であり、しきい値数K/eを使用する場合、ソース識別データは、ハッシュ関数を識別するために必要とされるビットと、K、K、K、...、Kh−1の値と、後続の2700ビット、すなわち約350バイトとである。K=1,000,000の場合、ソース識別データは約340,000バイトである。当業者なら認識されるように、可能なこの変形態には多くの代替形態および最適化形態が存在し、たとえば、値K、...、Kh−1のシーケンスが異なるように選択し、しきい値数が異なるように選択し、ビットベクトルV、...、Vをエントリ当たり複数ビットまたはエントリ当たり可変ビット数とし、ビットのすべてが1に設定されることが常に当てはまるなどとすれば、最後のベクトルVを省略することができる。
図5Bは、先ほど説明したソース識別データ方法の第3の変形態の図である。図5Bの例では、ソース識別データが生成されるべき8つのデータ単位(510(1)、...、510(8))がある。8つのデータ単位(510)の内容を8つのLビットハッシュ値の組(520)にハッシュする第1のハッシュ関数Hを選択し、ただし、Hは、8つのデータ単位(510)の内容が異なれば8つのLビットハッシュ値(520)も異なるように選択し、この例では、8つのLビットハッシュ値(520)はそれぞれA、B、C、D、E、F、GおよびHと示されている。2つ以上の候補ハッシュ関数を選択した後に、すべてソースデータ単位を一意のハッシュ値に写像する適切なハッシュ関数Hを選択することができることに留意されたい。また、ある実施形態では、この最初のハッシュ関数を適用することをスキップし、以下で概説するプロセスは、ハッシュ値(520)ではなくソースデータ単位(510)に直接作用することによって処理できることに留意されたい。
図5Bを参照すると、Lビットハッシュ値(520)の各々を0〜7の間の範囲にあるハッシュ値に写像する第2のハッシュ関数Hを選択し、ただし、Hによって定義される写像は、ハッシュ値(520)からハッシュ値(530)への矢印によって示されている。2つ以上の候補ハッシュ関数を選択した後に、十分な数のハッシュ値(520)が一意のハッシュ値(530)に写像するように適切なハッシュ関数Hを選択することができ、この例では、しきい値数は、ハッシュ値(520)の少なくとも4つが一意のハッシュ値(530)に写像するようにできることに留意されたい。ビットベクトルV(540)では、ビットjの値1は、ハッシュ値j(530)に写像する一意のハッシュ値(520)が存在することを示し、ビットjの値0は、0個または2個以上のハッシュ値(520)がハッシュ値j(530)に写像することを示す。この例では、Vの第1のビットは、どのハッシュ値(520)もHの値0(530)に写像しないので0に設定され、Vの第2のビットは、ハッシュ値BおよびC(520)が両方ともHの値1(530)に写像するので0に設定され、Vの第3のビットは、どのハッシュ値(520)もHの値2(530)に写像しないので0に設定され、Vの第4のビットは、ハッシュ値A(520)がHの値3(530)に一意に写像するので1に設定され、Vの第5のビットは、ハッシュ値G(520)がHの値4(530)に一意に写像するので1に設定され、Vの第6のビットは、ハッシュ値D(520)がHの値5(530)に一意に写像するので1に設定され、Vの第7のビットは、ハッシュ値EおよびH(520)が両方ともHの値6(530)に写像するので0に設定され、Vの第8のビットは、ハッシュ値F(520)がHの値7(530)に一意に写像するので1に設定される。この例では、ハッシュ値B、C、EおよびH(520)が一意の値に写像しないので、これらの4つのハッシュ値(520)は、別のハッシュ関数Hを用いて4つの値0〜3(550)に写像されることになり、衝突ビットベクトルV(560)が得られる。この例では、ハッシュ値EおよびH(520)はHによって一意に写像されるが、ハッシュ値BおよびC(520)はH写像で衝突するので、2つのハッシュ値BおよびC(520)は別のハッシュ関数Hによって2つの値0〜1(570)に写像されることになり、衝突ビットベクトルV(580)が得られ、この例では、残りのすべての値がHによって一意に写像されるので、Hが、ソース識別データを完成するために必要とされる最後のハッシュ関数である。この例におけるソース識別データは、値h=3と、値K=8、K=4、K=2と、ハッシュ関数H、H、H、Hの表現と、ビットベクトルV、V、Vとを備える。
図5Bに示す例では、衝突ビットベクトルV、V、およびVのすぐ左のインデックスは、このソース識別データによってそのように判断されたソースデータ単位の位置を示し、すなわち、位置0はシーケンス番号0のパケットに対応し、位置1はシーケンス番号6のパケットに対応し、位置2はシーケンス番号3のパケットに対応し、位置3はシーケンス番号5のパケットに対応し、位置4はシーケンス番号7のパケットに対応し、位置5はシーケンス番号4のパケットに対応し、位置6はシーケンス番号2のパケットに対応し、位置7はシーケンス番号1のパケットに対応する。このソース識別データから、クライアントは、8つのソースパケットのうちの受信したまたは消失したソースパケットの位置を容易に計算することができる。したがって、たとえば、これらの位置を使用して、FEC符号化および復号のためにソースブロック内でソースパケットを順序付けすることができるので、ソースデータ単位のFEC符号化および復号にはソース識別データで十分である。別の例として、受信機は、受信したすべてのソースデータ単位の位置を計算し、この計算から、消失したソースデータ単位の位置を判断することができる。受信機は、どのソースデータ単位が要求されているかを位置によって識別することによって、消失したソースデータ単位を求める要求を送信し、送信側は、それに応答して、要求された位置に基づいてどのソースデータ単位を送信すべきかを判断することができる。この第3の変形態は、配置判断方法を可能にするソース識別方法の一例である。
第4の変形態として、第3の変形態に関して上述したK個のソースデータ単位のシーケンシング(たとえば、それらのシーケンシングは、元のソースデータの順序に、または別の例としてソースデータの送信順序に対応する)と、それらの対応する位置との間の対応を含むように第3の変形態のソース識別データを増強することができる。たとえば、追加のシーケンシングデータは、K個のシーケンス番号の順序付きリストSEQ=<seq,seq,...,seqK−1>を備えることができ、ただし、seqは、位置jを有するデータ単位のシーケンス番号である。したがって、この追加のシーケンシングデータは、位置とシーケンスの対応を備えることができる。
この第4の変形態に関するソース識別データの一例を図6Aに示し、これは図5Bに示す例の増強である。図5Bの例では、K=8およびh=3である。図6Aに示すように、h値は3であり(610)、K値はK=8、K=4、K=2であり(620)、4つのハッシュ関数は、H、H、H、Hであり(630)、サイズがそれぞれ8、4および2のビットベクトルV、V、Vは連結されて示され(640)、K=8のシーケンス番号を備える追加のシーケンシングデータが(650)に示されている。この場合、ハッシュ関数に従って位置0に写像されるソースデータ単位は、シーケンス番号0のソースデータ単位であり、位置1に写像されるソースデータ単位はシーケンス番号6を有し、位置2に写像されるソースデータ単位はシーケンス番号3を有し、位置3に写像されるソースデータ単位はシーケンス番号5を有し、位置4に写像されるソースデータ単位はシーケンス番号7を有し、位置5に写像されるソースデータ単位はシーケンス番号4を有し、位置6に写像されるソースデータ単位はシーケンス番号2を有し、位置7に写像されるソースデータ単位はシーケンス番号1を有する。
この第4の変形態では、K個のソースデータ単位の順序を区別、識別、および判断するのにはこのソース識別データで十分であり、すなわち、これが、シーケンシング判断方法を可能にするソース識別方法の一例である。この第4の変形態に関するソース識別データの追加のサイズは、第3の変形態におけるソース識別データのサイズを超える、K*log(K)である。たとえば、K=1,000の場合、第3の変形態のソース識別データのサイズを超える追加のソース識別データのサイズは、1250バイトになり、K=1,000,000の場合、追加のサイズは2,500,000バイトになる。この第4の変形態のいくつかの実装形態では、第3の変形態に対応するソース識別データの部分を受信機に送信し、それによって受信機はソースデータ単位の位置を判断できるようになり、これを使用してソースブロックをFEC復号することが可能になり(ただし、ソースブロック内でのソースデータ単位の順序付けはそれらの位置に従う)、ソースデータ単位のシーケンシングを判断することを可能にするソース識別データの追加の部分は、FEC復号方法を使用して回復できるソースブロック内に含められる。たとえば、図6Aおよび図6Bを参照すると、h値(610)、K値(620)、ハッシュ関数の記述(630)、およびビットベクトル(640)は、ソースブロック中のソースデータ単位の位置を判断するために受信機に伝達されるソース識別データを備えることができる。このソース識別データは、ソースシンボルマップの形式とすることができる(601)。ソースシンボルマップ中に含まれる情報をパースして(602)、位置とシーケンスの対応を含まないことを除いて図6A中に概略を示したデータを抽出することができる(650)。(これは、603にも示されている。)次いで、いくつかのハッシュ計算および衝突解消を含む、配置判断方法において、受信したソースデータ単位に対して、ソースシンボルマップを使用することができる(605)。一実施形態では、受信したソースデータ単位はソースパケットの形式とすることができる(604)。受信したシンボルを確認し、配置情報に関連付け(606)、その後FEC復号器に供給することができる(607)。位置とシーケンスの対応データ(650)は、FEC復号の後に利用可能なソースブロック中に含まれるソース識別データを備えることができ、これを使用して、回復されたソースデータ単位のシーケンシングを判断する(608)。図7に、いくつかのソースデータ単位(510(1〜8))を備えるソースブロック中に含まれる、位置とシーケンスの対応データ(650)の一例を示す。図7では、位置とシーケンスの対応データ(650)は、ソースブロック中に含まれるソースデータ単位(510(1〜8))の終端に付加されており、ソースブロック中のソースデータ単位の順序は位置情報によって判断される。
別の変形態として、ソース識別データはさらに、各ソースデータ単位のサイズを含むように増強できる。すべてのソースデータ単位が同じまたはほぼ同じサイズである場合、一般にこの変形態は使用されない。この変形態では、可変サイズソースデータ単位の位置をより正確に判断することができる。
図8Aは、図5Bの例と同様であるソース識別データの別の実施形態の一例である。図5Bに示す例と図8Aに示す例との間の1つの差異は、図8Aのビットベクトルは1ビットのみではなく2ビットの情報を含むことである。この余剰データを使用して、所与のレベルでのハッシュ演算のために衝突またはその欠如についてのさらなる詳細を伝達することができる。たとえば、図8Aでは、「11」は、ハッシュ値のいずれもビットベクトル中の特定の場所に写像されなかったことを示すのに使用され、「00」は、ビットベクトル中の特定の場所が一意のソースパケットに写像することを示すのに使用され、「10」は、2つ以上のソースパケットが特定の場所に写像することを示すのに使用されている。当業者ならば、このような情報を伝達するために他の同様の方式が使用できることを認識されよう。
図8Bに、データ構造にフォーマット化されたソース識別情報の一例を示す(810)。この場合、データ構造は様々な方法で使用できる。ソース識別情報には多数の可能なフォーマットがあることを当業者なら認識されよう。ソース識別情報を編成するために使用されるいかなるデータ構造でも、任意選択でFEC保護し次いで受信機に送信できる各パケット中に挿入するか、または複数のパケットにわたって拡散させることができる。
図8Bに示すデータ構造(810)の実施形態では、図示されたフィールドの各々の近似サイズは、フィールドの下にバイト単位で記載している。フィールドのサイズは、データ構造の異なる実施形態間で違ってもよい。図8Bにおいて、Gはパケット当たりのシンボル数を表す。Gが0に等しい場合、これは可変長パケットが存在することを示す。Hは、ソース識別情報を生成するのに使用されるモジュロハッシュ試行の数を表す。Fは、初期ハッシュ関数インデックスである。Checkは、ソースブロックのチェックサムである。Bは、ハッシュ位置マップのビット割当てである。Lは、ハッシングの各繰返しのハッシュ衝突ベクトル長である。図8Bでは、Lは、最初の2つのレベルでは各2バイトであり、それ以降は各1バイトである。Vは、実際のハッシュ衝突ベクトルを格納する。Mは、ハッシュ位置マップを格納する。図8Bでは、各値はBビットを占める。B1は、G=0のみに対して適用可能な任意選択のフィールドである。B1は、可変パケットシンボル数のビット割当てを格納する。M1は、G=0のみに対して適用可能な別の任意選択のフィールドである。M1は、パケット中のシンボルの数を格納する。
図8Bには、図8Aからのデータを使用しているこの概略的フォーマットの一例(820)も示している。
受信機がソース識別データを使用する方法
プロトコルは、ハッシュされるパケット{K,K,...,K}、衝突ベクトル{V,V,...,V}、およびハッシュ関数{H,H,...,H}の数を送信側と受信機との間で伝達し、ただし、Hでは衝突が生じない、すなわちVはすべて0である。さらに、すべてのK個のソースパケットの位置と、ベクトル{V,V,...,V}内のそれらの対応するハッシュ位置との間の対応、ならびに各ソースパケット中のシンボル数も伝達する。
受信機はどのようにして受信ソースデータのシーケンス番号を判断することができるかの一例として、受信機は、図5Bに示した例に記載の5番目のソースデータ単位(510(5))を受信すると仮定する。受信機は、このソースデータ単位にHを適用して、ハッシュ値E(520)を得る。受信機は、E(520)にHを適用して、6(530)を得る。位置6のVは0(540)に等しいので、受信機は、何らかの他のハッシュ値(520)に対してHに関するE(520)の衝突が存在すると判断し、したがってE(520)にHを適用して、3(550)を得る。位置3のVは1(560)に等しいので、受信機は、E(520)がHに関して一意に写像すると判断する。受信機は、V中の1の数を計数し、この計数値を、Vの位置3までだが位置3を含まないV中の1の数に加算することによってハッシュ関数によって決定されるこのソースデータ単位の位置を判断することができ、それは5に等しく、したがって5番目のソースデータ単位の位置は5である。図6Aを参照すると、受信機は、位置とシーケンスの対応(650)の位置5を見ることによって5番目のソースデータ単位のシーケンス番号を判断することができ、それは4に等しく、したがって5番目のデータ単位のシーケンス番号は4である。受信したソースデータ単位ごとに同様のプロセスを使用することによって、受信機は、受信した各ソースデータ単位のシーケンス番号を判断することができ、シーケンス番号は0で始まりK−1に至るまで連続しているので、これにより、受信機は消失したすべてのソースデータ単位のシーケンス番号を判断することができる。
1つの潜在的な困難は、ソース識別データを使用してソースデータ全体ではなくその一部を識別するときの特定のソースブロックの識別である。というのも、ソースパケット自体がその情報を含まず、ソースブロック境界の判断および通信のための既存の同期プロトコルが存在しない場合があるからである。1つの可能な解決策は、当該のソースブロックよりも広範囲のソースパケットにわたって上記のソース識別通信プロトコルを使用すること、すなわち、生成されるソース識別データが前および次のソースブロックと重複できるようにすることである。図9にこの解決策の一例を示している。関連するソースパケットの全範囲内でのその相対位置に関してソースブロック境界をシグナリングし、伝達することができる。重複の範囲が広くなるほど、このプロトコルは、余分の帯域幅オーバーヘッドならびにCPU負荷の犠牲を伴うが、より頑強になる。
図10に、図8Bに示した例と同様であるが、ソース識別データの構造が、基準からのオフセットを表す新規フィールド「O」を含むように変更された一実施形態の一例を示す。基準からのオフセットは、図9に示すように、ソースブロック間の生成されるソース識別データの重複の量を決定する。このオフセットを使用して、他の隣接するソースブロックとの、ソースブロックの開始と終了の両方におけるソースデータ単位の重複をそれぞれ決定することができる。このソース識別データによってカバーされるソースブロック内のソースデータ単位のシーケンシングおよび配置を決定することに関しては、このオフセット範囲内で受信された(隣接するソースブロックを下回る)どんなパケットでも廃棄することができる。(これらの廃棄されるパケットが属している隣接ソースブロックをカバーする他のソース識別データにより、これらのパケットをこれらの他の隣接ソースブロック内でどのようにシーケンシングまたは配置するかの判断を処理することができる。)
別の潜在的な問題は、単一のソースブロック内の2つ以上のソースパケットが同じである場合があることである。これらの同じパケットは、パケットに適用するハッシュ関数とは無関係に常にハッシュ衝突を受ける。ハッシュ位置マップでは、両方のパケットシーケンスは同じハッシュ位置に写像する。これは図11Aに示されている。
どのソースパケットが同じであるかを示し、その情報を受信デバイスに伝達する方法を考案することができる。したがって本方法は、受信機は、まったく互いに異なるソースパケットを処理するだけであるという問題を軽減し、その場合、上述のプロトコルを適用することができる。我々の通信の目的では、同じパケットに起因する衝突は、これらの2つのパケットは同じであり、ハッシュ関数において他のいかなる異なるパケットとも衝突しないと仮定しているので、衝突ビットベクトル中でマークしていない。同じ出力値は、同じソースパケットの存在を暗示する。そのような方法の一例が以下である。位置とシーケンスの対応を使用する代わりに、たとえば、図6Aに示す(650)のように、シーケンスと位置の対応を使用する。その場合、各同じパケットは、そのシーケンス番号とは無関係に同じ位置に写像し、各同じパケットについて、シーケンスと位置のマップは、それが写像するのと同じ位置をそのシーケンス番号に記載することができる。たとえば、図11Bに示すように9つのソースデータ単位(1110)が存在し、それとともに、図5Bに示すハッシュ値と同じハッシュ値(520)である、図示のHからの対応するハッシュ値(1120)が存在すると仮定する。これらのハッシュ値(1120)によって決定される配置は、図5Bに示す配置と同じであると仮定する。さらに、シーケンスと配置の対応(1130)は、シーケンス番号4および8をもつ同じソースデータ単位が、両方とも位置5のソースデータ単位に写像されることを示す。この方法を使用するときは、シーケンス中のソースデータ単位の数と、ソース識別データの一部としての一意のソースデータ単位の数の両方を、たとえば、図11Bの例では9と8を示すことが有用であろう。
別の潜在的な問題は、あらゆる利用可能なハッシュ関数をパケットに適用した後でも、異なるパケットがやはり衝突する場合がまれにあるということである。これは、限定されたハッシュ関数選択プールによって、または衝突を解決するために割り振られた時間量の不十分さによって起こる可能性がある。これらの場合、最後の衝突ビットベクトルは、「最後の衝突」用にマークされた1つまたは複数のビットを有する。受信機は、単に、ハッシュ衝突を解決することができないパケットを廃棄する。図12に、この潜在的な解決策を示す。
ソースデータを識別するためにソースシステムマップを使用すると、多くの利点が提供される。たとえば、ソースシステムマップは、最高2、3百までの範囲にあるKのいくつかの値に関して説明した実施形態のいくつかでの各ソースパケットについて追加の約4〜12ビットのデータを必要とするだけなので、サイズについてはかなり効率的である。また、複数のハッシュ関数はCPU負荷を低減するのに役立つ。最初に低複雑度ハッシュ関数を作用させ、次いで、はるかに少ないパケットに対してより高い複雑度のハッシュ関数を後で作用させる。別の利点は、ハッシュ衝突を解決するための追加の方法が必要でないことである。また、ソースシステムマップは、ハッシュ関数の設計または置換に対して柔軟である。
ソース識別データの信頼できる送信
ネットワーク構成に応じて、ソース識別データは、単一チャネル中でFECリペアデータと組み合わせるか、または単独で送信できる。この情報は、パケット回復および/または再順序付けプロセスにおいて重要な場合があるので、ソース識別データに前方消去訂正技法を適用することが好ましい。ソース識別データに適用するFECは、元のソースストリーム上のFECコードといかなる関連ももつ必要がないことに留意されたい。FECは、同じFECコードであっても、なくてもよく、システマティックであっても、なくてもよい。さらに、これらのソース識別データパケット(およびそれらのFECリペア部分)の送信を拡散させることは、送信がバースト消去に対しより弾力的になるので、有益な場合がある。別の技法は、可能ならば、帯域幅オーバーヘッドをさらに低減するために、ソース識別データの全部または一部を、元のソースストリームから生成されたFECリペアデータと組み合わせることである。ソース識別データを元のデータのFECリペアデータとともに使用しない場合、ソース識別データをFEC保護することがやはり好ましいことがある。
一実施形態では、ソースシンボルマップは、(連鎖反応コードを使用して生成されたデータなどの)FECデータとともに送信できる。その結果、受信機は、2つのストリーム、すなわち、変更されていないソースデータをもつ1つのストリームと、元のストリーム用のFECデータ(連鎖反応リペアデータ)およびソースシンボルマップデータをもつ第2のストリームとを受信することができる。ソースシンボルマップデータはまた、それ自体のFECデータを有することもできる。
図13に、ソースシンボルマップからFECリペアデータを生成する方法の一例を示す。図13では、まずソースシンボルマップをいくつかのフラグメントに分解し(1310)、次いで適切なFEC保護方式への入力として使用する(1320)。FEC保護方式は一組のリペアデータを生成し(1330)、次いで元のソースシンボルマップとともに送信することができる。一実施形態では、J個のソースシンボルマップフラグメントがある場合、ソースシンボルマップフラグメントには、0からJ−1の範囲にあるシーケンス番号を割り当て、リペアデータを、Jから始まりJから上に進むシーケンス番号に割り当てるように、シーケンス番号をソースシンボルマップ(1310)のフラグメントとリペアデータ(1330)とに付与する。
図14は、ソースパケットからリペアシンボルが生成されている図である。一実施形態では、リペアシンボルは、連鎖反応コードを使用して生成される。図14に示すように、ソースパケットは、複数のソースシンボルを含み、ソースパケットはそれぞれ、異なる数のシンボルを含むことができる。
図15に、一実施形態におけるリペアパケット情報の構造を示し、このリペアパケットはFECデータとソース識別データの両方を含む。図15に示す実施形態では、ソース識別データはソースシンボルマップの形式である。図15では、Rは、パケット中のFECリペアシンボルの数を表す。まれな場合では、パケット中にリペアシンボルがない場合、Rが0であることがある。SBNは、このパケットによって保護されるソースブロック番号を表す。図15に示す実施例では、SBNは0〜4095の範囲にある。PPは、FEC方式によって与えられる保護期間である。図15に示す実施形態では、PPは10msを単位とする。SBNとPPは両方とも、ストリームの同期を拡張するために使用できる。ESIは、パケット中の第1のFECリペアシンボルの符号化シンボルIDである。Kは、ソースブロック中のソースシンボルの数である。Jは、SSMフラグメントシーケンス番号である。Xは、元のSSMフラグメントの数である。同じパケット内で連続するFECリペアシンボルは、連続する符号化シンボルIDを有する。SSMフラグメントは、元のソース識別データ、または元のソース識別データフラグメント用のFECリペアデータのいずれかを備えることができる。
図16に、図15に示すデータ構造からのフィールドを使用してどのようにソースシステムマップを再構成することができるかを示す1つの例示的な実施形態を示す。図16では、一実施形態における元のソースデータを保護するFECリペアパケット中でどんなSSMデータを搬送することができるかを示すために、リペアパケットからのフィールドJ、X、およびSSMフラグメント(1610)を拡張している。
図17は、受信機がソースシステムマップを使用して、受信機が受信したソースシンボルに適用する方法を示す流れ図である。受信したソースパケット(1710)にSSM情報を適用する(1720)。受信機がソースパケットの一意の位置を識別することができない場合、または何らかの理由でプロセスが不正な結果を出力する場合(1730)、たとえば、ソースパケットがこのソースブロックの位置またはシーケンス番号の有効な範囲内にない場合、このソースブロックからソースパケットを廃棄することができる(1740)。対応付けに成功した場合、ソースシンボル位置および/またはシーケンシングをソースシンボルマップから抽出し(1750)、ソースシンボルに関連付けることができる。次いで、ソースシンボルを連鎖反応復号器などのFEC復号器に渡して(1760)、ソースブロックの回復などのさらなる処理を行うことができる。
伝送誤り処理
多くの実施形態では、符号器から復号器に送信されるデータストリームは、ネットワークを介して一連のパケット中で送信される。多くのそのようなネットワークでは、パケットの送信中に発生し得る多数の潜在的な誤りが存在する。送信中に、パケットは損失し、パケット配信は遅延になり、パケットは重複する可能性があり、復号器は、異なる時刻において同じパケットを受信する可能性がある。いくつかの実施形態では、復号器は、時間制約を受け、ある時間期間の後に所与のソースブロックの復号をタイムアウトさせることがある。しかし、関連するソースブロックがすでにタイムアウトした後に、ネットワークの性質のせいでパケットが受信機に配信されることがある。以下は、受信機が様々なパケット誤りを扱うことができる方法のいくつかの例である。以下の例のいずれも、受信機によって様々な誤りを処理することができる方法の網羅的なリストを与えるものではない。
図18に、損失したパケットが2つのブロックにわたるパケット受信タイムアウトを示す。間違ったブロックにソースパケットが関連付けられる可能性がある場合、両方のブロックをアプリケーションにフラッシュすることができる。本明細書で使用するフラッシングは、当該のブロックを復号するための試行をしないでソースパケットがそのまま戻されることを意味することができる。代替的に、フラッシングは、ソースパケットを単に廃棄することを意味することができる。ブロックN+2に対して作用すれば、通常の受信および復号に戻る。時々、タイムアウトは、3つ以上のブロックにわたる損失したパケットに関連することがある。そのような場合、中間のソースパケットを一時的ブロック中に格納し、次いで最終的にアプリケーションにフラッシュすることができる。
図19に、ソースブロック中の早期での早期バースト損失を示す。ブロックNに属するパケットはアプリケーションにフラッシュされる。ブロックN+1に対して作用すれば、通常の受信および復号を続けることができる。
図20および図21に、同じブロック内でまたは拡張ブロック内で受信された遅延パケットを示す。どちらの状況でも、遅延パケットは、特殊な処理なしでブロックN内において正しく識別できる。ソースブロックNおよびNの後のソースブロックについて、受信および復号動作が通常通り進む。
図22に、拡張ブロックを越える遅延パケットを示す。ブロックNは通常通り復号される。ブロックN+1については、遅延パケットに対してなされ得ることに関して3つの可能なシナリオがある。第1の可能性は、遅延パケットが不正であるとみなされることである。たとえば、パケットは、SSM中に含まれる任意のパケットIDに正しくハッシュすることができない場合がある。この場合、パケットは廃棄され、ブロックN+1が通常通り復号される。第2の可能性は、遅延パケットには、ブロックN+1上のSSMに従ってパケットIDが割り当てられるが、この割り当てられたパケットIDが、ブロックN+1について受信された別のパケットのIDと一致することである。このシナリオでは、ブロックN+1を復号する試行は行われず、ブロックN+1はアプリケーションにフラッシュされる。第3の可能性は、遅延パケットには、ブロックN+1上のSSMに従ってパケットIDが割り当てられ、ブロックN+1中の他のどんなパケットもこのパケットIDをとらないことである。このシナリオでは、ブロックN+1に対する復号の試行が行われ、回復されたブロックのチェックサムに依拠してこの復号の試行が無効化される。この無効化により、ブロックN+1について受信したソースパケットのみがアプリケーションに戻される。
図23A/図23Bに、拡張ブロック内で受信された重複パケットを示す。どちらの状況でも、重複パケットは、ブロックN内において正しく識別できる。受信および復号動作が、通常通り容易に進むことができる。
図24に、拡張ブロックを越えて受信された重複パケットを示す。ブロックNは通常通り復号される。ブロックN+1については、重複パケットに対してなされ得ることに関して3つの可能なシナリオがある。第1の可能性は、重複パケットが不正であるとみなされることである。たとえば、パケットは、SSM中に含まれる任意のパケットIDに正しくハッシュすることができない場合がある。この場合、パケットは廃棄され、ブロックN+1が通常通り復号される。第2の可能性は、重複パケットには、ブロックN+1上のSSMに従ってパケットIDが割り当てられるが、この割り当てられたパケットIDが、ブロックN+1について受信された別のパケットのIDと一致することである。このシナリオでは、ブロックN+1を復号する試行は行われず、ブロックN+1はアプリケーションにフラッシュされる。第3の可能性は、重複パケットには、ブロックN+1上のSSMに従ってパケットIDが割り当てられ、ブロックN+1中の他のどんなパケットもこのパケットIDをとらないことである。このシナリオでは、ブロックN+1に対する復号の試行が行われ、回復されたブロックのチェックサムに依拠してこの復号の試行が無効化される。この無効化により、ブロックN+1について受信したソースパケットのみがアプリケーションに戻される。
事例研究
以下は、多種多様なシステムについて説明した方法の特徴を示すいくつかの事例研究である。これらは、FECコードを使用してFECリペアパケットを追加して元のストリームを保護し、各SSMがデータストリーム全体のうちの小部分をカバーするストリーミング適用例の事例研究である。これらの事例研究のすべてにおいて、
各ソースデータパケットは、7つのMPEG−2 TS単位を搬送し、各MPEG−2 TS単位は188バイトである。
各ソースパケットが1シンボルとなるように、シンボルサイズを1320バイトに選択する。各リペアパケットは、1つのFECリペアシンボルと、SSMの全部または一部などの他のデータとを搬送する。
SSMは、各FECリペアパケット中で全体的に搬送されるか、FECリペアパケット内で部分的に搬送されるかのいずれかである。
各SSMは、FEC保護を適用すべきデータの1つのソースブロックをカバーし、各SSMは、隣接するソースブロックからのパケットをフィルタ除去するためにそれらのソースブロックに関する何らかの重複情報を搬送する。
各場合において、ネットワークを介してパケットを送信するときのパケットのフラグメンテーションを避けるために、最大パケットサイズは1500バイトであることが望ましい。
各場合において、PSSMおよびPFECという2つの値が導出される。PSSMは、SSMデータを回復するために十分なパケットがソースブロックに関して到着しない確率であり、一方、PFECは、理想的なFECコードを仮定しているソースブロックを回復するために十分なパケットがソースブロックに関して到着しない確率である。これらの確率は、各事例について述べる損失状態の下に、ランダムなおよび独立したパケット損失を仮定して計算される。
事例研究1
ソースデータストリームレートは4Mbpsである。
SSMカバレージ期間(=保護期間):125ms
損失状態:0.1%
導出されたパラメータ:
1ソースブロック中のパケット数=48
リペアパケットの数=3
SSMについての考察:
SSM用に使用されるパケット数(各端部上で5パケットが重複)=58
ハッシュ関数の数=5
ハッシュ衝突ベクトル割当て=約20バイト
ハッシュ位置マップ割当て≦58バイト
SSM長は100バイト未満なので、SSM全体を各FECリペアパケット中で搬送することができる。
失敗率:
Figure 0005027305
事例研究2
ソースデータストリームレートは4Mbpsである。
SSMカバレージ期間(=保護期間):250ms
損失状態:0.7%
導出されたパラメータ:
1ソースブロック中のパケット数=95
リペアパケットの数=9
SSMについての考察:
SSM用に使用されるパケット数(各端部上で10パケットが重複)=115
ハッシュ関数の数=5
ハッシュ衝突ベクトル割当て=約40バイト
ハッシュ位置マップ割当て=約114バイト
全SSM長=約168バイト
SSMは、2つのセグメントに分割する
FEC保護を使用して、別の9−2=7個のリペアSSMセグメントを生成する
各FECリペアパケットは、1つのSSMセグメントを搬送する
失敗率:
Figure 0005027305
事例研究3
ソースデータストリームレートは6Mbpsである。
SSMカバレージ期間(=保護期間):500ms
損失状態:0.7%
導出されたパラメータ:
1ソースブロック中のパケット数=285
リペアパケットの数=25
SSMについての考察:
SSM用に使用されるパケット数(各端部上で30パケットが重複)=345
ハッシュ関数の数=7
ハッシュ衝突ベクトル割当て=約120バイト
ハッシュ位置マップ割当て=約400バイト
全SSM長=約538バイト
SSMは、5つのセグメントに分割する
FEC保護を使用して、別の25−5=20個のリペアSSMセグメントを生成する
各FECリペアパケットは、1つのSSMセグメントを搬送する
失敗率:
Figure 0005027305
図25は、0.7%未満の損失状態下での様々な保護期間および保護量に対する4Mbpsストリームの失敗率チャートである。このデータから引き出すことのできる結論は、不完全なSSMによる復号失敗の確率は、FEC受信シンボルの数が不十分なことによる復号失敗の確率よりもはるかに小さいということである。
複数のストリーム/再送信の実施形態
図26に、ストリームの混合を使用してデータをセットトップボックスに送信する通信システム2600の一例を示す。ヘッドエンドデバイス2610は、ソースストリーム中に元のソースデータを備える元のプログラムと、FECリペアデータおよび/またはソース識別データを備えることができるプログラム用の2つの別個のリペアストリームとをネットワーク2620に送信する。ネットワーク2620は、元のプログラムを中間サーバ2630に送信する。この中間サーバ2630は、ソースストリームとリペアストリームのうちの1つとをネットワーク2650に送信する。ネットワーク2650は、ネットワーク2620と同じネットワークとすることができるが、異なるネットワークとすることもできる。いずれの場合も、ネットワーク2650は次いで、ソースストリームと1つのリペアストリームとを1つまたは複数のSTB2640に送信する。STBのいずれかによって受信されたデータが、ソースデータを生成するのに不十分である場合、STBは再送信ストリームを要求することができる。この要求は中間サーバ2630に送信され、この中間サーバ2630は、再送信の要求に応答して、第1のリペアストリームとは異なる第2のリペアストリームを送信することができる。いくつかの実施形態では、第2のリペアストリームからのパケットは中間サーバ上でキャッシュされる。いくつかの実施形態では、中間サーバ2630は、STBにまだ送信されていないリペアデータをキャッシュした。いくつかの実施形態では、中間サーバ2630は、ソースストリームの保護期間に基づいてリペアデータをキャッシュする。いくつかの実施形態では、ソースまたはリペアストリームのキャッシングは、システム/ネットワーク中の他の場所で行うことができる。いくつかの実施形態では、STBは、再送信要求中に、リペアパケットの特定の数など、リペアデータの特定の量を要求することができる。いくつかの実施形態では、STBは、STBが受信したソース識別データに基づいてリペアデータ(ソースデータまたはFECリペアデータ)を要求することができる。いくつかの実施形態では、最初にソースデータおよび/またはリペアデータを受信したSTBは、中間サーバにキャッシュされているデータを(1つまたは複数の)ユニキャストストリーム中で第1に受信し、次いで中間サーバは、STBに送信された(1つまたは複数の)ストリームを、(1つまたは複数の)マルチキャストストリームに遷移する。通信システム2600には多くの変形形態が存在し、ソースストリームおよびリペアストリームが1つの論理ストリームとして送信される変形形態、セットトップボックスが他のタイプの受信デバイスである変形形態、ある受信デバイスはソース識別データ方法をサポートせず、ある受信デバイスはソース識別データ方法をFEC方法とともにサポートし、別の受信デバイスはソース識別方法を再送信方法とともにサポートし、別の受信デバイスはソース識別方法を再送信方法とFEC方法の両方とともにサポートし、別の受信デバイスはソース識別方法をデータ再順序付け方法とともにサポートする変形形態、複数の送信デバイスが存在する変形形態、プログラムのリペアの送信および/または生成デバイスが元のプログラムの送信および/または生成デバイスとは論理的または物理的に異なる変形形態、送信デバイスが少なくとも時々受信デバイスとなるかまたはその逆の変形形態、FEC方法または再送信方法以外の理由により、たとえばデータ再順序付け方法をサポートするためにソース識別データ方法をサポートする変形形態がある。
DVB−T/DVB−H実施形態
ソースデータを含むデータストリームとは別個のデータストリーム中で送信されるソース識別データは、様々なシステムに適用できる。たとえば、付録Aは、FEC保護およびソース識別データが、DVB−Tブロードキャストネットワークなどのネットワーク上で搬送される第1のデータストリーム上で送信でき、一方、元のソースデータは、同じネットワーク上で送信される第2のデータストリーム上で送信できるシステムを開示している。付録Aは、すべての目的のために本開示に組み込まれる。他の実施形態では、FEC保護およびソース識別データは、DVB−Hブロードキャストネットワークなどのネットワーク上で搬送される第1のデータストリーム上で送信でき、一方、元のソースデータは、DVB−Tネットワークなどの別のネットワーク上で送信される第2のデータストリーム上で送信できる。
DVB−Tネットワークおよび設定は、定位置受信機に送信するように設計されているが、DVB−Tネットワークの使用を他のタイプの受信機、たとえば、より劣悪な位置にあるモバイル受信機または定位置受信機に拡張することには大きい利点があることに留意されたい。これらのタイプの新しい受信機では、既存のDVB−Tネットワーク上に存在する誤り状態は、しばしば、高品質ストリーミングビデオなどの関連する適用例をサポートするにはあまりに厄介である。本開示で説明する方法を使用することにより、これらのネットワークの使用をこれらの新しい受信機に拡張して、通常ならばあまりに厄介でサポートできない適用例をサポートできるようになる。ネットワークアップグレードを適用することはこれらの方法には必要とされず、これらの新しい受信機をサポートするために既存の受信機をアップグレードすべきという要件も存在しない。ネットワーク状態が、新しい受信機にとって既存の受信機よりもはるかに悪い場合であっても、既存の受信機と同じ品質でビデオストリームを回復し、プレイアウトするために、新しい受信機は、本開示で説明する方法を使用することによって、元のデータストリームに関連するソース識別データおよびFECリペアデータを受信することに加えて、元の変更されていないデータストリームを受信できるようになる。
本開示を検討すれば当業者には明らかなように、本明細書に記載の方法は、それぞれのコードに関連する手順に従ってデータを独立して処理する場合よりも大きい誤り訂正を与える仕方で2つ以上の送信コードからのデータを組み合わせることができるという性質を受信機において維持しながら、異なるFECコードをサポートするようにもちろん拡張できる。
上記の記述は、例示および説明のために提示した。上記の記述は、網羅的なものでも、本発明を開示した正確な形態に限定するものでもなく、上記の教示に照らして明らかに多くの修正および変更が可能である。説明した実施形態は、本発明の原理およびその実際的な適用を最も良く説明し、それにより他の当業者が、企図される特定の使用に適した様々な実施形態において様々な修正を加えて本発明を最も良く利用できるようにするために選択したものである。本発明の範囲は、本明細書に添付の特許請求の範囲によって定義されるものである。
以下に本件出願当初の特許請求の範囲に記載された発明を付記する。
[1] ソースデータのソース識別データを生成し、送信するための方法であって、前記ソースデータがK個のソースデータ単位に分割されており、Kが1よりも大きく、前記ソース識別データが、他のソースデータ単位に対するソースデータ単位の位置を識別するため、および損失または破損したソースデータ単位を識別するために使用でき、前記方法が
前記K個のソースデータ単位からソース識別データを生成することと、
前記ソースデータ単位のセットを備える第1のデータストリームを受信機に送信することと、
前記ソース識別データを備える第2のデータストリームを前記受信機に送信することと、
を備える方法。
[2] 前記ソース識別データが、前記第1および第2のデータストリームの受信者が、前記ソース識別データを生成するために使用される前記K個のソースデータ単位の識別ラベルを判断できるようにする[1]に記載の方法。
[3] 前記ソース識別データが、前記第1および第2のデータストリームの受信者が、任意のソースデータ単位の識別ラベルを判断できるようにする[1]に記載の方法。
[4] 前記ソース識別データが、前記第1および第2のデータストリームの受信者が、すべての前記ソースデータ単位の順序付けに関して所与のソースデータ単位の位置を判断できるようにする[1]に記載の方法。
[5] 前記ソース識別データが、前記第1および第2のデータストリームの受信者が、すべての前記ソースデータ単位のソース判断順序シーケンスに関して所与のソースデータ単位の位置を判断できるようにする[1]に記載の方法。
[6] 前記第2のデータストリームが前記ソースデータ単位のリペアデータをさらに備える[1]に記載の方法。
[7] 前記第2のデータストリームが前記ソース識別データのリペアデータをさらに備える[1]に記載の方法。
[8] 前記第1のデータストリームがDVB−Tを介して送信され、前記第2のデータストリームがDVB−Hを介して送信される[1]に記載の方法。
[9] 前記受信機から追加のデータの要求を受信することと、
前記受信機に第3のデータストリームを送信することと、
をさらに備える[1]に記載の方法。
[10] 前記第3のデータストリームがソースデータ単位の第2のセットを備える[9]に記載の方法。
[11] 前記第3のデータストリームが前記ソースデータ単位のリペアデータを備える[9]に記載の方法。
[12] 前記K個のソースデータ単位からソース識別データを生成することが、
前記K個のソースデータ単位の各々から順序集合Sを作成するステップと、
i)Sの各メンバにハッシュ関数H を適用するステップであって、H が、Sの前記メンバを可能なL個のハッシュ出力の1つに写像し、H が、Sの前記メンバの少なくともX個を一意のハッシュ出力に写像する、適用するステップと、
ii)前記L個のハッシュ出力に対応するベクトルを作成するステップであって、前記ベクトルが、前記L個のハッシュ出力のどれが衝突を経験するか、および前記L個のハッシュ出力のどれがSのメンバに一意に写像するかを示す、作成するステップと、
iii)一意のハッシュ出力に写像しないSの要素を備える集合S を作成するステップと、
iv)S が空集合になるまで、または最大回数の繰返しが実行し終わるまでステップi〜iiiを繰り返すステップであって、ステップi〜iiiの繰返しごとにS がSとして使用され、繰返しごとにH が、ステップi〜iiiの前の繰返し中に使用された前記ハッシュ関数とは異なるハッシュ関数であり、繰返しごとにLおよびXの値が変化することができる、繰り返すステップと、
ステップi〜iiiの各繰返し中に作成された前記ベクトルからソース識別データを生成するステップと、
を備える[1]に記載の方法。
[13] 前記ベクトルが、Sの一意に写像された各メンバのS中の所在をさらに示し、前記方法が、
ステップi〜iiiの各繰返し中に作成された前記ベクトルによって示されるようにSの前記一意に写像されたメンバの前記所在から位置とシーケンスとの対応を生成すること、
をさらに備える[12]に記載の方法。
[14] [1]に記載の方法を実行するためのコードを備えるコンピュータ可読媒体。
[15] プロセッサと、前記プロセッサに結合された[14]に記載のコンピュータ可読媒体とを備える送信機。
[16] ソース識別データを受信し、前記ソース識別データをソースデータに関連付けるための方法であって、前記ソースデータがK個のソースデータ単位に分割されており、Kが1よりも大きく、前記ソース識別データが、他のソースデータ単位に対するソースデータ単位の位置を識別するため、および損失または破損したソースデータ単位を識別するために使用でき、前記方法が、
第1のデータストリームから複数のソースデータ単位を受信することと、
第2のデータストリームからソース識別データを受信することと、
前記ソース識別データを前記複数のソースデータ単位に関連付けることと、
を備える方法。
[17] 前記受信された複数のソースデータ単位の識別ラベルを判断することをさらに備える[16]に記載の方法。
[18] 前記受信された複数のソースデータ単位のメンバではないソースデータ単位の識別ラベルを判断することをさらに備える、[16]に記載の方法。
[19] すべての前記ソースデータ単位の順序付けに関して前記複数のソースデータ単位中のソースデータ単位の位置を判断することをさらに備える[16]に記載の方法。
[20] すべての前記ソースデータ単位のソース判断順序シーケンスに関して前記複数のソースデータ単位中のソースデータ単位の位置を判断することをさらに備える[16]に記載の方法。
[21] 前記第2のデータストリームから前記複数のソースデータ単位のリペアデータを受信することをさらに備える[16]に記載の方法。
[22] 前記第2のデータストリームから前記ソース識別データのリペアデータを受信することをさらに備える[16]に記載の方法。
[23] 前記第1のデータストリームがDVB−Tを介して受信され、前記第2のデータストリームがDVB−Hを介して受信される[16]に記載の方法。
[24] 前記K個のソースデータ単位のいずれかが受信されなかったかどうかを判断するために、前記ソース識別データおよび前記複数のソースデータ単位を分析することと、
前記K個のソースデータ単位のいずれかが受信されなかった場合、追加のデータを要求することと、
をさらに備える[16]に記載の方法。
[25] 第3のデータストリームから前記追加のデータを受信することをさらに備える[24]に記載の方法。
[26] 前記ソース識別データを前記複数のソースデータ単位に関連付けることが、
前記複数のソースデータ単位の各々から集合Sを作成するステップと、
i)Sのメンバの各々に関連付けられるハッシュされた出力を得るために、Sの各メンバにハッシュ関数H を適用するステップであって、H がSの前記メンバの各々を可能なL個のハッシュ出力の1つに写像する、適用するステップと、
ii)前記ハッシュされた出力のどれが前記ハッシュされた出力に関連付けられた前記ソースデータ単位を一意に識別するかを判断するステップと、
iii)ハッシュされた出力がソースデータ単位を一意に識別すると判断された場合、Sから前記一意に識別されたソースデータ単位を除去し、前記ソース識別データからの識別データの適切なセットを前記一意に識別されたソースデータ単位に関連付けるステップと、
iv)前記ハッシュされた出力の1つが一意でないと判断された場合、Sが空集合になるまで、または最大回数の繰返しが実行し終わるまでステップi〜iiiを繰り返すステップであって、繰返しごとにH が、Lの潜在的に異なる値を用いたステップi〜iiiの前の繰返し中に使用された前記ハッシュ関数とは異なるハッシュ関数である、繰り返すステップと、
を備える、[16]に記載の方法。
[27] ステップi〜ivの繰返しごとに適用される前記H が前記ソース識別データから判断される[26]に記載の方法
[28] 前記ハッシュされた出力のどれが前記ハッシュされた出力に関連付けられた前記ソースデータ単位を一意に識別するかを判断するステップが、
各ハッシュされた出力を前記ソース識別データからのベクトルと比較することであって、前記ベクトルが前記可能なL個のハッシュ出力に対応し、前記ベクトルが、前記L個のハッシュ出力のどれが衝突を経験するか、および前記L個のハッシュ出力のどれがSのメンバに一意に写像するかを示す、比較することを備える[26]に記載の方法。
[29] 前記ソース識別データが位置とシーケンスとの対応を含み、前記ソース識別データからの識別データの適切なセットを前記一意に識別されたソースデータ単位に関連付けることが、前記位置とシーケンスとの対応からの所在情報を前記一意に識別されたソースデータ単位に関連付けることを備える[28]に記載の方法。
[30] ソースデータ単位が前記ソース識別データからの識別データの適切なセットに関連付けられる場合、前記ソースデータ単位を復号器に渡すことをさらに備える[26]に記載の方法。
[31] ソースデータ単位が前記ソース識別データからの識別データの適切なセットに関連付けられない場合、前記ソースデータ単位を廃棄することをさらに備える[26]に記載の方法。
[32] [16]に記載の方法を実行するためのコードを備えるコンピュータ可読媒体。
[33] プロセッサと、前記プロセッサに結合された[32]に記載のコンピュータ可読媒体とを備える受信機。

Claims (33)

  1. ソースデータのソース識別データを生成し、送信するための方法であって、前記ソースデータが1よりも大きいK個のソースデータ単位に分割され、前記ソース識別データ他のソースデータ単位に対して相対的な当該ソースデータ単位の位置を特定し、損失または破損したソースデータ単位を特定するために使用することができる当該送信するための方法において
    前記K個のソースデータ単位から前記ソース識別データを生成することと、
    第1のデータストリームを受信機に送信することであって、この第1のデータストリームが前記ソースデータ単位のセットから構成され、また、この第1のデータストリームが前記ソース識別データを有していないところの、当該第1のデータストリームを受信機に送信することと、
    第2のデータストリームを前記受信機に送信することであって、当該第2のデータストリームが前記ソース識別データで構成され、当該ソース識別データが前記第1のデータストリームで送信される前記ソースデータ単位のセットとは区別され、また、前記第1のデータストリームで送信される前記ソースデータ単位のセット内において、当該ソース識別データが当該ソースデータ単位を特定するに利用されるところの、前記第2のデータストリームを前記受信機に送信することと、
    を備える方法。
  2. 前記ソース識別データが前記第1および第2のデータストリームの受信側に対して、前記ソース識別データを生成するに使用される前記K個のソースデータ単位の識別ラベルを判断可能とする請求項1に記載の方法。
  3. 前記ソース識別データが前記第1および第2のデータストリームの受信側に対して任意のソースデータ単位の識別ラベルを判断可能とする請求項1に記載の方法。
  4. 前記ソース識別データが前記第1および第2のデータストリームの受信側に対してすべての前記ソースデータ単位の順序付けに関して任意のソースデータ単位の位置を判断可能とする請求項1に記載の方法。
  5. 前記ソース識別データが前記第1および第2のデータストリームの受信側に対してすべての前記ソースデータ単位のソース判断順序シーケンスに関して任意のソースデータ単位の位置を判断可能とする請求項1に記載の方法。
  6. 前記第2のデータストリームが前記ソースデータ単位のリペアデータをさらに備える請求項1に記載の方法。
  7. 前記第2のデータストリームが前記ソース識別データのリペアデータをさらに備える請求項1に記載の方法。
  8. 前記第1のデータストリームがDVB−Tを介して送信され、前記第2のデータストリームがDVB−Hを介して送信される請求項1に記載の方法。
  9. 前記受信機から追加のデータの要求を受信することと、
    前記受信機に第3のデータストリームを送信することと
    をさらに備える請求項1に記載の方法。
  10. 前記第3のデータストリームがソースデータ単位の第2のセットを備える請求項9に記載の方法。
  11. 前記第3のデータストリームが前記ソースデータ単位のリペアデータを備える請求項9に記載の方法。
  12. 前記K個のソースデータ単位からソース識別データを生成することが、
    前記K個のソースデータ単位の各々から順序集合Sを作成するステップと、
    i)前記順序集合Sの各メンバにハッシュ関数Hiを適用するステップであって、前記ハッシュ関数Hiが前記順序集合Sの前記メンバを可能なL個のハッシュ出力の1つに写像し、前記ハッシュ関数Hiが前記順序集合Sの前記メンバの少なくともX個を一意のハッシュ出力に写像するところの適用するステップと、
    ii)前記L個のハッシュ出力に対応するベクトルを作成するステップであって、前記ベクトルが、前記L個のハッシュ出力のどれが衝突を経験するか、および前記L個のハッシュ出力のどれが前記順序集合Sのメンバに独自に(一意に)写像するかを示すところの作成するステップと、
    iii)一意のハッシュ出力に写像しない前記順序集合Sの要素から構成される集合Siを作成するステップと、
    iv)前記集合Siが空集合になるまで、または最大回数の繰返しが実行し終わるまでステップi〜iiiを繰り返すステップであって、ステップi〜iiiの繰返しごとに前記集合Siが前記順序集合Sとして使用され、繰返しごとに前記ハッシュ関数Hiが、ステップi〜iiiの前の繰返し中に使用された前記ハッシュ関数とは異なるハッシュ関数であり、繰返しごとにLおよびXの値が変化することができる、繰り返すステップと、
    ステップi〜iiiの各繰返し中に作成された前記ベクトルからソース識別データを生成するステップと
    を備える、請求項1に記載の方法。
  13. 前記ベクトルが、Sの一意に写像された各メンバのS中の所在をさらに示し、前記方法が、
    ステップi〜iiiの各繰返し中に作成された前記ベクトルによって示されるようにSの前記独自(一意)に写像されたメンバの前記所在から位置とシーケンスとの対応を生成すること
    をさらに備える請求項12に記載の方法。
  14. コンピュータによって請求項1に記載の方法を実行するためのコードを備えるコンピュータ可読記憶媒体。
  15. プロセッサを備えた前記コンピュータと、前記プロセッサに結合された請求項14に記載のコンピュータ可読記憶媒体とを備える送信機。
  16. ソース識別データを受信し、前記ソース識別データをソースデータに関連付ける方法であって、前記ソースデータが1よりも大きいK個のソースデータ単位に分割され、前記ソース識別データが他のソースデータ単位に対して相対的なソースデータ単位の位置を特定し、損失または破損したソースデータ単位を特定するために使用することができる当該方法において
    第1のデータストリームから複数のソースデータ単位を受信することであって、この第1のデータストリームが前記ソース識別データを有していないところの、当該複数のソースデータ単位を受信することと、
    第2のデータストリームからソース識別データを受信することであって、当該第2のデータストリームが前記第1データストリームから区別されている当該ソース識別データを受信することと、
    前記第2のデータストリームからのパケットセットから得られる前記ソース識別データを前記第2のデータストリームからの前記パケットセットから区別される前記複数のソースデータ単位に関連付けることであって、当該ソース識別データが前記多数のソースデータ単位におけるソースデータ単位を特定するに利用することができるところの、前記複数のソースデータ単位に関連付けることと、
    を備える方法。
  17. 前記受信された複数のソースデータ単位の識別ラベルを判断すること
    をさらに備える請求項16に記載の方法。
  18. 前記受信された複数のソースデータ単位のメンバではない任意のソースデータ単位に対する識別ラベルを判断すること
    をさらに備える、請求項16に記載の方法。
  19. すべての前記ソースデータ単位の順序付けに関して前記複数のソースデータ単位中のソースデータ単位の位置を判断すること
    をさらに備える、請求項16に記載の方法。
  20. すべての前記ソースデータ単位のソース判断順序シーケンスに関して前記複数のソースデータ単位中のソースデータ単位の位置を判断すること
    をさらに備える、請求項16に記載の方法。
  21. 前記第2のデータストリームから前記複数のソースデータ単位のリペアデータを受信すること
    をさらに備える、請求項16に記載の方法。
  22. 前記第2のデータストリームから前記ソース識別データのリペアデータを受信することをさらに備える、請求項16に記載の方法。
  23. 前記第1のデータストリームがDVB−Tを介して受信され、前記第2のデータストリームがDVB−Hを介して受信される請求項16に記載の方法。
  24. 前記K個のソースデータ単位のいずれかが受信されなかったかどうかを判断するために、前記ソース識別データおよび前記複数のソースデータ単位を分析することと、
    前記K個のソースデータ単位のいずれかが受信されなかった場合、追加のデータを要求することと
    をさらに備える請求項16に記載の方法。
  25. 第3のデータストリームから前記追加のデータを受信すること
    をさらに備える、請求項24に記載の方法。
  26. 前記ソース識別データを前記複数のソースデータ単位に関連付けることが、
    前記複数のソースデータ単位の各々から集合Sを作成するステップと、
    i)前記集合Sのメンバの各々に関連付けられるハッシュされた出力を得るために、前記集合Sの各メンバにハッシュ関数Hiを適用するステップであって、前記ハッシュ関数Hiが前記集合Sの前記メンバの各々を可能なL個のハッシュ出力の1つに写像するところの適用するステップと、
    ii)前記ハッシュされた出力のどれが前記ハッシュされた出力に関連付けられた前記ソースデータ単位を一意に識別するかを判断するステップと、
    iii)ハッシュされた出力がソースデータ単位を一意に識別すると判断された場合、前記集合Sから前記一意に識別されたソースデータ単位を除去し、前記ソース識別データからの識別データの適切なセットを前記一意に識別されたソースデータ単位に関連付けるステップと、
    iv) 前記ハッシュされた出力の1つが一意でないと判断された場合、前記集合Sが空集合になるまで、または最大回数の繰返しが実行し終わるまでステップi〜iiiを繰り返すステップであって、繰返しごとに前記ハッシュ関数Hiが、Lの潜在的に異なる値を用いたステップi〜iiiの前の繰返し中に使用された前記ハッシュ関数とは異なるハッシュ関数である、繰り返すステップと
    を備える、請求項16に記載の方法。
  27. ステップi〜ivの繰返しごとに適用される前記ハッシュ関数Hiが前記ソース識別データから判断される、請求項26に記載の方法。
  28. 前記ハッシュされた出力のどれが前記ハッシュされた出力に関連付けられた前記ソースデータ単位を一意に識別するかを判断するステップが、
    各ハッシュされた出力を前記ソース識別データからのベクトルと比較することであって、前記ベクトルが前記可能なL個のハッシュ出力に対応し、前記ベクトルが、前記L個のハッシュ出力のどれが衝突を経験するか、および前記L個のハッシュ出力のどれがSのメンバに一意に写像するかを示すところの比較すること
    を備える請求項26に記載の方法。
  29. 前記ソース識別データが位置とシーケンスとの対応を含み、前記ソース識別データからの識別データの適切なセットを前記一意に識別されたソースデータ単位に関連付けることが、前記位置とシーケンスとの対応からの所在情報を前記一意に識別されたソースデータ単位に関連付けることを備える請求項28に記載の方法。
  30. ソースデータ単位が前記ソース識別データからの識別データの適切なセットに関連付けられる場合、前記ソースデータ単位を復号器に渡すこと
    をさらに備える、請求項26に記載の方法。
  31. ソースデータ単位が前記ソース識別データからの識別データの適切なセットに関連付けられない場合、前記ソースデータ単位を廃棄すること
    をさらに備える請求項26に記載の方法。
  32. 請求項16に記載の方法を実行するためのコードを備えるコンピュータ可読記憶媒体。
  33. プロセッサと、前記プロセッサに結合された請求項32に記載のコンピュータ可読記憶媒体とを備える受信機。
JP2010525048A 2007-09-12 2008-09-12 信頼できる通信を可能にするためのソース識別情報の生成および伝達 Expired - Fee Related JP5027305B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US97188407P 2007-09-12 2007-09-12
US60/971,884 2007-09-12
US9327708P 2008-08-29 2008-08-29
US61/093,277 2008-08-29
PCT/US2008/076299 WO2009036378A1 (en) 2007-09-12 2008-09-12 Generating and communicating source identification information to enable reliable communications

Publications (2)

Publication Number Publication Date
JP2010539816A JP2010539816A (ja) 2010-12-16
JP5027305B2 true JP5027305B2 (ja) 2012-09-19

Family

ID=40431803

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2010525048A Expired - Fee Related JP5027305B2 (ja) 2007-09-12 2008-09-12 信頼できる通信を可能にするためのソース識別情報の生成および伝達

Country Status (11)

Country Link
US (1) US9237101B2 (ja)
EP (1) EP2203836A4 (ja)
JP (1) JP5027305B2 (ja)
KR (1) KR101129260B1 (ja)
CN (1) CN101802797B (ja)
AU (1) AU2008298602A1 (ja)
BR (1) BRPI0816680A2 (ja)
CA (1) CA2697764A1 (ja)
MX (1) MX2010002829A (ja)
RU (1) RU2010114256A (ja)
WO (1) WO2009036378A1 (ja)

Families Citing this family (69)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7068729B2 (en) * 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US9240810B2 (en) * 2002-06-11 2016-01-19 Digital Fountain, Inc. Systems and processes for decoding chain reaction codes through inactivation
ES2445116T3 (es) * 2002-06-11 2014-02-28 Digital Fountain, Inc. Descodificación de códigos de reacción en cadena por inactivación
EP1552617A2 (en) * 2002-10-05 2005-07-13 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
CN101834610B (zh) 2003-10-06 2013-01-30 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法和装置
US7418651B2 (en) 2004-05-07 2008-08-26 Digital Fountain, Inc. File download and streaming system
CN101686107B (zh) 2006-02-13 2014-08-13 数字方敦股份有限公司 使用可变fec开销和保护周期的流送和缓冲
US9270414B2 (en) * 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US7971129B2 (en) 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US9432433B2 (en) 2006-06-09 2016-08-30 Qualcomm Incorporated Enhanced block-request streaming system using signaling or block creation
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
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
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
US9178535B2 (en) * 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US20100211690A1 (en) * 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9386064B2 (en) * 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US8332896B2 (en) * 2007-07-05 2012-12-11 Coherent Logix, Incorporated Transmission of multimedia streams to mobile devices with cross stream association
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
JP5847577B2 (ja) * 2008-05-07 2016-01-27 デジタル ファウンテン, インコーポレイテッド より低いレベルのパケット構造から導かれる記号識別子を用いた放送チャネル上の高品質ストリーム保護
US8103718B2 (en) * 2008-07-31 2012-01-24 Microsoft Corporation Content discovery and transfer between mobile communications nodes
US8649276B2 (en) * 2008-07-31 2014-02-11 Microsoft Corporation Content transfer
US8645801B2 (en) * 2008-08-21 2014-02-04 Alcatel Lucent Delivery method for internet protocol television (IPTV)
ATE549860T1 (de) * 2009-01-13 2012-03-15 Alcatel Lucent Espana S A Verfahren und vorrichtung zur zuverlässigkeitssicherstellung während der übertragung von fernsehdaten in einem internetprotokoll basierendem fernsehsystem
US9281847B2 (en) * 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
JP2010213150A (ja) * 2009-03-12 2010-09-24 Nec Corp 送信装置、大容量ファイル配信システム、同システムにおけるファィル再送制御方法、再送制御プログラム
CN101902315B (zh) * 2009-06-01 2013-04-17 华为技术有限公司 基于前向纠错的重传方法、设备和通信系统
US8732746B2 (en) * 2009-06-01 2014-05-20 Fourthwall Media, Inc. System for and method of targeting broadcast messages
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
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
US20110096828A1 (en) * 2009-09-22 2011-04-28 Qualcomm Incorporated Enhanced block-request streaming using scalable encoding
EP2309668A1 (en) 2009-10-09 2011-04-13 Thomson Licensing A digital receiver and corresponding digital transmission system server
US9136981B2 (en) * 2010-03-03 2015-09-15 Qualcomm Incorporated Block aggregation of objects in a communication system
US8489948B2 (en) * 2010-04-02 2013-07-16 Nokia Corporation Methods and apparatuses for facilitating error correction
US20110280311A1 (en) 2010-05-13 2011-11-17 Qualcomm Incorporated One-stream coding for asymmetric stereo video
US9049497B2 (en) 2010-06-29 2015-06-02 Qualcomm Incorporated Signaling random access points for streaming video data
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
JP2012151849A (ja) 2011-01-19 2012-08-09 Nhn Business Platform Corp P2p基盤のストリーミングサービスのデータストリームをパケット化するシステムおよび方法
US9270299B2 (en) 2011-02-11 2016-02-23 Qualcomm Incorporated Encoding and decoding using elastic codes with flexible source block mapping
US20120208580A1 (en) * 2011-02-11 2012-08-16 Qualcomm Incorporated Forward error correction scheduling for an improved radio link protocol
US8958375B2 (en) 2011-02-11 2015-02-17 Qualcomm Incorporated Framing for an improved radio link protocol including FEC
US10169119B1 (en) 2011-08-28 2019-01-01 Ross Daniel Snyder Method and apparatus for improving reliability of digital communications
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
FR2989241B1 (fr) * 2012-04-05 2018-01-26 Easybroadcast Procede de diffusion d'un contenu dans un reseau informatique.
KR101961736B1 (ko) 2012-04-23 2019-03-25 삼성전자 주식회사 통신 시스템에서 패킷 송수신 장치 및 방법
US8904024B2 (en) * 2012-08-03 2014-12-02 Ittiam Systems (P) Ltd System and method for low delay fast update for video streaming
JP6135078B2 (ja) * 2012-09-14 2017-05-31 富士通株式会社 到達確認メッセージについての情報処理方法及び情報処理装置
US10015486B2 (en) 2012-10-26 2018-07-03 Intel Corporation Enhanced video decoding with application layer forward error correction
US20150031289A1 (en) * 2013-07-26 2015-01-29 Rajiv Agarwal Autonomous discovery and control of devices via an overlay communication channel
JP5662533B1 (ja) * 2013-08-28 2015-01-28 日本電信電話株式会社 送信装置、受信装置、およびコンピュータプログラム
JP6576827B2 (ja) * 2013-10-31 2019-09-18 パナソニック インテレクチュアル プロパティ コーポレーション オブ アメリカPanasonic Intellectual Property Corporation of America パケット送信方法、コンテンツ再生方法、パケット送信システム及び端末
US9661657B2 (en) 2013-11-27 2017-05-23 Intel Corporation TCP traffic adaptation in wireless systems
JP5728069B1 (ja) * 2013-12-11 2015-06-03 日本電信電話株式会社 前方誤り訂正情報生成装置、前方誤り訂正装置、前方誤り訂正情報生成方法、前方誤り訂正方法、前方誤り訂正情報生成プログラム、および前方誤り訂正プログラム
WO2015105404A1 (ko) * 2014-01-13 2015-07-16 삼성전자 주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
KR20150084632A (ko) 2014-01-13 2015-07-22 삼성전자주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
MX362782B (es) * 2014-01-28 2019-02-08 Sa Photonics Inc Retransmisión de datos por sistema de comunicación óptica por espacio libre atmosférico.
KR102208814B1 (ko) 2014-03-28 2021-01-28 삼성전자주식회사 통신 시스템에서 패킷 송수신 방법 및 장치
US9559805B2 (en) * 2014-11-03 2017-01-31 Cisco Technology, Inc. Self-describing error correction of consolidated media content
JP5938086B2 (ja) * 2014-11-13 2016-06-22 日本電信電話株式会社 受信装置、受信装置の動作方法およびコンピュータプログラム
US9949168B2 (en) * 2015-09-24 2018-04-17 Qualcomm Incorporated Reliable data channel over periodic discovery messages
US9673937B2 (en) * 2015-10-12 2017-06-06 International Business Machines Corporation Adaptive network communication protocols
US9825801B1 (en) 2016-07-22 2017-11-21 Spotify Ab Systems and methods for using seektables to stream media items
US10909122B2 (en) * 2018-11-09 2021-02-02 International Business Machines Corporation Using modified blockchain concepts to guarantee no tuple loss and/or no tuple corruption
US11658776B2 (en) * 2019-11-08 2023-05-23 Semiconductor Components Industries, Llc Feedback and retransmission format of HARQ protocol
CN115333677A (zh) * 2022-08-25 2022-11-11 中国电信股份有限公司 云业务处理方法、系统、装置、设备及存储介质
US12200052B1 (en) 2023-11-03 2025-01-14 International Business Machines Corporation Adapting unreliable data sink to reliable stream

Family Cites Families (552)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3909721A (en) 1972-01-31 1975-09-30 Signatron Signal processing system
US4365338A (en) 1980-06-27 1982-12-21 Harris Corporation Technique for high rate digital transmission over a dynamic dispersive channel
US4965825A (en) * 1981-11-03 1990-10-23 The Personalized Mass Media Corporation Signal processing apparatus and methods
US4589112A (en) * 1984-01-26 1986-05-13 International Business Machines Corporation System for multiple error detection with single and double bit error correction
US4901319A (en) * 1988-03-18 1990-02-13 General Electric Company Transmission system with adaptive interleaving
GB8815978D0 (en) 1988-07-05 1988-08-10 British Telecomm Method & apparatus for encoding decoding & transmitting data in compressed form
US5136592A (en) 1989-06-28 1992-08-04 Digital Equipment Corporation Error detection and correction system for long burst errors
US5421031A (en) * 1989-08-23 1995-05-30 Delta Beta Pty. Ltd. Program transmission optimisation
US7594250B2 (en) 1992-04-02 2009-09-22 Debey Henry C Method and system of program transmission optimization using a redundant transmission sequence
US5701582A (en) 1989-08-23 1997-12-23 Delta Beta Pty. Ltd. Method and apparatus for efficient transmissions of programs
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 株式会社東芝 データ再送制御方法及びデータ再送制御システム
CA2219379A1 (en) 1995-04-27 1996-10-31 Cadathur V. Chakravarthy High integrity transport for time critical multimedia networking 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
EP0854650A3 (en) 1997-01-17 2001-05-02 NOKIA TECHNOLOGY GmbH Method for addressing a service in digital video broadcasting
US5983383A (en) 1997-01-17 1999-11-09 Qualcom Incorporated Method and apparatus for transmitting and receiving concatenated code data
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
WO1998039927A1 (fr) 1997-03-07 1998-09-11 Sanyo Electric Co., Ltd. Recepteur de telediffusion numerique et afficheur
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 윤종용 이중 다이버서티 시스템을 위한 데이터 전송 방법
US5933056A (en) 1997-07-15 1999-08-03 Exar Corporation Single pole current mode common-mode feedback circuit
US6175944B1 (en) * 1997-07-15 2001-01-16 Lucent Technologies Inc. Methods and apparatus for packetizing data for transmission through an erasure broadcast channel
US6047069A (en) 1997-07-17 2000-04-04 Hewlett-Packard Company Method and apparatus for preserving error correction capabilities during data encryption/decryption
US6904110B2 (en) * 1997-07-31 2005-06-07 Francois Trans Channel equalization system and method
US6178536B1 (en) * 1997-08-14 2001-01-23 International Business Machines Corporation Coding scheme for file backup and systems based thereon
FR2767940A1 (fr) * 1997-08-29 1999-02-26 Canon Kk Procedes et dispositifs de codage et de decodage et appareils les mettant en oeuvre
EP0903955A1 (en) 1997-09-04 1999-03-24 STMicroelectronics S.r.l. Modular architecture PET decoder for ATM networks
US6088330A (en) 1997-09-09 2000-07-11 Bruck; Joshua Reliable array of distributed computing nodes
US6134596A (en) 1997-09-18 2000-10-17 Microsoft Corporation Continuous media file server system and method for scheduling network resources to play multiple files having different data transmission rates
US6272658B1 (en) 1997-10-27 2001-08-07 Kencast, Inc. Method and system for reliable broadcasting of data files and streams
US6163870A (en) 1997-11-06 2000-12-19 Compaq Computer Corporation Message encoding with irregular graphing
US6195777B1 (en) * 1997-11-06 2001-02-27 Compaq Computer Corporation Loss resilient code with double heavy tailed series of redundant layers
US6081909A (en) 1997-11-06 2000-06-27 Digital Equipment Corporation Irregularly graphed encoding technique
US6073250A (en) 1997-11-06 2000-06-06 Luby; Michael G. Loss resilient decoding technique
US6081918A (en) 1997-11-06 2000-06-27 Spielman; Daniel A. Loss resilient code with cascading series of redundant layers
JP3472115B2 (ja) 1997-11-25 2003-12-02 Kddi株式会社 マルチチャンネルを用いるビデオデータ伝送方法及びその装置
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
US6307487B1 (en) 1998-09-23 2001-10-23 Digital Fountain, Inc. Information additive code generator and decoder for communication systems
US7243285B2 (en) 1998-09-23 2007-07-10 Digital Fountain, Inc. Systems and methods for broadcasting information additive codes
US6320520B1 (en) 1998-09-23 2001-11-20 Digital Fountain Information additive group code generator and decoder for communications systems
US7068729B2 (en) 2001-12-21 2006-06-27 Digital Fountain, Inc. Multi-stage code generator and decoder for communication systems
US6704370B1 (en) * 1998-10-09 2004-03-09 Nortel Networks Limited Interleaving methodology and apparatus for CDMA
IT1303735B1 (it) 1998-11-11 2001-02-23 Falorni Italia Farmaceutici S Acidi ialuronici reticolati e loro usi medici.
US6408128B1 (en) 1998-11-12 2002-06-18 Max Abecassis Replaying with supplementary information a segment of a video
US6483736B2 (en) 1998-11-16 2002-11-19 Matrix Semiconductor, Inc. Vertically stacked field programmable nonvolatile memory and method of fabrication
JP2000151426A (ja) 1998-11-17 2000-05-30 Toshiba Corp インターリーブ・デインターリーブ回路
US6166544A (en) 1998-11-25 2000-12-26 General Electric Company MR imaging system with interactive image contrast control
US6876623B1 (en) 1998-12-02 2005-04-05 Agere Systems Inc. Tuning scheme for code division multiplex broadcasting system
ES2185244T3 (es) 1998-12-03 2003-04-16 Fraunhofer Ges Forschung Aparato y procedimiento para transmitir informacion y aparato y procedimiento para recibir informacion.
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
AU2827400A (en) * 1999-03-03 2000-09-21 Sony Corporation Transmitter, receiver, transmitter/receiver system, transmission method and reception method
US6785323B1 (en) 1999-11-22 2004-08-31 Ipr Licensing, Inc. Variable rate coding for forward link
US6466698B1 (en) 1999-03-25 2002-10-15 The United States Of America As Represented By The Secretary Of The Navy Efficient embedded image and video compression system using lifted wavelets
JP3256517B2 (ja) 1999-04-06 2002-02-12 インターナショナル・ビジネス・マシーンズ・コーポレーション 符号化回路、回路、パリティ生成方法及び記憶媒体
US6535920B1 (en) * 1999-04-06 2003-03-18 Microsoft Corporation Analyzing, indexing and seeking of streaming information
US6609223B1 (en) 1999-04-06 2003-08-19 Kencast, Inc. Method for packet-level fec encoding, in which on a source packet-by-source packet basis, the error correction contributions of a source packet to a plurality of wildcard packets are computed, and the source packet is transmitted thereafter
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
EP1051027B1 (en) 1999-05-06 2006-05-24 Sony Corporation Methods and apparatus for data processing, methods and apparatus for data reproducing and recording media
KR100416996B1 (ko) 1999-05-10 2004-02-05 삼성전자주식회사 이동 통신시스템에서 라디오링크프로토콜에 따른 가변 길이의 데이터 송수신 장치 및 방법
US6229824B1 (en) * 1999-05-26 2001-05-08 Xm Satellite Radio Inc. Method and apparatus for concatenated convolutional endcoding and interleaving
US6154452A (en) 1999-05-26 2000-11-28 Xm Satellite Radio Inc. Method and apparatus for continuous cross-channel interleaving
AU5140200A (en) 1999-05-26 2000-12-18 Enounce, Incorporated Method and apparatus for controlling time-scale modification during multi-media broadcasts
JP2000353969A (ja) 1999-06-11 2000-12-19 Sony Corp デジタル音声放送の受信機
US6577599B1 (en) * 1999-06-30 2003-06-10 Sun Microsystems, Inc. Small-scale reliable multicasting
IL141800A0 (en) 1999-07-06 2002-03-10 Samsung Electronics Co Ltd Rate matching device and method for a data communication system
US6643332B1 (en) 1999-07-09 2003-11-04 Lsi Logic Corporation Method and apparatus for multi-level coding of digital signals
US6279072B1 (en) 1999-07-22 2001-08-21 Micron Technology, Inc. Reconfigurable memory with selectable error correction storage
JP3451221B2 (ja) 1999-07-22 2003-09-29 日本無線株式会社 誤り訂正符号化装置、方法及び媒体、並びに誤り訂正符号復号装置、方法及び媒体
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 ソニー株式会社 送信装置、受信装置、通信システム、送信方法及び通信方法
JP2001094625A (ja) 1999-09-27 2001-04-06 Canon Inc データ通信装置、データ通信方法及び記憶媒体
DE60033011T2 (de) 1999-09-27 2007-08-09 Koninklijke Philips Electronics N.V. Aufteilung einer datei zur emulation eines datenstroms
US7529806B1 (en) 1999-11-04 2009-05-05 Koninklijke Philips Electronics N.V. Partitioning of MP3 content file for emulating streaming
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
US6748441B1 (en) 1999-12-02 2004-06-08 Microsoft Corporation Data carousel receiving and caching
US6678855B1 (en) * 1999-12-02 2004-01-13 Microsoft Corporation Selecting K in a data transmission carousel using (N,K) forward error correction
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
US6965636B1 (en) 2000-02-01 2005-11-15 2Wire, Inc. System and method for block error correction in packet-based digital communications
US20020009137A1 (en) 2000-02-01 2002-01-24 Nelson John E. Three-dimensional video broadcasting system
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
WO2001058130A2 (en) 2000-02-03 2001-08-09 Bandwiz, Inc. Coding method
JP2001251287A (ja) 2000-02-24 2001-09-14 Geneticware Corp Ltd ハードウエア保護内部秘匿鍵及び可変パスコードを利用する機密データ伝送方法
DE10009443A1 (de) 2000-02-29 2001-08-30 Philips Corp Intellectual Pty Empfänger und Verfahren zum Detektieren und Dekodieren eines DQPSK-modulierten und kanalkodierten Empfangssignals
US6765866B1 (en) * 2000-02-29 2004-07-20 Mosaid Technologies, Inc. Link aggregation
US6384750B1 (en) 2000-03-23 2002-05-07 Mosaid Technologies, Inc. Multi-stage lookup for translating between signals of different bit lengths
JP2001274776A (ja) 2000-03-24 2001-10-05 Toshiba Corp 情報データ伝送システムとその送信装置及び受信装置
US6510177B1 (en) 2000-03-24 2003-01-21 Microsoft Corporation System and method for layered video coding enhancement
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
US7031257B1 (en) 2000-09-22 2006-04-18 Lucent Technologies Inc. Radio link protocol (RLP)/point-to-point protocol (PPP) design that passes corrupted data and error location information among layers in a wireless data transmission protocol
US7151754B1 (en) 2000-09-22 2006-12-19 Lucent Technologies Inc. Complete user datagram protocol (CUDP) for wireless multimedia packet networks using improved packet level forward error correction (FEC) coding
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
KR100908954B1 (ko) 2000-12-15 2009-07-22 브리티쉬 텔리커뮤니케이션즈 파블릭 리미티드 캄퍼니 오디오 또는 비디오 자료의 전송방법 및 장치
JP4087706B2 (ja) 2000-12-15 2008-05-21 ブリティッシュ・テレコミュニケーションズ・パブリック・リミテッド・カンパニー オーディオおよび、またはビデオマテリアルの送信および受信
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
TWI246841B (en) 2001-04-22 2006-01-01 Koninkl Philips Electronics Nv Digital transmission system and method for transmitting digital signals
US20020191116A1 (en) 2001-04-24 2002-12-19 Damien Kessler System and data format for providing seamless stream switching in a digital video recorder
US7962482B2 (en) 2001-05-16 2011-06-14 Pandora Media, Inc. Methods and systems for utilizing contextual feedback to generate and modify playlists
US6633856B2 (en) 2001-06-15 2003-10-14 Flarion Technologies, Inc. Methods and apparatus for decoding LDPC codes
US7076478B2 (en) 2001-06-26 2006-07-11 Microsoft Corporation Wrapper playlists on streaming media services
US6745364B2 (en) 2001-06-28 2004-06-01 Microsoft Corporation Negotiated/dynamic error correction for streamed media
JP2003018568A (ja) 2001-06-29 2003-01-17 Matsushita Electric Ind Co Ltd 再生システム、サーバ装置及び再生装置
US6895547B2 (en) * 2001-07-11 2005-05-17 International Business Machines Corporation Method and apparatus for low density parity check encoding of data
US6928603B1 (en) 2001-07-19 2005-08-09 Adaptix, Inc. System and method for interference mitigation using adaptive forward error correction in a wireless RF data transmission system
US6961890B2 (en) * 2001-08-16 2005-11-01 Hewlett-Packard Development Company, L.P. Dynamic variable-length error correction code
US7110412B2 (en) 2001-09-18 2006-09-19 Sbc Technology Resources, Inc. Method and system to transport high-quality video signals
FI115418B (fi) 2001-09-20 2005-04-29 Oplayo Oy Adaptiivinen mediavirta
US6990624B2 (en) 2001-10-12 2006-01-24 Agere Systems Inc. High speed syndrome-based FEC encoder and decoder and system using same
US7480703B2 (en) 2001-11-09 2009-01-20 Sony Corporation System, method, and computer program product for remotely determining the configuration of a multi-media content user based on response of the user
US7003712B2 (en) * 2001-11-29 2006-02-21 Emin Martinian Apparatus and method for adaptive, multimode decoding
US7363354B2 (en) 2001-11-29 2008-04-22 Nokia Corporation System and method for identifying and accessing network services
JP2003174489A (ja) 2001-12-05 2003-06-20 Ntt Docomo Inc ストリーミング配信装置、ストリーミング配信方法
FI114527B (fi) 2002-01-23 2004-10-29 Nokia Corp Kuvakehysten ryhmittely videokoodauksessa
EP1670259A3 (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
AU2003211057A1 (en) * 2002-02-15 2003-09-09 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
JP2005522965A (ja) 2002-04-15 2005-07-28 ノキア コーポレイション 通信局のrlp論理層
US6677864B2 (en) * 2002-04-18 2004-01-13 Telefonaktiebolaget L.M. Ericsson Method for multicast over wireless networks
JP3629008B2 (ja) 2002-04-19 2005-03-16 松下電器産業株式会社 データ受信装置及びデータ配信システム
JP3689063B2 (ja) 2002-04-19 2005-08-31 松下電器産業株式会社 データ受信装置及びデータ配信システム
WO2003092305A1 (fr) 2002-04-25 2003-11-06 Sharp Kabushiki Kaisha Codeur d'images, decodeur d'images, support d'enregistrement et enregistreur d'images
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
ES2445116T3 (es) * 2002-06-11 2014-02-28 Digital Fountain, Inc. Descodificación de códigos de reacción en cadena por 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 住友電気工業株式会社 伝送データ生成方法及び伝送データ生成装置
EP1547382A4 (en) 2002-07-16 2013-10-30 Nokia Corp METHOD FOR DIRECT ACCESS AND UNIQUE IMAGE REFRESHING IN VIDEO CODING
CN1685639A (zh) 2002-07-31 2005-10-19 夏普株式会社 数据通信装置、其间歇通信方法、记载该方法的计算机程序及记录该计算机程序的记录介质
JP2004070712A (ja) 2002-08-07 2004-03-04 Nippon Telegr & Teleph Corp <Ntt> データ配信方法,データ配信システム,分割配信データ受信方法,分割配信データ受信装置および分割配信データ受信プログラム
JP2005536097A (ja) 2002-08-13 2005-11-24 ノキア コーポレイション 記号インターリービング
US6985459B2 (en) 2002-08-21 2006-01-10 Qualcomm Incorporated Early transmission and playout of packets in wireless communication systems
WO2004030273A1 (ja) 2002-09-27 2004-04-08 Fujitsu Limited データ配信方法、システム、伝送方法及びプログラム
JP3534742B1 (ja) 2002-10-03 2004-06-07 株式会社エヌ・ティ・ティ・ドコモ 動画像復号方法、動画像復号装置、及び動画像復号プログラム
EP1552617A2 (en) 2002-10-05 2005-07-13 Digital Fountain, Inc. Systematic encoding and decoding of chain reaction codes
JP2004135013A (ja) 2002-10-10 2004-04-30 Matsushita Electric Ind Co Ltd 伝送装置及び伝送方法
FI116816B (fi) 2002-10-14 2006-02-28 Nokia Corp Median suoratoisto
US7289451B2 (en) 2002-10-25 2007-10-30 Telefonaktiebolaget Lm Ericsson (Publ) Delay trading between communication links
US8320301B2 (en) 2002-10-25 2012-11-27 Qualcomm Incorporated MIMO WLAN system
JP4460455B2 (ja) 2002-10-30 2010-05-12 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 適応的順方向誤り制御スキーム
JP2004165922A (ja) 2002-11-12 2004-06-10 Sony Corp 情報処理装置および方法、並びにプログラム
CA2505853A1 (en) 2002-11-18 2004-06-03 British Telecommunications Public Limited Company Transmission of video
GB0226872D0 (en) 2002-11-18 2002-12-24 British Telecomm Video transmission
KR100502609B1 (ko) 2002-11-21 2005-07-20 한국전자통신연구원 Ldpc 코드를 이용한 부호화기 및 부호화 방법
US7086718B2 (en) * 2002-11-23 2006-08-08 Silverbrook Research Pty Ltd Thermal ink jet printhead with high nozzle areal density
JP2004192140A (ja) 2002-12-09 2004-07-08 Sony Corp データ通信システム、データ送信装置、データ受信装置、および方法、並びにコンピュータ・プログラム
JP2004193992A (ja) 2002-12-11 2004-07-08 Sony Corp 情報処理システム、情報処理装置および方法、記録媒体、並びにプログラム
US8135073B2 (en) 2002-12-19 2012-03-13 Trident Microsystems (Far East) Ltd Enhancing video images depending on prior image enhancements
US7164882B2 (en) * 2002-12-24 2007-01-16 Poltorak Alexander I Apparatus and method for facilitating a purchase using information provided on a media playing device
WO2004068715A2 (en) 2003-01-29 2004-08-12 Digital Fountain, Inc. Systems and processes for fast encoding of hamming codes
US7525994B2 (en) * 2003-01-30 2009-04-28 Avaya Inc. Packet data flow identification for multiplexing
US7756002B2 (en) 2003-01-30 2010-07-13 Texas Instruments Incorporated Time-frequency interleaved orthogonal frequency division multiplexing ultra wide band physical layer
US7231404B2 (en) 2003-01-31 2007-06-12 Nokia Corporation Datacast file transmission with meta-data retention
US7062272B2 (en) 2003-02-18 2006-06-13 Qualcomm Incorporated Method and apparatus to track count of broadcast content recipients in a wireless telephone network
US20050013274A1 (en) * 2003-03-05 2005-01-20 Harri Pekonen System and method for data transmission and reception
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エンコード装置
US7483525B2 (en) 2003-05-23 2009-01-27 Navin Chaddha Method and system for selecting a communication channel with a recipient device over a communication network
JP2004362099A (ja) 2003-06-03 2004-12-24 Sony Corp サーバ装置、情報処理装置、および情報処理方法、並びにコンピュータ・プログラム
JP2006514806A (ja) 2003-06-07 2006-05-11 サムスン エレクトロニクス カンパニー リミテッド マルチメディアデータの提供装置及びその提供方法並びにその方法を記録した記録媒体
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
CN1864359B (zh) 2003-08-21 2012-04-18 高通股份有限公司 用于广播和组播内容跨小区边界和/或不同传送方案之间的无缝传送的方法和相关装置
US8694869B2 (en) 2003-08-21 2014-04-08 QUALCIMM Incorporated Methods for forward error correction coding above a radio link control layer and related apparatus
IL157885A0 (en) * 2003-09-11 2004-03-28 Bamboo Mediacasting Ltd Iterative forward error correction
IL157886A0 (en) * 2003-09-11 2009-02-11 Bamboo Mediacasting Ltd Secure multicast transmission
JP4183586B2 (ja) 2003-09-12 2008-11-19 三洋電機株式会社 映像表示装置
US7555006B2 (en) 2003-09-15 2009-06-30 The Directv Group, Inc. Method and system for adaptive transcoding and transrating in a video network
KR100608715B1 (ko) 2003-09-27 2006-08-04 엘지전자 주식회사 QoS보장형 멀티미디어 스트리밍 서비스 시스템 및 방법
DE60307852D1 (de) 2003-09-30 2006-10-05 Ericsson Telefon Ab L M In-place Entschachtelung von Daten
US7559004B1 (en) 2003-10-01 2009-07-07 Sandisk Corporation Dynamic redundant area configuration in a non-volatile memory system
CN101834610B (zh) 2003-10-06 2013-01-30 数字方敦股份有限公司 通过通信信道接收从源发射的数据的方法和装置
US7516232B2 (en) * 2003-10-10 2009-04-07 Microsoft Corporation Media organization for distributed sending of media data
US7614071B2 (en) * 2003-10-10 2009-11-03 Microsoft Corporation Architecture for distributed sending of media data
WO2005036811A2 (en) * 2003-10-14 2005-04-21 Matsushita Electric Industrial Co., Ltd. Data converter
US7650036B2 (en) * 2003-10-16 2010-01-19 Sharp Laboratories Of America, Inc. System and method for three-dimensional video coding
US7168030B2 (en) * 2003-10-17 2007-01-23 Telefonaktiebolaget Lm Ericsson (Publ) Turbo code decoder with parity information update
US8132215B2 (en) 2003-10-27 2012-03-06 Panasonic Corporation Apparatus for receiving broadcast signal
JP2005136546A (ja) 2003-10-29 2005-05-26 Sony Corp 送信装置および方法、記録媒体、並びにプログラム
DE602004011445T2 (de) 2003-11-03 2009-01-15 Broadcom Corp., Irvine FEC-Dekodierung mit dynamischen Parametern
US20050102371A1 (en) * 2003-11-07 2005-05-12 Emre Aksu Streaming from a server to a client
KR101041762B1 (ko) 2003-12-01 2011-06-17 디지털 파운튼, 인크. 통신 채널을 통해 소스로부터 목적지로 데이터를 송신 및 인코딩하는 방법
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
WO2005094020A1 (en) 2004-03-19 2005-10-06 Telefonaktiebolaget Lm Ericsson (Publ) Higher layer packet framing using rlp
US7240236B2 (en) 2004-03-23 2007-07-03 Archivas, Inc. Fixed content distributed data storage using permutation ring encoding
JP4433287B2 (ja) 2004-03-25 2010-03-17 ソニー株式会社 受信装置および方法、並びにプログラム
US8842175B2 (en) 2004-03-26 2014-09-23 Broadcom Corporation Anticipatory video signal reception and processing
US20050216472A1 (en) 2004-03-29 2005-09-29 David Leon Efficient multicast/broadcast distribution of formatted data
EP1733394A1 (en) 2004-03-30 2006-12-20 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
US7418651B2 (en) 2004-05-07 2008-08-26 Digital Fountain, Inc. File download and streaming system
US7633970B2 (en) * 2004-05-07 2009-12-15 Agere Systems Inc. MAC header compression for use with frame aggregation
US20050254575A1 (en) 2004-05-12 2005-11-17 Nokia Corporation Multiple interoperability points for scalable media coding and transmission
US20060037057A1 (en) * 2004-05-24 2006-02-16 Sharp Laboratories Of America, Inc. Method and system of enabling trick play modes using HTTP GET
US8331445B2 (en) * 2004-06-01 2012-12-11 Qualcomm Incorporated Method, apparatus, and system for enhancing robustness of predictive video codecs using a side-channel based on distributed source coding techniques
US20070110074A1 (en) * 2004-06-04 2007-05-17 Bob Bradley System and Method for Synchronizing Media Presentation at Multiple Recipients
US8112531B2 (en) 2004-07-14 2012-02-07 Nokia Corporation Grouping of session objects
US7139660B2 (en) 2004-07-14 2006-11-21 General Motors Corporation System and method for changing motor vehicle personalization settings
US8544043B2 (en) 2004-07-21 2013-09-24 Qualcomm Incorporated Methods and apparatus for providing content information to content servers
US7409626B1 (en) 2004-07-28 2008-08-05 Ikanos Communications Inc Method and apparatus for determining codeword interleaver parameters
US7376150B2 (en) 2004-07-30 2008-05-20 Nokia Corporation Point-to-point repair response mechanism for point-to-multipoint transmission systems
US7590922B2 (en) 2004-07-30 2009-09-15 Nokia Corporation Point-to-point repair request mechanism for point-to-multipoint transmission systems
US7930184B2 (en) 2004-08-04 2011-04-19 Dts, Inc. Multi-channel audio coding/decoding of random access points and transients
WO2006020826A2 (en) 2004-08-11 2006-02-23 Digital Fountain, Inc. Method and apparatus for fast encoding of data symbols according to half-weight codes
JP4405875B2 (ja) * 2004-08-25 2010-01-27 富士通株式会社 エラー訂正用データの生成方法及び生成装置並びに生成プログラム及び同プログラムを格納したコンピュータ読み取り可能な記録媒体
JP2006074335A (ja) 2004-09-01 2006-03-16 Nippon Telegr & Teleph Corp <Ntt> 伝送方法、伝送システム及び伝送装置
JP4576936B2 (ja) 2004-09-02 2010-11-10 ソニー株式会社 情報処理装置、情報記録媒体、コンテンツ管理システム、およびデータ処理方法、並びにコンピュータ・プログラム
JP2006115104A (ja) 2004-10-13 2006-04-27 Daiichikosho Co Ltd 高能率符号化された時系列情報をパケット化してリアルタイム・ストリーミング送信し受信再生する方法および装置
US7529984B2 (en) 2004-11-16 2009-05-05 Infineon Technologies Ag Seamless change of depth of a general convolutional interleaver during transmission without loss of data
US7751324B2 (en) * 2004-11-19 2010-07-06 Nokia Corporation Packet stream arrangement in multimedia transmission
EP1815684B1 (en) 2004-11-22 2014-12-31 Thomson Research Funding Corporation Method and apparatus for channel change in dsl system
CN101061659B (zh) 2004-12-02 2015-04-29 汤姆逊许可公司 自适应前向纠错的方法和设备
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 株式会社第一興商 高能率符号化された時系列情報をリアルタイム・ストリーミング送信し受信再生する方法と受信装置
JP2008530835A (ja) 2005-02-08 2008-08-07 テレフオンアクチーボラゲット エル エム エリクソン(パブル) パケット交換ネットワーク上のオンデマンドマルチチャネルストリーミングセッション
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
US7418649B2 (en) 2005-03-15 2008-08-26 Microsoft Corporation Efficient implementation of reed-solomon erasure resilient codes in high-rate applications
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
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
MX2007012564A (es) 2005-04-13 2007-11-15 Nokia Corp Codificacion, almacenamiento y senalizacion de informacion de escalabilidad.
JP4515319B2 (ja) 2005-04-27 2010-07-28 株式会社日立製作所 コンピュータシステム
US7961700B2 (en) 2005-04-28 2011-06-14 Qualcomm Incorporated Multi-carrier operation in data transmission systems
US8683066B2 (en) * 2007-08-06 2014-03-25 DISH Digital L.L.C. Apparatus, system, and method for multi-bitrate content streaming
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
EP1884063A1 (en) * 2005-05-24 2008-02-06 Nokia Corporation Method and apparatuses for hierarchical transmission/reception in digital broadcast
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
WO2007029443A1 (ja) * 2005-09-09 2007-03-15 Matsushita Electric Industrial Co., Ltd. 画像処理方法、画像記録方法、画像処理装置および画像ファイルフォーマット
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
US8879857B2 (en) * 2005-09-27 2014-11-04 Qualcomm Incorporated Redundant data encoding methods and device
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 华为技术有限公司 分组网络中多媒体实时传输的唇同步方法及其装置
AU2006300881B2 (en) 2005-10-11 2011-03-17 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
US8225164B2 (en) 2006-01-05 2012-07-17 Telefonaktiebolaget Lm Ericsson (Publ) Media container file management
US8214516B2 (en) 2006-01-06 2012-07-03 Google Inc. Dynamic media serving infrastructure
RU2409910C2 (ru) 2006-01-11 2011-01-20 Нокиа Корпорейшн Агрегация изображений с обратной совместимостью при масштабируемом видеокодировании
US20070177674A1 (en) 2006-01-12 2007-08-02 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
CN101686107B (zh) 2006-02-13 2014-08-13 数字方敦股份有限公司 使用可变fec开销和保护周期的流送和缓冲
US9270414B2 (en) 2006-02-21 2016-02-23 Digital Fountain, Inc. Multiple-field based code generator and decoder for communications systems
US20070200949A1 (en) 2006-02-21 2007-08-30 Qualcomm Incorporated Rapid tuning in multimedia applications
JP2007228205A (ja) 2006-02-23 2007-09-06 Funai Electric Co Ltd ネットワークサーバ
US8320450B2 (en) 2006-03-29 2012-11-27 Vidyo, Inc. System and method for transcoding between scalable and non-scalable video codecs
US20080010153A1 (en) 2006-04-24 2008-01-10 Pugh-O'connor Archie Computer network provided digital content under an advertising and revenue sharing basis, such as music provided via the internet with time-shifted advertisements presented by a client resident application
US20090100496A1 (en) * 2006-04-24 2009-04-16 Andreas Bechtolsheim Media server system
US7640353B2 (en) 2006-04-27 2009-12-29 Microsoft Corporation Guided random seek support for media streaming
US7971129B2 (en) * 2006-05-10 2011-06-28 Digital Fountain, Inc. Code generator and decoder for communications systems operating using hybrid codes to allow for multiple efficient users of the communications systems
US7525993B2 (en) 2006-05-24 2009-04-28 Newport Media, Inc. Robust transmission system and method for mobile television applications
TWM302355U (en) 2006-06-09 2006-12-11 Jia-Bau Jeng Fixation and cushion structure of knee joint
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
US9386064B2 (en) 2006-06-09 2016-07-05 Qualcomm Incorporated Enhanced block-request streaming using URL templates and construction rules
US9380096B2 (en) 2006-06-09 2016-06-28 Qualcomm Incorporated Enhanced block-request streaming system for handling low-latency streaming
US9178535B2 (en) 2006-06-09 2015-11-03 Digital Fountain, Inc. Dynamic stream interleaving and sub-stream based delivery
US20100211690A1 (en) 2009-02-13 2010-08-19 Digital Fountain, Inc. Block partitioning for a data stream
US9209934B2 (en) 2006-06-09 2015-12-08 Qualcomm Incorporated Enhanced block-request streaming using cooperative parallel HTTP and forward error correction
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
EP2055107B1 (en) 2006-08-24 2013-05-15 Nokia Corporation Hint of tracks relationships for multi-stream media files in multiple description coding MDC.
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
RU2419245C2 (ru) 2006-11-14 2011-05-20 Квэлкомм Инкорпорейтед Системы и способы для переключения каналов
US8027328B2 (en) 2006-12-26 2011-09-27 Alcatel Lucent Header compression in a wireless communication network
WO2008086313A1 (en) 2007-01-05 2008-07-17 Divx, Inc. Video distribution system including progressive playback
US20080168516A1 (en) 2007-01-08 2008-07-10 Christopher Lance Flick Facilitating Random Access In Streaming Content
CN101669323A (zh) 2007-01-09 2010-03-10 诺基亚公司 用于在mbms文件修复中支持文件版本控制的方法
CA2656144A1 (en) 2007-01-11 2008-07-17 Panasonic Corporation Method for trick playing on streamed and encrypted multimedia
US20080172430A1 (en) 2007-01-11 2008-07-17 Andrew Thomas Thorstensen Fragmentation Compression Management
KR20080066408A (ko) 2007-01-12 2008-07-16 삼성전자주식회사 3차원 영상 처리 장치 및 방법
CN101543018B (zh) 2007-01-12 2012-12-26 庆熙大学校产学协力团 网络提取层单元的分组格式、使用该格式的视频编解码算法和装置以及使用该格式进行IPv6标签交换的QoS控制算法和装置
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
US7805456B2 (en) 2007-02-05 2010-09-28 Microsoft Corporation Query pattern to enable type flow of element types
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
US8848781B2 (en) 2007-05-16 2014-09-30 Thomson Licensing Apparatus and method for encoding and decoding signals
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
CN101690118B (zh) 2007-06-20 2013-08-28 艾利森电话股份有限公司 用于改进的媒体会话管理的方法和设备
CN101690229A (zh) * 2007-06-26 2010-03-31 诺基亚公司 用于指示时间层切换点的系统和方法
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
JP5027305B2 (ja) 2007-09-12 2012-09-19 デジタル ファウンテン, インコーポレイテッド 信頼できる通信を可能にするためのソース識別情報の生成および伝達
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 삼성전자주식회사 이동 통신 시스템에서 맥 프로토콜 데이터 유닛의 생성과 분리 장치 및 방법
US8706907B2 (en) 2007-10-19 2014-04-22 Voxer Ip Llc Telecommunication and multimedia management method and apparatus
WO2009054907A2 (en) * 2007-10-19 2009-04-30 Swarmcast, Inc. Media playback point seeking using data range requests
US20090125636A1 (en) * 2007-11-13 2009-05-14 Qiong Li Payload allocation methods for scalable multimedia servers
WO2009065526A1 (en) 2007-11-23 2009-05-28 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
TWI355168B (en) 2007-12-07 2011-12-21 Univ Nat Chiao Tung Application classification method in network traff
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
WO2009130561A1 (en) * 2008-04-21 2009-10-29 Nokia Corporation Method and device for video coding and decoding
JP5847577B2 (ja) 2008-05-07 2016-01-27 デジタル ファウンテン, インコーポレイテッド より低いレベルのパケット構造から導かれる記号識別子を用いた放送チャネル上の高品質ストリーム保護
US7979570B2 (en) 2008-05-12 2011-07-12 Swarmcast, Inc. Live media delivery over a packet-based computer network
JP5022301B2 (ja) 2008-05-19 2012-09-12 株式会社エヌ・ティ・ティ・ドコモ プロキシサーバおよび通信中継プログラム、並びに通信中継方法
CN101287107B (zh) 2008-05-29 2010-10-13 腾讯科技(深圳)有限公司 媒体文件的点播方法、系统和设备
US7860996B2 (en) 2008-05-30 2010-12-28 Microsoft Corporation Media streaming with seamless ad insertion
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
US8737421B2 (en) 2008-09-04 2014-05-27 Apple Inc. MAC packet data unit construction for wireless systems
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
CN104702960B (zh) 2009-01-26 2018-01-02 汤姆森特许公司 用于视频解码的装置
CN105357509B (zh) 2009-01-29 2017-09-15 杜比实验室特许公司 视频编码方法、视频信号解码方法及视频装置
US9281847B2 (en) 2009-02-27 2016-03-08 Qualcomm Incorporated Mobile reception of digital video broadcasting—terrestrial services
US8621044B2 (en) 2009-03-16 2013-12-31 Microsoft Corporation Smooth, stateless client media streaming
US8909806B2 (en) 2009-03-16 2014-12-09 Microsoft Corporation Delivering cacheable streaming media presentations
CN102804785A (zh) 2009-04-13 2012-11-28 瑞尔D股份有限公司 编码、解码和发布增强分辨率的立体视频
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
US20120151302A1 (en) 2010-12-10 2012-06-14 Qualcomm Incorporated Broadcast multimedia storage and access using page maps when asymmetric memory is used
US9288010B2 (en) 2009-08-19 2016-03-15 Qualcomm Incorporated Universal file delivery methods for providing unequal error protection and bundled file delivery services
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 コンテンツ再生システム、コンテンツ再生装置、プログラム、コンテンツ再生方法、およびコンテンツサーバを提供
EP3220281A1 (en) * 2009-11-04 2017-09-20 Amotech Co., Ltd. System and method for media content streaming
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 诺基亚技术有限公司 用于流媒体文件内表示的描述和定时的装置及方法
BR112012016988A2 (pt) 2010-02-19 2016-04-12 Ericsson Telefon Ab L M método e arranjo para comutação de representação em streaming de http
KR101624013B1 (ko) 2010-02-19 2016-05-24 텔레폰악티에볼라겟엘엠에릭슨(펍) 에이치티티피 스트리밍에서 적응화를 위한 방법 및 장치
JP5071495B2 (ja) 2010-03-04 2012-11-14 ウシオ電機株式会社 光源装置
CN107359915B (zh) * 2010-03-11 2020-12-08 韩国电子通信研究院 用于在多输入多输出系统中传送数据的方法和设备
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
KR20120010089A (ko) 2010-07-20 2012-02-02 삼성전자주식회사 Http 기반의 멀티미디어 스트리밍 서비스의 품질 향상을 위한 방법 및 장치
US9131033B2 (en) 2010-07-20 2015-09-08 Qualcomm Incoporated Providing sequence data sets for streaming video data
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

Also Published As

Publication number Publication date
BRPI0816680A2 (pt) 2015-03-17
EP2203836A4 (en) 2014-11-05
MX2010002829A (es) 2010-04-01
EP2203836A1 (en) 2010-07-07
CA2697764A1 (en) 2009-03-19
RU2010114256A (ru) 2011-10-20
US20090067551A1 (en) 2009-03-12
WO2009036378A1 (en) 2009-03-19
US9237101B2 (en) 2016-01-12
KR101129260B1 (ko) 2012-03-27
CN101802797A (zh) 2010-08-11
CN101802797B (zh) 2013-07-17
AU2008298602A1 (en) 2009-03-19
KR20100055528A (ko) 2010-05-26
HK1145217A1 (en) 2011-04-08
JP2010539816A (ja) 2010-12-16

Similar Documents

Publication Publication Date Title
JP5027305B2 (ja) 信頼できる通信を可能にするためのソース識別情報の生成および伝達
CN102668384B (zh) 具有通过单播系统传送的递增冗余的广播系统
JP5442816B2 (ja) 可変fecオーバヘッド及び保護期間を利用したストリーミング及びバッファリング
EP2103026B1 (en) A method to support forward error correction for real-time audio and video data over internet protocol networks
KR100554062B1 (ko) 패킷 채널을 통한 멀티미디어 통신 방법
JP5502908B2 (ja) Dvb−t端末のためのアプリケーション層前方誤り訂正
AU2009244223B2 (en) Fast channel zapping and high quality streaming protection over a broadcast channel
US7739580B1 (en) System, method and apparatus for reducing blockage losses on information distribution networks
Sachs et al. Hybrid ARQ for robust video streaming over wireless LANs
KR20100112151A (ko) 네트워크 카드 및 정보 처리 장치
Nazir et al. Unequal error protection for data partitioned H. 264/AVC video broadcasting
Tsai et al. Dynamical combination of byte level and sub-packet level FEC in HARQ mechanism to reduce error recovery overhead on video streaming over wireless networks
JP3730977B2 (ja) データ伝送方法およびデータ処理方法
HK1145217B (en) Generating and communicating source identification information to enable reliable communications
KR100926669B1 (ko) 소거 회복 코드를 이용한 데이터 전송 시스템
HK1156770A (en) Fast channel zapping and high quality streaming protection over a broadcast channel

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110804

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110823

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111124

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20111201

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20111226

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120106

A601 Written request for extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A601

Effective date: 20120123

A602 Written permission of extension of time

Free format text: JAPANESE INTERMEDIATE CODE: A602

Effective date: 20120130

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20120223

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: 20120522

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: 20120621

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

Free format text: PAYMENT UNTIL: 20150629

Year of fee payment: 3

R150 Certificate of patent or registration of utility model

Ref document number: 5027305

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

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

LAPS Cancellation because of no payment of annual fees