(57)【特許請求の範囲】
【請求項１】
ＨＥＶＣでタイル化された少なくとも１つのビデオ・ストリームに基づいてクライアント・デバイスの関心領域（ＲＯＩ）を決定する方法であって、前記ＨＥＶＣでタイル化されたビデオ・ストリームが全イメージ領域を含み、当該方法が、
前記クライアント・デバイスにおいて、前記ＨＥＶＣでタイル化されたビデオ・ストリームの前記全イメージ領域内に第１サブ領域を規定する第１ＲＯＩをレンダリングするためにＲＯＩビデオ・ストリームを受け取るステップであって、前記ＨＥＶＣでタイル化されたビデオ・ストリームにおけるＨＥＶＣタイルの位置がタイル位置情報によって規定される、ステップと、
前記クライアント・デバイスにおいて、前記ＲＯＩビデオ・ストリームの少なくとも１つのビデオ・フレームに関連付けられるＲＯＩ位置情報を供給するステップであって、前記ＲＯＩ位置情報が前記第１ＲＯＩの少なくとも第１位置を含む、ステップと、
前記クライアント・デバイスによって、前記ＨＥＶＣでタイル化されたビデオ・ストリームにおける１つ以上のＨＥＶＣタイルを、前記ＲＯＩ位置情報および前記タイル位置情報に基づいて特定するステップと、
前記クライアント・デバイスによって、前記ＨＥＶＣでタイル化されたビデオ・ストリームの前記全イメージ領域内に第２サブ領域を規定する第２ＲＯＩをレンダリングするために、前記１つ以上の特定されたＨＥＶＣタイルに関連付けられるビデオ・データを要求するステップと、
前記クライアント・デバイスによって、前記要求されたビデオ・データおよび前記ＲＯＩ位置情報に基づいて前記第２ＲＯＩをレンダリングするステップと、
を含む、方法。
【請求項２】
請求項１記載の方法において、前記ＲＯＩ位置情報を供給するステップが、更に、
前記ＲＯＩビデオ・ストリームの少なくとも第１イメージ・フレームの第１ＲＯＩ座標を供給するステップであって、前記第１ＲＯＩ座標が、第２ＲＯＩをレンダリングする指示を受け取る第１時間インスタンスで、前記第１ＲＯＩの第１位置を規定するステップを含み、
前記指示が、ユーザが出した指示である、方法。
【請求項３】
請求項２記載の方法において、前記指示が、前記第１ＲＯＩの位置の変更を示すＲＯＩベクトルを含み、前記第１ＲＯＩ座標および前記ＲＯＩベクトルが前記１つ以上のＨＥＶＣタイルを特定するのに使用される、方法。
【請求項４】
請求項２または３記載の方法において、前記ＲＯＩ位置情報を供給するステップが、更に、
前記ＲＯＩビデオ・ストリームの少なくとも第２イメージ・フレームの第２ＲＯＩ座標を供給するステップであって、前記第２ＲＯＩ座標が、処理の第２時間インスタンスで、前記第１ＲＯＩの第２位置を規定するステップを含み、前記処理が、前記クライアント・デバイスによって前記ＲＯＩビデオ・ストリームを受け取り、バッファし、および／またはデコードすることの１つであり、前記第１ＲＯＩ座標および前記第２ＲＯＩ座標が前記１つ以上のＨＥＶＣタイルを特定するのに使用される、方法。
【請求項５】
請求項１〜４の何れか一項記載の方法において、前記要求されたビデオ・データがＨＥＶＣでエンコードされ、前記第２ＲＯＩをレンダリングするステップが、
前記要求されたＨＥＶＣでエンコードされたビデオ・データに基づいて、デコードされたイメージ領域を形成するステップを含む、方法。
【請求項６】
請求項１〜５の何れか一項記載の方法において、前記ＲＯＩ位置情報を供給するステップが、更に、
前記クライアント・デバイスによって未だ受け取られていない前記ＲＯＩビデオ・ストリームの少なくとも１つのビデオ・フレームに関連付けられる先行位置情報を供給するステップを含み、前記先行位置情報が前記全イメージ領域における第２ＲＯＩの第２位置を含む、方法。
【請求項７】
請求項６記載の方法において、前記先行位置情報が前記クライアント・デバイスによって未だ受け取られていない前記ＲＯＩビデオ・ストリームの１つ以上のイメージ・フレームにおける１つ以上の時間シフトされた第１ＲＯＩ座標を含み、
前記時間シフトされた第１ＲＯＩ座標が前記１つ以上のイメージ・フレームよりも前に前記クライアント・デバイスに供給される、方法。
【請求項８】
請求項１〜７の何れか一項記載の方法において、
前記ＲＯＩ位置情報の少なくとも一部が前記ＲＯＩビデオ・ストリームのビットストリームにおいて前記クライアント・デバイスに、ＳＥＩメッセージとして、または前記ビットストリームにおけるＲＯＩ座標の位置を規定するＲＯＩ座標フラグとして、搬送され、或いは、
前記ＲＯＩ位置情報の少なくとも一部が、ＭＰＥＧトランスポート・ストリームにおいて、または、前記ＭＰＥＧトランスポート・ストリームにおけるＤＶＢで規定されたＳＡＤ（同期補助データ）パケットとして、前記クライアント・デバイスに搬送され、任意で、前記ＳＡＤパケットが、時間シフトされたＲＯＩ座標を含み、或いは、
前記ＲＯＩ位置情報の少なくとも一部がＭＰＥＧ−４ストリームの所定のボックスにおいて搬送され、或いは、
前記ＲＯＩ位置情報の少なくとも一部が、ウォータマークとして、前記クライアント・デバイスに搬送される、方法。
【請求項９】
請求項１〜７の何れか一項記載の方法において、前記ＲＯＩ位置情報がＭＰＥＧ−４ストリームの専用のメタデータ・トラックとして搬送され、前記メタデータ・トラックが、特定のサンプル入力コードを有する、メタデータとしてのＲＯＩ座標を収容する、方法。
【請求項１０】
請求項１〜９の何れか一項記載の方法において、
前記タイル位置情報の少なくとも一部が、前記ＨＥＶＣでタイル化されたビデオ・ストリームのｍｏｏｖまたはｍｏｏｆボックスにおいて、前記ＨＥＶＣでタイル化されたビデオ・ストリームの一部として前記クライアント・デバイスに供給され、加えて／或いは、
前記タイル位置情報の少なくとも一部が、空間的マニフェスト・ファイルで前記クライアント・デバイスに供給され、前記空間的マニフェスト・ファイルが、１つ以上の配信ノードを位置決定するための１つ以上のストリーム識別子を含み、前記１つ以上の配信ノードが、前記ＨＥＶＣでタイル化されたビデオ・ストリームおよび／または前記ＲＯＩビデオ・ストリームを前記クライアント・デバイスに配信するように構成される、方法。
【請求項１１】
請求項１〜１０の何れか一項記載の方法において、前記１つ以上の特定されたＨＥＶＣタイルに関連付けられた前記ビデオ・データが、空間的マニフェスト・ファイルに基づいて要求され、前記空間的マニフェスト・ファイルが、少なくとも１つ以上のＨＥＶＣタイル識別子と、前記タイル位置情報とを含む、方法。
【請求項１２】
請求項１１記載の方法において、前記空間的マニフェスト・ファイルが、更に、１つ以上のＲＯＩビデオ・ストリームに関連付けられる１つ以上のＲＯＩビデオ・ストリーム識別子を含む、方法。
【請求項１３】
請求項１２記載の方法において、前記１つ以上のＲＯＩビデオ・ストリーム識別子の内少なくとも１つは、前記ＲＯＩ位置情報が時間と共に変化することを示す動的なインジケータに関連付けられる、方法。
【請求項１４】
請求項１〜１３の何れか一項記載の方法において、前記特定するステップが、前記第１ＲＯＩと重複する１つ以上のＨＥＶＣタイルを特定することを含む、方法。
【請求項１５】
関心領域（ＲＯＩ）をレンダリングするクライアント・デバイスであって、
ＨＥＶＣでタイル化されたビデオ・ストリームの全イメージ領域内に第１サブ領域を規定する第１ＲＯＩをレンダリングするためにＲＯＩビデオ・ストリームを受け、前記ＨＥＶＣでタイル化されたビデオ・ストリームにおけるＨＥＶＣタイルの位置が、タイル位置情報によって規定され、
前記ＲＯＩビデオ・ストリームの少なくとも１つのビデオ・フレームに関連付けられるＲＯＩ位置情報を受け、前記ＲＯＩ位置情報が前記第１ＲＯＩの第１位置を少なくとも含み、
前記ＨＥＶＣでタイル化されたビデオ・ストリームにおける１つ以上のＨＥＶＣタイルを、前記ＲＯＩ位置情報および前記タイル位置情報に基づいて特定し、
前記ＨＥＶＣでタイル化されたビデオ・ストリームにおける前記全イメージ領域内に第２サブ領域を規定する第２ＲＯＩをレンダリングするために、ビデオ・データを要求し、
前記要求されたビデオ・データおよび前記ＲＯＩ位置情報に基づいて前記第２ＲＯＩをレンダリングする、
ように構成されるクライアント・デバイス。
【請求項１６】
請求項１５記載のクライアント・デバイスにおいて、
当該クライアント・デバイスが、前記ＨＥＶＣでタイル化されたビデオ・ストリームのｍｏｏｖまたはｍｏｏｆボックスにおいて、前記ＨＥＶＣでタイル化されたビデオ・ストリームの一部として前記タイル位置情報の少なくとも一部を受けるように構成され、加えて／或いは、
当該クライアント・デバイスが、空間的マニフェスト・ファイルで前記タイル位置情報の少なくとも一部を受けるように構成され、前記空間的マニフェスト・ファイルが、１つ以上の配信ノードを位置決定するための１つ以上のストリーム識別子を含み、前記１つ以上の配信ノードが、前記ＨＥＶＣでタイル化されたビデオ・ストリームおよび／または前記ＲＯＩビデオ・ストリームを前記クライアント・デバイスに配信するように構成される、クライアント・デバイス。
【請求項１７】
請求項１５または１６記載のクライアント・デバイスにおいて、当該クライアント・デバイスが、前記ＲＯＩビデオ・ストリームのビットストリームにおける前記ＲＯＩ位置情報の少なくとも一部を、ＳＥＩメッセージとして、または前記ビットストリームにおけるＲＯＩ座標の位置を規定するＲＯＩ座標フラグとして受けるように構成され、或いは、
当該クライアント・デバイスが、前記ＲＯＩ位置情報の少なくとも一部を、ＭＰＥＧトランスポート・ストリームにおいて、または、前記ＭＰＥＧトランスポート・ストリームにおけるＤＶＢで規定されたＳＡＤ（同期補助データ）パケットとして受けるように構成され、任意で、前記ＳＡＤパケットが、時間シフトされたＲＯＩ座標を含み、或いは、
当該クライアント・デバイスが、前記ＲＯＩ位置情報の少なくとも一部を、ＭＰＥＧ−４ストリームの所定のボックスにおいて受けるように構成され、或いは、
当該クライアント・デバイスが、前記ＲＯＩ位置情報の少なくとも一部を、ウォータマークとして受けるように構成される、クライアント・デバイス。
【請求項１８】
請求項１５または１６記載のクライアント・デバイスにおいて、当該クライアント・デバイスがＭＰＥＧ−４ストリームにおいて前記ＲＯＩ位置情報の少なくとも一部を受けるように構成され、前記ＲＯＩ位置情報が前記ＭＰＥＧ−４ストリームの専用のメタデータ・トラックとして搬送され、前記メタデータ・トラックが、特定のサンプル入力コードを有する、メタデータとしてのＲＯＩ座標を収容する、クライアント・デバイス。
【請求項１９】
コンピュータのメモリにおいて起動されると、請求項１〜１４の何れかに記載の方法のステップを実行するように構成されるソフトウェア・コード部を有するコンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、関心領域（ＲＯＩ:region-of-interest）の決定に関するものである。排他的ではないが、特に、ＨＥＶＣでタイル化された１つ以上のビデオ・ストリームに基づいて関心領域を決定する方法、関心領域の決定およびレンダリングのためのクライアント・デバイス、関心領域を決定およびレンダリングするためのビデオ・ストリームおよびデータ構造を格納するための非一時的コンピュータ可読記憶媒体、並びに当該方法を用いたコンンピュータ・プログラム製品に関するものである。
【背景技術】
【０００２】
過去数年にわたり、カメラおよびイメージ処理技術の両方の進化により、より高い解像度の記録を可能にするのみならず、複数のカメラの出力をスティッチングも可能にする。これにより、カメラのセットが、８Ｋ×４Ｋよりも高い解像度を有する全(full)３６０度カメラで共に記録することができる。
【０００３】
これらの発展は、ユーザがビデオを経験する方法を変更するのを可能にする。従来は、例えばフットボールの試合の放送は、ディレクタによって慎重に整列および制御された一連のカメラ・ショットを含む。このようなブロードキャスト・ストリームでは、最終的なストリームでの各カメラの移動は、カメラ自体の位置、角度またはズーム・レベルへの物理的な変更に対応する。しかしながら、高解像度のパノラマ・ビデオは、ユーザ（および／またはディレクタ）が物理的な意味でカメラを操作する必要がなく視聴している（指示している）ビデオとのユーザ（および／またはディレクター）の相互作用をある程度可能にする。パン・チルト・ズームの相互作用を用いて、高解像度パノラマ・ビデオから、ユーザまたはディレクタが関心のあるビデオのサブ領域を抽出するのを可能にする。このサブ領域は、関心領域（ＲＯＩ）と称されることがある。
【０００４】
特定の使用例では、時間内の如何なる所与の瞬間で、特定のユーザは全ビデオ・パノラマのサブセットを視聴しているに過ぎないため、帯域幅要件は、ユーザが関心のあるビデオ部分のみを送ることによって減らすことができる。このような機能性を達成することができる数多くの技術がある。これら技術の１つは、所謂、タイル化されたストリーミング技術であり、これを用いて、全ビデオ・パノラマが多数の独立したエンコード・ビデオに分割される。これにより、クライアントは多数のデコーダを有し、必要であれば数多くのこのような独立したビデオでスティッチングすることによって、如何なる全ビデオ・パノラマ部分も再構築するのを可能にする。
【０００５】
しかしながら、大部分のユーザ・シナリオでは、ユーザが、ビデオ・パノラマと継続的に相互作用する必要はなく、或いは望まれてさえいない。フットボールの試合の場合では、例えば、ユーザは特定の時点（例えば、画面外でファイルが行われたが、ディレクタが代わりにボールを追従することを決めた時）にビデオとの相互作用に関心があるに過ぎないことが想像され得る。しかしながら、ほとんどの時間では、ユーザはディレクタのリードを追従するのを望むに過ぎないこともある。このような場合、タイル化されたストリーミングの使用は、ビデオをストリーミングする最も効率的な方法ではない。この理由の１つに、エンコーディング方式で使用される時間的および空間的予測は最適化されないという事実がある。何故ならば、時間的および空間的予測は、タイル・サイズによって制限されるからである。第２の理由は、任意の所与のタイルのセットは、ほとんど正確にはＲＯＩを含まないことになるために、幾らかの追加のピクセル／マクロブロックが送られ、これらは所与のＲＯＩを再構築するのに厳格には必要とされないということである。
【０００６】
Ｍａｒｖｌａｎｋａｒ．Ａらによる記事「An interactive region-of-interest video streaming system for online lecture viewing（オンライン講義視聴のためのインタラクティブな関心領域のビデオ・ストリーミング・システム）」ＰａｃｋｅｔＶｉｄｅｏ Ｗｏｒｋｓｈｏｐ（ＰＶ）、２０１０年第１８回Ｉｎｔｅｒｎａｔｉｏｎａｌ、第６４から７１頁、２０１０年１２月１３日から１４日には、「トラッキング・タイル」のコンセプトが説明される。このトラッキング・タイルは、独立してエンコードされたビデオであり、連続的に更新されたビデオ・パノラマの切り取り(crop)を含む。トラッキング・タイル・モードを選択することによって、ユーザは、ビデオ・パノラマ自体の周囲をナビゲートする必要なく、ビデオ・パノラマにおいて移動する特定の関心ポイント(point of interest)（例えば、フットボールの試合でのボールの位置）を受動的に追従することができる。ビデオ・パノラマ内のトラッキング・タイルの位置は、規則的なブロードキャストが行われるのと同様の方法で、ディレクタによって制御される、或いは、自動イメージ認識システムによって制御されるということが想像され得る。
【０００７】
トラッキング・タイルの使用により、ビデオ・パノラマの中をナビゲートする自由をユーザに提供し、ユーザが関心ポイントを受動的に追従するのを可能にするが、Ｍａｖｌａｎｋａｒらによるトラッキング・タイルのコンセプトは、トラッキング・タイルの追従からパノラマ自体を通じたユーザ・ナビゲーティングとのシームレスな移行を実行することはできない。フットボールの試合でボールを追従するトラッキング・タイルを視聴するユーザが想定される場合、ユーザは突然、例えば行われたファウルを見るために、より少し左方向に移動したいと望むこともある。
【０００８】
Ｍａｖｌａｎｋａｒらにより説明されるトラッキング・タイル方式ではシームレスな移行は可能ではない。何故ならば、システムは、所与の時点でビデオ・パノラマにおけるトラッキング・タイルの位置を認識しないからである。つまり、ユーザは、パノラマ自体の特定の位置を見つけなければならず、これにより、連続的な経験が阻害される。トラッキング・タイル・モードとユーザ制御モード間の切り替えは重大な時間を要し、リソースの浪費という結果となる。何故ならば、ユーザが関心を有しないビデオ・タイルがレンダリングされ、表示されるからである。
【０００９】
したがって、従来技術では、クライアントに対し、広視野イメージ領域を有するＲＯＩの効率的なストリーミングを可能にする方法およびシステムを改良する必要性がある。更に、従来技術では、クライアントへの単一ストリームに基づくＲＯＩのストリーミング（タイル化されていないモード）と、クライアントへの１つ以上の別個のタイル・ストリームに基づくＲＯＩのストリーミング（タイル化されたモード）との間をスムーズまたは一層のことシームレスに切り替えるのを可能にすることの必要性がある。
【発明の概要】
【発明が解決しようとする課題】
【００１０】
本発明の目的は、従来技術で知られる欠点の内少なくとも１つを減らすかまたは除去することである。
【課題を解決するための手段】
【００１１】
第１の態様では、本発明は、少なくとも１つのＨＥＶＣでタイル化された（パノラマ）ビデオ・ストリームに基づいてクライアント・デバイスの関心領域（ＲＯＩ）を決定および／またはレンダリングする方法に関する。
【００１２】
一実施形態では、本方法は、好ましくはクライアント・デバイスにおいて、ＨＥＶＣでタイル化されたビデオ・ストリームの全イメージ領域内に第１サブ領域を規定する第１ＲＯＩをレンダリングするためにＲＯＩビデオ・ストリームを受け取るステップであって、ＨＥＶＣでタイル化されたパノラマ・ビデオにおけるＨＥＶＣタイルの位置がタイル位置情報によって規定される、ステップと、好ましくはクライアント・デバイスにおいて、ＲＯＩビデオ・ストリームの少なくとも１つのビデオ・フレームに関連付けられるＲＯＩ位置情報を供給するステップであって、ＲＯＩ位置情報が第１ＲＯＩの少なくとも第１位置を含む、ステップと、好ましくはクライアント・デバイスにおいて、ＨＥＶＣでタイル化されたビデオ・ストリームにおける１つ以上のＨＥＶＣタイルを、ＲＯＩ位置情報およびタイル位置情報に基づいて特定するステップであって、好ましくは、第１ＲＯＩと重複する１つ以上のＨＥＶＣタイルを特定するステップと、好ましくはクライアント・デバイスにおいて、ＨＥＶＣでタイル化されたビデオ・ストリームが有する全イメージ領域内に第２サブ領域を規定する第２ＲＯＩをレンダリングするために、１つ以上の特定されたＨＥＶＣタイルに関連付けられるビデオ・データを要求するステップと、を含む。なお、本発明のベスト・モードが、本方法のステップを実行するクライアント・デバイスに関して規定されるが、本発明はまた、本発明による方法の特定のステップがクライアント・デバイス以外のエンティティによって実行される実施形態も想定することに留意されるべきである。例えばＲＯＩ位置情報およびタイル位置情報がクライアント・デバイスとは異なる別のエンティティ（例えば、サーバ・コンピュータのような、クライアント・デバイスに接続されるデバイス）に供給される場合は、当該別のエンティティ（他方のデバイス）は上記の特定ステップを実行してもよい。
【００１３】
したがって、ＲＯＩストリームは、ＨＥＶＣでタイル化されたビデオ・ストリームの全イメージ領域におけるサブ領域（ＲＯＩ）のコンテンツ（例えばビデオ・データ）を含んでもよい。ＨＥＶＣでタイル化されたビデオは、高解像度または極めて(ultra)高解像度ビデオでもよい。或いは、ＨＥＶＣでタイル化されたストリームが、数多くの異なるビデオ（例えば異なるカメラ・アングル）から形成（構成／スティッチ）されてもよい。ＲＯＩストリームの再生の間、ＲＯＩの位置（ＨＥＶＣでタイル化されたストリームにおいてＨＥＶＣでタイル化されたイメージ領域内のサブ領域が有する空間的位置または方向）は、時間と共に変化する。
【００１４】
タイル化されていないＲＯＩストリームに基づくＲＯＩのレンダリング（ＲＯＩストリーミング・モード）、例えば、従来のタイル化されていないＭＰＥＧストリームから、ＨＥＶＣタイル（タイル化されたストリーミング・モード）とも称されるＨＥＶＣでタイル化された１つ以上のストリームに基づくＲＯＩのレンダリングへとスティッチングするとき、ＲＯＩビデオ・ストリームにおける少なくとも１つのイメージ・フレームの位置（即ち、ＲＯＩ座標）を含むＲＯＩ位置情報を使用して、１つ以上のＨＥＶＣタイルにおけるＨＥＶＣでエンコードされたビデオ・データを決定することができる。当該ＨＥＶＣでエンコードされたビデオ・データは、クライアント・デバイスがＨＥＶＣタイルのストリーミング・モードを開始するときに使用（例えば、要求、取り出しおよびレンダリング）することになる。ＲＯＩストリーム（ＲＯＩビデオ・ストリームとも称される）におけるＲＯＩの位置は、フレーム・レベルで、即ち、クライアント装置によって受け取られたビデオ・フレームで供給される。その結果、タイル化されたストリーミング・モードへのスムーズまたはシームレスな移行を実現することができる。
【００１５】
ＨＥＶＣ規格は、所謂ＨＥＶＣタイルをサポートする。ＨＥＶＣエンコーダを構成して、ビデオ・フレームを、所謂ＨＥＶＣタイルのビデオに分割する。ここでは、ＨＥＶＣタイルはＣＴＵを特定のグルーピングによって規定される矩形領域である。ＨＥＶＣタイルは、パノラマ・ビデオのイメージ領域を多数の隣接する矩形領域に分割する。ここでは、ＨＥＶＣタイルの境界は、行および列方向のＨＥＶＣタイル境界によって規定される。本出願では、ＨＥＶＣタイルを含むＨＥＶＣでエンコードされたビデオ・ストリーム（ＨＥＶＣストリーム、ＨＥＶＣビデオ、またはＨＥＶＣビデオ・ストリームとも称される）は、ＨＥＶＣでタイル化されたビデオ・ストリームと称されることもある。ＨＥＶＣタイルは、別個に要求および取り出されてもよく、ＨＥＶＣタイル・ストリームとも称される。これらのＨＥＶＣタイル・ストリーム／ＨＥＶＣタイルは、共に、ＨＥＶＣでエンコードされたビデオを形成する。
【００１６】
ＨＥＶＣタイルは、当初、ＨＥＶＣでタイル化されたストリームを並列で処理（エンコードおよびデコード）されるために、マルチ・コア・プロセッサを使用したビデオ・データのエンコードおよびデコード用にＨＥＶＣ規格で導入されたものである。ＨＥＶＣでタイル化されたストリームはまた、ＨＥＶＣでタイル化されたストリームにおいてＨＥＶＣタイルが有するサブセットのみの取り出しおよび／または再生のために使用される。
【００１７】
このようなサブセットは、例えば、パノラマ・ビデオ（ＨＥＶＣでタイル化されたビデオ）のイメージ領域（全イメージ領域）内の／イメージ領域（全イメージ領域）が有する関心の領域（ＲＯＩ）、例えばサブ領域に関する。その場合、デコーダが多数フレームにわたるＨＥＶＣタイルのサブセットだけをデコードできるように、ＨＥＶＣタイルは、経時的に独立してエンコードされなければならない。独立してデコード可能なＨＥＶＣタイルの当該セットを生成するために、ＨＥＶＣ規格は、ＨＥＶＣエンコーダが、１つ以上のＨＥＶＣタイルの境界内でビデオ・コーディング（例えばモーション・ベクトルおよびイン・ループ・フィルタ）の時間的予測を制限するように構成されるのを可能にする。単一のＨＥＶＣデコーダによるＨＥＶＣタイルの処理は、ＨＥＶＣタイル・ストリームごとに別個のデコーダ（またはデコーダ・インスタンス）を必要とする他のコーデックを用いて、従来技術で説明されるタイル方式と比較して、リソースの点で著しい利点を提供する。
【００１８】
本開示にて説明するように、タイルのコンセプトは、異なるビデオコーデックによってサポートされる。例えば、例示の高効率ビデオ・コーディング（ＨｉｇｈＥｆｆｉｃｉｅｎｃｙ Ｖｉｄｅｏ Ｃｏｄｉｎｇ）（ＨＥＶＣ）は、独立してデコード可能なタイル（ＨＥＶＣタイル）の使用を可能にする。ＨＥＶＣタイルは、エンコーダによって生成され、メディア・ストリームの各ビデオ・フレームを数多くの行および列（「タイルのグリッド(a grid of tiles)」）に分割する。タイルのグリッドは、コーディング・ツリー・ブロック（ＣＴＢ）のユニットで表現される所定の幅と高さを有するタイルを規定する。ＨＥＶＣのビットストリームは、ビデオ・フレームがどのようにタイルに分割されるべきかについてデコーダに通知するためのデコーダ情報を含む。デコーダ情報は、ビデオ・フレームのタイル分割について異なる方法でデコーダに通知してもよい。１つの変形態様では、デコーダ情報は、ｎ×ｍ個のタイルの均一グリッドに関する情報を含んでもよい。ここでは、グリッド内のタイルのサイズは、フレームの幅およびＣＴＢサイズに基づいて導き出す(deduce)ことができる。丸めによる不正確さのために、全てのタイルが、全く同一サイズを有するわけではない。他の変形態様では、デコーダ情報は、（例えばコーディング・ツリー・ブロックのユニットで）タイルの幅と高さに関する明示的な情報を含んでもよい。この方法では、ビデオ・フレームは、異なるサイズのタイルに分割されてもよい。最後の行および最後の列のタイルについてのみ、そのサイズが残りの数のＣＴＢから導出される。その後に、パケタイザーは、生のＨＥＶＣビットストリームを、トランスポート・プロトコルによって使用される適切なメディア・コンテナにパケット化する。
【００１９】
独立してデコード可能なタイルをサポートする他のビデオコーデックには、ＧｏｏｇｌｅのビデオコーデックＶＰ９、またはある程度は、ＭＰＥＧ−４パート１０のＡＶＣ／Ｈ．２６４（高度ビデオ・コーディング（ＡＶＣ; Advanced Video Coding）規格）が含まれる。ＶＰ９では、コーディング依存性が垂直方向のタイル境界に沿って損なわれる。このことは、同一タのイル行の２つのタイルが同時にデコードされることを意味する。同様に、ＡＶＣエンコーディングでは、スライスが使用されて、各フレームを多数行に分割する。ここでは、これら行の各々は、メディア・データが独立してデコード可能であるという意味でタイルを規定する。したがって、本開示では、「ＨＥＶＣタイル」なる用語は、ＨＥＶＣ規格にしたがうタイルのみに制限されるのではなく、全般的に、ビデオ・フレームのイメージ領域内で、任意に形状および／または寸法を有するサブ領域を規定するものである。ここでは、タイルの境界内のメディア・データは独立してデコード可能である。他のビデオコーデックでは、セグメントまたはスライスのような他の用語が、このように独立してデコード可能な領域のために使用される。なお、本発明は、ＨＥＶＣ（例えばＶＰ９）とは異なる、或いはＨＥＶＣから（将来的に）導出されるビデオコーデックがビデオをエンコードするのに適した特性を有する限りにおいて、これらビデオコーデックの用途に同等に適していることに更に留意されるべきである。これにより、ビデオを表すイメージの異なる領域（サブ領域）は、単一のエンコーディング・プロセスで独立してエンコードすることができ、また、これにより、独立してエンコードされた領域は、単一のデコーディング・プロセスでデコードすることができる。独立してという語は、エンコーディング依存性がこれら領域の間で何ら存在しないように、コーディングが実行されるという意向に関するものである。
【００２０】
一実施形態では、本方法は、更に、要求されたビデオ・データおよびＲＯＩ位置情報に基づいて第２ＲＯＩをレンダリングするステップを含む。
【００２１】
一実施形態では、ＲＯＩ位置情報を供給するステップが、更に、ＲＯＩビデオ・ストリームの少なくとも第１イメージ・フレームの第１ＲＯＩ座標を供給するステップであって、第１ＲＯＩ座標が、第２ＲＯＩをレンダリングする指示を受け取る第１時間インスタンスで、第１ＲＯＩの第１位置を規定するステップを含み、好ましくは、上記指示は、ユーザが出した指示である。本実施形態では、フレームのＲＯＩ座標は、クライアント・デバイスが指示された瞬間に、例えばユーザ相互作用を通じて、クライアント・デバイスによって処理され、ＨＥＶＣタイルのストリーミング・モード（即ち、所定の（「ディレクタ・カット」の）ＲＯＩをレンダリングするＲＯＩストリームではなく、ＨＥＶＣタイルに基づくユーザが開始するＲＯＩのレンダリング）に切り替えるのに必要とされる１つ以上のＨＥＶＣタイルを決定するのに使用する。
【００２２】
一実施形態では、上記指示は、第１ＲＯＩの位置の変更を示すＲＯＩベクトルを含み、第１ＲＯＩ座標およびＲＯＩベクトルが１つ以上のＨＥＶＣタイルを特定するのに使用される。ＲＯＩベクトルは、特定のユーザ相互作用（例えば、パニング、ズーミング、および／またはチルティング）と関連付けられ、また、要求されたユーザ相互作用に適したタイル表現を選択するのに使用される。
【００２３】
一実施形態では、ＲＯＩ位置情報を供給するステップが、更に、ＲＯＩビデオ・ストリームの少なくとも第２イメージ・フレームの第２ＲＯＩ座標を供給するステップであって、第２ＲＯＩ座標が、処理（受け取り、バッファ、および／またはデコード）の第２時間インスタンスで、第１ＲＯＩの第２位置を規定するステップを含み、第１ＲＯＩ座標および第２ＲＯＩ座標が１つ以上のＨＥＶＣタイルを特定するのに使用される。本実施形態では、ＨＥＶＣタイル・ストリームの要求と、クライアント・デバイスによるＨＥＶＣタイル・ストリームの処理との間でＲＯＩが移動することによる不利益な影響を低減させることができる。
【００２４】
一実施形態では、要求されたビデオ・データがＨＥＶＣでエンコードされ、第２ＲＯＩをレンダリングするステップが、要求されたＨＥＶＣでエンコードされたビデオ・データに基づいて、デコードされたイメージ領域を形成するステップと、任意で、デコードされたイメージ領域から第２ＲＯＩを切り取る(crop)ステップと、を含む。決定されたＨＥＶＣタイルが有するビデオ・データを使用して、イメージ領域の第２サブ領域を形成する。ＲＯＩ座標を使用して、第２サブ領域から第２ＲＯＩを作成して（切り取って）、タイル化されたストリーミング・モードへのスムーズな移行を確実なものにすることができる。
【００２５】
一実施形態では、ＲＯＩ位置情報を供給するステップが、更に、先行位置情報がクライアント・デバイスに供給された瞬間に、クライアント・デバイスによって未だ受け取られていないＲＯＩビデオ・ストリームの少なくとも１つのビデオ・フレームに関連付けられる先行位置情報を供給するステップを含み、先行位置情報が全イメージ領域における第２ＲＯＩの第２位置を含む。
【００２６】
ＲＯＩ位置情報は時間シフトすることができ、クライアント・デバイスが時間的に前のＲＯＩ位置情報を受け取ることができる。このようにして、ＲＯＩが非常に動的なものである場合（例えば、ＲＯＩに関連付けられたサブ領域において、ＨＥＶＣでタイル化された（パノラマ）ビデオの全イメージ領域内の空間方向が頻繁に変化する場合）でさえも、クライアントは正確なＨＥＶＣタイル・ストリームを要求することができる。本実施形態は、動的なＲＯＩ軌跡(trajectory)を含むＲＯＩストリームを取り扱うときに、特に有利である。
【００２７】
時間シフトは、ＨＥＶＣタイル・ストリームの要求と、クライアント・デバイスによるＨＥＶＣタイル・ストリームの処理との間の時間期間にわたるＲＯＩの移動を埋め合わせる(compensate)。このようにして、要求されたＨＥＶＣタイル・ストリームによって形成されるサブ領域は、常に、要求されたＲＯＩを含む。
【００２８】
一実施形態では、上記の先行位置情報が、クライアント・デバイスによって未だ受け取られていないＲＯＩビデオ・ストリームの１つ以上のイメージ・フレームにおける１つ以上の時間シフトされた第１ＲＯＩ座標を含む。好ましくは、当該時間シフトされた第１ＲＯＩ座標は１つ以上のイメージ・フレームよりも前にクライアント・デバイスに供給され、より好ましくは、当該時間シフトされたＲＯＩ座標は、時間シフトを決定する時間シフト情報、好ましくはタイムスタンプに更に関連付けられる。
【００２９】
一実施形態では、ＲＯＩ位置情報の少なくとも一部がＲＯＩビデオ・ストリームのビットストリームにおいてクライアント・デバイスに搬送され、好ましくは、ＳＥＩメッセージまたはＲＯＩ座標フラグがビットストリームのＲＯＩ座標の位置を規定する。
【００３０】
一実施形態では、ＲＯＩ位置情報の少なくとも一部が、ＭＰＥＧトランスポート・ストリームにおいて、好ましくは、ＭＰＥＧトランスポート・ストリームの基本(elementary)トランスポート・ストリームにおいて、または、ＭＰＥＧトランスポート・ストリームにおけるＤＶＢで規定されたＳＡＤ（同期補助データ; Synchronized Auxilary Data）パケットとして、クライアント・デバイスに搬送され、任意で、上記ＳＡＤパケットが、時間シフトされたＲＯＩ座標を含む。
【００３１】
一実施形態では、ＲＯＩ位置情報の少なくとも一部がＭＰＥＧ−４ストリームの所定のボックスにおいて、好ましくは、ＭＰＥＧ−４ストリームのｍｏｏｖ、ｔｒａｋおよび／またはｓｔｂｌボックスにおいて搬送される。
【００３２】
一実施形態では、ＲＯＩ位置情報の少なくとも一部が、ウォータマークとして、好ましくは、ＲＯＩビデオ・ストリームにおけるウォータマークとして、クライアント・デバイスに搬送される。
【００３３】
一実施形態では、タイル位置情報の少なくとも一部が、ＨＥＶＣでタイル化されたビデオ・ストリームにおいて、好ましくは、ＨＥＶＣでタイル化されたビデオ・ストリームのｍｏｏｖまたはｍｏｏｆボックスにおいて、クライアント・デバイスに供給される。
【００３４】
一実施形態では、ＨＥＶＣタイルのビデオ・データは記録領域における別個のビデオ・トラックとして、および、ビデオ・トラックをポイントする１つ以上のエクストラクタを含む少なくとも１つのベース・トラックとして格納される。
【００３５】
一実施形態では、タイル位置情報の少なくとも一部は、空間的マニフェスト・ファイルにおいてクライアント・デバイスに供給され、当該マニフェスト・ファイルが、１つ以上の配信ノードを位置決定するための１つ以上のストリーム識別子を含む。１つ以上の配信ノードが、ＨＥＶＣでタイル化されたビデオ・ストリームおよび／またはＲＯＩビデオ・ストリームをクライアント・デバイスに配信するように構成される。
【００３６】
一実施形態では、１つ以上の特定されたＨＥＶＣタイルに関連付けられたビデオ・データが、少なくとも１つ以上のＨＥＶＣタイル識別子（好ましくは１つ以上のＵＲＬ）およびタイル位置情報を含む空間的マニフェスト・ファイルに基づいて要求される。また、任意で、１つ以上のＲＯＩビデオ・ストリームに関連付けられる１つ以上のＲＯＩビデオ・ストリーム識別子（好ましくは１つ以上のビデオ・ストリーム識別子の少なくとも１つ）は、ＲＯＩ位置情報が時間と共に変化することを示す動的なインジケータに関連付けられる。
【００３７】
一実施形態では、ＨＥＶＣでエンコードされた画像データは、空間的マニフェスト・ファイルに基づいて要求される。当該マニフェスト・ファイルは、１つ以上のＨＥＶＣタイル表現を含み、それぞれがＨＥＶＣでタイル化されたビデオ・ストリームに関連付けられる。１つのＨＥＶＣタイル表現は、１つ以上のＨＥＶＣタイル識別子（好ましくは１つ以上のＵＲＬの少なくとも一部）を含み、１つ以上のＨＥＶＣでタイル化されたストリーム、および／または１つ以上のＨＥＶＣタイル・ストリームに関連付けられる。各ＨＥＶＣタイル表現は、それ自体のＨＥＶＣでタイル化されたビデオ・ストリーム（例えば、各表現が異なるズーム・レベルに関係し、各ズーム・レベルのそれぞれが同一の全イメージ領域を包含する訳ではないとき）に関連付けられ、および／または単一のＨＥＶＣビデオ（ファイルまたはストリーム）（例えば、各ズーム・レベルが同一の全イメージ領域を包含する場合）に関連付けられる。
【００３８】
別の態様では、本発明は、関心領域（ＲＯＩ）をレンダリングするクライアント・デバイスに関する。当該クライアントは、ＨＥＶＣでタイル化されたビデオ・ストリームの全イメージ領域内に第１サブ領域を規定する第１ＲＯＩをレンダリングするためにＲＯＩビデオ・ストリームを受け取り、ＨＥＶＣでタイル化されたビデオ・ストリームの位置がタイル位置情報によって規定され、ＲＯＩビデオ・ストリームの少なくとも１つのビデオ・フレームに関連付けられるＲＯＩ位置情報を供給し、上記ＲＯＩ位置情報が第１ＲＯＩの第１位置を少なくとも含み、ＨＥＶＣでタイル化されたビデオ・ストリームにおける１つ以上のＨＥＶＣタイルを、ＲＯＩ位置情報およびタイル位置情報に基づいて特定し、好ましくは、第１ＲＯＩと重複する１つ以上のＨＥＶＣタイルを特定し、ＨＥＶＣでタイル化されたビデオ・ストリームの全イメージ領域内に第２サブ領域を規定する第２ＲＯＩをレンダリングするために、好ましくは１つ以上のＨＥＶＣタイル・ストリームに含まれる、１つ以上の特定されたＨＥＶＣタイルに関連付けられるビデオ・データを要求し、そして任意で、要求されたビデオ・データおよびＲＯＩ位置情報に基づいて第２ＲＯＩをレンダリングするように構成される。
【００３９】
別の態様では、本発明は、ビデオ・データを格納する、記録領域を含む非一時的コンピュータ可読記憶媒体に関し、ＲＯＩストリームのビデオ・データであって、ＲＯＩが、ＨＥＶＣでタイル化されたビデオ・ストリームの全イメージ領域内にサブ領域を規定するビデオ・データと、全イメージ領域のサブ領域が有する位置情報、好ましくは座標と、を含む。
【００４０】
一実施形態では、上記の位置情報はＲＯＩストリームのビットストリームに挿入され、好ましくは、ＳＥＩメッセージまたはＲＯＩ座標フラグがビットストリームにおいてＲＯＩ座標の位置を規定する。
【００４１】
一実施形態では、ビデオ・データがＭＰＥＧトランスポート・ストリームとして記録され、ＲＯＩ位置情報の少なくとも一部がＭＰＥＧトランスポート・ストリームに収容される。
【００４２】
一実施形態では、ＲＯＩ位置情報は、基本トランスポート・ストリームとして、またはＤＶＢで規定されたＳＡＤ（同期補助データ;Synchronized Auxiliary Data）として、ＭＰＥＧトランスポート・ストリームに収容される。更なる実施形態では、ＳＡＤパケットは、時間シフトされた１つ以上のＲＯＩ座標を含む。
【００４３】
一実施形態では、ビデオ・データはＭＰＥＧ４ストリームとして記録され、ＲＯＩ位置情報の少なくとも一部が、所定のボックスにおいて、好ましくは、ｍｏｏｖ、ｔｒａｋおよび／またはｓｔｂｌボックスにおいてＭＰＥＧ４ストリームに収容される。
【００４４】
一実施形態では、ＲＯＩ位置情報の少なくとも一部が、ウォータマークとしてビデオ・データに挿入される。
【００４５】
更なる別の態様では、本発明は、格納されたデータ構造、好ましくは空間的マニフェスト・ファイルの少なくとも一部を有する非一時的コンピュータ可読記憶媒体に関し、好ましくは上記のクライアント・デバイスによって使用するのに適する。当該データ構造は、１つ以上のＨＥＶＣタイル表現であって、それぞれがＨＥＶＣでタイル化されたビデオ・ストリームを表し、１つのＨＥＶＣタイル表現が、１つ以上のＨＥＶＣタイルを特定する１つ以上のＨＥＶＣタイル識別子を含むＨＥＶＣタイル表現と、ＨＥＶＣでタイル化されたビデオ・ストリームにおいてＨＥＶＣタイルの位置を規定するタイル位置情報と、を含む。当該データ構造は、更に、ＲＯＩ位置情報を含むＲＯＩストリームにおける少なくとも１つのＲＯＩストリーム識別子、好ましくはＵＲＬであって、ＲＯＩストリームが、ＨＥＶＣでタイル化されたビデオ・ストリームにおける全イメージ領域内にサブ領域を規定する第１ＲＯＩをレンダリングするビデオ・データを含むＲＯＩストリーム識別子を含む。或いは、またはこれに加えて、当該データ構造は、ＨＥＶＣでタイル化されたビデオ・ストリームにおける全イメージ領域内のサブ領域の位置を規定するＲＯＩ位置情報を含む。この選択肢は、例えば、ＲＯＩストリームがＲＯＩ位置情報を有しないような場合に見込まれる。好適な実施形態では、データ構造は、ＨＴＴＰ適用型ストリーミング・プロトコルに基づいて、ＨＥＶＣでタイル化されたストリームとしてタイルを取り出すように構成される。
【００４６】
本発明はまた、コンピュータのメモリにおいて起動されると、如何なる上述した方法のステップを実行するソフトウェア・コード部を有するコンピュータ・プログラム製品にも関する。
【００４７】
本発明について、これより、本発明による実施形態を概略的に示した添付の図面を参照して更に説明する。本発明が、如何なる方法であれ、これらの特定の実施形態に限定されないことが理解されるであろう。
【図面の簡単な説明】
【００４８】
【図１】図１は、本発明の一実施形態による関心領域（ＲＯＩ）ストリーミング・プロセスを示す。
【図２】図２は、本発明の一実施形態によるＲＯＩストリーミング・プロセスを示す。
【図３】図３は、本発明の一実施形態によるＲＯＩストリーミング・プロセスで使用されるＨＥＶＣでエンコードされたＭＰＥＧファイルのデータ・フォーマットを示す。
【図４】図４は、本発明の一実施形態によるＲＯＩストリームおよび関連するタイル化されるコンテンツを生成するプロセスを概略的に示す。
【図５】図５は、発明の一実施形態によるＲＯＩストリーミング・プロセスを管理するためのデータ構造を示す。
【図６】図６は、発明の一実施形態によるＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイルを示す。
【図７】図７は、発明の一実施形態によるＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイルを示す。
【図８Ａ】図８Ａは、発明の一実施形態によるＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイルを示す。
【図８Ｂ】図８Ｂは、発明の一実施形態によるＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイルを示す。
【図９】図９は、発明の一実施形態による空間的マニフェスト・ファイルに基づいてＲＯＩストリームをレンダリングするように構成されるクライアント・デバイスを示す。
【図１０Ａ】図１０Ａは、発明の一実施形態によるＲＯＩストリームをレンダリングするプロセスの概要を示す。
【図１０Ｂ】図１０Ｂは、発明の一実施形態によるＲＯＩストリームをレンダリングするプロセスの概要を示す。
【図１１Ａ】図１１Ａは、発明の一実施形態によるＲＯＩストリーミング・プロセスのフロー図を示す。
【図１１Ｂ】図１１Ｂは、発明の一実施形態によるＲＯＩストリーミング・プロセスのフロー図を示す。
【図１２Ａ】図１２Ａは、本発明の一実施形態により、タイル化されていないＲＯＩストリーミング・モードおよびタイル化されたＲＯＩストリーミング・モードの間をシームレスに切り替えるプロセスの概要を示す。
【図１２Ｂ】図１２Ｂは、本発明の一実施形態により、タイル化されていないＲＯＩストリーミング・モードおよびタイル化されたＲＯＩストリーミング・モードの間をシームレスに切り替えるプロセスの概要を示す。
【図１３Ａ】図１３Ａは、本発明の別の実施形態により、タイル化されていないＲＯＩストリーミング・モードおよびタイル化されたＲＯＩストリーミング・モードの間をシームレスに切り替えるプロセスの概要を示す。
【図１３Ｂ】図１３Ｂは、本発明の別の実施形態により、タイル化されていないＲＯＩストリーミング・モードおよびタイル化されたＲＯＩストリーミング・モードの間をシームレスに切り替えるプロセスの概要を示す。
【図１４】図１４は、本発明の様々な実施形態によるＲＯＩデータ・フォーマットを示す。
【図１５】図１５は、本発明の一実施形態により、ＭＰＥＧトランスポート・ストリームの基本ストリームとしてＲＯＩデータを搬送するためのデータ・フォーマットを示す。
【図１６Ａ】図１６Ａは、ＭＰＥＧストリームにおけるエンコードされたビットストリームのＲＯＩデータを搬送するためのデータ・フォーマットを示す。
【図１６Ｂ】図１６Ｂは、ＭＰＥＧストリームにおけるエンコードされたビットストリームのＲＯＩデータを搬送するためのデータ・フォーマットを示す。
【図１７Ａ】図１７Ａは、ＭＰＥＧ−４ストリームの新規のボックスにおいてＲＯＩデータを搬送するためのデータ・フォーマットを示す。
【図１７Ｂ】図１７Ｂは、ＭＰＥＧ−４ストリームの新規のボックスにおいてＲＯＩデータを搬送するためのデータ・フォーマットを示す。
【図１８】図１８は、ＭＰＥＧ−４ストリームのメタデータ・トラックとしてＲＯＩデータを搬送するためのデータ・フォーマットを示す。
【図１９Ａ】図１９Ａは、本発明の一実施形態により、タイル化されたストリーミングのための空間的バッファの使用を示す。
【図１９Ｂ】図１９Ｂは、本発明の一実施形態により、タイル化されたストリーミングのための空間的バッファの使用を示す。
【図２０】図２０は、本発明の一実施形態による３モードのＲＯＩストリーミング・モデルを示す。
【図２１】図２１は、図１から図２０を参照して説明したシステムおよび方法で使用される例示のデータ処理システムを示すブロック図である。
【発明を実施するための形態】
【００４９】
図１は、本発明の一実施形態による関心領域（ＲＯＩ）ストリーミング・プロセスを示す。本出願では、ＲＯＩは、イメージ領域１００（例えば、ソース・ビデオの広視野（パノラマ）イメージ領域）のサブ領域１０６，１１０として規定される。ソース・ビデオは、１つ以上の高解像度ビデオ・ファイルに基づいて（例えば組み合わせにより）形成される。高解像度ビデオ・ファイルは、広視野、異なるカメラ位置、異なるカメラ角、および３Ｄ等を有することができる。イメージ領域１００内のＲＯＩの位置およびサイズは、ＲＯＩ座標系１０３に基づいて規定される。図１に示されるように、ＲＯＩはＲＯＩ軌跡を追従する。ここでは、第１ＲＯＩは、第１時間インスタンスではイメージ領域内の第１位置１０６にあり、第２時間インスタンスでは第２位置１１０にある。
【００５０】
ＲＯＩは、トラッキング・アルゴリズムまたはカメラ・オペレータを用いて事前選択することができる。ストリームは、ソース・ビデオにおいてデコードされたフレームのイメージ領域からＲＯＩを切り取ることによって、また、別個のストリーム（例えば、ＭＰＥＧおよび／またはＤＶＢでエンコードされたストリーム）において切り取った領域をエンコードすることによって生成される。このストリームは、ＲＯＩストリーム１０７と称される。切り取られた領域の座標は、ＲＯＩ座標と称される。例えば、ソース・ビデオは、サッカーの試合における高解像度および広視野（パノラマ）のビデオに関する。ＲＯＩストリームは、ソース・ビデオに基づいて、ソース・ビデオのデコードされたフレームから、ボールに関連付けられるＲＯＩを切り取ることによって生成される。
【００５１】
或いは、ＲＯＩストリームは、例えば、ボールを追従するブロードキャスト・カメラから生じる別個のストリームとして生成することができる。その場合、イメージ・プロセッサは、公知のイメージ認識およびトラッキング・アルゴリズムを用いて、ブロードキャスト・ビデオの（制限された）視野を、ソース・ビデオの広視野イメージ領域が有する特定のサブ領域（ＲＯＩ）と関連付けることができる。このようにして、イメージ・プロセッサは、所謂ＲＯＩ座標を、ＲＯＩストリームのフレームに関連させることができる。
【００５２】
一実施形態では、ＲＯＩストリームは、ブロードキャスト技術（例えば、ＤＶＢまたはマルチキャスト技術）を使用して送信される。他の実施形態では、ＲＯＩストリームは、適応型プロトコル（例えばＨＴＴＰＡｄａｐｔｉｖｅ Ｓｔｒｅａｍｉｎｇ（ＨＡＳ））に基づいてクライアントに送信される。そのためには、マニフェスト・ファイル１０８は、クライアントにセグメントを配信するように構成される１つ以上の配信ノードを位置特定するセグメント識別子、例えばＵＲＬ（の一部）を規定する。適応型ストリーミング・プロトコルの例には、Ａｐｐｌｅ ＨＴＴＰ Ｌｉｖｅ Ｓｔｒｅａｍｉｎｇ[http://tools.ietf.org/html/draft-pantos-http-live-streaming-13]、Ｍｉｃｒｏｓｏｆｔ Ｓｍｏｏｔｈ Ｓｔｒｅａｍｉｎｇ[http://www.iis.net/download/SmoothStreaming]、Ａｄｏｂｅ ＨＴＴＰ ＤｙｎａｍｉｃＳｔｒｅａｍｉｎｇ[http://www.adobe.com/products/httpdynamicstreaming］、３ＧＰＰーＤＡＳＨ[TS 26.247 Transparent end-to-end Packet-switched Streaming Service(PSS）; Progressive Download and Dynamic Adaptive Streaming over HTTP]、およびＭＰＥＧ Ｄｙｍａｎｉｃ ＡｄａｐｔｉｖｅＳｔｒｅａｍｉｎｇ ｏｖｅｒ ＨＴＴＰ[MPEG DASH ISO/IEC 23001-6]が含まれる。ＨＴＴＰは、効率的で、ファイアウォール・フレンドリで、且つスケーラブルなスキームによって、ビデオ・ストリーム（およびセグメント）をクライアントに配信するのを可能にする。
【００５３】
一実施形態では、ＲＯＩストリームは、ＨＥＶＣコーデックを使用してエンコードされる。上記の例では、ＲＯＩ位置情報１１２は、ＲＯＩストリームが形成されるときに決定される。ＲＯＩ位置情報は、ソース・ビデオの広視野イメージ領域内で、ＲＯＩビデオの（制限付き視野の）イメージ領域の位置を規定する。したがって、ＲＯＩビデオのビデオ・フレームは、ソース・ビデオにおけるビデオ・フレームのイメージ領域内にサブ領域を規定する。ＲＯＩ位置情報はＲＯＩ座標を含む。ＲＯＩ座標は、ソース・ビデオにおけるイメージ領域内にＲＯＩの位置およびサイズを規定する。実施形態では、ＲＯＩストリームのフレーム（またはフレームのセット）ごとに、ＲＯＩ位置情報（ＲＯＩ座標）が生成される。ＲＯＩストリームの再生の間、ＲＯＩの位置は、ソース・ビデオの全イメージ領域内で移動する。ＲＯＩストリームの再生の間、ＲＯＩ座標が時間と共に変化することにより、ＲＯＩ座標のストリームが形成される。ＲＯＩ座標のストリームは、ソース・ビデオのイメージ領域内で空間軌跡を定める。
【００５４】
一実施形態では、ＲＯＩ位置情報はＲＯＩ座標のストリームを含む。ＲＯＩ座標は、ＲＯＩストリームによって（同期して）クライアントに送られる。ＲＯＩ位置情報は、別個の通信チャネルでクライアントに送られる。或いは、ＲＯＩ位置情報は、ビデオ・フレームの搬送用コンテナの一部として、クライアントに搬送される。以下に更に詳細に例を説明する。
【００５５】
ソース・ビデオのイメージ領域内におけるＲＯＩの時間軌跡を図１に示す。（ＲＯＩで表示する）第１サブ領域は、第１時間インスタンスで、第１ＲＯＩ座標および第１ＲＯＩサイズに関連付けられる第１ＲＯＩ位置１０６で開始する。その後、サブ領域は、第２ＲＯＩ座標および第２ＲＯＩサイズに関連付けられる第２ＲＯＩ位置１１０へ移動する。軌跡の間、ＲＯＩは、ソース・ビデオのイメージ領域における所定の部分にズームする。したがって、図１に示されるＲＯＩは、ソース・ファイルのイメージ領域内にあるその位置が動的なＲＯＩであり、ソース・ファイルのイメージ領域に関するサイズが時間と共に変化する。
【００５６】
図１に示されるストリーム、即ち第１（ソース）ストリームおよび第２（ＲＯＩ）ストリームは、適用型ストリーミング・プロトコル（例えばＨＴＴＰ適用型ストリーミング（ＨＡＳ）プロトコル）を使用して、再生のためにクライアントに配信される。その場合、第１（ＲＯＩ）ビデオ・ストリームと第２（広視野）ビデオ・ストリームの空間的関係は特別なデータ構造で記述することができ、以降では、空間的マニフェスト・ファイル（ＳＭＦ）と称する。ＳＭＦはストリーム識別子（例えばＵＲＬの一部）を特定し、クライアントが使用して、１つ以上の配信ノード（例えばメディア・サーバ）を位置決定し、それにアクセスする。１つ以上の配信ノードは、ストリームをクライアントに送信することができる。ストリーム識別子に加えて、マニフェスト・ファイルは位置情報を含み、参照系においてビデオ・ストリームの複数のイメージ領域の空間的関係を記述する。
【００５７】
通例、クライアント・デバイスは、レンダリングおよび帯域幅の制限された性能を有し、このため、ソース・ビデオについて高解像度品質で全イメージ領域を受信およびレンダリングすることができない。この課題の少なくとも一部は、所謂タイル化されたストリーミング技術を使用することによって解決される。ここでは、ソース・ストリーム（通例はパノラマ・ビデオ・ストリーム）がタイル・ストリームのセットに空間的に分割される。タイル・ストリームは、次いで、通例は別個にエンコードされる。タイル・ストリームは、ソース・ビデオの単一エンコーディング・プロセスから生じるのではない。クライアントは、パノラマ・ビデオにおけるタイル・ストリームのサブセットを要求することによって、ソース・ストリームの任意の部分を再構築する。従来技術のエンコーディング・スキームでは、これらタイル・ストリームが独立してエンコードされるので、これら（エンコードされた）タイル・ストリームの受け取りに応じて、クライアントは、ビデオ・データがユーザに表示されることになる前に、多数のデコーダ・インスタンスを使用してタイル・ストリームをデコードすると共に、タイル・ストリームにおいて当該デコードしたビデオ・データをスティッチする必要がある。
【００５８】
しかしながら、１つのクライアントについて多数のデコーダ・インスタンスを使用するのは、大量のプロセッサ・リソースというコストを生じさせる。特に、多量のタイルを使用するときは、クライアント・プロセスは非常に複雑になり、リソースが極めて集中することになる。この課題は、ＨＥＶＣビデオ圧縮規格を使用することによって解決することができる。
【００５９】
図２は、本発明の一実施形態によるＲＯＩストリーミング・プロセスを示す。ここでは、ソース・ファイル（ビデオ）は、ＨＥＶＣでタイル化されたストリームとしてエンコードされる。
【００６０】
ＨＥＶＣでは、ビデオ・フレームは、所謂コーディング・ツリー・ユニット（ＣＴＵ）に分割(partition)される。ＣＴＵは、デコーディング・プロセスのＨＥＶＣ規格で使用される基本的な処理ユニットである。更に、ＨＥＶＣエンコーダを構成して、ビデオ・フレーム２００を所謂ＨＥＶＣタイル２０１のＨＥＶＣストリームに分割するように構成される。ＨＥＶＣファイルは、特定の複数のＣＴＵのグループによって規定される矩形領域である。ＨＥＶＣタイルは、例えば、パノラマ・ビデオのイメージ領域を、多数の隣接する矩形領域（異なるサイズを有してもよい）に分割する。ここでは、ＨＥＶＣタイルの境界は行および列方向のＨＥＶＣタイル境界によって規定される。本出願では、１つ以上のＨＥＶＣタイルを含むＨＥＶＣでエンコードされたビデオ・ストリームのことを、ＨＥＶＣでタイル化されたストリームと称することもある。
【００６１】
ＨＥＶＣタイルは、（マルチ・コア・プロセッサを使用した）ビデオ・データ並列エンコーディングおよびデコーディングのためのＨＥＶＣコーデックにおいて導出され、その結果、効率的なビデオ・データの処理を達成することができる。このようにして、ＨＥＶＣでタイル化されたビデオは、単一のＨＥＶＣデコーダを使用して、効果的にデコードされる。加えて、ＨＥＶＣタイルはまた、ＨＥＶＣでタイル化されたストリームに収容されたＨＥＶＣタイルのサブセットのみの再生のために使用される。
【００６２】
そのためには、ＨＥＶＣ規格は、エンコードおよびデコード処理のトータルの独立性を確保するために、各ＨＥＶＣタイルに関連付けられる空間的および時間的制約を有するシグナリングを可能にする。特に、ＨＥＶＣ規格は、ＨＥＶＣタイルの境界内におけるビデオ・コーディング（例えば、モーション・ベクトルおよびイン・ループ・フィルタ）において公知の空間的および時間的予測を可能にする。これら空間的および時間的制約を用いて、ＨＥＶＣエンコーダは、ストリーミングするクライアントによって個別に格納およびアクセスできるのではなく、独立してデコード可能なＨＥＶＣタイルを生成するように構成される。
【００６３】
ＨＥＶＣでタイル化されたストリームにおけるＨＥＶＣタイルの位置は、タイル位置情報２０５で決定される。タイル位置情報２０５は、座標系２０３に基づいて規定される。つまり、ＨＥＶＣタイルの位置は、ＨＥＶＣでタイル化されたストリームにおける全イメージ領域（エリア）内のタイルのイメージ・エリア（サブ領域）が有する空間位置および方向に関する。
【００６４】
図１を参照して説明するのと同様の方法で、ＨＥＶＣストリームのイメージ領域における移動する１つ以上のＲＯＩ２０６，２１０の位置は、ＲＯＩ位置情報２１２によって規定される。ＲＯＩ位置情報は、時間と共に変換することにより、ソース・ファイルのイメージ領域内において移動するＲＯＩの軌跡を定める。タイル位置情報を規定するのに使用される座標系を使用して、更に、図１を参照して詳細に説明するＲＯＩストリームにおけるＲＯＩのＲＯＩ座標を決定する。イメージ領域が２Ｄまたは３Ｄのイメージ領域に関する場合、直交(Cartesian)座標系が使用される。或いは、イメージ領域が曲線イメージ領域に関する場合、他の非直交系の曲線座標系、例えば、円筒、球面または極座標系が使用される。
【００６５】
一実施形態では、ＨＥＶＣエンコーダが、ＨＥＶＣでタイル化されたビデオ・ストリームに関連付けられたＨＥＶＣタイル２０２を生成するように構成される。その結果、ＨＥＶＣタイルを独立して格納することができ、また、ＨＥＶＣデコーダによって独立してデコードすることができる。例えば、図３は、本発明の一実施形態によるＲＯＩストリーミング・プロセスで使用される、ＨＥＶＣでタイル化されたＭＰＥＧファイルまたはストリーム３０２のためのデータ・フォーマット３００を示す。一実施形態では、（ＨＥＶＣタイル・ストリームに含まれる）ＨＥＶＣタイルに関連付けられる独立してデコード可能なビデオ・データがトラック３０４〜３１２として格納される。特に、ＨＥＶＣタイルと関連付けられるビデオ・データ３１４は、所謂（ＨＥＶＣ）タイル・トラック３０６〜３１２として格納される。
【００６６】
１つのタイル・トラックについてビデオ・データを生成するときに、ビデオ・コーディング（例えばモーション・ベクトルおよびイン・ループ・フィルタ）の空間的および時間的予測は、１つのＨＥＶＣタイルの境界内で全て維持される。このようにして、ビデオ・フレームの１つのＨＥＶＣタイルおよび当該ビデオ・フレームの他のＨＥＶＣタイルにおけるビデオ・データ間には、空間的デコーディングの依存関係は存在しない。加えて、ビデオ・フレームの１つのＨＥＶＣタイルおよびそれ以前のビデオ・フレームの他のＨＥＶＣタイルにおけるビデオ・データ間には、空間的デコーディングの依存関係は存在しない。
【００６７】
一実施形態では、タイル・トラックは、タイル位置情報３１６を更に含む。デコーダは、タイル位置情報を使用して、どのトラックを、デコーディングのためにＨＥＶＣストリームから抽出する必要があるかについて決定する。一実施形態では、トラックのタイル位置情報はタイルの起点(origin)およびタイル・サイズ情報（例えば、幅および高さのパラメータ）を含み、図１および図２を参照して説明した座標系によって規定される基準空間にタイルを配置する。
【００６８】
一実施形態では、図３のデータ・フォーマット３００は、所謂、ベース・トラック３０４を含む。ベース・トラックはエクストラクタ３１８を含む。エクストラクタ３１８は、対応する１つ以上のタイル・トラックへの参照を規定する。ベース・トラックを解析することによって、デコーダは、それが参照するタイル・トラックのオーディオおよび／またはビデオ・データでエクストラクタを置き換える。特定のビデオ・アプリケーションが特定のタイルを要求しない場合は、デコーダはその対応のエクストラクタを無視するのみである。特定のトラックのビデオ・データが受け取られず、または取り出されない場合は、当該トラックの欠如は、ＨＥＶＣデコーダによって「データ不足(missing data)」として解釈される。ＨＥＶＣタイルが、他のＨＥＶＣタイルと独立してデコードされるので、１つ以上のトラックからのデータの欠如（「データ不足」）は、取り出すことができる他のトラックをデコーダがデコードするのを防止する。
【００６９】
一実施形態では、図３のデータ・フォーマットは更に、ＲＯＩトラックを含む。ＲＯＩトラックは、ＲＯＩ位置情報、例えば、ＨＥＶＣでタイル化されたストリームの全イメージ領域におけるＲＯＩストリームの（制限付き視野の）イメージ領域が有するＲＯＩ座標を含む。ＲＯＩ位置情報はＲＯＩ座標を含む。ＲＯＩ座標は、ＨＥＶＣでタイル化されたストリームの全イメージ領域に関連付けられた座標系１０３に基づいて規定される。更なる一実施形態では、ＲＯＩトラックは、ＲＯＩのビデオ・データを含む。
【００７０】
図３に示されるデータ・フォーマットはまた、ＨＥＶＣでタイル化されたストリームのＨＥＶＣタイルを、独立したＨＥＶＣタイル・ストリームとして格納するために使用することもでき、クライアント・デバイスのクライアントは、配信ノード（例えばサーバ）からＨＥＶＣタイル・ストリームを個別に要求するためにＳＭＦを使用することができる。そのために、ＳＭＦは、１つ以上のタイル識別子（例えば、ＵＲＬまたはＵＲＩの少なくとも一部）を含む。タイル識別子は、ＨＥＶＣでタイル化されたＨＥデオデータを格納および配信するように構成される１つ以上の配信ノード（例えば、１つ以上のメディア・サーバまたはＣＤＮ）を位置決定するために、クライアントによって使用される。
【００７１】
１つのＨＥＶＣタイルを含む、ＨＥＶＣでタイル化されたストリームは、ＨＥＶＣタイル・ストリームと称されることもある。図２に示されるＨＥＶＣタイル・ストリームおよびＲＯＩストリームは、再生のために、適応型ストリーミング・プロトコル（例えば、ＨＴＴＰ適応型ストリーミング（ＨＡＳ）プロトコル）を用いてクライアント・デバイスに配信される。そのためには、ＨＥＶＣタイル・ストリームは、所定の期間における時間的セグメントに時間的に分割される。したがって、その場合は、ＳＭＦは更に、ＨＥＶＣでタイル化されたストリームに関連付けられる時間的セグメント識別子を含み、クライアント・デバイスは、ネットワークにおいて１つ以上の配達ノードから、ＨＥＶＣでタイル化されたストリームの時間的セグメントを連続して要求する。第１（ＲＯＩ）ビデオ・ストリームとＨＥＶＣでタイル化された１つ以上のビデオ・ストリームとの間の時間的および空間的関係は、空間的マニフェスト・ファイル（ＳＭＦ）２０４で規定される。ＭＰＥＧ−ＤＡＳＨストリーミング・プロトコルの場合、マニフェスト・ファイルは、メディア提示記述（ＭＰＤ; media presentation description）と称されることもある。
【００７２】
ＳＭＦは、１つ以上のＨＥＶＣストリーム識別子、１つ以上のＲＯＩストリーム識別子、および／または１つ以上のＨＥＶＣタイル識別子を含む。ＳＭＦはまた、特定の座標系における１つ以上のＲＯＩストリームと１つ以上のＨＥＶＣストリームとの間の空間的関係を記述する位置情報を含む。別の一実施形態では、位置情報は更に、座標系における１つ以上のＨＥＣＶタイル間の空間的関係を記述する情報を含んでもよい。ＨＥＶＣタイルに関する空間的情報は、タイル位置情報と称されることもある。本発明の様々な実施形態による空間的マニフェスト・ファイルについてのより詳細な例について、図５〜図８を参照して以下に説明する。
【００７３】
１つのソース・ファイルについて、異なるＨＥＣタイル表現、即ちタイル表現（例えばタイル・サイズ、２Ｄおよび３Ｄフォーマット、異なるビデオおよび／またはオーディオ品質（例えば、ＳＤ／ＨＤ／ＵＨＤ、ビットレート）、異なる解像度、異なる視野、カメラ・アングル等の表現）が生成される。タイル表現ごとに、ソース・ファイルのビデオ・フレームは、所定の数の（好ましくは独立した）デコード可能ＨＥＶＣタイルを含む、ＨＥＶＣでタイル化されたビデオ・ファイルにエンコードされる（ＨＥＶＣでタイル化されたビデオ・ファイルは、ＨＥＶＣでタイル化されたビデオ・ストリームとも称される。何故ならば、ＨＥＶＣでタイル化されたビデオ・ファイルは、クライアント・デバイスにストリーミングされる、ＨＥＶＣでエンコードされたビデオ・データを本質的に含むからである。）。ここでは、各ＨＥＶＣタイル２０１は、ＨＥＶＣでタイル化されたビデオ・ファイルにおける全イメージ領域のサブ領域を表す。ＨＥＶＣエンコーダを使用して、ＨＥＶＣタイルを含む、ＨＥＶＣでエンコードされたＭＰＥＧストリームを、ソース・ファイルのビデオ・フレームに基づいて生成することができる。
【００７４】
（ＨＥＶＣタイルの座標を含む）タイル位置情報と（ＲＯＩストリームのＲＯＩ座標を含む）ＲＯＩ位置情報とに基づいて、クライアントによって使用される１つのＨＥＶＣタイル・ストリームまたは多数のＨＥＶＣタイル・ストリームをクライアント・デバイスは要求し、第１サブ領域（ＲＯＩ）を含むサブ領域を構築する。特に、空間的に隣接するＨＥＶＣタイルがデコーダにより使用されて、ＲＯＩストリームのＲＯＩを好ましくは含む サブ領域を構築する。
【００７５】
例えば、図２に示すように、第１時間インスタンスでは、ＲＯＩ座標は、４つのＨＥＶＣタイル（この場合は、位置（１，０）、（１，１）、（２，０）および（２，１）のＨＥＶＣタイル）と重複する第１ＲＯＩ２０６を規定する。これら４つのＨＥＶＣタイルは、第１時間インスタンスで、ＲＯＩを含んだ、ＨＥＶＣでタイル化されたパノラマ・ストリームのイメージ領域内に第２サブ領域を形成する。同様に、ＲＯＩ座標は、第２時間インスタンで、２枚のＨＥＶＣタイル（この場合は、位置（０，２）および（１，２）のＨＥＶＣタイル）と重複する第２ＲＯＩ２１０を規定する。これら２つのＨＥＶＣタイルは、第２時間インスタンスで、ＲＯＩを含んだ、ＨＥＶＣでタイル化されたパノラマ・ストリーム内に第２サブ領域を形成する。この方式を使用することで、ＲＯＩストリームからタイル化されたストリームにスムーズに切り替えることができる。
【００７６】
以下により詳細に説明するように、ユーザは、ユーザ・インタフェース（例えばタッチ・スクリーンまたはポインティング・デバイス）を使用して、表示されたイメージ領域と相互作用し、また、表示されたコンテンツを、（例えばパニング、ズーミング、チルティング操作に基づいて）操作する。このユーザ相互作用に応じて、インタフェースは、ＨＥＶＣでタイル化されたストリームに基づいてユーザが要求したＲＯＩのレンダリングを開始するよう、クライアント・デバイスへの指示を生成する。したがって、ユーザは、ＲＯＩを移動および／または拡張し、それに応じて、適切なタイル表現、当該タイル表現においてＨＥＶＣでタイル化されたストリーム、およびＨＥＶＣでタイル化されたストリームにおける１つ以上のＨＥＶＣタイルが選択され、ＲＯＩが位置決めされる、隣接するＨＥＶＣタイルの領域を形成することができる。タイルに関連付けられたビデオ・データがクライアント・デバイスにおいて既に存在する場合は、ＲＯＩをレンダリングするのにビデオ・データを使用できるのよりも前に、タイルは、ＨＥＶＣタイル・ストリームとしてクライアント・デバイスにストリーミングされる必要はない。これらデータが存在しない場合は、ＲＯＩがレンダリングされる前に、それらは、１つ以上のＨＥＶＣタイル・ストリームとして最初にストリーミングされる。ユーザにより選択されたＲＯＩをレンダリングする当該モードは、タイル化されたストリーミング・モードと称されることもある。
【００７７】
したがって、上述したことから次のことが理解される。即ち、１）ユーザは、（図１を参照して説明したように）ＲＯＩストリームに基づいて第１モード（（タイル化されていない）ＲＯＩストリーミング・モード）で特定のシーンを視聴することができる。ここでは、ＲＯＩストリームは、例えばＭＰＥＧストリームとして、クライアント・デバイスに配信される。また、２）ユーザは、（図２を参照して説明したように）ＨＥＶＣでタイル化されたストリームに基づいて第２モード（タイル化されたストリーミング・モード）で同一のシーン、シーンの詳細、またはシーンの周辺の領域を視聴することができる。図１および図２に示すように、ＲＯＩストリーミング・モードから、タイル化されたストリーミング・モードへの移行（およびその逆）は、ＲＯＩ位置情報、即ちＲＯＩストリームに関連付けられたＲＯＩ座標に基づいて実現される。
【００７８】
ＲＯＩストリームは、デフォルトのストリーミング・モードである（タイル化されていない）ＲＯＩストリーミング・モードでクライアントによって使用される。ここでは、ブロードキャスト、マルチキャスト、またはユニキャストのＲＯＩストリームがクライアント・デバイスによってレンダリングされる。ＨＥＶＣでタイル化されたストリームは、クライアントによって使用されて、クライアント・デバイスのユーザ・インタフェース（Ｕｌ）を使用するユーザが操作するＲＯＩをレンダリングする。
【００７９】
クライアントが、ＲＯＩストリーミング・モードでＲＯＩストリームを再生するとき、クライアントは、ＲＯＩ位置情報に基づいて、ソース・ビデオの全イメージ領域におけるＲＯＩの位置情報を認識することになる。ＲＯＩストリームに関連付けられるＲＯＩ位置情報は、クライアントによって使用されて、タイル化されたストリーミング・モードへとスムーズに或いは一層のことシームレスに切り替えることができる。
【００８０】
図４は、本発明の一実施形態によるＲＯＩストリームおよび関連するＨＥＶＣでタイル化されたストリームを生成するためのプロセスを概略的に示す。この例では、１つ以上のカメラ４０２（例えば、１つ以上の高解像度の広視野カメラ）を使用して、ソース・ビデオ（通例はパノラマ・ビデオ）を生成または構成する。ＨＥＶＣエンコーダ４０４を使用して、ソース・ビデオに基づいてＨＥＶＣでタイル化された１つ以上のストリーム４０８を生成する。ＨＥＶＣでタイル化されたストリームは、ソース・ビデオにおいて異なるタイル表現４０９を規定する。ここでは、ＨＥＶＣでタイル化されたストリームと、ＨＥＶＣでタイル化されたストリームの各々のＨＥＶＣタイルと、実施形態によっては、ＨＥＶＣでタイル化されたストリームにおけるセグメントの時間的関係とが、ＳＭＦ４１０で規定される。
【００８１】
ソース・ビデオは、また、ＲＯＩストリーム・ジェネレータ４１２に配信される。ＲＯＩストリーム・ジェネレータは、ソース・フレームにおけるフレームのイメージ領域を通じたパニングおよびズーミングによってＲＯＩ（例えば、特定のアクティビティを有する領域）を選択するように構成される。また、ビデオ・フレームからＲＯＩを切り取って、該切り取られたイメージ領域に基づいて新規のビデオ・ストリーム（ＲＯＩストリーム４１４）をビルドすることによって、ＲＯＩストリームを生成するように構成される。ＲＯＩは、アルゴリズム（例えば、イメージ内の特定のオブジェクトをトラックするトラッキング・アルゴリズム）を用いて、またはＲＯＩを選択する人間のオペレータによって自動的に選択される。ＲＯＩストリームの生成の間、ＲＯＩの座標は、ＲＯＩ位置情報４１８として収集される。ＲＯＩ位置情報は、ＲＯＩストリームのメタデータとして、または、別個のデータ・ファイルとして、クライアントに送られる。ＲＯＩ位置情報が別個のストリームで送られる場合は、ＲＯＩ位置情報は、ＲＯＩ位置情報（例えばＲＯＩ座標）をＲＯＩストリームのフレームにリンクさせる情報（例えばフレーム番号）を含む。更なる実施形態では、ＲＯＩストリームは、適応型ストリーミングについて時間的にセグメント化されたストリームとして構成される。その場合、ＲＯＩストリームのセグメントは、ＲＯＩマニフェスト・ファイル４１６に規定される。
【００８２】
一実施形態では、ＲＯＩストリームは、ソース・ファイルに基づいて（切り取ることによって）形成されるではなく、別個のブロードキャスト・カメラ、即ちブロードキャスト・ストリームの直接の出力に基づいて形成される。当該ブロードキャスト・カメラは、図１を参照して説明したソース・ビデオに収容されるのと同一のシーン部分をキャプチャする。
【００８３】
コンバイナ４２０は、ＲＯＩストリームを、ＨＥＶＣでタイル化された１つ以上のストリーム４０８と結合し、その後に、当該ＲＯＩストリームは配信ネットワーク４２２に送られる。ＲＯＩストリームをＨＥＶＣでタイル化されたストリームと結合することは、ＨＥＶＣでタイル化されたストリームおよびＲＯＩストリームに関する情報を共に含むＳＭＦを形成することを含む。実施形態では、コンバイナは、ＲＯＩストリーム識別子（例えば、ＵＲＬまたはＵＲＩの少なくとも一部）と、実施形態によっては、ＳＭＦにおいてＲＯＩストリームの時間的セグメントに関連付けられたマニフェスト・ファイルと、を挿入する。
【００８４】
ＨＥＶＣでタイル化された１つ以上のストリーム（任意で、独立したＨＥＶＣタイル・ストリームの集合として）およびＲＯＩストリームは、ネットワークにおける１つ以上の配信ノード４２６１，２に格納される。ここでは、配信ノードは、ＨＥＶＣでタイル化された１つ以上のストリームの少なくとも一部（例えば、１つ以上のＨＥＶＣタイル・ストリーム）および／またはＲＯＩストリームを、（モバイル）クライアント・デバイスのクライアント４２８に配信する。
【００８５】
一実施形態では、配信ノードはメディア・サーバである。別の一実施形態では、配信ノードの少なくとも一部（時折、代理ノードとも称される）は、専用のコンテンツ配信ネットワーク（ＣＤＮ）の一部としてもよい。その場合は、ＨＥＶＣでタイル化されたストリームよびＲＯＩストリームは、コンテンツ配信ネットワーク制御機能４２４（ＣＤＮＣＦ; Content Delivery Network Control Function）によって採り入れられる(ingest)。次いで、ＣＤＮＣＦは、異なる配信ノードを通じて、ＨＥＶＣでタイル化されたストリームおよびＲＯＩストリームを配信する。その結果、ストリームの効果的な配信を確実なものとすることができる。一実施形態では、ＣＤＮは、タイル（およびセグメント）識別子（ＵＲＬ）を更新し、クライアントはＣＤＮの配信ノードに効果的にアクセスして、（タイル化された）コンテンツの配信を要求する。
【００８６】
クライアント・デバイスのクライアント４２８が、ＲＯＩおよび／またはＨＥＶＣでタイル化されたストリームへのアクセスを望むときに、クライアント４２８は、コンテンツ・プロバイダまたはＣＤＮからＳＭＦを受け取る。また、ＲＯＩストリームおよび／またはＨＥＶＣでタイル化されたストリームにおける関連の１つ以上のＨＥＶＣタイルを要求および再生するためにＳＭＦを使用する。クライアント・デバイスは、通常、（モバイル）コンテンツ再生デバイス（例えば、電子タブレット、スマートフォン、ノートブック、メディア・プレーヤ、ホーム・ゲートウェイ）、またはＤＡＳＨ対応デバイス（例えば、ＤＡＳＨ対応ＨｂｂＴＶ表示デバイス）に関する。或いは、クライアント・デバイスは、コンテンツ再生デバイスによって将来消費されるコンテンツを処理し、一時的に格納するように構成されるセット・トップ・ボックスまたはコンテンツ記憶デバイスでもよく、格納されたコンテンツへのアクセスを有する。
【００８７】
図５は、本発明の一実施形態によるＲＯＩストリーミング・プロセスを管理するためのデータ構造５００の概要を示す。特に、図５は、空間的マニフェスト・ファイル（ＳＭＦ）を示し、幾らかの階層的なデータ・レベル５０２，５０８，５１８１，２を含む。第１データ・レベル５０２は、ソース・ビデオ（例えばｓｏｕｒｃｅｌ．ｍｐ４）における１つ以上のタイル表現５０６１−３を規定するタイル構成情報に関する。通例、ソース・ビデオは、１つ以上の高解像度と、しばしば、広視野ＨＤビデオ・ストリーム若しくはファイルまたは尚もＵＨＤビデオ・ストリーム若しくはファイルとに基づいて形成される。
【００８８】
次のデータ・レベル５０８は、タイル表現５０６１−３を規定する。タイル表現５０８は、特定の品質を有するＨＥＶＣタイル５１１のセットを規定する。ＨＥＶＣタイル・インスタンス５１２１−４はＨＥＶＣタイルを規定する。一実施形態では、ＨＥＶＣタイルのセットは、ＨＥＶＣでタイル化されたストリームのＨＥＶＣタイル・トラックとして規定される。本発明の一実施形態では、ＨＥＶＣタイルのセットは、個々に格納可能でアクセス可能なＨＥＶＣタイル・ストリームのセットとして規定される。
【００８９】
タイル位置情報は、特定のタイル表現について、ＨＥＶＣでタイル化されたストリームにおけるＨＥＶＣタイルの位置を規定する。例えば、２つのＨＥＶＣタイル（タイル位置（１，１）および（１，２））は、ソース・ビデオ（関連するＨＥＶＣでタイル化されたビデオ）のイメージ領域の上半分に関連付けられるコンテンツを含む。
【００９０】
タイル表現は、更に、ソース・ビデオの解像度バージョンを示す、ソース解像度５１０に関する情報を含み、空間マップにおいて参照されるＨＥＶＣタイルを生成するのに使用される。例えば、図５では、空間マップにおいて参照されるＨＥＶＣタイルは、４０９６×２１６０の解像度バージョンのソース・ビデオに基づいて生成される。
【００９１】
一実施形態では、１つのＨＥＶＣタイルに関連付けられるデータは、タイル情報５１８１，２（即ち、個々のＨＥＶＣタイルに関する情報）として構築される。タイル情報は、ＨＥＶＣタイルの位置情報５２０１，２（例えばタイル座標）を含む。タイル座標は、絶対座標系、或いは相対座標系に基づき、また、ＨＥＶＣデコーダによって使用され、ＨＥＶＣタイルを、表示のためのシームレスなビデオ・イメージに空間的に配置する。
【００９２】
タイル情報は、更に、１つ以上のタイル識別子５２２１，２（例えばＵＲＩまたはＵＲＬの一部）を含む。一実施形態では、ＨＥＶＣタイル・ストリームにおいてＨＥＶＣタイルのビデオ・データをクライアント・デバイスに送信するように構成される１つ以上の配信ノードを位置決定するために、および／または、１またはそれ以上の特定のファイル、好ましくはそれら配信ノードの内１つのストリーム可能ファイルを位置決定するために、タイル情報が使用される。
【００９３】
一実施形態では、ＳＭＦは更に、１つ以上のＲＯＩストリームのデータ構造５０５（例えば、マニフェスト・ファイル、またはマニフェスト・ファイルへの参照）を含む。ここでは、ＲＯＩ・ストリームは、ＨＥＶＣタイルと同一のソース・ビデオに基づいて生成される。一実施形態では、ＲＯＩストリームは、ＲＯＩ位置情報を含む。別の一実施形態では、ＳＭＦは、ファイルへの参照（例えばＵＲＬ）、またはＲＯＩ５０７の位置情報を含むストリームを含む。
【００９４】
図６は、本発明の一実施形態によるＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイル６００を示す。特に、図６は、異なるＭＰＤビデオ要素を規定するＭＰＥＧ−ＤＡＳＨＭＰＤについての例を示し、識別子（例えばＵＲＬまたはＵＲＩの一部）に関連付けられる。（クライアント・デバイスに常駐する）ＤＡＳＨクライアントは、識別子を使用して、ＭＰＤビデオ要素に関連付けられるビデオ・データにアクセスおよび取り出すことができる。例えば、この例では、第１ＭＰＤビデオ要素６０２は、少なくとも１つのパノラマ・ビデオ（ＵＲＩ「ｆｕｌｌ＿ｐａｎｏｒａｍａ．ｍｐ４」６０６によって規定される広視野ビデオ）に関連付けられる。第２ＭＰＤ要素６０４は、ＲＯＩビデオ（ＵＲＩ「ｚｏｏｍｅｄ＿ｐａｒｔ．ｍｐ４」６０８によって規定されるＲＯＩビデオ）に関連付けられる。複数のＭＰＤビデオ要素の間の空間的関係の少なくとも一部は、位置情報に基づいて規定され、以下により詳細に説明する。
【００９５】
ＭＰＤビデオ要素は、「ＡｄａｐｔａｔｉｏｎＳｅｔ」属性として規定され、１つ以上の表現を含む（異なるバージョンの同一または関連するコンテンツにおいて、相違が１つ以上のエンコーディング・パラメータによって定められる。）。
【００９６】
ＤＡＳＨクライアントは、ＭＰＤの情報を使用して、ネットワークからＭＰＤビデオ要素に関連付けられるビデオ・データを要求することができる。更に、ＤＡＳＨクライアントは、ＭＰＤの情報（メタデータ）を使用して、ＨＥＶＣデコーダを構成することができる。ＨＥＶＣデコーダは、ビデオ・データを受け取るとすぐに、ＨＥＶＣでエンコードされたストリームにおけるビデオ・データのデコードを開始することができる。ＨＥＶＣデコーダを構成するための情報（メタデータ）は、複数のＭＰＤビデオ要素の間、この場合は、ＨＥＶＣでタイル化されたパノラマ・ビデオ・ストリームとＲＯＩストリームの間の空間的関係を含む。そのために、ＭＰＤの作成者は位置情報をＭＰＤに含める。位置情報は、１つ以上の空間的関係の記述（ＳＲＤ）６１０，６１２によって規定される。ＳＲＤは、ＥｓｓｅｎｔｉａｌＰｒｏｐｅｒｔｙ属性（記述子を処理するときにクライアントによって理解されるのに必要とされる情報）、またはＳｕｐｐｌｅｍｅｎｔａｌＰｒｏｐｅｒｔｙ属性（記述を処理するときにクライアントによって破棄される情報）において使用され、デコーダ（特にＨＥＶＣデコーダ）に対し、ＭＰＤビデオ要素の間に空間的関係が存在するのを通知することができる。一実施形態では、空間的関係記述子ｓｃｈｅｍｅＩｄＵｒｉ「ｕｒｎ：ｍｐｅｇ：ｄａｓｈ：ｓｒｄ：２０１４」が用いられる。
【００９７】
一実施形態では、位置情報は、＠ｖａｌｕｅ属性６１４，６１６に基づいて定められ、これに限定されないが以下のものを含む複数のパラメータを含む。即ち、
−ｓｏｕｒｃｅ＿ｉｄパラメータ（６１８，６１９）は、相互に空間的関係を有するＭＰＤ要素（ＡｄａｐｔａｔｉｏｎＳｅｔまたはＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎ）のセットを規定する。
−位置パラメータ（６２０，６２１）ｘ，ｙ，ｗ，ｈは、ＭＰＤビデオ要素の位置を規定し、ここでは、座標ｘ，ｙがＭＰＤビデオ要素におけるイメージ領域の起点を規定し、ｗ，ｈがイメージ領域の幅と高さを規定する。位置パラメータは、所与の任意の単位（例えばピクセル単位）で表されてよい。
−集合ＷおよびＨ（６２２，６２３）は、ｘ，ｙ，ｗ，ｈと同一の任意の単位で表される基準スペースのサイズ(dimension)を規定する。
−ｓｐａｔｉａｌ＿ｓｅｔ＿ｉｄ（６２４，６２５）は、コヒーレント・グループにおけるＭＰＤ要素をグループ化するのを許容する。このようなＭＰＤ要素のグループは、例えば、解像度レイヤ・インジケータとして用いられる。
−動的パラメータ（６２６）は、空間表現の記述子の位置６１２が経時的に変化することをシグナリングするのに使用される。その場合、ｘおよびｙの値は０にセットされ、これは、ＭＰＤが値を供給しないが、ＭＰＤ外でシグナリングされることを意味する。表現（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ）の位置は、暗に、ビデオ・コンテナで見つけられることになる。
【００９８】
したがって、図６に示されるように、マニフェスト・ファイルは、１つ以上のＨＥＶＣでタイル化されるストリーム（例えば、ＨＥＶＣでタイル化されたパノラマ・ストリーム）と、相互に空間的関係を有する１つ以上の動的なＲＯＩストリームとを規定する。異なるＭＰＤビデオ要素が有する位置情報のソース・パラメータ「１」は、異なるＭＰＤビデオ要素が相互に空間的に関係することを示す。
【００９９】
複数のストリーム間の初期の空間的関係は、ＨＥＶＣでタイル化されたストリームとＲＯＩストリームの位置パラメータに基づいて規定される。その後に、複数のストリーム間の空間的関係は、時間と共に連続的に変化する。何故ならば、ＭＰＤのＲＯＩストリームが（動的パラメータによって示されるように）「動的（ｄｙｎａｍｉｃ）」なＲＯＩストリームとして規定されるからである。ＲＯＩの移動は、ＲＯＩ位置情報によってクライアントに提供される。ＲＯＩ位置情報は、ＲＯＩ位置データ（ＲＯＩ座標）を含み、ＲＯＩストリームでクライアント・デバイスに送信される。
【０１００】
したがって、ＭＰＤビデオ要素に関連付けられる位置情報は、ＤＡＳＨクライアントが用いて、ビデオ・データが実際にクライアントによって受け取られる前に、ストリームの空間的関係についてＨＥＶＣデコーダに通知する。このようにして、ＨＥＶＣデコーダは初期化され、データを受け取るとすぐにビデオ・データのデコードを開始する。
【０１０１】
図７は、本発明の別の一実施形態によるＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイル７００を示す。特に、図７は、異なるＭＰＤビデオ要素を規定するＭＰＥＧ−ＤＡＳＨのＭＰＤの例を示し、ＨＥＶＣでタイル化された少なくとも１つのビデオ・ストリームに関連付けられる少なくとも１つの第１ＭＰＤビデオ要素７０２（この特定の例では、ＵＲＬ「ｆｕｌｌ＿ｐａｎｏｒａｍａ．ｍｐ４」によって特定される広視野ビデオ）と、ＲＯＩビデオ・ストリームに関連付けられる少なくとも１つの第２ＭＰＤ要素７０４（この特定の例では、ＵＲＬ「ｒｏｉ．ｍｐ４」によって規定されるＲＯＩビデオ）と、を含む。ここでは、ＨＥＶＣでタイル化されたビデオ・ストリームおよいｂＲＯＩストリームにおける異なるＨＥＶＣタイル間の空間的関係は、位置情報に基づいて（１つ以上のＳＲＤの形態で）規定される。
【０１０２】
第１ＭＰＤビデオ要素はＡｄａｐｔａｔｉｏｎＳｅｔとして規定され、表現（Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ）７０３と、１つ以上のサブ表現（ＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎｓ）７１６１−４（即ち、図３を参照して説明したように、コンテナ・レベルにおけるトラックの概念にリンクできるこのＲｅｐｒｅｓｅｎｔａｔｉｏｎを構成する部分）と、を含む。このことは、例えば、コンテンツ（オーディオおよびビデオ）が別々のトラックにおける同一のファイル・コンテナで多重化(mux)される場合である。一実施形態では、第１ＭＰＤビデオ要素は、ＨＥＶＣでタイル化されたビデオ・ストリームを規定する。ここでは、Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ７０３は、タイル化された広視野パノラマ・ストリーム（この場合、４つのＨＥＶＣタイルを含む）を規定する。ＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎ７１６１−４は、個々のＨＥＶＣタイルを規定する。ここでは、各ＨＥＶＣタイルは、上記図３に示されるように、ＭＰＥＧストリームにおける別個のトラックとして格納される。トラックのビデオ・データはエンコードされて、デコーダにより、ＨＥＶＣタイル（の時間セグメント）の独立した再生を可能とする。
【０１０３】
エンコーダ属性「コーデック」７１９１−４は、ビデオ・データがＨＥＶＣタイルに属することを示す「ｈｖｔ１」のタイプ・コーデックに関連する（ｈｖｔｌにおけるｔはタイルに関連する。）。更に、ＳｕｂＲｅｐｒｅｓｅｎａｔｉｏｎの各ＨＥＶＣタイルは、ＨＥＶＣタイルの位置を規定するための１つ以上の位置パラメータ７２０１−４を含むＳＲＤ７１８１−４に関連付けられる。
【０１０４】
第２ＭＰＤビデオ要素は、ＲＯＩビデオのＥｓｓｅｎｔｉａｌＰｒｏｐｅｒｔｙ属性においてＲＯＩビデオ・ストリームのＳＲＤ７０６を、ＲＯＩストリームの位置を規定する１つ以上の位置パラメータ７０８と共に規定する。
【０１０５】
一実施形態では、ＳＲＤ方式は、ｓｃｈｅｍｅｌｄＵｒｉ「ｕｒｎ：ｍｐｅｇ：ｄａｓｈ：ｓｒｄ：２０１４」によって規定される。ここでは、空間的関係が、＠ｖａｌｕｅ属性値７０８，７１０，７１４，７２０１−４に基づいて規定される。ＲＯＩストリームのＲＯＩ座標は時間と共に変化するので、ＲＯＩビデオのＳＲＤは、図６を参照して詳細に説明したように、「ｄｙｎａｍｉｃ」パラメータ７１０を含む。
【０１０６】
第１ＭＰＤビデオ要素および第２ＭＰＤビデオ要素のＳＲＤ７１２，７０６，７１８１−４は、異なるストリーム間の空間的関係についてＨＥＶＣデコーダに通知するように使用される。
【０１０７】
図７の例では、ＨＥＶＣでタイル化されたストリームは、クライアント・デバイスに対し、１つのストリームとして送られる。再生のためのＨＥＶＣタイルの選択は、デコーディングの段階で実現される。
【０１０８】
一実施形態では、トラック・ビデオ・データを連続して格納することにより、ＤＡＳＨクライアントが、１つのＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎに対応するＳｕｂＳｅｇｍｅｎｔｓの一部を取り出すのを可能にする。このようなＨＴＴＰ要求は、バイト範囲のシグナリングを使用する。ここでは、ＩＳＯ／ＩＥＣ１４４９６のパート１２による所謂「ｓｓｉｘ」ボックスでＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎごとにバイト範囲が提供される。
【０１０９】
トラックから抽出される時間的セグメントがそれ自体で独立(self-sufficient)していない場合は、初期化セグメントＵＲＬ（ＩｎｉｔｉａｌｉｚａｔｉｏｎＳｅｇｍｅｎｔ ＵＲＬ）がＲｅｐｒｅｓｅｎｔａｔｉｏｎの属性として提供され、この課題を解決する。所謂初期化セグメントは、ＨＥＶＣタイルのセグメントでビデオ・データをレンダリングするのに必要となるメタデータを含んで規定される。初期化セグメントでは、ＨＥＶＣタイルのタイル構造および／または位置が提供される。
【０１１０】
図８Ａは、本発明の別の一実施形態によりＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイル８００を示す。特に、図８Ａは、異なるＭＰＤビデオ要素８０２，８０３１，２，８０４を規定するＭＰＥＧ−ＤＡＳＨのＭＰＤの例を示す。第１ＭＰＤビデオ要素８０２は、ＵＲＩ「ｆｕｌｌ＿ｐａｎｏｒａｍａ−ｂａｓｅ．ｍｐ４」８１４１によって規定される、ＨＥＶＣでタイル化されたパノラマ・ビデオに関連付けられる。ここで、ＨＥＶＣでタイル化されたパノラマ・ビデオは、「エクストラクタ」(extractor)を含むベース・トラックとして規定される。エクストラクタは、（図３を参照して説明したのと同様にして）ＭＰＤビデオ要素８０３１，２によって規定される、１つ以上の個別にアドレス可能なタイル・トラックを参照する。
【０１１１】
ＭＰＤビデオ要素８０３１は、第１タイル識別子８１４２（「ｆｕｌｌ＿ｐａｎｏｒａｍａ−ｔｉｌｅ１．ｍｐ４」）によって特定される第１ＨＥＶＣタイルのビデオ・データを含む第１タイル・トラックを規定する。また、ＭＰＤビデオ要素８０３２は、第２タイル識別子８１４３（「ｆｕｌｌ＿ｐａｎｏｒａｍａ―ｔｉｌｅ２．ｍｐ４」）によって特定される第２ＨＥＶＣタイルのビデオ・データを含む第２タイル・トラックを規定する。最後のＭＰＤビデオ要素８０４は、ＲＯＩビデオ・ストリーム（この特定例では、ＲＯＩストリーム識別子「ｚｏｏｍｅｄ＿ｐａｒｔ．ｍｐ４」８０６によって規定されるＲＯＩビデオ）を規定する。
【０１１２】
位置情報は、ＲＯＩビデオにおけるＥｓｓｅｎｔｉａｌＰｒｏｐｅｒｔｙ属性のＳＲＤ８０と、ＭＰＤビデオ要素のＳｕｐｐｌｅｍｅｎｔａｌＰｒｏｐｅｒｔｙ属性のＳＲＤ８１６１−３を含む。当該位置情報は、ＭＰＤビデオ要素の間の空間的関係についてＨＥＶＣデコーダに通知するのに使用される。一実施形態では、空間的関係の記述子ｓｃｈｅｍｅｌｄＵｒｉ「ｕｒｎ：ｍｐｅｇ：ｄａｓｈ：ｓｒｄ：２０１４」が、位置情報を規定するのに使用される。ここでは、空間的関係は、＠ｖａｌｕｅ属性値８１０，８１８１−３、および図６を参照して説明した「ｄｙｎａｍｉｃ」パラメータに基づいて規定される。
【０１１３】
この特定の実施形態では、ＨＥＶＣタイルは、独立して格納可能且つアドレス可能なＨＥＶＣタイル・ストリームとしてフォーマット化される。＠ｉｄ「パノラマ（ｐａｎｏｒａｍａ）」によって特定される  Ｒｅｐｒｅｓｅｎｔａｔｉｏｎ８０２は、図３を参照して先に説明したベース・トラックを表し、また、＠ｉｄ「ｔｉｌｅ１」および「ｔｉｌｅ２」によって特定されるＲｅｐｒｅｓｅｎｔａｔｉｏｎ８０３１，２によって規定されるＨＥＶＣタイルの結合に使用される。
【０１１４】
したがって、クライアントはＳＭＦを使用して、ＨＥＶＣでタイル化されたパノラマ・ビデオ・ストリーム（ベース・トラック内の情報を使用）および配信ノードからのＨＥＶＣタイル・ストリームの何れかを要求することができる。次いで、要求されたトラックを受け取ると、デコーダは、ベース・トラックを解析し、また、ベース・トラックにおいてエクストラクタを、それが参照するタイル・トラックにおけるオーディオおよび／またはビデオ・データと置き換える。或いは、別の一実施形態では、クライアントはＳＭＦを使用して、別個のＨＥＶＣタイル・トラックを個別に要求する。そして、ＨＥＶＣデコーダはレンダリングのためにタイル・トラックをデコードする。
【０１１５】
図８Ｂは、本発明の別の一実施形態によりＲＯＩストリーミング・プロセスを管理するための空間的マニフェスト・ファイル８００を示す。特に、図８Ｂは、図８Ａを参照して説明したのと同様の方法で、２つのＨＥＶＣタイルを含む、ＨＥＶＣでタイル化されたパノラマ・ビデオを規定するＭＰＥＧ−ＤＡＳＨのＭＰＤの例を示す。しかしながら、この実施形態では、ＲＯＩストリーム８２２が、ＲＯＩビデオ・データに関連付けられる第１ＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎ８２４＿１と、ＲＯＩ座標に関連付けられる第２ＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎ８２４＿２と、を含むＲｅｐｒｅｓｅｎｔａｔｉｏｎとして記述されるという意味において、ＲＯＩストリーム８２２は異なって規定される。
【０１１６】
したがって、この特定の一実施形態では、ＲＯＩビデオ・データおよびＲＯＩ座標は別個のトラック、即ち、（コーデック属性「ｈｖｃ１」８２６と示される）ＨＥＶＣでエンコードされたビデオ・データを含むビデオ・トラックと、（コーデック属性「ｃｏｏｒ」８２８と示される）座標を含むメタデータ・トラックと、に格納される。
【０１１７】
したがって、上記のことから、クライアントは、ＳＭＦの情報を使用して、所望のビデオ・データをクライアントに配信できるネットワーク・ノードに配信ノードを位置特定するだけではなく、ＳＭＦに規定される、ＨＥＶＣでタイル化されるストリームおよびＲＯＩストリームのメタデータも使用する。その結果、デコーダは、ＨＥＶＣでタイル化されたビデオ・データおよび／またはＲＯＩ（ビデオ）データがクライアントによって受け取られる前に構成される。このメタデータは、例えば次のものを含むことができる。即ち、
−選択された空間セグメントが、ＨＥＶＣでタイル化されたビデオ・データ（例えばコーデック属性「ｈｖｔ１」）に関連することを決定するための情報、
−ＨＥＶＣタイルのビデオ・データが、（ＨＥＶＣタイルを規定するＳｕｂＲｅｐｒｅｓｅｎａｔｉｏｎを用いて）別個のトラックに格納されることをシグナリングするための情報、
−ＨＥＶＣタイルの数および／またはサイズ（例えば、ＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎとして、および／またはＳＲＤに関連付けられる位置情報の一部として表されるＨＥＶＣタイルの数）を決定するための情報、
−ＨＥＶＣタイルの位置またはＲＯＩストリームの位置（例えば、ＳＲＤに関連付けられる位置情報の一部）を決定するための情報、
−ＲＯＩ位置および／またはＲＯＩのサイズが（「ｄｙｎａｍｉｃ」パラメータを用いて）時間と共に変化することをシグナリングするための情報、
−（例えば、メタデータ・トラックを規定するＳｕｂＲｅｐｒｅｓｅｎｔａｔｉｏｎを使用して）ＲＯＩビデオ・データとは別個にＲＯＩ位置情報がトラックに格納されることをシグナリングするための情報、である。
【０１１８】
図９は、本発明の一実施形態によるクライアント・デバイスを示す。特に、図９は、メディア・プレーヤ９０６によって処理された（タイル化された）コンテントとのユーザ相互作用を解釈するユーザ・ナビゲーション機能９０４を含むクライアント・デバイスを示す。メディア・プレーヤ９０６は、ＨＥＶＣデコーダ９２２およびクロッパ９２４を含む。ユーザ・ナビゲーション機能はユーザ・インタフェースに接続される。ユーザ・インタフェースは、タッチ・スクリーン、カメラ、キーボード、マウス、トラックボール、ジョイスティック、マイクロフォン、頭部トラッキング・センサ、目および凝視トラッキング、ボタン、または表示されたコンテンツの操作（例えば、パニング、ズーミングおよび／またはチルティング）を可能にする他の如何なるマンマシン・インターフェースも含む。
【０１１９】
クライアント・デバイスは、ネットワーク内のコンテンツ・プロバイダまたはコンテンツ・ソース（例えば、メディア・サーバまたはＣＤＮ）から１つ以上の空間的マニフェスト・ファイル（ＳＭＦ）を受け取るためマニフェスト・キャッシュ９２２を更に含む。図５から図８を参照して詳細に説明したように、ＳＭＦ９１６は、１つ以上のＨＥＶＣでタイル化されたストリームのタイル識別子（ＵＲＬ）（の一部）を規定する。更に、ＳＭＦは、ＨＥＶＣタイルの位置を含むタイル位置情報を含む。
【０１２０】
実施形態の中には、ＳＭＦは、ＨＴＴＰ適応型ストリーミング・プロトコルに基づいてフォーマット化されるＲＯＩストリームを規定するデータ構造を更に含むものもある。或いは、ＲＯＩストリームを規定するデータ構造は、別個のマニフェスト・ファイルとしてマニフェスト・キャッシュに格納されてもよい。
【０１２１】
一実施形態では、ＲＯＩストリームは、ユニキャスト・ストリームである。別の一実施形態では、ＲＯＩストリームは、ＲＯＩ座標が埋め込まれたマルチキャスト・ストリームまたはブロードキャスト・ストリームである。その場合、クライアント・デバイスは、ブロードキャスト・ストリームまたはマルチキャスト・ストリームのそれぞれを要求する（チューン・インする、またはジョインする）ように構成される。
【０１２２】
マニフェスト・キャッシュは、ストリーム・リトリーバ９１０およびストリーム・セレクタ９１２に接続される。ストリーム・セレクタは、１つ以上のストリーム（ＨＥＶＣでタイル化されたストリーム、１つ以上のＨＥＶＣタイル・ストリーム、および／またはＲＯＩストリーム）を選択し、ストリーム・リトリーバに、特定の方式にしたがってネットワーク９２０から１つ以上の選択されるストリームを要求するように指示する。
【０１２３】
ユーザ相互作用がないデフォルトの状況では、ＳＭＦに関連付けられるコンテンツは、ＲＯＩストリームに基づいてクライアント・デバイスにストリームされる。ＲＯＩストリームは、図１および図２を参照して詳細に説明したようにＲＯＩ位置情報を含む（または関連付けられる）。したがって、ＲＯＩストリームがＨＡＳストリームの場合は、ストリーム・セレクタは、ストリーム・リトリーバに、（デフォルトの）ＲＯＩストリームの時間的セグメントを要求するように指示する。ＲＯＩストリームのセグメントは、ストリーム・プロセッサによって処理されるのではなく、メディア・プレーヤのバッファ９０８に直接転送される。同様に、ＲＯＩストリームがブロードキャスト・ストリームまたはマルチキャスト・ストリームの場合は、ストリーム・セレクタは、必要なブロードキャスト・ストリームに向けてジョインまたはチューニングし、また、パケットをバッファ９０８に直接転送する。
【０１２４】
ユーザ・ナビゲーション機能がユーザ相互作用によってトリガされると、ユーザ・ナビゲーション機能は、ストリーム・プロセッサに、ＲＯＩルとリームからＲＯＩ位置情報を抽出し、ＲＯＩジェネレータにその情報を転送するように指示する。ＲＯＩジェネレータはＲＯＩ座標の生成を開始する。ここでは、第１座標がＲＯＩストリームの１つ以上のフレームにおけるＲＯＩ座標に対応する。ＲＯＩ座標は、ユーザ相互作用が検出された時間インスタンスにおいてクライアント・デバイスによって処理されている。
【０１２５】
別の一実施形態では、ストリーム・プロセッサは常に、ＲＯＩストリームからＲＯＩ位置情報を抽出し、この情報をＲＯＩジェネレータに供給する。その場合、ＲＯＩストリームのストリーミングおよびレンダリングの間に、レンダリングされたフレームのＲＯＩ座標は常に、クライアント・デバイスに利用可能である。実施形態の中には、ＲＯＩ位置情報は、フレームをデコードすることなく、ＲＯＩストリームから抽出されるものもある。別の一実施態様では、ＲＯＩ位置情報は、フレームをデコードした後にＲＯＩストリームから抽出される。その場合、ストリーム・プロセッサは、エンコードされたフレームをデコードするためのデコーダを備えるメディア・プレーヤの一部となる。
【０１２６】
ＲＯＩジェネレータは、ユーザ・ナビゲーション出力に基づくＲＯＩ座標およびＲＯＩストリームのＲＯＩ座標の計算を開始する。一実施形態では、ユーザ・ナビゲーション機能はユーザ相互作用を解釈し、ＲＯＩベクトルを生成する。ＲＯＩベクトルは、ＲＯＩジェネレータによって、特定のユーザ相互作用と関連付ける新規のＲＯＩ座標を計算することを可能にする。例えば、ユーザ・ナビゲーション機能は、１フィンガのスライド・ジェスチャを、ＲＯＩのパニング（変換(translation)）に解釈し、そのＲＯＩジェネレータのために変換ベクトルを生成する。同様にして、２本指のピンチ・ジェスチャはＲＯＩのズーム・アクションとして、ボタン・ホールドは、ＲＯＩのフリーズとして、また、口頭のユーザ命令「フル・スクリーン」はフル・スクリーンへのズーミングとして解釈される。ＲＯＩジェネレータは、ユーザ入力を受け取ると、ＲＯＩ座標の計算を継続する。
【０１２７】
ストリーム・セレクタがＲＯＩジェネレータから計算済みのＲＯＩ座標を受け取るときに、ストリーム・セレクタは、ＳＭＦのタイル位置情報と、ＲＯＩジェネレータから生じる計算済みのＲＯＩ座標とを使用して、全イメージ領域内のサブ領域を形成するのに使用される隣接ＨＥＶＣタイルのセットを選択する。ここでは、各ＨＥＶＣタイルのビデオ・データは独立して格納可能であり、またデコード可能である。これらＨＥＶＣタイルと関連付けられるビデオ・データは、次いで、図１から図９を参照して上述したＳＭＦに基づいて要求され、別個のＨＥＶＣタイル・ストリームのセットとして、クライアント・デバイスにストリームされる。ＨＥＶＣタイル・ストリームの受け取りの後に、ストリーム・プロセッサは、異なるＨＥＶＣタイル・ストリームのビデオ・データを同期および多重化(mux)し、その後に、ＲＯＩを含むイメージ領域についてデコードされるイメージ・データを生成するために、ＨＥＶＣデコーダ９２４にビデオ・データを送る。イメージ領域はＲＯＩ座標に基づいてクロッパ９２６によって切り取られる。つまり、最終的なＲＯＩは、デコード・プロセスから生じるイメージ領域よりも小さい。切り取られたイメージ（それぞれがＲＯＩを含む）は、ディスプレイ（非図示）にバッファおよびレンダリングされる。
【０１２８】
したがって、上記のことから、ユーザ相互作用は、クライアント・デバイスに、所定のＲＯＩが表示される（デフォルトの）タイル化されていないＲＯＩストリーム・モードから、ユーザに表示されるＲＯＩがユーザ作用を介して操作されるタイル化されたストリーミング・モードへと切り替えさせる。「所定の」という用語は、イメージ領域内にある当該ＲＯＩの空間的位置が、ある時間期間にわたり予め決定され、また、クライアント・デバイスのコントロール外であるということに関する。一実施形態では、ＲＯＩストリーミング・モードから、タイル化されたストリーミング・モードへと切り替えるときに、クライアント・デバイスは、切り替えに応じてこのような所定のＲＯＩストリームのＲＯＩのＲＯＩ座標を決定し、これらＲＯＩ座標を使用して、タイル化されたストリーミング・モードで実質的に同一のＲＯＩ（例えば、同一サイズおよび実質的に同一位置を有するもの）を形成する。その結果、コンテンツのレンダリングの間におけるスムーズな移行を達成することができる。
【０１２９】
一実施形態では、外部信号は、クライアント・デバイスに、タイル化されていないＲＯＩストリーミング・モードから、タイル化されたストリーミング・モードに切り替えさせる。例えば、ＲＯＩジェネレータをトリガして、ＲＯＩストリームの信号および他の外部信号に基づいてＲＯＩ座標の計算を開始する。
【０１３０】
ＲＯＩストリーミング・モードからタイル・ストリーミングモードへと切り替えるとき、ＲＯＩストリームのフレームおよび選択されたＨＥＶＣタイル・ストリームのフレームが、クライアントによって受け取られ、共通のコンテンツ再生タイムラインに基づいて同期される。その結果、スムーズ、更にはシームレスな両モード間の移行を可能にすることができる。
【０１３１】
図１０Ａおよび１０Ｂは、本発明の実施形態によるクライアント・プロセスの概要図を示す。特に、図１０Ａは、ユーザ・ナビゲーション機能から生じる情報に基づいてＲＯＩの生成を制御するためのクライアント・プロセスを示す。本プロセスは、（デフォルトの）ＲＯＩストリーミング・モードで開始する（ステップ１０００）。ユーザ相互作用が検出されない限り、クライアント・デバイス（「クライアント」とも称される）は、ＲＯＩストリーム（ＲＯＩストリーミング・モード）に基づいてＲＯＩのレンダリングを継続することができる。ユーザ相互作用がクライアントによって検出されると（ステップ１００２）、ＲＯＩジェネレータが開始され（ステップ１００４）、ストリーム・セレクタおよびストリーム・プロセッサのためにＲＯＩ座標を計算する（ステップ１００６）。ＲＯＩジェネレータによって決定される第１ＲＯＩ座標は、ユーザが相互作用を開始しているＲＯＩストリームにおいてレンダリングされる１つ以上のフレームのＲＯＩ座標に対応する。これらＲＯＩ座標は、ストリーム・セレクタに転送されて（ステップ１００６）、タイル化されたストリーミング・モードに切り替える（ステップ１００８。図１０Ｂを参照してより詳細に説明する）。
【０１３２】
ユーザ・ナビゲーション機能は、特定のユーザ相互作用を解釈し（ステップ１０１０）、当該情報を（ＲＯＩベクトルとして）ＲＯＩジェネレータに転送する。ＲＯＩジェネレータは、クライアントによってレンダリングされるＲＯＩフレームと関連付けられるＲＯＩ位置情報の受け取りを継続する。ＲＯＩジェネレータは、ＲＯＩストリームのＲＯＩ位置情報およびＲＯＩベクトルに基づいて更なるＲＯＩ座標を計算する（ステップ１０１２）。また、計算したＲＯＩ座標をストリーム・セレクタおよびストリーム・プロセッサに転送する。その結果、タイル化されたストリーミング・モードでＲＯＩをレンダリングすることができる。本プロセスは、ユーザ相互作用が検出される限り継続する（ステップ１０１４）。もはやユーザ・アクティビティがないものとＲＯＩジェネレータが検出するときに（ステップ１０１４）、ＲＯＩジェネレータはＲＯＩ座標の生成を停止する。
【０１３３】
特に、図１０Ｂは、ＲＯＩストリーミング・モードでのＲＯＩのレンダリングから、タイル化されたストリーミング・モードでＲＯＩのレンダリングへと切り替えるためのクライアント・プロセスを示す。本プロセスは、計算されたＲＯＩ座標をＲＯＩジェネレータから受け取るストリーム・セレクタによって開始する（ステップ１０２０）。ストリーム・セレクタによって受け取った第１ＲＯＩ座標は、ユーザが相互作用を開始しているＲＯＩストリームにおいてレンダリングされる１つ以上のフレームのＲＯＩ座標に対応する。ストリーム・セレクタは、タイル位置情報およびＲＯＩ座標を使用して、フレームのＨＥＶＣタイルを決定する（ステップ１０２２）。ＨＥＶＣタイルから、イメージ領域が、計算されたＲＯＩを含んで形成される。クライアントは、マニフェスト・キャッシュに格納されたＳＭＦからタイル位置情報を取り出す。
【０１３４】
或いは別の実施形態では、クライアント・デバイス（例えば、クライアント・デバイスのストリーム・プロセッサ）は、（格納済みの）ＨＥＶＣでタイル化されたビデオから直接タイル位置情報を取得する。例えば、図３を参照して詳細にて説明したように、（ファイルとして格納される）ＨＥＶＣでタイル化されたビデオ・ストリームはタイル・トラックを含み、各タイル・トラックはタイル位置情報を含む。その場合、どのＨＥＶＣタイルが所望のＲＯＩと重複するかを決定するのにＳＭＦは必要とされない。
【０１３５】
ストリーム・セレクタは、ネットワークから、選択されたＨＥＶＣタイルに関連付けられたビデオ・データを要求するようにストリーム・リトリーバに指示する（ステップ１０２４）。要求されたＨＥＶＣタイル・ストリームをクライアントが受け取ると、クライアントは、それら共通のコンテンツ再生タイムラインに基づいてストリームを同期し、ＨＥＶＣでタイル化されたビデオ・ストリームを多重化し、そして、デコードのためにビデオ・データをＨＥＶＣデコーダに送る（ステップ１０２６）。デコードされた画像データは、ＲＯＩを含むサブ領域を表し、計算されたＲＯＩ座標に基づいて切り取られる（ステップ１０２８）。切り取られた画像は、バッファされ、ディスプレイ上にレンダリングされる（ステップ１０３０）。上記のプロセスにより、タイル化されたストリーミング・モードへ切り替えるときに、ＲＯＩストリーミング・モードで最後にレンダリングされたＲＯＩが、タイル化されたストリーミング・モードで最初にレンダリングされたＲＯＩと実質的に一致するのを確実にする。このようにして、クライアントは、ＲＯＩストリーミング・モードのＲＯＩのレンダリングから、タイル化されたストリーミング・モードのＲＯＩのレンダリングへのスムーズな切り替えを可能にする。
【０１３６】
図１１Ａおよび図１１Ｂは、本発明の一実施形態によるＲＯＩストリーミング・プロセスを示す。この特定の例では、ＨＥＶＣタイル・ストリームは、適応型ストリーミング・プロトコル（例えば、ＨＴＴＰ適応型ストリーミング・プロトコル）を用いて、ＣＤＮによってクライアント・デバイス（「クライアント」とも称される。）に配信される。本プロセスは、クライアントがコンテンツ・プロバイダＣＰから空間的マニフェスト・ファイルを要求および受け取ることで開始する（ステップ１１００および１１０２）。クライアントは、ＳＭＦを解析し（ステップ１１０４）、ストリーミング・プロセスをＲＯＩストリーミング・モードで開始する。そのためには、クライアントは、ＳＭＦに基づいてＲＯＩストリームの第１時間的（ＲＯＩ）セグメントを選択し、要求メッセージ（例えば、ＨＴＴＰＧＥＴメッセージ）をＣＤＮの要求ルーティングＲＲに送る（ステップ１１０６）。要求ルーティング・ノードは、要求された時間的ＲＯＩセグメントが格納される配信ノードを位置決定し、ローカライズされた配信ノードのＵＲＬをリダイレクト・メッセージでクライアントに送り返す（ステップ１１０８）。「時間的」という用語は、セグメントの（コンテンツの）再生期間に関連付けられる特定の期間をセグメントが有するという見解に関連する。よって、時間的セグメントは、ソース・ビデオ・コンテンツの時間寸法でのセグメント化の結果である。本出願で参照する如何なるセグメントも、特定の再生期間を有する。それに加え、特定カテゴリのセグメント（ＳＭＦまたは空間的マニフェスト・ファイルで参照されるもの）は、追加の空間的セグメント化プロセスの結果である。ここでは、セグメントが、ソース・ビデオ・コンテンツのイメージ領域のサブセット（例えば一部）であるイメージ領域を含むように、ビデオ・コンテンツはセグメント化される。これらセグメントは、場合によっては、空間的セグメントまたはタイル・セグメントと称されることもある。なお、タイル・セグメントは、タイル／（ＨＥＶＣ）タイル・ストリームに関連付けられる時間的セグメントに相当する点が留意されるべきである。空間的セグメントであるが、空間的セグメント化の結果ではないという意味において、ＲＯＩセグメントは異なる。つまり、ＲＯＩセグメントは「静的」な位置情報を有する必要はない（けれども、有する）。これとは対照的に、タイル・セグメントは、経時的に静的であり、空間的セグメント化を反映するタイル位置情報に関連付けられる。クライアントは、ＳＭＦで特定されるＲＯＩセグメントを要求するためにＵＲＬを使用する。
【０１３７】
したがって、リダイレクト・メッセージの後に、クライアントは、要求メッセージを配信ノードに送り返す（ステップ１１１０）。配信ノードは、要求された時間的ＲＯＩセグメントを含む。配信ノードは、要求された第１ＲＯＩセグメントをクライアントに送り返す（ステップ１１１２）。この特定の例では、ＲＯＩセグメントは、ＲＯＩのＲＯＩ座標を含む。ＲＯＩ座標は、ソース・ビデオの空間的表現内で軌跡を定める。ストリーム内でＲＯＩ座標を搬送する異なる方法について、以下により詳細に説明する。第１時間的ＲＯＩセグメントは、クライアントによってバッファおよび再生される（ステップ１１１４）と共に、更なる時間的セグメントのための取り出しプロセスが継続される。
【０１３８】
特定の時間の後、例えば６番目のＲＯＩセグメントの再生の間（ステップ１１１６から１１１８）、クライアントがトリガされ、タイル化されたストリーミング・モードへと切り替える（ステップ１１２０）。例えば、クライアントは、ユーザ・ナビゲーション機能によって解釈されるユーザ相互作用をパニング・アクションとして検出する。タイル化されたストリーミング・モードへと切り替えるトリガに応じて、クライアントは、検出されたユーザ相互作用の間にレンダリングされている１つ以上のフレームに関連付けられた第１ＲＯＩ座標を決定する（ステップ１１２２）。その後に、クライアントは、上記図９、図１０Ａおよび図１０Ｂを参照して説明したのと同様の方法で、ＲＯＩストリームのＲＯＩ位置情報に基づいて更なるＲＯＩ座標の決定を継続する。
【０１３９】
一実施形態では、クライアントは、第１ＲＯＩ座標およびＳＭＦのタイル位置情報を用いて、ＲＯＩを含むイメージ領域を形成するのに使用される空間的に隣接したＨＥＶＣタイルのセットを決定する。この例では、選択されたＨＥＶＣタイルに関連付けられるＨＥＶＣタイル・ストリームが時間的にセグメント化され、ＨＡＳ（ＨＴＴＰ適応型ストリーミング）プロトコルを使用してタイル・セグメントをクライアントに配信する。その後に、クライアントは、ＳＭＦに基づいて、選択されたＨＥＶＣタイル・ストリームにおけるこれらタイル・セグメントの要求を開始する。特に、クライアントは、ＨＥＶＣタイルにおける選択された時間的セグメントのＵＲＬを含む要求メッセージを送る（この場合、ＨＥＶＣタイル７，１１，１２の７番目の時間的セグメント（即ち、ｖｉｄｅｏ７＿７，ｖｉｄｅｏ７＿１１，ｖｉｄｅｏ７＿１２））（ステップ１１２４から１１２６）。また、これに応じて、選択されたＨＥＶＣタイル・ストリームにおける要求された時間的セグメントを含む配信ノードから応答メッセージを受け取る（ステップ１１２８から１１３０）。
【０１４０】
図３を参照して詳細に説明したように、ＨＥＶＣタイルのビデオ・データが別々のビデオ・トラックに格納される場合はまた、ベース・トラックはクライアント・デバイスによって要求されなければならない（非図示）。エクストラクタを含むベース・トラックは、選択されたＨＥＶＣタイルのビデオ・データを連続イメージにデコードするために、ＨＥＶＣデコーダによって使用される。
【０１４１】
ＨＥＶＣタイル・ストリームを決定および要求する上述したプロセスの間、要請する上記の方法の間、クライアントはＲＯＩセグメントの再生を継続する（非図示）。
【０１４２】
要求されたＨＥＶＣタイル・ストリームの受け取りに応じて、クライアントは、共通のコンテンツ再生タイムラインに基づいて、ＨＥＶＣタイル・ストリームと、レンダリングされたＲＯＩストリームとを同期する。隣接するＨＥＶＣタイル・ストリームにおいて同期されたフレーム（即ち、特定の共通再生時間に関連付けられるフレーム）は、ＨＥＶＣデコーダによって、ＲＯＩを含むイメージ領域にデコードされる（ステップ１１３２）。必要に応じて、要求されたＨＥＶＣタイル・ストリームをクライアントが受け取ったときに、ＲＯＩ座標を用いてイメージ領域を切り取り、再生されているＲＯＩストリームのＲＯＩに実質的に類似するイメージ領域にする。
【０１４３】
ＨＥＶＣタイル・ストリームに基づくイメージ領域の形成が、ＲＯＩストリームにおけるフレームの再生と同期しているときに、クライアントは、ＲＯＩストリームに基づくＲＯＩのレンダリングから、ＨＥＶＣタイル・ストリームに基づくユーザが生成したＲＯＩのレンダリングへと切り替える（ステップ１１３４）。タイル化されたストリーミング・モードでは、クライアントは、ＨＥＶＣタイル・ストリームの時間的セグメントを要求し、共通の再生時間に関連付けられるフレームをイメージ領域にデコードし、そして、（任意で）イメージ領域を切り取った後にイメージ領域をディスプレイにレンダリングする。
【０１４４】
特定の時間の後に、例えば、選択されたＨＥＶＣタイルの８番目および９番目の時間的セグメントに基づいて生成された、切り取られたイメージ領域の再生（ステップ１１３６および１１３８）の後に、ユーザはクライアント・デバイスと相互作用して、デフォルトのＲＯＩストリーミング・モードへと戻すよう切り替える（ステップ１１４０）。このモードでは、コンテンツのレンダリングは、１０番目のＲＯＩセグメントに基づいて継続される（ステップ１１４２）。
【０１４５】
図１２Ａおよび図１２Ｂは、本発明の実施形態により、タイル化されていないストリーミング・モードとタイル化されたストリーミング・モードとの間をシームレスに切り替えるプロセスを示す。図１２Ａおよび１２Ｂに示すように、タイル化されたストリーミング・モードを開始するために選択されているＨＥＶＣタイル・ストリームは、時刻Ｔにおいて、ＲＯＩストリームにおける１つ以上のＲＯＩフレームに関連付けられるＲＯＩ位置情報に基づいて決定される。時刻Ｔでは、クライアントは、タイル化されたモードへと切り替えるための（例えば、ユーザ相互作用による）トリガを受け取る。
【０１４６】
本実施形態は、ＲＯＩストリームまたはＲＯＩストリームの特定部分のために使用される。ここでは、ＲＯＩ軌跡は、隣接するＨＥＶＣタイル・ストリームによって形成されるイメージ領域の外部とはならない。隣接するＨＥＶＣタイル・ストリームは、タイル化されたストリーミング・モードに切り替える信号が受け取られる時刻でクライアントによって選択される。
【０１４７】
図１２Ａは、クライアント・デバイス（「クライアント」とも称される。）が、時刻Ｔにおいて、ＲＯＩストリーミング・モードから、タイル化されたストリーミング・モードへと切り替える信号を受け取る状況を示す。当該時刻では、クライアントは、ＲＯＩストリームのフレームｆをレダリングしている。フレームｆに関連付けられるＲＯＩ位置情報は、ＲＯＩ座標フレームｆ（図１２Ａの位置０）を含む。これらＲＯＩ座標を用いて、フレームｆのＲＯＩを含むイメージ領域を形成するのに使用される、空間的に隣接する（同期された）ＨＥＶＣタイル・ストリームのセットを取り出すことができる。
【０１４８】
選択されたＨＥＶＣタイル・ストリームを取り出すのに必要とされる時間期間Δｔの間、ｎ個のＲＯＩフレームは、クライアントによってレンダリングされる。ここでは、ｎ＝Δｔ＊Ｒであり、また、Ｒは、ＲＯＩストリームをクライアントに送信するために配信ノードによって使用される（平均）フレーム伝送速度である。時刻Ｔ＋ｎでは、クライアントは、要求された隣接するＨＥＶＣタイル・ストリームを受け取り、タイル・フレームをＲＯＩストリームのＲＯＩフレームと同期させて、ＨＥＶＣタイル・ストリームにおいて同期したフレームを、ＲＯＩを含むイメージ領域にデコードする。必要に応じて、クライアントは、時刻Ｔ＋ｎでＲＯＩストリームにおけるＲＯＩのＲＯＩ座標を使用して、時刻Ｔ＋ｎでＲＯＩフレームのＲＯＩに実質的に一致するイメージへとイメージ領域を切り取ることができる。その後に、クライアントは、ＲＯＩストリームに基づくＲＯＩのレンダリングから、切り取られたイメージに基づくＲＯＩのレンダリングへと切り替える。その結果、タイル化されたストリーミング・モードへのスムーズな移行を実現することができる。
【０１４９】
図１２Ｂは、図１２Ａに示されるタイル化されたストリーミング・モードへのスムーズな移行を達成するステップについてのプロセス・フローを示す。最初に、クライアントは、タイル化されたストリーミング・モードに切り替える信号を受け取る（ステップ１２０２）。次いで、フレームｆと関連付けられるＲＯＩ座標がクライアントに供給される（ステップ１２０４）。クライアントは、ＲＯＩ座標およびＳＭＦのタイル位置情報を使用して（ステップ１２０６）、後の時点、即ち、選択されたタイル・ストリームがクライアントによって受け取られる時刻Ｔ＋ｎにおいて、ＲＯＩストリームのＲＯＩを含むイメージ領域を形成するように使用することができる隣接するタイル・ストリームのセットを決定する（ステップ１２０８）。
【０１５０】
選択されたＨＥＶＣタイル・ストリームは取り出されて（ステップ１２１０）、時刻Ｔ＋ｎでクライアントによって受け取られる。その後に、隣接するＨＥＶＣタイル・ストリームのフレームと、レンダリングされたＲＯＩストリームのＲＯＩフレームとが同期される。コンテンツ提示タイムライン上で同一の位置を有する空間的に隣接するＨＥＶＣタイル・ストリームにおけるタイル・フレームｆ＋ｎは、ＨＥＶＣデコーダによってデコードされ（ステップ１２１２）、ＲＯＩストリームのフレームｆ＋ｎのＲＯＩを含むイメージ領域を形成する（ステップ１２１４）。次いで、ＲＯＩフレームｆ＋ｎに関連付けられるＲＯＩ座標を用いて、イメージ領域からＲＯＩを切り取る（ステップ１２１６）。その後に、コンテンツの表示が、ＲＯＩストリームにおけるＲＯＩフレームのレンダリングから、ＨＥＶＣタイル・ストリームのビデオ・データによって提供される、切り取ったイメージ領域のレンダリングへと切り替えられる（ステップ１２１８）。このようにして、ＲＯＩストリーミング・モードから、タイル化されたストリーミングへとスムーズに移行する。
【０１５１】
如何なる特定の理由でも、タイルが未だ受け取られていないので、および／または、ＲＯＩが、要求された隣接するＨＥＶＣタイル・ストリームによって規定されるイメージ領域の（部分的に）外側にあるので、表示された領域が利用可能ではない場合、フォール・バック機構が実装される。一実施形態では、ストリーミング・プロセス全体にわたり、ソース・コンテンツの低解像度のビデオ・ストリームは、バックグラウンド・プロセスとしてクライアントにストリームされる。特定のコンテンツが利用可能ではないとき、低解像度ビデオを使用して、欠落したコンテンツを一時的に切り取り、該コンテンツを、欠落したＨＥＶＣタイルが取り出される間にレンダリングすることができる。このようにして、高品質ビデオが幾分遅れてレンダリングされる場合であっても、タイル化されたストリーム・モードへのスムーズな移行が達成される。
【０１５２】
図１３Ａおよび図１３Ｂは、本発明の別の一実施形態により、ＲＯＩストリーミング・モードと、タイル化されたストリーミング・モードとの間をシームレスに切り替えるプロセスを示す。幾らかの状況では、（特に、データがベストエフォート・ネットワークを通じて配信されるときに）タイル・セグメントを取り出す時間Δｔは数秒のオーダとなることがある。更に、幾らかの状況では、ＲＯＩストリームにおけるＲＯＩの軌跡は、非常に動的なものとなることがあり、例えば、ソース・ファイルのイメージ領域において短い時間期間で大きな変換および／またはズーミング・アクションを含むことがある。したがって、ＨＥＶＣタイルの時間的セグメントの取り出し時間の間、ＲＯＩの軌跡は、時刻Ｔで当初選択されたタイルのセットにおけるイメージ領域の外側にシフトされる。その結果、ＲＯＩストリーミング・モードから、タイル化されたストリーミング・モードへのスムーズなレンダリングの移行が妨害されることになる。
【０１５３】
この課題に対処するために、本発明の特定の実施形態では、ＲＯＩ位置情報は、ＲＯＩビデオ・ストリームの１つ以上のビデオ・フレームに関連付けられる先行(look-ahead)位置情報（例えば、先行位置）を含む。１つ以上のビデオ・フレームは、このような先行位置情報が受け取られるときには、未だクライアントによって受け取られていない。一実施形態では、先行位置情報は、ＲＯＩビデオ・ストリームの１つ以上のイメージ・フレームにおける１つ以上の時間シフトされた第１ＲＯＩ座標を含む。１つ以上のビデオ・フレームは、先行位置情報が受け取られるときには、未だクライアントによって受け取られていない。したがって、これら時間シフトされたＲＯＩ座標は、関連付けられるイメージ・フレームを受け取るのよりも前に、クライアント・デバイスに供給されている。更なる一実施形態では、時間シフトされたＲＯＩ座標は、時間シフトを決定するための時間シフト情報（好ましくは、タイム・スタンプ）に関連付けられる。時間シフトは、時間シフトされたＲＯＩ座標の受け取りと、それらが関係するビデオ・コンテンツ（好ましくは１つ以上のイメージ・フレーム）の受け取りとの間の期間を表す。本実施形態では、クライアント・デバイスが事前にＲＯＩ位置情報を受け取ることができるようにＲＯＩ位置情報は時間シフトされる。このようにして、ＲＯＩが、ソース・ビデオのイメージ領域（例えば、ＨＥＶＣでタイル化されたＨＥデオのイメージ領域）内で非常に動的な軌跡を時間と共に追従するときであっても、クライアントは、正確なＨＥＶＣタイル・ストリームを要求することができる。
【０１５４】
図１３Ａおよび図１３Ｂでは、ＲＯＩ位置情報のＲＯＩ座標は、ＲＯＩストリームにおける関連付けられるフレームに関して、事前にクライアントに供給される。一実施形態では、ＲＯＩ位置情報が時間期間（フレーム数で表される）ｎ＝Δｔ×Ｒにわたり時間シフトされ、ここで、ＲはＲＯＩストリームをクライアントに伝送するために配信ノードによって使用される（平均）伝送速度である。時間シフトされたＲＯＩ位置情報は、ＣＤＮまたはネットワークの他のエンティティによって用意される。Δｔは、ＣＤＮがセグメントをクライアントに配信する最大時間期間である。
【０１５５】
時間シフトΔｔは、ネットワークの特徴配信時間に基づいて決定される。例えば、ベスト・エフォート型ネットワークでは、Δｔは比較的大きく（例えば数秒以上）てよい。また、特定のＱｏＳ規則にしたがってデータが配信されるネットワークでは、Δｔはより小さく（例えば数秒未満または１秒未満でも）てよい。
【０１５６】
上記のプロセスは図１３Ａに概略的に示され、クライアントは、時刻Ｔで、ＲＯＩストリーミング・モードから、タイル化されたストリーミング・モードへと切り替えるための信号を受け取る。その時点では、クライアントは、ＲＯＩストリームのフレームｆをレンダリングしている。フレームｆに関連付けられるＲＯＩ位置情報は、事前にシフトされたＲＯＩ座標である。特に、フレームｆのＲＯＩ位置情報は、将来のＲＯＩフレームｆ＋ｎ（ここでｎ＝Δｔ＊Ｒ）のＲＯＩ座標を含む。クライアントは、時間シフトされたＲＯＩおよびＳＭＦのタイル位置情報に基づいて、ＨＥＶＣタイル・ストリームのセットを決定する。
【０１５７】
期間Δｔ（ｎフレーム）の後に、選択されたＨＥＶＣタイル・ストリームの第１フレームは、時間Ｔ＋ｎでクライアントに到達することになる。クライアントは、共通コンテンツ再生タイムラインに基づいて、ＨＥＶＣタイル・ストリームおよびレンダリングされたＲＯＩストリームを同期させる。隣接するＨＥＶＣタイル・ストリームの同期されたフレーム（特定の共通再生時間に関連付けられる、選択されたＨＥＶＣタイル・ストリームのフレーム）は、ＨＥＶＣデコーダによって、ＲＯＩを含むイメージ領域にデコードされる。次いで、クライアントは、時間シフトされたＲＯＩ座標位置ｆ＋ｎを使用して、ＲＯＩを含むイメージ領域を形成し、フレームｆ＋ｎのＲＯＩに対応するイメージを切り取る。このようにして、ＨＥＶＣタイル・ストリームの取り出しの間にＲＯＩが移動しているときであっても、タイル化されたストリーミング・モードへのスムーズな移行を確実にする。
【０１５８】
図１３Ｂは、図１３Ａに示したタイル化されたストリーミング・モードへのスムーズな移行を達成するためのステップについてのプロセス・フローを示す。最初に、クライアントは、タイル化されたストリーミング・モードに切り替えるための信号を受け取る（ステップ１３０２）。次いで、フレームｆ＋ｎに関連付けられる時間シフトされたＲＯＩ座標がクライアントに供給される（ステップ１３０４）。クライアントは、時間シフトされたＲＯＩ座標およびＳＭＦのタイル位置情報を使用する（ステップ１３０６）。そして、ＲＯＩストリームのフレームｆ＋ｎのＲＯＩを含むイメージ領域を形成するのに使用できる、隣接するタイル・ストリームのセットを決定する（ステップ１３０８）。選択されたＨＥＶＣタイル・ストリームが取り出されて（ステップ１３１０）、時刻Ｔ＋ｎでクライアントによって受け取られる。その後に、隣接するＨＥＶＣタイル・ストリームのタイル・フレームと、レンダリングされたＲＯＩストリームのＲＯＩフレームとが同期される。コンテンツ提示タイムライン上で同一の位置を有する空間的に隣接するＨＥＶＣタイル・ストリームのフレームｆ＋ｎがデコードされる（ステップ１３１２）。そして、ＲＯＩストリームのフレームｆ＋ｎのＲＯＩを含むイメージ領域を形成する（ステップ１３１４）。時間シフトされたＲＯＩ座標フレーム（ｐｏｓｆ＋ｎ）を用いて、イメージ領域からＲＯＩを切り取る（ステップ１３１６）。また、コンテンツの表示が、ＲＯＩストリームにおけるＲＯＩフレームのレンダリングから、ＨＥＶＣタイル・ストリームにおける切り取られたイメージ領域のレンダリングへと切り替えられる（ステップ１３１８）。このようにして、ＲＯＩストリーミング・モードの再生コンテンツが非常に動的なＲＯＩ軌跡に関する場合であっても、ＲＯＩストリーミング・モードから、タイル化されたストリーミングへのスムーズな移行を実施することができる。
【０１５９】
図１３Ａおよび図１３Ｂが、先行位置情報の使用についての一実施形態のみを提供し、他の実装もまた可能であることが提起される。例えば、一実施形態では、先行位置情報は、ソース・ビデオのイメージ領域内におけるＲＯＩの軌跡を予測するアルゴリズムによって、例えば、クライアント・デバイスのバッファにおいて利用可能であるＲＯＩ位置情報を使用する公知の外挿(extrapolation)アルゴリズムを使用して生成される。
【０１６０】
図１４Ａから図１４Ｃは、本発明の様々な実施形態によるＲＯＩ位置情報を示す。図１４Ａは、特定の関心領域を記述するＸＭＬでエンコードされたＲＯＩ位置情報の例を表す。図１４ＡのＲＯＩ位置情報は、３つの連続したＲＯＩタグを示す。
【０１６１】
ＲＯＩタグは、ＲＯＩタグをＲＯＩストリームのＲＯＩフレームに関連付けるための情報を含む。例えば、図１４Ａでは、＜ＡｂｓｏｌｕｔｅＴｉｍｅ＞タグは、タイムスタンプ、またはストリームのフレームを特定するのに用いられる他の（一意の）値を含む。タイムスタンプは、ＲＯＩに関係付けられる絶対時間を規定する。一実施形態では、タイムスタンプは、それが関連付けられるＲＯＩフレームの記録時間を規定する実時間(wall-clock time)を含む。絶対時間は、浮動小数点での表記（例えばＵｎｉｘエポック時間）で１９７０年１月１日からの秒数としてエンコードされる。タイムスタンプを使用するとき、タイムスタンプはまた、フレームが正確なＲＯＩ位置情報（ＲＯＩタグ）に関連付られるようにビデオ・フレーム（１または複数）に埋め込まれてもよい。
【０１６２】
更に、ＲＯＩタグは、ＲＯＩの位置情報を含む。例えば、＜ＰｉｘｅｌＸ１Ｘ２Ｙ１Ｙ２＞タグは、ピクセル単位でＲＯＩの位置を記述する。スクリーンの左上のピクセルは、（Ｘ，Ｙ）＝（０，０）に対応する。このように、Ｘ１はＲＯＩの左側を規定し、Ｘ２はＲＯＩの右側を規定し、Ｙ１はＲＯＩの上部を規定し、そして、Ｙ２はＲＯＩの下部を規定する。フルＨＤ１９２０×１０８０スクリーンのための当該方式では、右下ピクセルは、（Ｘ，Ｙ）＝（１９１９，１０７９）に対応する。
【０１６３】
本例の第１ＲＯＩは、フル・スクリーンを規定することができる。本例の第２ＲＯＩは、中央への８０％のズーミングを表す。本例の第３ＲＯＩは、右側への２０ピクセルの変換を表す。
【０１６４】
図１４Ｂは、ＸＭＬでエンコードされるＲＯＩ位置情報についての別の実施形態を示す。ＲＯＩタグは、ＲＯＩに適用する相対時間を記述する＜ＲｅｌａｔｉｖｅＴｉｍｅ＞タグを含む。相対時間は、ビデオ・コンテンツの出発点からカウントされ、浮動小数点での表記で秒としてエンコードされる。ＲＯＩタグをＲＯＩフレームと関連付けるために、相対時間が関連情報として使用される。相対時間を使用するときは、明確に規定されたＲＯＩストリームの出発点が規定されなければならない。
【０１６５】
更に、ＲＯＩタグは、正規化されたフォーマット（Ｘ，Ｙ，ｚｏｏｍ）で記述される、＜ＮｏｒｍａｌｉｚｅｄＸＹｚｏｏｍ＞タグを含む。ここで、座標「Ｘ，Ｙ」は、ＲＯＩの左上ピクセルの位置を、浮動小数点の表記で示す。ここでは、ＸおよびＹは共に０から１の範囲にある。この例では、スクリーンの左上ピクセルは（Ｘ，Ｙ）＝（０，０）に対応し、フル・スクリーンの右下は（Ｘ，Ｙ）＝（１、１）に対応する。パラメータ「ズーム（ｚｏｏｍ）」はズーム・レベルを規定し、これもまた浮動小数点で表記される。ｚｏｏｍ＝１は、フル・スクリーンに対応する。
【０１６６】
図１４Ｂの第１ＲＯＩタグは、フル・スクリーンを表す。第２ＲＯＩは、左上への５０％のズーミングを表す。本例の第３ＲＯＩは、ＲＯＩの左上のスクリーンの中央への移動を表す。
【０１６７】
図１４Ｃは、ＲＯＩタグで使用されるタグの例を表す。フレーム番号がコンテンツから導出できる場合、ＦｒａｍｅＮｕｍｂｅｒタグは関連情報として使用される。ＰｉｘｅｌＸＹＷＨタグは、Ｘ，Ｙ座標に加え、ピクセル単位で表現されるＲＯＩの幅および高さを規定する。ＲａｄｉａｌＮｏｒｍａｌｉｚｅｄＸＹＲタグは、円形ＲＯＩおよびその半径のＸ，Ｙ座標を規定する。一実施形態では、Ｘ，Ｙ座標は、０から１のスケールに正規化される。ＳｐｅｅｄＰｉｘｅｌｄＸｄＹｄＷｄＨタグは、Ｘ，Ｙ、ＲＯＩの幅、高さの時間微分値を規定し、ピクセル／秒で表現される。
【０１６８】
図１５は、ＲＯＩ位置情報がＭＰＥＧトランスポート・ストリーム（ＭＰＥＧＴＳ）の基本ストリームとして搬送される一実施形態を示す。特に、ＲＯＩストリームのＲＯＩ座標は、プライベート・データ・ストリームＩＤを有する別個のＰＥＳ（パケット化基本ストリーム）でパケット化される。ＲＯＩ座標ストリームと称される当該ＰＥＳストリームは、次いで、更にＲＯＩストリームを含むＭＰＥＧトランスポート・ストリームで多重送信される。
【０１６９】
図１５は、ビデオ・ストリーム（Ｔｙｐｅ＝０ｘ２，ＰＩＤ＝０ｘ１ Ｂ６３）、オーディオ・ストリーム（Ｔｙｐｅ＝０ｘ３，ＰＩＤ＝０ｘ１ Ｂ６４）およびＲＯＩ座標ストリーム（新規Ｔｙｐｅ＝０ｘ２０，ＰＩＤ＝０ｘ１Ｂ６６）を含む ＰＭＴのＸＭＬ表現を示す。新規ストリームＴｙｐｅは、ＲＯＩ座標情報を収容するＰＥＳストリームを示す。当該ストリームＴｙｐｅは、次いで、ＲＯＩ座標ストリームを収容するＰＩＤを示すＰＭＴ（プログラム・マップ・テーブル）テーブルで使用される。
【０１７０】
クライアント側では、ビデオおよびＲＯＩ座標の同期は、ＰＴＳタイムスタンプを用いて実現される。ＰＴＳタイムスタンプは、特定のプログラムに属する全てのパケットに共通である（また、単一のＰＭＴで記述される）。一例では、特定の時間的瞬間で、クライアントがＲＯＩストリームにおけるＲＯＩ座標を検査する必要がある場合、クライアントは現在表示されているビデオ・フレームのＰＴＳ値を検査する。その後に、クライアントは、ＲＯＩ座標（ＲＯＩ座標ストリーム）を含むＰＥＳにおいて、同一のＰＴＳを有するパケットを検索する。このパケット内で、クライアントは、その特定のビデオ・ストリームについてのＲＯＩ座標情報を見つけることになる。
【０１７１】
更なる一実施形態（ＭＰＥＧトランスポート・ストリームでも使用されることもある一実施形態）では新規ストリームＴｙｐｅを規定するのではなく、ＲＯＩ座標データ（例えば（任意に時間シフトされた）ＲＯＩ座標）が、ＤＶＢで定義されたＳＡＤ（同期補助データ；ＳｙｎｃｈｒｏｎｉｓｅｄＡｕｘｉｌａｒｙ Ｄａｔａ）構造（ＴＳ １０２ ８２３参照）を使用して運搬される。その場合、ＰＭＴテーブルは、プライベート・データＰＥＳストリームを示す０ｘ０６のストリームＴｙｐｅを知らせる(advertise)。特定のＳＡＤがＲＯＩ座標を含むことを示すために、新規の補助データ記述子（ＡｕｘｉｌａｒｙＤａｔａ Ｄｅｓｃｒｉｐｔｏｒ）が定義される（ＴＳ１０２ ８２３の５．１参照）。
【０１７２】
新規のＰＥＳストリームＴｙｐｅを規定する替わりにＲＯＩ座標ストリームを搬送および指し示すためにＳＡＤ構造を使用することは別にして、本実施形態の別の全ての態様は、図１５を参照して説明した実施形態についてのものと同様である。ＳＡＤパケットはまたＰＴＳ値を収容するので、これらは、ＲＯＩ座標ストリームおよびＲＯＩストリームの間の同期を提供するのに使用することができる。
【０１７３】
更なる別の実施形態では、時間シフトされたＲＯＩ座標を搬送するために、ＳＡＤパケットは、ＲＯＩ座標データのみならず、座標が関係するタイムスタンプも含む。このようなタイムスタンプは、フレーム番号、コンテンツ・タイムスタンプ、またはＰＴＳ／ＤＴＳ値の形態とすることができる。後者の場合は、パケット・ヘッダのＰＴＳ値は、ＴＳストリームにパケットを配置するためにＴＳマルチプレクサによって使用される。また、ペイロードに含まれるＰＴＳパケットは、座標を特定のビデオ・フレームに関連付けるために使用される。
【０１７４】
図１６Ａおよび図１６Ｂは、ＲＯＩデータがＭＰＥＧストリームのビットストリームで搬送される本発明の一実施形態を示す。特に、図１６Ａは、Ｈ．２６４／ＭＰＥＧ−４ベースのコーデックを使用してエンコードされるＭＰＥＧストリームのビットストリームにおいて、ＲＯＩデータが、補助強化情報（ＳＥＩ; supplemental enhancement information）メッセージとして挿入される一実施形態を示す。
【０１７５】
本方式では、ＮＡＬユニットは、ビットストリームの基本ブロックを規定する。ＳＥＩメッセージは、補助強化情報（ＳＥＩ）に関連付けられるＮＡＬユニットとして規定される（ＩＳＯ／ＩＥＣ１４４９６―１０ ＡＶＣの７．４．１ ＮＡＬ Ｕｎｉｔｓ ｓｅｍａｎｔｉｃ参照）。ここで、ＳＥＩメッセージは、タイプ５メッセージ即ち未登録ユーザ・データとして定義される。ＳＥＩメッセージは、ＲＯＩデータのパラメータのための所定数の整数（この例では４つの整数）を含む。
【０１７６】
ＳＥＩメッセージは、デコードのプロセスを補助するために追加情報を搬送する。それにもかかわらず、デコードされる信号を構築するのにそれらの存在は義務的でない。その結果、デコーダの適合は、この追加情報を考慮に入れることを要件としない。様々なＳＥＩメッセージおよびそれらセマンティクスの規定は、ＩＳＯ／ＩＥＣ１４４９６−１０：２０１２のＤ．２に定義される。
【０１７７】
未登録のユーザ・データと称されるＳＥＩメッセージ・タイプによって、任意のデータが、ビットストリーム内で搬送されるのを可能にする。ＲＯＩ座標の場合には、当該ＳＥＩメッセージは、ＲＯＩ座標を搬送するために使用される。４つのパラメータ（即ち、左上コーナーの水平および垂直位置、並びに幅および高さ）を使用して、ソース・ビデオにおいてデコードされたフレームのイメージ領域にＲＯＩを規定するのに使用される。
【０１７８】
図１６Ｂは、ＲＯＩデータが、コード化されたビットストリームで搬送される本発明の別の一実施形態を示す。フレーム・ヘッダ内のブール(Boolean)フラグが、このような情報が存在するかを示す。フラグがセットされる場合、フラグに続くビットは、ＲＯＩ座標（例えば、水平および垂直軸における左上コーナーの位置、並びにソース・ビデオにおいてデコードされたフレームのイメージ領域内のＲＯＩの幅と高さ）を表す。
【０１７９】
図１７Ａおよび図１７Ｂは、ＲＯＩデータがビデオ・コンテナで搬送される本発明の一実施形態を示す。特に、これらの図は、ＲＯＩ座標がビデオ・コンテナにおいて（例えばＭＰ４ファイル・フォーマット（ＩＳＯ／ＩＥＣ１４４９６−１４）で）搬送される実施形態に関する。このようなファイルの全般的な構造について図１７Ａに説明する。ＭＰ４ファイル・フォーマットはボックスのセットを特定する。当該ボックスのセットは、関連付けられるメディア・データおよびメタデータを格納しそれらにアクセスするために階層構造を構成する。例えば、コンテンツに関連するメタデータのためのルート・ボックスは「ｍｏｏｖ」ボックスであり、また、メディア・データは「ｍｄａｔ」ボックスに格納される。より詳しくは、「ｓｔｂｌ」ボックスまたは「サンプル・テーブル・ボックス」は、追加データを各サンプルに関連付けるのを可能にするトラックのメディア・サンプルをインデックス化する。ビデオ・トラックの場合に、サンプルはビデオ・フレームである。新規ボックスを追加する結果、ボックス「ｓｔｂｌ」内の所謂「サンプルＲＯＩ座標」または「ｓｔｒｏ」を使用して、ビデオ・トラックの全フレームのＲＯＩ座標を格納する。図１７Ｂは、ＲＯＩ座標が新規ボックス「ｓｔｒｏ」において搬送される本発明の一実施形態を示す。新規ボックス「ｓｔｒｏ」は、ビデオ・トラックにおける一部または全部のサンプルについてのＲＯＩ座標を含む。
【０１８０】
図１８は、ＲＯＩ位置情報がＭＰＥＧ−４ストリームの専用メタデータ・トラックとして搬送される本発明の一実施形態を示す。ＲＯＩ位置情報トラックは、（オーディオまたはビデオのような）規則的なトラックの構造に従う。しかしながら、その中のデータは、ビデオまたはオーディオ・フレームでなく、（特定のサンプル入力コードを有する）ＲＯＩ座標を収容したメタデータである。
【０１８１】
規格ＩＳＯ／ＩＥＣ １４４９６のパート１２は、ＩＳＯベース・メディア・ファイル・フォーマットで（そして、ＭＰ４ファイル・フォーマットへの継承によって）時間化されたメタデータ・トラックを含むメカニズムを提供する。本実施形態では、メタデータ・トラックおよびビデオ・トラックは、ＲＯＩデータ・トラック（ＲＯＩ座標）のサンプルがビデオ・トラック（ビデオ・フレーム）のサンプルにマップされるように同期する必要がある。実際のところ、メタデータ・トラックは、参照タイプが「ｃｄｓｃ」であり、ｔｒａｃｋ＿ｉｄが参照されるトラックのトラックｉｄであるトラック参照「ｔｒｅｆ」ボックスを使用して、ビデオ・トラックにリンクされる。
【０１８２】
更なる一実施形態では、ＲＯＩ座標は、帯域外のファイルまたはストリームを介してクライアント・デバイスに配信される。同期はタイムスタンプを使用して達成される。一実施形態では、ＲＯＩ座標はファイルにプットされ、（例えば、ＶｏＤストリームの場合は）再生を開始する前に、（ライブ・ストリームの場合は）ＷｅｂＳｏｃｋｅｔを介してデータを配信する前に取り出される。
【０１８３】
この場合、ＲＯＩ座標は実際のビデオ・データによって帯域外で送られるので、同期は、ＰＴＳ値のようなビデオ・コンテナ内部情報に基づくことができない。その代わりに、コンテンツのタイムスタンプが使用される。このようなタイムスタンプは、コンテンツ時間（即ち、ビデオ・ストリームの開始において００：００：００で開始する）に基づくか、ライブのブロードキャスト・ストリームの実時間（例えば、２０：３１：１１）に基づくものとすることができる。同様のタイムスタンプがまた、ビデオ・ストリーム自体にも存在しなければならない。ＭＰＥＧＤＡＳＨまたはＨＬＳストリームのために、このようなタイムスタンプは、ＭＰＤまたはマニフェスト・ファイルによって提供される。ＲＯＩストリームが例えばＤＶＢを通じて配信される場合は、ＭＰＥＧＴＳ Ｍｕｌｔｉｐｌｅｘ（１０２８２３参照）で挿入されるＤＶＢタイムライン・パケットが使用される。
【０１８４】
別の一実施形態では、ＲＯＩ座標は、ビデオのウォータマーク（透かし）として搬送される。更なる一実施形態では、ＲＯＩ座標は、ＲＯＩストリーム自体でウォータマークとして配置される。
【０１８５】
図１９Ａおよび図１９Ｂは、本発明の一実施形態による、タイル化されたストリーミングのための所謂「空間的バッファ」の使用について示す。図１９Ａは、ＲＯＩストリームにおけるＲＯＩフレームを示す。ここでは、ＲＯＩフレームは「空間的バッファ」１９０２、即ち（イメージ領域の中央１９０４の周囲にある）イメージ・データの周辺領域を含む。空間的バッファ１９０２はクライアントに送信されるが、表示されるコンテンツとユーザが相互作用しないとき、または表示されるコンテンツとの相互作用をユーザが許可されていないときは表示されない。したがって、その場合は、ユーザ相互作用がないときに表示される中央領域がＲＯＩフレームから切り取られて、ユーザに表示される。次いで、ユーザがコンテンツと相互作用するときに、ＲＯＩ１９０６（の一部）は、空間的バッファとして規定されたゾーンにナビゲートされる。しかしながら、ユーザ相互作用があるので、空間的バッファからのイメージ・データの表示は許可される。ユーザ相互作用は、タイル化されたストリーミング・モードへの切り替えをトリガし、図９から図１４を参照して先に詳細に説明したＲＯＩに基づいてタイルを要求する。ＨＥＶＣタイル・ストリームの取り出しの間、移動するＲＯＩ１９０８は、空間的バッファのゾーンに部分的に位置決定されるイメージ領域からＲＯＩを切り取ることによって表示される。本発明による一実施形態では、１つ以上のパラメータは、ＳＭＦにおいて、好ましくはＭＰＤ（メディア提示記述;Media Presentation Description）)において規定され、空間的バッファのイメージ領域（表示されていないＲＯＩストリームにおけるイメージの領域）の寸法を示す。例えば＠ｓｐａｔｉａｌｂｕｆｆｅｒｓｉｚｅと称されるこのパラメータは、以下のフォーマットの１つ以上で規定される。
【０１８６】
即ち、
（ＲＯＩのイメージ領域の）幅と高さの％でのエッジ・サイズ
（表示されたＲＯＩのイメージ領域の周囲に一律に配信される）ピクセルでのエッジ・サイズ
（左、右、上、下、表示されたＲＯＩのイメージ領域の周囲の）ピクセルでのエッジ・サイズ
或いは、利用可能なＲＯＩ座標のセットは４つ（ｘ，ｙ，ｗ，ｈ）から８つに拡張できる。つまり、内部の（表示された）ＲＯＩおよび外部のＲＯＩ（空間的バッファを含む）の寸法をそれぞれ表す。
【０１８７】
図２０は、本発明の実施形態による３モードのＲＯＩストリーミング・モデルを示す。この特定の実施形態では、クライアントは、タイル化されたストリーミング・モード（第１モード）にあり、ユーザが生成したＲＯＩが４つのタイルに基づいてレンダリングされる。ユーザが相互作用を停止して、ＲＯＩストリーミング・モード（第３モード）でコンテンツを視聴するのを望む場合、システムは、即座にＲＯＩストリーミング・モードに切り替えるのではなく、所定の時間を通じて第２モードに切り替える。当該第２モードでは、クライアントは、ＲＯＩストリームのＲＯＩ位置情報を受け取る間、タイル化されたストリーミング・モードのままである。次いで、クライアントは、図９から図１４を参照して詳細に説明したように、ＲＯＩ位置情報を用いてタイルを選択し、ＨＥＶＣタイル・ストリームのセットにおいて同期されたフレームに基づいてイメージを切り取る。表示されたコンテンツとの相互作用をユーザが開始する場合は、ユーザが生成したＲＯＩを表示するために、タイル化されたストリーミング・モード（第１モード）へと即座に切り替える。或いは、ユーザが相互作用しようとしていることをクライアントが予測する場合、またはコンテンツ表示の特定の期間が開始される若しくは開始されようとしている場合は、ここでは、ユーザはコンテンツとの相互作用を望むという大きな変化があり、クライアントのロジックは第２モードへの切り替えを生じさせる。その結果、ユーザが生成したＲＯＩを表示する、タイル化されたストリーミング・モードへの移行は素早くスムーズな（シームレスな）方法で実現することができる。
【０１８８】
図２１は、図１から図２０を参照して説明したシステムおよび方法で使用される例示のデータ処理システムを示すブロック図である。データ処理システム１０００は、システム・バス２１０６を通じてメモリ素子２１０４に結合される少なくとも１つのプロセッサ２１０２を含む。このように、データ処理システムは、メモリ素子２１０４内にプログラム・コードを格納する。更に、プロセッサ２１０２は、システム・バス２１０６を介してメモリ素子２１０４からアクセスされるプログラム・コードを実行する。１つの態様では、データ処理システムは、プログラム・コードを格納および／または実行するのに適したコンピュータとして実装される。しかしながら、データ処理システム２１００は、本明細書で説明した機能を実行することができる、プロセッサおよびメモリを含む如何なるシステムの形態で実装されてもよいことが認められて然るべきである。
【０１８９】
メモリ素子２１０４は、１つ以上の物理メモリ・デバイス、例えば、ローカル・メモリ２１０８および１つ以上の大容量記憶装置２１１０を含んでもよい。ローカル・メモリは、ランダム・アクセス・メモリ、または実際のプログラム・コードの実行の間に通常使用されるまたは他の非持続型のメモリ・デバイス（１または複数）に関連する。大容量記憶デバイスは、ハード・ドライブまたは他の持続型データ記憶デバイスとして実装される。処理システム２１００はまた、１つ以上のキャッシュ・メモリ（非図示）も含んでよく、少なくとも幾らかのプログラム・コードの時間的記憶を提供する。その結果、実行の間、大容量記憶デバイス２１１０から取り出されなければならないプログラム・コードの回数を低減することができる。
【０１９０】
入出力（Ｉ／Ｏ）デバイスは、任意にデータ処理システムに結合することができる入力デバイス２１１２および出力デバイス２１１４として示される。入力デバイスの例には、これに限定されないが、キーボード、ポインティング・デバイス（例えばマウス）等が含まれる。出力デバイスの例には、これに限定されないが、モニタ或いはディスプレイ、スピーカ等が含まれる。入力デバイスおよび／または出力デバイスは、直接に、または介在する入出力コントローラを通じて、データ処理システムに結合される。ネットワーク・アダプタ２１１６はまた、データ処理システムに結合され、プライベートまたはパブリック・ネットワークを介在により、他のシステム、コンピュータ・システム、リモート・ネットワーク・デバイス、および／またはリモート記憶デバイスに結合されるのを可能にする。ネットワーク・アダプタは、システム、デバイスおよび／またはネットワークによって送信されたデータを受け取るためのデータ受信機と、システム、デバイスおよび／またはネットワークにデータを送信するデータ送信機とを含む。モデム、ケーブル・モデム、およびイーサネット・カードは、データ処理システム２１５０で使用される異なる種別のネットワーク・アダプタの例である。
【０１９１】
図２１に示されるように、メモリ素子２１０４は、アプリケーション２１１８を格納する。なお、データ処理システム２１００は更に、アプリケーションの実行を促進できるオペレーティング・システム（非図示）を更に実行することが認められて然るべきである。アプリケーションは、実行可能プログラム・コードの形態で実装され、データ処理システム２１００によって（例えば、プロセッサ２１０２によって）実行できる。アプリケーションの実行に応じて、データ処理システムは、本明細書で更に詳細に説明する１つ以上の動作を実行するように構成される。
【０１９２】
１つの態様では、例えば、データ処理システム１０００は、クライアント・データ処理システムを表す。クライアント・データ処理システムはまた、クライアント・デバイスとも称される。その場合、アプリケーション２１１８はクライアント・アプリケーションを表し、実行されると、「クライアント」に関して本明細書に説明した様々な機能を実行するデータ処理システム２１００を構成する。クライアントの例は、これに限定されないが、パーソナル・コンピュータ、ポータブル・コンピュータ、モバイル・フォン等を含むことができる。
【０１９３】
本明細書において用いた用語は、特定的な実施形態を説明するという目的のために過ぎず、本発明を限定することを意図するのではない。本明細書において使用する場合、文脈が明らかに別のことを示さない限り、単数形「１つ」(a)、「１つ」(an)、および「その」(the)は、複数形も含むことを意図する。更に、「含む」(comprises)および／または「含んでいる」(comprising)という用語は、本明細書において使用される場合、述べられた特徴、整数、ステップ、動作、構成要素、および／またはコンポーネントの存在を特定するが、１つ以上の他の特徴、整数、ステップ、動作、構成要素、コンポーネント、および／またはそれらのグループの存在または追加も排除しないことも理解されよう。
【０１９４】
次の特許請求の範囲における全ての手段またはステップ・プラス機能の構成要素における対応する構造、材料、アクト、および均等物は、他の特許請求された構成要素と組み合わせて機能を実行するための任意の構造、材料、またはアクトを、具体的に特許請求されたものとして含むことを意図している。本発明の説明は、例示および説明の目的に限って提示されたのであり、網羅的であることや、開示された形態に本発明を限定することを意図するのではない。多くの変更態様および変形態様が、本発明の範囲や主旨から逸脱することなく、当業者には明白であろう。本開示の原理および実用的用途を最良に説明するように、そして当業者の他の者が、想定される特定の使用に適した種々の変更態様を有する種々の実施形態について本発明を理解することができるように、本実施形態について選択し説明した。
【図１】
0006440747.tif 000002
【図２】
0006440747.tif 000003
【図３】
0006440747.tif 000004
【図４】
0006440747.tif 000005
【図５】
0006440747.tif 000006
【図６】
0006440747.tif 000007
【図７】
0006440747.tif 000008
【図８Ａ】
0006440747.tif 000009
【図８Ｂ】
0006440747.tif 000010
【図９】
0006440747.tif 000011
【図１０Ａ】
0006440747.tif 000012
【図１０Ｂ】
0006440747.tif 000013
【図１１Ａ】
0006440747.tif 000014
【図１１Ｂ】
0006440747.tif 000015
【図１２Ａ】
0006440747.tif 000016
【図１２Ｂ】
0006440747.tif 000017
【図１３Ａ】
0006440747.tif 000018
【図１３Ｂ】
0006440747.tif 000019
【図１４】
0006440747.tif 000020
【図１５】
0006440747.tif 000021
【図１６Ａ】
0006440747.tif 000022
【図１６Ｂ】
0006440747.tif 000023
【図１７Ａ】
0006440747.tif 000024
【図１７Ｂ】
0006440747.tif 000025
【図１８】
0006440747.tif 000026
【図１９Ａ】
0006440747.tif 000027
【図１９Ｂ】
0006440747.tif 000028
【図２０】
0006440747.tif 000029
【図２１】
0006440747.tif 000030