JP2023066418A - オブジェクトベースのオーディオ空間化器 - Google Patents
オブジェクトベースのオーディオ空間化器 Download PDFInfo
- Publication number
- JP2023066418A JP2023066418A JP2022173116A JP2022173116A JP2023066418A JP 2023066418 A JP2023066418 A JP 2023066418A JP 2022173116 A JP2022173116 A JP 2022173116A JP 2022173116 A JP2022173116 A JP 2022173116A JP 2023066418 A JP2023066418 A JP 2023066418A
- Authority
- JP
- Japan
- Prior art keywords
- time
- sound
- shifting
- interpolation
- filtering operation
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/302—Electronic adaptation of stereophonic sound system to listener position or orientation
- H04S7/303—Tracking of listener position or orientation
- H04S7/304—For headphones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/01—Multi-channel, i.e. more than two input channels, sound reproduction with two speakers wherein the multi-channel information is substantially preserved
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/11—Positioning of individual sound objects, e.g. moving airplane, within a sound field
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2400/00—Details of stereophonic systems covered by H04S but not provided for in its groups
- H04S2400/15—Aspects of sound capture and related signal processing for recording or reproduction
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/01—Enhancing the perception of the sound image or of the spatial distribution using head related transfer functions [HRTF's] or equivalents thereof, e.g. interaural time difference [ITD] or interaural level difference [ILD]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S2420/00—Techniques used stereophonic systems covered by H04S but not provided for in its groups
- H04S2420/07—Synergistic effects of band splitting and sub-band processing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04S—STEREOPHONIC SYSTEMS
- H04S7/00—Indicating arrangements; Control arrangements, e.g. balance control
- H04S7/30—Control circuits for electronic adaptation of the sound field
- H04S7/302—Electronic adaptation of stereophonic sound system to listener position or orientation
- H04S7/303—Tracking of listener position or orientation
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Signal Processing (AREA)
- Stereophonic System (AREA)
Abstract
【課題】ビデオゲームおよび他の適用例のための仮想サウンド生成システムにおける仮想3Dオブジェクト配置の品質および精度を改善する。【解決手段】3Dサウンド空間化器は、遅延補償HRTF補間技法および現在のHRTFフィルタ結果と遅延したHRTFフィルタ結果との間の効率的なクロスフェーディングを提供して、HRTFフィルタ間の補間および時間変化HRTFフィルタの使用によって生じるアーチファクトを軽減する。【選択図】図6
Description
関連出願の相互参照
この出願は、2021年10月28日に出願された米国出願連続番号第17/513,175号および第17/513,249号に関連し、引用により本明細書に援用される。
この出願は、2021年10月28日に出願された米国出願連続番号第17/513,175号および第17/513,249号に関連し、引用により本明細書に援用される。
分野
本明細書の技術は3Dオーディオに関し、より特定的には、拡張現実、ビデオゲーム、および他の適用例向けの仮想サウンド生成システムにおける仮想3Dオブジェクト配置の品質および精度を改善するための信号処理技法に関する。
本明細書の技術は3Dオーディオに関し、より特定的には、拡張現実、ビデオゲーム、および他の適用例向けの仮想サウンド生成システムにおける仮想3Dオブジェクト配置の品質および精度を改善するための信号処理技法に関する。
背景
2つの耳しか有していなくても、我々人間は、自分が聴く音源の3D位置を驚くべき精度で検出することができる。夏の夜に裏口に座っていると、左からコオロギの鳴き声、右からカエルの鳴き声、背後で遊ぶ子供の声、地平線の向こうの空遠くからの遠雷が聞こえてくる。コンサートホールでは、目を閉じて、左側にバイオリンがあり、チェロとダブルバスとが右側にあり、コントラバスがチェロの後ろにあり、管楽器とビオラとが真ん中にあって木管楽器が前方、金管楽器が後方、打楽器がその後ろにあるのが聞こえる。
2つの耳しか有していなくても、我々人間は、自分が聴く音源の3D位置を驚くべき精度で検出することができる。夏の夜に裏口に座っていると、左からコオロギの鳴き声、右からカエルの鳴き声、背後で遊ぶ子供の声、地平線の向こうの空遠くからの遠雷が聞こえてくる。コンサートホールでは、目を閉じて、左側にバイオリンがあり、チェロとダブルバスとが右側にあり、コントラバスがチェロの後ろにあり、管楽器とビオラとが真ん中にあって木管楽器が前方、金管楽器が後方、打楽器がその後ろにあるのが聞こえる。
我々がこのような音源定位(sound localization)能力を発展させてきたのは、自分たちの生存に重要であったためであると考える人がいる-すなわち、自分の右側の少し離れた草むらで剣歯虎がカサカサ音をたてて動いているが自分の方に向かってくるのを知覚することで、自分を襲撃から守ることができた。音源定位を知覚するこの驚くべき能力をどのようにまたなぜ発展させたかに拘わらず、これは、我々が世界を知覚するやり方の一部である。したがって、(一人称(first person)または他の没入型ゲームを含む)ビデオゲーム、拡張現実、仮想現実、強化現実、または仮想サウンドスケープおよび/もしくは3D空間サウンドに係る他の表現などの仮想シミュレーションを用いて現実をシミュレートする場合は、音源をモデリングおよびシミュレートすることが望ましくなっている。そのため、我々は、それらが3次元空間にリアル感のある空間場所を有していると知覚する。
側方定位
直感的には、概して左耳で聞こえる音が左から入来し、概して右耳で聞こえる音が右から入来する。単純なステレオパン制御は、左右のヘッドホンスピーカーでの可変音量レベルを用いて、音が左に向かっている、右に向かっている、または中央にあると錯覚させる。
直感的には、概して左耳で聞こえる音が左から入来し、概して右耳で聞こえる音が右から入来する。単純なステレオパン制御は、左右のヘッドホンスピーカーでの可変音量レベルを用いて、音が左に向かっている、右に向かっている、または中央にあると錯覚させる。
横方向のまたは方位角的な定位を検出するために我々が用いる音響心理メカニズムは、実際には、単純なステレオ強度パンニングよりもはるかに複雑である。我々の脳は、耳で検出する音の振幅とタイミング(位相)との両方における微細な差を識別することができる。音が左耳に到達する時間と、同じ音が右耳に到達する時間との間の相対的な遅延は、両耳間時間差またはITDと呼ばれる。左耳で検出する音と右耳で検出する同じ音との間の振幅またはレベルの差は、両耳間強度差またはILDと呼ばれる。我々の脳は、音の定位のためにILDとITDとの両方を用いている。
特定の音の特性に応じて、一方または他方(ILDまたはITD)がより有用であることが分かる。たとえば、低周波(低ピッチ)の音は、我々の頭の次元よりも大きい波長を有するので、我々の脳は、位相(タイミング差)情報を用いて低周波数またはより太いピッチの音の横方向を検出することができる。他方、より高い周波数(より高いピッチ)の音の波長はより短いので、位相情報は音の定位には有用ではない。しかし、我々の頭は、より高周波の音をより容易に減衰させるので、我々の脳はこの付加的な情報を用いて、高周波音源の横方向場所を判断する。特に、我々の頭は、頭の左側から生じる高周波音を右耳から「遮り」、我々の頭の右側から生じる高周波音を左耳から「遮る」。我々の脳は、そのような遮りに基づいて左耳と右耳との間の振幅/レベルの微小な差を検出して高周波音を定位することができる。中周波数の音については、我々の脳が位相(タイミング)と振幅/レベル差との両方を用いて音を定位するのを助ける遷移領域がある。
仰角および前後の定位
音が自分の後ろから入来しているか前から入来しているかを識別することはより困難である。自分のすぐ前の音源および自分のすぐ後ろの同じ音を考える。音源が発する音は、いずれの場合も、まったく同時に左右の耳に到達する。音は自分の前からなのか後ろからなのか?この曖昧さを解決するため、我々の脳は、自身の耳、頭、および体が音のスペクトルをどのように修正するかに頼る。異なる方向から生じる音は、異なる態様で我々の体の外形と相互作用する。我々の頭、首、肩、胴の形状およびサイズ、特に外耳(または耳介)によって生じる音の反射は、自身の中耳に到達する音の周波数スペクトルを修正するフィルタとして働く。
音が自分の後ろから入来しているか前から入来しているかを識別することはより困難である。自分のすぐ前の音源および自分のすぐ後ろの同じ音を考える。音源が発する音は、いずれの場合も、まったく同時に左右の耳に到達する。音は自分の前からなのか後ろからなのか?この曖昧さを解決するため、我々の脳は、自身の耳、頭、および体が音のスペクトルをどのように修正するかに頼る。異なる方向から生じる音は、異なる態様で我々の体の外形と相互作用する。我々の頭、首、肩、胴の形状およびサイズ、特に外耳(または耳介)によって生じる音の反射は、自身の中耳に到達する音の周波数スペクトルを修正するフィルタとして働く。
我々の脳は、これらのスペクトル修正を用いて、音の発生元の方向を推測する。たとえば、前方から近づいてくる音は、耳介の内部の複雑な折り目によって作り出される共鳴を発生させる一方で、後ろからの音は耳介によって遮られる。同様に、上からの音は肩で反射され得る一方で、下方からの音は胴および肩によって遮られる。これらの反射および遮りの効果が組み合わさって、我々の脳が方向選択的フィルタであるものを効果的に適用できるようになっている。
オーディオ空間化システム
頭による音の修正のし方は、脳による音の方向の知覚のし方にとって重要であるため、近代の3Dオーディオシステムは、頭部伝達関数(HRTF)を用いてこれらの音響心理メカニズムをモデリングしようとしている。HRTFは、我々の脳が音を定位するのに用いるタイミング、レベル、およびスペクトル差を捕捉するものであり、大部分の近代の3Dサウンド空間化技法の土台である。
頭による音の修正のし方は、脳による音の方向の知覚のし方にとって重要であるため、近代の3Dオーディオシステムは、頭部伝達関数(HRTF)を用いてこれらの音響心理メカニズムをモデリングしようとしている。HRTFは、我々の脳が音を定位するのに用いるタイミング、レベル、およびスペクトル差を捕捉するものであり、大部分の近代の3Dサウンド空間化技法の土台である。
HRTFは、対応する頭部インパルス応答(HRIR)のフーリエ変換である。モノラルオブジェクトサウンドx(t)を各々の耳hL(t)およびhR(t)ごとにHRIRで畳み込むことによって、バイノーラルステレオチャンネルyL(t)およびyR(t)が作成される(図5を参照)。このプロセスは、M個のサウンドオブジェクトの各々ごとに行われる(図5は、3つの異なるサウンドオブジェクトを示すが、任意のM個が存在することができる)。各々のサウンドオブジェクトは、3次元仮想空間において異なる音源を表すまたはモデリングする。同じように、モノラルオブジェクト音X(f)に各々のHRTF HL(f)およびHR(f)を乗算することによって、すなわち、
によって、周波数領域で畳み込みを行うことができる。
リスナが装着するヘッドホンを典型的に用いる一般的な種類の3Dオーディオエフェクト技術であるバイノーラル法は、音源からリスナの両耳への音のHRTFを用いることにより、リスナに、音が入来しているらしい方向および音源からの距離を認識させる。信号またはデジタル領域において左右の耳への音に対して異なるHRTFを適用することにより、脳をだまして音が現実の3D空間の実際の3D位置にある現実の音源から来ていると信じさせることができる。
たとえば、このようなシステムを用いると、リスナが聴く音の音圧レベル(利得)は、音がリスナの中耳に到達するまで、周波数に応じて変化する。3Dオーディオシステムでは、これらの周波数特性は、典型的には、リスナの中耳に直接到来する直接音だけでなく、耳殻または耳介、頭の他の部分、およびリスナの他の体の部分によって回折および反射される音の影響も考慮に入れるHRTFを用いて-ちょうど空気を通じて伝搬する現実の音が処理されるように-電子的に処理される。
周波数特性は、音源の場所(たとえば方位)に応じても変わる。さらに、左右の耳で検出すべき音の周波数特性は異なることがある。空間サウンドシステムでは、リスナの左右の中耳に到達する音の周波数特性、その音量、およびその間の時間差を慎重に制御することで、リスナが知覚すべき音源の場所(たとえば方位)を制御することができる。これにより、サウンド設計者は、音源をサウンドスケープにおいて精密に位置決めできるようになり、リアル感のある3Dサウンドの錯覚を作り出すことができるようになる。たとえば、US10796540B2;Sodnik et al., "Spatial sound localization in an augmented reality environment," OZCHI '06: Proceedings of the 18th Australia conference on Computer-Human Interaction: Design: Activities, Artefacts and Environments (November 2006) Pages 111-118 https://doi.org/10.1145/1228175.1228197; Immersive Sound: The Art and Science of Binaural and Multi-Channel Audio (Routledge 2017)を参照されたい。
過去には多くの研究が行われてきたが、さらなる改善が可能であり、望ましい。
特許または出願ファイルは、カラーで製作された少なくとも1つの図面を含む。カラー図面を有するこの特許または特許出願公開の写しは、要請に応じておよび必要な料金の支払いに応じて庁によって提供される。
非限定的な実施形態の詳細な説明
新たなオブジェクトベースの空間化器アルゴリズムおよび関連のサウンド処理システムを開発して、仮想現実、ビデオゲーム、および他の3Dオーディオ空間化適用例向けの新たな空間オーディオソリューションを実証している。空間化器アルゴリズムは、オーディオオブジェクトを処理して、ヘッドホンまたは他のやり方で聞いたときに3D空間中の任意の位置から発せられる仮想サウンドオブジェクトの説得力ある印象を与える。
新たなオブジェクトベースの空間化器アルゴリズムおよび関連のサウンド処理システムを開発して、仮想現実、ビデオゲーム、および他の3Dオーディオ空間化適用例向けの新たな空間オーディオソリューションを実証している。空間化器アルゴリズムは、オーディオオブジェクトを処理して、ヘッドホンまたは他のやり方で聞いたときに3D空間中の任意の位置から発せられる仮想サウンドオブジェクトの説得力ある印象を与える。
オブジェクトベースの空間化器は、各々のオーディオオブジェクトに頭部伝達関数(HRTF)を適用し、次にすべてのフィルタリング後信号を、ヘッドフォンまたは他の再生に好適なバイノーラルステレオ信号に合成する。高品質のHRTFデータベースおよび新規の信号処理によって、強い外在化の感覚および正確なオブジェクト定位を提供する魅力的なオーディオ再生体験を達成することができる。
例示的な特徴
以下は、オブジェクトベースの空間化器設計の少なくともいくつかの例示的な特徴である。
以下は、オブジェクトベースの空間化器設計の少なくともいくつかの例示的な特徴である。
各々のオーディオオブジェクトをオブジェクト位置に基づいて独立して空間化する。
複数(M個)の同時オブジェクトをサポートする。
オブジェクト位置は時間とともに変化する可能性がある。
(たとえば、効率的なFFTベースの畳み込みまたは他の技法の使用による)妥当なCPU負荷。
新規の遅延補償HRTF補間技法。
時間変化HRTFフィルタによって生じるアーチファクトを軽減する効率的なクロスフェーディング技法。
例示的なサウンド捕捉システム
ビデオゲームシステム、(たとえば、拡張もしくは仮想現実システムなどの)人工現実システム、またはグラフィックスもしくは画像ベースの成分を有するもしくは有しない他のシステムでオブジェクトベースの空間化器を用いて、任意のM個のサウンドオブジェクトを含むリアル感のあるサウンドスケープを提供することができる。サウンドスケープは、3次元(xyz)座標系で定義することができる。複数(M個)の人工サウンドオブジェクトの各々をサウンドスケープ内に定義することができる。たとえば、森のサウンドスケープでは、木の高いところにいる鳥のサウンドオブジェクトを、あるxyz位置に(たとえば点の音源として)定義してもよく、滝のサウンドオブジェクトを、別のxyz位置または位置の範囲に(たとえば面の音源として)定義することができ、木々の間を通って吹く風を、別のxyz位置または位置の範囲(たとえば別の面の音源)にあるサウンドオブジェクトとして定義することができる。これらのオブジェクトの各々を別々にモデリングしてもよい。たとえば、現実の鳥の声を捕捉し、サウンドスケープ中の鳥オブジェクトのxyz仮想位置を定義し、捕捉された音を、鳥オブジェクトの仮想位置およびリスナの頭の位置(および、場合によっては向き)に基づいてHRTFを通して(予めまたはリアルタイム再生中に)処理することによって、鳥オブジェクトをモデリングすることができる。同様に、滝オブジェクトの音を現実の滝から捕捉することができる、またはスタジオで合成することができる。(滝オブジェクトがリスナからどれだけ離れているかに応じて、点の音源または面の音源であり得る)サウンドスケープ中の滝オブジェクトのxyz仮想位置を定義することによって、滝オブジェクトをモデリングすることができる。そして、捕捉された音を、滝の仮想位置およびリスナの頭の位置(および、場合によっては向き)に基づいてHRTFを通して(予めまたはリアルタイム再生中に)処理する。任意のM個のそのようなサウンドオブジェクトをサウンドスケープ中に定義することができる。
ビデオゲームシステム、(たとえば、拡張もしくは仮想現実システムなどの)人工現実システム、またはグラフィックスもしくは画像ベースの成分を有するもしくは有しない他のシステムでオブジェクトベースの空間化器を用いて、任意のM個のサウンドオブジェクトを含むリアル感のあるサウンドスケープを提供することができる。サウンドスケープは、3次元(xyz)座標系で定義することができる。複数(M個)の人工サウンドオブジェクトの各々をサウンドスケープ内に定義することができる。たとえば、森のサウンドスケープでは、木の高いところにいる鳥のサウンドオブジェクトを、あるxyz位置に(たとえば点の音源として)定義してもよく、滝のサウンドオブジェクトを、別のxyz位置または位置の範囲に(たとえば面の音源として)定義することができ、木々の間を通って吹く風を、別のxyz位置または位置の範囲(たとえば別の面の音源)にあるサウンドオブジェクトとして定義することができる。これらのオブジェクトの各々を別々にモデリングしてもよい。たとえば、現実の鳥の声を捕捉し、サウンドスケープ中の鳥オブジェクトのxyz仮想位置を定義し、捕捉された音を、鳥オブジェクトの仮想位置およびリスナの頭の位置(および、場合によっては向き)に基づいてHRTFを通して(予めまたはリアルタイム再生中に)処理することによって、鳥オブジェクトをモデリングすることができる。同様に、滝オブジェクトの音を現実の滝から捕捉することができる、またはスタジオで合成することができる。(滝オブジェクトがリスナからどれだけ離れているかに応じて、点の音源または面の音源であり得る)サウンドスケープ中の滝オブジェクトのxyz仮想位置を定義することによって、滝オブジェクトをモデリングすることができる。そして、捕捉された音を、滝の仮想位置およびリスナの頭の位置(および、場合によっては向き)に基づいてHRTFを通して(予めまたはリアルタイム再生中に)処理する。任意のM個のそのようなサウンドオブジェクトをサウンドスケープ中に定義することができる。
サウンドオブジェクトのうちの少なくともいくつかは、変更可能なまたは動的な位置を有することができる(たとえば、ある木から別の木へ飛ぶように鳥をモデリングすることができる)。ビデオゲームまたは仮想現実では、サウンドオブジェクトの位置は、3Dグラフィックスの世界の中での仮想(たとえば視覚的なまたは隠れた)オブジェクトの位置に対応することができるため、たとえば、リスナに対して見かけ上同じ仮想場所にあるグラフィックスオブジェクトとサウンドオブジェクトとの両方によって鳥をモデリングすることができる。他の適用例では、グラフィックス成分が存在する必要はない。
サウンドオブジェクトをモデリングするため、音源の音(たとえば、鳥の鳴き声、滝の水しぶき、吹く風など)は、最初に、現実世界の音または人工的に合成した音から捕捉される。いくつかの事例では、現実世界の音をデジタルに修正して、たとえば(声をより高くまたは低く感じさせるなどの)さまざまな効果を適用して、望ましくない雑音などを除去することができる。図1は、音を捕捉して再生するのに用いられる例示的なシステム100を示す。この例では、任意の数の実際のおよび/または仮想のマイク102を用いて音を捕捉する(図1Aのブロック202、204)。音は、A/D変換器104によってデジタル化され、サウンドプロセッサ106によってさらに処理(図1Aのブロック206)され、その後にサウンドファイル109として格納され(図1Aのブロック208、210)てもよい。このように-鳥の鳴き声、滝、ジェット飛行機、警察のサイレン、草を吹き抜ける風、人間の歌手、声、人混みの雑音など-任意の種類の音を捕捉することができる。場合によっては、自然に発生する音を捕捉する代わりにまたはそれに加えて、シンセサイザを用いて、効果音などの音を作り出すことができる。結果として生じるサウンドファイル109の集合またはライブラリを格納し(図1Aのブロック208)、これを用いて仮想3Dサウンドスケープ中に1つ以上のサウンドオブジェクトを作成し提示することができる。コンテンツを作成するときに、そのような音のライブラリを用いることが多い。しばしば、ライブラリは、各々のオブジェクトごとにモノラル音を定義するかまたは用いて、次にそれらは、以下に説明されるように操作されて空間的効果を与える。
図2は、視覚的能力およびオーディオ能力を含む例示的な非限定的なサウンド空間化システムを示す。示される例では、非一時的記憶装置108は、サウンドファイル109およびグラフィックスファイル120を格納する。サウンドプロセッサ110と、CPU124と、グラフィックス処理ユニット126とを含む処理システム122は、ユーザ入力デバイス130からの入力に応答して格納されている情報を処理して、ステレオヘッドホン116を介してバイノーラル3Dオーディオを出力し、ディスプレイ128を介して3Dグラフィックスを出力する。ディスプレイ128は、テレビ、コンピュータモニタ、(たとえば、タブレット、携帯電話、携帯型ゲームシステムなどの携帯型デバイス上に設けられる)手持ち型ディスプレイ、ゴーグル、眼鏡などの任意の種類のディスプレイであることができる。同様に、ヘッドホンは、リスナの左耳および右耳の各々に到達する別個のサウンドチャンネルに対して完全な制御を提供するという利点を提供するが、他の適用例では、ラウドスピーカ(たとえば、ステレオ、サラウンドサウンドなど)を介して音を再生することができ、またはいくつかの実施形態では、他のトランスデューサを介して音を再生することができる。そのようなシステムを、音のリアルタイム対話型再生のために、または(たとえばポッドキャスティングもしくはブロードキャスティングを介した)後の再生用に音を記録するために、またはその両方のために用いることができる。そのような場合、サウンドオブジェクトとリスナとの仮想位置および相対的位置は、固定されてもよくまたは可変であってもよい。たとえば、ビデオゲームまたは仮想現実シナリオでは、リスナは、サウンドスケープの中でのリスナ自身の位置を変更してもよく、サウンドスケープの中でのあるサウンドオブジェクトの位置を制御することが可能でもあってもよい(いくつかの実施形態では、リスナの位置は、一人称または三人称「仮想カメラ」位置を提供する3Dグラフィックス生成に用いられる視点に対応する、たとえばUSP5754660を参照)。一方、処理システムは、サウンドスケープの中の他のサウンドオブジェクトの位置を自律的に移動させたりまたは制御したりしてもよい(「ボット」制御)。マルチプレーヤシナリオでは、あるリスナはいくつかのサウンドオブジェクトの位置を制御することができてもよく、別のリスナは他のサウンドオブジェクトの位置を制御することができてもよい。そのような移動シナリオでは、サウンドオブジェクト位置は、リスナの左右の耳の位置に対して連続的に変化する。しかしながら、例示的な実施形態は移動する対象を含むが、これに限定されない。たとえば、サウンド生成オブジェクトは、「移動」が知覚されるまたは「移動」するように制御されることなく、リスナの位置に対する位置、距離、および/または方向を変更することができる(たとえば、通常のサウンド生成オブジェクトを用いて木にいる多数の鳴鳥または空の異なる部分からの多数の雷鳴などの複数のインスタンスを与える)。
図3は、3D空間サウンド再生システムの例示的な非限定的なより詳細なブロック図を示す。示される例では、サウンドプロセッサ110は、左右の出力を生成して、それぞれのデジタル-アナログ変換器112(L)、112(R)に出力する。結果として生じる2つのアナログチャンネルは、アナログ増幅器114(L)、114(R)によって増幅され、ヘッドホン116のそれぞれ左右のスピーカ118(L)、118(R)に与えられる。ヘッドホン116の左右のスピーカ118(L)、118(R)は振動して音波を発生し、音波は、空気を通しておよび伝導によって伝搬する。これらの音波は、サウンドプロセッサ110によって制御されるタイミング、振幅、および周波数を有する。音波は、リスナのそれぞれの左右の中耳または鼓膜に当たる。中耳は、発生された音波に応答して振動し、中耳の振動は、サウンドプロセッサ110によって特定される周波数、タイミング、および振幅に対応する。人間の脳および神経系は中耳の振動を検出し、脳のニューラルネットワークを用いて、サウンドプロセッサ110によって特定される振動の周波数、振幅、およびタイミングに基づいて、方向および距離、したがって仮想サウンドオブジェクトとリスナの頭との間の見かけ上の空間的関係、を知覚して、リスナが音を知覚できるようにする。
図4は、記憶部108に格納されている命令の制御下で処理システム122によって行われる動作の例示的な非限定的なシステムのフローチャートを示す。示される例では、処理システム122は、ユーザ入力を受信し(ブロック302、304)、グラフィックスデータを処理し(ブロック306)、サウンドデータを処理し(ブロック308)、ヘッドホン116およびディスプレイ128への出力を生成する(ブロック310、312)。一実施形態では、このプログラム制御フローは、ビデオフレームごと(たとえば、1/60秒ごとまたは1/30秒ごと)に1回など、周期的に行われる。一方、サウンドプロセッサ110は、グラフィックスプロセッサ126によって処理されるビデオフレームあたり多数回サウンドデータを処理してもよい(ブロック308)。一実施形態では、アプリケーションプログラミングインターフェイス(API)が設けられ、APIは、CPU124が、(a)相対的な距離、位置、および/または方向パラメータ(たとえば、各々のサウンド生成オブジェクトごとの1組のパラメータ)を、サウンドデータを実行するデジタル信号、オーディオ、またはサウンドプロセッサ110によってアクセス可能なメモリに(再)書き込みし(ブロック308)、(b)デジタル信号、オーディオ、またはサウンドプロセッサ110に、CPU124とサウンドプロセッサ110との両方によってアクセス可能なメインメモリまたは他の共有メモリの中にCPU124が置くおよび/またはそれを参照するサウンド生成オブジェクトによって発生される音に関連付けられるオーディオデータの次のブロックまたは「フレーム」に対してサウンド処理を実行するよう命じることができるようにする。デジタル信号、オーディオ、またはサウンドプロセッサ110は、このように、多数の定位されたサウンド生成オブジェクトの各々ごとに各ビデオフレームに対して多数のサウンド処理動作を行って、複数のオーディオ出力ストリームを発生させてもよく、次に、複数のオーディオ出力ストリームは、ともに、または他の処理されていないもしくは異なって処理されたオーディオストリーム(たとえば、音楽再生、キャラクタの声の再生、爆発、風の音などの定位されない効果音)と混合するかまたは組み合わさって、定位された3Dサウンド成分と定位されない(たとえば、従来のモノフォニックまたはステレオフォニック)サウンド成分との両方を含む複合サウンド出力をヘッドホンに出力する。
HRTFベースの空間化
一例では、サウンドプロセッサ110は、一対のHRTFフィルタを用いて、左右の耳が3D空間中の位置からどのように音を受信するかを特徴付ける周波数応答を捕捉する。処理システム122は、各々のサウンドオブジェクトごとに異なるHRTFフィルタを左右のサウンドチャンネルに適用して、ヘッドホン116のそれぞれの左右のチャンネルに適用することができる。応答は、以上で論じるように、人間の聴覚系が音を定位するのを助ける、両耳間時間差(ITD)、両耳間強度差(ILD)、およびスペクトル偏差などの重要な知覚上の手がかりを捕捉する。
一例では、サウンドプロセッサ110は、一対のHRTFフィルタを用いて、左右の耳が3D空間中の位置からどのように音を受信するかを特徴付ける周波数応答を捕捉する。処理システム122は、各々のサウンドオブジェクトごとに異なるHRTFフィルタを左右のサウンドチャンネルに適用して、ヘッドホン116のそれぞれの左右のチャンネルに適用することができる。応答は、以上で論じるように、人間の聴覚系が音を定位するのを助ける、両耳間時間差(ITD)、両耳間強度差(ILD)、およびスペクトル偏差などの重要な知覚上の手がかりを捕捉する。
複数のサウンドオブジェクトおよび/または移動するサウンドオブジェクトを用いる多くの実施形態では、サウンドオブジェクトをフィルタリングするのに用いられるフィルタは、サウンドオブジェクトの場所に依存して異なる。たとえば、(x1,y1,z1)にある第1のサウンドオブジェクトに適用されるフィルタは、(x2,y2,z2)にある第2のサウンドオブジェクトに適用されるフィルタとは異なる。同様に、サウンドオブジェクトが位置(x1,y1,z1)から位置(x2,y2,z2)に移動すれば、移動の開始時に適用されるフィルタは、移動の終了時に適用されるフィルタとは異なる。さらに、オブジェクトがこれらの2つの位置の間を移動しているときにオブジェクトから音が発生されると、対応する異なるフィルタを適用して、そのような中間位置にあるサウンドオブジェクト用のHRTFを適切にモデリングしなければならない。このように、移動するサウンドオブジェクトの場合、HRTFフィルタリング情報は時間とともに変化することがある。同様に、3Dサウンドスケープ中のリスナの仮想場所は、サウンドオブジェクトに対して変化する可能性がある、または(たとえば、リスナが森を通って移動しており動物もしくは敵がリスナについていっているまたはそれ以外にリスナの位置に応答してもしくは他の理由で位置を変えているシミュレーションゲームでは)リスナとサウンドオブジェクトとの両方の位置が移動している可能性がある。しばしば、リスナに対して予め規定された場所に1組のHRTFが設けられ、補間を用いて、そのような予め規定された場所同士の間に位置するサウンドオブジェクトをモデリングする。しかしながら、以下に説明するように、そのような補間は、リアル感を低下させるアーチファクトを生じる可能性がある。
例示的なアーキテクチャ
図6は、オブジェクトベースの空間化器アーキテクチャの高レベルブロック図である。処理コストをできるだけ低く保つために、処理の大部分は、効率的なFFTベースの畳み込みを含む周波数領域で行われる。
図6は、オブジェクトベースの空間化器アーキテクチャの高レベルブロック図である。処理コストをできるだけ低く保つために、処理の大部分は、効率的なFFTベースの畳み込みを含む周波数領域で行われる。
オブジェクトごと処理
アーキテクチャの第1の段階は、各々の利用可能なオーディオオブジェクトに対する処理ループ502を含む。そのため、M個の処理オブジェクトのためのM個の処理ループ502(1)、・・・、502(M)(たとえば、各々のサウンドオブジェクトごとに1つの処理ループ)が存在し得る。各々の処理ループ502は、(たとえば、xyz3次元空間における)サウンドオブジェクトの位置に基づいて、対応するオブジェクトについてのサウンド情報(たとえば、オーディオ信号x(t))を処理する。これらの入力の両方ともが時間とともに変化する可能性がある。各々の処理ループ502は、関連付けられるサウンドオブジェクトを、他の処理ループがそれぞれのサウンドオブジェクトに対して行っている処理とは独立して、処理する。アーキテクチャは、たとえば、各々の追加のサウンドオブジェクトごとに追加の処理ループブロック502を追加することによって拡張可能である。一実施形態では、処理ループ502は、ソフトウェア命令を行うDSPによって実現されるが、他の実現例は、ハードウェアまたはハードウェアとソフトウェアとの組み合わせを用いることができる。
アーキテクチャの第1の段階は、各々の利用可能なオーディオオブジェクトに対する処理ループ502を含む。そのため、M個の処理オブジェクトのためのM個の処理ループ502(1)、・・・、502(M)(たとえば、各々のサウンドオブジェクトごとに1つの処理ループ)が存在し得る。各々の処理ループ502は、(たとえば、xyz3次元空間における)サウンドオブジェクトの位置に基づいて、対応するオブジェクトについてのサウンド情報(たとえば、オーディオ信号x(t))を処理する。これらの入力の両方ともが時間とともに変化する可能性がある。各々の処理ループ502は、関連付けられるサウンドオブジェクトを、他の処理ループがそれぞれのサウンドオブジェクトに対して行っている処理とは独立して、処理する。アーキテクチャは、たとえば、各々の追加のサウンドオブジェクトごとに追加の処理ループブロック502を追加することによって拡張可能である。一実施形態では、処理ループ502は、ソフトウェア命令を行うDSPによって実現されるが、他の実現例は、ハードウェアまたはハードウェアとソフトウェアとの組み合わせを用いることができる。
オブジェクトごと処理の段階は、距離モデル504を適用し、FFT506を用いて周波数領域に変換し、各々のオブジェクトの一意の位置に基づいて1対のデジタルHRTF FIRフィルタを適用する(FFT506が信号を周波数領域に変換するため、デジタルフィルタの適用は、図6の「X」で示す丸509によって示される単純な乗算である)(周波数領域における乗算は、時間領域における畳み込みの実行と等価であり、畳み込みを行うよりも、典型的なハードウェアを用いて乗算を行う方がより効率的であることが多い)。
一実施形態では、すべての処理後オブジェクトは、内部合成バスYL(f)およびYR(f)510(L)、510(R)に合算される。これらの合成バス510(L)、510(R)は、それぞれ左耳および右耳のためのフィルタリング後信号のすべてを蓄積する。図6では、バイノーラルステレオチャンネルへの全てのフィルタリング後オブジェクトの合算は周波数領域で行われる。内部合成バスYL(f)およびYR(f)510は、フィルタリング後オブジェクトのすべてを蓄積する。
式中、Mはオーディオオブジェクトの数である。
逆FFTおよび重畳加算
これらの合算後信号は、逆FFTブロック512(L)、512(R)によって時間領域に変換して戻され、重畳加算プロセス514(L)、514(R)は、非常に長い信号の畳み込みを実現する効率的なやり方を提供する(たとえば、Oppenheim et al,. Digital signal processing (Prentice-Hall 1975), ISBN 0-13-214635-5;およびHayes,et al. Digital Signal Processing. Schaum's Outline Series (McGraw Hill 1999), ISBN 0-07-027389-8を参照されたい)。次に、出力信号yL(t)、yR(t)(図5を参照)は、アナログに変換され、増幅され、リスナの耳でオーディオトランスデューサに印加されてもよい。図6に示すように、逆FFT512は、内部合成バスYL(f)およびYR(f)の各々に適用される。オブジェクトごとの順方向FFTは2倍になるまでゼロパディングされ、その結果、FFT長さがNになる。図11に示すように50%重畳する窓を用いた一般的な重畳加算技法により、有効な畳み込みを達成することができ、その結果、最終的な出力チャンネルyL(t)およびyR(t)となる。
これらの合算後信号は、逆FFTブロック512(L)、512(R)によって時間領域に変換して戻され、重畳加算プロセス514(L)、514(R)は、非常に長い信号の畳み込みを実現する効率的なやり方を提供する(たとえば、Oppenheim et al,. Digital signal processing (Prentice-Hall 1975), ISBN 0-13-214635-5;およびHayes,et al. Digital Signal Processing. Schaum's Outline Series (McGraw Hill 1999), ISBN 0-07-027389-8を参照されたい)。次に、出力信号yL(t)、yR(t)(図5を参照)は、アナログに変換され、増幅され、リスナの耳でオーディオトランスデューサに印加されてもよい。図6に示すように、逆FFT512は、内部合成バスYL(f)およびYR(f)の各々に適用される。オブジェクトごとの順方向FFTは2倍になるまでゼロパディングされ、その結果、FFT長さがNになる。図11に示すように50%重畳する窓を用いた一般的な重畳加算技法により、有効な畳み込みを達成することができ、その結果、最終的な出力チャンネルyL(t)およびyR(t)となる。
距離モデル504
各々のオブジェクトは、オーディオオブジェクトとリスナとの間の相対的な距離に基づいて減衰を算出する距離モデル504を用いて減衰される。こうして、距離モデル504は、サウンドオブジェクトがリスナからどれだけ離れているかに基づいて、サウンドオブジェクトのオーディオ信号x(t)を減衰させる。距離モデル減衰は時間領域において適用され、不連続性を回避するためにフレームからフレームへの傾斜付けを含む。距離モデルは、線形減衰および/もしくは対数減衰曲線または任意の他の好適な距離減衰関数を用いるように構成することができる。概して、距離モデル504は、音x(t)がオブジェクトからリスナまでより遠い距離を伝わっているとき、当該音のより高い減衰を適用する。たとえば、減衰率は、音がそれを通って伝わっている媒体(たとえば、空気、水、深い森、雨景など)によって影響を受けることがある。
各々のオブジェクトは、オーディオオブジェクトとリスナとの間の相対的な距離に基づいて減衰を算出する距離モデル504を用いて減衰される。こうして、距離モデル504は、サウンドオブジェクトがリスナからどれだけ離れているかに基づいて、サウンドオブジェクトのオーディオ信号x(t)を減衰させる。距離モデル減衰は時間領域において適用され、不連続性を回避するためにフレームからフレームへの傾斜付けを含む。距離モデルは、線形減衰および/もしくは対数減衰曲線または任意の他の好適な距離減衰関数を用いるように構成することができる。概して、距離モデル504は、音x(t)がオブジェクトからリスナまでより遠い距離を伝わっているとき、当該音のより高い減衰を適用する。たとえば、減衰率は、音がそれを通って伝わっている媒体(たとえば、空気、水、深い森、雨景など)によって影響を受けることがある。
FFT506
一実施形態では、各々の減衰後オーディオオブジェクトは、FFT506を介して周波数領域に変換される。周波数領域への変換により、ほとんどの実施形態では、より最適化されたフィルタリング実現例となる。各々のFFT506は、巡回畳み込みを防止しかつFFTベースの重畳加算実現例に適応するように、2倍になるまでゼロパディングされる。
一実施形態では、各々の減衰後オーディオオブジェクトは、FFT506を介して周波数領域に変換される。周波数領域への変換により、ほとんどの実施形態では、より最適化されたフィルタリング実現例となる。各々のFFT506は、巡回畳み込みを防止しかつFFTベースの重畳加算実現例に適応するように、2倍になるまでゼロパディングされる。
HRTF補間508
説得力がありかつ没入できる体験のためには、3D空間中の任意の位置から滑らかでかつ高品質の音を達成することが有用である。デジタルHRTFフィルタは、HRTFデータベース中に捕捉された予め規定される方向について定義されるのが通常である。そのため、そのようなデータベースは、サウンドスケープ座標系における多数のxyz場所の各々ごとにHRTFパラメータのルックアップテーブルを設けてもよい(距離関数を用いる一実施形態では距離が考慮されることを思い出されたい)。所与のオブジェクトに対する所望の方向が、HRTFデータベース中の予め規定される方向(すなわち、サウンドスケープ座標系でのサウンドオブジェクト場所とリスナ場所との間のベクトル)と完全に整合しない場合、HRTFフィルタ同士の間の補間によりリアル感を増すことができる。
説得力がありかつ没入できる体験のためには、3D空間中の任意の位置から滑らかでかつ高品質の音を達成することが有用である。デジタルHRTFフィルタは、HRTFデータベース中に捕捉された予め規定される方向について定義されるのが通常である。そのため、そのようなデータベースは、サウンドスケープ座標系における多数のxyz場所の各々ごとにHRTFパラメータのルックアップテーブルを設けてもよい(距離関数を用いる一実施形態では距離が考慮されることを思い出されたい)。所与のオブジェクトに対する所望の方向が、HRTFデータベース中の予め規定される方向(すなわち、サウンドスケープ座標系でのサウンドオブジェクト場所とリスナ場所との間のベクトル)と完全に整合しない場合、HRTFフィルタ同士の間の補間によりリアル感を増すことができる。
HRTF双一次補間
HRTF補間は、左耳および右耳に対して異なる計算を用いて2回行われる。図7は、(ここでは極座標または球面座標で表される)サウンドスケープ空間の領域の例を示し、この中では、フィルタがエリア(領域)の4つの角に定義され、サウンドオブジェクトの場所および/または音の方向が当該エリア/領域内に定義される。図7で、方位は球面上の水平方向の次元を表し、仰角は球面上の鉛直方向の次元を表す。1つの可能性は、単純に最近傍をとること-すなわち、サウンドオブジェクトの場所に最も近いエリアの角に定義されるフィルタを用いること-である。これは、演算を必要としないので非常に効率的である。しかしながら、この手法の問題は、知覚可能な程度に不連続なフィルタ関数を作成してしまうことである。サウンドオブジェクトがサウンドスケープ内で移動している場合、サウンド特性は、1組のフィルタパラメータから別の組に「飛ぶ」ように聞こえ、知覚可能な程度のアーチファクトを作り出してしまう。
HRTF補間は、左耳および右耳に対して異なる計算を用いて2回行われる。図7は、(ここでは極座標または球面座標で表される)サウンドスケープ空間の領域の例を示し、この中では、フィルタがエリア(領域)の4つの角に定義され、サウンドオブジェクトの場所および/または音の方向が当該エリア/領域内に定義される。図7で、方位は球面上の水平方向の次元を表し、仰角は球面上の鉛直方向の次元を表す。1つの可能性は、単純に最近傍をとること-すなわち、サウンドオブジェクトの場所に最も近いエリアの角に定義されるフィルタを用いること-である。これは、演算を必要としないので非常に効率的である。しかしながら、この手法の問題は、知覚可能な程度に不連続なフィルタ関数を作成してしまうことである。サウンドオブジェクトがサウンドスケープ内で移動している場合、サウンド特性は、1組のフィルタパラメータから別の組に「飛ぶ」ように聞こえ、知覚可能な程度のアーチファクトを作り出してしまう。
球面上のHRTFを補間するためのより良い技法は、非ゼロ次補間手法を用いることである。たとえば、双一次補間は、別々に各々の次元(方位および仰角)ごとの距離に基づいて、領域の角に定義される4つのフィルタの間を補間する。
オブジェクトに対する所望の方向が、方位角θおよび仰角φによって球面座標に定義されるものとする。所望の方向が、対応するHRTFフィルタHθ1,φ1(f)、Hθ1,φ2(f)、Hθ2,φ1(f)、およびH(θ2,φ2)(f)を設けた4つの端点(θ1,φ1)、(θ1,φ2)、(θ2,φ1)、および(θ2,φ2)によって定義される補間領域内を指すと仮定する。θ1<θ2およびφ1<φ2およびθ1≦θ≦θ2およびφ1≦φ≦φ2と仮定する。図7は当該シナリオを示す。
補間は、2次元(方位および仰角)の各々ごとの係数を決定し、当該係数を補間計算のための重みとして用いる。αθおよびαφを、以下のように各次元で別々に算出される線形補間係数とする。
結果として得られる双一次補間HRTFフィルタは、以下のとおりである。
このような算出結果の品質は、フィルタデータベースの分解能に依存する。たとえば、多くのフィルタ点が方位次元に定義される場合、結果として生じる補間値は、方位次元に高い分解能を有する。しかし、フィルタデータベースが仰角次元において定義する点がより少ないとする。そうすると、結果として生じる補間値は、仰角次元において分解能がより劣り、このために、隣接するHRTFフィルタ同士の間の時間遅延に基づく知覚可能な程度のアーチファクトが生じてしまうことがある(以下を参照)。
それにもかかわらず、上述の双一次補間技法は問題を生じる可能性がある。ITDは、HRTFフィルタによって捕捉および再生される重要な知覚的手がかりの1つであり、したがって、通常はフィルタ同士の間の時間遅延が観察される。時間遅延した信号を合算すると問題になる可能性があり、コムフィルタリングなどのアーチファクトおよび打ち消しを生じさせてしまう。隣接するHRTFフィルタ同士の間の時間遅延が大きい場合、それらのフィルタ間の補間の品質が著しく劣化する。図8の左側は、双一次領域のそれぞれの4つの角に定義される4つのフィルタの間のそのような例示的な時間遅延を示す。それらのタイミングが異なるため、補間を通して合成される際に示される4つのフィルタの値は、周波数に依存して、強め合うようにまたは弱め合うように互いに干渉する可能性がある成分を有する「不鮮明な」波形を生じさせてしまう。これは、システムの忠実度およびリアル感を低下させる望ましくない周波数依存可聴アーチファクトを作り出してしまう。たとえば、サウンドオブジェクト位置が図7のフィルタ位置の間を移動するにつれて、信号中の異なる周波数に対して振幅が上下するように変化または変調するように知覚可能なコムフィルタ効果が聞こえる可能性がある。
図14Aは、時間領域信号波形でのそのようなコムフィルタ効果を示し、図13Aは、周波数領域スペクトログラムでのそのようなコムフィルタ効果を示す。これらの図は、サウンドオブジェクトがフィルタ場所に完全に整列される位置から複数のフィルタ場所の間の(たとえば等距離の)位置に移動する際の可聴変調アーチファクトを示す。図13Aのスペクトログラムにおけるストライピング効果(striping effect)および図14Aの時間領域信号における対応するピークに注目されたい。このように、標準的な双一次補間で有意なアーチファクトが聞こえたり見られたりする可能性があり、これは、一例では、HRTFデータベースの比較的低い15度の仰角での角度分解能によって強調される。
よりよいやり方:遅延補償双一次補間
時間遅延HRTFフィルタ間の補間の問題に対処するために、遅延補償双一次補間と称される新たな技法が開発されている。遅延補償双一次補間の背後にある考え方は、合算アーチファクトが大部分回避されるように補間の前にHRTFフィルタを時間整列させ、次に補間結果を所望の時間位置にタイムシフトして戻すことである。換言すると、あるフィルタ位置から別のフィルタ位置へ異なる空間的効果を作り出すために正確な時間遅延量を与えるようにHRTFフィルタリングが設計されても、1つの例示的な実現例は、補間される4つのフィルタについて時間遅延を「すべて同じ」にして、補間を行い、次に、補間が行われた後、結果をさらにタイムシフトして、補間のために除去されたタイミング情報を復元する。
時間遅延HRTFフィルタ間の補間の問題に対処するために、遅延補償双一次補間と称される新たな技法が開発されている。遅延補償双一次補間の背後にある考え方は、合算アーチファクトが大部分回避されるように補間の前にHRTFフィルタを時間整列させ、次に補間結果を所望の時間位置にタイムシフトして戻すことである。換言すると、あるフィルタ位置から別のフィルタ位置へ異なる空間的効果を作り出すために正確な時間遅延量を与えるようにHRTFフィルタリングが設計されても、1つの例示的な実現例は、補間される4つのフィルタについて時間遅延を「すべて同じ」にして、補間を行い、次に、補間が行われた後、結果をさらにタイムシフトして、補間のために除去されたタイミング情報を復元する。
HRTFフィルタ間の所望の時間整列の例を図8に示す。特に、図8の左側は、HRTFデータベースに格納されるような元のHRTFフィルタを示し、図8の右側は、補間領域中のHRTFフィルタを遅延補償するために選択的タイムシフトが適用された後の同じフィルタを示す。
HRTFフィルタに適切な複素指数を乗算することによって周波数領域の中でタイムシフトを効率的に実現することができる。たとえば、
は、m個のサンプルのタイムシフトをフィルタH(k)に適用する。式中、NはFFT長である。一般的な周波数インデックスfは離散周波数ビンインデックスkに置き換えられていることに留意されたい。タイムシフトmは分数のサンプル量であり得ることにも留意されたい。
図9は、例示的な遅延補償双一次補間技法のブロック図である。当該技法は、4つのHRTFフィルタの各々に適切なタイムシフト404を適用し、次に標準的な双一次補間402を適用し、次に補間後タイムシフト406を適用する。補間前タイムシフト404は補間領域内の所望の方向(θ,φ)から独立している一方で、双一次補間402および補間後タイムシフト406は(θ,φ)に依存することに留意されたい。いくつかの実施形態では、4つのフィルタすべてをタイムシフトする必要がないことがある-たとえば、フィルタのうちの1つは、時間的に静的なままであることができ、3つ(または何らかの他の数)の他のフィルタは、時間的に静的なフィルタに対してタイムシフトされることができる。他の実施形態では、4つ(または他の数の)HRTFフィルタすべてが、図9に示されるようにタイムシフトされてもよい。
遅延補償双一次補間フィルタを以下のように算出することができる(双一次補間計算は、複素指数列での乗算があらゆるフィルタに追加されることを除いて、前の例と同じである)。
複素指数項はタイムシフトを数学的に定義し、異なるタイムシフトが4つの重み付けされたフィルタ項の各々に適用される。一実施形態は、そのような複素指数列をリアルタイムで算出する。別の実施形態は、インデックス付けされたルックアップテーブルに予め算出された複素指数列を格納し、テーブルから、予め算出された複素指数列またはそれを示すかもしくはそれから導出される値にアクセスする(読み取る)。
遅延補償双一次補間のための効率的なタイムシフト
遅延補償双一次補間のためにタイムシフトを行うには、HRTFフィルタに複素指数列
遅延補償双一次補間のためにタイムシフトを行うには、HRTFフィルタに複素指数列
を乗算することが必要である。式中、mは所望の分数タイムシフト量である。ランタイム中に複素指数列を算出することは高価である可能性があるが、予め算出されたテーブルを格納すれば、大幅な追加のメモリ要件が必要になるであろう。別の選択肢は、より高価な標準的なライブラリ関数を呼び出す代わりに高速近似を用いることであり得る。
現在の実現例で用いる解決策は、余弦および正弦関数の循環関係を活用することである。余弦または正弦数列に対する循環関係を
x[n]=2cos(a)x[n-1]-x[n-2]
と書くことができる。式中、aは数列の周波数を表す。したがって、我々の所望の複素指数列
x[n]=2cos(a)x[n-1]-x[n-2]
と書くことができる。式中、aは数列の周波数を表す。したがって、我々の所望の複素指数列
を生成するために、以下の式を用いることができる。
なお、初期条件は以下のとおりである。
は一定であるので、これを予め1回算出することができ、数列中の残りの値をすべて、(初期条件を無視して)、値あたり数回の乗算および加算のみで算出することができる。
タイムシフトの決定
遅延補償双一次補間402は、タイムシフトをHRTFフィルタに適用して、補間の前に時間整列を達成する。そうすると、所望の整列を与えるためにどのタイムシフト値を用いるべきかという問題が生じる。一実施形態では、オフラインまたはオンライン分析を用いて、各々の補間領域ごとに好適なタイムシフトmθi,φjを予め算出することができる。他の実施形態では、リアルタイムで動的にタイムシフトを決定することができる。1つの例示的な現在の実現例のために行われる分析は、いわゆる分数相互相関分析を用いる。この分数相互相関技法は、標準的な相互相関と同様であるが、分数のサンプル遅れを含む。最大相互相関とともに分数の遅れを用いて、好適な時間整列を与えることができるタイムシフトを導出する。各々の補間領域ごとに予め算出されたタイムシフトmθi,φjのルックアップテーブルを実現例に含めて、各々の補間計算ごとにランタイム中に用いてもよい。そのようなテーブルをファームウェアまたは他の不揮発性メモリに格納可能であり、オンデマンドでこれにアクセス可能である。他の実現例は、組合せ論理または他の論理を用いて適切な値を生成することができる。
遅延補償双一次補間402は、タイムシフトをHRTFフィルタに適用して、補間の前に時間整列を達成する。そうすると、所望の整列を与えるためにどのタイムシフト値を用いるべきかという問題が生じる。一実施形態では、オフラインまたはオンライン分析を用いて、各々の補間領域ごとに好適なタイムシフトmθi,φjを予め算出することができる。他の実施形態では、リアルタイムで動的にタイムシフトを決定することができる。1つの例示的な現在の実現例のために行われる分析は、いわゆる分数相互相関分析を用いる。この分数相互相関技法は、標準的な相互相関と同様であるが、分数のサンプル遅れを含む。最大相互相関とともに分数の遅れを用いて、好適な時間整列を与えることができるタイムシフトを導出する。各々の補間領域ごとに予め算出されたタイムシフトmθi,φjのルックアップテーブルを実現例に含めて、各々の補間計算ごとにランタイム中に用いてもよい。そのようなテーブルをファームウェアまたは他の不揮発性メモリに格納可能であり、オンデマンドでこれにアクセス可能である。他の実現例は、組合せ論理または他の論理を用いて適切な値を生成することができる。
すべてのmθi,φj(以下を参照)について適切に選択された値を用いて、HRTFフィルタ間の時間遅延を補償することができ、すべてのHRTFフィルタを補間前に効果的に時間整列させることができる。図8の右側を参照されたい。しかしながら、所望の方向が補間端点(θi,φj)に完全に整列される場合は、補間フィルタの結果として生じる時間遅延が補間領域にわたって滑らかに遷移し、変更のないフィルタ応答に近づくことが望ましい。このように、元のタイムシフト量mθ1,φ1、mθ1,φ2、mθ2,φ1、mθ2,φ2に基づいて、補間後のフィルタを補間量だけ再びタイムシフトさせることができる。
式中、
である。
この補間後タイムシフト406は、HRTFフィルタに適用された元のタイムシフト404とは方向が反対である。これにより、所望の方向が補間端点に完全に空間的に整列されるときに変更のない応答を達成できるようになる。このように、追加のタイムシフト406は、タイミングを変更のない状態に回復させて、特定のフィルタとのほぼ正確な整列から離れる際のタイミングの不連続性を防止する。
遅延補償双一次補間技法の全体的な結果は、補間の際にフィルタを効果的に時間整列させて合算アーチファクトを回避するのを助けられる一方で、補間領域にわたって時間遅延を滑らかに遷移させ、かつ最端の補間端点において変更のない応答を達成することができることである。
遅延補償双一次補間の有効性
前頭平面においてリスナの頭の周りを回転するオブジェクトが、遅延補償双一次補間技法の有効性の良好な実証例として観察されている。図13A、図13B、図14A、図14Bは、標準的な双一次補間技法と遅延補償双一次補間技法との両方を用いたときの、前頭平面においてリスナの頭の周りを回転するホワイトノイズオブジェクトの例示的な結果を示す。図13B、図14Bは、遅延補償双一次補間を用いた例示的な結果を示し、信号が著しくより滑らかにまたはより「ストライプ状」でなくなって、上述のコムフィルタ効果を低減または排除している。このように、遅延補償双一次補間を用いる場合、アーチファクトは実質的に回避される。
前頭平面においてリスナの頭の周りを回転するオブジェクトが、遅延補償双一次補間技法の有効性の良好な実証例として観察されている。図13A、図13B、図14A、図14Bは、標準的な双一次補間技法と遅延補償双一次補間技法との両方を用いたときの、前頭平面においてリスナの頭の周りを回転するホワイトノイズオブジェクトの例示的な結果を示す。図13B、図14Bは、遅延補償双一次補間を用いた例示的な結果を示し、信号が著しくより滑らかにまたはより「ストライプ状」でなくなって、上述のコムフィルタ効果を低減または排除している。このように、遅延補償双一次補間を用いる場合、アーチファクトは実質的に回避される。
クロスフェードを用いるアーキテクチャ
このように、以上で論じる種類の時間変化HRTF FIRフィルタは、サウンド生成オブジェクトとリスナとの間の相対的位置および/または距離および/または方向を表すパラメータを用いてパラメータ化される。換言すると、サウンド生成オブジェクトとリスナとの間の相対的位置および/または距離および/または方向を表すパラメータが(たとえば、サウンド生成オブジェクト、リスナ、またはその両方の位置の変化に起因して)変化すると、時間変化HRTFフィルタのフィルタ特性が変化する。そのようなフィルタ特性の変化は、適切に扱われなければ処理アーチファクトを生じさせてしまうことが知られている。たとえば、Keyrouz et al., "A New HRTF Interpolation Approach for Fast Synthesis of Dynamic Environmental Interaction," JAES Volume 56 Issue 1/2 pp.28-35; January 2008, Permalink: http://www.aes.org/e-lib/browse.cfm?elib=14373; Keyrouz et al., "A Rational HRTF Interpolation Approach for Fast Synthesis of Moving Sound," 2006 IEEE 12th Digital Signal Processing Workshop & 4th IEEE Signal Processing Education Workshop, 24-27 Sept. 2006 DOI:10.1109/DSPWS.2006.265411を参照されたい。
このように、以上で論じる種類の時間変化HRTF FIRフィルタは、サウンド生成オブジェクトとリスナとの間の相対的位置および/または距離および/または方向を表すパラメータを用いてパラメータ化される。換言すると、サウンド生成オブジェクトとリスナとの間の相対的位置および/または距離および/または方向を表すパラメータが(たとえば、サウンド生成オブジェクト、リスナ、またはその両方の位置の変化に起因して)変化すると、時間変化HRTFフィルタのフィルタ特性が変化する。そのようなフィルタ特性の変化は、適切に扱われなければ処理アーチファクトを生じさせてしまうことが知られている。たとえば、Keyrouz et al., "A New HRTF Interpolation Approach for Fast Synthesis of Dynamic Environmental Interaction," JAES Volume 56 Issue 1/2 pp.28-35; January 2008, Permalink: http://www.aes.org/e-lib/browse.cfm?elib=14373; Keyrouz et al., "A Rational HRTF Interpolation Approach for Fast Synthesis of Moving Sound," 2006 IEEE 12th Digital Signal Processing Workshop & 4th IEEE Signal Processing Education Workshop, 24-27 Sept. 2006 DOI:10.1109/DSPWS.2006.265411を参照されたい。
時間変化FIRフィルタからのアーチファクトを軽減するために、例示的な実施形態は、図10のブロック図に示すようなフィルタ結果同士の間のクロスフェーディングを利用する変形アーキテクチャを提供する。一実施形態では、処理ブロックのすべては、前項に記載したものと同じであるが、アーキテクチャは、各々のフレームごとに2組のバイノーラルステレオチャンネルを発生するように変形される。しかしながら、他の実施形態では、2つのバイノーラルステレオ信号を任意の所望の態様で(たとえば、必ずしも図9のタイムシフト双一次補間アーキテクチャを用いるとは限らない)発生させることができ、以下に記載するようなクロスフェーディングを適用して、あるHRTFフィルタから次のHRTFフィルタへの滑らかな遷移をもたらすことができる。換言すると、図10のクロスフェーダ516は、図9の構成によって解決されるものとは異なる不連続性の問題を解決する、すなわち、1つのフレームから次のフレームに急速に位置を変えるサウンドオブジェクト(またはリスナまたは両方)に基づく、2つの非常に異なるHRTFフィルタ変換の結果を畳み込むことによって得られる不連続性を軽減する。これは、上述のタイムシフトを用いて対処される問題とは独立した問題であり、1つの技法が他方の技法に必ずしも依存するわけではなく、各々の技法を他方の技法を用いずにそれぞれの実現例で用いることができる。それにも拘わらず、2つの技法を共通の実現例でともに有利に用いて、両方の種類の不連続性および関連付けられる知覚可能なアーチファクトを回避することができる。
フレーム遅延
図10のクロスフェードアーキテクチャは、HRTFフィルタのためのフレーム遅延を含む。この結果、オブジェクトあたりHRTFフィルタが4つとなる:すなわち、現在のオブジェクト位置に基づいて選択されるHL(f)およびHR(f)、ならびに前のオブジェクト位置に基づく前のフレームからの遅延フィルタである
図10のクロスフェードアーキテクチャは、HRTFフィルタのためのフレーム遅延を含む。この結果、オブジェクトあたりHRTFフィルタが4つとなる:すなわち、現在のオブジェクト位置に基づいて選択されるHL(f)およびHR(f)、ならびに前のオブジェクト位置に基づく前のフレームからの遅延フィルタである
である。一実施形態では、前のフレームは直前のフレームであってもよい。他の実施形態では、前のフレームは、直前のフレーム以外の前のフレームであってもよい。
4つのHRTFフィルタはすべて、現在のフレームで発生される現在のサウンド信号をフィルタするのに用いられる(すなわち、一実施形態では、これは、前のフレームのフィルタリング結果を格納して再使用できるケースではない-むしろそのような実施形態では、現在のフレームについての現在のサウンド信号は、2つの左側のHRTFフィルタおよび2つの右側のHRTFフィルタを用いてフィルタリングされ、一方の対の左側/右側HRTFフィルタは、サウンドオブジェクトの現在の位置および/またはサウンドオブジェクトとリスナとの間の現在の方向に基づいて選択または決定され、他方の対の左側/右側HRTFフィルタは、前のフレーム時間に用いられる同じフィルタである)。別の見方:所与のフレーム時間に、そのフレーム時間のために選択されたHRTFフィルタまたはパラメータ化されたフィルタ設定を、次のまたは引き続くフレーム時間に再使用して、HRFTフィルタを所与のフレーム時間から次のまたは引き続くフレーム時間に変更することによって生じるアーチファクトを軽減する。示される例では、すべてのサウンドオブジェクトにわたって、それらのHRTFフィルタ補間、HRTFフィルタリング演算、マルチオブジェクト信号合算/混合、および周波数領域から時間領域への逆FFTを含むそのような構成が拡張される。
フレーム遅延フィルタを加える結果、同一のHRTFフィルタが2つの連続するフレームに適用されるようになり、この場合、それらの出力のための重畳加算領域にはアーチファクトがないことが保証される。このアーキテクチャは、ともにクロスフェードされて滑らかな遷移をもたらすことができる好適な重畳フレーム(図11を参照)を出力する。この文脈で、「フレーム」という用語は、N個のオーディオサンプルからなる部分など、少なくとも1つのオーディオサンプルを含むオーディオ信号ストリームの部分を含み得るかまたは意味し得る。たとえば、1秒の1/60または1/30の持続時間のビデオフレームに関連付けられる複数のオーディオ「フレーム」が存在する可能性があり、各々のオーディオフレームは、処理対象の多数のオーディオサンプルを備える。以上で説明したように、例示的な実施形態では、システムは、以前のフィルタリング後の出力または結果を格納および再使用はしないが、代わりに、(たとえば、以前のおよび今となっては変化したサウンド生成オブジェクトとリスナとの間の相対的位置に基づく)前のフィルタリング演算のパラメータ化されたフィルタリング演算を新たな入来するまたは現在のオーディオデータに適用する。しかしながら、他の実施形態では、システムは、前のフィルタリング演算の結果と前のフィルタリング演算のパラメータとの両方を用いて、現在のまたは新たなオーディオ処理出力を展開することができる。このように、出願人は、当業者に公知のものなどのさまざまな目的のために前に生成されたフィルタ結果の使用を放棄することを意図しない。
クロスフェード516
(関連付けられる逆FFTブロックの後に時間領域で動作する)各々のクロスフェーダ516は、2つのフィルタリング後信号
(関連付けられる逆FFTブロックの後に時間領域で動作する)各々のクロスフェーダ516は、2つのフィルタリング後信号
を受け付ける。立ち上がりクロスフェード窓w(t)が
に適用される一方で、立ち下がりクロスフェード窓wD(t)が
に適用される。一実施形態では、クロスフェーダ516は、第2の入力の利得を減少させつつ第1の入力の利得を増加させるオーディオミキシング機能を備えてもよい。クロスフェーダの単純な例は、左-右ステレオ「バランス」制御であり、これは左チャンネルステレオ信号の振幅を増加させる一方で、右チャンネルステレオ信号の振幅を減少させる。ある実施形態では、クロスフェーダの利得は、合計が1になるように設計(すなわち振幅保存)される一方で、他の実施形態では、利得の二乗の合計が1になるように設計(すなわちエネルギ保存)される。過去には、そのようなクロスフェーダ機能は、2つの異なるオーディオ入力間で「間を置かずに移行する」ための「ミキシングボード」のノブまたはスライダとして手動の形態で設けられることがあったため、たとえば、1つのターンテーブル、テープ、またはディスクプレーヤからの1曲の終わりが、別のターンテーブル、テープ、またはディスクプレーヤからの次の曲の始まりと継ぎ目なく溶け込んでいた。ある実施形態では、クロスフェーダは、ソフトウェア制御下でプロセッサによって動作される自動制御であり、これは、全ての組のサウンドオブジェクトにわたって2つの異なるHRTFフィルタ演算同士の間をクロスフェーディングする。
一実施形態では、クロスフェーダ516は、デュアル利得制御器(たとえば乗算器)と、プロセッサによって制御されるミキサ(加算器)とを備え、デュアル利得制御器は、1つの入力の利得をある量だけ増加させ、同時に別の入力の利得を当該ある量だけ減少させる。1つの例示的な実施形態では、クロスフェーダ516は、単一のステレオチャンネル(たとえば、左チャンネル用の1つのクロスフェーダ、右チャンネル用の別のクロスフェーダ)上で動作し、可変量の2つの入力をそのチャンネルに混合する。それぞれの入力の利得関数は線形である必要はない-たとえば、クロスフェーダが1つの入力の利得を増加させる量が、クロスフェーダが別の入力の利得を減少させる量と一致する必要はない。一実施形態では、2つの利得要素G1、G2の利得関数は、フレームの始め(またはフレームの前半部分)で用いられる1つの設定ではG1=0、G2=xであり得、フレームの終わり(またはフレームの後半部分)で用いられる第2の設定ではG1=y、G2=0であり得、それらの2つの時間瞬間の間の中間ミキシング値を与えることにより、いくらかの量のG1信号およびいくらかの量のG2信号がフレームにおいてともに混合される。
一実施形態では、このように、各々のクロスフェーダ516の出力は、フレームの始め(または第1のまたは前半の部分)において、完全にフレーム遅延フィルタリングの結果であり、したがって、フレームの終わり(またはその第2の部分または後半の部分)では、完全に現在の(非フレーム遅延)フィルタリングの結果である。このようにして、1つの補間ブロックが前のフレームのフィルタリング値の結果を発生させる一方で別の補間ブロックが現在のフレームのフィルタリング値の結果を発生させるので、これらの2つの終点の間でも、フレーム時間の始まりまたは終わりに不連続性は存在せず、クロスフェーダ516はこれらの2つの値が混合したものを発生させる。当該混合したものは、全体におよび大部分、フレーム遅延フィルタリングの結果として始まり、大部分および次に全体に、フレーム遅延していない(現在の)フィルタリングの結果として終わる。これは、図12に、「赤」(太い実線)、「青」(破線)、および「緑」(細い実線)の軌跡で示されている。
は、先のフレームにおいて以前に適用されたHRTFフィルタから生じるので、結果として生じる重畳加算領域にはアーチファクトがない(高速で移動するオブジェクトに起因してフィルタリング関数がフレームごとに互いに異なっても不連続性は存在しない)ことが保証され、隣接するフレームとの好適なクロスフェーディングを提供する。
長さNの窓w(n)およびwD(n)(離散時間指数nを用いる)は、以下のように定義される。
一実施形態では、上述のようなそのようなクロスフェーディング動作は、オーディオフレームごとに行われる。別の実施形態では、そのようなクロスフェーディング動作は、オーディオアーチファクトが生じる可能性が高い場合、たとえば、サウンド生成オブジェクトおよび/またはリスナが位置同士の間を移動することによる場合を含むがそれに限定されない位置変化の場合など、サウンドオブジェクトが聴取位置に対して位置を変化させてフィルタリングパラメータを変化させる場合、に限ってまたは主にその場合に、選択的に行われる。
例示的な実現例の詳細
一例では、記載されるシステムのサンプルレートは、24kHzまたは48kHzまたは60kHzまたは99kHzまたは任意の他のレートであってもよく、フレームサイズは、128サンプルまたは256サンプルまたは512サンプルまたは1024サンプルまたは任意の好適なサイズであってもよく、FFT/IFFT長は、128または256または512または1024または任意の他の適切な長さであってもよく、FFT/IFFT長がフレームサイズよりも長い場合はゼロパディングを含んでもよい。一例では、各々のサウンドオブジェクトは1つの順方向FFTを呼び出してもよく、合計4つの逆FFTを合計M+4回のFFT呼び出しのために用いる。なお、Mはサウンドオブジェクトの数である。これは、比較的効率がよく、多数のサウンドオブジェクトが多くの一般的なプラットフォームに装備される種類の標準的なDSPを用いられるようにする。
一例では、記載されるシステムのサンプルレートは、24kHzまたは48kHzまたは60kHzまたは99kHzまたは任意の他のレートであってもよく、フレームサイズは、128サンプルまたは256サンプルまたは512サンプルまたは1024サンプルまたは任意の好適なサイズであってもよく、FFT/IFFT長は、128または256または512または1024または任意の他の適切な長さであってもよく、FFT/IFFT長がフレームサイズよりも長い場合はゼロパディングを含んでもよい。一例では、各々のサウンドオブジェクトは1つの順方向FFTを呼び出してもよく、合計4つの逆FFTを合計M+4回のFFT呼び出しのために用いる。なお、Mはサウンドオブジェクトの数である。これは、比較的効率がよく、多数のサウンドオブジェクトが多くの一般的なプラットフォームに装備される種類の標準的なDSPを用いられるようにする。
付加的な強化特徴
HRTFパーソナライズ
頭のサイズおよびITD手がかり
HRTFは、人によって大幅に異なることが知られている。ITDは、最も重要な定位の手がかりの1つであり、頭のサイズおよび形状に大きく依存する。正確なITD手がかりを保証することにより、幾人かのリスナの空間化品質を実質的に向上させることができる。ITDの調整は、オブジェクトベースの空間化器の現在のアーキテクチャにおいて行うことができる。一実施形態では、ITD調整は、周波数領域HRTFフィルタに複素指数列を乗算することによって実現することができる。最適なITD調整は、頭のサイズの推定または対話型GUIから導出することができる。カメラベースの頭部サイズ推定技術を用いることができる。所与のリスナの左右の耳にマイクを配置することによるサンプリングを用いて、そのリスナ向けのHRTFを修正またはカスタマイズすることができる。
HRTFパーソナライズ
頭のサイズおよびITD手がかり
HRTFは、人によって大幅に異なることが知られている。ITDは、最も重要な定位の手がかりの1つであり、頭のサイズおよび形状に大きく依存する。正確なITD手がかりを保証することにより、幾人かのリスナの空間化品質を実質的に向上させることができる。ITDの調整は、オブジェクトベースの空間化器の現在のアーキテクチャにおいて行うことができる。一実施形態では、ITD調整は、周波数領域HRTFフィルタに複素指数列を乗算することによって実現することができる。最適なITD調整は、頭のサイズの推定または対話型GUIから導出することができる。カメラベースの頭部サイズ推定技術を用いることができる。所与のリスナの左右の耳にマイクを配置することによるサンプリングを用いて、そのリスナ向けのHRTFを修正またはカスタマイズすることができる。
頭部追跡
頭部追跡を用いて、仮想サウンドオブジェクトのリアル感を強化することができる。ジャイロスコープ、加速度計、カメラ、またはいくつかの他のセンサを用いてもよい。たとえば、US10,449,444を参照されたい。MARGまたは他の技術を用いてリスナの頭の位置および向き(姿勢)を追跡する仮想現実システムでは、頭部追跡情報を用いて、HRTFフィルタモデリングの精度を増すことができる。
頭部追跡を用いて、仮想サウンドオブジェクトのリアル感を強化することができる。ジャイロスコープ、加速度計、カメラ、またはいくつかの他のセンサを用いてもよい。たとえば、US10,449,444を参照されたい。MARGまたは他の技術を用いてリスナの頭の位置および向き(姿勢)を追跡する仮想現実システムでは、頭部追跡情報を用いて、HRTFフィルタモデリングの精度を増すことができる。
クロストーク除去
バイノーラルステレオオーディオはヘッドホンでの再生を意図しているが、クロストーク除去は、バイノーラルオーディオをステレオスピーカで再生するのを可能にする技法である。クロストーク除去アルゴリズムをバイノーラル空間化技法と組み合わせて用いて、ステレオスピーカ再生のための心を掴む体験を生み出すことができる。
バイノーラルステレオオーディオはヘッドホンでの再生を意図しているが、クロストーク除去は、バイノーラルオーディオをステレオスピーカで再生するのを可能にする技法である。クロストーク除去アルゴリズムをバイノーラル空間化技法と組み合わせて用いて、ステレオスピーカ再生のための心を掴む体験を生み出すことができる。
頭部伝達関数の使用
ある例示的な実施形態では、頭部伝達関数を用いることによって3Dオーディオエフェクトをシミュレートして、サウンド出力装置から出力すべき音を生成する。なお、サウンドオブジェクトから予め定められた聴取位置にいるリスナの左耳および右耳に入来する音を想定しかつ算出する関数に基づいて音を生成してもよいことに留意すべきである。これに代えて、頭部伝達関数以外の関数を用いて音を生成し、それにより音を聞くリスナに音の定位感覚を与えてもよい。たとえば、ホロフォニクス法またはオトフォニクス法など、バイノーラル法の効果と同様の効果を得るための別の方法を用いて、3Dオーディオエフェクトをシミュレートしてもよい。さらに、上記例示的な実施形態での頭部伝達関数を用いる3Dオーディオエフェクト技術では、音がサウンドオブジェクトから中耳に到達するまで周波数に応じて音圧レベルが制御され、サウンドオブジェクトが配置される場所(たとえば方位)にも基づいて音圧レベルが制御される。これに代えて、音はいずれの種類の制御を用いて生成されてもよい。すなわち、サウンド生成装置から出力すべき音は、音がサウンドオブジェクトから中耳に到達するまで周波数に応じて音圧レベルを制御するための関数のみを用いて生成されてもよく、またはサウンド生成装置から出力すべき音は、サウンドオブジェクトが配置される場所(たとえば方位)にも基づいて音圧レベルを制御するための関数のみを用いて生成されてもよい。またこれに代えて、サウンド生成装置から出力すべき音は、これらの関数に加えて、サウンドオブジェクトが配置される場所(たとえば方位)に対応する音量の差、伝達時間の差、位相の変化、反響の変化などのうち少なくとも1つを用いて音圧レベルを制御するための関数のみを用いて生成されてもよい。またこれに代えて、頭部伝達関数以外の関数を用いる例として、サウンドオブジェクトが配置される位置からリスナまでの距離に応じて音圧レベルを変化させる関数を用いて、3Dオーディオエフェクトをシミュレートしてもよい。またこれに代えて、リスナが情報処理装置を操作している現実空間の気圧、湿度、温度などのうち少なくとも1つに応じて音圧レベルを変更するための関数を用いて、3Dオーディオエフェクトをシミュレートしてもよい。
ある例示的な実施形態では、頭部伝達関数を用いることによって3Dオーディオエフェクトをシミュレートして、サウンド出力装置から出力すべき音を生成する。なお、サウンドオブジェクトから予め定められた聴取位置にいるリスナの左耳および右耳に入来する音を想定しかつ算出する関数に基づいて音を生成してもよいことに留意すべきである。これに代えて、頭部伝達関数以外の関数を用いて音を生成し、それにより音を聞くリスナに音の定位感覚を与えてもよい。たとえば、ホロフォニクス法またはオトフォニクス法など、バイノーラル法の効果と同様の効果を得るための別の方法を用いて、3Dオーディオエフェクトをシミュレートしてもよい。さらに、上記例示的な実施形態での頭部伝達関数を用いる3Dオーディオエフェクト技術では、音がサウンドオブジェクトから中耳に到達するまで周波数に応じて音圧レベルが制御され、サウンドオブジェクトが配置される場所(たとえば方位)にも基づいて音圧レベルが制御される。これに代えて、音はいずれの種類の制御を用いて生成されてもよい。すなわち、サウンド生成装置から出力すべき音は、音がサウンドオブジェクトから中耳に到達するまで周波数に応じて音圧レベルを制御するための関数のみを用いて生成されてもよく、またはサウンド生成装置から出力すべき音は、サウンドオブジェクトが配置される場所(たとえば方位)にも基づいて音圧レベルを制御するための関数のみを用いて生成されてもよい。またこれに代えて、サウンド生成装置から出力すべき音は、これらの関数に加えて、サウンドオブジェクトが配置される場所(たとえば方位)に対応する音量の差、伝達時間の差、位相の変化、反響の変化などのうち少なくとも1つを用いて音圧レベルを制御するための関数のみを用いて生成されてもよい。またこれに代えて、頭部伝達関数以外の関数を用いる例として、サウンドオブジェクトが配置される位置からリスナまでの距離に応じて音圧レベルを変化させる関数を用いて、3Dオーディオエフェクトをシミュレートしてもよい。またこれに代えて、リスナが情報処理装置を操作している現実空間の気圧、湿度、温度などのうち少なくとも1つに応じて音圧レベルを変更するための関数を用いて、3Dオーディオエフェクトをシミュレートしてもよい。
また、バイノーラル法を用いるならば、リスナの頭を表すダミーの頭に内蔵されるマイクまたは人の耳の内側に取り付けられるマイクを通じて録音される周囲音を用いて、サウンド出力装置から出力すべき音を生成してもよい。この場合、リスナの中耳に到達する音の状態は、リスナの頭蓋骨および聴覚器官、または頭蓋骨および聴覚器官自体と同様の構造を用いて録音され、これにより、音を聞くリスナに同様に音の定位感覚を与えることができる。
また、サウンド出力装置は、リスナの耳に直接に音を出力するためのヘッドホンまたはイヤホンでなくてもよく、現実空間に音を出力する据え置き型のラウドスピーカであってもよい。たとえば、サウンド出力装置として据え置き型のラウドスピーカ、モニタなどを用いる場合、複数のこのような出力デバイスをリスナの前および/または周囲に配置することができ、それぞれのデバイスから音を出力することができる。第1の例として、1対のラウドスピーカ(いわゆる2チャンネルラウドスピーカ)をリスナの前であってかつ左右に配置すれば、一般的なステレオ方式により生成される音をラウドスピーカから出力することができる。第2の例として、リスナの前後左右(中央にも)に5つのラウドスピーカ(いわゆる5チャンネルラウドスピーカまたは「サラウンドサウンド」)を配置すれば、サラウンド方式で生成されるステレオサウンドをラウドスピーカから出力することができる。第3の例として、複数のラウドスピーカ(たとえば、22.2マルチチャンネルラウドスピーカ)がリスナの前後、左右、および上下に配置されれば、マルチチャンネル音響システムを用いたステレオサウンドをラウドスピーカから出力することができる。第4の例として、上記バイノーラル方式で生成される音を、バイノーラルラウドスピーカを用いて、ラウドスピーカから出力することができる。当該例のいずれにおいても、音をリスナの前後、左右、および/または上下に定位することができる。これにより、音の定位位置を用いて振動の定位位置をシフトさせることができる。引用により本明細書に援用される米国特許第10,796,540号を参照されたい。
本明細書中の記載は、周波数領域におけるある演算(たとえば分数タイムシフト)に依拠するが、時間領域において同じまたは同様の演算を行うことが可能であろう。また、本明細書中の記載は、時間領域におけるある演算(たとえばクロスフェーディング)に依拠するが、周波数領域において同じまたは同様の演算を行うことが可能であろう。同様に、本明細書中の実現例は、ソフトウェアにおけるDSPベースであるが、演算のうちのいくつかまたはすべては、ハードウェアにおいてまたはハードウェアとソフトウェアとの組合せにおいて形成可能である。
本明細書中に引用される全ての特許、特許出願、および刊行物は、全ての目的のために、明示的に記載されるかのように引用により援用される。
本発明は、現在最も実用的でかつ好ましい実施形態であると考えられるものに関して説明されているが、本発明は、開示される実施形態に限定されるものではなく、逆に、添付の請求項の精神および範囲内に含まれるさまざまな変形例および均等な構成を包含することが意図されることを理解されたい。
Claims (27)
- ゲームシステムであって、
受信したユーザ入力に少なくとも部分的に応答して、リスナ位置に対して少なくとも1つの仮想サウンドオブジェクトを配置するように構成されるプロセッサ構成を備え、前記プロセッサ構成は、
グラフィカルゲーム出力を発生するように構成されるグラフィックスプロセッサと、
サウンドプロセッサとを備え、前記サウンドプロセッサは、
頭部伝達関数同士の間の補間を時間補償することと、
一連の時間補償後の補間を用いて音源信号を畳み込むことによって第1および第2のサウンド出力を生成することと、
生成された前記サウンド出力同士の間をクロスフェードすることと、
によって、前記リスナ位置に対する前記少なくとも1つの仮想サウンドオブジェクトの配置に応答してバイノーラルサウンド出力を発生するように構成される、ゲームシステム。 - 前記補間は双一次補間を含む、請求項1に記載のゲームシステム。
- 前記リスナ位置は3D視点も含み、前記グラフィックスプロセッサは、前記3D視点の観点から3Dグラフィックスを生成するように構成される、請求項1に記載のゲームシステム。
- 複数のフィルタ同士の間を自動的に補間するための方法であって、
少なくとも1つのプロセッサを用いて、
少なくとも第1のフィルタリング演算を第2のフィルタリング演算に対してタイムシフトすることと、
前記第1のフィルタリング演算と前記第2のフィルタリング演算との間を補間して補間結果を与えることと、
前記補間結果をさらにタイムシフトすることと、を備える、方法。 - 前記補間することは線形補間することを含む、請求項4に記載の方法。
- 前記補間することは双一次補間することを含む、請求項4に記載の方法。
- 前記タイムシフトすることは、前記第1のフィルタリング演算と前記第2のフィルタリング演算との両方をタイムシフトすることを含む、請求項4に記載の方法。
- 前記タイムシフトすることは、前記第1のフィルタリング演算と前記第2のフィルタリング演算とを時間整列させる、請求項4に記載の方法。
- 前記タイムシフトすることはΔTのタイムシフトを適用し、前記さらにタイムシフトすることは-ΔTのタイムシフトを適用する、請求項4に記載の方法。
- 前記第1および第2のフィルタリング演算は頭部伝達関数フィルタを含む、請求項4に記載の方法。
- (a)をタイムシフトすることは、前記第1および第2のフィルタリング演算のうちの少なくとも1つに複素指数列を乗算することを含む、請求項4に記載の方法。
- 前記さらにタイムシフトすることは、補間端点に整列することによって変更のない応答を達成することを含む、請求項4に記載の方法。
- 前記さらにタイムシフトすることは、補間結果を補間された量だけタイムシフトすることを含む、請求項4に記載の方法。
- 複数の補間領域の各々ごとに予め算出されたタイムシフト量にアクセスすることをさらに含む、請求項4に記載の方法。
- 複数の補間領域の各々ごとに前記フィルタ演算のうちの少なくとも1つのタイムシフトを予め算出することをさらに含む、請求項4に記載の方法。
- 前記第1および第2のフィルタリング演算によって発生される信号同士の間をクロスフェードすることをさらに含む、請求項4に記載の方法。
- 複数のフィルタ同士の間を自動的に補間するためのシステムであって、
(a)少なくとも第1のフィルタリング演算を第2のフィルタリング演算に対してタイムシフトすることと、
(b)前記第1のフィルタリング演算と前記第2のフィルタリング演算との間を補間して補間結果を与えることと、
(c)前記補間結果をさらにタイムシフトすることと、
を含む動作を行うように構成される少なくとも1つのプロセッサを備える、システム。 - 前記補間することは線形または双一次補間することを含む、請求項17に記載のシステム。
- 前記タイムシフトすることは、前記第1のフィルタリング演算と前記第2のフィルタリング演算との両方をタイムシフトすることを含む、請求項17に記載のシステム。
- 前記タイムシフトすることは、前記第1のフィルタリング演算と前記第2のフィルタリング演算とを時間整列させる、請求項17に記載のシステム。
- 前記タイムシフトすることはΔTのタイムシフトを適用し、前記さらにタイムシフトすることは-ΔTのタイムシフトを適用する、請求項17に記載のシステム。
- 前記第1および第2のフィルタリング演算は頭部伝達関数フィルタを含む、請求項17に記載のシステム。
- 前記タイムシフトすることは、前記第1および第2のフィルタリング演算のうちの少なくとも1つに複素指数を乗算することを含む、請求項17に記載のシステム。
- 前記さらにタイムシフトすることは、補間端点に整列することによって変更のない応答を達成することを含む、請求項17に記載のシステム。
- 前記少なくとも1つのプロセッサは、補間結果を補間された量だけタイムシフトするようにさらに構成される、請求項17に記載のシステム。
- 前記少なくとも1つのプロセッサは、複数の補間領域の各々ごとに予め算出されたタイムシフト量にアクセスするようにさらに構成される、請求項17に記載のシステム。
- 前記第1および第2のフィルタリング演算によって発生される信号同士の間をクロスフェードする前記少なくとも1つのプロセッサをさらに備える、請求項17に記載のシステム。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US17/513,175 | 2021-10-28 | ||
US17/513,175 US11665498B2 (en) | 2021-10-28 | 2021-10-28 | Object-based audio spatializer |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2023066418A true JP2023066418A (ja) | 2023-05-15 |
Family
ID=86146692
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022173116A Pending JP2023066418A (ja) | 2021-10-28 | 2022-10-28 | オブジェクトベースのオーディオ空間化器 |
Country Status (2)
Country | Link |
---|---|
US (1) | US11665498B2 (ja) |
JP (1) | JP2023066418A (ja) |
Family Cites Families (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5384856A (en) * | 1991-01-21 | 1995-01-24 | Mitsubishi Denki Kabushiki Kaisha | Acoustic system |
US7338373B2 (en) | 2002-12-04 | 2008-03-04 | Nintendo Co., Ltd. | Method and apparatus for generating sounds in a video game |
GB0419346D0 (en) * | 2004-09-01 | 2004-09-29 | Smyth Stephen M F | Method and apparatus for improved headphone virtualisation |
US9037468B2 (en) | 2008-10-27 | 2015-05-19 | Sony Computer Entertainment Inc. | Sound localization for user in motion |
JP6147486B2 (ja) | 2012-11-05 | 2017-06-14 | 任天堂株式会社 | ゲームシステム、ゲーム処理制御方法、ゲーム装置、および、ゲームプログラム |
JP6055657B2 (ja) | 2012-11-09 | 2016-12-27 | 任天堂株式会社 | ゲームシステム、ゲーム処理制御方法、ゲーム装置、および、ゲームプログラム |
US9237398B1 (en) * | 2012-12-11 | 2016-01-12 | Dysonics Corporation | Motion tracked binaural sound conversion of legacy recordings |
JP6264542B2 (ja) | 2014-01-30 | 2018-01-24 | 任天堂株式会社 | 情報処理装置、情報処理プログラム、情報処理システム、および情報処理方法 |
JP6664145B2 (ja) | 2014-03-12 | 2020-03-13 | 任天堂株式会社 | 情報処理装置、情報処理プログラム、情報処理システム、および情報処理方法 |
JP6322830B2 (ja) | 2014-05-09 | 2018-05-16 | 任天堂株式会社 | 情報処理装置、情報処理プログラム、情報処理システム、および情報処理方法 |
JP6327417B2 (ja) | 2014-05-30 | 2018-05-23 | 任天堂株式会社 | 情報処理システム、情報処理装置、情報処理プログラム、および情報処理方法 |
-
2021
- 2021-10-28 US US17/513,175 patent/US11665498B2/en active Active
-
2022
- 2022-10-28 JP JP2022173116A patent/JP2023066418A/ja active Pending
Also Published As
Publication number | Publication date |
---|---|
US11665498B2 (en) | 2023-05-30 |
US20230137514A1 (en) | 2023-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US9918179B2 (en) | Methods and devices for reproducing surround audio signals | |
JP5285626B2 (ja) | 音声空間化及び環境シミュレーション | |
US6078669A (en) | Audio spatial localization apparatus and methods | |
JP5897219B2 (ja) | オブジェクト・ベースのオーディオの仮想レンダリング | |
KR102430769B1 (ko) | 몰입형 오디오 재생을 위한 신호의 합성 | |
US7536021B2 (en) | Utilization of filtering effects in stereo headphone devices to enhance spatialization of source around a listener | |
JP2014506416A (ja) | オーディオ空間化および環境シミュレーション | |
KR100674814B1 (ko) | 스피커 신호에서 성분의 이산값을 계산하는 장치 및 방법 | |
Liitola | Headphone sound externalization | |
US11924623B2 (en) | Object-based audio spatializer | |
US11665498B2 (en) | Object-based audio spatializer | |
US20240135953A1 (en) | Audio rendering method and electronic device performing the same | |
JP4357218B2 (ja) | ヘッドホン再生方法及び装置 | |
JP3581811B2 (ja) | 3dデジタル・オーディオにおける耳間時間遅延を処理するための方法および装置 | |
JP2023070650A (ja) | 音場の少なくとも一部の位置決めによる空間オーディオ再生 | |
JP2023164284A (ja) | 音声生成装置、音声再生装置、音声生成方法、及び音声信号処理プログラム |