(57)【要約】【課題】メディアデータに関する情報を送信するための装置を提供する。【解決手段】メディアデータに関する情報を送信するための装置は、制御器と、送受信器と、を含む。制御器は、メディアデータを復号化及びプレゼンティング(presenting)することに関連する制御情報を含むペイロード及びヘッダを含むパケットを生成するように構成される。送受信器は、生成されたパケットを送信するように構成される。制御情報は、メディアデータに関連する各データユニットの復号化時間からプレゼンテーション時間までの時間を示す情報を含む。【選択図】図３
2019186964.tif 000002
【特許請求の範囲】
【請求項１】
メディアデータに関する情報を送信するための装置であって、
前記メディアデータを復号化及びプレゼンティング(presenting)することに関連する制御情報を含むペイロード及びヘッダを含むパケットを生成するように構成される制御器と、
前記生成されたパケットを送信するように構成される送受信器と、を含み、
前記制御情報は、前記メディアデータに関連する各データユニットの復号化時間からプレゼンテーション時間までの時間を示す情報を含むことを特徴とする装置。
【請求項２】
前記制御情報は、
前記制御情報の長さを示す情報を含むことを特徴とする請求項１に記載の装置。
【請求項３】
前記制御情報は、
前記メディアデータと関連するサンプルの復号化順序が前記サンプルのプレゼンテーション順序と同一であるか否かを示す情報と、
前記メディアデータと関連する二つの独立的に復号化されたサンプル間のサンプルの数を示す情報と、
構成時間(composition time）と関連するオフセットの符号を示す情報と、
前記構成時間と関連するオフセットの値を示す情報と、を含むことを特徴とする請求項１に記載の装置。
【請求項４】
前記制御情報は、
前記制御情報の識別子を示す情報と、
前記制御情報のバージョンを示す情報と、
を含むことを特徴とする請求項１に記載の装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般的に伝送システムにおけるメディアデータ伝達に関するもので、より具体的には、ＭＭＴＰ(Moving Picture Experts Group(ＭＰＥＧ)media transport(ＭＭＴ) protocol)デカプセル化バッファのシグナリング及び動作に関する。
【背景技術】
【０００２】
ＭＭＴは、異種ＩＰネットワーク環境におけるマルチメディアサービスのために符号化 (coded)メディアデータ伝達技術を特定するデジタルコンテナ標準又はフォーマットである。伝達された符号化メディアデータは、指定された時間のデータ、すなわち、タイム(timed)データの特定ユニットに対して同期された復号化及び提供を要する視聴覚メディアデータ、及びサービス情況やユーザによる相互作用(interaction)に基づいて任意時間に復号化及び提供される他の類型のデータ、すなわちノンタイム(non-timed)データを全て含む。
【０００３】
ＭＭＴは、符号化されたメディアデータがリアルタイム伝送プロトコル（ＲＴＰ）、伝送制御プロトコル（ＴＣＰ）、ユーザデータグラムプロトコル（ＵＤＰ）のようなインターネットプロトコル（ＩＰ）を利用して、パケットに基づく伝達ネットワークを通して送信されることを前提として設計されたものである。ＭＭＴは、多様な伝達環境の特徴を考慮して設計される。
【発明の概要】
【発明が解決しようとする課題】
【０００４】
本開示は、ＭＭＴＰデカプセル化(de-capsulation)バッファのシグナリング及び動作を提供する。
【課題を解決するための手段】
【０００５】
第１の実施形態で、少なくとも一つの基地局と、送受信器及び処理回路を含むユーザ機器との間の無線通信のための装置が提供される。送受信器は、少なくとも一つの基地局に無線周波数信号を送信し、少なくとも一つの基地局から無線周波数信号を受信することで、少なくとも一つの基地局と通信可能となっている。送受信器は、マルチメディアコンテンツのフラグメントと関連するペイロード及びヘッダを有する制御メッセージを含むパケットを受信する。ヘッダは、制御メッセージが低遅延消費メッセージであるか否かを示すメッセージ識別子、制御メッセージの長さ、及び制御メッセージのバージョンを含む。処理回路は、メッセージ識別子に基づいて、制御メッセージが低遅延消費メッセージであるか否かを判定する。処理回路は、また、制御メッセージが低遅延消費メッセージであることに反応して、マルチメディアコンテンツのフラグメントのヘッダを受信する前にペイロード及び制御メッセージに基づいてパケットを構成する。
【０００６】
第２の実施形態で、少なくとも一つの基地局とユーザ機器との間の無線通信のための方法が提供される。その方法は、マルチメディアコンテンツのフラグメントと関連するペイロード及びヘッダを有する制御メッセージを含むパケットを受信するステップを含む。ヘッダは、制御メッセージが低遅延消費メッセージであるか否かを示すメッセージ識別子、制御メッセージの長さ、及び制御メッセージのバージョンを含む。上記方法はまた、メッセージ識別子に基づいて、制御メッセージが低遅延消費メッセージであるか否かを判定するステップを含む。上記方法は、また、制御メッセージが低遅延消費メッセージであることに反応して、マルチメディアコンテンツのフラグメントのヘッダを受信する前にペイロード及び制御メッセージに基づいてパケットを構成するステップを含む。
【０００７】
第３の実施形態で、少なくとも一つの基地局と、送受信器及び処理回路を含むユーザ機器との間の無線通信のためのシステムが提供される。送受信器は、少なくとも一つの基地局に無線周波数信号を送信し、少なくとも一つの基地局から無線周波数信号を受信することで、少なくとも一つの基地局と通信可能となっている。送受信器は、マルチメディアコンテンツのフラグメントと関連するペイロード及びヘッダを有する制御メッセージを含むパケットを受信する。ヘッダは、制御メッセージが低遅延消費メッセージであるか否かを示すメッセージ識別子、制御メッセージの長さ、及び制御メッセージのバージョンを含む。処理回路は、メッセージ識別子に基づいて、制御メッセージが低遅延消費メッセージであるか否かを判定する。処理回路は、また、制御メッセージが低遅延消費メッセージであることに反応して、マルチメディアコンテンツのフラグメントのヘッダを受信する前にペイロード及び制御メッセージに基づいてパケットを構成する。
【発明の効果】
【０００８】
以下の図面、詳細な説明及び請求範囲から他の技術的特徴が当業者に自明である。本開示及びその利点に対するより完全な理解のために、添付図面及び下記の説明を参照する。
【図面の簡単な説明】
【０００９】
【図１】本開示の多様な実施形態が実現される例示的通信システムを示す。
【図２】本開示による通信システム内の装置の例を示す。
【図３】本開示による通信システム内の装置の例を示す。
【図４】本開示によるＭＭＴＰデータ伝送環境におけるＭＭＴＰ入出力に対する例示的なブロック図を示す。
【図５】本開示によって受信側で受信器動向をシミュレーションし、バッファ遅延及びサイズ要件を推定するための例示的受信器バッファモデルのブロック図を示す。
【図６】本開示によってクライアント装置により受信データを管理するためのプロセスを示す。
【図７】本開示によってサーバにより提供時間を示すためのプロセスを示す。
【発明を実施するための形態】
【００１０】
本発明の詳細な説明に先立って、本明細書の全般にわたって使用される特定の単語及び語句の定義を説明することが好ましい。「接続（結合）する(couple)」という語句とその派生語は、２個以上の構成要素の間で、相互に物理的な接触状態にあるか否か、それら間の任意の直接的又は間接的通信を意味する。「送信する(transmit)」、「受信する(receive)」、及び「通信する(communicate)」という用語だけでなく、その派生語は、直接及び間接的な通信の両方ともを含む。「含む（include）」及び「備える（comprise）」という語句だけではなく、その派生語（derivatives thereof）は、限定ではなく、含みを意味する。「又は（or）」という用語は、「及び／又は（and/or）」の意味を包括する。「関連した（associated with）」及び「それと関連した（associated therewith）」という語句だけではなく、その派生語句は、「含む（include）」、「含まれる（be included within）」、「相互接続する（interconnect with）」、「包含する（contain）」、「包含される（be contained within）」、「接続する（connect to or with）」、「結合する（couple to or with）」、「疎通する（be communicable with）」、「協力する（cooperate with）」、「相互配置する（interleave）」、「並置する（juxtapose）」、「近接する（be proximate to）」、「接する（be bound to or with）」、「有する（have）」、及び「特性を有する（have a property of）」などを意味する。「制御部(controller)」は、少なくとも１つの動作を制御する装置、システム又はその部分を意味するもので、ハードウェア、ファームウェア、ソフトウェア、又は、それらのうちの２つ以上の組合せで実現できる。ある特定の制御器に関連した機能性は、ローカルでも遠隔でも、集中するか又は分散できることに留意しなければならない。「少なくとも一つの(at least one of)」という語句は、項目のリストとともに使用される時に、リストされた項目のうち一つ以上の異なる組み合せが使用され、そのリスト内の一つの項目のみが必要とされることができることを意味する。例えば、Ａ、Ｂ、及びＣのうち少なくとも一つは、Ａ、Ｂ、Ｃ、Ａ及びＢ、Ａ及びＣ、Ｂ及びＣ、そしてＡとＢとＣのような組み合せのうちいずれか一つを含む。
【００１１】
さらに、以下に記述される様々な機能は、１つ以上のコンピュータプログラムにより実現されるか又はサポートされ、そのプログラムの各々は、コンピュータ読み取り可能なプログラムコードで構成され、コンピュータ読み取り可能な媒体で実施される。「アプリケーション」及び「プログラム」という用語は、一つ以上のコンピュータプログラム、ソフトウェアコンポーネント、命令語セット、手順、関数、オブジェクト、クラス、インスタンス、関連データ、又は適したコンピュータ読み取り可能なプログラムコードの実現に適合したそれらの一部を称する。「コンピュータ読み取り可能なプログラムコード」という語句は、ソースコード、オブジェクトコード、及び実行コードを含むすべてのタイプのコンピュータコードを含む。「コンピュータ読み取り可能な媒体」という語句は、ＲＯＭ（Read Only Memory）、ＲＡＭ（Random Access Memory）、ハードディスクドライブ、ＣＤ（Compact Disc）、ＤＶＤ（Digital Video Disc）、又は任意の他のタイプのメモリのように、コンピュータによりアクセス可能なすべてのタイプの媒体を含む。「非一時的(non-transitory)」なコンピュータ読み取り可能な媒体は、一時的な電気又は他の信号を伝送する有線、無線、光学、又は他の通信リンクを除外する。非一時的なコンピュータ読み取り可能な媒体は、データを永久的に格納できる媒体、及び再記録可能な光学ディスクや削除可能なメモリ装置のようにデータが格納され、後でオーバーライティングされ得る媒体を含む。
【００１２】
他の所定の単語及びフレーズに対する定義は、本特許文書全体に基づいて決定される。ほとんどでなくとも多くの場合に、このような定義が、定義された用語及びフレーズの将来の使用と同様に過去における使用に対しても適用可能であることは、当業者であれば理解できる。
【００１３】
後述する図１〜図７、及び、本願で本発明の原理を説明するために使用される多様な実施形態は、単に例示に過ぎず、どのような方法であっても本発明の範囲を限定するものとして捉えてはならない。本発明の原理が適切に配列された装置又はシステムで実現できることは、当該技術分野における通常の知識を有する者には明らかである。
【００１４】
ＭＭＴ符号化及びメディア伝達が、「ＩＳＯ／ＩＥＣＪＴＣ１／ＳＣ２９／ＷＧ１１、異種環境における高効率符号化及び媒体伝達−パート１:ＭＰＥＧメディア伝送（ＭＭＴ）（Ｈｉｇｈ  ｅｆｆｉｃｉｅｎｃｙ  ｃｏｄｉｎｇ  ａｎｄ  ｍｅｄｉａ  ｄｅｌｉｖｅｒｙ  ｉｎ  ｈｅｔｅｒｏｇｅｎｅｏｕｓ  ｅｎｖｉｒｏｎｍｅｎｔｓ−Ｐａｒｔ１：ＭＰＥＧ  Ｍｅｄｉａ  Ｔｒａｎｓｐｏｒｔ（ＭＭＴ））、２０１２年７月」とのドキュメント及び標準化内容（ｓｔａｎｄａｒｄｓ  ｄｅｓｃｒｉｐｔｉｏｎ）において議論されている。上記のドキュメントは、ここに完全に記述されているように本開示中に引用される。異種ＩＰネットワーク環境上における符号化されたメディアデータの効率的かつ効果的な伝達のために、ＭＭＴはマッシュアップ(mash-up)アプリケーションのための多様な構成要素からなるコンテンツを構成するための論理的モデルと、パケット化及び適応化のような伝達階層処理のために符号化されたメディアデータに対する情報を伝達するデータの構造と、ハイブリッド伝達を含んだ、ＴＣＰ又はＵＤＰを通して使用される特定メディア類型や符号化方法と無関係なメディアコンテンツを伝達するためのパケット化方法及びパケット構造と、メディアコンテンツの提供及び伝達を管理するためのシグナリングメッセージのフォーマットと、交差階層通信を容易にするために階層間で交換されるべき情報のフォーマットと、を提供する。
【００１５】
ＭＭＴは、カプセル化、伝達、及びシグナリングを含む三個の機能領域を規定する。カプセル化機能領域は、メディアコンテンツの論理的構造、ＭＭＴパッケージ、及びＭＭＴ準拠エンティティにより処理されるデータユニットのフォーマットを規定する。ＭＭＴパッケージは、メディアコンテンツ及び適応的伝達に必要な情報を提供するためのメディアコンテンツ間の関係を含む構成要素を特定する。データユニットのフォーマットは、伝達プロトコルのペイロードとして格納されるか運搬され、また、格納と運搬との間を容易に変換できるように符号化されたメディアをカプセル化するように定義される。伝達機能領域は、ペイロードのフォーマット及び応用階層プロトコルを定義する。応用階層プロトコルは、マルチメディア伝達のための従来の応用階層プロトコルと比較して、ＭＭＴパッケージの伝達のために多重化を含む拡張された特性を提供する。ペイロードフォーマットは、特定メディア類型や符号化方法と無関係な符号化されたメディアデータを運搬するために定義される。シグナリング機能領域は、ＭＭＴパッケージの伝達及び消費を管理するためのメッセージのフォーマットを定義する。消費管理のためのメッセージがＭＭＴパッケージの構造をシグナリングするために使用され、伝達管理のためのメッセージがペイロードフォーマットの構造及びプロトコルの構成をシグナリングするために使用される。
【００１６】
ＭＭＴは、オーディオ、ビデオ、及びウィジェット、ファイルのような他の固定コンテンツといった時間連続的なマルチメディア伝達のための新たなフレームワークを定義する。ＭＭＴは、受信エンティティへのＭＭＴパッケージの伝達のためのプロトコル(すなわち、ＭＭＴＰ)を特定する。ＭＭＴＰは、プロトコルヘッダの一部としてＭＭＴＰパッケージの伝送時間をシグナリングする。その時間は、受信エンティティが各々の流入ＭＭＴパケットの伝送時間及び受信時間を検査することでデジッタリング(de-jittering）を実行できる。
【００１７】
本開示の実施形態は、ＭＭＴ仕様がＩＳＯＢＭＦＦファイルの低遅延伝送を許容するが、低遅延消費に適合した情報を提供できないことを認識及び参酌する。
【００１８】
図１は、本開示の多様な実施形態が実現される例示的通信システム１００を示す。図１に示す通信システム１００の実施形態は、例示のためのものである。本開示の範囲から逸脱しない通信システム１００の他の実施形態が使用されてもよい。
【００１９】
図１に示されるように、システム１００は、システム１００内の多様な構成要素間の通信を容易にするネットワーク１０２を含む。例えば、ネットワーク１０２は、ネットワークアドレス間インターネットプロトコル（ＩＰ）パケット、フレーム中継フレーム、非同期式伝送モード（ＡＴＭ）セル、又は、他の情報を伝送できる。ネットワーク１０２は、また、ケーブル及び衛星通信リンクのようなブロードキャスティングネットワークを含む異種ネットワークであってもよい。ネットワーク１０２には、一つ以上のＬＡＮ(local area networks)、ＭＡＮ(metropolitan area networks)、ＷＡＮ(wide area networks)、インターネットのようなグローバルネットワーク全体又は一部、又は、一つ以上の位置にある他の通信システムやシステムを含めることができる。
【００２０】
ネットワーク１０２は、少なくとも一つのサーバ１０４及び多様なクライアント装置１０６〜１１５との間の通信を容易にする。各々のサーバ１０４は、一つ以上のクライアント装置にコンピュータサービスを提供できるある適合したコンピュータ又は処理装置を含む。各々のサーバ１０４には、例えば、一つ以上の処理装置、命令及びデータを格納する一つ以上のメモリ、及びネットワーク１０２を通じて通信を容易にする一つ以上のネットワークインターフェースを含めることができる。
【００２１】
各々のクライアント装置１０６〜１１５は、ネットワーク１０２を介して少なくとも一つのサーバ又は他のコンピュータ装置と相互動作するある適合したコンピュータ又は処理装置を示す。この実施形態で、クライアント装置１０６〜１１５には、デスクトップコンピュータ１０６、モバイル電話やスマートフォン１０８、ＰＤＡ(personal digital assistant)１１０、ラップトップコンピュータ１１２、タブレットコンピュータ１１４、及びセットアップボックス及び／又はテレビ１１５を含めることができる。しかし、このほかに、追加的なクライアント装置を通信システム１００内で使用できる。
【００２２】
この実施形態で、一部クライアント装置１０８〜１１４は、ネットワーク１０２と間接的に通信する。例えば、クライアント装置１０８、１１０は、携帯電話基地局やｅＮｏｄｅＢのような一つ以上の基地局１１６を通じて通信する。また、クライアント装置１１２、１１４は、ＩＥＥＥ８０２．１１無線アクセスポイントのような一つ以上の無線アクセスポイント１１８を通じて通信する。これらは、単に例示のためのもので、各々のクライアント装置がネットワーク１０２と直接通信するか、または、ある適合した媒介装置やネットワークを通してネットワーク１０２と間接的にも通信できることに留意しなければならない。
【００２３】
以下で、より詳細に記述されるように、ネットワーク１０２は、ＭＭＴＰを利用したサーバ１０４からクライアント装置１０６〜１１５への例えば、イメージ、ビデオ、及び／又はオーディオのようなメディアデータの通信を容易にする。ＭＭＴも多様な伝達環境特性を考慮して設計される点を勘案すると、サーバ１０４は、ＭＭＴＰを利用してネットワークを通じてクライアント装置１０６〜１１５にメディアデータをブロードキャスティング又はストリーミングできる。また、サーバ１０４は、メディアデータと共に、又は別途にＭＭＴＰデカプセル化バッファ動作及び管理ＭＭＴＰデカプセル化バッファを通知するためにメッセージを通してバッファ除去モードシグナリングを提供できる。
【００２４】
図１は、通信システム１００の一例を図示しているが、多様な変形が図１に対してなされてもよい。例えば、システム１００は、任意個数の各構成要素を任意の適合した構成で含むこともできる。一般的に、コンピュータ及び通信システムは、広範囲な構成で示され、図１は、本開示の範囲をある特定構成に限定しない。図１は、本特許文書で開示される多様な特性が使用される一つの動作環境を示しているが、このような特性は、他の適合したシステムでも使用できる。
【００２５】
図２及び３は、本開示によるコンピュータシステム内の装置の例を示す。特に図２は、例示的なサーバ２００を示し、図３は、例示的なクライアント装置３００を示す。サーバ２００は、図１のサーバ１０４を示し、クライアント装置３００は図１のクライアント装置１０６〜１１５のうちの一つ以上を示す。
【００２６】
図２に示されるように、サーバ２００は、少なくとも一つの制御器２１０、少なくとも一つの格納装置２１５、少なくとも一つの通信部２２０、及び少なくとも一つの入出力（Ｉ／Ｏ）ユニット２２５間の通信をサポートするバスシステム２０５を含む。
【００２７】
制御器２１０は、メモリ２３０にロードされる命令語を実行する。制御器２１０には、ある適合した構成で任意の適合した個数及び類型のプロセッサ又は他の装置を含めることができる。制御器２１０の類型の例では、マイクロプロセッサ、マイクロ制御器、デジタルシグナリングプロセッサ、フィールドプログラマブルゲートアレイ、ＡＳＩＣ(application specific integrated circuits)、及び分離(discreet)回路を含む。
【００２８】
メモリ２３０及び永続格納装置（persistent storage）２３５が格納装置２１５の例として、(データ、プログラムコード、及び/又は一時的又は持続的な他の適合した情報といった)情報を格納し、その検索を容易にする任意の構造を示す。メモリ２３０は、ＲＡＭ(random access memory)又は他の適合した揮発性又は非揮発性格納装置である。永続格納装置２３５には、ＲＯＭ(read-only memory)、ハードドライブ、フラッシュメモリ、又は光ディスクのようにデータの長期格納をサポートする一つ以上の構成要素や素子を含めることができる。
【００２９】
通信部２２０は、他のシステム又は装置との通信をサポートする。例えば、通信部２２０には、ネットワーク１０２を通じた通信を容易にするネットワークインターフェースカード又は無線送受信器を含めることができる。通信部２２０は、適合した物理的及び/又は無線通信リンクを通じて通信をサポートできる。
【００３０】
Ｉ／Ｏユニット２２５は、データの入力及び出力を可能とする。例えば、Ｉ／Ｏユニット２２５は、キーボード、マウス、キーパッド、タッチスクリーン、又は他の適合した入力装置を通じてユーザ入力のためのインターフェースを提供できる。Ｉ／Ｏユニット２２５は、また、ディスプレイ、プリンタ、又は他の適合した出力装置に出力を送信できる。
【００３１】
なお、図２は、図１のサーバ１０４を示すものとして記述されているが、同一又は類似の構造をクライアント装置１０６〜１１５のうちの一つ以上にて使用できる。例えば、ラップトップ又はデスクトップコンピュータは、図２に示す構造と同一であるか、類似の構造を有していてもよい。
【００３２】
以下で、より詳細に記述されるように、サーバ２００は、メディアデータ及び/又はメディアデータと共に、又は別途に、ＭＭＴＰデカプセル化バッファ動作及び管理ＭＭＴＰデカプセル化バッファを通知するためにメッセージを通してバッファ除去モードシグナリングを提供できる。一例で、サーバ２００は、ＩＰネットワークを通じてメディアデータをブロードキャスティングするブロードキャストエンティティであってもよい。
【００３３】
図３に示されるように、クライアント装置３００は、アンテナ３０５、送受信器３１０、送信（ＴＸ）処理回路３１５、マイクロフォン３２０、及び受信（ＲＸ）処理回路３２５を含む。クライアント装置３００は、また、スピーカ３３０、制御器３４０、入出力（Ｉ／Ｏ）インターフェース（ＩＦ）３４５、キーパッド３５０、ディスプレイ３５５、及びメモリ３６０を含む。メモリ３６０は、オぺレーティングシステム（ＯＳ）３６１と一つ以上のアプリケーション３６３を含む。
【００３４】
送受信器３１０は、アンテナ３０５から、システム内の他の構成要素が伝送した流入ＲＦ信号を受信する。送受信器３１０は、流入ＲＦ信号をダウンコンバーティングして中間周波数（ＩＦ）やベースバンド信号を生成する。ＩＦ又はベースバンド信号は、ＲＸ処理回路３２５に送られ、ＲＸ処理回路３２５はベースバンド又はＩＦ信号をフィルタリング、復号化及び/又は二進化することによって、処理されたベースバンド信号を生成する。ＲＸ処理回路３２５は、処理されたベースバンド信号をスピーカ３３０(音声データなどの場合）又は制御器３４０(ウェブブラウジングデータの場合）に伝送する。
【００３５】
ＴＸ処理回路３１５は、マイクロフォン３２０からアナログやデジタル音声データを受信したり、制御器３４０から他の流出(outgoing)ベースバンドデータ(ウェブデータ、Ｅメール又はインタラクティブビデオゲームデータ)を受信する。ＴＸ処理回路３１５は、流出ベースバンドデータを符号化、多重化及び/又は二進化して、処理されたベースバンド又はＩＦ信号を生成する。送受信器３１０は、処理された流出ベースバンド又はＩＦ信号をＴＸ処理回路３１５から受信し、アンテナ３０５を通じて伝送されるベースバンド又はＩＦ信号をＲＦ信号にアップコンバートする。
【００３６】
制御器３４０には一つ以上のプロセッサ又は他の処理装置を含めることができ、クライアント装置３００の全般的な動作を制御するために、メモリ３６０に格納されたオぺレーティングシステム３６１を実行する。例えば、制御器３４０は、よく知らされている原理により送受信器３１０、ＲＸ処理回路３２５、及びＴＸ処理回路３１５により順方向チャネル信号の受信及び逆方向チャネル信号の送信を制御できる。一部の実施形態において、制御器３４０は、少なくとも一つのマイクロプロセッサ又はマイクロ制御器を含む。
【００３７】
制御器３４０は、メモリ３６０に存在している他のプロセス及びプログラムを実行できる。制御器３４０は、実行プロセスにより要求される場合、メモリ３６０内に又は外にデータを移動できる。一部の実施形態において、制御器３４０は、オぺレーティングシステム３６１に基づいて、又は、外部装置やオペレータから受信された信号に応じてアプリケーション３６３を実行するように構成される。また、制御器３４０はＩ／Ｏインターフェース３４５と接続され、クライアント装置３００にラップトップコンピュータ及びハンドヘルドコンピュータのような他の装置への接続機能を提供する。Ｉ／Ｏインターフェース３４５は、このようなアクセサリと制御器３４０との間の通信経路である。
【００３８】
制御器３４０は、また、キーパッド３５０及びディスプレイ３５５と接続される。クライアント装置３００のオペレータは、キーパッド３５０を使用してクライアント装置３００にデータを入力できる。ディスプレイ３５５は、液晶ディスプレイ、又はウェブサイトからテキスト及び/又は少なくとも制限されたグラフィックをレンダリングできる他のディスプレイであってもよい。
【００３９】
メモリ３６０は、制御器３４０と接続される。メモリ３６０の一部は、ＲＡＭ(random access memory）を含み、メモリ３６０の他の一部には、フラッシュメモリや他のＲＯＭ(read-only memory）を含めることができる。
【００４０】
以下でより詳細に記述されるように、クライアント装置３００は、低遅延消費(low delay consumption:ＬＤＣ)メッセージを受信する。例えば、クライアント装置３００は、ＬＤＣに従ってメディアデータを受信及び処理できる。一例で、クライアント装置３００は、ＩＰネットワークを通してメディアデータをブロードキャスティングするモバイル装置であってもよい。
【００４１】
図２及び３は、コンピュータシステム内の装置の例を示すが、多様な変更が図２及び３に対して可能である。例えば、特定のニーズに従って、図２及び３内の多様な構成要素を組み合わせるか、より細部化するか、又は、省略でき、追加構成要素を追加できる。特定実施形態では、制御器３４０は、一つ以上の中央処理ユニット（ＣＰＵ）及び一つ以上のグラフィック処理ユニット（ＧＰＵ）のような多様なプロセッサに分割できる。また、図３は、モバイル電話やスマートフォンで構成されるクライアント装置３００を示すが、クライアント装置は、例えば、非限定的にセットアップボックス、テレビ、及びメディアストリーミング装置を含む他の類型のモバイル又は固定装置として動作するように構成できる。また、コンピュータ及び通信ネットワークと同様に、クライアント装置及びサーバを広範囲な様々な構成とでき、図２及び３は、本開示を特定のクライアント装置やサーバに限定しない。
【００４２】
図４は、本開示によるＭＭＴＰデータ伝送環境４００におけるＭＭＴＰ入出力に対する例示的なブロック図を示す。この実施形態で、送信エンティティ４０５、例えば、図２のサーバ２００のようなサーバがＭＭＴＰに従って、伝送メディアを通して受信エンティティ４１０、例えば、図３のクライアント装置３００のようなクライアント装置にメディアデータを伝送する。メディアデータ４１５は、送信エンティティ４０５でＭＭＴＰに従って処理される。例えば、送信エンティティ４０５は、ＭＭＴプロセッシングユニット(ＭＰＵs)及びＭＭＴフラグメントユニット(ＭＦＵs)(例えば、ＭＰＵのフラグメント)であるメディアデータに対してＭＭＴパッケージカプセル化、符号化、伝達、及びシグナリングを実行できる。その次に、処理されたメディアデータがＭＭＴＰによる処理(例えば、カプセル化解除、復号化等)のために受信エンティティ４１０に(例えば、パケットとして)伝送される。受信エンティティ４１０で処理されたメディアデータは、その後、視覚的及び/又は聴覚的ディスプレイ装置によるユーザへの提供のためにＭＰＵ及び/又はＭＦＵとして上位階層プログラム(例えば、メディアプレーヤのような応用階層プログラム)に送られ、メディアデータの伝達を完了する。
【００４３】
図５は、受信側での受信器の動作をシミュレーションしバッファ遅延及びサイズ要件を推定するための本開示に係る例示的な受信器バッファモデル５００のブロック図を示す。本開示の多様な実施形態で、メディア伝達サーバ(又は、他のＭＭＴ認知ノード)のような送信エンティティ４０５が、一対多伝送システムにおけるメディアデータ伝達のための固定されたエンドツーエンド遅延を算出、判定及び/又は識別する。例えば、送信エンティティ４０５は、モデル５００を活用して、受信エンティティ４１０の受信器における受信制約上でパケットストリームに対して実行されるメディアデータ処理の影響を判定できる。例えば、送信エンティティ４０５は、上記モデルを活用して、要求されたバッファリング遅延及び要求されたバッファサイズを判定し、その情報をメディアデータを受信するエンティティに伝送できる。
【００４４】
この図示した例で、ＦＥＣ復号化バッファ５０５は、ＦＥＣ復号化と関連する遅延及び／又はバッファサイズ要件を推定するためのモデルである。ＦＥＣ復号化は、下位階層伝送がチャネルエラーから復元するためには十分でないか、又は、ネットワーク混雑によりパケット欠落や過度な遅延が発生する場合に、多くのアプリケーションで一般的なものである。ＦＥＣ復号化を実行するために、受信エンティティ４１０は、充分なソース（“Ｓ”）及びリペアデータ（“Ｐ”パリティデータ)がＦＥＣ復号化を実行するために使用可能となるまで、流入パケットが格納されるバッファを利用する。
【００４５】
この図示した例で、送信エンティティ４０５は、ＦＥＣ復号化と関連する遅延を推定するためにＦＥＣ復号化に関して受信エンティティ４１０が取るアクションを決定するためにＦＥＣ復号化バッファ５０５のモデルを利用する。すなわち、送信エンティティ４０５は、ＦＥＣ復号化バッファ５０５のモデルを利用して、ＦＥＣ復号化遅延を推定するために受信エンティティ４１０が取るアクションを予測する。このような送信エンティティ４０５によるＦＥＣ復号化バッファ５０５のモデリングは、ＦＥＣ復号化バッファ５０５が初期段階では空であるという仮定から開始する。続いて、伝送タイムスタンプｔｓを有する各々の流入パケットｉに対して、受信エンティティ４１０は、buffer_occupancy(バッファ占有)＋packet_size(パケットサイズ)<max_buffer_size(最大バッファサイズ)である場合に、ＦＥＣ復号化バッファ５０５を使用してパケットｉをバッファする。そうでない場合、受信エンティティ４１０は、パケットｉをバッファモデルに符合しないとして破棄する。受信エンティティ４１０は、次に、ＦＥＣがパケットｉに適用されるかを判定する。ＦＥＣがパケットｉに適用される場合、受信エンティティ４１０は、パケットｉが属するソースブロックｊを決定し、ソースブロックｊの最初のパケットの挿入時間ｔを決定し、挿入時間t+ＦＥＣ_buffer_timeでソースブロックｊの全てのパケットを(必要であれば、ＦＥＣ訂正後)デジッタバッファに移動し、復元パケットを破棄する。送信エンティティ４０５は、ＦＥＣ_buffer_timeを、ソースブロックの最初のパケットの受信からＦＥＣ復号化が試みられる時までのＦＥＣ復号化に必要なバッファ時間として利用する。この時間は、典型的には、ＦＥＣブロックサイズに基づいて算出される。
【００４６】
デジッタバッファ５１０は、パケットのデジッタリング、すなわち、パケットの遅延ジッタの除去と関連する遅延及び／又はバッファサイズ要件を推定するために送信エンティティにより使用されるモデルである。デジッタバッファは、究極的には、最大伝送遅延を前提にして、ＭＭＴＰパケットがソースからＭＭＴＰプロトコルスタックの出力まで固定された伝送遅延を経験することを保証する。受信エンティティ４１０は、最大伝送遅延より大きな伝送遅延を経験するデータユニットを非常に遅いとして破棄できる。
【００４７】
このような送信エンティティ４０５によるデジッタバッファ５１０のモデリングは、デジッタバッファ３０５が初期段階では空であるという仮定から開始する。次に、受信エンティティ４１０は、ＭＭＴＰパケットが到着する時にそのパケットをデジッタバッファ５１０内に挿入する。受信エンティティ４１０は、その次に、時間ｔｓ＋ΔでＭＭＴＰパケットを除去する。この場合、ｔｓはＭＭＴＰパケットの伝送タイムスタンプであり、Δはメディアデータに対してシグナリングされる固定されたエンドツーエンド(end-to-end)遅延である。デジッタリングが適用された後、正確に到着された(又はＦＥＣ／再伝送を通して復元された)全てのＭＭＴＰパケットは同一のエンドツーエンド遅延を経験したことになる。
【００４８】
ＭＭＴＰデカプセル化バッファ５１５は、ＭＭＴＰ処理と関連して、その出力を上位階層に送る前に遅延及び／又はバッファサイズ要件を推定するために送信エンティティにより使用されるモデルである。ＭＭＴＰプロセッサの出力は、ＭＦＵペイロード(低い遅延動作時)、完全な映画フラグメント、又は完全なＭＰＵである。ＭＰＵは、それらのサイズによって、より小さなパケットに分割されるか、又は、より大きなパケットに集合される。その後、デカプセル化(ＭＭＴＰパケット及びペイロードヘッダの除去)及び必要とされた分割解除(de-fragmentation)／集合解除(de-aggregation)が、ＭＭＴＰプロセシングの一部として実行される。ＭＰＵが幾つかのＭＭＴＰパケットに分割された場合に組立を実行するために、このプロシージャはデカプセル化遅延と呼ばれるあるバッファリング遅延を必要としてもよい。しかし、このような例示的実施形態で、デカプセル化遅延は、固定されたエンドツーエンド遅延の一環として見なされず、符号化されたメディア階層により消費されるＭＰＵの使用可能性は、エンティティがデカプセル化遅延と関係なく、そのＭＰＵを幾つかのＭＭＴＰパケットに分割することによって保障できる。送信エンティティ４０５によるモデルとして使用される時、バッファ(５０５、５１０、及び５１５)の各々は、例えば、クライアント装置３００のメモリ３６０のような受信エンティティのメモリで実現されることができる。
【００４９】
本開示の多様な実施形態で、ＭＭＴＰデカプセル化バッファ５１５は、次のように動作できる。ＭＭＴＰデカプセル化バッファ５１５は、初期段階で空であるとき、デジッタバッファ５１０によりデジッタリングが実行された後、ＭＭＴＰを受信する。集合したペイロードを運搬するＭＭＴＰパケットに対して、受信エンティティ４１０は、パケット及びペイロードヘッダを除去し、各々の単一データユニットを抽出する。分割されたペイロードを運搬するＭＭＴＰパケットに対して、全ての該当フラグメントが正確に受信されるまで、又は、同一分割されたデータユニットに属しないパケットが受信されるまで、パケットがバッファ内に保存される。以下でより詳細に記述するように、クライアントの動作モードによって、完全なＭＰＵ、映画フラグメント、又は単一ＭＦＵが復元されると、送信エンティティ４０５は、再構成されたデータをユーザにディスプレイするためにプレゼンテーション階層と同一の上位階層に伝達する。
【００５０】
上述した通り、ＬＤＣは、映画フラグメントヘッダのようなメタデータを受信する前に複数のサンプルに対する提供順序を規定する。本開示の実施形態は、ＭＭＴＰデカプセル化バッファ５１５からのデータ除去を始める前に、各々のサンプルの提供時間を算出するために使用及び／又は要求される情報をシグナリングするためのメッセージをさらに提供する。
【００５１】
したがって、本開示の実施形態は、映画フラグメントヘッダのようなメタデータを受信する前にクライアントによりメディアデータを復号化及び提供するのに必要な情報を提供する低遅延消費(ＬＤＣ)メッセージを提供する。このメッセージは、各々のサンプルのデューレーションがトラック拡張ボックス(Track Extends Box)内のデフォルトサンプルデューレーション(default_sample_duration)によりシグナリングされるように固定され、符号化依存構造がアセットを通して固定されていることを示す。このメッセージが使用される時、ＭＰＵの第１のサンプルの復号化時間値は、ＭＰＵの第１サンプルの提供時間よりfixed_presentation_time_offsetの合計だけサイズが少なく、sample_compositiontime_offset_value対のsample_composition_time_offset_signの最大値は‘１’である。
【００５２】
以下の＜表１＞はＬＤＣメッセージの例示的なシンタックスを提供する。
【００５３】
【表１】
2019186964.tif 000003
【００５４】
この図示した例で、「message_id」は、ＬＤＣメッセージの識別子を示し、「version」はＬＤＣメッセージのバージョンを示す。例えば、ＭＭＴ受信エンティティ(例えば、クライアント装置３００）は、このフィールドを使用して受信されたＬＤＣメッセージのバージョンを確認することができる。また、「length」は、ＬＤＣメッセージの長さをバイト単位にて示し、次のフィールドの最初バイトからＬＤＣメッセージの最後のバイトまでをカウントしたものである。値「０」は、このフィールドにおいて有効でなくてもよい。続いて、「base_presentation_time_offset」は、復号化時間と提供時間との間の時差に対するマイクロ秒単位の情報を提供する。各々のサンプルの提供時間は、この値だけ、復号化時間より大きくなり得る。これは、復号化されたメディアデータの再整列によってもたらされたサンプルの復号化時間と提供時間との間の差は含まない可能性もある。
【００５５】
また、「coding_dependency_structure_flag」は、サンプルの復号化順序及び提供順序が相異なるという指示を提供する。このフラグが「０」に設定されると、復号化順序がサンプルの提供順序と同一でなければならない。このフラグが「１」に設定されると、復号化順序はサンプルの提供順序と相異する必要があり、クライアントがサンプルの適合した復号化時間及び提供時間を算出できるように、このメッセージを通して詳細構成(composition)時間オフセットが提供されなければならない。また、「period_of_intra_coded_sample」は、独立的に符号化された二つのサンプル間にあるサンプルの個数を提供する。
【００５６】
図６は、本開示によるクライアント装置により受信データを管理するためのプロセス６００を示す。例えば、図６に示されたプロセスは、図４の受信エンティティ４１０により実行される。このプロセスは、図３のクライアント装置３００により実現できる。
【００５７】
このプロセスは、クライアント装置がバッファから複数のデータサンプルの各々のサンプルの提供時間に対する情報を含むメッセージを受信することによって始まる(動作６１０)。例えば、動作６１０で、クライアント装置は、クライアント装置にあるバッファから複数のデータサンプルの各々のサンプルの提供時間に対する情報を含むメッセージを受信する。このメッセージは、ＬＤＣメッセージであってもよく、他のＭＭＴシグナリングメッセージと共に含まれるか、又はクライアント装置におけるメディアコンテンツストリーミング開始時に含めることができる。一例で、このバッファは、図５のＭＭＴＰデカプセル化バッファ５１５である。メッセージ受信時間の前後に、例えばメッセージ受信後に、クライアント装置はメッセージと関連するメディアデータ伝送の受信を開始できる。上記メッセージは、メディアデータ伝送がクライアント装置により受信され始めてから受信できる。
【００５８】
クライアント装置は、複数のサンプル各々のサンプルに対する提供時間を算出する(動作６２０)。例えば、動作６２０で、ＬＤＣメッセージは、提供時間オフセット値、提供時間オフセットの符号、基本提供時間オフセット、独自符号化されたサンプル間のサンプルの個数、符号化依存構造フラグなどを含むことができる。
【００５９】
例示的な実施形態で、符号化依存構造フラグは、サンプルの符号化が提供順序と同一の順序になっているか否かを示す。提供順序は、サンプルがディスプレイされるように提供される順序である。符号化順序が提供順序と同一であると、サンプルを、それらが復号化されたのと同じ順序で除去できる。データのサンプルはフレームを示す。
【００６０】
他の例示的な実施形態で、提供時間は、基本提供時間オフセットを正又は負の提供時間オフセットに加算することによって算出される。符号は、提供時間オフセットが正であるか負であるかを示し、その値は、提供時間オフセットの値を示す。上記値は、マイクロ秒、ミリ秒、又は他の類型の時間で表現できる。例えば、基本提供時間オフセットがｔ＋４０であり、サンプルの提供時間オフセットがｔ＋１０であると、そのサンプルの提供時間はｔ＋５０である。
【００６１】
以後、クライアント装置は、提供時間に基づいてバッファからデータを除去し、再構成されたデータを上位階層に送る(動作６３０)。例えば、動作６３０で、クライアント装置は、提供時間(例えば、提供時間オフセット＋基本提供時間オフセット)に基づいてデータを除去できる。クライアント装置は、再構成されたデータをディスプレイ上でユーザに提供するためにプレゼンテーション階層と同一の上位階層に送る。
【００６２】
図７は、本開示によるサーバの提供順序を示すためのプロセス(７００)を示す。例えば、図７に示されたプロセスは図４の送信エンティティ４０５により実行される。このプロセスは、図２のサーバ２００により実現されることができる。
【００６３】
このプロセスは、サーバが受信データの提供順序に対する情報を含むメッセージを生成することで始まる(動作７１０)。例えば、動作７１０で、上記メッセージは各々のサンプルの提供時間を含むことができる。サーバは、例えば、データの各々のサンプルと関連する値及び符号を含むことができる。サーバは、また、基本提供時間オフセットを示す情報を上記メッセージ内に含むことができる。
【００６４】
以後、サーバは、そのメッセージをクライアント装置に送る(動作７２０)。例えば、動作７２０で、サーバは、そのメッセージをクライアントに送り、クライアント装置のＭＭＴＰデカプセル化バッファからのデータ除去動作及び管理をシグナリングする。この実施形態で、サーバは、メディアデータをクライアント装置に送るサーバと同一であるか又は相異なるサーバであってもよい。
【００６５】
図６及び７は、クライアントにより受信されたデータを管理してサーバにより提供順序を示す例示的なプロセスを各々図示しているが、多様な変更が図６及び７でなされてもよい。例えば、一連のステップが図示されたが、各々の図面で多様なステップが重複したり並べて発生したり、相異なる順序又は幾つか発生してもよい。
【００６６】
本開示は、例示的な実施形態と共に記述されたが、多様な変更及び修正案が当業者に提案され得る。本開示は、そのような変更及び修正が添付された請求範囲内に属する範囲内で包括する。
【００６７】
本出願の内容は、ある特定要素、ステップ、又は機能が請求範囲に含まれなければならない必須構成要素を意味することとして把握されてはならない。本発明の特許範囲は請求範囲だけにより限定される。
【図１】
2019186964.tif 000004
【図２】
2019186964.tif 000005
【図３】
2019186964.tif 000006
【図４】
2019186964.tif 000007
【図５】
2019186964.tif 000008
【図６】
2019186964.tif 000009
【図７】
2019186964.tif 000010