特許第5905957号(P5905957)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップの特許一覧 ▶ ネダーランゼ・オルガニサティ・フォーア・トゥーゲパスト−ナトゥールヴェテンシャッペリーク・オンデルゾエク・ティーエヌオーの特許一覧

特許5905957空間的にセグメント化されたコンテンツの配信
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】5905957
(24)【登録日】2016年3月25日
(45)【発行日】2016年4月20日
(54)【発明の名称】空間的にセグメント化されたコンテンツの配信
(51)【国際特許分類】
   H04N 21/462 20110101AFI20160407BHJP
   H04N 21/4728 20110101ALI20160407BHJP
   H04N 21/2665 20110101ALI20160407BHJP
【FI】
   H04N21/462
   H04N21/4728
   H04N21/2665
【請求項の数】16
【全頁数】33
(21)【出願番号】特願2014-514071(P2014-514071)
(86)(22)【出願日】2012年6月7日
(65)【公表番号】特表2014-520442(P2014-520442A)
(43)【公表日】2014年8月21日
(86)【国際出願番号】EP2012060801
(87)【国際公開番号】WO2012168365
(87)【国際公開日】20121213
【審査請求日】2014年2月12日
(31)【優先権主張番号】11169068.1
(32)【優先日】2011年6月8日
(33)【優先権主張国】EP
(73)【特許権者】
【識別番号】512287702
【氏名又は名称】コニンクリーケ・ケイピーエヌ・ナムローゼ・フェンノートシャップ
(73)【特許権者】
【識別番号】508351406
【氏名又は名称】ネダーランゼ・オルガニサティ・フォーア・トゥーゲパスト−ナトゥールヴェテンシャッペリーク・オンデルゾエク・ティーエヌオー
(74)【代理人】
【識別番号】100140109
【弁理士】
【氏名又は名称】小野 新次郎
(74)【代理人】
【識別番号】100075270
【弁理士】
【氏名又は名称】小林 泰
(74)【代理人】
【識別番号】100101373
【弁理士】
【氏名又は名称】竹内 茂雄
(74)【代理人】
【識別番号】100118902
【弁理士】
【氏名又は名称】山本 修
(74)【代理人】
【識別番号】100173565
【弁理士】
【氏名又は名称】末松 亮太
(72)【発明者】
【氏名】ヴァン・デーベンター,マティス・オスカル
(72)【発明者】
【氏名】ニーアムート,オマー・アジズ
(72)【発明者】
【氏名】ハーヴェクス,アントン
(72)【発明者】
【氏名】プリンス,マールティン
(72)【発明者】
【氏名】ヴァン・ブランデンブルク,レイ
【審査官】 古川 哲也
(56)【参考文献】
【文献】 特開2009−212821(JP,A)
【文献】 特開2007−324783(JP,A)
【文献】 特開2010−154074(JP,A)
【文献】 特開2011−087103(JP,A)
【文献】 国際公開第2011/059273(WO,A1)
【文献】 米国特許出願公開第2009/0300692(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04N 21/00 − 21/858
H04N 19/00 − 19/98
(57)【特許請求の範囲】
【請求項1】
空間的にセグメント化されたコンテンツを処理する方法であって、
クライアントがソース・ストリームについて1つ以上の表現を含む空間的マニフェスト・データ構造を受信するステップであって、各空間的表現が、1つ以上の空間的セグメント・ストリームとコンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、前記コンテンツ配信ネットワークが前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成され、前記空間的マニフェスト・データ構造が更に前記空間的セグメント・ストリームにおける空間的セグメント・フレームを縫合して表示用のビデオ・フレームを得るための位置決め情報を含む、ステップと、
前記空間的表現の内少なくとも1つに関連付けられた1つ以上の空間的セグメント・ストリームを選択し、前記位置情報に基づいて、前記コンテンツ配信ネットワークに関連付けられた少なくとも1つの配信ノードに、前記少なくとも1つの選択された空間的セグメント・ストリームを前記クライアントへ配信することを要求するステップと、
前記1つ以上の選択された空間的セグメント・ストリームを前記少なくとも1つの配信ノードから受信するステップと
を含み、
前記1つ以上の要求された空間的セグメント・ストリームが、HTTP適応ストリーミング・プロトコルを用いて前記クライアントに送信され、前記空間的セグメント・ストリームの少なくとも一部が時間セグメントに分割される、方法。
【請求項2】
請求項1記載の方法において、前記位置決め情報が、空間的セグメント・ストリームにおける空間的セグメント・フレームに関連付けられた位置座標である、方法。
【請求項3】
請求項1または2記載の方法において、前記空間的マニフェスト・データ構造が、前記ソース・ストリームの第1解像度バージョンに関連付けられた少なくとも1つの第1空間的表現と、前記ソース・ストリームの第2解像度バージョンに関連付けられた少なくとも1つの第2空間的表現とを含む、方法。
【請求項4】
請求項3記載の方法において、前記空間的マニフェスト・データ構造が、第1数の空間的セグメント・ストリームに関連付けられた第1空間的表現を含み、前記第2空間的表現が第2数の空間的セグメント・ストリームを含む、方法。
【請求項5】
請求項1から4のいずれか1項記載の方法であって、更に、
前記1つ以上の選択された空間的セグメント・ストリームをバッファするステップと、
前記1つ以上の空間的セグメント・ストリームに関連付けられた同期情報を受信するステップと、
前記同期情報に基づいて、前記1つ以上の要求された空間的セグメント・ストリームを同期させるステップと、
を含む、方法。
【請求項6】
請求項1から5のいずれか1項記載の方法であって、
前記位置決め情報に基づいて、前記空間的に整列した空間的セグメント・フレームを縫合して、再生のための連続ビデオ・フレームを得るステップを含む、方法。
【請求項7】
請求項1からのいずれか1項記載の方法において、前記1つ以上の空間的セグメント・ストリームが、RTPストリーミング・プロトコルを用いて前記クライアントに送信され、同期情報がRTSPシグナリング・メッセージにおいて前記クライアントに送信される、方法。
【請求項8】
請求項1からのいずれか1項記載の方法において、隣接する空間的セグメント・フレームが重複する、方法。
【請求項9】
請求項記載の方法において、前記重複が50%である、方法。
【請求項10】
メディア処理デバイスにおけるクライアントによってユーザに表示される、空間的にセグメント化されたコンテンツとのユーザ対話処理方法であって、
ソース・ストリームについて1つ以上の空間的表現を含む空間的マニフェスト・データ構造を受信するステップであって、各空間的表現が、1つ以上の空間的セグメント・ストリームと、コンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、前記コンテンツ配信ネットワークが前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成される、ステップと、
前記空間的マニフェスト・データ構造における前記位置情報に基づいて、第1空間的表現に関連付けられた1つ以上の空間的セグメント・ストリームを前記コンテンツ配信ネットワークから抽出して、前記1つ以上の空間的セグメント・ストリームを表示するステップと、
関心領域に関連付けられたユーザ入力を受けるステップであって、前記関心領域が、前記表示された空間的セグメント化コンテンツから選択したエリアを定める、ステップと、
前記空間的マニフェスト・データ構造における位置決め情報および前記関心領域に基づいて、1つ以上のメディア処理判断基準にしたがって、第2空間的表現を決定するステップであって、前記処理判断基準が、帯域幅、画面解像度、および/またはエンコーディング品質の内少なくとも1つを含む、ステップと、
を含み、
前記1つ以上の要求された空間的セグメント・ストリームが、HTTP適応ストリーミング・プロトコルを用いて前記クライアントに送信され、前記空間的セグメント・ストリームの少なくとも一部が時間セグメントに分割される、方法。
【請求項11】
請求項10記載の方法において、前記方法が、更に、
前記1つ以上の空間的表現について、前記選択した関心領域と重複する空間的セグメント・フレームを判定するステップを含む、方法。
【請求項12】
空間的にセグメント化されたコンテンツを処理するためのクライアントであって、
ソース・ストリームについて1つ以上の空間的表現を含む空間的マニフェスト・データ構造を受信するように構成され、各空間的表現が、1つ以上の空間的セグメント・ストリームと、コンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、前記コンテンツ配信ネットワークが前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成され、前記空間的マニフェスト・データ構造が更に前記空間的セグメント・ストリームにおける空間的セグメント・フレームを縫合して表示用のビデオ・フレームを得るための位置決め情報を含み、
1つ以上の空間的セグメント・ストリームを選択し、前記位置情報に基づいて、前記コンテンツ配信ネットワークにおける少なくとも1つの配信ノードに、前記1つ以上の選択された空間的セグメント・ストリームを前記クライアントに送信するように要求し、
前記1つ以上の選択された空間的セグメント・ストリームを前記少なくとも1つの配信ノードから受信する、
ように構成され
前記1つ以上の要求された空間的セグメント・ストリームが、HTTP適応ストリーミング・プロトコルを用いて前記クライアントに送信され、前記空間的セグメント・ストリームの少なくとも一部が時間セグメントに分割される、クライアント。
【請求項13】
請求項12記載のクライアントであって、更に、前記1つ以上の選択された空間的セグメント・ストリームをバッファし、前記1つ以上の空間的セグメント・ストリームに関連付けられた同期情報を受信し、前記同期情報に基づいて、前記1つ以上の要求された空間的セグメント・ストリームを同期させるように構成される、クライアント。
【請求項14】
請求項12または13記載のクライアントであって、更に、前記空間的マニフェスト・データ構造における位置決め情報に基づいて、空間的セグメント・フレームを縫合するように構成される、クライアント。
【請求項15】
求項12から14のいずれか1項記載のクライアントにおいて用いるための空間的マニフェスト・データ構造であって、前記データ構造が、コンテンツ配信ネットワークから発する空間的にセグメント化されたコンテンツの抽出および表示を制御し、前記データ構造が、ソース・ストリームについて1つ以上の空間的表現を含み、各空間的表現が、1つ以上の空間的セグメント・ストリームと、前記コンテンツ配信ネットワークにおける少なくとも1つ以上の配信ノードを位置特定するための位置情報と、前記空間的セグメント・ストリームにおける空間的セグメント・フレームを縫合して、表示用ビデオ・フレームを得るための位置決め情報とを含む、空間的マニフェスト・データ構造。
【請求項16】
ソフトウェア・コード部分を含むコンピュータ・プログラムであって、前記ソフトウェア・コード部分をコンピュータのメモリにおいて実行すると、請求項1から11までのいずれか1項記載の方法を実行するように構成される、コンピュータ・プログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、空間的にセグメント化されたコンテンツの配信に関し、更に特定すれば、空間的にセグメント化されたコンテンツを処理するための方法およびシステム、空間的にセグメント化されたコンテンツを配給するように構成されたコンテンツ配信ネットワーク、空間的にセグメント化されたコンテンツを処理するように構成されたクライアント、クライアントまたはコンテンツ配信ネットワークにおいて空間的にセグメント化されたコンテンツを制御するためのデータ構造、およびこのような方法を用いるコンピュータ・プログラム生産物に関するが、これらで全てではない。
【従来技術】
【0002】
広角で非常に解像度が高いビデオ・コンテンツの取り込みおよび送信を可能にする新製品(new product equipment)が入手可能になり始めている。このようなメディア・ファイルの処理には、高い帯域幅(Gbpsp単位)が必要となり、このようなビデオ・ストリームにおける情報全体を利用するには、 通例、ビデオ・ウォールまたは投射画面のサイズとなる、大きなビデオ画面を使用しなければならない。
【0003】
比較的小さなディスプレイ上でビデオを見るとき、ユーザはビデオ・フレーム全体や、その中に含まれる全ての情報を見ることができない。代わりに、ユーザは、彼または彼女の好みに基づいて、ユーザ機器のグラフィカル・ユーザ・インターフェースと対話処理することによって、特定のフレーム・エリア、視角、またはビデオ解像度を選択する。現在のネットワーク容量ではこれらのHDを超える解像度の広帯域幅要求に応じることができないという事実とは別に、どのようにしても画面上に表示できないコンテンツを配信することは、単に非効率的である。
【0004】
Mavlankar et al.は、"An interactive region-of-interest video streaming system for online lecturing viewing"(オンライン講義視聴のためのインタラクティブ関心領域ビデオ・ストリーミング・システム), proceeding of ICIP 2010, p.4437-4440という論文において、いわゆるタイル状ビデオ・システム(tiled video system)について記載しており、サーバ・ベースのインタラクティブ関心領域(region-of-interest)エンコーダを用いて、ビデオ・コンテンツ・ファイルの多数の解像度のレイヤを生成する。各レイヤは、多数の空間的セグメントまたはタイルに分割され、各タイルは、互いに独立してエンコードおよび配給(即ち、ストリーミング)することができる。
【0005】
ビデオ・クライアントは、特定の空間領域、即ち、関心領域(ROI)を要求することができ、サーバは続いてこのROI要求を1つ以上のセグメントにマッピングして、選択したグループのタイル状ストリームをクライアントに送信することができる。クライアントは、このタイル状ストリームを組み合わせて1つのビデオにするように構成される。このようにして、表示されるコンテンツの解像度に関して妥協を必要とせずに、帯域幅に関して効率的に、表示コンテンツとのユーザ対話処理、例えば、ズーミングおよびパンニングを達成することができる。このような方式では、しかしながら、タイル状(tiled)ストリームの高速応答および処理が、サービス品質(quality of service)および最適なユーザ体験を配信するために必要となる。
【発明の概要】
【発明が解決しようとする課題】
【0006】
このようなサービスを既存の大規模コンテンツ配信方式において実現するときに、問題が発生する虞がある。通例、コンテンツ・プロバイダは、コンテンツを直接消費者に配信しない。代わりに、コンテンツはコンテンツ・ディストリビュータに送られ、コンテンツ・ディストリビュータがコンテンツ配信ネットワーク(CDN)を用いてコンテンツを消費者に配信する。CDNは、空間的にセグメント化されたコンテンツを扱うように構成されていない。更に、空間的にセグメント化されたコンテンツをクライアントに配信するための既知の解決策は(Mavlankarの論文に記載されているような解決策)、既存のCDNと共に使用するには適していない。空間的にセグメント化されたコンテンツを異なる場所に格納することもあるCDNにおいて、ROI要求を解決する(resolve)ために既知のサーバ・ベースの解決策を実施しても、スケーラブルな解決策(scalable solution)が提供されず、過剰負荷や遅延の状況というような望ましくない影響が生じやすくなり、このようなサービスの現実を著しく阻害する虞がある。
【0007】
更に、Mavlankarによって記載された、サーバ・ベースROI/タイル・マッピング手法では、ブロードキャストまたはマルチキャストをアクセス技術(媒体)として用いて一部の空間的セグメント(セグメント・ストリーム)を受信し、他の一部の空間的セグメントは、例えば、ユニキャストをアクセス技術として用いて受信するというような状況では、クライアントは、2つの別個のアクセス方法/プロトコルによって、コンテンツにアクセスすることができない。Mavlankarのサーバ・ベースROIマッピング・メカニズムでは、異なるアクセス技術および/またはアクセス・プロトコルによってセグメント化コンテンツを受信するクライアント側能力の正確な知識が得られない。
【0008】
更に、様々な空間的セグメント化ストリームに基づいてビデオ・ストリームを扱い表示するためには、多数の空間的セグメント・ストリームに基づいてシームレスなビデオ画像の表示を可能にし、表示されたコンテンツとのユーザの対話処理を可能にするためには、クライアントにおいて特定の機能を実装する必要がある。
【0009】
したがって、先行技術には、クライアントに効率的に空間的セグメント化コンテンツを配信するという要望がある。具体的には、従来のCDNインフラストラクチャに変更を加える必要なく、コンテンツの配信を可能にし、高解像度ビデオ・コンテンツと対話処理するユーザにスケーラブルで柔軟性のある解決策を提供することができる、空間的セグメント化コンテンツの配信方法およびシステムが求められている。
【課題を解決するための手段】
【0010】
本発明の目的は、先行技術において知られている欠点の少なくとも1つを低減または解消すること、そして本発明の第1の態様において、空間的にセグメント化されたコンテンツを処理する方法を提供することである。この方法は、クライアントがソース・ストリームについて1つ以上の表現を含む空間的マニフェスト・データ構造を受信するステップであって、各空間的表現が、1つ以上の空間的セグメント・ストリームと1つ以上の配信ノードを位置特定するための位置情報とを識別し、このような1つ以上の配信ノードが、好ましくは、コンテンツ配信ネットワークに関連付けられ、前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成される、ステップと、前記空間的表現の内少なくとも1つに関連付けられた1つ以上の空間的セグメント・ストリームを選択し、前記位置情報に基づいて、好ましくは前記コンテンツ配信ネットワークに関連付けられた、前記少なくとも1つの配信ノードに、前記少なくとも1つの選択された空間的セグメント・ストリームを前記クライアントへ配信することを要求するステップと、前記1つ以上の選択された空間的セグメント・ストリームを前記少なくとも1つの配信ノードから受信するステップとを含む。
【0011】
空間的マニフェスト・データ構造(ファイル)は、ビデオ・データのズーミング、ティルティング、およびパンニングを含む、効率的なクライアント・ベースのビデオ操作動作(action)を可能にする。ネットワーク、特にCDNにおける機能は、先行技術の解決策と比較すると、簡素なままに保つことができる。
【0012】
一実施形態では、前記空間的マニフェスト・データ構造が、更に、前記空間的セグメント・ストリームにおける空間的セグメント・フレームを縫合して表示用ビデオ・フレームを得るための位置決め情報も含むこともできる。
【0013】
他の実施形態では、前記空間的マニフェスト・データ構造が、前記ソース・ストリームの第1解像度バージョンに関連付けられた少なくとも1つの第1空間的表現と、前記ソース・ストリームの第2解像度バージョンに関連付けられた少なくとも1つの第2空間的表現とを含むこともできる。
【0014】
一実施形態では、前記空間マニフェスト・データ構造が、第1数のセグメント・ストリームに関連付けられた第1空間的表現を含み、前記第2空間的表現が第2数のセグメント・ストリームを含むこともできる。
【0015】
他の実施形態では、前記方法が、更に、前記1つ以上の選択された空間的セグメント・ストリームをバッファするステップと、前記1つ以上の空間的セグメント・ストリームに関連付けられた同期情報を受信するステップと、前記同期情報に基づいて、前記1つ以上の要求された空間的セグメント・ストリームを同期させるステップとを含むこともできる。
【0016】
一実施形態では、前記方法が、位置情報に基づいて、前記空間的に整列した空間的セグメント・フレームを縫合して、再生のための連続ビデオ・フレームを得るステップを含むこともできる。
【0017】
更に他の実施形態では、前記1つ以上の要求された空間的セグメント・ストリームが、適応ストリーミング・プロトコル、好ましくは、HTTP適応ストリーミング・プロトコルを用いて、前記クライアントに送信されるのでもよく、前記空間的セグメント・ストリームの少なくとも一部が時間セグメントに分割される。
【0018】
更にまた他の実施形態では、前記1つ以上のセグメント・ストリームが、前記クライアントにRTPストリーミング・プロトコルを用いて送信されるのでもよく、同期情報がRTSPシグナリング・メッセージにおいて前記クライアントに送信される。
【0019】
更に他の実施形態では、前記空間的マニフェスト・データ構造が、1つ以上のアクセス技術またはプロトコル(例えば、ユニキャスト、マルチキャスト、ブロードキャスト)への参照を含み、前記参照が、好ましくは、1つ以上の、好ましくは空間的な、セグメント・ストリームに関連付けられる。
【0020】
更に他の実施形態では、前記1つ以上のセグメント・ストリームが、前記アクセス技術および/またはアクセス・プロトコルの内1つ以上を用いて、前記クライアントに送信されるのでもよい。例えば、一部のセグメント・ストリームは、ブロードキャスト媒体(例えば、ブロードキャスト、マルチキャスト)をアクセス技術として用いて送信してもよく、一方他の一部のセグメント・ストリームは、ユニキャストをアクセス技術として用いて送信してもよい。
【0021】
更に他の実施形態では、空間マニフェスト・データ構造(ファイル)が、マルチキャストまたはブロードキャストのような、ブロードキャスト媒体によって、好ましくはクライアントによって受信されるのでもよい。
【0022】
更に他の実施形態では、空間的マニフェスト・データ構造(ファイル)が、多数の受信機(例えば、クライアント)に同時に、ブロードキャスト媒体(例えば、シミュルキャスト(simulcast))によって送信されるのでもよい。
【0023】
更に他の態様では、本発明は、メディア処理デバイスにおけるクライアントによってユーザに表示される、空間的にセグメント化されたコンテンツとのユーザ対話処理方法に関する。この方法は、ソース・ストリームについて1つ以上の空間的表現を含む空間マニフェスト・データ構造を受信するステップであって、各空間的表現が、1つ以上の空間的セグメント・ストリームと、コンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、コンテンツ配信ネットワークが前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成される、ステップと、前記位置情報および前記空間的マニフェスト・データ構造に基づいて、第1空間的表現に関連付けられた1つ以上の空間的セグメント・ストリームを前記コンテンツ配信ネットワークから抽出して、前記1つ以上の空間的セグメント・ストリームを表示するステップと、関心領域に関連付けられたユーザ入力を受けるステップであって、前記関心領域が、前記表示された空間的セグメント化コンテンツから選択したエリアを定める、ステップと、前記空間的セグメント・データ構造における位置決め情報および前記関心領域に基づいて、1つ以上のメディア処理判断基準にしたがって、第2空間的表現を決定するステップであって、前記処理判断基準が、好ましくは、帯域幅、画面解像度、および/またはエンコーディング品質の内少なくとも1つを含む、ステップとを含む。
【0024】
一実施形態では、前記方法が、更に、前記1つ以上の空間的表現について、前記選択した関心領域と重複する前記空間的セグメント・フレームを判定するステップを含むこともできる。
【0025】
更に他の態様では、本発明は、少なくとも1つのソース・ノードから発する空間的にセグメント化されたコンテンツを、第1コンテンツ配信ネットワークに収集する方法に関することができ、前記少なくとも1つのソース・ノードが、好ましくは、第2コンテンツ配信ネットワークに関連付けられる。この方法は、ソース・ストリームについて1つ以上の空間的表現を含む空間的マニフェスト・データ構造を受信するステップであって、各空間的表現が、1つ以上の空間的セグメント・ストリームと、コンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、コンテンツ配信ネットワークが前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成され、前記少なくとも1つのソース・ノードが、前記1つ以上の空間的セグメント・ストリームを前記第1コンテンツ配信ネットワークに送信するように構成される、ステップと、前記少なくとも1つの空間的セグメント・ストリームを、前記第1コンテンツ配信ネットワークにおける1つ以上の配信ノードに配給するステップと、前記1つ以上の配信ノードに関連付けられた位置情報を前記空間的マニフェスト情報に追加することによって、前記空間的マニフェスト情報を更新するステップとを含む。
【0026】
他の態様では、本発明は、空間的にセグメント化されたコンテンツを配給するように構成されたコンテンツ配給ネットワークに関することができる。このネットワークは、制御機能と、収集ノードと、1つ以上の配信ノードとを含み、前記制御機能が、ソース・ストリームについて1つ以上の空間的表現を含む空間的マニフェスト・データ構造を受信するように構成され、各空間的表現が、1つ以上の空間的セグメント・ストリームと、前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成されたコンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、前記制御機能が、前記位置情報に基づいて、前記1つ以上の空間的セグメント・ストリームを前記1つ以上のソース・ノードに要求するように構成され、前記収集ノードが、前記1つ以上の空間的セグメント・ストリームを前記1つ以上のソース・ノードから受信するように構成され、前記1つ以上の配信ノードが、前記1つ以上の収集された空間的セグメント・ストリームを受信するように構成される。
【0027】
更に他の態様では、本発明は、ソース・ストリームについて1つ以上の空間的表現を含む空間的マニフェスト・データ構造を受信するように構成された制御機能に関することができ、各空間的表現が、1つ以上の空間的セグメント・ストリームと、コンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、コンテンツ配信ネットワークが前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成され、更に、前記位置情報に基づいて、前記1つ以上の空間的セグメント・ストリームを前記1つ以上のソース・ノードに要求するように構成される。
【0028】
更に、本発明は、空間的にセグメント化されたコンテンツを処理するためのクライアントに関することができ、ソース・ストリームについて1つ以上の空間的表現を含む空間的マニフェスト・データ構造を受信するように構成され、各空間的表現が、1つ以上の空間的セグメント・ストリームと、コンテンツ配信ネットワークに関連付けられた1つ以上の配信ノードを位置特定するための位置情報とを識別し、コンテンツ配信ネットワークが前記1つ以上の空間的セグメント・ストリームを前記クライアントに送信するように構成され、1つ以上の空間的セグメント・ストリームを選択し、前記位置情報に基づいて、前記コンテンツ配信ネットワークにおける少なくとも1つの配信ノードに、前記1つ以上の選択された空間的セグメント・ストリームを前記クライアントに送信するように要求し、前記1つ以上の選択された空間的セグメント・ストリームを前記少なくとも1つの配信ノードから受信するように構成される。
【0029】
一実施形態では、前記クライアントが、更に、前記1つ以上の選択された空間的セグメント・ストリームをバッファし、前記1つ以上の空間的セグメント・ストリームに関連付けられた同期情報を受信し、前記同期情報に基づいて、前記1つ以上の要求された空間的セグメント・ストリームを同期させるように構成される。
【0030】
他の実施形態では、前記クライアントが、更に、前記空間的マニフェスト・データ構造における位置決め情報に基づいて、空間的セグメント・フレームを縫合するように構成される。
【0031】
更に、本発明は、再生デバイスのクライアント、好ましくは、前述のようなクライアントにおいて用いるための空間的マニフェスト・データ構造に関することができ、前記データ構造が、コンテンツ配信ネットワークから発する空間的にセグメント化されたコンテンツの抽出および表示を制御し、前記データ構造が、ソース・ストリームについて1つ以上の空間的表現を含み、各空間的表現が、1つ以上の空間的セグメント・ストリームと、前記コンテンツ配信ネットワークにおける1つ以上の配信ノードを位置特定するための位置情報と、任意に、前記セグメント・ストリームにおける空間的セグメント・フレームを縫合して、表示用ビデオ・フレームを得るための位置情報とを含む。
【0032】
また、本発明は、コンテンツ配信ネットワーク、好ましくは、前述のようなコンテンツ配信ネットワークによる使用のための空間的マニフェスト・データ構造に関することができ、前記空間的マニフェスト・データ構造が、空間的にセグメント化されたコンテンツの収集を制御し、前記データ構造が、ソース・ストリームについて1つ以上の空間的表現を含み、各空間的表現が、1つ以上の空間的セグメント・ストリームと、前記1つ以上のソース・ノードを位置特定するための位置情報と、任意に、前記セグメント・ストリームにおける空間的セグメント・フレームを縫合して、表示用のビデオ・フレームを得るための位置決め情報とを含む。
【0033】
また、本発明は、ソフトウェア・コード部分を含むコンピュータ・プログラム生産物に関し、前記ソフトウェア・コード部分をコンピュータのメモリにおいて実行すると、前述のような方法ステップを実行するように構成される。
【0034】
添付図面を参照して、本発明について更に例示する。添付図面は、本発明による実施形態を模式的に示す。尚、本発明はこれらの具体的な実施形態には決して限定されないことは言うまでもない。
【図面の簡単な説明】
【0035】
図1図1は、本発明の一実施形態によるセグメント化コンテンツ配信システムを示す。
図2A図2Aは、本発明の種々の実施形態による、空間的にセグメント化されたコンテンツの生成および処理を示す。
図2B図2Bは、本発明の種々の実施形態による、空間的にセグメント化されたコンテンツの生成および処理を示す。
図2C図2Cは、本発明の種々の実施形態による、空間的にセグメント化されたコンテンツの生成および処理を示す。
図2D図2Dは、本発明の種々の実施形態による、空間的にセグメント化されたコンテンツの生成および処理を示す。
図2E図2Eは、本発明の種々の実施形態による、空間的にセグメント化されたコンテンツの生成および処理を示す。
図3図3は、本発明の一実施形態によるSMFデータ構造を示す。
図4図4は、本発明の一実施形態によるSMFの一部の一例を示す。
図5A図5Aは、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツを処理および表示するように構成されたコンテンツ処理デバイスとユーザが対話処理するプロセスを示す。
図5B図5Bは、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツを処理および表示するように構成されたコンテンツ処理デバイスとユーザが対話処理するプロセスを示す。
図5C図5Cは、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツを処理および表示するように構成されたコンテンツ処理デバイスとユーザが対話処理するプロセスを示す。
図6A図6Aは、本発明の種々の実施形態にしたがって、空間的にセグメント化されたコンテンツをクライアントに配信するプロセスの流れ図を示す。
図6B図6Bは、本発明の種々の実施形態にしたがって、空間的にセグメント化されたコンテンツをクライアントに配信するプロセスの流れ図を示す。
図7A図7Aは、本発明の種々の実施形態によるSMFの一部を示す。
図7B図7Bは、本発明の種々の実施形態によるSMFの一部を示す。
図7C図7Cは、本発明の種々の実施形態によるSMFの一部を示す。
図8図8Aおよび図8Bは、画像フレームにおける空間的セグメント・フレームの位置を定めるための異なる座標系の使用を示す。
図9図9は、本発明の一実施形態によるメディア・エンジンの模式図を示す。
図10A図10Aは、異なるストリーミング・プロトコルに基づいて同期および縫合(stitch)した空間的セグメント・フレームを示す。
図10B図10Bは、異なるストリーミング・プロトコルに基づいて同期および縫合した空間的セグメント・フレームを示す。
図11図11は、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツを同期させるための同期情報を決定するプロセスを示す。
図12図12は、2つの異なる配信ノードにコンテンツを要求するクライアントの例を示す。
図13図13は、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツとのユーザ対話処理を改良するプロセスを示す。
【発明を実施するための形態】
【0036】
図1は、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツをクライアントに配信するコンテンツ配信システム100を示す。このコンテンツ配信システムは、コンテンツ配信ネットワーク(CDN)102、コンテンツ提供システム(CPS)124、および多数のクライアント1041−Nを含むことができる。CPSは、コンテンツ、例えば、ビデオ・タイトルをカスタマに提供するように構成することができ、カスタマは、端末上にホストされるクライアントを用いて、このコンテンツを購入し受信することができる。
【0037】
端末は、一般に、コンテンツ処理デバイス、例えば、電子タブレット、スマートフォン、ノートブック、メディア・プレーヤ等というような、(移動体)コンテンツ再生(play-out)デバイスに関する。実施形態の中には、端末が、コンテンツを処理し、コンテンツ再生デバイスによる今後の消費のために一時的に格納するように構成されたセット・トップ・ボックスまたはコンテンツ記憶デバイスとしてもよい場合もある。
【0038】
コンテンツの配信は、配信ネットワーク(CDN)によって実現される。配信ネットワーク(CDN)は、配信ノード1081−M、および少なくとも1つの収集ノード1080を含む。CDN制御機能(CDNCF)111は、コンテンツを外部コンテンツ・ソース、例えば、コンテンツ・プロバイダ110または他のCDN(図示せず)から受信するように構成される。CDNCFは、更に、収集ノードを制御して、ネットワーク全体を通じて、端末へのコンテンツ配信に十分な帯域幅が保証されるように、コンテンツの1つ以上のコピーを配信ノードに配給することができる。一実施形態では、CDNは、ETSI TS 182019に記載されているようなCDNに関係することができる。
【0039】
カスタマは、要求118をウェブ・ポータル(WP)112に送ることによって、コンテンツ、例えば、ビデオ・タイトルを、コンテンツ・プロバイダから購入することができる。この要求に応答して、クライアントは、タイトル参照の少なくとも一部をWPから受信し、位置情報、例えば、選択されたコンテンツを配信することができるCDNのCDNCFのURLを受信することができる。CDNCFは、CDNにおいて、選択されたコンテンツをクライアントに配信することができる少なくとも1つの配信ノードに関連付けられたクライアント位置情報を送ることができる。通例、CDNCFは、クライアントに選択されたコンテンツを配信するのに最も適している配信ノードをCDNにおいて選択する。配信ノードを選択する判断基準は、クライアントの位置、および配信ノードの処理負荷を含むことができる。
【0040】
クライアントは、HTTPおよび/またはDNSシステムを含む、種々の既知の技法を用いて、CDNにおける配信ノードと連絡を取ることができる。更に、コンテンツをクライアントに配信するには、種々のストリーミング・プロトコルを用いることができる。このようなプロトコルには、HTTPおよびRTP型のストリーミング・プロトコルを含むことができる。好ましい実施形態では、HTTP適応ストリーミング(HAS)、DVB適応ストリーミング、DTG適応ストリーミング、MPEG DASH、ATIS適応ストリーミング、IETF HTTPライブ・ストリーミング、および関連プロトコルというような適応ストリーミング・プロトコルを用いることができる。
【0041】
CDNは、いわゆる空間的にセグメント化されたコンテンツを収集し、この空間的にセグメント化されたコンテンツをクライアントに配給するように構成される。空間的にセグメント化されたコンテンツは、ソース・ストリーム、例えば、MPEG−型ストリームの各画像フレームを、多数の空間的セグメント・フレームに分割することによって生成することができる。画像フレームの1つの特定エリアに関連付けられた空間的セグメント・フレームの時間シーケンスは、別個の空間的セグメント・ストリームにおいて編成することができる。空間的セグメント・ストリームにおける空間的セグメント・フレームは、既知のトランスポート・コンテナ・フォーマット(transport container format)にしたがってフォーマットし、メモリに空間的セグメント・ファイルとして格納することができる。
【0042】
空間的にセグメント化されたコンテンツの収集を扱い、空間的にセグメント化されたコンテンツをクライアントに配信するために、CDNCFは特殊なデータ構造を使用する。以後、このデータ構造を空間的マニフェスト・ファイル(SMF)と呼ぶ。SMFは、zzz.SMFファイル拡張を用いて格納および識別することができる。CDNに基づいて空間的にセグメント化されたコンテンツをクライアントに配信する際におけるSMFの使用については、以下で更に詳しく説明する。
【0043】
図2Aから図2Eは、本発明の種々の実施形態による、空間的にセグメント化されたコンテンツの生成および処理を示す。
【0044】
図2Aは、空間的にセグメント化されたコンテンツを生成するプロセス例を模式的に示す。コンテンツ・プロバイダは、CDNを通じてこのようなコンテンツをクライアントに配信するために、このプロセスを用いることができる。このプロセスは、画像処理機能が、高解像度のソース・ストリーム220の1つ以上の低解像度バージョンを生成することから開始することができる。その後、低解像度のビデオ・ストリームにおける各画像フレーム222を、別個の空間的セグメント・フレーム2241−16に分割する。各空間的セグメント・フレームは、その画像フレームにおける特定のエリアと関連付けられている。元のソース・ストリームの画像フレームを組み立てるために必要とされる全ての空間的セグメント・フレームを、以後、空間的セグメント・グループと呼ぶ。
【0045】
一実施形態では、空間的セグメント・フレームは、セグメント・フレーム・ヘッダを含むことができる。セグメント・フレーム・ヘッダは、空間的セグメント情報、例えば、それが属する画像フレームにおける特定の位置に関する情報、シーケンス情報(例えば、タイム・スタンプ)、および解像度情報を含む。
【0046】
続いて、ソース・ストリームの画像フレームの1つの特定エリアに関連付けられた空間的セグメント・フレームのシーケンスを、特定のフォーマット、例えば、AVIまたはMPEGにエンコードし、空間的セグメント・ストリーム2261−16フォーマットに並べる。各空間的セグメント・ストリームは、空間的セグメント・ファイル、例えば、xxxx.m2tsまたはxxx.aviとして格納することができる。セグメント化の間に、画像処理機能は、空間的セグメント・ストリーム間における空間的関係を確立するための情報、および空間的セグメント・ストリームをどこから抽出することができるかについて示す位置情報を生成することができる。
【0047】
尚、画像フレームのセグメント・グループへの空間分割は、図2Aに模式的示されたものに限定されないことを申し添えておく。画像フレームは、等しい寸法の空間的セグメント・フレームのマトリクスを定めるセグメント・グループに空間的に分割することができる。あるいは、他の実施形態では、セグメント・グループにおける空間的セグメント・フレームが異なるセグメント・フレーム寸法を有してもよい。例えば、元の画像フレームの中心に関連付けられた小さなセグメント・フレームと、画像フレームのエッジにおけるそれよりも大きなサイズの空間的セグメント・フレームとを有してもよい。
【0048】
図2Aに示す空間的セグメント化プロセスは、ソース・ストリームの異なる解像度バージョン毎に繰り返すことができる。このように、1つのソース・ストリームに基づいて、多数の空間的表現を生成することができ、各空間的表現には、ソース・ファイルの所定の空間的にセグメント化されたフォーマットを関連付けることができる。
【0049】
各空間的表現における空間的セグメント・ストリーム間において空間的関係および/または時間的関係を確立する情報、ならびに空間的セグメント・ストリームを抽出するための位置情報、例えば、URLは、階層的に並べ、空間的マニフェスト・ファイル(SMF)として格納することができる。SMFの構造については、図3を参照して詳しく論ずることにする。
【0050】
図2Bは、本発明の一実施形態によるCDN200の少なくとも一部を更に詳細に示す。CDNは、1つ以上の配信ノード2021−2を含むことができ、各々、コントローラ2041−2および配信ストレージ2061−2を含む。収集ノード208は、空間的にセグメント化されたコンテンツをコンテンツ処理エンティティ210、例えば、コンテンツ・プロバイダまたは他のCDNから、CDNCFの制御の下で受信するように構成される。
【0051】
空間的にセグメント化されたコンテンツを収集するために、CDNCF212はSMFをコンテンツ処理エンティティから受信することができる。SMFは、位置情報、例えば、URLを含んでおり、ここに、コンテンツ処理エンティティに関連付けられた空間的セグメント化コンテンツが格納される。SMFにおける位置情報に基づいて、CDNCFは、次に、空間的セグメント・ストリームの収集ノードへの移送を開始することができる。収集ノードは、収集したコンテンツを収集キャッシュ214に一時的に格納またはバッファすることができる。
【0052】
CDFCFは、更に、所定の配給機能にしたがって、空間的コンテンツ・セグメント・ストリームのコピーを1つ以上の配信ノードに配給するコンテンツ展開機能216も含むことができる。この機能は、処理負荷、データ・トラフィックおよび/またはCDNにおける配信ノードに関連付けられた地理的近接度情報に基づいて、空間的にセグメント化されたコンテンツのコピーをCDNの1つ以上の配信ノードを通じて配給することを可能にするアルゴリズムを使用することができる。
【0053】
したがって、コンテンツ要求をクライアントから受けたとき、CDNCFは、例えば、このクライアントに近くにあり大きな処理負荷がかかっていない1つ以上の配信ノードを選択することができる。CDNの効率を高めるために、1つのSMFに関連付けられた異なる空間的セグメント・ストリームを異なる配信ノードに配給することができる。例えば、画像フレームの中央に位置し、要求される頻度が高い空間的セグメント・ストリームを多数の配信ノードに格納することができ、画像フレームのエッジに位置し要求される頻度が低い空間的セグメント・ストリームは、1つの配信ノードに格納すればよい。
【0054】
一旦CDNCFが、収集した空間的セグメント化コンテンツを配信ノードに配給したなら、CDNCFはSMFにおける位置情報を変更し、空間的セグメント・ストリームが配給された配信ノードへの参照(URL)を、変更されたSMFが含むようにすることができる。このように変更したSMFを、CDNCFによってSMFストレージ218に格納する。
【0055】
図2Cおよび図2Dは、本発明の一実施形態にしたがって空間的にセグメント化されたコンテンツを収集するプロセスに関連付けられたフロー・チャートおよびシーケンス図をそれぞれ示す。図2Cに示すように、本プロセスは、CDNCFがソース、例えば、コンテンツ・プロバイダ、CDN、または他のコンテンツ処理エンティティから発する(originate)コンテンツ収集の要求を受けることから開始することができる(ステップ230)。この要求は、位置情報、例えば、URLと、コンテンツ識別子とを含むことができる。応答して、CDNCFはファイルを受信する(232)。このファイルは、SMF(zzz.SMF)または従来のセグメント化されていないコンテンツ・ファイルのいずれかに関係することができる。
【0056】
CDNCFがSMFを受信した場合、この受信したSMFに基づいて、空間的にセグメント化されたコンテンツの収集を実行することができる(ステップ234)。収集プロセスの実行は、空間的セグメント・ストリームに関連付けられた位置情報、例えば、URLを抽出するためにSMFをパースすること(ステップ236)、およびそれぞれの空間的セグメント・ストリームを抽出するように収集ノードに命令し、収集したストリームを一時的に収集キャッシュに格納すること(ステップ238)を含むことができる。
【0057】
処理負荷、データ・トラフィック、および/またはCDNにおける配信ノードに関連付けられた地理的近接度情報に基づいて、CDN展開機能は、次に、空間的セグメント・ファイルを、1つ以上の所定のコンテンツ配信ノードにわたって配給し(ステップ240)、続いて、空間的に異なるセグメント・ファイルが格納される異なる配信ノードの新規の位置に関連付けられた位置情報を追加することによってSMFを更新する(ステップ242)ことができる。任意に、URLをソースに送ることもできる(ステップ254)。
【0058】
CDNCFは、更新された(変更された)SMFを、配信ノードの少なくとも1つによって格納し(ステップ244)、今後の使用のために、更新されたSMFを抽出することができる位置を格納するために、CDNCFに関連付けられたSMFテーブルに新規エントリを生成する(ステップ246および248)ことができる。任意に、SMFを位置特定するためのURLをソースに送ることもできる(ステップ254)。
【0059】
ソースのソース収集要求が従来のセグメント化されていないコンテンツと関連付けられている場合、このコンテンツを一時的に収集ストレージに格納することができ、その後CDN展開機能がこのコンテンツを1つ以上の配信ノードに配給する(ステップ250)。格納されているファイルに関連付けられたURLを生成し、後に抽出ためにCDNCFによって格納する(ステップ252)ことができる。任意に、コンテンツを位置特定するためのURLもソースに送ることができる(ステップ254)。
【0060】
図2Dのシーケンス図は、空間的にセグメント化されたコンテンツを収集するプロセスの一実施形態を更に詳しく示す。この例では、CDNCFおよびソースは、コンテンツ収集を制御するためにHTTPに基づくプロトコルを用いることができる。本プロセスは、ソースがコンテンツ収集要求をCDNCFに送ることから開始することができ、この要求は、Movie-4.SMFという名称のSMFを指し示すURLを含む(ステップ260)。CDNCFは、このSMFを抽出し(ステップ262および264)、空間的セグメント・ファイル位置を抽出するために(例えば、1つ以上のURLの形態で)SMFをパースすることができる(ステップ268)。
【0061】
これらのURLを用いて、CDNCFは、CDN収集ノードに、SFM、例えば、ソース記憶キャッシュにおいて識別される空間的セグメント・ストリームを読み出すように命令する(ステップ270)。この空間的セグメント・ストリームを受信した後(ステップ272から278)、収集ノードは、コンテンツを抽出するのに成功したことをCDNCFに通知する(ステップ280)ことができる。次いで、CDNCFは、収集したストリームのコピーを、CDNにおける配信ノードに配給することができる。例えば、処理負荷、データ・トラフィック、および/または地理的近接度情報に基づいて、CDN展開機能は、4つの空間的にセグメント化されたコンテンツ、Movie-4-1.seg、Movie-4-2.seg、Movie-4-3.seg、およびMovie-4-4.segのコピーを配給ノードND2に配給し、空間的セグメント・ストリームMovie-4-1.segおよびMovie-4-3.segをDN1に配給することを決定することができる(ステップ281)。
【0062】
配信ノードへの配給の後、CDNCFは、これらの空間的セグメント・ストリームを抽出することができる配信ノードの位置(この場合、DN1およびD2のURL)をSMFに挿入することによって、SMFを更新することができる(ステップ282)。更新したSMFは、空間的セグメント・ストリームと共に格納することができる(ステップ284および288)。SMFの位置は、CDNCFに関連付けられたSMFテーブルに格納することができる(ステップ286)。任意に、CDNCFは、更新したSMFに関連付けられた位置情報を含む応答をソースに送り、CDNによるコンテンツ収集成功を示すこともできる(ステップ290)。
【0063】
図2Eは、図2Cおよび図2Dを参照して説明したような、空間的にセグメント化されたコンテンツの収集前後におけるSMFの一部の例を示す。ソースから受信されたSMF292は、コンテンツ識別子、セグメント化に関する情報、例えば、セグメント化のタイプ、セグメントの数、および異なる空間的セグメント・ファイルからの空間的セグメント間の空間的関係を含むことができる。例えば、図2EにおけるSMF例の内容は、空間的セグメント・コンテンツがソース・ファイルMovie_4に基づいて生成されたことを示す。更に、このSMFは、4つの別個の空間的セグメント・ストリームMovie-4-1.seg、Movie-4-2.seg、Movie-4-3.seg、およびMovie-4-4.segが、ソース・ドメインにおけるある位置、cache.source.com/res/に格納されていることも示す。
【0064】
空間的セグメント・ファイルの収集後、CDNCFは、更新された空間的セグメント位置を含む更新SMF294をURLの形態で生成することができる。このURLは、空間的セグメント・ストリームMovie-4-1.segおよびMovie-4-3.segを含む第1配信ノードcache-1.cdn_A/res/、ならびに4つ空間的セグメント・ストリーム全てMovie-4-1.seg、Movie-4-2.seg、Movie-4-3.seg、およびMovie-4-4.segを含む第2配信ノードcache_2cdn_A/res/を指し示す。
【0065】
したがって、以上のことから、SMFは、空間的にセグメント化されたコンテンツのCDNへの収集を制御しながら行うことを可能にするということになる。収集の後、SMFは、空間的セグメント・ストリームを抽出することができるCDNにおける位置を特定する。以下で更に詳しく説明するが、SMFは、更に、クライアントが空間的にセグメント化されたコンテンツを抽出し、これと対話処理することも可能にすることができる。具体的には、SMFは、クライアントが制御する表示コンテンツとのユーザ対話処理(例えば、ズーミング、パンニング、およびティルティング(tilting)動作)を可能にする。
【0066】
図3は、本発明の一実施形態によるSMFデータ構造300を模式的に示す。SMFは、様々な階層データ・レベル302、308、318、328を含むことができ、第1レベル302はソース・ストリーム(例えば、source1.m2ts)のいわゆる空間的表現3061−3を定める空間的組成情報に関係することができる。通例、ソース・ストリームは、高解像度であり、多くの場合、広角ビデオ・ストリームであると考えられる。
【0067】
次のデータ・レベル308は、空間的表現を定める空間的表現情報に関係することができる。具体的には、空間的表現情報は、ソース・ストリームの特定のバージョン、例えば、解像度バージョンに関連付けられた1組の空間的セグメント・ストリーム間における空間的関係を定めることができる。
【0068】
空間的表現情報は、空間マップ311に配列された1組の空間的セグメント・ストリーム・インスタンス3121−4を含むことができる。一実施形態では、このマップは、空間的セグメント・ストリーム・インスタンスのマトリクス(行および列に構成される)を定めることができ、ソース・ストリームによって搬送されるコンテンツの少なくとも一部を構成する画像の構築(construction)を可能にする。
【0069】
空間的セグメント・ストリーム・インスタンスは、位置参照システム内におけるセグメントの位置を定めるセグメント位置3131−4と関連付けることができる。例えば、図3は、空間的セグメント・ストリーム・インスタンスのマトリクスを示し、セグメント位置(1,1)および(1,2)に関連付けられた空間的セグメント・ストリーム・インスタンスが、ソース・ストリームにおけるビデオ画像の左上エリアおよび右上エリアに関連付けられたコンテンツを指すことができる。これら2つのセグメント・ストリーム・インスタンスに基づいて、ソース・ファイルのビデオ画像の上半分に関連付けられたコンテンツを含むビデオ画像を再生することができる。
【0070】
更に、空間的表現情報は、ソース・ストリームの解像度バージョンを示すソース解像度310も含むことができる。これは、空間マップにおいて示される空間的セグメント・ストリームを生成するために用いられる。例えば、図3では、空間マップにおいて示される空間的セグメント・ストリームは、ソース・ストリームの4096×2160の解像度バージョンに基づいて生成することができる。
【0071】
更に、空間的表現情報は、空間マップにおいてしめされた空間的セグメント・ストリームの解像度を定めるセグメント解像度314(図3の例では、2048×1080の解像度)、および空間マップにおける空間的セグメント・ストリームをクライアントに送信するときのビット・レートを定めるセグメント・ビット−ストリーム・レート316を含むことができる。
【0072】
次のデータ・レベル318は、空間的セグメント情報、即ち、空間マップにおける空間的セグメント・ストリーム・インスタンスに関連付けられた情報に関係することができる。空間的セグメント情報は、空間的セグメント・ストリーム324における空間的セグメント・フレームに関連付けられた位置座標を含むことができる。この位置座標は、絶対座標系または相対座標系に基づくことができる。空間マップにおいて示された空間的セグメント・ストリームにおける空間的セグメント・フレームの位置座標は、隣接する空間的セグメント・フレームの境界を空間的に整合して、表示のためのシームレス・ビデオ画像にするために、クライアントによって用いることができる。このプロセスは、多くの場合「縫合」(stitching)と呼ばれる。
【0073】
更に、空間的セグメント情報は、配信ノードを位置特定するために、1つ以上の空間的セグメント・ストリーム・ロケータ326、328(例えば、1つ以上のURL)も含むことができる。配信ノードは、特定の空間的セグメント・ストリームをクライアントに送信するように構成される。また、空間的セグメント情報は、ストリームのクライアントへの送信を制御するために用いられるのはどのプロトコルか(例えば、RTSPまたはHTTP)を示すプロトコル情報と、クライアントにおける同期モジュールが、クライアントによって受信された異なるセグメント・ストリームを同期するための同期情報330、332とを含むこともできる。
【0074】
以上で述べた縫合および同期プロセスについて、図9から図11を参照しながら、以下で更に詳しく説明する。
【0075】
更に、SMFは、1つの空間的表現における空間的セグメント・ストリームを、別の空間的表現における空間的セグメント・ストリームに関係付ける表現間情報334も含むことができる。この関係間情報は、クライアントが異なる表現に跨がって効率的にブラウズすることを可能にする。
【0076】
図4は、本発明の一実施形態にしたがって、(擬似)XMLを用いる(高解像度)ソース・ファイルの、1組の空間的にセグメント化されたビデオ表現を定めるSMFの一部の一例を示す。このSMFは、ソース・ファイルsoursel.m2tsに基づいて、異なる空間的表現(この場合3通り)を定める。
【0077】
図4のSMFにおける第1の空間的表現は、1つの1024×540画素解像度のセグメント化されていないビデオ・ストリーム(segment_mode==OFF)を定める。クライアントは、この第1空間的表現において定められているURL、rtsp://video.content.com/full_stream/aviを用いて、ストリームを抽出することができる。
【0078】
このSMFにおける第2空間的表現は、4096×2160解像度のソース・ストリームと関連付けられている。このストリームは、2×2マトリクス(NumberOfColumns、NumberOfRows)に空間的にセグメント化される。このマトリクスは、4つの空間的セグメント・ストリーム・インスタンスを含んでおり、各々が、2048×1080セグメント解像度の別個の空間的セグメント・ストリームに関連付けられており、各々が、URLによってアクセス可能である。例えば、セグメント位置(1,1)と関連付けられた第1セグメント・ストリームは、URL、rtsp://video.content.com/stream1_1.aviを用いて、RTSPサーバに要求することができる。
【0079】
SMFは、空間的セグメント・ストリームに関連付けられた同期情報を定めることができる。例えば、図4におけるSMFは、RTSPサーバに対して所定のRTPオフセット値を定める。このRTSPサーバは、空間的セグメント・ストリームstream1_1.aviをクライアントに送信するように構成される。RTSPサーバは、空間的セグメント・ストリームをクライアントにストリーミングするためにRTPプロトコルを用いる。通常、RTPストリームにおける連続RTPパケットには、RTSPサーバによって、ランダムなオフセット値を開始値として用いるタイム・スタンプが付けられている。クライアントにおいて異なる空間的セグメント・ストリームを同期させるためには、この初期オフセット値についての知識が必要となる。
【0080】
したがって、異なるRTSPサーバから発する異なるRTPストリームをクライアントが同期させることを可能にするために、クライアントは、要求の中において、所定のRTPオフセット値を、異なるRTSPサーバに送り、要求の中にある所定のRTPオフセットをRTPタイム・スタンプの開始値として使用するように、各サーバに命令することができる。このように、クライアントは、異なるRTSPサーバから発し、異なるタイム・スタンプが付けられたRTPストリーム間における時間的関係を判断することができる。
【0081】
SMPにおけるもう1つの、第3空間的表現は、ソース・ストリームの7680×4320解像度バージョンに関係することができる。このソース・ストリームは、16個の空間的セグメント・ストリーム・インスタンスを含むマトリクスにセグメント化され、各々が1920×1080解像度空間的セグメント・ストリームと関連付けられ、各々が所定のURLを介してアクセス可能である。
【0082】
好ましくは、空間的セグメント・ストリームの解像度およびアスペクト比は、マクロ・ブロックおよびスライス・サイズというような、共通のビデオ・エンコーディングおよびデコーディング・パラメータと一貫性がある。加えて、空間的セグメント・ストリームの解像度は、十分なビデオ・コーディング利得を保持できるように、十分に大きくなければならない。
【0083】
図5Aから図5Cは、本発明の一実施形態にしたがって、ユーザがコンテンツ処理デバイスと対話処理するプロセスを示す。このコンテンツ処理デバイスは、空間的にセグメント化されたコンテンツを処理および表示するように構成される。
【0084】
図5Aは、1つ以上の配信ノード5041、5042から空間的セグメント・ストリームを直接抽出するように構成されるクライアント502を含むコンテンツ処理デバイス501を示す。各配信ノードは、コントローラ5221、5222と、空間的セグメント・ストリームを格納する配信ストレージ5241、5242を含むことができる。
【0085】
コンテンツ処理デバイスのディスプレイは、コンテンツを表示することおよびユーザ入力520を受け取ることの双方を可能にするインタラクティブ・グラフィカル・ユーザ・インターフェース(GUI)509として構成することができる。このようなユーザ入力は、表示されるコンテンツとのユーザの対話処理に関係することができ、ユーザの対話処理は、ビデオ・データのズーミング、ティルティング、およびパンニングというようなコンテンツ操作動作を含む。このようなGUIは、当技術分野では周知のタッチ・スクリーン機能を有するディスプレイを含む。
【0086】
クライアントは、SMF503をCDNから受信し、SMFにおける情報およびGUIを介して受け取ったユーザ入力とに基づいて、メディア・エンジン507およびアクセス・エンジン508を制御するように構成される制御エンジン505を含むことができる。このようなユーザ入力は、表示されるコンテンツとのユーザの対話処理、例えば、ズーミング動作、に関係することができる。このようなユーザ対話処理は、制御エンジンを起動し、SMFにおける位置情報(URL)を用いて、空間的にセグメント化されたコンテンツを抽出するようにアクセス・エンジン(例えば、HTTPまたはRTSPクライアント)に命令することができる。
【0087】
図5Bは、ユーザがGUIを介してクライアントと対話処理するプロセスを模式的に更に詳しく示す。具体的には、図5Aは、図5Bに模式的に示すように、ユーザがディスプレイ514の特定のエリア512(関心領域即ちROI)を選択するプロセスを模式的に示す。選択されたROIのサイズおよび座標に基づいて、制御エンジンは、SMFからしかるべき空間的表現を選択することができる。しかるべき空間的表現を選択するプロセスについて、図5Cを参照して更に詳細に説明する。
【0088】
図5Bの例では、制御エンジンが、16個の空間的セグメント・ストリーム・インスタンスのマトリクスを構成するSMFから空間的表現を既に選択しているのでもよい。各空間的セグメント・ストリーム・インスタンスは、ディスプレイにおける特定エリアと関連付けられたコンテンツに関係する(ディスプレイ514において点線で模式的に示すように)。次いで、制御エンジンは、ROIと、選択された空間的表現の空間的セグメント・ストリーム・インスタンスに関連付けられた空間エリアとの間の重複を判定することができる。
【0089】
このように、図5Bの例では、制御エンジンは、4つの空間的セグメント・ストリーム・インスタンス(陰影を付けた空間的セグメント・ストリーム・インスタンスS2,1、S3,1、S2,2、S3,2)がROIと重複することを判定することができる。このように、制御エンジンによって、4つの空間的セグメント・ストリーム5151−4が識別され、ROI512におけるコンテンツをユーザに表示する新規のビデオ・ストリーム516の再生が可能となる。識別された空間的セグメント・ストリーム・インスタンスがROIを構成する場合、以後空間的セグメント・サブグループと呼ぶ。
【0090】
図5Aを参照すると、空間的セグメント・サブグループを決定した後、制御エンジン505は、識別された空間的セグメント・ストリームを配信するように構成された配信ノードへのアクセスを要求するように、アクセス・エンジンに命令することができる(この場合、2つの配信ノードが識別された)。次いで、アクセス・エンジンは、空間的セグメント・ストリームをクライアントに送信することを求める要求5111−2を配信ノード5041および5042のコントローラに送ることができる(この場合、各配信ノードが2つの空間的セグメント・ストリーム5131−2および5151−2をクライアントに配信する)。アクセス・エンジン508は、送信された空間的セグメント・ストリームをメディア・エンジン507に転送することができる。メディア・エンジン507は、空間的セグメント・サブグループの空間的セグメント・ストリームを、バッファ、同期、およびデコードし、デコードした空間的セグメント・フレームを縫合して、ROIを構成するビデオ画像にする処理機能を含むことができる。
【0091】
図5Cは、本発明の一実施形態による、SMFに基づいて空間的にセグメント化したコンテンツのユーザ対話処理および再生(play-out)の流れ図を示す。具体的には、図5Cは、ユーザがROIを選択することによってズーミング動作を開始する場合の流れ図を示す。
【0092】
本プロセスは、クライアント、具体的には、クライアントにおける制御エンジンがSMFを受信し、空間的表現の内1つをデフォルトとして選択する、例えば、ソース・ストリームの低帯域幅非セグメント化バージョンを選択することから開始することができる(ステップ530)。更に、制御エンジンは、ROIをデフォルト値に、通例、最大表示サイズに対応する値に設定することができる(ステップ532)。制御エンジンがROI要求を受けた場合、一時的ファイル上に空間的表現の全てまたは少なくとも一部を抽出し、この空間的表現に「未チェック」としてマークすることができる(ステップ534)。次いで、制御エンジンはプロセスを開始することができ、リストから未チェックの空間的表現を取り出し(ステップ536)、チェック済みとしてマークすることができる(ステップ538)。SMFに基づいて、制御エンジンは、次に、選択された空間的表現に一致する空間的セグメント・サブグループ、即ち、ROIを構成する関連空間的セグメント・ストリーム・インスタンスが存在するか否か判断することができる。
【0093】
空間的表現情報および関連空間的セグメント情報を用いて、制御エンジンは、更に、識別された空間的セグメント・サブグループが再生要件、例えば、帯域幅、コデック・サポート等を満たすか否か検証することができる(ステップ542)。再生要件が満たされる場合、次の「未チェック」空間的表現を処理する。再生要件が満たされない場合、制御エンジンは、その空間的表現をリストから削除することができる(ステップ546)。その後、リスト上にある全ての空間的表現が処理されるまで、次の未チェック空間的表現を処理する(ステップ544)。
【0094】
次いで、リスト上にある全ての空間的表現をチェックし終えた後、クライアントはこのリストが空であることをチェックすることができる(ステップ547)。リストが空である場合、クライアントは、以前のROIおよび空間的表現が利用可能であり選択できるか否か判断することができる(ステップ548)。そうであれば、以前のROIを再生のために選択することができる(ステップ549)。以前のROIが利用可能でない場合、エラー・メッセージを生成することができる(ステップ550)。あるいは、チェック済み空間的表現のリストが空でない場合、コンテンツ・エージェントが、このリストから、再生判断基準、例えば、画面解像度、品質、エンコーディング、帯域幅等を最も良く満たす空間的表現を選択することができ、続いてこの選択した空間的表現に変更する(ステップ552)。
【0095】
次いで、制御エンジンは、新規に選択した空間的表現を用いて、空間的にセグメント化されたコンテンツの再生プロセスを実行することができる(ステップ544)。この場合、制御エンジンは、空間的セグメント・サブグループを決定し(ステップ556)、更にこの空間的セグメント・サブグループにおいて空間的セグメント・ストリームを抽出することができる位置の情報を判定することができる(ステップ558)。空間的セグメント・ストリームを抽出した後(ステップ560)、これらを再生のために処理する(ステップ562)。即ち、ROIを構成するビデオ画像のストリームを形成するために、バッファリングし、同期させ、縫合する。
【0096】
空間的にセグメント化されたコンテンツの再生中に、制御エンジンは、更に他のROI要求を検出することができる。例えば、ユーザがGUIを通じて他のROIを選択する。このような信号が検出された場合(ステップ564)、適した空間的表現のリストを構築しチェックする前述のプロセスを再度開始することができる。
【0097】
つまり、SMFにおける空間的表現は、SMFにおける1つ以上の空間的表現に定められている異なる空間的セグメント・ストリームをクライアントに選択させることによって、ユーザが異なるROIを選択し、ビデオ画像を拡大する(zoom in)ことを可能にする。SMFは、クライアントが直接CDN内にある配信ノードから、空間的にセグメント化されたコンテンツを要求することを可能にする。このような直接抽出によって、コンテンツへの高速アクセスが得られる。これは、サービスの品質および最適なユーザ体験を配信するために必要となる。
【0098】
したがって、単純に画像の選択画素エリアを拡大し倍率を上げて忠実性を失う結果になるのではなく、クライアントは、単にSMFを用いて効率的に所望の空間的表現に切り替えることができる。例えば、480×320画素解像度の空間的セグメント・ストリームを用いて、左上1/4を表示するように、ソース・ストリームの、例えば、960×640解像度バージョンに関連付けられた空間的表現を選択する。このように、選択された空間的表現では、従来のディジタル・ズーミングの状況と比較して、倍率を上げた既存の詳細に基づいて、拡大したときの更なる詳細を実際に表示全体に当てはめてユーザに見せることができる。SMFにおいて異なる空間的表現があることにより、ユーザは忠実性を失うことなく、そして過剰な量の帯域幅を必要とせずに、特定のROIまでズームすることが可能になる。
【0099】
図6Aは、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツをクライアントに配信するプロセスの流れ図を示す。この特定的な実施形態では、SMFは、空間的セグメント・ストリームと同じ配信ノードDNに格納される。
【0100】
本プロセスは、クライアントが特定のメディア・ファイルashd31.asfを選択し(ステップ602)、選択されたメディア・ファイルへの参照を含むHTTP GETをコンテンツ・プロバイダ・システム(CPS)(この場合、YouTube(商標)に送る(ステップ604)ことから開始することができる。CPSは、応答して、要求されたメディア・ファイルに関連付けられたSMFを得るために、CDNのCDNCFへのリディレクト(redirect)を生成することができる(ステップ606および608)。応答して、CDNCFは、要求されたSMFが格納されているコンテンツ配信ノードへのリディレクトを生成することができる(ステップ609および610)。次いで、配信ノードは、要求されたSMFをクライアントに送ることができる。
【0101】
次に、図5Cを参照して先に説明したように、クライアントはユーザからROI要求を受けることができ(ステップ612)、応答して、クライアントは、所望の空間的表現を選択し、空間的セグメント・サブグループ、即ち、選択されたROIを構成する空間的セグメント・ストリーム・インスタンスを決定するプロセスを開始することができる(ステップ614)。
【0102】
クライアントは、ストリーミング・セッション、例えば、RTSPストリーミング・セッションを、格納されているSMFを含む配信ノードによって、設定することができる(ステップ616および618)。要求された空間的セグメント・ストリームを受信すると(ステップ620および622)、クライアントは、選択されたROIを構成するビデオ画像の構築のために、空間的セグメント・ストリームを処理することができる(ステップ624)。
【0103】
図6Bは、本発明の更に別の実施形態にしたがって、クライアントが制御することによる、空間的セグメント化コンテンツの配信の流れ図を示す。この場合、空間的セグメント・ストリームは、異なる配信ノードD1およびD2に格納されている。その場合、本プロセスは、図6Aと同様に開始することができる。本プロセスは、クライアントが特定のメディア・ファイルashd31.asfを選択し(ステップ630)、選択されたメディア・ファイルへの参照を含むHTTP GETをコンテンツ・プロバイダ・システム(CPS)(この場合、YouTube(商標)に送る(ステップ632)ことから開始することができる。応答して、CPSは、要求されたメディア・ファイルに関連付けられたSMFを得るために、CDNのCDNCFへのリディレクトを生成することができる(ステップ634および636)。その後、CDNCFは、CDNCFに関連付けられたSMFストレージからSMFを抽出することができる。このSMFは、図2Eを参照して説明したフォーマットと同様のフォーマットを有することができる。具体的には、空間的セグメント・ストリームの少なくとも一部について、SMFは2つ以上の配信ノードを定めることができる。
【0104】
したがって、この場合、CDNCFは、空間的セグメント・ストリーム毎に、空間的セグメント・ストリームをクライアントに送信するのに最も適した配信ノードはどれか判断しなければならない。例えば、クライアントの位置に基づいて、ある配信ノードが他の配信ノードよりも好ましい場合がある。更に、輻輳の問題、または重い処理負荷のために、ある配信ノードを回避したほうがよい場合もある。このように、格納されているSMFに基づいて、CDNCFは、空間的セグメント・ストリーム毎に最も適した配信ノードをクライアントのために選択することによって、「個人」SMFを生成する(ステップ638)。この個人SMFをクライアントに送る(ステップ640)。
【0105】
クライアントは、ユーザからROI要求を受けることができる(ステップ642)。次いで、個人SMFに基づいて、クライアントは、所望の空間的表現を選択するため、空間的セグメント・サブグループを決定するため、そして空間的セグメント・サブグループにおいて空間ストリームをクライアントに送信する配信モードの位置を判定するためのプロセスを開始することができる。
【0106】
その後、クライアントは、空間的セグメント・ストリームをクライアントに送信するために、ストリーミング・セッション、例えば、RTSPストリーミング・セッションを、異なる識別された配信ノード、この場合、それぞれ第1および第2配信ノードD1およびD2によって設定することができる(ステップ646から652)。要求した空間的セグメント・ストリームを受信すると(ステップ650および652)、クライアントは、選択されたROIを構成するビデオ画像の構築のために、空間的セグメント・ストリームを処理することができる(ステップ654)。したがって、図6Bのプロセスでは、クライアントは、特定のクライアントおよびCDN状況、例えば、クライアント−配信ノード間の距離、配信ノードの処理負荷等にしたがって最適化されているSMFを受信する。
【0107】
図6Aおよび図6Bでは、HTTPに基づいてSMFの抽出について説明したが、SIP/SDP、SIP/XML、HTTP/XML、またはSOAPというような種々の他のプロトコルを用いることもできる。更に、空間的セグメント・ストリームの要求は、例えば、RTSP/SDP、SIP/SDP、SIP/XML、HTTP、IGMPに基づくことができる。セグメントの配信は、DVB−T、DVB−H、RTP、HTTP(HAS)、またはIP−マルチキャストによるUDP/RTPに基づくことができる。
【0108】
ソース・コンテンツ・ストリームの多数の空間的表現を定めるSMFは、CDNにおけるコンテンツの収集のため、および/またはCDNからクライアントへのコンテンツ配信のための効率的なツールを提供することができる。これは、クライアントが、ROIに関連付けられた空間的セグメント・ストリームを効率的に決定すること、およびCDNにおける配信ノードのためにこれらの空間的セグメント・ストリームを直接抽出することを可能にする。更に、これは、ユーザが、CDNにおいてそしてクライアントをCDNと接続するアクセス・ラインにおいて過剰な量の帯域幅を消費することなくコンテンツと対話処理する(例えば、ズーミングおよびパンニング)効率的な方法を可能にする。尚、SMFは、空間的にセグメント化されたコンテンツを制御する様々な有利な方法にも対処できることは明らかである。
【0109】
図7Aから図7Cは、本発明の種々の実施形態によるSMFの少なくとも一部を示す。図7Aは、本発明の一実施形態によるSMFの一部を示す。具体的には、図7AにおけるSMFは、表示しようとする画像フレームにおける空間的セグメント・フレームの空間位置を定める。このように、例えば、特定の空間的セグメント・ストリームにおける空間的セグメント・フレームの左下角を、絶対表示位置1000,500に関係付けることができる。
【0110】
このような座標系の使用によって、隣接する空間的セグメント・ストリームにおけるセグメント・フレームが重複することが可能になり、これによってパンニングおよびズーミング方法の改良が可能になる。例えば、重複によって、隣接する空間的セグメント・ストリームに切り替えるときに、一掃円滑なパンニング動作を行うことができる。
【0111】
図7Bは、表現間情報(inter-representation information)を含む、本発明の一実施形態によるSMFの一部を示す。空間的にセグメント化されたコンテンツが多数の空間的表現を含み、その各々が多数の空間的セグメントを定める場合、そのコンテンツ内部においてズーミングするとき、特定のROIに関連付けられた空間的セグメント・ストリームおよび他の空間的表現における解像度バージョンに対する所望の1つ以上の参照を発見するためには、計算的な負担が大きくなる虞がある。
【0112】
これらの状況では、異なる空間的表現間の相関についての情報も含むようにSMFを構成し、各空間的表現が、空間的にセグメント化されたビデオ・コンテンツの特定の解像度バージョンと関連付けられることが有用である場合もある。例えば、第1空間的表現の表示位置1000,500における空間的セグメント・ストリームを、第2空間的表現の表示位置500、250における空間的セグメント・ストリーム、および第3空間的表現の表示位置250,125における空間的セグメント・ストリームに関係付ける。
【0113】
表現間情報の使用は、特に、図7Aを参照して説明したような絶対画素座標系と組み合わせるときに有用であることができる。例えば、表現間情報(inter-representation)は、ズーム動作の間におけるROIのしかるべき空間的表現との照合を簡略化することができる。
【0114】
図7Cは、本発明の一実施形態によるSMFの一部を示し、正規化された画素座標がビデオ画像フレームの中心として選択され、選択された解像度バージョンとは独立して、空間的表現に関連付けられた画像フレーム内における絶対位置を定める。このような正規化座標系は、0から1までの範囲を取ることができ、(0.5,0.5)を原点として用いる。このような正規化座標系の使用により、ズーミング動作中においてSMF内での異なる空間的表現間の切り替えを一層簡単にすることができる。
【0115】
図8Aおよび図8Bは、更に、画像フレームにおける空間的セグメント・フレームの位置を定めるための異なる座標系の使用を示す。図8Aは、様々な異なる座標系、即ち、行および列802に基づく測位システム、絶対座標系804、および画像フレームにおけるセグメント・フレームを位置付けるための正規化座標系806を示す。図8Bは、空間的セグメント・ストリーム・インスタンスのマトリクスを含む1つの空間的表現を示し、これによって、隣接する空間的セグメント・フレームが重複する(例えば、50%の重複)。
【0116】
異なる配信ノードから発し個々に送信された空間的セグメント・ストリームに基づいてコンテンツを処理し表示するために、特定の機能をクライアントにおいて実装する必要がある。具体的には、個々の空間的セグメント・フレームを縫合して、表示のための1つの画像フレームが得られるように、異なる送信ノード(CDNの配信ノードのような送信ノード)から発する空間的セグメント・ストリームのフレーム・レベルの同期が必要とされ、この画像フレームはROIを構成する。
【0117】
同期が必要となるのは、クライアントと配信ノードとの間におけるデータ交換には、ネットワークにおいて種々の発生源の未知の遅延、例えば、送信遅延、ネットワーク経路の相違、ならびにコード化およびデコーディングの違いによる遅延が生ずるからである。その結果、要求は、異なる配信ノードに異なる時刻に到達し、生成しようとするビデオに関連付けられた空間的セグメント・ストリームの送信開始時刻が異なるという事態に至る。
【0118】
Mavlankar et al.は、タイル状ビデオ・ストリームを同時に同期させて表示するために、メディア・プレーヤの多数のインスタンスを用いる。このような解決策は、しかしながら、スマートフォン、タブレット等というような、低電力のメディア処理デバイスの多くには適していない。これらのデバイスは、一般に、同時に1つのデコーダ・インスタンスが実行することしか許さない。更に、Mavlankarは、異なる配信ノードから発する多数のセグメント・ストリームを同期させるという問題には取り組んでいない。具体的には、Mavlankarは、新規の空間的セグメント・ストリームの要求と空間的セグメント・ストリームの受信との間に遅延があり、この遅延はCDNにおける異なる配信ノード間で変更する可能性があるという問題に取り組んでいない。
【0119】
バッファリングおよび同期の問題は、空間的セグメント・ストリームを1つのトランスポート・コンテナにカプセル化することによって、回避するまたは少なくとも大幅に低減することができる。しかしながら、1つのコンテナにおいて空間的セグメント・ストリームを移送すると、空間的にセグメント化されたコンテンツのストリーミングの柔軟性が著しく低下する。何故なら、個々の空間的セグメント・ストリームを直接異なる配信ノードからクライアントにストリーミングすることができないからである。したがって、空間的にセグメント化されたコンテンツについて提案した方法の利点を維持するためには、クライアントにおける空間的セグメント・ストリームのストリーミング同期が必要となる。
【0120】
図9は、本発明の種々の実施形態にしたがって、空間的セグメント・フレームを同期させ、デコードし、空間的に整列するように構成されたメディア・エンジン902の模式図を示す。このメディア・エンジンは、図5Aを参照して説明したクライアントに含めることができる。
【0121】
メディア・エンジン902は、バッファ903を含むことができる。バッファ903は、多数のパケット化空間的セグメント・ストリーム9061−4をバッファするために多数の適応バッファ・インスタンスを含む。同期情報を用いれば、同期エンジン910が、空間的セグメント・ストリームにおいてパケットを同期させるために、バッファを制御することができる。
【0122】
同期情報は、空間的セグメント・ストリームにおけるパケットのヘッダにおいてタイミング情報を含むことができる。このようなタイミング情報は、ストリームにおける画像フレームの相対的位置を示すタイム・スタンプ、例えば、RTPタイム・スタンプを含むことができる。また、タイミング情報は、RTSPサーバとクライアントとの間で交換されるRTPタイム・スタンプ情報にも関係することができる。更に他の実施形態では、タイミング情報がタイム・セグメント、例えば、HTTP DASHマニフェスト・ファイルにおいて指定されるDASHタイム・セグメント、およびこのようなDASHタイム・セグメントに収容される、タイム・スタンプ付きフレーム(例えば、MPEG)または連番付きフレーム(例えば、AVI)にも関係することができる。
【0123】
図4を参照して既に説明したように、同期情報911、例えば、RTPオフセット値をSMF913に含め、制御エンジン915によって同期モジュールに送ることもできる。他の実施形態では、同期情報917は、帯域内(in-band)チャネルまたは帯域外(out-of-band)チャネルにおいて同期エンジンに送ることもできる。
【0124】
タイミング情報は、バッファ・モジュールにおける1つ以上の適応バッファ・インスタンスを制御するために用いることができる。例えば、バッファの出力が時間整列された(即ち、時間同期された)パケットを生成できるように、異なる空間的セグメント・ストリームのタイミング情報に基づいて、適応バッファ・インスタンスの時間遅延を判定することができる。
【0125】
バッファの出力における同期されたパケットをマルチプレクサ(図示せず)によって多重化し、時間同期パケット912のストリームにすることができる。このストリームは、いわゆるピクチャ・グループ(GOP:groups of pictures)に論理的に配列されたフレームを含むので、デコーダ916はこれらのパケットを順次デコードデコードして、デコードされた空間的セグメント・フレーム920のストリームを得ることができる。更に他の実施形態では、メディア・エンジンは、バッファから発するデータをデコードするために2つ以上のデコーダ920を含むこともできる。
【0126】
一実施形態では、デコードされたセグメント・フレームは、空間的セグメント・サブグループ9211−4のシーケンスに並べることができる。縫合エンジンは、各空間的セグメント・サブグループに関連付けられた空間的セグメント・フレームを縫合して、ROIを構成するビデオ画像フレームを得ることができる。縫合エンジンは、例えば、SMFにおける位置座標を用いて、空間的セグメント・サブグループにおける空間的セグメント・フレームを空間的に整列し、ユーザに表示するためのシームレスなビデオ画像フレーム922を得ることができる。
【0127】
画像縫合のプロセスは、空間的セグメント・サブグループの空間的セグメント・フレームを空間的に整列することによって、空間的セグメント・フレームに基づいてビデオ画像を生成する技法を含む(encompass)。更に他の実施形態では、画像位置合わせ、較正、配合(blending)というような画像処理技法を用いて、縫合プロセスを改良することができる。画像位置合わせは、2つの隣接する空間的セグメント・フレーム間における画像の特徴の照合を伴うことができる。重複する画素間の絶対差の総和を最小にする画像整列を探索するために、直接整列方法を用いることもできる。画像構成は、画像間における光学差および/または歪みを最小に抑えることを伴うことができ、配合は露出差を補償するために画像間で色を調節することを伴うことができる。
【0128】
図10Aおよび図10Bは、異なるストリーミング・プロトコルに基づいて、同期および縫合された空間的セグメント・フレームを示す。具体的には、図10Aは、同期および縫合されて1つの画像フレームとなった空間的セグメント・フレーム(この場合、4つ)を示す。これらの空間的セグメント・フレームは、適応ストリーミング・プロトコル、例えば、MPEG DASH ISO-IEC_23001-6v12において定義されているHTTP適応ストリーム(HAS)プロトコルを用いて、クライアントに移送される。
【0129】
各HAS−型空間的セグメント・ストリームを、N個の等しいサイズの時間セグメント(以後、空間−時間セグメントまたはSTセグメントと呼ぶ)に分割することができる。各STセグメントは、空間的セグメント・ストリームにおいて、特定の期間、例えば2〜4秒が関連付けられる。空間的セグメント・ストリームにおけるSTセグメントの位置は、単調増加(または減少)セグメント番号によって決定される。
【0130】
更に、各STセグメントは所定数の一連の空間的セグメント・フレームも含んでおり、STセグメントにおける空間的セグメント・フレームの位置は、単調増加タイム・スタンプまたはフレーム番号(用いられるトランスポート・コンテナによって異なる)によって決定することができる。例えば、番号が付けられた各STセグメントは、所定数の単調に番号またはタイム・スタンプが付けられた空間的セグメント・フレームを含むことができる。したがって、HAS−型空間的セグメント・ストリーム(またはSTセグメント・ストリーム)における各空間的セグメント・フレームの(時間的)位置は、そのSTセグメントにおけるセグメント番号およびフレーム番号によって一意に決定される。
【0131】
STセグメントにおける空間的セグメント・ストリームを等しい長さに分割する際、個々の空間的セグメント・ストリームの各々についてのピクチャ・グループ(GOP)の長さおよび構造、ビデオ・フレーム・レート、および全体的なビット・レートというようなビデオ・エンコーディング・パラメータを用いることによって、容易に行うことができる。
【0132】
HAS−型空間的セグメント・ストリームの時間フォーマット、例えば、各TSセグメントに関連付けられた時間期間、TSセグメントにおけるフレーム数等は、HASマニフェスト・ファイル(図3参照。HTTP空間的セグメント・ストリームがHASマニフェスト・ファイルにしたがって定められる)において記述することができる。したがって、HAS−型空間的セグメント化コンテンツでは、SMFがコンテンツの空間フォーマットを定めることができ、このコンテンツの時間フォーマットを定めるために、他のマニフェスト・ファイル、即ち、HASマニフェスト・ファイルを参照することができる。
【0133】
STセグメント化コンテンツ空間的セグメント・フレームの同期および縫合は、図10Aに示すようなセグメント番号およびフレーム番号に基づいて実現することができる。例えば、メディア・エンジンにおけるバッファが4つの別個のSTセグメント・ストリーム10021−4を受信した場合、同期エンジンは、セグメント番号(図10Aにおける時間セグメント番号N)およびフレーム番号(図10Aにおけるセグメント・フレーム番号#M)にしたがって、STセグメント・ストリームを処理することができる。例えば、同期エンジンは、マトリクス位置(1,1)、(1,2)、(2,1)および(2,2)に関連付けられたSTセグメント・ストリーム毎に、特定のセグメント番号に関連付けられた空間的セグメント・フレームを決定することができ、フレーム番号が同期エンジンによって選択され、バッファの出力に送られる。
【0134】
バッファの出力において、エンコードされた空間的セグメント・フレームをデコードすることができ、図9を参照して説明したのと同様の方法で、デコードされた空間的セグメントを縫合して、表示用のビデオ画像を得ることができる。
【0135】
図10Bは、同期および縫合されて1つの画像フレームとなった空間的セグメント・フレーム(この例では、4つ)を示す。これらの空間的セグメント・フレームは、RTP/RTSPストリーミング・プロトコルを用いて、クライアントに移送される。この場合、バッファは、タイム・スタンプが付けられたRTPパケットを含む4つのRTPストリームを受信することができる。RTPタイム・スタンプの値は、ランダムなRTPオフセット値から開始して、単調に増加することができる。したがって、異なるRTP−型空間的セグメント・ストリームにおける空間的セグメント・フレーム間の関係を判断するために、RTPオフセット値の知識が必要になる。
【0136】
以下で更に詳しく説明するが、RTSPサーバに特定の空間的セグメント・ストリームを要求するとき、このRTSPサーバはRTPタイム・スタンプ情報をクライアントに通知することができる。このRTPタイム・スタンプ情報に基づいて、ランダムなRTPオフセット値を決定することができる。あるいは、特定の空間的セグメント・ストリームを要求するときに、この要求が特定の所定RTPオフセット値を含んでもよく、RTSPサーバは、クライアントにストリーミングするために、このRTPオフセット値を使用する。このような所定のRTPオフセット値は、SMFにおいて定めることができる(例えば、図3参照)。
【0137】
したがって、同期エンジンは、バッファされた空間的セグメント・ストリームに関連付けられたRTPオフセット値を受信することができる。これらのRTPオフセット値は、SMF1006において決定することができる。これらのRTPオフセット値を用いて、同期エンジンは、次に、空間的セグメント・ストリームの各々におけるRTPパケット間の関係を判断することができる。例えば、図10Bにおいて、同期エンジンは、4つの異なる空間的セグメント・ストリーム10041−4に関連付けられた4つのRTPオフセット値を受信することができる。これらのオフセット値を用いて、同期エンジンは、次に、バッファされている空間的セグメント・ストリームの各々におけるパケットを決定することができる。例えば、空間的セグメント・ストリーム(1,1)におけるRTPタイム・スタンプ8000(およびRTPオフセット4000)を有するRTPパケットは、RTPタイム・スタンプ6000およびRTPオフセット2000を有する空間的セグメント・ストリーム(1,2)におけるRTPパケット、RTPタイム・スタンプ11000およびRTPオフセット7000を有する空間的セグメント・ストリーム(2,1)におけるRTPパケット、およびRTPタイム・スタンプ5000およびRTPオフセット値1000を有する空間的セグメント・ストリーム(2,2)におけるRTPパケットに属する。
【0138】
同期エンジンは、これらのパケットをバッファの出力に送ることができる。その後、図9を参照して説明したのと同様な方法で、これらのパケットは、空間的セグメント・フレームにデコードされ、縫合されて表示用のビデオ画像が得られる。
【0139】
以上で説明した同期プロセスによって、空間画像フレームのフレーム・レベルでの同期が可能になる。これは、2つ以上の空間的セグメント・ストリームに基づいてシームレスなビデオ画像を構築するために必要になる。
【0140】
精度が劣るNTPクロック情報を拠り所とする、いわゆるRTCP送出側報告(RTCP Sender Reports)のような他の周知の同期方式は、空間的セグメント・ストリームの同期には適していない。
【0141】
図11は、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツを同期させるための同期情報を決定するプロセス1100を示す。具体的には、図11は、異なる空間的セグメント・ストリームに関連付けられたRTPオフセット値を決定するプロセスを示す。このプロセスは、クライアントがRTSP PLAY要求を第1配信ノードに送って、RTSPサーバに、第1空間的セグメント・ストリームstream1_1RTSPを、起動しているクライアント(client starting)にストリーミングし始めることを要求することから開始することができる。RTSP PLAY要求における範囲パラメータは、ストリームにおけるt=10秒の位置においてストリーミングを開始するようにRTSPサーバに命令する(ステップ1102)。応答して、DN1はRTSP200OK応答をクライアントに送り、要求を実行することを確認する。更に、この応答におけるRTP-infoフィールドは、ストリームの第1パケットがRTPタイム・スタンプ5000を有することを示す(ステップ1104)。次いで、毎秒100フレームのストリーミング・クロック・レートに基づいて、クライアントは、予期されるRTPタイム・スタンプを1000と計算することができる(即ち、100×10秒)。次いで、受信したRTPタイム・スタンプを、予期されるRTPタイム・スタンプから減算することによって、RTPオフセット値を4000に決定することができる(ステップ1106)。
【0142】
同様に、t=20秒において、クライアントは、次に、他の空間的セグメント・ストリームstream1_2を第2配信ノードDN2に要求することができる(ステップ1108)。応答して、DN2はRTSP200OKメッセージをクライアントに送り、第1RTPパケットがRTPタイム・スタンプ7000を有することを示す(ステップ1110)。この情報を用いて、クライアントは、次に、第2空間的セグメント・ストリームに対するRTPタイムスタンプ・オフセットが5000であると決定する(ステップ1112)。したがって、クライアントと配信ノードとの間のRTSPシグナリングにおけるRTPタイミング情報に基づいて、クライアントは、各空間的セグメント・ストリームに関連付けられたRTPオフセット値を効率的に決定することができる。
【0143】
以上のことから、SMFはクライアントが直接CDNにおける異なる配信ノードにアクセスすることを可能にするので、高速なコンテンツ配信が達成されることになる。高速コンテンツ配信は、表示される空間的セグメント化コンテンツとの正しい対話処理、例えば、ズーミングおよびパンニングを可能にするために必要である。しかしながら、要求とコンテンツ受信との間における多少の遅延は不可避である。これらの遅延は、CDNにおける異なる配信ノード間で異なる場合もあり得る。図12は、2つの異なる配信ノードDN1およびDN2にコンテンツを要求したクライアントの例を示す。
【0144】
t=0において、クライアントはRTSP PLAY要求をDN1に送ることができる(ステップ1202)。この要求に応答して、DN1はRTPパケットをクライアントに送り始めることができる(ステップ1204)。何らかの遅延のために、t=0に関連付けられたRTPパケットは、t=1においてクライアントによって受信される。同様に、t=1において送信されるRTPパケットは、t=2においてクライアントによって受信され、t=2において送信されるRTPパケットはt=3においてクライアントによって受信されることになる。その時点で、クライアントは第1RTPパケットt=0の再生を開始することを判断するかもしれないが(ステップ1206)、他の2つのRTPパケットt=1および2は未だバッファされているところである。
【0145】
次に、RTPパケットt=1の再生を見ている間に、ユーザは、t=4において、パンニング動作を要求することを決定するとする。この要求に応答して、クライアントは、t=4から開始する所定の空間的セグメント・ストリームのストリーミングを、第2配信ノードDN2に要求することができる(即ち、範囲パラメータがt=4に設定される)(ステップ1208)。しかしながら、DN2の応答時間は遅いので、RTPパケットt=4をt=6においてクライアントに送る(ステップ1210)。この遅延のために、クライアントは、t=7においてでないと、DN2から発する空間的セグメント・ストリームを表示することができない(ステップ1212)。これは、ユーザがパンニング要求を出した3秒後である。したがって、この遅延の影響をできるだけ低減する方式が望まれる。
【0146】
図13は、本発明の一実施形態にしたがって、空間的にセグメント化されたコンテンツとのユーザ対話処理を改良するプロセスを示す。具体的には、図13は、図12を参照して説明したのと同様の、クライアントおよび2つの配信ノードを示す(即ち、1秒で応答する第1配信ノードDN1、および2秒の応答遅延があり、DN1よりも遅い第2配信ノードDN2)。
【0147】
開始位置t=0から第1空間的セグメント・ストリームをストリーミングし始めることをDN1に要求した後(ステップ1302)、クライアントは、t=3においてRTPパケットの再生を開始するとする(即ち、2つのRTPパケットをバッファした後)(ステップ1304)。次いで、RTPパケットt=1の再生を見ている間に、ユーザがt=4においてパンニング動作を要求することを決めたとする。この要求に応答して、クライアントは2つのRTSP PLAY要求を第2配信ノードDN2に送ることができる。第1RTSP PLAY要求は、位置t=4から開始する第2空間的セグメント・ストリームをストリーミングし始めることを第2配信ノードに要求し(RTSP PLAY要求の中にある範囲パラメータを用いる)(ステップ1306)、第2RTSP PLAY要求は、位置t=1から位置t=4までの第2空間的セグメント・ストリームを、リアル・タイムよりも速いストリーミング・レートでストリーミングし始めることを、DNS2に要求する(RTSP PLAY要求の中にある範囲パラメータおよびSPEEDパラメータを用いる)(ステップ1308)。
【0148】
応答して、(t=6において)第2配信ノードは、RTPパケットt=1,2,3および4を、クライアントに、レートを高くして送り始めることができるので(ステップ1310)、t=6において、クライアントは、第2配信ノードからのRTPパケットt=3の再生を開始することができる(ステップ1312)。同じ時点において、第1RTSP PLAY要求は、通常のレートでRTPパケットの送信を開始することができるので、一旦クライアントの再生がt=4に達したなら、レートを高めたRTPパケットの配信を終了することができる。このように、ユーザは、2秒の遅延があるパンニング動作に気付き、こうしてネットワーク遅延によるユーザの対話処理における影響を低減する。
【0149】
一時的にレートを高めてRTPパケットを配信することは、ビデオ−オン・デマンドの状況でも用いることができる。リアル・タイムよりも速いストリーミングは許されないライフ・ストリーミングの状況では、他の解決策を用いることができる。この場合、IEFT文書"Unicast-based rapid acquisition of multicast RTP sessions"(http://tools.ietf.org/html.draft-ietf-avt-rapid-acquisition-for-rtp-17)において記載されているようなIP−マルチキャストに基づく高速チャネル変更を用いることができる。
【0150】
尚、いずれの実施形態に関して説明したいずれの特徴であっても、単独で、または説明した他の特徴と組み合わせて使用することもでき、また他のいずれの実施形態の1つ以上の特徴と組み合わせて使用することもでき、あるいは他のいずれの実施形態のいずれの組み合わせとでも使用することができることは言うまでもない。
【0151】
本発明の他の実施形態は、コンピュータ・システムと共に用いるためのプログラム生産物として実現することもできる。プログラム生産物のプログラム(1つまたは複数)は、実施形態の機能を定め(本明細書において説明した方法を含む)、種々のコンピュータ読み取り可能記憶媒体上に収容することができる。例示的なコンピュータ読み取り可能記憶媒体には、(i)情報が永続的に格納される書き込み不可の記憶媒体(例えば、CD−ROMドライブによって読み取り可能なCD−ROMディスクのようなコンピュータ内部にある読み取り専用メモリ・デバイス、フラッシュ・メモリ、ROMチップ、またはあらゆるタイプのソリッド・ステート不揮発性半導体メモリ)、および(ii)変更可能な情報が格納される書き込み可能な記憶媒体(例えば、ディスケット・ドライブ内にあるフロッピ・ディスク、またはハード・ディスク・ドライブ、あるいはあらゆるタイプのソリッド・ステート・ランダム・アクセス半導体メモリ)が含まれるが、これらに限定されるのではない。本発明は、前述の実施形態には限定されず、添付する請求項の範囲内で変更することができる。
図1
図2A
図2B
図2C
図2D
図2E
図3
図4
図5A
図5B
図5C
図6A
図6B
図7
図8
図9
図10A
図10B
図11
図12
図13