(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-11-06
(45)【発行日】2024-11-14
(54)【発明の名称】オブジェクトベース音響レンダリング装置及びプログラム
(51)【国際特許分類】
H04S 3/00 20060101AFI20241107BHJP
【FI】
H04S3/00 200
(21)【出願番号】P 2021023419
(22)【出願日】2021-02-17
【審査請求日】2024-01-04
(73)【特許権者】
【識別番号】000004352
【氏名又は名称】日本放送協会
(74)【代理人】
【識別番号】100121119
【氏名又は名称】花村 泰伸
(72)【発明者】
【氏名】佐々木 陽
(72)【発明者】
【氏名】杉本 岳大
(72)【発明者】
【氏名】西口 敏行
(72)【発明者】
【氏名】久保 弘樹
(72)【発明者】
【氏名】小倉 知美
(72)【発明者】
【氏名】大久保 洋幸
【審査官】冨澤 直樹
(56)【参考文献】
【文献】特開2014-220614(JP,A)
【文献】特開2014-090504(JP,A)
【文献】特開2019-016871(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
H04S 1/00-7/00
(57)【特許請求の範囲】
【請求項1】
音響メタデータに記述された位置に配置された音源オブジェクトに対しレンダリングを行うことで、試聴環境に配置された複数のスピーカのそれぞれに対する駆動信号を生成するオブジェクトベース音響レンダリング装置において、
前記複数のスピーカの個数をL、前記スピーカの番号をl(=1,・・・,L)、第l番目の前記スピーカを第l番目スピーカ、音源信号が出力される仮想音源の座標を仮想音源座標r
S、前記第l番目スピーカの座標をスピーカ座標r
l、前記第l番目スピーカの位置での境界面内向き法線ベクトルをn(r
l)、前記第l番目スピーカの位置を中心とする面積要素をΔS
l、前記第l番目スピーカに対する前記駆動信号をd(r
l)として、
前記複数のスピーカのそれぞれについて、前記仮想音源座標r
Sの位置から前記第l番目スピーカの前記スピーカ座標r
lの位置までのベクトルと前記第l番目スピーカの前記境界面内向き法線ベクトルn(r
l)との成す角θ
lを算出する角度算出部、並びに、
前記複数のスピーカのそれぞれに対応する信号増幅部、HPF(ハイパスフィルタ)、減衰付加部、面積要素付加部及び第1角度重み付加部を備え、
前記信号増幅部は、
前記音源信号を定数にて増幅し、
前記HPFは、
前記仮想音源座標r
S及び前記第l番目スピーカの前記スピーカ座標r
lに基づいて、HPFh(r
l,r
S)を設定し、前記信号増幅部により増幅された信号に対し、前記HPFh(r
l,r
S)を用いてフィルタ処理を施し、
前記減衰付加部は、
前記仮想音源座標r
Sの位置から前記第l番目スピーカの前記スピーカ座標r
lの位置までのベクトルの絶対値を求め、前記絶対値を2乗した結果の逆数を減衰係数1/||r
l-r
S||
2として設定し、前記フィルタ処理が施された信号に対し前記減衰係数1/||r
l-r
S||
2を乗算し、
前記面積要素付加部は、
前記減衰付加部により乗算された信号に対し前記面積要素ΔS
lを乗算し、
前記第1角度重み付加部は、
前記角度算出部により算出された前記第l番目スピーカの前記成す角θ
lに基づき、0から1までの範囲において、前記成す角θ
lの絶対値が0°に近いほど1に近い値をとり、前記成す角θ
lの絶対値が90°に近いほど0に近い値をとり、前記成す角θ
lの絶対値が0°以下または90°以上のときに0の値をとる角度重みw
C(θ
l)を設定し、前記面積要素付加部により乗算された信号に対し前記角度重みw
C(θ
l)を乗算することで、前記第l番目スピーカに対する前記駆動信号d(r
l)を生成する、ことを特徴とするオブジェクトベース音響レンダリング装置。
【請求項2】
請求項1に記載のオブジェクトベース音響レンダリング装置において、
さらに、前記仮想音源座標r
Sへの仮想音源方向の単位ベクトル及び全てのスピーカにおける前記スピーカ座標r
lへのスピーカ方向の単位ベクトルに基づいて、前記仮想音源を内部に含む3つのスピーカをVBAP(Vector Based Amplitude Panning)対象の3つのスピーカとして特定し、前記VBAP対象の3つのスピーカの単位ベクトルr
n1,r
n2,r
n3を取得し、前記仮想音源座標r
Sへの仮想音源方向の単位ベクトル及び前記VBAP対象の3つのスピーカの単位ベクトルr
n1,r
n2,r
n3に基づいて、前記VBAP対象の3つのスピーカに対応する係数g
l=g
n1,g
n2,g
n3を求め、前記全てのスピーカのうち、前記VBAP対象の3つのスピーカ以外のスピーカに対応する係数g
l=0を設定し、前記係数g
lを出力するVBAP係数算出部、並びに、
前記複数のスピーカのそれぞれに対応するVBAP係数乗算部、第2角度重み付加部及び加算部を備え、
前記VBAP係数乗算部は、
前記面積要素付加部により乗算された信号に対し、前記VBAP係数算出部により出力された前記係数g
lを乗算し、
前記第2角度重み付加部は、
前記角度算出部により算出された前記第l番目スピーカの前記成す角θ
lに基づき、0から1までの範囲において、前記成す角θ
lの絶対値が0°に近いほど0に近い値をとり、前記成す角θ
lの絶対値が90°に近いほど1に近い値をとり、前記成す角θ
lの絶対値が0°以下または90°以上のときに0の値をとる角度重みw
S(θ
l)を設定し、前記VBAP係数乗算部により乗算された信号に対し前記角度重みw
S(θ
l)を乗算することで、第2駆動信号を生成し、
前記第1角度重み付加部は、
前記角度重みw
C(θ
l)を設定し、前記面積要素付加部により乗算された信号に対し前記角度重みw
C(θ
l)を乗算することで、第1駆動信号を生成し、前記加算部が、前記第1駆動信号及び前記第2駆動信号を加算することで、前記第l番目スピーカに対する前記駆動信号d(r
l)を生成する、ことを特徴とするオブジェクトベース音響レンダリング装置。
【請求項3】
請求項2に記載のオブジェクトベース音響レンダリング装置において、
前記VBAP係数乗算部は、
前記面積要素付加部により乗算された信号の代わりに、前記音源信号を入力し、前記音源信号に対し前記係数g
lを乗算する、ことを特徴とするオブジェクトベース音響レンダリング装置。
【請求項4】
請求項1から3までのいずれか一項に記載のオブジェクトベース音響レンダリング装置において、
前記HPFは、
予め設定されたパラメータをα、予め設定されたフィルタ次数をN、及びn=0,1,・・・,Nとして、以下の式:
にて、HPF係数h
n(r
l,r
S)を設定し、
x[t]及びy[t]を時刻tにおける当該HPFの入力及び出力として、入出力特性が以下の式:
となるように、前記信号増幅部により増幅された信号に対し、前記HPF係数h
n(r
l,r
S)を用いてフィルタ処理を施す、ことを特徴とするオブジェクトベース音響レンダリング装置。
【請求項5】
請求項1から4までのいずれか一項に記載のオブジェクトベース音響レンダリング装置において、
前記減衰付加部は、
予め設定されたパラメータをβ
1,β
2として、以下の式:
にて減衰係数g(r
l,r
S)を求め、前記フィルタ処理が施された信号に対し前記減衰係数g(r
l,r
S)を乗算する、ことを特徴とするオブジェクトベース音響レンダリング装置。
【請求項6】
コンピュータを、請求項1から5までのいずれか一項に記載のオブジェクトベース音響レンダリング装置として機能させるためのプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、オブジェクトベース音響の再生装置に関し、特に、WFS(Wave Field Synthesis:波面合成方式)の考え方に基づいてスピーカの駆動信号を算出するオブジェクトベース音響レンダリング装置及びプログラムに関する。
【背景技術】
【0002】
近年、映画音響を中心にオブジェクトベース音響技術が脚光を浴びつつある。従来は、複数の音声素材を規定のチャンネルフォーマットへミックスダウンして記録するチャンネルベース音響が主流であった。
【0003】
オブジェクトベース音響では、個々の音声素材を音響オブジェクトとして別々に記録しておき、音響オブジェクトのレベル及び座標等が記述された音響メタデータに基づいてレンダリングを行う。
【0004】
以下、このようなオブジェクトベース音響方式の再生装置をオブジェクトベース音響レンダリング装置という。オブジェクトベース音響レンダリング装置は、音響オブジェクトに対し、音響メタデータと配置された複数のスピーカ位置に基づいて音響オブジェクトのレンダリングを行い、それぞれのスピーカの位置に応じた駆動信号を生成することで、試聴環境に応じた音響再生を行う。したがって、コンテンツの制作時とは異なるスピーカ配置で再生する場合であっても、それに適応した再生が可能となる。
【0005】
〔VBAP〕
従来、オブジェクトベース音響のレンダリングには、VBAP(Vector Based Amplitude Panning)と呼ばれるアルゴリズムが多く利用される(例えば、非特許文献1を参照)。
【0006】
VBAPでは、再生空間を3個のスピーカからなる三角形領域で分割し、音源座標を含む三角形の各頂点に位置するスピーカに対して重みを算出する。そして、音源信号を前記算出した重みで分配することにより、振幅パンニングを行う。
【0007】
しかしながら、VBAPでは、スピーカがある特定の半径の球面状に配置され、音源がその球面上に配置されているものとして処理が行われる。そのため、音源の距離による遠近の表現をすることができない。
【0008】
VBAPを用いて遠近も含めた音場の表現を行う際には、距離減衰及び残響等を付加して表現することがあるが(例えば、非特許文献2を参照)、それらは心理音響に基づく手法であり、音場を物理的に再現することを目的とした方法ではない。
【0009】
また、VBAPの重み算出アルゴリズムによれば、スイートスポットで聴取することを想定して重みが算出されるため、そこから離れた位置で試聴する場合において、再生品質は保証されるものではない。
【0010】
〔WFS〕
一方、波動音響に基づく音場の表現方法として、WFSと呼ばれる手法が知られている。WFSは、以下の式にて表されるキルヒホッフ-ヘルムホルツ積分方程式によって波動音響的に裏付けられた音場再現手法である(例えば、非特許文献3を参照)。
【数1】
【0011】
ここで、p(r)は、境界∂Vで閉じられたある領域V内の任意の点rでの音圧を示し、G(r|ro)は、境界∂V上の点roから境界∂V内の任意の点rまでのグリーン関数を示す。n(ro)は、点roにおける境界∂Vの法線方向内向きの単位ベクトルを示す。p(ro)は、境界∂V上の点roにおける音圧を示し、∂p(ro)/∂nは、境界∂V上の点roにおける単位ベクトルn(ro)方向の音圧勾配ベクトルを示す。dSOは、境界∂V上の微小面積である。
【0012】
またここで、境界が任意の形状をしている場合に、境界∂Vにおける境界条件として、∂G(r|r
o)/∂n=0なるノイマン条件を想定したグリーン関数を設定する。そして、点r
oにおける平均音響インテンシティI(r
o)及び単位ベクトルn(r
o)によって決定される以下の窓関数a(r
o)を導入する。
【数2】
【0013】
【0014】
Go(r|ro)は、点roから点rまでの自由音場グリーン関数を示す。キルヒホッフ-ヘルムホルツ積分方程式は、ある領域の外部に音源が存在する場合、その領域内部の音場は、境界面の境界法線方向の音圧勾配分布によって決定されるという事実を示している。
【0015】
WFSでは、音場を再現したい領域の境界面上に密にスピーカを配置し、音源(点音源を想定)の座標を与えることで、キルヒホッフ-ヘルムホルツ積分方程式に基づいて、スピーカの駆動信号を決定する。
【先行技術文献】
【非特許文献】
【0016】
【文献】VlLLE PULKKI,“Virtual Sound Source Positioning Using Vector Base Amplitude Panning”,J. Audio Eng. Soc., Vol. 45, No.6, 1997 June
【文献】勧告ITU-R. BS.2127-0
【文献】Ahrens Jens, Rabenstein Rudolph, Spors Sascha,“The Theory of wave field synthesis revisited”, in 124th Conv. Audio Eng. Soc., 2008
【発明の概要】
【発明が解決しようとする課題】
【0017】
このように、WFSを用いることにより、再生領域の内側で波面を再合成することができるため、VBAPとは異なり、スイートスポットから離れた点において再生品質が低下するという問題点は生じない。
【0018】
しかしながら、WFSを用いて厳密に波面を合成するためには、境界面に密にスピーカを配置する必要があり、また、所定の周波数特性を持つフィルタ及び遅延等の要素を加える必要がある。このため、WFSを用いた場合には、VBAPに比べてシステムの規模が大きくなるという課題があった。
【0019】
そこで、本発明は前記課題を解決するためになされたものであり、その目的は、システムの規模を拡大することなく、WFSに基づき音源の距離の遠近を表現する駆動信号を生成可能なオブジェクトベース音響レンダリング装置及びプログラムを提供することにある。
【課題を解決するための手段】
【0020】
前記課題を解決するために、請求項1のオブジェクトベース音響レンダリング装置は、 音響メタデータに記述された位置に配置された音源オブジェクトに対しレンダリングを行うことで、試聴環境に配置された複数のスピーカのそれぞれに対する駆動信号を生成するオブジェクトベース音響レンダリング装置において、前記複数のスピーカの個数をL、前記スピーカの番号をl(=1,・・・,L)、第l番目の前記スピーカを第l番目スピーカ、音源信号が出力される仮想音源の座標を仮想音源座標rS、前記第l番目スピーカの座標をスピーカ座標rl、前記第l番目スピーカの位置での境界面内向き法線ベクトルをn(rl)、前記第l番目スピーカの位置を中心とする面積要素をΔSl、前記第l番目スピーカに対する前記駆動信号をd(rl)として、前記複数のスピーカのそれぞれについて、前記仮想音源座標rSの位置から前記第l番目スピーカの前記スピーカ座標rlの位置までのベクトルと前記第l番目スピーカの前記境界面内向き法線ベクトルn(rl)との成す角θlを算出する角度算出部、並びに、前記複数のスピーカのそれぞれに対応する信号増幅部、HPF(ハイパスフィルタ)、減衰付加部、面積要素付加部及び第1角度重み付加部を備え、前記信号増幅部が、前記音源信号を定数にて増幅し、前記HPFが、前記仮想音源座標rS及び前記第l番目スピーカの前記スピーカ座標rlに基づいて、HPFh(rl,rS)を設定し、前記信号増幅部により増幅された信号に対し、前記HPFh(rl,rS)を用いてフィルタ処理を施し、前記減衰付加部が、前記仮想音源座標rSの位置から前記第l番目スピーカの前記スピーカ座標rlの位置までのベクトルの絶対値を求め、前記絶対値を2乗した結果の逆数を減衰係数1/||rl-rS||2として設定し、前記フィルタ処理が施された信号に対し前記減衰係数1/||rl-rS||2を乗算し、前記面積要素付加部が、前記減衰付加部により乗算された信号に対し前記面積要素ΔSlを乗算し、前記第1角度重み付加部が、前記角度算出部により算出された前記第l番目スピーカの前記成す角θlに基づき、0から1までの範囲において、前記成す角θlの絶対値が0°に近いほど1に近い値をとり、前記成す角θlの絶対値が90°に近いほど0に近い値をとり、前記成す角θlの絶対値が0°以下または90°以上のときに0の値をとる角度重みwC(θl)を設定し、前記面積要素付加部により乗算された信号に対し前記角度重みwC(θl)を乗算することで、前記第l番目スピーカに対する前記駆動信号d(rl)を生成する、ことを特徴とする。
【0021】
また、請求項2のオブジェクトベース音響レンダリング装置は、請求項1に記載のオブジェクトベース音響レンダリング装置において、さらに、前記仮想音源座標rSへの仮想音源方向の単位ベクトル及び全てのスピーカにおける前記スピーカ座標rlへのスピーカ方向の単位ベクトルに基づいて、前記仮想音源を内部に含む3つのスピーカをVBAP(Vector Based Amplitude Panning)対象の3つのスピーカとして特定し、前記VBAP対象の3つのスピーカの単位ベクトルrn1,rn2,rn3を取得し、前記仮想音源座標rSへの仮想音源方向の単位ベクトル及び前記VBAP対象の3つのスピーカの単位ベクトルrn1,rn2,rn3に基づいて、前記VBAP対象の3つのスピーカに対応する係数gl=gn1,gn2,gn3を求め、前記全てのスピーカのうち、前記VBAP対象の3つのスピーカ以外のスピーカに対応する係数gl=0を設定し、前記係数glを出力するVBAP係数算出部、並びに、前記複数のスピーカのそれぞれに対応するVBAP係数乗算部、第2角度重み付加部及び加算部を備え、前記VBAP係数乗算部が、前記面積要素付加部により乗算された信号に対し、前記VBAP係数算出部により出力された前記係数glを乗算し、前記第2角度重み付加部が、前記角度算出部により算出された前記第l番目スピーカの前記成す角θlに基づき、0から1までの範囲において、前記成す角θlの絶対値が0°に近いほど0に近い値をとり、前記成す角θlの絶対値が90°に近いほど1に近い値をとり、前記成す角θlの絶対値が0°以下または90°以上のときに0の値をとる角度重みwS(θl)を設定し、前記VBAP係数乗算部により乗算された信号に対し前記角度重みwS(θl)を乗算することで、第2駆動信号を生成し、前記第1角度重み付加部が、前記角度重みwC(θl)を設定し、前記面積要素付加部により乗算された信号に対し前記角度重みwC(θl)を乗算することで、第1駆動信号を生成し、前記加算部が、前記第1駆動信号及び前記第2駆動信号を加算することで、前記第l番目スピーカに対する前記駆動信号d(rl)を生成する、ことを特徴とする。
【0022】
また、請求項3のオブジェクトベース音響レンダリング装置は、請求項2に記載のオブジェクトベース音響レンダリング装置において、前記VBAP係数乗算部が、前記面積要素付加部により乗算された信号の代わりに、前記音源信号を入力し、前記音源信号に対し前記係数glを乗算する、ことを特徴とする。
【0023】
また、請求項4のオブジェクトベース音響レンダリング装置は、請求項1から3までのいずれか一項に記載のオブジェクトベース音響レンダリング装置において、前記HPFが、予め設定されたパラメータをα、予め設定されたフィルタ次数をN、及びn=0,1,・・・,Nとして、以下の式:
にて、HPF係数h
n(r
l,r
S)を設定し、
x[t]及びy[t]を時刻tにおける当該HPFの入力及び出力として、入出力特性が以下の式:
となるように、前記信号増幅部により増幅された信号に対し、前記HPF係数h
n(r
l,r
S)を用いてフィルタ処理を施す、ことを特徴とする。
【0024】
また、請求項5のオブジェクトベース音響レンダリング装置は、請求項1から4までのいずれか一項に記載のオブジェクトベース音響レンダリング装置において、前記減衰付加部が、予め設定されたパラメータをβ
1,β
2として、以下の式:
にて減衰係数g(r
l,r
S)を求め、前記フィルタ処理が施された信号に対し前記減衰係数g(r
l,r
S)を乗算する、ことを特徴とする。
【0025】
さらに、請求項6のプログラムは、コンピュータを、請求項1から5までのいずれか一項に記載のオブジェクトベース音響レンダリング装置として機能させることを特徴とする。
【発明の効果】
【0026】
以上のように、本発明によれば、システムの規模を拡大することなく、WFSに基づき音源の距離の遠近を表現する駆動信号を生成することができる。
【図面の簡単な説明】
【0027】
【
図1】実施例1のオブジェクトベース音響レンダリング装置の構成例を示すブロック図である。
【
図2】実施例1のオブジェクトベース音響レンダリング装置の処理例を示す疑似コードである。
【
図3】角度算出部の構成例を示すブロック図である。
【
図4】スピーカが疎に配置されている場合を説明する図である。
【
図5】実施例2のオブジェクトベース音響レンダリング装置の構成例を示すブロック図である。
【
図6】実施例2のオブジェクトベース音響レンダリング装置の処理例を示す疑似コードである。
【
図7】VBAP係数算出部の構成例を示すブロック図である。
【
図8】実施例3のオブジェクトベース音響レンダリング装置の構成例を示すブロック図である。
【
図9】実施例3のオブジェクトベース音響レンダリング装置の処理例を示す疑似コードである。
【発明を実施するための形態】
【0028】
以下、本発明を実施するための形態について図面を用いて詳細に説明する。本発明の実施例1のオブジェクトベース音響レンダリング装置は、WFSの構成を近似により単純化することで、システムの規模を拡大することなく、WFSに基づき音源の距離の遠近を表現する駆動信号を生成する。また、実施例2,3のオブジェクトベース音響レンダリング装置は、実施例1の構成に対してVBAPの構成を組み込むことで、スピーカが疎に配置された場合に駆動信号が小さくなる問題を解決する。
【0029】
本発明の実施例1,2,3のオブジェクトベース音響レンダリング装置について説明する前に、VBAP及びWFSによる音場再現手法の概要について説明する。
【0030】
〔VBAPの概要〕
まず、VBAPの概要について説明する。前述のとおり、VBAPは、再生空間を3個のスピーカからなる三角形領域で分割し、音源座標を含む三角形の各頂点に位置するスピーカに対して重みを算出し、音源信号を分配することにより、振幅パンニングを行う振幅パンニング手法である。
【0031】
図10は、VBAPを説明するための概念図である。xyz空間において、受音点100を原点とし、仮想音源101方向の単位ベクトルをr
nS=(x
nS,y
nS,z
nS)
Tとする。また、分割された三角形領域のうち、仮想音源101を内部に含む3つのスピーカ102-1,102-2,102-3方向の単位ベクトルをそれぞれ、r
n1=(x
n1,y
n1,z
n1)
T,r
n2=(x
n2,y
n2,z
n2)
T,r
n3=(x
n3,y
n3,z
n3)
Tとする。
【0032】
このとき、仮想音源101方向の単位ベクトルr
nSは、スピーカ102-1,102-2,102-3方向の単位ベクトルr
n1,r
n2,r
n3及び係数ベクトルg=(g
n1,g
n2,g
n3)
Tを用いて以下のように表される。
【数4】
ここで、R=[r
n1 r
n2 r
n3]
Tとする。
【0033】
係数ベクトルgは、以下の式にて算出することができる。
【数5】
R
-1はRの逆行列である。
【0034】
前記式(5)にて算出された係数ベクトルg=(gn1,gn2,gn3)Tを用いて重み付けが行われる。そして、重み付けが行われた信号を3つのスピーカ102-1,102-2,102-3から再生することにより、聴取者は、単位ベクトルrnSの方向に音像を定位することができる。尚、仮想音源101を内部に含まない三角形を成すスピーカの重みは全て0とする。
【0035】
〔WFSの概要〕
次に、WFSの概要について説明する。前述のとおり、WFSは、音場を再現したい領域の境界面上に密にスピーカを配置し、前記式(1)のキルヒホッフ-ヘルムホルツ積分方程式に基づいて、スピーカ位置において、再現したい音場である原音場での境界面の法線方向音圧勾配を再現することで、境界面内部の音場を再現する音場再現手法である。
【0036】
図11は、WFSを説明するための概念図であり、(1)は原音場を示し、(2)は再現音場を示す。
【0037】
(1)の原音場は、xyz空間において、領域C1の外側の座標r
S=(x
S,y
S,z
S)
Tの点に配置されている音源103から放射される音波によって形成される。このときの領域C1の境界面上の座標r
l=(x
l,y
l,z
l)
Tにおける音圧pは、以下の式にて表される。l(エル)は、座標r
lの点の番号を示し、後述するスピーカ106-lの番号(系統の番号)に相当する。
【数6】
ここで、kは波数である。尚、
図11の座標r
1は、l=1の場合を示している。
【0038】
さらに、領域C1の境界面上の座標r
l=(x
l,y
l,z
l)
Tの点における境界法線方向内向きの単位ベクトル(境界面内向き法線ベクトル)をn(r
l)とする。また、座標r
Sの点から座標r
lの点までを結んだベクトル(r
l-r
S)と境界面内向き法線ベクトルn(r
l)との成す角をθ
lとする。座標r
lの点における法線方向の音圧勾配ベクトルは、以下の式で表される。
【数7】
【0039】
したがって、キルヒホッフ-ヘルムホルツ積分方程式によれば、(2)の再現音場において離散的に配置されたスピーカアレイ105を、各スピーカ要素の座標r
lに応じて以下の式の駆動信号d(r
l)にて駆動させることにより、座標r
Sの点に仮想音源104の点音源が配置された音場を、領域C2内部に再現することができる。
【数8】
【0040】
ここで、ΔSlは、領域C2の境界面を、スピーカ位置を中心とする面積要素に分割したときのl番目の要素の面積(面積要素)であり、スピーカ要素が密に配置されているほど小さい値をとり、疎に配置されているほど大きい値をとる。
【0041】
尚、xyz空間において、rSは、仮想音源104の座標(仮想音源座標)であり、rlは、スピーカアレイ105を構成する第l番目のスピーカ要素の座標(スピーカ座標)である。
【0042】
また、w
C(θ
l)は、以下の式にて定義される関数である。
【数9】
【0043】
〔オブジェクトベース音響レンダリング装置〕
次に、実施例1,2,3のオブジェクトベース音響レンダリング装置について説明する。
【0044】
実施例1では、WFSの音場再現手法により決定されるスピーカの駆動信号d(rl)を示す前記式(8)において、仮想音源座標rSの位置に配置された仮想音源104とスピーカ座標rlの位置に配置されたスピーカとの間の距離による時間遅延を表しているe-jk||rl-rs||の項を無視することで、厳密な波面の再現と引き換えにはなるが、システムを簡略化する。
【0045】
また、実施例1では、前記式(8)のjk||rl-rS||+1の項は、仮想音源104とスピーカとの間の距離により変化するハイパス特性を持ち、この特性を、当該距離に依存する低次のハイパスフィルタh(rl,rS)(HPF)にて近似する。
【0046】
これにより、実施例1では、WFSの構成を近似により単純化することで、システムの規模を拡大することなく、WFSに基づき音源の距離の遠近を表現する駆動信号を生成することができる。
【0047】
また、実施例2,3では、実施例1の構成に対してVBAPの構成を組み込むことで、実施例1の効果に加え、スピーカが疎に配置された場合に駆動信号が小さくなる問題を解決する。
【0048】
〔実施例1〕
まず、実施例1のオブジェクトベース音響レンダリング装置について説明する。前述のとおり、実施例1は、スピーカの駆動信号d(rl)を生成する前記式(8)において、時間遅延を表すe-jk||rl-rs||の項を無視し、jk||rl-rS||+1の項をHPFとして扱い、仮想音源104とスピーカとの間の距離により変化するハイパス特性を、当該距離に依存する低次のハイパスフィルタh(rl,rS)(HPF)にて近似する。
【0049】
図1は、実施例1のオブジェクトベース音響レンダリング装置の構成例を示すブロック図であり、
図2は、実施例1のオブジェクトベース音響レンダリング装置の処理例を示す疑似コードである。
【0050】
このオブジェクトベース音響レンダリング装置1は、信号増幅部9-1~9-L、HPF(ハイパスフィルタ)10-1~10-L、減衰付加部11-1~11-L、面積要素付加部12-1~12-L、角度重み付加部13-1~13-L及び角度算出部20を備えている。Lはスピーカ106-1~106-Lの個数であり、系統の数でもある。
【0051】
以下、オブジェクトベース音響レンダリング装置1において、第l(エル)番目のスピーカ106-l(l番目の系統)に対応する構成部を、それぞれ信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lとする。つまり、オブジェクトベース音響レンダリング装置1は、L系統の信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lを備え、さらに角度算出部20を備えている。l=1,・・・,Lである。
【0052】
図2を参照してオブジェクトベース音響レンダリング装置1の全体処理について説明する。オブジェクトベース音響レンダリング装置1は、音源信号Sを入力すると共に、仮想音源座標r
Sを入力する(ステップS201)。
【0053】
オブジェクトベース音響レンダリング装置1は、スピーカ106-1~106-Lのそれぞれについて(スピーカ106-lの系統について)、スピーカ106-lのスピーカ座標rl、スピーカ106-lの面積要素ΔSl、及びスピーカ106-lの位置での境界面内向き法線ベクトルn(rl)を入力する(ステップS202)。
【0054】
ここで、スピーカ座標rl、面積要素ΔSl及び境界面内向き法線ベクトルn(rl)における下付けの“l”(エル)は、スピーカ106-1~106-Lの番号(系統の番号)である。
【0055】
また、音源信号Sは、例えば放送局から放送される信号であり、仮想音源座標rSは、例えば放送局から放送される音響メタデータに含まれるデータである。スピーカ座標rl、面積要素ΔSl及び境界面内向き法線ベクトルn(rl)は、例えば当該オブジェクトベース音響レンダリング装置1を操作するユーザにより予め設定されるスピーカレイアウト情報に含まれるデータである。
【0056】
この場合、オブジェクトベース音響レンダリング装置1は、放送局から送信された音源信号S及び仮想音源座標rSを受信し、ユーザにより予め設定されたスピーカ座標rl、面積要素ΔSl及び境界面内向き法線ベクトルn(rl)を入力する。
【0057】
オブジェクトベース音響レンダリング装置1は、スピーカ106-lについて、ステップS201にて入力した仮想音源座標rS、及びステップS202にて入力したスピーカ座標rlに基づき、所定の次数の係数を有するHPF10-lのHPFh(rl,rS)を設定する(ステップS203)。
【0058】
オブジェクトベース音響レンダリング装置1は、スピーカ106-lについて、ステップS201にて入力した仮想音源座標rS、及びステップS202にて入力したスピーカ座標rlに基づき、仮想音源104とスピーカ106-lとの間の距離に応じた減衰付加部11-lの減衰係数1/||rl-rS||2を設定する(ステップS204)。
【0059】
つまり、オブジェクトベース音響レンダリング装置1は、仮想音源104位置からスピーカ106-l位置までのベクトルの絶対値||rl-rS||を求め、当該絶対値を2乗した結果||rl-rS||2の逆数を減衰係数1/||rl-rS||2として設定する。
【0060】
オブジェクトベース音響レンダリング装置1は、スピーカ106-lについて、ステップS201にて入力した仮想音源座標rS、並びにステップS202にて入力したスピーカ座標rl及び境界面内向き法線ベクトルn(rl)に基づき、仮想音源104位置からスピーカ106-l位置を結んだベクトル(rl-rS)とスピーカ106-l位置での境界面内向き法線ベクトルn(rl)との成す角θlを算出する(ステップS205)。この成す角θlは、角度算出部20により算出される。
【0061】
オブジェクトベース音響レンダリング装置1は、スピーカ106-lについて、ステップS205にて算出した成す角θlの絶対値|θl|が0°よりも大きく、かつ90°よりも小さいか否かを判定し、前記式(9)にて角度重みwC(θl)を設定する(ステップS206)。
【0062】
具体的には、オブジェクトベース音響レンダリング装置1は、成す角|θl|が0°よりも大きく、かつ90°よりも小さいと判定した場合(前記式(9)ではcosθl>0の場合)、角度重みwC(θl)=cosθlを設定する。一方、オブジェクトベース音響レンダリング装置1は、成す角|θl|が0°以下であるか、または90°以上であると判定した場合(前記式(9)ではcosθl>0以外の場合)、角度重みwC(θl)=0を設定する。この角度重みwC(θl)は、角度重み付加部13-lにて用いられる。
【0063】
角度重みwC(θl)は、0から1までの範囲の値をとり、成す角|θl|が0°<|θl|<90°の範囲において、成す角|θl|が0°に近いほど1に近い値をとり、90°に近いほど0に近い値をとり、成す角|θl|が|θl|≦0°または90°≦|θl|の範囲において、0の値をとる。
【0064】
オブジェクトベース音響レンダリング装置1は、スピーカ106-lについて、定数u(例えばu=1/2π、系統毎に異なる値となる場合もあり得る)、ステップS201にて入力した音源信号S及び仮想音源座標r
S、ステップS202にて入力したスピーカ座標r
l及び面積要素ΔS
l、ステップS203にて設定したHPFh(r
l,r
S)、ステップS204にて設定した減衰係数1/||r
l-r
S||
2及びステップS206にて設定した角度重みw
C(θ
l)を用いて、以下の式にて駆動信号d(r
l)を算出し出力する(ステップS207)。
【数10】
*は畳み込みを表す。この駆動信号d(r
l)は、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lにより算出される。
【0065】
次に、
図1を参照してオブジェクトベース音響レンダリング装置1の構成部の処理について説明する。信号増幅部9-l(9-1~9-L)は、音源信号Sを入力し、音源信号Sに対し定数u(例えば1/2π)を乗算することで音源信号Sを増幅し、増幅した信号をHPF10-lに出力する。
【0066】
HPF10-l(10-1~10-L)は、仮想音源座標rS及びスピーカ座標rlを入力する。そして、HPF10-lは、仮想音源座標rS及びスピーカ座標rlに基づいて、ステップS203のとおり、所定の次数の係数を有するHPFh(rl,rS)を設定する。そして、HPF10-lは、信号増幅部9-lから増幅された信号を入力し、当該信号に対し、HPFh(rl,rS)を用いてフィルタ処理を施し、フィルタ処理を施した信号を減衰付加部11-lに出力する。
【0067】
減衰付加部11-l(11-1~11-L)は、仮想音源座標rS及びスピーカ座標rlを入力し、仮想音源座標rS及びスピーカ座標rlに基づいて、ステップS204のとおり、減衰係数1/||rl-rS||2を設定する。そして、減衰付加部11-lは、HPF10-lからフィルタ処理が施された信号を入力し、当該信号に対し減衰係数1/||rl-rS||2を乗算することで、仮想音源104とスピーカ106-lとの間の距離に応じて信号を減衰させる。減衰付加部11-lは、減衰させた信号(減衰を付加した信号)を面積要素付加部12-lに出力する。
【0068】
面積要素付加部12-l(12-1~12-L)は、面積要素ΔSlを入力する。面積要素ΔSlは、スピーカ106-lが密に配置されている場合、小さい値となり、スピーカ106-lが疎に配置されている場合、大きい値となる。
【0069】
そして、面積要素付加部12-lは、減衰付加部11-lから減衰が付加された信号を入力し、当該信号に対し面積要素ΔSlを乗算することで、スピーカ106-lの離散度合いに応じて面積要素を付加した信号を生成する。面積要素付加部12-lは、面積要素を付加した信号を角度重み付加部13-lに出力する。
【0070】
角度算出部20は、仮想音源座標rS、スピーカ座標r1~rL及び境界面内向き法線ベクトルn(r1)~n(rL)を入力する。そして、角度算出部20は、ステップS205のとおり、スピーカ106-1~106-Lのそれぞれ(スピーカ106-l)について、仮想音源104位置からスピーカ106-l位置を結んだベクトル(rl-rS)を求め、当該ベクトル(rl-rS)とスピーカ106-l位置での境界面内向き法線ベクトルn(rl)との成す角θlを算出する。角度算出部20は、成す角θl(θ1~θL)を、対応する角度重み付加部13-l(13-1~13-L)に出力する。
【0071】
図3は、角度算出部20の構成例を示すブロック図である。この角度算出部20は、算出部30-1~30-Lを備えている。算出部30-1は、スピーカ106-1についての成す角θ
1を算出する構成部であり、仮想音源座標r
S、並びに第l=1番目のスピーカ座標r
1及び境界面内向き法線ベクトルn(r
1)を入力する。そして、算出部30-1は、仮想音源104位置からスピーカ106-l位置を結んだベクトル(r
1-r
S)を求め、当該ベクトル(r
1-r
S)とスピーカ106-1位置での境界面内向き法線ベクトルn(r
1)との成す角θ
1を算出する。算出部30-1は、成す角θ
1を角度重み付加部13-1に出力する。
【0072】
同様に、算出部30-Lは、スピーカ106-Lについての成す角θLを算出する構成部であり、仮想音源座標rS、並びに第l=L番目のスピーカ座標rL及び境界面内向き法線ベクトルn(rL)を入力する。そして、算出部30-Lは、仮想音源104位置からスピーカ106-l位置を結んだベクトル(rL-rS)を求め、当該ベクトル(rL-rS)とスピーカ106-L位置での境界面内向き法線ベクトルn(rL)との成す角θLを算出する。算出部30-Lは、成す角θLを角度重み付加部13-Lに出力する。
【0073】
算出部30-2~30-(L-1)についても、同様の処理が行われ、仮想音源104位置からスピーカ106-2~106-(L-1)位置を結んだベクトル(r2~rL-1-rS)とスピーカ106-2~106-(L-1)位置での境界面内向き法線ベクトルn(r2)~n(rL-1)との成す角θ2~θL-1がそれぞれ算出される。
【0074】
図1に戻って、角度重み付加部13-l(13-1~13-L)は、角度算出部20から成す角θ
l(θ
1~θ
L)を入力し、成す角θ
lに基づいて、ステップS206のとおり、前記式(9)にて角度重みw
C(θ
l)を設定する。そして、角度重み付加部13-lは、面積要素付加部12-lから面積要素が付加された信号を入力し、当該信号に対し角度重みw
C(θ
l)を乗算することで、成す角θ
lを反映した信号を生成する。
【0075】
成す角θlを反映した信号は、成す角θlが0°に近いほど、面積要素が付加された信号に近くなる。一方、成す角θlを反映した信号は、成す角θlが90°に近いほど、0の信号に近くなる。
【0076】
角度重み付加部13-lは、成す角θlを反映した信号を駆動信号d(rl)としてスピーカ106-lへ出力する。
【0077】
尚、
図1及び
図2では、1つの音響オブジェクトの音源信号Sに対するオブジェクトベース音響のレンダリングの構成及び処理を示しているが、実際は、複数の音響オブジェクトの音源信号Sに対して処理が行われる。この場合、音響オブジェクト毎に生成された駆動信号d(r
l)がスピーカ106-l毎に加算され、加算結果の駆動信号がスピーカ106-lへ出力される。後述する
図5,6(実施例2)及び
図8,9(実施例3)についても同様である。
【0078】
以上のように、実施例1のオブジェクトベース音響レンダリング装置1によれば、スピーカ106-lの駆動信号d(rl)を生成する前記式(8)において、時間遅延を表すe-jk||rl-rs||の項を無視し、jk||rl-rS||+1の項を、仮想音源104とスピーカ106-lとの間の距離に依存する低次のハイパスフィルタh(rl,rS)(HPF)として近似するようにした。
【0079】
具体的には、信号増幅部9-lは、音源信号Sに対し定数u(系統毎に異なる値となる場合もあり得る)を乗算することで、音源信号Sを増幅する。HPF10-lは、仮想音源座標rS及びスピーカ座標rlに基づいて、所定の次数の係数を有するHPFh(rl,rS)を設定する。そして、HPF10-lは、信号増幅部9-lにより増幅された信号に対し、HPFh(rl,rS)を用いてフィルタ処理を施す。
【0080】
減衰付加部11-lは、仮想音源座標rS及びスピーカ座標rlに基づいて減衰係数1/||rl-rS||2を設定する。そして、減衰付加部11-lは、フィルタ処理が施された信号に対し減衰係数1/||rl-rS||2を乗算することで、仮想音源104とスピーカ106-lとの間の距離に応じて減衰した信号を生成する。
【0081】
面積要素付加部12-lは、減衰した信号に対しスピーカ106-lの面積要素ΔSlを乗算することで、面積要素を付加した信号を生成する。
【0082】
角度算出部20は、仮想音源104位置からスピーカ106-l位置を結んだベクトル(rl-rS)とスピーカ106-l位置での境界面内向き法線ベクトルn(rl)との成す角θlを算出する。
【0083】
角度重み付加部13-lは、成す角θlに基づいて、前記式(9)にて角度重みwC(θl)を設定する。そして、角度重み付加部13-lは、面積要素が付加された信号に対し角度重みwC(θl)を乗算することで、成す角θlを反映した信号を駆動信号d(rl)としてスピーカ106-lへ出力する。
【0084】
これにより、前記式(8)における時間遅延を表すe-jk||rl-rs||の項を無視するようにしたから、システムを簡略化することができる。また、jk||rl-rS||+1の項を近似したHPFh(rl,rS)のHPF10-lを用いることで、システムを簡略化することができる。
【0085】
したがって、WFSの構成を近似により単純化することで、システムの規模を拡大することなく、WFSに基づき仮想音源104の距離の遠近を表現する駆動信号d(rl)を生成することができる。
【0086】
(HPF10-lの他の例)
尚、
図1に示したオブジェクトベース音響レンダリング装置1のHPF10-l(10-1~10-L)は、前記式(8)においてjk||r
l-r
S||+1の項を近似したHPFh(r
l,r
S)を用いて、信号増幅部9-l(9-1~9-L)により増幅された信号に対してフィルタ処理を施すようにした。
【0087】
例えば、前記式(8)においてjk||r
l-r
S||+1の項は、以下の式で表すハイパスフィルタに置き換えて使用する。
【数11】
【0088】
x[t]及びy[t]は、時刻tにおける当該HPF10-lの入力と出力である。HPF係数h
n(r
l,r
S)は、以下の式で表されるものとする。n=0,1,・・・,Nである。
【数12】
αは、フィルタの特性を決定するためのパラメータであり、正の実数である。Nはフィルタ次数である。これらのパラメータα及びフィルタ次数Nの値は、ユーザが任意に決定するものとする。
【0089】
つまり、HPF10-lは、仮想音源座標rS及びスピーカ座標rlを入力すると共に、ユーザにより予め設定されたパラメータα及びフィルタ次数Nを入力する。そして、HPF10-lは、仮想音源座標rS、スピーカ座標rl、パラメータα及びフィルタ次数Nに基づいて、前記式(12)を係数として有するHPF係数を設定する。
【0090】
そして、HPF10-lは、信号増幅部9-l(9-1~9-L)により増幅された信号を入力し、当該信号に対し、前記式(12)のHPF係数hn(rl,rS)を用いて、当該HPF10-lの入出力特性が前記式(11)となるようにフィルタ処理を施す。つまり、HPF10-lは、前記式(11)の入出力特性となるようなHPFにより構成される。
【0091】
これにより、オブジェクトベース音響レンダリング装置1全体として、システムの規模が拡大することなく、簡略化することができる。
【0092】
(減衰付加部11-lの他の例)
また、
図1に示したオブジェクトベース音響レンダリング装置1の減衰付加部11-l(11-1~11-L)は、仮想音源座標r
S及びスピーカ座標r
lに基づいて、減衰係数1/||r
l-r
S||
2を設定し、フィルタ処理が施された信号に対して減衰係数1/||r
l-r
S||
2を乗算することで、仮想音源104とスピーカ106-lとの間の距離に応じて減衰した信号を生成するようにした。
【0093】
しかしながら、減衰係数1/||r
l-r
S||
2は、仮想音源座標r
Sとスピーカ座標r
lとが一致する場合、無限大に発散してしまい、結果として信号を再生することができなくなってしまう。そこで、減衰付加部11-lは、減衰係数1/||r
l-r
S||
2を近似した以下の式で表す減衰係数g(r
l,r
S)を用いる。
【数13】
【0094】
β1は、信号振幅を調整するための正の実数であり、β2は、減衰係数g(rl,rS)の発散を抑えるための正の実数である。これらのパラメータβ1,β2の値は、ユーザが任意に決定するものとする。特に、パラメータβ2の値は、減衰係数g(rl,rS)の発散を抑えるように、微小な値がユーザにより設定される。
【0095】
つまり、減衰付加部11-lは、仮想音源104位置からスピーカ106-l位置までのベクトルの絶対値||rl-rS||を求め、当該絶対値を2乗した結果にパラメータβ2を加算して加算結果(||rl-rS||2+β2)を求め、パラメータβ1を加算結果(||rl-rS||2+β2)で除算することで、減衰係数g(rl,rS)を求める。
【0096】
そして、減衰付加部11-lは、フィルタ処理が施された信号に対してg(rl,rS)を乗算することで、仮想音源104とスピーカ106-lとの間の距離に応じて減衰した信号を生成する。
【0097】
パラメータβ2の値が小さいほど、減衰係数g(rl,rS)の振る舞いは減衰係数1/||rl-rS||2に近づく。一方で、仮想音源座標rSがスピーカ座標rlに近づくほど、信号振幅が極端に増大する。
【0098】
これにより、信号の発散を抑制することができ、ユーザは、自らが設定するパラメータβ1,β2の値に応じて、音響オブジェクトの位置が変化するときの信号振幅の変動を調整することができる。
【0099】
また、ユーザがパラメータβ1,β2の値をβ1=β2に設定した場合、仮想音源座標rSとスピーカ座標rlとが一致するときに(rS=rl)、減衰係数g(rl,rS)=1となる。
【0100】
このため、ユーザは、信号を不要に増大または減衰させることのないように、これらのパラメータβ1,β2の値を調整の目安とすることができる。
【0101】
また、ユーザがパラメータβ1,β2の値をβ1=β2/ΔSlに設定した場合、仮想音源座標rSとスピーカ座標rlとが一致するときに(rS=rl)、減衰係数g(rl,rS)ΔSl=1、さらにはh(rl,rS)g(rl,rS)ΔSlwC(θl)=1となる。h(rl,rS)=1及びwC(θl)=1だからである。
【0102】
このため、仮想音源座標rSとスピーカ座標rlとが一致するときには、角度重み付加部13-lからスピーカ106-lへ出力される駆動信号d(rl)は、信号増幅部9-lにより増幅された信号と同じになる。つまり、スピーカ座標rlに位置するスピーカ106-lから、当該オブジェクトベース音響レンダリング装置1が入力した音源信号Sに対して増幅された信号が再生されることとなる。
【0103】
このように、減衰付加部11-lが前記式(13)で表される減衰係数g(rl,rS)を用いることで、仮想音源座標rSとスピーカ座標rlとが一致した場合であっても、信号が無限大に発散することがない。このため、信号を再生できなくなるという不具合を解消することができる。
【0104】
〔実施例2〕
次に、実施例2のオブジェクトベース音響レンダリング装置について説明する。前述のとおり、実施例2は、実施例1の構成に対してVBAPの構成を組み込むことで、実施例1の効果に加え、スピーカ106-lが疎に配置された場合に駆動信号d(rl)が小さくなる問題を解決する。より詳細には、実施例2は、実施例1に示した単純化したWFSの一部の構成とVBAPの構成とを、角度重みに応じてシームレスに切り替えることで、駆動信号d(rl)を生成する。
【0105】
一般に、WFSの音場再現手法を用いる場合、多数のスピーカ106-lを密に配置することを想定する。しかし、家庭用のオーディオにおいては、多くのスピーカ106-lを密に配置することは困難であり、スピーカ106-lを疎に配置するのが通常である。
【0106】
図4は、スピーカ106-lが疎に配置されている場合を説明する図である。
図4に示すように、再現音場において、スピーカ106-lが疎に配置されており、仮想音源104の位置(仮想音源座標r
S)が音場を再現したい領域の境界面に近接した場合を想定する。
【0107】
この場合、全てのスピーカ106-l(106-1~106-L)において、仮想音源104位置からスピーカ106-l位置を結んだベクトル(rl-rS)とスピーカ106-l位置での境界面内向き法線ベクトルn(rl)との成す角θlは、90°に近い値または90°を超える値となってしまう。
【0108】
このため、角度重み付加部13-lにて用いる角度重みwC(θl)は、前記式(9)から0に近い値または0となる。そして、全てのスピーカ106-lに対する駆動信号d(rl)の値が小さい値または0になってしまい、仮想音源104が境界面に近接しているにも関わらず、再生信号が小さくなるという問題が生じる。
【0109】
この問題を解決するため、実施例2では、
図1に示した実施例1のオブジェクトベース音響レンダリング装置1において、WFSの信号分配則に対し、成す角θ
lに応じて連続的にVBAPの信号分配則にシームレスに切り替わるように、VBAPの構成を追加する。
【0110】
ここで、
図1に示した単純化したWFSである実施例1のオブジェクトベース音響レンダリング装置1において、HPF10-lのHPFh(r
l,r
S)は、周波数の補正に関する項である。また、減衰付加部11-lの減衰係数1/||r
l-r
S||
2を、仮想音源104の位置による距離減衰に関する項、面積要素付加部12-lの面積要素ΔS
lを、スピーカ106-lを離散化することによる補正に関する項であると解釈する。さらに、角度重み付加部13-lの角度重みw
C(θ
l)を、各スピーカ106-lに対する信号の分配側に関する項であると解釈する。
【0111】
実施例2では、WFSにおける角度重み付加部13-lの角度重みwC(θl)による各スピーカ106-lに対する信号の分配則に関する項に、VBAPにより決定される各スピーカ106-lに対する信号の分配則に関する項を並列に接続する。
【0112】
図5は、実施例2のオブジェクトベース音響レンダリング装置の構成例を示すブロック図であり、
図6は、実施例2のオブジェクトベース音響レンダリング装置の処理例を示す疑似コードである。
【0113】
このオブジェクトベース音響レンダリング装置2は、信号増幅部9-1~9-L、HPF10-1~10-L、減衰付加部11-1~11-L、面積要素付加部12-1~12-L、角度重み付加部13-1~13-L、VBAP係数乗算部14-1~14-L、角度重み付加部15-1~15-L、加算部16-1~16-L、角度算出部20及びVBAP係数算出部21を備えている。
【0114】
以下、オブジェクトベース音響レンダリング装置2において、第l(エル)番目のスピーカ106-l(l番目の系統)に対応する構成部を、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l、角度重み付加部13-l、VBAP係数乗算部14-l、角度重み付加部15-l及び加算部16-lとする。つまり、オブジェクトベース音響レンダリング装置2は、L系統分の信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l、角度重み付加部13-l、VBAP係数乗算部14-l、角度重み付加部15-l及び加算部16-lを備え、さらに、角度算出部20及びVBAP係数算出部21を備えている。
【0115】
信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lは、WFSの構成部である。VBAP係数乗算部14-l及び角度重み付加部15-lは、VBAPの構成部であり、WFSの角度重み付加部13-lに並列に接続されている。
【0116】
図1に示した実施例1のオブジェクトベース音響レンダリング装置1とこの実施例2のオブジェクトベース音響レンダリング装置2とを比較すると、両オブジェクトベース音響レンダリング装置1,2は、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l、角度重み付加部13-l及び角度算出部20を備えている点で共通する。
【0117】
一方、オブジェクトベース音響レンダリング装置2は、VBAP係数乗算部14-l、角度重み付加部15-l及び加算部16-l、並びにVBAP係数算出部21を備えている点で、これらの構成部を備えていないオブジェクトベース音響レンダリング装置1と相違する。
【0118】
図6を参照してオブジェクトベース音響レンダリング装置2の全体処理について説明する。オブジェクトベース音響レンダリング装置2は、
図2のステップS201と同様に、音源信号Sを入力すると共に、仮想音源104の仮想音源座標r
Sを入力する(ステップS601)。
【0119】
オブジェクトベース音響レンダリング装置2は、
図2のステップS202と同様に、スピーカ106-lについて、スピーカ座標r
l、面積要素ΔS
l及び境界面内向き法線ベクトルn(r
l)を入力する(ステップS602)。
【0120】
オブジェクトベース音響レンダリング装置2は、
図2のステップS203と同様に、スピーカ106-lについて、仮想音源座標r
S及びスピーカ座標r
lに基づき、HPFh(r
l,r
S)を設定する(ステップS603)。
【0121】
オブジェクトベース音響レンダリング装置2は、
図2のステップS204と同様に、スピーカ106-lについて、仮想音源座標r
S及びスピーカ座標r
lに基づき、減衰係数1/||r
l-r
S||
2を設定する(ステップS604)。
【0122】
オブジェクトベース音響レンダリング装置2は、
図2のステップS205と同様に、スピーカ106-lについて、仮想音源座標r
S、スピーカ座標r
l及び境界面内向き法線ベクトルn(r
l)に基づき、成す角θ
lを算出する(ステップS605)。
【0123】
オブジェクトベース音響レンダリング装置2は、スピーカ106-lについて、成す角θ
lの絶対値|θ
l|が0°よりも大きく、かつ90°よりも小さいか否かを判定し、前記式(9)にてWFSの角度重みw
C(θ
l)、及び以下に示す式(14)にてVBAPの角度重みw
S(θ
l)を設定する(ステップS606)。
【数14】
【0124】
具体的には、オブジェクトベース音響レンダリング装置2は、成す角|θl|が0°よりも大きく、かつ90°よりも小さいと判定した場合(前記式(9)(14)ではcosθl>0の場合)、角度重みwC(θl)=cosθl及び角度重みwS(θl)=|1-cosθl|を設定する。一方、オブジェクトベース音響レンダリング装置2は、成す角|θl|が0°以下であるか、または90°以上であると判定した場合(前記式(9)(14)ではcosθl>0以外の場合)、角度重みwC(θl)=0及び角度重みwS(θl)=0を設定する。この角度重みwC(θl)は角度重み付加部13-lにより用いられ、角度重みwS(θl)は、角度重み付加部15-lにて用いられる。
【0125】
角度重みwC(θl)は、0から1までの範囲の値をとり、成す角|θl|が0°<|θl|<90°の範囲において、成す角|θl|が0°に近いほど1(cosθl)に近い値をとり、90°に近いほど0に近い値をとり、成す角|θl|が|θl|≦0°または90°≦|θl|の範囲において、0の値をとる。
【0126】
角度重みwS(θl)は、成す角|θl|が0°<|θl|<90°の範囲において、成す角|θl|が0°に近いほど0に近い値をとり、90°に近いほど1(|1-cosθl|)に近い値をとり、成す角|θl|が|θl|≦0°または90°≦|θl|の範囲において、0の値をとる。
【0127】
オブジェクトベース音響レンダリング装置2は、所定の受音点(聴取者の位置)から仮想音源座標rSへの仮想音源方向の単位ベクトル及び全てのスピーカ106-lにおける所定の受音点からスピーカ座標rlへのスピーカ方向の単位ベクトルに基づいて、仮想音源104を内部に含む3つのスピーカをVBAP対象の3つのスピーカ106-n1,106-n2,106-n3として特定する。
【0128】
そして、オブジェクトベース音響レンダリング装置2は、VBAP対象の3つのスピーカ106-n1,106-n2,106-n3におけるスピーカ方向の単位ベクトルrn1,rn2,rn3を取得する(ステップS607)。単位ベクトルrn1,rn2,rn3は、所定の受音点及びスピーカ106-n1,106-n2,106-n3の座標(スピーカ座標)に基づいて、それぞれ取得することができる。n1,n2,n3は、VBAP対象の3つのスピーカ106-n1,106-n2,106-n3のインデックスである。
【0129】
オブジェクトベース音響レンダリング装置2は、仮想音源座標r
Sへの仮想音源方向の単位ベクトル及びスピーカ方向の単位ベクトルr
n1,r
n2,r
n3に基づいて、以下の式にてスピーカ106-n1,106-n2,106-n3に対応する係数g
l=g
n1,g
n2,g
n3を算出する(ステップS608)。
【数15】
前記式(15)のr
nSは、仮想音源座標r
Sへの仮想音源方向の単位ベクトルである。
【0130】
また、オブジェクトベース音響レンダリング装置2は、スピーカ106-1~106-Lのうちスピーカ106-n1,106-n2,106-n3以外のスピーカ106-lの係数gl=0を設定する。これらの係数gl=gn1,gn2,gn3,0は、VBAP係数算出部21により算出及び設定される。
【0131】
オブジェクトベース音響レンダリング装置2は、インデックスがl=n1,n2,n3のスピーカ106-n1,106-n2,106-n3について、定数u(例えばu=1/2π)、ステップS601にて入力した音源信号S及び仮想音源座標r
S、ステップS602にて入力したスピーカ座標r
l及び面積要素ΔS
l、ステップS603にて設定したHPFh(r
l,r
S)、ステップS604にて設定した減衰係数1/||r
l-r
S||
2及びステップS606にて設定した角度重みw
C(θ
l)及び角度重みw
S(θ
l)に基づき、以下の式にて駆動信号d(r
l)を算出し出力する(ステップS609)。
【数16】
【0132】
この式において、係数gl=gn1,gn2,gn3である。また、*は畳み込みを表す。駆動信号d(rl)は、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l、角度重み付加部13-l、VBAP係数乗算部14-l、角度重み付加部15-l及び加算部16-lにより算出される。
【0133】
一方、オブジェクトベース音響レンダリング装置2は、インデックスがl=n1,n2,n3以外について、すなわちスピーカ106-n1,106-n2,106-n3以外のスピーカ106-lについて、定数u、音源信号S、仮想音源座標r
S、スピーカ座標r
l及び面積要素ΔS
l、HPFh(r
l,r
S)、減衰係数1/||r
l-r
S||
2及び角度重みw
C(θ
l)に基づき、以下の式にて駆動信号d(r
l)を算出し出力する(ステップS610)。
【数17】
この式(17)は、前記式(10)と同じである。
【0134】
この駆動信号d(rl)は、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lにより算出される。
【0135】
次に、
図5を参照してオブジェクトベース音響レンダリング装置2の構成部の処理について説明する。信号増幅部9-l(9-1~9-L)、HPF10-l(10-1~10-L)、減衰付加部11-l(11-1~11-L)、面積要素付加部12-l(12-1~12-L)、角度重み付加部13-l(13-1~13-L)及び角度算出部20は、
図1に示した構成部と同じであるため、説明を省略する。
【0136】
ここで、角度重み付加部13-lは、成す角θlを反映したWFSの駆動信号を第1駆動信号として、対応する加算部16-lに出力する。角度算出部20は、成す角θlを、対応する角度重み付加部13-l及び角度重み付加部15-lに出力する。
【0137】
VBAP係数算出部21は、仮想音源座標rS及びスピーカ座標r1~rLを入力する。そして、VBAP係数算出部21は、ステップS607,S608のとおり、所定の受音点から仮想音源座標rSへの仮想音源方向の単位ベクトル及び全てのスピーカ106-1~106-Lにおける所定の受音点からスピーカ座標r1~rLへのスピーカ方向の単位ベクトルに基づいて、仮想音源104を内部に含むVBAP対象の3つのスピーカ106-n1,106-n2,106-n3に対応する係数gn1,gn2,gn3を算出する。
【0138】
VBAP係数算出部21は、係数gl=gn1,gn2,gn3を、スピーカ106-n1,106-n2,106-n3に対応するVBAP係数乗算部14-n1,14-n2,14-n3にそれぞれ出力する。また、VBAP係数算出部21は、係数gl=0を、スピーカ106-n1,106-n2,106-n3以外のスピーカ106-lに対応するVBAP係数乗算部14-lにそれぞれ出力する。
【0139】
図7は、VBAP係数算出部21の構成例を示すブロック図である。このVBAP係数算出部21は、スピーカ決定部31及び算出部32を備えている。スピーカ決定部31は、仮想音源座標r
S及び全てのスピーカ106-1~106-Lのスピーカ座標r
1~r
Lを入力する。そして、スピーカ決定部31は、仮想音源座標r
S及びスピーカ座標r
1~r
Lに基づいて、仮想音源104を内部に含むVBAP対象の3つのスピーカ106-n1,106-n2,106-n3を特定する。
【0140】
スピーカ決定部31は、VBAP対象の3つのスピーカ106-n1,106-n2,106-n3におけるスピーカ方向の単位ベクトルrn1,rn2,rn3を取得し、仮想音源座標rS及びスピーカ方向の単位ベクトルrn1,rn2,rn3を算出部32に出力する。
【0141】
算出部32は、スピーカ決定部31から仮想音源座標rS及びスピーカ方向の単位ベクトルrn1,rn2,rn3を入力する。そして、算出部32は、仮想音源座標rSへの仮想音源方向の単位ベクトル及びスピーカ方向の単位ベクトルrn1,rn2,rn3に基づいて、前記式(15)にてスピーカ106-n1,106-n2,106-n3に対応する係数gn1,gn2,gn3を算出する。そして、算出部32は、係数gn1,gn2,gn3を、対応するVBAP係数乗算部14-n1,14-n2,14-n3に出力する。
【0142】
また、算出部32は、スピーカ106-n1,106-n2,106-n3以外のスピーカ106-lに対応する係数gl=0を設定し、対応するVBAP係数乗算部14-lに出力する。
【0143】
図5に戻って、VBAP係数乗算部14-l(14-1~14-L)は、VBAP係数算出部21から係数g
l(g
n1,g
n2,g
n3,0のうちのいずれかの値)を入力する。そして、VBAP係数乗算部14-lは、面積要素付加部12-lから面積要素が付加された信号を入力し、当該信号に対し係数g
lを乗算することで、係数g
lを反映した信号を生成する。
【0144】
VBAP係数乗算部14-lは、係数glを反映した信号を角度重み付加部15-lに出力する。
【0145】
角度重み付加部15-l(15-1~15-L)は、角度算出部20から成す角θl(θ1~θL)を入力し、成す角θlに基づいて、ステップS606のとおり、前記式(14)にて角度重みwS(θl)を設定する。そして、角度重み付加部15-lは、VBAP係数乗算部14-lから係数glを反映した信号を入力し、当該信号に対し角度重みwS(θl)を乗算することで、成す角θlを反映した信号を生成する。
【0146】
仮想音源104を内部に含む3つスピーカ106-n1,106-n2,106-n3に対応する角度重み付加部15-n1,15-n2,15-n3において、成す角θlを反映した信号は、成す角θlが90°に近いほど、係数glを反映した信号に近くなる。一方、成す角θlを反映した音源信号Sは、成す角θlが0°に近いほど、0に近い信号となる。また、仮想音源104を内部に含む3つスピーカ106-n1,106-n2,106-n3以外のスピーカ106-lに対応する角度重み付加部15-lにおいて、成す角θlを反映した信号は0である。
【0147】
角度重み付加部15-lは、成す角θlを反映した信号を第2駆動信号として加算部16-lに出力する。
【0148】
加算部16-l(16-1~16-L)は、角度重み付加部13-lから成す角θlを反映した第1駆動信号を入力すると共に、角度重み付加部15-lから成す角θlを反映した第2駆動信号を入力する。そして、加算部16-lは、成す角θlを反映した第1駆動信号及び成す角θlを反映した第2駆動信号を加算し、加算結果を駆動信号d(rl)としてスピーカ106-lへ出力する。
【0149】
以上のように、実施例2のオブジェクトベース音響レンダリング装置2によれば、実施例1のWFSの構成に対してVBAPの構成を組み込み、WFSの一部の構成とVBAPの構成とを、角度重みに応じてシームレスに切り替えることで、駆動信号d(rl)を生成するようにした。
【0150】
具体的には、VBAP係数算出部21は、所定の受音点から仮想音源座標rSへの仮想音源方向の単位ベクトル及びスピーカ座標r1~rLへのスピーカ方向の単位ベクトルに基づいて、仮想音源104を内部に含む3つのスピーカ106-n1,106-n2,106-n3に対応する係数gn1,gn2,gn3を算出する。
【0151】
VBAP係数乗算部14-lは、VBAP係数算出部21から係数gl(gn1,gn2,gn3,0のうちのいずれかの値)を入力する。そして、VBAP係数乗算部14-lは、信号増幅部9-l、HPF10-l、減衰付加部11-l及び面積要素付加部12-lにより得られた信号に係数glを乗算することで、係数glを反映した信号を生成する。
【0152】
角度重み付加部15-lは、成す角θlに基づいて、前記式(14)にて角度重みwS(θl)を設定する。そして、角度重み付加部15-lは、係数glを反映した信号に角度重みwS(θl)を乗算することで、成す角θlを反映した第2駆動信号を生成する。
【0153】
加算部16-lは、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lからなるWFSの処理により得られた、成す角θlを反映した第1駆動信号、及び、成す角θlを反映した第2駆動信号を加算し、加算結果を駆動信号d(rl)としてスピーカ106-lへ出力する。
【0154】
このように、角度重みwS(θl)を用いる角度重み付加部15-lは、係数glを用いるVBAP係数乗算部14-lに対して直列に接続され、VBAPのVBAP係数乗算部14-l及び角度重み付加部15-lは、WFSの角度重み付加部13-lに並列に接続される。そして、角度重み付加部13-lに用いる角度重みwC(θl)と角度重み付加部15-lに用いる角度重みwS(θl)とは、0~1の範囲においてトレードオフの関係にある。
【0155】
このため、仮想音源104の位置(仮想音源座標rS)がスピーカ106-lの境界面から離れており、成す角θlが0°に近づいている場合には、角度重みwC(θl)は1に近い大きい値となるが、角度重みwS(θl)は0に近い小さい値となる。この場合、駆動信号d(rl)は、WFSによる分配側が支配的となる。
【0156】
一方、仮想音源104の位置(仮想音源座標rS)がスピーカ106-lの境界面に近接し、成す角θlが90°に近づいている場合には、角度重みwC(θl)は0に近い小さい値となるが、角度重みwS(θl)は1に近い大きい値となる。この場合、駆動信号d(rl)は、VBAPによる分配側が支配的となる。
【0157】
つまり、スピーカ106-lに対する仮想音源104の位置に応じて、WFSによる分配側とVBAPによる分配側とが、連続的にシームレスに切り替わるようになる。
【0158】
したがって、実施例2のオブジェクトベース音響レンダリング装置2では、実施例1と同様の効果を奏することができる。また、スピーカ106-lが疎に配列された環境において、仮想音源104の位置(仮想音源座標rS)がスピーカ106-lの境界面に近接し、成す角θl が大きくなるにつれてWFSの角度重みは小さく、VBAPの角度重みが大きくなり、連続的にレンダリング則が切り替わる。このため、WFSの角度重みが小さくなることに起因し、再生信号が小さくなる場合でもVBAPの角度重みでそれを補填することで、再生信号が極端に小さくなるという問題を解決することができる。
【0159】
尚、実施例2のオブジェクトベース音響レンダリング装置2のHPF10-l(10-1~10-L)は、
図1に示した実施例1と同様に、jk||r
l-r
S||+1を、前記式(12)のHPF係数h
n(r
l,r
S)を用いた前記式(11)のハイパスフィルタに置き換えて使用するようにしてもよい。
【0160】
また、実施例2のオブジェクトベース音響レンダリング装置2の減衰付加部11-l(11-1~11-L)は、
図1に示した実施例1と同様に、減衰係数1/||r
l-r
S||
2の代わりに、前記式(13)の減衰係数g(r
l,r
S)を用いるようにしてもよい。つまり、減衰付加部11-lは、減衰係数g(r
l,r
S)を用いて、仮想音源104とスピーカ106-lとの間の距離に応じて減衰した信号を生成する。
【0161】
〔実施例3〕
次に、実施例3について説明する。前述のとおり、実施例3は、実施例2と同様に、実施例1の構成に対してVBAPの構成を組み込むことで、実施例1の効果に加え、スピーカ106-lが疎に配置された場合に駆動信号d(rl)が小さくなる問題を解決する。より詳細には、実施例3は、実施例1に示した単純化したWFSの全体の構成とVBAPの構成とを、角度重みに応じてシームレスに切り替えることで、駆動信号d(rl)を生成する。
【0162】
図8は、実施例3のオブジェクトベース音響レンダリング装置の構成例を示すブロック図であり、
図9は、実施例3のオブジェクトベース音響レンダリング装置の処理例を示す疑似コードである。
【0163】
このオブジェクトベース音響レンダリング装置3は、信号増幅部9-1~9-L、HPF10-1~10-L、減衰付加部11-1~11-L、面積要素付加部12-1~12-L、角度重み付加部13-1~13-L、VBAP係数乗算部14-1~14-L、角度重み付加部15-1~15-L、加算部16-1~16-L、角度算出部20及びVBAP係数算出部21を備えている。
【0164】
信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lは、WFSの構成部であり、VBAP係数乗算部14-l及び角度重み付加部15-lは、VBAPの構成部である。WFSの構成部とVBAPの構成部とは、当該オブジェクトベース音響レンダリング装置3全体として、並列に接続されている。
【0165】
図2に示した実施例2のオブジェクトベース音響レンダリング装置2とこの実施例3のオブジェクトベース音響レンダリング装置3とを比較すると、両オブジェクトベース音響レンダリング装置2,3は、同一の構成部を備えている点で共通する。
【0166】
一方、オブジェクトベース音響レンダリング装置3は、VBAPの構成部であるVBAP係数乗算部14-l及び角度重み付加部15-lが、WFSの全体の構成部と並列に接続されている点で、WFSの一部の角度重み付加部13-lのみと並列に接続されているオブジェクトベース音響レンダリング装置2と相違する。
【0167】
図9を参照してオブジェクトベース音響レンダリング装置3の全体処理について説明する。
図9に示すステップS901~S908の処理は、
図6に示した実施例2のオブジェクトベース音響レンダリング装置2によるステップS601~S608の処理と同じであるため、ここでは説明を省略する。
【0168】
オブジェクトベース音響レンダリング装置3は、ステップS907にて取得したスピーカ座標r
lのインデックスがl=n1,n2,n3の場合、スピーカ106-n1,106-n2,106-n3について、定数u(例えばu=1/2π)、ステップS901にて入力した音源信号S及び仮想音源座標r
S、ステップS902にて入力したスピーカ座標r
l及び面積要素ΔS
l、ステップS903にて設定したHPFh(r
l,r
S)、ステップS904にて設定した減衰係数1/||r
l-r
S||
2及びステップS906にて設定した角度重みw
C(θ
l)及び角度重みw
S(θ
l)に基づき、以下の式にて駆動信号d(r
l)を算出し出力する(ステップS909)。
【数18】
【0169】
この式において、係数gl=gn1,gn2,gn3である。また、*は畳み込みを表す。駆動信号d(rl)は、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l、角度重み付加部13-l、VBAP係数乗算部14-l、角度重み付加部15-l及び加算部16-lにより算出される。
【0170】
一方、オブジェクトベース音響レンダリング装置3は、インデックスがl=n1,n2,n3以外の場合、スピーカ106-n1,106-n2,106-n3以外のスピーカ106-lについて、定数u、音源信号S、仮想音源座標r
S、スピーカ座標r
l及び面積要素ΔS
l、HPFh(r
l,r
S)、減衰係数1/||r
l-r
S||
2及び角度重みw
C(θ
l)に基づき、以下の式にて駆動信号d(r
l)を算出し出力する(ステップS910)。
【数19】
この式(19)は、前記式(10)及び前記式(17)と同じである。
【0171】
この駆動信号d(rl)は、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lにより算出される。
【0172】
尚、前記式(18)の演算において、右辺の第1項であるWFSの構成による演算結果と、第2項であるVBAPの構成による演算結果とは、フィルタリングにより遅延が生じる。このため、角度重み付加部13-l,15-lにおいて、VBAP側にも位相を調整するための遅延を加える必要があるが、ここではその表記は省略する。
【0173】
また、前記式(18)及び前記式(19)において、畳み込み*は、FFT(Fast Fourier Transform:高速フーリエ変換)を利用し、周波数領域での積を逆変換して求めるようにしてもよい。前記式(16)及び前記式(17)についても同様である。
【0174】
図8を参照して、オブジェクトベース音響レンダリング装置3に備えたそれぞれの構成部の処理は、
図5に示した実施例2のオブジェクトベース音響レンダリング装置2に備えたそれぞれの構成部の処理と同じであるため、構成部の処理の説明については省略する。
【0175】
VBAP係数乗算部14-l(14-1~14-L)の入力データは、オブジェクトベース音響レンダリング装置2,3間において異なる。
図5に示したオブジェクトベース音響レンダリング装置2のVBAP係数乗算部14-lは、面積要素付加部12-lから面積要素が付加された信号を入力する。これに対し、
図8に示すオブジェクトベース音響レンダリング装置3のVBAP係数乗算部14-lは、音源信号Sを入力する。
【0176】
具体的には、
図8に示すオブジェクトベース音響レンダリング装置3のVBAP係数乗算部14-lは、VBAP係数算出部21から係数g
l(g
n1,g
n2,g
n3,0のうちのいずれかの値)を入力する。そして、VBAP係数乗算部14-lは、音源信号Sを入力し、当該音源信号Sに係数g
lを乗算することで、係数g
lを反映した信号を生成する。
【0177】
以上のように、実施例3のオブジェクトベース音響レンダリング装置3によれば、実施例1のWFSの構成に対してVBAPの構成を組み込み、WFSの全体の構成とVBAPの構成とを、角度重みに応じてシームレスに切り替えることで、駆動信号d(rl)を生成する。
【0178】
具体的には、VBAP係数乗算部14-lは、VBAP係数算出部21から係数gl(gn1,gn2,gn3,0のうちのいずれかの値)を入力する。そして、VBAP係数乗算部14-lは、音源信号Sに係数glを乗算することで、係数glを反映した信号を生成する。
【0179】
角度重み付加部15-lは、成す角θlに基づいて、前記式(14)にて角度重みwS(θl)を設定する。そして、角度重み付加部15-lは、係数glを反映した信号に角度重みwS(θl)を乗算することで、成す角θlを反映した第2駆動信号を生成する。
【0180】
加算部16-lは、信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lからなるWFSの処理により得られた、成す角θlを反映した第1駆動信号、及び、成す角θlを反映した第2駆動信号を加算し、加算結果を駆動信号d(rl)としてスピーカ106-lへ出力する。
【0181】
このように、角度重みwS(θl)を用いる角度重み付加部15-lは、係数glを用いるVBAP係数乗算部14-lに対して直列に接続される。また、VBAPのVBAP係数乗算部14-l及び角度重み付加部15-lは、WFSの信号増幅部9-l、HPF10-l、減衰付加部11-l、面積要素付加部12-l及び角度重み付加部13-lに並列に接続される。そして、角度重み付加部13-lに用いる角度重みwC(θl)と角度重み付加部15-lに用いる角度重みwS(θl)とは、0~1の範囲においてトレードオフの関係にある。
【0182】
このため、実施例2と同様に、θlが0°に近づいたときには、駆動信号d(rl)は、WFSによる分配側が支配的となり、θlが90°に近づいたときには、駆動信号d(rl)は、VBAPによる分配側が支配的となる。
【0183】
つまり、スピーカ106-lに対する仮想音源104の位置に応じて、連続的にWFSとVBAPとの分配側が、シームレスに切り替わるようになる。
【0184】
したがって、実施例3のオブジェクトベース音響レンダリング装置3では、実施例1と同様の効果を奏することができる。また、実施例2と同様に、スピーカ106-lが疎に配列された環境において、WFSによるレンダリングを行っている際に、仮想音源104が境界面に近接して配置されると、VBAPによるレンダリングに連続的にシームレスに切り替わる。このため、再生信号が小さくなるという問題を解決することができる。
【0185】
尚、実施例3のオブジェクトベース音響レンダリング装置3のHPF10-l(10-1~10-L)は、
図1に示した実施例1及び
図5に示した実施例2と同様に、jk||r
l-r
S||+1を、前記式(12)のHPF係数h
n(r
l,r
S)を用いた前記式(11)のハイパスフィルタに置き換えて使用するようにしてもよい。
【0186】
また、実施例3のオブジェクトベース音響レンダリング装置3の減衰付加部11-l(11-1~11-L)は、
図1に示した実施例1及び
図5に示した実施例2と同様に、減衰係数1/||r
l-r
S||
2の代わりに、前記式(13)の減衰係数g(r
l,r
S)を用いるようにしてもよい。つまり、減衰付加部11-lは、減衰係数g(r
l,r
S)を用いて、仮想音源104とスピーカ106-lとの間の距離に応じて減衰した信号を生成する。
【0187】
ただし、仮想音源104がスピーカ106-lに近接して配置された場合、単純化したWFSの構成(HPF10-l~角度重み付加部13-l)と、VBAPの構成(VBAP係数乗算部14-l及び角度重み付加部15-l)とでは、信号振幅が大きく異なる場合がある。このため、信号振幅が極端に異ならないように、前記式(13)の減衰係数g(rl,rS)を算出するために用いるパラメータβ1,β2は、適切に調整される必要がある。
【0188】
以上、実施例1,2,3を挙げて本発明を説明したが、本発明は前記実施例1,2,3に限定されるものではなく、その技術思想を逸脱しない範囲で種々変形可能である。
【0189】
尚、本発明の実施例1,2,3によるオブジェクトベース音響レンダリング装置1,2,3のハードウェア構成としては、通常のコンピュータを使用することができる。オブジェクトベース音響レンダリング装置1,2,3は、CPU、RAM等の揮発性の記憶媒体、ROM等の不揮発性の記憶媒体、及びインターフェース等を備えたコンピュータによって構成される。
【0190】
オブジェクトベース音響レンダリング装置1に備えたHPF10-1~10-L、減衰付加部11-1~11-L、面積要素付加部12-1~12-L、角度重み付加部13-1~13-L及び角度算出部20の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
【0191】
また、オブジェクトベース音響レンダリング装置2,3に備えたHPF10-1~10-L、減衰付加部11-1~11-L、面積要素付加部12-1~12-L、角度重み付加部13-1~13-L、VBAP係数乗算部14-1~14-L、角度重み付加部15-1~15-L、加算部16-1~16-L、角度算出部20及びVBAP係数算出部21の各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現される。
【0192】
これらのプログラムは、前記記憶媒体に格納されており、CPUに読み出されて実行される。また、これらのプログラムは、磁気ディスク(フロッピー(登録商標)ディスク、ハードディスク等)、光ディスク(CD-ROM、DVD等)、半導体メモリ等の記憶媒体に格納して頒布することもでき、ネットワークを介して送受信することもできる。
【符号の説明】
【0193】
1,2,3 オブジェクトベース音響レンダリング装置
9 信号増幅部
10 HPF(ハイパスフィルタ)
11 減衰付加部
12 面積要素付加部
13,15 角度重み付加部
14 VBAP係数乗算部
16 加算部
20 角度算出部
21 VBAP係数算出部
30,32 算出部
31 スピーカ決定部
100 受音点
101,104 仮想音源
102,106 スピーカ
103 音源
105 スピーカアレイ
rnS 仮想音源方向の単位ベクトル
rn1,rn2,rn3 スピーカ方向の単位ベクトル
gl,gn1,gn2,gn3 係数
rS 仮想音源座標
rl スピーカ座標
C1,C2 領域
S 音源信号
L スピーカの個数
l スピーカの番号(系統の番号)
ΔSl スピーカの面積要素
n(rl) スピーカの境界面内向き法線ベクトル
k 波数
θl 成す角(仮想音源104位置からスピーカ106-l位置を結んだベクトル(rl-rS)と境界面内向き法線ベクトルn(rl)との成す角)
h(rl,rS) HPF
wC(θl),wS(θl) 角度重み
1/||rl-rS||2,g(rl,rS) 減衰係数
d(rl) 駆動信号