(57)【特許請求の範囲】
【請求項１】
マルチメディアシステムにおけるメディアコンテンツ送信方法であって、
１つまたはそれ以上のサブデータユニットに分割されるデータユニットに基づいて、パケットヘッダー及びペイロードを含む、１つまたはそれ以上のマルチメディアデータパケットを生成するステップと、
前記１つまたはそれ以上のマルチメディアデータパケットを送信するステップと、を含み、
前記ペイロードに含まれるペイロードデータは、前記データユニットのメタデータ、または少なくとも１つまたはそれ以上の前記サブデータユニット、または前記サブデータユニットを分割した、少なくとも１つまたはそれ以上のサブデータユニットデータを含み、
前記１つまたはそれ以上のマルチメディアデータパケットのそれぞれは、前記ペイロードデータが前記データユニットのメタデータを含むことを示すか、または、前記ペイロードデータが前記サブデータユニットデータを含むことを示すタイプ情報を含み、
前記データユニットの前記メタデータは、前記データユニットに関するファイルタイプ情報を含み、
前記１つまたはそれ以上のマルチメディアデータパケットのそれぞれは、前記ペイロードデータに含まれたデータが属したアセットを識別する情報をさらに含むことを特徴とするメディアコンテンツ送信方法。
【請求項２】
前記データユニットの前記メタデータは、前記サブデータユニットの構成に関する情報を含むことを特徴とする請求項１に記載のメディアコンテンツ送信方法。
【請求項３】
前記データユニットの前記メタデータは、コーデック設定情報を含むＭＯＯＶボックスと、前記ファイルタイプ情報の後に位置して前記データユニットに関連した情報を提供するＭＭＰＵボックスと、を含むことを特徴とする請求項１に記載のメディアコンテンツ送信方法。
【請求項４】
前記ペイロードは、前記ペイロードデータが時間情報を含むか否かを示すフィールドを含むことを特徴とする請求項１に記載のメディアコンテンツ送信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、マルチメディア送信システムに関し、特に、マルチメディアデータを送受信する方法及び装置に関するものである。
【背景技術】
【０００２】
マルチメディアサービスは、画像電話のような対話型サービス、注文型ビデオ（Video On Demand：ＶＯＤ）サービスのようなストリーミングサービス、又はマルチキャスト及びブロードキャストサービスなどのサービスを意味する。リアルタイムマルチメディアサービスは、サービスの形態に従って、対話型サービス、インタラクティブサービス、及びストリーミングサービスに分類することができ、参加するユーザの数に従ってユニキャスト、マルチキャスト、及びブロードキャストに分けることができる。
【０００３】
従来では、ブロードキャストネットワークにおいて、マルチメディアコンテンツの送信のためにＭＰＥＧ−２  ＴＳ（Moving Picture Experts Group-2 Transport Stream）を使用することが一般的であった。ＭＰＥＧ−２  ＴＳは、エラーがある送信環境で複数のブロードキャストプログラム（符号化された複数のビデオビット列）が多重化されたビット列を送信するための代表的な送信技術として使用されている。ＭＰＥＧ−２  ＴＳは、マルチメディア時代のデジタルＴＶブロードキャストなどでの使用に適合した。
【０００４】
ＭＰＥＧ−２  ＴＳは、マルチメディアサービスをサポートするにあたりに幾つかの限界点を有する。すなわち、ＭＰＥＧ−２  ＴＳは、単方向通信、固定されたフレームサイズによる送信の非効率性、オーディオ／ビデオに特化されている転送プロトコル及びインターネットプロトコル（Internet Protocol：ＩＰ）を使用して送信する時に、不必要なオーバーヘッドの発生などのような限界を有している。
【０００５】
したがって、ＭＰＥＧでは、ＭＰＥＧ技術に基づいてマルチメディアサービスをサポートするためのマルチメディア送信技術の中の１つでＭＰＥＧメディアトランスポート（MPEG MEDIA Transport：ＭＭＴ）標準を新たに提案した。例えば、ＭＭＴ標準は、異種（heterogeneous）ネットワークを通して複合コンテンツを効率的に送信するために適用されることができる。ここで、複合コンテンツは、ビデオ（Video）／オーディオ（Audio）／アプリケーション（Application）などによるマルチメディアエレメントを有するコンテンツの集合を意味する。例えば、異種ネットワークは、ブロードキャストネットワークと移動通信ネットワークとが混在するネットワークであり得る。
【０００６】
ＭＭＴ標準は、マルチメディアサービスのための送信ネットワークでの基本技術となっているＩＰにより優しい送信技術を定義することを目的としている。このために、変化するマルチメディアサービス環境において、符号化されたメディアデータを含む様々なフォーマットの論理データエンティティをより効率的に送信するためのＭＭＴ転送パケットの構造が要求されてきた。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
本発明の目的は、少なくとも上述した問題点及び／又は不都合に取り組み、少なくとも以下の便宜を提供することにある。すなわち、本発明の目的は、マルチメディア送信システムにおける符号化されたメディアデータの効率的な送信及び受信を行うための方法及び装置を提供することにある。
【０００８】
本発明の別の目的は、マルチメディア送信システムにおける様々なフォーマットの論理データエンティティの送信及び受信を行うための方法及び装置を提供することにある。
【０００９】
本発明のまた別の目的は、ＩＰに基づいてマルチメディアサービスをサポートするブロードキャストシステムにおける異種マルチメディアデータパケットを構成する方法及び装置を提供することにある。
【課題を解決するための手段】
【００１０】
上記のような目的を達成するために、本発明の実施形態の一態様によれば、マルチメディア送信システムのためのデータ送信方法は、カプセル化機能レイヤーから１つ又はそれ以上の第１のデータユニットで構成された第２のデータユニットを入力するステップと、上記第２のデータユニットのヘッダー情報を分析してペイロードタイプ及び構成情報を含むペイロードヘッダー情報を構成するステップと、上記第１のデータユニットのサイズに基づいて上記第２のデータユニットから１つ又はそれ以上のペイロードを構成するステップと、上記各ペイロードに対応するペイロードヘッダー情報を結合してマルチメディアデータパケットを構成するステップと、上記マルチメディアデータパケットを相手エンティティに送信するステップとを有することを特徴とする。
【００１１】
本発明の実施形態の別の態様によれば、マルチメディア送信システムのためのデータ送信装置は、１つ又はそれ以上の第１のデータユニットで構成された第２のデータユニットを出力するデータ生成部と、上記第２のデータユニットのヘッダー情報を分析してペイロードタイプ及び構成情報を含むペイロードヘッダー情報を構成し、上記第１のデータユニットのサイズに基づいて上記第２のデータユニットから１つ又はそれ以上のペイロードを構成し、上記各ペイロードに対応するペイロードヘッダー情報を結合してマルチメディアデータパケットを構成するデータ構成部と、上記マルチメディアデータパケットを相手エンティティに送信するデータ送信部とを有することを特徴とする。
【００１２】
本発明の実施形態のさらに別の態様によれば、マルチメディア送信システムのためのデータ送信装置は、１つ又はそれ以上の第１のデータユニットで構成された第２のデータユニットを出力するデータ生成部と、上記第２のデータユニットのヘッダー情報を分析してペイロードタイプ及び構成情報を含むペイロードヘッダー情報を構成し、上記第１のデータユニットのサイズに基づいて上記第２のデータユニットから１つ又はそれ以上のペイロードを構成し、上記各ペイロードに対応するペイロードヘッダー情報を結合してマルチメディアデータパケットを構成するデータ構成部と、上記マルチメディアデータパケットを相手エンティティに送信するデータ送信部とを有することを特徴とする。
【００１３】
本発明の実施形態のさらなる別の態様によれば、マルチメディア送信システムのためのデータ受信装置は、ペイロードタイプ及び構成情報を含むペイロードヘッダー情報とペイロードで構成されたマルチメディアデータパケットを相手エンティティから受信する受信部と、上記マルチメディアデータパケットから、カプセル化機能レイヤーにより生成された１つ又はそれ以上の第１のデータユニット及び１つ又はそれ以上の第１のデータユニットで構成された第２のデータユニットの少なくとも一部を検出する解析部とを有し、上記ペイロードは、１つの第１のデータユニットを含む第１のタイプ、上記１つの第１のデータユニットのヘッダー情報を含む第２のタイプ、上記１つの第１のデータユニットのヘッダー情報とデータの一部又はデータの一部だけを含む第３のタイプ、上記第２のデータユニットのヘッダー情報を含む第４のタイプ、及び上記第２のデータユニットの全体を含む第５のタイプの中の少なくとも１つのペイロードエレメントを含むことを特徴とする。
【図面の簡単な説明】
【００１４】
【図１】本発明の一実施形態によるＭＭＴシステムのレイヤー構造を示すブロック図である。
【図２】本発明の一実施形態によるＭＭＴペイロードの構成を図式化した図である。
【図３】本発明の一実施形態によるＭＭＴパッケージの論理的構造を示す図である。
【図４】本発明の実施形態によるＭＭＴシステムにおけるＭＭＴペイロードを含むマルチメディアデータパケットを構成し送信するためのフローチャートである。
【図５】本発明の一実施形態によるマルチメディアデータパケットの生成動作を説明する図である。
【発明を実施するための形態】
【００１５】
以下、本発明の望ましい実施形態を添付の図面を参照して詳細に説明する。
【００１６】
また本発明を説明するにあたって、関連した公知機能或いは構成に対する具体的な説明が本発明の要旨を不必要に不明瞭にすると判断された場合、その詳細な説明は省略する。また、後述する用語は、本発明の機能を考慮して定義されたものであって、ユーザ、運用者の意図、又は慣例によって変わることができる。したがって、上記用語は、本明細書の全体内容に基づいて定義されなければならない。
【００１７】
以下では、ＭＭＴ標準で定義しているレイヤー構造について説明する。本発明の実施形態では、マルチメディアデータパケットの構成を提供し、このために、ＭＭＴ標準で定義しているレイヤー構造でマルチメディアデータパケットを生成するためのレイヤーをより具体的に説明するはずである。ここで、マルチメディアデータパケットは、ＭＭＴサービスのための配信フレーム（Delivery Frame）を意味する。
【００１８】
ＭＭＴプロトコル（ＭＭＴＰ）は、ＩＰネットワークを通してＭＭＴペイロードフォーマット（Payload Format：ＰＦ）で構成された配信フレームを配信するためのアプリケーションレイヤープロトコルを定義する。ＭＭＴペイロードは、ＭＭＴペイロードフォーマットで構成され、これにより、効率的に送信できるようにデザインされる。異種（heterogeneous）ＩＰネットワークを通してＭＰＥＧメディアデータを効率的に送信するために、ＭＭＴは、カプセル化フォーマット（Encapsulation Formats）と、配信プロトコル（Delivery Protocols）と、シグナリングメッセージフォーマット（signaling message format）とを定義する。
【００１９】
図１は、本発明の一実施形態によるＭＭＴシステムのレイヤー構造を示すブロック図である。
【００２０】
図１を参照すると、マルチメディアデータパケットを構成し、これを送信するためのメディアコーディングレイヤー（Media Coding Layer）１１０と、カプセル化機能レイヤー（Encapsulation Function Layer：Ｌａｙｅｒ  Ｅ）１２０と、配信機能レイヤー（Delivery Function Layer：Ｌａｙｅｒ  Ｄ）１３０と、転送プロトコルレイヤー（transport Protocol Layer）１４０と、インターネットプロトコル（ＩＰ）レイヤー１５０と、制御機能レイヤー（Control Function Layer：Ｌａｙｅｒ  Ｃ）１００とが図示されている。
【００２１】
本発明の実施形態によると、メディアコーディングレイヤー１１０及びカプセル化機能レイヤー１２０は、マルチメディアコンテンツ及び／又はマルチメディアサービスによるマルチメディアデータを生成するマルチメディアデータ生成部として動作する。また、配信機能レイヤー１３０は、データ生成部から入力されたマルチメディアデータに基づいてマルチメディアデータパケットを構成するマルチメディアデータ構成部として動作する。マルチメディアデータ構成部に対応する配信機能レイヤー１３０は、マルチメディアデータ生成部から提供された少なくとも１つのマルチメディアデータを識別してヘッダー情報を構成し、ヘッダー情報と少なくとも１つのマルチメディアデータとを結合してマルチメディアデータパケットを構成する。
【００２２】
メディアコーディングレイヤー１１０での圧縮されたマルチメディアデータは、カプセル化（Encapsulation）機能レイヤー１２０を通してファイルフォーマットと類似の形態でパッケージ化され出力される。カプセル化機能レイヤー１２０は、メディアコーディングレイヤー１１０から提供される符号化されたメディアデータ又は記憶されたメディアデータを入力にしてＭＭＴサービスのための小さな単位であるデータセグメント（segment）を生成し、このデータセグメントを使用してＭＭＴサービスのためのアクセスユニット（Access Unit）を生成する。また、カプセル化機能レイヤー１２０は、アクセスユニットの結合及び／又は分割を行うことにより複合コンテンツの生成、記憶、及び転送のためのパケットフォーマットを生成する。
【００２３】
配信機能レイヤー１３０は、カプセル化機能レイヤー１２０から出力されるデータユニットをＭＭＴペイロードフォーマットに変換した後に、ＭＭＴ転送パケットヘッダー（MMT Transport Packet Header）を付加してＭＭＴ転送パケットで構成するか又は既存の転送プロトコルであるリアルタイムプロトコル（Real-time Protocol：ＲＴＰ）を使用してＲＴＰパケットで構成する。
【００２４】
配信機能レイヤー１３０で構成されたパケットは、ユーザデータグラムプロトコル（User Datagram Protocol：ＵＤＰ）又は転送制御プロトコル（Transport Control Protocol：ＴＣＰ）のような転送プロトコルレイヤー１４０を通して最終的にインターネットプロトコル（ＩＰ）レイヤー１５０でＩＰパケット化され送信される。転送プロトコルレイヤー１４０及びＩＰレイヤー１５０は、データ送信部として動作できる。選択的に存在し得る制御機能レイヤー１００は、データの送信に必要とされる制御情報又はシグナリング情報を生成することにより、データに付加して送信するか又は個別のシグナリング手段を通して送信する。
【００２５】
配信機能レイヤー１３０で生成されるＭＭＴペイロードフォーマットは、ＭＭＴプロトコル又はＲＴＰにより送信されるメディアユニットの論理構造を定義する。ＭＭＴペイロードは、カプセル化されたデータユニット及びＭＭＴレイヤープロトコル又は他の既存のアプリケーション転送プロトコル（Application Transport Protocols）による他の情報を送信するためのペイロードフォーマットにより特定される。ＭＭＴペイロードは、ストリーミングに関する情報及びファイル転送（file transfer）に関する情報を提供する。ストリーミングにおいて、データユニットは、ＭＭＴメディアフラグメントユニット（Media Fragment Unit：ＭＦＵ）又はＭＭＴ処理ユニット（MMT Processing Unit：ＭＰＵ）であり得る。ファイル転送のための場合に、データユニットは、ＭＭＴアセット（Asset）及びＭＭＴパッケージ（Package）であり得る。
【００２６】
図２は、本発明の一実施形態によるＭＭＴペイロードの構成を図式化した図である。
【００２７】
図２を参照すると、ＭＭＴペイロード２００は、少なくとも１つのＭＭＴ  ＭＦＵ２１０、少なくとも１つのＭＰＵ２３０、少なくとも１つのＭＭＴアセット２３０、及びＭＭＴパッケージの中の少なくとも１つを含んで構成されることができる。
【００２８】
ここで、ＭＦＵ２１０は、ある特定のメディアコーデック（Media Codec）にも独立した、メディアデコーダにより独立して処理可能な符号化されたメディアデータを含む一般的なコンテナフォーマットである。ＭＦＵ２１０は、ＭＰＵ２２０のフラグメントされたデータの一部分を示すもので、自分でデコーディングが可能な最小単位となる。例えば、１つのフレームをアクセスユニットとして使用して符号化が実行される場合に、ＭＦＵ２１０は、１つのビデオフレームであり得、又は、１つのフレームに含まれた１つのスライスであり得る。
【００２９】
ＭＰＵ２２０は、１つ又はそれ以上のＭＦＵと追加の送信及び処理関連情報を含むコンテナフォーマットであって、異なる複数のアクセスユニットから生成された様々な個数のＭＦＵを含むことができる。ＭＰＵ２２０は、ＭＭＴコンプライアントエンティティ（MMT compliant entity）により完全であり独立的に処理されることができる符号化されたメディアデータユニットを意味するもので、プリケーション環境による特定のサイズ（例えば、ビデオの場合、１ＧＯＰ（Group of Picture））を有することができる。例えば、ＭＰＵ２２０は、１ＧＯＰ（例えば、1秒のビデオ）を構成する複数のピクチャフレームで構成されることができ、ＭＦＵ２２０は、各ピクチャフレームを含むことができる。
【００３０】
ＭＭＴアセット２３０は、１つ又はそれ以上のＭＰＵで構成されるデータエンティティであり、同一のコンポジーション情報（composition information）及びトランスポート（transport）特性が適用されるもっとも大きいデータユニットである。ＭＭＴアセット２３０は、パッケージされた又は多重化されたデータを含む１つのタイプのデータだけを含む。例えば、オーディオのエレメンタリストリーム（Elementary Stream：ＥＳ）の少なくとも一部、ビデオのＥＳの少なくとも一部、ＭＰＥＧ−Ｕ（User Interface）ウィジェット（Widget）パッケージ、ＭＰＥＧ−２トランスポートストリーム（Transport Stream：ＴＳ）の少なくとも一部、ＭＰ４（ＭＰＥＧ−４）ファイルの少なくとも一部、及びＭＭＴパッケージの全体又は少なくとも一部が各ＭＭＴアセット２３０であり得る。
【００３１】
ここで、エレメンタリストリーム（ＥＳ）は、特定のメディアコーデックにより定義されるもので、論理的に１つ又はそれ以上のＭＭＴアセットであり得る。階層化コーデック及び多視点コーデックをサポートするＭＭＴアセット２３０は、他のＭＭＴエセットとオーバーラップされ得る。
【００３２】
ＭＭＴコンポジーション情報（MMT Composition Information：ＭＭＴ−ＣＩ）は、ＭＭＴアセットの空間及び時間関係（spatial and temporal relationship）を定義する情報を意味し、ＭＭＴトランスポート特性（MMT Transport Characteristics：ＭＭＴ−ＴＣ）は、ＭＭＴアセットの送信のために要求されるサービス品質（Quality of Service：ＱｏＳ）を定義する。ＭＭＴ−ＴＣは、特定の送信環境に対してアセット配信特性（Asset Delivery Characteristics：ＡＤＣ）で表現され得る。
【００３３】
ＭＭＴパッケージ２４０は、ＭＭＴコンプライアントエンティティにより処理される、符号化されたメディアデータと関連した情報の集合体（collection）として定義される。
【００３４】
図３は、本発明の一実施形態によるＭＭＴパッケージの論理的構造を示す図である。ＭＭＴパッケージ３００は、１つ又はそれ以上のＭＭＴアセット３２０、ＭＭＴコンポジーション情報３１０、及びＭＭＴトランスポート特性を示す１つ又はそれ以上のＡＤＣ３３０で構成される。ＭＭＴパッケージ２４０は、識別子のような説明情報及びＭＭＴアセット３２０の位置を含み、ＭＭＴパッケージ２４０内のＭＭＴアセット３２０は、多重化されるか又は連接され得る。
【００３５】
ＭＭＴパッケージ２４０の処理は、ＭＰＵの単位で適用され、ＭＭＴアセット３２０は、同一のＭＭＴアセットＩＤを有する１つ又はそれ以上のＭＰＵ集合体として、各ＭＭＴアセット３２０に関連したトランスポート特性は、ＡＤＣ３３０により表現される。ＡＤＣ３３０は、ＭＭＴパッケージをパケット化するエンティティにより、ＭＭＴペイロードのパラメータ及び以下に述べられるＭＭＴパケットのヘッダー情報を構成するのに使用されることができる。
【００３６】
ＭＭＴパッケージに含まれ得る論理的エンティティの中で、ＭＰＵは、与えられた定義に従うヘッダーフィールド（header field）を含み、このようなフィールドの中の少なくとも一部は、ＭＰＵの処理に必須であり得る。一方、ＭＰＵのペイロードの中でＭＦＵの境界の外部の部分を切り出す場合に、対応するパケットが損失される場合にエラーがより長く伝播（propagation）されることができる。また、低い遅延が要求されるメディアデータにおいて、ＭＦＵは、生成される時点で即座に送信される必要があり、この場合に、送信遅延時間を防止するために、送信順序は、生成されたＭＦＵデータを送信した後に対応するＭＰＵのヘッダーフィールド情報が送信されるように定められる。
【００３７】
以上のような特性を考慮する時に、ＭＭＴペイロードは、ＭＰＵパケットとＭＦＵパケットとの間の互換性（compatibility）を保持できるように構成される必要がある。
【００３８】
図４は、本発明の実施形態によるＭＭＴシステムにおけるＭＭＴペイロードを含むマルチメディアデータパケットを構成し送信するためのフローチャートである。図４では、図１に示したレイヤーの中で配信機能レイヤー１３０により実行される動作を示す。
【００３９】
図４を参照すると、ステップ４１０において、配信機能レイヤー１３０は、カプセル化機能レイヤー１２０から提供されるマルチメディアデータを入力とする。このとき、カプセル化機能レイヤー１２０は、マルチメディアデータパケットを構成するのに必要なマルチメディアデータ及び各マルチメディアデータに関連した情報を提供できる。
【００４０】
ステップ４２０において、配信機能レイヤー１３０は、マルチメディアデータのヘッダー情報に基づいて、マルチメディアデータパケットのＭＭＴペイロードに関連したペイロードヘッダー情報を構成する。一実施形態において、ペイロードヘッダー情報は、ＭＭＴペイロードの長さ、ペイロードデータのタイプ、フラグメンテーション（fragmentation）及びアグリゲーション（aggregation）に関連した情報などを提供でき、そのペイロードヘッダーフォーマットは、システムオペレータ又はプロトコル標準などにより定義されることができる。
【００４１】
ステップ４３０において、配信機能レイヤー１３０は、マルチメディアデータの送信のためのマルチメディアデータパケットのペイロードを生成する。すなわち、ステップ４１０から入力を受けたマルチメディアデータの少なくとも一部とステップ４２０で構成したペイロードヘッダー情報とを結合してＭＭＴペイロードを構成する。
【００４２】
ＭＭＴペイロードを含むマルチメディアデータパケットであるＭＭＴパケットは、ステップ４４０で与えられた転送プロトコルを通して相手エンティティ、すなわち、受信器に送信される。
【００４３】
以下では、本発明の実施形態で提案するＭＭＴサービスに従うマルチメディアデータの送信を担当する送信機能レイヤーによりマルチメディアデータパケットを構成する具体的な手順及びペイロードフォーマットについて詳細に説明する。具体的には、カプセル化機能レイヤー１２０で生成されたデータの種類に従う送信データ構造を提供する。マルチメディアデータパケットの構成のためにヘッダー領域に記録されるペイロードヘッダー情報及びペイロード領域に記録されるマルチメディアデータが与えられたフォーマットにより生成される。
【００４４】
図５は、本発明の一実施形態によるマルチメディアデータパケットの生成動作を説明する図である。
【００４５】
図５を参照すると、ＭＰＵファイル５１０は、カプセル化機能レイヤーで送信しようとするデータを意味し、ＭＰＵ／ＭＦＵビルディングブロック（Building Block）５２０は、送信データを構成するためのデータ構造である。ＭＰＵファイル５１０は、ファイルのタイプを示すＦＴＹＰ（File Type）ボックス、ＭＰＵの構成を示すＭＭＰＵボックス、コーデック設定情報を示すＭＯＯＶボックス、及びＭＯＯＦ（Movie fragment）ボックスのようなヘッダー情報５１２と、ビデオサンプル（Video samples：ＶＳ）５１６及びＭＭＴヒントサンプル（Hint Samples：ＨＳ）５１８で構成されたＭＤＡＴボックス５１４とを含む。ＭＭＰＵボックスは、ＭＤＡＴボックスに記憶されたデータのタイプがＭＰＵであることを示し、ＭＯＯＶボックスは、ＭＤＡＴボックスに記憶されたメディアフレームに関する情報を収録する。ＭＰＵ／ＭＦＵビルディングブロック５２０は、ＦＴＹＰ、ＭＭＰＵ、ＭＯＯＶ、ＭＯＯＦのようなＭＰＵメタデータ５２２と、関連したＨＳ５２６と、ＶＳ５２８の対で構成されたＭＦＵ５２４とを含む。
【００４６】
ＭＭＴペイロードは、ＭＰＵ／ＭＦＵビルディングブロック５２０に基づいて構成され、ＭＭＴパケットに載せて送信される。
【００４７】
ＭＭＴペイロードを構成する具体的な手順は、次のようである。
【００４８】
データ構成部は、データ生成部から送信されたＭＰＵファイル形態のデータ５１０を分析し、ＭＰＵデータ５１０のヘッダー情報５１２から、タイプ、ＭＰＵの構成情報、コーデックの設定情報、データの開始点、及びサイズ（長さ）情報を決定する。データ構成部は、ＭＰＵデータ５１０を構成するＭＦＵ（図５でのＶＳに対応する）５１６及びＭＦＵ  ＨＳ５１８の構造を分析し、各ＭＦＵのサイズと相互重要度及び相互接続情報（長さなど）を含んでいるＭＦＵヘッダーと実際のメディアデータであるＭＦＵデータを決定し、各ＭＦＵの開始オフセット及び長さを示すＭＦＵ  ＨＳ５１８を通して各ＭＦＵのサイズを分析する。
【００４９】
分析されたＭＰＵ形態を通して、送信パケットを構成するためのＭＰＵ／ＭＦＵビルディングブロック５２０が構成される。ＭＦＵ  ＨＳ５１８は、ビルディングブロック５２０のＭＦＵヘッダーとなる。
【００５０】
データ構成部は、ＭＦＵ  ＨＳ５１８から分析された各ＭＦＵのサイズに基づいて各ＭＦＵを送信単位で構成する。この場合、ＭＦＵのサイズに従って、１つ又は複数のペイロードが構成されることができる。各ペイロードの開始部分、中間部分、最終部分は、選択的なビット（optional bits）であるｓｔａｒｔ＿ｅｎｄ＿ｉｎｄｉｃａｔｏｒにより示される。また、ＭＰＵメタデータ５２２は、ビルディングブロック５２０の１つの構成単位で取り扱われる。
【００５１】
各ペイロードエレメントのデータ種類は、下記のように示すことができる。
【００５２】
ｉ．ＦＴＹＰ、ＭＭＰＵ、ＭＯＯＶ、ＭＯＯＦ、ＭＤＡＴで構成された１つのペイロード５２２のタイプは、ＭＰＵ＿Ｐａｒｔｉａｌ（）と称され、ＭＰＵヘッダーだけを含んで構成され得る。
【００５３】
ｉｉ．１つのＭＦＵが１つのペイロードで構成される場合、ペイロードのタイプは、ＭＦＵ＿ｓｅｔ（）と称される。
【００５４】
ｉｉｉ．１つのＭＦＵが複数のペイロードで構成される時、各ペイロードのタイプは、ＭＦＵヘッダーだけを含む場合、ＭＦＵ＿Ｐａｒｔｉａｌ（）となり、ＭＦＵヘッダー、ＭＦＵデータの一部又はＭＦＵデータの一部を含む場合、ＭＦＵ＿ｃｈｕｎｋ（）となる。
【００５５】
ｉｖ．ＭＰＵ＿Ｐａｒｔｉａｌ（）は、ＭＰＵヘッダーだけを含むペイロードのタイプを意味する。
【００５６】
ｖ．ＭＰＵ＿Ｓｅｔ（）は、ＭＰＵを完全に含むペイロードのタイプを意味する。
【００５７】
以下では、本発明の一実施形態によるＭＭＴペイロードのシンタックス（Syntax）を示す。ＭＭＴペイロードフォーマットは、ＵＤＰ搬送、点対点間のチャンク（chunk）の交換、ファイルの搬送のために使用されることができる。
【００５８】
MMT_Payload()
{ 
bit(N) type; 
bit(N) ａｓｓｅｔ＿ｉｄ; 
switch (type) {
case 0: 
//configuration;
if (ａｓｓｅｔ＿ｉｄ==0) {
//package configuration data
} else {
//asset configuration data
}
break;
case 1: 
MFU_Partial();
break;
case 2: 
MFU_chunk();
break;
case 3:
ＭＦＵ＿ｓｅｔ ();
break;
case 4: 
MPU_Partial(); 
break;
case 5: 
MPU_Set();
break;
...
}
}
【００５９】
上述したように、ＭＭＴペイロードは、対応するペイロードのデータ種類を示すｔｙｐｅフィールドと、対応するペイロード（ＭＰＵ又はＭＦＵ）が属しているアセットの識別子を示すａｓｓｅｔ＿ｉｄを含む。ａｓｓｅｔ＿ｉｄは、ＭＭＴビットストリームを多重化するために存在する。ＭＭＴペイロードがＲＴＰを通して送信され、単一のアセットが使用される場合に、ａｓｓｅｔ＿ｉｄは省略され得る。
【００６０】
ｔｙｐｅフィールドに従って、下記のような様々なケースのエレメントがＭＭＴペイロードに含まれ得る。
【００６１】
ケース０は、ＭＭＴペイロードが、送信しようとするデータの構成データを含んでいる時に使用される。ａｓｓｅｔ＿ｉｄ＝０である場合には、ＭＭＴペイロードは、パッケージ構成データを含み、そうでない場合には、アセット構成データを含む。
【００６２】
ケース１に対応するＭＦＵ＿Ｐａｒｔｉａｌ（）エレメントは、ＭＭＴペイロードがＭＦＵデータの構成データ（ヘッダー情報）を搬送する場合に使用され、ケース２に対応するＭＦＵ＿ｃｈｕｎｋ（）エレメントは、ＭＭＴペイロードがＭＦＵデータの構成データ（ヘッダー情報）とともにＭＦＵデータの一部を含むか、又はＭＦＵデータの全体又は一部を搬送する場合に使用され、ケース３に対応するＭＦＵ＿ｓｅｔ（）エレメントは、ＭＭＴペイロードがＭＦＵデータの全体（ヘッダー及びデータ）を含む場合に使用される。ケース４に対応するＭＰＵ＿Ｐａｒｔｉａｌ（）エレメントは、ＭＭＴペイロードがＭＰＵデータを含む場合に使用され、ケース５に対応するＭＰＵ＿Ｓｅｔ（）エレメントは、ＭＭＴペイロードがＭＰＵデータの全体（ヘッダー及びデータ）を含む場合に使用される。
【００６３】
ＭＭＴペイロードは、追加で、ファイルユニット、制御レイヤーのシグナリング情報、保護メッセージ（protection message）のような他のユニットをさらに含んでもよい。
【００６４】
ＭＦＵ＿Ｐａｒｔｉａｌ（）は、ＭＦＵのサイズが最大送信ユニット（Maximum Transmission Unit：ＭＴＵ）のサイズを超過する時に、ペイロードバイトの開始部分に付加される、ＭＦＵ内に定義されるヘッダーの全体集合となるように定義される。
【００６５】
ＭＦＵ＿ｃｈｕｎｋ（）は、ＭＦＵ＿Ｐａｒｔｉａｌ（）パケットで送信されるヘッダーに対するＭＦＵのペイロードの中間部分又は最終部分となるように定義される。
【００６６】
ＭＦＵ＿ｓｅｔ（）は、所定数の完全なＭＦＵを含むパケットとなるように定義される。
【００６７】
ＭＰＵ＿Ｐａｒｔｉａｌ（）は、付加的な（optional）ＭＦＵ＿Ｐａｒｔｉａｌ（）エレメントに加えられる付加的なＭＦＵ＿ｓｅｔエレメントに加えられる、ＭＰＵ内に定義されるヘッダーの全体の集合となるように定義される。付加的なエレメントが存在するか否かは、対応するパケットの残りのバイト及びＭＦＵ長さにより決定される。
【００６８】
以下では、ＭＭＴペイロードフォーマット及びＭＭＴトランスポートパケットに対するマッピングとともに、ＭＰＵ及びＭＦＵエレメントの例について説明する。従来によく知られているか又は本発明の実施形態とは大きな関連がないパラメータフィールドについての説明は省略するはずであり、そのようなパラメータフィールドは、本発明を限定しないことに留意すべきである。
【００６９】
下記では、ＭＦＵエレメントの一例を示す。
【００７０】
mmt_mfu_element()
{
...
optional bit(2) ｓｔａｒｔ＿ｅｎｄ＿ｉｎｄｉｃａｔｏｒ;
optional bit(1) rap_fragment_indicator;
optional bit(N) layer_dependency_info;
optional bit(N) scrambling_key_index;
payload();
}
【００７１】
上記した例において、ｓｔａｒｔ＿ｅｎｄ＿ｉｎｄｉｃａｔｏｒは、対応するペイロードがＭＦＵの開始部分、中間部分、又は最終部分であることを示す選択的なビットである。追加でＭＦＵがランダムアクセス開始点（Random Access Point：ＲＡＰ）データを含むものとデコーディングされる開始及び／又は最終位置を示す選択的なビットが含まれ得る。ｒａｐ＿ｆｒａｇｍｅｎｔ＿ｉｎｄｉｃａｔｏｒは、対応するペイロードがランダムアクセス可能なデータの開始点を含む場合に直接デコーディングできるデータの開始点のアドレスを示す選択的なビットである。
【００７２】
ｓｃｒａｍｂｌｉｎｇ＿ｋｅｙ＿ｉｎｄｅｘは、対応するペイロードが暗号化されている場合に暗号化を解読できる一連の値に関する情報を含む。
【００７３】
ｌａｙｅｒ＿ｄｅｐｅｎｄｅｎｃｙ＿ｉｎｆｏは、ピクチャレイヤー間の従属関係を示す情報である。追加でレイヤー識別子（ＬａｙｅｒＩＤｓ）とディペンデンシーカウント（dependency count）とＭＰＥＧ−２  ＴＳパケットと類似した信号ローリングキー（signal rolling keys）などがさらに含まれ得る。
【００７４】
以下では、ＭＰＵエレメントの一例を示す。
【００７５】
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();
}
}
}
【００７６】
上記した例において、ｓｔａｒｔ＿ｅｎｄ＿ｉｎｄｉｃａｔｏｒは、対応するペイロードがＭＦＵの開始部分、中間部分、又は最終部分であることを示す選択的なビットである。ｍｕｌｔｉｐｌｅ＿ｍｆｕ＿ｆｌａｇは、対応するＭＰＵが複数のＭＦＵで構成されている場合に‘１’に設定される。ｎｏ＿ｍｆｕは、ファイル送信の場合のように、ＭＰＵデータ内にＭＦＵが含まれていない場合に‘１’に設定される。
【００７７】
ｔｉｍｉｎｇ＿ｆｌａｇは、前のパケットが損失された場合に、現在のＭＦＵが前のものと同一のアクセスユニットに属しているか否かを示し、タイムスタンプを訂正するようにするために使用される。ｃｏｄｅｃ＿ｕｐｄａｔｅ＿ｆｌａｇは、対応するペイロードがコーデック構成情報を有する場合に‘１'に設定される。ｈｅａｄｅｒ＿ｆｉｒｓｔは、対応するペイロードがメディアデータのヘッダー情報から開始される場合に‘１’に設定される。ｅｖｅｎｔ＿ｌｉｓｔ＿ｆｌａｇは、対応するペイロードがユーザに表現されるイベントリストを有する場合に設定される。イベントリストは、対応するコンテンツに属しているイベントを並べる。
【００７８】
ｍｕｌｔｉｐｌｅ＿ａｕｓ＿ｆｌａｇは、対応するペイロードが複数のフレームを含む場合に‘１’に設定される。アドバンストオーディオコーディング（Advanced Audio Coding：ＡＡＣ）のようなコーデックが使用される場合に、インバンドコーデック構成（in-band codec configuration）のためのユニットは、ＭＰＵエレメントに含まれ得る。
【００７９】
ｃｏｄｅｃ＿ｕｐｄａｔｅ＿ｆｌａｇは、コーデック構成情報のサイズを示すｃｏｄｅｃ＿ｃｏｎｆｉｇ＿ｓｉｚｅ及びコーデック構成情報を示すｃｏｄｅｃ＿ｃｏｎｆｉｇ＿ｄａｔａを含む。選択可能な実施形態では、マルチメディアストリーミングサービスの初期又は中間にコーデック構成情報を通してコーデックが変更されるか又はコーデック構成情報が修正される場合に、対応するｃｏｄｅｃ＿ｕｐｄａｔｅ＿ｆｌａｇ を通して対応する情報の有無を設定できる。ダウンカウンター（downcounter）は、コーデック構成情報が複数のペイロードに分割されている場合に、現在のペイロードの後ろにコーデック構成情報を含んでいる幾つかのペイロードがさらに存在することを示すために使用される。例えば、コーデック構成情報が複数でセグメントされており、ｄｏｗｎｃｏｕｎｔｅｒが“３”に設定されている場合には、受信器は、コーデック構成情報を完成するために、“２”、“１”、“０”のｄｏｗｎｃｏｕｎｔｅｒを有するペイロードがさらに必要であることをわかる。“０”のｄｏｗｎｃｏｕｎｔｅｒを有するペイロードが受信される場合に、受信器は、コーデック構成情報に関連したすべてのペイロードの送信が完了したものと判定する。
【００８０】
ｅｖｅｎｔ＿ｌｉｓｔ＿ｆｌａｇが設定されている場合に、送信ユニットを通して伝達しようというイベントリストが存在し得、イベントリストは、イベントの個数を示すｎｕｍ＿ｅｖｅｎｔｓと少なくとも１つのイベントデータとを含み得る。選択可能な実施形態では、すでに送信したイベントデータを使用する場合に、イベントデータの代わりに、イベント識別子（event ID）だけを含んで対応するイベントを表現できる。他の選択可能な実施形態では、イベントデータは、ペイロードの送信の前に所定の送信手段を使用して予め送信される。リストされたイベントは、フレームのディスプレーとともに同期化され実行される。実施可能な実施形態では、対応するイベントリストを通してビデオデータの再生の間にオーディオを選択的に変更できる。
【００８１】
ｍｕｌｔｉｐｌｅ＿ｍｆｕ＿ｆｌａｇが設定されている場合に、対応するペイロードが幾つかのＭＦＵで構成されているかを示すｎｕｍ＿ＭＦＵｓがＭＰＵエレメント内に存在し得る。ｍｕｌｔｉｐｌｅ＿ｍｆｕ＿ｆｌａｇが設定されていない場合に、ｎｕｍ＿ＭＦＵｓは、“１”となり、ｈｅａｄｅｒ＿ｆｉｒｓｔ及びｍｕｌｔｉｐｌｅ＿ａｕ＿ｆｌａｇは、“０”となる。実施可能な実施形態では、送信しようとするマルチメディアデータユニットが複数のフレーム又は単一のフレーム内の複数のスライスで構成される場合に、複数のエンティティ数を設定するための対応する情報が設定されることができる。
【００８２】
ｔｉｍｉｎｇ＿ｆｌａｇが設定されている場合に、ＭＰＵ内のユニットに関するタイミング情報がＭＰＵエレメント内に含まれ得る。
【００８３】
追加で、ｎｕｍ＿ＭＦＵｓだけのＭＦＵがＭＰＵエレメント内に並べられる。ＭＦＵの順序は、デコーダ入力の順序とは異なり得るので、対応するＭＦＵがデコーダに入力される順序を示すｄｅｃｏｄｅ＿ｏｒｄｅｒ＿ｎｕｍｂｅｒが選択的に含まれ得る。
【００８４】
ｍｕｌｔｉｐｌｅ＿ｍｆｕ＿ｆｌａｇが“１”に設定されている場合に、各ＭＦＵのサイズを示すｍｆｕ＿ｓｉｚｅがさらに含まれ得る。ここでは、データ構成部に入力されるＭＦＵのサイズが同一の場合について説明する。
【００８５】
ｈｅａｄｅｒｓ＿ｆｉｒｓｔが“１”に設定されていない場合に、１つのｍｍｔ＿ｍｆｕ＿ｅｌｅｍｅｎｔ（）が含まれる。
【００８６】
ｈｅａｄｅｒｓ＿ｆｉｒｓｔが“１”に設定されている場合に、ｎｕｍ＿ＭＦＵｓだけのｍｍｔ＿ｍｆｕ＿ｅｌｅｍｅｎｔ（）がＭＰＵエレメントに含まれる。
【００８７】
本発明の実施形態に従って構成された受信器は、マルチメディアデータパケットを相手エンティティから受信する受信部と、上述したようなＭＭＴペイロードのフォーマットに従ってマルチメディアデータパケットに含まれた少なくとも１つのＭＦＵ又はＭＰＵ、あるいは、それの少なくとも一部を抽出して解析する解析部とを含んで構成される。
【００８８】
上述したようなＭＭＴペイロードのフォーマットは、ＭＰＵ及びＭＦＵの効率的な送信、アグリゲーション、及びフラグメンテーションを可能にする。
【００８９】
以上、本発明を具体的な実施形態を参照して詳細に説明してきたが、本発明の範囲及び趣旨を逸脱することなく様々な変更が可能であるということは、当業者には明らかであり、本発明の範囲は、上述の実施形態に限定されるべきではなく、特許請求の範囲の記載及びこれと均等なものの範囲内で定められるべきである。
【符号の説明】
【００９０】
１００  制御機能レイヤー
１１０  メディアコーディングレイヤー
１２０  カプセル化機能レイヤー
１３０  配信機能レイヤー
１４０  転送プロトコルレイヤー
１５０  レイヤー
【図１】
0005947454.tif 000002
【図２】
0005947454.tif 000003
【図３】
0005947454.tif 000004
【図４】
0005947454.tif 000005
【図５】
0005947454.tif 000006