JP4656010B2 - ハウリングキャンセラおよびプログラム - Google Patents
ハウリングキャンセラおよびプログラム Download PDFInfo
- Publication number
- JP4656010B2 JP4656010B2 JP2006187399A JP2006187399A JP4656010B2 JP 4656010 B2 JP4656010 B2 JP 4656010B2 JP 2006187399 A JP2006187399 A JP 2006187399A JP 2006187399 A JP2006187399 A JP 2006187399A JP 4656010 B2 JP4656010 B2 JP 4656010B2
- Authority
- JP
- Japan
- Prior art keywords
- howling
- filter
- coefficient
- notch
- frequency
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Cable Transmission Systems, Equalization Of Radio And Reduction Of Echo (AREA)
- Circuit For Audible Band Transducer (AREA)
Description
また、ハウリングキャンセラに実装可能なノッチフィルタは無限に存在するわけではないため、上述した技術において、ノッチフィルタ数を超えるハウリング周波数が検出された場合には、最後に検出されたハウリング周波数に対してノッチフィルタを割り当てることができなくなるという問題が生じる。従って、最後に検出されたハウリング周波数のレベルが大きい場合には、ハウリングが非常に耳障りになるという問題が生じる。
この発明は上述した事情に鑑みてなされたものであり、ハウリング周波数の検出精度を高めるとともに、有限数のノッチフィルタを有効に活用することのできるハウリングキャンセラおよびプログラムを提供することを目的としている。
請求項1記載のハウリングキャンセラにあっては、第1乃至第nのノッチフィルタ(但し、nは2以上の自然数)から成るフィルタ群(124)を有し、該フィルタ群(124)によってハウリング周波数成分を減衰させるハウリングキャンセラにおいて、前記フィルタ群(124)に対する入力信号または出力信号からハウリング周波数を検出するハウリング検出手段(122)と、前記ハウリング周波数において複数回検出したハウリングレベルを平均した平均レベル(L ave )と、該ハウリング周波数の整数倍の周波数において複数回検出したレベルである倍音レベルを平均した平均倍音レベル(Lh ave )と、前記ハウリングレベルの分散(σ2)とを算出し、前記平均レベル(Lave)が大となるほど大となり、前記平均倍音レベル(Lhave)が大となるほど小となり、前記分散(σ2)が大となるほど小となるハウリング係数(R)を算出するハウリング係数算出手段(SP49)と、算出した前記ハウリング係数(R)が所定の閾値(Rth)以上であり、検出した前記ハウリング周波数が何れのノッチフィルタにも割り当てられていない場合は、前記複数のノッチフィルタのうち何れか一のノッチフィルタを、検出した前記ハウリング周波数に割り当て、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を設定する一方、算出した前記ハウリング係数(R)が前記閾値(Rth)以上であり、検出した前記ハウリング周波数が既に何れのノッチフィルタに割り当て済みの場合は、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を再設定する割当手段(SP10〜SP28)と、前記ハウリング周波数が割り当てられた各ノッチフィルタの最大減衰量を、時間経過とともに低減するように更新するフィルタ係数更新手段(SP152)と、前記最大減衰量が所定の減衰量(0dB)以下になったノッチフィルタを解放する解放手段(SP156)とを有することを特徴とする。
さらに、請求項2記載の構成にあっては、請求項1記載のハウリングキャンセラにおいて、前記フィルタ係数更新手段(SP152)による最大減衰量の更新に応じて、当該最大減衰量を前記平均レベルとして前記ハウリング係数(R)の再計算を行う再計算手段(SP154)をさらに有し、前記割当手段(SP18〜SP32)は、検出したハウリング周波数を何れかのノッチフィルタに割り当てるとき、未割当のノッチフィルタが無い場合に、前記複数のノッチフィルタのうち算出または再計算された前記ハウリング係数が最小である一のノッチフィルタを解放し、当該解放したノッチフィルタに対して検出した前記ハウリング周波数を割り当てることを特徴とする。
また、請求項3記載のプログラムにあっては、第1乃至第nのノッチフィルタ(但し、nは2以上の自然数)から成るフィルタ群(124)と、前記フィルタ群(124)に対する入力信号または出力信号からハウリング周波数を検出するハウリング検出手段(122)と、前記第1乃至第nのノッチフィルタのパラメータを設定する処理装置(24)とを有し該フィルタ群(124)によってハウリング周波数成分を減衰させるハウリングキャンセラに適用されるプログラムであって、前記処理装置(24)を前記ハウリング周波数において複数回検出したハウリングレベルを平均した平均レベル(L ave )と、該ハウリング周波数の整数倍の周波数において複数回検出したレベルである倍音レベルを平均した平均倍音レベル(Lh ave )と、前記ハウリングレベルの分散(σ 2 )とを算出し、前記平均レベル(L ave )が大となるほど大となり、前記平均倍音レベル(Lh ave )が大となるほど小となり、前記分散(σ 2 )が大となるほど小となるハウリング係数(R)を算出するハウリング係数算出手段(SP49)と、算出した前記ハウリング係数(R)が所定の閾値(Rth)以上であり、検出した前記ハウリング周波数が何れのノッチフィルタにも割り当てられていない場合は、前記複数のノッチフィルタのうち何れか一のノッチフィルタを、検出した前記ハウリング周波数に割り当て、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を設定する一方、算出した前記ハウリング係数(R)が前記閾値(Rth)以上であり、検出した前記ハウリング周波数が既に何れのノッチフィルタに割り当て済みの場合は、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を再設定する割当手段(SP10〜SP28)と、前記ハウリング周波数が割り当てられた各ノッチフィルタの最大減衰量を、時間経過とともに低減するように更新するフィルタ係数更新手段(SP152)と、前記最大減衰量が所定の減衰量(0dB)以下になったノッチフィルタを解放する解放手段(SP156)ととして機能させるためのものであることを特徴とする。
さらに、請求項4記載の構成にあっては、請求項3記載のプログラムにおいて、前記プログラムは、さらに、前記処理装置(24)を、前記フィルタ係数更新手段(SP152)による最大減衰量の更新に応じて、当該最大減衰量を前記平均レベルとして前記ハウリング係数(R)の再計算を行う再計算手段(SP154)として機能させるものであり、前記割当手段(SP18〜SP32)は、検出したハウリング周波数を何れかのノッチフィルタに割り当てるとき、未割当のノッチフィルタが無い場合に、前記複数のノッチフィルタのうち算出または再計算された前記ハウリング係数が最小である一のノッチフィルタを解放し、当該解放したノッチフィルタに対して検出した前記ハウリング周波数を割り当てることを特徴とする。
次に、本発明の一実施例のハウリングキャンセラ100のハードウエア構成を図1を参照し説明する。
図において2は操作子であり、各種スイッチおよびノブ等から構成されている。4は検出回路であり、操作子2の操作状態を検出する。6は表示部であり、表示回路8の制御の下、ユーザに対して各種情報を表示する。10は音声信号入出力部であり、マイク等から入力されたアナログの音声信号をデジタル信号に変換し信号処理回路12に供給するとともに、信号処理回路12から供給されたデジタル信号をアナログの音声信号に変換し、外部のアンプ等に出力する。信号処理回路12は一または複数のDSP(デジタル・シグナル・プロセッサ)によって構成されており、入力されたデジタルの音声信号に対して、後述するフィルタリング処理等を施す。16は通信インタフェースであり、外部機器14との間で各種制御データを入出力する。24はCPUであり、ROM20に格納された制御プログラムに基づいて、通信バス18を介してハウリングキャンセラ100内の各部を制御する。22はRAMであり、CPU24のワークメモリとして使用される。
2.1.メインルーチンの処理(図4,図5)
CPU24においては、パネル部110を介してユーザから指示があった場合、または所定時間毎に自動的に、図4,図5に示すメインルーチンが起動される。図4において処理がステップSP2に進むと、現在のフィルタ群124に設定されている設定情報が取得される。ここで、設定情報には、以下のようなものがある。
(1)ノッチフィルタの割当数:ノッチフィルタの最大数は「4」であるが、このパラメータは、実際に現在割り当てられているノッチフィルタの数を表す。
(2)各ノッチフィルタのパラメータ:これは、フィルタ管理テーブル130に記憶されているパラメータである。
(3)AllFiltersResettable :これは、全ノッチフィルタの設定をプログラムによって自動的にリセットしても良いか否かを表すパラメータである。
(4)FiltersReassignable :これは、あるハウリング周波数に割り当てられているノッチフィルタを自動的に解放して他のハウリング周波数に再割当しても良いか否かを表すパラメータである。
上述したステップSP9においては、図6に示すハウリング係数算出処理サブルーチンが呼び出される。
図6において処理がステップSP40に進むと、カウント変数iが「1」に設定される。次に、処理がステップSP42に進むと、ハウリング周波数成分のレベルLiと、当該ハウリング周波数の2倍音(2倍の周波数の成分)のレベルLhiとが測定され、その結果がRAM22に記憶される。次に、ステップSP44においては、処理が所定時間だけ待機する。次に、処理がステップSP46に進むと、カウント変数iが「1」だけインクリメントされる。次に、処理がステップSP48に進むと、カウント変数iが所定数Nを超えたか否かが判定される。ここで「NO」と判定されると、処理はステップSP42に戻る。これにより、ステップSP42〜SP48の処理がN回だけ繰り返され、カウント変数iが所定数Nを超えると、処理はステップSP49に進む。
上述したように、ステップSP15が実行される場合とは、既にアサインされているノッチフィルタに係るハウリング周波数のレベルが増大し、アサイン済みの第kノッチフィルタの最大減衰量Gkが低すぎることになった場合である。かかる場合には、過去に(メインルーチンが今回実行される前に)測定された平均レベルLave、平均倍音レベルLhaveおよび分散σ2に基づいて、重みWA,WB,WCと、ハウリング係数Rkとが算出されている。これら過去に測定/算出された各値を、平均レベルL1ave、平均倍音レベルLh1ave、分散σ1 2という。
平均レベルLave=L1ave+L2ave、
平均倍音レベルLhave=Lh1ave+Lh2ave、および
分散σ2=σ2 2
として、新たな平均レベルLave、平均倍音レベルLhaveおよび分散σ2が求められ、その結果に基づいて新たな重みWA,WB,WCと、ハウリング係数Rkとが計算され、計算されたハウリング係数Rkがフィルタ管理テーブル130に書き込まれる。
また、上述したステップSP24においては、図8に示すフィルタ解放処理サブルーチンが呼び出される。
図8において処理がステップSP50に進むと、アサインされている全てのノッチフィルタについて、ハウリング係数Rkが読み出される。次に、処理がステップSP52に進むと、ハウリング係数Rkが最小であるノッチフィルタが選択される。次に、処理がステップSP54に進むと、選択されたノッチフィルタが複数存在するか否かが判定される。ここで「YES」と判定されると、処理はステップSP56に進み、これらのノッチフィルタのうち最初にアサインされたフィルタ、すなわち割当時刻tas(n)が最先であるフィルタのみが選択される。次に、処理がステップSP58に進むと、選択されたノッチフィルタがリリースされる。
CPU24においては、所定時間(数秒程度)毎にタイマ割込みが発生し、図9に示すタイマ割込み処理ルーチンが起動される。図9において処理がステップSP152に進むと、全ノッチフィルタの最大減衰量Gkが所定の変化量ΔLづつ低減される。次に、処理がステップSP154に進むと、ハウリング係数Rkが変更される。すなわち、現在のハウリング係数Rkは、平均レベルLave、平均倍音レベルLhaveおよび分散σ2に基づいて計算されたものであるが、現在の平均レベルLaveから変化量ΔLを減算した値を新たな平均レベルLave(新たな最大減衰量Gkに等しい)とし、この新たな平均レベルLaveと、従前の平均倍音レベルLhaveおよび分散σ2とに基づいて、ハウリング係数Rkが再計算され、再計算されたハウリング係数Rkがフィルタ管理テーブル130に書き込まれる。
本発明は上述した実施例に限定されるものではなく、例えば以下のように種々の変形が可能である。
(1)上記実施例においては、CPU24上で動作するプログラムによって各種処理を実行したが、このプログラムのみをCD−ROM、メモリカード等の記録媒体に格納して頒布し、あるいは伝送路を通じて頒布することもできる。
「R=WAPA・WBPB・WCPC」、または「R=WA・PA+WB・PB+WC・PC」なる計算式によってハウリング係数Rを計算してもよい。
Claims (4)
- 第1乃至第nのノッチフィルタ(但し、nは2以上の自然数)から成るフィルタ群を有し、該フィルタ群によってハウリング周波数成分を減衰させるハウリングキャンセラにおいて、
前記フィルタ群に対する入力信号または出力信号からハウリング周波数を検出するハウリング検出手段と、
前記ハウリング周波数において複数回検出したハウリングレベルを平均した平均レベルと、該ハウリング周波数の整数倍の周波数において複数回検出したレベルである倍音レベルを平均した平均倍音レベルと、前記ハウリングレベルの分散とを算出し、前記平均レベルが大となるほど大となり、前記平均倍音レベルが大となるほど小となり、前記分散が大となるほど小となるハウリング係数を算出するハウリング係数算出手段と、
算出した前記ハウリング係数が所定の閾値以上であり、検出した前記ハウリング周波数が何れのノッチフィルタにも割り当てられていない場合は、前記複数のノッチフィルタのうち何れか一のノッチフィルタを、検出した前記ハウリング周波数に割り当て、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を設定する一方、算出した前記ハウリング係数が前記閾値以上であり、検出した前記ハウリング周波数が既に何れのノッチフィルタに割り当て済みの場合は、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を再設定する割当手段と、
前記ハウリング周波数が割り当てられた各ノッチフィルタの最大減衰量を、時間経過とともに低減するように更新するフィルタ係数更新手段と、
前記最大減衰量が所定の減衰量以下になったノッチフィルタを解放する解放手段と
を有することを特徴とするハウリングキャンセラ。 - 前記フィルタ係数更新手段による最大減衰量の更新に応じて、当該最大減衰量を前記平均レベルとして前記ハウリング係数の再計算を行う再計算手段をさらに有し、
前記割当手段は、検出したハウリング周波数を何れかのノッチフィルタに割り当てるとき、未割当のノッチフィルタが無い場合に、前記複数のノッチフィルタのうち算出または再計算された前記ハウリング係数が最小である一のノッチフィルタを解放し、当該解放したノッチフィルタに対して検出した前記ハウリング周波数を割り当てること
を特徴とする請求項1記載のハウリングキャンセラ。 - 第1乃至第nのノッチフィルタ(但し、nは2以上の自然数)から成るフィルタ群と、前記フィルタ群に対する入力信号または出力信号からハウリング周波数を検出するハウリング検出手段と、前記第1乃至第nのノッチフィルタのパラメータを設定する処理装置とを有し該フィルタ群によってハウリング周波数成分を減衰させるハウリングキャンセラに適用されるプログラムであって、前記処理装置を
前記ハウリング周波数において複数回検出したハウリングレベルを平均した平均レベルと、該ハウリング周波数の整数倍の周波数において複数回検出したレベルである倍音レベルを平均した平均倍音レベルと、前記ハウリングレベルの分散とを算出し、前記平均レベルが大となるほど大となり、前記平均倍音レベルが大となるほど小となり、前記分散が大となるほど小となるハウリング係数を算出するハウリング係数算出手段と、
算出した前記ハウリング係数が所定の閾値以上であり、検出した前記ハウリング周波数が何れのノッチフィルタにも割り当てられていない場合は、前記複数のノッチフィルタのうち何れか一のノッチフィルタを、検出した前記ハウリング周波数に割り当て、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を設定する一方、算出した前記ハウリング係数が前記閾値以上であり、検出した前記ハウリング周波数が既に何れのノッチフィルタに割り当て済みの場合は、前記平均レベルに基づいて当該ノッチフィルタの最大減衰量を再設定する割当手段と、
前記ハウリング周波数が割り当てられた各ノッチフィルタの最大減衰量を、時間経過とともに低減するように更新するフィルタ係数更新手段と、
前記最大減衰量が所定の減衰量以下になったノッチフィルタを解放する解放手段と
として機能させるためのプログラム。 - 前記プログラムは、さらに、前記処理装置を、
前記フィルタ係数更新手段による最大減衰量の更新に応じて、当該最大減衰量を前記平均レベルとして前記ハウリング係数の再計算を行う再計算手段
として機能させるものであり、
前記割当手段は、検出したハウリング周波数を何れかのノッチフィルタに割り当てるとき、未割当のノッチフィルタが無い場合に、前記複数のノッチフィルタのうち算出または再計算された前記ハウリング係数が最小である一のノッチフィルタを解放し、当該解放したノッチフィルタに対して検出した前記ハウリング周波数を割り当てること
を特徴とする請求項3記載のプログラム。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006187399A JP4656010B2 (ja) | 2006-07-07 | 2006-07-07 | ハウリングキャンセラおよびプログラム |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2006187399A JP4656010B2 (ja) | 2006-07-07 | 2006-07-07 | ハウリングキャンセラおよびプログラム |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2008017244A JP2008017244A (ja) | 2008-01-24 |
JP4656010B2 true JP4656010B2 (ja) | 2011-03-23 |
Family
ID=39073851
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006187399A Expired - Fee Related JP4656010B2 (ja) | 2006-07-07 | 2006-07-07 | ハウリングキャンセラおよびプログラム |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4656010B2 (ja) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2009225101A (ja) * | 2008-03-17 | 2009-10-01 | Yamaha Corp | ハウリング抑制装置 |
JP5278220B2 (ja) | 2009-07-17 | 2013-09-04 | ヤマハ株式会社 | ハウリングキャンセラ |
JP5278219B2 (ja) | 2009-07-17 | 2013-09-04 | ヤマハ株式会社 | ハウリングキャンセラ |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63281598A (ja) * | 1987-05-14 | 1988-11-18 | Sony Corp | ハウリング防止装置 |
JPH05236588A (ja) * | 1992-02-21 | 1993-09-10 | Matsushita Electric Ind Co Ltd | ハウリング抑制装置 |
JP2004254016A (ja) * | 2003-02-19 | 2004-09-09 | Matsushita Electric Ind Co Ltd | ハウリング抑制装置 |
JP2006166375A (ja) * | 2004-12-10 | 2006-06-22 | Yamaha Corp | ハウリングキャンセラ |
-
2006
- 2006-07-07 JP JP2006187399A patent/JP4656010B2/ja not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPS63281598A (ja) * | 1987-05-14 | 1988-11-18 | Sony Corp | ハウリング防止装置 |
JPH05236588A (ja) * | 1992-02-21 | 1993-09-10 | Matsushita Electric Ind Co Ltd | ハウリング抑制装置 |
JP2004254016A (ja) * | 2003-02-19 | 2004-09-09 | Matsushita Electric Ind Co Ltd | ハウリング抑制装置 |
JP2006166375A (ja) * | 2004-12-10 | 2006-06-22 | Yamaha Corp | ハウリングキャンセラ |
Also Published As
Publication number | Publication date |
---|---|
JP2008017244A (ja) | 2008-01-24 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR101356206B1 (ko) | 자동 오디오 볼륨 기능을 갖는 오디오 재생 방법 및 장치 | |
JP2962732B2 (ja) | 補聴器用信号処理システム | |
US8422697B2 (en) | Background noise estimation | |
JP4416367B2 (ja) | スピーカ保護システム | |
CA2806372C (en) | System and method for dynamic residual noise shaping | |
JP5542122B2 (ja) | ダイナミックサウンド提供システム | |
KR101732208B1 (ko) | 오디오 녹음의 적응적 동적 범위 강화 | |
CN102726060B (zh) | 用于头戴式耳机装置的控制器 | |
WO2007031582A1 (en) | Audio dosage control | |
JP4656010B2 (ja) | ハウリングキャンセラおよびプログラム | |
US20060178876A1 (en) | Speech signal compression device speech signal compression method and program | |
JP2008268257A (ja) | 音響特性補正システムおよびこれを備えたカラオケ装置 | |
JP4743018B2 (ja) | ハウリング除去装置 | |
JP2009296298A (ja) | 音声信号処理装置および方法 | |
JP4596273B2 (ja) | ハウリングキャンセラおよびプログラム | |
WO2016059878A1 (ja) | 信号処理装置、信号処理方法及びコンピュータプログラム | |
CN113194381A (zh) | 音量调节方法、装置、音响设备和存储介质 | |
JP4798359B2 (ja) | 音響処理装置 | |
JP4811475B2 (ja) | 録音装置、録音方法、音声信号補正回路及びプログラム | |
JP3322479B2 (ja) | オーディオ装置 | |
KR20110007394A (ko) | 실시간 하울링 신호 제거 시스템 및 그 방법 | |
JP6673127B2 (ja) | ハウリング抑制装置及びカラオケ装置 | |
JPH03237899A (ja) | ハウリング抑制装置 | |
WO2024095527A1 (ja) | フィルタの設定方法、フィルタ設定装置、およびフィルタ設定プログラム | |
US20230395093A1 (en) | Sound processing device and sound processing method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100616 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100730 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20101130 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20101213 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140107 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4656010 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |