IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ ハーマン インターナショナル インダストリーズ インコーポレイテッドの特許一覧

特許7325966仮想現実環境向けモバイルスピーカシステム
<図1>
  • 特許-仮想現実環境向けモバイルスピーカシステム 図1
  • 特許-仮想現実環境向けモバイルスピーカシステム 図2
  • 特許-仮想現実環境向けモバイルスピーカシステム 図3
  • 特許-仮想現実環境向けモバイルスピーカシステム 図4
  • 特許-仮想現実環境向けモバイルスピーカシステム 図5
  • 特許-仮想現実環境向けモバイルスピーカシステム 図6A
  • 特許-仮想現実環境向けモバイルスピーカシステム 図6B
  • 特許-仮想現実環境向けモバイルスピーカシステム 図6C
  • 特許-仮想現実環境向けモバイルスピーカシステム 図7
  • 特許-仮想現実環境向けモバイルスピーカシステム 図8
  • 特許-仮想現実環境向けモバイルスピーカシステム 図9A
  • 特許-仮想現実環境向けモバイルスピーカシステム 図9B
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-08-04
(45)【発行日】2023-08-15
(54)【発明の名称】仮想現実環境向けモバイルスピーカシステム
(51)【国際特許分類】
   H04S 7/00 20060101AFI20230807BHJP
   H04R 1/32 20060101ALI20230807BHJP
   H04R 5/02 20060101ALI20230807BHJP
