(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公表特許公報(A)
(11)【公表番号】
(43)【公表日】2024-07-30
(54)【発明の名称】ビデオ通話中のマルチユーザ・カメラ切り替えアイコン
(51)【国際特許分類】
H04L 67/1061 20220101AFI20240723BHJP
H04N 23/66 20230101ALI20240723BHJP
G06F 3/0482 20130101ALI20240723BHJP
【FI】
H04L67/1061
H04N23/66
G06F3/0482
【審査請求】未請求
【予備審査請求】未請求
(21)【出願番号】P 2023570349
(86)(22)【出願日】2022-04-22
(85)【翻訳文提出日】2023-11-14
(86)【国際出願番号】 CN2022088488
(87)【国際公開番号】W WO2022257619
(87)【国際公開日】2022-12-15
(32)【優先日】2021-06-08
(33)【優先権主張国・地域又は機関】US
(81)【指定国・地域】
【公序良俗違反の表示】
(特許庁注:以下のものは登録商標)
(71)【出願人】
【識別番号】390009531
【氏名又は名称】インターナショナル・ビジネス・マシーンズ・コーポレーション
【氏名又は名称原語表記】INTERNATIONAL BUSINESS MACHINES CORPORATION
【住所又は居所原語表記】New Orchard Road, Armonk, New York 10504, United States of America
(74)【代理人】
【識別番号】100112690
【氏名又は名称】太佐 種一
(74)【代理人】
【識別番号】100120710
【氏名又は名称】片岡 忠彦
(72)【発明者】
【氏名】ブルックス パウウェル、ナタリー
(72)【発明者】
【氏名】チャンツ、ハイマン デイヴィッド
(72)【発明者】
【氏名】ラクシット、サルバジット ケイ
(72)【発明者】
【氏名】ブライアン、タミー ローズ
【テーマコード(参考)】
5C122
5E555
【Fターム(参考)】
5C122DA09
5C122EA63
5C122FK03
5C122FK40
5C122GA01
5C122GC02
5C122HA13
5C122HA35
5C122HB01
5C122HB05
5E555AA62
5E555BA02
5E555BA04
5E555BA23
5E555BB02
5E555BB04
5E555BB23
5E555BC09
5E555CA42
5E555CA47
5E555CB22
5E555CB34
5E555CB74
5E555CC03
5E555DB18
5E555FA00
(57)【要約】
コンピュータ実行方法は、デバイス間でデータ・フィードを共有する。方法は、第1のデバイスを含む複数のデバイスを識別することであって、複数のデバイスのうちの各デバイスが第1のデバイスの近傍内にある、識別することを含む。方法はまた、複数のデバイスのうちの各デバイスを含むアドホック・ネットワークを形成することを含む。方法はさらに、複数の利用可能なデータ・フィードを判定することであって、各データ・フィードが複数のデバイスのうちの1つのデバイスに関連付けられる、判定することを含む。方法は、切り替えアイコンを構築することであって、切り替えアイコンが、利用可能な各データ・フィードのビューを含み、切り替えアイコンが、複数のフィードのうちの任意のフィードへのアクセスを可能にし、切り替えアイコンから選択されたフィードを表示するように構成される、構築することを含む。方法は、切り替えアイコンをアドホック・ネットワーク内の各デバイスに送信することを含む。
【特許請求の範囲】
【請求項1】
コンピュータ実行方法であって、
第1のデバイスを含む複数のデバイスを識別することであって、前記複数のデバイスのうちの各デバイスが前記第1のデバイスの通信可能な近傍内にある、前記識別することと、
前記複数のデバイスのうちの各デバイスを含むアドホック・ネットワークを形成することと、
複数の利用可能なデータ・フィードを判定することであって、各データ・フィードが前記複数のデバイスのうちの1つのデバイスに関連付けられる、前記判定することと、
切り替えアイコンを構築することであって、前記切り替えアイコンが、利用可能な各データ・フィードのビューを含み、前記切り替えアイコンが、前記複数のフィードのうちの任意のフィードへのアクセスを可能にし、前記切り替えアイコンから選択されたフィードを表示するように構成される、前記構築することと、
前記切り替えアイコンを前記アドホック・ネットワーク内の各デバイスに送信することと
を含む、コンピュータ実行方法。
【請求項2】
前記複数のデバイスのうちの前記第1のデバイス上で、前記複数のデバイスのうちの第2のデバイスに関連付けられた第2のデータ・フィードを前記切り替えアイコンから選択することと、
前記第1のデバイス上に前記第2のデータ・フィードを表示することと
をさらに含む、請求項1に記載の方法。
【請求項3】
前記複数のデバイスのうちの各デバイス上に前記切り替えアイコンを表示することと、
前記第2のデバイス上で第3のデータ・フィードを選択することに応答して、前記第2のデバイス上に前記第3のデータ・フィードを表示することと
をさらに含む、請求項2に記載の方法。
【請求項4】
前記アドホック・ネットワークがメッシュ・ネットワークである、請求項1に記載の方法。
【請求項5】
前記複数のデバイスのうちの各デバイスが、カメラおよびマイクロフォンから生成されたビデオ・データ・フィードを含む、請求項1に記載の方法。
【請求項6】
前記複数のデバイスのうちの各デバイスが、各デバイスのセンサからの追加のデータ・フィードを含む、請求項5に記載の方法。
【請求項7】
前記第1のデバイスの前記通信可能な近傍にある新しいデバイスを識別することと、
前記新しいデバイスを前記アドホック・ネットワークに追加することと、
新しいデータ・フィードに基づいて、前記切り替えアイコンをアップデートすることと
をさらに含む、請求項1に記載の方法。
【請求項8】
前記切り替えアイコンが、前記アドホック・ネットワーク内の各デバイスの相対的ロケーションを表示するように構成される、請求項1に記載の方法。
【請求項9】
前記複数の前記データ・フィードに基づいて、前記データ・フィードのサブジェクトを識別することと、
前記データ・フィードの前記サブジェクトの相対的ロケーションを示すために前記切り替えアイコンをアップデートすることと
をさらに含む、請求項8に記載の方法。
【請求項10】
前記第1のデバイスを1次デバイスとして指名することであって、前記1次デバイスが、各デバイス上に表示されることになるデータ・フィードを前記切り替えアイコンから選択するように構成される、前記指名することと、
前記1次デバイスの相対的ロケーションを示すために前記切り替えアイコンをアップデートすることと
をさらに含む、請求項8に記載の方法。
【請求項11】
システムであって、
プロセッサと、
コンピュータ可読ストレージ媒体であって、前記プロセッサに通信連結され、前記プロセッサによって実行されると、
第1のデバイスを含む複数のデバイスを識別することであって、前記複数のデバイスのうちの各デバイスが前記第1のデバイスの通信可能な近傍内にある、前記識別すること、
前記複数のデバイスのうちの各デバイスを含むアドホック・ネットワークを形成すること、
複数の利用可能なデータ・フィードを判定することであって、各データ・フィードが前記複数のデバイスのうちの1つのデバイスに関連付けられる、前記判定すること、
切り替えアイコンを構築することであって、前記切り替えアイコンが、利用可能な各データ・フィードのビューを含み、前記切り替えアイコンが、前記複数のフィードのうちの任意のフィードへのアクセスを可能にし、前記切り替えアイコンから選択されたフィードを表示するように構成される、前記構築すること、および
前記切り替えアイコンを前記アドホック・ネットワーク内の各デバイスに送信すること
を前記プロセッサに行わせるように構成されたプログラム命令を格納する、前記コンピュータ可読ストレージ媒体と
を備える、システム。
【請求項12】
前記プログラム命令がさらに、
前記複数のデバイスのうちの前記第1のデバイス上で、前記複数のデバイスのうちの第2のデバイスに関連付けられた第2のデータ・フィードを前記切り替えアイコンから選択することと、
前記第1のデバイス上に前記第2のデータ・フィードを表示することと
を前記プロセッサに行わせるように構成される、請求項11に記載のシステム。
【請求項13】
前記プログラム命令がさらに、
前記複数のデバイスのうちの各デバイス上に前記切り替えアイコンを表示することと、
前記第2のデバイス上で第3のデータ・フィードを選択することに応答して、前記第2のデバイス上に前記第3のデータ・フィードを表示することと
を前記プロセッサに行わせるように構成される、請求項12に記載のシステム。
【請求項14】
前記アドホック・ネットワークがメッシュ・ネットワークである、請求項11に記載のシステム。
【請求項15】
前記複数のデバイスのうちの各デバイスが、カメラおよびマイクロフォンから生成されたビデオ・データ・フィードを含む、請求項11に記載のシステム。
【請求項16】
コンピュータ・プログラム製品であって、前記コンピュータ・プログラム製品が、プログラム命令を具体化したコンピュータ可読ストレージ媒体を備え、前記プログラム命令が、
第1のデバイスを含む複数のデバイスを識別することであって、前記複数のデバイスのうちの各デバイスが前記第1のデバイスの通信可能な近傍内にある、前記識別すること、
前記複数のデバイスのうちの各デバイスを含むアドホック・ネットワークを形成すること、
複数の利用可能なデータ・フィードを判定することであって、各データ・フィードが前記複数のデバイスのうちの1つのデバイスに関連付けられる、前記判定すること、
切り替えアイコンを構築することであって、前記切り替えアイコンが、利用可能な各データ・フィードのビューを含む、前記構築すること、
各デバイスに対して、前記複数のフィードのうちの任意のフィードへのアクセスを前記アドホック・ネットワーク内の全てのデバイスに許可すること
を処理ユニットに行わせるように前記処理ユニットによって実行可能な、コンピュータ・プログラム製品。
【請求項17】
前記プログラム命令がさらに、
前記複数のデバイスのうちの前記第1のデバイス上で、前記複数のデバイスのうちの第2のデバイスに関連付けられた第2のデータ・フィードを前記切り替えアイコンから選択することと、
前記第1のデバイス上に前記第2のデータ・フィードを表示することと
を前記処理ユニットに行わせるように構成される、請求項16に記載のコンピュータ・プログラム製品。
【請求項18】
前記プログラム命令がさらに、
前記複数のデバイスのうちの各デバイス上に前記切り替えアイコンを表示することと、
前記第2のデバイス上で第3のデータ・フィードを選択することに応答して、前記第2のデバイス上に前記第3のデータ・フィードを表示することと
を前記処理ユニットに行わせるように構成される、請求項17に記載のコンピュータ・プログラム製品。
【請求項19】
前記アドホック・ネットワークがメッシュ・ネットワークである、請求項16に記載のコンピュータ・プログラム製品。
【請求項20】
前記複数のデバイスのうちの各デバイスが、カメラおよびマイクロフォンから生成されたビデオ・データ・フィードを含む、請求項16に記載のコンピュータ・プログラム製品。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は、データ共有に関し、より詳細には、短距離ネットワークにおけるマルチユーザ・カメラ切り替えに関する。
【背景技術】
【0002】
一般に、エリアのビューは、観察者(例えば、人、カメラ、等)の1つまたは2つの観点に限定される。観察者は、追加の観点から見た場合、シーン/オブジェクトの追加の見識を取得し得る。
【発明の概要】
【0003】
デバイス間でデータ・フィードを共有するためのコンピュータ実行方法が開示される。方法は、第1のデバイスを含む複数のデバイスを識別することであって、複数のデバイスのうちの各デバイスが第1のデバイスの通信可能な近傍(vicinity)内にある、識別することを含む。方法はまた、複数のデバイスのうちの各デバイスを含むアドホック・ネットワークを形成することを含む。方法はさらに、複数の利用可能なデータ・フィードを判定することであって、各データ・フィードが複数のデバイスのうちの1つのデバイスに関連付けられる、判定することを含む。方法は、切り替えアイコンを構築することであって、切り替えアイコンが、利用可能な各データ・フィードのビューを含み、切り替えアイコンが、複数のフィードのうちの任意のフィードへのアクセスを可能にし、切り替えアイコンから選択されたフィードを表示するように構成される、構築することを含む。方法はさらに、切り替えアイコンをアドホック・ネットワーク内の各デバイスに送信することを含む。本開示のさらなる態様は、上述の方法と一致した機能を含むシステムおよびコンピュータ・プログラム製品を対象とする。
【0004】
本概要は、本開示の各態様、あらゆる実装形態、またはあらゆる実施形態、あるいはその組合せを示すことを意図するものではない。
【0005】
種々の主題を参照しながら様々な実施形態が本明細書で説明される。特に、いくつかの実施形態は、方法を参照しながら説明されることがあるが、その一方で他の実施形態は、装置およびシステムを参照しながら説明されることがある。それでも、当業者は、別途知らされない限り、1つのタイプの主題に属する特徴の任意の組合せに加えて、異なる主題に関する特徴の間の、特に方法の特徴、ならびに装置およびシステムの特徴の間の任意の組合せも、本書類の中で開示されたものと考えられることを、上記および以下の説明から知るであろう。
【0006】
上記で定義された態様、および本明細書で開示されたさらなる態様は、以下で説明されることになる1つまたは複数の実施形態の例から明らかであり、1つまたは複数の実施形態の例を参照しながら説明されるが、本発明はこれらに限定されない。様々な実施形態がほんの一例として、および以下の図面を参照しながら、説明される。
【図面の簡単な説明】
【0007】
【
図1】本発明の実施形態によるクラウド・コンピューティング環境の図である。
【
図2】本発明の実施形態による抽象化モデル層の図である。
【
図3】本明細書で開示された1つまたは複数の実施形態によるDPSのブロック図である。
【
図4】本開示のいくつかの実施形態による、フィード・マネージャの動作に適切なコンピューティング環境の機能図である。
【
図5A】本開示のいくつかの実施形態による、崩壊した切り替えアイコンを有するネットワーク・デバイスの前面図である。
【
図5B】本開示のいくつかの実施形態による、拡大された切り替えアイコンを有するネットワーク・デバイスの前面図である。
【
図5C】本開示のいくつかの実施形態による、ネットワーク・デバイスの背面図である。
【
図6】本開示のいくつかの実施形態による、マルチユーザ・カメラ切り替えを可能にするための実例の方法のフローチャートである。
【発明を実施するための形態】
【0008】
本開示は、データ共有に関し、より詳細には、短距離ネットワークにおけるマルチユーザ・カメラ切り替えに関する。
【0009】
本開示は、クラウド・コンピューティングについての詳細な説明を含むが、本明細書で列挙される教示の実装形態は、クラウド・コンピューティング環境に限定されないことを理解されたい。むしろ、本発明の実施形態は、現在知られているか後で開発される、他の任意のタイプのコンピューティング環境と併用して実装される能力がある。
【0010】
クラウド・コンピューティングは、最低限の管理努力またはサービスの提供者との対話で素早く提供および解放可能な、構成可能なコンピューティング・リソース(例えば、ネットワーク、ネットワーク帯域幅、サーバ、処理、メモリ、ストレージ、アプリケーション、仮想マシン、およびサービス)の共用プールへの便利なオンデマンドのネットワーク・アクセスを可能にするためのサービス配信のモデルである。このクラウド・モデルは、少なくとも5つの特性、少なくとも3つのサービス・モデル、および少なくとも4つの展開モデルを含み得る。
【0011】
特性は以下の通りである。
【0012】
オンデマンド・セルフサービス:クラウド利用者は、サービスの提供者との人間対話を必要とせず、必要に応じて自動的に、サーバ時間およびネットワーク・ストレージなどのコンピューティング能力を一方的に提供することができる。
【0013】
ブロード・ネットワーク・アクセス:能力は、ネットワークを介して利用可能であり、異種混合のシンまたはシック・クライアント・プラットフォーム(例えば、モバイル・フォン、ラップトップ、およびパーソナル・デジタル・アシスタント(PDA))による使用を促進する標準メカニズムを通じてアクセスされる。
【0014】
リソース・プーリング:提供者のコンピューティング・リソースは、マルチ・テナント・モデルを使用して複数の利用者をサーブするためにプールされ、種々の物理および仮想リソースが、要求に応じて動的に割当ておよび再割当てされる。利用者には一般に、提供されるリソースの正確な位置についての制御権も知識もなく、抽象化のより高いレベル(例えば、国、州、またはデータセンタ)の位置を指定でき得るという点で位置独立の意味がある。
【0015】
迅速な弾力性:能力は、素早くスケール・アウトするために迅速かつ伸縮自在に、場合によっては自動的に提供され、素早くスケール・インするために迅速に解放されることが可能である。利用者にとって、提供のために利用可能な能力は無制限のように見えることが多く、いつでも任意の量で購入可能である。
【0016】
測定されるサービス:クラウド・システムは、サービスのタイプに適した抽象化のいくつかのレベル(例えば、ストレージ、処理、帯域幅、およびアクティブ・ユーザ・アカウント)における計量能力を活用することによって、リソース使用状況を自動的に制御し、最適化する。リソース使用率が監視、制御、レポートされることが可能であり、利用されるサービスの提供者と利用者双方に透明性をもたらす。
【0017】
サービス・モデルは以下の通りである。
【0018】
サービスとしてのソフトウェア(SaaS):利用者に提供される能力は、クラウド・インフラストラクチャ上で動く提供者のアプリケーションを使用することである。アプリケーションは、ウェブ・ブラウザ(例えば、ウェブ・ベースの電子メール)などの、シン・クライアント・インターフェースを通じて様々なクライアント・デバイスからアクセス可能である。利用者は、限定的なユーザ固有アプリケーション構成設定を例外とする可能性もあるが、ネットワーク、サーバ、オペレーティング・システム、ストレージ、または、ことによると個々のアプリケーション能力を含む、基礎をなすクラウド・インフラストラクチャを管理も制御もしない。
【0019】
サービスとしてのプラットフォーム(PaaS):利用者に提供される能力は、提供者によってサポートされるプログラミング言語およびツールを使用して制作された利用者制作または獲得アプリケーションを、クラウド・インフラストラクチャ上に配置することである。利用者は、ネットワーク、サーバ、オペレーティング・システム、またはストレージを含む、基礎をなすクラウド・インフラストラクチャを管理も制御もせず、配置されたアプリケーション、および場合によっては、アプリケーション・ホスティング環境構成に対する制御を行う。
【0020】
サービスとしてのインフラストラクチャ(IaaS):利用者に提供される能力は、処理、ストレージ、ネットワーク、ならびに、オペレーティング・システムおよびアプリケーションを含み得る任意のソフトウェアを利用者が展開して動かすことができる他の基本的なコンピューティング・リソースを提供することである。利用者は、基礎をなすクラウド・インフラストラクチャを管理も制御もせず、オペレーティング・システム、ストレージ、展開されたアプリケーションに対する制御、および場合によっては、選択されたネットワーキング構成要素(例えば、ホスト・ファイアウォール)の限定的な制御を行う。
【0021】
展開モデルは以下の通りである。
【0022】
プライベート・クラウド:クラウド・インフラストラクチャは、組織のためにだけ運用される。クラウド・インフラストラクチャは、組織または第三者によって管理されてもよく、敷地内または敷地外にあってもよい。
【0023】
コミュニティ・クラウド:クラウド・インフラストラクチャは、いくつかの組織によって共有され、懸念(例えば、ミッション、セキュリティ要件、ポリシ、およびコンプライアンス考慮)を共有してきた固有のコミュニティをサポートする。クラウド・インフラストラクチャは、組織または第三者によって管理されてもよく、敷地内または敷地外にあってもよい。
【0024】
パブリック・クラウド:クラウド・インフラストラクチャは、一般大衆または大規模業界団体に対して利用可能にされ、クラウド・サービスを売る組織によって所有される。
【0025】
ハイブリッド・クラウド:クラウド・インフラストラクチャは、一意のエンティティのままであるが、データおよびアプリケーション移植を可能にする標準または独自の技術(例えば、クラウド間の負荷分散のためのクラウド・バースティング)によって一緒に結びつけられた、2つ以上のクラウド(プライベート、コミュニティ、またはパブリック)の合成物である。
【0026】
クラウド・コンピューティング環境は、ステートレス性、低結合性、モジュール性、および意味論的相互運用性に焦点を置いたサービス指向のものである。クラウド・コンピューティングの中心には、相互接続ノードのネットワークを含むインフラストラクチャがある。
【0027】
図1をここで参照すると、例証的なクラウド・コンピューティング環境50が描写されている。図示のように、クラウド・コンピューティング環境50は、例えば、パーソナル・デジタル・アシスタント(PDA)もしくはセルラー電話54A、デスクトップ・コンピュータ54B、ラップトップ・コンピュータ54C、または自動車コンピュータ・システム54N、あるいはその組合せなど、クラウド利用者によって使用されるローカル・コンピューティング・デバイスが通信し得る、1つまたは複数のクラウド・コンピューティング・ノード10を含む。ノード10は、互いに通信してもよい。ノード10は、上記で説明されたようなプライベート、コミュニティ、パブリック、もしくはハイブリッド・クラウド、または、その組合せなど、1つまたは複数のネットワーク内で物理的または仮想的にグループ化されてもよい(図示せず)。これは、クラウド利用者がローカル・コンピューティング・デバイス上でリソースを維持する必要がない、サービスとしてのインフラストラクチャ、プラットフォーム、またはソフトウェア、あるいはその組合せを、クラウド・コンピューティング環境50が提供することを可能にする。
図1に示されたコンピューティング・デバイス54A~Nのタイプは例証にすぎないことが意図され、コンピューティング・ノード10およびクラウド・コンピューティング環境50は、任意のタイプのネットワークまたはネットワーク・アドレス可能接続あるいはその両方を介して(例えば、ウェブ・ブラウザを使用して)任意のタイプのコンピュータ化されたデバイスと通信可能であることが理解される。
【0028】
図2をここで参照すると、クラウド・コンピューティング環境50(
図1)によって提供される機能抽象化層のセットが示されている。
図2に示された構成要素、層、および機能は、例証にすぎないことが意図され、本発明の実施形態は、これらに限定されないことを予め理解されたい。描写されたように、以下の層および対応する機能が提供される。
【0029】
ハードウェアおよびソフトウェア層60は、ハードウェアおよびソフトウェア構成要素を含む。ハードウェア構成要素の例は、メインフレーム61、RISC(縮小命令セット・コンピュータ)アーキテクチャ・ベースのサーバ62、サーバ63、ブレード・サーバ64、ストレージ・デバイス65、ならびにネットワークおよびネットワーキング構成要素66を含む。いくつかの実施形態では、ソフトウェア構成要素は、ネットワーク・アプリケーション・サーバ・ソフトウェア67およびデータベース・ソフトウェア68を含む。
【0030】
仮想化層70は、仮想サーバ71、仮想ストレージ72、仮想プライベート・ネットワークを含む仮想ネットワーク73、仮想アプリケーションおよびオペレーティング・システム74、ならびに仮想クライアント75といった、仮想エンティティの例が提供され得る抽象化層を提供する。
【0031】
1つの例では、管理層80は、下記で説明される機能を提供し得る。リソース提供81は、クラウド・コンピューティング環境内でタスクを実施するために利用されるコンピューティング・リソースおよび他のリソースの動的な調達を行う。計量および価格設定82は、クラウド・コンピューティング環境内でリソースが利用されるときのコスト追跡、および、これらのリソースの利用量に対する請求またはインボイスを行う。1つの例では、これらのリソースは、アプリケーション・ソフトウェア・ライセンスを含んでもよい。セキュリティは、クラウド利用者およびタスクの検証、ならびに、データおよび他のリソースの保護を行う。ユーザ・ポータル83は、利用者およびシステム・アドミニストレータに、クラウド・コンピューティング環境へのアクセスを提供する。サービス・レベル管理84は、要求されるサービス・レベルが満たされるように、クラウド・コンピューティング・リソースの配分および管理を行う。サービス・レベル・アグリーメント(SLA)計画およびフルフィルメント85は、SLAに応じて、将来の要件が予想されるクラウド・コンピューティング・リソースの事前配置および調達を行う。
【0032】
ワークロード層90は、クラウド・コンピューティング環境が利用され得る機能の例を提供する。この層から提供され得るワークロードおよび機能の例は、マッピングおよびナビゲーション91、ソフトウェア開発およびライフサイクル管理92、仮想クラスルーム教育配信93、データ分析処理94、トランザクション処理95、ならびにデータ・フィードの選択96を含む。
【0033】
一般のデータ処理システム
【0034】
図3は、1つまたは複数の実施形態による実例のデータ処理システム(DPS:data processing system)のブロック図である。DPSは、クラウド・コンピューティング・ノード10として使用されてもよい。この例証的な例では、DPS100は通信バス102を含んでもよく、通信バス102は、プロセッサ・ユニット104、メモリ106、永続ストレージ108、通信ユニット110、入出力(I/O)ユニット112、およびディスプレイ114の間の通信を提供してもよい。
【0035】
プロセッサ・ユニット104は、メモリ106にロードされ得るソフトウェアのための命令を実行するように機能する。プロセッサ・ユニット104は、特定の実装形態に応じて、いくつかのプロセッサ、マルチコア・プロセッサ、または他のいくつかのタイプのプロセッサでもよい。アイテムを参照しながら本明細書で使用されるような数字は、1つまたは複数のアイテムを意味する。さらに、プロセッサ・ユニット104は、メイン・プロセッサが2次プロセッサと共に単一のチップ上に存在する、いくつかの異種のプロセッサ・システムを使用して実装されてもよい。別の例証的な例として、プロセッサ・ユニット104は、同じタイプの複数のプロセッサを含む対称マルチプロセッサ・システムでもよい。
【0036】
メモリ106および永続ストレージ108は、ストレージ・デバイス116の例である。ストレージ・デバイスは、例えば限定することなく、データ、関数形式のプログラム・コード、または他の適切な情報、あるいはその組合せなどの情報を、一時的または永久的あるいはその両方で格納する能力がある任意のハードウェアでもよい。メモリ106は、これらの例では、例えば、ランダム・アクセス・メモリ、または任意の他の適切な揮発性もしくは不揮発性ストレージ・デバイスでもよい。永続ストレージ108は、特定の実装形態に応じて様々な形式をしていてもよい。
【0037】
例えば、永続ストレージ108は、1つまたは複数の構成要素またはデバイスを含んでもよい。例えば、永続ストレージ108は、ハード・ドライブ、フラッシュ・メモリ、書換え可能光ディスク、書換え可能磁気テープ、または上記のいくつかの組合せでもよい。永続ストレージ108によって使用される媒体も、取外し可能でもよい。例えば、永続ストレージ108用に取外し可能ハード・ドライブが使用されてもよい。
【0038】
これらの例における通信ユニット110は、他のDPSまたはデバイスとの通信を提供してもよい。これらの例では、通信ユニット110は、ネットワーク・インターフェース・カードである。通信ユニット110は、どちらかまたは両方の物理およびワイヤレス通信リンクを使用して通信してもよい。
【0039】
入出力ユニット112は、DPS100に接続され得る他のデバイスとのデータの入力および出力を可能にしてもよい。例えば、入出力ユニット112は、キーボード、マウス、または他のいくつかの適切な入力デバイス、あるいはその組合せを通じたユーザ入力のための接続を提供してもよい。さらに、入出力ユニット112は、出力をプリンタに送信してもよい。ディスプレイ114は、情報をユーザに表示するためのメカニズムを提供してもよい。
【0040】
オペレーティング・システム、アプリケーション、またはプログラム、あるいはその組合せのための命令は、通信バス102を通じてプロセッサ・ユニット104と通信状態にあるストレージ・デバイス116に置かれてもよい。これらの例証的な例では、命令は、永続ストレージ108上に関数形式で存在する。これらの命令は、プロセッサ・ユニット104による実行のために、メモリ106にロードされてもよい。異なる実施形態のプロセスは、メモリ106などのメモリに置かれ得るコンピュータ実装命令を使用して、プロセッサ・ユニット104によって実施されてもよい。
【0041】
これらの命令は、プロセッサ・ユニット104のプロセッサによって読み込まれ、実行され得る、プログラム・コード、コンピュータ使用可能プログラム・コード、またはコンピュータ可読プログラム・コードと呼ばれる。異なる実施形態のプログラム・コードは、メモリ106または永続ストレージ108など、種々の物理的または有形のコンピュータ可読媒体上で具体化されてもよい。
【0042】
プログラム・コード118は、選択的に取外し可能なコンピュータ可読媒体120上に関数形式で置かれてもよく、プロセッサ・ユニット104による実行のために、DPS100にロードされるか移送されてもよい。プログラム・コード118およびコンピュータ可読媒体120は、これらの例では、コンピュータ・プログラム製品122を形成してもよい。1つの例では、コンピュータ可読媒体120は、コンピュータ可読ストレージ媒体124またはコンピュータ可読信号媒体126でもよい。コンピュータ可読ストレージ媒体124は、例えば、永続ストレージ108の一部であるハード・ドライブなどのストレージ・デバイスに移送するための、永続ストレージ108の一部であるドライブまたは他のデバイスに挿入されるか置かれた、光または磁気ディスクを含んでもよい。コンピュータ可読ストレージ媒体124はまた、DPS100に接続された、ハード・ドライブ、サム・ドライブ、またはフラッシュ・メモリなど、永続ストレージの形をしていてもよい。いくつかの事例では、コンピュータ可読ストレージ媒体124は、DPS100から取外し可能でなくてもよい。
【0043】
代替として、プログラム・コード118は、コンピュータ可読信号媒体126を使用してDPS100に移送されてもよい。コンピュータ可読信号媒体126は、例えば、プログラム・コード118を含む伝搬されるデータ信号でもよい。例えば、コンピュータ可読信号媒体126は、電磁気信号、光信号、または任意の他の適切なタイプの信号、あるいはその組合せでもよい。これらの信号は、ワイヤレス通信リンク、光ファイバ・ケーブル、同軸ケーブル、ワイヤ、または任意の他の適切なタイプの通信リンク、あるいはその組合せなどの、通信リンクを介して伝送されてもよい。言い換えれば、通信リンクまたは接続あるいはその両方は、例証的な例では、物理またはワイヤレスでもよい。
【0044】
いくつかの例証的実施形態では、プログラム・コード118は、DPS100内での使用のために、コンピュータ可読信号媒体126を通じて、別のデバイスまたはDPSからネットワークを介して永続ストレージ108にダウンロードされてもよい。例えば、サーバDPSのコンピュータ可読ストレージ媒体に格納されたプログラム・コードは、ネットワークを介してサーバからDPS100にダウンロードされてもよい。プログラム・コード118を提供するDPSは、プログラム・コード118を格納および伝送する能力がある、サーバ・コンピュータ、クライアント・コンピュータ、または他のいくつかのデバイスでもよい。
【0045】
DPS100のために示された種々の構成要素は、種々の実施形態が実装され得る様式に対する構造的限定を提供するためのものではない。種々の例証的実施形態は、DPS100のために示されたものに加えたまたはその代わりの構成要素を含むDPSにおいて実装されてもよい。
図1に示された他の構成要素
【0046】
一般に、特定の観察者にとってのエリアのビューは、単一の観点(例えば、人、カメラ、等)に限定される。観察者は、追加の観点から見た場合、シーン/オブジェクトの追加の見識を取得し得る。いくつかのシナリオでは、全てのまたは少なくともより潜在的な観点を取得するために人が移動することは、非実用的な可能性がある。例えば、障害物(例えば、群衆、フェンス、等)が、ユーザが所望の有利な位置を得るために移動するのを阻止する。追加として、カメラ(または他のセンサ/視覚デバイス)を現場に設置することは、非実用的であるか費用が途方もなく高くなる可能性がある。非実用性は、シーン/オブジェクトが一時的であること、またはインフラストラクチャがないこと、あるいはその両方から生じる可能性がある。
【0047】
本開示の実施形態は、アドホック・ネットワークに結合された任意のデバイスから、任意のデータ・フィード(ビデオ、温度センサ、等)を選択および閲覧する柔軟性をユーザが有することになる方法およびシステムを含む。例として、イベントは、ステージで発生し得る。左側で見ている見物人は、ステージの右側で起こっていることを見るのに苦労することがあり、逆もまた同様である。本開示の実施形態は、見物人がデバイスでアドホック・メッシュ・ネットワークを形成し、接続されたデバイスのいずれかからのカメラ・ビューを選択することを可能にすることになる。これは、左側の見物人が右側の見物人からのビデオ・ビューを選択し、右側の見物人からのキャプチャされたビデオ・ストリームを見ることを可能にする。本開示の実施形態は、特に、教育(例えば、教室、校外学習、等)、公共の安全(例えば、消火活動、捜索、および救助、等)、スポーツ・イベント、ならびにソーシャル・イベント(例えば、コンサート、観光、等)を含む、様々な分野における恩恵をもたらすために、導入可能である。
【0048】
本開示の実施形態は、ネットワーク内のデバイスからの様々なデータ・フィード間の切り替えを可能にするように構成されたフィード・マネージャを含む。いくつかの実施形態では、フィード・マネージャは、ネットワークを共に形成することになる他のデバイスを識別することができる。いくつかの実施形態では、フィード・マネージャは、ネットワークを形成する。いくつかの実施形態では、ネットワークは、メッシュ・ネットワークである。メッシュ・ネットワークは、各ノードがネットワーク内の任意の他のノードに非階層型で直接的に接続可能なネットワークであることが可能である。メッシュ・ネットワークでは、任意のデバイスが、ネットワーク内の任意の他のデバイスへのホスト、および他のデバイスのクライアントであることが可能である。ネットワークは、アドホックに(ad-hoc)またはリクエストによってあるいはその両方で形成される。アドホック・ネットワークは、モバイル・デバイスのグループの間でデータ・フィードを一時的に共有することなど、限定的な目的のために形成または使用あるいはその両方が行われるネットワークであることが可能である。アドホック・ネットワークは、フィード・マネージャによって作成および閉鎖されることが可能である。いくつかの実施形態では、ネットワークは、類似のアプリケーションを動かす/含むデバイスに基づくことが可能である。いくつかの実施形態では、各フィード/デバイスは、ネットワークとの間で任意のフィードの送信/受信のオプト・インまたはオプト・アウトあるいはその両方を行うことが可能である。オプト・イン/オプト・アウトは、いつでも発生することが可能である(例えば、ネットワークの形成後、現在フィードを共有している間、等)。
【0049】
いくつかの実施形態では、フィード・マネージャは、ネットワーク内の各デバイスの相対的ロケーションを識別することができる。ロケーションは、例えば、三角測量(例えば、セルラー・ネットワーク)、サウンド・プロフィール、GPS、および同様のものといった、既知の方法を使用して判定されることが可能である。いくつかの実施形態では、フィード・マネージャは、閲覧のサブジェクト(subject)を識別することができる。例えば、ネットワーク内の複数のカメラが焚き火にフォーカスした場合、システムは、焚き火をサブジェクトとして識別することができる。
【0050】
いくつかの実施形態では、データ・マネージャは、カメラ切り替えアイコンを生成することができる。カメラ切り替えアイコンは、利用可能な各データ・フィード(例えば、カメラ)を示す表示であることが可能である。ユーザは、どのデータ・ストリームを見るか、入力によって選択することができる。いくつかの実施形態では、切り替えアイコンは、任意のデータ・ソースのデータ・フィードの相対的なポジショニング、または(関連があれば)方向、あるいはその両方を含むことができる。
【0051】
いくつかの実施形態では、フィード・マネージャは、1次デバイスを選択することができる。1次デバイスは、ネットワーク上の任意のデバイスであることが可能である。いくつかの実施形態では、1次デバイスは、(例えば、ネットワーク・イニシエータ等によって)事前選択される。いくつかの実施形態では、1次デバイスは、ネットワーク内の他の全てのデバイスのビューを管理することができる。例えば、教室の環境では、教官は、1次デバイスを使用しており、ネットワーク上で生徒の全てのために任意のビューを選択することができる。いくつかの実施形態では、各デバイスは、ネットワークからの任意のデータ・フィードを選択することができる。例えば、デバイスAは、デバイスBのカメラからのフィードを表示していることが可能であり、デバイスBは、デバイスCのカメラからのフィードを表示していることが可能である、などである。いくつかの実施形態では、1次デバイスは、客観的要因に基づいて選択される。例えば、ネットワーク上の各デバイスは、どのデバイスが1次デバイスであるかを投票することができる。別の例として、他のほとんどのネットワーク・デバイスとフィードを共有するデバイスは、1次デバイスであることが可能である。いくつかの実施形態では、1次デバイスは、ネットワークが動作している間に、変更することができる。いくつかの実施形態では、1次デバイスは、データ入力に基づいて選択される。例えば、各デバイスが温度計を含んでいた場合、1次デバイスは、最高(または最低)温度を読み取るデバイスであることが可能である。同様に、各デバイスがマイクロフォンを含んでいた場合、1次デバイスは、最高(または最低)レベルの音を読み取るデバイスであることが可能である。いくつかの実施形態では、フィード・マネージャは、様々なフィードのプレビューを提供することができる。プレビューは、データ・フィードのスナップショットであることが可能である。
【0052】
前述の利点は利点の例であり、相変わらず本開示の範囲内でありつつ、前述の利点の全てもしくはいくつかを含むこと、またはどれも含まないことが可能な実施形態が存在する。
【0053】
本開示の様々な実施形態をより詳細にここで参照すると、
図4は、本開示の1つまたは複数の実施形態によるフィード・マネージャを実行できるコンピューティング環境400の図である。本開示の範囲から逸脱することなく当業者によって、描写された環境への多くの修正が行われてもよい。
【0054】
コンピューティング環境400は、ホスト410、1次デバイス420、追加デバイス430(1)、追加デバイス430(2)、および追加デバイス430(n)まで、ならびにネットワーク450を含み、ここで、nは、任意の正の自然数であることが可能である。追加デバイス430(1)から追加デバイス430(n)は、個別に、別々に、またはまとめて、あるいはその組合せで、追加デバイス430と呼ばれることが可能である。いくつかの実施形態では、コンピューティング環境400は、クラウド・コンピューティング環境(例えば、クラウド・コンピューティング環境50)に含まれることが可能である。
【0055】
ネットワーク450は、例えば、テレコミュニケーション・ネットワーク、ローカル・エリア・ネットワーク(LAN)、インターネットなどのワイド・エリア・ネットワーク(WAN)、または3つの組合せであることが可能であり、有線、ワイヤレス、または光ファイバ接続を含むことができる。ネットワーク450は、音声、データ、およびビデオ情報を含むマルチメディア信号を含む、データ、音声、または映像、あるいはその組合せの信号を受信および伝送する能力がある、1つまたは複数の有線またはワイヤレスあるいはその両方のネットワークを含んでもよい。一般に、ネットワーク450は、ホスト410、1次デバイス420、追加デバイス430、および、コンピューティング環境400内の他のコンピューティング・デバイス(図示せず)の間の通信、ならびにこれらの中の通信をサポートすることになる接続およびプロトコルの任意の組合せでもよい。いくつかの実施形態では、ホスト410、1次デバイス420、または追加デバイス430、あるいはその組合せは、
図3のデータ処理システム100などのコンピュータ・システムを含んでもよい。
【0056】
いくつかの実施形態では、ネットワーク450は、アドホックまたはメッシュあるいはその両方のネットワークであることが可能である。様々な実施形態では、ネットワーク450は、セルラー無線周波数、Bluetooth/Wi-Fi無線周波数、オーディオ(audio)、または光、あるいはその組合せのうちの1つまたは複数を使用して、コンピューティング環境400の様々なデバイス間で通信する。
【0057】
ホスト410は、スタンドアロン・コンピューティング・デバイス、管理サーバ、ウェブ・サーバ、モバイル・コンピューティング・デバイス、または、データを受信、送信、および処理する能力がある任意の他の電子デバイスもしくはコンピューティング・システムであることが可能である。いくつかの実施形態では、ホスト410は、クラウド・コンピューティング環境(例えば、クラウド・コンピューティング環境50)におけるような、複数のコンピュータをサーバ・システムとして利用するサーバ・コンピューティング・システムを表すことができる。いくつかの実施形態では、ホスト410は、フィード・マネージャ412およびアイコン生成器414を含む。いくつかの実施形態では、ホスト410は、1次デバイス420および追加デバイス430のうちの1つもしくは複数と組み合わされる(または、これらに含まれる)ことが可能である。
【0058】
フィード・マネージャ412は、ネットワーク内のデバイス間のデータ・フィードの選択を可能にするように構成されたハードウェアまたはソフトウェアあるいはその両方の任意の組合せであることが可能である。各データ・フィードは、ネットワーク内の別のデバイスによって生成されること、または別のデバイスから受信されること、あるいはその両方が可能である。いくつかの実施形態では、フィード・マネージャ412は、アイコン生成器414を含むが、それでも、議論のために別個であるものとして示されている。
【0059】
いくつかの実施形態では、フィード・マネージャ412は、1次デバイスを選択することができる。いくつかの実施形態では、フィード・マネージャ412は、ネットワーク内のデバイスからの1次デバイスとして、1次デバイス420を指名/選択することができる。いくつかの実施形態では、1次デバイスは、他のデバイスへのデータ・フローを制御することができる。いくつかの実施形態では、1次デバイスは、他のデバイスのうちの全て/一部に送信されることになるフィードを選択することができるが、2次デバイスは、フィードを受信するだけであり、選択することができない。1次デバイスは、事前構成可能である。例えば、アドホック・ネットワーク開始するデバイスは、1次デバイスであることが可能である。いくつかの実施形態では、1次デバイスは、センサ・データに基づくことが可能である。例えば、最高温度を読み取っているデバイスが、1次デバイスとして指名されることが可能である。
【0060】
いくつかの実施形態では、全てのデバイスが等しいパーミッションを有する。例えば、各デバイスは、制約または限定なく、任意の他のデバイスからのフィードを選択することができる。これは、全てのデバイスが1次デバイスであるかのように、または、デバイスのどれも1次デバイスではないと、あるいはその両方であると、考えられることが可能である。
【0061】
アイコン生成器414は、フィード切り替えアイコン(例えば、切り替えアイコン424)を生成するように構成されたハードウェアまたはソフトウェアあるいはその両方の任意の組合せであることが可能である。いくつかの実施形態では、アイコン生成器414は、アドホック・ネットワークに参加したデバイスの数を判定することができる。いくつかの実施形態では、アイコン生成器414は、デバイスがネットワークに参加することに応答して、接続されたデバイス上のカメラまたはセンサあるいはその両方の数を各デバイスから受信することができる。
【0062】
いくつかの実施形態では、アイコン生成器414は、ネットワーク内の各デバイスからロケーション・データを取得することができる。ロケーション・データは、全地球測位システム(GPS)データ、ネットワーク・データ(例えば、セルラー・ネットワークを使用した三角測量)、サウンド・プロフィール、および他の類似の方法のうちの1つまたは複数を含むことができる。いくつかの実施形態では、アイコン生成器414はロケーション・データを使用して、ネットワーク内の他のデバイスに対する各デバイスの位置を判定することができる。
【0063】
いくつかの実施形態では、アイコン生成器414は、(1次デバイスが存在する場合)どのデバイスが1次デバイスであるかを示すことができる。いくつかの実施形態では、アイコン生成器414は、アドホック・ネットワークのオブジェクト/フォーカスを判定することができる。いくつかの実施形態では、フォーカスは、1次デバイスによって受信された入力に基づくことが可能である。例えば、1次デバイスが消防隊長によって制御される場合、消防隊長によって操作されるデバイスによって受信された入力は、フォーカス・ポイント(またはフォーカス・エリア、もしくはフォーカス・オブジェクト)になることが可能である。例えば、隊長が、同じロケーションにフォーカスされた2つのフィードの間で切り替えている場合、(または、このロケーションを見るのに大半の時間を費やした場合)、アイコン生成器414は、これらの入力に基づいて、フォーカス・エリアを判定することができる。入力は、特定のデータ・ストリームを選択しているデバイスの数、方向のビューの組合せ(例えば、2つのデバイスが遠く離れて互いに向き合っているとき、フォーカス・エリアは2つのデバイスの間であることが可能である)、フィードに費やした時間、相対的ロケーション、音声入力(例えば、方向と組み合わされた注目を集める入力を認識すること)、および他の類似の入力を含むことができる。アイコン生成器414は画像処理を使用して、いくつかのデバイスが共通のオブジェクトの方に向けられているかどうかを判定することができる。
【0064】
いくつかの実施形態では、アイコン生成器414は、ディスプレイ内のフォーカス・オブジェクトの相対的ロケーションを示すことができる。全体のアイコンは、ネットワーク内の各デバイス、ネットワーク内の各データ・フィード、各フィード/デバイスの相対的ロケーション、1次デバイス、またはフォーカス・オブジェクト、あるいはその組合せのうちの1つまたは複数を含むことができる。
【0065】
1次デバイス420は、データを受信、送信、および処理する能力がある任意のコンピューティング・デバイス、電子デバイス、またはコンピューティング・システムであることが可能である。いくつかの実施形態では、1次デバイス420は、スマート・フォン、スマート・ウォッチ、スマート・グラス、または別の類似のデバイス、あるいはその組合せなどの、スマート・デバイスである。いくつかの実施形態では、1次デバイス420は、アドホック・ネットワークを他のコンピューティング・デバイスと参加するように構成される。いくつかの実施形態では、1次デバイス420は、選択されたフィードを全て/一部の接続されたデバイスに送信することができる。
【0066】
いくつかの実施形態では、1次デバイス420は、アプリケーション421、カメラ422、センサ423、および切り替えアイコン424を含む。
【0067】
アプリケーション421は、コンピューティング・デバイス(例えば、1次デバイス420)上で機能を実行するように構成されたハードウェアまたはソフトウェアあるいはその両方の任意の組合せであることが可能である。いくつかの実施形態では、アプリケーション421は、ウェブ・アプリケーションである。いくつかの実施形態では、アプリケーション421は、任意の数の別個のアプリケーションを表すことができる。いくつかの実施形態では、アプリケーション421は、クラウド・コンピューティング環境内で動作していることが可能である。いくつかの実施形態では、アプリケーション421は、アドホック・ネットワークの形成を開始することができる。いくつかの実施形態では、アプリケーション421は、データ・フィードを生成する。データ・フィードは、1次デバイス420上の1つまたは複数のセンサに基づくことが可能である。例えば、フィードは、カメラからのビデオ・フィード、または温度計/赤外線検出器からの温度フィード、あるいはその両方であることが可能である。
【0068】
カメラ422は、1次デバイス420からの画像データをキャプチャするように構成されたハードウェアまたはソフトウェアあるいはその両方の任意の組合せであることが可能である。いくつかの実施形態では、1次デバイス420は、2つ以上の別個のカメラを含む。各カメラは、異なる方向(例えば、デバイスの両側)に向けられることが可能である。いくつかの実施形態では、カメラ422は、ビデオ・ストリームおよびスチル写真をキャプチャすることができる。
【0069】
センサ423は、データを集めるように構成された1次デバイス420に取り付けられた任意のセンサであることが可能である。デバイスには任意の数のセンサがあることが可能である。いくつかの実施形態では、センサ423は、(カメラがセンサのようになり得るので)カメラ422を含まない任意のセンサであることが可能である。センサ423は、マイクロフォン、温度計、赤外線センサ、聴覚センサ、気圧計、ジャイロスコープ、方位計、加速度計および同様のもののうちの1つまたは複数を含むことができる。いくつかの実施形態では、カメラ422および1つまたは複数のセンサ423によってキャプチャされたデータは、単一のデータ・ストリームを作成するために組み合わされることが可能である。例えば、カメラ422は、ビデオとマイクロフォンの音とをキャプチャすることができ、2つは、音付きのビデオ・ストリームとして組み合わされることが可能である。
【0070】
切り替えアイコン424は、1次デバイス420上の表示と統合されることが可能である。いくつかの実施形態では、切り替えアイコン424は、データ・フィードを選択するための機能を可能にする。いくつかの実施形態では、切り替えアイコン424は、選択のために利用可能な各フィードを示すことができる。表示は、リスト表示であることが可能である。リストは、デバイスの識別子を示すことができる。識別子は、自動生成またはデバイス・ユーザによって入力あるいはその両方が行われることが可能である。いくつかの実施形態では、デバイスは、2つ以上の利用可能なフィード(例えば、2つのカメラ)を有してもよい。切り替えアイコン424は、利用可能なフィードを別個のオプションとして示すことができる。
【0071】
いくつかの実施形態では、切り替えアイコン424は、各デバイス(またはフィード、もしくはフィードのソース)の相対的位置を示すことができる。いくつかの実施形態では、切り替えアイコン424は、1次デバイス420、またはフィードのサブジェクトの相対的ロケーション、あるいはその両方を一意に示すことができる。これは、
図5に関連してさらに議論される。
【0072】
追加デバイス430は、データを受信、送信、および処理する能力がある、任意のコンピューティング・デバイス、電子デバイス、またはコンピューティング・システムであることが可能である。いくつかの実施形態では、追加デバイス430は、ホスト410の構成要素と組み合わされることが可能である。各または任意の追加デバイス430は、ホスト410内の構成要素のいずれかまたは全てを含むことができる。いくつかの実施形態では、各追加デバイスは、1次デバイス420の機能および下位構成要素(例えば、アプリケーション421、カメラ422、等)を有することができる。
【0073】
いくつかの実施形態では、「1次デバイス」および「追加デバイス」は、ネットワークの指定であり、特定のデバイスに永久に割り当てられる。いくつかの実施形態では、1次デバイスと考えられるデバイスは、動的に変更されることが可能である。シナリオが変わると、1次デバイスと考えられるデバイスは、ネットワーク内の第1のデバイスから第2のデバイスに変更される。追加として、切り替えアイコン424は、ネットワーク内の各デバイス上の変更に基づいてアップデートされることが可能である。
【0074】
図5A~
図5Cは、コンピューティング・デバイス520の1つの実施形態を描写している。デバイスは、ホスト410、1次デバイス420、または追加デバイス430、あるいはその組合せのうちのいずれか1つであることが可能である。切り替えアイコン524は、ディスプレイ・エリア550の最下部に描写されている。
【0075】
図5Aは、デバイス520の前部を表示している。図示の実施形態は、スマート・フォンの類似の1つの例である。デバイス520は、ディスプレイ・エリア550を含む。デバイス520の最上部にはカメラ522があり、カメラ522は、カメラ422と一致したものであることが可能である。切り替えアイコン524は、ディスプレイ550上に示されているが、ディスプレイ550は、切り替えアイコン424と一致したものであることが可能である。
図5Aは、折りたたまれた状態の切り替えアイコン524を示す。切り替えアイコン524は、デバイスへの入力を受信することに応答して拡大および折りたたまれることが可能である。
【0076】
図5Bは、
図5A(すなわち、デバイス520)と同じデバイスを描写しているが、切り替えアイコン524が拡大されている。デバイス520は、カメラ522、ディスプレイ・エリア550、および拡大された切り替えアイコン524を含む。拡大された切り替えアイコン524の中に、サブジェクト・デバイス563、追加デバイス指標561、および、562におけるフィードのサブジェクト/オブジェクトが、それぞれ描写されている。デバイス/オブジェクトの各タイプ/クラスは、一意の識別子を有することができる。識別子は、利用可能なフィードを示す形状、色、名前、または任意の他の様式、あるいはその組合せであることが可能である。切り替えアイコン524内のロケーションは、アイコン生成器(例えばアイコン生成器414など)によって判定されるような相対的位置であることが可能である。デバイスが動き回ると、切り替えアイコン524は、ロケーション/フィード・データの変更に基づいて動的にアップデートされることが可能である。いくつかの実施形態では、切り替えアイコン524における各表示は、方向指標(図示せず)を含むことができる。方向指標は、データが取得される方向、またはセンサが指し示している方向、あるいはその両方を示すことができる。例えば、各デバイスがカメラを含む場合、カメラが指し示している方向を示す矢印は、各追加デバイス指標561と共に含まれることが可能である。
【0077】
いくつかの実施形態では、フィード552のオブジェクトが判定されることが可能である。判定は、フィードのそれぞれの分析に基づくことが可能である。例えば、ビデオ・フィードのいくつかが炎を含むことができる場合、オブジェクトは、焚き火として識別可能である。フォーカス・オブジェクトは、方向、およびオブジェクトの相対的ロケーションを判定するために、画像認識または方位計およびロケーション・データあるいはその両方を使用して判定可能である。これは、オブジェクト562の他のビューが、異なる有利な位置から利用可能であることを、サブジェクト・デバイス563のユーザが見ることを可能にすることができる。
【0078】
図5Cは、カメラ522およびセンサ523を含むデバイス520の背面を描写している。カメラ522は、デバイス上の第2のカメラであることが可能である。センサ523は、センサ423と一致したものであることが可能である。いくつかの実施形態では、追加のセンサまたはカメラあるいはその両方が、デバイス520の前または後あるいはその両方の任意の位置に置かれることが可能である。
【0079】
図6は、コンピューティング環境(例えば、コンピューティング環境400またはクラウド・コンピューティング環境50あるいはその両方)において実施可能なアドホック・ネットワークからのデータ・フィードを選択するための実例の方法である方法600のフローチャートを描写している。アドホック・ネットワークからのデータ・ストリームを選択するための上述の利点および改善のうちの1つまたは複数は、本開示の様々な実施形態と一致した方法600によって実現され得る。
【0080】
方法600は、1つまたは複数のプロセッサ、ホスト410、1次デバイス420、2次デバイス430、これらの下位構成要素、および/または、ハードウェアまたはソフトウェアあるいはその両方の異なる組合せによって、実行可能である。様々な実施形態では、方法600の様々な動作は、ホスト410、フィード・マネージャ412、アイコン生成器414、1次デバイス420、アプリケーション421、カメラ422、センサ423、切り替えアイコン424、または追加デバイス430のうちの1つまたは複数によって実施される。例証のために、方法600は、フィード・マネージャ412によって実施されているものとして説明されることになる。
【0081】
動作602において、フィード・マネージャ412は、1つまたは複数のデバイスを識別する。いくつかの実施形態では、フィード・マネージャ412は、第1のデバイスに含まれることが可能である。いくつかの実施形態では、識別は、アプリケーションに基づくことが可能である。デバイス上のアプリケーションは、近傍(または通信可能な近傍)において他のデバイスが利用可能であることを通知するように構成可能である。通知は、デバイスがアドホック・ネットワークを形成できる/してもよいことを他のデバイスに通知すること、または、追加デバイスが近傍にあることをデバイスに通知すること、あるいはその両方を含むことができる。近傍は、ロケーション、所定のイベント(例えば、コンサート、スポーツ・イベント、クラス、等)、距離(例えば、デバイス間の距離、ネットワーク能力に対する限界、および同様のもの)に基づくことが可能である。いくつかの実施形態では、アプリケーションは、リクエストを、範囲内の全てのデバイスに送信することができる。各デバイスは、ユーザからの入力を受信することに基づく、または、アプリケーションの所定の構成に基づく、あるいはその両方に基づく、リクエストに応答することができる。
【0082】
動作604において、フィード・マネージャ412は、アドホック・ネットワークを形成する。いくつかの実施形態では、識別された各デバイスは、ネットワークにノードとして参加する。いくつかの実施形態では、アドホック・ネットワークは、メッシュ・ネットワークである。動作606において、フィード・マネージャ412は、利用可能なデータ・フィードを判定する。いくつかの実施形態では、利用可能なデータ・フィードは、アドホック・ネットワークを形成することに応答して、フィード・マネージャ412に送信される。各デバイスは、全ての利用可能なフィードを送信することができる。いくつかの実施形態では、各デバイスは、ネットワークからのデータ・フィードの追加または除去あるいはその両方を行うことができる。例えば、デバイスが2つのカメラおよび他のセンサを有する場合、デバイスは、カメラのうちの1つへのアクセスを可能にすることができる。このシナリオでは、第2のカメラおよびセンサは、利用可能なフィードではない。
【0083】
動作608において、フィード・マネージャ412は、切り替えアイコン(例えば、切り替えアイコン424)を生成/作成/構築する。いくつかの実施形態では、切り替えアイコンは、アイコン生成器414によって作成される。いくつかの実施形態では、切り替えアイコンを生成することは、ネットワーク内の1つまたは複数の他のデバイス/フィードに対する、各デバイスのロケーションを判定することを含む。いくつかの実施形態では、動作608は、切り替えアイコンをネットワーク内の各デバイスに送信することを含む。
【0084】
動作610において、フィード・マネージャ412は、各デバイスへの全てのデータ・フィードを共有する。いくつかの実施形態では、フィード共有は、各デバイスへの入力に基づく。入力は、どのフィードを任意の特定のデバイスに表示するべきかを指示することができる。
【0085】
動作612において、フィード・マネージャ412は、ネットワークおよび切り替えアイコンをアップデートする。いくつかの実施形態では、デバイスは、メッシュ・ネットワークの近接(proximity)に出入りしてもよい。いくつかの実施形態では、新しいデバイスは、アドホック・ネットワークから動的に追加可能または除去可能あるいはその両方である。いくつかの実施形態では、動作612は、近接またはネットワークあるいはその両方を出入りする各デバイスのために、動作602から608のうちの1つまたは複数を再実施することを含む。いくつかの実施形態では、動作602から610のうちの1つまたは複数は、1つまたは複数のデバイスまたはフォーカス・オブジェクトあるいはその両方の動きに基づいて再実施される。
【0086】
いくつかの実施形態では、動作612または動作608あるいはその両方は、フォーカス・オブジェクトを識別することを含む。判定は、フィードを分析することに基づくことが可能である。例えば、カメラの全て/ほとんどが共通のオブジェクトに向けられているかどうかを判定するために、画像認識プロセスが使用されることが可能である。フィードの方向(例えば、カメラが指し示している方向)、フィードが見られている時間、および他の類似の因子が、オブジェクト判定に含まれることが可能である。いくつかの実施形態では、オブジェクト判定はない。いくつかの実施形態では、フォーカス・オブジェクトは変更することができる。切り替えアイコンは、新しいフォーカス・オブジェクト、または移動するフォーカス・オブジェクト、あるいはその両方を識別することに応答して、動的にアップデート可能である。いくつかの実施形態では、フォーカス・オブジェクトは、フォーカス・オブジェクトでなくなってもよい。切り替えアイコンは、フォーカス・オブジェクトの変更/除去に基づいて、動的にアップデートされることが可能である。
【0087】
いくつかの実施形態では、動作612または動作608あるいはその両方は、1次デバイスを判定することを含む。いくつかの実施形態では、1次デバイスは、特定のデバイスによって見られることになる特定のフィードを選択することができる。いくつかの実施形態では、1次デバイスは、アプリケーション設定による事前判定または指名あるいはその両方が行われる。いくつかの実施形態では、1次デバイスは、全てのネットワーク・デバイスからの入力に基づいて選ばれる。例えば、利用可能な各フィードは、1次デバイスに投票することができる。投票が最も多いデバイスが1次として指名される。いくつかの実施形態では、1次デバイスは、所定の入力に基づくことが可能である。例えば、熱センサ(例えば、温度計、赤外線カメラ、等)から最高温度を観察したデバイスが、1次デバイスとして指名されることが可能である。1次デバイスとして指名されたデバイスは動的に変更可能である。例えば、1次デバイスが温度に基づく場合、第2のデバイスの温度の度数が第1のデバイスの温度の度数を超えると、第2のデバイスが1次デバイスとして指名されることが可能である。
【0088】
動作614において、フィード・マネージャ412は、アドホック・ネットワークを閉鎖/終了する。いくつかの実施形態では、ネットワークは、ネットワークがしばらくの間、開いていたことに基づいて閉鎖される。いくつかの実施形態では、ネットワークは、共有されているフィードの量に基づいて閉鎖される。例えば、デバイスが別のデバイスのフィードを見ていない場合、ネットワークは閉鎖可能である。いくつかの実施形態では、ネットワークは、デバイスが他のデバイスの近接を離れることに応答して、閉鎖可能である。
【0089】
本発明は、統合の任意の可能な技術詳細レベルにおけるシステム、方法、またはコンピュータ・プログラム製品、あるいはその組合せでもよい。コンピュータ・プログラム製品は、本発明の態様をプロセッサに実行させるためのコンピュータ可読プログラム命令を有するコンピュータ可読ストレージ媒体(または複数の媒体)を含んでもよい。
【0090】
コンピュータ可読ストレージ媒体は、命令実行デバイスによる使用のための命令を保持および格納可能な有形デバイスであることが可能である。コンピュータ可読ストレージ媒体は、例えば、電子ストレージ・デバイス、磁気ストレージ・デバイス、光ストレージ・デバイス、電磁気ストレージ・デバイス、半導体ストレージ・デバイス、または前述の任意の適切な組合せでもよいがこれらに限定されない。コンピュータ可読ストレージ媒体のより具体的な例の完全に網羅されていないリストは、ポータブル・コンピュータ・ディスケット、ハードディスク、ランダム・アクセス・メモリ(RAM)、リード・オンリ・メモリ(ROM)、消去可能プログラマブル・リード・オンリ・メモリ(EPROMまたはフラッシュ・メモリ)、スタティック・ランダム・アクセス・メモリ(SRAM)、ポータブル・コンパクト・ディスク・リード・オンリ・メモリ(CD-ROM)、デジタル・バーサタイル・ディスク(DVD)、メモリ・スティック、フロッピー(R)・ディスク、命令を記録したパンチ・カードまたは溝内隆起構造などの機械的にエンコードされたデバイス、および前述の任意の適切な組合せを含む。本明細書で使用されるようなコンピュータ可読ストレージ媒体は、電波もしくは他の自由に伝搬する電磁波、導波路もしくは他の伝送媒体を通じて伝搬する電磁波(例えば、光ファイバ・ケーブルを通過する光パルス)、またはワイヤを通じて伝送される電気信号など、本質的に一時的な信号であると解釈されるべきではない。
【0091】
本明細書で説明されるコンピュータ可読プログラム命令は、コンピュータ可読ストレージ媒体からそれぞれのコンピューティング/処理デバイスに、あるいは、例えば、インターネット、ローカル・エリア・ネットワーク、ワイド・エリア・ネットワーク、もしくはワイヤレス・ネットワーク、またはその組合せといったネットワークを介して、外部コンピュータまたは外部ストレージ・デバイスに、ダウンロード可能である。ネットワークは、銅伝送ケーブル、光伝送ファイバ、ワイヤレス伝送、ルータ、ファイアウォール、スイッチ、ゲートウェイ・コンピュータ、またはエッジ・サーバ、あるいはその組合せを備えてもよい。各コンピューティング/処理デバイスのネットワーク・アダプタ・カードまたはネットワーク・インターフェースは、コンピュータ可読プログラム命令をネットワークから受信し、それぞれのコンピューティング/処理デバイス内のコンピュータ可読ストレージ媒体に格納するためにコンピュータ可読プログラム命令を転送する。
【0092】
本発明の動作を実行するためのコンピュータ可読プログラム命令は、アセンブラ命令、インストラクション・セット・アーキテクチャ(ISA)命令、機械語命令、機械依存命令、マイクロコード、ファームウェア命令、状態設定データ、集積回路用の構成データ、または、Smalltalk(R)、C++、もしくは同様のものなどのオブジェクト指向プログラミング言語、および「C」プログラミング言語もしくは類似のプログラミング言語などの手続き型プログラミング言語を含む、1つもしくは複数のプログラミング言語の任意の組合せで書かれたソース・コードもしくはオブジェクト・コードでもよい。コンピュータ可読プログラム命令は、全面的にユーザのコンピュータ上で、または、部分的にユーザのコンピュータ上で、スタンド・アロンのソフトウェア・パッケージとして、あるいは、部分的にユーザのコンピュータ上かつ部分的にリモート・コンピュータ上で、または全面的にリモート・コンピュータもしくはサーバ上で実行してもよい。後者のシナリオでは、リモート・コンピュータは、ローカル・エリア・ネットワーク(LAN)もしくはワイド・エリア・ネットワーク(WAN)を含む任意のタイプのネットワークを通じてユーザのコンピュータに接続されてもよく、または、接続は、(例えば、インターネット・サービス・プロバイダを使用してインターネットを通じて)外部コンピュータに対して行われてもよい。いくつかの実施形態では、例えば、プログラム可能論理回路、フィールド・プログラマブル・ゲート・アレイ(FPGA)、またはプログラマブル・ロジック・アレイ(PLA)を含む電子回路が、本発明の態様を実施するために、コンピュータ可読プログラム命令の状態情報を利用して電子回路を個別化にすることによって、コンピュータ可読プログラム命令を実行してもよい。
【0093】
本発明の態様は、本発明の実施形態による方法、装置(システム)、およびコンピュータ・プログラム製品のフローチャート図またはブロック図あるいはその両方を参照しながら本明細書で説明される。フローチャート図またはブロック図あるいはその両方の各ブロック、およびフローチャート図またはブロック図あるいはその両方におけるブロックの組合せは、コンピュータ可読プログラム命令によって実行可能であることが理解されよう。
【0094】
これらのコンピュータ可読プログラム命令は、コンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行する命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックで指定された機能/動作を実行するための手段を作り出すべく、汎用コンピュータ、専用コンピュータ、または、機械を生み出すための他のプログラム可能データ処理装置のプロセッサに提供されてもよい。これらのコンピュータ可読プログラム命令はまた、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックで指定された機能/動作の態様を実行する命令を含む製品を、命令を格納したコンピュータ可読ストレージ媒体が備えるべく、コンピュータ可読ストレージ媒体に格納されてもよく、コンピュータ、プログラム可能データ処理装置、または他のデバイス、あるいはその組合せに特定の様式で機能するように指図することができる。
【0095】
コンピュータ可読プログラム命令はまた、コンピュータ、他のプログラム可能装置、または他のデバイス上で実行する命令が、フローチャートまたはブロック図あるいはその両方の1つまたは複数のブロックで指定された機能/動作を実行するべく、コンピュータ実行処理を生み出すために、コンピュータ、他のプログラム可能装置、または他のデバイスで一連の動作ステップを実施するために、コンピュータ、他のプログラム可能データ処理装置、または他のデバイスにロードされてもよい。
【0096】
図中のフローチャートおよびブロック図は、本発明の様々な実施形態によるシステム、方法、およびコンピュータ・プログラム製品の可能な実装形態のアーキテクチャ、機能、および動作を示す。この点に関して、フローチャートまたはブロック図の中の各ブロックは、指定の論理機能を実施するための1つまたは複数の実行可能命令を含む、命令のモジュール、セグメント、または一部を表してもよい。いくつかの代替実装形態では、ブロックに記された機能は、図に記された順序とは無関係に行われてもよい。例えば、連続して示された2つのブロックは、実際には、実質的に同時に実行されてもよく、またはブロックは時には、含まれる機能に応じて逆の順序で実行されてもよい。ブロック図またはフローチャート図あるいはその両方の各ブロック、および、ブロック図またはフローチャート図あるいはその両方におけるブロックの組合せは、指定の機能もしくは動作を行うか、または、専用ハードウェアとコンピュータ命令との組合せを実行する、専用ハードウェア・ベースのシステムによって実行可能であることも指摘されることになる。
【0097】
本開示の様々な実施形態の説明は、例証のために提示されてきたが、網羅的であること、または開示の実施形態に限定されることを意図するものではない。説明された実施形態の範囲から逸脱することなく、多くの変更形態および変形形態が当業者には明らかであろう。本明細書で使用される専門用語は、実施形態の原理、実用的用途、もしくは市場で見つかる技術に対する技術的改善を最もよく説明するように、または、本明細書で開示された実施形態を当業者が理解できるように選ばれた。
【手続補正書】
【提出日】2024-07-23
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
コンピュータ実行方法であって、
第1のデバイスを含む複数のデバイスを識別することであって、前記複数のデバイスのうちの各デバイスが前記第1のデバイスの通信可能な近傍内にある、前記識別することと、
前記複数のデバイスのうちの各デバイスを含むアドホック・ネットワークを形成することと、
複数の利用可能なデータ・フィードを判定することであって、各データ・フィードが前記複数のデバイスのうちの1つのデバイスに関連付けられる、前記判定することと、
切り替えアイコンを構築することであって、前記切り替えアイコンが、利用可能な各データ・フィードのビューを含み、前記切り替えアイコンが、前記複数のフィードのうちの任意のフィードへのアクセスを可能にし、前記切り替えアイコンから選択されたフィードを表示するように構成される、前記構築することと、
前記切り替えアイコンを前記アドホック・ネットワーク内の各デバイスに送信することと
を含む、コンピュータ実行方法。
【請求項2】
前記複数のデバイスのうちの前記第1のデバイス上で、前記複数のデバイスのうちの第2のデバイスに関連付けられた第2のデータ・フィードを前記切り替えアイコンから選択することと、
前記第1のデバイス上に前記第2のデータ・フィードを表示することと
をさらに含む、請求項1に記載の方法。
【請求項3】
前記複数のデバイスのうちの各デバイス上に前記切り替えアイコンを表示することと、
前記第2のデバイス上で第3のデータ・フィードを選択することに応答して、前記第2のデバイス上に前記第3のデータ・フィードを表示することと
をさらに含む、請求項2に記載の方法。
【請求項4】
前記アドホック・ネットワークがメッシュ・ネットワークである、請求項1に記載の方法。
【請求項5】
前記複数のデバイスのうちの各デバイスが、カメラおよびマイクロフォンから生成されたビデオ・データ・フィードを含む、請求項1に記載の方法。
【請求項6】
前記複数のデバイスのうちの各デバイスが、各デバイスのセンサからの追加のデータ・フィードを含む、請求項5に記載の方法。
【請求項7】
前記第1のデバイスの前記通信可能な近傍にある新しいデバイスを識別することと、
前記新しいデバイスを前記アドホック・ネットワークに追加することと、
新しいデータ・フィードに基づいて、前記切り替えアイコンをアップデートすることと
をさらに含む、請求項1に記載の方法。
【請求項8】
前記切り替えアイコンが、前記アドホック・ネットワーク内の各デバイスの相対的ロケーションを表示するように構成される、請求項1に記載の方法。
【請求項9】
前記複数の前記データ・フィードに基づいて、前記データ・フィードのサブジェクトを識別することと、
前記データ・フィードの前記サブジェクトの相対的ロケーションを示すために前記切り替えアイコンをアップデートすることと
をさらに含む、請求項8に記載の方法。
【請求項10】
前記第1のデバイスを1次デバイスとして指名することであって、前記1次デバイスが、各デバイス上に表示されることになるデータ・フィードを前記切り替えアイコンから選択するように構成される、前記指名することと、
前記1次デバイスの相対的ロケーションを示すために前記切り替えアイコンをアップデートすることと
をさらに含む、請求項8に記載の方法。
【請求項11】
システムであって、
プロセッサと、
コンピュータ可読ストレージ媒体であって、前記プロセッサに通信連結され、前記プロセッサによって実行されると、
第1のデバイスを含む複数のデバイスを識別することであって、前記複数のデバイスのうちの各デバイスが前記第1のデバイスの通信可能な近傍内にある、前記識別すること、
前記複数のデバイスのうちの各デバイスを含むアドホック・ネットワークを形成すること、
複数の利用可能なデータ・フィードを判定することであって、各データ・フィードが前記複数のデバイスのうちの1つのデバイスに関連付けられる、前記判定すること、
切り替えアイコンを構築することであって、前記切り替えアイコンが、利用可能な各データ・フィードのビューを含み、前記切り替えアイコンが、前記複数のフィードのうちの任意のフィードへのアクセスを可能にし、前記切り替えアイコンから選択されたフィードを表示するように構成される、前記構築すること、および
前記切り替えアイコンを前記アドホック・ネットワーク内の各デバイスに送信すること
を前記プロセッサに行わせるように構成されたプログラム命令を格納する、前記コンピュータ可読ストレージ媒体と
を備える、システム。
【請求項12】
前記プログラム命令がさらに、
前記複数のデバイスのうちの前記第1のデバイス上で、前記複数のデバイスのうちの第2のデバイスに関連付けられた第2のデータ・フィードを前記切り替えアイコンから選択することと、
前記第1のデバイス上に前記第2のデータ・フィードを表示することと
を前記プロセッサに行わせるように構成される、請求項11に記載のシステム。
【請求項13】
前記プログラム命令がさらに、
前記複数のデバイスのうちの各デバイス上に前記切り替えアイコンを表示することと、
前記第2のデバイス上で第3のデータ・フィードを選択することに応答して、前記第2のデバイス上に前記第3のデータ・フィードを表示することと
を前記プロセッサに行わせるように構成される、請求項12に記載のシステム。
【請求項14】
前記アドホック・ネットワークがメッシュ・ネットワークである、請求項11に記載のシステム。
【請求項15】
前記複数のデバイスのうちの各デバイスが、カメラおよびマイクロフォンから生成されたビデオ・データ・フィードを含む、請求項11に記載のシステム。
【請求項16】
コンピュータに、請求項1ないし10のいずれかに記載の方法を実行させる、コンピュータ・プログラム。
【国際調査報告】