【文献】
Gerard Fernando, et al.,Technologies under Consideration (TuC) for MMT,ISO/IEC JTC1/SC29/WG11 N12335,2011年12月
【文献】
Kyungmo Park, et al.,Contribution to MMT EE#8 (D.1 Layer Design),ISO/IEC JTC1/SC29/WG11 MPEG2011/M21524,2011年11月
【文献】
Youngkwon Lim,Review of w11792,AHG on MMT, [online],2011年 3月20日,pp. 1-30,[2016年10月19日検索], インターネット<URL:http://phenix.it-sudparis.eu/jct/doc_end_user/documents/5_Geneva/wg11/JCTVC-E360-v3-.zip>
(58)【調査した分野】(Int.Cl.,DB名)
【発明を実施するための形態】
【0015】
以下、本発明の望ましい実施形態を添付の図面を参照して詳細に説明する。
【0016】
また本発明を説明するにあたって、関連した公知機能或いは構成に対する具体的な説明が本発明の要旨を不必要に不明瞭にすると判断された場合、その詳細な説明は省略する。また、後述する用語は、本発明の機能を考慮して定義されたものであって、ユーザ、運用者の意図、又は慣例によって変わることができる。したがって、上記用語は、本明細書の全体内容に基づいて定義されなければならない。
【0017】
以下では、MMT標準で定義しているレイヤー構造について説明する。本発明の実施形態では、マルチメディアデータパケットの構成を提供し、このために、MMT標準で定義しているレイヤー構造でマルチメディアデータパケットを生成するためのレイヤーをより具体的に説明するはずである。ここで、マルチメディアデータパケットは、MMTサービスのための配信フレーム(Delivery Frame)を意味する。
【0018】
MMTプロトコル(MMTP)は、IPネットワークを通してMMTペイロードフォーマット(Payload Format:PF)で構成された配信フレームを配信するためのアプリケーションレイヤープロトコルを定義する。MMTペイロードは、MMTペイロードフォーマットで構成され、これにより、効率的に送信できるようにデザインされる。異種(heterogeneous)IPネットワークを通してMPEGメディアデータを効率的に送信するために、MMTは、カプセル化フォーマット(Encapsulation Formats)と、配信プロトコル(Delivery Protocols)と、シグナリングメッセージフォーマット(signaling message format)とを定義する。
【0019】
図1は、本発明の一実施形態によるMMTシステムのレイヤー構造を示すブロック図である。
【0020】
図1を参照すると、マルチメディアデータパケットを構成し、これを送信するためのメディアコーディングレイヤー(Media Coding Layer)110と、カプセル化機能レイヤー(Encapsulation Function Layer:Layer E)120と、配信機能レイヤー(Delivery Function Layer:Layer D)130と、転送プロトコルレイヤー(transport Protocol Layer)140と、インターネットプロトコル(IP)レイヤー150と、制御機能レイヤー(Control Function Layer:Layer C)100とが図示されている。
【0021】
本発明の実施形態によると、メディアコーディングレイヤー110及びカプセル化機能レイヤー120は、マルチメディアコンテンツ及び/又はマルチメディアサービスによるマルチメディアデータを生成するマルチメディアデータ生成部として動作する。また、配信機能レイヤー130は、データ生成部から入力されたマルチメディアデータに基づいてマルチメディアデータパケットを構成するマルチメディアデータ構成部として動作する。マルチメディアデータ構成部に対応する配信機能レイヤー130は、マルチメディアデータ生成部から提供された少なくとも1つのマルチメディアデータを識別してヘッダー情報を構成し、ヘッダー情報と少なくとも1つのマルチメディアデータとを結合してマルチメディアデータパケットを構成する。
【0022】
メディアコーディングレイヤー110での圧縮されたマルチメディアデータは、カプセル化(Encapsulation)機能レイヤー120を通してファイルフォーマットと類似の形態でパッケージ化され出力される。カプセル化機能レイヤー120は、メディアコーディングレイヤー110から提供される符号化されたメディアデータ又は記憶されたメディアデータを入力にしてMMTサービスのための小さな単位であるデータセグメント(segment)を生成し、このデータセグメントを使用してMMTサービスのためのアクセスユニット(Access Unit)を生成する。また、カプセル化機能レイヤー120は、アクセスユニットの結合及び/又は分割を行うことにより複合コンテンツの生成、記憶、及び転送のためのパケットフォーマットを生成する。
【0023】
配信機能レイヤー130は、カプセル化機能レイヤー120から出力されるデータユニットをMMTペイロードフォーマットに変換した後に、MMT転送パケットヘッダー(MMT Transport Packet Header)を付加してMMT転送パケットで構成するか又は既存の転送プロトコルであるリアルタイムプロトコル(Real-time Protocol:RTP)を使用してRTPパケットで構成する。
【0024】
配信機能レイヤー130で構成されたパケットは、ユーザデータグラムプロトコル(User Datagram Protocol:UDP)又は転送制御プロトコル(Transport Control Protocol:TCP)のような転送プロトコルレイヤー140を通して最終的にインターネットプロトコル(IP)レイヤー150でIPパケット化され送信される。転送プロトコルレイヤー140及びIPレイヤー150は、データ送信部として動作できる。選択的に存在し得る制御機能レイヤー100は、データの送信に必要とされる制御情報又はシグナリング情報を生成することにより、データに付加して送信するか又は個別のシグナリング手段を通して送信する。
【0025】
配信機能レイヤー130で生成されるMMTペイロードフォーマットは、MMTプロトコル又はRTPにより送信されるメディアユニットの論理構造を定義する。MMTペイロードは、カプセル化されたデータユニット及びMMTレイヤープロトコル又は他の既存のアプリケーション転送プロトコル(Application Transport Protocols)による他の情報を送信するためのペイロードフォーマットにより特定される。MMTペイロードは、ストリーミングに関する情報及びファイル転送(file transfer)に関する情報を提供する。ストリーミングにおいて、データユニットは、MMTメディアフラグメントユニット(Media Fragment Unit:MFU)又はMMT処理ユニット(MMT Processing Unit:MPU)であり得る。ファイル転送のための場合に、データユニットは、MMTアセット(Asset)及びMMTパッケージ(Package)であり得る。
【0026】
図2は、本発明の一実施形態によるMMTペイロードの構成を図式化した図である。
【0027】
図2を参照すると、MMTペイロード200は、少なくとも1つのMMT MFU210、少なくとも1つのMPU230、少なくとも1つのMMTアセット230、及びMMTパッケージの中の少なくとも1つを含んで構成されることができる。
【0028】
ここで、MFU210は、ある特定のメディアコーデック(Media Codec)にも独立した、メディアデコーダにより独立して処理可能な符号化されたメディアデータを含む一般的なコンテナフォーマットである。MFU210は、MPU220のフラグメントされたデータの一部分を示すもので、自分でデコーディングが可能な最小単位となる。例えば、1つのフレームをアクセスユニットとして使用して符号化が実行される場合に、MFU210は、1つのビデオフレームであり得、又は、1つのフレームに含まれた1つのスライスであり得る。
【0029】
MPU220は、1つ又はそれ以上のMFUと追加の送信及び処理関連情報を含むコンテナフォーマットであって、異なる複数のアクセスユニットから生成された様々な個数のMFUを含むことができる。MPU220は、MMTコンプライアントエンティティ(MMT compliant entity)により完全であり独立的に処理されることができる符号化されたメディアデータユニットを意味するもので、プリケーション環境による特定のサイズ(例えば、ビデオの場合、1GOP(Group of Picture))を有することができる。例えば、MPU220は、1GOP(例えば、1秒のビデオ)を構成する複数のピクチャフレームで構成されることができ、MFU220は、各ピクチャフレームを含むことができる。
【0030】
MMTアセット230は、1つ又はそれ以上のMPUで構成されるデータエンティティであり、同一のコンポジーション情報(composition information)及びトランスポート(transport)特性が適用されるもっとも大きいデータユニットである。MMTアセット230は、パッケージされた又は多重化されたデータを含む1つのタイプのデータだけを含む。例えば、オーディオのエレメンタリストリーム(Elementary Stream:ES)の少なくとも一部、ビデオのESの少なくとも一部、MPEG−U(User Interface)ウィジェット(Widget)パッケージ、MPEG−2トランスポートストリーム(Transport Stream:TS)の少なくとも一部、MP4(MPEG−4)ファイルの少なくとも一部、及びMMTパッケージの全体又は少なくとも一部が各MMTアセット230であり得る。
【0031】
ここで、エレメンタリストリーム(ES)は、特定のメディアコーデックにより定義されるもので、論理的に1つ又はそれ以上のMMTアセットであり得る。階層化コーデック及び多視点コーデックをサポートするMMTアセット230は、他のMMTエセットとオーバーラップされ得る。
【0032】
MMTコンポジーション情報(MMT Composition Information:MMT−CI)は、MMTアセットの空間及び時間関係(spatial and temporal relationship)を定義する情報を意味し、MMTトランスポート特性(MMT Transport Characteristics:MMT−TC)は、MMTアセットの送信のために要求されるサービス品質(Quality of Service:QoS)を定義する。MMT−TCは、特定の送信環境に対してアセット配信特性(Asset Delivery Characteristics:ADC)で表現され得る。
【0033】
MMTパッケージ240は、MMTコンプライアントエンティティにより処理される、符号化されたメディアデータと関連した情報の集合体(collection)として定義される。
【0034】
図3は、本発明の一実施形態によるMMTパッケージの論理的構造を示す図である。MMTパッケージ300は、1つ又はそれ以上のMMTアセット320、MMTコンポジーション情報310、及びMMTトランスポート特性を示す1つ又はそれ以上のADC330で構成される。MMTパッケージ240は、識別子のような説明情報及びMMTアセット320の位置を含み、MMTパッケージ240内のMMTアセット320は、多重化されるか又は連接され得る。
【0035】
MMTパッケージ240の処理は、MPUの単位で適用され、MMTアセット320は、同一のMMTアセットIDを有する1つ又はそれ以上のMPU集合体として、各MMTアセット320に関連したトランスポート特性は、ADC330により表現される。ADC330は、MMTパッケージをパケット化するエンティティにより、MMTペイロードのパラメータ及び以下に述べられるMMTパケットのヘッダー情報を構成するのに使用されることができる。
【0036】
MMTパッケージに含まれ得る論理的エンティティの中で、MPUは、与えられた定義に従うヘッダーフィールド(header field)を含み、このようなフィールドの中の少なくとも一部は、MPUの処理に必須であり得る。一方、MPUのペイロードの中でMFUの境界の外部の部分を切り出す場合に、対応するパケットが損失される場合にエラーがより長く伝播(propagation)されることができる。また、低い遅延が要求されるメディアデータにおいて、MFUは、生成される時点で即座に送信される必要があり、この場合に、送信遅延時間を防止するために、送信順序は、生成されたMFUデータを送信した後に対応するMPUのヘッダーフィールド情報が送信されるように定められる。
【0037】
以上のような特性を考慮する時に、MMTペイロードは、MPUパケットとMFUパケットとの間の互換性(compatibility)を保持できるように構成される必要がある。
【0038】
図4は、本発明の実施形態によるMMTシステムにおけるMMTペイロードを含むマルチメディアデータパケットを構成し送信するためのフローチャートである。
図4では、
図1に示したレイヤーの中で配信機能レイヤー130により実行される動作を示す。
【0039】
図4を参照すると、ステップ410において、配信機能レイヤー130は、カプセル化機能レイヤー120から提供されるマルチメディアデータを入力とする。このとき、カプセル化機能レイヤー120は、マルチメディアデータパケットを構成するのに必要なマルチメディアデータ及び各マルチメディアデータに関連した情報を提供できる。
【0040】
ステップ420において、配信機能レイヤー130は、マルチメディアデータのヘッダー情報に基づいて、マルチメディアデータパケットのMMTペイロードに関連したペイロードヘッダー情報を構成する。一実施形態において、ペイロードヘッダー情報は、MMTペイロードの長さ、ペイロードデータのタイプ、フラグメンテーション(fragmentation)及びアグリゲーション(aggregation)に関連した情報などを提供でき、そのペイロードヘッダーフォーマットは、システムオペレータ又はプロトコル標準などにより定義され
ることができる。
【0041】
ステップ430において、配信機能レイヤー130は、マルチメディアデータの送信のためのマルチメディアデータパケットのペイロードを生成する。すなわち、ステップ410から入力を受けたマルチメディアデータの少なくとも一部とステップ420で構成したペイロードヘッダー情報とを結合してMMTペイロードを構成する。
【0042】
MMTペイロードを含むマルチメディアデータパケットであるMMTパケットは、ステップ440で与えられた転送プロトコルを通して相手エンティティ、すなわち、受信器に送信される。
【0043】
以下では、本発明の実施形態で提案するMMTサービスに従うマルチメディアデータの送信を担当する送信機能レイヤーによりマルチメディアデータパケットを構成する具体的な手順及びペイロードフォーマットについて詳細に説明する。具体的には、カプセル化機能レイヤー120で生成されたデータの種類に従う送信データ構造を提供する。マルチメディアデータパケットの構成のためにヘッダー領域に記録されるペイロードヘッダー情報及びペイロード領域に記録されるマルチメディアデータが与えられたフォーマットにより生成される。
【0044】
図5は、本発明の一実施形態によるマルチメディアデータパケットの生成動作を説明する図である。
【0045】
図5を参照すると、MPUファイル510は、カプセル化機能レイヤーで送信しようとするデータを意味し、MPU/MFUビルディングブロック(Building Block)520は、送信データを構成するためのデータ構造である。MPUファイル510は、ファイルのタイプを示すFTYP(File Type)ボックス、MPUの構成を示すMMPUボックス、コーデック設定情報を示すMOOVボックス、及びMOOF(Movie fragment)ボックスのようなヘッダー情報512と、ビデオサンプル(Video samples:VS)516及びMMTヒントサンプル(Hint Samples:HS)518で構成されたMDATボックス514とを含む。MMPUボックスは、MDATボックスに記憶されたデータのタイプがMPUであることを示し、MOOVボックスは、MDATボックスに記憶されたメディアフレームに関する情報を収録する。MPU/MFUビルディングブロック520は、FTYP、MMPU、MOOV、MOOFのようなMPUメタデータ522と、関連したHS526と、VS528の対で構成されたMFU524とを含む。
【0046】
MMTペイロードは、MPU/MFUビルディングブロック520に基づいて構成され、MMTパケットに載せて送信される。
【0047】
MMTペイロードを構成する具体的な手順は、次のようである。
【0048】
データ構成部は、データ生成部から送信されたMPUファイル形態のデータ510を分析し、MPUデータ510のヘッダー情報512から、タイプ、MPUの構成情報、コーデックの設定情報、データの開始点、及びサイズ(長さ)情報を決定する。データ構成部は、MPUデータ510を構成するMFU(
図5でのVSに対応する)516及びMFU HS518の構造を分析し、各MFUのサイズと相互重要度及び相互接続情報(長さなど)を含んでいるMFUヘッダーと実際のメディアデータであるMFUデータを決定し、各MFUの開始オフセット及び長さを示すMFU HS518を通して各MFUのサイズを分析する。
【0049】
分析されたMPU形態を通して、送信パケットを構成するためのMPU/MFUビルディングブロック520が構成される。MFU HS518は、ビルディングブロック520のMFUヘッダーとなる。
【0050】
データ構成部は、MFU HS518から分析された各MFUのサイズに基づいて各MFUを送信単位で構成する。この場合、MFUのサイズに従って、1つ又は複数のペイロードが構成されることができる。各ペイロードの開始部分、中間部分、最終部分は、選択的なビット(optional bits)であるstart_end_indicatorにより示される。また、MPUメタデータ522は、ビルディングブロック520の1つの構成単位で取り扱われる。
【0051】
各ペイロードエレメントのデータ種類は、下記のように示すことができる。
【0052】
i.FTYP、MMPU、MOOV、MOOF、MDATで構成された1つのペイロード522のタイプは、MPU_Partial()と称され、MPUヘッダーだけを含んで構成され得る。
【0053】
ii.1つのMFUが1つのペイロードで構成される場合、ペイロードのタイプは、MFU_set()と称される。
【0054】
iii.1つのMFUが複数のペイロードで構成される時、各ペイロードのタイプは、MFUヘッダーだけを含む場合、MFU_Partial()となり、MFUヘッダー、MFUデータの一部又はMFUデータの一部を含む場合、MFU_chunk()となる。
【0055】
iv.MPU_Partial()は、MPUヘッダーだけを含むペイロードのタイプを意味する。
【0056】
v.MPU_Set()は、MPUを完全に含むペイロードのタイプを意味する。
【0057】
以下では、本発明の一実施形態によるMMTペイロードのシンタックス(Syntax)を示す。MMTペイロードフォーマットは、UDP搬送、点対点間のチャンク(chunk)の交換、ファイルの搬送のために使用されることができる。
【0058】
MMT_Payload()
{
bit(N) type;
bit(N) asset_id;
switch (type) {
case 0:
//configuration;
if (asset_id==0) {
//package configuration data
} else {
//asset configuration data
}
break;
case 1:
MFU_Partial();
break;
case 2:
MFU_chunk();
break;
case 3:
MFU_set ();
break;
case 4:
MPU_Partial();
break;
case 5:
MPU_Set();
break;
...
}
}
【0059】
上述したように、MMTペイロードは、対応するペイロードのデータ種類を示すtypeフィールドと、対応するペイロード(MPU又はMFU)が属しているアセットの識別子を示すasset_idを含む。asset_idは、MMTビットストリームを多重化するために存在する。MMTペイロードがRTPを通して送信され、単一のアセットが使用される場合に、asset_idは省略され得る。
【0060】
typeフィールドに従って、下記のような様々なケースのエレメントがMMTペイロ
ードに含まれ得る。
【0061】
ケース0は、MMTペイロードが、送信しようとするデータの構成データを含んでいる時に使用される。asset_id=0である場合には、MMTペイロードは、パッケージ構成データを含み、そうでない場合には、アセット構成データを含む。
【0062】
ケース1に対応するMFU_Partial()エレメントは、MMTペイロードがMFUデータの構成データ(ヘッダー情報)を搬送する場合に使用され、ケース2に対応するMFU_chunk()エレメントは、MMTペイロードがMFUデータの構成データ(ヘッダー情報)とともにMFUデータの一部を含むか、又はMFUデータの全体又は一部を搬送する場合に使用され、ケース3に対応するMFU_set()エレメントは、MMTペイロードがMFUデータの全体(ヘッダー及びデータ)を含む場合に使用される。ケース4に対応するMPU_Partial()エレメントは、MMTペイロードがMP
Uデータを含む場合に使用され、ケース5に対応するMPU_Set()エレメントは、MMTペイロードがMPUデータの全体(ヘッダー及びデータ)を含む場合に使用される。
【0063】
MMTペイロードは、追加で、ファイルユニット、制御レイヤーのシグナリング情報、保護メッセージ(protection message)のような他のユニットをさらに含んでもよい。
【0064】
MFU_Partial()は、MFUのサイズが最大送信ユニット(Maximum Transmission Unit:MTU)のサイズを超過する時に、ペイロードバイトの開始部分に付加される、MFU内に定義されるヘッダーの全体集合となるように定義される。
【0065】
MFU_chunk()は、MFU_Partial()パケットで送信されるヘッダーに対するMFUのペイロードの中間部分又は最終部分となるように定義される。
【0066】
MFU_set()は、所定数の完全なMFUを含むパケットとなるように定義される。
【0067】
MPU_Partial()は、付加的な(optional)MFU_Partial()エレメントに加えられる付加的なMFU_setエレメントに加えられる、MPU内に定義されるヘッダーの全体の集合となるように定義される。付加的なエレメントが存在するか否かは、対応するパケットの残りのバイト及びMFU長さにより決定される。
【0068】
以下では、MMTペイロードフォーマット及びMMTトランスポートパケットに対するマッピングとともに、MPU及びMFUエレメントの例について説明する。従来によく知られているか又は本発明の実施形態とは大きな関連がないパラメータフィールドについての説明は省略するはずであり、そのようなパラメータフィールドは、本発明を限定しないことに留意すべきである。
【0069】
下記では、MFUエレメントの一例を示す。
【0070】
mmt_mfu_element()
{
...
optional bit(2) start_end_indicator;
optional bit(1) rap_fragment_indicator;
optional bit(N) layer_dependency_info;
optional bit(N) scrambling_key_index;
payload();
}
【0071】
上記した例において、start_end_indicatorは、対応するペイロードがMFUの開始部分、中間部分、又は最終部分であることを示す選択的なビットである。追加でMFUがランダムアクセス開始点(Random Access Point:RAP)データを含むものとデコーディングされる開始及び/又は最終位置を示す選択的なビットが含まれ得る。rap_fragment_indicatorは、対応するペイロードがランダムアクセス可能なデータの開始点を含む場合に直接デコーディングできるデータの開始点のアドレスを示す選択的なビットである。
【0072】
scrambling_key_indexは、対応するペイロードが暗号化されている場合に暗号化を解読できる一連の値に関する情報を含む。
【0073】
layer_dependency_infoは、ピクチャレイヤー間の従属関係を示す情報である。追加でレイヤー識別子(LayerIDs)とディペンデンシーカウント(dependency count)とMPEG−2 TSパケットと類似した信号ローリングキー(signal rolling keys)などがさらに含まれ得る。
【0074】
以下では、MPUエレメントの一例を示す。
【0075】
mmt_mpu_element(multiple, timing)
{
optional bit(2) start_end_indicator;
bit (1) multiple_mfu_flag;
bit (1) no_mfu
bit (1) timing_flag;
bit(1) codec_update_flag;
bit(1) event_list_flag;
bit(1) clock_map;
bit(1) headers_first;
bit(1) multiple_aus_flag;
if (codec_update_flag) {
bit(16) codec_config_size;
bytes(codec_config_size) codec_config_data;
bit(8) downcouter ;//processing delay (remove)
}
if (event_list_flag) {
bit(16) num_events;
for (i=0; i<num_events; i++) {
... //eventdata
}
}
if (multiple_mfu_flag) {
bit(N) num_MFUs;
} else {
num_MFUs = 1;
headers_first = 0;
multiple_aus_flag= 0;
}
if (timing_flag) {
optional bit(timestamps_bits) base_timestamp;
if (clock_map) {
bit(64) clock_ref;
}
optional bit(ts_inc_bits) ts_increment;
optional bit(2) constant_flag;
optional bit(N) interval;
if (ts_inc_factor) ts_increment*= ts_inc_factor;
}
for (i=0; i<num_MFUs; i++) {
optional bit(N) decode_order_number;
if (timing && (!i || multiple_aus_flag) ) {
optional bit(N) dts_diff;
optional bit(N) composition_timestamp_offset;
mfu_dts = base_timestamp + dts_diff * ts_increment;
mfu_cts = base_timestamp + composition_timestamp_offset
* ts_increment;
}
if (multiple_mfu_flag)
optional bit(N) mfu_size;
if (!headers_first) mmt_mfu_element();
}
if (headers_first) {
for (i=0; i<num_MFUs; i++) {
mmt_mfu_element();
}
}
}
【0076】
上記した例において、start_end_indicatorは、対応するペイロードがMFUの開始部分、中間部分、又は最終部分であることを示す選択的なビットである。multiple_mfu_flagは、対応するMPUが複数のMFUで構成されている場合に‘1’に設定される。no_mfuは、ファイル送信の場合のように、MPUデータ内にMFUが含まれていない場合に‘1’に設定される。
【0077】
timing_flagは、前のパケットが損失された場合に、現在のMFUが前のものと同一のアクセスユニットに属しているか否かを示し、タイムスタンプを訂正するようにするために使用される。codec_update_flagは、対応するペイロードがコーデック構成情報を有する場合に‘1'に設定される。header_firstは、対応するペイロードがメディアデータのヘッダー情報から開始される場合に‘1’に設定される。event_list_flagは、対応するペイロードがユーザに表現されるイベントリストを有する場合に設定される。イベントリストは、対応するコンテンツに属しているイベントを並べる。
【0078】
multiple_aus_flagは、対応するペイロードが複数のフレームを含む場合に‘1’に設定される。アドバンストオーディオコーディング(Advanced Audio Coding:AAC)のようなコーデックが使用される場合に、インバンドコーデック構成(in-band codec configuration)のためのユニットは、MPUエレメントに含まれ得る。
【0079】
codec_update_flagは、コーデック構成情報のサイズを示すcodec_config_size及びコーデック構成情報を示すcodec_config_dataを含む。選択可能な実施形態では、マルチメディアストリーミングサービスの初期又は中間にコーデック構成情報を通してコーデックが変更されるか又はコーデック構成情報が修正される場合に、対応するcodec_update_flag を通して対応する情報の有無を設定できる。ダウンカウンター(downcounter)は、コーデック構成情報が複数のペイロードに分割されている場合に、現在のペイロードの後ろにコーデック構成情報を含んでいる幾つかのペイロードがさらに存在することを示すために使用される。例えば、コーデック構成情報が複数でセグメントされており、downcounterが“3”に設定されている場合には、受信器は、コーデック構成情報を完成するために、“2”、“1”、“0”のdowncounterを有するペイロードがさらに必要であることをわかる。“0”のdowncounterを有するペイロードが受信される場合に、受信器は、コーデック構成情報に関連したすべてのペイロードの送信が完了したものと判定する。
【0080】
event_list_flagが設定されている場合に、送信ユニットを通して伝達しようというイベントリストが存在し得、イベントリストは、イベントの個数を示すnum_eventsと少なくとも1つのイベントデータとを含み得る。選択可能な実施形態では、すでに送信したイベントデータを使用する場合に、イベントデータの代わりに、イベント識別子(event ID)だけを含んで対応するイベントを表現できる。他の選択可能な実施形態では、イベントデータは、ペイロードの送信の前に所定の送信手段を使用して予め送信される。リストされたイベントは、フレームのディスプレーとともに同期化され実行される。実施可能な実施形態では、対応するイベントリストを通してビデオデータの再生の間にオーディオを選択的に変更できる。
【0081】
multiple_mfu_flagが設定されている場合に、対応するペイロードが幾つかのMFUで構成されているかを示すnum_MFUsがMPUエレメント内に存在し得る。multiple_mfu_flagが設定されていない場合に、num_MFUsは、“1”となり、header_first及びmultiple_au_flagは、“0”となる。実施可能な実施形態では、送信しようとするマルチメディアデータユニットが複数のフレーム又は単一のフレーム内の複数のスライスで構成される場合に、複数のエンティティ数を設定するための対応する情報が設定されることができる。
【0082】
timing_flagが設定されている場合に、MPU内のユニットに関するタイミング情報がMPUエレメント内に含まれ得る。
【0083】
追加で、num_MFUsだけのMFUがMPUエレメント内に並べられる。MFUの順序は、デコーダ入力の順序とは異なり得るので、対応するMFUがデコーダに入力される順序を示すdecode_order_numberが選択的に含まれ得る。
【0084】
multiple_mfu_flagが“1”に設定されている場合に、各MFUのサイズを示すmfu_sizeがさらに含まれ得る。ここでは、データ構成部に入力されるMFUのサイズが同一の場合について説明する。
【0085】
headers_firstが“1”に設定されていない場合に、1つのmmt_mfu_element()が含まれる。
【0086】
headers_firstが“1”に設定されている場合に、num_MFUsだけのmmt_mfu_element()がMPUエレメントに含まれる。
【0087】
本発明の実施形態に従って構成された受信器は、マルチメディアデータパケットを相手エンティティから受信する受信部と、上述したようなMMTペイロードのフォーマットに従ってマルチメディアデータパケットに含まれた少なくとも1つのMFU又はMPU、あるいは、それの少なくとも一部を抽出して解析する解析部とを含んで構成される。
【0088】
上述したようなMMTペイロードのフォーマットは、MPU及びMFUの効率的な送信、アグリゲーション、及びフラグメンテーションを可能にする。
【0089】
以上、本発明を具体的な実施形態を参照して詳細に説明してきたが、本発明の範囲及び趣旨を逸脱することなく様々な変更が可能であるということは、当業者には明らかであり、本発明の範囲は、上述の実施形態に限定されるべきではなく、特許請求の範囲の記載及びこれと均等なものの範囲内で定められるべきである。