実施例の以下の説明では、本明細書の一部を形成し、例証として、実践され得る具体的実施例が示される、付随の図面が、参照される。他の実施例も、使用され得、構造変更が、開示される実施例の範囲から逸脱することなく、行われ得ることを理解されたい。
例示的ウェアラブルシステム
図23は、ユーザの頭部上に装着されるように構成される、例示的ウェアラブル頭部デバイス2300を図示する。ウェアラブル頭部デバイス2300は、頭部デバイス(例えば、ウェアラブル頭部デバイス2300)、ハンドヘルドコントローラ(例えば、下記に説明されるハンドヘルドコントローラ2400)、および/または補助ユニット(例えば、下記に説明される補助ユニット2500)等の1つ以上のコンポーネントを含む、より広範なウェアラブルシステムの一部であってもよい。いくつかの実施例では、ウェアラブル頭部デバイス2300は、仮想現実、拡張現実、または複合現実システムまたはアプリケーションのために使用されることができる。ウェアラブル頭部デバイス2300は、ディスプレイ2310Aおよび2310B(左および右透過性ディスプレイと、直交瞳拡大(OPE)格子セット2312A/2312Bおよび射出瞳拡大(EPE)格子セット2314A/2314B等、ディスプレイからユーザの眼に光を結合するための関連付けられるコンポーネントとを含み得る)等の1つ以上のディスプレイと、スピーカ2320Aおよび2320B(それぞれ、つるアーム2322Aおよび2322B上に搭載され、ユーザの左および右耳に隣接して位置付けられ得る)等の左および右音響構造と、赤外線センサ、加速度計、GPSユニット、慣性測定ユニット(IMU、例えば、IMU2326)、音響センサ(例えば、マイクロホン2350)等の1つ以上のセンサと、直交コイル電磁受信機(例えば、左つるアーム2322Aに搭載されるように示される受信機2327)と、ユーザから離れるように配向される、左および右カメラ(例えば、深度(飛行時間)カメラ2330Aおよび2330B)と、ユーザに向かって配向される、左および右眼カメラ(例えば、ユーザの眼移動を検出するため)(例えば、眼カメラ2328Aおよび2328B)とを含むことができる。しかしながら、ウェアラブル頭部デバイス2300は、本発明の範囲から逸脱することなく、任意の好適なディスプレイ技術およびセンサまたは他のコンポーネントの任意の好適な数、タイプ、または組み合わせを組み込むことができる。いくつかの実施例では、ウェアラブル頭部デバイス2300は、ユーザの音声によって発生されるオーディオ信号を検出するように構成される、1つ以上のマイクロホン150を組み込んでもよく、そのようなマイクロホンは、ユーザの口に隣接して位置付けられてもよい。いくつかの実施例では、ウェアラブル頭部デバイス2300は、他のウェアラブルシステムを含む、他のデバイスおよびシステムと通信するために、ネットワーキング特徴(例えば、Wi-Fi能力)を組み込んでもよい。ウェアラブル頭部デバイス2300はさらに、バッテリ、プロセッサ、メモリ、記憶ユニット、または種々の入力デバイス(例えば、ボタン、タッチパッド)等のコンポーネントを含んでもよい、または1つ以上のそのようなコンポーネントを含むハンドヘルドコントローラ(例えば、ハンドヘルドコントローラ2400)または補助ユニット(例えば、補助ユニット2500)に結合されてもよい。いくつかの実施例では、センサは、ユーザの環境に対する頭部搭載型ユニットの座標のセットを出力するように構成されてもよく、入力をプロセッサに提供し、同時位置特定およびマッピング(SLAM)プロシージャおよび/またはビジュアルオドメトリアルゴリズムを実施してもよい。いくつかの実施例では、ウェアラブル頭部デバイス2300は、下記にさらに説明されるように、ハンドヘルドコントローラ2400および/または補助ユニット2500に結合されてもよい。
図24は、例示的ウェアラブルシステムの例示的モバイルハンドヘルドコントローラコンポーネント2400を図示する。いくつかの実施例では、ハンドヘルドコントローラ2400は、ウェアラブル頭部デバイス2300および/または下記に説明される補助ユニット2500と有線または無線通信してもよい。いくつかの実施例では、ハンドヘルドコントローラ2400は、ユーザによって保持されるべき取っ手部分2420と、上面2410に沿って配置される1つ以上のボタン2440とを含む。いくつかの実施例では、ハンドヘルドコントローラ2400は、光学追跡標的としての使用のために構成されてもよく、例えば、ウェアラブル頭部デバイス2300のセンサ(例えば、カメラまたは他の光学センサ)は、ハンドヘルドコントローラ2400の位置および/または配向を検出するように構成されることができ、これは、転じて、ハンドヘルドコントローラ2400を保持するユーザの手の位置および/または配向を示し得る。いくつかの実施例では、ハンドヘルドコントローラ2400は、プロセッサ、メモリ、記憶ユニット、ディスプレイ、または上記に説明されるもの等の1つ以上の入力デバイスを含んでもよい。いくつかの実施例では、ハンドヘルドコントローラ2400は、1つ以上のセンサ(例えば、ウェアラブル頭部デバイス2300に関して上記に説明されるセンサまたは追跡コンポーネントのうちのいずれか)を含む。いくつかの実施例では、センサは、ウェアラブル頭部デバイス2300に対する、またはウェアラブルシステムの別のコンポーネントに対するハンドヘルドコントローラ2400の位置または配向を検出することができる。いくつかの実施例では、センサは、ハンドヘルドコントローラ2400の取っ手部分2420内に位置付けられてもよい、および/またはハンドヘルドコントローラに機械的に結合されてもよい。ハンドヘルドコントローラ2400は、例えば、ボタン2440の押下状態、またはハンドヘルドコントローラ2400の位置、配向、および/または運動(例えば、IMUを介して)に対応する、1つ以上の出力信号を提供するように構成されることができる。そのような出力信号は、ウェアラブル頭部デバイス2300のプロセッサへの、補助ユニット2500への、またはウェアラブルシステムの別のコンポーネントへの入力として使用されてもよい。いくつかの実施例では、ハンドヘルドコントローラ2400は、音(例えば、ユーザの発話、環境音)を検出し、ある場合には、検出された音に対応する信号をプロセッサ(例えば、ウェアラブル頭部デバイス2300のプロセッサ)に提供するために、1つ以上のマイクロホンを含むことができる。
図25は、例示的ウェアラブルシステムの例示的補助ユニット2500を図示する。いくつかの実施例では、補助ユニット2500は、ウェアラブル頭部デバイス2300および/またはハンドヘルドコントローラ2400と有線または無線通信してもよい。補助ユニット2500は、ウェアラブル頭部デバイス2300および/またはハンドヘルドコントローラ2400(ディスプレイ、センサ、音響構造、プロセッサ、マイクロホン、および/またはウェアラブル頭部デバイス2300またはハンドヘルドコントローラ2400の他のコンポーネントを含む)等のウェアラブルシステムの1つ以上のコンポーネントを動作させるためのエネルギーを提供するために、バッテリを含むことができる。いくつかの実施例では、補助ユニット2500は、プロセッサ、メモリ、記憶ユニット、ディスプレイ、1つ以上の入力デバイス、および/または上記に説明されるもの等の1つ以上のセンサを含んでもよい。いくつかの実施例では、補助ユニット2500は、補助ユニットをユーザ(例えば、ユーザによって装着されるベルト)に取り付けるためのクリップ2510を含む。ウェアラブルシステムの1つ以上のコンポーネントを格納するために補助ユニット2500を使用する利点は、そのように行うことが、大きいまたは重いコンポーネントが、(例えば、ウェアラブル頭部デバイス2300内に格納される場合)ユーザの頭部に搭載される、または(例えば、ハンドヘルドコントローラ2400内に格納される場合)ユーザの手によって担持されるのではなく、大きく重い物体を支持するために比較的に良好に適しているユーザの腰部、胸部、または背部の上に担持されることを可能にし得ることである。これは、バッテリ等の比較的に重いまたは嵩張るコンポーネントに関して特に有利であり得る。
図26は、上記に説明される、例示的ウェアラブル頭部デバイス2300と、ハンドヘルドコントローラ2400と、補助ユニット2500とを含み得る等、例示的ウェアラブルシステム2600に対応し得る、例示的機能ブロック図を示す。いくつかの実施例では、ウェアラブルシステム2600は、仮想現実、拡張現実、または複合現実用途のために使用され得る。図26に示されるように、ウェアラブルシステム2600は、ここでは「トーテム」と称される(および上記に説明されるハンドヘルドコントローラ2400に対応し得る)例示的ハンドヘルドコントローラ2600Bを含むことができ、ハンドヘルドコントローラ2600Bは、トーテム/ヘッドギヤ6自由度(6DOF)トーテムサブシステム2604Aを含むことができる。ウェアラブルシステム2600はまた、(上記に説明されるウェアラブル頭部デバイス2300に対応し得る)例示的ヘッドギヤデバイス2600Aを含むことができ、ヘッドギヤデバイス2600Aは、トーテム/ヘッドギヤ6DOFヘッドギヤサブシステム2604Bを含む。実施例では、6DOFトーテムサブシステム2604Aおよび6DOFヘッドギヤサブシステム2604Bは、協働し、ヘッドギヤデバイス2600Aに対するハンドヘルドコントローラ2600Bの6つの座標(例えば、3つの平行移動方向におけるオフセットおよび3つの軸に沿った回転)を決定する。6自由度は、ヘッドギヤデバイス2600Aの座標系に対して表されてもよい。3つの平行移動オフセットは、そのような座標系内におけるX、Y、およびZオフセット、平行移動行列、またはある他の表現として表されてもよい。回転自由度は、ヨー、ピッチ、およびロール回転のシーケンス、ベクトル、回転行列、四元数、またはある他の表現として表されてもよい。いくつかの実施例では、ヘッドギヤデバイス2600A内に含まれる1つ以上の深度カメラ2644(および/または1つ以上の非深度カメラ)および/または1つ以上の光学標的(例えば、上記に説明されるようなハンドヘルドコントローラ2400のボタン2440またはハンドヘルドコントローラ内に含まれる専用光学標的)は、6DOF追跡のために使用されることができる。いくつかの実施例では、ハンドヘルドコントローラ2600Bは、上記に説明されるようなカメラを含むことができ、ヘッドギヤデバイス2600Aは、カメラと併せた光学追跡のための光学標的を含むことができる。いくつかの実施例では、ヘッドギヤデバイス2600Aおよびハンドヘルドコントローラ2600Bは、それぞれ、3つの直交して配向されるソレノイドのセットを含み、これは、3つの区別可能な信号を無線で送信および受信するために使用される。受信するために使用される、コイルのそれぞれの中で受信される3つの区別可能な信号の相対的大きさを測定することによって、ヘッドギヤデバイス2600Aに対するハンドヘルドコントローラ2600Bの6DOFが、決定されてもよい。いくつかの実施例では、6DOFトーテムサブシステム2604Aは、ハンドヘルドコントローラ2600Bの高速移動に関する改良された正確度および/またはよりタイムリーな情報を提供するために有用である、慣性測定ユニット(IMU)を含むことができる。
拡張現実または複合現実用途を伴ういくつかの実施例では、座標をローカル座標空間(例えば、ヘッドギヤデバイス2600Aに対して固定される座標空間)から慣性座標空間に、または環境座標空間に変換することが、望ましくあり得る。例えば、そのような変換は、ヘッドギヤデバイス2600Aのディスプレイが、ディスプレイ上の固定位置および配向において(例えば、ヘッドギヤデバイス2600Aのディスプレイにおける同一の位置において)ではなく、仮想オブジェクトを実環境に対する予期される位置および配向において提示する(例えば、ヘッドギヤデバイス2600Aの位置および配向にかかわらず、前方に向いた実椅子に着座している仮想人物)ために必要であり得る。これは、仮想オブジェクトが、実環境内に存在する(かつ、例えば、ヘッドギヤデバイス2600Aが、偏移および回転するにつれて、実環境内に不自然に位置付けられて現れない)という錯覚を維持することができる。いくつかの実施例では、座標空間の間の補償変換が、慣性または環境座標系に対するヘッドギヤデバイス2600Aの変換を決定するために、(例えば、同時位置特定およびマッピング(SLAM)および/またはビジュアルオドメトリプロシージャを使用して)深度カメラ2644からの画像を処理することによって決定されることができる。図26に示される実施例では、深度カメラ2644は、SLAM/ビジュアルオドメトリブロック2606に結合されることができ、画像をブロック2606に提供することができる。SLAM/ビジュアルオドメトリブロック2606実装は、本画像を処理し、次いで、頭部座標空間と実座標空間との間の変換を識別するために使用され得る、ユーザの頭部の位置および配向を決定するように構成される、プロセッサを含むことができる。同様に、いくつかの実施例では、ユーザの頭部姿勢および場所に関する情報の付加的源が、ヘッドギヤデバイス2600AのIMU2609から取得される。IMU2609からの情報は、SLAM/ビジュアルオドメトリブロック2606からの情報と統合され、ユーザの頭部姿勢および位置の高速調節に関する改良された正確度および/またはよりタイムリーな情報を提供することができる。
いくつかの実施例では、深度カメラ2644は、ヘッドギヤデバイス2600Aのプロセッサ内に実装され得る、手のジェスチャトラッカ2611に、3D画像を供給することができる。手のジェスチャトラッカ2611は、例えば、深度カメラ2644から受信された3D画像を手のジェスチャを表す記憶されたパターンに合致させることによって、ユーザの手のジェスチャを識別することができる。ユーザの手のジェスチャを識別する他の好適な技法も、明白となるであろう。
いくつかの実施例では、1つ以上のプロセッサ2616は、ヘッドギヤサブシステム2604B、IMU2609、SLAM/ビジュアルオドメトリブロック2606、深度カメラ2644、マイクロホン2650、および/または手のジェスチャトラッカ2611からデータを受信するように構成されてもよい。プロセッサ2616はまた、制御信号を6DOFトーテムシステム2604Aに送信し、それから受信することができる。プロセッサ2616は、ハンドヘルドコントローラ2600Bがテザリングされない実施例等では、無線で、6DOFトーテムシステム2604Aに結合されてもよい。プロセッサ2616はさらに、視聴覚コンテンツメモリ2618、グラフィカル処理ユニット(GPU)2620、および/またはデジタル信号プロセッサ(DSP)オーディオ空間化装置2622等の付加的コンポーネントと通信してもよい。DSPオーディオ空間化装置2622は、頭部関連伝達関数(HRTF)メモリ2625に結合されてもよい。GPU2620は、画像毎に変調された光の左源2624に結合される、左チャネル出力と、画像毎に変調された光の右源2626に結合される、右チャネル出力とを含むことができる。GPU2620は、立体視画像データを画像毎に変調された光の源2624、2626に出力することができる。DSPオーディオ空間化装置2622は、オーディオを左スピーカ2612および/または右スピーカ2614に出力することができる。DSPオーディオ空間化装置2622は、プロセッサ2616から、ユーザから仮想音源(例えば、ハンドヘルドコントローラ2600Bを介して、ユーザによって移動され得る)への方向ベクトルを示す入力を受信することができる。方向ベクトルに基づいて、DSPオーディオ空間化装置2622は、対応するHRTFを決定することができる(例えば、HRTFにアクセスすることによって、または複数のHRTFを補間することによって)。DSPオーディオ空間化装置2622は、次いで、決定されたHRTFを仮想オブジェクトによって発生された仮想音に対応するオーディオ信号等のオーディオ信号に適用することができる。これは、複合現実環境内の仮想音に対するユーザの相対的位置および配向を組み込むことによって、すなわち、その仮想音が、実環境内の実音である場合に聞こえるであろうもののユーザの予期に合致する仮想音を提示することによって、仮想音の信憑性および現実性を向上させることができる。
図26に示されるもの等のいくつかの実施例では、プロセッサ2616、GPU2620、DSPオーディオ空間化装置2622、HRTFメモリ2625、およびオーディオ/視覚的コンテンツメモリ2618のうちの1つ以上のものは、補助ユニット2600C(上記に説明される補助ユニット2500に対応し得る)内に含まれてもよい。補助ユニット2600Cは、バッテリ2627を含み、そのコンポーネントを給電する、および/または電力をヘッドギヤデバイス2600Aおよび/またはハンドヘルドコントローラ2600Bに供給してもよい。そのようなコンポーネントを、ユーザの腰部に搭載され得る、補助ユニット内に含むことは、ヘッドギヤデバイス2600Aのサイズおよび重量を限定することができ、これは、ひいては、ユーザの頭部および頸部の疲労を低減させることができる。
図26は、例示的ウェアラブルシステム2600の種々のコンポーネントに対応する要素を提示するが、これらのコンポーネントの種々の他の好適な配列も、当業者に明白となるであろう。例えば、補助ユニット2600Cと関連付けられるものとして図26に提示される要素は、代わりに、ヘッドギヤデバイス2600Aまたはハンドヘルドコントローラ2600Bと関連付けられ得る。さらに、いくつかのウェアラブルシステムは、ハンドヘルドコントローラ2600Bまたは補助ユニット2600Cを完全に無くしてもよい。そのような変更および修正は、開示される実施例の範囲内に含まれるものとして理解されるものである。
オーディオレンダリング
下記に説明されるシステムおよび方法は、上記に説明されるもの等の拡張現実または複合現実システムにおいて実装されることができる。例えば、拡張現実システムの1つ以上のプロセッサ(例えば、CPU、DSP)が、オーディオ信号を処理するために、または下記に説明されるコンピュータ実装方法のステップを実装するために使用されることができ、拡張現実システムのセンサ(例えば、カメラ、音響センサ、IMU、LIDAR、GPS)が、本システムのユーザまたはユーザの環境内の要素の位置および/または配向を決定するために使用されることができ、拡張現実システムのスピーカが、オーディオ信号をユーザに提示するために使用されることができる。
上記に説明されるもの等の拡張現実または複合現実システムでは、1つ以上のプロセッサ(例えば、DSPオーディオ空間化装置2622)は、1つ以上のスピーカ(例えば、上記に説明される左および右スピーカ2612/2614)を介したウェアラブル頭部デバイスのユーザへの提示のために、1つ以上のオーディオ信号を処理することができる。いくつかの実施形態では、1つ以上のスピーカは、ウェアラブル頭部デバイスとは別個のユニット(例えば、ヘッドホン)に属してもよい。オーディオ信号の処理は、知覚されるオーディオ信号の真正性、例えば、複合現実環境内のユーザに提示されるオーディオ信号が、オーディオ信号が実環境内で聞こえるであろう方法のユーザの予期に合致する程度と、オーディオ信号を処理する際に伴う算出オーバーヘッドとの間のトレードオフを要求する。仮想環境内でオーディオ信号を現実的に空間化することは、没入感および信憑性があるユーザ体験を作成することに対して重要であり得る。
図1は、いくつかの実施形態による、例示的空間化システム100を図示する。システム100は、入力音/信号を空間化することによって音景(音環境)を作成する。システム100は、エンコーダ104と、ミキサ106と、デコーダ110とを含む。
システム100は、入力信号102を受信する。入力信号102は、音景内に提示されるべきオブジェクトに対応するデジタルオーディオ信号を含んでもよい。いくつかの実施形態では、デジタルオーディオ信号は、オーディオデータのパルスコード変調(PCM)波形であってもよい。
エンコーダ104は、入力信号102を受信し、1つ以上の左利得調節信号および1つ以上の右利得調節信号を出力する。実施例では、エンコーダ104は、遅延モジュール105を含む。遅延モジュール105は、プロセッサ(上記に説明される拡張現実システムのプロセッサ等)によって実行され得る、遅延プロセスを含むことができる。音景内のオブジェクトが具体的場所から生じるように現れさせるために、エンコーダ104は、それに応じて、遅延モジュール105を使用して入力信号102を遅延させ、利得モジュール(g_L1 … g_LMおよびg_R1 … g_RM)に入力される制御信号(CTRL_L1 … CRTL_LMおよびCTRL_R1 … CTRL_RM)の値を設定する。
遅延モジュール105は、入力信号102を受信し、左耳遅延および右耳遅延を出力する。左耳遅延は、左利得モジュール(g_L1 … g_LM)に入力され、右耳遅延は、右利得モジュール(g_R1 … g_RM)に入力される。左耳遅延は、第1の値だけ遅延された入力信号102であってもよく、右耳遅延は、第2の値だけ遅延された入力信号102であってもよい。いくつかの実施形態では、左耳遅延および/または右耳遅延は、ゼロであってもよく、その場合では、遅延モジュール105は、それぞれ、入力信号102を左利得モジュールおよび/または右利得モジュールに効果的にルーティングする。両耳間時間差(ITD)は、左耳遅延と右耳遅延との間の差異であり得る。
1つ以上の左制御信号(CTRL_L1 … CTRL_LM)が、1つ以上の左利得モジュールに入力され、1つ以上の右制御値(CTRL_R1 … CTRL_RM)が、1つ以上の右利得モジュールに入力される。1つ以上の左利得モジュールは、1つ以上の左利得調節信号を出力し、1つ以上の右利得モジュールは、1つ以上の右利得調節信号を出力する。
1つ以上の左利得モジュールはそれぞれ、1つ以上の左制御信号の制御信号の値に基づいて、左耳遅延の利得を調節し、1つ以上の右利得モジュールはそれぞれ、1つ以上の右制御信号の制御信号の値に基づいて、右耳遅延の利得を調節する。
エンコーダ104は、入力信号102が対応する音景内に提示されるべきオブジェクトの場所に基づいて、利得モジュールに入力される制御信号の値を調節する。各利得モジュールは、入力信号102に、制御信号の値の関数である係数を乗算する、乗算器であってもよい。
ミキサ106は、エンコーダ104から利得調節信号を受信し、利得調節信号を混合し、混合された信号を出力する。混合された信号は、デコーダ110に入力され、デコーダ110の出力は、左耳スピーカ112Aおよび右耳スピーカ112B(以降、集合的に、「スピーカ112」と称される)に入力される。
デコーダ110は、左HRTFフィルタL_HRTF_1-Mと、右HRTFフィルタR_HRTF_1-Mとを含む。デコーダ110は、ミキサ106から混合された信号を受信し、混合された信号をフィルタ処理および合計し、フィルタ処理された信号をスピーカ112に出力する。デコーダ110の第1の加算ブロック/回路は、左HRTFフィルタから出力された左のフィルタ処理された信号を合計し、デコーダ110の第2の加算ブロック/回路は、右HRTFフィルタから出力された右のフィルタ処理された信号を合計する。
いくつかの実施形態では、デコーダ110は、Jot, et al, Binaural Simulation of Complex Acoustic Scenes for Interactive Audio, Audio Engineering Society Convention Paper, presented October 5-8, 2006(その内容が、参照することによってその全体として本明細書に組み込まれる)に説明されるもの等、左/右物理的スピーカの位置を個別の耳の位置に変換するためのクロストークキャンセラを含んでもよい。
いくつかの実施形態では、デコーダ110は、HRTFフィルタのバンクを含んでもよい。バンク内のHRTFフィルタはそれぞれ、ユーザの頭部に対する具体的方向をモデル化してもよい。これらの方法は、空間関数の固定セットおよび基底フィルタの固定セットにわたるHRTFデータの分解に基づいてもよい。これらの実施形態では、ミキサ106からの各混合された信号は、源の方向に最も近い方向をモデル化するHRTFフィルタの入力に混合されてもよい。それらのHRTFフィルタのそれぞれに混合される信号のレベルは、源の具体的方向によって決定される。
いくつかの実施形態では、システム100は、複数の入力信号を受信してもよく、複数の入力信号のそれぞれに関するエンコーダを含んでもよい。入力信号の合計数は、音景内に提示されるべきオブジェクトの合計数を表し得る。
音景内に提示されるオブジェクトの方向が、変化する場合、エンコーダ104Aが、1つ以上の左利得モジュールおよび1つ以上の右利得モジュールに入力される1つ以上の左制御信号および1つ以上の右制御信号の値を変化させることができるだけではなく、遅延モジュール105は、音景内にオブジェクトを適切に提示するために、入力信号102の遅延を変化させ、左耳遅延および/または右耳遅延を生成してもよい。
図2A-2Cは、いくつかの実施形態による、遅延モジュール205の種々のモードを図示する。遅延モジュール205は、ある値、例えば、時間値、サンプルカウント、および同等物だけ入力信号を遅延させる、遅延ユニット216を含んでもよい。図2A-2Cに示される例示的遅延モジュールのうちの1つ以上のものは、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。
図2Aは、いくつかの実施形態による、遅延モジュール205のゼロタップ遅延モードを図示する。ゼロタップ遅延モードでは、入力信号202は、第1の耳遅延222および第2の耳遅延224を作成するように分割される。遅延ユニット216は、入力信号202を受信するが、入力信号202を遅延させない。いくつかの実施形態では、遅延ユニット216は、入力信号202を受信し、入力信号202のサンプルでバッファを満たし、これは、次いで、遅延モジュール205が、1タップ遅延モードまたは2タップ遅延モード(下記に説明される)に遷移する場合に使用されてもよい。遅延モジュール205は、第1の耳遅延222および第2の耳遅延224を出力し、これは、単純に、入力信号202(いかなる遅延も伴わない)である。
図2Bは、いくつかの実施形態による、遅延モジュール205の1タップ遅延モードを図示する。1タップ遅延モードでは、入力信号202は、第2の耳遅延228を作成するように分割される。遅延ユニット216は、入力信号202を受信し、第1の値だけ入力信号202を遅延させ、第1の耳遅延226を出力する。第2の耳遅延228は、単純に、入力信号202(いかなる遅延も伴わない)である。遅延モジュール205は、第1の耳遅延226および第2の耳遅延228を出力する。いくつかの実施形態では、第1の耳遅延226は、左耳遅延であってもよく、第2の耳遅延228は、右耳遅延であってもよい。いくつかの実施形態では、第1の耳遅延226は、右耳遅延であってもよく、第2の耳遅延228は、左耳遅延であってもよい。
図2Cは、いくつかの実施形態による、遅延モジュール205の2タップ遅延モードを図示する。2タップ遅延モードでは、遅延ユニット216は、入力信号202を受信し、第1の値だけ入力信号202を遅延させ、第1の耳遅延232を出力し、第2の値だけ入力信号202を遅延させ、第2の耳遅延234を出力する。いくつかの実施形態では、第1の耳遅延232は、左耳遅延であってもよく、第2の耳遅延234は、右耳遅延であってもよい。いくつかの実施形態では、第1の耳遅延232は、右耳遅延であってもよく、第2の耳遅延234は、左耳遅延であってもよい。
いくつかの実施形態では、音景(音環境)が、ユーザに提示されてもよい。以下の議論は、単一の仮想オブジェクトを伴う音景に関するが、しかしながら、本明細書に説明される原理は、多くの仮想オブジェクトを伴う音景に適用可能であり得る。
図3Aは、いくつかの実施形態による、ユーザ302と、正中面306上の仮想オブジェクト(ハチ)304とを含む、環境300を図示する。ユーザ302の左耳から仮想ハチ304までの距離308は、ユーザ302の右耳から仮想ハチ304までの距離310に等しい。したがって、仮想ハチ304からの音は、左耳および右耳の両方に到達するまでに同一の時間量がかかるはずである。
図3Bは、いくつかの実施形態による、図3Aの環境300に対応する、遅延モジュール312を図示する。遅延モジュール312は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。図3Bに図示されるように、遅延モジュール312は、ゼロタップ遅延モードにあり、入力信号314は、左耳遅延316および右耳遅延318を作成するように分割される。左耳遅延316および右耳遅延318は、距離308および距離310が、同一であるため、単純に、入力信号314である。遅延ユニット320は、入力信号314を受信するが、信号を出力しない。いくつかの実施形態では、遅延ユニット316は、入力信号314を受信し、入力信号314のサンプルでバッファを満たし、これは、次いで、遅延モジュール312が、1タップ遅延モードまたは2タップ遅延モードに遷移する場合に使用されてもよい。遅延モジュール312は、左耳遅延316および右耳遅延318を出力する。
図4Aは、いくつかの実施形態による、ユーザ402と、正中面406の左側の仮想オブジェクト(ハチ)404とを含む、環境400を図示する。ユーザ402の右耳から仮想ハチ404までの距離410は、ユーザ402の左耳から仮想ハチ404までの距離408を上回る。したがって、仮想ハチ404からの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。
図4Bは、いくつかの実施形態による、図4Aの環境400に対応する、遅延モジュール412を図示する。遅延モジュール412は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。図4Bに図示されるように、遅延モジュール412は、第1のタップ遅延モードにあり、入力信号414は、左耳遅延416を作成するように分割される。遅延ユニット420は、入力信号414を受信し、時間422だけ入力信号414を遅延させ、右耳遅延418を出力する。左耳遅延416は、単純に、入力信号414であり、右耳遅延418は、単純に、入力信号414の遅延バージョンである。遅延モジュール412は、左耳遅延416および右耳遅延418を出力する。
図5Aは、いくつかの実施形態による、ユーザ502と、正中面506の右側の仮想オブジェクト(ハチ)504とを含む、環境500を図示する。ユーザ502の左耳から仮想ハチ504までの距離508は、ユーザ502の右耳から仮想ハチ504までの距離510を上回る。したがって、仮想ハチ504からの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。
図5Bは、いくつかの実施形態による、図5Aの環境500に対応する、遅延モジュール512を図示する。遅延モジュール512は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。図5Bに図示されるように、遅延モジュール512は、1タップ遅延モードにあり、入力信号514は、右耳遅延518を作成するように分割される。遅延ユニット520は、入力信号514を受信し、時間522だけ入力信号514を遅延させ、左耳遅延516を出力する。右耳遅延518は、単純に、入力信号514であり、左耳遅延516は、単純に、入力信号514の遅延バージョンである。遅延モジュール512は、左耳遅延516および右耳遅延518を出力する。
いくつかの実施形態では、音景内の仮想オブジェクトの方向は、ユーザに対して変化する。例えば、仮想オブジェクトは、いくつか例を挙げると、正中面の左側から正中面の右側に移動し、正中面の右側から正中面の左側に移動し、正中面の右側の第1の位置から正中面の右側の第2の位置に移動し、第2の位置は、第1の位置よりも正中面に近接し、正中面の右側の第1の位置から正中面の右側の第2の位置に移動し、第2の位置は、第1の位置よりも正中面から遠く、正中面の左側の第1の位置から正中面の左側の第2の位置に移動し、第2の位置は、第1の位置よりも正中面に近接し、正中面の左側の第1の位置から正中面の左側の第2の位置に移動し、第2の位置は、第1の位置よりも正中面から遠く、正中面の右側から正中面上に移動し、正中面上から正中面の右側に移動し、正中面の左側から正中面上に移動し、正中面から正中面の左側に移動し得る。
いくつかの実施形態では、ユーザに対する音景内の仮想オブジェクトの方向の変化は、ITD(例えば、左耳遅延と右耳遅延との間の差異)の変化を要求し得る。
いくつかの実施形態では、遅延モジュール(例えば、例示的システム100に示される遅延モジュール105)は、仮想オブジェクトの方向の変化に基づいて、左耳遅延および/または右耳遅延を瞬間的に変化させることによって、ITDを変化させてもよい。しかしながら、左耳遅延および/または右耳遅延を瞬間的に変化させることは、音アーチファクトをもたらし得る。音アーチファクトは、例えば、「クリック」音であり得る。そのような音アーチファクトを最小限にすることが、望ましい。
いくつかの実施形態では、遅延モジュール(例えば、例示的システム100に示される遅延モジュール105)は、仮想オブジェクトの方向の変化に基づいて、遅延の値のランピングまたは平滑化を使用して左耳遅延および/または右耳遅延を変化させることによって、ITDを変化させてもよい。しかしながら、遅延の値のランピングまたは平滑化を使用して左耳遅延および/または右耳遅延を変化させることは、音アーチファクトをもたらし得る。音アーチファクトは、例えば、ピッチの変化であり得る。そのような音アーチファクトを最小限にすることが、望ましい。いくつかの実施形態では、遅延の値のランピングまたは平滑化を使用して左耳遅延および/または右耳遅延を変化させることは、例えば、ランピングまたは平滑化を算出および実行するためにかかる時間に起因して、および/または新しい音が配信されるまでにかかる時間に起因して、待ち時間を導入し得る。そのような待ち時間を最小限にすることが、望ましい。
いくつかの実施形態では、遅延モジュール(例えば、例示的システム100に示される遅延モジュール105)は、第1の遅延から後続遅延へのクロスフェードを使用して左耳遅延および/または右耳遅延を変化させることによって、ITDを変化させてもよい。クロスフェードは、例えば、時間ドメイン内で信号を伸長または圧縮しないように回避することによって、遅延値の間の遷移の間のアーチファクトを低減させ得る。時間ドメイン内で信号を伸長または圧縮することは、上記に説明されるような「クリック」音またはピッチ偏移をもたらし得る。
図6Aは、いくつかの実施形態による、クロスフェーダ600を図示する。クロスフェーダ600は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。クロスフェーダ600は、入力として第1の耳遅延602および後続耳遅延604を受信し、クロスフェードされた耳遅延606を出力する。クロスフェーダ600は、第1のレベルフェーダ(Gf)608と、後続レベルフェーダ(Gs)610と、加算器612とを含む。第1のレベルフェーダ608は、制御信号CTRL_Gfの変化に基づいて、第1の耳遅延のレベルを漸進的に減少させ、後続レベルフェーダ610は、制御信号CTRL_Gsの変化に基づいて、後続耳遅延のレベルを漸進的に増加させる。加算器612は、第1のレベルフェーダ608および後続レベルフェーダ612の出力を合計する。
図6Bは、いくつかの実施形態による、制御信号CTRL_Gfのモデルを図示する。示される実施例では、制御信号CTRL_Gfの値は、ある時間周期にわたって1からゼロに減少する(例えば、時間t_0において1および時間t_endにおいてゼロ)。いくつかの実施形態では、制御信号CTRL_Gfの値は、直線的に、指数関数的に、またはある他の関数で1からゼロに減少してもよい。
図6Cは、いくつかの実施形態による、制御信号CTRL_Gsのモデルを図示する。示される実施例では、制御信号CTRL_Gsの値は、ある時間周期にわたってゼロから1に増加する(例えば、時間t_0においてゼロおよび時間t_endにおいて1)。いくつかの実施形態では、制御信号CTRL_Gsの値は、直線的に、指数関数的に、またはある他の関数でゼロから1に増加してもよい。
図7Aは、いくつかの実施形態による、ユーザ702と、第1の時間における正中面706の左側の仮想オブジェクト(ハチ)704Aおよび後続時間における正中面706の右側の仮想オブジェクト(ハチ)704Bとを含む、環境700を図示する。第1の時間において、仮想ハチ704Aからユーザ702の右耳までの距離710Aは、仮想ハチ704Aからユーザ702の左耳までの距離708Aを上回る。したがって、第1の時間において、仮想ハチ704Aからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ704Bから左耳までの距離708Bは、仮想ハチ704Bから右耳までの距離710Bを上回る。したがって、後続時間において、仮想ハチ704Bからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。
図7Bは、いくつかの実施形態による、図7Aの環境700に対応する、遅延モジュール712を図示する。遅延モジュール712は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール712は、入力信号714を受信し、左耳遅延716および右耳遅延718を出力する。遅延モジュール712は、遅延ユニット720と、2つのクロスフェーダ、すなわち、左クロスフェーダ730Aおよび右クロスフェーダ730Bとを含む。左クロスフェーダ730Aは、第1のレベルフェーダ(Gf)722Aと、後続レベルフェーダ(Gs)724Aと、加算器726Aとを含む。右クロスフェーダ730Bは、第1のレベルフェーダ(Gf)722Bと、後続レベルフェーダ(Gs)724Bと、加算器726Bとを含む。
第1の時間において、距離710Aは、距離708Aを上回る。第1の時間に関して、入力信号714は、第1のレベルフェーダ722Aに直接供給され、遅延ユニット720は、第1の時間だけ入力信号714を遅延させ、第1の時間だけ遅延された入力信号714を第1のレベルフェーダ722Bに供給する。
後続時間において、距離708Bは、距離710Aを上回る。後続時間に関して、入力信号714は、後続レベルフェーダ724Bに直接供給され、遅延ユニット720は、後続時間だけ入力信号714を遅延させ、後続時間だけ遅延された入力信号714を後続レベルフェーダ724Aに供給する。
加算器726Aは、第1のレベルフェーダ722Aおよび後続レベルフェーダ724Aの出力を合計し、左耳遅延716を作成し、加算器726Bは、第1のレベルフェーダ722Bおよび後続レベルフェーダ724Bの出力を合計し、右耳遅延718を作成する。
したがって、左クロスフェーダ730Aは、入力信号714と後続時間だけ遅延された入力信号714との間でクロスフェードし、右クロスフェーダ730Bは、第1の時間だけ遅延された入力信号714と入力信号714との間でクロスフェードする。
図8Aは、いくつかの実施形態による、ユーザ802と、第1の時間における正中面806の右側の仮想オブジェクト(ハチ)804Aおよび後続時間における正中面806の左側の仮想オブジェクト(ハチ)804Bとを含む、環境800を図示する。第1の時間において、仮想ハチ808Aからユーザ802の左耳までの距離808Aは、仮想ハチ804Aからユーザ802の右耳までの距離810Aを上回る。したがって、第1の時間において、仮想ハチ804Aからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ804Bから右耳までの距離810Bは、仮想ハチ804Bから左耳までの距離808Bを上回る。したがって、後続時間において、仮想ハチ804Bからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。
図8Bは、いくつかの実施形態による、図8Aの環境800に対応する、遅延モジュール812を図示する。遅延モジュール812は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール812は、入力信号814を受信し、左耳遅延816および右耳遅延818を出力する。遅延モジュール812は、遅延ユニット820と、2つのクロスフェーダ、すなわち、左クロスフェーダ830Aおよび右クロスフェーダ830Bとを含む。左クロスフェーダ830Aは、第1のレベルフェーダ(Gf)822Aと、後続レベルフェーダ(Gs)824Aと、加算器826Aとを含む。右クロスフェーダ830Bは、第1のレベルフェーダ(Gf)822Bと、後続レベルフェーダ(Gs)824Bと、加算器826Bとを含む。
第1の時間において、距離808Aは、距離810Aを上回る。第1の時間に関して、入力信号814は、第1のレベルフェーダ822Bに直接供給され、遅延ユニット820は、第1の時間だけ入力信号814を遅延させ、第1の時間だけ遅延された入力信号814を第1のレベルフェーダ822Aに供給する。
後続時間において、距離810Bは、距離808Bを上回る。後続時間に関して、入力信号814は、後続レベルフェーダ824Aに直接供給され、遅延ユニット820は、後続時間だけ入力信号814を遅延させ、後続時間だけ遅延された入力信号814を後続レベルフェーダ824Bに供給する。
加算器826Aは、第1のレベルフェーダ822Aおよび後続レベルフェーダ824Aの出力を合計し、左耳遅延816を作成し、加算器826Bは、第1のレベルフェーダ822Bおよび後続レベルフェーダ824Bの出力を合計し、右耳遅延818を作成する。
したがって、左クロスフェーダ830Aは、第1の時間だけ遅延された入力信号814と入力信号814との間でクロスフェードし、右クロスフェーダ830Bは、入力信号814と後続時間だけ遅延された入力信号814との間でクロスフェードする。
図9Aは、いくつかの実施形態による、ユーザ902と、第1の時間における正中面906からより右側にある仮想オブジェクト(ハチ)904Aおよび後続時間における正中面906からそれほど右側ではない(例えば、正中面906により近接する)仮想オブジェクト(ハチ)904Bとを含む、環境900を図示する。第1の時間において、仮想ハチ904Aからユーザ902の左耳までの距離908Aは、仮想ハチ904Aからユーザ902の右耳までの距離910Aを上回る。したがって、第1の時間において、仮想ハチ904Aからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ904Bから左耳までの距離908Bは、仮想ハチ904Bから右耳までの距離910Bを上回る。したがって、後続時間において、仮想ハチ904Bからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。距離908Aおよび908Bを比較すると、距離908Aは、距離908Bを上回るため、第1の時間における仮想ハチ904Aからの音は、後続時間における仮想ハチ904Bからの音よりも左耳に到達するまでにより長くかかるはずである。距離910Aおよび910Bを比較すると、第1の時間における仮想ハチ904Aからの音は、右耳に到達するまでに後続時間における仮想ハチ904Bからの音と同一の時間がかかるはずである。
図9Bは、いくつかの実施形態による、図9Aの環境900に対応する、遅延モジュール912を図示する。遅延モジュール912は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール912は、入力信号914を受信し、左耳遅延916および右耳遅延918を出力する。遅延モジュール912は、遅延ユニット920と、左クロスフェーダ930とを含む。左クロスフェーダ930は、第1のレベルフェーダ(Gf)922と、後続レベルフェーダ(Gs)924と、加算器926とを含む。
第1の時間において、距離908Aは、距離910Aを上回る。第1の時間に関して、入力信号914は、右耳遅延918に直接供給され、遅延ユニット920は、第1の時間だけ入力信号914を遅延させ、第1の時間だけ遅延された入力信号914を第1のレベルフェーダ922に供給する。
後続時間において、距離908Bは、距離910Bを上回り、距離908Bは、距離908Aを下回る。後続時間に関して、入力信号914は、右耳遅延918に直接供給され、遅延ユニット920は、後続時間だけ入力信号914を遅延させ、後続時間だけ遅延された入力信号914を後続レベルフェーダ924に供給する。
第1の時間だけ遅延された入力信号914は、距離908Aが、距離908Bを上回るため、後続時間だけ遅延された入力信号914よりも多く遅延され得る。
加算器926は、第1のレベルフェーダ922および後続レベルフェーダ924の出力を合計し、左耳遅延916を作成する。
したがって、左クロスフェーダ930は、第1の時間だけ遅延された入力信号914と後続時間だけ遅延された入力信号914との間でクロスフェードする。
図10Aは、いくつかの実施形態による、ユーザ1002と、第1の時間における正中面1006の右側の仮想オブジェクト(ハチ)1004Aおよび後続時間における正中面1006からより右側にある(例えば、正中面1006からより遠い)仮想オブジェクト(ハチ)1004Bとを含む、環境1000を図示する。第1の時間において、仮想ハチ1004Aからユーザ1002の左耳までの距離1008Aは、仮想ハチ1004Aからユーザ1002の右耳までの距離1010Aを上回る。したがって、第1の時間において、仮想ハチ1004Aからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ1004Bから左耳までの距離1008Bは、仮想ハチ1004Bから右耳までの距離1010Bを上回る。したがって、後続時間において、仮想ハチ1004Bからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。距離1008Aおよび1008Bを比較すると、距離1008Bは、距離1008Aを上回るため、後続時間における仮想ハチ1004Bからの音は、第1の時間における仮想ハチ1004Aからの音よりも左耳に到達するまでにより長くかかるはずである。距離1010Aおよび1010Bを比較すると、第1の時間における仮想ハチ1004Aからの音は、右耳に到達するまでに後続時間における仮想ハチ1004Bからの音と同一の時間がかかるはずである。
図10Bは、いくつかの実施形態による、図10Aの環境1000に対応する、遅延モジュール1012を図示する。遅延モジュール1012は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール1012は、入力信号1014を受信し、左耳遅延1016および右耳遅延1018を出力する。遅延モジュール1012は、遅延ユニット1020と、左クロスフェーダ1030とを含む。左クロスフェーダ1030は、第1のレベルフェーダ(Gf)1022と、後続レベルフェーダ(Gs)1024と、加算器1026とを含む。
第1の時間において、距離1008Aは、距離1010Aを上回る。第1の時間に関して、入力信号1014は、右耳遅延1018に直接供給され、遅延ユニット1020は、第1の時間だけ入力信号1014を遅延させ、第1の時間だけ遅延された入力信号1014を第1のレベルフェーダ1022に供給する。
後続時間において、距離1008Bは、距離1010Bを上回り、距離1008Bは、距離1008Aを上回る。後続時間に関して、入力信号1014は、右耳遅延1018に直接供給され、遅延ユニット1020は、後続時間だけ入力信号1014を遅延させ、後続時間だけ遅延された入力信号1014を後続レベルフェーダ1024に供給する。
第1の時間だけ遅延された入力信号1014は、距離1008Aが、距離1008Bを下回るため、後続時間だけ遅延された入力信号1014よりも少なく遅延され得る。
加算器1026は、第1のレベルフェーダ1022および後続レベルフェーダ1024の出力を合計し、左耳遅延1016を作成する。
したがって、左クロスフェーダ1030は、第1の時間だけ遅延された入力信号1014と後続時間だけ遅延された入力信号1014との間でクロスフェードする。
図11Aは、いくつかの実施形態による、ユーザ1102と、第1の時間における正中面1106からより右側にある仮想オブジェクト(ハチ)1104Aおよび後続時間における正中面1106からそれほど右側ではない(例えば、正中面1106により近接する)仮想オブジェクト(ハチ)1104Bとを含む、環境1100を図示する。第1の時間において、仮想ハチ1104Aからユーザ1102の右耳までの距離1110Aは、仮想ハチ1104Aからユーザ1102の左耳までの距離1108Aを上回る。したがって、第1の時間において、仮想ハチ1104Aからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ1104Bから右耳までの距離1110Bは、仮想ハチ1104Bから左耳までの距離1108Bを上回る。したがって、後続時間において、仮想ハチ1104Bからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。距離1110Aおよび1110Bを比較すると、距離1110Aは、距離1110Bを上回るため、第1の時間における仮想ハチ1104Aからの音は、後続時間における仮想ハチ1104Bからの音よりも右耳に到達するまでにより長くかかるはずである。距離1108Aおよび1108Bを比較すると、第1の時間における仮想ハチ1104Aからの音は、左耳に到達するまでに後続時間における仮想ハチ1104Bからの音と同一の時間がかかるはずである。
図11Bは、いくつかの実施形態による、図11Aの環境1100に対応する、遅延モジュール1112を図示する。遅延モジュール1112は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール1112は、入力信号1114を受信し、左耳遅延1116および右耳遅延1118を出力する。遅延モジュール1112は、遅延ユニット1120と、右クロスフェーダ1130とを含む。右クロスフェーダ1130は、第1のレベルフェーダ(Gf)1122と、後続レベルフェーダ(Gs)1124と、加算器1126とを含む。
第1の時間において、距離1110Aは、距離1108Aを上回る。第1の時間に関して、入力信号1114は、左耳遅延1116に直接供給され、遅延ユニット1120は、第1の時間だけ入力信号1114を遅延させ、第1の時間だけ遅延された入力信号1114を第1のレベルフェーダ1122に供給する。
後続時間において、距離1110Bは、距離1108Aを上回り、距離1110Bは、距離1110Aを下回る。後続時間に関して、入力信号1114は、左耳遅延1116に直接供給され、遅延ユニット1120は、後続時間だけ入力信号1114を遅延させ、後続時間だけ遅延された入力信号1114を後続レベルフェーダ1124に供給する。
第1の時間だけ遅延された入力信号1114は、距離1110Aが、距離1110Bを上回るため、後続時間だけ遅延された入力信号1114よりも多く遅延され得る。
加算器1126は、第1のレベルフェーダ1122および後続レベルフェーダ1124の出力を合計し、左耳遅延1116を作成する。
したがって、右クロスフェーダ1130は、第1の時間だけ遅延された入力信号1114と後続時間だけ遅延された入力信号1114との間でクロスフェードする。
図12Aは、いくつかの実施形態による、ユーザ1202と、第1の時間における正中面1206の左側の仮想オブジェクト(ハチ)1204Aおよび後続時間における正中面1206からより左側にある(例えば、正中面1206からより遠い)仮想オブジェクト(ハチ)1204Bとを含む、環境1200を図示する。第1の時間において、仮想ハチ1204Aからユーザ1202の右耳までの距離1210Aは、仮想ハチ1204Aからユーザ1202の左耳までの距離1208Aを上回る。したがって、第1の時間において、仮想ハチ1204Aからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ1204Bから右耳までの距離1210Bは、仮想ハチ1204Bから左耳までの距離1208Aを上回る。したがって、後続時間において、仮想ハチ1204Bからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。距離1210Aおよび1210Bを比較すると、距離1210Bは、距離1210Aを上回るため、後続時間における仮想ハチ1204Bからの音は、第1の時間における仮想ハチ1204Aからの音よりも右耳に到達するまでにより長くかかるはずである。距離1208Aおよび1208Bを比較すると、第1の時間における仮想ハチ1204Aからの音は、左耳に到達するまでに後続時間における仮想ハチ1204Bからの音と同一の時間がかかるはずである。
図12Bは、いくつかの実施形態による、図12Aの環境1200に対応する、遅延モジュール1212を図示する。遅延モジュール1212は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール1212は、入力信号1214を受信し、左耳遅延1216および右耳遅延1218を出力する。遅延モジュール1212は、遅延ユニット1220と、右クロスフェーダ1230とを含む。右クロスフェーダ1230は、第1のレベルフェーダ(Gf)1222と、後続レベルフェーダ(Gs)1224と、加算器1226とを含む。
第1の時間において、距離1210Aは、距離1208Aを上回る。第1の時間に関して、入力信号1214は、左耳遅延1216に直接供給され、遅延ユニット1220は、第1の時間だけ入力信号1214を遅延させ、第1の時間だけ遅延された入力信号1214を第1のレベルフェーダ1222に供給する。
後続時間において、距離1210Bは、距離1208Bを上回り、距離1210Bは、距離1210Aを上回る。後続時間に関して、入力信号1214は、左耳遅延1216に直接供給され、遅延ユニット1220は、後続時間だけ入力信号1214を遅延させ、後続時間だけ遅延された入力信号1214を後続レベルフェーダ1224に供給する。
第1の時間だけ遅延された入力信号1214は、距離1210Aが、距離1210Bを下回るため、後続時間だけ遅延された入力信号1214よりも少なく遅延され得る。
加算器1226は、第1のレベルフェーダ1222および後続レベルフェーダ1224の出力を合計し、右耳遅延1216を作成する。
したがって、左クロスフェーダ1230は、第1の時間だけ遅延された入力信号1214と後続時間だけ遅延された入力信号1214との間でクロスフェードする。
図13Aは、いくつかの実施形態による、ユーザ1302と、第1の時間における正中面1306の右側の仮想オブジェクト(ハチ)1304Aおよび後続時間における正中面1306上の仮想オブジェクト(ハチ)1304Bとを含む、環境1300を図示する。第1の時間において、仮想ハチ1304Aからユーザ1302の左耳までの距離1308Aは、仮想ハチ1304Aからユーザ1302の右耳までの距離1310Aを上回る。したがって、第1の時間において、仮想ハチ1304Aからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ1304Bから左耳までの距離1308Bは、仮想ハチ1304Bから右耳までの距離1310Bと同一である。したがって、後続時間において、仮想ハチ1304Bからの音は、左耳に到達するまでに右耳と同一の時間がかかるはずである。距離1308Aおよび1308Bを比較すると、距離1308Aは、距離1308Bを上回るため、第1の時間における仮想ハチ1304Aからの音は、後続時間における仮想ハチ1304Bからの音よりも左耳に到達するまでにより長くかかるはずである。距離1310Aおよび1310Bを比較すると、第1の時間における仮想ハチ1304Aからの音は、右耳に到達するまでに後続時間における仮想ハチ1304Bからの音と同一の時間がかかるはずである。
図13Bは、いくつかの実施形態による、図13Aの環境1300に対応する、遅延モジュール1312を図示する。遅延モジュール1312は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール1312は、入力信号1314を受信し、左耳遅延1316および右耳遅延1318を出力する。遅延モジュール1312は、遅延ユニット1320と、左クロスフェーダ1330とを含む。左クロスフェーダ1330は、第1のレベルフェーダ(Gf)1322と、後続レベルフェーダ(Gs)1324と、加算器1326とを含む。
第1の時間において、距離1308Aは、距離1310Aを上回る。第1の時間に関して、入力信号1314は、右耳遅延1318に直接供給され、遅延ユニット1320は、第1の時間だけ入力信号1314を遅延させ、第1の時間だけ遅延された入力信号1314を第1のレベルフェーダ1322に供給する。
後続時間において、距離1308Bは、距離1310Bと同一であり、距離1308Bは、距離1308Aを下回る。後続時間に関して、入力信号1314は、右耳遅延1318に直接供給され、入力信号1314は、後続レベルフェーダ1324に直接供給される。
加算器1326は、第1のレベルフェーダ1322および後続レベルフェーダ1324の出力を合計し、左耳遅延1316を作成する。
したがって、左クロスフェーダ1330は、第1の時間だけ遅延された入力信号1314と入力信号1314との間でクロスフェードする。
図14Aは、いくつかの実施形態による、ユーザ1402と、第1の時間における正中面1406上の仮想オブジェクト(ハチ)1404Aおよび後続時間における正中面1406の右側の仮想オブジェクト(ハチ)1404Bとを含む、環境1400を図示する。第1の時間において、仮想ハチ1404Aからユーザ1402の左耳までの距離1408Aは、仮想ハチ1404Aからユーザ1402の右耳までの距離1410Aと同一である。したがって、第1の時間において、仮想ハチ1404Aからの音は、左耳に到達するまでに右耳と同一の時間がかかるはずである。後続時間において、仮想ハチ1404Bから左耳までの距離1408Bは、仮想ハチ1404Aから右耳までの距離1410Aを上回る。したがって、後続時間において、仮想ハチ1404Bからの音は、右耳よりも左耳に到達するまでにより長くかかるはずである。距離1408Aおよび1408Bを比較すると、距離1408Bは、距離1408Aを上回るため、後続時間における仮想ハチ1404Bからの音は、第1の時間における仮想ハチ1404Aからの音よりも左耳に到達するまでにより長くかかるはずである。距離1410Aおよび1410Bを比較すると、第1の時間における仮想ハチ1404Aからの音は、右耳に到達するまでに後続時間における仮想ハチ1404Bからの音と同一の時間がかかるはずである。
図14Bは、いくつかの実施形態による、図14Aの環境1400に対応する、遅延モジュール1412を図示する。遅延モジュール1412は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール1412は、入力信号1414を受信し、左耳遅延1416および右耳遅延1418を出力する。遅延モジュール1412は、遅延ユニット1420と、左クロスフェーダ1430とを含む。左クロスフェーダ1430は、第1のレベルフェーダ(Gf)1422と、後続レベルフェーダ(Gs)1424と、加算器1426とを含む。
第1の時間において、距離1408Aは、距離1410Aと同一である。第1の時間に関して、入力信号1414は、右耳遅延1418に直接供給され、入力信号1414は、第1のレベルフェーダ1422に直接供給される。
後続時間において、距離1408Bは、距離1410Bを上回る。後続時間に関して、入力信号1414は、右耳遅延1418に直接供給され、遅延ユニット1420は、後続時間だけ入力信号1414を遅延させ、後続時間だけ遅延された入力信号1414を後続レベルフェーダ1424に供給する。
加算器1426は、第1のレベルフェーダ1422および後続レベルフェーダ1424の出力を合計し、左耳遅延1416を作成する。
したがって、左クロスフェーダ1430は、入力信号1414と後続時間だけ遅延された入力信号1414との間でクロスフェードする。
図15Aは、いくつかの実施形態による、ユーザ1502と、第1の時間における正中面1506の左側の仮想オブジェクト(ハチ)1504Aおよび後続時間における正中面1506上の仮想オブジェクト(ハチ)1504Bとを含む、環境1500を図示する。第1の時間において、仮想ハチ1504Aからユーザ1502の右耳までの距離1510Aは、仮想ハチ1504Aからユーザ1502の左耳までの距離1508Aを上回る。したがって、第1の時間において、仮想ハチ1504Aからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。後続時間において、仮想ハチ1504Bから左耳までの距離1508Bは、仮想ハチ1504Bから右耳までの距離1510Bと同一である。したがって、後続時間において、仮想ハチ1504Bからの音は、左耳に到達するまでに右耳と同一の時間がかかるはずである。距離1510Aおよび1510を比較すると、距離1510Aは、距離1510Bを上回るため、第1の時間における仮想ハチ1504Aからの音は、後続時間における仮想ハチ1504Bからの音よりも右耳に到達するまでにより長くかかるはずである。距離1508Aおよび1508Bを比較すると、第1の時間における仮想ハチ1504Aからの音は、左耳に到達するまでに後続時間における仮想ハチ1504Bからの音と同一の時間がかかるはずである。
図15Bは、いくつかの実施形態による、図15Aの環境1500に対応する、遅延モジュール1512を図示する。遅延モジュール1512は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール1512は、入力信号1514を受信し、左耳遅延1516および右耳遅延1518を出力する。遅延モジュール1512は、遅延ユニット1520と、右クロスフェーダ1530とを含む。右クロスフェーダ1530は、第1のレベルフェーダ(Gf)1522と、後続レベルフェーダ(Gs)1524と、加算器1526とを含む。
第1の時間において、距離1510Aは、距離1508Aを上回る。第1の時間に関して、入力信号1514は、左耳遅延1516に直接供給され、遅延ユニット1520は、第1の時間だけ入力信号1514を遅延させ、第1の時間だけ遅延された入力信号1514を第1のレベルフェーダ1522に供給する。
後続時間において、距離1508Bは、距離1510Bと同一であり、距離1510Bは、距離1510Aを下回る。後続時間に関して、入力信号1514は、左耳遅延1516に直接供給され、入力信号1514は、後続レベルフェーダ1524に直接供給される。
加算器1526は、第1のレベルフェーダ1522および後続レベルフェーダ1524の出力を合計し、右耳遅延1518を作成する。
したがって、右クロスフェーダ1530は、第1の時間だけ遅延された入力信号1514と入力信号1514との間でクロスフェードする。
図16Aは、いくつかの実施形態による、ユーザ1602と、第1の時間における正中面1606上の仮想オブジェクト(ハチ)1604Aおよび後続時間における正中面1606の左側の仮想オブジェクト(ハチ)1604Bとを含む、環境1600を図示する。第1の時間において、仮想ハチ1604Aからユーザ1602の左耳までの距離1608Aは、仮想ハチ1604Aからユーザ1602の右耳までの距離1610Aと同一である。したがって、第1の時間において、仮想ハチ1604Aからの音は、左耳に到達するまでに右耳と同一の時間がかかるはずである。後続時間において、仮想ハチ1604Bから右耳までの距離1610Bは、仮想ハチ1604Aから左耳までの距離1608Bを上回る。したがって、後続時間において、仮想ハチ1604Bからの音は、左耳よりも右耳に到達するまでにより長くかかるはずである。距離1610Aおよび1610Bを比較すると、距離1610Bは、距離1610Aを上回るため、後続時間における仮想ハチ1604Bからの音は、第1の時間における仮想ハチ1604Aからの音よりも右耳に到達するまでにより長くかかるはずである。距離1608Aおよび1608Bを比較すると、第1の時間における仮想ハチ1604Aからの音は、左耳に到達するまでに後続時間における仮想ハチ1604Bからの音と同一の時間がかかるはずである。
図16Bは、いくつかの実施形態による、図16Aの環境1600に対応する、遅延モジュール1612を図示する。遅延モジュール1612は、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。遅延モジュール1612は、入力信号1614を受信し、左耳遅延1616および右耳遅延1618を出力する。遅延モジュール1612は、遅延ユニット1620と、右クロスフェーダ1630とを含む。右クロスフェーダ1330は、第1のレベルフェーダ(Gf)1622と、後続レベルフェーダ(Gs)1624と、加算器1626とを含む。
第1の時間において、距離1608Aは、距離1610Aと同一である。第1の時間に関して、入力信号1614は、左耳遅延1616に直接供給され、入力信号1614は、第1のレベルフェーダ1622に直接供給される。
後続時間において、距離1610Bは、距離1608Bを上回る。後続時間に関して、入力信号1614は、左耳遅延1616に直接供給され、遅延ユニット1620は、後続時間だけ入力信号1614を遅延させ、後続時間だけ遅延された入力信号1614を後続レベルフェーダ1624に供給する。
加算器1626は、第1のレベルフェーダ1622および後続レベルフェーダ1624の出力を合計し、右耳遅延1618を作成する。
したがって、右クロスフェーダ1630は、入力信号1614と後続時間だけ遅延された入力信号1614との間でクロスフェードする。
図17は、いくつかの実施形態では、例示的システム100に示される遅延モジュール105を実装するために使用され得る、例示的遅延モジュール1705を図示する。いくつかの実施形態では、例えば、図17に図示されるように、遅延モジュール1705は、1つ以上のフィルタ(例えば、共通フィルタFC 1756、第1のフィルタF1 1752、および第2のフィルタF2 1754)を含んでもよい。第1のフィルタF1 1752および第2のフィルタF2 1754は、例えば、音源が、近接場にあるとき、音の1つ以上の効果をモデル化するために使用されてもよい。例えば、第1のフィルタF1 1752および第2のフィルタF2 1754は、音源が、スピーカ/耳位置に近接して、またはそれから離れるように移動するとき、音の1つ以上の効果をモデル化するために使用されてもよい。共通フィルタFC 1756は、音源が、両耳への信号に影響を及ぼし得る、物体、空気吸収、および同等物によって妨害されること等の1つ以上の効果をモデル化するために使用されてもよい。第1のフィルタF1 1752は、第1の効果を適用してもよく、第2のフィルタF2 1754は、第2の効果を適用してもよく、共通フィルタFC 1756は、第3の効果を適用してもよい。
示される実施例では、入力信号1702が、遅延モジュール1705に入力され、例えば、入力信号1702が、共通フィルタFC 1756の入力に適用されることができる。共通フィルタFC 1756は、1つ以上のフィルタを入力信号1702に適用し、共通のフィルタ処理された信号を出力する。共通のフィルタ処理された信号は、第1のフィルタF1 1752および遅延ユニット1716の両方に入力される。第1のフィルタF1 1752は、1つ以上のフィルタを共通のフィルタ処理された信号に適用し、第1の耳遅延1722と称される、第1のフィルタ処理された信号を出力する。遅延ユニット1716は、遅延を共通のフィルタ処理された信号に適用し、遅延された共通のフィルタ処理された信号を出力する。第2のフィルタF2 1754は、1つ以上のフィルタを遅延された共通のフィルタ処理された信号に適用し、第2の耳遅延1724と称される、第2のフィルタ処理された信号を出力する。いくつかの実施形態では、第1の耳遅延1722は、左耳に対応してもよく、第2の耳遅延1724は、右耳に対応してもよい。いくつかの実施形態では、第1の耳遅延1722は、右耳に対応してもよく、第2の耳遅延1724は、左耳に対応してもよい。
いくつかの実施形態では、図17に図示される3つのフィルタ、すなわち、共通フィルタFC 1756、第1のフィルタF1 1752、および第2のフィルタF2 1754の全てが、必要とされるわけではない場合がある。一実施例では、第1のフィルタF1 1752に入力される信号および第2のフィルタF2 1754に入力される信号は両方とも、これに適用される共通フィルタFC 1756の効果を有するため、共通フィルタFC 1756設定は、第1のフィルタF1 1752および第2のフィルタF2 1754のそれぞれに適用/追加されてもよく、共通フィルタFC 1756は、除去され、したがって、フィルタの合計数を3つから2つに低減させてもよい。
遅延モジュール1705は、図2Bの遅延モジュール205に類似し得、図2Bの第1の耳遅延226は、図17の第2の耳遅延1724に対応し、図2Bの第2の耳遅延228は、図17の第1の耳遅延1722に対応する。本実施形態では、第1の耳遅延1722は、いかなる遅延も有しておらず、第2の耳遅延1724は、遅延を有する。これは、例えば、音源が、第2の耳よりも第1の耳に近接し、第1の耳が、第1の耳遅延1722を受け取り、第2の耳が、第2の耳遅延1724を受け取るときの場合であり得る。当業者は、以下の説明が、主として、図2Bの変形例に関するが、原理は、図2Aおよび2Cの変形例にも同様に適用され得ることを理解するであろう。
図18A-18Eは、いくつかの実施形態による、遅延モジュール1805の変形例を図示する。図18A-18Eに示される遅延モジュール1805の変形例のうちのいずれかは、例示的システム100に示される遅延モジュール105を実装するために使用されてもよい。図18Aは、いかなるフィルタも伴わない遅延モジュール1805を図示する。遅延モジュール1805は、例えば、音源が、遠方場にあるとき、いかなるフィルタも必要とし得ない。図18Bは、第1のフィルタF1 1852のみを伴う遅延モジュール1805を図示する。遅延モジュール1805は、例えば、音源が、第1の耳により近接し、第1の耳のみが、物体によって妨害されているとき、第1のフィルタF1 1852のみを必要とし得る。図18Cは、第2のフィルタF2 1854のみを伴う遅延モジュール1805を図示する。遅延モジュール1805は、例えば、音源が、第2の耳からより遠くにあり、第2の耳のみが、物体によって妨害されているとき、第2のフィルタF2 1854のみを必要とし得る。図18Dは、第1のフィルタF1 1852および第2のフィルタF2 1854を伴う遅延モジュール1805を図示し、第1のフィルタF1 1852および第2のフィルタF2 1854は、異なる。遅延モジュール1805は、例えば、音源が、第1の耳により近接し、各耳が、異なるサイズの物体によって妨害されているとき、第1のフィルタF1 1852および第2のフィルタF2 1854を必要とし得る。図18Eは、共通フィルタFC 1856のみを伴う遅延モジュール1805を図示する。遅延モジュール1805は、例えば、源が、遠方場にあり、両耳が、等しく妨害されている、または空気吸収が、存在するとき、共通フィルタCF 1856のみを必要とし得る。
いくつかの実施形態では、図18A-18Eに図示される遅延モジュールのうちのいずれか1つは、妨害する物体またはそれに対する音源の移動等の音景の変化に起因して、図18A-18Eに図示される他の遅延モジュールのうちのいずれかに遷移してもよい。
図18Aに図示される(いかなるフィルタも含まない)遅延モジュール1805から図18B-18Eに図示される遅延モジュール1805のうちのいずれか(そのそれぞれは、1つ以上のフィルタを含む)への遷移は、適切な/所望の時間に1つ以上のフィルタを単純に導入することを含んでもよい。同様に、図18B-18Eに図示される遅延モジュール1805から図18Aに図示される遅延モジュール1805への遷移は、適切な/所望の時間に1つ以上のフィルタを単純に除去することを含んでもよい。
図18Bに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805から図18Cに図示される(第2のフィルタF2 1854を含む)遅延モジュール1805への遷移は、適切な/所望の時間に第1のフィルタF1 1852を除去し、第2のフィルタF2 1854を追加することを含んでもよい。同様に、図18Cに図示される(第2のフィルタF2 1854を含む)遅延モジュール1805から図18Bに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805への遷移は、適切な/所望の時間に第2のフィルタF2 1854を除去し、第1のフィルタF1 1852を追加することを含んでもよい。
図18Bに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805から図18Dに図示される(第1のフィルタF1 1852および第2のフィルタF2 1854を含む)遅延モジュール1805への遷移は、適切な/所望の時間に第2のフィルタF2 1854を追加することを含んでもよい。同様に、図18Dに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805および第2のフィルタF2 1854から図18Bに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805への遷移は、適切な/所望の時間に第2のフィルタF2 1854を除去することを含んでもよい。
図18Bに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805から図18Eに図示される(共通フィルタFC 1856を含む)遅延モジュール1805への遷移は、適切な/所望の時間に共通フィルタ1856を追加し、第1のフィルタF1 1852の状態を共通フィルタFC 1856にコピーし、第1のフィルタF1 1852を除去することを含んでもよい。同様に、図18Eに図示される(共通フィルタFC 1856を含む)遅延モジュール1805から図18Bに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805への遷移は、適切な/所望の時間に第1のフィルタF1 1852を追加し、共通フィルタFC 1856の状態を第1のフィルタF1 1852にコピーし、共通フィルタFC 1856を除去することを含んでもよい。
図18Cに図示される(第2のフィルタF2 1854を含む)遅延モジュール1805から図18Dに図示される(第1のフィルタF1 1852および第2のフィルタF2 1854を含む)遅延モジュール1805への遷移は、適切な/所望の時間に第1のフィルタF1 1852を追加することを含んでもよい。同様に、図18Dに図示される(第1のフィルタF1 1852を含む)遅延モジュール1805および第2のフィルタF2 1854から図18Cに図示される(第2のフィルタF2 1854を含む)遅延モジュール1805への遷移は、適切な/所望の時間に第1のフィルタF1 1852を除去することを含んでもよい。
図18Cに図示される(第2のフィルタF2 1854を含む)遅延モジュール1805から図18Eに図示される(共通フィルタFC 1856を含む)遅延モジュール1805への遷移は、図19の実施例によって図示されるもの等のプロセスを実行することを含んでもよい。例示的プロセスの段階1902において、共通フィルタFC 1856が、追加され、第2のフィルタF2 1854の状態が、共通フィルタFC 1856にコピーされる。これは、時間T1において起こり得る。1904において、本システムは、遅延時間を待機する。遅延時間は、遅延ユニット1816が信号を遅延させる時間量である。1906において、第2のフィルタF2 1854が、除去される。これは、時間T2において起こり得る。
遅延ユニット1816は、先入れ先出しバッファを含む。時間T1の前に、遅延ユニット1816のバッファは、入力信号1802で満たされる。第2のフィルタF2 1854は、時間T1の前からの入力信号1802のみを含む遅延ユニット1816の出力をフィルタ処理する。時間T1と時間T2との間で、共通フィルタFC 1856は、入力信号1802をフィルタ処理し、遅延ユニット1816のバッファは、T1の前からの入力信号1802および時間T1と時間T2との間からのフィルタ処理された入力信号の両方で満たされる。第2のフィルタF2 1854は、時間T1の前からの入力信号1802のみを含む遅延ユニット1816の出力をフィルタ処理する。時間T2において、第2のフィルタ1854は、除去され、遅延ユニット1816は、時間T1において開始されるフィルタ処理された入力信号のみで満たされる。
いくつかの実施形態では、図18Cに図示される(第2のフィルタF2 1854を含む)遅延モジュール1805から図18Eに図示される(共通フィルタFC 1856を含む)遅延モジュール1805への遷移は、第2のフィルタF2 1854を用いて(または第2のフィルタF2 1854と同一の設定を有する別のフィルタを用いて)遅延ユニット1816内の全てのサンプルを処理し、処理されたサンプルを遅延ユニット1816に書き込み、共通フィルタFC 1856のフィルタを追加し、第2のフィルタF2 1854の状態を共通フィルタFC 1856にコピーし、第2のフィルタF2 1854を除去することを含んでもよい。いくつかの実施形態では、全ての前述のステップは、時間T1において起こり得る。すなわち、全ての前述のステップは、同時に(またはほぼ同時に)起こり得る。いくつかの実施形態では、遅延ユニット1816は、先入れ先出しバッファを含む。これらの実施形態では、遅延ユニット1816内の全てのサンプルを処理する際、処理は、バッファの終わりから始まりに(すなわち、最も古いサンプルから最も新しいものに)進んでもよい。
図18Eに図示される(共通フィルタFC 1856を含む)遅延モジュール1805から図18Cに図示される(第2のフィルタF2 1854を含む)遅延モジュール1805への遷移は、図20の実施例によって図示されるもの等のプロセスを実行することを含んでもよい。2002において、共通フィルタFC 1856の状態が、保存される。これは、時間T1において起こり得る。2004において、本システムは、遅延時間を待機する。遅延時間は、遅延ユニット1816が信号を遅延させる時間量である。2006において、第2のフィルタF2 1854が、追加され、保存された共通フィルタFC 1856の状態が、第2のフィルタF2 1854にコピーされ、共通フィルタFC 1856が、除去される。これは、時間T2において起こり得る。
遅延ユニット1816は、先入れ先出しバッファを含む。時間T1の前に、共通フィルタFC 1856は、入力信号1802をフィルタ処理し、遅延ユニット1816のバッファは、フィルタ処理された入力信号で満たされる。時間T1と時間T2との間で、共通フィルタFC 1856は、入力信号1802をフィルタ処理し続け、遅延ユニット1816のバッファは、フィルタ処理された入力信号で満たされ続ける。時間T2において、第2のフィルタF2 1854が、追加され、保存された共通フィルタFC 1856の状態が、第2のフィルタF2 1854にコピーされ、共通フィルタFC 1856が、除去される。
図18Dに図示される(第1のフィルタF1 1852および第2のフィルタF2 1854を含む)遅延モジュール1805から図18Eに図示される(共通フィルタFC 1856を含む)遅延モジュール1805への遷移は、図21の実施例によって図示されるプロセスを実行することを含んでもよい。2102において、共通フィルタFC 1856が、追加され、第1のフィルタF1 1852の状態が、共通フィルタFC 1856にコピーされ、第1のフィルタF1 1852が、除去される。これは、時間T1において起こり得る。2104において、本システムは、遅延時間を待機する。遅延時間は、遅延ユニット1816が信号を遅延させる時間量である。2106において、第2のフィルタF2 1854が、除去される。これは、時間T2において起こり得る。
遅延ユニット1816は、先入れ先出しバッファを含む。時間T1の前に、遅延ユニット1816のバッファは、入力信号1802で満たされる。第2のフィルタF2 1854は、時間T1の前からの入力信号1802のみを含む遅延ユニット1816の出力をフィルタ処理する。時間T1と時間T2との間で、共通フィルタFC 1856は、入力信号1802をフィルタ処理し、遅延ユニット1816のバッファは、T1の前からの入力信号1802および時間T1と時間T2との間からのフィルタ処理された入力信号の両方で満たされる。第2のフィルタF2 1854は、時間T1の前からの入力信号1802のみを含む遅延ユニット1816の出力をフィルタ処理する。時間T2において、第2のフィルタ1854は、除去され、遅延ユニット1816は、時間T1において開始されるフィルタ処理された入力信号のみで満たされる。
図18Eに図示される(共通フィルタFC 1856を含む)遅延モジュール1805から図18Eに図示される(第1のフィルタF1 1852および第2のフィルタF2 1854を含む)遅延モジュール1805への遷移は、図22の実施例によって図示されるプロセスを実行することを含んでもよい。2202において、共通フィルタFC 1856の状態が、保存される。これは、時間T1において起こり得る。2204において、本システムは、遅延時間を待機する。遅延時間は、遅延ユニット1816が信号を遅延させる時間量である。2206において、第1のフィルタF1 1852が、追加され、保存された共通フィルタFC 1856の状態が、第1のフィルタF1 1852にコピーされ、第2のフィルタF2 1854が、追加され、保存された共通フィルタFC 1856の状態が、第2のフィルタF2 1854にコピーされ、共通フィルタFC 1856が、除去される。これは、時間T2において起こり得る。
遅延ユニット1816は、先入れ先出しバッファを含む。時間T1の前に、共通フィルタFC 1856は、入力信号1802をフィルタ処理し、遅延ユニット1816のバッファは、フィルタ処理された入力信号で満たされる。時間T1と時間T2との間で、共通フィルタFC 1856は、入力信号1802をフィルタ処理し続け、遅延ユニット1816のバッファは、フィルタ処理された入力信号で満たされ続ける。時間T2において、第1のフィルタF1 1852が、追加され、保存された共通フィルタFC 1856の状態が、第1のフィルタ1852にコピーされ、第2のフィルタF2 1854が、追加され、保存された共通フィルタFC 1856の状態が、第2のフィルタF2 1854にコピーされ、共通フィルタFC 1856が、除去される。
本開示の種々の例示的実施形態が、本明細書に説明される。これらの実施例は、非限定的意味で参照される。それらは、本開示のより広く適用可能な側面を例証するために提供される。種々の変更が、説明される本開示に行われてもよく、本開示の真の精神および範囲から逸脱することなく、均等物が代用されてもよい。加えて、多くの修正が、特定の状況、材料、組成物、プロセス、プロセス作用、またはステップを本開示の目的、精神、または範囲に適合させるために行われてもよい。さらに、当業者によって理解されるであろうように、本明細書で説明および図示される個々の変形例はそれぞれ、本開示の範囲または精神から逸脱することなく、他のいくつかの実施形態のうちのいずれかの特徴から容易に分離され得るか、またはそれらと組み合わせられ得る、離散コンポーネントおよび特徴を有する。全てのそのような修正は、本開示と関連付けられる請求項の範囲内であることが意図される。
本開示は、主題のデバイスを使用して実施され得る方法を含む。本方法は、そのような好適なデバイスを提供する行為を含んでもよい。そのような提供は、エンドユーザによって実施されてもよい。換言すると、「提供する」行為は、単に、エンドユーザが、本主題の方法において必要なデバイスを取得する、それにアクセスする、それに接近する、それを位置付ける、それを設定する、それをアクティブ化する、それに電源を入れる、または別様にそれを提供するように作用することを要求する。本明細書に列挙される方法は、論理的に可能な列挙されたイベントの任意の順序およびイベントの列挙される順序で行なわれてもよい。
本開示の例示的側面が、材料選択および製造に関する詳細とともに、上記に記載されている。本開示の他の詳細に関して、これらは、上記で参照された特許および刊行物に関連して理解され、概して、当業者によって公知である、または理解され得る。同じことが、一般的または論理的に採用されるような付加的行為の観点から、本開示の方法ベースの側面に関しても当てはまり得る。
加えて、本開示は、随意に、種々の特徴を組み込む、いくつかの実施例を参照して説明されているが、本開示は、開示の各変形例に関して検討されるように説明または図示されるものに限定されるものではない。種々の変更が、説明される本開示に行われてもよく、均等物(本明細書に列挙されるか、またはある程度の簡潔目的のために含まれないかどうかにかかわらず)が、本開示の真の精神および範囲から逸脱することなく代用されてもよい。加えて、値の範囲が提供される場合、その範囲の上限と下限との間の全ての介在値および任意の他の述べられた値または述べられた範囲内の介在値が、本開示内に包含されるものと理解されたい。
また、説明される本発明の変形例の任意の随意の特徴は、独立して、または本明細書に説明される特徴のうちの任意の1つ以上のものと組み合わせて、記載および請求され得ることが検討される。単数形項目の言及は、存在する複数の同一項目が存在する可能性を含む。より具体的には、本明細書および本明細書に関連付けられた請求項で使用されるように、単数形「a」、「an」、「said」、および「the」は、別様に具体的に述べられない限り、複数の言及を含む。換言すると、冠詞の使用は、上記の説明および本開示と関連付けられる請求項における本主題の項目のうちの「少なくとも1つ」を可能にする。さらに、そのような請求項は、任意の随意の要素を除外するように起草され得ることに留意されたい。したがって、本文言は、請求項の要素の列挙と関連する「単に」、「のみ」、および同等物等の排他的専門用語の使用、または「消極的」限定の使用のための先行詞としての役割を果たすことが意図される。
そのような排他的専門用語を使用しなければ、本開示と関連付けられる請求項における用語「~を備える」は、所与の数の要素がそのような請求項で列挙されるかどうかにかかわらず、任意の付加的要素の包含を可能にするものとする、または特徴の追加は、そのような請求項に記載される要素の性質を変換すると見なされ得る。本明細書で具体的に定義される場合を除いて、本明細書で使用される全ての技術および科学用語は、請求項の正当性を維持しながら、可能な限り広い一般的に理解されている意味を与えられるべきである。
本開示の範疇は、提供される実施例および/または本明細書に限定されるものではなく、むしろ、本開示と関連付けられる請求項の用語の範囲のみによって限定されるものとする。