添付の図面を参照した下記の説明は、特許請求の範囲の記載及びこれと均等なものの範囲内において定められる本発明の実施形態の包括的な理解を助けるために提供されるものであり、この理解を助けるために様々な特定の詳細な説明を含むが、単なる1つの実施形態にすぎない。従って、本発明の範囲及び趣旨を逸脱することなく、ここに説明する実施形態の様々な変更及び修正が可能であることは、当該技術分野における通常の知識を有する者には明らかである。また、明瞭性と簡潔性の観点から、当業者には既知の機能や構成に関する具体的な説明を省略する。
以下の説明及び請求項に使用する用語及び単語は、辞典的意味に限定されるものではなく、本発明の理解を明確且つ一貫性があるようにするために使用される。したがって、本発明の実施形態の説明が単に実例を提供するためのものであって、特許請求の範囲とこれと均等なものに基づいて定義される発明をさらに限定する目的で提供されるものでないことは、本発明の技術分野における通常の知識を持つ者には明らかであろう。
本願明細書に記載の各エレメントは、文脈中で特に明示しない限り、複数形を含むことは、当業者には理解できるであろう。したがって、例えば、“コンポーネント表面(a component surface)”との記載は、1つ又は複数の表面を含む。
“第1”及び“第2”などの序数を含む用語が様々な構成要素を説明するために使用されるが、これらの構成要素は、この用語により限定されない。この用語は、1つの構成要素を他の構成要素と区別するためにだけ使用される。例えば、本発明の権利範囲を逸脱することなく、第1の構成要素は、第2の構成要素と呼ばれてもよく、同様に、第2の構成要素は、第1の構成要素と呼ばれてもよい。ここで使用される用語“及び/又は”は、複数の関連した記載された項目の組合せ又は複数の関連して記載された項目のうちの何れかの項目を含む。
ここで使用する用語は、特定の実施形態だけを説明するためのもので、本発明を限定するものではない。ここで使用するように、単数の表現は、文脈上明白に異なることを必要としない限り複数の表現を含む。本明細書で使用されている“含む”及び“有する”などのような用語は、明細書上に記載された特徴、数字、ステップ、動作、構成要素、部分、又はこれらの組合せの存在を指定するものであって、1つ又はそれ以上の他の特徴、数字、ステップ、動作、構成要素、部品、又はこれらの組合せの存在又は付加の可能性を予め排除しないものと理解されるべきである。
或る用語が異なって定義されない限り、技術的であるか又は科学的な用語を含めてここで使用される全ての用語は、本発明が属する技術分野における通常の知識を有する者により一般的に理解されるものと同一の意味を有している。一般的に使用される予め定義されているような用語は、関連技術の文脈上有する意味と一致する意味を有するものと解釈されなければならず、本出願で明白に定義しない限り、理想的であるか又は過度に形式的な意味であると解釈されない。
本発明の様々な実施形態によると、電子デバイスは、通信機能を含む。例えば、電子デバイスは、スマートフォンと、タブレット個人用コンピュータ(personal computer:以下、‘PC’と称する)と、移動電話機と、画像電話機と、電子ブックリーダ(e-book reader)と、デスクトップ(desktop)PCと、ラップトップ(laptop)PCと、ネットブック(netbook)PCと、個人用ディジタルアシスタント(personal digital assistant:以下、‘PDA’と称する)と、携帯用マルチメディアプレーヤ(portable multimedia player:以下、‘PMP’と称する)と、mp3プレーヤ(mp3 player)と、移動医療デバイスと、カメラと、ウェアラブルデバイス(wearable device)(例えば、ヘッドマウンテッドデバイス(Head-Mounted Device:HMD)と、電子衣服と、電子ブレースと、電子ネックレースと、首飾りと、電子アクセサリと、電子タトゥー、又はスマートウォッチ(smart watch)などであり得る。
本発明の様々な実施形態によると、電子デバイスは、通信機能を有するスマート家庭用デバイス(smart home appliance)であり得る。例えば、スマート家庭用デバイスは、テレビジョンと、ディジタルビデオディスク(digital video disk:以下、‘DVD’と称する)プレーヤと、オーディオと、冷蔵庫と、エアコンディショナと、真空掃除機と、オーブンと、マイクロウェーブオーブンと、ウォッシャーと、ドライヤーと、エアピュリファイヤと、セットトップボックス(set-top box)と、TVボックス(例えば、Samsung Home Sync(登録商標)、Apple TV(登録商標)、又はGoogle TV(登録商標))と、ゲーミングコンソール(gaming console)と、電子辞書と、カムコーダと、電子写真フレームなどであり得る。
本発明の様々な実施形態によると、電子デバイスは、医療デバイス(例えば、磁気共鳴アンジオグラフィ法(magnetic resonance angiography:MRA)デバイス、磁気共鳴イメージング(magnetic resonance imaging:MRI)デバイス、コンピュータトモグラフィー(Computed Tomography:CT)デバイス、イメージングデバイス、又は超音波デバイス)と、ナビゲーションデバイスと、全地球測位システム(Global Positioning System:GPS)受信器と、イベントデータレコーダ(Event Data recorder:EDR)と、フライトデータレコーダ(Flight Data Recorder:FDR)と、オートモーチブインフォテインメントデバイス(Automotive Infotainment Device)と、航海電子デバイス(例えば、航海ナビゲーションデバイス、ジャイロスコープ、又はコンパス)と、航空電子デバイスと、セキュリティデバイスと、産業用又は消費者用ロボットなどであり得る。
本発明の様々な実施形態によると、電子デバイスは、通信機能を含む家具と、ビルディング/構造の一部と、電子ボードと、電子署名受信デバイスと、プロジェクターと、様々な測定デバイス(例えは、水、電気、ガス、又は電磁波測定デバイス)などであり得る。
本発明の様々な実施形態によると、電子デバイスは、上述したようなデバイスの任意の組み合せであってもよい。また、本発明の様々な実施形態による電子デバイスは、当該技術分野における当業者には、上述したようなデバイスに限定されないことが自明である。
本発明の様々な実施形態によると、信号受信装置は、例えば、電子デバイスであり得る。
本発明の一実施形態は、フォワードエラー訂正(Forward Error Correction:以下、‘FEC’と称する)方式をサポートするマルチメディア通信システムにおけるパケットを送受信する方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおけるデータ復元効率性を増加させるパケット送受信方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおける効率的な送信信頼度を取得できるパケット送受信方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおけるパケットの特性を考慮してパケットを送受信する方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおけるFECコーディング構造を考慮してパケットを送受信する方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおけるパケット送信時点を考慮してパケットを送受信する方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおけるパケットの分割特性を考慮してパケットを送受信する方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおける信号送信装置と信号受信装置との間の遅延を考慮してパケットを送受信する方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおけるバッファサイズを考慮してパケットを送受信する方法及び装置を提案する。
本発明の一実施形態は、FEC方式をサポートするマルチメディア通信システムにおけるFEC方式に関連したFEC構成情報を送受信する方法及び装置を提案する。
一方、本発明の一実施形態で提案する方法及び装置は、ディジタルマルチメディアブロードキャスティング(Digital multimedia Broadcasting:DMB)サービスと、携帯用ディジタルビデオブロードキャスティング−ハンドヘルド(Digital Video Broadcasting-Handheld:DVP−H)サービスと、高度テレビジョンシステム委員会−モバイル/ハンドヘルド(Advanced Television Systems Committee-Mobile/Handheld:ATSC−M/H)サービスなどのようなモバイルブロードキャスティングサービスと、インターネットプロトコルテレビジョン(Internet Protocol TeleVision:IPTV)サービスのようなディジタルビデオブロードキャスティングシステムと、ムービングピクチャーエクスパーツグループ(Moving Picture Experts Group:MPEG)メディアトランスポート(MPEG Media Transport:MMT)システムと、進化したパケットシステム(Evolved Packet System:EPS)と、ロングタームエボリューション(Long Term Evolution:LTE)移動通信システムと、ロングタームエボリューション−アドバンスド(Long Term Evolution-Advanced:LTE−A)移動通信システムと、高速ダウンリンクパケット接続(high speed downlink packet access:HSDPA)移動通信システムと、高速アップリンクパケット接続(high speed uplink packet access:HSUPA)移動通信システムと、第3世代プロジェクトパートナーシップ2(3rd generation project partnership 2:3GPP2)で提案した高速レートパケットデータ(high rate packet data:HRPD)移動通信システムと、3GPP2で提案した広帯域符号分割多重接続(Wideband Code Division Multiple Access:WCDMA(登録商標))移動通信システムと、3GPP2で提案した符号分割多重接続(Code Division Multiple Access:CDMA)移動通信システムと、米国電気電子技術者協会(Institute of Electrical and Electronics Engineers:IEEE)802.16m通信システムなどのような通信システムと、モバイルインターネットプロトコル(Mobile Internet Protocol)システムなどのような様々な通信システムに適用可能であることはもちろんである。
説明の便宜のために、本発明の一実施形態で提案する方法及び装置が適用されるFEC方式をサポートするマルチメディア通信システムがMMTシステムであると仮定する。
本発明の実施形態は、ネットワークを通して高解像度(High Definition:HD)コンテンツ及び超高解像度(Ultra High Definition:UHD)コンテンツのような高容量コンテンツだけでなく、映像会議/通話などのような様々なマルチメディアサービスを提供できる携帯電話、テレビジョン(TV)、コンピュータ、電子掲示板、タブレット、及び電子ブックなどのようなすべての電子デバイスでデータパケットの損失を効率的に復旧するパケット送受信装置及び方法を提案する。
本発明の実施形態では、具体的なFEC符号化方式について説明していないが、FEC符号化方式は、リード−ソロモン(Reed-Solomon:RS)コード、低密度パリティ検査(Low Density Parity Check:LDPC)コード、ターボコード、排他的論理和(eXclusive OR:XOR)コード、Pro−MPEG(Moving Picture Experts Group)FECコードなどの特定のFEC符号化方式に限定されないことに留意すべきである。
以下では、本発明の様々な実施形態を説明するために使用される用語及び定義について整理する。
(1) FECコード
FECコードは、エラーシンボル又は削除シンボルを訂正するために使用されるエラー訂正符号を示す。また、FECコードは、データを符号化することにより符号化されたデータフローがデータ損失に対して回復性を有するようにするアルゴリズムを示す。
(2) ソースシンボル
ソースシンボルは、FEC符号化過程で使用されるデータのユニットを示す。
(3) リペアシンボル
リペアシンボルは、エラー訂正のためにリダンダンシー情報を含む符号化シンボルを示す。また、リペアシンボルは、ソースシンボルでない符号化シンボルを示す。ここで、リペアシンボルは、パリティシンボルと呼ばれる。
(4) ソースパケット
ソースパケットは、FEC符号化方式により保護されるパケットを示す。
(5) ソースパケットブロック
ソースパケットブロックは、単一のブロックとして保護されるFECソースフローのセグメントされた集合を示す。
(6) ソースシンボルブロック
ソースシンボルブロックは、単一のソースパケットブロックから生成されるソースシンボルの集合を示す。すなわち、ソースシンボルブロックには、少なくとも1つのソースシンボルが含まれる。
(7) リペアシンボルブロック
リペアシンボルブロックは、損失されたソースシンボルを復旧するために使用され得るリペアシンボルの集合を示す。すなわち、リペアシンボルブロックには、少なくとも1つのリペアシンボルが含まれる。ここで、リペアシンボルブロックは、パリティシンボルブロックとも呼ばれる。
(8) 符号化シンボルブロック
符号化シンボルブロックは、符号化シンボルの集合を示す。また、符号化シンボルブロックは、ソースシンボルブロックの符号化過程で生成される符号化シンボルの集合を示す。すなわち、符号化シンボルブロックには、少なくとも1つの符号化シンボルが含まれる。
(9) 符号化シンボル
符号化シンボルは、符号化過程により生成されるデータのユニットを示す。ここで、ソースシンボルは、符号化シンボルの一部であり得る。
(10) FECリペアパケット
FECリペアパケットは、リペアシンボルブロックの1つ又はそれ以上のリペアシンボルを配信するためにリペアFECペイロード識別子(ID)を有するMMTプロトコル(MMT Protocol:以下、‘MMTP’と称する)パケットを示す。
(11) FECソースパケット
FECソースパケットは、ソースFECペイロードIDを有するMMTPパケットを示す。
(12) FECソース又はリペアパケット
FECソース又はリペアパケットは、FECリペアパケット又はFECソースパケットを通称する用語である。すなわち、FECソース又はリペアパケットは、必要に応じて、FECリペアパケットを示すこともでき、FECソースパケットを示すこともでき、FECリペアパケット及びFECソースパケットのすべてを示すこともできる。
(13) FECソースパケットブロック
FECソースパケットブロックは、ソースシンボルブロックを配信するためのFECソースパケットの集合を示す。すなわち、FECソースパケットブロックには、少なくとも1つのFECソースパケットが含まれる。
(14) FECリペアパケットブロック
FECリペアパケットブロックは、リペアシンボルブロックを配信するためのFECリペアパケットの集合を示す。すなわち、FECリペアパケットブロックには、少なくとも1つのFECリペアパケットが含まれる。ここで、FECリペアパケットブロックは、FECパリティパケットブロックとも呼ばれる。
(15) FECソース又はリペアパケットブロック
FECソース又はリペアパケットブロックは、FECソースパケットブロック及びFECソースパケットブロックに関連したFECリペアパケットブロックを通称する用語である。すなわち、FECソース又はリペアパケットブロックは、必要に応じて、FECソースパケットブロックを示すこともでき、FECリペアパケットブロックを示すこともでき、FECソースパケットブロック及びFECリペアパケットブロックのすべてを示すこともできる。すなわち、FECソース又はリペアパケットブロックは、符号化シンボルブロックを配信するためのFECソース又はリペアパケットの集合を示す。したがって、FECソース又はリペアパケットブロックには、少なくとも1つのFECソース又はリペアパケットが含まれる。
(16) FECペイロードID
FECペイロードIDは、MMT FEC方式に関するMMTPパケットのコンテンツを識別するためのIDを示す。ここで、MMT FEC方式は、MMTシステムでサポートするFEC方式を示す。
(17) リペアFECペイロードID
リペアFECペイロードIDは、リペアパケットに対するFECペイロードIDを示す。ここで、リペアFECペイロードIDは、パリティFECペイロードIDとも呼ばれる。リペアFECペイロードIDは、FECリペアパケットのためのリペアソースFEC構成情報を含み、リペアFEC構成情報は、FECソース又はリペアパケットブロックが少なくとも1つのFECソース又はリペアパケットを含む場合に、少なくとも1つのFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに関連した情報を含む。ここで、1番目に送信されるFECソース又はリペアパケットに関連した情報は、1番目に送信されるFECソース又はリペアパケットのタイムスタンプに関連した情報を含む。また、対応するリペアFECペイロードIDを送信する信号送信装置、例えば、MMT送信エンティティが2段FECコーディング構造をサポートする場合に、1番目に送信されるFECソース又はリペアパケットに関連した情報は、FECでのタイムスタンプに関連した情報を示すタイムスタンプ指示子を含む。以下では、リペアFECペイロードID及びタイムスタンプについて具体的に説明するので、ここでは、その詳細な説明を省略する。
(18) ソースFECペイロードID
ソースFECペイロードIDは、ソースパケットに対するFECペイロードIDを示す。ソースFECペイロードIDは、FECソースパケットのためのソースFEC構成情報を含み、ソースFEC構成情報は、FECソース又はリペアパケットブロックが少なくとも1つのFECソース又はリペアパケットを含む場合に、少なくとも1つのFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに関連した情報を含む。ここで、1番目に送信されるFECソース又はリペアパケットに関連した情報は、1番目に送信されるFECソース又はリペアパケットのタイムスタンプに関連した情報を含む。また、対応するソースFECペイロードIDを送信する信号送信装置、例えば、MMT送信エンティティが2段FECコーディング構造をサポートする場合に、1番目に送信されるFECソース又はリペアパケットに関連した情報は、FECでのタイムスタンプに関連した情報を示すタイムスタンプ指示子を含む。以下では、ソースFECペイロードID、タイムスタンプ、及びタイムスタンプ指示子について具体的に説明するので、ここでは、その詳細な説明を省略する。
(19) MMT
MMTは、MPEGデータを効率的に配信するために研究中の国際標準を示す。
(20) FECソースフロー
FECソースフローは、MMT FEC方式により保護されるMMTPパケットのフローを示す。
(21) FEC方式
FEC方式は、FECコードを使用するために要求される追加のプロトコル側面を定義する規格を示す。
(22) FECリペアフロー
FECリペアフローは、FECソースフローを保護するリペアシンボルを運搬するデータフローを示す。ここで、FECリペアフローは、FECパリティフローと呼ばれる。
(23) FEC符号化されたフロー
FEC符号化されたフローは、FECソースフロー及び1つ又はそれ以上の関連FECリペアフローで構成されたフローの論理的な集合を示す。
(24) アセット
アセットは、固有のIDと関連し、マルチメディアプレゼンテーション(multimedia presentation)を生成するために使用されるマルチメディアデータエンティティを示す。
(25) メディア処理ユニット(MPU)
MPUは、メディアコーデックに依存しない(agnostic)、独立して復号可能な同期型データ又は非同期型データのための一般コンテナ(generic container)を示す。
(26) パッケージ
パッケージは、MMTを使用して配信されるメディアデータの論理的なコレクション(collection)を示す。
(27) MMTパケット
MMTパケットは、MMTPを用いて配信されるメディアデータのフォーマット化されたユニット(formatted unit)を示す。
(28) MMTペイロード
MMTペイロードは、MMTP又はインターネットアプリケーションレイヤートランスポートプロトコルを使用してパッケージ及び/又はシグナリングメッセージを運搬するメディアデータのフォーマット化されたユニットを示す。ここで、インターネットアプリケーションレイヤートランスポートプロトコルは、例えば、リアルタイムトランスポートプロトコル(Real-Time Transport Protocol:RTP)などであり得る。
(29) MMTP
MMTPは、インターネットプロトコル(Internet Protocol:IP)ネットワークを通してMMTPペイロードを配信するためのアプリケーションレイヤートランスポートプロトコルを示す。
図1を参照して本発明の一実施形態によるFEC方式をサポートするMMTシステムの構造の一例について説明する。
図1は、本発明の一実施形態によるFEC方式をサポートするMMTシステムの構造の一例を概略的に示す図である。
図1を参照すると、MMTシステムは、MMT送信エンティティ111と、MMT受信エンティティ113と、パッケージプロバイダ115と、複数のアセットプロバイダ、例えば、N個のアセットプロバイダ、すなわち、アセットプロバイダ#1 117−1,...,アセットプロバイダ#N 117−Nとを含む。MMT送信エンティティ111とMMT受信エンティティ113との間には、MMTPに基づいて通信が実行される。ここで、MMTPについて説明すると、次の通りである。
MMTPは、MMTパッケージを効率的であり信頼できるように転送するために設計されたアプリケーションレイヤートランスポートプロトコルである。MMTPは、メディア多重化及びネットワークジッター計算などのような向上した特性をサポートする。このような特性は、様々なタイプの符号化されたメディアデータで構成されるコンテンツを効率的に配信することを可能にする。MMTPは、既存のネットワークプロトコル、例えば、ユーザデータグラムプロトコル(User Datagram Protocol:UDP)又はIPの上位レイヤーで動作でき、様々なアプリケーションをサポートできる。
MMT送信エンティティ111は、1つ又はそれ以上のMMT受信エンティティにメディアデータを送信するMMTエンティティであり得、例えば、MMTブロードキャスティングサーバなどであり得る。
MMT受信エンティティ113は、メディアデータの受信及び消費を行うMMTエンティティであり得、例えば、移動端末機(Mobile Station:MS)及びユーザ端末機(User Equipment:UE)などのような無線デバイスであり得る。例えば、MMT送信エンティティ111がMMTブロードキャスティングサーバであり、MMT受信エンティティ113がMSである場合に、MMTブロードキャスティングサーバは、基地局(BS)を通してメディアデータをMSに送信できる。図1には、基地局が図示されていないことに留意すべきである。
MMT送信エンティティ111は、パッケージをMMTPパケットフローとしてMMT受信エンティティ113に送信する。ここで、パッケージは、メディアデータの論理的なコレクションを示し、MMT技術を使用して配信される。MMT送信エンティティ111は、MMTPパケットフローを通して、アセット、プレゼンテーション情報(Presentation Information:PI)などをMMT受信エンティティ113に送信する。ここで、アセット及びPIについての具体的な説明を省略する。MMT送信エンティティ111は、パッケージプロバイダ115により提供されるパッケージのPIに基づいてコンテンツプロバイダ(図1には図示せず)からコンテンツを取得することが要求される。
MMT送信エンティティ111及びMMT受信エンティティ113は、MMTPパケットフローを通してMMTシグナリングを送受信する。
パッケージプロバイダ115及びコンテンツプロバイダは、共に位置し得る。メディアコンテンツは、MMTPパケットフローを形成するカプセル化されたMMT処理ユニットのシリーズでセグメントされるアセットとして提供される。
メディアコンテンツのMMTPパケットフローは、関連したトランスポート特性情報を使用して生成される。シグナリングメッセージ、パッケージの配信及び消費を管理するために使用され得る。
図1において、MMT送信エンティティ111は、信号送信装置であり、MMT受信エンティティ113は、信号受信装置である。
図1を参照して本発明の一実施形態によるFEC方式をサポートするMMTシステムの構造の一例について説明した。図2を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムの構造の他の例について説明する。
図2は、本発明の一実施形態によるFEC方式をサポートするMMTシステムの構造の他の例を概略的に示す図である。
図2を参照すると、MMTシステムは、信号送信装置200と、信号受信装置210とを含む。
信号送信装置200は、FEC上位プロトコルに対応するプロトコルA処理動作を実行するプロトコルA処理ブロック201、FEC符号化ブロック202、FEC下位プロトコルに対応するプロトコルB処理動作を実行するプロトコルB処理ブロック203、及び送信器物理レイヤーブロック204を含む。
プロトコルA処理ブロック201は、送信データに対するプロトコルA処理動作を実行してソースペイロード230を生成し、生成されたソースペイロード230をFEC符号化ブロック202に出力する。
FEC符号化ブロック202は、少なくとも1つのソースパケットを含むソースパケットブロックを生成し、生成されたソースパケットブロックに対して予め設定されているFEC方式に対応するFEC符号化動作を実行してパリティペイロード231を含むリペアシンボルを生成する。FEC符号化ブロック202は、ソースパケット及びリペアシンボルにFECヘッダ232を付加することによりFECソースパケットを生成し、生成されたFECソースパケットをプロトコルB処理ブロック203に出力する。FECソースパケットは、FECヘッダをソースパケットと結合することにより生成され、FECリペアパケットは、FECヘッダをリペアシンボルと結合することにより生成される。
図2において、FECソースパケットは、FECヘッダの後ろにソースペイロードが位置する形態で生成されるデータユニットである。あるいは、FECソースパケットは、ソースペイロードの後ろにFECヘッダが位置する形態で生成されるデータユニットであり得ることはもちろんである。
図2において、FEC符号化ブロック202がプロトコルA処理ブロック201とプロトコルB処理ブロック203との間に位置する形態で具現されているが、これとは異なり、プロトコルA処理ブロック201がFEC符号化ブロック202を含む形態で具現されることができる。この場合に、プロトコルA処理ブロック201の機能を実行するためのプロトコルヘッダがFECパリティパケットに含まれることができ、FEC符号化ブロック202を含むプロトコルA処理ブロック201は、ソースパケット及びパリティパケットを1つのパケットフローで生成するためのマルチプレクサを含む。
プロトコルB処理ブロック203は、FEC符号化ブロック202から転送されるFECソースパケット又はFECパリティパケットに対してプロトコルBに対応するプロトコルB処理動作を実行することによりプロトコルB信号を生成し、プロトコルB信号を送信器物理レイヤー処理ブロック204に転送する。
送信器物理レイヤーブロック204は、プロトコルB処理ブロック203から転送されたプロトコルB信号を物理レイヤー送信に適合した物理レイヤー信号に変換し、変換された物理レイヤー信号をトランスポートチャネル220を通して信号受信装置210に転送する。プロトコルB処理ブロック203と送信器物理レイヤーブロック204との間には、様々なレイヤーが存在し得、ここでは、その具体的な説明を省略する。
図2では、プロトコルA処理ブロック201、FEC符号化ブロック202、プロトコルB処理ブロック203、及び送信器物理レイヤーブロック204が個別のユニットとして図示されているが、これは、説明の便宜のためのものであることに留意すべきである。言い換えれば、プロトコルA処理ブロック201、FEC符号化ブロック202、プロトコルB処理ブロック203、及び送信器物理レイヤーブロック204の中の2つ以上が1つのユニットに統合される形態にも具現されることができることはもちろんである。
信号受信装置210は、受信器物理レイヤーブロック211、FEC下位プロトコルに対応する動作を実行するプロトコルB処理ブロック212、FEC復号化ブロック213、及びFEC上位プロトコルに対応する動作を実行するプロトコルA処理ブロック214を含む。
受信器物理レイヤーブロック211は、トランスポートチャネル220を通して信号受信装置210で受信された物理レイヤー信号をプロトコルB信号に変換し、変換されたプロトコルB信号をプロトコルB処理ブロック212に転送する。信号送信装置200で説明したように、プロトコルB処理ブロック212と受信器物理レイヤー処理ブロック211との間には、様々なレイヤーが存在し得、プロトコルB処理ブロック212と受信器物理レイヤー処理ブロック211との間に存在する様々な処理ブロックについては、具体的な説明を省略する。
プロトコルB処理ブロック212は、プロトコルB処理ブロック212で受信された物理レイヤー信号に対してプロトコルB処理動作を実行することによりプロトコルB信号を生成した後に、プロトコルB信号をFEC復号ブロック213に配信する。プロトコルB信号は、FECパケット、すなわち、FECソースパケット又はFECパリティパケットであり得る。信号送信装置200から送信したFECパケットの中の一部は、ネットワーク輻輳及び物理レイヤーで発生したエラーの影響により損失される。したがって、信号送信装置200から送信したFECパケットの中の一部は、FEC復号ブロック213に配信されない可能性もある。
FEC復号ブロック213は、プロトコルB処理ブロック212から転送されたFECパケットに対するFEC復号動作を実行することにより信号送信装置200から送信したソースペイロードを検出し、検出されたソースペイロードをプロトコルA処理ブロック214に配信する。プロトコルA処理ブロック214は、FEC復号化ブロック213から配信されたソースペイロードに対するプロトコルA処理動作を実行することにより送信データを検出する。
上述したように、FECヘッダは、FECペイロードIDを含み、FECソースパケットのためのFECヘッダは、ソースFECペイロードIDを含み、FECパリティパケットのためのFECヘッダは、リペアFECペイロードIDを含む。
本発明の一実施形態は、MMTシステムに適用されるので、ソースパケットは、MMTパケットとなり、FECソースパケットは、ソースFECペイロードIDを有するMMTパケットとなり、FECリペアパケットは、リペアシンボルを運搬するリペアFECペイロードIDを有するMMTパケットとなる。
図2では、受信器物理レイヤーブロック211、プロトコルB処理ブロック212、FEC復号化ブロック213、及びプロトコルA処理ブロック214が個別のユニットとして図示されているが、これは、説明の便宜のためのものであることに留意すべきである。言い換えれば、受信器物理レイヤーブロック211、プロトコルB処理ブロック212、FEC復号化ブロック213、及びプロトコルA処理ブロック214の中の2つ以上が1つのユニットに統合される形態にも具現されることができることはもちろんである。
図2を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムの構造の他の例について説明した。図3を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてアプリケーションレイヤーフォワードエラー訂正(AL−FEC)のためのアーキテクチャーについて説明する。以下では、説明の便宜上、AL−FECのためのアーキテクチャーをAL−FECアーキテクチャーと称する。
図3は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるAL−FECアーキテクチャーを概略的に示す図である。
図3の説明に先立って、図3に示されているAL−FECアーキテクチャーは、信号送信装置に含まれているAL−FECアーキテクチャーの構造であることに留意すべきである。
AL−FECアーキテクチャーは、MMTアプリケーションユニット310と、MMTPユニット320と、MMT FECユニット330と、FECコードユニット340と、トランスポートレイヤー処理ユニット350と、インターネットプロトコル(Internet Protocol:IP)処理ユニット360とを含む。ここで、MMTPユニット320及びMMT FECユニット330は、AL−FECプロセッサに含まれる。
MMT方式は、IPネットワークにおいて安定した配信のためにAL−FECメカニズムを提供する。MMTシステムがサポートするFEC方式(説明の便宜上、'MMT FEC方式’と称する)は、配信関数(delivery function)のビルディングブロック(building block)として説明される。
まず、MMTアセットは、MMTアプリケーションユニット310からMMTPユニット320に配信され、MMTPユニット320は、予め設定されているMMTPパケット化方式を転送されたMMTPアセットに適用することによりMMTPパケットを生成し、生成されたMMTPパケットを送受信上での保護のためにMMT FECユニット330に配信する。MMTPユニット320で使用したMMTPパケット化方式は、様々な方式で具現されることができ、ここでは、その詳細な説明を省略する。
MMTアプリケーションユニット310は、FEC構成情報をMMT FECユニット330に提供し、FEC構成情報は、FEC符号化されたフローのIDと、FECコーディング構造及びFECコードに関連した情報などを含む。FEC構成情報は、信号送信装置に対応する信号受信装置に配信され、以下では、FEC構成情報について具体的に説明するので、ここでは、その詳細な説明を省略する。
MMT FECユニット330は、予め設定されているFEC方式に対応してMMTPユニットから配信されたMMTPパケットを符号化することにより、リペアシンボル、リペアFECペイロードID、及びソースFECペイロードIDを生成し、生成されたリペアシンボル、リペアFECペイロードID、及びソースFECペイロードIDをMMTPユニット320に配信する。MMTPユニット320は、MMT FECユニット330から配信されたリペアシンボルをMMTPパケットとともにトランスポートレイヤー350に配信する。
一方、MMT送信エンティティは、保護を必要とするパッケージ内のMMTアセット及びFECソースフローの個数を決定する。MMTアセットの中の1つ又はそれ以上は、単一のFECソースフローとして保護され、単一のFECソースフローは、MMTアセットの中の1つ又はそれ以上を運搬するMMTPパケットで構成される。FECソースフロー及びFECソースフローに関するFEC構成情報は、保護のために、MMT FECユニット330に配信される。MMT FECユニット330は、FECコードを使用して1つ又はそれ以上のFECリペアフローを含むリペアシンボルを生成する。リペアシンボルは、ソースFECペイロードID及びリペアFECペイロードIDとともにMMTPユニット320に配信される。MMTPユニット320は、FECソース及びリペアパケットをMMT受信エンティティに配信する。MMT受信エンティティに含まれたMMTPユニットは、FECソースフロー及びFECソースフローの関連したFECリペアフローを信号受信エンティティに含まれたMMT FECユニットに配信する。MMT FECユニットは、MMTPユニットから配信されたFECソースフロー及びFECソースフローの関連したFECリペアフローを予め設定されているFEC方式に基づいて復号することによりMMTPパケットを復旧し、復旧されたMMTPパケットをMMTPユニットに配信する。
一方、MMT FECユニット330は、FECソースフローをソースパケットブロックに分割し、ソースシンボルブロックを生成する。MMT FECユニット330は、ソースシンボルブロックをFEC符号化のためにFECコードブロック340に配信する。ここで、FEC符号化は、ソースシンボルブロックからリペアシンボルを生成するプロセスを示す。
FECコードブロック340は、MMT FECユニット330から配信されたソースシンボルブロックを予め設定されているFECコードアルゴリズムに基づいてFEC符号化を行うことによりリペアシンボルを生成する。FECコードブロック340が使用するFECコードアルゴリズムは、様々な形態で具現され得る。本発明の一実施形態では、FECコードアルゴリズムが国際標準化機構(International Organization for Standardization:ISO)/国際電気標準会議(International Electro technical Commission:IEC)23008−10で使用された方式でソースシンボルブロックからリペアシンボルを生成するFECコードアルゴリズムであると仮定する。
一方、AL−FECアーキテクチャーは、FEC構成情報側面を考慮して説明する。
MMTアプリケーションユニット310は、AL−FEC保護の後に配信されるMMTアセットを決定し、決定されたMMTアセットをMMTPユニット320に配信する。MMTアプリケーションユニット310は、AL−FEC関連情報、例えば、FEC構成情報をMMTPユニット320及びMMT FECユニット330、すなわち、AL−FECプロセッサに配信する。ここで、FEC構成情報は、FECメッセージに含まれたFEC制御情報及びFECソース又はリペアパケットブロック送信時間期間に関連した情報などを含み得、FEC構成情報について具体的に説明するので、ここでは、その詳細な説明を省略する。
MMTPユニット320は、入力されたMMTアセットをパケット化することによりMMTパケットを生成し、MMTパケットヘッダを生成されたMMTパケットに付加することによりソースパケットを生成し、少なくとも1つのソースパケットを含むソースパケットブロックをMMT FECユニット330に出力する。MMTパケットヘッダは、MMTパケットが送信される時間に関連した情報、例えば、タイムスタンプを含む。MMTPユニット320は、MMTパケットから生成されたFECソース又はパケットブロックに含まれた少なくとも1つのFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットとFECソース又はパケットブロックに含まれた少なくとも1つのFECソース又はリペアパケットの中で最後に送信されるFECソース又はリペアパケットの送信時間情報、すなわち、タイムスタンプの差がFEC構成情報に含まれたFECソース又はリペアパケットブロック送信時間期間内にあるようにスケジューリング動作を行うことにより各MMTパケットのタイムスタンプを設定する。
MMT FECユニット330は、MMTアプリケーションユニット310から入力されたFEC構成情報に基づいて与えられたソースシンボルブロック生成方式に従って入力された各ソースパケットブロックからソースシンボルブロックを生成する。このとき、本発明の一実施形態によるソースシンボルブロック生成方式に関する情報がFEC構成情報として与えられ、ソースシンボルブロック生成方式に関する情報がFEC構成情報に含まれる場合に、MMT FECユニット330は、FEC構成情報に含まれたソースシンボルブロック生成方式に従ってソースシンボルブロックを生成する。ソースシンボルブロックを生成した後に、MMT FECユニット330は、生成されたソースシンボルブロックをFECコードユニット340に配信する。
FECコードユニット340は、MMT FECユニット330から配信されたソースシンボルブロックからリペアシンボルブロックを生成することにより、生成されたリペアシンボルブロックをMMT FECユニット330に配信する。
MMT FECユニット330は、ソースシンボルブロック及びリペアシンボルブロックに対するFECペイロードIDを生成し、FECコードユニット340から受信されたリペアシンボルをMMTPユニット320に配信する。
MMTPユニット320は、入力されたリペアシンボル及びFECペイロードIDを用いてソースFECペイロードIDをソースパケットに付加することによりFECソースパケットを生成し、リペアFECペイロードID、MMTPペイロードヘッダ、及びMMTパケットヘッダをリペアシンボルに付加することによりFECリペアパケットを生成する。MMTPユニット320は、生成されたFECソースパケット及びFECリペアパケットをトランスポートレイヤーユニット350を通してIPユニット360に配信する。例えば、トランスポートレイヤーは、ユーザデータグラムプロトコル(UDP)などであり得る。ここで、FECソース又はリペアパケットブロックに含まれたFECソースパケットのためのFECペイロードID又はFECリペアパケットのためのFECペイロードIDは、FECソース又はリペアパケットブロックに含まれた少なくとも1つのFECソース又はリペアパケットの中で1番目に送信されたFECソース又はリペアパケットの送信時間情報、例えば、‘T0’を含む。これとは異なり、送信時間情報T0は、FEC符号化動作の後にT0を含むMMTパケットヘッダに対してFEC符号化動作を実行し、FECリペアパケットのためのMMTパケットヘッダにT0を含ませて送信される。
MMTPユニット320は、MMTアプリケーションユニット310により生成されたFEC構成情報を含むFECメッセージにMMTペイロードヘッダ及びMMTパケットヘッダを付加することにより、MMTペイロードヘッダ及びMMTパケットヘッダが付加されたFECメッセージを送信する。
図3に図示していないが、MMTアプリケーションユニット310は、本発明の一実施形態で提案する仮想受信器バッファリングモデル(Hypothetical Receiver Buffering Model:HRBM)メッセージを生成する。ここで、HRBMメッセージは、最大バッファサイズに関連した情報、例えば、‘最大バッファサイズ’と、信号送信装置と信号受信装置との間の遅延に関連した情報、例えば、‘固定されたエンドツーエンド遅延(fixed end-to-end delay)’とを含む。MMTアプリケーションユニット310は、MMTペイロードヘッダ及びMMTパケットヘッダを生成されたHRBMメッセージに付加することにより、MMTペイロードヘッダ及びMMTパケットヘッダが付加されたHRBMメッセージを配信する。
一方、固定されたエンドツーエンド遅延は、パケット送信の時にネットワーク状況を考慮してパケットが信号受信装置で受信されるまでの最大遅延時間を示し、FECソース又はリペアパケットブロックの送信時間期間を含むこともあり、又は含まないこともある。固定されたエンドツーエンド遅延がFECソース又はリペアパケットブロックの送信時間期間を含む場合に、信号受信装置は、固定されたエンドツーエンド遅延に対応して、すなわち、パケットの送信時間(Ts)+固定されたエンドツーエンド遅延に対応してFEC復号動作を実行した後のパケットを信号受信装置に含まれたMMTアプリケーションユニット(図3に図示せず)に提供できる。これとは異なり、固定されたエンドツーエンド遅延がFECソース又はリペアパケットブロックの送信時間期間を含まない場合に、信号受信装置は、FECメッセージのFECソース又はリペアパケット送信時間期間情報と、固定されたエンドツーエンド遅延が示す時間に対応して、すなわち、パケットの送信時間(Ts)+固定されたエンドツーエンド遅延+FECソース又はリペアパケットブロック送信時間期間に対応してFEC復号動作を実行した後のパケットを信号受信装置に含まれたMMTアプリケーションユニットに提供できる。また、FECソース又はリペアパケットブロック送信時間期間は、すべてのFECソース又はリペアパケットブロックが設定されたFECソース又はリペアパケットブロック送信時間期間内に送信されるべきであることを意味する。
図3において、ソースパケットブロック単位でFECソースパケットが生成され、ソースパケットブロック単位でFECリペアパケットが生成され送信される。しかしながら、実際のネットワーク環境では、MMTPユニット320が生成したソースパケットがMMT FECユニット330に入力され、それと同時にソースパケットにソースFECペイロードIDを付加することにより、ソースパケットはFECソースパケットとして生成され、FECソースパケットは即座に送信される。MMT FECユニット330は、ソースパケットをMMT FECユニット330に含まれている内部のメモリに記憶され、ソースパケットブロックのための最後のソースパケットがMMT FECユニット330に入力される場合に、ソースパケットブロックからソースシンボルブロックを生成し、生成されたソースシンボルブロックをFECコードユニット340に配信する。その後に、FECコードユニット340がMMT FECユニット330から配信されたソースシンボルブロックに基づいてパリティシンボルブロックを生成し、生成されたパリティシンボルブロックをFECペイロードIDとともにMMTPユニット320に配信し、MMTPユニット320がMMT FECユニット340から配信されたパリティシンボルブロックに基づいてFECリペアパケットを生成して配信することが好ましい。
MMTアプリケーションユニット310、MMTPユニット320、MMT FECユニット330、FECコードユニット340、トランスポートレイヤー処理ユニット350、及びIP処理ユニット360が個別のユニットとして説明されるが、これは、説明の便宜のためのものである。言い換えれば、AL−FECアーキテクチャーは、MMTアプリケーションユニット310、MMTPユニット320、MMT FECユニット330、FECコードユニット340、トランスポートレイヤー処理ユニット350、及びIP処理ユニット360の中の2個以上が1個のユニットに統合される形態でも具現されることができる。
図3を参照して本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるAL−FECアーキテクチャーについて説明した。図4を参照してFEC方式をサポートするMMTシステムで使用される2段FECコーディング構造について説明する。
図4は、本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用される2段FECコーディング構造を概略的に示す図である。
図4を説明すると、MMT FEC方式は、FECソースフローでMMTアセットに対する適合した保護レベルのためにレイヤー化されるか又は非レイヤー化されるメディアデータに対するMMTPパケットのマルチレベル構成を提供する。例えば、マルチレベル構成は、2段FECコーディング構造及びレイヤー認識FEC(Layer-Aware FEC:LA−FEC)コーディング構造などを含む。
MMT方式において、相対的に高い信頼度を要求するMMTPパケットを1つ以上のFECコードを使用して保護するための2段FECコーディング構造を提案している。2段FECコーディング構造は、予め定められた個数のMMTPパケットを含むソースパケットを保護するためのAL−FECに対するFECコーディング構造を示す。
図4において、i番目のP1は、i番目のソースシンボルブロックに対するリペアシンボルを示し、P2は、ソースシンボルブロックに対するリペアシンボルブロックを示す。ここで、i=1,2,...,Mである。
ソースパケットブロックは、複数のFECコーディング構造、すなわち、ケース0に対応するFECコーディング構造、ケース1に対応するFECコーディング構造、及びケース2に対応するコーディング構造の中の1つに従って符号化されるのであろう。ここで、ケース0に対応するFECコーディング構造、ケース1に対応するFECコーディング構造、及びケース2に対応するFECコーディング構造について説明する。
(1)ケース0に対応するFECコーディング構造(ケース0)
ケース0に対応するFECコーディング構造は、FEC符号化が適用されないことを示す。
(2)ケース1に対応するFECコーディング構造(ケース1)
ケース1に対応するFECコーディング構造は、1段FECコーディング構造を示す。
(3)ケース2に対応するコーディング構造(ケース2)
ケース2に対応するコーディング構造は、2段FECコーディング構造を示す。
2段FECコーディング構造に対して、1個のソースパケットブロックは、M個のソースパケットブロックに分割される。M個のソースパケットブロックの各々は、ソースパケットサブブロックと呼ばれる。ここで、Mは、1より大きい(M>1)。分割されたi番目のソースパケットブロック、すなわち、i番目のソースパケットサブブロックは、ソースシンボルブロック生成(Source Symbol Block Generation:SSBG)モードの中の1つに対応するi番目のソースシンボルブロックに変換される。以下では、SSBGモードについて説明するので、ここでは、その詳細な説明を省略する。
その後に、i番目のソースシンボルブロックは、FEC1コードにより符号化される。ここで、i=1,2,...,Mである。その後に、M個のソースシンボルブロックは、FEC2コードにより単一のソースシンボルブロックを構成するように接続される。
一方、M個のリペアシンボルブロックは、FEC1コードによりM個のソースシンボルブロックから生成され、1個のリペアシンボルブロックは、FEC2コードにより接続されたソースシンボルブロックから生成される。
ケース0に対応するFECコーディング構造に対して、FEC1及びFEC2符号化は、スキップされるのであろう。ケース0に対応するFECコーディング構造に対しては、リペアシンボルが生成されない。
ケース1に対応するFECコーディング構造に対しては、Mが'1'に設定され、FEC1符号化又はFEC2符号化がスキップされるのであろう。
以下では、上述した2段FECコーディング構造について具体的に説明すると、次の通りである。
2段FECコーディング構造によると、MMT FECユニットは、予め定められた個数のソースパケットを含むソースパケットサブブロックをM(Mは、1より大きい整数である)個の第1のソースパケットサブブロック(1番目〜M番目のソースパケットブロック)に分割し、それぞれの第1のソースパケットサブブロックから第1のソースシンボルサブブロック(1番目〜M番目のソースシンボルブロック)を生成し、それぞれの第1のソースシンボルサブブロックに対して第1のFEC符号化動作を実行することにより第1のリペアシンボルブロックを含む第1の符号化シンボルを生成する。ここで、第1のFEC符号化動作は、FEC1コードに基づく符号化動作を示す。
MMT FECユニットは、M個の第1のソースシンボルサブブロックを第2のソースシンボルブロックとして生成することにより第2のFEC符号化動作により生成される第2のリペアシンボルブロックを含む第2の符号化シンボルブロックを生成する。ここで、第2のFEC符号化動作は、FECコード2に基づく符号化動作を示す。第1のFEC符号化動作及び第2のFEC符号化動作は、同一のFECコードを使用するか又は異なるFECコードを使用することができる。ここで、本発明の一実施形態で使用されるFECコードは、リードソロモン(Reed Solomon:RS)コード、低密度パリティチェック(Low Density Parity Check:LDPC)コード、ターボコード、ラプターコード(Raptor Code)、排他的論理和(eXclusive OR:XOR)コードなどのような現在知られているコード、及び開発されるコードの中の1つであり得、特定のコードに限定されない。
図4において、i番目のP1は、i番目のソースシンボルブロックのためのリペアシンボルブロックであり、P2は、ソースシンボルブロックのためのリペアシンボルブロックであり、i=1,2,...,Mである。
図4を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用される2段FECコーディング構造について説明した。図5を参照して本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用されるLA−FECコーディング構造について説明する。
図5は、本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用されるLA−FECコーディング構造を概略的に示す図である。
図5を参照すると、レイヤー構造を有するメディアデータ、すなわち、レイヤー化されたメディアデータを効率的に保護するためにLA−FECコーディング構造が使用され得る。例えば、レイヤー化されたメディアデータは、スケーラブルビデオコーディング(Scalable Video Coding:SVC)方式又はマルチビュービデオコーディング(Multi-view Video Coding:MVC)方式を使用して符号化されたコンテンツなどであり得る。すなわち、LA−FECコーディング構造は、任意のFECコードにも適用され得、レイヤー化されたメディアデータに特定される。
LA−FECコーディング構造は、FEC構成に対するメディアのレイヤー間の依存性を活用し、各レイヤーに関連する幾つかのリペアフローの生成にその特徴がある。各レイヤーにおいて、各リペアフローは、各リペアフローの関連したレイヤーのデータ及びすべてのレイヤーのデータを保護し、各レイヤーは、もしあれば、依存的である。以下、説明の便宜上、各レイヤーは、‘コンプリメンタリーレイヤー(complementary layer)’と呼ばれる。
まず、他のレイヤーからのMMTPパケットは、独立してソースシンボルブロックにグループ化される。LA−FECコーディング構造が使用される場合に、リペアフローのFEC符号化のために生成されるソースシンボルブロックは、関連したレイヤーのソースシンボルブロックと、もしあれば、関連したレイヤーのすべてのコンプリメンタリーレイヤーからのソースシンボルブロックとを結合するのであろう。他のレイヤーからのソースシンボルブロックの結合は、メディアからのディペンデンシーハイアラーキ(dependency hierarchy)の後に実行されるはずである。すなわち、他のレイヤーからのソースシンボルブロックの結合は、関連したレイヤーのコンプリメンタリーレイヤーのソースシンボルブロックの後ろの各ソースシンボルブロックで実行されるはずである。
図5には、LA−FECコーディング構造のために2個のレイヤーとレイヤー化されたメディアデータに対するソースシンボルブロック生成の例が図示されている。ベースレイヤー(base layer)及びエンハンスメントレイヤー(enhancement layer)は、図5のLA−FECコーディング構造で表現され、エンハンスメントレイヤーは、レイヤー化されたメディアストリームのベースレイヤーに依存する。
すなわち、図5のLA−FECコーディング構造には、メディアが2個のレイヤーを含む場合に、LA−FEC符号化方式を適用するためのソースブロック構成が図示されている。図5において、ベースレイヤーのベース表現(Base Representation:BR)は、メディアコーデックから独立して復号可能なデータを示し、エンハンスメントレイヤーのエンハンスメント表現(Enhancement Representation:ER)は、BRに従属するデータを示す。図5において、ER1のためのパリティを生成する場合にBRがともに使用されることに留意すべきである。
図5を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用されるLA−FECコーディング構造について説明した。図6を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてMMTパケットストリームを使用してソースパケットブロック及びソースシンボルブロックを生成する過程について説明する。
図6は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてMMTパケットストリームを使用してソースパケットブロック及びソースシンボルブロックを生成する過程を概略的に示す図である。
図6を参照すると、アセットは、複数のMPUを含み、それぞれのMPUは、パケット化の後にMMTパケットとして生成される。
各MPUがMMTパケットにパケット化される場合に、それぞれのMMTパケットに含まれたヘッダは、関連したMMTパケットに関する送信時間情報、すなわち、タイムスタンプを含む。MMTパケットは、それぞれ予め定められた個数のMMTパケットを含むソースパケットブロックに分割され、それぞれのソースパケットブロックは、同一の長さ(T)を有するソースシンボルを含むソースシンボルブロックに変換される。ソースパケットブロックがソースシンボルブロックに変換される場合に、ソースパケットの長さがTより小さいと、パディングデータ(padding data)をソースパケットに挿入することにより長さTを有するソースシンボルブロックを生成する。このようにして、ソースパケットブロックに含まれたソースパケットの中の最後のソースパケットは、ソースシンボルブロックとして生成される。
図6を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてMMTパケットストリームを使用してソースパケットブロック及びソースシンボルブロックを生成する過程について説明した。図7を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてソースシンボルブロックを使用してリペアシンボルブロックを生成する過程について説明する。
図7は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてソースシンボルブロックを使用してリペアシンボルブロックを生成する過程を概略的に示す図である。
図7を参照すると、符号化シンボルブロックは、ソースシンボルブロックと、ソースシンボルブロックから生成されるリペアシンボルブロックとを含む。ソースシンボルブロックは、予め設定されているSSBGモードに従ってソースパケットブロックから生成される。また、リペアシンボルブロックは、FEC符号化方式により関連したソースシンボルブロックから生成される。ここで、符号化シンボルフォーマットは、図7に図示される。
すなわち、図7には、ソースシンボルブロックからFECコードを使用してリペアシンボルブロックを生成する過程が図示されている。図7において、K個のソースシンボル、すなわち、ソースシンボル#0、ソースシンボル#1,...,ソースシンボル#K−1を含むソースシンボルブロックは、FECエンコーダに入力され、FECエンコーダは、入力されたソースシンボルブロックに基づいてP個のリペアシンボル、すなわち、リペアシンボル#0、リペアシンボル#1,...,リペアシンボル#P−1を含むリペアシンボルブロックを生成した後に、生成されたリペアシンボルブロックを出力する。ここで、ソースシンボル#0、ソースシンボル#1,...,ソースシンボル#K−1、及びリペアシンボル#0、リペアシンボル#1,...,リペアシンボル#P−1のそれぞれは、Tバイトの長さを有する。
図7を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてソースシンボルブロックを使用してリペアシンボルブロックを生成する過程について説明した。図8を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプを設定する過程について説明する。
図8は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプを設定する過程を概略的に示す図である。
図8を参照すると、AL−FECプロセッサ(図8には図示せず)は、図6と同様に、生成された20個のソースパケットを含むソースパケットブロックを、図4で説明したように2段FECコーディング構造を適用するために10個のソースパケットを含む各ソースパケットサブブロックに分割する。AL−FECプロセッサは、生成された2個のソースパケットサブブロックに2段FECコーディング構造を適用することにより、2個のソースパケットサブブロックの各々に対してFEC1コードによる3個のリペアシンボルを生成し、20個のソースパケットを含むソースパケットブロックに対してFEC2コードによる3個のリペアシンボルを生成する。AL−FECプロセッサは、FECペイロードIDをソースパケットサブブロック及びリペアシンボルに付加することにより、FECソース又はリペアパケットブロックを生成する。
ソースパケットの各々に含まれたヘッダは、ソースパケット生成の時に関連したパケットに対するタイムスタンプを含み、リペアパケットに含まれたヘッダは、関連したパケットに対するタイムスタンプを含む。
ここで、FECペイロードIDは、各パケットが含まれたFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプを含む。この場合に、上述したように、2段FECコーディング構造が適用される場合に、ソースパケットサブブロックのためのソースFECペイロードIDは、ソースパケットサブブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプと、ソースパケットサブブロックが含まれたソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプとを含み、リペアFECペイロードIDは、関連したFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプを含む。
図8に図示していないが、1段FECコーディング構造が適用される場合に、ソースFECペイロードIDは、対応するFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対する1つのタイムスタンプだけを含み、図5で説明したようなLA−FECコーディング構造が適用される場合にも、ソースFECペイロードIDは、ベースレイヤー及びエンハンスメントレイヤーを含むFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対する1つのタイムスタンプだけを含む。
図8を参照すると、AL−FECプロセッサは、20個のMMTパケットの中で最初の10個のMMTパケットに含まれた各ヘッダには、0,1,2,...,8,9の形態でタイムスタンプを含ませ、3個のFECリペアパケットが生成されることを考慮して、他の10個のMMTパケットに含まれたヘッダのそれぞれには、13,14,15,...,21,22の形態でタイムスタンプを含ませることによりMMTパケットを生成する。
その後に、合計6個のFECリペアパケットがFEC1コードにより生成され、最初の3個のFECリペアパケットに含まれたMMTヘッダには、10、11、12の形態でタイムスタンプが含まれ、次の3個のFECリペアパケットに含まれたMMTヘッダには、23、24、25の形態でタイムスタンプが含まれる。
FEC2コードにより生成される3個のFECリペアパケットに含まれたMMTヘッダには、26、27、28の形態でタイムスタンプが含まれ、3個のFECリペアパケットがパケット化された後に、FECペイロードIDがそれぞれのパケットに付加される。すなわち、ソースFECペイロードIDは、FECソースパケットに付加され、リペアFECペイロードIDは、FECリペアパケットに付加される。1番目のソースパケットサブブロック(1st Source Packet Block)のためのFECソース又はリペアパケットブロックに含まれた各FECソース又はリペアパケットに対してFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプである"0"が設定され、2番目のソースパケットサブブロック(2nd Source Packet Block)のためのFECソース又はリペアパケットブロックに含まれた各FECソース又はリペアパケットに対してFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプである"13"が設定される。
ソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの各々に対してFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプである"0"が設定される。
例えば、タイムスタンプは、ネットワークタイムプロトコル(Network Time Protocol:NTP)タイムスタンプであり、所定数のバイト、例えば、4バイトで具現されることができる。この場合に、上位2バイトは、セカンド(second)を示し、下位2バイトは、フラクション(fraction)を示す。NTPタイムスタンプの具体的な内容は、"short-format"in clause 6 of IETF RFC5905,NTP version 4で定義している内容に基づいており、ここでは、その詳細な説明を省略する。
図8には図示していないが、FECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプを送信する方法の他の例は、各FECソース又はリペアパケットに対するMMTパケットヘッダにタイムスタンプを含ませることによりタイムスタンプを送信する方式である。
これとは異なり、タイムスタンプは、FECペイロードIDとは異なる個別のフィールドを通して送信されることもできる。
様々なタイムスタンプ送信方式の中のいずれか1つでも、FECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプは、関連したFECソース又はリペアパケットブロックに含まれたパケットの中で少なくとも1つのFECソース又はリペアパケットを通して送信されることが好ましい。
通常、ネットワーク上では、パケット損失が発生し得るので、FECソース又はリペアパケットブロックに含まれたすべてのFECソース又はリペアパケットのそれぞれでタイムスタンプが送信される場合に、信号受信装置は、1番目に受信するFECソース又はリペアパケットから関連したFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプを認識できる。
また、信号受信装置は、FEC復号のために少なくとも1つのFECリペアパケットを受信しなければならない。したがって、FECリペアパケットで関連したFECソース又はリペアパケットに対するタイムスタンプが送信される場合に、信号受信装置は、1番目に受信するFECリペアパケットから関連したFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されたFECソース又はリペアパケットに対するタイムスタンプを認識できる。
図4で説明したような2段FECコーディング構造の場合に、タイムスタンプが関連したFECソース又はリペアパケットブロックに含まれたすべてのFECソース又はリペアパケットの各々に含まれる場合に、FECソースパケットは、FECソースパケットサブブロックのためのFECソース又はリペアパケットブロック及びFECソースパケットブロックのためのFECソース又はリペアパケットブロックの各々に含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプを含まなければならないので、2個のタイムスタンプフィールドを必要とする。
この場合に、FECソースパケットに含まれたタイムスタンプのための1つのフィールドを使用するためには、交互的にタイムスタンプを設定することが可能である。すなわち、FECソースパケットの中で奇数番目に送信されるFECソースパケットには、FECソースパケットサブブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプ情報を含ませ、偶数番目に送信されるFECソース又はリペアパケットには、FECソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプ情報を含ませることができる。
また、この場合に、タイムスタンプフィールドがFECソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプであるか、そうでなければ、FECソースパケットサブブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプであるかを示す情報を追加で含むことが好ましい。例えば、タイムスタンプフィールドが4バイトで実現される場合に、最上位1ビットをタイムスタンプ情報指示子として設定する。この場合に、1ビットの値が"0"である場合に、FECソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプが送信されることを意味する。1ビットの値が"1"である場合に、FECソースパケットサブブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプが送信されることを意味する。この場合に、残りの31ビットは、関連したFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプの中で最上位1ビットを除外した残りの31ビットに設定される。
図8では、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに対するタイムスタンプを設定する過程について説明した。図9を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいて2段FEC構造が使用される場合のタイムスタンプを設定する過程について説明する。
図9は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいて2段FEC構造が使用される場合のタイムスタンプを設定する過程を概略的に示す図である。
図9を参照すると、10個のソースパケットの各々に含まれたMMTPヘッダには、タイムスタンプが0、1、2、3、4、8、9、10、11、12として設定される。これは、AL−FECプロセッサ(図10に図示せず)が10個のソースパケットを含むソースパケットブロックをそれぞれ5個のソースパケットに分割し、1番目のソースパケットブロックに対して3個のリペアパケットを生成することを仮定した後にタイムスタンプ5、6、7をリペアパケットのために予約することを意味する。AL−FECプロセッサは、MMT送信エンティティが入力されるか又は予め定められたFEC構成関連情報に基づいてソースパケットブロックをどのように構成するか又は幾つのリペアパケットを生成するかを決定し、上述したように、各パケットの送信順序及び送信時間に従って各パケットをスケジューリングできる。
AL−FECプロセッサは、10個のソースパケットを含むソースパケットブロックをグループ化することによりそれぞれ5個のソースパケットを含む2個のソースパケットサブブロックを生成し、2個のソースパケットブロックの各々に対してFEC1符号化により3個のFEC1リペアパケットを生成し、全体のソースパケットブロックに対してFEC2符号化により3個のFEC2リペアパケットを生成する。
AL−FECプロセッサは、TS指示子=0及び1番目のFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのMMTPパケットヘッダで送信されるタイムスタンプの最上位ビット(MSB)1ビットを除外した31ビット情報であるFP_TS(=0)を1番目のFECソースパケットブロックに含まれた奇数番目のFECソースパケットのソースFECペイロードIDに含ませる。以下では、TS指示子及びFP_TSについて具体的に説明するので、ここでは、その詳細な説明を省略する。
AL−FECプロセッサは、TS指示子=1及び1番目のFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのMMTPパケットヘッダで送信されるタイムスタンプのMSB1ビットを除外した31ビット情報であるFP_TS(=0)を偶数番目のFECソースパケットのソースFECペイロードIDに含ませる。
AL−FECプロセッサは、TS指示子=0及び1番目のFECソース又はリペアブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットに含まれたMMTPパケットヘッダで送信されるタイムスタンプのMSB1ビットを除外した31ビット情報であるFP_TS(=0)を1番目のFECソースパケットブロックのための3個のFEC1リペアパケットに含ませる。
AL−FECプロセッサは、TS指示子=0及び1番目のFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのMMTPパケットヘッダで送信されるタイムスタンプのMSB1ビットを除外した31ビット情報であるFP_TS(=8)を2番目のFECソースパケットに含まれた奇数番目のFECソースパケットのソースFECペイロードIDに含ませる。
AL−FECプロセッサは、TS指示子=1及びFECソース又はリペアブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのMMTPパケットヘッダで送信されるタイムスタンプの最上位ビット(MSB)1ビットを除外した31ビット情報であるFP_TS(=0)を偶数番目のFECソースパケットのソースFECペイロードIDに含ませる。
AL−FECプロセッサは、TS指示子=0及び2番目のFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのMMTPパケットヘッダで送信されるタイムスタンプのMSB1ビットを除外した31ビット情報であるFP_TS(=8)を2番目のFECソースパケットブロックのための3個のFEC1リペアパケットに含ませる。
AL−FECプロセッサは、TS指示子=1及びFECソース又はリペアブロックに含まれたFECソース又はパケットの中で1番目に送信されるFECソース又はリペアパケットのMMTPパケットヘッダで送信されるタイムスタンプのMSB1ビットを除外した31ビット情報であるFP_TS(=0)をFECソースパケットブロックのための3個のFEC2リペアパケットに含ませる。
図9では、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいて2段FEC構造が使用される場合のタイムスタンプを設定する過程について説明した。図10を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用されるFECソースパケットの構造について説明する。
図10は、本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用されるFECソースパケットの構造を概略的に示す図である。
図10を参照すると、FECソースパケットは、D2ヘッダフィールド1010、D1ヘッダフィールド1011、D1ペイロードフィールド1012、及びFECイン−バンド信号フィールド1013を含む。
D2ヘッダフィールド1010は、MMTパケットヘッダを含み、D1ヘッダフィールド1011は、MMTペイロードヘッダを含み、D1ペイロードフィールド1012は、ペイロードデータを含み、FECイン−バンド信号フィールド1013は、ソースFECペイロードIDを含む。ここで、D2ヘッダフィールド1010には、関連したMMTパケットが送信される送信時間に関する情報であるタイムスタンプが含まれる。
図10では、本発明の一実施形態によるFEC方式をサポートするMMTシステムで使用されるFECソースパケットの構造について説明した。図11を参照して、本発明の一実施形態によるFEC方式を使用するMMTシステムで使用されるFECリペアパケットの構造を概略的に示す図である。
図11は、本発明の一実施形態によるFEC方式を使用するMMTシステムで使用されるFECリペアパケットの構造を概略的に示す図である。
図11を参照すると、FECリペアパケットは、D2ヘッダフィールド1120、D1ヘッダフィールド1121、D1ペイロード(リペアペイロード)フィールド1122、及びFECインーバンド信号フィールド1123を含む。
D2ヘッダフィールド1120は、MMTパケットヘッダを含み、D1ヘッダフィールド1121は、MMTペイロードヘッダを含み、FECイン−バンド信号フィールド1123は、リペアFECペイロードIDを含み、D1ペイロード(リペアペイロード)フィールド1122は、1つ又はそれ以上のリペアシンボルを含む。D2ヘッダフィールド1120は、関連したMMTパケットが送信される送信時間に関する情報であるタイムスタンプを含む。
上述したように、MMTパケットは、FEC符号化過程などのような一連の過程を通して図11で説明したような構造を有する。
図10では、プロトコルパケット、例えば、MMTパケットの構造の一貫性を維持し、FECパケット内でソースパケットが継続して位置するようにするために、FECイン−バンド信号フィールド1013の位置がFECソースパケットの最後の部分であると仮定する。FECリペアパケットは、1つ又はそれ以上のリペアシンボルを含む。リペアシンボルは、ソースパケットを含むソースシンボルブロックの復元のために使用される。
図11において、信号受信装置がFEC関連情報を迅速にかつ容易に取得するようにするために、FECイン−バンド信号フィールド1123の位置が送信プロトコルヘッダとリペアシンボルとの間にあると仮定する。
表1及び表2を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプがFECペイロードIDに含まれる場合について説明する。
表1は、ソースFECペイロードIDを示し、表2は、リペアFECペイロードIDを示す。
(1)SS_IDフィールド
SS_IDフィールドは、ソースシンボルID(SS_ID)を含み、SS_IDは、FECソースパケット内のソースシンボルを識別するためのシーケンス番号である。
SS_IDは、シンボルエレメントごとに予め定められた値から予め定められた値、例えば、1ずつ増加する。これは、パディングシンボルエレメントにも同一に適用され、SS_IDは、FECソースパケットに含まれた1番目のシンボルエレメントのSS_IDに設定される。現在のパケットに対するSS_IDと次のパケットのSS_IDとの間の差は、現在のパケットに含まれたシンボルエレメントの個数と同一である。しかしながら、現在のFECソースパケットブロックに含まれたFECソースパケットの中で最後のFECソースパケットのSS_IDと次のFECソースパケットブロックに含まれたFECソースパケットの中で1番目のFECソースパケットのSS_IDとの差は、パディングシンボルエレメントが現在のFECソースパケットブロックのソースシンボルブロックに含まれる場合に、現在のFECソースパケットに含まれたシンボルエレメントの個数とパディングシンボルエレメントの個数とを加えた値である。SS_IDの初期値は、ランダムに生成された任意の値から設定され、例えば、4バイト又は4バイト以上の所定の長さのバイトで表現される整数の最大値に到達した後には、さらに‘0’に戻る。
以下では、SS_IDについて説明する。
SS_IDは、複数のビット、例えば、32ビットで具現され、FECソースパケット内のソースシンボルを識別するシーケンス番号を示す。SS_IDは、任意の値から開始し、この任意の値から予め定められた値に増加し、SS_IDの値が予め設定されている最大値に到達した後に、初期値、例えば、'0'に戻る。
適用されたSSBGモードを示すパラメータとしてのssbg_modeの値が00又は01(ssbg_mode==00又はssbg_mode==01)である場合に、SS_IDは、FECソースパケットごとに、例えば、1ずつ増加する。ここで、‘ssbg_mode==00’は、適用されたSSBGモードが'ssbg_mode0'であることを示し、‘ssbg_mode==01’は、適用されたSSBGモードが'ssbg_mode1'であることを示す。以下では、ssbg_mode0及びssbg_mode1について説明するので、ここでは、その詳細な説明を省略する。
ssbg_modeの値が10(ssbg_mode==10)である場合に、SS_IDは、シンボルエレメントごとに、例えば、1ずつ増加し、SS_IDは、FECソースパケットに含まれた1番目のシンボルエレメントのSS_IDに設定される。ここで、シンボルエレメントが存在する場合に、シンボルエレメントは、ソースシンボルブロックの最後のソースシンボル内のパディングシンボルエレメントを含む。ここで、‘ssbg_mode==10’は、適用されたSSBGモードが'ssbg_mode2'であることを示す。以下では、ssbg_mode2について説明するので、ここでは、その詳細な説明を省略する。
ssbg_mode0、ssbg_mode1、及びssbg_mode2について説明する。
1番目に、ssbg_mode0について説明する。
ssbg_mode0において、ソースシンボルブロックは、同一のサイズを有するすべてのMMTPパケットであるソースパケットブロックと正確に同一である。これは、ソースパケットブロックに含まれたMMTPパケットの個数がソースシンボルブロックに含まれたソースシンボルの個数と同一であり、各MMTPパケット#iは、各ソースシンボル#i(i=0,1,...,K−1)と正確に同一であることを示す。ssbg_mode0では、1段FECコーディング構造に対して(M=1)、ソースシンボルブロックがパディングバイトなしにソースパケットから生成される。また、ssbg_mode0では、2段FECコーディング構造及びLA−FECコーディング構造に対して(M>1)、i番目のソースシンボルブロックは、パディングバイトなしにソースパケットブロック(i=0,1,...,M−1)に含まれたi番目のソースパケットブロック、すなわち、i番目のソースパケットサブブロックから生成される。
2番目に、ssbg_mode1について説明する。
ssbg_mode1において、ソースシンボルブロックは、各MMTPパケット#iがパディングバイトを有することにより、各MMTPパケット#iの関連したパリティシンボルの長さとして使用されるTと同一のサイズを有するように生成されるもの以外には、ssbg_mode0と同一の方式でソースパケットブロックから生成される。これは、ソースパケットブロックに含まれたMMTPパケットの個数が関連したソースシンボルブロックに含まれたソースシンボルの個数と同一であり、各ソースシンボル#iが対応するMMTPパケット#iの可能なパディングバイト(すべて00h)を付加することにより生成されることを意味する。ssbg_mode1では、1段FECコーディング構造に対して(M=1)、ソースシンボルブロックがパディングブロック(すべて00h)を有するソースパケットブロックから生成される。また、ssbg_mode1において、2段FECコーディング構造及びLA−FECコーディング構造で(M>1)、i番目のソースブロックは、パディングブロック(すべて00h)を有するソースパケットブロック(i=0,1,...,M−1)に含まれたi番目のソースパケットブロックから生成される。
3番目に、ssbg_mode2について説明する。
ssbg_mode2において、ソースシンボルブロックは、1段FECコーディング構造に対して、ソースシンボルブロックがパディングバイト(すべて00h)を有するソースパケットブロックから生成される。単一のソースシンボルブロックは、パディングバイト(すべて00h)を有する単一のソースパケットブロックから生成されたKSS個のソースシンボルで構成され、各ソースシンボルは、同一のN(>=1)個のシンボルエレメントで構成される。これは、単一のソースシンボルブロックがN*KSS個のシンボルエレメントで構成されることを意味する。ソースパケットブロックのMMTPパケット#0は、パディングバイトを有するソースシンボルブロックに含まれた最初のs0個のシンボルエレメントからソースシンボルブロックに含まれた最初のs0個のシンボルエレメントの最後のシンボルエレメントの境界まで位置する。ソースパケットブロックのMMTPパケット#1は、MMTPパケット#0と同一の方式でソースシンボルブロックに含まれた次のs1個のシンボルエレメントに位置する。このような方式で、ソースパケットブロックのMMTPパケット#KSP−1は、MMTPパケット#0と同一の方式でソースシンボルブロックに含まれた次のsKsp-1個のシンボルエレメントに位置する。ここで、KssT−sum{siT'、i=1,...,KSP}が0でない場合に、P個のパディングバイト(すべて00h)が単一のソースシンボルブロックに含まれた最後のシンボルエレメントに位置する。
(2) FFSRP_TSフィールド
FFSRP_TSフィールドは、1番目のFECソース又はリペアパケットタイムスタンプを含む。FFSRP_TSフィールドは、FECソースパケットのためのフィールドであり、対応するパケットを含む対応するFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプを含む。
2段FECコーディング構造が適用される(図4において、Mが1より大きい)場合に、FFSRP_TSフィールドは、FECソースパケットサブブロック(i番目のFECソースパケットブロック、i=1,2,...,M)のためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプ及びFECソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプを含む。
一方、2段FECコーディング構造が適用される(図3において、Mが1より大きい)場合に、FECソースパケットサブブロック(i番目のFECソースパケットブロック、i=1,2,...,M)のためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプは、FECソースパケットブロックの中で偶数番目(又は奇数番目)に送信されるFECソースパケットのためのソースFECペイロードIDに含まれ、FECソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプは、FECソースパケットブロックの中で奇数番目(又は偶数番目)に送信されるFECソースパケットのためのソースFECペイロードIDに含ませる形態でタイムスタンプを交互的に送信される場合に、1つのFFSRP_TSフィールドを使用して2段FECコーディング構造を処理できる。この場合に、FFSRP_TSフィールドは、TS指示子及びタイムスタンプフィールドを含む。ここで、TS指示子は、タイムスタンプフィールドに含まれたタイムスタンプがFECソースパケットサブブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプであるか又はFECソースパケットブロックのためのFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプであるかを示す。
あるいは、LA−FECコーディング構造が適用される場合には、FFSRP_TSフィールドは、向上したレイヤーを含む対応するFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットの1つのタイムスタンプだけが含まれる。
(3) SS_Startフィールド
FECソースパケットにおいて、SS_Startフィールドは、選択的に使用される。SS_StartフィールドがFECソースパケットに含まれる場合に、SS_Startフィールドは、FECソースパケットが含まれたソースパケットブロックの1番目のソースパケットのSS_IDと同一の値を有し、これは、ソースパケットが属するソースシンボルブロックの境界情報に対応する。
FECパリティパケットにおいて、SS_Startフィールドは、関連したFECパリティパケットを含むFECパリティパケットブロックに関連したFECソースパケットブロックの1番目のFECソースパケットに設定されているSS_IDと同一の値を有する。SS_Startフィールドに基づいて、信号受信装置は、受信されたFECパケットからFECソースパケットブロックの境界、すなわち、開始位置を認識できる。
(4) RSB_lengthフィールド
RSB_lengthフィールドは、FECパリティパケットに含まれたパリティシンボルが含まれたパリティブロックに含まれたパリティシンボルの個数を示す。すなわち、FEC符号化方式を使用してK個のソースシンボルを含むソースシンボルブロックからP個のリペアシンボルが生成される場合に、RSB_lengthフィールドの値は、Pに設定される。
(5) RS_IDフィールド
RS_IDフィールドは、FECパリティパケットに含まれたパリティシンボルを識別するための一連番号であるRS_IDを含む。RS_IDは、それぞれのパリティシンボルブロック内で、例えば、0から開始して1ずつ増加する値であり、1つのFECパリティパケットが複数のパリティシンボルを含む場合には、複数のパリティシンボルの一連番号の中で最小値を示す。
(6) SSB_lengthフィールド
SSB_lengthフィールドには、FECパリティパケットに含まれたパリティシンボルが保護するソースシンボル(サブ)ブロックに含まれたシンボルエレメントの個数が設定される。シンボルエレメントの個数は、ソースシンボルブロックの最後のソースシンボルに含まれたパディングシンボルエレメントの個数を含まない。すなわち、ソースシンボルブロックに含まれたソースシンボルの個数がKであり、ソースシンボルブロックに含まれたソースシンボルの中で最後のソースシンボルに含まれたパディングシンボルエレメントの個数がpである場合に、SSB_lengthフィールドの値は、K*m−pに設定される。
(7) FFSRP_TSフィールド
FFSRP_TSフィールドは、1番目のFECソース又はリペアパケットタイムスタンプを含む。FFSRP_TSフィールドは、FECリペアパケットのためのフィールドであり、FECリペアパケットを含む関連したFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプを含む。
表3は、本発明の実施形態によるFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプが個別のフィールドに含まれ、個別のフィールドが図10及び図11で説明したようなFECイン−バンド信号フィールドに含まれる場合を示す。この場合に、図10及び図11で説明したようなFECイン−バンド信号フィールドは、FECペイロードIDのためのフィールド及びFECタイムスタンプのためのフィールドを含み、ソースFECペイロードIDは、表1で説明したようなSS_IDフィールドを含み、リペアFECペイロードIDは、表2で説明したようなFFSRP_TSフィールドを除外した形態で生成される。
表2は、表3に示すようなFFSRP_TSフィールドがFECペイロードIDに含まれるものではなく、個別のフィールドとしてFECイン−バンド信号フィールド内に含まれるもの以外には、表1と同一である。すなわち、FFSRP_TSフィールドがFECソースパケットに適用される場合に、FFSRP_TSフィールドは、表1で説明したようなものと同一であり、FFSRP_TSフィールドがFECリペアパケットに適用される場合には、FFSRP_TSフィールドは、表2で説明したようなものと同一である。
表4は、本発明の一実施形態によるFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプがMMTパケットヘッダに含まれる場合を示す。
表4において、TSフィールドは、タイムスタンプを含むフィールドであり、TSフィールドは、対応するパケットが送信されるタイムスタンプを含む。ここで、信号受信装置は、パケット受信の時にTSフィールドに記載されているタイムスタンプに基づいて受信されたパケットが送信された時間を認識できる。
表4において、FFSRP_TSフィールドがMMTパケットヘッダに含まれることを除外しては、表1及び表2で説明したFFSRP_TSフィールドと同一であり、ここでは、その詳細な説明を省略する。
表5は、本発明の一実施形態によるFECメッセージのフォーマットを示し、FECメッセージは、FECソース又はリペアパケットブロックの送信時間期間情報であるFEC保護ウィンドー時間フィールドを含む。
表5において、FEC保護ウィンドータイムフィールドは、FECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットの送信時間とFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で最後に送信されるFECソース又はリペアパケットの送信時間との間の最大値を示す。信号送信装置は、FEC保護ウィンドータイムフィールドに設定された時間内にFECソース又はリペアパケットブロックに含まれたすべてのFECソース又はリペアパケットを送信しなければならないことを意味する。
したがって、FECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で最後に送信されるFECソース又はリペアパケットのタイムスタンプが‘T1’であり、FECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットのタイムスタンプが‘T0’である場合に、T1−T0<FEC保護ウィンドータイムの条件を満足しなければならない。
2段FECコーディング構造が適用されるか又はLA−FECコーディング構造が適用される場合に、FEC保護ウィンドータイムは、各FEC符号化ステップのためのFEC保護ウィンドータイム又は各レイヤーのためのFEC保護ウィンドータイムに区分して設定される必要がある。例えば、2段FEC符号化の場合に、FECソースパケットサブブロックのためのFECソース及びリペアパケットブロックのFEC保護ウィンドータイム及びFECソースパケットブロックのためのFECソース又はリペアパケットブロックのFEC保護ウィンドータイムがそれぞれ必要であり得る。
表6は、本発明の一実施形態によるHRBMメッセージのフォーマットを示し、最大バッファサイズフィールド及び固定されたエンドツーエンド遅延フィールドを含む。
表6において、最大バッファサイズフィールドは、信号受信装置のためのMMTアセットのために最大に要求されるバッファサイズを含む。バッファサイズは、(最大遅延−最小遅延)*最大ビットレートのように計算できる。すなわち、最大バッファサイズフィールドは、マルチメディアデータに対して要求される最大バッファサイズに関連した情報を含む。
表6において、固定されたエンドツーエンド遅延フィールドは、信号送信装置と信号受信装置との間の遅延値を含み、固定されたエンドツーエンド遅延フィールドは、最大送信遅延+FECバッファリングタイムのような値に設定される。ここで、FECバッファリングタイムは、FEC保護ウィンドータイムを示す。表5で説明したように、FEC保護ウィンドータイムが符号化方式に従って個別に要求される場合に、HRBMメッセージは、固定されたエンドツーエンド遅延情報の代わりに最大送信遅延情報を含み、FECメッセージの符号化方式のステップ別FEC保護ウィンドータイムとともに符号化方式のステップ別固定されたエンドツーエンド遅延情報が信号受信装置に送信される。
すなわち、固定されたエンドツーエンド遅延フィールドは、信号送信装置と信号受信装置との間の遅延に関連した情報を含む。ここで、信号送信装置と信号受信装置との間の遅延に関連した情報は、信号送信装置と信号受信装置との間の最大送信遅延に関連した情報及び最大時間間隔情報に基づいて決定される。FECソース又はリペアパケットブロックが複数のFECソース又はリペアパケットを含む場合に、最大時間間隔情報は、複数のFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットの送信時点と複数のFECソース又はリペアパケットの中で最後に送信されるFECソース又はリペアパケットの送信時点との間の最大時間間隔に関連した情報である。
FECソース又はリペアパケットブロックが複数のFECソース又はリペアパケットを含む場合に、FEC保護ウィンドータイムは、複数のFECソース又はリペアパケットの中で1番目に送信されるFECソース又はリペアパケットの送信時点と複数のFECソース又はリペアパケットの中で最後に送信されるFECソース又はリペアパケットの送信時点との間の最大時間間隔に関連した情報を示す。ここで、複数のFECソース又はリペアパケットは、最大時間間隔内に受信装置に送信される。
図12を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFECソース又はリペアパケットブロックの送受信期間及びFEC復号デジッタリング過程について説明する。
図12は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFECソース又はリペアパケットブロックの送受信期間及びFEC復号デジッタリング過程を概略的に示す図である。
図12を参照すると、MMTPは、送信順序に基づいてFEC保護ウィンドータイム(Tw)内に1番目のFECソース又はリペアパケットをFECソース又はリペアパケットブロックに含まれた最後のFECソース又はリペアパケットに送信する。図12では、それぞれN個のパケット(K個のFECソースパケット及びN−K個のFECリペアパケット)を含む、2個のFECソース又はリペアパケットブロックがFECメッセージに設定されたFEC保護ウィンドータイム(Tw)を使用して送信される。送信されたN個のパケットは、ネットワーク上の遅延により最小送信遅延(Dmin)又は最大送信遅延(Dmax)の後に信号受信装置に到着する。
したがって、送信時点のFEC保護ウィンドーは、受信時点のFEC保護ウィンドーとは異なり得る。すなわち、Ts1とTe1との間に送信されたFECソース又はリペアパケットブロック#1は、ネットワーク遅延によりTs1+DminからTe1+Dmaxまでの受信ウィンドーを有する。
しかしながら、ネットワーク状況により、パケットが送信順序と同一の順序で到着せず、パケット損失が発生し得るために、信号受信装置は、1番目に受信されたパケットが関連したFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されたFECソース又はリペアパケットであるか否かを認識できないので、Ts1+DminからTe1+Dmaxまでの受信ウィンドーを設定できないこともある。
しかしながら、信号受信装置は、FECメッセージのFEC保護ウィンドータイム(Tw)、HRBMメッセージの最大送信遅延(Dmax)、及び各FECソース又はリペアパケットで送信されるFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されたFECソース又はリペアパケットのタイムスタンプ(すなわち、FFSRP_TS=T0=Ts1)を使用して1番目に受信されたFECソース又はリペアパケットのFFSRP_TS情報に基づく1番目に受信されたFECソース又はリペアパケットの受信時間、すなわち、TrからT0+Tw+Dmax=Te1+Dmaxまでの受信ウィンドーを設定する。
したがって、信号受信装置は、TrからTe1+Dmaxまでの時間の間にバッファリング動作を実行してFEC復号動作を実行する。信号受信装置が十分なFECソース又はリペアパケットを受信する場合に、信号受信装置は、TrからTe1+Dmaxまでの時間の前に、FEC復号動作を実行する。Te1+Dmaxは、HRBMによるFEC復号器が復号動作を実行するために待機できる最大時間を意味する。FEC復号器は、FEC復号に従って復元されたMMTパケットとともに関連したFECソースパケットブロックに含まれたK個のMMTパケットをデジッタリングバッファに入力し、デジッタリングバッファは、入力されたMMTパケットをTs+Δに対応して出力する。ここで、Tsは、パケットのタイムスタンプを示し、△は、Dmax+Tw(△=Dmax+Tw)である。
図12では、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFECソース又はリペアパケットブロックの送受信期間及びFEC復号デジッタリング過程について説明した。図13を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるHRBMの内部構造について説明する。
図13は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるHRBMの内部構造を概略的に示す図である。
図13を参照すると、HRBMは、FECデコーディングバッファ1311と、デジッタリングバッファ1313と、MMTPデカプセル化(De-capsulation)バッファ1315とを含む。以下では、FECデコーディングバッファ1311、デジッタリングバッファ1313、及びMMTPデカプセル化バッファ1315について詳細に説明する。
(1) FECデコーディングバッファ1311
FECデコーディングバッファ1311は、1番目に受信されたFECソース又はリペアパケットに関するFFRSP_TS情報、FECメッセージのFEC保護ウィンドータイムTw、HRBMメッセージの最大送信遅延Dmax、及び最大バッファサイズに基づいて、1番目に受信されたFECソース又はリペアパケットの受信時点TrからFFRSP_TS+Tw+Dmax=FFRSP+△までの受信ウィンドーを設定し、設定された受信ウィンドー内に受信される関連したFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットをバッファリングする。
受信ウィンドー内に十分なFECソース又はリペアパケットを受信した信号受信装置は、FFRSP+△の前に又は受信ウィンドーのFFRSP+△でFEC復号動作を実行した後に、復元されたFECソースパケットブロックのすべてのパケット(MMTパケット)をデジッタリングバッファ1313に入力する。すなわち、復元されたFECソースパケットに含まれたすべてのパケットは、時点T+FEC保護ウィンドータイム(Tw)でデジッタリングバッファ1313に入力される。ここで、Tは、FFRSP_TS+Dmaxより小さいか又は同一であり、あるいは、信号受信装置がFEC復号を行える十分なFECソース又はリペアパケットを受信した時点より大きいか又は同一である。
(2) デジッタリングバッファ1313
デジッタリングバッファ1313は、FECデコーディングバッファ1311から入力されたMMTパケットの各々を時点Ts+△でMMTPデカプセル化バッファ1315に入力する。ここで、Tsは、MMTパケットのヘッダに含まれたパケットの送信時間、すなわち、タイムスタンプである。
(3) MMTPデカプセル化バッファ1315
MMTPデカプセル化バッファ1315は、デジッタリングバッファ1313から入力されたMMTパケットに対してデカプセル化動作を実行することにより、復元されたメディアフラグメントユニット(MFU)/メディア処理ユニット(MPU)を生成し、生成されたMFU/MPUを出力する。ここで、MFUは、MPUのフラグメントを示す。デカプセル化動作は、MMTパケットヘッダ及びMMTペイロードヘッダを除去する動作、MMTペイロードを除去する動作、デフラグメンテーション(De-fragmentation)動作、及びデアグリゲーション(De-aggregation)動作を含む。
図13では、FECデコーディングバッファ1311、デジッタリングバッファ1313、及びMMTPデカプセル化バッファ1315が個別のユニットとして説明されたが、これは、説明の便宜のためのものであることを理解すべきである。言い換えれば、FECデコーディングバッファ1311、デジッタリングバッファ1313、及びMMTPデカプセル化バッファ1315のうちの2つ以上が1つのユニットに統合される形態にも具現されることができる。
図13では、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるHRBMの内部構造について説明した。図14を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFFRST_TSがパケットに含まれて送信される場合における信号受信装置でのFEC保護ウィンドー(ケース1)及びFFRST_TSがパケットに含まれて送信されない場合における信号受信装置でのFEC保護ウィンドー(ケース2)について説明する。
図14は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFFRST_TSがパケットに含まれて送信される場合における信号受信装置でのFEC保護ウィンドー(ケース1)及びFFRST_TSがパケットに含まれて送信されない場合における信号受信装置でのFEC保護ウィンドー(ケース2)を概略的に示す図である。
図14を参照すると、T0+Dmin〜Te+Dmaxとして表現される受信FEC保護ウインドー間隔は、送信されたFECソース又はリペアパケットブロックがDmin、Dmax、及びTwを考慮して受信可能な間隔を意味する。
図14において、ケース1を参照すると、信号受信装置は、実際の時間TrでFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットを最初に受信する。本発明の一実施形態によると、受信されたFECソース又はリペアパケットに含まれたFFRSP_TS情報(T0)からFECメッセージ及びHRBMメッセージから取得したTw及びDmaxを考慮してT0+Tw+Dmaxまで信号受信装置のFEC保護ウィンドーを設定する。
図14において、ケース2を参照すると、本発明の一実施形態で提案するFFRSP+TSが送信されないために、信号受信装置は、FECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されたFECソース又はリペアパケットの送信時間情報を認識せず、また、1番目に受信したFECソース又はリペアパケットがFECソース又はリペアパケットブロックに含まれたFECソース又はリペアパケットの中で1番目に送信されたFECソース又はリペアパケットであるか否かを認識できない。
これにより、信号受信装置は、1番目に受信したFECソース又はリペアパケットの送信時間情報(Ts)に基づいて、Tw及びTmaxを考慮してTs+Tw+Dmaxまで信号受信装置のFEC保護ウィンドーを設定しなければならない。
これにより、ケース1と比較したケース2において、信号受信装置は、Ts−T0の間に不必要なバッファリング動作を実行するか、又は付加の遅延が発生し、Ts−T0の値が1番目に受信したFECソース又はリペアパケットの送信時間情報Tsに従って変わるので、デジッタリングバッファの出力時間は、FECデコーディングバッファがどのFECソース又はリペアパケットを最初に受信するかに従って変わる。
図14では、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおいてFFRST_TSがパケットに含まれて送信される場合における信号受信装置でのFEC保護ウィンドー(ケース1)及びFFRST_TSがパケットに含まれて送信されない場合における信号受信装置でのFEC保護ウィンドー(ケース2)について説明した。図15を参照して、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるMMT送信エンティティの内部構造の一例について説明する。
図15は、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるMMT送信エンティティの内部構造の一例を概略的に示す図である。
図15を参照すると、MMT送信エンティティ1500は、プレゼンテーションエンジンレイヤー1511と、ファイルプロセッサ1513と、ジェネリックオブジェクト構成レイヤー1515と、メディアプロセッサ1517と、MPU構成レイヤー1519と、シグナリングメッセージプロセッサ1521と、シグナリングメッセージ構成レイヤー1523と、MMTプロトコルレイヤー1525と、配信レイヤー1527とを含む。
プレゼンテーションエンジンレイヤー1511は、マルチメディアシーン(multimedia scene)をセットアップする。
ファイルプロセッサ1513は、ファイル、例えば、MPUファイルを処理し、ジェネリックオブジェクト構成レイヤー1515は、完全なMPUのようなジェネリックオブジェクトを構成する。
メディアプロセッサ1517は、メディアデータを処理し、MPU構成レイヤー1519は、MPUを構成し、シグナリングメッセージプロセッサ1521は、MMT受信エンティティに送信されるシグナリングメッセージに対する処理動作を実行する。また、シグナリングメッセージ構成レイヤー1523は、シグナリングメッセージプロセッサ1521で処理したシグナリングメッセージを構成する。
MMTPレイヤー1525は、packet_id、ペイロードタイプなどのような様々なパラメータを考慮してストリームされたメディアを生成する。ここで、カプセル化手順は、配信されたペイロードタイプに基づいており、独立して実行されるので、図15には、別途に図示しなかったことに留意すべきである。
配信レイヤー1527は、MMTPレイヤー1525で生成したストリームされたメディアデータをMMT受信レイヤーに送信するのに適合した形態で変換した後に、MMT受信エンティティに送信する。
一方、図15には、プレゼンテーションエンジンレイヤー1511と、ファイルプロセッサ1513と、ジェネリックオブジェクト構成レイヤー1515と、メディアプロセッサ1517と、MPU構成レイヤー1519と、シグナリングメッセージプロセッサ1521と、シグナリングメッセージ構成レイヤー1523と、MMTPレイヤー1525と、配信レイヤー1527とが個別のユニットとして説明されたが、これは、説明の便宜のためのものであることを理解すべきである。言い換えれば、プレゼンテーションエンジンレイヤー1511と、ファイルプロセッサ1513と、ジェネリックオブジェクト構成レイヤー1515と、メディアプロセッサ1517と、MPU構成レイヤー1519と、シグナリングメッセージプロセッサ1521と、シグナリングメッセージ構成レイヤー1523と、MMTPレイヤー1525と、配信レイヤー1527の中の2つ以上が1つのユニットに統合される形態にも具現されることができる。
図15では、本発明の一実施形態によるFEC方式をサポートするMMTシステムにおけるMMT送信エンティティの内部構造の一例について説明した。図16を参照して、本発明の一実施形態によるMMTシステムにおけるMMT送信エンティティの内部構造の他の例について説明する。
図16は、本発明の一実施形態によるMMTシステムにおけるMMT送信エンティティの内部構造の他の例を概略的に示す図である。
図16を参照すると、MMT送信エンティティ1600は、送信ユニット1611と、制御ユニット1613と、受信ユニット1615と、記憶ユニット1617とを含む。
制御ユニット1613は、MMT送信エンティティ1600の全般的な動作を制御する。より具体的に、制御ユニット1613は、MMT送信エンティティ1600が本発明の一実施形態によるパケット送受信動作に関連した全般的な動作を実行するように制御する。ここで、パケット送受信動作に関連した動作は、図1乃至図14で説明した方式で実行され、ここでは、その詳細な説明を省略する。
送信ユニット1611は、制御ユニット1613の制御の下にMMT受信エンティティに様々なメッセージを送信する。送信ユニット1611が送信する様々なメッセージは、図1乃至図14で説明した。ここでは、その詳細な説明を省略する。
受信ユニット1615は、制御ユニット1613の制御の下にMMT受信エンティティから様々なメッセージを受信する。受信ユニット1615が受信する様々なメッセージは、図1乃至図14で説明した。ここでは、その詳細な説明を省略する。
記憶ユニット1617は、MMT送信エンティティ1600の動作に必要なプログラム、各種データなど、特に、本発明の一実施形態によるパケット送受信動作に関連した情報などを記憶する。また、記憶ユニット1617は、受信ユニット1615がMMT受信エンティティなどから受信した各種メッセージなどを記憶する。
一方、図16には、送信ユニット1611と、制御ユニット1613と、受信ユニット1615と、記憶ユニット1617とが個別のユニットとして説明されたが、これは、説明の便宜のためのものであることを理解すべきである。言い換えれば、送信ユニット1611、制御ユニット1613、受信ユニット1615、及び記憶ユニット1617の中の2つ以上が1つのユニットに統合される形態にも具現されることができる。
図16では、本発明の一実施形態によるMMTシステムにおけるMMT送信エンティティの内部構造の他の例について説明した。図17を参照して、本発明の一実施形態によるMMTシステムにおけるMMT受信エンティティの内部構造の一例について説明する。
図17は、本発明の一実施形態によるMMTシステムにおけるMMT受信エンティティの内部構造の一例を概略的に示す図である。
図17を参照すると、MMT受信エンティティ1700は、プレゼンテーションエンジンレイヤー1711と、ファイルプロセッサ1713と、ジェネリックオブジェクト再構成レイヤー1715と、メディアプロセッサ1717と、MPU再構成レイヤー1719と、シグナリングメッセージプロセッサ1721と、シグナリングメッセージ再構成レイヤー1723と、MMTPレイヤー1725と、配信レイヤー1727とを含む。
MMT受信エンティティ1700は、1つ又はそれ以上のMMT機能領域(図17には図示せず)で動作する。MMT機能領域は、MPU機能領域、配信機能領域、及びシグナリング機能領域を含む。以下では、MPU機能領域、配信機能領域、及びシグナリング機能領域について説明する。
MPU機能領域は、メディアコンテンツの論理構造、パッケージ、及びMMTエンティティにより処理されるデータユニットのフォーマット及びそのインスタンス生成(instantiation)、例えば、ISO/IEC14496−12に規定されているISOベースメディアファイルフォーマットを有するインスタンス生成を定義する。パッケージは、メディアコンテンツを含むコンポーネント及びコンポーネントの間の関係を規定することにより向上した配信のための必要な情報を提供する。データユニットのフォーマットは、記憶又は配信のための符号化されたメディアデータをカプセル化するために定義され、記憶されるデータと配信されるデータとの間の容易な変換を許容するように定義される。
配信機能領域は、アプリケーションレイヤートランスポートプロトコル及びペイロードフォーマットを定義する。アプリケーションレイヤートランスポートプロトコルは、一般的なアプリケーションレイヤートランスポートプロトコル、例えば、単一のパケットフローでマルチプレキシング、ストリーミングの混合された使用のサポート、及びダウンロード配信に比べて向上した特性を提供する。ペイロードフォーマットは、メディアタイプ及び符号化方式に依存しない(agnostic)符号化されたメディアデータの運搬を可能にするように定義される。
シグナリング機能領域は、メディアデータの配信及び消費を管理するシグナリングメッセージのフォーマットを定義する。消費を管理するためのシグナリングメッセージは、パッケージの構造をシグナルするために使用され、配信を管理するためのシグナリングメッセージは、ペイロードフォーマットの構造及びプロトコル構成をシグナリングするために使用される。
MMTPレイヤー1725は、packet_id及びペイロードタイプなどのような様々なパラメータに基づいてストリームされたメディアの受信及びデマルチプレキシングを行うために使用される。ここで、デカプセル化手順は、配信されるペイロードのタイプに基づいており、独立して実行されるので、図17には、図示しない。
プレゼンテーションエンジンレイヤー1711は、マルチメディアシーンをセットアップし、MMTPを使用して受信されるコンテンツを参照する。
一方、図17には、プレゼンテーションエンジンレイヤー1711、ファイルプロセッサ1713、ジェネリックオブジェクト再構成レイヤー1715、メディアプロセッサ1717、MPU再構成レイヤー1719、シグナリングメッセージプロセッサ1721、シグナリングメッセージ再構成レイヤー1723、MMTPレイヤー1725、及び配信レイヤー1727が個別のユニットとして説明されたが、これは、説明の便宜のためのものであることを理解すべきである。言い換えれば、プレゼンテーションエンジンレイヤー1711、ファイルプロセッサ1713、ジェネリックオブジェクト再構成レイヤー1715、メディアプロセッサ1717、MPU再構成レイヤー1719、シグナリングメッセージプロセッサ1721、シグナリングメッセージ再構成レイヤー1723、MMTPレイヤー1725、及び配信レイヤー1727の中の2つ以上が1つのユニットに統合される形態にも具現されることができる。
図17では、本発明の一実施形態によるMMTシステムにおけるMMT受信エンティティの内部構造の一例について説明した。図18を参照して、本発明の一実施形態によるMMTシステムにおけるMMT受信エンティティの内部構造の他の例について説明する。
図18は、本発明の一実施形態によるMMTシステムにおけるMMT受信エンティティの内部構造の他の例を概略的に示す図である。
図18を参照すると、MMT受信エンティティ1800は、送信ユニット1811と、制御ユニット1813と、受信ユニット1815と、記憶ユニット1817とを含む。
制御ユニット1813は、MMT受信エンティティ1800の全般的な動作を制御する。より具体的に、制御ユニット1813は、MMT受信エンティティ1800が本発明の一実施形態によるパケット送受信動作に関連した全般的な動作を実行するように制御する。ここで、パケット送受信動作に関連した動作は、図1乃至図14で説明した方式で実行され、ここでは、その詳細な説明を省略する。
送信ユニット1811は、制御ユニット1813の制御の下にMMT送信エンティティに様々なメッセージを送信する。送信ユニット1811が送信する様々なメッセージは、図1乃至図14で説明した。ここでは、その詳細な説明を省略する。
受信ユニット1815は、制御ユニット1813の制御の下にMMT送信エンティティから様々なメッセージを受信する。受信ユニット1815が受信する様々なメッセージは、図1乃至図14で説明した。ここでは、その詳細な説明を省略する。
記憶ユニット1817は、MMT受信エンティティ1800の動作に必要なプログラム、各種データなど、特に、本発明の一実施形態によるパケット送受信動作に関連した情報などを記憶する。また、記憶ユニット1817は、受信ユニット1815がMMT送信エンティティなどから受信した各種メッセージなどを記憶する。
送信ユニット1811と、制御ユニット1813と、受信ユニット1815と、記憶ユニット1817とが個別のユニットとして説明されたが、これは、説明の便宜のためのものであることを理解すべきである。言い換えれば、送信ユニット1811、制御ユニット1813、受信ユニット1815、及び記憶ユニット1817のうちの2つ以上が1つのユニットに統合される形態にも具現されることができる。
上記した本発明による実施形態は、非一時的なコンピュータ読み取り可能な記録媒体でコンピュータ読み取り可能なコードとして実施されることができる。非一時的なコンピュータで読み取り可能な記憶媒体は、コンピュータシステムにより読出し可能なデータを記憶することができる任意のデータ記憶装置である。非一時的なコンピュータで読み取り可能な記憶媒体の例としては、読出し専用メモリ(ROM)、ランダムアクセスメモリ(RAM)、CD−ROM、磁気テープ、フロッピー(登録商標)ディスク、及び光学データ記憶装置、及び搬送波が含まれるが、これらに限定されるものではない。また、上記非一時的な機械可読記録媒体は、ネットワーク結合型コンピュータシステムにわたって分散されることにより、コンピュータ読み取り可能なコードが分散形態で格納され実行される。また、本発明を達成するための機能的プログラム、コード、及びコードセグメントは、当該技術分野における熟練されたプログラマにとっては容易に理解できることである。
また、本発明の一実施形態による装置及び方法は、ハードウェア、ソフトウェア、及び/又はハードウェア及びソフトウェアの組み合せの形態で実現することができる。このような任意のソフトウェアは、例えば、削除又は再記録が可能であるか否かに関係なく、ROMなどの記憶装置のような揮発性又は不揮発性記憶装置、又は、例えば、RAM、メモリチップ、メモリ装置、又はメモリ集積回路(IC)、又は例えばCD、DVD、磁気ディスク又は磁気テープなどの光学的又は磁気的に記録可能であると同時に、機械(例えば、コンピュータ)で読み取ることができる記憶媒体に記憶することができる。本発明の一実施形態による方法及び装置は、制御部及びメモリを含むコンピュータ又は携帯用端末により具現化されてもよく、このメモリは、本発明の様々な実施形態を実現する指示を含むプログラム又は複数のプログラムを格納するのに適した機械可読の記憶装置である。
したがって、本発明は、本願の任意の請求項に記載された装置又は方法を具現するためのコードを含むプログラム、及びこのようなプログラムを格納する機械(コンピュータ)可読な記憶媒体を含む。また、このようなプログラムは、有線又は無線接続を通じて送信される通信信号のような任意の媒体を通じて電子的に移送され、本発明は、このプログラムと均等なものを適切に含む。
また、本発明の一実施形態による装置は、有線又は無線で接続されるプログラム提供装置からプログラムを受信し格納することができる。プログラム提供装置は、プログラム処理装置が予め定められたコンテンツ保護方法を実行するようにする指示を含むプログラム及びコンテンツ保護方法に必要な情報などを記憶するためのメモリと、グラフィック処理装置との有線又は無線通信を実行するための通信部と、グラフィック処理装置の要請又は自動で対応するプログラムを送受信装置に送信する制御部とを含むことができる。
以上、本発明を具体的な実施形態を参照して詳細に説明してきたが、本発明の範囲及び趣旨を逸脱することなく様々な変更が可能であるということは、当業者には明らかであり、本発明の範囲は、上述の実施形態に限定されるべきではなく、特許請求の範囲の記載及びこれと均等なものの範囲内で定められるべきものである。