【FI】
H04S7/00 380
H04R1/32 310Z
H04R5/02 Z
【請求項の数】 20
(21)【出願番号】P 2019005147
(22)【出願日】2019-01-16
(65)【公開番号】P2019126036
(43)【公開日】2019-07-25
【審査請求日】2021-12-14
(31)【優先権主張番号】15/873,852
(32)【優先日】2018-01-17
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】592051453
【氏名又は名称】ハーマン インターナショナル インダストリーズ インコーポレイテッド
(74)【代理人】
【識別番号】100078282
【弁理士】
【氏名又は名称】山本 秀策
(74)【代理人】
【識別番号】100113413
【弁理士】
【氏名又は名称】森下 夏樹
(72)【発明者】
【氏名】スヴェン クラッツ
(72)【発明者】
【氏名】アダム ボーランガー
(72)【発明者】
【氏名】ジョセフ ヴァーベック
(72)【発明者】
【氏名】ステファン マルティ
【審査官】冨澤 直樹
(56)【参考文献】
【文献】特開2007-301036(JP,A)
【文献】特開2017-069804(JP,A)
【文献】特表2019-526193(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04S 1/00-7/00
H04R 1/32
H04R 5/02
(57)【特許請求の範囲】
【請求項1】
コンピューティングシステムであって、
命令を含んだメモリと、
前記メモリに結合され、前記命令を実行するとき、
仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた音が一連の1つ以上のロボットスピーカマッピングの基準を満たすかどうかを判断するステップと、
前記仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた前記音が前記一連の1つ以上のロボットスピーカマッピングの基準を満たさないと判断したことに応答して、1つ以上の据え付けのオーディオ装置を介して前記仮想オブジェクトに関連付けられた前記音を出力するステップと、
前記仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた前記音が前記一連の1つ以上のロボットスピーカマッピングの基準を満たすと判断したことに応答して、
仮想環境に含まれる前記仮想オブジェクトに関連付けられた前記音をロボットスピーカにマッピングすること
前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、前記ロボットスピーカに情報を送信すること及び、
前記ロボットスピーカに音声信号を送信することであって、前記ロボットスピーカが、前記音声信号に基づいて及び前記物理的環境内の前記位置で、前記仮想オブジェクトに関連付けられた前記音を出力する、こと
を実行するステップと
を実行するように構成されるプロセッサと
を備えるコンピューティングシステム。
【請求項2】
前記命令が、さらに、前記プロセッサを、
前記仮想環境に含まれる第2の仮想オブジェクトに関連付けられた第2の音を前記ロボットスピーカにマッピングすることと
前記ロボットスピーカを前記仮想環境内の前記第2の仮想オブジェクトの位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと
前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記第2の仮想オブジェクトに関連付けられた第2の音を出力する、ことと
を実行するように構成する、請求項1に記載のシステム。
【請求項3】
前記命令が、さらに、前記プロセッサを、前記ロボットスピーカに前記第2の音をマッピングする前に、前記ロボットスピーカと、前記仮想オブジェクトに関連付けられた前記音との間のマッピングを削除するように構成する、請求項2に記載のシステム。
【請求項4】
前記命令が、さらに、前記プロセッサを、
前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの第2の位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと
前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記仮想オブジェクトに関連付けられた第2の音を出力する、ことと
を実行するように構成する、請求項1に記載のシステム。
【請求項5】
前記命令が、さらに、前記プロセッサを、前記仮想環境の中の前記仮想オブジェクトの前記位置と、前記仮想環境の中のユーザー位置との間の距離が所定の距離範囲内にあると判断することに基づいて、前記仮想オブジェクトに関連付けられた前記音が前記ロボットスピーカにマッピングされると判断するように構成する、請求項1に記載のシステム。
【請求項6】
前記命令が、さらに、前記プロセッサを、前記仮想オブジェクトに関連付けられた前記音が所定の周波数範囲内にあると判断することに基づいて、前記仮想オブジェクトに関連付けられた前記音が前記ロボットスピーカにマッピングされると判断するように構成する、請求項1に記載のシステム。
【請求項7】
前記命令が、さらに、前記プロセッサを、前記仮想環境に含まれる複数の仮想オブジェクトのそれぞれについて、マッピング優先順位を決定するように構成し、前記複数の仮想オブジェクトが前記仮想オブジェクトを含む、請求項1に記載のシステム。
【請求項8】
前記命令が、さらに、前記プロセッサを、
前記複数の仮想オブジェクトに含まれる第2の仮想オブジェクトが前記仮想オブジェクトよりもより高いマッピング優先順位を有すると判断することと、
前記判断することに基づいて、
前記仮想オブジェクトに関連付けられた前記音と前記ロボットスピーカとの間のマッピングを削除すること、及び
前記第2の仮想オブジェクトに関連付けられた音を前記ロボットスピーカにマッピングすること
を実行することと
を実行するように構成する、請求項7に記載のシステム。
【請求項9】
前記仮想オブジェクトに関連付けられた前記音が、前記仮想オブジェクトによって出される音を含む、請求項1に記載のシステム。
【請求項10】
前記仮想オブジェクトに関連付けられた前記音が、前記仮想オブジェクトによって反射される音を含む、請求項1に記載のシステム。
【請求項11】
コンピュータにより実装される方法であって、
仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた音が一連の1つ以上のロボットスピーカマッピングの基準を満たすかどうかを判断することと、
前記仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた前記音が前記一連の1つ以上のロボットスピーカマッピングの基準を満たさないと判断したことに応答して、1つ以上の据え付けのオーディオ装置を介して前記仮想オブジェクトに関連付けられた前記音を出力することと、
前記仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた前記音が前記一連の1つ以上のロボットスピーカマッピングの基準を満たすと判断したことに応答して、
仮想環境に含まれる前記仮想オブジェクトに関連付けられた前記音をロボットスピーカにマッピングすること、
前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、前記ロボットスピーカに情報を送信すること、及び、
前記ロボットスピーカに音声信号を送信することであって、前記ロボットスピーカが、前記音声信号に基づいて及び前記物理的環境内の前記位置で、前記仮想オブジェクトに関連付けられる1つ以上の音を出力する、こ
を実行することと
を含む、コンピュータにより実装される方法。
【請求項12】
さらに、前記ロボットスピーカに前記音声信号を送信する前に、前記物理的環境内の前記位置及び前記仮想環境内の前記仮想オブジェクトの前記位置のうちの少なくとも1つに基づいて前記音声信号に対して1つ以上の処理動作を実行することを含む、請求項11に記載の方法。
【請求項13】
前記1つ以上の処理動作が、振幅調整、均等化、空間化、及びビーム形成のうちの少なくとも1つを含む、請求項12に記載の方法。
【請求項14】
さらに、
前記仮想環境に含まれる第2の仮想オブジェクトに関連付けられた第2の音を前記ロボットスピーカにマッピングすることと、
前記ロボットスピーカを前記仮想環境内の前記第2の仮想オブジェクトの位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと、
前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記第2の仮想オブジェクトに関連付けられた第2の音を出力する、ことと
を含む、請求項11に記載の方法。
【請求項15】
さらに、
前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの第2の位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと、
前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記仮想オブジェクトに関連付けられた第2の音を出力する、ことと
を含む、請求項11に記載の方法。
【請求項16】
命令を記憶したコンピュータ可読記憶媒体であって、前記命令は、プロセッサによって実行されたときに、前記プロセッサに方法を実行させ、前記方法は、
仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた音が一連の1つ以上のロボットスピーカマッピングの基準を満たすかどうかを判断することと、
前記仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた前記音が前記一連の1つ以上のロボットスピーカマッピングの基準を満たさないと判断したことに応答して、1つ以上の据え付けのオーディオ装置を介して前記仮想オブジェクトに関連付けられた前記音を出力することと、
前記仮想オブジェクトまたは前記仮想オブジェクトに関連付けられた前記音が前記一連の1つ以上のロボットスピーカマッピングの基準を満たすと判断したことに応答して、
仮想環境に含まれる前記仮想オブジェクトに関連付けられた前記音をロボットスピーカにマッピングすること、
前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、前記ロボットスピーカに情報を送信すること、及び、
前記ロボットスピーカに音声信号を送信することであって、前記ロボットスピーカが、前記音声信号に基づいて及び前記物理的環境内の前記位置で、前記仮想オブジェクトに関連付けられる1つ以上の音を出力する、こと
を実行することと
を含む、コンピュータ可読記憶媒体。
【請求項17】
前記方法は、さらに、前記ロボットスピーカに前記音声信号を送信する前に、前記物理的環境内の前記位置及び前記仮想環境内の前記仮想オブジェクトの前記位置のうちの少なくとも1つに基づいて前記音声信号に対して1つ以上の処理動作を実行することを含む、請求項16に記載のコンピュータ可読記憶媒体。
【請求項18】
前記1つ以上の処理動作が、振幅調整、均等化、空間化、及びビーム形成のうちの少なくとも1つを含む、請求項17に記載のコンピュータ可読記憶媒体。
【請求項19】
前記方法は、さらに、
前記仮想環境に含まれる第2の仮想オブジェクトに関連付けられた第2の音を前記ロボットスピーカにマッピングすることと、
前記ロボットスピーカを前記仮想環境内の前記第2の仮想オブジェクトの位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと、
前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記第2の仮想オブジェクトに関連付けられた第2の音を出力する、ことと
を含む、請求項16に記載のコンピュータ可読記憶媒体。
【請求項20】
前記方法は、さらに、
前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの第2の位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと、
前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記仮想オブジェクトに関連付けられた第2の音を出力する、ことと
を含む、請求項16に記載のコンピュータ可読記憶媒体。
【発明の詳細な説明】
【技術分野】
【0001】
種々の実施形態は、概してオーディオシステムに関し、より詳細には仮想現実環境向けのモバイルスピーカシステムに関する。
【背景技術】
【0002】
関心が高まっている技術分野は、仮想現実である。仮想現実システムは概して、種々のタイプの仮想オブジェクト及び係るオブジェクトによって発せられる音を含むコンピュータによって生成される仮想環境の中に、ユーザーを没頭させる。仮想現実の用途は、例えばエンターテインメント、ゲーム、医療、通信、ならびに人材育成及び人材開発を含む場合がある。
【0003】
従来の仮想現実技術は、通常、ユーザーによって着用される仮想現実ヘッドセットを含む。コンピューティングシステムは、ヘッドセットを介してユーザーに提示される仮想環境を含む仮想現実コンテンツを生成する。また、コンピューティングシステムは、ゲームコントローラを介した対話等のユーザー対話またはユーザー自身によって実行される動きに応えて仮想現実コンテンツの態様を更新してもよい。
【0004】
上述したように、仮想環境は、仮想現実の中で音を出す及び/または音に影響を与える任意の数の仮想オブジェクトを含んでよい。これらの仮想オブジェクトに関連付けられた音は、通常、ヘッドフォン、VRヘッドセットに含まれるスピーカ、及び/またはユーザーが位置する物理的環境に含まれるスピーカ等の1つ以上のオーディオ装置を介してユーザーに出力される。
【0005】
従来のシステムは、概して、仮想環境に含まれる種々のタイプのオブジェクトと関連付けられたサウンドエフェクトを含む動的な音声出力を提供することができるが、出力された音声は、仮想現実コンテンツの種々の態様を正確に表さない場合がある。例えば、ユーザーから特定の距離、及びユーザーの上方で特定の距離、離れて位置する仮想オブジェクトの場合、ユーザーに音声を出力するためにヘッドフォンまたはスピーカを実装する従来のシステムは、ユーザーが、仮想オブジェクトが仮想環境の中で配置される特定の場所から発しているとして、仮想オブジェクトによって発せられる音を知覚するように音声を出力できない場合がある。
【0006】
上記が示すように、仮想現実環境と関連付けられた音声を生成し、出力するためのより効果的な技術が役に立つであろう。
【発明の概要】
【課題を解決するための手段】
【0007】
一実施形態は、ロボットスピーカに対して音をマッピングするための方法を説明する。方法は、ロボットスピーカに対して、仮想環境に含まれる仮想オブジェクトに関連付けられた音をマッピングすることと、ロボットスピーカに情報を送信して、仮想環境内の仮想オブジェクトの位置に対応する物理的環境の位置にロボットスピーカを移動させることと、ロボットスピーカに音声信号を送信することとを含み、ロボットスピーカは、音声信号に基づいて及び物理的環境の位置で、仮想環境と関連付けられた音を出力する。
【0008】
追加の実施形態は、とりわけ、上述した方法を実施するように構成されたシステム、デバイス、及びコンピュータ可読記憶媒体を提供する。
【0009】
開示されている技術のうちの少なくとも1つの優位点は、仮想現実コンテンツのユーザーに出力される音声が、仮想現実コンテンツをより正確に表す点である。特に、ユーザーが聞く音声は、ユーザーが仮想現実コンテンツ内で見るものに基づいたユーザーの音声に対する期待により密接に一致する。結果として、音声はより没入型の仮想現実経験を促進する。
【0010】
上記に記載した特徴を詳細に理解できるように、上記に簡略に要約された種々の実施形態のより詳細な説明は、添付図面にそのうちのいくつかが示される実施形態を参照することによって得られてよい。ただし、添付図面は典型的な実施形態を示すにすぎず、したがってその範囲を制限すると見なされるべきではなく、意図される実施形態のために他の等しく効果的な実施形態を認めてよいことに留意されたい。
例えば、本願は以下の項目を提供する。
(項目1)
コンピューティングシステムであって、
命令を含んだメモリと、
上記メモリに結合され、上記命令を実行するとき、
仮想環境に含まれる仮想オブジェクトに関連付けられた音をロボットスピーカにマッピングするステップと、
上記ロボットスピーカを上記仮想環境内の上記仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、上記ロボットスピーカに情報を送信するステップと、
上記ロボットスピーカに音声信号を送信するステップであって、上記ロボットスピーカが、上記音声信号に基づいて及び上記物理的環境内の上記位置で、上記仮想オブジェクトに関連付けられた上記音を出力する、上記音声信号を送信するステップと
を実行するように構成されるプロセッサと
を備える、上記コンピューティングシステム。
(項目2)
上記命令が、さらに、上記プロセッサを、
上記仮想環境に含まれる第2の仮想オブジェクトに関連付けられた第2の音を上記ロボットスピーカにマッピングする、
上記ロボットスピーカを上記仮想環境内の上記第2の仮想オブジェクトの位置に相当する上記物理的環境内の第2の位置に移動させるために、上記ロボットスピーカに第2の情報を送信する、
上記ロボットスピーカに第2の音声信号を送信することであって、上記ロボットスピーカが、上記第2の音声信号に基づいて及び上記物理的環境内の上記第2の位置で、上記第2の仮想オブジェクトに関連付けられた第2の音を出力する、上記送信する
ように構成する、上記項目に記載のシステム。
(項目3)
上記命令が、さらに、上記プロセッサを、上記ロボットスピーカに上記第2の音をマッピングする前に、上記ロボットスピーカと、上記仮想オブジェクトに関連付けられた上記音との間のマッピングを削除するように構成する、上記項目のいずれか一項に記載のシステム。
(項目4)
上記命令が、さらに、上記プロセッサを、
上記ロボットスピーカを上記仮想環境内の上記仮想オブジェクトの第2の位置に相当する上記物理的環境内の第2の位置に移動させるために、上記ロボットスピーカに第2の情報を送信する、
上記ロボットスピーカに第2の音声信号を送信することであって、上記ロボットスピーカが、上記第2の音声信号に基づいて及び上記物理的環境内の上記第2の位置で、上記仮想オブジェクトに関連付けられた第2の音を出力する、上記第2の音声信号を送信する
ように構成する、上記項目のいずれか一項に記載のシステム。
(項目5)
上記命令が、さらに、上記プロセッサを、上記仮想環境の中の上記仮想オブジェクトの上記位置と、上記仮想環境の中のユーザー位置との間の距離が所定の距離範囲内にあると判断することに基づいて、上記仮想オブジェクトに関連付けられた上記音が上記ロボットスピーカにマッピングされると判断するように構成する、上記項目のいずれか一項に記載のシステム。
(項目6)
上記命令が、さらに、上記プロセッサを、上記仮想オブジェクトに関連付けられた上記音が所定の周波数範囲内にあると判断することに基づいて、上記仮想オブジェクトに関連付けられた上記音が上記ロボットスピーカにマッピングされると判断するように構成する、上記項目のいずれか一項に記載のシステム。
(項目7)
上記命令が、さらに、上記プロセッサを、上記仮想環境に含まれる複数の仮想オブジェクトのそれぞれについて、マッピング優先順位を決定するように構成し、上記複数の仮想オブジェクトが上記仮想オブジェクトを含む、上記項目のいずれか一項に記載のシステム。
(項目8)
上記命令が、さらに、上記プロセッサを、
上記複数の仮想オブジェクトに含まれる第2の仮想オブジェクトが上記仮想オブジェクトよりもより高いマッピング優先順位を有すると判断する、ならびに
上記判断することに基づいて、
上記仮想オブジェクトに関連付けられた上記音と上記ロボットスピーカとの間のマッピングを削除する、及び
上記第2の仮想オブジェクトに関連付けられた音を上記ロボットスピーカにマッピングする
ように構成する、上記項目のいずれか一項に記載のシステム。
(項目9)
上記仮想オブジェクトに関連付けられた上記音が、上記仮想オブジェクトによって出される音を含む、上記項目のいずれか一項に記載のシステム。
(項目10)
上記仮想オブジェクトに関連付けられた上記音が、上記仮想オブジェクトによって反射される音を含む、上記項目のいずれか一項に記載のシステム。
(項目11)
コンピュータにより実装される方法であって、
仮想環境に含まれる複数の仮想オブジェクトに含まれる仮想オブジェクトをロボットスピーカにマッピングすることと、
上記ロボットスピーカを上記仮想環境内の上記仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、上記ロボットスピーカに情報を送信することと、
上記ロボットスピーカに音声信号を送信することであって、上記ロボットスピーカが、上記音声信号に基づいて及び上記物理的環境内の上記位置で、上記仮想オブジェクトに関連付けられる1つ以上の音を出力する、上記音声信号を送信することと
を含む、上記コンピュータにより実装される方法。
(項目12)
さらに、上記ロボットスピーカに上記音声信号を送信する前に、上記物理的環境内の上記位置及び上記仮想環境内の上記仮想オブジェクトの上記位置のうちの少なくとも1つに基づいて上記音声信号に対して1つ以上の処理動作を実行することを含む、上記項目に記載の方法。
(項目13)
上記1つ以上の処理動作が、振幅調整、均等化、空間化、及びビーム形成のうちの少なくとも1つを含む、上記項目のいずれか一項に記載の方法。
(項目14)
さらに、
上記仮想環境に含まれる第2の仮想オブジェクトに関連付けられた第2の音を上記ロボットスピーカにマッピングすることと、
上記ロボットスピーカを上記仮想環境内の上記第2の仮想オブジェクトの位置に相当する上記物理的環境内の第2の位置に移動させるために、上記ロボットスピーカに第2の情報を送信することと、
上記ロボットスピーカに第2の音声信号を送信することであって、上記ロボットスピーカが、上記第2の音声信号に基づいて及び上記物理的環境内の上記第2の位置で、上記第2の仮想オブジェクトに関連付けられた第2の音を出力する、上記音声信号を送信することと
を含む、上記項目のいずれか一項に記載の方法。
(項目15)
さらに、
上記ロボットスピーカを上記仮想環境内の上記仮想オブジェクトの第2の位置に相当する上記物理的環境内の第2の位置に移動させるために、上記ロボットスピーカに第2の情報を送信することと、
上記ロボットスピーカに第2の音声信号を送信することであって、上記ロボットスピーカが、上記第2の音声信号に基づいて及び上記物理的環境内の上記第2の位置で、上記仮想オブジェクトに関連付けられた第2の音を出力する、上記第2の音声信号を送信することと
を含む、上記項目のいずれか一項に記載の方法。
(項目16)
オーディオ装置であって、
モビリティデバイスと、
音声出力装置と、
上記モビリティデバイス及び上記音声出力装置に結合される1つ以上の回路であって、
ターゲット位置を受け取ることであって、上記ターゲット位置が、仮想環境の中の仮想オブジェクトの位置に相当する、上記受け取る、
上記モビリティデバイスを介して上記オーディオ装置を上記ターゲット位置に移動させる、
上記音声出力装置を介して、上記ターゲット位置で上記仮想オブジェクトに関連付けられた音を出力する
ように構成された上記1つ以上の回路と
を備える、上記オーディオ装置。
(項目17)
上記モビリティデバイスが、ホイール、ロボット付属品、ガス推進構成部品、及び格納可能なテザーのうちの少なくとも1つを備える、上記項目に記載のオーディオ装置。
(項目18)
上記1つ以上の回路が、さらに、上記仮想環境の中の上記仮想オブジェクトの動きに応えて第2のターゲット位置に上記オーディオ装置を移動させるように構成され、上記第2のターゲット位置が、上記動きの後の上記仮想環境の中の上記仮想オブジェクトの第2の位置に相当する、上記項目のいずれか一項に記載のオーディオ装置。
(項目19)
上記1つ以上の回路が、さらに、
第2のターゲット位置を受け取ることであって、上記第2のターゲット位置が、上記仮想環境の中の第2の仮想オブジェクトの位置に相当する、上記受け取る、
上記モビリティデバイスを介して上記第2のターゲット位置に上記オーディオ装置を移動させる、
上記音声出力装置を介して、上記第2のターゲット位置で上記第2の仮想オブジェクトに関連付けられた音を出力する
ように構成される、上記項目のいずれか一項に記載のオーディオ装置。
(項目20)
上記モビリティデバイスが、ホバリング構成部品を備える、上記項目のいずれか一項に記載のオーディオ装置。
(摘要)
コンピューティングシステムは、命令を含んだメモリ、及びメモリに結合されるプロセッサを含む。プロセッサは、命令を実行するとき、仮想環境に含まれる仮想オブジェクトに関連付けられた音をロボットスピーカにマッピングするステップと、ロボットスピーカを仮想環境内の仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、ロボットスピーカに情報を送信するステップと、ロボットスピーカに音声信号を送信するステップとを実行するように構成される。ロボットスピーカは、音声信号に基づいて及び物理的環境内の位置で、仮想オブジェクトに関連付けられた音を出力する。
【図面の簡単な説明】
【0011】
図1】種々の実施形態の1つ以上の態様に従って、1つ以上のロボットスピーカを実装する仮想現実システムを示す概念図である。
図2】種々の実施形態の1つ以上の態様に従って、図1の仮想現実システムのコンピューティングデバイスを示すブロック図である。
図3】種々の実施形態の1つ以上の態様に従って、図1のロボットスピーカを示すブロック図である。
図4】種々の実施形態の1つ以上の態様に従って、ロボットスピーカに仮想オブジェクトをマッピングするための方法ステップの流れ図である。
図5】種々の実施形態の1つ以上の態様に従って、ロボットスピーカを介して仮想オブジェクトに関連付けられた音声を出力するための方法ステップの流れ図である。
図6A】種々の実施形態の1つ以上の態様に従って、ホイールを有するロボットスピーカを介して仮想オブジェクトに関連付けられた音を出力するための技術を示す図である。
図6B】種々の実施形態の1つ以上の態様に従って、ホイールを有するロボットスピーカを介して仮想オブジェクトに関連付けられた音を出力するための技術を示す図である。
図6C】種々の実施形態の1つ以上の態様に従って、ホイールを有するロボットスピーカを介して仮想オブジェクトに関連付けられた音を出力するための技術を示す図である。
図7】種々の実施形態の1つ以上の態様に従って、そのうちの2つ以上が1つ以上のラインアレイに配置されてよい、複数のロボットスピーカを示す図である。
図8】種々の実施形態の1つ以上の態様に従って、構造上に配置される複数のロボットスピーカを示す図である。
図9A】種々の実施形態の1つ以上の態様に従って、天井から吊り下げられる複数のロボットスピーカ、及びガス推進によるロボットスピーカの動きを示す図である。
図9B】種々の実施形態の1つ以上の態様に従って、天井から吊り下げられる複数のロボットスピーカ、及びガス推進によるロボットスピーカの動きを示す図である。
【発明を実施するための形態】
【0012】
以下の説明では、種々の実施形態のより完全な理解を提供するために多数の具体的な詳細が説明される。しかしながら、種々の実施形態が、これらの具体的な詳細のうちの1つ以上なしで実施され得ることは、当業者に明らかになるであろう。
【0013】
図1は、種々の実施形態の1つ以上の態様に従って、1つ以上のロボットスピーカを実装する仮想現実システムを示す概念図である。図示するように、VRシステム100は、VRヘッドセット110及び1つ以上のコンピューティングデバイス112を含む。VRシステム100は、1つ以上のロボットスピーカ108と通信で結合される。図示するように、VRシステム100、ロボットスピーカ108、及びユーザー102は、物理的環境104に位置する。種々の実施形態では、物理的環境104は、開かれた環境(例えば、野原)または囲まれた環境(例えば、壁及び天井を有する部屋)であってよい。物理的環境104は、物理的環境104の中の壁、天井、床、物理的オブジェクト等(不図示)の存在または欠如に基づいた種々の音響特性を有してよい。本明細書に説明する実施形態が、VRシステム100で実装されたとして説明されているが、説明されている実施形態は、任意の種類の仮想環境コンピューティングシステム(例えば、拡張現実システム)で実装されてよいことが理解されるべきである。
【0014】
一般に、VRシステム100は、例えば1つ以上の仮想オブジェクトを含んだ仮想環境等のVRコンテンツを生成し、ユーザー102から受け取られた入力に応えてVRコンテンツを更新する。VRコンテンツは、概して視覚コンテンツ(例えば、仮想オブジェクト)と、視覚コンテンツに相当する音声コンテンツ(例えば、仮想オブジェクトによって出される音)の両方を含む。視覚コンテンツは、1つ以上のディスプレイ装置(例えば、VRヘッドセット110に取り付けられる、またはそれ以外の場合VRヘッドセット110に結合される1つ以上のディスプレイ)を介してユーザー102に表示されてよい。音声コンテンツは、1つ以上のロボットスピーカ108を介して、及び任意選択で1つ以上の追加の据え付けオーディオ装置(例えば、ヘッドフォン、VRヘッドセット110上の1つ以上のスピーカ、物理的環境104に配置される1つ以上の固定スピーカ)を介してユーザー102に提示されてよい。
【0015】
従来のVR手法は、通常、例えばユーザーによって着用されるヘッドフォンまたは物理的環境に含まれる固定スピーカ等の据え付けオーディオ装置を介して音声コンテンツを出力する。上述したように、据え付けオーディオ装置を介して出力される音声コンテンツは、仮想環境及び/または仮想環境に含まれる仮想オブジェクトを正確に表さない場合がある。例えば、固定スピーカによって出力される音は、ユーザーと、仮想環境に含まれる仮想オブジェクトとの間の距離、方向、及び/または動きを正確に反映しない場合がある。
【0016】
したがって、種々の実施形態では、VRシステム100は、仮想環境の中で生成されている1つ以上の音を識別し、音(複数可)が、1つ以上のロボットスピーカ108を介して出力されるための候補であるかどうかを判断する。例えば、特定の仮想オブジェクトによって出されるまたはそれ以外の場合、特定の仮想オブジェクトに関連付けられた音は、仮想オブジェクトがロボットスピーカ108にマッピングされるための候補であり、かつ例えば仮想オブジェクトが仮想環境の中のユーザー102の位置から指定された距離範囲内にある等、一連の1つ以上の基準を満たす場合、ロボットスピーカ108を介して出力されてよい。仮想オブジェクト及び/または音がロボットスピーカ108を介して出力されるための候補であり、かつロボットスピーカ108が音を出力するために利用できる場合、次いで音及び/または仮想オブジェクトはロボットスピーカ108にマッピングされる。ロボットスピーカ108は、次いで音が仮想環境内で発せられている(または発せられる)位置に相応する物理的環境104の中の位置に移動されてよい。音は、次いで仮想環境の中の対応する仮想オブジェクトの位置、向き、動き等をより正確に反映する没入型聴覚環境を生成するために、ロボットスピーカ108を介して出力される。
【0017】
いくつかの実施形態では、ユーザー102は、物理的環境104の中で場所または向きを変更する(例えば、ジェスチャ、ゲームコントローラ、ジョイスティック等を使用する入力を介して仮想環境の中で移動するまたは向きを変更する)ことなく、仮想環境の中で移動するまたは向きを変更する、及び/またはVRコンテンツと対話するので、ロボットスピーカ108は、仮想環境の中でユーザー102の更新された位置及び/または向きを反映するために物理的環境104の中で配置し直されてよい。さらに、ロボットスピーカ108は、ユーザー102が、物理的環境104の中で移動したまたは向きを変更したかどうか、あるいは仮想環境の中のユーザー102の位置及び/または向きが変化したかどうかに関わりなく、仮想環境の中の仮想オブジェクトの位置及び向きを反映するために物理的環境104の中で配置し直されてよい。
【0018】
図示するように、VRシステム100は、1つ以上のコンピューティングデバイス112を含んでよい。種々の実施形態では、コンピューティングデバイス(複数可)112は、ユーザー入力に応えて、VRコンテンツを生成し、VRコンテンツを更新する。いくつかの実施形態では、コンピューティングデバイス(複数可)112は、図1に示すように、VRヘッドセット110とは別個であり、VRヘッドセット110と通信で結合されている。さらに、いくつかの実施形態では、コンピューティングデバイス(複数可)112は、VRヘッドセット110と統合される、及び/またはVRヘッドセット110に結合される。VRシステム100で実装されるであろうコンピューティングデバイス112の例は、図2と併せてさらに詳細に以下に説明する。
【0019】
図示するように、VRヘッドセット110は、VRシステム100のユーザー102によって着用されるように構成される。VRヘッドセット110は、有線接続(例えば、1つ以上のケーブル、コネクタ等)及び/または無線接続(例えば、Wi-Fi、Bluetooth(登録商標)等)を介してコンピューティングデバイス(複数可)112に通信で結合されてよい。VRヘッドセット110は、1つ以上の入出力装置を含んでよく、該入出力装置のうちの1つ以上は、コンピューティングデバイス(複数可)112と連動して動作してよい。例えば、VRヘッドセット110は、1つ以上のセンサ(例えば、慣性センサ、加速度計、ジャイロスコープ、磁力計、近接センサ等)を含んでよい。1つ以上のセンサからのデータは、ユーザー102の位置、ユーザー102の動き、ユーザー102の頭部の絶対向き及び/または相対向き106(及び、相応してVRヘッドセット110の絶対向き及び相対向き)、VRヘッドセットがユーザー102によって着用されているかどうか等を決定しうるコンピューティングデバイス(複数可)112に送信されてよい。さらに、VRヘッドセット110は、1つ以上の視覚出力装置(例えば、コンピューティングデバイス(複数可)112から受け取られる視覚コンテンツを出力するためのディスプレイ(複数可))を含んでよい。VRヘッドセット110は、さらに、1つ以上の音声出力装置(例えば、コンピューティングデバイス(複数可)112から受け取られる音声コンテンツを出力するためのヘッドフォン、統合されたスピーカ等)を含んでよい。
【0020】
本明細書で使用するように、物理的環境104のユーザー102の位置は、物理的環境104のx軸、y軸、及びz軸に沿った三次元空間内に定義されてよい。物理的環境104内のユーザー102の向きは、ユーザー102が、物理的環境104の三次元空間の中で向いている方向として定義されてよい。向きは、絶対基準フレームに対して、または物理的環境104内の基準位置もしくはオブジェクトに対して定義されてよい。
【0021】
VRシステム100は、コンピューティングデバイス(複数可)112及び/またはVRヘッドセット110に結合される1つ以上の入力装置(不図示)を含んでよい。例えば、VRヘッドセット110は、ユーザー入力を受け取るための1つ以上の入力装置(例えば、ボタン、スイッチ、タッチパネル、マイク等)を含んでよい。また、VRシステム100は、(例えば、有線接続または無線接続によって)コンピューティングデバイス(複数可)112及び/またはVRヘッドセット110に通信で結合され、ユーザー102によって操作されるように構成される1つ以上の別々のコントローラデバイス(例えば、ゲームパッド、ジョイスティック、他のハンドヘルドコントローラデバイス)を含んでもよい。VRシステム100は、入力装置(例えば、VRコンテンツと対話する入力、メニューナビゲーション入力、音声入力、音量変更入力)を介してユーザー102から入力を受け取ってよい。VRシステム100は、入力装置を介して受け取られる入力に応えてVRコンテンツを更新してよい。いくつかの実施形態では、入力装置の1つ以上は、ユーザー102に触覚フィードバックを提供してもよい。
【0022】
各ロボットスピーカ108は、1つ以上の音声入力装置(例えば、1つ以上のスピーカ、増幅器等)を含んでよい。音声出力装置は、音声信号を受信し、(例えば、復号、増幅、デジタル信号処理、オーディオ効果等を介して)音声信号を処理して、次いで1つ以上のスピーカを介して出力される音声出力を生成してよい。音声信号は、コンピューティングデバイス(複数可)112によって生成される音声コンテンツ(例えば、VRコンテンツの音声コンテンツ)を含んでよい。
【0023】
また、各ロボットスピーカ108は、モビリティコンポーネント(mobility component)(例えば、図3のモビリティコンポーネント326)を含んでもよい。ロボットスピーカ108のモビリティコンポーネントは、図3図6A図6C図7図8、及び図9A図9Bと併せてさらに詳細に以下に説明するように、ある場所から別の場所へロボットスピーカ108を移動させ、物理的環境104の中で向きを変更することができる機械的、電気的、及び/または任意の他の適切な構成要素を含んでよい。
【0024】
図2は、種々の実施形態の1つ以上の態様に従って、VRシステム100のコンピューティングデバイス112を示す。種々の実施形態では、1つ以上のコンピューティングデバイス(複数可)112は、ヘッドセット110とは別個であり、かつ通信で結合され、ヘッドセット110と統合され、または上記の組み合わせであってよい。図示するように、コンピューティングデバイス112は、1つ以上のプロセッサ202、入出力(I/O)装置204、及びメモリ206を含む。
【0025】
プロセッサ(複数可)202は、データを処理し、プログラム命令を実行するように構成された任意の技術的に実現可能なハードウェアユニットであってよい。プロセッサ(複数可)202は、例えば及び制限なく、中央演算処理装置(CPU)、グラフィックスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、及びその任意の組み合わせを含むであろう。
【0026】
入出力装置204は、入力を受け取る及び/または出力を提供するためのデバイスを含んでよい。例えば、及び制限なく、入出力装置204は、1つ以上のコントローラデバイス、キーボード、マウス、タッチパッド、1つ以上のセンサデバイス(例えば、カメラ、運動センサ、加速度計、ジャイロスコープ、磁力計、慣性センサ等)、1つ以上のマイク、ヘッドフォン、及び1つ以上の据え付けのオーディオ装置を含むであろう。入出力装置204の1つ以上は、VRヘッドセット110に含まれてよい。入出力装置204は、さらに、任意の適切な通信技術(例えば、無線通信装置、有線通信装置等)を使用し、他のコンピューティングデバイス112、VRヘッドセット110、及びロボットスピーカ108と通信するための1つ以上の通信装置(不図示)を含んでよい。
【0027】
メモリ206は、データ及びソフトウェアアプリケーションを記憶するために任意の技術的に実現可能な記憶媒体を含んでよい。メモリは、例えばランダムアクセスメモリ(RAM)モジュール、読み出し専用メモリ(ROM)モジュール、ハードディスクドライブ、ソリッドステートドライブ、フラッシュメモリ等を含むであろう。
【0028】
図2に示すように、メモリ206は、VRモジュール208、追跡モジュール210、シーンマネージャモジュール212、オーディオマネージャモジュール214、物理的環境分析モジュール216、音声処理モジュール218、VRコンテンツ定義220、仮想オブジェクト情報222、物理的環境情報224、ロボットスピーカ情報226、及びユーザープロパティ情報228を含む。
【0029】
動作中、VRモジュール208は、VRコンテンツを生成し、例えばセンサまたはコントローラデバイスを介して受け取られる入力等のユーザー入力に応えてVRコンテンツを更新する。VRコンテンツは、仮想環境、1つ以上の仮想オブジェクト、及び任意選択で仮想環境でのユーザー102の表示を含んでよい。ユーザー102の表示は、可視である必要はなく、仮想環境でユーザー102に割り当てられたプロパティ(例えば、位置、動き、向き、寸法等)を具体化してよい。また、ユーザー102の表示は、1つ以上の関連付けられた仮想オブジェクト(例えば、仮想身体部分)を含んでもよく、VRコンテンツの中ではキャラクタに相当する場合がある。VRモジュール208は、メモリ206に記憶された、事前に設定されたVRコンテンツ定義220に従ってVRコンテンツを生成してよい。VRコンテンツ定義220は、考えられる仮想環境、仮想オブジェクト、及びユーザー表示の定義を含んでよい。種々の実施形態では、VRコンテンツ定義220は、VRモジュール208の開発者によって作成されてよく、メモリ206にライブラリまたはデータベース(例えば、オブジェクトクラスのライブラリ、プロパティのための考えられるパラメータ範囲のデータベース)として記憶されてよい、及び/またはVRモジュール208に事前設定されて(例えば、VRモジュール208のプログラム命令の中で構成されて)よい。
【0030】
いくつかの実施形態では、VRコンテンツ定義220は、さらに、ロボットスピーカ108に、仮想オブジェクト及び/または仮想オブジェクトに関連付けられた音をマッピングするための優先順位レベルを定義してよい。例えば、VRコンテンツ定義220は、VRコンテンツ内で犬を定義する場合がある。VRコンテンツ定義220は、さらに、ロボットスピーカ108に、VRコンテンツ内の仮想犬の任意のインスタンスをマッピングするための優先順位レベルを定義してよい。優先順位レベルは、1つ以上の仮想オブジェクトに割り当てられるランキング、仮想オブジェクトがロボットスピーカ108にマッピングされなければならない旨の表示、または仮想オブジェクトがロボットスピーカ108に決してマッピングされてはならない旨の表示であってよい。
【0031】
追跡モジュール210は、ユーザー102及びロボットスピーカ108を追跡する。例えば、追跡モジュール210は、1つ以上の入出力装置204(例えば、ヘッドセット110上の1つ以上のセンサ)と連動して、物理的環境104でのユーザー102の位置及び動き、及び/またはユーザー102の頭部向き106を決定し、追跡する。追跡モジュール210は、ユーザープロパティ情報228としてメモリ206にユーザー102の位置、動き、及び向き106に対応するメタデータを記憶してよい。ユーザープロパティ情報228は、物理的環境104内のユーザー102と関連付けられるプロパティのメタデータを記憶する。ユーザー102と関連付けられたプロパティは、ユーザー102の位置、ユーザー102の検出された動き(例えば、動きの速度及び方向)、ならびにユーザー102の向き106を含んでよい。VRモジュール208は、仮想環境の中のユーザー102の位置、動き、及び向きを決定するためにユーザープロパティ情報228を読み取ってよい。
【0032】
いくつかの実施形態では、追跡モジュール210は、ロボットスピーカ108の位置も決定し、追跡する。例えば、追跡モジュール210は、ロボットスピーカ108の位置を決定し、追跡するために、1つ以上のI/O装置204(例えば、マイク、センサ)と連動して1つ以上の技術(例えば、三辺測量)を使用してよい。さらにまたは代わりに、各ロボットスピーカ108は、I/O装置(例えば、センサ324)及び/または物理環境104の中のロボットスピーカ108の位置を決定し、コンピューティングデバイス112に位置を送信するように構成される他の構成要素を含んでよい。例えば、ロボットスピーカ108は、コンピューティングデバイス112にスピーカ一情報318(図3)を送信してよい。追跡モジュール210は、次いでメモリ206にロボットスピーカ情報226としてロボットスピーカ108の位置に対応するメタデータを記憶するであろう。いくつかの実施形態では、追跡モジュール210は、1つ以上の追跡システム(例えば、OPTITRACK、LIGHTHOUSE、コード化されたライトシステム)と連動して(例えば、VRヘッドセット110を追跡することによって)ユーザー102及びロボットスピーカ108も追跡する。
【0033】
種々の実施形態では、シーンマネージャモジュール212が、VRモジュール208によって生成されるVRコンテンツの仮想オブジェクトを識別する。シーンマネージャモジュール212は、仮想オブジェクトのプロパティを決定し、メモリ206に仮想オブジェクト情報222として、仮想オブジェクトのプロパティに対応するメタデータを記憶する。仮想オブジェクト情報222は、仮想環境の仮想オブジェクトのプロパティに対応するメタデータを含む。いくつかの実施形態では、仮想オブジェクトは、仮想環境を構成する可視オブジェクト(例えば、地面、空の雲、風景等)及び仮想環境に存在する他の仮想オブジェクト(例えば、動物、人、物)を含む。いくつかの実施形態では、シーンマネージャモジュール212は、仮想オブジェクトを識別し、VRモジュール208によって生成されるVRコンテンツを評価することによって仮想オブジェクトのプロパティを決定する。シーンマネージャモジュール212は、周期的に(例えば、毎秒)または連続的にVRコンテンツを評価し得る。
【0034】
シーンマネージャモジュール212によって決定されてよい仮想オブジェクトのプロパティの例は、制限なく、仮想環境内の仮想オブジェクトの位置、仮想オブジェクトの仮想環境内のユーザー102に対応する位置からの距離、仮想環境内の他の仮想オブジェクト(例えば、壁等)までの距離、仮想オブジェクトから仮想環境内のユーザーまたは別の仮想オブジェクトへの最短の直線経路(例えば、光線追跡経路)、仮想オブジェクトの残響特性(例えば、反射係数、オブジェクトの形状等)、仮想オブジェクトの音吸収特性または音マスキング特性(例えば、音吸収係数等)、仮想オブジェクトの寸法(例えば、長さ、幅、高さ)及び形状または幾何学形状(例えば、仮想オブジェクトは平らなまたはギザギザの形状を有しているか)を含む。
【0035】
種々の実施形態では、オーディオマネージャモジュール214は、VRモジュール208によって生成されるVRコンテンツ内の仮想オブジェクト(例えば、シーンマネージャモジュール212によって識別される同じ仮想オブジェクト)を識別する。所与の仮想オブジェクトの場合、オーディオマネージャモジュール214は、(例えば、仮想オブジェクト情報222から)仮想オブジェクトのプロパティを入手する。
【0036】
オーディオマネージャモジュール214は、仮想オブジェクトが、有限数のロボットスピーカ108に含まれるロボットスピーカにマッピングされるための候補であるかどうかを判断する。いくつかの実施形態では、オーディオマネージャモジュール214は、仮想オブジェクトが、音を発するかどうか、及び/または仮想オブジェクトが他の仮想オブジェクトからの音に影響を与えるかどうかを判断することによって、仮想オブジェクトがロボットスピーカにマッピングされるための候補であるかどうかを判断する。いくつかの実施形態では、VRコンテンツ定義220または仮想オブジェクト情報222は、仮想オブジェクトが、音(例えば、話をしている仮想の人、吠えている仮想の犬、波の音を出す仮想の海)を出すのか、それとも他の仮想オブジェクトによって出される音に影響を与えるのかを定義してよい。例えば、仮想オブジェクトは、音を反射する(例えば、壁反射音)または音を隠す(例えば、窓またはドアは、通過する音を隠すまたは消す場合がある)ことによって音に影響を与える場合がある。いくつかの実施形態では、仮想オブジェクトが音を出す及び/または音に影響を与えると判断される場合、次いで仮想オブジェクトは、ロボットスピーカ108にマッピングされるための候補であると判断される。いくつかの実施形態では、VRコンテンツ定義220または仮想オブジェクト情報222は、仮想オブジェクトが音を出すのか、それとも音に影響を与えるのかに関わりなく、仮想オブジェクトが、ロボットスピーカにマッピングされるための候補であることを示してよい。
【0037】
仮想オブジェクトがロボットスピーカ108にマッピングされるための候補であると判断される場合、次いでオーディオマネージャモジュール214は、仮想オブジェクトによって出されるまたは影響を与えられる音を識別する。オーディオマネージャモジュール214は、次いで(例えば、仮想オブジェクト情報222から)識別された音の特性及び/または仮想オブジェクトのプロパティを評価して、音及び/または仮想オブジェクトが、ロボットスピーカ108に仮想オブジェクトをマッピングするための一連の1つ以上の基準を満たすかどうかを判断してよい。音及び/または仮想オブジェクトが一連の基準を満たすと判断される場合、次いで仮想オブジェクト及び/または音は、ロボットスピーカ108にマッピングされてよい。
【0038】
いくつかの実施形態では、オーディオマネージャモジュール214は、仮想オブジェクトのプロパティ及び音の特性を評価して、音及び/または仮想オブジェクトが一連の基準を満たすかどうかを判断する。基準の例は、制限なく、仮想オブジェクトが、仮想環境の中でユーザー102から閾値距離範囲内にあるかどうか、音が所定の周波数範囲内にあるかどうか、仮想オブジェクトがロボットスピーカ108へのマッピングを必要とするとして事前に定義されているかどうか、及び仮想オブジェクトが特定の種類の音を出すかどうかを含む。
【0039】
いくつかの実施形態では、ロボットスピーカ108へのマッピングのための基準は、仮想オブジェクトが、仮想環境の中のユーザーの位置から閾値距離範囲内にあるかどうかである。仮想オブジェクトが、ユーザーの位置から遠すぎるまたはユーザーの位置に近すぎる場合、オーディオマネージャ214は、仮想オブジェクトが閾値距離範囲外にあると判断してよい。ユーザーの位置から遠すぎる音は、出力から省略されてよい、及び/または1つ以上の据え付けのオーディオ装置(例えば、固定スピーカ)を介して出力されてよく、ユーザーの位置に近すぎる音は、1つ以上の据え付けオーディオ装置(例えば、ヘッドフォン)を介して出力されてよい。オーディオマネージャモジュール214が、仮想オブジェクトが閾値距離範囲外であると判断する場合、次いで仮想オブジェクトはこの基準を満たしていない。
【0040】
いくつかの実施形態では、ロボットスピーカ108へのマッピングのための別の基準は、音が閾値周波数範囲内にあるかどうかである。音が閾値周波数範囲内にない周波数を有する場合、オーディオマネージャモジュール214は、音が閾値周波数範囲外であると判断してよい。閾値周波数範囲外の音は、ロボットスピーカ108と比較すると、据え付けのオーディオ装置による出力時、ユーザーにとって知覚可能な相違をほとんど有さないまたは有さない場合がある。したがって、閾値周波数範囲外の音は、ロボットスピーカ108の代わりに据え付けのオーディオ装置によって出力されてよい。オーディオマネージャモジュール214が、音が閾値周波数範囲外であると判断する場合には、音はこの基準を満たしていない。
【0041】
いくつかの実施形態では、ロボットスピーカ108へマッピングするための別の基準は、仮想オブジェクトが、ロボットスピーカ108へのマッピングを必要としているとして事前に定義されているかどうかである。オーディオマネージャモジュール214は、仮想オブジェクトが、ロボットスピーカ108への仮想オブジェクトのマッピングを必要としているとして(例えば、VRコンテンツ定義220の中で)開発者によって事前に定義されていると判断してよい。仮想オブジェクトは、VRコンテンツの中での仮想オブジェクトの重要性に基づいて1つ以上のロボットスピーカ108へのマッピングを必要とするとして開発者によって事前に定義されてよい。オーディオマネージャモジュール214が、バーチャルオブジェクトが、ロボットスピーカ108へのマッピングを必要としているとして事前に定義されると判断する場合、次いで仮想オブジェクトは、マッピングのための一連の基準を満たす。
【0042】
いくつかの実施形態では、ロボットスピーカ108へのマッピングのための別の基準は、VRコンテンツの中の音の種類及び/またはVRコンテンツの中で音を出す仮想オブジェクトの種類である。すなわち、特定の音は、ロボットスピーカ108を介した出力により適している。例えば、ファーストパーソンシューターゲームに関与するVRコンテンツでは、敵キャラクタからの音は、相対的により重要、したがって仮想環境内の他のオブジェクトからの周囲の音(例えば、流れる川の音)よりも、ロボットスピーカ108を介した出力により適していると見なされてよい。オーディオマネージャモジュール214が、敵キャラクタの音が、環境内のオブジェクトからの音よりもより重要であると判断する場合、次いでオーディオマネージャモジュール214は、敵キャラクタの音が基準を満たす、及び環境内のオブジェクトからの音(例えば、川の流れ)が基準を満たさないと判断してよい。いくつかの実施形態では、オーディオマネージャモジュール214は、環境内のオブジェクトからの音が基準を満たすが、敵キャラクタの音よりもより低い優先順位を有すると判断する場合がある。
【0043】
別の例として、空間及び距離の感覚は概して内部の独白には必要とされないため、キャラクタからの発話は、ユーザー表示からの内部の独白に対応する発話よりもロボットスピーカ108を介した出力により適している場合がある。オーディオマネージャモジュール214は、キャラクタからの発話が基準を満たす、及び内部の独白が基準を満たさないと判断してよい。いくつかの実施形態では、オーディオマネージャモジュール214は、内部の独白が基準を満たすが、キャラクタからの発話よりもより低い優先順位を有すると判断してよい。
【0044】
追加の例として、主役からの発話はより重要と見なされてよく、したがって脇役からの発話よりもロボットスピーカ108を介した出力により適していると見なされてよい。オーディオマネージャモジュール214は、主役からの発話が基準を満たすと判断してよい。オーディオマネージャモジュール216は、脇役からの発話も基準を満たすが、主役からの発話よりもより低い優先順位を有すると判断してよい。
【0045】
いくつかの実施形態では、オーディオマネージャモジュール214は、一連の基準に基づいて音及び/または仮想オブジェクトの優先順位も決定する。オーディオマネージャモジュール214は、一連の基準に基づいてロボットスピーカ108へのマッピングのための仮想オブジェクトに優先順位を付けてよい、または優先順位を下げてよい。例えば、ユーザーにより近いが、まだ閾値距離範囲内にある仮想オブジェクトは、ユーザーからより遠く離れているが、まだ閾値距離範囲内にある仮想オブジェクトに優る優先順位を有してよい。追加の例として、VRコンテンツが仮想の熱帯雨林で開催される仮想会議に相当する場合、参加者からの発話は、環境と関連付けられた周囲の音よりもより重要であるため、会議参加者からの発話は、仮想の熱帯雨林内のオブジェクトからの周囲の音に優る優先順位を有する場合がある。仮想オブジェクトが、ロボットスピーカ108へのマッピングを必要とすると事前に定義付けられる場合、次いでオーディオマネージャモジュール214は、仮想オブジェクトが最高の優先順位を有すると判断してよい。
【0046】
音及び/または仮想オブジェクトが一連の基準を満たし、かつロボットスピーカ108がマッピングのために利用できる場合、次いで仮想オブジェクト及び/または音は、ロボットスピーカ108にマッピングされる。ロボットスピーカ108がマッピングのために利用できない(例えば、すべてのロボットスピーカ108が仮想オブジェクトにすでにマッピングされている)場合、次いでオーディオマネージャモジュール214は、音及び/または仮想オブジェクトが、ロボットスピーカ108にすでにマッピングされている別の仮想オブジェクトに優る優先順位を有するかどうかを判断してよい。オーディオマネージャモジュール214が、音及び/または仮想オブジェクトが、ロボットスピーカ108にすでにマッピングされている他の仮想オブジェクトに優る優先順位を有すると判断する場合、次いでオーディオマネージャモジュール214は、現在のマッピングを削除し、より高い優先順位の音及び/または仮想オブジェクトと、ロボットスピーカ108との間の新しいマッピングを生成してよい。
【0047】
いくつかの実施形態では、仮想オブジェクト及び/または仮想オブジェクトに関連付けられた音のロボットスピーカへのマッピングは、動的であり、経時的に変化する。例えば、特定の仮想オブジェクト及び/または特定のオブジェクトによって出されるもしくは影響を与えられる音が一連の基準を満たすかどうかは、VRコンテンツが更新されるにつれ経時的に変化する場合がある。ロボットスピーカ108にマッピングされる仮想オブジェクトがもはや一連の基準を満たさない場合、次いでオーディオマネージャモジュール214は、そのマッピングを削除してよい、及び/またはそのマッピングを、より高い優先順位の仮想オブジェクトとロボットスピーカ108との間のマッピングで置き換えてよい。いくつかの実施形態では、オーディオマネージャモジュール214は、仮想オブジェクト及び/または仮想オブジェクトに関連付けられた音がどのようにしてロボットスピーカ108にマッピングされるのか、ならびにいずれかのマッピングが削除されるべきか、それとも置き換えられるべきかを連続的に判断する。
【0048】
いくつかの実施形態では、複数の仮想オブジェクト及び/または複数の仮想オブジェクトに関連付けられた音は、同じロボットスピーカ108にマッピングされてよい。例えば、仮想環境の中で発話しているキャラクタが、キャラクタの発話を消す窓を通して聞かれる場合がある。係る状況では、(音の出し手としての)キャラクタと(音に影響を与えるオブジェクトとしての)窓の両方とも同じロボットスピーカ108にマッピングされてよい。
【0049】
いくつかの実施形態では、同じ仮想オブジェクト及び/または同じ仮想オブジェクトに関連付けられた音は、複数のロボットスピーカ108にマッピングされてよい。例えば、仮想環境での海は、動いている波に相当する音を出してよい。海は、複数のロボットスピーカ108にマッピングされてよく、複数のロボットスピーカ108は、ロボットスピーカのラインアレイを形成してよい。波の音の出力は、アレイ内の第1のロボットスピーカで開始し、次いで、波が仮想環境の中で動くにつれ、アレイ内の他のロボットスピーカ108に移動してよい。ロボットスピーカ108のラインアレイの例は、以下に図7と併せて説明する。
【0050】
いくつかの実施形態では、オーディオマネージャモジュール214は、1つ以上の仮想オブジェクト及び/またはロボットスピーカ108にマッピングされた1つ以上の仮想オブジェクトに関連付けられた音について、仮想オブジェクトによって生成されたまたは影響を与えられた音に対応する音声信号に適用される1つ以上の処理動作を決定してもよい。処理動作の例は、振幅調整、均等化、空間化、及び/または他の種類のオーディオ効果(例えば、残響)を含む。オーディオマネージャモジュール214は、仮想オブジェクト情報222(例えば、仮想オブジェクトとユーザーとの間の距離、仮想壁の反射性または吸収係数等)、物理的環境情報224(例えば、物理的環境104での壁の存在または欠如)、ロボットスピーカ情報226(例えば、ユーザー102に対するロボットスピーカ108の位置)及びユーザープロパティ情報228(例えば、ユーザー102の位置及び/または向き)に基づいて適用される処理動作(複数可)を決定してよい。オーディオマネージャモジュール214は、1つ以上のプロセッサ202(例えば、デジタル信号プロセッサ)と連動して、決定された処理動作に従って仮想オブジェクトによって生成されたまたは影響を与えられた音に対応する音声信号を処理するように音声処理モジュール218に命令してよい。
【0051】
例えば、オーディオマネージャモジュール214は、仮想オブジェクトと、仮想環境の中のユーザー102に対応する位置との間の距離を、マッピングされたロボットスピーカ108とユーザー102との間の距離に比較してよい。オーディオマネージャモジュール214は、距離を調整するために音声信号に対する1つ以上の処理動作(例えば、均等化、振幅、及び/または残響を調整すること)を決定してよい。音声信号は、音声信号に対応する音声がロボットスピーカ108を介して出力されるとき、音声が、仮想環境の中の仮想オブジェクトと、ユーザー102に対応する位置の間の距離と実質的に同じ距離からくるとしてユーザー102によって知覚されるように、処理動作に従って処理される。
【0052】
オーディオマネージャモジュール214は、さらに、1つ以上の仮想オブジェクト及び/またはロボットスピーカ(複数可)108にマッピングされた1つ以上の仮想オブジェクトに関連付けられた音について、ロボットスピーカ(複数可)108が配置される物理的環境104内のターゲット位置及び向きを決定してよい。オーディオマネージャモジュール214は、ロボットスピーカ情報226にアクセスして、各ロボットスピーカ108の現在位置を決定し、ロボットスピーカ108ごとにターゲット位置及び向きを決定し、ロボットスピーカ(複数可)108にターゲット位置(複数可)を送信してよい。
【0053】
いくつかの実施形態では、オーディオマネージャモジュール214は、一連の基準を満たさない音及び/または仮想オブジェクトを、VR音声出力(例えば、据え付けのオーディオ装置を介した出力)のための従来技術を用いて出力させてよい。係る音は、1つ以上の据え付けのオーディオ装置を介して出力されてよい。
【0054】
例えば、ユーザー102は、小さい部屋である物理的環境104内でVRシステム100を使用してよい。VRシステム100は、ユーザー102のために、大きい観客席及びユーザー102に隣接する仮想の人を含み、ユーザー102の位置が、観客席の中心にあるVRコンテンツを生成する。仮想の人は、仮想の観客席で拍手する。仮想の人とユーザーとの間の短い距離のため、拍手自体の音は、据え付けのオーディオ装置(例えば、ヘッドフォン、VRヘッドセット110上のスピーカ)を介した出力であってよい。拍手の音は、仮想観客席の壁によって反射されてよい。オーディオマネージャモジュール214は、さらに、壁が拍手の音に影響を与える仮想オブジェクトであるおかげで、壁がロボットスピーカ108へのマッピングのための候補であると判断してよい。オーディオマネージャモジュール214は、拍手及び/または壁の反射音が、ロボットスピーカ108へのマッピングのための一連の基準を満たすと判断してよい。オーディオマネージャモジュール214は、次いでそれぞれのロボットスピーカ108に壁をマッピングしてよい。オーディオマネージャモジュール214は、さらに、少なくとも仮想オブジェクト情報222、物理的環境情報224、ロボットスピーカ情報226、及びユーザー情報228に基づいて、壁と仮想観客席のユーザーとの間の距離が、物理的環境104内のロボットスピーカ108とユーザー102との間の距離よりも長いと判断してよい。したがって、オーディオマネージャモジュール214は、対応する音声出力が音の反射(例えば、エコー)であるとしてユーザーによって知覚されることを確実にするだけではなく、距離の差を説明する壁によって反射される音に対応する音声信号に適用するための1つ以上の処理動作を決定してよい。このようにして、ロボットスピーカ108を介して出力される音声信号は、壁と仮想観客席のユーザーの位置との間の距離により緊密に相互に関連する。オーディオマネージャモジュール214は、さらに、ユーザーに対する壁の位置(複数可)、方向(複数可)等とより緊密に相互に関連するためにそれぞれのターゲット位置及び/または向きに移動するようにロボットスピーカ(複数可)108に命令してよい。
【0055】
物理的環境分析モジュール216は、物理的環境104の1つ以上の特性(例えば、物理オブジェクトの寸法、位置、物理オブジェクトへの距離等)を決定し、物理的環境104の音響特性を判断するために特性を分析してよい。いくつかの実施形態では、物理的環境分析モジュール216は、1つ以上の入出力装置204及び入出力装置304(例えば、ロボットスピーカ108上のセンサ324)を介して、物理的環境104の特性を決定してよい。いくつかの追加の実施形態では、物理的環境104の特性は、別の部屋の音響分析システム(不図示)及び/またはユーザーエントリから入手されてよい。物理的環境104の特性に対応するメタデータは、物理的環境情報224としてメモリ206に記憶されてよい。物理的環境分析モジュール216は、物理的環境104の音響特性を決定するために物理的環境情報224を分析してよい。例えば、物理的環境分析モジュール216は、物理的環境情報224から物理的環境104の壁の反射性を決定してよい。代わりに、物理的環境104の音響特性は、部屋音響分析システムから及び/またはユーザーエントリから入手されてもよい。
【0056】
音声処理モジュール218は、ロボットスピーカ108にマッピングされる仮想オブジェクトに関連付けられた音に対応する音声信号を処理する。音声処理モジュール218は、音声信号に対してオーディオマネージャモジュール214によって決定された処理動作を実行する。いくつかの実施形態では、処理は、プロセッサ202(例えば、デジタル信号プロセッサ)の1つ以上と連動して実行される。音声信号は、次いで出力のためにロボットスピーカ108に送信される。いくつかの実施形態では、音声処理モジュール218は、オーディオマネージャモジュール214に含まれ、したがってオーディオマネージャモジュール214は、処理動作を決定し、音声信号に対して処理動作を実行し、ロボットスピーカ108に処理された音声信号を送信する。
【0057】
いくつかの実施形態では、VRシステム100は、複数のコンピューティングデバイス112を含んでよい。(例えば、メモリ206に記憶されたモジュールによって表される)VRシステム100の機能性及びメモリ206に記憶される情報は、複数のデバイス112の間で分割されてよい。例えば、第1のコンピューティングデバイス112は、仮想現実モジュール208、シーンマネージャモジュール212、VRコンテンツ定義220、及び仮想オブジェクト情報222を含んでよい。第2のコンピューティングデバイス112は、追跡モジュール210、オーディオマネージャモジュール214、物理的環境分析モジュール216、音声処理モジュール218、物理的環境情報224、ロボットスピーカ情報226、及びユーザープロパティ情報228を含んでよい。第1のコンピューティングデバイス112は、第2のコンピューティングデバイス112に(例えば、オーディオマネージャモジュール214に)仮想オブジェクト情報222を提供してよい。ロボットスピーカ108は、少なくとも第2のコンピューティングデバイス112と、及び任意選択で第1のコンピューティングデバイス112とも通信で結合されてよい。
【0058】
図3は、種々の実施形態の1つ以上の態様に従ってロボットスピーカ108を示す。図示するように、ロボットスピーカ108は、1つ以上のプロセッサ302、入出力(I/O)装置304、及びメモリ306を含む。
【0059】
プロセッサ(複数可)302は、データを処理し、プログラム命令を実行するように構成される任意の技術的に実現可能なハードウェアユニットであってよい。プロセッサ(複数可)302は、例えば及び制限なく、中央演算処理装置(CPU)、グラフィックスプロセッシングユニット(GPU)、特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、デジタル信号プロセッサ(DSP)、またはその任意の組み合わせを含むことがあるであろう。
【0060】
入出力装置304は、入力を受け取る及び/または出力を提供するためのデバイスを含んでよい。例えば及び制限なく、I/O装置304は、1つ以上のセンサ324(例えば、加速度計、ジャイロスコープ、慣性センサ等)及び/または1つ以上の音声出力装置310を含むであろう。いくつかの実施形態では、センサ324は、超音波レンジファインダ、レーザ測距装置、光学センサ、RFセンサ、及びBluetooth(登録商標)センサ(例えば、Bluetooth(登録商標) Low Energyセンサ)のうちの1つ以上を含む。I/O装置304は、さらに、VRシステム100のコンピューティングデバイス(複数可)112、VRヘッドセット110、及び/または他のロボットスピーカ108(例えば、無線通信装置)と通信するための1つ以上の通信装置(不図示)を含んでよい。いくつかの実施形態では、ロボットスピーカ108は、任意の適切な無線通信技術(例えば、Wi-Fi、Bluetooth(登録商標))を介してコンピューティングデバイス112、VRヘッドセット110、及び他のロボットスピーカ108と通信してよい。
【0061】
モビリティコンポーネント326は、物理的環境104の中で、ロボットスピーカ108を移動させ、また向きを変更する。一般に、モビリティコンポーネント326は、物理的環境104の中でロボットスピーカ108を移動させる及び/または回転させるための任意種類の機械的な、電気的な、流動的な、空気流生成の及び/または任意の他の適切な構成要素を含んでよい。モビリティコンポーネント326は、コンピューティングデバイス112からの命令及び/またはターゲット位置に従ってロボットスピーカ108を移動させ、新しい方向に向けてよい。モビリティコンポーネント326は、x、y、及び/またはzの次元に関してロボットスピーカ108の位置を変更し、三次元空間内で任意の適切な方向でロボットスピーカ108を新しい方向に向けてよい。種々の実施形態では、モビリティコンポーネント326はホロノミックであり、少なくともx及びyの次元ですべての方向で自由にロボットスピーカ108を移動できる。モビリティコンポーネントの詳細な例、及びロボットスピーカ108の動きは、図6A図9Bと併せて以下に説明する。
【0062】
音声出力装置310は、コンピューティングデバイス112から受信された音声信号に対応する音声を出力する。音声出力装置310は、1つ以上のスピーカ、及びさらにデコーダ(例えば、アナログ/デジタル変換器)、増幅器、及び前置増幅器のうちの1つ以上を含んでよい。
【0063】
メモリ306は、データ及びソフトウェアアプリケーションを記憶するための任意の技術的に実現可能な記憶媒体を含んでよい。メモリは、例えば、ランダムアクセスメモリ(RAM)モジュール、読み出し専用メモリ(ROM)モジュール、ハードディスクドライブ、ソリッドステートドライブ、フラッシュメモリ等を含むことがあるであろう。図3に示すように、メモリ306は、スピーカマネージャモジュール312、配置モジュール314、音声出力モジュール316、及びスピーカ位置情報318を含む。
【0064】
動作中、スピーカマネージャモジュール312は、ロボットスピーカ108の現在位置を追跡する。スピーカマネージャモジュール312は、センサ324と連動して、ロボットスピーカ108の現在位置を決定する。スピーカマネージャモジュール312は、メモリ306にスピーカ位置情報318としてロボットスピーカ108の現在位置に対応するメタデータを記憶する。いくつかの実施形態では、スピーカマネージャモジュール312は、1つ以上のセンサ324を介してロボットスピーカ108とユーザー102との間の距離を追跡し、スピーカ位置情報318に距離に対応するメタデータを記憶してもよい。スピーカマネージャモジュール312は、コンピューティングデバイス112にスピーカ位置情報318を送信してよい。
【0065】
いくつかの実施形態では、スピーカマネージャモジュール312は、コンピューティングデバイス112からユーザー102及びロボットスピーカ108に関する追跡情報(例えば、追跡モジュール210によって生成されるユーザープロパティ情報228及びロボットスピーカ情報226)を受け取る。スピーカマネージャモジュール312は、このようにして物理的環境104の中のユーザー102及び他のロボットスピーカ108の位置を入手し、物理的環境104でのロボットスピーカの移動に役立たせることができる。
【0066】
配置モジュール314は、ロボットスピーカ108の移動を指示する。配置モジュール314は、例えば、モビリティコンポーネント326を制御することによって物理的環境108の中でロボットスピーカ108の動きを制御してよい。また、配置モジュール314は、センサ324を介して、ロボットスピーカ108が、物理的環境104の中で移動中に回避するべきである障害物(例えば、物理的環境108内の他のロボットスピーカ108及び他のオブジェクト)を検出してもよい。いくつかの実施形態では、配置モジュール314は、物理的環境104内の障害物(例えば、他のロボットスピーカ108、他のオブジェクト)を回避するためのサブモジュールまたはサブルーチンを含んでよい。また、配置モジュール314は、ロボットスピーカ108の動きの連続的な制御及び障害物検出のための制御ループフィードバック機能(例えば、比例積分微分(PID)ループ機能)を含んでもよい。いくつかの実施形態では、配置モジュール314は、特殊ロボット移動モジュール(例えば、ロボットオペレーティングシステム)を含んでよい。
【0067】
音声出力モジュール316は、音声出力装置310と連動して、音声出力装置310の1つ以上のスピーカを介してユーザー102に音声を出力するために、音声信号に対して1つ以上の動作を実行してよい。いくつかの実施形態では、動作は、音声信号を復号することと、音声信号を増幅することと、音声信号を音声に変換することとを含む。
【0068】
種々の実施形態では、動作中、ロボットスピーカ108は、コンピューティングデバイス112から音声信号及びターゲット位置を受信する。スピーカマネージャモジュール312は、ターゲット位置を受信し、配置モジュール314に、ロボットスピーカ108を現在位置からターゲット位置に移動させるためにモビリティコンポーネント326を作動させるように命令する。配置モジュール314は、ターゲット位置にロボットスピーカ108を移動させるためにモビリティコンポーネント326を作動させる。音声出力モジュール316は、ロボットスピーカ108がターゲット位置に配置されるときに出力のために音声信号に対して1つ以上の動作を実行する。
【0069】
いくつかの実施形態では、ロボットスピーカ108は、ターゲット位置に移動中に音声を出力してよい。例えば、VRコンテンツが移動中に発話している仮想キャラクタを含む場合、仮想キャラクタがマッピングされるロボットスピーカ108は、ロボットスピーカ108が移動するにつれ、仮想キャラクタの発話に対応する音声を出力してよい。
【0070】
いくつかの実施形態では、図2でコンピューティングデバイス112に含まれるとして示す特定のモジュールは、代わりにロボットスピーカ108に含まれてよい。例えば、各ロボットスピーカ108は、音声処理モジュール218に類似する音声処理モジュールを含んでよい(及び音声処理モジュール218は、任意選択でコンピューティングデバイス112から省略されてよい)。ロボットスピーカ108での音声処理モジュールは、メモリ306に(例えば、音声出力モジュール316にまたは別個のモジュールとして)含まれてよい。係る実施形態では、オーディオマネージャモジュール214は、図2と併せて上述したように、音声信号のための処理動作を決定する。オーディオマネージャモジュール214は、次いで実行される処理動作(例えば、何の処理動作を実行するのかに関する命令)及び対応する音声信号をロボットスピーカ108に通信してよい。ロボットスピーカ108での音声処理モジュールは、オーディオマネージャモジュール214からの通信に従って音声信号に対して処理動作を実行する。
【0071】
図4は、いくつかの実施形態に従って、1つ以上のロボットスピーカ108に1つ以上の仮想オブジェクトをマッピングするための方法ステップの流れ図である。方法ステップは、図2のシステムに関して説明されるが、当業者は、任意の順序で方法ステップを実施するように構成される任意のシステムが、意図される実施形態の範囲に含まれることを理解するだろう。
【0072】
図示するように、方法400は、コンピューティングデバイス112のオーディオマネージャモジュール214が、仮想環境に含まれる仮想オブジェクトを識別するステップ402で開始する。仮想オブジェクト及び仮想環境は、VRモジュール208によって生成されるVRコンテンツに含まれる。ステップ404で、オーディオマネージャモジュール214は、仮想オブジェクトに関連付けられた情報を入手する。例えば、オーディオマネージャモジュール214は、仮想オブジェクト情報222から仮想オブジェクト情報を入手してよい。
【0073】
ステップ406で、オーディオマネージャモジュール214は、仮想オブジェクトが仮想環境で音を出すかどうかを判断する。ステップ406で、オーディオマネージャモジュール214が、仮想オブジェクトが音を出すと判断する場合、次いで、方法400はステップ412に進む。ステップ406で、オーディオマネージャモジュール214が、仮想オブジェクトが音を出さないと判断する場合、次いで方法400はステップ408に進む。
【0074】
ステップ408で、オーディオマネージャモジュール214は、仮想オブジェクトが、仮想環境の音(例えば、他の仮想オブジェクトによって生成される音)に影響を与えるかどうかを判断する。ステップ408で、オーディオマネージャモジュール214が、仮想オブジェクトが仮想環境で音に影響を与えると判断する場合、次いで方法400はステップ412に進む。ステップ408で、オーディオマネージャモジュール214が、仮想オブジェクトが仮想環境の音に影響を与えないと判断する場合、次いで方法400は、オーディオマネージャモジュール214が仮想オブジェクトを無視するステップ410に進む。例えば、ステップ410で、オーディオマネージャモジュール214は、任意のロボットスピーカ108に仮想オブジェクトをマッピングしないであろう。
【0075】
ステップ412で、オーディオマネージャモジュール214は、仮想オブジェクトに関連付けられた音を識別する。音は、音が仮想オブジェクトによって生成される、または仮想オブジェクトによって影響を受ける(例えば、反射される、消される)場合、仮想オブジェクトに関連付けられてよい。ステップ414で、オーディオマネージャモジュール214は、音及び/または仮想オブジェクトが、一連の1つ以上のロボットスピーカマッピングの基準を満たすかどうかを判断する。ステップ414で、オーディオマネージャモジュール214が、音及び/または仮想オブジェクトが一連の基準を満たさないと判断する場合、次いで方法400は、オーディオマネージャモジュール214が、1つ以上の据え付けのオーディオ装置を介して仮想オブジェクトに関連付けられた音を出力するステップ418に進む。仮想オブジェクトに関連付けられるが、ロボットスピーカ108にマッピングされていない音は、1つ以上の据え付けのオーディオ装置(例えば、ヘッドフォン、VRヘッドセット110上のスピーカ、物理的環境104内のユーザー102の回りの固定スピーカ)を介して出力されてよい。
【0076】
ステップ414で、オーディオマネージャモジュール214は、音及び/または仮想オブジェクトが一連の基準を満たすと判断する場合、次いで方法400は、オーディオマネージャモジュール214が、ロボットスピーカ108に仮想オブジェクト及び/または仮想オブジェクトに関連付けられた音をマッピングするステップ416に進む。ステップ420で、オーディオマネージャモジュール214は、ロボットスピーカ108のためのターゲット位置、及び任意選択で1つ以上の処理動作を決定する。ステップ422で、音声処理モジュール218は、ステップ420で決定された処理動作を、仮想オブジェクトに関連付けられた音声信号に適用する。ステップ424で、オーディオマネージャモジュール214は、ロボットスピーカ108に音声信号及びターゲット位置を送信する。
【0077】
図5は、いくつかの実施形態に従って、ロボットスピーカを介して仮想オブジェクトに関連付けられた音声を出力するための方法ステップの流れ図である。方法ステップは、図3のシステムに関して説明されるが、当業者は、任意の順序で方法ステップを実施するように構成された任意のシステムが、意図される実施形態の範囲内に含まれることを理解する。
【0078】
図示するように、方法500は、ロボットスピーカ108が、スピーカマネージャモジュール312を介してターゲット位置及び仮想オブジェクトに関連付けられた音声信号を受け取るステップ502で開始する。ステップ504で、ロボットスピーカ108の配置モジュール314は、ロボットスピーカ108を、モビリティコンポーネント326を介してターゲット位置に移動させる。ステップ506で、ロボットスピーカ108の音声出力モジュール316は、音声出力装置(複数可)310を介して音声信号に対応する音声を出力する。いくつかの実施形態では、ロボットスピーカ108は、音声信号に対応する音声を出力する前に、(例えば、音声出力モジュール216または別個の音声処理モジュールを介して)音声信号に対してオーディオマネージャモジュール214によって決定された1つ以上の処理動作を実行する。ロボットスピーカ108は、上述のステップ422においてのように、コンピューティングデバイス112の代わりに音声信号に対する処理動作を実行してよい。
【0079】
図6A図6Cは、種々の実施形態の1つ以上の態様に従って、ホイールを有するロボットスピーカを介して仮想オブジェクトに関連付けられた音を出力するための技術を示す図である。図示するように、物理的環境104は、VRヘッドセット110を着用しているユーザー102の回りに配置されるロボットスピーカ108-1~108-5を含む。例えば、ロボットスピーカ108-2は位置608に位置し、ロボットスピーカ108-5は位置610に位置する。各ロボットスピーカ108はユーザー102に向けられる。ロボットスピーカ108は、図6Aに示すように、物理的環境104における位置で音を出力してよい。ロボットスピーカ108のそれぞれは、1つ以上のホイール602を含むモビリティコンポーネント326を含む。以下に説明する実施形態は、ホイールと併せて説明するが、技術は任意の種類のモビリティコンポーネント326に適用可能である。
【0080】
ロボットスピーカ108のそれぞれは、1つ以上のホイール602を介して物理的環境104内で動き回ってよい。例えば、図6Bに示すように、ロボットスピーカ108-2は、位置608からターゲット位置612に移動してよく、ロボットスピーカ108-5は、位置610からターゲット位置614に移動してよい。直線経路は回避される障害物を含む場合があるので、ロボットスピーカ108-2及び108-5がそのそれぞれのターゲット位置に到達するために移動する経路は、直線経路である必要はない。
【0081】
種々の実施形態では、ロボットスピーカ108にマッピングされる仮想オブジェクトの、仮想環境の中のユーザー102に対する位置及び/または向きが変化したため、または異なる仮想オブジェクトがロボットスピーカ108にマッピングされているため、ロボットスピーカ108はターゲット位置に移動してよい。ロボットスピーカ108は、仮想オブジェクトの更新された位置及び/または向きに一致するために、または新規にマッピングされた仮想オブジェクトの位置及び/または向きに一致するために移動する及び/または向きを変更してよい。
【0082】
図6Cに示すように、ロボットスピーカ108-2及び108-5は、それぞれターゲット位置612及び614に到達している。それぞれ位置612及び614で、ロボットスピーカ108-2及び108-5は、それぞれロボットスピーカ108-2及び108-5にマッピングされた仮想オブジェクトに関連付けられた音声を出力する。いくつかの実施形態では、ロボットスピーカ108-2及び108-5は、コンピューティングデバイス112(図6A図6Cでは不図示)によって生成されるVRコンテンツに従って、ターゲット位置に移動しながら、それぞれロボットスピーカ108-2及び108-5に仮想オブジェクトに関連付けられた音を出力してよい。
【0083】
図7は、種々の実施形態の1つ以上の態様に従って、そのうちの2つ以上が1つ以上のラインアレイに配置されてよい複数のロボットスピーカを示す図である。図7に示すように、物理的環境104は、VRヘッドセット110を着用するユーザー102の回りに配置されるロボットスピーカ108-1~108-10を含んでよい。ロボットスピーカ108-2、108-3、108-4、及び108-5は、ロボットスピーカの第1のラインアレイに配置される。第1の仮想オブジェクトは、ロボットスピーカ108-2、108-3、108-4、及び108-5にマッピングされてよい。ロボットスピーカ108-7、108-8、108-9、及び108-10は、ロボットスピーカの第2のラインアレイに配置される。第2の仮想オブジェクトは、ロボットスピーカ108-7、108-8、108-9、及び108-10にマッピングされてよい。ロボットスピーカ108は、ホイール608を含むモビリティコンポーネント326を有する。ロボットスピーカ108は、ロボットスピーカ108の任意の数のラインアレイの回りで動き回り、ロボットスピーカ108の任意の数のラインアレイを形成してよい。
【0084】
種々の実施形態では、第1の仮想オブジェクトに関連付けられた移動音(例えば、風の音、海の波の音、ユーザー102のそばを通る車両の音)は、ロボットスピーカ108-2、108-3、108-4、及び108-5の第1のラインアレイを介して出力されてよい。係る実施形態では、音は、順にラインアレイのロボットスピーカのそれぞれで出力されてよい。例えば、音は、最初にロボットスピーカ108-2で、次いでロボットスピーカ108-3で、次いでロボットスピーカ108-4で、次いでロボットスピーカ108-5で出力されてよい。ロボットスピーカ108-2~108-5による音の出力は、順にユーザー102に対して移動する音をシミュレーションする。さらに、音が、前後に移動する音(例えば、2つの位置の間で前後に走る、吠えている犬)である場合、次いで音はスピーカのラインアレイ全体で前後に出力されてよい(例えば、順にスピーカ108-2、108-3、108-4、及び108-5のそれぞれを介して、次いで逆の順で同じスピーカのそれぞれを介して、次いで元の順序で同じスピーカのそれぞれを介して等出力されてよい)。
【0085】
別の例として、第2の仮想オブジェクトに関連付けられた音は、ロボットスピーカ108-7、108-8、108-9、及び108-10の第2のラインアレイを介して出力されてよい。音は、ビーム形成され、ロボットスピーカ108-7、108-8、108-9、及び108-10を介して出力されてよい。ロボットスピーカ108が、スピーカの1つ以上のアレイ(例えば、直線アレイ、2次元アレイ、または平面アレイ)を形成できる実施形態では、オーディオマネージャモジュール214は、スピーカのアレイを介した出力のために音声信号を準備するのに適している1つ以上の処理動作を決定してよい(例えば、ビーム形成)。
【0086】
図8は、種々の実施形態の1つ以上の態様に従って、構造体の上に配置される複数のロボットスピーカを示す図である。図8に示すように、物理的環境104は、構造体802(例えば、トラス構造)に配置されるロボットスピーカ108-1から108-6を含む。構造体802は、ホイール804-1~804-6を含んでよい。図示するように、構造体802は、下向きの視点から見ると円形であり、ユーザー102を取り囲む。構造体802は剛性であってよい。構造体802は、ユーザー102の回りで回転し、ホイール804を介して物理的環境104内で動き回ってよい。したがって、ホイール804を含む構造体802は、ロボットスピーカ108のためのモビリティコンポーネント326としての機能を果たしてよい。ロボットスピーカ108は、構造体802の移動及び回転を調整するために(例えば、スピーカマネージャモジュール312を介して)互いと通信してよい。
【0087】
いくつかの実施形態では、構造体802は、ホイール804の代わりに、移動及び回転のための関節のあるロボット付属品(例えば、アーム、脚)を有してよい。いくつかの追加の実施形態では、構造体802は、(例えば、プーリーシステムを介して)天井から吊り下げられてよい。さらに、いくつかの実施形態では、構造体802は、例えば楕円、矩形、三角形等の、下向きの視点から見るときの円形以外の形状を有するとして実装されてよい。
【0088】
図9A図9Bは、種々の実施形態の1つ以上の態様に従って、天井から吊り下げられる複数のロボットスピーカ、及びガス推進によるロボットスピーカの動きを示す図である。図9Aに示すように、物理的環境104は、天井構造体902から吊り下げられるロボットスピーカ108-1~108-4を含む。各ロボットスピーカ108は、テザー904によって天井構造物902から吊り下げられてよい。本明細書に使用するように、テザー904は、可撓タイプ(例えば、ケーブル、ロープ、ワイヤ)または非可撓タイプ(例えば、スティック、パイプ、ポール)であってよい。テザーの種類に応じて、テザー904は、取り付け点でヒンジを含んでよい、モータを取り付けられてよい、及び/または作動されてよい。
【0089】
図9A図9Bのロボットスピーカ108のそれぞれのモビリティコンポーネント326は、ガス推進システムを含んでよい。ガス推進システムは、ガス(例えば、圧縮ガス)の容器、及びガス容器からガスを排出するための装置を含んでよい。例えば、ロボットスピーカ108-4は、ガスの噴流908を排出することによって位置906からターゲット位置910に移動できるであろう。ロボットスピーカ108-4は、次いで制御されたやり方でガス噴流908を連続的に排出することによって一時期ターゲット位置910に保持できるであろう。いくつかの実施形態では、モビリティコンポーネント326は、他の形のガス推進を含んでよい。例えば、いくつかの実施形態では、モビリティコンポーネント326は、例えばプロペラ、ロータ、ファン等の、物理的環境104内で空気を移動させるガス推進システムを含んでよい。
【0090】
いくつかの実施形態では、天井構造体902は、それによってロボットスピーカ108が垂れ下がるテザー904の長さ変更できる1つ以上の装置を含む。すなわち、いくつかの実施形態では、テザー904は、格納可能かつ伸長可能である(例えば、電動スプールを使用し、テザー904は、伸縮自在の伸長ポールである)。装置は、対応するロボットスピーカ108の配置モジュール314と通信するために通信装置を含んでよい。装置は、ロボットスピーカ108をターゲット位置に移動させる及び/または新しい方向に向けるためにテザー904の長さ、及び/または向きを変更することに関して配置モジュール314から命令を受け取ってよい。
【0091】
いくつかの追加の実施形態では、テザー904は、直接的に天井構造体902に取り付けられていないが、天井構造体902の上または下で徐行するように構成されたロボットに取り付けられる。徐行するロボットは、任意の適切な技術(例えば、マイクロサクション、マイクロ凝着力、上方プロペラ、トレッド内のマイクロスパイン(micro‐spine)等)を使用し、天井構造体902の上または下で徐行してよい。また、ロボットは、テザー904を格納するまたは伸長するための装置を含んでもよい。徐行するロボットは、ロボットスピーカ108をターゲット位置及び/または向きに移動させる及び/または新しい方向に向けるために配置モジュール314から命令を受け取ってよい。
【0092】
種々の実施形態では、ロボットスピーカ108は、物理的環境104の特定の態様に制約されるであろう。例えば、各ロボットスピーカ108は、物理的環境104の壁の中の金属スタッドへの付着のための1つ以上の磁石、及び壁全体で移動させるために、位置から位置へ(例えば、スタッドからスタッドへ)移動するための装置を含んでよい。ロボットスピーカ108は、壁の上方及び下方への移動のための装置(例えば、ロボット付属品、ガス推進)を含んでもよい。
【0093】
別の例では、ロボットスピーカ108は、それぞれ(例えば、ドローンユニット等のホバリングプラットフォームに取り付けられて)個々にホバリングできるように構成される。係るロボットスピーカ108は、推進ユニット(例えば、かごに入れられたプロペラ及びロータ、空気よりも軽いホバリング装置、翼機構)、及び任意選択で推進ユニットからの雑音を削減するために雑音消去構成部品を含んでよい。いくつかの実施形態では、ホバリング手法は、低重力またはゼロ重力の環境で(例えば、宇宙ステーションで)の使用のために適応されてよい。低重力またはゼロ重力の環境用の適応での推進ユニットは、リアクションホイール、反応制御噴流、または反応コイルを含んでよい。
【0094】
モビリティコンポーネント326で具体化されてよい、ロボットスピーカ108を移動させるための手法または構成要素の上記例が、網羅的ではないことが理解されるべきである。ロボットスピーカ108を移動させるための他の手法が考えられる。より一般的には、ロボットスピーカ108は、任意の適切な手法を使用し、移動し、向きを変更するように構成されてよい。例えば、上述した手法に加えて他の例の手法は、それぞれが2つのホイールとともに単一のアクスルを有してよい自動平衡プラットフォーム(例えば、2つのホイールを有する反転された振り子)、それぞれが単一のボール(単一のホイール)上に位置してよい自動平衡プラットフォーム(例えば、その向きを変更することなく任意の方向で移動できるボールを使用する、反転された振り子)、または同軸ロータ、マルチロータ(例えば、クワッドコプター)をベースにしたホバリングモビリティプラットフォーム、または垂直ガス噴流ベースの推進モビリティプラットフォームを含んでよい。
【0095】
要するに、仮想現実システムは、ロボットスピーカへのマッピングのための候補として仮想環境内の仮想オブジェクトを識別する。仮想現実システムは、次いで仮想オブジェクトがロボットスピーカへのマッピングのための1つ以上の基準を満たすかどうかを判断する。仮想オブジェクトが1つ以上の基準を満たす場合、次いで仮想現実システムは、仮想オブジェクトを1つ以上のロボットスピーカにマッピングする。次に、仮想現実システムは、ロボットスピーカのための位置情報を決定し、任意選択で仮想オブジェクト及び/またはユーザーが位置する物理的環境の特徴に基づいて、(例えば、1つ以上のデジタル信号処理アルゴリズムを介して)仮想オブジェクトに関連付けられた音声信号を処理する。ロボットスピーカは、次いで位置情報に従って配置され、音声信号を出力する。
【0096】
開示されている技術によって達成される少なくとも1つの技術的な改善は、仮想現実コンテンツのための音声出力が、より正確に仮想現実コンテンツを表す点である。ユーザーは、例えば、ユーザーの視点から、仮想オブジェクトの視覚的表現及び音響表現が仮想環境において一致するように、仮想現実コンテンツの音響構成要素と同一位置に配置されるとして仮想現実コンテンツの視覚構成要素を知覚する。別の技術的改善は、音声出力が、仮想現実システムのユーザーが位置する物理的環境の音響特性を説明する点である。結果的に、ユーザーが聞く音声は、(例えば、仮想現実ヘッドセットを介して)ユーザーが見ることとより密接に相互に関連するため、仮想現実ユーザーの経験は改善される。
【0097】
1.いくつかの実施形態において、コンピューティングシステムであって、命令を含んだメモリと、前記メモリに結合され、前記命令を実行するとき、仮想環境に含まれる仮想オブジェクトに関連付けられた音をロボットスピーカにマッピングするステップと、前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、前記ロボットスピーカに情報を送信するステップと、前記ロボットスピーカに音声信号を送信するステップであって、前記ロボットスピーカが、前記音声信号に基づいて及び前記物理的環境内の前記位置で、前記仮想オブジェクトに関連付けられた前記音を出力する、前記音声信号を送信するステップとを実行するように構成されるプロセッサとを備える、前記コンピューティングシステム。
【0098】
2.前記命令が、さらに、前記プロセッサを、前記仮想環境に含まれる第2の仮想オブジェクトに関連付けられた第2の音を前記ロボットスピーカにマッピングする、前記ロボットスピーカを前記仮想環境内の前記第2の仮想オブジェクトの位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信する、ならびに前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記第2の仮想オブジェクトに関連付けられた第2の音を出力する、前記送信するように構成する、条項1に記載のシステム。
【0099】
3.前記命令が、さらに、前記プロセッサを、前記ロボットスピーカに前記第2の音をマッピングする前に、前記ロボットスピーカと、前記仮想オブジェクトに関連付けられた前記音との間のマッピングを削除するように構成する、条項1または2に記載のシステム。
【0100】
4.前記命令が、さらに、前記プロセッサを、前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの第2の位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信する、ならびに前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記仮想オブジェクトに関連付けられた第2の音を出力する、前記第2の音声信号を送信するように構成する、条項1~3のいずれかに記載のシステム。
【0101】
5.前記命令が、さらに、前記プロセッサを、前記仮想環境の中の前記仮想オブジェクトの前記位置と、前記仮想環境の中のユーザー位置との間の距離が所定の距離範囲内にあると判断することに基づいて、前記仮想オブジェクトに関連付けられた前記音が前記ロボットスピーカにマッピングされると判断するように構成する、条項1~4のいずれかに記載のシステム。
【0102】
6.前記命令が、さらに、前記プロセッサを、前記仮想オブジェクトに関連付けられた前記音が所定の周波数範囲内にあると判断することに基づいて、前記仮想オブジェクトに関連付けられた前記音が前記ロボットスピーカにマッピングされると判断するように構成する、条項1~5のいずれかに記載のシステム。
【0103】
7.前記命令が、さらに、前記プロセッサを、前記仮想環境に含まれる複数の仮想オブジェクトのそれぞれについて、マッピング優先順位を決定するように構成し、前記複数の仮想オブジェクトが前記仮想オブジェクトを含む、条項1~6のいずれかに記載のシステム。
【0104】
8.前記命令が、さらに、前記プロセッサを、前記複数の仮想オブジェクトに含まれる第2の仮想オブジェクトが前記仮想オブジェクトよりもより高いマッピング優先順位を有すると判断する、ならびに前記判断することに基づいて、前記仮想オブジェクトに関連付けられた前記音と前記ロボットスピーカとの間のマッピングを削除する、及び前記第2の仮想オブジェクトに関連付けられた音を前記ロボットスピーカにマッピングするように構成する、条項1~7のいずれかに記載のシステム。
【0105】
9.前記仮想オブジェクトに関連付けられた前記音が、前記仮想オブジェクトによって出される音を含む、条項1~8のいずれかに記載のシステム。
【0106】
10.前記仮想オブジェクトに関連付けられた前記音が、前記仮想オブジェクトによって反射される音を含む、条項1~9のいずれかに記載のシステム。
【0107】
11.いくつかの実施形態において、コンピュータ実装方法であって、仮想環境に含まれる複数の仮想オブジェクトに含まれる仮想オブジェクトをロボットスピーカにマッピングすることと、前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの位置に相当する物理的環境内の位置に移動させるために、前記ロボットスピーカに情報を送信することと、前記ロボットスピーカに音声信号を送信することであって、前記ロボットスピーカが、前記音声信号に基づいて及び前記物理的環境内の前記位置で、前記仮想オブジェクトに関連付けられた1つ以上の音を出力する、前記音声信号を送信することとを含む、前記コンピュータ実装方法。
【0108】
12.さらに、前記ロボットスピーカに前記音声信号を送信する前に、前記物理的環境内の前記位置及び前記仮想環境内の前記仮想オブジェクトの前記位置のうちの少なくとも1つに基づいて前記音声信号に対して1つ以上の処理動作を実行することを含む、条項11に記載の方法。
【0109】
13.前記1つ以上の処理動作が、振幅調整、均等化、空間化、及びビーム形成のうちの少なくとも1つを含む、条項11または12に記載の方法。
【0110】
14.さらに、前記仮想環境に含まれる第2の仮想オブジェクトに関連付けられた第2の音を前記ロボットスピーカにマッピングすることと、前記ロボットスピーカを前記仮想環境内の前記第2の仮想オブジェクトの位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと、前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記第2の仮想オブジェクトに関連付けられた第2の音を出力する、前記音声信号を送信することとを含む、条項11~13のいずれかに記載の方法。
【0111】
15.さらに、前記ロボットスピーカを前記仮想環境内の前記仮想オブジェクトの第2の位置に相当する前記物理的環境内の第2の位置に移動させるために、前記ロボットスピーカに第2の情報を送信することと、前記ロボットスピーカに第2の音声信号を送信することであって、前記ロボットスピーカが、前記第2の音声信号に基づいて及び前記物理的環境内の前記第2の位置で、前記仮想オブジェクトに関連付けられた第2の音を出力する、前記第2の音声信号を送信することとを含む、条項11~14のいずれかに記載の方法。
【0112】
16.いくつかの実施形態において、オーディオ装置であって、モビリティデバイスと、音声出力装置と、前記モビリティデバイス及び前記音声出力装置に結合される1つ以上の回路であって、ターゲット位置を受け取ることであって、前記ターゲット位置が、仮想環境の中の仮想オブジェクトの位置に相当する、前記受け取る、前記モビリティデバイスを介して前記オーディオ装置を前記ターゲット位置に移動させる、及び前記音声出力装置を介して、前記ターゲット位置で前記仮想オブジェクトに関連付けられた音を出力するように構成された前記1つ以上の回路とを備える、前記オーディオ装置。
【0113】
17.前記モビリティデバイスが、ホイール、ロボット付属品、ガス推進構成部品、及び格納可能なテザーのうちの少なくとも1つを備える、条項16に記載のオーディオ装置。
【0114】
18.前記1つ以上の回路が、さらに、前記仮想環境の中の前記仮想オブジェクトの動きに応えて第2のターゲット位置に前記オーディオ装置を移動させるように構成され、前記第2のターゲット位置が、前記動きの後の前記仮想環境の中の前記仮想オブジェクトの第2の位置に相当する、条項16または17に記載のオーディオ装置。
【0115】
19.前記1つ以上の回路が、さらに、第2のターゲット位置を受け取ることであって、前記第2のターゲット位置が、前記仮想環境の中の第2の仮想オブジェクトの位置に相当する、前記受け取る、前記モビリティデバイスを介して前記第2のターゲット位置に前記オーディオ装置を移動させる、及び前記音声出力装置を介して、前記第2のターゲット位置で前記第2の仮想オブジェクトに関連付けられた音を出力するように構成される、条項16~18のいずれかに記載のオーディオ装置。
【0116】
20.前記モビリティデバイスが、ホバリング構成部品を備える、条項16~19のいずれかに記載のオーディオ装置。
【0117】
特許請求の範囲のいずれかに記載する請求項要素のいずれか及び/または本願に説明する任意の要素のありとあらゆる組み合わせは、いずれにしても、説明する実施形態の意図する範囲に入る。
【0118】
種々の実施形態の記載は、説明のために提示されているが、網羅的となるまたは開示される実施形態に限定されることを目的としていない。多くの修正及び変形は、説明する実施形態の範囲及び精神から逸脱することなく当業者に明らかになる。
【0119】
本実施形態の態様は、システム、方法、またはコンピュータプログラム製品として具体化され得る。したがって、本開示の態様は、完全にハードウェアの実施形態、(ファームウェア、常駐ソフトウェア、マイクロコード等を含んだ)完全にソフトウェアの実施形態、または本明細書ですべて概して「モジュール」または「システム」と呼ぶ場合があるソフトウェア態様及びハードウェア態様を結合する実施形態の形をとってよい。さらに、本開示の態様は、1つ以上のコンピュータ可読媒体(複数可)上で具体化されるコンピュータ可読プログラムを有する1つ以上のコンピュータ可読媒体(複数可)で具体化されるコンピュータプログラム製品の形をとってよい。
【0120】
1つ以上のコンピュータ可読媒体(複数可)のいずれかの組み合わせが利用されてよい。コンピュータ可読媒体は、コンピュータ可読信号媒体またはコンピュータ可読記憶媒体であってよい。コンピュータ可読記憶媒体は、例えば電子的な、磁気の、光学的な、電磁式の、赤外線の、または半導体のシステム、装置、もしくはデバイス、または上記の任意の適切な組み合わせであってよいが、これに限定されるものではない。コンピュータ可読記憶媒体のより具体的な例(包括的ではないリスト)は、以下、つまり1つ以上のワイヤを有する電気接続、携帯用フロッピー(登録商標)ディスク、ハードディスク、ランダムアクセスメモリ(RAM)、読み出し専用メモリ(ROM)、消去可能プログラマブルROM(EPROMまたはフラッシュメモリ)、光ファイバ、携帯用読み取り専用コンパクトディスク(CD-ROM)、光学式記憶装置、磁気記憶装置、または上記の任意の適切な組み合わせを含むであろう。本書の文脈では、コンピュータ可読記憶媒体は、命令実行システム、命令実行装置、もしくは命令実行デバイスによって、または命令実行システム、命令実行装置、もしくは命令実行デバイスと関連して使用するためのプログラムを含むまたは記憶することができる任意の有形の媒体であってよい。
【0121】
本開示の態様は、本開示の実施形態に係る方法、装置(システム)、及びコンピュータプログラム製品のフローチャート図及び/またはブロック図を参照して上述される。フローチャート図及び/またはブロック図の各ブロック、ならびにフローチャート図及び/またはブロック図内のブロックの組み合わせが、コンピュータプログラム命令によって実装できることが理解される。これらのコンピュータプログラム命令は、機械を作り出すために汎用コンピュータ、特殊目的コンピュータ、または他のプログラム可能データ処理装置のプロセッサに提供されてよく、これによりコンピュータまたは他のプログラム可能データ処理装置のプロセッサを介して実行する命令は、フローチャート及び/またはブロック図の1つのブロックまたは複数のブロックに指定される機能/行為の実装を可能にする。係るプロセッサは、制限なく、汎用プロセッサ、特殊目的プロセッサ、アプリケーション特有のプロセッサ、またはフィールドプログラマブルプロセッサもしくはフィールドプログラマブルゲートアレイであってよい。
【0122】
図中のフローチャート及びブロック図は、本開示の種々の実施形態に係るシステム、方法、及びコンピュータプログラム製品の考えられる実施態様のアーキテクチャ、機能性、及び動作を示す。この点で、フローチャートまたはブロック図の各ブロックは、指定された論理関数(複数可)を実装するための1つ以上の実行可能命令を含む、モジュール、セグメント、またはコードの一部を表してよい。いくつかの代替実施態様では、ブロックに注記される関数は、図に注記される順序から外れて発生する場合があることにも留意されたい。例えば、連続して示す2つのブロックは、実際には、実質的に同時に実行されてよい、またはブロックは、関与する機能性に応じて逆の順序で実行される場合もある。また、ブロック図及び/またはフローチャート図の各ブロック、ならびにブロック図及び/またはフローチャート図のブロックの組み合わせが、特殊目的ハードウェア命令及びコンピュータ命令の指定された機能、行為、または組み合わせを実行するハードウェアベースの特殊目的システムによって実装できることにも留意されたい。
【0123】
上記は、本開示の実施形態を対象としているが、本開示の他の実施形態及び追加の実施形態は、その基本的な範囲から逸脱することなく考案され得、その範囲は以下に続く特許請求の範囲により決定される。
図1
図2
図3
図4
図5
図6A
図6B
図6C
図7
図8
図9A
図9B