(57)【要約】  仮想環境におけるアバタ用のオーディオ・シーンを生成するための装置であって、この装置は、アバタの聴取範囲の一部分に配置されたオブジェクトからのオーディオを含む重み付けされたオーディオ・ストリームを生成するように動作するオーディオ・プロセッサと、重み付けされたオーディオ・ストリームと、仮想環境における聴取範囲の前記の一部分の位置を表すデータとを関連付けるように動作する関連付け手段とを含み、重み付けされたオーディオ・ストリームと前記のデータとがオーディオ・シーンを表す。
2007533213.tif 000002
【特許請求の範囲】
【請求項１】
仮想環境におけるアバタ用のオーディオ・シーンを生成するための装置であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトからの音を含む、重み付けされたオーディオ・ストリームを生成するオーディオ・プロセッサと、
前記重み付けされたオーディオ・ストリームと、前記仮想環境における前記聴取範囲の前記一部分の位置を表すデータとを関連付けるように動作する関連付け手段であって、前記重み付けされたオーディオ・ストリームと前記データとが前記オーディオ・シーンを表す、関連付け手段と
を備える装置。
【請求項２】
請求項１に記載の装置であって、前記オーディオ・プロセッサは更に、前記アバタの前記聴取範囲の前記一部分に配置された別のオブジェクトからの音を含む重み付けされていないオーディオ・ストリームを前記重み付けされたオーディオ・ストリームが含むように、前記重み付けされたオーディオ・ストリームを生成するように動作する、装置。
【請求項３】
請求項１又は２に記載の装置であって、前記オーディオ・プロセッサは、所定のミキシング操作に従って、前記重み付けされたオーディオ・ストリームを生成するように動作し、前記所定のミキシング操作は、前記オブジェクト及び／又は前記他のオブジェクトを識別する識別情報と、前記重み付けされたオーディオ・ストリーム内の前記音と前記重み付けされていないオーディオ・ストリームの振幅を設定するために前記オーディオ・プロセッサによって使用され得る重み付け情報とを含む、装置。
【請求項４】
請求項３に記載の装置であって、前記音と、前記重み付けされていないオーディオ・ストリームと、前記ミキシング操作とを、通信ネットワークを介して受信するように動作する通信手段を更に含み、前記通信ネットワークは、前記重み付けされたオーディオ・ストリームと前記データとを、前記通信ネットワークを介して送信するようにも動作する、装置。
【請求項５】
仮想環境におけるアバタ用のオーディオ・シーンで使用されるオーディオ情報を生成するように動作する装置であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトからの音を含む、重み付けされていないオーディオ・ストリームを生成するように動作するオーディオ・プロセッサと、
前記重み付けされていないオーディオ・ストリームと、前記仮想環境における前記オブジェクトの近似的な位置を表すデータとを関連付けるように動作する関連付け手段であって、前記重み付けされていないオーディオ・ストリームと前記データとが前記オーディオ情報を表す、関連付け手段と
を備える装置。
【請求項６】
請求項５に記載の装置であって、前記オーディオ・プロセッサは、所定のミキシング操作に従って、前記重み付けされていないオーディオ・ストリームを生成するように動作し、前記所定のミキシング操作は、前記オブジェクトを識別する識別情報を含む、装置。
【請求項７】
請求項６に記載の装置であって、前記音と前記所定のミキシング操作とを、通信ネットワークを介して受信するように動作する通信手段を更に含み、前記通信ネットワークは、前記重み付けされていないオーディオ・ストリームと前記データとを、前記通信ネットワークを介して送信するようにも動作する、装置。
【請求項８】
仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を取得するための装置であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するように動作する識別手段と、
前記オブジェクトからの音に適用される重みを決定するように動作する重み付け手段と、
前記仮想環境内の前記一部分の位置を決定するように動作する位置決定手段であって、前記識別子と前記重みと前記位置とが、前記オーディオ・シーンを生成するために使用され得る前記情報を表す、位置決定手段と
を備える装置。
【請求項９】
請求項８に記載の装置であって、前記識別子と前記重みと前記位置とを、通信ネットワークを介して、複数の処理用システムの１つの処理用システムへ送信するように動作する通信手段を更に備える装置。
【請求項１０】
請求項９に記載の装置であって、前記通信手段は、前記通信ネットワーク用のルーティング情報を生成するように更に動作し、前記ルーティング情報は、前記音を前記複数の処理用システムの前記１つの処理用システムへ送るために前記通信ネットワークによって使用され得るものである、装置。
【請求項１１】
請求項８ないし１０の何れかに記載の装置であって、前記識別手段、前記重み付け手段、及び前記位置決定手段は、前記仮想環境の表現を処理することによって、前記識別子、前記重み、及び前記位置を決定するようにそれぞれに動作する、装置。
【請求項１２】
請求項８ないし１１の何れかに記載の装置であって、前記識別手段は、
前記仮想環境内の複数のアバタのうちの第１のアバタを選択し、
前記複数のアバタのうちの前記第１のアバタに最も近い第２のアバタを識別し、
前記アバタのうちの前記第２のアバタが既存のクラスタ内に含まれ得るかどうかを決定し、
前記アバタのうちの前記第２のアバタが前記既存のクラスタ内に含まれ得ると決定した場合、前記第２のアバタを前記既存のクラスタ内に含め、
前記アバタのうちの前記第２のアバタが前記既存のクラスタ内に含まれ得ないと決定した場合、前記アバタのうちの前記第２のアバタを含む新しいクラスタを生成し、それによって複数のクラスタを生成し、
２つの前記クラスタの間の角度ギャップを決定し、
前記角度ギャップ内に配置される更なるクラスタを生成し、
前記アバタのうちの少なくとも１つを前記更なるクラスタ内に含める
ことによって前記聴取範囲の前記一部分を決定するように動作する、
装置。
【請求項１３】
請求項８ないし１１の何れかに記載の装置であって、前記識別手段は、
前記仮想環境内の複数のアバタのうちの１つのアバタを選択し、
前記アバタから前記複数のアバタのうちの前記１つのアバタに延びる放射状の線を決定し、
前記放射状の線からの前記複数のアバタのうちの各々の絶対角距離を計算し、
前記アバタのうちの各アバタの前記絶対角距離を昇順リストに配列し、
前記昇順リスト内の連続して配列された前記絶対角距離の間の差分角分離を計算し、
前記差分角分離のうちの他の差分角分離より高い値をもつ少なくとも１つを差分角分離を選択し、
前記アバタから発せられる別の放射状の線であって、前記差分角分離に関連付けられた２つの前記アバタを２つに分ける別の放射状の線を決定する
ことによって前記聴取範囲の前記一部分を決定するように動作する、
装置。
【請求項１４】
仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を生成するための装置であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するように動作する識別手段と、
前記仮想環境内の前記オブジェクトの近似的な位置を決定するように動作する位置決定手段であって、前記識別子と前記近似的な位置とが、前記オーディオ・シーンを生成するために使用され得る前記情報を表す、位置決定手段と
を備える装置。
【請求項１５】
請求項１４に記載の装置であって、前記識別子と前記位置とを、通信ネットワークを介して、複数の処理用システムの１つの処理用システムへ送信するように動作する通信手段を更に含む、装置。
【請求項１６】
請求項１５に記載の装置であって、前記通信手段は、前記通信ネットワーク用のルーティング情報を生成するように更に動作し、前記ルーティング情報は、前記音を前記複数の処理用システムの前記１つの処理用システムへルーティングするために前記通信ネットワークによって使用され得るものである、装置。
【請求項１７】
請求項１４ないし１６の何れかに記載の装置であって、前記識別手段及び前記位置決定手段は、前記仮想環境の表現を処理することによって、前記識別子及び前記位置をそれぞれに決定するように動作する、装置。
【請求項１８】
請求項１４ないし１７の何れかに記載の装置であって、前記識別手段は、
前記仮想環境を複数のセルに分割し、
前記オブジェクトが配置される前記セルのうちの前記１つのセルにおける位置を決定する
ことによって前記オブジェクトの前記近似的な位置を決定するように動作する、
装置。
【請求項１９】
仮想環境におけるアバタ用のオーディオ・シーンを再現するための装置であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトからの音を含む、重み付けされたオーディオ・ストリームと、前記重み付けされたオーディオ・ストリームと関連付けられ、前記仮想環境における前記聴取範囲の前記一部分の位置を表すデータとを取得するように動作する取得手段と、
前記オーディオ・シーンを再現するために、前記重み付けされたオーディオ・ストリームと前記データとを処理するように動作する空間オーディオ再現エンジンと
を備える装置。
【請求項２０】
仮想環境におけるアバタ用のオーディオ・シーンを生成するための方法であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトからの音を含む重み付けされたオーディオ・ストリームを生成するステップと、
前記重み付けされたオーディオ・ストリームと、前記仮想環境における前記聴取範囲の前記一部分の位置を表すデータとを関連付けるステップであって、前記重み付けされたオーディオ・ストリームと前記データとが前記オーディオ・シーンを表す、ステップと
を備える方法。
【請求項２１】
請求項２０に記載の方法であって、前記重み付けされたオーディオ・ストリームを生成する前記ステップにおいて、前記重み付けされたオーディオ・ストリームが、前記アバタの前記聴取範囲の前記一部分に配置された別のオブジェクトからの音を含む重み付けされていないオーディオ・ストリームを含むものである、方法。
【請求項２２】
請求項２０又は２１に記載の方法であって、前記重み付けされたオーディオ・ストリームを生成する前記ステップは、所定のミキシング操作に従って実施され、前記所定のミキシング操作は、前記オブジェクト及び／又は前記他のオブジェクトを識別する識別情報と、前記重み付けされたオーディオ・ストリーム内の前記音と重み付けされていないオーディオ・ストリームの振幅を設定するためにオーディオ・プロセッサによって使用され得る重み付け情報とを含む、方法。
【請求項２３】
請求項２２に記載の方法であって、
前記音と前記重み付けされていないオーディオ・ストリームと前記ミキシング操作とを、通信ネットワークを介して受信するステップと、
前記重み付けされたオーディオ・ストリームと前記データとを、前記通信ネットワークを介して送信するステップと
を更に備える方法。
【請求項２４】
仮想環境におけるアバタ用のオーディオ・シーンで使用されるオーディオ情報を生成する方法であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトからの音を含む、重み付けされていないオーディオ・ストリームを生成するステップと、
前記重み付けされていないオーディオ・ストリームと、前記仮想環境における前記オブジェクトの近似的な位置を表すデータとを関連付けるステップであって、前記重み付けされていないオーディオ・ストリームと前記データとが前記オーディオ情報を表す、ステップと
を備える方法。
【請求項２５】
請求項２４に記載の方法であって、前記重み付けされていないオーディオ・ストリームを生成する前記ステップは、所定のミキシング操作に従って実施され、前記所定のミキシング操作は、前記オブジェクトを識別する識別情報を含む、方法。
【請求項２６】
請求項２５に記載の方法であって、
前記音と前記所定のミキシング操作とを、通信ネットワークを介して受信するステップと、
前記重み付けされていないオーディオ・ストリームと前記データとを、前記通信ネットワークを介して送信するステップと
を備える方法。
【請求項２７】
仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を取得する方法であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するステップと、
前記オブジェクトからの音に適用される重みを決定するステップと、
前記仮想環境内の前記一部分の位置を決定するステップであって、前記識別子と前記重みと前記位置とが、オーディオ・シーンを生成するために使用され得る前記情報を表す、ステップと
を備える方法。
【請求項２８】
請求項２７に記載の方法であって、前記識別子と前記重みと前記位置とを、通信ネットワークを介して複数の処理用システムの１つの処理用システムへ送信するステップを更に含む方法。
【請求項２９】
請求項２８に記載の方法であって、前記通信ネットワーク用のルーティング情報を生成するステップを更に含み、前記ルーティング情報は、前記音を前記複数の処理用システムの前記１つの処理用システムへルーティングするために前記通信ネットワークによって使用され得るものである、方法。
【請求項３０】
請求項２７ないし２９の何れかに記載の方法であって、前記識別子を決定する前記ステップ、前記重みを決定する前記ステップ、及び前記位置を決定する前記ステップは、前記仮想環境の表現を処理することによって、前記識別子、前記重み、及び前記位置をそれぞれに決定するステップを含む、方法。
【請求項３１】
請求項２７ないし３０の何れかに記載の方法であって、前記聴取範囲の前記一部分を決定するために以下のステップ、即ち、
前記仮想環境内の複数のアバタのうちの第１のアバタを選択するステップと、
前記複数のアバタのうちの前記第１のアバタに最も近い第２のアバタを識別するステップと、
前記アバタのうちの前記第２のアバタが既存のクラスタ内に含まれ得るかどうかを決定するステップと、
前記アバタのうちの前記第２のアバタが前記既存のクラスタ内に含まれ得ると決定した場合、前記第２のアバタを前記既存のクラスタ内に含めるステップと、
前記アバタのうちの前記第２のアバタが前記既存のクラスタ内に含まれ得ないと決定した場合、前記第２のアバタを含む新しいクラスタを生成し、それによって複数のクラスタを生成するステップと、
２つの前記クラスタの間の角度ギャップを決定するステップと、
前記角度ギャップ内に配置される更なるクラスタを生成するステップと、
前記アバタのうちの少なくとも１つのアバタを前記更なるクラスタ内に含めるステップと
を更に備える方法。
【請求項３２】
請求項２７ないし３０の何れかに記載の方法であって、前記聴取範囲の前記一部分を決定する以下のステップ、即ち、
前記仮想環境内の複数のアバタのうちの１つを選択するステップと、
前記アバタから前記複数のアバタのうちの前記１つのアバタへ延びる放射状の線を決定するステップと、
前記放射状の線からの前記複数のアバタのうちの各々の絶対角距離を計算するステップと、
前記アバタのうちの各々のアバタの前記絶対角距離を昇順リストに配列するステップと、
前記絶対角距離に基づいて、前記複数のアバタのうち連続するアバタの間の差分角分離を計算するステップと、
前記差分角分離のうちの他の差分角分離より高い値をもつ差分角分離のうちの少なくとも１つを選択するステップと、
前記アバタから発する別の放射状の線であって、前記差分角分離に関連付けられた２つの前記アバタを２つに分ける別の放射状の線を決定するステップと
を備える方法。
【請求項３３】
仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を生成する方法であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するステップと、
前記仮想環境内の前記オブジェクトの近似的な位置を決定するステップであって、前記識別子と前記近似的な位置とが、前記オーディオ・シーンを生成するために使用され得る前記情報を表す、ステップと
を備える方法。
【請求項３４】
請求項３３に記載の方法であって、前記識別子と前記位置とを、通信ネットワークを介して複数の処理用システムの１つの処理用システムへ送信するステップを更に含む方法。
【請求項３５】
請求項３４に記載の方法であって、前記通信ネットワーク用のルーティング情報を生成するステップを含み、前記ルーティング情報は、前記音を前記複数の処理用システムの前記１つの処理用システムへルーティングするために前記通信ネットワークによって使用され得るものである、方法。
【請求項３６】
請求項３３ないし３５の何れかに記載の方法であって、前記識別子を決定する前記ステップ及び前記近似的な位置を決定する前記ステップは、前記仮想環境の表現を処理することによって、前記識別子及び前記位置をそれぞれに決定するステップを含む、方法。
【請求項３７】
請求項３３ないし３６の何れかに記載の方法であって、前記オブジェクトの前記近似的な位置を決定する以下のステップ、即ち、
前記差分角分離のうちの他の差分角分離より高い値をもつ少なくとも１つの差分角分離を選択するステップと、
前記アバタから発せられる別の放射状の線であって、前記差分角分離に関連付けられた２つの前記アバタを２つに分ける別の放射状の線を決定するステップと
を備える方法。
【請求項３８】
仮想環境におけるアバタ用のオーディオ・シーンを再現する方法であって、
前記アバタの聴取範囲の一部分に配置されたオブジェクトからの音を含む、重み付けされたオーディオ・ストリームと、前記重み付けされたオーディオ・ストリームと関連付けられ、前記仮想環境における前記聴取範囲の前記一部分の位置を表すデータとを取得するステップと、
前記オーディオ・シーンを再現するために前記重み付けされたオーディオ・ストリームと前記データとを処理するステップと
を備える方法。
【請求項３９】
請求項２０ないし３８の何れかで定義された前記方法をコンピューティング装置に実行させるための少なくとも１つの命令を含むコンピュータ・プログラム。
【請求項４０】
請求項３９で定義された前記コンピュータ・プログラムを含むコンピュータ読取可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、オーディオ・シーンを生成する際に使用される装置及び方法に関し、特に、しかし決して排他的にではなく、仮想環境用のオーディオ・シーンを生成する際に使用される適用を有する。
【背景技術】
【０００２】
近年、視覚的没入型仮想環境の生成において著しい進展があった。これらの進展により、多くのマルチプレーヤ・ロールプレイング・ゲームが広範に受け入れられ、それらのゲームでは、参加者は、共通の仮想環境（戦場など）に入ることができ、その仮想環境内では、典型的には動画のキャラクタの形をとるアバタによって表される。戦場の形をとる仮想環境の場合、アバタは兵士とすることができる。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
視覚的没入型仮想環境（visually immersive virtual environment）が広範に受け入れられたのは、部分的には、極めて詳細で現実的なグラフィックス仮想環境が生成されることを可能にするイメージ処理技術の著しい進展による。３次元サウンド・カードの普及は、仮想環境への参加者に高品質の音を供給する能力を提供する。しかし、３次元サウンド・カードの多くの利用にも関わらず、今日の視覚的没入型仮想環境は、一般に、参加者が互いにコミュニケーションをとる現実的なメカニズムを提供することができない。多くの環境は、テキスト・ベースのチャットやウォーキートーキ・スタイルの音声などのような、非没入型コミュニケーション・メカニズムを使用する。
定義
【０００４】
以下は、本明細書で使用される様々な用語の定義を提供する。
【０００５】
・重み付けされたオーディオ・ストリーム（加重オーディオ・ストリーム）  −  １又は複数のオーディオ情報を含み、その各々が、音源とオーディオ情報の受け手との間の距離に基づいて変更（増大又は減少）される振幅を有する、オーディオ情報。
【０００６】
・重み付けされていないオーディオ・ストリーム（非加重オーディオ・ストリーム）  −  １又は複数のオーディオ情報を含むが、加重オーディオ・ストリームとは異なり、非加重オーディオ・ストリーム内のそれぞれのオーディオ情報の振幅は、元の振幅から変更されない、オーディオ情報。
【０００７】
・オーディオ・シーン  −  空間的に配置され、音源と音の受け手との間の距離に従っておそらくは減衰される合成音（例えば、仮想環境内の他のアバタに属するオーディオ及びその他の音源）を含む、オーディオ情報。オーディオ・シーンは、環境の音響的特性を表す音効果も含むことができる。
【課題を解決するための手段】
【０００８】
本発明の第１の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを生成するための装置が提供され、前記装置は、
アバタの聴取範囲の一部分に配置されたもの（オブジェクト）からのオーディオを含む、加重オーディオ・ストリームを生成するように動作するオーディオ・プロセッサと、
加重オーディオ・ストリームと、仮想環境における聴取範囲の一部分の位置を表すデータとを関連付けるように動作するものであり、加重オーディオ・ストリームと前記データとがオーディオ・シーンを表すものである、関連付け手段と
を含む。
【０００９】
本発明の第１の態様による装置は、幾つかの利点を有する。１つの利点は、聴取範囲を１又は複数の部分に分割することによって、オーディオ・シーンの忠実度が、必要とされるレベルに調整され得ることである。聴取範囲における部分の数が多くなるほど、オーディオ・シーンの忠実度は高くなる。装置は、１つの部分に対して１つの加重オーディオ・ストリームとなるように制限されないことが想定されている。実際、装置は、聴取範囲における他の部分に配置されたオブジェクトからの音（オーディオ）を各々に含む複数の加重オーディオ・ストリームを可能にする。装置の別の利点は、オブジェクトと受け手との間の距離を移動させた結果として音声が減衰するなどの特性を、加重オーディオ・ストリームで再現できることである。本発明の更に別の利点は、オーディオがその場所から発せられたかのように、オーディオ・ストリームが再生され得ることである。従って、オブジェクトの位置が受け手の右側であることをデータが表す場合、オーディオは、ステレオ・サウンド・システムの右チャンネルを使用して、再生される。
【００１０】
好ましくは、オーディオ・プロセッサは、加重オーディオ・ストリームを、アバタの聴取範囲の一部分に配置された別のオブジェクトからの音声を含む非加重オーディオ・ストリームを含むように、生成するように更に動作する。
【００１１】
加重オーディオ・ストリーム内に非加重オーディオ・ストリームを含むことの利点は、アバタの聴取範囲の一部分の周辺に配置された１又は複数の他のオブジェクトからの音声を表す手段を提供することである。非加重オーディオ・ストリームの利点は、多くのアバタのオーディオ・シーンを生成するために再利用され得ることであり、それによって、オーディオ・シーンを生成するための全体的な処理要件を低減することができる。
【００１２】
好ましくは、オーディオ・プロセッサは、所定のミキシング操作に従って、加重オーディオ・ストリームを生成するように動作し、所定のミキシング操作は、そのオブジェクト及び／又は他のオブジェクトを識別する識別情報と、加重オーディオ・ストリーム内のオーディオと非加重オーディオ・ストリームとの振幅を設定するためにオーディオ・プロセッサによって使用され得る重み付け情報とを含む。
【００１３】
好ましくは、装置は、オーディオと、非加重オーディオ・ストリームと、ミキシング操作とを通信ネットワークを介して受信するように動作する通信手段を更に含み、通信手段は、加重オーディオ・ストリームおよびデータを通信ネットワークを介して送信するように更に動作する。
【００１４】
通信手段は、装置が分散環境で使用されることを可能にするので、通信手段を使用することには利点がある。
【００１５】
本発明の第２の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンで使用されるオーディオ情報を生成するように動作する装置が提供され、この装置は、
アバタの聴取範囲の一部分に配置されたオブジェクトからの音声を含む、非加重オーディオ・ストリームを生成するように動作するオーディオ・プロセッサと、
非加重オーディオ・ストリームと、仮想環境におけるオブジェクトの近似的な位置を表すデータとを関連付けるように動作する関連付け手段であって、非加重オーディオ・ストリームと前記データとがオーディオ情報を表す、関連付け手段と
を含む。
【００１６】
本発明の第２の態様による装置は幾つかの利点を有し、そのうちの２つは、本発明の第１の態様の前述された第１及び第２の利点と同様である。
【００１７】
好ましくは、オーディオ・プロセッサは、所定のミキシング操作に従って、非加重オーディオ・ストリームを生成するように動作し、所定のミキシング操作は、オブジェクトを識別する識別情報を含む。
【００１８】
好ましくは、装置は、オーディオと、所定のミキシング操作とを通信ネットワークを介して受信するように動作する通信手段を更に含み、通信手段は、非加重オーディオ・ストリームとデータとを通信ネットワークを介して送信するようにも動作する。
【００１９】
通信手段は、装置が分散環境で使用されることを可能にするので、通信手段を使用することには利点がある。
【００２０】
本発明の第３の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を取得するための装置が提供され、この装置は、
アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するように動作する識別手段と、
オブジェクトからの音声に適用される重みを決定するように動作する重み付け手段と、
仮想環境内の一部分の位置を決定するように動する位置決定手段であって、識別子と、重みと、位置とが、オーディオ・シーンを生成するために使用され得る情報を表す、位置決定手段と
を含む。
【００２１】
重みと位置とを取得する本発明の第３の態様の能力は、幾つかの理由で有利である。第１に、重みは、オブジェクトからのオーディオ（音）を含む加重オーディオ・ストリームを生成するために使用されることができる。この点に関して、重みは、オーディオが加重オーディオ・ストリームに挿入されるときにその振幅を設定するために使用されることができる。第２に、位置は、オーディオがその位置から来ているかのように、オーディオを再生するために使用されることができる。例えば、オブジェクトの位置が受け手の右側であることを位置が表す場合、オーディオは、ステレオ・サウンド・システムの右チャンネルを使用して再生される。
【００２２】
好ましくは、装置は、識別子と、重みと、位置とを、通信ネットワークを介して複数の処理用システムの１つへ送信するように動作する通信手段を更に含む。
【００２３】
通信手段は、装置が分散環境で使用されることを可能にするので、通信手段を使用するのが有利である。更に、通信手段は、装置が、識別子と、重みと、位置とを、求められる処理を実行するために必要なリソース（処理能力）を有するシステムへ送信することを可能にする。
【００２４】
好ましくは、通信手段は、通信ネットワーク用のルーティング情報を生成するように更に動作し、ルーティング情報は、オーディオを複数の処理用システムの１つへルーティングするために通信ネットワークによって使用され得るようなものである。
【００２５】
ルーティング情報は、オーディオを転送するために使用される通信ネットワーク内のリンクを装置が効果的に選択することを可能にするので、ルーティング情報を提供できることは有利なことである。
【００２６】
好ましくは、識別手段、重み付け手段、及び位置決定手段は、仮想環境の表現を処理することによって、識別子、重み、及び位置を決定するようにそれぞれ動作する。
【００２７】
好ましくは、識別手段は、聴取範囲の一部分を決定するように動作するものであり、
仮想環境内の複数のアバタのうちの第１のアバタを選択し、
アバタのうちの第１のアバタに最も近い、複数のアバタのうちの第２のアバタを識別し、
アバタのうちの第２のアバタが既存のクラスタ内に含まれ得るかどうかを決定し、
第２のアバタが既存のクラスタに含まれ得ると決定した場合、アバタのうちの第２のアバタを既存のクラスタ内に含め、
アバタのうちの第２のアバタが既存のクラスタ内に含まれ得ないと決定した場合、アバタのうちの第２のアバタを含む新しいクラスタを生成し、それによって、複数のクラスタを生成し、
２つのクラスタの間の角度ギャップを決定し、
その角度ギャップ内に実質的に配置されるさらなるクラスタを生成し、
アバタのうちの少なくとも１つのアバタをさらなるクラスタ内に含める
ように動作することにより、聴取範囲の一部分を決定する。
【００２８】
代替例として、識別手段は、聴取範囲の一部分を決定するように動作するものであり、
仮想環境内の複数のアバタのうちの１つのアバタを選択し、
そのアバタから複数のアバタのうちの１つのアバタに延びる放射状の線を決定し、
放射状の線からの複数のアバタのうちの各アバタの絶対角距離を計算し、
アバタのうちの各アバタの絶対角距離を、昇順リストに配列し、
昇順リスト内の連続する絶対各距離の間の差分角分離（differential angular separation）を計算し、
別の差分角分離より高い値をもつ少なくとも１つの差分角分離を選択し、
アバタから発する別の放射状の線であって、前記少なくとも１つの差分角分離に関連付けられた２つのアバタを２つに分ける別の放射状の線を決定する
ように動作することにより、聴取範囲の一部分を決定する。
【００２９】
本発明の第４の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を生成するための装置が提供され、この装置は、
アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するように動作する識別手段と、
仮想環境内のオブジェクトの近似的な位置を決定するように動作する位置決定手段であって、識別子と近似的な位置とがオーディオ・シーンを生成するために使用され得る情報を表す、位置決定手段と
を含む。
【００３０】
近似的な位置は、その位置からオーディオが発せられているかのように、オブジェクトからのオーディオを再生するために使用され得るので、オブジェクトの近似的な位置を決定することは有利なことである。
【００３１】
好ましくは、装置は、識別子と位置とを通信ネットワークを介して複数の処理用システムの１つへ送信するように動作する通信手段を更に含む。
【００３２】
通信手段は、装置が分散環境で使用されることを可能にするので、通信手段を使用するのは有利なことである。更に、通信手段は、装置が、識別子と、重みと、位置とを、求められる処理を実行するために必要なリソース（処理能力）を有するシステムへ送信することを可能にする。
【００３３】
好ましくは、通信手段は、通信ネットワーク用のルーティング情報を生成するように更に動作し、ルーティング情報は、オーディオを複数の処理用システムの１つへルーティングするために通信ネットワークによって使用され得るようなものである。
【００３４】
ルーティング情報は、オーディオを転送するために使用される通信ネットワーク内のリンクを装置が効果的に選択することを可能にするので、ルーティング情報を提供できることは有利なことである。
【００３５】
好ましくは、識別手段及び位置決定手段は、仮想環境の表現を処理することによって、識別子及び位置をそれぞれ決定するように動作する。
【００３６】
好ましくは、識別手段は、
仮想環境を複数のセルに分割し、
セルのうちのオブジェクトが位置する１つのセル中の位置を決定する
ことによって、オブジェクトの近似的な位置を決定するように動作する。
【００３７】
本発明の第５の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを再現するための装置が提供され、この装置は、
アバタの聴取範囲の一部分に配置されたオブジェクトからのオーディオを含む、加重オーディオ・ストリームと、加重オーディオ・ストリームに関連付けられ、仮想環境における聴取範囲の前記一部分の位置を表すデータとを取得するように動作する取得手段と、
オーディオ・シーンを再現するために、加重オーディオ・ストリームと前記データとを処理するように動作する空間オーディオ再現エンジン（spatial audio rendering engine）と
を含む。
【００３８】
本発明の第６の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを生成する方法が提供され、この方法は、
アバタの聴取範囲の一部分に配置されたオブジェクトからのオーディオを含む、加重オーディオ・ストリームを生成するステップと、
加重オーディオ・ストリームと、仮想環境における聴取範囲の前記一部分の位置を表すデータとを関連付けるステップであって、加重オーディオ・ストリームと前記データとがオーディオ・シーンを表す、ステップと
を含む。
【００３９】
好ましくは、加重オーディオ・ストリームを生成するステップは、加重オーディオ・ストリームが、アバタの聴取範囲の一部分に配置された別のオブジェクトからのオーディオを含む非加重オーディオ・ストリームを含むようにしたものである。
【００４０】
好ましくは、加重オーディオ・ストリームを生成するステップは、所定のミキシング操作に従って実施され、所定のミキシング操作は、前記のオブジェクト及び／又は他のオブジェクトを識別する識別情報と、加重オーディオ・ストリーム内のオーディオと非加重オーディオ・ストリームとの振幅を設定するためにオーディオ・プロセッサによって使用され得る重み付け情報とを含む。
【００４１】
好ましくは、前記方法は、
オーディオと、非加重オーディオ・ストリームと、ミキシング操作とを、通信ネットワークを介して受信するステップと、
加重オーディオ・ストリームと、前記データとを通信ネットワークを介して送信するステップと
を更に含む。
【００４２】
本発明の第７の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンで使用されるオーディオ情報を生成する方法が提供され、この方法は、
アバタの聴取範囲の一部分に配置されたオブジェクトからのオーディオを含む、非加重オーディオ・ストリームを生成するステップと、
非加重オーディオ・ストリームと、仮想環境におけるオブジェクトの近似的な位置を表すデータとを関連付けるステップであって、非加重オーディオ・ストリームと前記データとがオーディオ情報を表す、ステップと
を含む。
【００４３】
好ましくは、非加重オーディオ・ストリームを生成するステップは、所定のミキシング操作に従って実施され、所定のミキシング操作は、オブジェクトを識別する識別情報を含む。
【００４４】
好ましくは、前記方法は、
オーディオと、所定のミキシング操作とを、通信ネットワークを介して受信するステップと、
非加重オーディオ・ストリームと、前記データとを、通信ネットワークを介して送信するステップと
を更に含む。
【００４５】
本発明の第８の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を取得する方法が提供され、この方法は、
アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するステップと、
そのオブジェクトからのオーディオに適用される重みを決定するステップと、
仮想環境内の前記一部分の位置を決定するステップであって、識別子と、重みと、位置とがオーディオ・シーンを生成するために使用され得る情報を表す、ステップと
を含む。
【００４６】
好ましくは、前記方法は、識別子と、重みと、位置とを、通信ネットワークを介して複数の処理用システムの１つへ送信するステップを更に含む。
【００４７】
好ましくは、前記方法は、通信ネットワーク用のルーティング情報を生成するステップを更に含み、ルーティング情報は、オーディオを複数の処理用システムの１つへルーティングするために通信ネットワークによって使用され得るようなものである。
【００４８】
好ましくは、識別子を決定するステップ、重みを決定するステップ、及び位置を決定するステップは、仮想環境の表現を処理することによって、識別子、重み、及び位置をそれぞれ決定するステップを含む。
【００４９】
好ましくは、前記方法は、聴取範囲の一部分を決定する以下のステップ、即ち、
仮想環境内の複数のアバタのうちの第１のアバタを選択するステップと、
アバタのうちの第１のアバタに最も近い、複数のアバタのうちの第２のアバタを識別するステップと、
アバタのうちの第２のアバタが既存のクラスタ内に含まれ得るかどうかを決定するステップと、
アバタのうちの第２のアバタを既存のクラスタ内に含むことができると決定した場合、アバタのうちの第２のアバタを既存のクラスタ内に含めるステップと、
アバタのうちの第２のアバタが既存のクラスタ内に含まれ得ないと決定した場合、アバタのうちの第２のアバタを含む新しいクラスタを生成し、それによって、複数のクラスタを生成するステップと、
２つのクラスタの間の角度ギャップを決定するステップと、
前記の角度ギャップ内に配置されるさらなるクラスタを生成するステップと、
アバタのうちの少なくとも１つのアバタを前記のさらなるクラスタ内に含めるステップと
を更に含む。
【００５０】
代替として、前記方法は、聴取範囲の一部分を決定する以下のステップ、即ち、
仮想環境内の複数のアバタのうちの１つのアバタを選択するステップと、
前記のアバタから複数のアバタのうちの１つのアバタへと延びる放射状の線を決定するステップと、
放射状の線からの、複数のアバタのうちの各アバタの絶対角距離を計算するステップと、
アバタのうちの各アバタの絶対角距離を、昇順リストに配列するステップと、
昇順リスト内の連続する絶対角距離の間の差分角分離を計算するステップと、
別の差分角分離より高い値をもつ少なくとも１つの差分角分離を選択するステップと、
前記のアバタから発する別の放射状の線であって、前記の差分角分離と関連付けられた２つのアバタを２つに分ける別の放射状の線を決定するステップと
を含む。
【００５１】
本発明の第９の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを生成するために使用され得る情報を生成する方法が提供され、この方法は、
アバタの聴取範囲の一部分に配置されたオブジェクトの識別子を決定するステップと、
仮想環境内のオブジェクトの近似的な位置を決定するステップであって、識別子と、近似的な位置とが、オーディオ・シーンを生成するために使用され得る情報を表す、ステップと
を含む。
【００５２】
好ましくは、前記方法は、識別子と、位置とを、通信ネットワークを介して複数の処理用システムの１つへ送信するステップを更に含む。
【００５３】
好ましくは、前記方法は、通信ネットワーク用のルーティング情報を生成するステップを更に含み、ルーティング情報は、オーディオを複数の処理用システムの１つへルーティングするために通信ネットワークによって使用され得るようなものである。
【００５４】
好ましくは、識別子を決定するステップ、及び近似的な位置を決定するステップは、仮想環境の表現を処理することによって、識別子及び位置をそれぞれに決定するステップを含む。
【００５５】
好ましくは、前記方法は、オブジェクトの近似的な位置を決定する以下のステップ、即ち、
仮想環境を複数のセルに分割するステップと、
セルのうちの、オブジェクトが配置される１つセルの中の位置を決定するステップと
を更に含む。
【００５６】
本発明の第１０の態様によれば、仮想環境におけるアバタ用のオーディオ・シーンを再現する方法が提供され、この方法は、
アバタの聴取範囲の一部分に配置されたオブジェクトからのオーディオを含む、加重オーディオ・ストリームと、加重オーディオ・ストリームに関連付けられ、仮想環境における聴取範囲の前記の一部分の位置を表すデータとを取得するステップと、
オーディオ・シーンを再現するために、加重オーディオ・ストリームと前記データとを処理するステップと
を含む。
【００５７】
本発明の第１１の態様によれば、本発明の第６、第７、第８、第９、又は第１０の態様による方法をコンピューティング装置に実行させるための少なくとも１つの命令を含むコンピュータ・プログラムが提供される。
【００５８】
本発明の第１２の態様によれば、本発明の第１１の態様によるコンピュータ・プログラムを含む、コンピュータで読取可能な媒体が提供される。
【００５９】
本発明の範囲に包含され得るその他の実施形態もあるが、本発明の一実施形態が、添付の図面を参照して、単なる例として説明される。
【発明を実施するための最良の形態】
【００６０】
図１を参照すると、本発明を実施するシステム１０１が示されており、システム１０１は、オーディオ・シーン生成システム１０３と、仮想環境状態維持システム１０５と、クライアント・コンピューティング装置１０７とを含む。システム１０１は、通信ネットワーク１０９も含む。オーディオ・シーン生成システム１０３、仮想環境状態維持システム１０５、及びクライアント・コンピューティング装置１０７は、通信ネットワーク１０９に接続され、分散方式で動作するためにネットワーク１０９を使用するように、即ち、通信ネットワーク１０９を介して互いに情報を交換するように、構成される。通信ネットワーク１０９は、インターネットなどのような公衆アクセス・パケット交換ネットワークの形態をとり、従って、多くの相互接続ルータ（図には示されず）から構築される。
【００６１】
概括的に述べると、仮想環境状態維持システム１０５は、仮想環境（戦場など）に関連する動的状態情報を維持するように構成される。システム１０５によって維持される動的状態情報は、例えば、仮想環境内の様々なアバタの位置や、仮想環境がゲームに関係する場合は、個々のプレーヤの点数を含む。オーディオ・シーン生成システム１０３は、基本的に、仮想環境への参加者のリアルタイム・オーディオに関係する性状（参加者の声など）を生成し、管理するように構成される。クライアント・コンピューティング装置１０７は、基本的に、クライアント・コンピューティング装置１０７を使用する人が仮想環境に参加することを可能にするため、仮想環境状態維持システム１０５及びオーディオ・シーン生成システム１０３と対話するように構成される。
【００６２】
より具体的には、グラフィカル環境状態維持システム１０５は、マザーボード、ハード・ディスク記憶装置、及びランダム・アクセス・メモリなどのような、従来のコンピュータ・ハードウェアを含むコンピュータ・サーバ（又は代替実施形態では、互いに相互接続された複数の分散コンピュータ・サーバ）の形態をとる。ハードウェアに加えて、コンピュータ・サーバは、様々なシステム・レベル動作（例えば、メモリ管理）を実行するオペレーティング・システム（ＬｉｎｕｘやＭｉｃｒｏｓｏｆｔ（登録商標）  Ｗｉｎｄｏｗｓ（登録商標）など）も含む。オペレーティング・システムは、アプリケーション・ソフトウェアを実行するための環境も提供する。この点に関して、コンピュータ・サーバは、ハード・ディスク記憶装置上にロードされ、仮想環境に関連する動的状態情報を維持することが可能なアプリケーション・パッケージを含む。この点に関して、仮想環境が、例えば、戦場である場合、動的状態情報は、特定のアバタ（例えば、兵士を表す）が戦車内に配置されることを表すことができる。仮想環境状態維持システム１０５は、基本的に、ソフトウェアの形態の２つのモジュール１１１及び１１３を含む。第１のモジュール１１１は、基本的に、動的状態情報を、クライアント・コンピューティング装置１０７へ送信すること、及びクライアント・コンピューティング装置１０７から受信することを担当する。第２のモジュール１１３は、動的状態情報をオーディオ・シーン生成システム１０３へ送信するように構成される。
【００６３】
先に述べられたように、オーディオ・シーン生成システム１０３は、基本的に、オーディオ・シーンを生成し、管理するように構成される。各オーディオ・シーンは、基本的に、仮想環境内のアバタによって聞かれる音の現実的な再生を表す。オーディオ・シーンを生成するため、オーディオ・シーン生成システム１０３は、制御サーバ１１５と、集約（サマリ）サーバ（summarisation server）１１７（本発明の代替実施形態は、複数の分散型のサマリ・サーバを含むことができる）と、複数の分散型のシーン生成サーバ１１９とを含む。制御サーバ１１５、サマリ・サーバ１１７、及び複数の分散シーン生成サーバ１１９は、通信ネットワーク１０９に接続され、通信ネットワーク１０９を使用して分散方式で互いに連携する。
【００６４】
制御サーバ１１５は、マザーボード、ハード・ディスク記憶装置、及びランダム・アクセス・メモリなどの従来のコンピュータ・ハードウェアを含むコンピュータ・サーバの形態をとる。ハードウェアに加えて、コンピュータ・サーバは、様々なシステム・レベル動作を実行するオペレーティング・システム（ＬｉｎｕｘやＭｉｃｒｏｓｏｆｔ（登録商標）  Ｗｉｎｄｏｗｓ（登録商標）など）も含む。オペレーティング・システムは、アプリケーション・ソフトウェアを実行するための環境も提供する。この点に関して、コンピュータ・サーバは、ハード・ディスク記憶装置上にロードされ、図２に示されるフローチャート２０１の様々なステップを実行するように構成されるアプリケーション・ソフトウェアを含む。アプリケーション・ソフトウェアが実行する第１のステップ２０３は、仮想環境に関連する動的状態情報を取得するために、仮想環境状態維持システム１０５と対話することである。アプリケーション・ソフトウェアは、仮想環境内に存在する様々なアバタと、仮想環境内のアバタの位置とを識別するために、動的状態情報を取得してそれを処理する。仮想環境状態維持システム１０５は、アバタのステータスの詳細（例えば、活動中か非活動か）と、任意のサウンド・バリアの詳細とを取得するためにも、動的状態情報を処理することができる。動的状態情報を取得するために、制御サーバ１１５のアプリケーション・ソフトウェアは、仮想環境状態維持システム１０５内の第２のモジュール１１３と通信ネットワーク１０９を介して対話する。
【００６５】
制御サーバ１１５のアプリケーション・ソフトウェアは、仮想環境状態維持システム１０５から動的状態情報を取得すると、仮想環境内の各アバタ用のオーディオ・シーンを生成するためにサマリ・サーバ１１７及びシーン生成サーバ１１９によって処理される複数のミキシング操作を生成するため、動的状態情報の処理へと進む。最初のステップ２０３に続いて、制御サーバ１１５は、グリッド・サマリ（集約）・アルゴリズムを実行するステップ２０５を実行する。図３を参照すると、グリッド・サマリ・アルゴリズムのフローチャート３０１が示されており、グリッド・サマリ・アルゴリズムの第１のステップ３０３は、最初のステップ２０３の最中に取得された動的状態情報を使用して、図４に見られ得る仮想環境のマップ４０１を形成することである。マップ４０１は、複数のセルに分割され、仮想環境内のアバタの位置を表す。マップ４０１は、アバタを小さい黒い点として表す。この実施形態は、単一のマップ４０１を含むだけであるが、本発明の代替実施形態では、複数のマップ４０１が利用され得ることが想定されている。
【００６６】
仮想環境内の各アバタは、対話ゾーンと背景ゾーンとに分割される聴取範囲をもつと考えられることに留意されたい。対話ゾーンは、一般に、アバタのすぐ近くを取り囲む聴取範囲の区画と考えられ、背景ゾーンは、聴取範囲の周辺に配置される聴取範囲の区画である。一例として、アバタの聴取範囲の対話ゾーンが、アバタを囲む円として図４に示されている。
【００６７】
マップ４０１を形成する際、制御サーバ１１５のアプリケーション・ソフトウェアは、各セルのサイズが、アバタの対話ゾーンより大きいか、又は等しくなることを保証する。
【００６８】
グリッド・サマリ・アルゴリズムを実施しているときに実行される次のステップ３０５は、マップ４０１内の各セルの「重心」を決定することである。重心は、基本的に、それを中心にセル内のアバタが集まる各セル内の点を識別することによって決定される。重心は、仮想環境内のアバタの近似的な位置と考えられ得る。グリッド・サマリ・アルゴリズムの最後のステップ３０７は、マップ４０１に基づいて、サマリ・サーバ１１７によって使用される制御テーブル５０１（図５に示される）を更新することである。制御テーブル５０１は複数の行を含み、その各々は、マップ４０１内のセルのうちの１つを表す。各行は、それぞれのセル内の各アバタの識別子と、そのセルの重心も含む。制御テーブル５０１の各行は、実際上、重み付けされていないミキシング操作と考えられ得る。制御テーブル５０１を更新するために、制御サーバ１１５のアプリケーション・ソフトウェアは、通信ネットワーク１０９を介してサマリ・サーバ１１７と対話する。
【００６９】
制御サーバ１１５のアプリケーション・ソフトウェアが、グリッド・サマリ・アルゴリズムを実行するステップ２０５を完了した後に実行する次のステップ２０７は、クラスタ・サマリ（集約）・アルゴリズムを実行することである。図６は、クラスタ・サマリ・アルゴリズムに含まれる様々なステップのフローチャート６０１を提供する。クラスタ・サマリ・アルゴリズムの第１のステップ６０３は、仮想環境内のアバタのうちの第１のアバタを選択することである。第１のステップ６０３に続いて、クラスタ・サマリ・アルゴリズムは、第１のステップ６０３で選択された第１のアバタに最も近い第２のアバタを選択するステップ６０５を含む。第２のアバタが選択された後、クラスタ・サマリ・アルゴリズムは、第２のアバタが、先に定められたクラスタ内に収まるかどうかを決定するステップ６０７を含む。前のステップ６０７に続いて、クラスタ・サマリ・アルゴリズムは、第２のアバタが、先に定められたクラスタ内に収まる場合、第２のアバタを先に定められたクラスタ内に位置付けるステップ６０９を含む。一方、第２のアバタが先に定められたクラスタに収まらないと決定された場合、クラスタ・サマリ・アルゴリズムは、第２のクラスタを中心に集結された新しいクラスタを確立するステップ６１１を含む。ここまでのステップ６０３から６１１は、所定数のクラスタ、Ｍ個、が確立されるまで実行されることに留意されたい。
【００７０】
Ｍ個のクラスタが確立された後、クラスタ・サマリ・アルゴリズムは、Ｍ個のクラスタの間の最大の角度ギャップを見つけるステップ６１３を実行することを含む。最大の角度ギャップが決定された後、クラスタ・サマリ・アルゴリズムは、最大の角度ギャップ内に新しいクラスタを確立するステップ６１５を含む。ここまでのステップ６１３及び６１５は、全部でＫ個のクラスタが確立されるまで繰り返えされる。クラスタの個数Ｍはクラスタの個数Ｋ以下であることに留意されたい。
【００７１】
クラスタ・サマリ・アルゴリズムの最後のステップ６１７は、すべての残りのアバタをＫ個のクラスタのうちの最適なものの中に位置付けることを含み、最適なものとは、角度誤差をを最小にするようなクラスタ、即ち、音源からの音が集約されていない場合の音源の実際の位置と、第１のアバタから見た音源が再現される位置との間の角度差を最小にするようなクラスタである。
【００７２】
クラスタ・サマリ・アルゴリズムのステップ６０３から６１７が実行された後、制御サーバ１１５のアプリケーション・ソフトウェアは、本明細書の以降の段落で詳細に説明される最後のステップ２０９の実施に進む。クラスタ・サマリ・アルゴリズムを使用して確立されるクラスタの説明図は図７に示されている。
【００７３】
本発明が、上述されたクラスタリング・アルゴリズムと共に使用されることのみに限定されないことは、当業者であれば容易に理解されよう。例えば、以下では、本発明の別の実施形態で利用され得る代替のクラスタリング・アルゴリズムについて説明する。図８のフローチャート８０７は、代替のクラスタリング・アルゴリズムに含まれるステップを示している。
【００７４】
代替のクラスタ・サマリ・アルゴリズムの第１のステップ８０３は、仮想環境内のアバタの１つを選択することである。次のステップ８０５は、前記アバタの聴取範囲内に配置されたアバタ及びグリッド集約（grid summaries、グリッド・サマリ）の総数を決定することである。グリッド・サマリは、基本的に、サマリ・サーバ１１７によって生成された、非加重オーディオ・ストリームである。サマリ・サーバ１１７のこの態様についての詳細な説明は、本明細書の後段で述べられる。
【００７５】
前のステップ８０５に続いて、次のステップ８０７は、聴取範囲内のアバタ及びグリッド・サマリの総数が、オーディオ・シーンを送信するために利用可能な帯域幅の量に基づいて選択された数であるＫ以下であるかを評価する。アバタ及びグリッド・サマリの総数がＫ以下であると決定された場合、制御サーバ１１５上で動作するアプリケーション・ソフトウェアは、アルゴリズムの最後のステップ２０９（本明細書の後段で説明される）へ進む。
【００７６】
聴取範囲内のアバタ及び／又はグリッド・サマリの総数がＫよりも大きい場合、制御サーバ１１５は、代替のクラスタ・サマリ・アルゴリズムを実施し続ける。この場合、代替のクラスタ・サマリ・アルゴリズムの次のステップ８０９は、前記アバタ（前のステップ８０３で選択されたもの）から発し、前記アバタの聴取範囲内の他のアバタの何れかを通過する放射状の線を、マップ４０１上に有効にプロットすることである。ステップ８０９の後、次のステップ８１１は、前記アバタの聴取範囲内のあらゆるアバタ及びグリッド・サマリの絶対角距離を計算することである。ステップ８１１に続いて、代替のクラスタリング・アルゴリズムは、絶対角距離を昇順リストに配列するステップ８１３を含む。次のステップ８１５は、昇順リストにおけるそれぞれの２つの連続する絶対角距離の差分角分離（differential angular separation）を計算することである。前のステップ８１５が実施された後、次のステップ８１７は、Ｋ個の最大差分角分離を識別することである。次のステップ８１９は、前記アバタの聴取範囲を、Ｋ個の最大の差分角分離に関連付けられたそれぞれのアバタの間に放射状の線を有効に形成することによって、Ｋ個の部分に分割することである。放射状の線に挟まれた領域は、聴取範囲の一部分と呼ばれる。図９は、代替のクラスタ・サマリ・アルゴリズムをマップ４０１に対して実行した結果を描いている。
【００７７】
代替のクラスタ・サマリ・アルゴリズムのここまでのステップの一例として、全部で１０個のアバタ／グリッド・サマリを含み、Ｋが４に等しい仮想環境について考察する。代替のクラスタ・サマリ・アルゴリズムの最初のステップ８１１及び８１３が、昇順に整列された絶対角距離の以下のリスト：
０、１０、１６、４８、６７、１２０、１４３、１７０、２２２、及び２５３
をもたらし、これらは、それぞれ、Ａ０からＡ９のアバタ／グリッドに対応しているものとする。
【００７８】
上記リスト内のそれぞれの２つの連続する絶対角距離の差分角分離を計算することを含む代替のクラスタ・サマリ・アルゴリズムの次のステップ８１５は、以下の結果：
１０、６、３２、１９、５３、２３、２７、５２、３１、及び１０７
をもたらす。
【００７９】
Ｋ（４）個の最大差分角分離を識別することを含む代替のクラスタ・サマリ・アルゴリズムのステップ８１７の結果として、以下のものが選択される：
１０７、５３、５２、及び３２。
【００８０】
聴取範囲を部分へと分割することを含む代替のクラスタ・サマリ・アルゴリズムのステップ８１９の結果として、以下のＫ（４）個のアバタのクラスタが確定される：
１：  Ａ０、Ａ１、及びＡ３
２：  Ａ３、及びＡ４
３：  Ａ５、Ａ６、及びＡ７
４：  Ａ８、及びＡ９。
【００８１】
前のステップに続いて、代替のクラスタ・サマリ・アルゴリズムは、仮想環境内のそれらのアバタの位置を決定するステップ８２１を含む。制御サーバ１１５上で動作するアプリケーション・ソフトウェアは、仮想環境状態維持システム１０５の第２のモジュール１１３と対話することによって、これを行う。それらのアバタの位置が決定された後、代替のクラスタ・サマリ・アルゴリズムは、それらのアバタの位置を使用して、それらのアバタと、代替のクラスタ・サマリ・アルゴリズムの実行の対象となっている前記アバタとの間の距離を決定するステップ８２３を含む。ステップ８２３の後、代替のクラスタ・サマリ・アルゴリズムは、距離を使用して、前記アバタの聴取範囲内のアバタから発するオーディオに適用される重みを決定するステップ８２５を含む。ステップ８２５は、重心（グリッド・サマリ・アルゴリズムから決定される）を使用して、前記アバタの聴取範囲内のそれぞれのグリッド・サマリの重みを決定するステップも含む。
【００８２】
この段階で、代替のクラスタ・サマリ・アルゴリズムは、聴取範囲を分割する先のステップ８１９中に識別された聴取範囲のそれぞれの部分の重心を決定するステップ８２７を含む。グリッド・サマリ・アルゴリズムと同様に、代替のクラスタ・サマリ・アルゴリズムは、アバタがそれを中心に集まるそれぞれの部分内の位置を選択することによって、重心を決定する。
【００８３】
代替のクラスタ・サマリ・アルゴリズムの最後のステップ８２９は、シーン生成サーバ１１９の制御テーブル１００１（図１０に示される）を更新することを含む。これは、聴取範囲の部分内のそれぞれのアバタの識別子と、それらの部分内のアバタに適用される重みと、それぞれの部分の重心とを含むように、制御テーブル１００１を更新することを含む。制御サーバ１１５は、シーン生成サーバ１１９内の制御テーブル１００１を、通信ネットワーク１０９を介して更新することに留意されたい。
【００８４】
図１０から理解され得るように、シーン生成サーバ１１９の制御テーブル１００１は、複数の行を含む。各行は、１つのアバタの聴取範囲の部分に対応し、聴取範囲の各部分内のアバタ／グリッド・サマリ（Ｓｈ及びＺｉそれぞれ）の識別子を格納する。制御テーブル１００１の各行は、アバタ／グリッド・サマリからのオーディオに適用される重み（Ｗ）と、前記部分の重心も含む（制御テーブル８０１の「位置座標」列に格納される）。重心は、ｘ、ｙ座標の形をとる。
【００８５】
代替のクラスタ・サマリ・アルゴリズムの最後のステップ８２９が完了すると、制御サーバ１１５上で動作するアプリケーション・ソフトウェアは、その最後のステップ２０９の実施に進む。最後のステップ２０９は、特定の通信リンクを確立するために通信ネットワーク１０９と対話することを含む。通信リンクは、オーディオがクライアント・コンピューティング装置１０７からサマリ・サーバ１１７及び／又はシーン生成サーバ１１９へ転送されることを可能にし、また、グリッド・サマリ（非加重オーディオ・ストリーム）がサマリ・サーバ１１７からシーン生成サーバ１１９へ転送されることを可能にするものである。
【００８６】
制御サーバ１１５がここまでのステップ２０３から２０９を完了すると、サマリ・サーバ１１７は、非加重オーディオ・ストリーム（グリッド・サマリ）を生成するための局面にある。サマリ・サーバ１１７は、マザーボード、ハード・ディスク記憶手段、及びランダム・アクセス・メモリなどの従来のコンピュータ・ハードウェアを含むコンピュータ・サーバの形態をとる。ハードウェアに加えて、コンピュータ・サーバは、様々なシステム・レベル動作を実行するオペレーティング・システム（ＬｉｎｕｘやＭｉｃｒｏｓｏｆｔ（登録商標）  Ｗｉｎｄｏｗｓ（登録商標）など）も含む。オペレーティング・システムは、アプリケーション・ソフトウェアを実行するための環境も提供する。この点に関して、コンピュータ・サーバは、非加重オーディオ・ストリームを生成するために、ミキシング処理を実施するように構成されたアプリケーション・ソフトウェアを含み、その処理のステップは、図１１に示されるフローチャート１１０１に示されている。
【００８７】
フローチャート１１０１の第１のステップ１１０３は、サマリ・サーバ１１７の制御テーブル５０１の「ミキシングされるストリーム」列で識別されるそれぞれのアバタに関連するオーディオ・ストリームＳｎを取得することである。制御テーブル５０１は、図５に示されている。サマリ・サーバ１１７は、オーディオ・ストリームＳｎを、通信ネットワーク１０９を介して取得することに留意されたい。この点に関して、制御サーバ１１５が通信ネットワーク１０９と対話する先のステップ２０９は、サマリ・サーバ１１７がオーディオ・ストリームＳｎを受信することを可能にするための、通信ネットワーク１０９において必要なリンクを確立している。次に、制御テーブル５０１のそれぞれの行について、次のステップ１１０５は、識別されたオーディオ・ストリームＳｎを一緒にミキシングして、それによって、Ｍ個のミキシングされたオーディオ・ストリームを生成することである。Ｍ個のミキシングされたオーディオ・ストリームの各々は、制御テーブル５０１のＭ個の行の各々の「ミキシングされるストリーム」列で識別されるオーディオ・ストリームＳｎを含む。ミキシング・ステップ１１０５でオーディオ・ストリームＳｎをミキシングする場合、それぞれのオーディオ・ストリームＳｎは、それらの元の変更されない振幅を有するものである。従って、Ｍ個のミキシングされたオーディオ・ストリームは、非加重オーディオ・ストリームと考えられる。先に示したように、それらの非加重オーディオ・ストリームは、図４に示されるマップ４０１のセル内に配置されたそれらのアバタからのオーディオ（音）を含む。
【００８８】
フローチャート１１０１の次のステップ１１０７は、非加重オーディオ・ストリームを、マップ４０１内のそれぞれのセルの対応する重心を用いてタグ付けすることである。このステップ１１０７は、実際上、制御テーブル５０１の「セルの重心」列からのｘ、ｙ座標を挿入することを含む。プロセス１１０１の最後のステップ１１０９は、非加重オーディオ・ストリームを、サマリ・サーバ１１７から適切なシーン生成サーバ１１９へ送ることであり、これは、通信ネットワーク１０９を使用して、非加重オーディオ・ストリームをサマリ・サーバ１１７からシーン生成サーバ１１９へ転送することによって、達成される。制御サーバ１１５が通信ネットワーク１０９と対話する先のステップ２０９は、非加重オーディオ・ストリームがサマリ・サーバ１１７からシーン生成サーバ１１９へ送られることを可能にするための、通信ネットワーク１０９において必要なリンクを確立している。
【００８９】
非加重オーディオ・ストリームがシーン生成サーバ１１９へ転送されると、シーン生成サーバ１１９は、加重オーディオ・ストリームを生成するためにミキシング処理を実施する局面にある。ミキシング処理に含まれるステップは、図１２のフローチャート１２０１に示されている。それぞれのシーン生成サーバ１１９は、マザーボード、ハード・ディスク記憶手段、及びランダム・アクセス・メモリなどの従来のコンピュータ・ハードウェアを含むコンピュータ・サーバの形態をとる。ハードウェアに加えて、コンピュータ・サーバは、様々なシステム・レベル動作を実行するオペレーティング・システム（ＬｉｎｕｘやＭｉｃｒｏｓｏｆｔ（登録商標）  Ｗｉｎｄｏｗｓ（登録商標）など）も含む。オペレーティング・システムは、アプリケーション・ソフトウェアを実行するための環境も提供する。この点に関して、コンピュータ・サーバは、フローチャート１２０１の様々なステップを実施するように構成されたアプリケーション・ソフトウェアを含む。
【００９０】
フローチャート１２０１のステップは、基本的に、サマリ・サーバ１１７によって実施されるフローチャート１１０１のステップと同じであるが、後者のフローチャート１２０１のステップは、非加重オーディオ・ストリームを生成する代わりに、加重オーディオ・ストリームが生成されるようにする点が異なる。図１２から理解され得るように、第１のステップ１２０３は、シーン生成サーバ１１９の制御テーブル１００１で識別されるオーディオ・ストリームＺｉ及びＳｎを取得することを含み、Ｚｉはサマリ・サーバ１１７からの非加重オーディオ・ストリームであり、Ｓｎは特定のアバタに関連付けられたオーディオ・ストリームである。次に、制御テーブル１００１内のそれぞれの行について、フローチャート１２０１は、制御テーブル１００１の「クラスタ・サマリ・ストリーム」列で識別されたオーディオ・ストリームＺｉ及びＳｎをミキシングし、それによって、加重オーディオ・ストリームを生成するステップ１２０５を含む。それぞれの加重オーディオ・ストリームは、制御テーブル１００１内の対応する行で識別されるオーディオ・ストリームＺｉ及びＳｎを含む。サマリ・サーバ１１７によって生成される非加重オーディオ・ストリームとは異なり、加重オーディオ・ストリームにおけるオーディオ・ストリームＺｉ及びＳｎの振幅は、異なる振幅である。それらの振幅は、ミキシング・ステップ１２０５で、オーディオ・ストリームＺｉ及びＳｎに、それらに関連する重みＷｎ（これらもまた制御テーブル１００１の「クラスタ・サマリ・ストリーム」列に含まれている）を有効に乗じることによって、決定される。
【００９１】
フローチャート１２０１の次のステップ１２０７は、加重オーディオ・ストリームを、制御テーブル１００１の対応する「位置座標」列に含まれる重心を用いてタグ付けすることである。これは、実際上、「位置座標」列に格納されたｘ、ｙ座標を挿入することを含む。フローチャート１２０１の最後のステップ１２０９は、加重オーディオ・ストリームを、通信ネットワーク１０９を介して、処理のためにクライアント・コンピューティング装置１０７へ送ることである。
【００９２】
クライアント・コンピューティング装置１０７は、マザーボード、ハード・ディスク、及びランダム・アクセス・メモリなどの従来のコンピュータ・ハードウェアを含むパーソナル・コンピュータの形態をとる。ハードウェアに加えて、クライアント・コンピューティング装置１０７には、様々なシステム・レベル動作を管理し、また、アプリケーション・ソフトウェアが実行され得る環境を提供するオペレーティング・システム（Ｍｉｃｒｏｓｏｆｔ（登録商標）  Ｗｉｎｄｏｗｓ（登録商標）など）がロードされている。クライアント・コンピューティング装置１０７は、また、オーディオ・クライアント１２１と、仮想環境クライアント１２３と、空間オーディオ再現エンジン１２５とを含む。オーディオ・クライアント１２１は、シーン生成サーバ１１９から加重オーディオ・ストリームを受信してそれを処理するように構成されるアプリケーション・ソフトウェアの形態をとる。空間オーディオ再現エンジン１２５は、オーディオ再現ソフトウェア及びサウンドカードの形態をとる。シーン生成サーバ１１９から加重オーディオ・ストリームを受信すると、オーディオ・クライアント１２１は、空間オーディオ再現エンジン１２５と対話を行い、加重オーディオ・ストリームを再現（再生）し、それによって、そのクライアント・コンピューティング装置１０７を使用している人に向けてオーディオ・シーンを生成する。この点について、空間オーディオ再現エンジン１２５は、オーディオ・シーンを人に向けて伝達するために使用される１組のスピーカに接続される。オーディオ・クライアント１２１は、加重オーディオ・ストリームにタグ付けする先のステップ１２０７の間にシーン生成サーバ１１９によって加重オーディオ・ストリームに挿入された位置情報を取り出すことに留意されたい。取り出された位置情報は（加重オーディオ・ストリームと共に）、空間オーディオ再現エンジン１２５へ伝達され、次に、空間オーディオ再現エンジン１２５は、位置情報を使用して、情報がその位置から発せられているかのように、例えば、右側から発せられているかのように、情報を再生する。
【００９３】
仮想環境クライアント１２３は、ソフトウェアの形態（代替の実施形態では、何らかの形態の専用のイメージ処理ハードウェアであり得る）をとり、基本的に、仮想環境に関連する動的状態情報を取得するための、仮想環境状態維持システム１０５の第１のモジュール１１１と対話するように構成される。動的状態情報を受け取ると、グラフィックス・クライアント１２３は、動的状態情報を処理して仮想環境を再生（再現）する。クライアント・コンピューティング装置１０７を使用している人に向けて仮想環境が表示されることを可能にするため、クライアント・コンピューティング装置１０７は、モニタ（図示せず）も含む。グラフィックス・クライアント１２３は、仮想環境内における人の存在に関連する動的情報を仮想環境状態維持システム１０５へ提供するようにも構成される。
【００９４】
本明細書で説明された本発明は、具体的に説明された実施形態以外の変形形態及び変更形態も可能であることは、当業者であれば理解されよう。本発明は、本発明の主旨及び範囲内に包含されるそのようなすべての変形及び変更を含むことを理解されたい。
【図面の簡単な説明】
【００９５】
【図１】図１は、本発明の実施形態によるシステムのブロック図を提供する。
【図２】図２は、図１に示されたシステムによって実行される様々なステップのフローチャートを提供する。
【図３】図３は、図１に示されたシステムで使用されるグリッド・サマリ・アルゴリズムに含まれるステップのフローチャートを提供する。
【図４】図４は、図１に示されたシステムによって使用されるマップを示す。
【図５】図５は、図１に示されたシステムによって使用される制御テーブルを示す。
【図６】図６は、図１に示されたシステムで使用されるクラスタ・サマリ・アルゴリズムに含まれるステップのフローチャートを提供する。
【図７】図７は、図６のアルゴリズムを使用して形成されるクラスタの説明図である。
【図８】図８は、代替例のクラスタ・アルゴリズムに含まれる様々なステップのフローチャートである。
【図９】図９は、図８の代替例のクラスタ・アルゴリズムを、図４に示されたマップに対して実行した結果を視覚的に示す。
【図１０】図１０は、図１に示されたシステムによって使用される別の制御テーブルを示す。
【図１１】図１１は、図１に示されたシステムによって実行されるプロセスに含まれるステップのフローチャートを提供する。
【図１２】図１２は、図１に示されたシステムによって実行されるプロセスに含まれるステップのフローチャートを提供する。
【図１】
2007533213.tif 000003
【図２】
2007533213.tif 000004
【図３】
2007533213.tif 000005
【図４】
2007533213.tif 000006
【図５】
2007533213.tif 000007
【図６】
2007533213.tif 000008
【図７】
2007533213.tif 000009
【図８】
2007533213.tif 000010
【図９】
2007533213.tif 000011
【図１０】
2007533213.tif 000012
【図１１】
2007533213.tif 000013
【図１２】
2007533213.tif 000014
【国際調査報告】
2007533213.tif 000015
2007533213.tif 000016
2007533213.tif 000017