(57)【特許請求の範囲】
【請求項１】
マルチメディアサービスシステムにおけるパケットを送信する方法であって、
ソースパケットを含むソースパケットブロックを複数のソースパケットサブブロックに分割するステップと、
前記複数のソースパケットサブブロックを複数のソースシンボルサブブロックに各々変換するステップと、
前記ソースシンボルサブブロックを第１の誤り訂正符号を用いて符号化することによって、複数の符号化されたソースシンボルサブブロックと、複数の第１のリペアシンボルブロックを生成するステップと、
前記複数の符号化されたソースシンボルサブブロックと前記複数の第１のリペアシンボルブロックを送信するステップと、を含み、
前記複数の符号化されたソースシンボルサブブロックの各々は、少なくとも一つの誤り訂正ソースパケットを含み、前記誤り訂正ソースパケットはソースペイロード識別子（ＩＤ）を含み、
前記複数の第１のリペアシンボルブロックの各々は、少なくとも一つの誤り訂正リペアパケットを含み、前記誤り訂正リペアパケットはリペアペイロード識別子(ＩＤ)を含み、
前記ソースペイロードＩＤは、前記誤り訂正ソースパケット内のソースシンボルを識別するシーケンス番号を示すソースシンボルＩＤを含み、
前記リペアペイロードＩＤは、ソースシンボルブロック内のソースシンボルの数を示すソースシンボルブロック長を含み、
前記ソースシンボルは、少なくとも一つのシンボルエレメントを含み、
前記ソースシンボルブロックは、最後のシンボルエレメントとしてパディングバイトのみを有するパディングシンボルエレメントを含み、
前記パディングシンボルエレメントのソースシンボルＩＤは、前記誤り訂正ソースパケットの最初のシンボルエレメントのソースシンボルＩＤに設定されることを特徴とするパケット送信方法。
【請求項２】
前記複数のソースシンボルサブブロックを第２の誤り訂正符号を用いて符号化することによって第２のリペアシンボルブロックを生成するステップをさらに含むことを特徴とする請求項１に記載のパケット送信方法。
【請求項３】
各ソースシンボルにおいてシンボルエレメントの数は同一であり、
前記ソースシンボルＩＤは、シンボルエレメントごとに１ずつ増加することを特徴とする請求項１に記載の方法。
【請求項４】
前記ソースシンボルブロック長は、前記パディングシンボルエレメントを除いたソースシンボルブロック内のシンボルエレメントの数を示すことを特徴とする請求項１に記載の方法。
【請求項５】
前記ソースシンボルブロック長は、ソースシンボルブロック内のシンボルエレメントの数を示すことを特徴とする請求項３に記載の方法。
【請求項６】
前記リペアペイロードＩＤは、前記ソースシンボルブロックの境界を示すソースシンボル開始位置をさらに含み、
前記ソースシンボル開始位置は、関連ソースシンボルブロックの最初のシンボルエレメントのソースシンボルＩＤに設定されることを特徴とする請求項１に記載の方法。
【請求項７】
前記リペアペイロードＩＤは、
前記ソースシンボルブロックの境界を示すソースシンボル開始位置と、関連誤り訂正リペアシンボルブロックで生成されたリペアシンボルの数を示すリペアシンボルブロック長と、前記誤り訂正リペアパケット内の最初のリペアシンボルを識別するリペアシンボルＩＤとをさらに含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記ソースペイロードＩＤは、前記誤り訂正ソースパケットの最後に配置され、
前記リペアペイロードＩＤは、前記誤り訂正リペアパケットのリペアシンボルの前部に配置されることを特徴とする請求項１に記載の方法。
【請求項９】
前記複数の符号化されたソースシンボルサブブロックと前記複数の第１のリペアシンボルブロックを送信する前に、ソースシンボルブロックを構成する方法を示すソースシンボルブロック生成モードと、前記ソースシンボルブロック生成モードに従うソースシンボルごとのシンボルエレメントの数とを含む誤り訂正設定情報を送信するステップをさらに含むことを特徴とする請求項１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、放送及び／または通信システムに関し、特に、放送及び／または通信システムにおける前方誤り訂正（Forward Error Correction：ＦＥＣ）パケットの送受信装置及び方法に関する。
【背景技術】
【０００２】
最近の放送及び通信環境では、多様なマルチメディアコンテンツや、高画質（High Definition：ＨＤ）コンテンツ、超高画質 （Ultra High Definition：ＵＨＤ）コンテンツのような高容量コンテンツが増加することにより、ネットワーク上のデータ輻輳（Data Congestion）が深刻になってきている。このようなデータ輻輳によって、送信器（Sender、例えば、ホストＡ）が送信したコンテンツが受信器（Receiver、例えば、ホストＢ）に正常に転送されず、コンテンツの一部が経路上で消失される状況が発生する。
【０００３】
一般的に、データは、パケット単位で伝送されるので、データ消失は、パケット単位で発生する。このようにネットワーク上でデータが消失されると、受信器はデータパケットを受信できないので、消失されたパケット内のデータを取得することができない。したがって、オーディオの品質低下、ビデオの画質の劣化、画面のとぎれ、字幕欠落、ファイルの損失のような様々な形態でユーザの不便をもたらす。
【０００４】
したがって、ネットワーク上で発生するデータ消失を復旧するための技術が求められている。
【０００５】
ネットワーク上で消失されたデータの受信器での復旧をサポートする技術として、ソースパケットと呼ばれる可変長のデータパケットを一定数集めて、ソースパケットブロックを構成し、前方誤り訂正（Forward Error Correction：ＦＥＣ）符号化によって、パリティ（Parity）データまたはリペアパケット（Repair packet）のような復旧情報をソースパケットブロックに付加する技術がある。受信器は、消失されたデータがある場合、上記復旧情報を使用して復号（decoding）を実行することができる。
【０００６】
ソースパケットブロックからＦＥＣ符号化を通じてパリティデータまたはリペアパケットを生成する処理では、上記ソースパケットブロックから、同じ長さのソースシンボル（source symbol）を含むソースシンボルブロック（source symbol block）を構成し、ソースシンボルブロックをＦＥＣ符号化することにより、リペアシンボル（repair symbol）を含むリペアシンボルブロック（repair symbol block）を生成し、上記生成されたリペアシンボルブロックを、ＦＥＣリペアパケット（FEC repair packet）に変換する。ＦＥＣリペアパケットと、ＦＥＣ符号化後のソースパケットであるＦＥＣソースパケット（FEC source packet）とは、共にＦＥＣパケットとして伝送される。上記ソースパケットの各々は、可変長であり、ソースシンボルブロックは、同じ長さのソースシンボルで構成されるために、ソースパケットブロックからソースシンボルブロックを生成する時、パディングデータが必要である。したがって、効率的なソースシンボルブロック生成方法が求められる。
【０００７】
また、上記誤り訂正パケットブロック内の誤り訂正信号（つまり、source FEC payload IDentifier(ID))を伝送し、各リペアパケット内の誤り訂正信号（repair FEC payload ID）を伝送する、インバンド（in-band）シグナリング方法も求められている。
【０００８】
上記した情報は、本発明の開示の理解を助けるための背景情報として表示されるだけである。上記のいずれが本発明に関する従来技術として適用されるか否かに関しては、何の決定も主張もなされていない。
【発明の概要】
【発明が解決しようとする課題】
【０００９】
本発明は、放送及び通信システムにおけるパケットを送受信するためのインバンドシグナリング方法及び装置を提供する。
【課題を解決するための手段】
【００１０】
本発明の一実施形態によれば、マルチメディアサービスシステムにおけるパケットを送信する方法が提供される。上記方法は、ソースパケットを含むソースパケットブロックを複数のソースパケットサブブロックに分割するステップと、上記複数のソースパケットサブブロックを複数のソースシンボルサブブロックに各々変換するステップと、上記ソースシンボルサブブロックを第１の誤り訂正符号を用いて符号化することによって複数の第１のリペアシンボルブロックを生成するステップと、上記ソースシンボルサブブロックに含まれるソースシンボルにソース誤り訂正ペイロードＩＤ（識別子）を付加することによって誤り訂正ソースパケットを構成し、上記第１のリペアシンボルブロックに含まれるリペアシンボルにリペア誤り訂正ペイロードＩＤを付加することによって誤り訂正リペアパケットを構成するステップと、上記誤り訂正ソースパケット及び上記誤り訂正リペアパケットを送信するステップと、を含む。上記ソース誤り訂正ペイロードＩＤは、上記誤り訂正ソースパケット内のソースシンボルを識別するシーケンス番号を示すソースシンボルＩＤを含み、上記リペア誤り訂正ペイロードＩＤは、上記ソースシンボルサブブロックを連結することによって生成されたソースシンボルブロック内のソースシンボルの数を示すソースシンボルブロック長を含むことを特徴とする。
【発明の効果】
【００１１】
本発明の実施形態によれば、放送／通信システムにおける効率的なパケット送受信装置及び方法を提供することができる。
【００１２】
本発明の他の態様、利点、及び顕著な特徴は、下記の詳細な説明から当業者には明らかであり、その詳細な説明は、添付の図面とともに本発明の実施形態で開示する。
【図面の簡単な説明】
【００１３】
【図１】本発明の一実施形態による送信器及び受信器のブロック構成図である。
【図２】本発明の一実施形態によるＭＭＴシステムのＡＬ−ＦＥＣアーキテクチャーを示す。
【図３】本発明の一実施形態による２段階（two-stage）のＦＥＣ符号化方法を示す。
【図４】本発明の一実施形態によってメディアが２個のレイヤで構成されている場合にＬＡ−ＦＥＣを適用するためのソースブロック構成方法を示す。
【図５】本発明の一実施形態によるソースパケットブロックからソースシンボルブロックを生成する方法を示す。
【図６】本発明の一実施形態によるソースパケットフローからソースパケットブロックを構成し、上記ソースパケットブロックからソースシンボルブロックを生成する方法を示す。
【図７】本発明の一実施形態によるＦＥＣソースパケットブロックにソースＦＥＣペイロードＩＤ（ＳＳ＿ＩＤ）を割り当てる方法を示す。
【図８】本発明の一実施形態によるＦＥＣリペアパケットブロックにリペアＦＥＣペイロードＩＤを設定する方法を示す。
【図９Ａ】本発明の一実施形態によるＦＥＣパケットのフォーマットを示す。
【図９Ｂ】本発明の一実施形態によるＦＥＣパケットのフォーマットを示す。
【発明を実施するための形態】
【００１４】
添付の図面を参照した下記の説明は、特許請求の範囲及びこの均等物で定められるような本発明の様々な実施形態の包括的な理解を助けるために提供するものである。その説明は、この理解を助けるための様々な特定の詳細を含むが、単なる一つの実施形態に過ぎない。従って、本発明の範囲及び趣旨を逸脱することなく、ここに説明する実施形態の様々な変更及び修正が可能であるということは、当該技術分野における通常の知識を有する者には明らかである。また、明瞭性と簡潔性の観点から、当業者に良く知られている機能や構成に関する具体的な説明は、省略する。
【００１５】
以下の説明及び請求項に使用する用語及び単語は、辞典的意味に限定されるものではなく、本発明の理解を明確且つ一貫性があるようにするために発明者によって使用されたに過ぎない。従って、本発明の実施形態の説明は、単に実例を提供するためのものであって、特許請求の範囲及び均等物によって定められるように本発明の目的を限定するものでないことは、本発明の技術分野における通常の知識を持つ者には明らかである。
【００１６】
本願明細書に記載の各要素は、文脈中に特に明示しない限り、複数形を含むことは、当業者には理解できるものである。したがって、例えば、コンポーネント表面（a component surface）”との記載は、１つ又は複数の表面を含む。
【００１７】
“実質的に(substantially)”という用語では、提示された特徴、パラメータ、又は値が正確に達成される必要はないが、許容誤差、測定誤差、測定精度限界、及び当業者に知られている他の要素を含んだ偏差又は変動が、これらの特性が提供しようとする効果を排除しない範囲内で発生することがあることを意味する。
【００１８】
後述する本発明の実施形態は、高画質（ＨＤ）コンテンツまたは超高画質（ＵＨＤ）コンテンツのような高容量コンテンツばかりでなく、ビデオ会議及び／またはビデオ電話を含む多様なマルチメディアサービスを送受信できる全ての電子機器に適用可能である。この電子機器は、携帯電話、ＴＶ、コンピュータ、電子黒板、タブレット及び電子書籍リーダなどのいずれかであってもよい。特に、本開示は、データパケットにＦＥＣを適用する時、ソースパケットブロックをソースパケットサブブロックに分割し、ソースシンボルブロックとソースシンボルサブブロックを効率的に構成して復号性能を改善するか、伝送効率（transmission efficiency）を高めることができる方法を提供する。本明細書において、具体的なＦＥＣ符号化方法は言及されないが、本発明が特定ＦＥＣ方法に限定されるものではない。リードソロモン（ＲＳ）符号、ＬＤＰＣ（Low Density Parity Check）符号、ターボ（Turbo）符号、ラプター（Raptor）符号、ラプターＱ（Raptor Q）符号、ＸＯＲ（Single Parity-Check Code）、Ｐｒｏ−ＭＰＥＧ（Moving Picture Experts Group）ＦＥＣ符号などが本開示において選択的に使用されてもよい。
【００１９】
まず、本発明を説明する前に、本発明で使用される用語を以下のように定義する。
【００２０】
−前方誤り訂正（ＦＥＣ）符号：エラーシンボル（Error Symbol）または削除シンボル（Erasure Symbol）を訂正するための誤り訂正符号
−ソースシンボル（Source Symbol）：符号化処理において使用されるデータ単位
−パリティ（リペア）シンボル(Parity （Repair) Symbol）：ソースシンボルでない符号化シンボル
−ソースパケット（Source Packet）：ＦＥＣにより保護されるパケット
−ソースパケットブロック（Source Packet Block）：一つのブロックとして保護されるＦＥＣソースフローのソースパケットの集合
−ソースシンボルブロック（Source Symbol Block）：一つのソースパケットブロックから生成されるソースシンボルの集合
−パリティ（リペア）シンボルブロック（Parity (Repair) Symbol Block）：消失されたソースシンボルを復旧するために使用することができるリペアシンボルの集合
−符号化シンボルブロック（Encoding Symbol Block）：ソースシンボルブロックの符号化処理によって生成される符号化シンボルの集合
−符号化シンボル（encoding symbol）：符号化処理により生成されるデータの単位。なお、ソースシンボルは、符号化シンボルの一部である。
【００２１】
−ＦＥＣリペアパケット（FEC repair Packet）：パリティシンボルブロックの一つ以上のパリティシンボルを配信するためのリペアＦＥＣペイロードＩＤ（repair FEC payload ID）を有するパケット
−ＦＥＣソースパケット（FEC source Packet）：ソースＦＥＣペイロードＩＤ（source FEC payload ID）を有するソースパケット
−ＦＥＣソースパケットブロック（FEC source Packet Block）：ソースシンボルブロックを配信するためのＦＥＣソースパケットの集合
−ＦＥＣリペアパケットブロック（FEC repair Packet Block）：リペアシンボルブロックを配信するためのリペアパケットの集合
−ＦＥＣペイロードＩＤ（FEC Payload ID）：MMT (MPEG(Moving Picture Experts Group) Media Transport) FEC仕様によってＭＭＴパケットのコンテンツを識別するための識別子
−リペアＦＥＣペイロードＩＤ（repair FEC Payload ID）：リペアパケットと共に使用するためのＦＥＣペイロードＩＤ
−ソースＦＥＣペイロードＩＤ（Source FEC payload ID）：ソースパケットと共に使用するためのＦＥＣペイロードＩＤ
−ＭＭＴ（MPEG Media Transport）：ＭＰＥＧデータを効率的に伝送するために設計された国際標準
−ＦＥＣソースフロー（FEC Source Flow）：MMT FEC仕様の一方法により保護されるソースパケットのフロー
−ＦＥＣ仕様（ＦＥＣ scheme）：ＦＥＣ符号を使用するために要求されるプロトコル面での拡張を定義する仕様
−ＦＥＣ符号（FEC code）：当該符号化されたデータのフローがデータ消失に対して回復力があるようにする、データを符号化するアルゴリズム
−ＦＥＣリペアフロー（FEC repair Flow）：ソースフローを保護するためにリペアシンボルを搬送するデータのフロー
−ＦＥＣ符号化フロー（FEC encoded flow）：一つのＦＥＣソースフローとそれと関係する一つ以上のＦＥＣリペアフローとで構成されたフローの論理的な集合
−アセット（Asset）：同一のアセットＩＤを有する一つ又はそれ以上のメディアプロセッシングユニット（Media Processing Unit:MPU)によって構成された同一の伝送特性を有するデータを含むデータエンティティ
−メディアプロセッシングユニット（MPU）：メディアコーデックに依存せず、独立して復号可能な、定時出力のデータ（timed data）または出力時刻が制限されないデータ（non-timed data）のためのジェネリックコンテナ
−パッケージ（Package）：一つ以上のアセットとそれに関するアセット配信特性と構成情報（Composition Information:CI）で構成されたデータの論理的な集合
−ＭＭＴパケット（MMT packet）：ＭＭＴプロトコルによって生成されるか消費されるデータのフォーマットの１単位
−ＭＭＴペイロード（MMT payload）：ＭＭＴプロトコル、またはインターネットアプリケーションレイヤトランスポートプロトコル（例えば、ＲＴＰ：Real-Time Transport Protocol）を使用するパッケージやシグナリングメッセージを搬送するためのデータのフォーマットの１単位
−ＭＭＴプロトコル（MMT Protocol）：ＩＰ（インターネットプロトコル）ネットワークを通じてＭＭＴペイロードを配信するためのアプリケーションレイヤトランスポートプロトコル
図１は、本発明の一実施形態による送信器及び受信器のブロック構成図である。
【００２２】
図１を参照すると、送信器１００は、ＦＥＣ上位プロトコルに該当するプロトコルＡブロック１０１、ＦＥＣ符号化ブロック１０２、ＦＥＣ下位プロトコルに該当するプロトコルＢブロック１０３及び送信器物理レイヤブロック１０４を含む。
【００２３】
プロトコルＡブロック１０１は、伝送データを、ソースペイロード１３０を含むソースパケット形態で構成してＦＥＣ符号化ブロック１０２に伝達する。ＦＥＣ符号化ブロック１０２は、上記ソースパケットの集まりであるソースパケットブロックを構成し、ＦＥＣ符号化を実行してパリティペイロード１３１を含むパリティ（リペアシンボル）を生成し、上記ソースパケットとパリティシンボルにＦＥＣヘッダー１３２を追加してプロトコルＢブロック１０３に伝達する。この時、上記ＦＥＣヘッダーと結合されたソースパケットをＦＥＣソースパケットと称し、上記ＦＥＣヘッダーと結合されたパリティシンボルをＦＥＣパリティパケットと称する。図１におけるＦＥＣソースパケットは、ＦＥＣヘッダーとソースペイロードがシーケンシャルに連結されたデータ単位であるが、ソースペイロードの後にＦＥＣヘッダーが連結されてもよい。また上記図１におけるＦＥＣ符号化ブロック１０２は、プロトコルＡブロック１０１とプロトコルＢブロック１０３との間に位置するが、プロトコルＡブロック１０１がＦＥＣ符号化ブロック１０２を含まれてもよい。この場合、ＦＥＣパリティパケットにプロトコルＡブロック１０１の機能を実行するためのプロトコルヘッダーが含まれてもよい、上記ＦＥＣ符号化ブロック１０２を含むプロトコルＡブロック１０１は、ソースパケットとパリティパケットを一つのパケットフローで形成するための多重化器（multiplexer）を含んでもよい。
【００２４】
送信器物理レイヤブロック１０４は、上記ＦＥＣソースパケットとＦＥＣパリティ（リペア）パケットを、トランスポートチャンネル１２０を介して送信するのに適した信号に変換する。プロトコルＢブロック１０３と送信器物理レイヤブロック１０４との間には、多様なレイヤが存在してもよく、その具体的な構成は、本発明の要旨と関係ないので省略する。
【００２５】
受信器１１０は、受信器物理レイヤブロック１１１、ＦＥＣ下位プロトコルに該当するプロトコルＢブロック１１２、ＦＥＣ復号ブロック１１３及びＦＥＣ上位プロトコルに該当するプロトコルＡブロック１１４を含む。
【００２６】
受信器物理レイヤブロック１１１は、トランスポートチャンネル１２０を通じて受信された信号を解析し、これをプロトコルＢブロック１１２に伝達する。送信器１００の場合と同様に、プロトコルＢブロック１１２と受信器物理レイヤブロック１１１との間には、多様なレイヤが存在してもよく、その具体的な構成は、本発明の要旨と関係ないので省略する。プロトコルＢブロック１１２は、受信信号またはパケットを解析して受信ＦＥＣパケットをＦＥＣ復号ブロック１１３に伝達する。この時、送信器で送信したＦＥＣパケットの一部は、ネットワークの輻輳及び物理レイヤで発生したエラーの影響により消失され、ＦＥＣ復号ブロック１１３に伝達されないことがある。ＦＥＣ復号ブロック１１３は、伝達されたＦＥＣパケットに対するＦＥＣ復号を実行して消失されたソースパケットを復元し、これを受信パケットと共に上位プロトコルＡブロック１１４に伝達する。上述するＦＥＣヘッダーは、ＦＥＣペイロードＩＤを意味し、ＦＥＣソースパケットのＦＥＣヘッダーはソースＦＥＣペイロードＩＤを意味し、ＦＥＣリペアパケットのＦＥＣヘッダーはリペアＦＥＣペイロードＩＤを意味する。また本発明がＭＭＴシステムに適用される場合、上記ソースパケットはＭＭＴパケットとなり、ＦＥＣソースパケットはソースＦＥＣペイロードＩＤを有するＭＭＴパケットとなり、ＦＥＣリペアパケットはパリティ（リペア）シンボルを搬送するリペアＦＥＣペイロードＩＤを有するＭＭＴパケットとなる。
【００２７】
図２は、本発明の一実施形態によるＭＭＴシステムにおけるＡＬ−ＦＥＣ（Application Layer FEC）アーキテクチャーを示す。
【００２８】
ＭＭＴアプリケーション２１０は、ＡＬ−ＦＥＣで保護して伝送するＭＭＴアセットを決定してＭＭＴプロトコル２２０に入力する。またＭＭＴアプリケーション２１０は、ＡＬ−ＦＥＣ設定情報（FEC configuration information）をＭＭＴ ＦＥＣスキーム２３０に入力する。ＭＭＴプロトコル２２０は、入力されたアセットをＭＭＴペイロード（ＭＭＴＰｓ）でパケット化（packetize）し、ＭＭＴパケットヘッダーを付加してソースパケットを生成し、各々が所定数のソースパケットを含むソースパケットブロックごとにＭＭＴ ＦＥＣスキーム２３０に入力する。ＭＭＴ ＦＥＣスキーム２３０は、ＭＭＴアプリケーション２１０から入力されたＦＥＣ設定情報に基づいた所定のソースシンボルブロック生成方法に従って入力されたそれぞれのソースパケットブロックからソースシンボルブロックを生成する。この時、本発明の実施形態によるソースシンボルブロック生成方法は、ＦＥＣ設定情報として提供される。ＭＭＴ ＦＥＣスキーム２３０は、ＦＥＣ設定情報に本発明の実施形態によるソースシンボルブロック生成方法が明記されていると、本発明の実施形態によるソースシンボルブロックを生成する。ＦＥＣ符号２４０は、ＭＭＴ ＦＥＣスキーム２３０から、ソースシンボルブロックを受け取り、入力されたソースシンボルブロックからパリティ（リペア）シンボルブロックを生成してＭＭＴ ＦＥＣスキーム２３０に入力する。ＭＭＴ ＦＥＣスキーム２３０は、上記ソースシンボルブロックと上記パリティ（リペア）シンボルブロックに対してＦＥＣペイロードＩＤを生成し、ＦＥＣ符号２４０から受信したパリティ（リペア）シンボルをＭＭＴプロトコル２２０に入力する。ＭＭＴプロトコル２２０は、ソースパケットにソースＦＥＣペイロードＩＤを付加してＦＥＣソースパケットを生成する。ＭＭＴプロトコル２２０は、パリティ（リペア）シンボルにリペアＦＥＣペイロードＩＤと、ＭＭＴペイロードヘッダーとＭＭＴパケットヘッダーとを付加してＦＥＣリペアパケットを生成する。ＭＭＴプロトコル２２０は、ＦＥＣソースパケットとＦＥＣリペアパケットとをＵＤＰ（User Datagram Protocol）のようなトランスポートレイヤ（Transport Layer）２５０を通じてＩＰ２６０に伝送する。上記では、説明の便宜のために、ソースパケットブロック単位で、ＦＥＣソースパケットと、ＦＥＣパリティ（リペア）パケットとが生成、伝送されることを説明した。しかし、ＭＭＴ ＦＥＣスキーム２３０は、ＭＭＴプロトコル２２０からソースパケットを受信するとすぐに、受信したソースパケットにソースＦＥＣペイロードＩＤを付加してＦＥＣソースパケットを生成し、すぐにそのＦＥＣソースパケットを伝送することが望ましい。そして、ＭＭＴ ＦＥＣスキーム２３０は、ソースパケットを内部メモリに保存しておき、ソースパケットブロックの最後のソースパケットを受信するとすぐに、上記ソースパケットブロックからソースシンボルブロックを生成することが望ましい。その結果、ＦＥＣ符号２４０は、パリティシンボルブロックを生成する。そして、ＭＭＴ ＦＥＣスキーム２３０は、生成されたパリティシンボルブロックをＦＥＣペイロードＩＤと共にＭＭＴプロトコル２２０に入力することによって、ＦＥＣパリティ（��ペア）パケットを生成し、伝送することが望ましい。
【００２９】
図３は、本発明の一実施形態による２段階（two-stage）のＦＥＣ符号化方式を示す。
【００３０】
ＭＭＴ標準は、相対的に高い信頼度を要求するパケットを一つ以上の誤り訂正符号を使用して保護するための２段階仕様を採用した。上記図３の２段階仕様によれば、ＭＭＴプロトコルとＭＭＴ ＦＥＣスキーム（合わせて、ＭＭＴ ＦＥＣＦＲＡＭＥと呼ぶ）は、所定数のソースパケットで構成されたソースパケットブロック（Source Packet Block）をＭ（Ｍは１より大きい整数である）個の第１のソースパケットサブブロック（１〜Mth Source Packet Block）に分割し、第１のソースパケットサブブロックの各々から第１のソースシンボルサブブロック（１〜Mth Source Packet Block）を生成し、第１のソースシンボルサブブロックの各々に対して第１のＦＥＣ符号化により生成される第１のパリティ（リペア）シンボルブロックを含む第１の符号化シンボルブロックを生成する。その後、ＭＭＴ ＦＥＣＦＲＡＭＥは、Ｍ個の第１のソースシンボルサブブロックを第２のソースシンボルブロックとして第２のＦＥＣ符号化により生成される第２のパリティ（リペア）シンボルブロックを含む第２の符号化シンボルブロックを生成する。上記の第１のＦＥＣ符号化と第２のＦＥＣ符号化では、同一の誤り訂正符号が使用されても、異なる誤り訂正符号が使用されてもよい。第１のＦＥＣ符号化、第２のＦＥＣ符号化に使用される誤り訂正符号としては、ＲＳ符号、ＬＤＰＣ符号、ターボ符号（Turbo Code）、ラプター符号（Raptor Code）、ＸＯＲ（eXclusive OR；排他的論理和）符号など、現在知られたコード及び将来に知られる符号化方式が使用されてもよく、特定の符号化方式に制限されない。図３において、ｉ番目のＰ１は、ｉ番目のソースシンボルサブブロックのリペアシンボルブロックであり、Ｐ２は、ソースシンボルブロックのためのリペアシンボルブロック（ｉ＝１、２、…、Ｍ）である。
【００３１】
レイヤ構造を有するメディアデータを効率的に保護するために、ＬＡ−ＦＥＣが使用されてもよい。上記レイヤ構造を有するメディアの例として、ＳＶＣ（Scalable Video Coding）またはＭＶＣ（Multiview Video Coding）を使用して符号化されたコンテンツが挙げられる。
【００３２】
図４は、メディアが２個のレイヤで構成されている場合に、ＬＡ−ＦＥＣを適用するためのソースブロック構成方法を示す。図４で、基本レイヤ（base layer）のＢＲ（base representation）は、メディアコーデックとは独立して復号可能なデータであり、拡張レイヤ（enhancement layer）のＥＲ（Enhancement representation）は、ＢＲに依存するデータである。図４でＥＲのためのパリティを生成する時、ＢＲを共に使用する点に留意する。
【００３３】
図５は、本発明の一実施形態によるソースパケットブロックからソースシンボルブロックを生成する方法を示す。
【００３４】
図５を参照すると、ソースシンボルブロック生成器（図示せず）は、ソースシンボルサイズＴ、ソースシンボルサイズＴあたりのシンボルエレメントの個数ｍ、ソースシンボル個数Ｋに従って、ＴｘＫアレイで構成されたソースシンボルブロックを生成する。ソースシンボルブロック生成器は、ソースシンボルサイズＴとシンボルエレメントの個数ｍとをＦＥＣ設定情報から取得する。図５は、Ｔ＝３２バイト、ｍ＝２である場合の例を示す。ソースシンボルブロック生成器は、可変パケットサイズを有する５個のソースパケット、すなわちＭＭＴパケット＃０乃至ＭＭＴパケット＃４を受け取る。ソースパケットは、ソースシンボルブロックの最初の列からシーケンシャルにシンボルエレメント単位で、ソースシンボルブロックに詰められる。必要な時、シンボルエレメントの空き部分は、００ｈのような予め定められる値を有するパディングデータで埋められる。すなわち、ソースパケットは、常にシンボルエレメントの先頭から詰められる。もし、該当ソースパケットがシンボルエレメントを一杯としない場合、上記シンボルエレメントの残りの部分は００ｈで満たされ、次のソースパケットは、すぐ次のシンボルエレメントの先頭から再度詰められ始める。図５のように、ソースパケットのデータが不足するにより、ＳＳ＃７の２番目のシンボルエレメント５１０、すなわちソースシンボルブロックの最後のシンボルエレメントにソースパケットが詰められない場合には、シンボルエレメントの空の部分にパディングデータが詰められる。
【００３５】
複数のソースシンボルブロック構成方式が使用される場合には、該当ソースシンボルブロックに対応するソースシンボル構成方法を示すｓｓｂｇ＿ｍｏｄｅなどの識別子を受信器に伝送されなければならない。
【００３６】
上記２段階符号化仕様において、ソースシンボルブロックは、以下のように構成される。ソースパケットブロックがＭ個のソースパケットサブブロックで構成されると仮定する。所定値ｍに従い、図５に示した方法によって、最初のソースパケットサブブロックに属するソースパケットを使用することによって、ＴｘＫ１アレイで構成される最初のソースシンボルサブブロックを生成し、これをＦＥＣエンコーダ（図示せず）に伝達する。上記ＦＥＣエンコーダは、上記ソースシンボルサブブロックを使用してパリティシンボルブロックを生成する。この後、２番目からはＭ番目までのソースシンボルサブブロックにおいて同一の処理が繰り返される。全てのソースシンボルサブブロックに対するパリティシンボルブロックが生成されると、全てのソースシンボルサブブロックを結合してソースシンボルブロックが構成される。上記ＦＥＣエンコーダは、上記ソースシンボルブロックを使用してパリティシンボルブロックを生成する。
【００３７】
上記ＬＡ−ＦＥＣ仕様において、ソースシンボルブロックは、以下のように構成される。メディアデータはＭ個のレイヤを有し、ｉ番目のレイヤは、１番目から（ｉ−１）番目のレイヤに依存すると仮定する。この時、ソースパケットブロックは、Ｍ個のソースパケットサブブロック（１〜Mth Source packet Block）を含み、ｉ番目のソースパケットサブブロックは、ｉ番目のレイヤのデータに該当する。上記ソースパケットサブブロックのうちの最初のソースパケットサブブロックに属するソースパケットを使用して最初のソースシンボルサブブロックを生成し、これをＦＥＣエンコーダに伝達する。上記ＦＥＣエンコーダは、上記ソースシンボルサブブロックからパリティシンボルブロックを生成し、これをＦＥＣブロック生成器に伝達する。この後、最初のソースシンボルサブブロックと２番目のソースシンボルサブブロックとを結合してソースシンボルブロックを構成し、これをＦＥＣエンコーダに伝達する。上記ＦＥＣエンコーダは、上記ソースシンボルブロックからパリティシンボルブロックを生成し、これをＦＥＣブロック生成器に伝達する。同一の処理を繰り返すと、最後に、最初からＭ番目までのソースシンボルサブブロックを結合してソースシンボルブロックを構成し、これをＦＥＣエンコーダに伝達する。上記ＦＥＣエンコーダは、上記ソースシンボルサブブロックからパリティシンボルブロックを生成し、これをＦＥＣブロック生成器に伝達する。この処理後に、Ｍ個のソースシンボルサブブロックから生成された全てのパリティシンボルブロックと上記ソースシンボルブロックから生成されたパリティシンボルブロックとをＦＥＣパケット生成器に伝達する。
【００３８】
図６は、本発明の一実施形態によるＭＭＴパケットストリームからソースパケットブロックを構成し、ソースシンボルブロックを生成する方法を示す。
【００３９】
図６を参照すると、アセット６１０はＭＰＵを含み、それぞれのＭＰＵは、ＭＭＴパケット６２０にパケット化される。
【００４０】
パケット化されたＭＭＴパケットは、所定数のＭＭＴパケットで構成されたソースパケットブロック６３０に分割され、分割されたソースパケットブロックのそれぞれは、ソースシンボルブロック６４０に変換される。図６には、ｍ＝２である場合が図示されている。ソースパケットブロックからソースシンボルブロックに変換するとき、ソースパケットブロックのソースパケットの各々は、シンボルエレメント単位でソースシンボルブロックに詰められる。シンボルエレメントがソースエレメントで一杯とならない場合、００ｈのような所定値を有するパディングデータで満たし、次のソースパケットは、次のシンボルエレメントの開始位置から詰められる。もし、最後のソースパケットがソースシンボルブロックの最後のソースシンボルが最後のソースパケットで一杯とならない場合、残りの部分は、００ｈのように所定の値を有するパディングデータで満たす。この場合、最後の部分にパディングされたデータのサイズがＴ／Ｍより大きいと、パディングシンボルエレメントを生成する。本発明では、シンボルエレメント単位でパディングされたデータをパディングシンボルエレメントと称する。
【００４１】
図７は、本発明の一実施形態によるＦＥＣソースパケットブロックにＳＳ＿ＩＤを割り当てる方法を示す。
【００４２】
図７を参照すると、本発明の実施形態による図６に示されたソースシンボルブロック生成方法によって、ソースパケットブロックからソースシンボルブロックが生成されている。それぞれのソースシンボルブロックは、Ｋ１個のシンボルエレメントとＫ２個のシンボルエレメントを有するが、最初のソースシンボルブロックの最後のシンボルエレメント（Ｋ１−１）はパディングシンボルエレメントである。それぞれのソースシンボルブロックのシンボルエレメントのブロック内の順序を０〜（Ｋ１−１）、０〜（Ｋ２−１とする。これをＦＥＣソースパケットのソースＦＥＣペイロードＩＤをＳＳ＿ＩＤに設定する場合、ランダム値ｊがＳＳ＿ＩＤに設定される。以降のＦＥＣソースパケットでは、ＳＳ＿ＩＤは、それぞれのＦＥＣソースパケットに含まれるシンボルエレメントの数だけ増加される。ただし、最初のＦＥＣソースパケットブロックの最後のＦＥＣソースパケットのＳＳ＿ＩＤはｊ＋Ｋ１−２に設定されており、該当ソースシンボルブロックの最後のシンボルエレメントがパディングシンボルエレメントであるから、２番目のＦＥＣソースパケットブロックの最初のＦＥＣソースパケットのＳＳ＿ＩＤは、ｊ＋Ｋ１−１でなく、パディングシンボルエレメントを考慮したｊ＋Ｋ１に設定される。
【００４３】
図８は、本発明の一実施形態によるリペアＦＥＣペイロードＩＤを設定する方法を示す。図８によれば、図６及び図７と同一の形態でソースシンボルブロックが生成されている。生成された二つのソースシンボルブロックから、第１のＦＥＣ符号化（ＦＥＣ  １）により、各々が３個のパリティシンボルで構成された二つのパリティシンボルブロックを生成する。そして、上記二つのソースシンボルブロックを結合した１つのソースシンボルブロックから、第２のＦＥＣ符号化（ＦＥＣ  ２）により３個のパリティシンボルで構成されたパリティシンボルブロックを生成する。図６及び図７のように、それぞれのソースパケットブロックに該当するソースパケットの各々にソースＦＥＣペイロードＩＤとしてＳＳ＿ＩＤを図７のように割り当てて、ＳＳ＿ＩＤを含むソースパケットをＦＥＣソースパケットとして伝送する。ＦＥＣ符号化により生成されたパリティシンボルブロックのそれぞれのパリティシンボルには、リペアＦＥＣペイロードＩＤ、ＭＭＴペイロードヘッダー及びＭＭＴパケットヘッダーが付加され、ＦＥＣパリティパケットとして伝送される。上記リペアＦＥＣペイロードＩＤは、ＳＳ＿Ｓｔａｒｔ、ＲＳＢ＿ｌｅｎｇｔｈ、ＲＳ＿ＩＤ、ＳＳＢ＿ｌｅｎｇｔｈ Ｆｉｅｌｄで構成され、各Ｆｉｅｌｄに対する説明は、下記の表２にて行う。それぞれのＦＥＣパリティ（リペア）パケット内でのフィールドの値は、図８でのように設定される。最初のソースシンボルブロックのパリティシンボルブロックの３個のＦＥＣパリティパケットのリペアＦＥＣペイロードＩＤは、以下の通りである。
【００４４】
ＳＳ＿Ｓｔａｒｔは、最初のＦＥＣソースパケットブロックの最初のＦＥＣソースパケットのＳＳ＿ＩＤであるｊ値に設定される。ＳＳ＿Ｓｔａｒｔは、最初のＦＥＣソースパケットブロックのすべてのＦＥＣパリティパケットにおいてｊ値に設定される。ＳＳ＿Ｓｔａｒｔは、該当ＦＥＣソースパケットブロックの開始パケットを指し示す。ＲＳＢ＿ｌｅｎｇｔｈは、全てのＦＥＣパリティパケットにおいて３に設定される。これは、パリティシンボルブロックは３つのパリティシンボルを含むことを示す。ＳＳＢ＿ｌｅｎｇｔｈは、Ｋ１−１に設定する。これは、該当ソースシンボルブロックのパディングシンボルエレメントを除いたシンボルエレメントの数がＫ１−１であることを示す。ＲＳ＿ＩＤは、パリティシンボルを識別するようにするために、それぞれのＦＥＣパリティシンボルにおいて、０、１、２に設定する。
【００４５】
２番目のソースシンボルブロックに対するパリティシンボルブロックの３個のＦＥＣパリティパケットのリペアＦＥＣペイロードＩＤも同じやり方で設定される。ＳＳ＿Ｓｔａｒｔはｊ＋Ｋ１に、ＲＳＢ＿ｌｅｎｇｔｈは３に、ＳＳＢ＿ｌｅｎｇｔｈはＫ２に、ＲＳ＿ＩＤはＦＥＣパリティパケットに合わせて各々０、１、２に設定される。
【００４６】
最初と２番目のソースシンボルブロックを結合したソースシンボルブロックのパリティシンボルブロックの３個のＦＥＣパリティパケットにおけるリペアＦＥＣペイロードＩＤも同様に設定される。全てのＦＥＣパリティパケットにおいて、ＳＳ＿Ｓｔａｒｔは、結合されたＦＥＣソースパケットブロックの最初のＦＥＣソースパケットのＳＳ＿ＩＤであるｊ値に設定される。ＳＳ＿Ｓｔａｒｔは、該当ＦＥＣソースパケットブロックの開始パケットを指し示す。ＲＳＢ＿ｌｅｎｇｔｈは、全てのＦＥＣパリティパケットにおいて３に設定される。これは、パリティシンボルブロックは３つのパリティシンボルを含むことを示す。ＳＳＢ＿ｌｅｎｇｔｈは、Ｋ１＋Ｋ２に設定される。これは、結合されたソースシンボルブロックの最後のソースシンボルにパディングされたパディングシンボルエレメントを除いたシンボルエレメントの数がＫ１＋Ｋ２であることを示す。ＲＳ＿ＩＤは、パリティシンボルを識別するために、それぞれのＦＥＣパリティパケットに合わせて０、１、２に設定される。
【００４７】
このように設定することによって、受信器は、受信したＦＥＣパリティパケットから、ＦＥＣソースパケットブロックの境界と対応するソースシンボルブロックのサイズを定めることができる。ＳＳ＿Ｓｔａｒｔから開始ＦＥＣソースパケットを定め、ＳＳＢ＿ｌｅｎｇｔｈからソースシンボルブロック内のソースシンボルの数を定めることができるので、受信器は、受信したＦＥＣソースパケットのＳＳ＿ＩＤから、受信したパケットが対応するＦＥＣソースパケットブロックに含まれるかどうかが分かる。すなわち、ＳＳ＿Ｓｔａｒｔがｊであり、ＳＳＢ＿ｌｅｎｇｔｈがＫ１−１であって、受信したＦＥＣソースパケットのＳＳ＿ＩＤがｊである場合、受信したパケットは開始ＦＥＣソースパケットである。受信したＦＥＣソースパケットのＳＳ＿ＩＤがｊ＋Ｋ１より小さいと、受信したパケットが対応するＦＥＣソースパケットブロックに含まれるパケットである。また、アウトバンドシグナリング（out-band signaling）によって予め受信したＴ値とｍ値に基づいて、ＳＳＢ＿ｌｅｎｇｔｈ値から、ソースシンボルは、大きさがＴであるソースシンボルブロック［（Ｋ１−１）／ｍ］個によって構成されることが分かるので、対応するＦＥＣソースパケットブロックに属する受信したＦＥＣソースパケットのＳＳ＿ＩＤからＳＳ＿Ｓｔａｒｔ値を引くことによって、受信したＦＥＣソースパケットがソースシンボルブロックのどのシンボルエレメントかを定めることができるので、ソースシンボルブロックを再構成できる。ここで、任意の実数Ａに対して、［Ａ」はＡより小さいか同一の最大整数を意味する。また、ＳＳＢ＿ｌｅｎｇｔｈとして設定されたＫ１−１がｍの倍数でない場合、Ｓ（＝Ｋ１−１（ｍｏｄ ｍ））個のパディングシンボルエレメントがパディングされていることが分かる。ここで、ＳはＫ１−１をｍで割った余りである。
【００４８】
一方、図２で、ＦＥＣ符号２４０は、入力したソースシンボルブロックからＦＥＣ符号化アルゴリズムによってパリティシンボルを計算し、パリティシンボルを含むパリティシンボルブロックを出力する。特定の実装において、ＦＥＣ符号化アルゴリズムは、所定数のソースシンボルを入力して所定数のパリティシンボルの値を計算する。この場合、上記ＦＥＣ符号は付加的な制御情報を必要としない。別の実装において、ＦＥＣ符号化アルゴリズムがソースシンボルの数、パリティシンボルの数、及びソースシンボルとパリティシンボルとの関係に対するＦＥＣ符号化情報を必要としてもよい。上記ＦＥＣ符号化情報は、ＦＥＣ伝送情報の一部として、ＭＭＴ ＦＥＣスキーム２３０内のＦＥＣブロック生成器（図示せず）によって上記ＦＥＣ符号２４０に伝送されてもよいが、上述するようにシステム全体の観点で、ＭＭＴ ＦＥＣＦＲＡＭＥの他の全ての構成ブロックが上記ＦＥＣ伝送情報を認知して符号化動作に活用してもよいことは明らかである。
【００４９】
図９Ａ及び図９Ｂは、本発明の一実施形態によるＦＥＣパケットのフォーマットを示す。
【００５０】
図９Ａは、ＦＥＣソースパケットを示すもので、Ｄ２ヘッダー９１０はＭＭＴパケットヘッダーを示し、Ｄ１ヘッダー９１１はＭＭＴペイロードヘッダーを示し、Ｄ１ペイロード９１２はペイロードデータを運搬し、ＦＥＣインバンド信号９１３はソースＦＥＣペイロードＩＤを示す。
【００５１】
図９Ｂは、ＦＥＣパリティ（リペア）パケットを示すもので、Ｄ２ヘッダー９２０はＭＭＴパケットヘッダーを示し、Ｄ１ヘッダー９２１はＭＭＴペイロードヘッダーを示し、ＦＥＣインバンド信号９２３はリペアＦＥＣペイロードＩＤを示し、Ｄ２ペイロード９２２は一つ又はそれ以上のパリティシンボルを運搬する。
【００５２】
上述するように、図９Ａのように、ＭＭＴパケットには、ＦＥＣ符号化後にソースＦＥＣペイロードＩＤが割り当てられる。パリティ（リペア）シンボルは、図９Ａのようなフォーマットを有するＭＭＴパケットを含むソースパケットブロックから、本発明の実施形態による一連の処理を経て生成される。図９Ｂに示すように、パリティ（リペア）シンボルには、リペアＦＥＣペイロードＩＤ、ＭＭＴペイロードヘッダー、ＭＭＴパケットヘッダーが付加される。図９Ａにおいて、プロトコルパケット（ＭＭＴパケット）の統一性を維持し、ＦＥＣパケット内でソースパケットが連続的に位置するようにするためにＦＥＣインバンド信号（FEC in-band signals）９１３がＦＥＣソースパケットの最後に設定されている。ＦＥＣパリティパケットは、一つあるいはそれ以上のパリティシンボルを伝達する。上記パリティシンボルは、ソースパケットを含むソースシンボルブロックの復元に使用される。図９Ｂにおいて、受信器においてＦＥＣ関連情報を容易に取得できるようにするために、ＦＥＣインバンド信号（FEC in-band signals）９２３は、トランスミッションプロトコルヘッダーとパリティシンボルの間に配置されている。
【００５３】
図２に戻り、ＭＭＴプロトコル２２０内のＦＥＣパケット生成器（図示せず）は、ソースパケット又はパリティシンボル、ソースＦＥＣペイロードＩＤ又はリペアＦＥＣペイロードＩＤ、並びにインバンド信号（in-band signals）を含むＦＥＣパケットを生成し、これをＦＥＣパケットブロックの形態で出力する。図２において、ソースあるいはリペアＦＥＣペイロードＩＤがインバンド信号とみなされてもよい。
【００５４】
ＭＭＴシステムにおいて、ソースパケットは、ＭＭＴパケットである。ＭＭＴパケットは、ＭＭＴパケットヘッダーとＭＭＴペイロードを含む。ＭＭＴペイロードはＭＭＴペイロードヘッダーとペイロードデータを含む。図２のＭＭＴ ＦＥＣスキーム２３０は、入力されたパリティ（リペア）シンボルは、リペアＦＥＣペイロードＩＤと共にペイロードデータと見なされるように、ペイロードデータにＭＭＴペイロードヘッダーとＭＭＴパケットヘッダーを付加することによって、ＦＥＣパリティパケットを構築し、そのＦＥＣパリティパケットを伝送する。
【００５５】
本発明の実施形態によるソースＦＥＣペイロードＩＤとリペアＦＥＣペイロードＩＤは、以下のように定義される。
【００５６】
【表１】
0006371830.tif 000002
【００５７】
【表２】
0006371830.tif 000003
【００５８】
上記＜表１＞及び＜表２＞における各フィールドは、以下の意味である。
【００５９】
−ＳＳ＿ＩＤ（Source Symbol ID）：ＦＥＣソースパケットに含まれたソースシンボルを識別するシーケンス番号である。ＳＳ＿ＩＤは、シンボルエレメントごとに１ずつ増加する。同じことがパディングシンボルエレメントにも適用される。パディングシンボルエレメントには、ＦＥＣソースパケットの最初のシンボルエレメントのＳＳ＿ＩＤが設定される。現パケットと次パケットのＳＳ＿ＩＤの差異は、現パケットに含まれるシンボルエレメントの数と同一であるが、例外的に現ＦＥＣソースパケットブロックのソースシンボルブロックにパディングシンボルエレメントがある場合、現ＦＥＣソースパケットブロックの最後のＦＥＣソースパケットとその次のＦＥＣソースパケットブロックの最初のＦＥＣソースパケットのＳＳ＿ＩＤの差異は、現ＦＥＣソースパケットブロックの最後のＦＥＣソースパケット内のシンボルエレメントの数とパディングシンボルエレメントの数との和である。上記シーケンス番号の初期値は、任意の値から開始し、予め定められた４バイト以上で表される整数の最大値に到達した以後には０に戻る。
【００６０】
−ＳＳ＿Ｓｔａｒｔ： このフィールドはＦＥＣソースパケットにおいてオプショナルである。ＦＥＣソースパケットがＳＳ＿Ｓｔａｒｔを含む場合に、ＳＳ＿Ｓｔａｒｔは、上記パケットが属したソースシンボルブロックの最初のソースシンボルのＳＳ＿ＩＤに設定される。これは、上記ソースパケットが属したソースシンボルブロックの境界情報に該当する。ＦＥＣパリティパケットにおいて、この情報は、ＦＥＣパリティパケットブロックに関係するＦＥＣソースパケットブロックの最初のＦＥＣソースパケットのＳＳ＿ＩＤが設定される。受信器は、この情報に基づいて、受信されたＦＥＣパケットからＦＥＣソースパケットブロックの境界、特にＦＥＣソースパケットの開始位置が分かる。
【００６１】
−ＲＳＢ＿ｌｅｎｇｔｈ：ＦＥＣパリティパケットのパリティシンボルが属するパリティシンボルブロックを構成するパリティシンボルの数。すなわち、Ｋ個のソースシンボルを含むソースシンボルブロックからＦＥＣ符号によりＰ個のパリティ（リペア）シンボルが生成される場合、このフィールドの値は、Ｐに設定される。
【００６２】
−ＲＳ＿ＩＤ：ＦＥＣパリティパケット内のパリティシンボルを識別するためのシーケンス番号。それぞれのパリティシンボルブロック内で上記フィールドは０から始まって１ずつ増加する。一つのＦＥＣパリティパケットが複数のパリティシンボルを含む場合には、上記複数のパリティシンボルのシーケンス番号のうちの最小値を表す。
【００６３】
−ＳＳＢ＿ｌｅｎｇｔｈ：ＦＥＣパリティパケット内のパリティシンボルによって保護されるソースシンボル（サブ）ブロックに含まれるシンボルエレメントの数。この数は、ソースシンボルブロックの最後のソースシンボルに含まれるパディングシンボルエレメントを含まない。すなわち、ソースシンボルブロック内のソースシンボルの数をＫとし、上記ソースシンボルブロックの最後のソースシンボルにパディングされるパディングシンボルエレメントの数をｐとすると、このフィールドは（Ｋ＊ｍ-ｐ）に設定される。
【００６４】
本発明の実施形態において、受信器は、以下のようにＦＥＣ復号を行う。受信器は、送信器がアウトバンド信号として伝送したソースフローごとのＦＥＣフローＩＤ、ＦＥＣフローＩＤによるＦＥＣ保護可否、ＦＥＣのタイプ、ＦＥＣコーディング構造、ソースシンボルの大きさＴ（すなわち、パリティシンボルの大きさ）、ソースシンボル内のシンボルエレメントの数ｍ、ソースシンボルブロック生成方法（ｓｓｂｇ＿ｍｏｄｅ）を定め、それらの値に基づいてＦＥＣ復号を準備する。受信器は、受信したＦＥＣパケットの中から、同じＦＥＣフローＩＤを有するＦＥＣパケットを分類する。受信器は、分類されたＦＥＣパケット内のＦＥＣタイプ情報に基づいて、該当ＦＥＣパケットがＦＥＣソースパケットであるかＦＥＣパリティパケットであるかを判定する。２段階ＦＥＣ符号化の場合、受信器はＦＥＣパリティパケットがパリティ１であるかパリティ２であるかを追加的に決定する。受信器は、該当ＦＥＣパケットがＦＥＣソースパケットである場合、ＦＥＣソースパケットのソースＦＥＣペイロードＩＤからＳＳ＿ＩＤを調べる。ＦＥＣパリティパケットである場合、ＦＥＣパリティパケットのリペアＦＥＣペイロードＩＤから、ＳＳ＿Ｓｔａｒｔ、ＲＳＢ＿ｌｅｎｇｔｈ、ＲＳ＿ＩＤ、ＳＳＢ＿ｌｅｎｇｔｈを調べる。受信器は、事前に認知されたＦＥＣペイロードＩＤ、ソースシンボルの大きさＴ、ソースシンボル内のシンボルエレメントの数ｍ、ｓｓｂｇ＿ｍｏｄｅに従って、ソースシンボルブロックまたはパリティシンボルブロックの適切な位置にＦＥＣパケットのペイロード（ソースシンボルまたはパリティシンボル）を配置して符号化シンボルブロック（encoding symbol block）を生成する。受信器は、生成された符号化シンボルブロックに適用されたＦＥＣ符号を使用して復号することによって伝送途中に消失されたソースパケットに該当するソースシンボルを復元する。受信器は、復元されたソースシンボルがパディングデータ（Padding data）を含む場合、パディングデータを除去して最終的にソースパケットを復元する。
【００６５】
各ソースシンボルは、少なくとも一つのシンボルエレメントを含み、上記シンボルエレメントの数は全てのソースシンボルにおいて同じであり、上記ＳＳ＿ＩＤは、シンボルエレメントごとに１ずつ増加する。上記ソースシンボルは、パディングバイトを含んでもよく、上記ソースシンボルブロックは、最後のシンボルエレメントとしてパディングバイトのみを有するパディングシンボルエレメントを含んでもよい。パディングシンボルエレメントのＳＳ＿ＩＤは、ソースＦＥＣパケットの最初のシンボルエレメントのＳＳ＿ＩＤに設定される。ＳＳＢ＿ｌｅｎｇｔｈは、上記パディングシンボルエレメントを除いた上記ソースシンボルブロック内のシンボルエレメントの数を示す。ＳＳＢ＿ｌｅｎｇｔｈは、ソースシンボルブロック内のシンボルエレメントの数を示す。上記リペアＦＥＣペイロードＩＤは、上記ソースシンボルブロックの境界を示すＳＳ＿Ｓｔａｒｔをさらに含む。ＳＳ＿Ｓｔａｒｔは、関連ソースシンボルブロックの最初のシンボルエレメントのＳＳ＿ＩＤに設定される。
【００６６】
上記受信器は、ＦＥＣ設定情報を受信する。上記ＦＥＣ設定情報は、ｓｓｂｇ＿ｍｏｄｅを含む。上記ｓｓｂｇ＿ｍｏｄｅは、ソースシンボルブロックを構成する方法と、ＦＥＣパケット受信前の上記ｓｓｂｇ＿ｍｏｄｅに従うソースシンボルごとのシンボルエレメントの数とを示す。上記リペアパリティＦＥＣペイロードＩＤは、ＳＳ＿Ｓｔａｒｔ、ＲＳＢ＿ｌｅｎｇｔｈ、ＲＳ＿ＩＤをさらに含む。ＳＳ＿Ｓｔａｒｔは、ソースシンボルブロックの境界を示し、ＲＳＢ＿ｌｅｎｇｔｈは、関連パリティＦＥＣシンボルブロックで生成されたリペアシンボルの数を示し、ＲＳ＿ＩＤはパリティＦＥＣパケットに含まれた第１のリペアシンボルを識別する。ソースＦＥＣペイロードＩＤは、上記ソースＦＥＣパケットの最後に配置され、パリティＦＥＣペイロードＩＤは、パリティＦＥＣパケットの前部に配置される。
【００６７】
本発明の一実施形態によれば、送信器は、ＦＥＣ設定情報やその他の符号化設定情報を受信器に伝送することによって、ＦＥＣを適用したコンテンツを選択的に伝送できる。また、本発明の一実施形態によれば、ネットワーク状況やコンテンツのＱｏＳ（Quality of Service）に応じてＦＥＣが選択的に適用される。また本発明の一実施形態によれば、ＦＥＣ設定情報やその他の符号化設定情報を含むＦＥＣ制御情報の全部または一部を周期的に反復伝送するかまたは、本発明のインバンドシグナリング方法によりＦＥＣ設定情報の全部またはその一部を伝送することができる。既にサービスが進行中である状況で新たな受信器もＦＥＣ設定情報を取得することができ、ＦＥＣ復号によって消失されたデータを復旧することができる。これによってユーザにより良質のサービスを提供することができる。
【００６８】
本発明の一実施形態によるＦＥＣパケットを送受信する装置及び方法は、コンピュータ読み取り可能な非一時的記録媒体でコンピュータ読み取り可能なコードとして実装されてもよい。コンピュータ読み取り可能な非一時的記録媒体は、コンピュータ読み取り可能なデータを記録する如何なる種類の記憶装置を含んでもよい。この記録媒体の例としては、読み出し専用メモリ（ＲＯＭ）、ランダムアクセスメモリ（ＲＡＭ）、光ディスク、磁気テープ、フロッピー（登録商標）ディスク、ハードディスク、及び不揮発性メモリなどを含んでもよい。さらに、上記コンピュータ読み取り可能な非一時的記録媒体は、ネットワークに接続したコンピュータシステムを介して分散され、上記コンピュータ読み取り可能なコードが、分散方式で格納及び実行されてもよい。
【００６９】
以上の詳細な説明から分かるように、放送／通信システムにおいてパケットを効果的に送受信するための装置及び方法を提供することができる。
【００７０】
以上、本発明の詳細な説明においては具体的な実施形態に関して説明したが、特許請求の範囲及びこれらの均等物によって定められる本発明の範囲及び精神を逸脱することなく、形式や細部の様々な変更が可能であることは、当該技術分野における通常の知識を持つ者には明らかである。
【図１】
0006371830.tif 000004
【図２】
0006371830.tif 000005
【図３】
0006371830.tif 000006
【図４】
0006371830.tif 000007
【図５】
0006371830.tif 000008
【図６】
0006371830.tif 000009
【図７】
0006371830.tif 000010
【図８】
0006371830.tif 000011
【図９Ａ】
0006371830.tif 000012
【図９Ｂ】
0006371830.tif 000013