(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2023-04-10
(45)【発行日】2023-04-18
(54)【発明の名称】情報処理装置、これを用いたミキシング装置、及びレイテンシ減少方法
(51)【国際特許分類】
H04R 3/00 20060101AFI20230411BHJP
【FI】
H04R3/00
(21)【出願番号】P 2020514119
(86)(22)【出願日】2019-04-11
(86)【国際出願番号】 JP2019015837
(87)【国際公開番号】W WO2019203127
(87)【国際公開日】2019-10-24
【審査請求日】2022-02-09
(31)【優先権主張番号】P 2018080670
(32)【優先日】2018-04-19
(33)【優先権主張国・地域又は機関】JP
(73)【特許権者】
【識別番号】504133110
【氏名又は名称】国立大学法人電気通信大学
(73)【特許権者】
【識別番号】595026911
【氏名又は名称】ヒビノ株式会社
(74)【代理人】
【識別番号】100107766
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【氏名又は名称】伊東 忠彦
(72)【発明者】
【氏名】高橋 弘太
(72)【発明者】
【氏名】宮本 宰
(72)【発明者】
【氏名】小野 良行
(72)【発明者】
【氏名】阿部 洋司
【審査官】堀 洋介
(56)【参考文献】
【文献】特開2015-118361(JP,A)
【文献】特開2010-081505(JP,A)
【文献】特開2016-134706(JP,A)
【文献】特開2013-051589(JP,A)
【文献】米国特許第06587816(US,B1)
(58)【調査した分野】(Int.Cl.,DB名)
H04R 3/00- 3/14
(57)【特許請求の範囲】
【請求項1】
入力信号に対して、第1の幅を有する窓関数を用いて時間周波数変換を行う第1の時間周波数変換部と、
前記入力信号に対して、前記第1の幅よりも狭い第2の幅を有する第2の窓関数を用いて時間周波数変換を行う第2の時間周波数変換部と、
前記第1の時間周波数変換部の出力に基づく周波数解析結果を用いて、前記第2の時間周波数変換部の出力に変更を加える変更処理部と、
を有することを特徴とする情報処理装置。
【請求項2】
前記第1の時間周波数変換部の周波数ビン数と、前記第2の時間周波数変換部の周波数ビン数は同じであることを特徴とする請求項1に記載の情報処理装置。
【請求項3】
前記第2の時間周波数変換部の周波数ビン数は、前記第1の時間周波数変換部の周波数ビン数よりも少ないことを特徴とする請求項1に記載の情報処理装置。
【請求項4】
前記第2の窓関数は非対称の窓関数であることを特徴とする請求項1~3のいずれか1項に記載の情報処理装置。
【請求項5】
ある時刻における前記周波数解析結果は、前記ある時刻よりも後の時刻に得られる前記第2の時間周波数変換部の前記出力を変更することを特徴とする請求項1~4のいずれか1項に記載の情報処理装置。
【請求項6】
請求項1~
5のいずれか1項の情報処理装置を用いたミキシング装置。
【請求項7】
情報処理装置において、
入力信号に、第1の幅を有する第1の窓関数を用いて第1の時間周波数変換を実施し、
前記入力信号に対して、前記第1の幅よりも狭い第2の幅を有する第2の窓関数を用いて第2の時間周波数変換を実施し、
前記第1の時間周波数変換に基づく周波数解析結果を用いて、前記第2の時間周波数変換を受けた変換後の入力信号を変更する、
ことを特徴とするレイテンシ減少方法。
【発明の詳細な説明】
【技術分野】
【0001】
本発明は、情報処理装置とこれを用いたミキシング装置、及びレイテンシ減少方法に関し、特に、周波数解析におけるレイテンシの低減技術に関する。
【背景技術】
【0002】
スマートミキサーは、入力信号を解析し、解析結果に基づいて入力信号に変更または調整を加えて、好ましいミキシング出力を得る。優先音と非優先音を時間周波数平面上で混合することにより、非優先音の音量感を保ったまま、優先音の明瞭度をあげることができる(たとえば特許文献1、及び特許文献2参照)。
【0003】
図1は、従来のスマートミキサーの概略図である。優先音の入力信号x
1[n]と、非優先音の入力信号x
2[n]に、それぞれに窓関数をかけて短時間のFFT(Fast Fourier Transform:高速フーリエ変換)を行うことで、時間周波数平面上の信号X
1[i,k]と、X
2[i,k]に展開する。時間周波数平面の各点(i,k)で、優先音と非優先音のそれぞれのパワーを算出して、時間方向に平滑化する。優先音及び非優先音の平滑化パワーE
1[i,k]とE
2[i,k]に基づいて、時間周波数平面上に展開された優先音のゲインα
1[i,k]と、非優先音のゲインα
2[i,k]を導出する。この一連の解析で得られたゲインα
1[i,k]とα
2[i,k]を、時間周波数平面上の信号X
1[i,k]とX
2[i,k]にそれぞれ乗算し、乗算結果を加算して混合信号Y[i,k]を得る。混合信号Y[i,k]は、時間領域の信号に復元されて、出力される。
【0004】
ゲインの導出には、「対数強度の和の原理」と、「穴埋めの原理」という2つの基本原理が用いられている。「対数強度の和の原理」とは、出力信号の対数強度を入力信号の対数強度の和を超えない範囲に制限するものである。「対数強度の和の原理」によって、優先音が強調されすぎて混合音に違和感が生じることを抑制する。「穴埋めの原理」とは、非優先音のパワーの減少を、優先音のパワー増加分を超えない範囲に制限するものである。「穴埋めの原理」によって、混合音において非優先音が抑制されすぎて違和感が生じることを抑制する。これらの原理に基づいて合理的にゲインを決定することで、より自然な混合音が出力される。
【先行技術文献】
【特許文献】
【0005】
【文献】特許第5057535号
【文献】特開第2016-134706号公報
【発明の概要】
【発明が解決しようとする課題】
【0006】
スマートミキサーで必要とされる解析を十分に行うと、ミキシング処理のレイテンシが20msを超える場合がある。これに対し、ミキシングの現場で要求されるレイテンシは20ms未満であり、5ms以下が望ましいと言われている。
【0007】
例えば、コンサート会場でミュージシャンがPA(Public Address;音響拡声)装置のスピーカから音を聴き取ることを仮定する。このとき、電気音響系のシステムにおいてマイクからスピーカまでのレイテンシが大きいと、演奏に支障がでることが知られている。
【0008】
このレイテンシを具体的に何ミリ秒以下に抑える必要があるかに関しては、音の知覚に関する個人差が大きく、明確な客観的基準は確立されていない。一般的に、レイテンシが20msを超えると多くの場合に違和感を感じること、15ms以下であれば違和感を感じない場合もあることが、おおよその共通の認識である。一方で、演奏者が装着するイヤモニタについては、数ms以下が求められるという説もある。
【0009】
このような一般的な認識によると、スマートミキサーでの20msを超えるレイテンシは、コンサート会場やレコーディングスタジオでのミキシング基準からすると、大き過ぎる。
【0010】
本発明は、周波数解析を含む情報処理系で、信号入力から出力までのレイテンシを低減することを目的とする。また、レイテンシ低減技術を適用したミキシング装置を提供することを目的とする。
【課題を解決するための手段】
【0011】
本発明の第1の態様では、情報処理装置は、
入力信号に対して、第1の幅を有する窓関数を用いて時間周波数変換を行う第1の時間周波数変換部と、
前記入力信号に対して、前記第1の幅よりも狭い第2の幅を有する第2の窓関数を用いて時間周波数変換を行う第2の時間周波数変換部と、
前記第1の時間周波数変換部の出力に基づく周波数解析結果を用いて、前記第2の時間周波数変換部の出力に変更を加える変更処理部と、
を有する。
【0012】
本発明の第2の態様では、情報処理装置は、
入力信号を時間周波数変換する時間周波数変換部と、
前記入力信号に変更を加えるデジタルフィルタと、
前記時間周波数変換部の出力に基づいて周波数解析を行う周波数解析部と、
前記周波数解析の結果を周波数時間変換して時間領域解析結果を出力する周波数時間変換部と、
前記時間領域解析結果を短縮化する短縮化部と、
を有し、
短縮化された前記時間領域解析結果を前記デジタルフィルタに適用して、前記入力信号を変更する。
【発明の効果】
【0013】
上記の構成により、周波数解析を含む情報処理系で、レイテンシを低減することができる。レイテンシの低減により、情報解析またはミキシング処理をリアルタイムで行うことができる。
【図面の簡単な説明】
【0014】
【
図2】第1実施形態のレイテンシ減少の手法と構成を示す図である。
【
図3】解析用窓関数h[n]と、変更用窓関数g[n]と、入力波形の関係を示す。
【
図4】変更用の窓関数として非対称な窓関数を用いる例を示す図である。
【
図5】第2実施形態のレイテンシ減少の手法と構成を示す図である。
【
図6】第3実施形態のレイテンシ減少の手法と構成を示す図である。
【
図7】FIRフィルタ係数切り詰めによるレイテンシ減少の原理を説明する図である。
【発明を実施するための形態】
【0015】
発明者らは、信号処理の各ブロックでレイテンシが発生し、最終的なレイテンシは各ブロックのレイテンシの総和になること、及び、スマートミキサーの場合は特定のブロックでのレイテンシが支配的になることを見いだした。
【0016】
スマートミキサーは、優先音の入力信号x1[n]と非優先音の入力信号x2[n]に、窓関数をかけた短時間のFFTを行って、時間周波数平面上の信号Xj[i,k](j=1,2)に展開して解析する。この時間周波数平面への展開は、式(1)で表現される。
【0017】
【数1】
時間周波数平面での解析結果に基づいて、X
j[i,k](j=1,2)を変更または調整することで、優先音の明瞭度を上げたミキシングが行われる。
【0018】
式(1)におけるh[m]は窓関数である。h[m]は、|m|≧Nhにおいてゼロ(0)をとる関数であり、以下ではNhを窓関数の幅(より正確には半分の幅)と呼ぶ。なお、Ndはフレームのシフト数、NFはFFTの点数である。また、同一の処理を複数のNhで書きうる場合には、その最小値をもって窓関数の幅Nhとすることにする。
【0019】
窓関数h[m]の乗算がXj[i,k]に与える影響を最小限にするために、多くの場合は、h[m]は、第一にh[0]で最大値をとり、第二にm=0を中心とした対称形(すなわちh[-m]=h[m])の関数が選ばれる。
【0020】
以下では、短時間FFTを1サンプルシフト、すなわちNd=1で行うものとする。この場合、iをnで置き換えることができる。また、時間周波数平面の出力Y[i,k]を時間領域の出力に戻す際に、逆FFTの代わりに、式(2)の簡単な計算で変換することができる。
【0021】
【数2】
スマートミキサーの処理のレイテンシについて検討する。
図1のブロックのそれぞれがレイテンシを持つ。すわわち、スマートミキサーの処理では、
(a)窓関数をかけて短時間FFTを行うレイテンシ、
(b)パワー算出のレイテンシ、
(c)時間方向平滑化のレイテンシ、
(d)ゲイン算出のレイテンシ、
(e)ゲイン乗算のレイテンシ、
(f)加算のレイテンシ、及び
(g)時間領域信号に変換するときのレイテンシ、
の和が最終的なレイテンシとなる。
【0022】
レイテンシの要素(a)は、式(1)の処理で生じるレイテンシである。式(1)は、xj[]の(Nh-1)サンプル未来の値を使っているため、実装上は、(Nh-1)/FS秒のレイテンシが発生する。ここで、FSはサンプリング周波数である。
【0023】
レイテンシの大きさを具体的に計算してみる。音声の高調波成分を明確に分離するためには、FS=48kHzのとき、Nh(窓関数の幅)として1024程度が必要である。その結果、(Nh-1)/FS=1023/48=21.3msのレイテンシが発生する。
【0024】
要素(b)~(f)のレイテンシについては、スマートミキサーをFPGA(Field Programmable Gate Array)などのロジックデバイスに実装した場合には、要素(a)のレイテンシに比べると、無視できるほどに小さい。また、要素(g)のレイテンシは、式(2)のレイテンシであり、これも要素(a)のレイテンシに比べると無視できるほど小さい。
【0025】
以上から、要素(a)の窓関数をかけた短時間FFTのレイテンシが全体のレイテンシを支配しており、十分な性能を持ったスマートミキサーでは、レイテンシの大きさは21.3ms程度となる。
【0026】
このように大きいレイテンシを持つスマートミキサーは、コンサートホールでのリアルタイムのミキシング処理には不向きである。そこで、レイテンシを小さくする技術が求められる。
【0027】
上述のように、レイテンシは主として時間領域の信号を時間周波数領域の信号に変換する部分で生じており、レイテンシの大きさは窓関数の幅Nhが支配している。
【0028】
レイテンシを下げるために窓関数の幅Nhを小さくすると、解析の周波数分解能が落ちてしまい、本来ならば周波数差があるために強調や抑制を行わなくてもよい時間周波数平面上の点(i,k)にも処理負荷がかかってしまう。
【0029】
また、時間周波数平面での処理をより人間の聴覚に適合する処理とするために、線形周波数軸からBark軸に変換することが考えられるが、この場合にNhを小さくすると、Bark軸に変換したときに低い周波数部分のスペクトルを上手く表現できなくなる。Bark軸は、人間の聴覚の24の臨界帯域に対応する尺度を用いており、低い周波数帯で高い周波数分解能が求められるからである。
【0030】
このような検討に基づくと、入力信号の周波数解析のためには、なるべく幅の広い(すなわちレイテンシが大きくなる)窓を使って、高い周波数分解能で解析を行うことが必要である。
【0031】
一方で、時間周波数領域の入力データ(Xj[i,k])は、一連の解析処理に用いられるだけでなく、導出されたゲインマスクを乗算して出力データを構築するための材料としても用いられる。すなわち、データの変更のためにも使用される。
【0032】
変更・調整を受ける時間周波数領域のデータに何が求められるのかを考える。スマートミキサーの場合、出力に人工的なノイズが乗っているように知覚されることを防止するため、最終的なゲインマスクは、周波数軸方向にも時間軸方向にも滑らかなものが作成される。周波数方向へのゲインの変化が滑らかであることから、データまたは入力信号の変更には高い周波数分解能は特に必要ではない。また、ゲインの変化は時間軸方向にも滑らかであることから、ゲインマスクを時間軸方向に若干ずらしても、ゲインマスクの効果自体にはそれほど影響しない。
【0033】
ただし、システム全体のレイテンシはもっぱら、データ変更に先立つ時間周波数領域への変換で決定されており、この部分でできるだけレイテンシを小さくすることが求められる。
【0034】
このように、入力信号の解析のための時間周波数変換と、データに変更を加えるための時間周波数変換とでは、求められる仕様が異なる。
【0035】
この知見に基づき、本発明では、信号解析と信号変更で異なる処理を適用する。以下で具体的な手法を説明する。
【0036】
<第1実施形態>
図2は、第1実施形態のレイテンシ減少の手法と構成を示す図である。
図2のレイテンシの低減を含む信号処理の技術は、たとえば、優先音と非優先音を混合するミキシング装置1Aに適用することができる。
【0037】
第1実施形態では、信号解析のための時間周波数変換部と、信号変更のための時間周波数変換部を別々に設け、それぞれに異なるレイテンシの窓関数を適用する。ある時刻に対応する信号解析の結果を、それより未来の信号変換に用いることで、高分解能の周波数解析と、低レイテンシの信号変換を両立させる。
【0038】
図2において、優先音の入力信号x
1[n]と非優先音の入力信号x
2[n]のそれぞれに対して、解析用のウィンドウと変更用のウィンドウを別々に設け、異なるレイテンシを設定する。
【0039】
優先音の入力信号x1[i,k]を時間周波数領域の信号に変換するために、変更用のFFT11aと、解析用のFFT12aを設ける。入力信号x1[n]は、変更用のFFT11aによって時間周波数平面上の信号入力信号Z1[i,k]に変換され、ゲイン乗算のために乗算器16aに入力される。入力信号x1[n]はまた、解析用のFFT12aによって時間周波数平面上の信号X1[i,k]に変換される。信号X1[i,k]は、パワー算出部13a、時間方向平滑化部14a、ゲイン導出部19の各ブロックで解析処理を受ける。
【0040】
非優先音の入力信号x2[n]についても、時間周波数領域の信号に変換するために、変更用のFFT11bと、解析用のFFT12bを設ける。入力信号x2[n]は、変更用のFFT11bによって時間周波数平面上の信号入力信号Z2[i,k]に変換されて、ゲイン乗算のために乗算器16bに入力される。入力信号x2[n]はまた、解析用のFFT12bによって時間周波数平面上の信号X2[i,k]に変換される。信号X2[i,k]は、パワー算出部13b、時間方向平滑化部14b、ゲイン導出部19の各ブロックで処理を受ける。
【0041】
ゲイン導出部19は、優先音の時間方向の平滑化パワーE1[i,k]と、非優先音の時間方向の平滑化パワーE2[i,k]に基づいて、信号X1[i,k]に乗算されるゲインα1[i,k]と、信号X2[i,k]に乗算されるゲインα2[i,k]を算出する。
【0042】
乗算器16aで、信号X1[i,k]にゲインα1[i,k]が乗算され、乗算器16bで信号X2[i,k]にゲインα2[i,k]が乗算される。乗算結果は加算器17で合算され、時間領域変換部18で時間領域の信号に復元されて出力される。
【0043】
優先音に対する処理と、非優先音に対する処理は同じであるため、以下の説明では、入力信号をxjとして記載する。また、変更用のFFT11aとFFT11bを適宜「FFT11」と総称し、解析用のFFT12aとFFT12bを、適宜「FFT12」と総称する。
【0044】
入力信号xjは、FFT12において、解析用の窓関数h[]を使って、上記の式(1)でXj[n,k]に変換される。式(1)をサンプルシフトNd=1として書き直すと、式(3)のようになる。
【0045】
【数3】
これと同時に、入力信号x
jは、FFT11において、変更用の窓関数g[]を使って、式(4)によりZ
j[n,k]に変換される。
【0046】
【数4】
ここで、g[m]は、m≦-N
gL、及びm≧N
gHにおいてゼロ(0)をとる窓関数である。
【0047】
式(3)と式(4)は、同じ点数(NF)のFFTで処理される。一方、式(3)と式(4)は、窓幅が異なるので、レイテンシに差異がある。具体的には、式(3)はNh-1サンプル未来の信号を必要とするので、レイテンシは(Nh-1)/FSであり、式(4)は、NgH-1サンプル未来の信号を必要とするので、レイテンシは(NgH-1)/FSである。
【0048】
FFT11から乗算器16までのパスでは、レイテンシを短くして時間を短縮し、FFT12から乗算器16までのパスでは、レイテンシを長くして周波数分解能を高く維持する。
【0049】
図3は、解析用窓関数h[m]と、変更用窓関数g[m]と、入力波形の関係を示す。今、入力信号がA点まで観測されているとする。このとき、解析用の窓関数h[m]は、最新のデータを窓の右端(A点)に置く位置に配置される。この窓関数を使ったFFTは、中心、すなわち式(3)でm=0が適用される位置を、B点におくことになる。すなわち、このFFTによりB点での解析結果を生成したことになる。これにより、A点とB点の時間間隔に相当するレイテンシが生じる。
【0050】
一方、変更用の窓関数g[]も、最新のデータを窓の右端に置く位置に配置されるので、この窓関数を使ったFFTは、中心をC点に置くことになる。この場合、A点とC点の時間間隔に相当するレイテンシが生じる。
【0051】
図3の設定では、解析用の窓関数h[]のレイテンシは1023であり、変更用の窓関数g[]のレイテンシは255である。
【0052】
この時点での解析結果は、B点のものまでが得られている。しかし、変更用の周波数領域のデータ自体は、C点のものまでが得られている。ある時刻で行う変更処理が同じ時刻の解析結果を用いなければならないのであれば、解析がC点に進むまで変更の処理操作を待てばよい。しかし、それではレイテンシが1023となってしまい、レイテンシの小さな変更用の窓関数g[]を用いた意味がなくなる。
【0053】
そこで、あえて、時間的にズレのあるデータを用いる。すなわち、C点での変更処理にB点での解析結果を流用する。逆に言うと、入力信号に変更を加える処理を行う際に、それよりも前に得られている周波数解析結果を用いる。周波数解析で用いられる主要データは、入力信号のサークルIの部分であり、これを基にゲインマスクを生成し、そのゲインマスクを使って、サークルII付近のデータの変更を行うことになる。スマートミキサーの場合は、ゲインマスクは時間軸方向に緩やかに変化するので、時間的にズレたデータを流用しても出力に対する影響は軽微である。
【0054】
図4は、変更用の窓関数として非対称な窓関数を用いる例を示す。変更用の窓関数として、非対称の窓関数を用いることができる。上段が解析用の窓関数h[]、中段が非対称の変更用の窓関数g[]、下段は、非対称の変更用の窓関数の別の例である。
【0055】
非対称の変更用の窓関数g[]で、C点の位置(式(2)で復元される位置)をどこにするかは、窓関数のm=0の位置として決めることができる。これは、窓関数の値が0でない範囲であれば、窓関数内の任意の位置におくことができる。
【0056】
変更用の窓関数g[]に非対称な窓関数を使うことで、レイテンシを保ったまま(たとえば窓関数の幅NgH=256)、窓関数の実効長を伸ばすことができるので、変更用の時間周波数変換の周波数分解能をある程度上げることができる。対称形の窓関数と比較して、過去のデータに重きをおいた周波数領域への変換になるが、レイテンシ自体は対称形の窓関数と同じである。
【0057】
第1実施形態の手法と構成は、解析用と変更用で異なるレイテンシの窓関数を用いつつ同じ点数のFFTで処理する。ゲインマスクの周波数ビン数と、変更用に時間周波数変換されたデータの周波数ビン数は同一であり、乗算器16a、16bは、従来通りの処理をそのまま行えばよい。
【0058】
第1実施形態の手法を発明者らが実施したところ、レイテンシを約5msに抑えることができた。また、レイテンシ減少処理を行ったときの出力の音質は、レイテンシを減少させていないスマートミキサーと聴感的にほぼ同一に維持できることが確認された。
【0059】
<第2実施形態>
図5は、第2実施形態のレイテンシ減少の手法と構成を示す図である。
図5のレイテンシの低減を含む信号処理の技術は、たとえば、優先音と非優先音を混合するミキシング装置1Bに適用することができる。
【0060】
第1実施形態では、変更用のFFT11と解析用のFFT12で、同じ点数の処理を行っていた。しかし、N
gL+N
gH<2N
hの場合は、変更用の時間周波数変換は、より少ない点数のFFTで処理することができる。たとえば、
図3の場合であれば、変更用のFFTは512点のFFTで十分である。
【0061】
そこで、第2実施形態では、変更用のFFT11と解析用のFFT12で、異なるFFTを用いる。この場合、ゲインマスクの乗算器16で、ゲインマスクと、乗算されるデータZの間に、ビン数の齟齬が起こるため、ゲインマスクのビン数を、データのビン数に揃える処理が必要になる。
【0062】
具体的には、ゲイン導出部19の後段に、周波数軸の変換部15aと15bを挿入し、ゲインαj[i,k]の変数k(周波数ビン番号)をkからk'に変換したゲインγj[i,k']を生成し、ゲインγj[i,k']をデータZj[i,k']に乗算する。
【0063】
第2実施形態の構成では、レイテンシを低減し、かつ変更用のデータでFFTの負荷を低減しつつ、ゲイン乗算による優先音の強調と非優先音の抑制を実現することができる。
【0064】
<第3実施形態>
図6は、第3実施形態のレイテンシ減少の手法と構成を示す図である。
図6のレイテンシの低減を含む信号処理の技術は、たとえば、優先音と非優先音を混合するミキシング装置1Cに適用することができる。ミキシング装置1Cにおいて、第1実施形態及び第2実施形態と同じ構成要素には同じ符号を付けて、重複する説明を省略する。
【0065】
スマートミキシングの本質は、入力信号にゲインα1[i,k]とα2[i,k]を乗算することにある。第1実施形態と第2実施形態では、ゲインの乗算処理を、時間周波数領域に変換した後にゲインマスクを乗算し、その後時間領域に復元していた。
【0066】
第1実施形態及び第2実施形態と結果的に同等の処理を、別の方法で実現することができる。例えば、ゲインマスクの乗算と等価なFIR(Finite Impulse Response:有限インパルス応答)フィルタを構成し,このFIRフィルタで信号の変更を行うことができる。
【0067】
ミキシング装置1Cにおいて、優先音と非優先音の入力信号に対してFFT21aとFFT21bで短時間FFTを実施してゲイン導出部19でゲインα1[i,k]とα2[i,k]を求めるまでの処理は同じである。
【0068】
ゲインを乗算する乗算器に替えて、優先音の信号処理系に、逆FFT22a、窓関数乗算部23a、時間シフト部24a、及びFIRフィルタ31aが設けられる。同様に、非優先音の信号処理系に、逆FFT22b、窓関数乗算部23b、時間シフト部24b、及びFIRフィルタ31bが設けられる。
【0069】
優先音の入力信号x1[n]は、FFT21aに入力されるとともに、FIRフィルタ31aにも入力される。非優先音の入力信号x2[n]は、FFT21bに入力されるとともに、FIRフィルタ31bにも入力される。FIRフィルタ31aと31bは、ゲインマスクの乗算と等価の処理を行って、入力信号を変更する。この処理を、以下で説明する。
【0070】
まず、Nd=1を仮定しているので、iはサンプル番号と一致するため、以下ではゲインマスクをα1[n,k]、α2[n,k]と書く。
【0071】
信号処理の理論によれば、伝達関数の逆フーリエ変換がインパルス応答である。これより、ゲインマスクαj[n,k]を逆変換したものが、時点n、遅延差(すなわちタップ番号)mに対するインパルス応答(すなわちFIRフィルタ係数)Wj[n,m]となる。インパルス応答Wj[n,m]は、式(5)で表される。
【0072】
【数5】
式(5)により、-N
F/2≦m<N
F/2の範囲でW
j[n,m]を算出する。このインパルス応答を係数としたFIRフィルタを、入力信号x
j[n]に対して式(6)のように作用させることで、ゲインマスクを乗算したのと同じ効果を得ることができる。
【0073】
【数6】
式(6)では、出力される混合音y
j[n]を算出するのに、N
F/2サンプル未来のx
j[n]を使用している。したがって、式(6)を実行するFIRフィルタ31を実装した場合のレイテンシは、N
F/2となる。N
F=1024で、サンプリング周波数F
Sが48kHzのときは、N
F/(2×F
S)=21.3msとなり、このままではレイテンシの減少にはつながらない。
【0074】
そこで、第1実施形態のように、入力データに対する変更処理系の周波数分解能を下げてレイテンシを減少させる。周波数分解能を下げるためには、たとえば、ゲインαj[n,k]を周波数方向に平滑化した後、周波数方向に間引いてビン数を下げればよい。しかし、この方法では平滑化の計算負荷が重くなる。
【0075】
より良い手法は、
図6に示すように、ゲインα
j[i,k]を逆FFTでFIRフィルタ係数W
j[n,m]にした後に、窓関数で切り詰める(乗算する)方法である。FIRフィルタ係数を窓関数で乗算することは、窓関数の逆フーリエ変換として得られる関数でゲインを平滑化することになるので、実質的に平滑化と同等の処理が実現できる。また、平滑化に比べて乗算のほうが計算負荷が軽いため、より優れた方法である。
【0076】
図7は、FIRフィルタ係数の切り詰めによるレイテンシの減少をより詳しく説明する図である。時刻n、周波数ビンkに対するα
j[i,k]を逆FFTして、このゲインに対応する時刻n、タップ番号mのFIRフィルタ係数W
j[n,m]を作成する。
【0077】
FIRフィルタ係数Wj[n,m]を、式(7)のように窓関数v[]で切り詰めて、Vj[n,m]を生成する。
【0078】
【数7】
窓関数v[m]として、m≦-N
vL、もしくはm≧N
vHにおいて0をとる窓関数を選ぶ。さらに、
図7の最下段に示すように、窓関数で切り取られたFIRフィルタ係数V
j[n,m]において、値0が並ぶ部分を時間シフト部24によりシフトさせて、詰めることができる。新しいFIRフィルタ係数U
j[n,m]は、式(8)で表される。
【0079】
【数8】
出力は、式(6)の代わりに、式(9)を使って求めることができる。
【0080】
【数9】
式(9)からわかるように、U
j[n,m]は、0≦n≦N
vL+N
vLの範囲で有効な(つまり非0の)値を持つので、入力信号x
j[n]に関して未来のデータは必要ない。また、レイテンシは、式(8)で行った係数シフトに対応する時間となるので、N
vL/F
Sである。このように、第3実施形態の手法と構成により、
図7に示されるようにレイテンシを低減することができる。
【0081】
図8Aと
図8Bは、実施形態のレイテンシ減少方法を適用した情報処理装置の概略図である。
図8Aの情報処理装置100Aは、第1実施形態と第2実施形態の手法に適している。情報処理装置100Aは、変更用のFFT11と、解析用のFFT12と、周波数解析処理部103と、変更処理部104と、逆フーリエ変換(IFFT)部105を有する。入力信号は、変更用のFFT11と解析用のFFT12に入力される。FFT11とFFT12は、入力信号に対してそれぞれ異なる幅の窓関数を使用して短時間のFFTを行い、時間周波数平面上の信号を取得する。FFT11とFFT12のFFT点数は同じであっても、異なっていてもよい。FFT11の窓関数の幅は、FFT12の窓関数の幅よりも狭い。変更処理部104による変更処理は、ある時刻の周波数解析の結果を用いてそれよりも未来の信号に対して変更を加える。
【0082】
周波数解析のブロックでは高分解能の解析を行う一方、信号変更のブロックは低いレイテンシに抑える。これにより、信号処理全体としてレイテンシを低減することができる。
【0083】
図8Bの情報処理装置100Bは、第3実施形態の手法に適している。情報処理装置は、解析用のFFT101と、FIRフィルタ102と、周波数解析処理部103と、IFFT106と、フィルタ係数切り詰め部107を有する。
【0084】
入力信号は、FFT101とFIRフィルタ102に入力される。FFT101により得られた時間周波数平面上の信号は、周波数解析処理部103で解析される。解析結果はIFFT106により時間領域の信号に戻されたあと、フィルタ係数の切り詰め部107によるレイテンシ抑制処理を受ける。FIRフィルタ102に入力された信号は、短縮化されたフィルタ係数で変更処理を受けて、出力される。
【0085】
この構成により、周波数解析を高分解能で行う一方、入力信号の変更処理は低いレイテンシで行うことができる。なお、時間領域での入力信号の変更は、RIRフィルタに限定されず、その他のデジタルフィルタを用いてもよい。
【0086】
図8Aの情報処理装置100A、及び
図8Bの情報処理装置は、たとえばプロセッサとメモリで実現することができる。あるいは、FPGA(Field Programmable Gate Array)、PLD(Programmable Logic Device)などのロジックデバイスで実現されてもよい。
【0087】
以上述べたように、本発明は、信号の周波数解析結果に基づいて信号を変更を行うリアルタイムの信号処理系で、レイテンシを低減することができる。本発明をスマートミキサーに適用する場合は、信号解析に高い周波数分解能が要求され、他方、信号の変更(優先音の強調と非優先音の抑制)は緩やかな変更、すなわち小さなレイテンシが望ましく、本発明のレイテンシ減少方法によく適合している。
【0088】
本発明のレイテンシ減少方法は、スマートミキサー以外の情報処理装置、例えばパルス性の音源の音分離を必要としない場合の信号分離システムなどに適用可能である。
【0089】
この出願は、2018年4月19日に出願された日本国特許出願第2018-080670号に基づき、その優先権を主張するものであり、その全内容は本件出願中に含まれる。
【符号の説明】
【0090】
1、1A~1C ミキシング装置
11、11a、11b 変更用のFFT
12、12a、12b 解析用のFFT
19 ゲイン導出部
31、31a、31b、106 FIRフィルタ(デジタルフィルタ)
100 情報処理装置
103 周波数解析処理部
104 変更処理部
105、106 IFFT
107 フィルタ係数切り詰め部(短縮化部)