(19)【発行国】日本国特許庁(JP)
(12)【公報種別】公開特許公報(A)
(11)【公開番号】P2024020634
(43)【公開日】2024-02-14
(54)【発明の名称】音声処理装置および方法、並びにプログラム
(51)【国際特許分類】
H04S 7/00 20060101AFI20240206BHJP
【FI】
H04S7/00 300
【審査請求】有
【請求項の数】3
【出願形態】OL
(21)【出願番号】P 2023207055
(22)【出願日】2023-12-07
(62)【分割の表示】P 2022151327の分割
【原出願日】2016-06-09
(31)【優先権主張番号】P 2015126650
(32)【優先日】2015-06-24
(33)【優先権主張国・地域又は機関】JP
(31)【優先権主張番号】P 2015148683
(32)【優先日】2015-07-28
(33)【優先権主張国・地域又は機関】JP
(71)【出願人】
【識別番号】000002185
【氏名又は名称】ソニーグループ株式会社
(74)【代理人】
【識別番号】100121131
【弁理士】
【氏名又は名称】西川 孝
(74)【代理人】
【識別番号】100082131
【弁理士】
【氏名又は名称】稲本 義雄
(74)【代理人】
【識別番号】100168686
【弁理士】
【氏名又は名称】三浦 勇介
(72)【発明者】
【氏名】山本 優樹
(72)【発明者】
【氏名】知念 徹
(72)【発明者】
【氏名】辻 実
(57)【要約】
【課題】より高品質な音声を得ることができるようにする。
【解決手段】取得部は、オブジェクトのオーディオ信号とメタデータを取得する。ベクトル算出部は、オブジェクトのメタデータに含まれている、音像の広がりを示す水平方向角度および垂直方向角度に基づいて、音像の広がりを示す領域内の位置を示すspreadベクトルを算出する。ゲイン算出部は、spreadベクトルに基づいて、VBAPにより各スピーカについてオーディオ信号のVBAPゲインを算出する。本技術は音声処理装置に適用することができる。
【選択図】
図6
【特許請求の範囲】
【請求項1】
オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得する取得部と、
前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出するベクトル算出部と、
前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出するゲイン算出部と
を備える音声処理装置。
【請求項2】
前記ベクトル算出部は、前記水平方向角度と前記垂直方向角度の比に基づいて、前記spreadベクトルを算出する
請求項1に記載の音声処理装置。
【請求項3】
前記ベクトル算出部は、予め定められた個数の前記spreadベクトルを算出する
請求項1に記載の音声処理装置。
【請求項4】
前記ベクトル算出部は、可変である任意の個数の前記spreadベクトルを算出する
請求項1に記載の音声処理装置。
【請求項5】
前記音像情報は、前記領域の中心位置を示すベクトルである
請求項1に記載の音声処理装置。
【請求項6】
前記音像情報は、前記領域の中心からの音像の広がり度合いを示す2次元以上のベクトルである
請求項1に記載の音声処理装置。
【請求項7】
前記音像情報は、前記位置情報により示される位置から見た前記領域の中心位置の相対的な位置を示すベクトルである
請求項1に記載の音声処理装置。
【請求項8】
前記ゲイン算出部は、
各前記音声出力部について、前記spreadベクトルごとに前記ゲインを算出し、
前記音声出力部ごとに、各前記spreadベクトルについて算出した前記ゲインの加算値を算出し、
前記音声出力部ごとに、前記加算値を2値以上のゲインに量子化し、
前記量子化された前記加算値に基づいて、前記音声出力部ごとに最終的な前記ゲインを算出する
請求項1に記載の音声処理装置。
【請求項9】
前記ゲイン算出部は、3つの前記音声出力部により囲まれる領域であるメッシュであって、前記ゲインの算出に用いるメッシュの数を選択し、前記メッシュの数の選択結果と前記spreadベクトルとに基づいて、前記spreadベクトルごとに前記ゲインを算出する
請求項8に記載の音声処理装置。
【請求項10】
前記ゲイン算出部は、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化時における前記加算値の量子化数を選択し、その選択結果に応じて前記最終的な前記ゲインを算出する
請求項9に記載の音声処理装置。
【請求項11】
前記ゲイン算出部は、前記オーディオオブジェクトの数に基づいて、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化数を選択する
請求項10に記載の音声処理装置。
【請求項12】
前記ゲイン算出部は、前記オーディオオブジェクトの重要度に基づいて、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化数を選択する
請求項10に記載の音声処理装置。
【請求項13】
前記ゲイン算出部は、前記重要度の高い前記オーディオオブジェクトに近い位置にある前記オーディオオブジェクトほど、前記ゲインの算出に用いる前記メッシュの数が多くなるように、前記ゲインの算出に用いる前記メッシュの数を選択する
請求項12に記載の音声処理装置。
【請求項14】
前記ゲイン算出部は、前記オーディオオブジェクトのオーディオ信号の音圧に基づいて、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化数を選択する
請求項10に記載の音声処理装置。
【請求項15】
前記ゲイン算出部は、前記メッシュの数の選択結果に応じて、複数の前記音声出力部のうち、互いに異なる高さに位置する前記音声出力部を含む3以上の前記音声出力部を選択し、選択した前記音声出力部から形成される1または複数の前記メッシュに基づいて前記ゲインを算出する
請求項9に記載の音声処理装置。
【請求項16】
オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得し、
前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出し、
前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出する
ステップを含む音声処理方法。
【請求項17】
オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得し、
前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出し、
前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出する
ステップを含む処理をコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【0001】
本技術は音声処理装置および方法、並びにプログラムに関し、特に、より高品質な音声を得ることができるようにした音声処理装置および方法、並びにプログラムに関する。
【背景技術】
【0002】
従来、複数のスピーカを用いて音像の定位を制御する技術として、VBAP(Vector Base Amplitude Panning)が知られている(例えば、非特許文献1参照)。
【0003】
VBAPでは、3つのスピーカから音を出力することで、それらの3つのスピーカで構成される三角形の内側の任意の一点に音像を定位させることができる。
【0004】
しかしながら、実世界では、音像は一点に定位するのではなく、ある程度の広がりを持った部分空間に定位すると考えられる。例えば、人間の声は声帯から発せられるが、その振動は顔や体などに伝搬し、その結果、人間の体全体という部分空間から音声が発せられると考えられる。
【0005】
このような部分空間に音を定位させる技術、すなわち音像を広げる技術としてMDAP(Multiple Direction Amplitude Panning)が一般に知られている(例えば、非特許文献2参照)。また、このMDAPはMPEG(Moving Picture Experts Group)-H 3D Audio規格のレンダリング処理部でも使われている(例えば、非特許文献3参照)。
【先行技術文献】
【非特許文献】
【0006】
【非特許文献1】Ville Pulkki, “Virtual Sound Source Positioning Using Vector Base Amplitude Panning”, Journal of AES, vol.45, no.6, pp.456-466, 1997
【非特許文献2】Ville Pulkki, "Uniform Spreading of Amplitude Panned Virtual Sources", Proc. 1999 IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, New Paltz, New York, Oct. 17-20, 1999
【非特許文献3】ISO/IEC JTC1/SC29/WG11 N14747, August 2014, Sapporo, Japan, "Text of ISO/IEC 23008-3/DIS, 3D Audio"
【発明の概要】
【発明が解決しようとする課題】
【0007】
しかしながら、上述した技術では、十分に高品質な音声を得ることができなかった。
【0008】
例えばMPEG-H 3D Audio規格では、オーディオオブジェクトのメタデータにspreadと呼ばれる音像の広がり度合いを示す情報が含まれており、このspreadに基づいて音像を広げる処理が行われる。ところが、音像を広げる処理では、オーディオオブジェクトの位置を中心として音像の広がりが上下左右対称であるという制約がある。そのため、オーディオオブジェクトからの音声の指向性(放射方向)を考慮した処理を行うことができず、十分高品質な音声を得ることができなかった。
【0009】
本技術は、このような状況に鑑みてなされたものであり、より高品質な音声を得ることができるようにするものである。
【課題を解決するための手段】
【0010】
本技術の一側面の音声処理装置は、オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得する取得部と、前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出するベクトル算出部と、前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出するゲイン算出部とを備える。
【0011】
本技術の一側面の音声処理方法またはプログラムは、オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得し、前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出し、前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出するステップを含む。
【0012】
本技術の一側面においては、オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータが取得され、前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルが算出され、前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインが算出される。
【発明の効果】
【0013】
本技術の一側面によれば、より高品質な音声を得ることができる。
【0014】
なお、ここに記載された効果は必ずしも限定されるものではなく、本開示中に記載された何れかの効果であってもよい。
【図面の簡単な説明】
【0015】
【
図3】spreadベクトルについて説明する図である。
【
図4】spread中心ベクトル方式について説明する図である。
【
図5】spread放射ベクトル方式について説明する図である。
【
図8】spreadベクトル算出処理を説明するフローチャートである。
【
図9】spread3次元ベクトルに基づくspreadベクトル算出処理を説明するフローチャートである。
【
図10】spread中心ベクトルに基づくspreadベクトル算出処理を説明するフローチャートである。
【
図11】spread端ベクトルに基づくspreadベクトル算出処理を説明するフローチャートである。
【
図12】spread放射ベクトルに基づくspreadベクトル算出処理を説明するフローチャートである。
【
図13】spreadベクトル位置情報に基づくspreadベクトル算出処理を説明するフローチャートである。
【
図14】メッシュ数の切り替えについて説明する図である。
【
図15】メッシュ数の切り替えについて説明する図である。
【
図16】メッシュの形成について説明する図である。
【
図18】再生処理を説明するフローチャートである。
【
図20】再生処理を説明するフローチャートである。
【
図21】VBAPゲイン算出処理を説明するフローチャートである。
【発明を実施するための形態】
【0016】
以下、図面を参照して、本技術を適用した実施の形態について説明する。
【0017】
〈第1の実施の形態〉
〈VBAPと音像を広げる処理について〉
本技術は、オーディオオブジェクトのオーディオ信号と、そのオーディオオブジェクトの位置情報などのメタデータとを取得してレンダリングを行う場合に、より高品質な音声を得ることができるようにするものである。なお、以下では、オーディオオブジェクトを、単にオブジェクトとも称することとする。
【0018】
以下では、まずVBAP、およびMPEG-H 3D Audio規格における音像を広げる処理について説明する。
【0019】
例えば、
図1に示すように、音声付の動画像や楽曲などのコンテンツを視聴するユーザU11が、3つのスピーカSP1乃至スピーカSP3から出力される3チャンネルの音声をコンテンツの音声として聴いているとする。
【0020】
このような場合に、各チャンネルの音声を出力する3つのスピーカSP1乃至スピーカSP3の位置を示す情報を用いて、位置pに音像を定位させることを考える。
【0021】
例えば、ユーザU11の頭部の位置を原点Oとする3次元座標系において、位置pを、原点Oを始点とする3次元のベクトル(以下、ベクトルpとも称する)により表すこととする。また、原点Oを始点とし、各スピーカSP1乃至スピーカSP3の位置の方向を向く3次元のベクトルをベクトルl1乃至ベクトルl3とすると、ベクトルpはベクトルl1乃至ベクトルl3の線形和によって表すことができる。
【0022】
すなわち、p=g1l1+g2l2+g3l3とすることができる。
【0023】
ここで、ベクトルl1乃至ベクトルl3に乗算されている係数g1乃至係数g3を算出し、これらの係数g1乃至係数g3を、スピーカSP1乃至スピーカSP3のそれぞれから出力する音声のゲインとすれば、位置pに音像を定位させることができる。
【0024】
このようにして、3つのスピーカSP1乃至スピーカSP3の位置情報を用いて係数g1乃至係数g3を求め、音像の定位位置を制御する手法は、3次元VBAPと呼ばれている。特に、以下では、係数g1乃至係数g3のようにスピーカごとに求められたゲインを、VBAPゲインと称することとする。
【0025】
図1の例では、スピーカSP1、スピーカSP2、およびスピーカSP3の位置を含む球面上の三角形の領域TR11内の任意の位置に音像を定位させることができる。ここで、領域TR11は、原点Oを中心とし、スピーカSP1乃至スピーカSP3の各位置を通る球の表面上の領域であって、スピーカSP1乃至スピーカSP3により囲まれる3角形の領域である。
【0026】
このような3次元VBAPを用いれば、空間上の任意の位置に音像を定位させることができるようになる。なお、VBAPについては、例えば「Ville Pulkki, “Virtual Sound Source Positioning Using Vector Base Amplitude Panning”, Journal of AES, vol.45, no.6, pp.456-466, 1997」などに詳細に記載されている。
【0027】
次に、MPEG-H 3D Audio規格での音像を広げる処理について説明する。
【0028】
MPEG-H 3D Audio規格では、符号化装置からは、各オブジェクトのオーディオ信号を符号化して得られた符号化オーディオデータと、各オブジェクトのメタデータを符号化して得られた符号化メタデータとを多重化して得られたビットストリームが出力される。
【0029】
例えば、メタデータには、オブジェクトの空間上の位置を示す位置情報、オブジェクトの重要度を示す重要度情報、およびオブジェクトの音像の広がり度合いを示す情報であるspreadが含まれている。
【0030】
ここで、音像の広がり度合いを示すspreadは、0°から180°までの任意の角度とされ、符号化装置では、各オブジェクトについて、オーディオ信号のフレームごとに異なる値のspreadを指定することが可能である。
【0031】
また、オブジェクトの位置は水平方向角度azimuth、垂直方向角度elevation、および距離radiusにより表される。すなわち、オブジェクトの位置情報は水平方向角度azimuth、垂直方向角度elevation、および距離radiusの各値からなる。
【0032】
例えば、
図2に示すように、図示せぬスピーカから出力される各オブジェクトの音声を聴いている視聴者の位置を原点Oとし、図中、右上方向、左上方向、および上方向を互いに垂直なx軸、y軸、およびz軸の方向とする3次元座標系を考える。このとき、1つのオブジェクトの位置を位置OBJ11とすると、3次元座標系における位置OBJ11に音像を定位させればよい。
【0033】
また、位置OBJ11と原点Oとを結ぶ直線を直線Lとすると、xy平面上において直線Lとx軸とがなす図中、水平方向の角度θ(方位角)が、位置OBJ11にあるオブジェクトの水平方向の位置を示す水平方向角度azimuthとなり、水平方向角度azimuthは-180°≦azimuth≦180°を満たす任意の値とされる。
【0034】
例えばx軸方向の正の方向がazimuth=0°とされ、x軸方向の負の方向がazimuth=+180°=-180°とされる。また、原点Oを中心に反時計回りの方向がazimuthの+方向とされ、原点Oを中心に時計回りの方向がazimuthの-方向とされる。
【0035】
さらに、直線Lとxy平面とがなす角度、つまり図中、垂直方向の角度γ(仰角)が、位置OBJ11にあるオブジェクトの垂直方向の位置を示す垂直方向角度elevationとなり、垂直方向角度elevationは-90°≦elevation≦90°を満たす任意の値とされる。例えばxy平面の位置がelevation=0°とされ、図中、上方向が垂直方向角度elevationの+方向とされ、図中、下方向が垂直方向角度elevationの-方向とされる。
【0036】
また、直線Lの長さ、つまり原点Oから位置OBJ11までの距離が視聴者までの距離radiusとされ、距離radiusは0以上の値とされる。すなわち、距離radiusは、0≦radius<∞を満たす値とされる。以下では、距離radiusを半径方向の距離とも称する。
【0037】
なお、VBAPでは全てのスピーカやオブジェクトから視聴者までの距離radiusが同一であり、距離radiusを1に正規化して計算を行うのが一般的な方式である。
【0038】
このようにメタデータに含まれるオブジェクトの位置情報は、水平方向角度azimuth、垂直方向角度elevation、および距離radiusの各値からなる。
【0039】
以下では、水平方向角度azimuth、垂直方向角度elevation、および距離radiusを、単にazimuth、elevation、およびradiusとも称することとする。
【0040】
また、符号化オーディオデータと符号化メタデータとが含まれるビットストリームを受信した復号装置では、符号化オーディオデータと符号化メタデータの復号が行われた後、メタデータに含まれているspreadの値に応じて、音像を広げるレンダリング処理が行われる。
【0041】
具体的には、まず復号装置は、オブジェクトのメタデータに含まれる位置情報により示される空間上の位置を位置pとする。この位置pは、上述した
図1の位置pに対応する。
【0042】
続いて、復号装置は、例えば
図3に示すように位置p=中心位置p0として、中心位置p0を中心として単位球面上で上下左右対称になるように、18個のspreadベクトルp1乃至spreadベクトルp18を配置する。なお、
図3において、
図1における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0043】
図3では、原点Oを中心とする半径1の単位球の球面上に5つのスピーカSP1乃至スピーカSP5が配置されており、位置情報により示される位置pが、中心位置p0とされている。以下では、位置pを特にオブジェクト位置pとも称し、原点Oを始点とし、オブジェクト位置pを終点とするベクトルをベクトルpとも称することとする。また、原点Oを始点とし、中心位置p0を終点とするベクトルをベクトルp0とも称することとする。
【0044】
図3では、原点Oを始点とする、点線で描かれた矢印がspreadベクトルを表している。但し、実際にはspreadベクトルは18個あるが、
図3では、図を見やすくするためspreadベクトルが8個だけ描かれている。
【0045】
ここで、spreadベクトルp1乃至spreadベクトルp18のそれぞれは、その終点位置が中心位置p0を中心とする単位球面上の円の領域R11内に位置するベクトルとなっている。特に、領域R11で表される円の円周上に終点位置があるspreadベクトルと、ベクトルp0とのなす角度がspreadにより示される角度となる。
【0046】
したがって、各spreadベクトルの終点位置は、spreadの値が大きくなるほど中心位置p0から離れた位置に配置されることになる。つまり、領域R11は大きくなる。
【0047】
この領域R11は、オブジェクトの位置からの音像の広がりを表現している。換言すれば、領域R11は、オブジェクトの音像が広がる範囲を示す領域となっている。さらにいえば、オブジェクトの音声は、オブジェクト全体から発せられると考えられるので、領域R11はオブジェクトの形状を表しているともいうことができる。以下では、領域R11のように、オブジェクトの音像が広がる範囲を示す領域を、音像の広がりを示す領域とも称することとする。
【0048】
また、spreadの値が0である場合には、18個のspreadベクトルp1乃至spreadベクトルp18のそれぞれの終点位置は、中心位置p0と等しくなる。
【0049】
なお、以下、spreadベクトルp1乃至spreadベクトルp18のそれぞれの終点位置を、特に位置p1乃至位置p18とも称することとする。
【0050】
このようにして、単位球面上において上下左右対称なspreadベクトルが定められると、復号装置は、ベクトルpと各spreadベクトルについて、つまり位置pと位置p1乃至位置p18のそれぞれとについて、VBAPにより各チャンネルのスピーカごとにVBAPゲインを算出する。このとき、位置pや位置p1など、それらの各位置に音像が定位するようにスピーカごとのVBAPゲインが算出される。
【0051】
そして、復号装置は各位置について算出したVBAPゲインをスピーカごとに加算する。例えば
図3の例では、スピーカSP1について算出された位置pおよび位置p1乃至位置p18のそれぞれのVBAPゲインが加算される。
【0052】
さらに、復号装置は、スピーカごとに求まった加算処理後のVBAPゲインを正規化する。すなわち、全スピーカのVBAPゲインの2乗和が1となるように正規化が行われる。
【0053】
そして、復号装置は、正規化により得られた各スピーカのVBAPゲインを、オブジェクトのオーディオ信号に乗算して、それらのスピーカごとのオーディオ信号とし、スピーカごとに得られたオーディオ信号をスピーカに供給して音声を出力させる。
【0054】
これにより、例えば
図3の例では、領域R11全体から音声が出力されているように音像が定位する。つまり、音像が領域R11全体に広がることになる。
【0055】
図3では、音像を広げる処理を行わない場合には、オブジェクトの音像は位置pに定位するので、この場合には、実質的にスピーカSP2とスピーカSP3から音声が出力される。これに対して、音像を広げる処理が行われた場合には、音像が領域R11全体に広がるので、音声再生時には、スピーカSP1乃至スピーカSP4から音声が出力される。
【0056】
ところで、以上のような音像を広げる処理を行う場合には、音像を広げる処理を行わない場合と比べて、レンダリング時の処理量が多くなる。そうすると、復号装置で扱えるオブジェクトの数が減ったり、ハード規模の小さいレンダラが搭載された復号装置ではレンダリングを行うことができなくなったりする場合が生じてしまう。
【0057】
そこで、レンダリング時に音像を広げる処理を行う場合には、より少ない処理量でレンダリングを行うことができるようにすることが望ましい。
【0058】
また、上述した18個のspreadベクトルは、中心位置p0=位置pを中心として、単位球面上で上下左右対称であるという制約があるため、オブジェクトの音の指向性(放射方向)やオブジェクトの形状を考慮した処理ができない。そのため、十分高品質な音声を得ることができなかった。
【0059】
さらに、MPEG-H 3D Audio規格では、レンダリング時に音像を広げる処理として、処理が1通りしか規定されていないため、レンダラのハード規模が小さい場合には、音像を広げる処理を行うことができなかった。つまり、音声の再生を行うことができなかった。
【0060】
また、MPEG-H 3D Audio規格では、レンダラのハード規模で許容される処理量内で、最大の品質の音声を得ることができるように、処理を切り替えてレンダリングを行うことができなかった。
【0061】
以上のような状況に鑑みて、本技術では、レンダリング時の処理量を削減できるようにした。また、本技術では、オブジェクトの指向性や形状を表現することで十分高品質な音声を得ることができるようにした。さらに、本技術では、レンダラのハード規模等に応じてレンダリング時の処理として適切な処理を選択し、許容される処理量の範囲で最も高い品質の音声を得ることができるようにした。
【0062】
以下、本技術の概要について説明する。
【0063】
〈処理量の削減について〉
まず、レンダリング時の処理量の削減について説明する。
【0064】
音像を広げない通常のVBAP処理(レンダリング処理)では、具体的に以下に示す処理A1乃至処理A3が行われる。
【0065】
(処理A1)
3つのスピーカについて、オーディオ信号に乗算するVBAPゲインを算出する
(処理A2)
3つのスピーカのVBAPゲインの2乗和が1となるように正規化を行う
(処理A3)
オブジェクトのオーディオ信号にVBAPゲインを乗算する
【0066】
ここで、処理A3では、3つのスピーカごとに、オーディオ信号に対するVBAPゲインの乗算処理が行われるため、このような乗算処理は最大で3回行われることになる。
【0067】
これに対して、音像を広げる処理を行う場合のVBAP処理(レンダリング処理)では、具体的に以下に示す処理B1乃至処理B5が行われる。
【0068】
(処理B1)
ベクトルpについて、3つの各スピーカのオーディオ信号に乗算するVBAPゲインを算出する
(処理B2)
18個の各spreadベクトルについて、3つの各スピーカのオーディオ信号に乗算するVBAPゲインを算出する
(処理B3)
スピーカごとに、各ベクトルについて求めたVBAPゲインを加算する
(処理B4)
全スピーカのVBAPゲインの2乗和が1となるように正規化を行う
(処理B5)
オブジェクトのオーディオ信号にVBAPゲインを乗算する
【0069】
音像を広げる処理を行った場合、音声を出力するスピーカの数は3以上となるので、処理B5では3回以上、乗算処理が行われることになる。
【0070】
したがって、音像を広げる処理を行う場合と行わない場合とを比較すると、音像を広げる処理を行う場合には、特に処理B2と処理B3の分だけ処理量が多くなり、また処理B5でも処理A3よりも処理量が多くなる。
【0071】
そこで、本技術では、スピーカごとに求められた、各ベクトルのVBAPゲインの和を量子化することにより、上述した処理B5の処理量を削減できるようにした。
【0072】
具体的には、本技術では、以下のような処理が行われる。なお、以下では、スピーカごとに求められる、ベクトルpやspreadベクトルなどの各ベクトルごとに求めたVBAPゲインの和(加算値)をVBAPゲイン加算値とも称することとする。
【0073】
まず、処理B1乃至処理B3が行われ、スピーカごとにVBAPゲイン加算値が得られると、そのVBAPゲイン加算値が2値化される。2値化では、例えば各スピーカのVBAPゲイン加算値が0または1の何れかの値とされる。
【0074】
VBAPゲイン加算値を2値化する方法は、例えば四捨五入、シーリング(切り上げ)、フロアリング(切り捨て)、閾値処理など、どのような方法であってもよい。
【0075】
このようにしてVBAPゲイン加算値が2値化されると、その後、2値化されたVBAPゲイン加算値に基づいて、上述した処理B4が行われる。そうすると、結果として、各スピーカの最終的なVBAPゲインは、0を除くと1通りとなる。すなわち、VBAPゲイン加算値を2値化すると、各スピーカの最終的なVBAPゲインの値は0か、または所定値の何れかとなる。
【0076】
例えば2値化の結果、3つのスピーカのVBAPゲイン加算値が1となり、他のスピーカのVBAPゲイン加算値が0となったとすると、それらの3つのスピーカの最終的なVBAPゲインの値は1/3(1/2)となる。
【0077】
このようにして各スピーカの最終的なVBAPゲインが得られると、その後は、上述した処理B5に代えて、処理B5’として、各スピーカのオーディオ信号に、最終的なVBAPゲインを乗算する処理が行われる。
【0078】
上述したように2値化を行うと、各スピーカの最終的なVBAPゲインの値は0か所定値かの何れかとなるので、処理B5’では1度の乗算処理を行なえばよいことになり、処理量を削減することができる。つまり、処理B5では3回以上の乗算処理を行わなければならなかったところを、処理B5’では1回の乗算処理を行うだけでよくなる。
【0079】
なお、ここではVBAPゲイン加算値を2値化する場合を例として説明したが、VBAPゲイン加算値が3値以上の値に量子化されるようにしてもよい。
【0080】
例えばVBAPゲイン加算値が3つの値のうちの何れかとされる場合、上述した処理B1乃至処理B3が行われ、スピーカごとにVBAPゲイン加算値が得られると、そのVBAPゲイン加算値が量子化され、0、0.5、または1の何れかの値とされる。そして、その後は、処理B4と処理B5’が行われる。この場合、処理B5’における乗算処理の回数は最大で2回となる。
【0081】
このように、VBAPゲイン加算値をx値化すると、つまり2以上のx個のゲインの何れかとなるように量子化すると、処理B5’における乗算処理の回数は最大で(x-1)回となる。
【0082】
なお、以上においては、音像を広げる処理を行う場合に、VBAPゲイン加算値を量子化して処理量を削減する例について説明したが、音像を広げる処理を行わない場合においても、同様にしてVBAPゲインを量子化することで、処理量を削減することができる。すなわち、ベクトルpについて求めた各スピーカのVBAPゲインを量子化すれば、正規化後のVBAPゲインのオーディオ信号への乗算処理の回数を削減することができる。
【0083】
〈オブジェクトの形状および音の指向性を表現する処理について〉
次に、本技術により、オブジェクトの形状と、オブジェクトの音の指向性を表現する処理について説明する。
【0084】
以下では、spread3次元ベクトル方式、spread中心ベクトル方式、spread端ベクトル方式、spread放射ベクトル方式、および任意spreadベクトル方式の5つの方式について説明する。
【0085】
(spread3次元ベクトル方式)
まず、spread3次元ベクトル方式について説明する。
【0086】
spread3次元ベクトル方式では、ビットストリーム内に3次元ベクトルであるspread3次元ベクトルが格納されて伝送される。ここでは、例えばオブジェクトごとの各オーディオ信号のフレームのメタデータに、spread3次元ベクトルが格納されるとする。この場合、メタデータには、音像の広がり度合いを示すspreadは格納されない。
【0087】
例えばspread3次元ベクトルは、水平方向の音像の広がり度合いを示すs3_azimuth、垂直方向の音像の広がり度合いを示すs3_elevation、および音像の半径方向の奥行きを示すs3_radiusの3つの要素からなる3次元ベクトルとされる。
【0088】
すなわち、spread3次元ベクトル=(s3_azimuth, s3_elevation, s3_radius)である。
【0089】
ここでs3_azimuthは、位置pからの水平方向、つまり上述した水平方向角度azimuthの方向への音像の広がり角度を示している。具体的には、s3_azimuthは原点Oから音像の広がりを示す領域の水平方向側の端へと向かうベクトルと、ベクトルp(ベクトルp0)とのなす角度を示している。
【0090】
同様にs3_elevationは、位置pからの垂直方向、つまり上述した垂直方向角度elevationの方向への音像の広がり角度を示している。具体的には、s3_elevationは原点Oから音像の広がりを示す領域の垂直方向側の端へと向かうベクトルと、ベクトルp(ベクトルp0)とのなす角度を示している。また、s3_radiusは、上述した距離radiusの方向、つまり単位球面の法線方向の奥行きを示している。
【0091】
なお、これらのs3_azimuth、s3_elevation、およびs3_radiusは0以上の値とされる。また、ここではspread3次元ベクトルが、オブジェクトの位置情報により示される位置pに対する相対位置を示す情報とされているが、spread3次元ベクトルは絶対位置を示す情報とされるようにしてもよい。
【0092】
spread3次元ベクトル方式では、このようなspread3次元ベクトルが用いられてレンダリングが行われる。
【0093】
具体的には、spread3次元ベクトル方式では、spread3次元ベクトルに基づいて、以下の式(1)を計算することで、spreadの値が算出される。
【0094】
【0095】
なお、式(1)においてmax(a,b)は、aとbのうち大きい値を返す関数を示している。したがって、ここではs3_azimuthとs3_elevationのうちの大きい方の値がspreadの値とされることになる。
【0096】
そして、このようにして得られたspreadの値と、メタデータに含まれている位置情報とに基づいて、MPEG-H 3D Audio規格における場合と同様に18個のspreadベクトルp1乃至spreadベクトルp18が算出される。
【0097】
したがって、メタデータに含まれている位置情報により示されるオブジェクトの位置pが中心位置p0とされ、中心位置p0を中心として単位球面上で上下左右対称になるように、18個のspreadベクトルp1乃至spreadベクトルp18が求められる。
【0098】
また、spread3次元ベクトル方式では、原点Oを始点とし、中心位置p0を終点とするベクトルp0がspreadベクトルp0とされる。
【0099】
また、各spreadベクトルは、水平方向角度azimuth、垂直方向角度elevation、および距離radiusにより表現される。以下では、特にspreadベクトルpi(但し、i=0乃至18)の水平方向角度azimuthおよび垂直方向角度elevationを、a(i)およびe(i)と表すものとする。
【0100】
このようにしてspreadベクトルp0乃至spreadベクトルp18が得られると、その後、s3_azimuthとs3_elevationの比に基づいて、それらのspreadベクトルp1乃至spreadベクトルp18が変更(補正)され、最終的なspreadベクトルとされる。
【0101】
すなわち、s3_azimuthがs3_elevationよりも大きい場合、以下の式(2)の計算が行われ、spreadベクトルp1乃至spreadベクトルp18のそれぞれのelevationであるe(i)がe’(i)へと変更される。
【0102】
【0103】
なお、spreadベクトルp0については、elevationの補正は行われない。
【0104】
これに対して、s3_azimuthがs3_elevation未満である場合、以下の式(3)の計算が行われ、spreadベクトルp1乃至spreadベクトルp18のそれぞれのazimuthであるa(i)がa’(i)へと変更される。
【0105】
【0106】
なお、spreadベクトルp0については、azimuthの補正は行われない。
【0107】
以上のようにしてs3_azimuthとs3_elevationのうちの大きい方をspreadとし、spreadベクトルを求める処理は、単位球面上における音像の広がりを示す領域を、とりあえずs3_azimuthとs3_elevationのうちの大きい方の角度により定まる半径の円として、従来と同様の処理でspreadベクトルを求める処理である。
【0108】
また、その後、s3_azimuthとs3_elevationの大小関係に応じて、式(2)や式(3)によりspreadベクトルを補正する処理は、単位球面上における音像の広がりを示す領域が、spread3次元ベクトルにより指定された本来のs3_azimuthとs3_elevationにより定まる領域となるように、音像の広がりを示す領域、つまりspreadベクトルを補正する処理である。
【0109】
したがって、結局はこれらの処理は、spread3次元ベクトル、すなわちs3_azimuthとs3_elevationに基づいて、単位球面上における円形または楕円形である音像の広がりを示す領域に対するspreadベクトルを算出する処理となる。
【0110】
このようにしてspreadベクトルが得られると、その後、spreadベクトルp0乃至spreadベクトルp18が用いられて上述した処理B2、処理B3、処理B4、および処理B5’が行われて、各スピーカに供給されるオーディオ信号が生成される。
【0111】
なお、処理B2では、spreadベクトルp0乃至spreadベクトルp18の19個の各spreadベクトルについてスピーカごとのVBAPゲインが算出される。ここで、spreadベクトルp0はベクトルpであるから、spreadベクトルp0についてVBAPゲインを算出する処理は、処理B1を行うことであるともいうことができる。また、処理B3の後、必要に応じてVBAPゲイン加算値の量子化が行われる。
【0112】
このようにspread3次元ベクトルによって、音像の広がりを示す領域を任意の形状の領域とすることで、オブジェクトの形状や、オブジェクトの音の指向性を表現することができるようになり、レンダリングによって、より高品質な音声を得ることができる。
【0113】
また、ここではs3_azimuthとs3_elevationのうちの大きい方の値がspreadの値とされる例について説明したが、s3_azimuthとs3_elevationのうちの小さい方の値がspreadの値とされるようにしてもよい。
【0114】
この場合、s3_azimuthがs3_elevationよりも大きいときには、各spreadベクトルのazimuthであるa(i)が補正され、s3_azimuthがs3_elevation未満であるときには、各spreadベクトルのelevationであるe(i)が補正される。
【0115】
さらに、ここではspreadベクトルp0乃至spreadベクトルp18、すなわち予め定められた19個のspreadベクトルを求め、それらのspreadベクトルについてVBAPゲインを算出する例について説明したが、算出されるspreadベクトルの個数を可変とするようにしてもよい。
【0116】
そのような場合、例えばs3_azimuthとs3_elevationの比に応じて、生成するspreadベクトルの個数が決定されるようにすることができる。このような処理によれば、例えばオブジェクトが横長で、オブジェクトの音の垂直方向への広がりが少ない場合に、垂直方向に並ぶspreadベクトルを省略し、各spreadベクトルが略横方向に並ぶようにすることで、水平方向への音の広がりを適切に表現することができるようになる。
【0117】
(spread中心ベクトル方式)
続いて、spread中心ベクトル方式について説明する。
【0118】
spread中心ベクトル方式では、ビットストリーム内に3次元ベクトルであるspread中心ベクトルが格納されて伝送される。ここでは、例えばオブジェクトごとの各オーディオ信号のフレームのメタデータに、spread中心ベクトルが格納されるとする。この場合、メタデータには、音像の広がり度合いを示すspreadも格納されている。
【0119】
spread中心ベクトルは、オブジェクトの音像の広がりを示す領域の中心位置p0を示すベクトルであり、例えばspread中心ベクトルは、中心位置p0の水平方向角度を示すazimuth、中心位置p0の垂直方向角度を示すelevation、および中心位置p0の半径方向の距離を示すradiusの3つの要素からなる3次元ベクトルとされる。
【0120】
すなわち、spread中心ベクトル=(azimuth,elevation,radius)である。
【0121】
レンダリング処理時には、このspread中心ベクトルにより示される位置が中心位置p0とされ、spreadベクトルとしてspreadベクトルp0乃至spreadベクトルp18が算出される。ここで、spreadベクトルp0は、例えば
図4に示すように、原点Oを始点とし、中心位置p0を終点とするベクトルp0である。なお、
図4において、
図3における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0122】
また、
図4では、点線で描かれた矢印がspreadベクトルを表しており、
図4においても図を見やすくするためspreadベクトルが9個だけ描かれている。
【0123】
図3に示した例では、位置p=中心位置p0とされていたが、
図4に示す例では、中心位置p0は、位置pとは異なる位置となっている。この例では、中心位置p0を中心とする音像の広がりを示す領域R21は、オブジェクトの位置である位置pに対して、
図3の例よりも図中、左側にずれていることが分かる。
【0124】
このように音像の広がりを示す領域の中心位置p0として、spread中心ベクトルにより任意の位置を指定することができるようにすれば、オブジェクトの音の指向性をさらに正確に表現することができるようになる。
【0125】
spread中心ベクトル方式では、spreadベクトルp0乃至spreadベクトルp18が得られると、その後、ベクトルpについて処理B1が行われ、spreadベクトルp0乃至spreadベクトルp18について処理B2が行われる。
【0126】
なお、処理B2では、19個の各spreadベクトルについてVBAPゲインが算出されるようにしてもよいし、spreadベクトルp0を除くspreadベクトルp1乃至spreadベクトルp18についてのみVBAPゲインが算出されるようにしてもよい。以下では、spreadベクトルp0についてもVBAPゲインが算出されるものとして説明を続ける。
【0127】
また、各ベクトルのVBAPゲインが算出されると、その後は処理B3、処理B4、および処理B5’が行われて、各スピーカに供給されるオーディオ信号が生成される。なお、処理B3の後、必要に応じてVBAPゲイン加算値の量子化が行われる。
【0128】
以上のようなspread中心ベクトル方式でも、レンダリングによって、十分に高品質な音声を得ることができる。
【0129】
(spread端ベクトル方式)
次に、spread端ベクトル方式について説明する。
【0130】
spread端ベクトル方式では、ビットストリーム内に5次元ベクトルであるspread端ベクトルが格納されて伝送される。ここでは、例えばオブジェクトごとの各オーディオ信号のフレームのメタデータに、spread端ベクトルが格納されるとする。この場合、メタデータには、音像の広がり度合いを示すspreadは格納されない。
【0131】
例えばspread端ベクトルは、オブジェクトの音像の広がりを示す領域を表すベクトルであり、spread端ベクトルは、spread左端azimuth、spread右端azimuth、spread上端elevation、spread下端elevation、およびspread用radiusの5つの要素なからなるベクトルである。
【0132】
ここで、spread端ベクトルを構成するspread左端azimuthおよびspread右端azimuthは、それぞれ音像の広がりを示す領域における、水平方向の左端および右端の絶対的な位置を示す水平方向角度azimuthの値を示している。換言すれば、spread左端azimuthおよびspread右端azimuthは、それぞれ音像の広がりを示す領域の中心位置p0からの左方向および右方向への音像の広がり度合いを表す角度を示している。
【0133】
また、spread上端elevationおよびspread下端elevationは、それぞれ音像の広がりを示す領域における、垂直方向の上端および下端の絶対的な位置を示す垂直方向角度elevationの値を示している。換言すれば、spread上端elevationおよびspread下端elevationは、それぞれ音像の広がりを示す領域の中心位置p0からの上方向および下方向への音像の広がり度合いを表す角度を示している。さらに、spread用radiusは、音像の半径方向の奥行きを示している。
【0134】
なお、ここではspread端ベクトルは、空間における絶対的な位置を示す情報とされているが、spread端ベクトルは、オブジェクトの位置情報により示される位置pに対する相対位置を示す情報とされるようにしてもよい。
【0135】
spread端ベクトル方式では、このようなspread端ベクトルが用いられてレンダリングが行われる。
【0136】
具体的には、spread端ベクトル方式では、spread端ベクトルに基づいて、以下の式(4)を計算することで、中心位置p0が算出される。
【0137】
【0138】
すなわち、中心位置p0を示す水平方向角度azimuthは、spread左端azimuthとspread右端azimuthの中間(平均)の角度とされ、中心位置p0を示す垂直方向角度elevationは、spread上端elevationとspread下端elevationの中間(平均)の角度とされる。また、中心位置p0を示す距離radiusは、spread用radiusとされる。
【0139】
したがって、spread端ベクトル方式では、中心位置p0は、位置情報により示されるオブジェクトの位置pとは異なる位置となることもある。
【0140】
また、spread端ベクトル方式では、次式(5)を計算することで、spreadの値が算出される。
【0141】
【0142】
なお、式(5)においてmax(a,b)は、aとbのうち大きい値を返す関数を示している。したがって、ここではspread端ベクトルにより示されるオブジェクトの音像の広がりを示す領域における、水平方向の半径に対応する角度である(spread左端azimuth-spread右端azimuth)/2と、垂直方向の半径に対応する角度である(spread上端elevation-spread下端elevation)/2とのうちの大きい方の値がspreadの値とされることになる。
【0143】
そして、このようにして得られたspreadの値と、中心位置p0(ベクトルp0)とに基づいて、MPEG-H 3D Audio規格における場合と同様に18個のspreadベクトルp1乃至spreadベクトルp18が算出される。
【0144】
したがって、中心位置p0を中心として単位球面上で上下左右対称になるように、18個のspreadベクトルp1乃至spreadベクトルp18が求められる。
【0145】
また、spread端ベクトル方式では、原点Oを始点とし、中心位置p0を終点とするベクトルp0がspreadベクトルp0とされる。
【0146】
spread端ベクトル方式においても、spread3次元ベクトル方式における場合と同様に、各spreadベクトルは、水平方向角度azimuth、垂直方向角度elevation、および距離radiusにより表現される。すなわち、spreadベクトルpi(但し、i=0乃至18)の水平方向角度azimuthおよび垂直方向角度elevationが、それぞれa(i)およびe(i)とされる。
【0147】
このようにしてspreadベクトルp0乃至spreadベクトルp18が得られると、その後、(spread左端azimuth-spread右端azimuth)と(spread上端elevation-spread下端elevation)の比に基づいて、それらのspreadベクトルp1乃至spreadベクトルp18が変更(補正)され、最終的なspreadベクトルが求められる。
【0148】
すなわち、(spread左端azimuth-spread右端azimuth)が(spread上端elevation-spread下端elevation)よりも大きい場合、以下の式(6)の計算が行われ、spreadベクトルp1乃至spreadベクトルp18のそれぞれのelevationであるe(i)がe’(i)へと変更される。
【0149】
【0150】
なお、spreadベクトルp0については、elevationの補正は行われない。
【0151】
これに対して、(spread左端azimuth-spread右端azimuth)が(spread上端elevation-spread下端elevation)未満である場合、以下の式(7)の計算が行われ、spreadベクトルp1乃至spreadベクトルp18のそれぞれのazimuthであるa(i)がa’(i)へと変更される。
【0152】
【0153】
なお、spreadベクトルp0については、azimuthの補正は行われない。
【0154】
以上において説明したspreadベクトルの算出方法は、基本的にはspread3次元ベクトル方式における場合と同様である。
【0155】
したがって、結局はこれらの処理は、spread端ベクトルに基づいて、そのspread端ベクトルにより定まる単位球面上における円形または楕円形である音像の広がりを示す領域に対するspreadベクトルを算出する処理となる。
【0156】
このようにしてspreadベクトルが得られると、その後、ベクトルpと、spreadベクトルp0乃至spreadベクトルp18とが用いられて上述した処理B1、処理B2、処理B3、処理B4、および処理B5’が行われて、各スピーカに供給されるオーディオ信号が生成される。
【0157】
なお、処理B2では、19個の各spreadベクトルについてスピーカごとのVBAPゲインが算出される。また、処理B3の後、必要に応じてVBAPゲイン加算値の量子化が行われる。
【0158】
このようにspread端ベクトルによって、音像の広がりを示す領域を、任意の位置を中心位置p0とする任意の形状の領域とすることで、オブジェクトの形状や、オブジェクトの音の指向性を表現することができるようになり、レンダリングによって、より高品質な音声を得ることができる。
【0159】
また、ここでは(spread左端azimuth-spread右端azimuth)/2と(spread上端elevation-spread下端elevation)/2のうちの大きい方の値がspreadの値とされる例について説明したが、それらのうちの小さい方の値がspreadの値とされるようにしてもよい。
【0160】
さらに、ここではspreadベクトルp0についてVBAPゲインを算出する場合を例として説明したが、spreadベクトルp0についてはVBAPゲインを算出しないようにしてもよい。以下では、spreadベクトルp0についてもVBAPゲインが算出されるものとして説明を続ける。
【0161】
また、spread3次元ベクトル方式における場合と同様に、例えば(spread左端azimuth-spread右端azimuth)と(spread上端elevation-spread下端elevation)の比に応じて、生成するspreadベクトルの個数が決定されるようにしてもよい。
【0162】
(spread放射ベクトル方式)
また、spread放射ベクトル方式について説明する。
【0163】
spread放射ベクトル方式では、ビットストリーム内に3次元ベクトルであるspread放射ベクトルが格納されて伝送される。ここでは、例えばオブジェクトごとの各オーディオ信号のフレームのメタデータに、spread放射ベクトルが格納されるとする。この場合、メタデータには、音像の広がり度合いを示すspreadも格納されている。
【0164】
spread放射ベクトルは、オブジェクトの位置pに対する、オブジェクトの音像の広がりを示す領域の中心位置p0の相対的な位置を示すベクトルである。例えばspread放射ベクトルは、位置pから見た、中心位置p0までの水平方向角度を示すazimuth、中心位置p0までの垂直方向角度を示すelevation、および中心位置p0の半径方向の距離を示すradiusの3つの要素からなる3次元ベクトルとされる。
【0165】
すなわち、spread放射ベクトル=(azimuth,elevation,radius)である。
【0166】
レンダリング処理時には、このspread放射ベクトルとベクトルpを加算して得られるベクトルにより示される位置が中心位置p0とされ、spreadベクトルとしてspreadベクトルp0乃至spreadベクトルp18が算出される。ここで、spreadベクトルp0は、例えば
図5に示すように、原点Oを始点とし、中心位置p0を終点とするベクトルp0である。なお、
図5において、
図3における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0167】
また、
図5では、点線で描かれた矢印がspreadベクトルを表しており、
図5においても図を見やすくするためspreadベクトルが9個だけ描かれている。
【0168】
図3に示した例では、位置p=中心位置p0とされていたが、
図5に示す例では、中心位置p0は、位置pとは異なる位置となっている。この例では、ベクトルpと、矢印B11により示されるspread放射ベクトルとをベクトル加算して得られるベクトルの終点位置が中心位置p0となっている。
【0169】
また、中心位置p0を中心とする音像の広がりを示す領域R31は、オブジェクトの位置である位置pに対して、
図3の例よりも図中、左側にずれていることが分かる。
【0170】
このように音像の広がりを示す領域の中心位置p0として、spread放射ベクトルと位置pを用いて任意の位置を指定することができるようにすれば、オブジェクトの音の指向性をさらに正確に表現することができるようになる。
【0171】
spread放射ベクトル方式では、spreadベクトルp0乃至spreadベクトルp18が得られると、その後、ベクトルpについて処理B1が行われ、spreadベクトルp0乃至spreadベクトルp18について処理B2が行われる。
【0172】
なお、処理B2では、19個の各spreadベクトルについてVBAPゲインが算出されるようにしてもよいし、spreadベクトルp0を除くspreadベクトルp1乃至spreadベクトルp18についてのみVBAPゲインが算出されるようにしてもよい。以下では、spreadベクトルp0についてもVBAPゲインが算出されるものとして説明を続ける。
【0173】
また、各ベクトルのVBAPゲインが算出されると、その後は処理B3、処理B4、および処理B5’が行われて、各スピーカに供給されるオーディオ信号が生成される。なお、処理B3の後、必要に応じてVBAPゲイン加算値の量子化が行われる。
【0174】
以上のようなspread放射ベクトル方式でも、レンダリングによって、十分に高品質な音声を得ることができる。
【0175】
(任意spreadベクトル方式)
次に、任意spreadベクトル方式について説明する。
【0176】
任意spreadベクトル方式では、ビットストリーム内にVBAPゲインを算出するspreadベクトルの数を示すspreadベクトル数情報と、各spreadベクトルの終点位置を示すspreadベクトル位置情報とが格納されて伝送される。ここでは、例えばオブジェクトごとの各オーディオ信号のフレームのメタデータに、spreadベクトル数情報とspreadベクトル位置情報とが格納されるとする。この場合、メタデータには、音像の広がり度合いを示すspreadは格納されない。
【0177】
レンダリング処理時には、各spreadベクトル位置情報に基づいて、原点Oを始点とし、spreadベクトル位置情報により示される位置を終点とするベクトルがspreadベクトルとして算出される。
【0178】
その後、ベクトルpについて処理B1が行われ、各spreadベクトルについて処理B2が行われる。また、各ベクトルのVBAPゲインが算出されると、その後は処理B3、処理B4、および処理B5’が行われて、各スピーカに供給されるオーディオ信号が生成される。なお、処理B3の後、必要に応じてVBAPゲイン加算値の量子化が行われる。
【0179】
以上のような任意spreadベクトル方式では、任意に音像を広げる範囲とその形状を指定することが可能であるので、レンダリングによって、十分に高品質な音声を得ることができる。
【0180】
〈処理の切り替えについて〉
本技術では、レンダラのハード規模等に応じてレンダリング時の処理として適切な処理を選択し、許容される処理量の範囲で最も高い品質の音声を得ることができるようにした。
【0181】
すなわち、本技術では、複数の処理の切り替えを可能にするため、処理を切り替えるためのインデックスがビットストリームに格納されて符号化装置から復号装置へと伝送される。すなわち、処理を切り替えるためのインデックスindexがビットストリームシンタックスに追加される。
【0182】
例えばインデックスindexの値に応じて、以下のような処理が行われる。
【0183】
すなわち、インデックスindex=0であるときには、復号装置、より詳細には復号装置内のレンダラでは、従来のMPEG-H 3D Audio規格における場合と同様のレンダリングが行われる。
【0184】
また、例えばインデックスindex=1であるときには、従来のMPEG-H 3D Audio規格における18個の各spreadベクトルを示すインデックスの組み合わせのうち、所定の組み合わせの各インデックスがビットストリームに格納されて送信される。この場合、レンダラでは、ビットストリームに格納されて伝送されてきた各インデックスにより示されるspreadベクトルについてVBAPゲインが算出される。
【0185】
さらに、例えばインデックスindex=2であるときには、処理に用いるspreadベクトルの数を示す情報と、処理に用いるspreadベクトルが、従来のMPEG-H 3D Audio規格における18個のspreadベクトルのうちのどのspreadベクトルかを示すインデックスとがビットストリームに格納されて送信される。
【0186】
また、例えばインデックスindex=3であるときには、上述した任意spreadベクトル方式でレンダリング処理が行われ、例えばインデックスindex=4であるときには、レンダリング処理において上述したVBAPゲイン加算値の2値化が行われる。さらに、例えばインデックスindex=5であるときには、上述したspread中心ベクトル方式でレンダリング処理が行われるなどとされる。
【0187】
また、符号化装置において処理を切り替えるためのインデックスindexを指定するのではなく、復号装置内のレンダラにおいて、処理が選択されるようにしてもよい。
【0188】
そのような場合、例えばオブジェクトのメタデータに含まれている重要度情報に基づいて、処理を切り替えることが考えられる。具体的には、例えば重要度情報により示される重要度が高い(所定値以上である)オブジェクトに対しては、上述したインデックスindex=0により示される処理が行われ、重要度情報により示される重要度が低い(所定値未満である)オブジェクトに対しては、上述したインデックスindex=4により示される処理が行われるなどとすることができる。
【0189】
このように、適宜、レンダリング時の処理を切り替えることで、レンダラのハード規模等に応じて、許容される処理量の範囲で最も高い品質の音声を得ることができる。
【0190】
〈音声処理装置の構成例〉
続いて、以上において説明した本技術のより具体的な実施の形態について説明する。
【0191】
図6は、本技術を適用した音声処理装置の構成例を示す図である。
【0192】
図6に示す音声処理装置11には、M個の各チャンネルに対応するスピーカ12-1乃至スピーカ12-Mが接続されている。音声処理装置11は、外部から供給されたオブジェクトのオーディオ信号とメタデータに基づいて、各チャンネルのオーディオ信号を生成し、それらのオーディオ信号をスピーカ12-1乃至スピーカ12-Mに供給して音声を再生させる。
【0193】
なお、以下、スピーカ12-1乃至スピーカ12-Mを特に区別する必要のない場合、単にスピーカ12とも称することとする。これらのスピーカ12は、供給されたオーディオ信号に基づいて音声を出力する音声出力部である。
【0194】
スピーカ12は、コンテンツ等を視聴するユーザを囲むように配置されている。例えば、各スピーカ12は、上述した単位球面上に配置されている。
【0195】
音声処理装置11は、取得部21、ベクトル算出部22、ゲイン算出部23、およびゲイン調整部24を有している。
【0196】
取得部21は、外部からオブジェクトのオーディオ信号と、各オブジェクトのオーディオ信号のフレームごとのメタデータとを取得する。例えばオーディオ信号およびメタデータは、符号化装置から出力されたビットストリームに含まれている符号化オーディオデータおよび符号化メタデータを、復号装置で復号することで得られたものである。
【0197】
取得部21は、取得したオーディオ信号をゲイン調整部24に供給するとともに、取得したメタデータをベクトル算出部22に供給する。ここで、メタデータには、例えばオブジェクトの位置を示す位置情報や、オブジェクトの重要度を示す重要度情報、オブジェクトの音像の広がり度合いを示すspreadなどが必要に応じて含まれている。
【0198】
ベクトル算出部22は、取得部21から供給されたメタデータに基づいてspreadベクトルを算出してゲイン算出部23に供給する。また、ベクトル算出部22は、必要に応じて、メタデータに含まれる位置情報により示されるオブジェクトの位置p、すなわち位置pを示すベクトルpもゲイン算出部23に供給する。
【0199】
ゲイン算出部23は、ベクトル算出部22から供給されたspreadベクトルやベクトルpに基づいて、VBAPにより各チャンネルに対応するスピーカ12のVBAPゲインを算出し、ゲイン調整部24に供給する。また、ゲイン算出部23は、各スピーカのVBAPゲインを量子化する量子化部31を備えている。
【0200】
ゲイン調整部24は、ゲイン算出部23から供給された各VBAPゲインに基づいて、取得部21から供給されたオブジェクトのオーディオ信号に対するゲイン調整を行なって、その結果得られたM個の各チャンネルのオーディオ信号をスピーカ12に供給する。
【0201】
ゲイン調整部24は、増幅部32-1乃至増幅部32-Mを備えている。増幅部32-1乃至増幅部32-Mは、取得部21から供給されたオーディオ信号に、ゲイン算出部23から供給されたVBAPゲインを乗算し、その結果得られたオーディオ信号をスピーカ12-1乃至スピーカ12-Mに供給して、音声を再生させる。
【0202】
なお、以下、増幅部32-1乃至増幅部32-Mを特に区別する必要がない場合、単に増幅部32とも称する。
【0203】
〈再生処理の説明〉
続いて、
図6に示した音声処理装置11の動作について説明する。
【0204】
音声処理装置11は、外部からオブジェクトのオーディオ信号とメタデータが供給されると、再生処理を行ってオブジェクトの音声を再生させる。
【0205】
以下、
図7のフローチャートを参照して、音声処理装置11による再生処理について説明する。なお、この再生処理は、オーディオ信号のフレームごとに行われる。
【0206】
ステップS11において、取得部21は、外部からオブジェクトの1フレーム分のオーディオ信号およびメタデータを取得して、オーディオ信号を増幅部32に供給するとともに、メタデータをベクトル算出部22に供給する。
【0207】
ステップS12において、ベクトル算出部22は、取得部21から供給されたメタデータに基づいてspreadベクトル算出処理を行い、その結果得られたspreadベクトルをゲイン算出部23に供給する。また、ベクトル算出部22は、必要に応じてベクトルpもゲイン算出部23に供給する。
【0208】
なお、spreadベクトル算出処理の詳細は、後述するが、このspreadベクトル算出処理では、上述したspread3次元ベクトル方式、spread中心ベクトル方式、spread端ベクトル方式、spread放射ベクトル方式、または任意spreadベクトル方式によりspreadベクトルが算出される。
【0209】
ステップS13において、ゲイン算出部23は、予め保持している各スピーカ12の配置位置を示す配置位置情報と、ベクトル算出部22から供給されたspreadベクトルおよびベクトルpとに基づいて、各スピーカ12のVBAPゲインを算出する。
【0210】
すなわち、spreadベクトルやベクトルpの各ベクトルについて、各スピーカ12のVBAPゲインが算出される。これにより、spreadベクトルやベクトルpといったベクトルごとに、オブジェクトの位置近傍、より詳細にはベクトルにより示される位置近傍に位置する1以上のスピーカ12のVBAPゲインが得られる。なお、spreadベクトルのVBAPゲインは必ず算出されるが、ステップS12の処理によって、ベクトル算出部22からゲイン算出部23にベクトルpが供給されなかった場合には、ベクトルpのVBAPゲインは算出されない。
【0211】
ステップS14において、ゲイン算出部23は、スピーカ12ごとに、各ベクトルについて算出したVBAPゲインを加算してVBAPゲイン加算値を算出する。すなわち、同じスピーカ12について算出された各ベクトルのVBAPゲインの加算値(総和)がVBAPゲイン加算値として算出される。
【0212】
ステップS15において、量子化部31は、VBAPゲイン加算値の2値化を行うか否かを判定する。
【0213】
例えば2値化を行うか否かは、上述したインデックスindexに基づいて判定されてもよいし、メタデータとしての重要度情報により示されるオブジェクトの重要度に基づいて判定されるようにしてもよい。
【0214】
インデックスindexに基づいて判定が行われる場合には、例えばビットストリームから読み出されたインデックスindexがゲイン算出部23に供給されるようにすればよい。また、重要度情報に基づいて判定が行われる場合には、ベクトル算出部22からゲイン算出部23に重要度情報が供給されるようにすればよい。
【0215】
ステップS15において2値化を行うと判定された場合、ステップS16において、量子化部31は、スピーカ12ごとに求められたVBAPゲインの加算値、つまりVBAPゲイン加算値を2値化して、その後、処理はステップS17へと進む。
【0216】
これに対して、ステップS15において2値化を行わないと判定された場合には、ステップS16の処理はスキップされ、処理はステップS17へと進む。
【0217】
ステップS17において、ゲイン算出部23は、全てのスピーカ12のVBAPゲインの2乗和が1となるように、各スピーカ12のVBAPゲインを正規化する。
【0218】
すなわち、スピーカ12ごとに求めたVBAPゲインの加算値について、それら全ての加算値の2乗和が1となるように正規化が行われる。ゲイン算出部23は、正規化により得られた各スピーカ12のVBAPゲインを、それらのスピーカ12に対応する増幅部32に供給する。
【0219】
ステップS18において、増幅部32は、取得部21から供給されたオーディオ信号に、ゲイン算出部23から供給されたVBAPゲインを乗算し、スピーカ12に供給する。
【0220】
そして、ステップS19において増幅部32は、供給したオーディオ信号に基づいてスピーカ12に音声を再生させて再生処理は終了する。これにより、再生空間における所望の部分空間にオブジェクトの音像が定位する。
【0221】
以上のようにして音声処理装置11は、メタデータに基づいてspreadベクトルを算出し、スピーカ12ごとに各ベクトルのVBAPゲインを算出するとともに、それらのスピーカ12ごとにVBAPゲインの加算値を求めて正規化する。このようにspreadベクトルについてVBAPゲインを算出することで、オブジェクトの音像の広がり、特にオブジェクトの形状や音の指向性を表現することができ、より高品質な音声を得ることができる。
【0222】
しかも、必要に応じてVBAPゲインの加算値を2値化することで、レンダリング時の処理量を削減することができるだけでなく、音声処理装置11の処理能力(ハード規模)に応じて適切な処理を行い、可能な限り高品質な音声を得ることができる。
【0223】
〈spreadベクトル算出処理の説明〉
ここで、
図8のフローチャートを参照して、
図7のステップS12の処理に対応するspreadベクトル算出処理について説明する。
【0224】
ステップS41において、ベクトル算出部22は、spread3次元ベクトルに基づいてspreadベクトルを算出するか否かを判定する。
【0225】
例えば、どのような方法によりspreadベクトルを算出するかは、
図7のステップS15における場合と同様に、インデックスindexに基づいて判定されてもよいし、重要度情報により示されるオブジェクトの重要度に基づいて判定されるようにしてもよい。
【0226】
ステップS41において、spread3次元ベクトルに基づいてspreadベクトルを算出すると判定された場合、つまり、spread3次元ベクトル方式によりspreadベクトルを算出すると判定された場合、処理はステップS42に進む。
【0227】
ステップS42において、ベクトル算出部22は、spread3次元ベクトルに基づくspreadベクトル算出処理を行って、得られたベクトルをゲイン算出部23に供給する。なお、spread3次元ベクトルに基づくspreadベクトル算出処理の詳細は後述する。
【0228】
spreadベクトルが算出されると、spreadベクトル算出処理は終了し、その後、処理は
図7のステップS13へと進む。
【0229】
これに対して、ステップS41においてspread3次元ベクトルに基づいてspreadベクトルを算出しないと判定された場合、処理はステップS43へと進む。
【0230】
ステップS43において、ベクトル算出部22は、spread中心ベクトルに基づいてspreadベクトルを算出するか否かを判定する。
【0231】
ステップS43において、spread中心ベクトルに基づいてspreadベクトルを算出すると判定された場合、つまり、spread中心ベクトル方式によりspreadベクトルを算出すると判定された場合、処理はステップS44に進む。
【0232】
ステップS44において、ベクトル算出部22は、spread中心ベクトルに基づくspreadベクトル算出処理を行って、得られたベクトルをゲイン算出部23に供給する。なお、spread中心ベクトルに基づくspreadベクトル算出処理の詳細は後述する。
【0233】
spreadベクトルが算出されると、spreadベクトル算出処理は終了し、その後、処理は
図7のステップS13へと進む。
【0234】
一方、ステップS43においてspread中心ベクトルに基づいてspreadベクトルを算出しないと判定された場合、処理はステップS45へと進む。
【0235】
ステップS45において、ベクトル算出部22は、spread端ベクトルに基づいてspreadベクトルを算出するか否かを判定する。
【0236】
ステップS45において、spread端ベクトルに基づいてspreadベクトルを算出すると判定された場合、つまり、spread端ベクトル方式によりspreadベクトルを算出すると判定された場合、処理はステップS46に進む。
【0237】
ステップS46において、ベクトル算出部22は、spread端ベクトルに基づくspreadベクトル算出処理を行って、得られたベクトルをゲイン算出部23に供給する。なお、spread端ベクトルに基づくspreadベクトル算出処理の詳細は後述する。
【0238】
spreadベクトルが算出されると、spreadベクトル算出処理は終了し、その後、処理は
図7のステップS13へと進む。
【0239】
また、ステップS45においてspread端ベクトルに基づいてspreadベクトルを算出しないと判定された場合、処理はステップS47へと進む。
【0240】
ステップS47において、ベクトル算出部22は、spread放射ベクトルに基づいてspreadベクトルを算出するか否かを判定する。
【0241】
ステップS47において、spread放射ベクトルに基づいてspreadベクトルを算出すると判定された場合、つまり、spread放射ベクトル方式によりspreadベクトルを算出すると判定された場合、処理はステップS48に進む。
【0242】
ステップS48において、ベクトル算出部22は、spread放射ベクトルに基づくspreadベクトル算出処理を行って、得られたベクトルをゲイン算出部23に供給する。なお、spread放射ベクトルに基づくspreadベクトル算出処理の詳細は後述する。
【0243】
spreadベクトルが算出されると、spreadベクトル算出処理は終了し、その後、処理は
図7のステップS13へと進む。
【0244】
また、ステップS47においてspread放射ベクトルに基づいてspreadベクトルを算出しないと判定された場合、つまり任意spreadベクトル方式によりspreadベクトルを算出すると判定された場合、処理はステップS49へと進む。
【0245】
ステップS49において、ベクトル算出部22は、spreadベクトル位置情報に基づくspreadベクトル算出処理を行って、得られたベクトルをゲイン算出部23に供給する。なお、spreadベクトル位置情報に基づくspreadベクトル算出処理の詳細は後述する。
【0246】
spreadベクトルが算出されると、spreadベクトル算出処理は終了し、その後、処理は
図7のステップS13へと進む。
【0247】
以上のようにして音声処理装置11は、複数の方式のうちの適切な方式によりspreadベクトルを算出する。このように適切な方式によりspreadベクトルを算出することで、レンダラのハード規模等に応じて、許容される処理量の範囲で最も高い品質の音声を得ることができる。
【0248】
〈spread3次元ベクトルに基づくspreadベクトル算出処理の説明〉
次に、
図8を参照して説明したステップS42、ステップS44、ステップS46、ステップS48、およびステップS49の各処理に対応する処理の詳細について説明する。
【0249】
まず、
図9のフローチャートを参照して、
図8のステップS42に対応するspread3次元ベクトルに基づくspreadベクトル算出処理について説明する。
【0250】
ステップS81において、ベクトル算出部22は、取得部21から供給されたメタデータに含まれる位置情報により示される位置を、オブジェクト位置pとする。すなわち、位置pを示すベクトルがベクトルpとされる。
【0251】
ステップS82において、ベクトル算出部22は、取得部21から供給されたメタデータに含まれるspread3次元ベクトルに基づいてspreadを算出する。具体的には、ベクトル算出部22は上述した式(1)を計算することで、spreadを算出する。
【0252】
ステップS83において、ベクトル算出部22は、ベクトルpとspreadに基づいて、spreadベクトルp0乃至spreadベクトルp18を算出する。
【0253】
ここでは、ベクトルpが中心位置p0を示すベクトルp0とされるとともに、ベクトルpがそのままspreadベクトルp0とされる。また、spreadベクトルp1乃至spreadベクトルp18については、MPEG-H 3D Audio規格における場合と同様に、中心位置p0を中心とする、単位球面上のspreadに示される角度により定まる領域内において、上下左右対称になるように各spreadベクトルが算出される。
【0254】
ステップS84において、ベクトル算出部22は、spread3次元ベクトルに基づいて、s3_azimuth≧s3_elevationであるか否か、すなわちs3_azimuthがs3_elevationよりも大きいか否かを判定する。
【0255】
ステップS84においてs3_azimuth≧s3_elevationであると判定された場合、ステップS85において、ベクトル算出部22は、spreadベクトルp1乃至spreadベクトルp18のelevationを変更する。すなわち、ベクトル算出部22は、上述した式(2)の計算を行って、各spreadベクトルのelevationを補正して、最終的なspreadベクトルとする。
【0256】
最終的なspreadベクトルが得られると、ベクトル算出部22は、それらのspreadベクトルp0乃至spreadベクトルp18をゲイン算出部23に供給し、spread3次元ベクトルに基づくspreadベクトル算出処理は終了する。すると、
図8のステップS42の処理が終了するので、その後、処理は
図7のステップS13へと進む。
【0257】
これに対して、ステップS84においてs3_azimuth≧s3_elevationでないと判定された場合、ステップS86において、ベクトル算出部22は、spreadベクトルp1乃至spreadベクトルp18のazimuthを変更する。すなわち、ベクトル算出部22は、上述した式(3)の計算を行って、各spreadベクトルのazimuthを補正して、最終的なspreadベクトルとする。
【0258】
最終的なspreadベクトルが得られると、ベクトル算出部22は、それらのspreadベクトルp0乃至spreadベクトルp18をゲイン算出部23に供給し、spread3次元ベクトルに基づくspreadベクトル算出処理は終了する。すると、
図8のステップS42の処理が終了するので、その後、処理は
図7のステップS13へと進む。
【0259】
以上のようにして音声処理装置11は、spread3次元ベクトル方式により各spreadベクトルを算出する。これにより、オブジェクトの形状や、オブジェクトの音の指向性を表現することができるようになり、より高品質な音声を得ることができる。
【0260】
〈spread中心ベクトルに基づくspreadベクトル算出処理の説明〉
次に、
図10のフローチャートを参照して、
図8のステップS44に対応するspread中心ベクトルに基づくspreadベクトル算出処理について説明する。
【0261】
なお、ステップS111の処理は、
図9のステップS81の処理と同様であるので、その説明は省略する。
【0262】
ステップS112において、ベクトル算出部22は、取得部21から供給されたメタデータに含まれるspread中心ベクトルとspreadに基づいて、spreadベクトルp0乃至spreadベクトルp18を算出する。
【0263】
具体的には、ベクトル算出部22は、spread中心ベクトルにより示される位置を中心位置p0とし、その中心位置p0を示すベクトルをspreadベクトルp0とする。また、ベクトル算出部22は、中心位置p0を中心とする、単位球面上のspreadに示される角度により定まる領域内において、上下左右対称になるようにspreadベクトルp1乃至spreadベクトルp18を求める。これらのspreadベクトルp1乃至spreadベクトルp18は、基本的にはMPEG-H 3D Audio規格における場合と同様にして求められる。
【0264】
ベクトル算出部22は、以上の処理により得られたベクトルpと、spreadベクトルp0乃至spreadベクトルp18とをゲイン算出部23に供給し、spread中心ベクトルに基づくspreadベクトル算出処理は終了する。すると、
図8のステップS44の処理が終了するので、その後、処理は
図7のステップS13へと進む。
【0265】
以上のようにして音声処理装置11は、spread中心ベクトル方式によりベクトルpと各spreadベクトルを算出する。これにより、オブジェクトの形状や、オブジェクトの音の指向性を表現することができるようになり、より高品質な音声を得ることができる。
【0266】
なお、spread中心ベクトルに基づくspreadベクトル算出処理では、spreadベクトルp0はゲイン算出部23に供給しないようにしてもよい。つまり、spreadベクトルp0についてはVBAPゲインを算出しないようにしてもよい。
【0267】
〈spread端ベクトルに基づくspreadベクトル算出処理の説明〉
さらに、
図11のフローチャートを参照して、
図8のステップS46に対応するspread端ベクトルに基づくspreadベクトル算出処理について説明する。
【0268】
なお、ステップS141の処理は、
図9のステップS81の処理と同様であるので、その説明は省略する。
【0269】
ステップS142において、ベクトル算出部22は、取得部21から供給されたメタデータに含まれるspread端ベクトルに基づいて中心位置p0、すなわちベクトルp0を算出する。具体的には、ベクトル算出部22は、上述した式(4)を計算することで中心位置p0を算出する。
【0270】
ステップS143において、ベクトル算出部22はspread端ベクトルに基づいてspreadを算出する。具体的には、ベクトル算出部22は上述した式(5)を計算することで、spreadを算出する。
【0271】
ステップS144において、ベクトル算出部22は、中心位置p0とspreadに基づいて、spreadベクトルp0乃至spreadベクトルp18を算出する。
【0272】
ここでは、中心位置p0を示すベクトルp0がそのままspreadベクトルp0とされる。また、spreadベクトルp1乃至spreadベクトルp18については、MPEG-H 3D Audio規格における場合と同様に、中心位置p0を中心とする、単位球面上のspreadに示される角度により定まる領域内において、上下左右対称になるように各spreadベクトルが算出される。
【0273】
ステップS145において、ベクトル算出部22は、(spread左端azimuth-spread右端azimuth)≧(spread上端elevation-spread下端elevation)であるか否か、すなわち(spread左端azimuth-spread右端azimuth)が(spread上端elevation-spread下端elevation)よりも大きいか否かを判定する。
【0274】
ステップS145において(spread左端azimuth-spread右端azimuth)≧(spread上端elevation-spread下端elevation)であると判定された場合、ステップS146において、ベクトル算出部22は、spreadベクトルp1乃至spreadベクトルp18のelevationを変更する。すなわち、ベクトル算出部22は、上述した式(6)の計算を行って、各spreadベクトルのelevationを補正して、最終的なspreadベクトルとする。
【0275】
最終的なspreadベクトルが得られると、ベクトル算出部22は、それらのspreadベクトルp0乃至spreadベクトルp18とベクトルpとをゲイン算出部23に供給し、spread端ベクトルに基づくspreadベクトル算出処理は終了する。すると、
図8のステップS46の処理が終了するので、その後、処理は
図7のステップS13へと進む。
【0276】
これに対して、ステップS145において(spread左端azimuth-spread右端azimuth)≧(spread上端elevation-spread下端elevation)でないと判定された場合、ステップS147において、ベクトル算出部22は、spreadベクトルp1乃至spreadベクトルp18のazimuthを変更する。すなわち、ベクトル算出部22は、上述した式(7)の計算を行って、各spreadベクトルのazimuthを補正して、最終的なspreadベクトルとする。
【0277】
最終的なspreadベクトルが得られると、ベクトル算出部22は、それらのspreadベクトルp0乃至spreadベクトルp18とベクトルpとをゲイン算出部23に供給し、spread端ベクトルに基づくspreadベクトル算出処理は終了する。すると、
図8のステップS46の処理が終了するので、その後、処理は
図7のステップS13へと進む。
【0278】
以上のようにして音声処理装置11は、spread端ベクトル方式により各spreadベクトルを算出する。これにより、オブジェクトの形状や、オブジェクトの音の指向性を表現することができるようになり、より高品質な音声を得ることができる。
【0279】
なお、spread端ベクトルに基づくspreadベクトル算出処理では、spreadベクトルp0はゲイン算出部23に供給しないようにしてもよい。つまり、spreadベクトルp0についてはVBAPゲインを算出しないようにしてもよい。
【0280】
〈spread放射ベクトルに基づくspreadベクトル算出処理の説明〉
次に、
図12のフローチャートを参照して、
図8のステップS48に対応するspread放射ベクトルに基づくspreadベクトル算出処理について説明する。
【0281】
なお、ステップS171の処理は、
図9のステップS81の処理と同様であるので、その説明は省略する。
【0282】
ステップS172において、ベクトル算出部22は、オブジェクト位置pと、取得部21から供給されたメタデータに含まれるspread放射ベクトルおよびspreadとに基づいて、spreadベクトルp0乃至spreadベクトルp18を算出する。
【0283】
具体的には、ベクトル算出部22は、オブジェクト位置pを示すベクトルpとspread放射ベクトルとを加算して得られるベクトルにより示される位置を中心位置p0とする。この中心位置p0を示すベクトルがベクトルp0であり、ベクトル算出部22は、ベクトルp0をそのままspreadベクトルp0とする。
【0284】
また、ベクトル算出部22は、中心位置p0を中心とする、単位球面上のspreadに示される角度により定まる領域内において、上下左右対称になるようにspreadベクトルp1乃至spreadベクトルp18を求める。これらのspreadベクトルp1乃至spreadベクトルp18は、基本的にはMPEG-H 3D Audio規格における場合と同様にして求められる。
【0285】
ベクトル算出部22は、以上の処理により得られたベクトルpと、spreadベクトルp0乃至spreadベクトルp18とをゲイン算出部23に供給し、spread放射ベクトルに基づくspreadベクトル算出処理は終了する。すると、
図8のステップS48の処理が終了するので、その後、処理は
図7のステップS13へと進む。
【0286】
以上のようにして音声処理装置11は、spread放射ベクトル方式によりベクトルpと各spreadベクトルを算出する。これにより、オブジェクトの形状や、オブジェクトの音の指向性を表現することができるようになり、より高品質な音声を得ることができる。
【0287】
なお、spread放射ベクトルに基づくspreadベクトル算出処理では、spreadベクトルp0はゲイン算出部23に供給しないようにしてもよい。つまり、spreadベクトルp0についてはVBAPゲインを算出しないようにしてもよい。
【0288】
〈spreadベクトル位置情報に基づくspreadベクトル算出処理の説明〉
次に、
図13のフローチャートを参照して、
図8のステップS49に対応するspreadベクトル位置情報に基づくspreadベクトル算出処理について説明する。
【0289】
なお、ステップS201の処理は、
図9のステップS81の処理と同様であるので、その説明は省略する。
【0290】
ステップS202において、ベクトル算出部22は、取得部21から供給されたメタデータに含まれるspreadベクトル数情報とspreadベクトル位置情報に基づいて、spreadベクトルを算出する。
【0291】
具体的には、ベクトル算出部22は、原点Oを始点とし、spreadベクトル位置情報により示される位置を終点とするベクトルをspreadベクトルとして算出する。ここでは、spreadベクトル数情報により示される数だけspreadベクトルが算出される。
【0292】
ベクトル算出部22は、以上の処理により得られたベクトルpと、spreadベクトルとをゲイン算出部23に供給し、spreadベクトル位置情報に基づくspreadベクトル算出処理は終了する。すると、
図8のステップS49の処理が終了するので、その後、処理は
図7のステップS13へと進む。
【0293】
以上のようにして音声処理装置11は、任意spreadベクトル方式によりベクトルpと各spreadベクトルを算出する。これにより、オブジェクトの形状や、オブジェクトの音の指向性を表現することができるようになり、より高品質な音声を得ることができる。
【0294】
〈第2の実施の形態〉
〈レンダリング処理の処理量削減について〉
ところで、上述したように、複数のスピーカを用いて音像の定位を制御する、すなわちレンダリング処理を行う技術としてVBAPが知られている。
【0295】
VBAPでは、3つのスピーカから音を出力することで、それらの3つのスピーカで構成される三角形の内側の任意の一点に音像を定位させることができる。以下では、特に、このような3つのスピーカで構成される三角形をメッシュと呼ぶこととする。
【0296】
VBAPによるレンダリング処理は、オブジェクトごとに行われるため、例えばゲームなど、オブジェクトの数が多い場合には、レンダリング処理の処理量が多くなってしまう。そのため、ハード規模の小さいレンダラでは、全てのオブジェクトについてレンダリングすることができず、その結果、限られた数のオブジェクトの音しか再生されないことがある。そうすると、音声再生時に臨場感や音質が損なわれてしまうことがある。
【0297】
そこで、本技術では、臨場感や音質の劣化を抑制しつつレンダリング処理の処理量を低減させることができるようにした。
【0298】
以下、このような本技術について説明する。
【0299】
通常のVBAP処理、つまりレンダリング処理では、オブジェクトごとに上述した処理A1乃至処理A3の処理が行われて、各スピーカのオーディオ信号が生成される。
【0300】
実質的にVBAPゲインが算出されるスピーカの数は3つであり、各スピーカのVBAPゲインはオーディオ信号を構成するサンプルごとに算出されるので、処理A3における乗算処理では、(オーディオ信号のサンプル数×3)回の乗算が行われることになる。
【0301】
これに対して本技術では、VBAPゲインに対する等ゲイン処理、つまりVBAPゲインの量子化処理、およびVBAPゲイン算出時に用いるメッシュ数を変更するメッシュ数切り替え処理を、適宜組み合わせて行うことでレンダリング処理の処理量を低減するようにした。
【0302】
(量子化処理)
まず、量子化処理について説明する。ここでは、量子化処理の例として、2値化処理と3値化処理について説明する。
【0303】
量子化処理として2値化処理が行われる場合、処理A1が行われた後、その処理A1により各スピーカについて得られたVBAPゲインが2値化される。2値化では、例えば各スピーカのVBAPゲインが0または1の何れかの値とされる。
【0304】
なお、VBAPゲインを2値化する方法は、例えば四捨五入、シーリング(切り上げ)、フロアリング(切り捨て)、閾値処理など、どのような方法であってもよい。
【0305】
このようにしてVBAPゲインが2値化されると、その後は処理A2および処理A3が行われて、各スピーカのオーディオ信号が生成される。
【0306】
このとき、処理A2では、2値化されたVBAPゲインに基づいて正規化が行われるので、上述したspreadベクトルの量子化時と同じように、各スピーカの最終的なVBAPゲインは、0を除くと1通りとなる。すなわち、VBAPゲインを2値化すると、各スピーカの最終的なVBAPゲインの値は0か、または所定値の何れかとなる。
【0307】
したがって、処理A3における乗算処理では、(オーディオ信号のサンプル数×1)回の乗算を行なえばよいので、レンダリング処理の処理量を大幅に削減することができる。
【0308】
同様に、処理A1後、各スピーカについて得られたVBAPゲインを3値化するようにしてもよい。そのような場合には、処理A1により各スピーカについて得られたVBAPゲインが3値化されて0、0.5、または1の何れかの値とされる。そして、その後は、処理A2および処理A3が行われて、各スピーカのオーディオ信号が生成される。
【0309】
したがって、処理A3における乗算処理での乗算回数は、最大で(オーディオ信号のサンプル数×2)回となるので、レンダリング処理の処理量を大幅に削減することができる。
【0310】
なお、ここではVBAPゲインを2値化または3値化する場合を例として説明するが、VBAPゲインを4以上の値に量子化するようにしてもよい。一般化すれば、例えばVBAPゲインを2以上のx個のゲインの何れかとなるように量子化すると、つまりVBAPゲインを量子化数xで量子化すると、処理A3における乗算処理の回数は最大で(x-1)回となる。
【0311】
以上のようにVBAPゲインを量子化することで、レンダリング処理の処理量を低減させることができる。このようにレンダリング処理の処理量が少なくなれば、オブジェクト数が多い場合であっても全てのオブジェクトのレンダリングを行うことが可能となるので、音声再生時における臨場感や音質の劣化を小さく抑えることができる。すなわち、臨場感や音質の劣化を抑制しつつレンダリング処理の処理量を低減させることができる。
【0312】
(メッシュ数切り替え処理)
次に、メッシュ数切り替え処理について説明する。
【0313】
VBAPでは、例えば
図1を参照して説明したように、処理対象のオブジェクトの音像の位置pを示すベクトルpが、3つのスピーカSP1乃至スピーカSP3の方向を向くベクトルl
1乃至ベクトルl
3の線形和で表され、それらのベクトルに乗算されている係数g
1乃至係数g
3が各スピーカのVBAPゲインとされる。
図1の例では、スピーカSP1乃至スピーカSP3により囲まれる三角形の領域TR11が1つのメッシュとなっている。
【0314】
VBAPゲインの算出時には、具体的には次式(8)によって、三角形状のメッシュの逆行列L123
-1とオブジェクトの音像の位置pから3つの係数g1乃至係数g3が計算により求められる。
【0315】
【0316】
なお、式(8)においてp
1、p
2、およびp
3は、オブジェクトの音像の位置pを示す直交座標系、すなわち
図2に示した3次元座標系上のx座標、y座標、およびz座標を示している。
【0317】
またl11、l12、およびl13は、メッシュを構成する1つ目のスピーカSP1へ向くベクトルl1をx軸、y軸、およびz軸の成分に分解した場合におけるx成分、y成分、およびz成分の値であり、1つ目のスピーカSP1のx座標、y座標、およびz座標に相当する。
【0318】
同様に、l21、l22、およびl23は、メッシュを構成する2つ目のスピーカSP2へ向くベクトルl2をx軸、y軸、およびz軸の成分に分解した場合におけるx成分、y成分、およびz成分の値である。また、l31、l32、およびl33は、メッシュを構成する3つ目のスピーカSP3へ向くベクトルl3をx軸、y軸、およびz軸の成分に分解した場合におけるx成分、y成分、およびz成分の値である。
【0319】
さらに、位置pの3次元座標系のp1、p2、およびp3から、球座標系の座標θ、γ、およびrへの変換はr=1である場合には次式(9)に示すように定義されている。ここでθ、γ、およびrは、それぞれ上述した水平方向角度azimuth、垂直方向角度elevation、および距離radiusである。
【0320】
【0321】
上述したようにコンテンツ再生側の空間、つまり再生空間では、単位球上に複数のスピーカが配置されており、それらの複数のスピーカのうちの3つのスピーカから1つのメッシュが構成される。そして、基本的には単位球の表面全体が複数のメッシュにより隙間なく覆われている。また、各メッシュは互いに重ならないように定められる。
【0322】
VBAPでは、単位球の表面上に配置されたスピーカのうち、オブジェクトの位置pを含む1つのメッシュを構成する2つまたは3つのスピーカから音声を出力すれば、音像を位置pに定位させることができるので、そのメッシュを構成するスピーカ以外のVBAPゲインは0となる。
【0323】
したがって、VBAPゲインの算出時には、オブジェクトの位置pを含む1つのメッシュを特定し、そのメッシュを構成するスピーカのVBAPゲインを算出すればよいことになる。例えば、所定のメッシュが位置pを含むメッシュであるか否かは、算出したVBAPゲインから判定することができる。
【0324】
すなわち、メッシュについて算出された3つの各スピーカのVBAPゲインが全て0以上の値であれば、そのメッシュはオブジェクトの位置pを含むメッシュである。逆に、3つの各スピーカのVBAPゲインのうちの1つでも負の値となった場合には、オブジェクトの位置pは、それらのスピーカからなるメッシュ外に位置していることになるので、算出されたVBAPゲインは正しいVBAPゲインではない。
【0325】
そこで、VBAPゲインの算出時には、各メッシュが1つずつ順番に処理対象のメッシュとして選択されていき、処理対象のメッシュについて上述した式(8)の計算が行われ、メッシュを構成する各スピーカのVBAPゲインが算出される。
【0326】
そして、それらのVBAPゲインの算出結果から、処理対象のメッシュがオブジェクトの位置pを含むメッシュであるかが判定され、位置pを含まないメッシュであると判定された場合には、次のメッシュが新たな処理対象のメッシュとされて同様の処理が行われる。
【0327】
一方、処理対象のメッシュがオブジェクトの位置pを含むメッシュであると判定された場合には、そのメッシュを構成するスピーカのVBAPゲインが、算出されたVBAPゲインとされ、それ以外の他のスピーカのVBAPゲインは0とされる。これにより、全スピーカのVBAPゲインが得られたことになる。
【0328】
このようにレンダリング処理では、VBAPゲインを算出する処理と、位置pを含むメッシュを特定する処理とが同時に行われる。
【0329】
すなわち、正しいVBAPゲインを得るために、メッシュを構成する各スピーカのVBAPゲインが全て0以上の値となるものが得られるまで、処理対象とするメッシュを選択し、そのメッシュのVBAPゲインを算出する処理が繰り返し行われる。
【0330】
したがってレンダリング処理では、単位球の表面にあるメッシュの数が多いほど、位置pを含むメッシュを特定するのに、つまり正しいVBAPゲインを得るのに必要となる処理の処理量が多くなる。
【0331】
そこで、本技術では、実際の再生環境のスピーカ全てを用いてメッシュを形成(構成)するのではなく、全スピーカのうちの一部のスピーカのみを用いてメッシュを形成するようにすることで、メッシュの総数を減らし、レンダリング処理時の処理量を低減させるようにした。すなわち、本技術では、メッシュの総数を変更するメッシュ数切り替え処理を行うようにした。
【0332】
具体的には、例えば22チャンネルのスピーカシステムでは、
図14に示すように単位球の表面上に各チャンネルのスピーカとして、スピーカSPK1乃至スピーカSPK22の合計22個のスピーカが配置される。なお、
図14において、原点Oは
図2に示した原点Oに対応するものである。
【0333】
このように単位球の表面上に22個のスピーカが配置された場合、それらの22個全てのスピーカを用いて単位球表面を覆うようにメッシュを形成すると、単位球上のメッシュの総数は40個となる。
【0334】
これに対して、例えば
図15に示すようにスピーカSPK1乃至スピーカSPK22の合計22個のスピーカのうち、スピーカSPK1、スピーカSPK6、スピーカSPK7、スピーカSPK10、スピーカSPK19、およびスピーカSPK20の合計6個のスピーカのみを用いてメッシュを形成したとする。なお、
図15において
図14における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0335】
図15の例では、22個のスピーカのうちの合計6のスピーカのみが用いられてメッシュが形成されているので、単位球上のメッシュの総数は8個となり、大幅にメッシュの総数を減らすことができる。その結果、
図15に示す例では、
図14に示した22個のスピーカ全てを用いてメッシュを形成する場合と比べて、VBAPゲインを算出する際の処理量を8/40倍とすることができ、大幅に処理量を低減させることができる。
【0336】
なお、この例においても単位球の表面全体が8個のメッシュによって、隙間なく覆われているので、単位球の表面上の任意の位置に音像を定位させることが可能である。但し、単位球表面に設けられたメッシュの総数が多いほど、各メッシュの面積は小さくなるので、メッシュ総数が多いほど、より高精度に音像の定位を制御することが可能である。
【0337】
メッシュ数切り替え処理によりメッシュ総数が変更された場合、変更後の数のメッシュを形成するのに用いるスピーカを選択するにあたっては、原点Oにいるユーザから見て垂直方向(上下方向)、つまり垂直方向角度elevationの方向の位置が異なるスピーカを選択することが望ましい。換言すれば、互いに異なる高さに位置するスピーカを含む、3以上のスピーカを用いて、変更後の数のメッシュが形成されるようにすることが望ましい。
これは、音声の立体感、つまり臨場感の劣化を抑制するためである。
【0338】
例えば
図16に示すように、単位球表面に配置された5つのスピーカSP1乃至スピーカSP5の一部または全部を用いてメッシュを形成する場合を考える。なお、
図16において
図3における場合と対応する部分には同一の符号を付してあり、その説明は省略する。
【0339】
図16に示す例において、5つのスピーカSP1乃至スピーカSP5全てを用いて、単位球表面が覆われるメッシュを形成する場合、メッシュの数は3つとなる。すなわち、スピーカSP1乃至スピーカSP3により囲まれる三角形の領域、スピーカSP2乃至スピーカSP4により囲まれる三角形の領域、並びにスピーカSP2、スピーカSP4、およびスピーカSP5により囲まれる三角形の領域の3つの各領域がメッシュとされる。
【0340】
これに対して、例えばスピーカSP1、スピーカSP2、およびスピーカSP5のみを用いるとメッシュが三角形ではなく2次元の円弧となってしまう。この場合、単位球における、スピーカSP1とスピーカSP2を結ぶ弧上、またはスピーカSP2とスピーカSP5を結ぶ弧上にしかオブジェクトの音像を定位させることができなくなる。
【0341】
このようにメッシュを形成するのに用いるスピーカを、全て垂直方向における同じ高さ、つまり同じレイヤのスピーカとすると、全オブジェクトの音像の定位位置の高さが同じ高さとなってしまうため、臨場感が劣化してしまう。
【0342】
したがって、垂直方向(鉛直方向)の位置が互いに異なるスピーカを含む3以上のスピーカを用いて1または複数のメッシュを形成し、臨場感の劣化を抑制できるようにすることが望ましい。
【0343】
図16の例では、例えばスピーカSP1乃至スピーカSP5のうち、スピーカSP1およびスピーカSP3乃至スピーカSP5を用いれば、単位球表面全体を覆うように2つのメッシュを形成することができる。この例では、スピーカSP1およびスピーカSP5と、スピーカSP3およびスピーカSP4とが互いに異なる高さに位置している。
【0344】
この場合、例えばスピーカSP1、スピーカSP3、およびスピーカSP5により囲まれる三角形の領域と、スピーカSP3乃至スピーカSP5により囲まれる三角形の領域との2つの領域がそれぞれメッシュとされる。
【0345】
その他、この例では、スピーカSP1、スピーカSP3、およびスピーカSP4により囲まれる三角形の領域と、スピーカSP1、スピーカSP4、およびスピーカSP5により囲まれる三角形の領域との2つの領域をそれぞれメッシュとすることも可能である。
【0346】
これらの2つの例では、何れの場合も単位球表面上の任意の位置に音像を定位させることができるので、臨場感の劣化を抑制することができる。また、単位球表面全体が複数のメッシュで覆われるようにメッシュを形成するには、ユーザの真上に位置する、いわゆるトップスピーカが必ず用いられるようにするとよい。例えばトップスピーカは、
図14に示したスピーカSPK19である。
【0347】
以上のようにメッシュ数切り替え処理を行ってメッシュの総数を変更することで、レンダリング処理の処理量を低減させることができ、かつ量子化処理の場合と同様に音声再生時における臨場感や音質の劣化を小さく抑えることができる。すなわち、臨場感や音質の劣化を抑制しつつレンダリング処理の処理量を低減させることができる。
【0348】
このようなメッシュ数切り替え処理を行うか否かや、メッシュ数切り替え処理でメッシュの総数をいくつとするかを選択することは、VBAPゲインを算出するのに用いるメッシュの総数を選択することであるということができる。
【0349】
(量子化処理とメッシュ数切り替え処理の組み合わせ)
また、以上においてはレンダリング処理の処理量を低減させる手法として、量子化処理とメッシュ数切り替え処理について説明した。
【0350】
レンダリング処理を行うレンダラ側では、量子化処理やメッシュ数切り替え処理として説明した各処理の何れかが固定的に用いられるようにしてもよいし、それらの処理が切り替えられたり、それらの処理が適宜組み合わせられたりしてもよい。
【0351】
例えばどのような処理を組み合わせて行うかは、オブジェクトの総数(以下、オブジェクト数と称する)や、オブジェクトのメタデータに含まれている重要度情報、オブジェクトのオーディオ信号の音圧などに基づいて定められるようにすればよい。また、処理の組み合わせ、つまり処理の切り替えは、オブジェクトごとや、オーディオ信号のフレームごとに行われるようにすることが可能である。
【0352】
例えばオブジェクト数に応じて処理の切り替えを行う場合、次のような処理を行うようにすることができる。
【0353】
例えばオブジェクト数が10以上である場合、全てのオブジェクトについて、VBAPゲインに対する2値化処理が行われるようにする。これに対して、オブジェクト数が10未満である場合、全てのオブジェクトについて、従来通り上述した処理A1乃至処理A3のみが行われるようにする。
【0354】
このように、オブジェクト数が少ないときには従来通りの処理を行い、オブジェクト数が多いときには2値化処理を行うようにすることで、ハード規模が小さいレンダラでも十分にレンダリングを行うことができ、かつ可能な限り品質の高い音声を得ることができる。
【0355】
また、オブジェクト数に応じて処理の切り替えを行う場合、オブジェクト数に応じてメッシュ数切り替え処理を行い、メッシュの総数を適切に変更するようにしてもよい。
【0356】
この場合、例えばオブジェクト数が10以上であればメッシュの総数を8個とし、オブジェクト数が10未満であればメッシュの総数を40個とするなどとすることができる。また、オブジェクト数が多いほどメッシュの総数が少なくなるように、オブジェクト数に応じて多段階にメッシュの総数が変更されるようにしてもよい。
【0357】
このようにオブジェクト数に応じてメッシュの総数を変更することで、レンダラのハード規模に応じて処理量を調整し、可能な限り品質の高い音声を得ることができる。
【0358】
また、オブジェクトのメタデータに含まれる重要度情報に基づいて、処理の切り替えが行われる場合、次のような処理を行うようにすることができる。
【0359】
例えばオブジェクトの重要度情報が最も高い重要度を示す最高値である場合には、従来通り処理A1乃至処理A3のみが行われるようにし、オブジェクトの重要度情報が最高値以外の値である場合には、VBAPゲインに対する2値化処理が行われるようにする。
【0360】
その他、例えばオブジェクトの重要度情報の値に応じてメッシュ数切り替え処理を行い、メッシュの総数を適切に変更するようにしてもよい。この場合、オブジェクトの重要度が高いほど、メッシュの総数が多くなるようにすればよく、多段階にメッシュの総数が変更されるようにすることができる。
【0361】
これらの例では、各オブジェクトの重要度情報に基づいて、オブジェクトごとに処理を切り替えることができる。ここで説明した処理では、重要度の高いオブジェクトについては音質が高くなるようにし、また重要度の低いオブジェクトについては音質を低くして処理量を低減させるようにすることができる。したがって、様々な重要度のオブジェクトの音声を同時に再生する場合に、最も聴感上の音質劣化を抑えて処理量を少なくすることができ、音質の確保と処理量削減のバランスがとれた手法であるということができる。
【0362】
このように、オブジェクトの重要度情報に基づいてオブジェクトごとに処理の切り替えを行う場合、重要度の高いオブジェクトほどメッシュの総数が多くなるようにしたり、オブジェクトの重要度が高いときには量子化処理を行わないようにしたりすることができる。
【0363】
さらに、これに加えて重要度の低いオブジェクト、つまり重要度情報の値が所定値未満であるオブジェクトについても、重要度の高い、つまり重要度情報の値が所定値以上であるオブジェクトに近い位置にあるオブジェクトほど、メッシュの総数が多くなるようにしたり、量子化処理を行わないようにしたりするなどしてもよい。
【0364】
具体的には、重要度情報が最高値であるオブジェクトについてはメッシュの総数が40個となるようにされ、重要度情報が最高値ではないオブジェクトについては、メッシュの総数が少なくなるようにされるとする。
【0365】
この場合、重要度情報が最高値ではないオブジェクトについては、そのオブジェクトと、重要度情報が最高値であるオブジェクトとの距離が短いほど、メッシュの総数が多くなるようにすればよい。通常、ユーザは重要度の高いオブジェクトの音を特に注意して聞くため、そのオブジェクトの近くにある他のオブジェクトの音の音質が低いと、ユーザはコンテンツ全体の音質がよくないように感じてしまう。そこで、重要度の高いオブジェクトに近い位置にあるオブジェクトについても、なるべくよい音質となるようにメッシュの総数を定めることで、聴感上の音質の劣化を抑制することができる。
【0366】
さらに、オブジェクトのオーディオ信号の音圧に応じて処理を切り替えるようにしてもよい。ここで、オーディオ信号の音圧は、オーディオ信号のレンダリング対象となるフレーム内の各サンプルのサンプル値の2乗平均値の平方根を計算することで求めることができる。すなわち、音圧RMSは次式(10)の計算により求めることができる。
【0367】
【0368】
なお、式(10)においてNはオーディオ信号のフレームを構成するサンプルの数を示しており、xnはフレーム内のn番目(但し、n=0,…,N-1)のサンプルのサンプル値を示している。
【0369】
このようにして得られるオーディオ信号の音圧RMSに応じて処理を切り替える場合、次のような処理を行うようにすることができる。
【0370】
例えば音圧RMSのフルスケールである0dBに対して、オブジェクトのオーディオ信号の音圧RMSが-6dB以上である場合には、従来通り処理A1乃至処理A3のみが行われるようにし、オブジェクトの音圧RMSが-6dB未満である場合には、VBAPゲインに対する2値化処理が行われるようにする。
【0371】
一般的に、音圧が大きい音声は音質の劣化が目立ちやすく、また、そのような音声は重要度の高いオブジェクトの音声であることが多い。そこで、ここでは音圧RMSの大きい音声のオブジェクトについては音質が劣化しないようにし、音圧RMSの小さい音声のオブジェクトについて2値化処理を行い、全体として処理量を削減するようにした。これにより、ハード規模が小さいレンダラでも十分にレンダリングを行うことができ、かつ可能な限り品質の高い音声を得ることができる。
【0372】
また、オブジェクトのオーディオ信号の音圧RMSに応じてメッシュ数切り替え処理を行い、メッシュの総数を適切に変更するようにしてもよい。この場合、例えば音圧RMSが大きいオブジェクトほど、メッシュの総数が多くなるようにすればよく、多段階にメッシュの総数が変更されるようにすることができる。
【0373】
さらに、オブジェクト数、重要度情報、および音圧RMSに応じて、量子化処理やメッシュ数切り替え処理の組み合わせを選択するようにしてもよい。
【0374】
すなわち、オブジェクト数、重要度情報、および音圧RMSに基づいて、量子化処理を行うか否か、量子化処理においてVBAPゲインをいくつのゲインに量子化するか、つまり量子化処理時における量子化数、およびVBAPゲインの算出に用いるメッシュの総数を選択し、その選択結果に応じた処理によりVBAPゲインを算出してもよい。そのような場合、例えば次のような処理を行うようにすることができる。
【0375】
例えばオブジェクト数が10以上である場合、全てのオブジェクトについて、メッシュの総数が10個となるようにし、さらに2値化処理が行われるようにする。この場合、オブジェクト数が多いので、メッシュの総数を少なくするとともに2値化処理を行うようにすることで処理量を低減させる。これにより、レンダラのハード規模が小さい場合でも全てのオブジェクトのレンダリングを行うことができるようになる。
【0376】
また、オブジェクト数が10未満であり、かつ重要度情報の値が最高値である場合には、従来通り処理A1乃至処理A3のみが行われるようにする。これにより、重要度の高いオブジェクトについては音質を劣化させることなく音声を再生することができる。
【0377】
オブジェクト数が10未満であり、かつ重要度情報の値が最高値でなく、かつ音圧RMSが-30dB以上である場合には、メッシュの総数が10個となるようにし、さらに3値化処理が行われるようにする。これにより、重要度は低いが音圧が大きい音声について、音声の音質劣化が目立たない程度にレンダリング処理時の処理量を低減させることができる。
【0378】
さらに、オブジェクト数が10未満であり、かつ重要度情報の値が最高値でなく、かつ音圧RMSが-30dB未満である場合には、メッシュの総数が5個となるようにし、さらに2値化処理が行われるようにする。これにより、重要度が低く音圧も小さい音声について、レンダリング処理時の処理量を十分に低減させることができる。
【0379】
このようにオブジェクト数が多いときにはレンダリング処理の処理量を少なくして全オブジェクトのレンダリングを行えるようにし、オブジェクト数がある程度少ない場合には、オブジェクトごとに適切な処理を選択し、レンダリングを行うようにする。これにより、オブジェクトごとに音質の確保と処理量削減のバランスをとりながら、全体として少ない処理量で十分な音質で音声を再生することができる。
【0380】
〈音声処理装置の構成例〉
次に、以上において説明した量子化処理やメッシュ数切り替え処理などを、適宜行いながらレンダリング処理を行う音声処理装置について説明する。
図17は、そのような音声処理装置の具体的な構成例を示す図である。なお、
図17において
図6における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0381】
図17に示す音声処理装置61は、取得部21、ゲイン算出部23、およびゲイン調整部71を有している。ゲイン算出部23は、取得部21からオブジェクトのメタデータとオーディオ信号の供給を受けて、各オブジェクトについてスピーカ12ごとのVBAPゲインを算出し、ゲイン調整部71に供給する。
【0382】
また、ゲイン算出部23は、VBAPゲインの量子化を行う量子化部31備えている。
【0383】
ゲイン調整部71は、各オブジェクトについて、ゲイン算出部23から供給されたスピーカ12ごとのVBAPゲインを、取得部21から供給されたオーディオ信号に乗算することで、スピーカ12ごとのオーディオ信号を生成し、スピーカ12に供給する。
【0384】
〈再生処理の説明〉
続いて、
図17に示した音声処理装置61の動作について説明する。すなわち、
図18のフローチャートを参照して、音声処理装置61による再生処理について説明する。
【0385】
なお、この例では、取得部21には、1または複数のオブジェクトについて、オブジェクトのオーディオ信号とメタデータがフレームごとに供給され、再生処理は、各オブジェクトについてオーディオ信号のフレームごとに行われるものとする。
【0386】
ステップS231において、取得部21は外部からオブジェクトのオーディオ信号およびメタデータを取得し、オーディオ信号をゲイン算出部23およびゲイン調整部71に供給するとともに、メタデータをゲイン算出部23に供給する。また、取得部21は、処理対象となっているフレームで同時に音声を再生するオブジェクトの数、つまりオブジェクト数を示す情報も取得してゲイン算出部23に供給する。
【0387】
ステップS232において、ゲイン算出部23は、取得部21から供給されたオブジェクト数を示す情報に基づいて、オブジェクト数が10以上であるか否かを判定する。
【0388】
ステップS232においてオブジェクト数が10以上であると判定された場合、ステップS233において、ゲイン算出部23は、VBAPゲイン算出時に用いるメッシュの総数を10とする。すなわち、ゲイン算出部23は、メッシュの総数として10を選択する。
【0389】
また、ゲイン算出部23は、選択したメッシュの総数に応じて、その総数だけ単位球表面上にメッシュが形成されるように、全スピーカ12のなかから、所定個数のスピーカ12を選択する。そして、ゲイン算出部23は、選択したスピーカ12から形成される単位球表面上の10個のメッシュを、VBAPゲイン算出時に用いるメッシュとする。
【0390】
ステップS234において、ゲイン算出部23は、ステップS233において定められた10個のメッシュを構成する各スピーカ12の配置位置を示す配置位置情報と、取得部21から供給されたメタデータに含まれる、オブジェクトの位置を示す位置情報とに基づいて、VBAPにより各スピーカ12のVBAPゲインを算出する。
【0391】
具体的には、ゲイン算出部23は、ステップS233において定められたメッシュを順番に処理対象のメッシュとして式(8)の計算を行っていくことで、各スピーカ12のVBAPゲインを算出する。このとき、上述したように、処理対象のメッシュを構成する3つのスピーカ12について算出されたVBAPゲインが全て0以上の値となるまで、新たなメッシュが処理対象のメッシュとされ、VBAPゲインが算出されていく。
【0392】
ステップS235において、量子化部31は、ステップS234で得られた各スピーカ12のVBAPゲインを2値化して、その後、処理はステップS246へと進む。
【0393】
また、ステップS232においてオブジェクト数が10未満であると判定された場合、処理はステップS236に進む。
【0394】
ステップS236において、ゲイン算出部23は、取得部21から供給されたメタデータに含まれるオブジェクトの重要度情報の値が最高値であるか否かを判定する。例えば重要度情報の値が、最も重要度が高いことを示す数値「7」である場合、重要度情報が最高値であると判定される。
【0395】
ステップS236において重要度情報が最高値であると判定された場合、処理はステップS237へと進む。
【0396】
ステップS237において、ゲイン算出部23は、各スピーカ12の配置位置を示す配置位置情報と、取得部21から供給されたメタデータに含まれる位置情報とに基づいて、各スピーカ12のVBAPゲインを算出し、その後、処理はステップS246へと進む。ここでは、全てのスピーカ12から形成されるメッシュが順番に処理対象のメッシュとされていき、式(8)の計算によりVBAPゲインが算出される。
【0397】
これに対して、ステップS236において重要度情報が最高値でないと判定された場合、ステップS238において、ゲイン算出部23は、取得部21から供給されたオーディオ信号の音圧RMSを算出する。具体的には、処理対象となっているオーディオ信号のフレームについて、上述した式(10)の計算が行われ、音圧RMSが算出される。
【0398】
ステップS239において、ゲイン算出部23は、ステップS238で算出した音圧RMSが-30dB以上であるか否かを判定する。
【0399】
ステップS239において、音圧RMSが-30dB以上であると判定された場合、その後、ステップS240およびステップS241の処理が行われる。なお、これらのステップS240およびステップS241の処理は、ステップS233およびステップS234の処理と同様であるので、その説明は省略する。
【0400】
ステップS242において、量子化部31は、ステップS241で得られた各スピーカ12のVBAPゲインを3値化して、その後、処理はステップS246へと進む。
【0401】
また、ステップS239において音圧RMSが-30dB未満であると判定された場合、処理はステップS243へと進む。
【0402】
ステップS243において、ゲイン算出部23は、VBAPゲイン算出時に用いるメッシュの総数を5とする。
【0403】
また、ゲイン算出部23は、選択したメッシュの総数「5」に応じて、全スピーカ12のなかから、所定個数のスピーカ12を選択し、選択したスピーカ12から形成される単位球表面上の5個のメッシュを、VBAPゲイン算出時に用いるメッシュとする。
【0404】
VBAPゲイン算出時に用いるメッシュが定められると、その後、ステップS244およびステップS245の処理が行われて処理はステップS246へと進む。なお、これらのステップS244およびステップS245の処理は、ステップS234およびステップS235の処理と同様であるので、その説明は省略する。
【0405】
ステップS235、ステップS237、ステップS242、またはステップS245の処理が行われて、各スピーカ12のVBAPゲインが得られると、その後、ステップS246乃至ステップS248の処理が行われて再生処理は終了する。
【0406】
なお、これらのステップS246乃至ステップS248の処理は、
図7を参照して説明したステップS17乃至ステップS19の処理と同様であるので、その説明は省略する。
【0407】
但し、より詳細には、再生処理は各オブジェクトについて略同時に行われ、ステップS248では、オブジェクトごとに得られた各スピーカ12のオーディオ信号が、それらのスピーカ12に供給される。すなわち、スピーカ12では、各オブジェクトのオーディオ信号を加算して得られた信号に基づいて音声が再生される。その結果、全オブジェクトの音声が同時に出力されることになる。
【0408】
以上のようにして音声処理装置61は、オブジェクトごとに、適宜、量子化処理やメッシュ数切り替え処理を選択的に行う。このようにすることで、臨場感や音質の劣化を抑制しつつレンダリング処理の処理量を低減させることができる。
【0409】
〈第2の実施の形態の変形例1〉
〈音声処理装置の構成例〉
また、第2の実施の形態では、音像を広げる処理を行わない場合に量子化処理やメッシュ数切り替え処理を選択的に行う例について説明したが、音像を広げる処理を行う場合にも量子化処理やメッシュ数切り替え処理を選択的に行うようにしてもよい。
【0410】
そのような場合、音声処理装置11は、例えば
図19に示すように構成される。なお、
図19において、
図6または
図17における場合と対応する部分には同一の符号を付してあり、その説明は適宜省略する。
【0411】
図19に示す音声処理装置11は、取得部21、ベクトル算出部22、ゲイン算出部23、およびゲイン調整部71を有している。
【0412】
取得部21は、1または複数のオブジェクトについて、オブジェクトのオーディオ信号とメタデータを取得し、取得したオーディオ信号をゲイン算出部23およびゲイン調整部71に供給するとともに、取得したメタデータをベクトル算出部22およびゲイン算出部23に供給する。また、ゲイン算出部23は、量子化部31を備えている。
【0413】
〈再生処理の説明〉
次に、
図20のフローチャートを参照して、
図19に示した音声処理装置11により行われる再生処理について説明する。
【0414】
なお、この例では、取得部21には、1または複数のオブジェクトについて、オブジェクトのオーディオ信号とメタデータがフレームごとに供給され、再生処理は、各オブジェクトについてオーディオ信号のフレームごとに行われるものとする。
【0415】
また、ステップS271およびステップS272の処理は
図7のステップS11およびステップS12の処理と同様であるので、その説明は省略する。但し、ステップS271では、取得部21により取得されたオーディオ信号はゲイン算出部23およびゲイン調整部71に供給され、取得部21により取得されたメタデータは、ベクトル算出部22およびゲイン算出部23に供給される。
【0416】
これらのステップS271およびステップS272の処理が行われると、spreadベクトル、またはspreadベクトルおよびベクトルpが得られる。
【0417】
ステップS273において、ゲイン算出部23は、VBAPゲイン算出処理を行ってスピーカ12ごとにVBAPゲインを算出する。なお、VBAPゲイン算出処理の詳細については後述するが、VBAPゲイン算出処理では、適宜、量子化処理やメッシュ数切り替え処理が選択的に行われ、各スピーカ12のVBAPゲインが算出される。
【0418】
ステップS273の処理が行われて各スピーカ12のVBAPゲインが得られると、その後、ステップS274乃至ステップS276の処理が行われて再生処理は終了するが、これらの処理は、
図7のステップS17乃至ステップS19の処理と同様であるので、その説明は省略する。但し、より詳細には、再生処理は各オブジェクトについて略同時に行われ、ステップS276では、オブジェクトごとに得られた各スピーカ12のオーディオ信号が、それらのスピーカ12に供給される。そのため、スピーカ12では、全オブジェクトの音声が同時に出力されることになる。
【0419】
以上のようにして音声処理装置11は、オブジェクトごとに、適宜、量子化処理やメッシュ数切り替え処理を選択的に行う。このようにすることで、音像を広げる処理を行う場合においても、臨場感や音質の劣化を抑制しつつレンダリング処理の処理量を低減させることができる。
【0420】
〈VBAPゲイン算出処理の説明〉
続いて、
図21のフローチャートを参照して、
図20のステップS273の処理に対応するVBAPゲイン算出処理について説明する。
【0421】
なお、ステップS301乃至ステップS303の処理は、
図18のステップS232乃至ステップS234の処理と同様であるので、その説明は省略する。但し、ステップS303では、spreadベクトル、またはspreadベクトルおよびベクトルpの各ベクトルについて、スピーカ12ごとにVBAPゲインが算出される。
【0422】
ステップS304において、ゲイン算出部23は、スピーカ12ごとに、各ベクトルについて算出したVBAPゲインを加算して、VBAPゲイン加算値を算出する。ステップS304では、
図7のステップS14と同様の処理が行われる。
【0423】
ステップS305において、量子化部31は、ステップS304の処理によりスピーカ12ごとに得られたVBAPゲイン加算値を2値化してVBAPゲイン算出処理は終了し、その後、処理は
図20のステップS274へと進む。
【0424】
また、ステップS301においてオブジェクト数が10未満であると判定された場合、ステップS306およびステップS307の処理が行われる。
【0425】
なお、これらのステップS306およびステップS307の処理は、
図18のステップS236およびステップS237の処理と同様であるので、その説明は省略する。但し、ステップS307では、spreadベクトル、またはspreadベクトルおよびベクトルpの各ベクトルについて、スピーカ12ごとにVBAPゲインが算出される。
【0426】
また、ステップS307の処理が行われると、ステップS308の処理が行われてVBAPゲイン算出処理は終了し、その後、処理は
図20のステップS274へと進むが、ステップS308の処理はステップS304の処理と同様であるので、その説明は省略する。
【0427】
さらに、ステップS306において、重要度情報が最高値でないと判定された場合、その後、ステップS309乃至ステップS312の処理が行われるが、これらの処理は
図18のステップS238乃至ステップS241の処理と同様であるので、その説明は省略する。但し、ステップS312では、spreadベクトル、またはspreadベクトルおよびベクトルpの各ベクトルについて、スピーカ12ごとにVBAPゲインが算出される。
【0428】
このようにして、各ベクトルについてスピーカ12ごとのVBAPゲインが得られると、ステップS313の処理が行われてVBAPゲイン加算値が算出されるが、ステップS313の処理はステップS304の処理と同様であるので、その説明は省略する。
【0429】
ステップS314において、量子化部31は、ステップS313の処理によりスピーカ12ごとに得られたVBAPゲイン加算値を3値化してVBAPゲイン算出処理は終了し、その後、処理は
図20のステップS274へと進む。
【0430】
さらに、ステップS310において音圧RMSが-30dB未満であると判定された場合、ステップS315の処理が行われてVBAPゲイン算出時に用いるメッシュの総数が5とされる。なお、ステップS315の処理は、
図18のステップS243の処理と同様であるので、その説明は省略する。
【0431】
VBAPゲイン算出時に用いるメッシュが定められると、ステップS316乃至ステップS318の処理が行われてVBAPゲイン算出処理は終了し、その後、処理は
図20のステップS274へと進む。なお、これらのステップS316乃至ステップS318の処理は、ステップS303乃至ステップS305の処理と同様であるので、その説明は省略する。
【0432】
以上のようにして音声処理装置11は、オブジェクトごとに、適宜、量子化処理やメッシュ数切り替え処理を選択的に行う。このようにすることで、音像を広げる処理を行う場合においても、臨場感や音質の劣化を抑制しつつレンダリング処理の処理量を低減させることができる。
【0433】
ところで、上述した一連の処理は、ハードウェアにより実行することもできるし、ソフトウェアにより実行することもできる。一連の処理をソフトウェアにより実行する場合には、そのソフトウェアを構成するプログラムが、コンピュータにインストールされる。ここで、コンピュータには、専用のハードウェアに組み込まれているコンピュータや、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどが含まれる。
【0434】
図22は、上述した一連の処理をプログラムにより実行するコンピュータのハードウェアの構成例を示すブロック図である。
【0435】
コンピュータにおいて、CPU(Central Processing Unit)501,ROM(Read Only Memory)502,RAM(Random Access Memory)503は、バス504により相互に接続されている。
【0436】
バス504には、さらに、入出力インターフェース505が接続されている。入出力インターフェース505には、入力部506、出力部507、記録部508、通信部509、及びドライブ510が接続されている。
【0437】
入力部506は、キーボード、マウス、マイクロホン、撮像素子などよりなる。出力部507は、ディスプレイ、スピーカなどよりなる。記録部508は、ハードディスクや不揮発性のメモリなどよりなる。通信部509は、ネットワークインターフェースなどよりなる。ドライブ510は、磁気ディスク、光ディスク、光磁気ディスク、又は半導体メモリなどのリムーバブル記録媒体511を駆動する。
【0438】
以上のように構成されるコンピュータでは、CPU501が、例えば、記録部508に記録されているプログラムを、入出力インターフェース505及びバス504を介して、RAM503にロードして実行することにより、上述した一連の処理が行われる。
【0439】
コンピュータ(CPU501)が実行するプログラムは、例えば、パッケージメディア等としてのリムーバブル記録媒体511に記録して提供することができる。また、プログラムは、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の伝送媒体を介して提供することができる。
【0440】
コンピュータでは、プログラムは、リムーバブル記録媒体511をドライブ510に装着することにより、入出力インターフェース505を介して、記録部508にインストールすることができる。また、プログラムは、有線または無線の伝送媒体を介して、通信部509で受信し、記録部508にインストールすることができる。その他、プログラムは、ROM502や記録部508に、あらかじめインストールしておくことができる。
【0441】
なお、コンピュータが実行するプログラムは、本明細書で説明する順序に沿って時系列に処理が行われるプログラムであっても良いし、並列に、あるいは呼び出しが行われたとき等の必要なタイミングで処理が行われるプログラムであっても良い。
【0442】
また、本技術の実施の形態は、上述した実施の形態に限定されるものではなく、本技術の要旨を逸脱しない範囲において種々の変更が可能である。
【0443】
例えば、本技術は、1つの機能をネットワークを介して複数の装置で分担、共同して処理するクラウドコンピューティングの構成をとることができる。
【0444】
また、上述のフローチャートで説明した各ステップは、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0445】
さらに、1つのステップに複数の処理が含まれる場合には、その1つのステップに含まれる複数の処理は、1つの装置で実行する他、複数の装置で分担して実行することができる。
【0446】
さらに、本技術は、以下の構成とすることも可能である。
【0447】
(1)
オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得する取得部と、
前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出するベクトル算出部と、
前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出するゲイン算出部と
を備える音声処理装置。
(2)
前記ベクトル算出部は、前記水平方向角度と前記垂直方向角度の比に基づいて、前記spreadベクトルを算出する
(1)に記載の音声処理装置。
(3)
前記ベクトル算出部は、予め定められた個数の前記spreadベクトルを算出する
(1)または(2)に記載の音声処理装置。
(4)
前記ベクトル算出部は、可変である任意の個数の前記spreadベクトルを算出する
(1)または(2)に記載の音声処理装置。
(5)
前記音像情報は、前記領域の中心位置を示すベクトルである
(1)に記載の音声処理装置。
(6)
前記音像情報は、前記領域の中心からの音像の広がり度合いを示す2次元以上のベクトルである
(1)に記載の音声処理装置。
(7)
前記音像情報は、前記位置情報により示される位置から見た前記領域の中心位置の相対的な位置を示すベクトルである
(1)に記載の音声処理装置。
(8)
前記ゲイン算出部は、
各前記音声出力部について、前記spreadベクトルごとに前記ゲインを算出し、
前記音声出力部ごとに、各前記spreadベクトルについて算出した前記ゲインの加算値を算出し、
前記音声出力部ごとに、前記加算値を2値以上のゲインに量子化し、
前記量子化された前記加算値に基づいて、前記音声出力部ごとに最終的な前記ゲインを算出する
(1)乃至(7)の何れか一項に記載の音声処理装置。
(9)
前記ゲイン算出部は、3つの前記音声出力部により囲まれる領域であるメッシュであって、前記ゲインの算出に用いるメッシュの数を選択し、前記メッシュの数の選択結果と前記spreadベクトルとに基づいて、前記spreadベクトルごとに前記ゲインを算出する
(8)に記載の音声処理装置。
(10)
前記ゲイン算出部は、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化時における前記加算値の量子化数を選択し、その選択結果に応じて前記最終的な前記ゲインを算出する
(9)に記載の音声処理装置。
(11)
前記ゲイン算出部は、前記オーディオオブジェクトの数に基づいて、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化数を選択する
(10)に記載の音声処理装置。
(12)
前記ゲイン算出部は、前記オーディオオブジェクトの重要度に基づいて、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化数を選択する
(10)または(11)に記載の音声処理装置。
(13)
前記ゲイン算出部は、前記重要度の高い前記オーディオオブジェクトに近い位置にある前記オーディオオブジェクトほど、前記ゲインの算出に用いる前記メッシュの数が多くなるように、前記ゲインの算出に用いる前記メッシュの数を選択する
(12)に記載の音声処理装置。
(14)
前記ゲイン算出部は、前記オーディオオブジェクトのオーディオ信号の音圧に基づいて、前記ゲインの算出に用いる前記メッシュの数、前記量子化を行うか否か、および前記量子化数を選択する
(10)乃至(13)の何れか一項に記載の音声処理装置。
(15)
前記ゲイン算出部は、前記メッシュの数の選択結果に応じて、複数の前記音声出力部のうち、互いに異なる高さに位置する前記音声出力部を含む3以上の前記音声出力部を選択し、選択した前記音声出力部から形成される1または複数の前記メッシュに基づいて前記ゲインを算出する
(9)乃至(14)の何れか一項に記載の音声処理装置。
(16)
オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得し、
前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出し、
前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出する
ステップを含む音声処理方法。
(17)
オーディオオブジェクトの位置を示す位置情報と、少なくとも2次元以上のベクトルからなる、前記位置からの音像の広がりを表す音像情報とを含むメタデータを取得し、
前記音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度に基づいて、前記領域内の位置を示すspreadベクトルを算出し、
前記spreadベクトルに基づいて、前記位置情報により示される前記位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを算出する
ステップを含む処理をコンピュータに実行させるプログラム。
(18)
オーディオオブジェクトの位置を示す位置情報を含むメタデータを取得する取得部と、
3つの音声出力部により囲まれる領域であるメッシュであって、前記音声出力部に供給されるオーディオ信号のゲインの算出に用いるメッシュの数を選択し、前記メッシュの数の選択結果と前記位置情報とに基づいて、前記ゲインを算出するゲイン算出部と
を備える音声処理装置。
【符号の説明】
【0448】
11 音声処理装置, 21 取得部, 22 ベクトル算出部, 23 ゲイン算出部, 24 ゲイン調整部, 31 量子化部, 61 音声処理装置, 71 ゲイン調整部
【手続補正書】
【提出日】2024-01-11
【手続補正1】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項1】
オーディオオブジェクトのオーディオ信号と、前記オーディオオブジェクトのメタデータを取得する取得部と、
音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度の比に基づいて、各々が前記領域内の位置を示す複数のspreadベクトルを算出するベクトル算出部と、
前記複数の前記spreadベクトルの少なくとも1つに基づいて、位置情報により示される位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを3次元VBAPを用いて算出するゲイン算出部と
を備え、
前記メタデータは、前記オーディオオブジェクトの位置を示す極座標で表された前記位置情報と、少なくとも2次元以上のベクトルからなる、前記位置情報により示される位置からの音像の広がりを表す前記音像情報とを含み、
前記複数の前記spreadベクトルの個数は、前記音像の広がりによらず、予め定められた個数とされる
音声処理装置。
【請求項2】
音声処理装置が、
オーディオオブジェクトのオーディオ信号と、前記オーディオオブジェクトのメタデータを取得し、
音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度の比に基づいて、各々が前記領域内の位置を示す複数のspreadベクトルを算出し、
前記複数の前記spreadベクトルの少なくとも1つに基づいて、位置情報により示される位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを3次元VBAPを用いて算出する
ステップを含み、
前記メタデータは、前記オーディオオブジェクトの位置を示す極座標で表された前記位置情報と、少なくとも2次元以上のベクトルからなる、前記位置情報により示される位置からの音像の広がりを表す前記音像情報とを含み、
前記複数の前記spreadベクトルの個数は、前記音像の広がりによらず、予め定められた個数とされる
音声処理方法。
【請求項3】
オーディオオブジェクトのオーディオ信号と、前記オーディオオブジェクトのメタデータを取得し、
音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度の比に基づいて、各々が前記領域内の位置を示す複数のspreadベクトルを算出し、
前記複数の前記spreadベクトルの少なくとも1つに基づいて、位置情報により示される位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを3次元VBAPを用いて算出する
ステップを含む処理をコンピュータに実行させ、
前記メタデータは、前記オーディオオブジェクトの位置を示す極座標で表された前記位置情報と、少なくとも2次元以上のベクトルからなる、前記位置情報により示される位置からの音像の広がりを表す前記音像情報とを含み、
前記複数の前記spreadベクトルの個数は、前記音像の広がりによらず、予め定められた個数とされる
プログラム。
【手続補正2】
【補正対象書類名】明細書
【補正対象項目名】0010
【補正方法】変更
【補正の内容】
【0010】
本技術の一側面の音声処理装置は、オーディオオブジェクトのオーディオ信号と、前記オーディオオブジェクトのメタデータを取得する取得部と、音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度の比に基づいて、各々が前記領域内の位置を示す複数のspreadベクトルを算出するベクトル算出部と、前記複数の前記spreadベクトルの少なくとも1つに基づいて、位置情報により示される位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを3次元VBAPを用いて算出するゲイン算出部とを備え、前記メタデータは、前記オーディオオブジェクトの位置を示す極座標で表された前記位置情報と、少なくとも2次元以上のベクトルからなる、前記位置情報により示される位置からの音像の広がりを表す前記音像情報とを含み、前記複数の前記spreadベクトルの個数は、前記音像の広がりによらず、予め定められた個数とされる。
【手続補正3】
【補正対象書類名】明細書
【補正対象項目名】0011
【補正方法】変更
【補正の内容】
【0011】
本技術の一側面の音声処理方法またはプログラムは、オーディオオブジェクトのオーディオ信号と、前記オーディオオブジェクトのメタデータを取得し、音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度の比に基づいて、各々が前記領域内の位置を示す複数のspreadベクトルを算出し、前記複数の前記spreadベクトルの少なくとも1つに基づいて、位置情報により示される位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインを3次元VBAPを用いて算出するステップを含み、前記メタデータは、前記オーディオオブジェクトの位置を示す極座標で表された前記位置情報と、少なくとも2次元以上のベクトルからなる、前記位置情報により示される位置からの音像の広がりを表す前記音像情報とを含み、前記複数の前記spreadベクトルの個数は、前記音像の広がりによらず、予め定められた個数とされる。
【手続補正4】
【補正対象書類名】明細書
【補正対象項目名】0012
【補正方法】変更
【補正の内容】
【0012】
本技術の一側面においては、オーディオオブジェクトのオーディオ信号と、前記オーディオオブジェクトのメタデータが取得され、音像情報により定まる音像の広がりを表す領域に関する水平方向角度および垂直方向角度の比に基づいて、各々が前記領域内の位置を示す複数のspreadベクトルが算出され、前記複数の前記spreadベクトルの少なくとも1つに基づいて、位置情報により示される位置近傍に位置する2以上の音声出力部に供給されるオーディオ信号のそれぞれのゲインが3次元VBAPが用いられて算出される。また、前記メタデータは、前記オーディオオブジェクトの位置を示す極座標で表された前記位置情報と、少なくとも2次元以上のベクトルからなる、前記位置情報により示される位置からの音像の広がりを表す前記音像情報とを含み、前記複数の前記spreadベクトルの個数は、前記音像の広がりによらず、予め定められた個数とされる。