JP6674338B2 - 音処理装置、その制御方法、およびプログラム - Google Patents

音処理装置、その制御方法、およびプログラム Download PDF

Info

Publication number
JP6674338B2
JP6674338B2 JP2016127861A JP2016127861A JP6674338B2 JP 6674338 B2 JP6674338 B2 JP 6674338B2 JP 2016127861 A JP2016127861 A JP 2016127861A JP 2016127861 A JP2016127861 A JP 2016127861A JP 6674338 B2 JP6674338 B2 JP 6674338B2
Authority
JP
Japan
Prior art keywords
sound
unit
output
input
data
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.)
Active
Application number
JP2016127861A
Other languages
English (en)
Other versions
JP2018006871A5 (ja
JP2018006871A (ja
Inventor
悦也 高見
悦也 高見
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Canon Inc
Original Assignee
Canon Inc
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Canon Inc filed Critical Canon Inc
Priority to JP2016127861A priority Critical patent/JP6674338B2/ja
Publication of JP2018006871A publication Critical patent/JP2018006871A/ja
Publication of JP2018006871A5 publication Critical patent/JP2018006871A5/ja
Application granted granted Critical
Publication of JP6674338B2 publication Critical patent/JP6674338B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Circuit For Audible Band Transducer (AREA)
  • Telephone Function (AREA)

Description

本発明は、音の入出力制御の技術に関する。
音出力部と音入力部を備える装置において、音ループ(出力した音を入力として取得する現象)の発生を防ぐ必要がある。このような音ループは、音出力時において、音入力をミュートするなど、入力音データの生成を無効にすることで発生を低減することができる。
特許文献1には、音出力時に入力音のレベルが所定の閾値を満たしていない場合は音データを取得しないように制御する技術が記載されている。
特開2007−96537号公報
音出力部と音入力部との間で音の伝搬遅延が生じる場合、音出力時における、入力音データの生成を無効にする期間およびタイミングが適切に設定しないと音エコーが発生してしまう可能性がある。例えば、音出力部による音の出力が終了したタイミングと同じタイミングで音入力部の入力音データの生成の無効化を終了した場合、伝搬遅延された音出力部による音により音エコーが発生してしまう。また、特許文献1では、音出力部と音入力部との間で音の伝搬遅延が生じる場合の音エコーの低減については考慮していない。
本発明は、上記課題に鑑みてなされたものであり、音ループを効果的に抑制することを目的とする。
本発明の目的を達成するための一手段として、本発明の音処理装置は以下の構成を有する。すなわち、入力部に入力された音から音データを生成する生成手段と、前記生成手段により生成された音データを無効にする無効化手段と、を有し、前記無効化手段は、音が出力部から出力されている間、および、ユーザから前記出力部からの音出力停止の指示を受けたことに応じて、前記出力部からの音の出力が停止されてから所定時間が経過するまでの間に前記生成手段により生成された音データを無効にする。
本発明によれば、音ループを効果的に抑制することが可能となる。
実施形態1、2、3の音処理装置の構成の一例を示す模式図。 実施形態1における音処理装置が実行する処理のフローチャート。 実施形態2における音処理装置が実行する処理のフローチャート。 実施形態3における音処理装置が実行する処理のフローチャート。
以下、添付図面に従って本発明における音処理装置および当該装置の制御方法の実施形態の一例について詳説する。但し、本発明は、以下の実施形態に限定されるものではない。
[全体構成]
まず、図1を参照して、以下に説明する実施形態における音処理装置100の全体構成について説明する。図1は、音処理装置100の構成の一例を示す模式図である。音処理装置100は、一例として、半二重音声通話を行うことが可能である。
CPU(中央演算処理装置)101は、データ処理部 1011、データ送信部1012、入力ミュート部1013、データ受信部1014、無効時間算出部1015、バッファ管理部1016、伝搬減衰率算出部 1017、伝搬遅延検出部1018を有する。CPU101は例えば、所定のプログラムの実行によりこれらの各部による処理を行う(各部として機能する)。データ処理部1011は、音データの生成、および音処理装置100全体を管理するための制御を行う。データ送信部1012は、データ処理部1011により生成された音データをROM111、記憶装置112、またはI/F113に送信する処理を行う。入力ミュート部1013は、音入力を無効にするための処理を行う。データ受信部1014は、音データをROM111、記憶装置112、またはI/F113から受信する処理を行う。無効時間算出部1015は、音入力無効時間を算出するための処理を行う。音入力無効時間については、後述する。バッファ管理部1016は、入力バッファ104と出力バッファ107の使用状況を取得するための処理を行う。伝搬減衰率算出部1017は、音伝搬減衰率を算出するための処理を行う。伝搬遅延検出部1018は、音伝搬遅延時間を検出するための制御を行う。
入力部102は。マイクロフォン等であり、音(空気振動)をアナログ信号に変換する装置である。入力部102によって取得されたアナログ信号は、A/D変換部103によってデジタル信号に変換され、入力バッファ104にデジタルデータとして一時蓄積される。入力バッファ104に一時蓄積されたデジタルデータは、バス117を介してCPU101によって処理される。
出力部105は、スピーカー等であり、電気信号を音(空気振動)に変換する装置である。CPU101からバス117を介して出力バッファ107に一時格納されたデジタルデータは、D/A変換部106によりデジタル信号からアナログ信号へ変換され、出力部105から音(空気振動)として出力される。
温度センサー108は、温度変化に対して電気特性が変化するサーミスタ等の素子である。温度センサー108により示される環境温度のデータ(アナログデータ)は、A/D変換部109によってデジタルデータとしてサンプリングされた後、バス117を介して、CPU101によって処理される。
RAM(Read Only Memory)110は、SRAM(Static RAM)やDRAM(Dynamic RAM)等の揮発性メモリである。ROM(Read Only Memory)111は、EEPROM(Electrically Erasable Programmable ROM)やフラッシュメモリ等の不揮発性メモリである。記憶装置112は、HDD(Hard Disc Drive)等の記憶装置である。実施形態における機能を実現するためのプログラムや当該プログラムが実行される際に用いられるデータは、ROM111もしくは記憶装置112に格納される。これらのプログラムやデータは、CPU101による制御のもと、バス117を介して適宜RAM110に取り込まれ、CPU101によって実行される。
I/F113は、入出力のための各種I/F(Interface)である。I/F113は、キーボードやポインティングデバイス(たとえば、マウス)等の入力装置114と接続する。I/F113は、入力装置114から指示情報を受け取り、バス117を介して、CPU101に当該指示情報を通知することが可能である。また、I/F113は、LCD(Liquid crystal display)ディスプレイ等の表示装置115と接続し、CPU101によって生成される操作メニューや必要な情報を表示装置115に表示することが可能である。なお、表示装置115は、GUI(Graphic User Interface)として機能し、入力装置114を含む装置として構成されても良い。また、I/F113は、例えばLAN(Local Area Network)を介してネットワーク116と接続する。ユーザは必要な操作を、入力装置114またはネットワーク116を介して行うことが可能である。
続いて、上記のような構成を有する音処理装置100の動作を、以下の実施形態1、2、3において説明する。
[実施形態1]
実施形態1における音処理装置100の動作を、図2を参照して説明する。図2は、実施形態1における音処理装置100が実行する処理のフローチャートである。
ステップS101では、音処理装置100は、音入力を有効にする。具体的には、まず入力部102は、入力された音(空気振動)をアナログ信号に変換する。アナログ信号は、A/D変換部103によりデジタル信号に変換され、入力バッファ104に一時蓄積される。入力バッファ104に蓄積されたデジタル信号は、バス117を介してCPU101に入力される。CPU101におけるデータ処理部1011は、入力されたデジタル信号から音データを生成する。生成された音データは、データ送信部1012によって、ROM111もしくは記憶装置112に音ファイルとして記録、もしくはI/F113を介してネットワーク116へ配信される。
続いて、ステップS102では、CPU101のデータ処理部1011は、入力装置114またはネットワーク116を介した音出力開始要求(コマンド)の入力を待機する。ここで、音出力開始要求とは、ユーザによる、音出力の開始を要求するための指示である。ユーザは、入力装置114に対する任意の入力操作、または、ネットワーク116を介した任意の信号送信を通じて、音出力開始要求を入力する。入力装置114またはネットワーク116を介して入力された音出力開始要求は、I/F113およびバス117を介してCPU101に入力される。
ステップS103では、CPU101のデータ処理部1011は、S102で音出力開始要求を待機した結果、音出力開始要求を取得したか(音出力開始要求が入力されたか)を判定する。なお、S102で音出力開始要求の入力を任意の一定時間待機後に、ステップS103へ処理が進むようにしても良い。また、ステップS102の処理を省略し、ステップS101の処理後にステップS103に進むようにしても良い。音出力開始要求が取得された場合(S103でYes)、処理はS104へ進む。一方、音出力開始要求が取得されていない場合(S103でNo)、処理はS112へ進む。
ステップS104では、CPU101のデータ処理部1011は、ROM111もしくは記憶装置112に格納されている音入力無効時間を取得する。音入力無効時間は、ステップS109で音出力が停止された後に、追加的に音入力を無効にするための時間であり、後述するS110で使用される。音入力無効時間は、一例として、ユーザによって設定および変更され、入力装置114よりI/F113およびバス117を介してROM111もしくは記憶装置112に格納される。また、音入力無効時間は、ネットワーク116よりI/F113およびバス117を介してROM111もしくは記憶装置112に格納されても良い。また、音入力無効追加時間は、生産時にあらかじめROM111もしくは記憶装置112に格納されていても良い。
ステップS105では、CPU101の入力ミュート部1013は、音入力を、ステップS111まで、一時的に無効にする。すなわち、入力ミュート部1013は、ステップS106で音出力が開始されてから、ステップS109で音出力が停止され、さらに、ステップS110で音入力無効時間が経過するまで、音入力を無効化する。具体的には、入力ミュート部1013は、入力部102とA/D変換部103を介して取得され、入力バッファ104に一時蓄積された音のデジタル信号を破棄し、代わりに無音の音データを作成して差し替える。また、音処理装置100が減衰器(不図示)を有する場合は、入力ミュート部1013は、減衰器等を使用して音レベルを下げた音データを作成してもよい。入力ミュート部1013は、このような手法により、S105の処理開始時から行われた音入力を一時的に無効にする。
ステップS106では、音処理装置100は、音出力制御を開始する。具体的には、データ処理部1011は、まずS101で生成された音データを再生する。データ処理部1011により再生された音データは、バス117を介して出力バッファ107に一時格納された後、D/A変換部106によってデジタルデータからアナログ信号に変換され、出力部105より音出力される。
ステップS107では、CPU101のデータ処理部1011は、入力装置114またはネットワーク116を介した音出力停止要求の入力を待機する。ここで、音出力停止要求とは、ユーザによる、音出力の停止を要求するための指示である。ユーザは、入力装置114に対する任意の入力操作、または、ネットワーク116を介した任意の信号送信を通じて、音出力停止要求を入力する。入力装置114またはネットワーク116を介して入力された音出力停止要求は、I/F113およびバス117を介してCPU101に入力される。
ステップS108では、CPU101のデータ処理部1011は、S107で音出力停止要求を待機した結果、音出力停止要求を取得したか(音出力停止要求が入力されたか)を判定する。なお、S107で音出力停止要求の入力を任意の一定時間待機後に、S108へ処理が進むようにしても良い。また、ステップS107の処理を省略し、ステップS105の処理後にステップS108に進むようにしても良い。音出力停止要求が取得された場合(S108でYes)、処理はS109へ進む。音出力停止要求が取得されていない場合(S108でNo)、処理はS107に戻る。
ステップS109では、CPU101のデータ処理部1011は、音出力停止要求の入力を受けて、音データの再生を停止する。これにより、出力部105により行われていた音出力が停止される。
ステップS110では、CPU101のデータ処理部1011は、ステップS104で取得された音入力無効時間の待ち(ウェイト)を実施する。すなわち、データ処理部1011は、当該音入力無効時間に行われた音入力を無効にする。この処理はステップS105と同様の処理であり、入力ミュート部1013により行われても良い。
ステップS111では、CPU101の入力ミュート部1013は、ステップS105から実施していた、音入力を無効にする処理を停止する。すなわち、ステップS111以降では、CPU101のデータ処理部1011は、音入力に対して有効な音データを生成することが可能となる。
ステップS112では、CPU101のデータ処理部1011は、音処理を継続するか否かを判断する。具体的には、データ処理部1011は、ユーザによる入力装置114に対する任意の入力操作、または、ユーザによるネットワーク116に対する任意の信号入力により、音処理の終了が指示されたかを判断する。音処理の終了が指示された場合(S112でYes)、処理は終了し、音処理の終了が指示されていない場合(S112でNo)、処理はS102へ戻る。
このように、実施形態1における音処理装置は、音出力を停止する要求を取得した場合に、音データの出力を停止した後の所定時間の間に入力される音データの生成処理を無効にする。これにより、音データの生成を無効にする期間およびタイミングを適切に設定でき、音ループを効果的に抑制することが可能となる。また、実施形態1における音処理装置は、出力部105と入力部102間の音の伝搬遅延を考慮して、音データの生成を無効にする期間およびタイミングを適切に設定でき、音エコーの発生を低減することができる。
[実施形態2]
本実施形態における音処理装置100の動作を、実施形態1と異なる点について説明する。図3は、実施形態2における音処理装置100が実行する処理のフローチャートである。
ステップS201〜ステップS203の処理は、図1のステップS101〜ステップS103の処理と同様であるため、ここでの説明を省略する。ステップS204では、CPU101のデータ処理部1011は、ROM111もしくは記憶装置112に格納されている、出力部105と入力部102間の距離情報を取得する。当該距離情報は、一例として、ユーザによって設定および変更され、入力装置114よりI/F113およびバス117を介してROM111もしくは記憶装置112に格納される。また、当該距離情報は、ネットワーク116よりI/F113およびバス117を介してROM111もしくは記憶装置112に格納されても良い。また、当該距離情報は、ユーザによって一度も設定および変更がなされていない場合は、生産時にあらかじめROM111もしくは記憶装置112に格納されていても良い。
ステップS205では、CPU101のデータ処理部1011は、出力部105と入力部102が設置される環境の環境温度の情報を取得する、具体的には、まず、温度センサー108が、環境温度のアナログデータを取得し、A/D変換部109が、当該環境温度のアナログデータを、デジタルデータに変換する。データ処理部1011は、バス117を介して当該デジタルデータを、環境温度の情報として取得する。
ステップS206では、CPU101の無効時間算出部1015は、ステップ204で取得した距離情報、および、ステップ205で取得した環境温度の情報から、音入力無効時間を算出する。音入力無効時間は、音伝搬遅延に関して、音入力を無効にするための時間であり、後述するように、ステップS217で補正された後、ステップS218で使用される。音入力無効時間 x は、一例として次式に従って算出される。
Figure 0006674338
ここで、r = 出力部105と入力部102間の距離、c = 音速、である。
また、空気中の音速 c は次式で表せられる。
Figure 0006674338
ここで、比熱比 k = 1.403(空気)、分子量 M = 28.966E-3kg/mol(空気)、
気体定数 R = 8.314472、絶対温度 T(K)= 273.15 + t、t = 環境温度(℃)、である。
なお、音入力無効時間 x の算出方法は、本実施形態の計算式および係数に限定するものではない。また、無効時間算出部1015は、ルックアップテーブル等を用いて音入力無効時間 x を取得しても良い。この場合、無効時間算出部1015による計算処理は軽減され得る。
ステップS207では、伝搬減衰率算出部1017は、ステップ204で取得した距離情報から、出力部105から出力された音が入力部102に到達するまでの音伝搬減衰率を算出する。音伝搬減衰率 R は、一例として次式に従って算出される。
Figure 0006674338
ここで、r = 出力部105と入力部102間の距離、音源指向係数 Q = 1(自由空間)、である。
なお、音伝搬減衰率 R の算出方法は、本実施形態の計算式および係数に限定するものではない。また、伝搬減衰率算出部1017は、ルックアップテーブル等を用いて音伝搬減衰率 R を取得しても良い。この場合、伝搬減衰率算出部1017による計算処理は軽減され得る。
ステップS208では、CPU101のバッファ管理部1016は、出力バッファ107の使用状況を取得する。ここで、バッファの使用状況とは、例えば、バッファの使用率や遅延量である。
ステップS209では、CPU101の無効時間算出部1015は、ステップS208で取得した出力バッファ107の使用状況に基づいて、出力バッファ107における出力バッファ遅延時間を算出する。ここで算出される出力バッファ遅延時間は、ステップS211において音入力の無効を開始するまで期間(入力無効開始待ち時間)である。なお、ステップS208でバッファ管理部1016により取得された使用状況としての遅延量が遅延時間を示す場合は、当該遅延時間を用いても良い。
ステップS210では、音処理装置100は、音出力制御を開始する。具体的には、データ処理部1011は、まずS201で生成された音データを再生する。データ処理部1011により再生された音データは、バス117を介して出力バッファ107に一時格納された後、D/A変換部106によってデジタルデータからアナログ信号に変換され、出力部105より音出力される。
ステップS211では、CPU101のデータ処理部1011は、ステップ209にて算出された出力バッファ遅延時間(音入力無効開始待ち時間)の待ち(ウェイト)を実施する。すなわち、データ処理部1011は、当該出力バッファ遅延時間後に、入力ミュート部1013がステップS212の処理を行うように制御する。これにより、出力バッファ107に格納されているデータの出力後のタイミングで音入力のミュート期間が適切に開始される。
ステップS212では、CPU101の入力ミュート部1013は、音入力を、ステップS219まで一時的に無効にする。本ステップの処理は、図1のステップS105の処理と同様である。また、ステップS213とステップS214の処理は、図1のステップS107とステップS108の処理と同様であるため、ここでの説明を省略する。
ステップS215では、CPU101のバッファ管理部1016は、入力バッファ104の使用状況を取得する。ここで、バッファの使用状況とは、例えば、バッファの使用率や遅延量である。
ステップS216では、CPU101の無効時間算出部1015は、ステップS215で取得した入力バッファ104の使用状況に基づいて、入力バッファ104における入力バッファ遅延時間を算出する。ここで算出される入力バッファ遅延時間は、ステップS219において音入力の無効を終了するまで期間(入力無効終了待ち時間)である。なお、ステップS215でバッファ管理部1016により取得された使用状況としての遅延量が遅延時間を示す場合は、当該遅延時間を用いても良い。
ステップS217では、CPU101の無効時間算出部1015は、ステップS206で算出した音入力無効時間を必要に応じて補正する。具体的には、まず、無効時間算出部1015は、ステップS210にて出力された音が入力部102に到達する際の音の音レベルを算出する。この音レベルは、ステップ207において算出された音伝搬減衰率 R と、ステップS210において出力部105より出力された音の音レベルに基づいて、次式に従って算出される。
Figure 0006674338
ここで、Lin = 入力部102に到達する際の音のレベル、Lout = 出力部105より出力した音レベル、である。
続いて、無効時間算出部1015は、算出した音のレベルが所定の閾値を満たすか否かを判定する、算出した音レベルが当該所定の閾値を満たしていない場合(当該所定の閾値未満の場合)は、無効時間算出部1015は、ステップS206で算出した音入力無効時間を破棄する。すなわち、無効時間算出部1015は、音入力無効時間は無しと補正する。一方、算出した音レベルが当該所定の閾値を満たしている場合(当該所定の閾値以上の場合)は、無効時間算出部1015は、ステップS206で算出した音入力無効時間に対する補正を行なわない。ここで、当該所定の閾値は、一例として、無効時間算出部1015により、バス117を介してROM111もしくは記憶装置112より取得される。また、当該所定の閾値は、ユーザが設定および変更することも可能であり、その場合、I/F113およびバス117を介してROM111もしくは記憶装置112に格納される。また、当該所定の閾値は、ネットワーク116よりI/F113およびバス117を介してROM111もしくは記憶装置112に格納されても良い。また、当該所定の閾値が。ユーザによって一度も設定および変更がなされていない場合は、生産時にあらかじめROM111もしくは記憶装置112に格納されていても良い。
なお、入力部102に到達する際の音のレベル Lin の算出方法は、本実施形態の計算式および係数に限定するものではない。また、無効時間算出部1015は、ルックアップテーブル等を用いて、入力部102に到達する際の音のレベル Lin を取得しても良い。この場合、無効時間算出部1015による計算処理は軽減され得る。
ステップS218では、CPU101のデータ処理部1011は、S214における音出力停止要求の入力を受けて、音データの再生を停止する。これにより、出力部105により行われていた音出力が停止される。
ステップS219では、CPU101のデータ処理部1011は、ステップS216で算出された入力バッファ遅延時間(音入力無効終了待ち時間)の待ち(ウェイト)を実施する。すなわち、データ処理部1011は、ステップS218での音出力の停止の後、少なくとも当該入力バッファ遅延時間後に入力ミュート部1013がステップS221の処理を行うように制御する。これにより、入力バッファ104に格納されているデータの出力後に音入力のミュート期間が適切に終了される。
ステップS220では、CPU101のデータ処理部1011は、ステップS206で算出しステップS217で補正された音入力無効時間の待ち(ウェイト)を実施する。
ステップS221では、CPU101の入力ミュート部1013は、ステップS212から実施していた、音入力を無効にする処理を停止する。
ステップS222では、CPU101のデータ処理部1011は、音処理を継続するか否かを判断する。具体的には、データ処理部1011は、ユーザによる入力装置114に対する任意の入力操作、または、ユーザによるネットワーク116に対する任意の信号入力により、音処理の終了が指示されたかを判断する。音処理の終了が指示された場合(S222でYes)、処理は終了し、音処理の終了が指示されていない場合(S222でNo)、処理はS202へ戻る。
このように、実施形態2における音処理装置は、音出力を停止する要求を取得した場合に、音データの出力を終了した後、可変な所定時間の間に入力される音データの生成する処理を無効にする。これにより、音データの生成を無効にする期間およびタイミングを適切に設定でき、音ループを抑制することが可能となる。また、実施形態2における音処理装置は、出力部105と入力部102間で動的に変更される音の伝搬遅延を考慮して、音データの生成を無効にする期間およびタイミングを適切に設定でき、音エコーの発生を低減することができる。なお、本実施形態では、出力バッファ107と入力バッファ104両方の使用状況に基づいて入力ミュート部の動作タイミングが制御されたが、いずれかバッファの使用状況に基づき、ミュートの開始または終了のみのタイミングが制御されても良い。
[実施形態3]
実施形態3として、音処理装置100が、実施形態1、2において使用される、音入力無効時間、および、出力部105と入力部102間の距離を算出する例について説明する。図4は、実施形態3における音処理装置100が実行する処理のフローチャートである。
ステップS301では、音処理装置100は、音出力制御を開始する。具体的には、データ処理部1011は、音データを再生する。データ処理部1011により再生された音データは、バス117を介して出力バッファ107に一時格納された後、D/A変換部106によってデジタルデータからアナログ信号に変換され、出力部105より音出力される。なお、本実施形態では、再生する音データは、基準となる音データであり、単波長音データ等、ステップS304にて実施される音伝搬遅延検出に適する音データであり得る。
ステップS302では、音処理装置100は、音入力を開始する。具体的には、具体的には、まず入力部102は、入力された音(空気振動)をアナログ信号に変換する。アナログ信号は、A/D変換部103によりデジタル信号に変換され、入力バッファ104に一時蓄積される。入力バッファ104に蓄積されたデジタル信号は、バス117を介してCPU101に入力される。CPU101におけるデータ処理部1011は、入力されたデジタル信号から音データを生成する。
ステップS303では、CPU101のデータ処理部1011は、環境温度の情報を取得する、具体的には、まず、温度センサー108が、環境温度のアナログデータを取得し、A/D変換部109が、当該環境温度のアナログデータを、デジタルデータに変換する。データ処理部1011は、バス117を介して当該デジタルデータを、環境温度の情報として取得する。
ステップS304では、CPU101の伝搬遅延検出部1018は、ステップS302で取得された音データに対してバンドパスフィルタを施し、環境音を排除しステップS301にて再生した音を抽出する。バンドパスフィルタは、ステップS301で再生された音の波長帯域を抽出するのに最適化したフィルタである。伝搬遅延検出部1018は、バンドパスフィルタを施した音と、ステップS301にて再生された音との位相差から音伝搬遅延時間を算出する。
次に、CPU101のデータ処理部1011は、算出した音伝搬遅延時間とステップS303で取得した環境温度から、出力部105と入力部102間の距離を算出する。出力部105と入力部102間の距離 r は次式に従って算出される。
Figure 0006674338
ここで、x = 音伝搬遅延時間、c = 音速、である。
また、空気中の音速cは次式で表せられる。
Figure 0006674338
ここで、比熱比 k = 1.403(空気)、分子量 M = 28.966E-3kg/mol(空気)、
気体定数 R = 8.314472、絶対温度 T(K) = 273.15+t、t = 環境温度(℃)
、である。
なお、音伝搬遅延時間および出力部105と入力部102間の距離の算出方法は、本実施形態の計算式および係数に限定するものではない。また、伝搬遅延検出部1018やデータ処理部1011は、ルックアップテーブル等を用いてこれらの値を取得しても良い。この場合、計算処理は軽減され得る。
ステップS305では、伝搬遅延検出部1018とデータ処理部1011は、算出した音入力無効時間および出力部105と入力部102間の距離情報を格納する。具体的には、伝搬遅延検出部1018は、ステップS304にて算出した音伝搬遅延時間を、実施形態1にて用いる音入力無効時間として、ROM111もしくは記憶装置112に格納する。また、データ処理部1011は、ステップS304にて算出した出力部105と入力部102間の距離を、実施形態2にて用いる出力部105と入力部102間の距離情報として、ROM111もしくは記憶装置112に格納する。
ステップS306では、音処理装置100は、ステップS302で開始されていた音入力および音データの生成を停止する。続いて、ステップS307では、音処理装置100は、ステップS301で開始されていた音入力および音データの再生を停止し、処理は終了する。
このように、実施形態1および実施形態2において使用される、音入力無効時間および出力部105と入力部102間の距離を算出することが可能である。これにより、メモリの効率的な利用だけでなく、任意の配置構成であっても、実施形態1および実施形態2の実現が可能となる。
以上の実施形態によれば、音データの生成を無効にする期間およびタイミングを最適化することで、音ループ(出力した音を入力として取得する現象)を抑制することが可能になる。また、ハウリングの防止に加え、監視システムでは悲鳴検知、音量検知等の音解析の誤検出を防止することが可能となる。また、出力部105と入力部102間の音の伝搬遅延を考慮して、音データの生成を無効にする期間およびタイミングを適切に設定でき、音エコーの発生を低減することができる。また、空気中を伝搬する音速は温度によって変化する音速を考慮して、環境温度に応じた音入力のミュートの期間およびタイミングで制御することができる。
[その他の実施形態]
本発明は、上述の実施形態の1以上の機能を実現するプログラムを、ネットワーク又は記憶媒体を介してシステム又は装置に供給し、そのシステム又は装置のコンピュータにおける1つ以上のプロセッサーがプログラムを読出し実行する処理でも実現可能である。また、1以上の機能を実現する回路(例えば、ASIC)によっても実現可能である。
100:音処理装置、101:CPU(中央演算処理装置)、102:入力部、103:A/D変換部 、104:入力バッファ、105:出力部、106:D/A変換部、107:出力バッファ、108:温度センサー、109:A/D変換部 、110:RAM、111:ROM、112:記憶装置、113:I/F、114:入力装置、115:表示装置、116:ネットワーク、117:バス

Claims (13)

  1. 入力部に入力された音から音データを生成する生成手段と、
    前記生成手段により生成された音データを無効にする無効化手段と、を有し、
    前記無効化手段は、音が出力部から出力されている間、および、ユーザから前記出力部からの音出力停止の指示を受けたことに応じて、前記出力部からの音の出力が停止されてから所定時間が経過するまでの間に前記生成手段により生成された音データを無効にすることを特徴とする音処理装置。
  2. 前記無効化手段は、前記生成手段により生成された音データを無音のデータに差し替えることにより当該音データを無効にすることを特徴とする請求項1に記載の音処理装置。
  3. 前記無効化手段は、前記生成手段により生成された音データを、当該音データの音レベルを下げたデータに差し替えることにより、当該音データを無効にすることを特徴とする請求項1に記載の音処理装置。
  4. 前記所定時間を設定する設定手段を更に有することを特徴とする請求項1から3のいずれか1項に記載の音処理装置。
  5. 前記設定手段は、前記出力部より出力された音から算出された音伝搬遅延時間を前記所定時間として設定することを特徴とする請求項4に記載の音処理装置。
  6. 前記設定手段は、前記出力部と前記入力部との距離に基づいて、前記所定時間を設定することを特徴とする請求項4に記載の音処理装置。
  7. 前記設定手段は、前記出力部より出力された音から算出された音伝搬遅延時間と音速から前記出力部と前記入力部との距離を算出することを特徴とする請求項6に記載の音処理装置。
  8. 前記設定手段は、前記出力部と前記入力部とが設置される環境の温度に基づいて、前記所定時間を設定することを特徴とする請求項4に記載の音処理装置。
  9. 前記設定手段は、前記出力部と前記入力部との距離に基づく音伝搬減衰率、および、前記出力部より出力される音のレベルに基づいて算出される、前記出力部より出力される音が前記入力部に到達する際の音レベルが所定の閾値を満たさない場合に、前記所定時間を補正する手段を有する請求項4に記載の音処理装置。
  10. 前記設定手段は、前記所定時間を破棄することを特徴とする請求項7に記載の音処理装置。
  11. 前記出力部は出力バッファを有し、前記入力部は入力バッファを有し、
    前記無効化手段は、前記出力バッファの使用状況と前記入力バッファの使用状況の少なくとも一方に基づいて、前記生成手段により生成された音データを無効にすることを開始および終了するタイミングを制御することを特徴とする請求項1から8のいずれか1項に記載の音処理装置。
  12. 音処理装置の制御方法であって、
    入力部に入力された音から音データを生成する生成工程と、
    音が出力部から出力されている間、および、ユーザから前記出力部からの音出力停止の指示を受けたことに応じて、前記出力部からの音の出力が停止されてから所定時間が経過するまでの間に前記生成工程において生成された音データを無効にする無効化工程と、
    有することを特徴とする音処理装置の制御方法

  13. コンピュータを、請求項1から11のいずれか1項に記載の音処理装置として機能させるためのプログラム。
JP2016127861A 2016-06-28 2016-06-28 音処理装置、その制御方法、およびプログラム Active JP6674338B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2016127861A JP6674338B2 (ja) 2016-06-28 2016-06-28 音処理装置、その制御方法、およびプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2016127861A JP6674338B2 (ja) 2016-06-28 2016-06-28 音処理装置、その制御方法、およびプログラム

Publications (3)

Publication Number Publication Date
JP2018006871A JP2018006871A (ja) 2018-01-11
JP2018006871A5 JP2018006871A5 (ja) 2019-07-04
JP6674338B2 true JP6674338B2 (ja) 2020-04-01

Family

ID=60949999

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2016127861A Active JP6674338B2 (ja) 2016-06-28 2016-06-28 音処理装置、その制御方法、およびプログラム

Country Status (1)

Country Link
JP (1) JP6674338B2 (ja)

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE69224680T2 (de) * 1991-05-29 1998-09-17 Koninkl Philips Electronics Nv Elektroakustische Verstärker-Anordnung und Mikrofonanordnung zur Verwendung in der elektroakustischen Verstärker-Anordnung
JPH08307515A (ja) * 1995-05-09 1996-11-22 Matsushita Electric Ind Co Ltd コードレス電話装置
JPH1127378A (ja) * 1997-07-02 1999-01-29 Read Electron Kk 無線電話機のハウリング防止回路
JP2003092623A (ja) * 2001-09-17 2003-03-28 Toshiba Corp 音声通信装置とその音声信号処理モジュール

Also Published As

Publication number Publication date
JP2018006871A (ja) 2018-01-11

Similar Documents

Publication Publication Date Title
CN104822001B (zh) 回声消除数据同步控制方法和装置
JP6489563B2 (ja) 音量調節方法、システム、デバイス及びプログラム
WO2016180100A1 (zh) 一种音频处理的性能提升方法及装置
CN109285554B (zh) 一种回声消除方法、服务器、终端及系统
JP2010258701A (ja) 通信端末及び音量レベルの調整方法
JP5561195B2 (ja) ノイズ除去装置およびノイズ除去方法
WO2013107307A1 (zh) 降噪方法及设备
KR102190833B1 (ko) 에코 억제
CN110830866A (zh) 一种语音助手唤醒方法、装置及无线耳机和存储介质
JP6422884B2 (ja) エコー抑圧
JPWO2018167960A1 (ja) 会話装置、音声処理システム、音声処理方法、および音声処理プログラム
JP2009118391A (ja) 音処理装置およびプログラム
JP6674338B2 (ja) 音処理装置、その制御方法、およびプログラム
WO2021169585A1 (zh) 局域网环境下设备间的仲裁方法、电子设备、局域网系统
CN112669878B (zh) 声音增益值的计算方法、装置和电子设备
CN115835094A (zh) 音频信号处理方法、系统、设备、产品及介质
US9843872B2 (en) Sound collection equipment and method for detecting the operation status of sound collection equipment
JP2009021859A (ja) 通話状態判定装置および該通話状態判定装置を備えたエコーキャンセラ
US9860365B2 (en) Providing setting adjustments to a communication device
WO2018227560A1 (zh) 耳机控制方法及系统
JP6887315B2 (ja) 音声処理装置およびその制御方法、プログラム並びに記憶媒体
TW201445878A (zh) 音頻處理系統及方法
JP2019062514A (ja) 音声処理装置及びその制御方法
JP7242327B2 (ja) 情報収集装置、発話制御装置、および発話制御システム
CN111201712A (zh) 自适应滤波器

Legal Events

Date Code Title Description
A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190524

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190524

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: 20200207

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200306

R151 Written notification of patent or utility model registration

Ref document number: 6674338

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151