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

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

▶ イマジン コミュニケーションズ コーポレイションの特許一覧

<>
  • 特許6027617-地理空間ビューア 図000002
  • 特許6027617-地理空間ビューア 図000003
  • 特許6027617-地理空間ビューア 図000004
  • 特許6027617-地理空間ビューア 図000005
  • 特許6027617-地理空間ビューア 図000006
  • 特許6027617-地理空間ビューア 図000007
  • 特許6027617-地理空間ビューア 図000008
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6027617
(24)【登録日】2016年10月21日
(45)【発行日】2016年11月16日
(54)【発明の名称】地理空間ビューア
(51)【国際特許分類】
   G06F 3/0484 20130101AFI20161107BHJP
   G06F 17/30 20060101ALI20161107BHJP
   G06T 17/05 20110101ALI20161107BHJP
   G09B 29/00 20060101ALI20161107BHJP
   G06T 1/00 20060101ALN20161107BHJP
【FI】
   G06F3/0484 120
   G06F17/30 170C
   G06F17/30 360Z
   G06T17/05
   G09B29/00 A
   !G06T1/00 200E
【請求項の数】14
【全頁数】26
(21)【出願番号】特願2014-530809(P2014-530809)
(86)(22)【出願日】2012年9月14日
(65)【公表番号】特表2014-532212(P2014-532212A)
(43)【公表日】2014年12月4日
(86)【国際出願番号】US2012055274
(87)【国際公開番号】WO2013040284
(87)【国際公開日】20130321
【審査請求日】2014年4月28日
(31)【優先権主張番号】13/232,559
(32)【優先日】2011年9月14日
(33)【優先権主張国】US
(73)【特許権者】
【識別番号】514009775
【氏名又は名称】イマジン コミュニケーションズ コーポレイション
(74)【代理人】
【識別番号】110000176
【氏名又は名称】一色国際特許業務法人
(72)【発明者】
【氏名】フーリエ,クレイグ
(72)【発明者】
【氏名】スルテ,スティーブ
【審査官】 加内 慎也
(56)【参考文献】
【文献】 米国特許出願公開第2011/0090399(US,A1)
【文献】 特開平10−307532(JP,A)
【文献】 国際公開第2009/126690(WO,A1)
【文献】 特開2004−259247(JP,A)
【文献】 特表2007−531332(JP,A)
【文献】 特開2011−118783(JP,A)
【文献】 米国特許出願公開第2011/0145256(US,A1)
【文献】 米国特許第07746343(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0484
G06F 17/30
G06T 17/05
G09B 29/00
G06T 1/00
(57)【特許請求の範囲】
【請求項1】
地理空間マルチビューアであって、
ユーザー入力に応答して地理空間データを供給する地理空間アプリケーションと、
複数のコンテンツソースからコンテンツを要求するための検索クエリを供給するように構成されたリクエストエンジンと、
前記ユーザー入力に応答して出力プレゼンテーションにおけるオブジェクトを調節するための少なくとも1つの変換を動的に生成するように構成されたグラフィックス・パイプラインと、を備え、
前記地理空間データは少なくとも1つの地理的領域の描写に対応し、
該複数のコンテンツソースは、複数のビデオストリームを提供する複数のビデオソースを含み、
該複数のビデオソースのうちの少なくとも1つは、カメラによって取り込まれた1つのビデオストリームを提供する1つのビデオソースを含み、
前記検索クエリは、少なくとも部分的に、前記地理空間アプリケーションからの前記地理空間データに基づき、
前記出力プレゼンテーションは、前記少なくとも1つの変換に基づいてレンダリングされ、
前記出力プレゼンテーションにおける前記オブジェクトは、少なくとも1つの地理的領域を表す1つの領域オブジェクトと前記検索クエリに応答して選択された該複数のビデオストリームのサブセットに対応する選択された複数のビデオオブジェクトとを含み、
該選択された複数のビデオオブジェクトのうちの少なくとも1つは、該カメラによって取り込まれた該1つのビデオストリームを含み、該グラフィックス・パイプラインは、該出力プレゼンテーションのなかの該領域オブジェクトのそれぞれの複数の部分に該選択された複数のビデオオブジェクトを直接的に重ねるように構成され、該選択された複数のビデオオブジェクトの各々が重ねられた該領域オブジェクトの該それぞれの複数の部分のうちの1つの部分は、該複数のビデオストリームの該サブセットの1つのビデオストリームのコンテンツ内で表示された1つの地理的位置に対応している、地理空間マルチビューア。
【請求項2】
請求項1に記載の地理空間マルチビューアであって、前記グラフィックス・パイプラインは、
前記ユーザー入力に応答して前記出力プレゼンテーションにおける前記オブジェクトの少なくとも1つの相対的な方向付けとスケーリングとを制御するために、複数のフレームのうち少なくとも1つの実質的な部分についてそれぞれの変換を計算するように構成されたアニメーションエンジンと、
各フレームについて計算された前記変換に基づいて、前記複数のフレームのそれぞれについて前記出力プレゼンテーションをレンダリングするように構成されたレンダラと、を更に備えた地理空間マルチビューア。
【請求項3】
請求項2に記載の地理空間マルチビューアであって、前記グラフィックス・パイプラインは、レンダリング命令と選択されたコンテンツとを前記レンダラに供給するようにプログラムされた合成器を更に備え、前記合成器は、前記出力プレゼンテーションの各フレームにおいてレンダリングされた前記オブジェクト同士の配置と関連性とを制御するべく、前記少なくとも1つの変換に基づいて前記レンダリング命令を生成する地理空間マルチビューア。
【請求項4】
請求項3に記載の地理空間マルチビューアであって、各フレームについて前記合成器によって前記レンダラに供給された前記選択されたコンテンツは、前記少なくとも1つの地理的領域の前記描写及びビデオコンテンツのうちの少なくとも1つを含まず、前記ビデオコンテンツと前記少なくとも1つの地理的領域の前記描写とは、異なる別個の経路を介して前記レンダラに供給され、前記少なくとも1つの地理的領域の前記描写は、1つの地理的マップを含む、地理空間マルチビューア。
【請求項5】
請求項2に記載の地理空間マルチビューアであって、前記レンダラは、前記出力プレゼンテーションを、所定のフレームレートを有する連続フレームとして供給するように構成され、前記所定のフレームレートは放送映像フレームレートを含む地理空間マルチビューア。
【請求項6】
要求されたコンテンツを復号するとともに復号されたコンテンツを供給するように構成された少なくとも1つのデコーダと、
前記地理空間アプリケーションによって供給された前記少なくとも1つの地理的領域の前記描写と前記復号されたコンテンツとを受信するように構成された非同期転送エンジンと、を更に備え、
前記非同期転送エンジンは、前記出力プレゼンテーションのレンダリングを容易にするべく、前記少なくとも1つの地理的領域の前記描写と前記復号されたコンテンツとをグラフィックスメモリに転送する、請求項1に記載の地理空間マルチビューア。
【請求項7】
各フレームについて生成された前記変換に基づいて前記複数のフレームのそれぞれについて前記出力プレゼンテーションをレンダリングするように構成されたレンダラを更に備え、前記レンダラは、前記グラフィックスメモリを含み、前記非同期転送エンジンは、前記少なくとも1つの地理的領域の前記描写と前記復号されたコンテンツとを、前記レンダラの前記グラフィックスメモリにおける対応する場所に直接転送するように構成された、請求項6に記載の地理空間マルチビューア。
【請求項8】
請求項6に記載の地理空間マルチビューアであって、前記復号されたコンテンツは、少なくとも1つのストリームの復号されたビデオコンテンツを含む地理空間マルチビューア。
【請求項9】
請求項6に記載の地理空間マルチビューアであって、前記少なくとも1つの地理的領域の前記描写と前記復号されたコンテンツとは、異なるレートで前記非同期転送エンジンに供給される地理空間マルチビューア。
【請求項10】
請求項7に記載の地理空間マルチビューアであって、前記グラフィックス・パイプラインは、レンダリング命令と選択されたコンテンツとを前記レンダラに供給するようにプログラムされた合成器を更に備え、前記合成器は、前記出力プレゼンテーションの各フレームにおいてレンダリングされた前記オブジェクト同士の位置と関係性とを制御するべく、前記少なくとも1つの変換に基づいて前記レンダリング命令を生成し、前記合成器によって供給される前記選択されたコンテンツは、前記少なくとも1つの地理的領域の前記描写及び前記復号されたコンテンツを含まない地理空間マルチビューア。
【請求項11】
請求項1に記載の地理空間マルチビューアであって、前記要求されたコンテンツへの応答は、前記検索クエリに関連すると判定された該複数のコンテンツソースのうちの少なくとも1つについての位置識別子を含み、前記リクエストエンジンは、該複数のコンテンツソースのうちの該少なくとも1つから対応するコンテンツを検索するべく前記位置識別子を利用し、該複数のコンテンツソースのうちの該少なくとも1つは、該ビデオソースを含む、地理空間マルチビューア。
【請求項12】
請求項1に記載の地理空間マルチビューアであって、前記要求されたコンテンツは、前記要求されたコンテンツに対して地理空間的基準を与える地理空間メタデータを含み、前記グラフィックス・パイプラインは、前記少なくとも1つの地理的領域の前記描写に関して、カメラによって取り込まれた該ビデオストリームに対応するオブジェクトの相対的な配置を制御するべく前記地理空間メタデータを利用する地理空間マルチビューア。
【請求項13】
請求項1に記載の地理空間マルチビューアであって、前記検索クエリは、少なくとも1つの地理的領域について、ユーザー定義された基準フレームに対応する前記地理空間アプリケーションからの地理空間記述子を含む地理空間マルチビューア。
【請求項14】
符号化されたバージョンの前記出力プレゼンテーションを少なくとも1つの遠隔ユーザーにネットワークを介して流すように構成されているストリーミングエンジンを更に備えた、請求項13に記載の地理空間マルチビューア。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、一般に、地理空間関連情報を表示するためのシステム及び方法に関する。
【背景技術】
【0002】
ユーザーに地理及び地理空間情報を提示するための様々な地理情報プログラム及びシステムが開発されている。このような地図及び関連サービスは、市街地図、衛星ベースの地図、地理的な関心領域(ROI)に関する他の空間メタデータ(例えば、道順や交通の詳細など)を見るための選択肢をユーザーに提供することができる。また、追加の静的情報が、地図上又は地図に隣接する固定位置でユーザーに提示されてもよい。しかし、地図に関連する情報が提示され得るタイプ及び方法は、存在する可能性がある情報やデータの量の観点から制限されているように見える。
【発明の概要】
【0003】
本発明は、一般に、地理空間関連データを表示するためのシステム及び方法に関する。データは、例えば、容易に検索されるとともにユーザーにとって有用である実用的な情報として利用され得る。
【0004】
1つの実施形態において、地理空間マルチビューアは、ユーザー入力に応答して地理空間データを供給する地理空間アプリケーションを含んでいてもよく、地理空間データは少なくとも1つの地理的領域の描写に対応する。リクエストエンジンは、少なくとも1つのデータソースからコンテンツを要求するための検索クエリを供給するように構成されている。検索クエリは、少なくとも部分的に、地理空間アプリケーションにおいて可視領域によって規定された関心領域を含む地理空間データに基づく。グラフィックス・パイプラインは、ユーザー入力に応答して出力プレゼンテーションにおけるオブジェクトを調節するための少なくとも1つの変換を動的に生成するように構成されている。出力プレゼンテーションは、少なくとも1つの変換に基づいてレンダリングされる。出力プレゼンテーションにおけるオブジェクトは、受信コンテンツと少なくとも1つの地理的領域の描写とを含む。
【0005】
別の実施形態において、地理空間マルチビューアは、地理空間アプリケーション、リクエストエンジン、非同期転送エンジン、グラフィックス・パイプライン、及びアニメーションエンジンを含んでいてもよい。地理空間アプリケーションはユーザー入力に応答して地理空間データを供給し、地理空間データは少なくとも1つの地理的領域の描写に対応している。リクエストエンジンは、少なくとも1つのデータソースからコンテンツを要求する検索クエリを送信するように構成され、検索クエリは少なくとも部分的に地理空間データに基づく。一例では、地理空間データは、地理空間アプリケーションにおいて可視領域によって規定された関心領域を含んでいてもよい。 非同期転送エンジンは、地理的領域(又は領域群)の描写を、検索クエリから戻された他のデータとともにグラフィックスメモリへ転送するように構成されている。一例として、非同期転送エンジンは、そのデータを、それがグラフィックス・パイプラインによって使用されたり消費されたりするレートに無関係なレートで転送することができる。次いで、グラフィックス・パイプラインは、供給されたデータを用いて、出力の所定フレームをレンダリングする。例えば、フレームがこのようにしてレンダリングされることによって、様々なデータストリームを、ユーザーの制御で実用的な情報に変えることができる。
【0006】
更に別の実施形態は、地理空間情報を供給するための、コンピュータで実行される方法を提供する。この方法は、少なくとも1つのユーザー入力を受信することと、ユーザー入力に応答して地理空間データを供給することと、を含んでいてもよい。地理空間データは、1つ又は複数のコンピュータ・プロセッサ上で動作する地理空間アプリケーションによって生成される少なくとも1つの地理的領域の描写に対応する。コンテンツの検索要求が送信され、検索要求は、地理空間データに少なくとも部分的に基づいている検索クエリを含む。少なくとも1つの変換は、出力プレゼンテーションにおいてレンダリングされるオブジェクト同士の関係性を制御するためのユーザー入力に応答して生成される。コンテンツは、特定されたリソース場所から受信される。出力プレゼンテーションのフレームは、少なくとも1つの変換、受信コンテンツ、及び少なくとも1つの地理的領域の描写に基づいて供給され、出力プレゼンテーションの各フレームにおいて受信コンテンツに対応するオブジェクトは、地理空間関連背景を持つようになる。
【図面の簡単な説明】
【0007】
図1図1は、地理空間マルチビューアを実行するためのシステム・アーキテクチャの一例を示す。
図2図2は、地理空間マルチビューアの例示的な実施形態を示す。
図3図3は、地理空間マルチビューアと共に利用され得るコンテンツシステムの一例を示す。
図4図4は、地理空間マルチビューアの機能を提供するための方法を示すフロー図である。
図5図5は、地理空間ROIの地理的描写及びコンテンツの両方を含む出力プレゼンテーションを提供するための方法を示すフロー図である。
図6図6は、地理空間マルチビューアによって生成されたディスプレイの例示的実施形態を示すスクリーンショットの一例を示す。
図7図7は、地理空間マルチビューアによって生成され得る別のディスプレイを示すスクリーンショットの一例である。
【発明を実施するための形態】
【0008】
本発明は、一般に、地理空間及び関連データを表示するためのシステム及び方法に関する。本明細書で記述される地理空間マルチビューアの実施形態は、(例えば、ライブの及び/又は過去のデータソースからの、静的な又はリアルタイムの)コンテンツ、地理空間メタデータ、センサのメタデータ、ディストリビューション・プロトコル、及び資産可視化を単一の地理空間環境へ統合することができる地理空間マルチビューアを提供する。その結果、ユーザーは、地理空間マルチビューアを利用して、マルチ・インテリジェンスの気付きを得ることができ、そこからユーザーは実用的な情報を引き出すことができる。
【0009】
1つの実施形態において、地理空間マルチビューアは、ユーザー入力に応答して地理空間データを供給する地理空間地図アプリケーションを利用することができる。地理空間データは、少なくとも1つの地理的な関心領域(ROI:region of interest)の描写(例えば2Dや3D)に対応してもよい。マルチビューアは、例えば検索クエリを供給することによって、1つ又は複数のデータソースからコンテンツを要求することができ、検索クエリは、地理空間地図アプリケーションからの地理空間データ(例えば地理空間座標)に少なくとも部分的に基づいて生成される。コンテンツは、データソースが要求における検索クエリに基づいて応答コンテンツを提供する根拠となる地理空間メタデータ及び他の情報とともに記憶されてもよい。マルチビューアはグラフィックス・パイプラインを利用し、グラフィックス・パイプラインは、地理空間地図アプリケーションを制御するためのユーザー入力に応答して出力プレゼンテーションを調節するための少なくとも1つの変換を動的に生成することができる。出力プレゼンテーションは、受信コンテンツと地理的領域の描写とを含み、少なくとも1つの変換に基づいてレンダリングされる。
【0010】
図1は、地理空間マルチビューア12を実行することのできるシステム10の一例である。地理空間マルチビューア12は、所定の関心領域について地理空間的に構造化されたコンテンツのビューを生成するように構成されている。コンテンツは、ビデオ、静止画、オーディオのほか、他のタイプのメタデータ(例えば、座標、関心領域、タイムライン、放送のホスト、及び/又は軍事水準アラーム)をも含んでいてもよい。関心領域又は領域群は、地理空間アプリケーション14とのユーザーインタラクションを介して制御されてもよい。地理空間アプリケーション14は、ユーザー制御される基準フレームをユーザーに提供する。結果として生じる基準フレームと関心領域とは、ユーザー入力装置(例えば、マウス、タッチスクリーン、キーボードなど)18によって入力されたユーザー入力に基づいて、対応するユーザーインターフェイス16を介して制御されてもよい。
【0011】
地理空間アプリケーション14は、ユーザー制御された地理的領域のための地理空間データを生成する。地理空間データは、地理空間座標、関心領域についてグラフィック描写に対応するデータのほか、地図や衛星画像中に表示されることがある他の識別可能な情報(例えば、都市、領域、ランドマーク、又は他のオブジェクトについてのラベル)をも含んでいてもよい。地理的領域のグラフィック描写は、2次元又は3次元の地理的地図や可視化に対応してもよい。グラフィック描写におけるタイプと内容とは、利用されている固有の地理空間アプリケーションに応じて変わってもよい。
【0012】
マルチビューア12において利用され得る地理空間アプリケーションの例は、幾つかの商業的に利用可能な地図アプリケーションを挙げれば、Google Map、Google Earth、Bing maps(従前のMicrosoft Virtual Earth)を含んでいてもよい。あるいは、地理空間アプリケーションは、1つ又は複数の地理的領域に対応する適切な地理空間データを備え得るプロプライエタリな地理空間アプリケーションでもよい。地理空間アプリケーションは、キーホール・マークアップ言語(KML)を含む、様々なフォームの地理空間データを備えていてもよい。KMLは、インターネットベースの2次元地図と3次元描写とに基づいて地理的注釈及び可視化を表現するために利用され得るXMLベースの言語スキーマである。KMLファイルは、地理空間アプリケーション38によって行われるバッファでのレンダリングのための一連の特性(例えば、場所マーク、画像、ポリゴン、3Dモデル、テキスト記述など)を記述する。また、地理空間アプリケーションは、レンダリングパイプラインによる使用のためのデータ、最も重要なものでは可視領域、焦点、カメラ位置、及び最新の基準フレームに関連する他のデータを、供給することができる。
【0013】
ユーザーは、地理空間アプリケーション14と対話して、例えば、ユーザーインターフェイス16を介して基準フレームを変更したり、地図上の1つ又は複数の点を選択したりすることができる。例えばポインティング要素を動かすことによって、ユーザーインターフェイス16を介したユーザー入力指示に応答して、関心領域が、追加されたり、選択され変更されたりしてもよい。更に、基準フレームは、キーボードによってカメラ位置を調節したり、マウスホイールでズームイン又はズームアウトしたりすることによって、変更されてもよい。地理空間マルチビューア12は、対応する出力を供給するように構成されており、関連する出力ディスプレイ20上に可視化され得る統合出力プレゼンテーションにおいて、地理的関心領域の描写を他のコンテンツとともに提示する。 例えば、マルチビューア12は、関心領域内の地理的関連性に応じて、コンテンツを地理的描写に選択的に重ね合わせるように構成されていてもよい。
【0014】
追加的に又は代替的に、地理空間マルチビューア12は、例えば1人又は複数の外部ユーザー24による使用のために対応するネットワーク22を介して、統合出力をリモートデバイスに送信することができる。例えば、地理空間マルチビューア12は、対応する統合出力を、地理的描写及び関連コンテンツの統合描写に対応するとともに、1人又は複数の外部ユーザー24に合致する所定のリソース位置に対応する、一連のフレームとして流すことができる。フレームは、1つ又は複数のユーザー設定可能な解像度及び符号化方式で、マルチビューア12から流されてもよい。
【0015】
ユーザーインターフェイス16を介した地理空間アプリケーション14とのユーザーインタラクションに応答して、また、地理空間マルチビューア12のコンテキストに応じて、マルチビューアは検索クエリを生成する。地理空間マルチビューア12は、地理空間アプリケーション14からの地理空間データに少なくとも部分的に基づいて検索クエリを生成してもよい。例えば、地理空間データは、ユーザー定義された基準フレームに対応する地理空間アプリケーション14からの地理空間座標を含んでもよい。地理空間座標は地理的領域を規定することができる。この領域は、出力ディスプレイ20を介してユーザーに提示されている全領域でもよいし、ユーザーに表示されている領域の一部分又は複数の部分でもよい。追加的に又は代替的に、地理空間データは、出力ディスプレイ20を介して提示されている地理空間領域内に在ることがある、1つ又は複数のユーザー選択された点の座標を含んでもよい。例えば、ユーザーは、ユーザーインターフェイス16を利用して、表示されている地図上の点又は領域を選択することができ、そのような選択により、地理空間アプリケーション14は選択された各場所を規定するデータを生成することになる。したがって、ユーザー制御された地理的領域の座標は、基準フレームを与え、基準フレームは、コンテンツの検索ベースを狭めるべく検索クエリの部分として利用されてもよい。
【0016】
また、地理空間マルチビューア12はコントロール26を含み、コントロールは、ユーザーインターフェイス16を介して供給されるユーザー入力に基づいて検索クエリを作成するために用いられてもよい。したがって、ユーザーインターフェイス16は、(例えば、地理空間アプリケーションのための一連のAPIを介して)地理空間アプリケーションからユーザーインターフェイス要素を利用するほかに、コントロール26によって実行されたインターフェイス要素及び機能を利用することもできる。
【0017】
コントロール26は、検索クエリを作成するように構成されたリクエストエンジン28を含んでいてもよく、検索クエリは、コンテンツシステム30から対応するコンテンツを要求するために利用される。例えば、リクエストエンジン28は、地理空間アプリケーションによって供給される地理空間データに基づいてコンテンツの照会を行うために利用される検索クエリを作成して、例えばコンテンツ検索をユーザー制御済みの地理的領域に関連するコンテンツに制限することができる。例えば、地理空間データは、地理空間アプリケーションによって与えられた描写において可視領域によって規定される関心領域の記述を含んでいてもよい。更に、リクエストエンジン28は、キーワード、時間制限又はコンテキスト・フィルタを含む、ユーザー定義の検索基準に基づいて検索クエリを作成してもよい。ユーザーは、ユーザーインターフェイス16を利用して検索基準を入力することができ、検索基準は、検索クエリを作成するべくリクエストエンジン28によって利用される。結果として生じる検索クエリは、一連の1つ又は複数の検索文字列を含んでいてもよく、また、ブール論理のみならず検索範囲を規定する他の記述子を利用することができる。検索クエリは、1つ又は複数のクエリ言語にしたがって供給されてもよく、クエリ言語は、周知のものでもプロプライエタリのものでもよい。
【0018】
また、コントロール26は、出力プレゼンテーションの一部分として提供されるコンテンツの優先度を確立するために利用されてもよく、これにより、コンテンツのどの単位がユーザーへの出力ディスプレイに提示されるかが決まる。更に、優先度は、コンテンツの各単位が表示される固有の方法を決定するために用いられてもよい。例えば、より高い優先度のコンテンツは、決定可能な解像度を有するウィンドウとして地理的描写(例えば1つの地図)上に表示される一方、より低い優先度のコンテンツは、複数の地図として又は地図上の単なるアイコンとして表示されてもよい。コントロール26は更に、表示方法を、コンテンツとして識別された結果の数の関数として制御することができる。
【0019】
更なる例として、コントロール26は、プログラム可能な規則を利用して出力プレゼンテーションを制御することができる。コントロール26は、要求のフォーム及び内容を規定するために利用されるこのような規則を用いることができ、コンテンツの要求は、このような規則に基づいて(例えばリクエストエンジンによって)送信される。更に、コントロールはグラフィック制御命令を生成して、どのコンテンツを表示させるか、また、そのようなコンテンツを地理空間アプリケーション14からの地理空間データと共にどのように表示させるかを、制御するようにする。例えば、コントロール26は、そのような規則を用いて、レイアウト、スケーリング、及び、ユーザー入力に応答して表示されるコンテンツやグラフィックスをレンダリングするために利用される他のパラメータを、動的に再設定することができる。また、コントロール26は、規則を使用して、出力において提示される1つ又は複数のアラートを起動させるほか、1つ又は複数の他の所定の受取人に与えられ得るメッセージングを例えばネットワークを介して制御することができ、ネットワークは有線及び/又は無線通信を介して提供されてもよい。アラートは、コントロール26によって自動的に生成されるのに加えて、手動又は半自動で生成されてもよい。
【0020】
上述したとおり、リクエストエンジン28は、コンテンツシステム30からコンテンツを要求するようにプログラムされてもよい。コンテンツシステム30は、1つ又は複数のデータソースを任意の数だけ含むことができ、データソースは、コンテンツデータ34を含むか、そうでない場合でもコンテンツデータ34へアクセスすることができる。例えば、リクエストエンジン28は、IPゲートウェイを介してネットワーク22にクエリを送信することができ、例えばマルチビューア12において実行されることができる。あるいは、地理空間マルチビューア12とコンテンツシステム30とは、破線36で示される通信リンクを介して直接通信してもよい。リンク36は、無線リンクでも物理的接続(例えば、光ケーブル又は導体ケーブル)でもよい。
【0021】
コンテンツシステム30は、要求を受信して処理し、要求は、対応する検索の記述を含む。検索クエリは、地理空間アプリケーション14からの地理空間データ(例えば地理空間座標)に少なくとも部分的に基づいて生成される。例えば、地理空間データは、表示される領域のパラメータを規定する一連の座標を特定してもよい。追加的に又は代替的に、地理空間データは、例えばユーザー入力装置18(例えばマウス、タッチスクリーンなど)を用いて、ユーザーインターフェイス16を介してユーザーによって選択された1つ又は複数の点を含んでいてもよい。本明細書で述べるように、ユーザーインターフェイス16は、マルチビューアを実現する専用コンピュータシステムで局所的にコントロールにアクセスするように実装されてもよい。追加的に又は代替的に、1人又は複数の外部ユーザー24は、コントロール26と地理空間アプリケーション14とを含む地理空間マルチビューア12の機能を(例えば外部キーボード、ビデオ、マウス(KVM)コントロールを介して)遠隔制御することができる。
【0022】
コンテンツシステム30は、検索クエリに応答してコンテンツデータ34を特定するべく問合せを行う。コンテンツシステム30は、リクエストエンジン28によって発行された要求に合致するか、そうでない場合でもその要求に関連する、コンテンツのリストを送信することができる。リストは、地理空間メタデータ、コンテンツ・メタデータのほか、リソース場所識別子(例えば、ネットワークアドレス又はユニフォーム・リソース・ロケータ(URL))や、応答におけるコンテンツの各構成要素についての他の情報を含んでいてもよい。そして、地理空間マルチビューア12のコントロール26は、応答において特定されたコンテンツの各単位に対して与えられた場所識別子に基づいてコンテンツを取得することができる。あるいは、リクエストエンジンからの初期要求に応答して、コンテンツシステム30は、その応答の一部としてコンテンツを地理空間マルチビューアに戻してもよい。
【0023】
一例として、ストリーミングエンジンは、ネットワーク22を介してそれぞれのコンテンツを地理空間マルチビューアに流すようにプログラムされてもよい。地理空間マルチビューアは、コンテンツシステムからのほかに、他の利用可能なコンテンツソースからも、任意の数のコンテンツ・ストリームを受信することができる。マルチビューア12は、リクエストエンジン28によって与えられた検索クエリに合致するように決定されたコンテンツの量と、コンテンツを受信するために利用可能な帯域幅の大きさとに応じて、コンテンツ・ストリームの数を制御することができる。
【0024】
更なる例として、コンテンツの所定ストリームは、コンテンツに関連付けられた1つ又は複数の多重化された基本ストリームを含んでいてもよい。所定のタイプのコンテンツ(例えば、オーディオ、ビデオ、メタデータなど)に対する基本ストリームのそれぞれは、所定のプロトコル・スタックにしたがってパケット化されて伝送されてもよく、プロトコル・スタックは、コンテンツを地理空間マルチビューアに流すための、一連の商業的に利用可能な標準プロトコルや一連のプロプライエタリなプロトコルでもよい。考えられるプロトコルの例はTCP/IP、UDP、RTP、RTSPを含むが、他の既知のプロトコルやプロプライエタリのプロトコルが使用されてもよい。ストリームの固有のフォーマットは、コンテンツ・ストリームにおいて運ばれるコンテンツのタイプや、データが符号化されている所定のコーデックに応じて変わることがある。したがって、マルチビューア12は、ここで述べた対応の出力プレゼンテーションにおけるレンダリングのために、1つ又は複数の様々なこのようなフォーマットでストリームを受信するとともに、受信コンテンツをグラフィックス・パイプライン38に供給するように、構成されているゲートウェイを利用することができる。対応するコントロール26は、フィードバック・ループにおいてユーザーによって操作されて、出力を修正するとともに新たなクエリを生成することができ、このことが出力プレゼンテーションにおける動的な変更をもたらし得る。
【0025】
グラフィックス・パイプライン38は、コンテンツシステム30からコンテンツ・ストリームを受信するとともに、コンテンツを地理空間アプリケーションからの地理空間データと動的に合成して、総出力プレゼンテーションを与え、総出力プレゼンテーションは、出力ディスプレイ20を介してユーザーに提示されてもよい。コントロール26とグラフィックス・パイプライン38とは、協働してコンテンツを構造化するとともに、このような合成コンテンツのプレゼンテーションを制御し、プレゼンテーションは、例えば所定のレートで一連のフレームとして提示されてもよい。例えば、グラフィックス・パイプラインは、1秒間に約24フレームと60フレームとの間の一般的な送信ビデオフレームレートで出力プレゼンテーションをレンダリングすることができるが、フレームレートの唯一の制限はハードウェアの性能である。例えば、3次元ビデオコンテンツは、1秒に120フレームで適当な3次元対応ハードウェアへレンダリングされることがある。
【0026】
グラフィックス・パイプライン38は更に、ユーザー入力に応答してコンテンツのプレゼンテーションを調節するための少なくとも1つの変換を動的に生成するようにプログラムされており、ユーザー入力は、地理空間アプリケーション14を制御するために(例えばユーザーインターフェイス16を介して)与えられる。例えば、グラフィックス・パイプライン38は、ユーザー入力に応答して出力プレゼンテーションにおけるオブジェクトを調節するために(基準フレームに応じて)少なくとも1つのデカルト変換や他の数学的変換を動的に生成するように構成されている。これは、いわゆるアニメーションエンジンに相当する。 追加的に又は代替的に、グラフィックス・パイプライン38は、基準フレームから動的に1つ又は複数の変換を生成してもよく、変換は地理空間アプリケーション14から生成され、データは、コンテンツ・ストリーム、事前設定されたアニメーション・ルーチン、又は他の様々なソースにおいて与えられる。 上述したとおり、ユーザー入力は、ユーザーによって、ユーザー入力装置18を介して局所的に与えられても、遠隔的に与えられてもよい。グラフィックス・パイプライン38は合成パラメータにしたがって出力プレゼンテーションをレンダリングし、合成パラメータは、どのコンテンツ要素又はオブジェクトが地理的描写上に提示されるべきかのほか、オブジェクト同士の相対的位置、サイズ、スケーリング、方向などを含むオブジェクト同士の関係をも、管理し制御する。
【0027】
更なる例として、ユーザーがユーザーインターフェイス16を介して地理空間アプリケーション14及び/又はコントロール26と対話すると、その対話は、地理空間データに対して相応の変化をもたらし得る。したがって、リクエストエンジン28は、ユーザーによるリアルタイム・インタラクションに基づいて検索クエリを動的に作成し、このことにより、コンテンツシステム30は、検索クエリによって規定された制限に基づいて地理空間マルチビューア12のために対応のコンテンツを特定することができる。特定されたコンテンツソースは、既知のネットワーク場所で記憶されたコンテンツデータ34のほか、1つ又は複数のソース(例えば、ビデオカメラ、オーディオ、センサなど)によって取得されているライブコンテンツをも含んでいてよい。地理空間マルチビューア12は、ネットワーク22や他の通信リンク36を介して、特定されたコンテンツをそれぞれのストリームとして受信することができる。グラフィックス・パイプライン38は、出力プレゼンテーションを、例えばビデオフレームレートのように、所定のフレームレートを有する出力データからなる一連の連続フレームとして順にレンダリングすることができ、出力データは、動的に生成されたグラフィックス、コンテンツ、及び、グラフィックス・パイプラインによって配列され構造化された地理空間データを含んでいてもよい。
【0028】
地理空間マルチビューア12によって受信されたコンテンツのストリームと、地理空間アプリケーション14によって与えられた地理的描写とのそれぞれは、出力レートとは異なるレートで供給されてもよいことが理解される。したがって、地理的領域に対応する地理データとコンテンツのストリームとがグラフィックスメモリに非同期で直接転送される間、レートの相違によるパイプラインのストールを抑制するべく、グラフィックス・パイプライン38は、グラフィックスを生成し、各フレームを合成し、所望の出力レートでのレンダリングのための命令を与えるように、構成されてもよい。グラフィックス・パイプライン38は、各フレームを所望の出力レートでレンダリングするためのコンテンツ及び地理空間グラフィックス用メモリにアクセスすることができる。
【0029】
更なる例として、地理空間マルチビューアは、非同期転送エンジンを含んでいてもよく、非同期転送エンジンは、選択されたサブセットのデータをグラフィック処理ユニット(GPU)のメモリに転送するためのダイレクト・メモリ・アクセス(DMA)APIを実装するように構成されている。GPUは、今度は、合成パラメータ及び他の情報に基づき、DMA処理を介してそのメモリに記憶されたデータ(例えばコンテンツ及び地理空間情報)と一緒に、結果として生じる出力プレゼンテーションを1つのフレームとしてレンダリングすることができる。他の情報は、グラフィックス、及び、例えばメタデータ、オーディオ、コントロール情報のようなコンテンツの一部分を含んでいてもよい。すなわち、合成パラメータは、他の出力コンテンツ(グラフィックス、オーディオなど)とともに、グラフィックス・パイプラインを含む第1非同期経路を通って処理され、一方、コンテンツのうち別の選択された部分(例えばストリーミングビデオ)と関心領域の地理的描写とは、DMAを利用する第2非同期経路に沿って処理される。本明細書で述べたように、合成パラメータは、地理空間アプリケーション14とのユーザーインタラクションに応答して動的に生成される変換に少なくとも部分的に基づいて生成されてもよい。
【0030】
また、地理空間マルチビューア12は、マルチビューア12によって受信されるコンテンツに挿入されていることがある、オーディオ及びメタデータを含む他のタイプの情報を、ユーザーに提供することができる。したがって、コントロール26は、地理空間マルチビューアへ流されるコンテンツからメタデータと他のタイプの情報(例えばオーディオ)とを抽出することのできる様々なデコーダを実装することができる。したがって、グラフィックス・パイプライン38は、対応する地理空間位置(リアルタイムの又はアーカイブされた)で、しかも、ユーザー入力、地理空間アプリケーションから生成された変換、コンテンツ・ストリームにおいて与えられたデータ、事前設定されたアニメーション・ルーチン、又は様々な他のソースに基づいて制御された方向付け及びサイズで、(地理空間アプリケーションからの)地理空間関心領域の最上部にビデオと他のコンテンツとを重ねるべく、レンダリング命令を利用することができる。また、このような情報は、出力プレゼンテーションにおいて、関連するメタデータ及び対話型コントロールとともに提示され、直感的で簡単な方法でユーザーに状況を認識させるようにしてもよい。
【0031】
また、上述のとおり、地理空間マルチビューア12は、1人又は複数の外部ユーザー24によって受信され得る別バージョンの出力プレゼンテーションを提供するように構成されていてもよい。例えば、地理空間マルチビューア12は、1つ又は複数のエンコーダを含んでいてもよく、出力エンコーダは、出力プレゼンテーション(例えば、地理空間ROI、重ね合わされたコンテンツ・ストリーム、メタデータ、アラーム、動的ラベル、RSSフィード、コンピュータ・コマンド、コントロール領域などを含む)を所望のフォーマットに符号化することができる。マルチビューアは、1人又は複数の外部ユーザー24による使用のために、(例えば、ビデオ及び他のコンテンツのフレームとして流すことを通じて)符号化された出力を所望のレート及び解像度で伝送することができる。1つ又は複数のそのようなストリームは任意の数でよく、それぞれのストリームは、それぞれの外部ユーザーに対して変わることがある所望の解像度及び出力フォーマットで符号化されてもよい。例えば、流された出力は、あらゆるユーザーが出力体験を共有することを許容し得るインターネット・プロトコル・スタックにしたがって伝送されてもよい。例えば、外部ユーザーは、流された出力プレゼンテーションを見ることができるほか、パーソナルコンピュータや、インターネット機能を含むスマートフォンなどのモバイル機器を介してコントロールを実行することもできる。
【0032】
図2は、地理空間マルチビューア100の一例を示す。地理空間マルチビューア100はハードウェアとソフトウェアとの組合せを含み、その組合せは、ユーザーコントロールに基づいて選択され、配置され、構造化され得る地理空間関心領域と他の地理空間関連コンテンツとからなる合成プレゼンテーションに対応する出力を供給するように構成されている。
【0033】
マルチビューア100はアプリケーション・コントロール102を含み、アプリケーション・コントロールは、グラフィックス・パイプライン104の種々の側面を制御するとともに、地理空間アプリケーション106のインタラクション及び制御を提供するように構成されている。例えば、アプリケーション・コントロール102は、地理空間アプリケーション 106のための一連のAPIを実装することができる。アプリケーション・コントロール102は、グラフィカル・ユーザー・インターフェイス(GUI)108を含んでいてもよく、GUIは、ユーザー入力装置を介してユーザーによって操作され、そうでない場合でもユーザーと対話可能である、ユーザーインターフェイス要素を提示することができる。また、GUI108は、出力のレイアウト及び構造化を制御することのできる種々の動作パラメータ及び規則を設定するほかに、コンテンツの要求を制限したりフィルタしたりするためにも利用されてよい。
【0034】
更に、アプリケーション・コントロール102は、出力112の一部分を形成するユーザー制御された地理的ROIに対応する地理空間出力110に関連付けられた地理空間座標を含む地理空間データを地理空間アプリケーション106から取得するために、APIを利用することができる。したがって、アプリケーション・コントロールは、地理空間データと、ネットワーク114を介してユーザーによって確立された他のパラメータとに、部分的に基づいて、コンテンツを受信することができる。ネットワーク114は、ローカルエリアネットワーク、ワイドエリアネットワーク(例えばインターネット)を含むことができるとともに、物理的接続のほかに無線リンクを伴ってもよいことが理解される。
【0035】
また、アプリケーション・コントロール102は、リクエストエンジン118を含んでいてもよく、リクエストエンジンは、関連するコンテンツを要求するためにコンテンツシステムに送信される検索クエリを生成するように構成されている。リクエストエンジン118は、検索クエリを作成するべく、地理空間アプリケーション106からの地理空間データのほかに、他のユーザー定義された制限及びコントロールをも利用することができる。例えば、このような他の制限は、時間パラメータ(例えば日付範囲及び/又は時間範囲を特定することによる、関連する時間窓)、キーワード、メディアのタイプ、メディアソース、又は、検索クエリによって与えられる問合せを狭めるために利用され得る他の制限を含んでいてもよい。
【0036】
また、アプリケーション・コントロール102は、ディレクタ116を含んでいてもよく、ディレクタは、出力プレゼンテーション112におけるオブジェクトのレイアウトとデータ要素とを制御するようにプログラムされている。ディレクタ116は、出力プレゼンテーションを合成してレンダリングする際に利用される変換及び行列の適切な作成や関係性を提供するほかに、このような変換及び行列の生成を制御することもできる。アプリケーション・コントロール102は、グラフィックス・パイプライン104に制御命令を与え、グラフィックス・パイプラインは、出力プレゼンテーション112においてレンダリングされることになるデータ要素やデータオブジェクトの配置及び構造化のために利用される。
【0037】
また、アプリケーション・コントロール102は、ルールエンジン120を含んでいてもよく、ルールエンジンは、一連の規則によって規定された種々の動作を実行することができる。規則は、例えばGUI108によって規則セットを入力することにより、ユーザーによってプログラムされてもよい。追加的に又は代替的に、1つ又は複数の規則は、種々の方法で確立され得る一連のユーザーレベルの許可にしたがってプログラムされてもよい。ルールエンジン120は、規則を利用して、出力プレゼンテーション112におけるコンテンツの順序及び/又は配置を制御するほかに、コンテンツのプレゼンテーションについて階層を確立することもでき、例えば、階層は、受信コンテンツに挿入されている所定のメタデータやタグを監視するルールエンジンによって決定されてもよい。追加として又は代案として、ルールエンジン120は、規則を実行して、例えばビジュアル、オーディオ、遠隔又は局所的トリガ、電子メール、レイアウト変更、アニメーション、又は、他のフォームの通信やメッセージングを含むようなアラートを、1人又は複数の所定の受信者(例えばネットワーク終点又はユーザー)に発行することができる。
【0038】
また、マルチビューア100は、ネットワーク114とマルチビューア100との間のインターフェイスを提供するゲートウェイ122を含む。ゲートウェイ122は、システムの相互運用性をもたらすために必要なプロトコル・トランスレータ、レートコンバータ、フォールト・トランスレータ、又は信号トランスレータなどの、インターフェイス123を含んでいてもよい。また、ゲートウェイ122は、プロトコル・トランスレーション/マッピングを実行し、例えば求められたプロトコル変換を実行することによって、ネットワーク114を介してコンテンツシステムと通信することができる。
【0039】
図2の例では、ゲートウェイは、ネットワーク114を介してN個のコンテンツ・ストリームを受信する。ここで、Nは、ストリームの数を表す正の整数である。また、ゲートウェイ・インターフェイス123は、ネットワーク114を介して受信された1つ又は複数のコンテンツ・ストリームのそれぞれから種々の形式のコンテンツを取り出すように構成されていてもよい。例えば、ゲートウェイ114は、コンテンツ・ストリームのそれぞれを逆多重化して、対応する基本データストリームを提供することができ、基本データストリームは、例えば地理空間メタデータ124、コンテンツ・メタデータ126、オーディオデータ128、ビデオデータ130又はそれらの任意の組合せを含んでいてもよい。
【0040】
地理空間メタデータ124は、所定単位のコンテンツに関連付けられている地理空間座標に対応していてもよい。座標は、地理座標系(例えば、ユニバーサル横メルカトル(UTM)、ユニバーサル極心平射(UPS)座標系、デカルト座標系、他の既知の座標系又はプロプライエタリな座標系)にしたがって規定されるような、数値地理空間座標でもよい。代替的に又は追加的に、地理空間メタデータは、都市、領域又は他の識別可能な場所のような、位置を識別する名称を含むことができる。地理空間座標は、固定されていてもよいし、コンテンツにおいて描写された情報の位置にふさわしく変化してもよい。例えば、コンテンツは、ある領域を通って移動している乗り物のビデオを描写して、(地理空間メタデータによって与えられるように)ビデオコンテンツに対する地理空間座標が時間とともに乗り物の位置に応じて変わるようにしてもよい。
コンテンツ・メタデータ126は、受信コンテンツに関連付けられた他のタイプの情報を含んでいてもよい。例えば、コンテンツ・メタデータ126は、キー・レングス・バリュー(KLV)メタデータ、クローズドキャプション・メタデータ、又は他の形式のメタデータを含んでいてもよい。例えば、コンテンツ・メタデータ126は、1単位のコンテンツに関連付けられた優先度のレベルを規定する優先度タグを含んでいてもよい。コンテンツ・メタデータ126は、埋め込まれているコンテンツに関連付けられた特性や特徴に追加されたり、そのような特性や特徴を記述したりすることのできる、他の任意の情報を含んでいてもよい。
【0041】
オーディオデータ128はオーディオコンテンツを含んでいてもよく、オーディオコンテンツは、基本オーディオ・ストリームとして1つ又は複数の所望のフォーマットで圧縮されたり供給されたりしてもよい。異なるオーディオ・フォーマットや異なる言語の別のオーディオ・ストリームのように、各所定単位のコンテンツに対して1つ又は複数のストリームのオーディオが任意の数だけあり得る。同様に、ビデオコンテンツの所定の構成要素に関連付けられたビデオストリームが任意の数だけある。例えば、コンテンツの所定の構成要素に関連付けられた異なる角度の複数のビデオストリームがあり得、コンテンツは、例えば、共通の場所を持つ一筋の視界内に設置された様々なカメラによって提供された様々な視野角によって記録されてもよい。
【0042】
地理空間メタデータ124は、グラフィックス・パイプライン104のアニメーションエンジン132に供給される。アニメーションエンジン132は、地理空間メタデータ124を利用して、地理空間ROIにおける対応の場所を特定することができ、地理空間ROIで、コンテンツ(例えば、メタデータ126、オーディオ128、及びビデオ130を含む)は関連付けられる。上述のように、制御命令はまた、アプリケーション・コントロール102によってアニメーションエンジン132に供給される。アニメーションエンジン132は、制御命令を利用して、配置、構造化及びレイアウトを制御するためのパラメータのほかに、出力プレゼンテーション112における所定のコンテンツオブジェクトのプレゼンテーション及び他のグラフィック要素をも計算する。1つの実施形態において、アニメーションエンジン132は、変換を生成するようにプログラムされてもよく、変換は、アプリケーション・コントロール102によって与えられた制御命令に応答して出力プレゼンテーション112を調節するために利用される。制御命令は更に、GUI108を介して受信されたユーザー入力にしたがって変化する。
【0043】
例えば、アニメーションエンジン132は、地理空間アプリケーション106を制御することに関連付けられたユーザー入力に応答して生成された地理空間データに基づいて変換を動的に生成することができる。変換は、回転、スケーリング、平行移動、せん断、モーフィング又は他の画像操作動作を含んでもよい。変換は、出力プレゼンテーションの各フレームにおいて与えられている画像オブジェクトのそれぞれに適用されてもよい。したがって、アニメーションエンジン132は、地理空間アプリケーション106によって与えられたユーザー制御された基準フレームに影響を及ぼすユーザー入力のそれぞれに応答して変換を更新し再計算することができる。
【0044】
アニメーションエンジンは、生成された変換及び他のグラフィック制御パラメータを合成器134に供給することができる。合成器134は、アニメーションエンジンからの変換と、1つ又は複数のシーングラフを基に作成された1つ又は複数のモデルの呼出しと、に基づいて合成パラメータを生成するようにプログラムされている。シーングラフ136は、出力プレゼンテーション112の各フレームについてグラフィカルシーンの論理及び空間描写を配置するデータ構造としてプログラムされてもよい。シーングラフは、例えば、出力プレゼンテーション112に対応するシーンにおいて動きと(例えば、アクターに対応する)オブジェクト同士の相互関係とを支配する計算の階層を示す配列や連結リストとして実装されてもよい。したがって、シーングラフ136は、合成器が関連オブジェクトを合成オブジェクトにグループ化することを可能とし、合成オブジェクトはその後、単一のオブジェクトと同じほど容易に動かされ、変換され、選択され、レンダリングされることができる。すなわち、アニメーションエンジン132によって計算された変換は、シーングラフを通って伝達され、出力プレゼンテーション112の各フレームのレンダリングを容易にすることができる。
【0045】
また、合成器134は、アプリケーション・コントロール102から制御命令を受信する。メタデータ126は、メタデータ・デコーダ138に供給されてもよく、メタデータ・デコーダは、データオブジェクトとコンテンツとのレンダリング及び配置の順序を管理する際に使用するために、復号されたメタデータを合成器に供給する。オーディオ・デコーダ144は、オーディオコンテンツ128を受信することができ、オーディオコンテンツは、1つ又は複数のN個の入力ストリームのそれぞれから抽出される。オーディオ・デコーダ144は、(オーディオメータを用いた)ビジュアル出力への合成のために及び/又は可聴オーディオへの出力のために、復号されたオーディオレベルを合成器134に供給することができる。
【0046】
合成器134は、出力プレゼンテーション112における配置及び相対的位置を含む、データオブジェクトのそれぞれに対する位置を管理するために、リアルタイムで動作する。したがって、合成器134は、オブジェクトがレンダリングされる順序と、このようなオブジェクトがどこに配置されるかとを、アニメーションエンジン132によって供給されたパラメータと変換との関数として管理する。図2の例では、合成器134は、グラフィックス及び出力命令のほか、オーディオ及びメタデータを含むコンテンツの選択された部分をも受信する。
【0047】
合成器134は、一連のグラフィックスAPI140を介してレンダリング命令及びグラフィックスデータをレンダラ142に出力するようにプログラムされてもよい。レンダリング命令は、合成器134によって受信されたコンテンツの合成パラメータ(オーディオ、地理空間メタデータ、コンテンツ・メタデータ)のほか、直接レンダラ142に転送された、非同期形式のコンテンツの合成パラメータをも含む。グラフィックスAPI140は、例えば、APIのライブラリとして実装され、例えばアプリケーション要件にしたがって選択されてもよい。一例として、グラフィックスAPI140は、ワシントン州レドモンドに所在するマイクロソフト・コーポレイションから入手可能であるDirectXプラットフォームを介して実装されてもよい。オープンソースのグラフィックスAPI140についての他の例は、OpenGL(例えば、クロノス・グループ・コンソーシアム傘下のオープンジーエル・ワーキング・グループから入手可能)、SDL(シンプル・ダイレクトリンク・メディア、及びアレグロ)を含む。
【0048】
レンダラ142は、合成器134によって供給されたレンダリング命令及びコンテンツのほか、非同期転送エンジン150によって供給されたコンテンツにも基づいて、出力プレゼンテーション112をレンダリングする。
【0049】
非同期転送エンジン150は、例えば地理空間アプリケーション106からの地理的描写110のほかに、復号されたビデオコンテンツの1つ又は複数のストリームをも含む、出力112の一部分を形成するべきコンテンツの選択されたセットを受信する。例えば、受信ストリームから取り出されたビデオデータ130は、1つ又は複数のビデオデコーダ152に供給されてもよく、ビデオデコーダは、復号されたビデオストリームを非同期転送エンジン150に供給する。それぞれのデコーダ152は、コーデックにしたがって所定のビデオストリーム130を復号するようにプログラムされてもよい。復号されたビデオコンテンツは、他のコンテンツと異なり得るビットレート及びフレームレートで、非同期転送エンジン150に供給されてもよい。
【0050】
非同期転送エンジン150は、地理空間描写と復号されたビデオの各ストリームとをメインメモリから直接レンダラ142のメモリへ供給するためのDMA API154を利用する。例えば、レンダラ142は、コアメモリを有するGPUとして実装されてもよく、非同期転送エンジン150は、復号されたビデオコンテンツのほかに地理空間描写をもコアメモリへ直接転送することができる。例えば、アプリケーション・コントロール102は、非同期コンテンツの各単位が直接転送されるべき記憶場所に関して、合成器134及び非同期転送エンジン150に命令することができる。このように、レンダラは、出力の各フレームをレンダリングする際、合成器からのレンダリング命令、グラフィックス及びコンテンツを、非同期転送エンジンからの直接転送コンテンツと統合することができる。
【0051】
更なる例として、非同期転送エンジン150は、パイプラインのストールを抑制するべく、復号されたビデオからのフレームと地理空間描写とをダブルバッファリング処理によって直接転送して、ビデオコンテンツの最新フレームと地理空間アプリケーションのデータとが、出力プレゼンテーション112の最終合成及びレンダリングのためにレンダラのメモリ156(例えばGPUメモリ)において利用可能であるようにしてもよい。ダブルバッファリングは、マルチバッファリングの一形式であり、マルチバッファリングは、GPUの循環キューにおいて複数のバッファを使用して、処理とバッファへのデータ転送とをオーバーラップさせる方法である。
【0052】
また、非同期転送エンジン150がビデオコンテンツと地理空間描写データとをメモリ156に直接供給するDMA転送に加えて、非同期転送エンジンは、1つ又は複数の追加の出力を供給するために、DMA APIを利用してレンダラ142から出力フレームを読み戻すことができる。非同期転送エンジン150は、マルチビューア100から送り出されるべく、更なる処理のために読戻しフレームデータを供給することができる。例えば、非同期転送エンジン150は、出力API160を含んでいてもよく、出力APIは、1つ又は複数のエンコーダ162に出力を送信するために利用される。1つ又は複数のエンコーダ162は、出力フレームを1つ又は複数の所望のフォーマットで符号化するように構成されてもよく、所望のフォーマットは、レンダラ142によって出力プレゼンテーション112として供給される対応のオーディオ及びビデオに対する符号化の所望の解像度及びタイプを含んでいてもよい。符号化された出力はストリーミングエンジン164に供給されてもよく、ストリーミングエンジンは、同一の出力プレゼンテーションに対応するが1人又は複数の第三者による使用のためにネットワークを介して提供される、1つ又は複数の出力ストリームを順に供給してもよい。
【0053】
したがって、出力プレゼンテーション112を供給することに関連付けられたコンテンツ及びコントロールのうち異なる部分が、別個の経路に沿って処理されてもよいことが理解される。グラフィックス・パイプライン104のアニメーションエンジン132と合成器134とは、パラメータ、グラフィックス、並びに、グラフィックスAPIを介してレンダラ142に供給されるコンテンツ及びメタデータのうち選択部分を制御するための1つの経路を与える。非同期転送エンジン150は、復号されたビデオストリームを含むコンテンツの他の部分と、地理空間アプリケーション106からの地理空間描写とを、レンダラ142のメモリに直接供給するための別のデータ経路の一部分を形成する。このアプローチは、例えば復号されたビデオと地理空間描写110とが他の情報とは異なるレートで供給され得るとき、パイプラインのストールを抑制する。したがって、非同期転送エンジンは、ビデオのストリームと地理空間描写とが所望の出力フレームレート(例えば1秒間に60フレーム)でのレンダリングのためにメモリ156において確実に入手できるようにするべく、利用されてもよい。
【0054】
図3は、地理空間マルチビューアと共に利用され得るコンテンツシステム180の概略例を示す。コンテンツシステム180は、マルチビューアから要求を受信するコンテンツ管理ソースコントロール182を含む。要求は、地理空間関連コンテンツの検索を規定する(例えば制限する)検索クエリを含んでいてもよい。要求に含まれる検索クエリは、例えば座標や、ユーザー制御可能な地理的関心領域について地理空間上の境界を規定し得る他の位置特定情報のほかに、GUI等を介してユーザーによって選択され得る1つ又は複数の固有の地理空間上の位置などの、地理空間データを含んでいてもよい。コンテンツ管理ソースコントロール182は、コンテンツデータベース184に順に問い合わせを行うことができ、コンテンツデータベースは、要求において与えられた検索クエリに適合するコンテンツを探し出すための機能及び方法を利用することができる。データベース184は、問合せの結果を結果セットの形式で順に供給することができ、結果セットは、コンテンツの各単位について場所を特定する。また、結果セットは、例えば地理空間情報や他のメタデータのように、結果において特定されたコンテンツに関連付けられた他の情報を含んでいてもよい。ソースコントロール182は、本明細書で述べるように、更なる動作のために結果を地理空間マルチビューアに戻すことができる。
【0055】
例として、地理空間マルチビューアは、ゲートウェイを利用して、ソースコントロール182によって与えられた結果に基づいてコンテンツの要求を発行してもよい。要求は、求められたコンテンツを流すためのストリーミングエンジン186によって実行されてもよく、ストリーミングエンジンは、マルチビューアへの直接的なユニキャストストリームに対応してもよいし、複数ユーザーに同時に利用可能な所定のネットワークアドレスに送信されるマルチキャストストリームに対応してもよい。あるいは、ストリーミングエンジン186は、所定のマルチビューアによって発行されたコンテンツの要求に応答して1つ又は複数ストリームのコンテンツを直接供給するために、コンテンツ管理ソースコントロール182によって制御されてもよい。ストリームは、例えば、ストリーミングビデオ、ストリーミングオーディオ、オーディオ及びビデオ又は他のコンテンツ情報の組合せ並びにメタデータを含んでいてもよい。ストリームは、例えばコンテンツデータベース184に記憶されているような、アーカイブされた過去のコンテンツのストリームに対応していてもよいし、(例えばカメラ、センサ又は他のデバイスから取得された)ライブコンテンツでもよい。
【0056】
また、1つ又は複数の他のコンテンツソース188は、地理空間マルチビューアにコンテンツを供給するために利用されてもよい。コンテンツ管理及びソースコントロール182は、それぞれのコンテンツ要求に含まれる検索クエリに基づいて1つ又は複数の他のコンテンツソース188を識別することができる。他のコンテンツソース(群)188は、地理空間マルチビューアからの対応するコンテンツの要求に応答してコンテンツを供給することができる。このコンテンツは、マルチビューアへ直接供給されても、ストリーミングエンジン186や別のデバイスによって流されてもよい。コンテンツのタイプは、そのコンテンツがどのようにして地理空間マルチビューアへ返信されるかを判定するのに役立ち得る。したがって、それぞれのコンテンツシステム180によって与えられる応答は、1つ又は複数ストリームのコンテンツを任意の数だけ識別し及び/又は含むことができることが理解される。
【0057】
コンテンツデータベース184に含まれるコンテンツは、検索と問合せとを容易にするべく、地理空間メタデータを含むメタデータとともに記憶されてもよく、地理空間メタデータは、ビデオが該当する位置に応じてそのビデオに付加されてもよい。利用され得るコンテンツ管理ソースコントロール182及び対応するコンテンツデータベース184の例は、フロリダ州メルボルンに所在するハリス・コーポレイションから入手可能なフルモーション・ビデオ・アセット・マネジメント・エンジン(FAME)システムを含む。
【0058】
どのようにしてコンテンツが受信されてコンテンツデータベース184に記憶され得るかに関する更なる例は、2004年4月29日に出願され、関連付けられた方法でビデオニュースセグメントを管理するためのメディア資産管理システムと題する米国特許出願第10/834,495号に示されており、この米国特許出願は参照によって本明細書に組み込まれる。また、本願は、出願人に譲渡されている米国特許出願第10/834,728号及び第10/834,543号を参照によって組み込む。上記組み込まれた出願のそれぞれは、ビデオや他のタイプのセンサデータを収集するとともに、対応する地理空間データ(例えばメタデータ)をビデオ及び/又はセンサデータのそれぞれに関連付けるために利用され得るアプローチを開示し、例えば図3の例示的なコンテンツシステム180においてコンテンツデータ184を供給するために利用されてもよい。
【0059】
当該技術分野における当業者によって理解されるように、本発明の一部分は、方法、データ処理システム、又はコンピュータプログラム製品として実施されてもよい。例えば、実施形態は、全てハードウェアの実施形態、全てソフトウェアの実施形態、又はソフトウェアとハードウェアとを組み合わせた実施形態の形を取ってもよい。更に、実施形態は、コンピュータで読取り可能なプログラムコードを媒体上に有する、コンピュータで使用可能なストレージ媒体に記録されたコンピュータプログラム製品でもよい。適切なコンピュータで読取り可能な媒体は、静的及び動的なストレージデバイス、ハードディスク、光学ストレージデバイス、及び磁気的ストレージデバイスを含んで利用されてもよいが、これらに限られない。
【0060】
ある実施形態は、本明細書において、方法、システム及びコンピュータプログラム製品のフローチャート図を参照して記述されている。図のブロック及び図中のブロックの組合せは、コンピュータで実行可能な命令によって実行され得ることが理解される。これらのコンピュータで実行可能な命令は、機械を生産するべく、汎用コンピュータ、専用コンピュータ、又は他のプログラム可能なデータ処理装置(又は、デバイスと回路との組合せ)における1つ又は複数のプロセッサに供給されて、プロセッサを介して実行する命令が、ブロック又はブロック群において特定される機能を実現するようにしてもよい。
【0061】
また、これらのコンピュータで実行可能な命令は、コンピュータで読取り可能なメモリに記憶され、この命令は、特定の方法で機能するようにコンピュータ又は他のプログラム可能なデータ処理装置を方向づけることができ、コンピュータで読取り可能なメモリに記憶された命令が、フローチャートのブロック又はブロック群において特定された機能を実行する命令を含む製品をもたらすようにしてもよい。また、コンピュータプログラム命令は、コンピュータ又は他のプログラム可能なデータ処理装置にロードされ、一連の動作ステップがコンピュータ又は他のプログラム可能な装置上で実行されて、コンピュータで実行される処理を生成し、コンピュータ又は他のプログラム可能な装置上で実行する命令が、図4及び図5の例に示されるような、フローチャートのブロック又はブロック群において特定された機能を実現するためのステップを与えるようになる。
【0062】
図示された動作は、他の実施形態では、異なる順序で又は他の動作と同時に起こる場合があることが理解されるべきである。更に、図4及び図5に示された全ての特徴が1つの方法の実施形態を実現するために必要とされるわけではない。後述する手順は、ハードウェア(例えば、1つ又は複数のコンピュータ等における、1つ又は複数のプロセッサ)、ソフトウェア(例えば、コンピュータで読取り可能な媒体に記憶され、あるいは、1つ又は複数のプロセッサ上で起動する実行可能な命令として記憶される)において、又はハードウェアとソフトウェアとの組合せとして、実現されてもよいことが、更に理解されるべきである。
【0063】
更に、図4及び図5のような、動作や機能のシリアルフローを示すフロー図は、ある機能性が地理空間マルチビューアのコンテクストにおいてどのように作用するかという非同期特性を適切に示さない場合があることが理解される。例えば、一旦設定されると、方法は、直接的なユーザーインタラクションを必ずしも持たずに(例えばアニメーション、アラーム、及び他の出力を使って)データストリームの変化に自動的に応答することができる。例えば、方法を開始することに応答して、地理空間方法は、地理空間アプリケーションの基準フレーム及びデフォルト設定に基づいて要求(例えば検索クエリ)を生成する。次いで、要求は、コンテンツを供給するサーバ(例えばデータソース)に送信され、グラフィックスシステムは、更なるユーザーインタラクションなしに自動的にコンテンツをレンダリングし、動画化し、監視する。もちろん、ユーザーは、基準フレームを修正するとともに、問合せ制限、マルチビューアのレイアウト、又はシステムや方法の他の側面への他の変更を、いつでも行うことができ、このことはコンテンツの変更及びコンテンツの表示方法に影響を及ぼすことがある。この文脈及び動作の非同期特性の範囲内で、図4及び図5が考慮されるべきである。
【0064】
図4は、地理空間アプリケーションからの地理空間描写と共に表示されるべきコンテンツにアクセスするために利用され得る方法200の一例を示す。方法200は、例えば、ユーザーインターフェイス、アプリケーション・コントロール及び地理空間アプリケーションを含む地理空間マルチビューアを開始することと共に、202で始まる。上述したように、202で開始されることに応答して、方法は、マルチビューアにおけるコンテンツを取得して表示するための1つ又は複数の要求を発行することができる。
【0065】
204で、入力が受信されているかについて判定が行われる。入力は、ユーザー入力装置(例えばキーボード、マウス、タッチスクリーンなど)を介した入力のように、ユーザーインターフェイスを介して局所的に供給されてもよいことが理解される。追加的に又は代替的に、ユーザー入力は、例えば外部制御インターフェイスのような、リモート・インターフェイスを通じて受信されてもよい。追加的に又は代替的に、入力は、別のアプリケーションから受信されてもよく、また、単にアプリケーションを起動し及び/又は動作するように設定することや、例えば遠隔ソースから、1つ又は複数のストリームに亘って受信されることに対応してもよい。ユーザー入力が受信されない場合、方法はその出力を供給し続けてもよく、出力は、1つ又は複数の入力が受信されるまで、継続的に更新するか変更されず、204でループしてもよい。
【0066】
例えば、ユーザー入力のないとき、ユーザー制御可能なROIの地理空間描写のための出力プレゼンテーションは、視覚表示されるべく進んでもよく、また、ストリーミングビデオ、オーディオ、又はオーディオ/ビデオ画像及び/又は他のデータの組合せを含む地理空間ROI上に重ね合わされるコンテンツの更新を通じて動的に変化する。更に、これらの変化はアラームを発動させてもよく、このことが、アラームが始動されるように構成されている連鎖イベントのタイプに応じて実質的な変化をもたらしてもよい。
【0067】
204で入力が受信されると、方法は206に進む。例えば、ビデオストリーム優先度(ストリームにおけるメタデータ要素として送信される)が臨界しきい値に達すると、ビデオストリームは、合成出力において目立つ位置に移動させられ、その地理空間位置に空間的に近接する全データストリームへの自動接続を開始させ、その境界を赤く変化させ、可聴アラームを鳴らし、そして、重要な個人へ送信されるべく一連の緊急電子メールを起動させてもよく、これらは全て直接的なユーザーインタラクションなしに(初期設定を超えて)行われる。
【0068】
206で地理空間データが供給される。地理空間データは、地理空間アプリケーション(例えば、図1の地理空間アプリケーション14)によって供給されてもよい。地理空間データは、地理空間座標又は他の位置識別情報を含んでいてもよく、例えば対応のユーザー選択された地理的ROIがユーザーに対して表示される地図上の点、領域、又は点と領域との組合せを特定するために利用されてもよい。また、地理空間データは、地理空間メタデータを含んでいてもよく、例えばユーザーに提示されている地理空間ディスプレイの可視部分に対応する関心領域を規定する。
【0069】
207で、1つ又は複数の新たなコンテンツソースが求められているかについて判定が行われる。この判定は、204で受信された入力に応答して行われても、206で与えられた地理空間データに基づいて行われてもよく、また、両方でもよい。新たなコンテンツソースが必要でない場合、方法は、206に戻って地理空間データを供給し続けてもよい。1つ又は複数の新たなコンテンツソースが必要とされる可能性がある場合、方法は208に進む。
【0070】
208で、検索クエリが作成される。検索クエリは、ユーザー制御基準に対応する制限を含み、ユーザー制御基準は、地理空間アプリケーションの出力にとって重要なコンテンツを特定するべく1つ又は複数のコンテンツシステムによって利用される。検索クエリは、例えば、ユーザー入力に対応する地理空間座標を含んでいてもよく、ユーザー入力は、地理空間アプリケーションによって受信され、対応する地理空間データとして供給される。また、204でのユーザー入力に応答する地理空間データに加えて、検索クエリは、任意の数のキーワードを含んでいてもよく、キーワードは、例えばブール演算子、自然言語、又は、異なるクエリの組合せを含むような構造化クエリとして入力されてもよい。
【0071】
210で、検索クエリはソースコントロールに送信される。ソースコントロールは、本明細書で述べたようなコンテンツシステム(例えば、図1のコンテンツシステム30)の一部分として実装されてもよい。ソースコントロールは、検索クエリに基づいてデータベースに問合せを行うようにプログラムされ、構成されてもよい。一例として、ソースコントロールは、フロリダ州メルボルンに所在するハリス・コーポレイションから入手可能なFAMEアーキテクチャに関連付けられたフロントエンド・インターフェイスでもよい。サーチコントロールは、任意の数のソースから検索クエリに関連し得るコンテンツ資産を特定し及び/又は取得するために、任意の数のデータベース又は他のコンテンツソースを検索するように構成されていてもよいことが理解される。ソースは、ファイヤーウォール内の内部ソースのほか、公衆に利用可能なソースコンテンツをも含んでいてもよい。更に、コンテンツは、記憶されたコンテンツでもよいし、リアルタイム・オーディオ、リアルタイム・ビデオ、センサデータ、又はリアルタイム情報コンテンツと記憶された情報コンテンツとの組合せのような、ライブコンテンツを含んでいてもよい。
【0072】
212で、応答データが受信される。応答データは、関連するコンテンツの特定を含んでいてもよい。応答データは、例えば検索された記述に合致するか、検索された記述に合致するある程度の可能性を有する、コンテンツリソースのリストの形式で与えられてもよい。例えば、応答データは様々な形式で与えられてもよく、リソース識別子(例えば、ユニフォーム・リソース・ロケータ(URL))や、検索クエリに関連する特定されたコンテンツの各単位についてアクセス可能な場所を識別する他のタイプのリソース識別子のリストを含む文書又はファイルでもよい。
【0073】
214で、応答データにおいて特定されたコンテンツのうちの少なくとも一部分を取得するべく、要求が行われる。要求は、例えば、コンテンツ場所との接続を開始するために行われてもよい。例えば、接続とコンテンツの各単位の受信とは、ゲートウェイによって管理されてもよく、ゲートウェイは、ネットワークを介してコンテンツを受信するためにコンテンツ場所に接続するように構成されている。すなわち、ゲートウェイは、特定されたコンテンツリソースに接続するとともに、216で、ソース接続を管理してコンテンツを受信することができる。本明細書で述べるように、コンテンツは、例えばオーディオ、ビデオ又は他のコンテンツ(例えば、センサデータ、マニュアル調査データ等)あるいはそれらの組合せの形式で、各リソースから流されてもよい。方法200は、204に戻って、それぞれのユーザー入力に応答してコンテンツを選択的に取得することを繰り返してもよい。追加的に又は代替的に、方法200は、地理空間情報を供給するべく206に戻ってもよく、地理空間情報は、本明細書で述べるように、地理空間処理によって継続的に更新され生成されてもよい。
【0074】
図5は、地理空間ROIの地理的描写及びその描写に重ね合わされ得るコンテンツの両方を含む出力プレゼンテーションを与えるために利用され得る方法250の一例を示す。方法250は、例えば地理空間マルチビューアの実行と共に、252で始まり、地理空間マルチビューアは、変数を開始状態に初期化するとともに、本明細書で説明したように、地理空間アプリケーションにアクセスしてそのアプリケーションを呼び出す、アプリケーション・コントロールを含む。したがって、最初に、相応の地理的領域に対するデフォルトの地理空間位置が出力ディスプレイに提示されてもよい。初期表示は、ユーザー定義された位置でも、ユーザー固有の要件にしたがったデフォルト位置でもよく、あるいは、所定のユーザーによって閲覧された最後の位置に対応してもよい。
【0075】
254で、何らかの入力が受信されたかについて判定が行われる。入力は、1つ又は複数のデータソースが要求されることがある入力のタイプでもよい。例えば、入力は、ユーザー入力でもよいし、別のアプリケーションや入力ソースの組合せによって与えられることがある他のデータ(例えばメタデータ)に対応してもよい。例えば、点線255によって概略的に示されるように、追加のソース又はソース群が必要とされ得る入力が受信されない場合、方法250は、データストリームにおいて与えられる現在の設定及び動的コンテンツ(例えばメタデータ)に基づいて、対応する地理的領域の地理的描写のほかに、表示された領域に関連付けられたコンテンツをも動的に更新することを続けてもよい。コンテンツは、固定されていても、様々なユーザーベースのコントロールや制限に基づいて時間に対して変化してもよい。入力が受信されると、方法は256へ進み、対応する地理空間データが(例えば、地理空間アプリケーションによって)供給されてもよい。地理空間データは、関心領域をレンダリングするための地理データのほかに、その領域に関連付けられた地理空間座標及びメタデータをも含んでいてもよい。また、地理空間データは、ユーザー入力が行われている地理空間位置又は領域に対応する1つ又は複数の場所を含んでいてもよい。例えば、ユーザーは、ユーザー入力装置を利用し、GUIを用いて最新の地理的描写から点又は領域を選択することができる。
【0076】
256から、方法は、結果としての出力プレゼンテーションを処理して生成するために利用され得る、経路A及び経路Bで示される、パラレル・データフロー・パスを実現するべく、258及び260に進む。本明細書で述べるように、パイプラインストールを抑制するために、受信コンテンツ及びROIの地理的描写に対応する地理空間コンテンツは、経路Aにおいて別個に処理され、グラフィックス及び経路Bにおいて生成されたレンダリング命令と一緒にレンダラ(例えば、図2のレンダラ142)によって統合されて、対応する出力プレゼンテーションを与える。更に、任意の数の1つ又は複数のコンテンツソースからの対応するグラフィカルコンテンツ及びメタデータを処理するべく、このようなパラレル・パスが任意の数だけあってよいことが理解される。すなわち、経路Aと経路Bとは、地理空間データが256で与えられた後に事実上シリアルとして示されているものの、このような経路は、繰返し実行されても、マルチビューア処理によって受信されたストリームにおける地理空間データと他のデータとに基づいて動的に更新されてもよいことが理解される。
【0077】
経路Aについて述べると、258で、対応する検索クエリが生成されてソースコントロールに送信され、このことによって、コンテンツが262で受信されることとなる。258と262とにおける検索クエリとコンテンツの受信とは、図4に関して説明した方法200にしたがって実行されてもよい。当該技術における当業者は、検索クエリに応答して適切なコンテンツにアクセスしてそのコンテンツを受信するために個別に又は組合せで使用され得る他の方法を理解し認識するであろう。
【0078】
262でコンテンツが受信された後、符号化されている受信コンテンツは、264で復号される。例えば、コンテンツは、入力ストリームから受信され、例えばデマルチプレクサや他のパケット抽出方法によって、分離される。このことによって、様々なタイプのメタデータとコンテンツとが受信コンテンツ・ストリームから抽出されるようになり、例えば地理空間メタデータ、コンテンツ・メタデータ、オーディオ、ビデオは抽出されてメモリ(例えば、バッファ)に記憶され、抽出されたメタデータとコンテンツとは、それぞれに見合った対応するデコーダに送信されてもよい。例えば、メタデータ、オーディオ及びビデオの抽出パケットは、バッファリングされ、対応するデコーダによって復号されてもよい。メタデータとオーディオとは、(例えば、あるコンテンツが方法250における追加処理のために経路Bのグラフィックス・パイプラインに供給される点線265によって示される)更なる処理のためにグラフィックス・パイプラインに送信されてもよい。
【0079】
266で、受信コンテンツ及び(256で供給された地理空間データからの)地理空間ROIのうちの他のある部分は、システムメモリに記憶される。受信コンテンツは、例えば、任意の数の1つ又は複数のコンテンツ・ストリームに対するビデオデータに対応していてもよく、コンテンツ・ストリームのそれぞれは、関連する地理空間メタデータによって地理空間位置に合致する。地理空間ROIコンテンツは、地理的描写に対応し、例えば対応する関心領域の地図又は衛星画像に対応してもよく、地理的描写は地理空間アプリケーションによって出力される。
【0080】
268で、記憶されたコンテンツは、グラフィックスメモリに非同期で転送される。例えば、それぞれの所定コンテンツ・ストリームに対するビデオコンテンツの対応フレームは、GPUの所定のメモリ領域に非同期で直接転送されてもよい。更に、地理空間アプリケーションのための地理的描写もまた、パイプラインのストールを抑制するべく、DMAを介してGPUメモリの別の所定場所に送信されてもよい。このようなコンテンツに対するDMA処理は、非同期転送エンジンとGPUとの間のマルチバッファリング処理にしたがって実行されてもよい。
【0081】
経路Bに戻って、260で、グラフィックス・コントロールは、254と256とで受信された地理空間データとユーザー入力とに応答して生成される。270で、1つ又は複数の変換と高レベル・グラフィックス・パラメータとが生成される。変換は、254でのユーザー入力に応答して生成されて、例えばグラフィックス・オブジェクト同士の関係性と配置とを(例えばグラフィックス・パラメータをスケーリングし、回転し、移動し、平行移動することによって)維持し及び/又は修正してもよい。272で、対応するシーングラフが、次の出力フレームのために追加されてもよい。例えば、シーングラフは、要素のノードベースの配置でもよく、要素は、270で生成された変換を実行するためのシーングラフのノードの横線によって所定のシーン(例えばフレーム)に追加されてもよい。
【0082】
274で、フレームが合成され、レンダリング命令が生成されてもよい。例えば、フレーム合成は、270のパラメータ及び272のシーングラフのほかに、265で経路Aを介して供給された他のグラフィックス及び復号されたコンテンツにも基づいて生成された、一連の合成パラメータによって規定されてもよい。また、合成パラメータは、268でグラフィックスメモリへ転送された他のコンテンツが合成パラメータを生成するために利用される出力位置を規定し、合成パラメータは、グラフィックス要素及びコンテンツの構成要素のそれぞれがどのようにして結果としての出力プレゼンテーションにおいて配置され構造化されるべきかを制御する。
【0083】
276で、例えば274で生成された合成パラメータとグラフィカル・オブジェクトとに基づいて、フレームが合成され、レンダリング命令が与えられる。レンダリング命令は、例えば、GPUのグラフィックス出力を制御する際に用いられる一連のグラフィックスAPIを利用してもよく、GPUは、出力プレゼンテーションをレンダリングするように構成され、出力プレゼンテーションは、経路Bを経て処理されたグラフィックス及び関連するコンテンツのほか、経路Aを介してグラフィックスメモリに直接転送された地理空間コンテンツ及び受信コンテンツを含む他のコンテンツをも含む。
【0084】
278で、対応するフレームがレンダリングされ、280でそれが順に表示される。また、(例えば、ディジタル・ビデオ・インターフェイス(DVI)又は他の標準出力を介して)所望のフォーマットでユーザーへ表示するためにローカルマシンのディスプレイ用のフレームをレンダリングすることに加えて、対応する出力フレームは、282でグラフィックスメモリから読み出されてもよい。次いで、対応するフレームは、284で符号化されるとともに、1人又は複数の外部ユーザーによる使用のために、286でネットワークを通じてビデオとして流し出されてもよい。したがって、286でのストリーミング出力は、1人又は複数のユーザーによってアクセスされ得る(例えば、所定のURLの)リソース場所へ流されて、複数のユーザーが同じ地理空間マルチビューア出力プレゼンテーションを見ることができるようにしてもよい。対応する出力を見ることに加えて、1人又は複数のユーザーは、地理空間出力と結果としてのコンテンツとを含む出力を、コマンドを遠隔的に入力することによって遠隔的に制御することができ、コマンドは、254でユーザー入力として受信されてもよい。
【0085】
図6は、地理空間マルチビューアによって提示され得る対応の出力ディスプレイ300の一例を示す。出力ディスプレイ300では、出力は、302で示される、ユーザー制御されたROIのためのディスプレイ・ウィンドウを含む。ウィンドウ302に与えられたコンテンツは、所定位置でROIに重畳された追加の地理空間関連コンテンツを含んでいてもよい。例示的なコンテンツ・ウィンドウ302において、複数単位のコンテンツは、ストリーミング・コンテンツ・ウィンドウ304、306、308、310として示され、ROIの地理的描写に重ね合わされている。コンテンツ・ウィンドウ304、306、308、310のそれぞれは、出力ウィンドウ302における地理空間コンテンツのサイズ及びスケーリングに対して方向付けられ、拡大・縮小され、並べられ得るオブジェクトであり、ユーザー入力に応答して変わることがある。
【0086】
一例として、ユーザーは、ポインタ312を利用して、地理的領域上の点やROIの一部分のような場所を選択することができる。追加のコントロールと機能とは、例えばマウスの右クリック動作や他のユーザー入力コントロールによって、他のユーザーインターフェイス要素を介してユーザーにアクセス可能でもよい。更に、地理空間アプリケーションに関連付けられたコントロールは、ポインタ312や他のユーザーインターフェイス要素を介したユーザー入力に応答して起動されてもよい。例えば、ユーザーは、地理空間ROIをズームインやズームアウトしたり、地図を再配置したりするために、ユーザー入力を与えることができ、ユーザー入力は、地理空間ROIのスケーリングや配置のほかに、(例えば、本明細書で説明したように、対応する変換を生成することによって)地理空間描写に重ね合わされている対応のコンテンツにも変化をもたらすことができる。上述したとおり、コンテンツ・ウィンドウ304、306、308、310のそれぞれは、(例えば、それぞれのウィンドウに供給される各コンテンツ・ストリームについての地理空間メタデータを介して)プログラムにより地理空間位置を参照されるオブジェクトでもよい。位置は、それぞれの座標と一緒にディスプレイ上に314、316、318、320で示され得る地理オブジェクトによって特定されてもよい。本明細書で述べたように、例えばその地理空間メタデータが固定されているか変化するかに応じて、コンテンツ・ウィンドウは地理空間ROI上のある位置に固定されてもよいし、コンテンツ・ウィンドウの相対的配置が移動可能でもよい。
【0087】
また、スケーリングされたバージョンのコンテンツを地理的描写上に直接示すことに加えて、追加のディスプレイ・ウィンドウ321は、選択された関心領域についての関連コンテンツを含んでいてもよい。したがって、図6の例において、ウィンドウ321は、複数のコンテンツオブジェクト322、324、326、304’、308’、306’、310’を含む。ディスプレイ・オブジェクト322、324、326、304’、308’、306’、310’のそれぞれは、地理空間ウィンドウ302に関連付けられたユーザー入力に応答して受信されるストリーミング・コンテンツを含んでいてもよい。例えば、ユーザーが場所314のような所定の位置を選択すると、対応するコンテンツがコンテンツソースから取得されて、コンテンツ・ウィンドウ304が、対応する場所で地理空間ROI上に重ね合わされることとなる。また、対応する地理的オブジェクト304’は、コンテンツ・ウィンドウ321に表示される。また、コンテンツ・ウィンドウ304に関連付けられた記述は、ストリーミング・コンテンツ304’のグラフィック表示と共に表示されてもよく、この例では、「MISSION4: STREET NAME」である。様々なタイプの情報がディスプレイ300上に挿入されてもよく、したがって、ユーザーに位置を確認するだけでなく、他の関係情報を確認することもできることが理解される。更なる情報は、オブジェクト322、324、326、304’、308’、306’、310’をそれぞれアクティブにすることによってアクセス可能とされてもよい。このような情報は、地理空間マルチビューアへ流されているコンテンツとともに供給されるメタデータから抽出されてもよい。同様に、グラフィカル・ディスプレイ・ウィンドウ302に提示される他のコンテンツ・ウィンドウ306、308、310もまた、それぞれ306’、308’、310’で示されるコンテンツ・ディスプレイ・ウィンドウ321内の対応コンテンツオブジェクトを含んでいてもよい。また、322、324、326を含む追加の関連コンテンツは、例えば近隣エリアや他の高優先度データについて、ディスプレイ上に提示されてもよく、他の高優先度データは、地理空間マルチビューアに関連付けられた所定の規則に基づいて重要と考えられ得るものである。
【0088】
図7は、出力プレゼンテーション400の一例を示し、例えば図6の例において示されているディスプレイの部分拡大図に対応する。例えば、ユーザーは、ユーザーインターフェイス・コントロールを利用して、対応するユーザー入力装置等を介して、地理空間ROI上にズームインすることができる。ズームインすることや、それ以外でも地理空間アプリケーションのディスプレイに影響を及ぼすことに関連付けられたコントロールは、地理空間マルチビューアによってアクセスされて、今度は、出力画像の対応する変換と本明細書で開示されたような(例えば、図2及び図5を参照)グラフィックス・パイプラインの他の特徴とを実行するためにグラフィックス・パイプラインを制御することができる。
【0089】
図7の例において、出力プレゼンテーション400は、対応する地理空間ROIを、その場所に重畳されたコンテンツ・ウィンドウ404、406とともに提示する、地理空間コンテンツ出力ウィンドウ402を含む。コンテンツ・ウィンドウ404、406のそれぞれは、408、410で示される対応の地理空間位置に関連付けられ、例えばポインタ412を介してユーザーによって選択されている。したがって、それぞれの位置に対するコンテンツは、所望のフレームレートで地理空間コンテンツと同時にレンダリングするために各コンテンツ・ウィンドウ404、406に流されてもよい。
【0090】
地理空間ディスプレイ・ウィンドウ402に隣接して、コンテンツ・ディスプレイ・ウィンドウ414がある。コンテンツ・ディスプレイ・ウィンドウ414は、ディスプレイ・ウィンドウ402における関心領域に地理空間アプリケーションによって供給された地理空間データに応答して流されているコンテンツのプレゼンテーションを含んでいてもよい。図7の例では、コンテンツ・ディスプレイ・エリア414は、404’、406’で示される、コンテンツ・ウィンドウ404、406のそれぞれに関連付けられているのと同じコンテンツを表示するためのエリアを含む。更に、ディスプレイ・エリア414は、416、418、420で示される追加のコンテンツを含み、例えば、高優先度のコンテンツや、それ以外でもディスプレイ・ウィンドウ402におけるそのエリアのサーチ結果や、ユーザーによって入力されたことがある他の検索基準に関連するコンテンツに関連付けられてもよい。
【0091】
上述したことは本発明の例及び実施形態である。本発明を記述する目的で構成部品又は手順の考え得る任意の組合せを記述することは、無論、可能ではないが、当該技術において通常の知識を有する者は、本発明の多くの追加の組合せ及び置換があり得ることを認識するであろう。したがって、本発明は、請求の範囲及び本出願の範囲に収まる全てのこのような変更、修正及び変形を包含するものとする。
図1
図2
図3
図4
図5
図6
図7