(57)【要約】【課題】予め複数のプログラムを記憶させておく必要がない信号処理システムを提供する。【解決手段】ＣＰＵ１２は、不揮発性メモリ１４から所定の音声信号処理プログラムを読み出し、通信Ｉ／Ｆ１１を介して各マイクユニットに送信する。ホスト装置１から送信される音声信号処理プログラムは、通信Ｉ／Ｆ２１Ａを介して揮発性メモリ２３Ａに一時記憶される。音声信号処理部２４Ａは、揮発性メモリ２３Ａに一時記憶された音声信号処理プログラムに応じた処理を行い、マイク２５Ａが収音した音声に係るデジタル音声信号をホスト装置１に送信する。例えば、ホスト装置１からエコーキャンセラのプログラムが送信された場合、マイク２５Ａが収音した音声から、エコー成分を除去してからホスト装置１に送信する。揮発性メモリ２３Ａに一時記憶された音声信号処理プログラムは、マイクユニット２Ａへの電源供給が絶たれた場合に消去される。マイクユニットは、起動毎に都度、必ずホスト装置１から動作用の音声信号処理プログラムを受信してから動作を行う。【選択図】図２
2014116930.tif 000002
【特許請求の範囲】
【請求項１】
直列接続された複数のマイクユニットと、当該複数のマイクユニットの１つに接続されるホスト装置と、を備えた信号処理システムであって、
各マイクユニットは、音声を収音するマイクと、一時記憶用メモリと、前記マイクが収音した音声を処理する処理部と、を備え、
前記ホスト装置は、前記マイクユニット用の音声処理プログラムを記憶した不揮発性メモリを備え、
前記ホスト装置が、前記不揮発性メモリから読み出した前記音声処理プログラムを前記各マイクユニットへ送信し、
前記各マイクユニットは、前記一時記憶用メモリに前記音声処理プログラムを一時記憶し、
前記処理部は、前記一時記憶用メモリに一時記憶された音声処理プログラムに応じた処理を行い、当該処理後の音声を前記ホスト装置に送信することを特徴とする信号処理システム。
【請求項２】
前記ホスト装置は、前記音声処理プログラムを一定の単位ビットデータに分割し、前記単位ビットデータを各マイクユニットが受け取る順に配列したシリアルデータを作成し、前記シリアルデータを前記各マイクユニットへ送信し、
前記各マイクユニットは、前記シリアルデータから自己が受け取るべき単位ビットデータを抜き出して受け取り、抜き出した前記単位ビットデータを一時記憶し、
前記処理部は、前記単位ビットデータを結合した音声処理プログラムに応じた処理を行う請求項１に記載の信号処理システム。
【請求項３】
前記各マイクユニットは、前記処理後の音声を一定の単位ビットデータに分割して上位に接続されたマイクユニットに送信し、各マイクユニットは協同して送信用シリアルデータを作成し、前記ホスト装置に送信することを特徴とする請求項１または請求項２に記載の信号処理システム。
【請求項４】
前記マイクユニットは、異なる収音方向を有する複数のマイクロホンと、音声レベル判定手段とを有し、
前記ホスト装置は、スピーカを有し、
該スピーカから各マイクユニットに向けて試験用音波を発し、
各マイクユニットは、前記複数のマイクロホンに入力された前記試験用音波のレベルを判定し、判定結果となるレベルデータを一定の単位ビットデータに分割して上位に接続されたマイクユニットに送信し、各マイクユニットが協同してレベル判定用シリアルデータを作成する請求項１乃至請求項３のいずれかに記載の信号処理システム。
【請求項５】
前記音声処理プログラムは、フィルタ係数が更新されるエコーキャンセラを実現するためのエコーキャンセルプログラムからなり、該エコーキャンセルプログラムは前記フィルタ係数の数を決めるフィルタ係数設定部を有し、
前記ホスト装置は、各マイクユニットから受けとったレベルデータに基づいて各マイクユニットのフィルタ係数の数を変更し、各マイクユニットへフィルタ係数の数を変更するための変更パラメータを定め、該変更パラメータを一定の単位ビットデータに分割して、前記単位ビットデータを各マイクユニットが受け取る順に配列した変更パラメータ用シリアルデータを作成し、前記各マイクユニットへ前記変更パラメータ用シリアルデータを送信する請求項１乃至請求項４のいずれかに記載の信号処理システム。
【請求項６】
前記音声処理プログラムは、前記エコーキャンセルプログラムまたはノイズ成分を除去するノイズキャンセルプログラムであり、
前記ホスト装置は、前記レベルデータから各マイクユニットへ送信するプログラムを前記エコーキャンセルプログラムまたは前記ノイズキャンセルプログラムのいずれかに定めることを特徴とする請求項５に記載の信号処理システム。
【請求項７】
直列接続された複数のマイクユニットと、当該複数のマイクユニットの１つに接続されるホスト装置と、を備えた信号処理方法であって、
各マイクユニットは、音声を収音するマイクと、一時記憶用メモリと、前記マイクが収音した音声を処理する処理部と、を備え、
前記ホスト装置は、前記マイクユニット用の音声処理プログラムを保持した不揮発性メモリを備え、
前記ホスト装置は、起動状態を検知すると、前記不揮発性メモリから前記音声処理プログラムを読み出し、前記各マイクユニットへ送信し、
前記各マイクユニットは、前記音声処理プログラムを前記一時記憶用メモリに一時記憶し、
前記処理部は、前記一時記憶用メモリに一時記憶された音声処理プログラムに応じた処理を行い、当該処理後の音声を前記ホスト装置に送信することを特徴とする信号処理方法。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、マイクユニットと、当該マイクユニットに接続されるホスト装置と、からなる信号処理システムに関する。
【背景技術】
【０００２】
従来、通信会議システムでは、通信先に応じてエコーキャンセル用のプログラムを選択できるように、複数のプログラムを記憶しておく装置が提案されている。
【０００３】
例えば、特許文献１の装置では、通信先に応じてタップ長を変更する構成となっている。
【０００４】
また、特許文献２のテレビ電話装置では、本体に設けられたディップスイッチを切り替えることで、用途毎に異なるプログラムを読み出すものである。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００４−２４２２０７号公報
【特許文献２】特開平１０−２７６４１５号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかし、特許文献１、２の装置では、想定される使用態様に応じて複数のプログラムを予め記憶しておかなければならない。仮に新たな機能を追加する場合にはプログラムを書き換える必要があり、特に端末数が増えた場合には問題となる。
【０００７】
そこで、この発明は、予め複数のプログラムを記憶させておく必要がない信号処理システムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明の信号処理システムは、マイクユニットと、当該マイクユニットの１つに接続されるホスト装置と、を備えた信号処理システムである。前記マイクユニットは、音声を収音するマイクと、一時記憶メモリと、前記マイクが収音した音声を処理する処理部と、を備えている。前記ホスト装置は、前記マイクユニット用の音声処理プログラムを保持した不揮発性メモリを備えている。そして、本発明の信号処理システムは、前記ホスト装置が、前記不揮発性メモリから前記音声処理プログラムを前記マイクユニットの一時記憶メモリに送信し、前記マイクユニットが、前記一時記憶メモリに前記音声処理プログラムを一時記憶し、前記処理部は、前記一時記憶メモリに一時記憶された音声処理プログラムに応じた処理を行い、当該処理後の音声を前記ホスト装置に送信することを特徴とする。
【０００９】
このように、本発明の信号処理システムでは、端末（マイクユニット）には予め動作用のプログラムを内蔵せず、ホスト装置からプログラムを受信して、一時記憶メモリに一時記憶してから動作を行うため、マイクユニット側に予め多数のプログラムを記憶させておく必要がない。また、新たな機能を追加する場合に、各マイクユニットのプログラム書き換え処理は不要であり、ホスト装置側の不揮発性メモリに記憶されているプログラムを変更するだけで、新たな機能を実現することができる。
【００１０】
なお、マイクユニットを複数接続する場合、全てのマイクユニットに同じプログラムを実行させてもよいが、マイクユニット毎に個別のプログラムを実行させることも可能である。
【００１１】
例えば、ホスト装置にスピーカが存在した場合において、最もホスト装置に近いマイクユニットにはエコーキャンセラのプログラムを実行させ、ホスト装置から遠いマイクユニットにはノイズキャンセラのプログラムを実行させる、等の態様が可能である。なお、本発明の信号処理システムでは、仮にマイクユニットの接続位置を変更した場合であっても、接続位置毎に適したプログラムが送信される。例えば、最も近いマイクユニットには、必ずエコーキャンセラのプログラムが実行される。したがって、どの位置にどのマイクユニットを接続するのか、ユーザが意識する必要はない。
【００１２】
また、ホスト装置は、接続されるマイクユニットの数に応じて、送信するプログラムを変更することも可能である。接続されるマイクユニットの数が１つの場合は当該マイクユニットのゲインを高く設定し、マイクユニットの数が複数の場合は、各マイクユニットのゲインを相対的に低く設定する。
【００１３】
あるいは、各マイクユニットが複数のマイクを備えている場合、マイクアレイとして機能させるためのプログラムを実行させる態様も可能である。
【００１４】
また、ホスト装置は、前記音声処理プログラムを一定の単位ビットデータに分割し、前記単位ビットデータを各マイクユニットが受け取る順に配列したシリアルデータを作成し、前記シリアルデータを前記各マイクユニットへ送信し、各マイクユニットは、前記シリアルデータから自己が受け取るべき単位ビットデータを抜き出して受け取り、抜き出した前記単位ビットデータを一時記憶し、処理部は、前記単位ビットデータを結合した音声処理プログラムに応じた処理を行う態様も可能である。これにより、マイクユニットの数が増えて送信するプログラムの数が増えたとしてもマイクユニット間の信号線の数が増えることがない。
【００１５】
また、各マイクユニットは、前記処理後の音声を一定の単位ビットデータに分割して上位に接続されたマイクユニットに送信し、各マイクユニットは協同して送信用シリアルデータを作成し、前記ホスト装置に送信する態様も可能である。これにより、マイクユニットの数が増えてチャンネル数が増えたとしてもマイクユニット間の信号線の数が増えることがない。
【００１６】
また、マイクユニットは、異なる収音方向を有する複数のマイクロホンと、音声レベル判定手段とを有し、前記ホスト装置は、スピーカを有し、該スピーカから各マイクユニットに向けて試験用音波を発し、各マイクユニットは、前記複数のマイクロホンに入力された前記試験用音波のレベルを判定し、判定結果となるレベルデータを一定の単位ビットデータに分割して上位に接続されたマイクユニットに送信し、各マイクユニットが協同してレベル判定用シリアルデータを作成する態様とすることも可能である。これにより、スピーカから各マイクユニットのマイクロホンに至るエコーのレベルをホスト装置で把握することができる。
【００１７】
また、音声処理プログラムは、フィルタ係数が更新されるエコーキャンセラを実現するためのエコーキャンセルプログラムからなり、該エコーキャンセルプログラムは前記フィルタ係数の数を決めるフィルタ係数設定部を有し、前記ホスト装置は、各マイクユニットから受けとったレベルデータに基づいて各マイクユニットのフィルタ係数の数を変更し、各マイクユニットへフィルタ係数の数を変更するための変更パラメータを定め、該変更パラメータを一定の単位ビットデータに分割して、前記単位ビットデータを各マイクユニットが受け取る順に配列した変更パラメータ用シリアルデータを作成し、前記各マイクユニットへ前記変更パラメータ用シリアルデータを送信する態様とすることも可能である。
【００１８】
この場合、ホスト装置に近く、エコーのレベルが高くなるマイクユニットには、フィルタ係数の数（タップ数）を多くしたり、ホスト装置に遠く、エコーのレベルが低くなるマイクユニットには、タップ数を短くしたりすることができる。
【００１９】
また、音声処理プログラムは、前記エコーキャンセルプログラムまたはノイズ成分を除去するノイズキャンセルプログラムであり、前記ホスト装置は、前記レベルデータから各マイクユニットへ送信するプログラムを前記エコーキャンセルプログラムまたは前記ノイズキャンセルプログラムのいずれかに定める態様とすることも可能である。
【００２０】
この場合、ホスト装置に近く、エコーのレベルが高いマイクユニットには、エコーキャンセラを実行させ、ホスト装置に遠く、エコーのレベルが低いマイクユニットには、ノイズキャンセラを実行させることができる。
【００２１】
また、本発明の信号処理方法は、直列接続された複数のマイクユニットと、当該複数のマイクユニットの１つに接続されるホスト装置と、を備えた信号処理装置のための信号処理方法である。各マイクユニットは、音声を収音するマイクと、一時記憶用メモリと、前記マイクが収音した音声を処理する処理部と、を備える。前記ホスト装置は、前記マイクユニット用の音声処理プログラムを保持した不揮発性メモリを備える。当該信号処理方法は、前記ホスト装置の起動状態を検知すると、前記不揮発性メモリから前記音声処理プログラムを読み出し、該音声処理プログラムを前記ホスト装置から前記各マイクユニットへ送信し、前記音声処理プログラムを前記各マイクユニットの前記一時記憶用メモリに一時記憶し、前記一時記憶用メモリに一時記憶された音声処理プログラムに応じた処理を行い、当該処理後の音声を前記ホスト装置に送信することを特徴とする。
【発明の効果】
【００２２】
本発明によれば、予め複数のプログラムを記憶させておく必要がなく、新たな機能を追加する場合に端末のプログラムを書き換える必要もない。
【図面の簡単な説明】
【００２３】
【図１】本発明の信号処理システムの接続態様を示す図である。
【図２】図２（Ａ）は、ホスト装置の構成を示すブロック図であり、図２（Ｂ）は、マイクユニット２Ａの構成を示すブロック図である。
【図３】図３（Ａ）は、エコーキャンセラの構成を示す図であり、図３（Ｂ）は、ノイズキャンセラの構成を示す図である。
【図４】エコーサプレッサの構成を示す図である。
【図５】図５（Ａ）は、本発明の信号処理システムの別の接続態様を示す図であり、図５（Ｂ）は、ホスト装置の外観斜視図であり、図５（Ｃ）は、マイクユニットの外観斜視図である。
【図６】図６（Ａ）は、信号接続を示した概略ブロック図であり、図６（Ｂ）は、マイクユニット２Ａの構成を示す概略ブロック図である。
【図７】シリアルデータとパラレルデータを変換する場合の信号処理装置の構成を示した概略ブロック図である。
【図８】図８（Ａ）は、シリアルデータとパラレルデータの変換を示す概念図であり、図８（Ｂ）は、マイクユニットの信号の流れを示す図である。
【図９】各マイクユニットからホスト装置に信号を送信する場合の信号の流れを示す図である。
【図１０】ホスト装置１から各マイクユニットに個別の音声信号処理プログラムを送信する場合の信号の流れを示す図である。
【図１１】信号処理システムの動作を示したフローチャートである。
【図１２】応用例に係る信号処理システムの構成を示すブロック図である。
【図１３】応用例に係る子機の外観斜視図である。
【図１４】応用例に係る子機の構成を示すブロック図である。
【図１５】音声信号処理部の構成を示すブロック図である。
【図１６】子機データのデータフォーマット例を示す図である。
【図１７】応用例に係るホスト装置の構成を示すブロック図である。
【図１８】子機の音源追尾処理のフローチャートである。
【図１９】ホスト装置の音源追尾処理のフローチャートである。
【図２０】試験用音波を発してレベル判定を行う場合の動作を示すフローチャートである。
【図２１】子機のエコーキャンセラを特定する場合の動作を示すフローチャートである。
【図２２】ホスト装置でエコーサプレッサを構成する場合のブロック図である。
【図２３】図２３（Ａ）及び図２３（Ｂ）は、ホスト装置および子機の配置の変形例を示した図である。
【発明を実施するための形態】
【００２４】
図１は、本発明の信号処理システムの接続態様を示す図である。信号処理システムは、ホスト装置１と、ホスト装置１にそれぞれ接続される複数（この例では５つ）のマイクユニット２Ａ〜２Ｅと、からなる。
【００２５】
マイクユニット２Ａ〜２Ｅは、例えば大空間の会議室内にそれぞれ配置される。ホスト装置１は、各マイクユニットから音声信号を受信し、種々の処理を行う。例えば、ネットワークを介して接続された他のホスト装置に各マイクユニットの音声信号を個別に送信する。
【００２６】
図２（Ａ）は、ホスト装置１の構成を示すブロック図であり、図２（Ｂ）は、マイクユニット２Ａの構成を示すブロック図である。各マイクユニットのハードウェア構成は全て同一であり、図２（Ｂ）においては、代表してマイクユニット２Ａの構成および機能について説明する。なお、本実施形態では、Ａ／Ｄ変換の構成は省略し、特に記載が無い限り各種信号はデジタル信号であるものとして説明する。
【００２７】
図２（Ａ）に示すように、ホスト装置１は、通信インタフェース（Ｉ／Ｆ）１１、ＣＰＵ１２、ＲＡＭ１３、不揮発性メモリ１４、およびスピーカ１０２を備えている。
【００２８】
ＣＰＵ１２は、不揮発性メモリ１４からアプリケーションプログラムを読み出し、ＲＡＭ１３に一時記憶することで、種々の動作を行う。例えば、上述したように、各マイクユニットから音声信号を入力し、ネットワークを介して接続された他のホスト装置に各音声信号を個別に送信する。
【００２９】
不揮発性メモリ１４は、フラッシュメモリ、ハードディスクドライブ（ＨＤＤ）等からなる。不揮発性メモリ１４には、音声処理プログラム（以下、本実施形態においては音声信号処理プログラムと言う。）が記憶されている。音声信号処理プログラムは、各マイクユニットの動作用プログラムである。例えば、エコーキャンセラの機能を実現するプログラムや、ノイズキャンセラの機能を実現するプログラム、ゲイン制御を実現するプログラム等、様々な種類のプログラムが存在する。
【００３０】
ＣＰＵ１２は、不揮発性メモリ１４から所定の音声信号処理プログラムを読み出し、通信Ｉ／Ｆ１１を介して各マイクユニットに送信する。なお、音声信号処理プログラムは、アプリケーションプログラムに内蔵されていてもよい。
【００３１】
マイクユニット２Ａは、通信Ｉ／Ｆ２１Ａ、ＤＳＰ２２Ａ、およびマイクロホン（以下、マイクとも言う。）２５Ａを備えている。
【００３２】
ＤＳＰ２２Ａは、揮発性メモリ２３Ａおよび音声信号処理部２４Ａを備えている。なお、この例では、揮発性メモリ２３ＡがＤＳＰ２２Ａに内蔵されている態様を示しているが、揮発性メモリ２３Ａは、ＤＳＰ２２Ａとは別に設けられていてもよい。音声信号処理部２４Ａは、本発明の処理部に相当し、マイク２５Ａで収音した音声をデジタル音声信号として出力する機能を有する。
【００３３】
ホスト装置１から送信される音声信号処理プログラムは、通信Ｉ／Ｆ２１Ａを介して揮発性メモリ２３Ａに一時記憶される。音声信号処理部２４Ａは、揮発性メモリ２３Ａに一時記憶された音声信号処理プログラムに応じた処理を行い、マイク２５Ａが収音した音声に係るデジタル音声信号をホスト装置１に送信する。例えば、ホスト装置１からエコーキャンセラのプログラムが送信された場合、マイク２５Ａが収音した音声から、エコー成分を除去してからホスト装置１に送信する。このように、各マイクユニットでエコーキャンセラのプログラムを実行すると、ホスト装置１において通信会議用のアプリケーションプログラムを実行する場合に好適である。
【００３４】
揮発性メモリ２３Ａに一時記憶された音声信号処理プログラムは、マイクユニット２Ａへの電源供給が絶たれた場合に消去される。マイクユニットは、起動毎に都度、必ずホスト装置１から動作用の音声信号処理プログラムを受信してから動作を行う。マイクユニット２Ａが、通信Ｉ／Ｆ２１Ａを介して電源供給を受ける（バスパワー駆動する）ものであれば、ホスト装置１に接続された場合にのみ、ホスト装置１から動作用のプログラムを受信し、動作を行うことになる。
【００３５】
上述のように、ホスト装置１において通信会議用のアプリケーションプログラムを実行する場合には、エコーキャンセラ用の音声信号処理プログラムが実行され、録音用のアプリケーションプログラムを実行する場合は、ノイズキャンセラの音声信号処理プログラムが実行される。あるいは、各マイクユニットで収音した音声をホスト装置１のスピーカ１０２から出力するために、拡声用のアプリケーションプログラムを実行する場合には、ハウリングキャンセラ用の音声信号処理プログラムが実行される、という態様も可能である。なお、ホスト装置１において録音用のアプリケーションプログラムを実行する場合は、スピーカ１０２は不要である。
【００３６】
図３（Ａ）を参照して、エコーキャンセラについて説明する。図３（Ａ）は、音声信号処理部２４Ａがエコーキャンセラのプログラムを実行した場合の構成を示すブロック図である。図３（Ａ）に示すように、音声信号処理部２４Ａは、フィルタ係数設定部２４１、適応フィルタ２４２、および加算部２４３から構成される。
【００３７】
フィルタ係数設定部２４１は、音響伝達系（ホスト装置１のスピーカ１０２から各マイクユニットのマイクに至る音響伝搬経路）の伝達関数を推定し、推定した伝達関数で適応フィルタ２４２のフィルタ係数を設定する。
【００３８】
適応フィルタ２４２は、ＦＩＲフィルタ等のデジタルフィルタを含んでいる。適応フィルタ２４２は、ホスト装置１から、当該ホスト装置１のスピーカ１０２に入力される放音信号ＦＥを入力し、フィルタ係数設定部２４１に設定されたフィルタ係数でフィルタ処理して、擬似回帰音信号を生成する。適応フィルタ２４２は、生成した擬似回帰音信号を加算部２４３へ出力する。
【００３９】
加算部２４３は、適応フィルタ２４２から入力された擬似回帰音信号をマイク２５Ａの収音信号ＮＥ１から差し引いた収音信号ＮＥ１’を出力する。
【００４０】
フィルタ係数設定部２４１は、加算部２４３から出力された収音信号ＮＥ１’と放音信号ＦＥとに基づいて、ＬＭＳアルゴリズム等の適応アルゴリズムを用いてフィルタ係数の更新を行う。そして、フィルタ係数設定部２４１は、更新したフィルタ係数を適応フィルタ２４２に設定する。
【００４１】
次に、ノイズキャンセラについて、図３（Ｂ）を参照して説明する。図３（Ｂ）は、音声信号処理部２４Ａがノイズキャンセラのプログラムを実行した場合の構成を示すブロック図である。図３（Ｂ）に示すように、音声信号処理部２４Ａは、ＦＦＴ処理部２４５、ノイズ除去部２４６、推定部２４７、およびＩＦＦＴ処理部２４８から構成される。
【００４２】
ＦＦＴ処理部２４５は、収音信号ＮＥ’Ｔを周波数スペクトルＮＥ’Ｎに変換する。ノイズ除去部２４６は、周波数スペクトルＮＥ’Ｎに含まれるノイズ成分Ｎ’Ｎを除去する。ノイズ成分Ｎ’Ｎは、推定部２４７により周波数スペクトルＮＥ’Ｎに基づいて推定される。
【００４３】
推定部２４７は、ＦＦＴ処理部２４５から入力された周波数スペクトルＮＥ’Ｎに含まれるノイズ成分Ｎ’Ｎを推定する処理を行う。推定部２４７は、音声信号ＮＥ’Ｎのあるサンプルタイミングにおける周波数スペクトル（以下、音声スペクトルと称す。）Ｓ（ＮＥ’Ｎ）を順次取得するとともに、一時記憶する。推定部２４７は、この取得および記憶した複数回の音声スペクトルＳ（ＮＥ’Ｎ）に基づいて、ノイズ成分Ｎ’Ｎの或るサンプルタイミングにおける周波数スペクトル（以下、ノイズスペクトルと称す。）Ｓ（Ｎ’Ｎ）を推定する。そして、推定部２４７は、推定したノイズスペクトルＳ（Ｎ’Ｎ）をノイズ除去部２４６へ出力する。
【００４４】
例えば、或るサンプリングタイミングＴでのノイズスペクトルをＳ（Ｎ’Ｎ（Ｔ））とし、同サンプリングタイミングＴでの音声スペクトルをＳ（ＮＥ’Ｎ（Ｔ））として、直前のサンプリングタイミングＴ−１でのノイズスペクトルをＳ（Ｎ’Ｎ（Ｔ−１））とする。また、α，βは、忘却定数であり、例えば、α＝０．９、β＝０．１となる。ノイズスペクトルＳ（Ｎ’Ｎ（Ｔ））は、次の式１で表すことができる。
【００４５】
Ｓ（Ｎ’Ｎ（Ｔ））＝αＳ（Ｎ’Ｎ（Ｔ−１））＋βＳ（ＮＥ’Ｎ（Ｔ））・・・式１
このように、音声スペクトルに基づいてノイズスペクトルＳ（Ｎ’Ｎ（Ｔ））を推定することで、暗騒音等のノイズ成分を推定することができる。なお、推定部２４７は、マイク２５Ａが収音した収音信号のレベルが低い状態（無音状態）の場合のみ、ノイズスペクトルの推定処理を行うものとする。
【００４６】
ノイズ除去部２４６は、ＦＦＴ処理部２４５から入力された周波数スペクトルＮＥ’Ｎからノイズ成分Ｎ’Ｎを除去して、ノイズ除去後の周波数スペクトルＣＯ’ＮをＩＦＦＴ処理部２４８へ出力する。具体的には、ノイズ除去部２４６は、音声スペクトルＳ（ＮＥ’Ｎ）と、推定部２４７から入力されたノイズスペクトルＳ（Ｎ’Ｎ）との信号レベル比を算出する。ノイズ除去部２４６は、算出した信号レベル比が閾値以上の場合、音声スペクトルＳ（ＮＥ’Ｎ）を線形出力する。また、ノイズ除去部２４６は、算出した信号レベル比が閾値未満の場合、音声スペクトルＳ（ＮＥ’Ｎ）を非線形出力する。
【００４７】
ＩＦＦＴ処理部２４８は、ノイズ成分Ｎ’Ｎを除去した後の周波数スペクトルＣＯ’Ｎを時間軸に逆変換して生成した音声信号ＣＯ’Ｔを出力する。
【００４８】
また、音声信号処理プログラムは、図４に示すようなエコーサプレッサのプログラムを実現することも可能である。エコーサプレッサは、図３（Ａ）に示したエコーキャンセラの後段において、当該エコーキャンセラで除去しきれなかったエコー成分を除去するものである。エコーサプレッサは、図４に示すように、ＦＦＴ処理部１２１、エコー除去部１２２、ＦＦＴ処理部１２３、進捗度算出部１２４、エコー生成部１２５、ＦＦＴ処理部１２６、およびＩＦＦＴ処理部１２７から構成される。
【００４９】
ＦＦＴ処理部１２１は、エコーキャンセラから出力された収音信号ＮＥ１’を周波数スペクトルに変換する。この周波数スペクトルは、エコー除去部１２２および進捗度算出部１２４に出力される。エコー除去部１２２は、入力された周波数スペクトルに含まれる残留エコー成分（エコーキャンセラで除去しきれなかったエコー成分）を除去する。残留エコー成分は、エコー生成部１２５により生成される。
【００５０】
エコー生成部１２５は、ＦＦＴ処理部１２６から入力された擬似回帰音信号の周波数スペクトルに基づいて残留エコー成分を生成する。残留エコー成分は、過去に推定した残留エコー成分と、入力された擬似回帰音信号の周波数スペクトルに所定の係数を乗算したものと、を加算することにより求める。この所定の係数は、進捗度算出部１２４によって設定される。進捗度算出部１２４は、ＦＦＴ処理部１２３から入力された収音信号ＮＥ１（前段のエコーキャンセラによりエコー成分が除去される前の収音信号）と、ＦＦＴ処理部１２１から入力された収音信号ＮＥ１’（前段のエコーキャンセラによりエコー成分が除去された後の収音信号）とのパワー比を求める。進捗度算出部１２４は、当該パワー比に基づいた所定の係数を出力する。例えば、適応フィルタ２４２の学習が全く行われていない場合には、上記所定の係数を１とし、適応フィルタ２４２の学習が進んだ場合には、所定の係数を０とし、適応フィルタ２４２の学習が進むほど所定の係数を小さくして、残留エコー成分を小さくする。そして、エコー除去部１２２は、エコー生成部１２５で算出された残留エコー成分を除去する。ＩＦＦＴ処理部１２７は、エコー成分を除去した後の周波数スペクトルを時間軸に逆変換して出力する。
【００５１】
なお、これらのエコーキャンセラのプログラム、ノイズキャンセラのプログラム、およびエコーサプレッサのプログラムは、ホスト装置１で実行することも可能である。特に、各マイクユニットがエコーキャンセラのプログラムを実行しつつ、ホスト装置がエコーサプレッサのプログラムを実行することも可能である。
【００５２】
なお、本実施形態の信号処理システムでは、接続されるマイクユニットの数に応じて、実行する音声信号処理プログラムを変更することも可能である。例えば、接続されるマイクユニットの数が１つの場合は当該マイクユニットのゲインを高く設定し、マイクユニットの数が複数の場合は、各マイクユニットのゲインを相対的に低く設定する。
【００５３】
あるいは、各マイクユニットが複数のマイクを備えている場合、マイクアレイとして機能させるためのプログラムを実行する態様も可能である。この場合、ホスト装置１に接続される順番（位置）に応じて、マイクユニット毎に異なるパラメータ（ゲイン、遅延量等）を設定することができる。
【００５４】
このように、本実施形態のマイクユニットは、ホスト装置１の用途に応じて、種々の機能を実現することができる。このような多種多様な機能を実現する場合であっても、マイクユニット２Ａには、予めプログラムを記憶させておく必要がなく、不揮発メモリが不要である（あるいは容量が小さく済む）。
【００５５】
なお、本実施形態では、一時記憶用メモリの一例として、ＲＡＭである揮発性メモリ２３Ａを示したが、マイクユニット２Ａへの電源供給が絶たれた場合に内容が消去されるものであれば揮発性メモリに限らず、フラッシュメモリ等の不揮発性メモリを用いてもよい。この場合、例えば、マイクユニット２Ａへの電源供給が絶たれた場合やケーブルが差し替えられた場合に、ＤＳＰ２２Ａは、フラッシュメモリの内容を消去する。なお、この場合、マイクユニット２Ａへの電源供給が絶たれた時にＤＳＰ２２Ａがフラッシュメモリの内容を消去するまでの電源を一時的に確保するキャパシタ等を設ける。
【００５６】
また、製品販売時には想定されていなかった新たな機能を追加する場合に、各マイクユニットのプログラム書き換え処理は不要であり、ホスト装置１の不揮発性メモリ１４に記憶されている音声信号処理プログラムを変更するだけで、新たな機能を実現することができる。
【００５７】
さらに、マイクユニット２Ａ〜マイクユニット２Ｅは、全て同じハードウェアを有するため、どのマイクユニットをどの位置に接続するのか、ユーザが意識する必要はない。
【００５８】
例えば、最もホスト装置１に近いマイクユニット（例えばマイクユニット２Ａ）にはエコーキャンセラのプログラムを実行させ、ホスト装置１から遠いマイクユニット（例えばマイクユニット２Ｅ）にはノイズキャンセラのプログラムを実行させる場合において、仮にマイクユニット２Ａとマイクユニット２Ｅの接続を入れ替えた場合、最もホスト装置１に近いマイクユニット２Ｅに必ずエコーキャンセラのプログラムが実行され、最もホスト装置１から遠いマイクユニット２Ａにノイズキャンセラのプログラムが実行される。
【００５９】
なお、各マイクユニットは、図１に示したように、それぞれホスト装置１に直接接続されるスター型接続の態様であってもよいが、図５（Ａ）に示すように、各マイクユニット同士が直列に接続され、いずれか１つのマイクユニット（マイクユニット２Ａ）が、ホスト装置１に接続されるカスケード型接続の態様であってもよい。
【００６０】
図５（Ａ）の例では、ホスト装置１は、ケーブル３３１を介してマイクユニット２Ａに接続されている。マイクユニット２Ａおよびマイクユニット２Ｂは、ケーブル３４１を介して接続されている。マイクユニット２Ｂおよびマイクユニット２Ｃは、ケーブル３５１を介して接続されている。マイクユニット２Ｃおよびマイクユニット２Ｄは、ケーブル３６１を介して接続されている。マイクユニット２Ｄおよびマイクユニット２Ｅは、ケーブル３７１を介して接続されている。
【００６１】
図５（Ｂ）は、ホスト装置１の外観斜視図であり、図５（Ｃ）は、マイクユニット２Ａの外観斜視図である。図５（Ｃ）においては、マイクユニット２Ａを代表して図示し、説明を行うが、全てのマイクユニットは、同じ外観および構成を有する。図５（Ｂ）に示すように、ホスト装置１は、直方体形状の筐体１０１Ａを有し、筐体１０１Ａの側面（正面）にスピーカ１０２が設けられ、筐体１０１Ａの側面（背面）に通信Ｉ／Ｆ１１が設けられている。マイクユニット２Ａは、直方体形状の筐体２０１Ａを有し、筐体２０１Ａの側面にマイク２５Ａが設けられ、筐体２０１Ａの正面に第１入出力端子３３Ａおよび第２入出力端子３４Ａが設けられている。なお、図５（Ｃ）では、マイク２５Ａが背面、右側面、および左側面の３つの収音方向を有する例を示している。ただし、収音方向はこの例に限るものではない。例えば、３つのマイク２５Ａを平面視して１２０度間隔で並べて円周方向に収音する態様であってもよい。マイクユニット２Ａは、第１入出力端子３３Ａにケーブル３３１が接続され、当該ケーブル３３１を介してホスト装置１の通信Ｉ／Ｆ１１に接続されている。また、マイクユニット２Ａは、第２入出力端子３４Ａにケーブル３４１が接続され、当該ケーブル３４１を介してマイクユニット２Ｂの第１入出力端子３３Ｂに接続されている。なお、筐体１０１Ａおよび筐体２０１Ａの形状は直方体形状に限るものではない。例えば、ホスト装置１の筐体１０１Ａが楕円柱であり、マイクユニット２Ａの筐体２０１Ａが円柱形状であってもよい。
【００６２】
本実施形態の信号処理システムは、外観上は図５（Ａ）に示すカスケード型接続の態様でありながら、電気的にはスター型接続の態様を実現することも可能である。以下、この点について、説明する。
【００６３】
図６（Ａ）は、信号接続を示した概略ブロック図である。各マイクユニットのハードウェア構成は全て同一である。まず、代表して図６（Ｂ）を参照して、マイクユニット２Ａの構成および機能について説明する。
【００６４】
マイクユニット２Ａは、図２（Ａ）に示したＤＳＰ２２Ａに加えて、ＦＰＧＡ３１Ａ、第１入出力端子３３Ａおよび第２入出力端子３４Ａを備えている。
【００６５】
ＦＰＧＡ３１Ａは、図６（Ｂ）に示すような物理回路を実現する。すなわち、ＦＰＧＡ３１Ａは、第１入出力端子３３Ａの第１チャンネルと、ＤＳＰ２２Ａとを物理的に接続する。
【００６６】
また、ＦＰＧＡ３１Ａは、第１入出力端子３３Ａの第１チャンネル以外のサブチャンネルの１つと、第２入出力端子３４Ａの当該サブチャンネルに対応するチャンネルに隣接する他チャンネルと、を物理的に接続する。例えば、第１入出力端子３３Ａの第２チャンネルと、第２入出力端子３４Ａの第１チャンネルと、を接続し、第１入出力端子３３Ａの第３チャンネルと、第２入出力端子３４Ａの第２チャンネルと、を接続し、第１入出力端子３３Ａの第４チャンネルと、第２入出力端子３４Ａの第３チャンネルと、を接続し、第１入出力端子３３Ａの第５チャンネルと、第２入出力端子３４Ａの第４チャンネルと、を接続する。第２入出力端子３４Ａの第５チャンネルは、どこにも接続されていない。
【００６７】
このような物理回路により、ホスト装置１の第１チャンネルの信号（ｃｈ．１）は、マイクユニット２ＡのＤＳＰ２２Ａに入力される。また、図６（Ａ）に示すように、ホスト装置１の第２チャンネルの信号（ｃｈ．２）は、マイクユニット２Ａの第１入出力端子３３Ａの第２チャンネルから、マイクユニット２Ｂの第１入出力端子３３Ｂの第１チャンネルに入力され、ＤＳＰ２２Ｂに入力される。
【００６８】
第３チャンネルの信号（ｃｈ．３）は、第１入出力端子３３Ａの第３チャンネルからマイクユニット２Ｂの第１入出力端子３３Ｂの第２チャンネルを経て、マイクユニット２Ｃの第１入出力端子３３Ｃの第１チャンネルに入力され、ＤＳＰ２２Ｃに入力される。
【００６９】
同様の構造により、第４チャンネルの音声信号（ｃｈ．４）は、第１入出力端子３３Ａの第４チャンネルからマイクユニット２Ｂの第１入出力端子３３Ｂの第３チャンネル、およびマイクユニット２Ｃの第１入出力端子３３Ｃの第２チャンネルを経て、マイクユニット２Ｄの第１入出力端子３３Ｄの第１チャンネルに入力され、ＤＳＰ２２Ｄに入力される。第５チャンネルの音声信号（ｃｈ．５）は、第１入出力端子３３Ａの第５チャンネルからマイクユニット２Ｂの第１入出力端子３３Ｂの第４チャンネル、マイクユニット２Ｃの第１入出力端子３３Ｃの第３チャンネル、およびマイクユニット２Ｄの第１入出力端子３３Ｄの第２チャンネルを経て、マイクユニット２Ｅの第１入出力端子３３Ｅの第１チャンネルに入力され、ＤＳＰ２２Ｅに入力される。
【００７０】
これにより、外観上はカスケード型接続でありながら、ホスト装置１から各マイクユニットに個別の音声信号処理プログラムを送信することができる。この場合、ケーブルを介して直列に接続された各マイクユニットは、着脱自在とすることができ、接続順を考慮する必要がない。例えば、最もホスト装置１に近いマイクユニット２Ａにエコーキャンセラのプログラムを送信し、最もホスト装置１から遠いマイクユニット２Ｅにノイズキャンセラのプログラムを送信する場合において、仮にマイクユニット２Ａとマイクユニット２Ｅの接続位置を入れ替えた場合に各マイクユニットに送信されるプログラムについて説明する。この場合、マイクユニット２Ｅの第１入出力端子３３Ｅは、ケーブル３３１を介してホスト装置１の通信Ｉ／Ｆ１１と接続され、第２入出力端子３４Ｅは、ケーブル３４１を介してマイクユニット２Ｂの第１入出力端子３３Ｂと接続される。マイクユニット２Ａの第１入出力端子３３Ａは、ケーブル３７１を介してマイクユニット２Ｄの第２入出力端子３４Ｄに接続される。すると、マイクユニット２Ｅにエコーキャンセラのプログラムが送信され、マイクユニット２Ａにノイズキャンセラのプログラムが送信される。このように、接続順を入れ替えたとしても、最もホスト装置１に近いマイクユニットに必ずエコーキャンセラのプログラムが実行され、最もホスト装置１から遠いマイクユニットにノイズキャンセラのプログラムが実行される。
【００７１】
なお、ホスト装置１は、各マイクユニットの接続順序を認識し、接続順序およびケーブルの長さに基づいて、自装置から一定の距離以内のマイクユニットにはエコーキャンセラのプログラムを送信し、自装置から一定の距離を超えたマイクユニットには、ノイズキャンセラのプログラムを送信することも可能である。ケーブルの長さは、例えば、専用のケーブルを用いる場合には、予めホスト装置にケーブルの長さに関する情報を記憶しておく。また、各ケーブルに識別情報を設定して、識別情報とケーブルの長さに関する情報を記憶し、使用されている各ケーブルから識別情報を受信することで、使用されている各ケーブルの長さを知ることも可能である。
【００７２】
なお、ホスト装置１は、エコーキャンセラのプログラムを送信する時に、自装置に近いエコーキャンセラにはフィルタ係数の数（タップ数）を増加して残響の長いエコーにも対応できるようにし、自装置から遠いエコーキャンセラにはフィルタ係数の数（タップ数）を減少することが好ましい。
【００７３】
また、自装置から一定の距離以内のマイクユニットにはエコーキャンセラのプログラムに代えて、非線形処理を行うプログラム（例えば上述のエコーサプレッサのプログラム）を送信し、エコーキャンセラでは除去しきれないエコー成分が発生する場合であっても、当該エコー成分を除去する態様とすることも可能である。また、本実施形態では、マイクユニットは、ノイズキャンセラまたはエコーキャンセラのいずれかを選択するよう記載されているが、ホスト装置１に近いマイクユニットにはノイズキャンセラおよびエコーキャンセラの双方のプログラムを送信し、ホスト装置１から遠いマイクユニットにはノイズキャンセラのプログラムのみを送信してもよい。
【００７４】
図６（Ａ）および図６（Ｂ）に示した構成によれば、各マイクユニットからホスト装置１に音声信号を出力する場合も同様に、各マイクユニットから各チャンネルの音声信号を個別に出力することができる。
【００７５】
また、この例では、ＦＰＧＡで物理回路を実現する例を示したが、上述の物理回路を実現できるものであれば、ＦＰＧＡに限るものではない。例えば、専用のＩＣを予め用意しておいてもよいし、あらかじめ配線を施しておいてもよい。また、物理回路に限らず、ソフトウェアでＦＰＧＡ３１Ａと同様の回路を実現する態様であってもよい。
【００７６】
次に、図７は、シリアルデータとパラレルデータを変換する場合のマイクユニットの構成を示した概略ブロック図である。図７においては、マイクユニット２Ａを代表して図示し、説明を行うが、全てのマイクユニットは、同じ構成および機能を有する。
【００７７】
この例では、マイクユニット２Ａは、図６（Ａ）および図６（Ｂ）に示したＦＰＧＡ３１Ａに代えて、ＦＰＧＡ５１Ａを備えている。
【００７８】
ＦＰＧＡ５１Ａは、上述したＦＰＧＡ３１Ａに相当する物理回路５０１Ａ、シリアルデータとパラレルデータとを変換する第１変換部５０２Ａおよび第２変換部５０３Ａを備えている。
【００７９】
この例では、第１入出力端子３３Ａおよび第２入出力端子３４Ａは、複数チャンネルの音声信号をシリアルデータとして入出力する。ＤＳＰ２２Ａは、第１チャンネルの音声信号をパラレルデータで物理回路５０１Ａに出力する。
【００８０】
物理回路５０１Ａは、ＤＳＰ２２Ａから出力された第１チャンネルのパラレルデータを第１変換部５０２Ａに出力する。また、物理回路５０１Ａは、第２変換部５０３Ａから出力された第２チャンネルのパラレルデータ（ＤＳＰ２２Ｂの出力信号に相当する。）、第３チャンネルのパラレルデータ（ＤＳＰ２２Ｃの出力信号に相当する。）、第４チャンネルのパラレルデータ（ＤＳＰ２２Ｄの出力信号に相当する。）、および第５チャンネルのパラレルデータ（ＤＳＰ２２Ｅの出力信号に相当する。）を第１変換部５０２Ａに出力する。
【００８１】
図８（Ａ）は、シリアルデータとパラレルデータの変換を示す概念図である。パラレルデータは、図８（Ａ）の上欄に示すように、同期用のビットクロック（ＢＣＫ）と、ワードクロック（ＷＣＫ）と、各チャンネル（５チャンネル）の信号ＳＤＯ０〜ＳＤＯ４と、からなる。
【００８２】
シリアルデータは、同期信号とデータ部分と、からなる。データ部分には、ワードクロックと、各チャンネル（５チャンネル）の信号ＳＤＯ０〜ＳＤＯ４と、誤り訂正符号ＣＲＣと、が含まれている。
【００８３】
第１変換部５０２Ａは、物理回路５０１Ａから図８（Ａ）上欄に示すようなパラレルデータが入力される。第１変換部５０２Ａは、当該パラレルデータを図８（Ａ）下欄に示すようなシリアルデータに変換する。このようなシリアルデータが第１入出力端子３３Ａに出力され、ホスト装置１に入力される。ホスト装置１は、入力されたシリアルデータに基づいて、各チャンネルの音声信号を処理する。
【００８４】
一方、第２変換部５０３Ａは、マイクユニット２Ｂの第１変換部５０２Ｂから図８（Ａ）下欄に示すようなシリアルデータが入力され、図８（Ａ）上欄に示すようなパラレルデータに変換し、物理回路５０１Ａに出力する。
【００８５】
そして、図８（Ｂ）に示すように、物理回路５０１Ａによって、第２変換部５０３Ａが出力するＳＤＯ０の信号は、ＳＤＯ１の信号として第１変換部５０２Ａに出力され、第２変換部５０３Ａが出力するＳＤＯ１の信号は、ＳＤＯ２の信号として第１変換部５０２Ａに出力され、第２変換部５０３Ａが出力するＳＤＯ２の信号は、ＳＤＯ３の信号として第１変換部５０２Ａに出力され、第２変換部５０３Ａが出力するＳＤＯ３の信号は、ＳＤＯ４の信号として第１変換部５０２Ａに出力される。
【００８６】
したがって、図６（Ａ）に示した例と同様に、ＤＳＰ２２Ａの出力した第１チャンネルの音声信号（ｃｈ．１）は、ホスト装置１に第１チャンネルの音声信号として入力され、ＤＳＰ２２Ｂが出力した第２チャンネルの音声信号（ｃｈ．２）は、ホスト装置１に第２チャンネルの音声信号として入力され、ＤＳＰ２２Ｃが出力した第３チャンネルの音声信号（ｃｈ．３）は、ホスト装置１に第３チャンネルの音声信号として入力され、ＤＳＰ２２Ｄが出力した第４チャンネルの音声信号（ｃｈ．４）は、ホスト装置１に第４チャンネルの音声信号として入力され、マイクユニット２ＥのＤＳＰ２２Ｅが出力した第５チャンネルの音声信号（ｃｈ．５）は、ホスト装置１に第５チャンネルの音声信号として入力される。
【００８７】
図９を参照して、上述の信号の流れについて説明する。まず、マイクユニット２ＥのＤＳＰ２２Ｅは、自装置のマイク２５Ｅで収音した音声を音声信号処理部２４Ａで処理し、当該処理後の音声を単位ビットデータに分割したもの（信号ＳＤＯ４）を物理回路５０１Ｅに出力する。物理回路５０１Ｅは、当該信号ＳＤＯ４を第１チャンネルの信号とするパラレルデータとして、第１変換部５０２Ｅに出力する。第１変換部５０２Ｅは、当該パラレルデータをシリアルデータに変換する。当該シリアルデータは、図９の最下欄に示すように、ワードクロックから順に、先頭の単位ビットデータ（図中の信号ＳＤＯ４）と、ビットデータ０（図中のハイフン「−」で示す。）と、誤り訂正符号ＣＲＣと、が含まれている。このようなシリアルデータが第１入出力端子３３Ｅから出力され、マイクユニット２Ｄに入力される。
【００８８】
マイクユニット２Ｄの第２変換部５０３Ｄは、入力されたシリアルデータをパラレルデータに変換し、物理回路５０１Ｄに出力する。そして、物理回路５０１Ｄは、当該パラレルデータに含まれる信号ＳＤＯ４を第２チャンネルの信号として、ＤＳＰ２２Ｄから入力される信号ＳＤＯ３を第１チャンネルの信号として、第１変換部５０２Ｄに出力する。第１変換部５０２Ｄは、図９の上から３欄目に示すように、信号ＳＤＯ３をワードクロックに続く先頭の単位ビットデータとして挿入し、信号ＳＤＯ４を２番目の単位ビットデータとするシリアルデータに変換する。また、第１変換部５０２Ｄは、この場合（信号ＳＤＯ３が先頭であり、信号ＳＤＯ４が２番目である場合）の誤り訂正符号ＣＲＣを新たに生成し、当該シリアルデータに付与して出力する。
【００８９】
このようなシリアルデータが第１入出力端子３３Ｄから出力され、マイクユニット２Ｃに入力される。マイクユニット２Ｃにおいても同様の処理が行われる。その結果、マイクユニット２Ｃは、信号ＳＤＯ２をワードクロックに続く先頭の単位ビットデータとして挿入し、信号ＳＤＯ３を２番目の単位ビットデータとし、信号ＳＤＯ４を３番目の単位ビットデータとし、新たな誤り訂正符号ＣＲＣを付与したシリアルデータを出力する。当該シリアルデータは、マイクユニット２Ｂに入力される。マイクユニット２Ｂにおいても同様の処理が行われる。その結果、マイクユニット２Ｂは、信号ＳＤＯ１をワードクロックに続く先頭の単位ビットデータとして挿入し、信号ＳＤＯ２を２番目の単位ビットデータとし、信号ＳＤＯ３を３番目の単位ビットデータとし、信号ＳＤＯ４を４番目の単位ビットデータとし、新たな誤り訂正符号ＣＲＣを付与したシリアルデータを出力する。当該シリアルデータは、マイクユニット２Ａに入力される。マイクユニット２Ａにおいても同様の処理が行われる。その結果、マイクユニット２Ａは、信号ＳＤＯ０をワードクロックに続く先頭の単位ビットデータとして挿入し、信号ＳＤＯ１を２番目の単位ビットデータとし、信号ＳＤＯ２を３番目の単位ビットデータとし、信号ＳＤＯ３を４番目の単位ビットデータとし、信号ＳＤＯ４を５番目の単位ビットデータとし、新たな誤り訂正符号ＣＲＣを付与したシリアルデータを出力する。そして、当該シリアルデータは、ホスト装置１に入力される。
【００９０】
このようにして、図６（Ａ）に示した例と同様に、ＤＳＰ２２Ａの出力した第１チャンネルの音声信号（ｃｈ．１）は、ホスト装置１に第１チャンネルの音声信号として入力され、ＤＳＰ２２Ｂが出力した第２チャンネルの音声信号（ｃｈ．２）は、ホスト装置１に第２チャンネルの音声信号として入力され、ＤＳＰ２２Ｃが出力した第３チャンネルの音声信号（ｃｈ．３）は、ホスト装置１に第３チャンネルの音声信号として入力され、ＤＳＰ２２Ｄが出力した第４チャンネルの音声信号（ｃｈ．４）は、ホスト装置１に第４チャンネルの音声信号として入力され、マイクユニット２ＥのＤＳＰ２２Ｅが出力した第５チャンネルの音声信号（ｃｈ．５）は、ホスト装置１に第５チャンネルの音声信号として入力される。すなわち、各マイクユニットは、各ＤＳＰで処理された音声信号を、一定の単位ビットデータに分割して上位に接続されたマイクユニットに送信し、各マイクユニットは協同して送信用シリアルデータを作成することになる。
【００９１】
次に、図１０は、ホスト装置１から各マイクユニットに個別の音声信号処理プログラムを送信する場合の信号の流れを示す図である。この場合、図９に示した信号の流れとは逆の処理がなされる。
【００９２】
まず、ホスト装置１は、不揮発性メモリ１４から、各マイクユニットに送信する音声信号処理プログラムを一定の単位ビットデータに分割して読み出し、単位ビットデータを各マイクユニットが受け取る順に配列したシリアルデータを作成する。シリアルデータは、ワードクロックに続く先頭の単位ビットデータとして信号ＳＤＯ０、２番目の単位ビットデータとして信号ＳＤＯ１、３番目の単位ビットデータとして信号ＳＤＯ２、４番目の単位ビットデータとして信号ＳＤＯ３、５番目の単位ビットデータとして信号ＳＤＯ４、および誤り訂正符号ＣＲＣが付与されている。当該シリアルデータがまずマイクユニット２Ａに入力される。マイクユニット２Ａでは、当該シリアルデータから先頭の単位ビットデータである信号ＳＤＯ０が抜き出され、当該抜き出された単位ビットデータがＤＳＰ２２Ａに入力され、揮発性メモリ２３Ａに一時記憶される。
【００９３】
そして、マイクユニット２Ａは、ワードクロックに続く先頭の単位ビットデータとして信号ＳＤＯ１、２番目の単位ビットデータとして信号ＳＤＯ２、３番目の単位ビットデータとして信号ＳＤＯ３、４番目の単位ビットデータとして信号ＳＤＯ４、および新たな誤り訂正符号ＣＲＣを付与したシリアルデータを出力する。５番目の単位ビットデータは０（図中のハイフン「−」）とされる。当該シリアルデータがマイクユニット２Ｂに入力される。マイクユニット２Ｂでは、先頭の単位ビットデータである信号ＳＤＯ１がＤＳＰ２２Ｂに入力される。そして、マイクユニット２Ｂは、ワードクロックに続く先頭の単位ビットデータとして信号ＳＤＯ２、２番目の単位ビットデータとして信号ＳＤＯ３、３番目の単位ビットデータとして信号ＳＤＯ４、および新たな誤り訂正符号ＣＲＣを付与したシリアルデータを出力する。当該シリアルデータがマイクユニット２Ｃに入力される。マイクユニット２Ｃでは、先頭の単位ビットデータである信号ＳＤＯ２がＤＳＰ２２Ｃに入力される。そして、マイクユニット２Ｃは、ワードクロックに続く先頭の単位ビットデータとして信号ＳＤＯ３、２番目の単位ビットデータとして信号ＳＤＯ４、および新たな誤り訂正符号ＣＲＣを付与したシリアルデータを出力する。当該シリアルデータがマイクユニット２Ｄに入力される。マイクユニット２Ｄでは、先頭の単位ビットデータである信号ＳＤＯ３がＤＳＰ２２Ｄに入力される。そして、マイクユニット２Ｄは、ワードクロックに続く先頭の単位ビットデータとして信号ＳＤＯ４、および新たな誤り訂正符号ＣＲＣを付与したシリアルデータを出力する。最後に、当該シリアルデータがマイクユニット２Ｅに入力され、先頭の単位ビットデータである信号ＳＤＯ４がＤＳＰ２２Ｅに入力される。
【００９４】
この様にして、ホスト装置１に接続されているマイクユニットには必ず先頭の単位ビットデータ（信号ＳＤＯ０）が送信され、２番目に接続されているマイクユニットには必ず２番目の単位ビットデータ（信号ＳＤＯ１）が送信され、３番目に接続されているマイクユニットには必ず３番目の単位ビットデータ（信号ＳＤＯ２）が送信され、４番目に接続されているマイクユニットには必ず４番目の単位ビットデータ（信号ＳＤＯ３）が送信され、５番目に接続されているマイクユニットには必ず５番目の単位ビットデータ（信号ＳＤＯ４）が送信される。
【００９５】
そして、各マイクユニットは、単位ビットデータを結合した音声信号処理プログラムに応じた処理を行う。この場合においても、ケーブルを介して直列に接続された各マイクユニットは、着脱自在とすることができ、接続順を考慮する必要がない。例えば、最もホスト装置１に近いマイクユニット２Ａにエコーキャンセラのプログラムを送信し、最もホスト装置１から遠いマイクユニット２Ｅにノイズキャンセラのプログラムを送信する場合において、仮にマイクユニット２Ａとマイクユニット２Ｅの接続位置を入れ替えると、マイクユニット２Ｅにエコーキャンセラのプログラムが送信され、マイクユニット２Ａにノイズキャンセラのプログラムが送信される。このように、接続順を入れ替えたとしても、最もホスト装置１に近いマイクユニットに必ずエコーキャンセラのプログラムが実行され、最もホスト装置１から遠いマイクユニットにノイズキャンセラのプログラムが実行される。
【００９６】
次に、図１１のフローチャートを参照して、ホスト装置１および各マイクユニットの起動時の動作について説明する。ホスト装置１のＣＰＵ１２は、マイクユニットが接続され、当該マイクユニットの起動状態を検知すると（Ｓ１１）、不揮発性メモリ１４から所定の音声信号処理プログラムを読み出し（Ｓ１２）、通信Ｉ／Ｆ１１を介して各マイクユニットに送信する（Ｓ１３）。このとき、ホスト装置１のＣＰＵ１２は、上述のように音声信号処理プログラムを一定の単位ビットデータに分割し、単位ビットデータを各マイクユニットが受け取る順に配列したシリアルデータを作成して、マイクユニットへ送信する。
【００９７】
各マイクユニットは、ホスト装置１から送信された音声信号処理プログラムを受信し（Ｓ２１）、一時記憶する（Ｓ２２）。このとき、各マイクユニットは、シリアルデータから自己が受け取るべき単位ビットデータを抜き出して受け取り、抜き出した単位ビットデータを一時記憶する。マイクユニットは、一時記憶した単位ビットデータを結合し、結合した音声信号処理プログラムに応じた処理を行う（Ｓ２３）。そして、各マイクユニットは、収音した音声に係るデジタル音声信号をホスト装置１に送信する（Ｓ２４）。このとき、各マイクユニットの音声信号処理部が処理したデジタル音声信号は、一定の単位ビットデータに分割されて上位に接続されたマイクユニットに送信され、各マイクユニットが協同して送信用シリアルデータを作成し、当該送信用シリアルデータをホスト装置に送信する。
【００９８】
なお、この例では、最小ビット単位でシリアルデータに変換しているが、例えば１ワード毎に変換する等、最小ビット単位の変換に限るものではない。
【００９９】
また、仮に、接続されていないマイクユニットが存在した場合、信号がないチャンネルが存在する場合（ビットデータが０となる場合）であっても、当該チャンネルのビットデータは削除せずに、シリアルデータ内に含めて伝送する。例えば、マイクユニットの数が４つであった場合、必ず信号ＳＤＯ４はビットデータが０となるが、当該信号ＳＤＯ４は削除されずにビットデータ０の信号として伝送される。したがって、どの装置がどのチャンネルに対応する装置であるか、接続関係を考慮する必要もなく、どの装置にどのデータを送受信するか、等のアドレス情報も不要であり、仮に各マイクユニットの接続順を入れ替えたとしても、それぞれのマイクユニットから適切なチャンネルの信号が出力される。
【０１００】
このようにして、装置間をシリアルデータで伝送する構成とすれば、チャンネル数が増えたとしても装置間の信号線が増えることがない。なお、マイクユニットの起動状態を検知する検知手段は、ケーブルの接続を検知することで起動状態を検知することができるが、電源投入時に接続されているマイクユニットを検出してもよい。また、使用中に新たなマイクユニットが追加された場合は、ケーブルの接続を検知し、起動状態を検知することもできる。この場合は、接続済みマイクユニットのプログラムを消去し、再度本体からすべてのマイクユニットへ音声処理プログラムを送信することもできる。
【０１０１】
次に、図１２は、応用例に係る信号処理システムの構成図である。応用例に係る信号処理システムでは、直列接続された子機１０Ａ〜子機１０Ｅと、子機１０Ａに接続された親機（ホスト装置）１と、を備えている。図１３は、子機１０Ａの外観斜視図である。図１４は、子機１０Ａの構成を示すブロック図である。この応用例では、ホスト装置１は、ケーブル３３１を介して子機１０Ａに接続されている。子機１０Ａおよび子機１０Ｂは、ケーブル３４１を介して接続されている。子機１０Ｂおよび子機１０Ｃは、ケーブル３５１を介して接続されている。子機１０Ｃおよび子機１０Ｄは、ケーブル３６１を介して接続されている。子機１０Ｄおよび子機１０Ｅは、ケーブル３７１を介して接続されている。子機１０Ａ〜子機１０Ｅは、同じ構成からなる。したがって、以下の子機の構成の説明では、子機１０Ａを代表して説明する。各子機のハードウェア構成は全て同一である。
【０１０２】
子機１０Ａは、上述のマイクユニット２Ａと同じ構成および機能を有する。ただし、子機１０Ａは、マイク２５Ａに代えて、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍを備えている。また、この例では、図１５に示すように、ＤＳＰ２２Ａの音声信号処理部２４Ａは、増幅器１１ａ〜増幅器１１ｍ、係数決定部１２０、合成部１３０、およびＡＧＣ１４０の構成を備える。
【０１０３】
マイクロホンの本数は、二本以上であればよく、一台の子機での収音仕様に応じて、適宜設定することができる。これに応じて、増幅器の個数も、マイクロホンの本数と同じにすればよい。例えば、円周方向に少ない本数で収音するならば三本のマイクロホンで足りる。
【０１０４】
各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、異なる収音方向を有する。すなわち、各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、所定の収音指向性を有し、特定方向を主収音方向として収音し、収音信号Ｓｍａ〜収音信号Ｓｍｍを生成する。具体的に、例えば、マイクロホンＭＩＣａは、第１の特定方向を主収音方向として収音し、収音信号Ｓｍａを生成する。同様に、マイクロホンＭＩＣｂは、第２の特定方向を主収音方向として収音し、収音信号Ｓｍｂを生成する。
【０１０５】
各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、それぞれの収音指向性が異なるように、子機１０Ａに設置されている。言い換えれば、各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍは、主収音方向が異なるように、子機１０Ａに設置されている。
【０１０６】
各マイクロホンＭＩＣａ〜マイクロホンＭＩＣｍから出力される各収音信号Ｓｍａ〜収音信号Ｓｍｍは、それぞれ増幅器１１ａ〜増幅器１１ｍに入力される。例えば、マイクロホンＭＩＣａから出力される収音信号Ｓｍａは、増幅器１１ａに入力され、マイクロホンＭＩＣｂから出力される収音信号Ｓｍｂは、増幅器１１ｂに入力される。マイクロホンＭＩＣｍから出力される収音信号Ｓｍｍは、増幅器１１ｍに入力される。また、各収音信号Ｓｍａ〜収音信号Ｓｍｍは、係数決定部１２０に入力される。この際、各収音信号Ｓｍａ〜収音信号Ｓｍｍは、アナログ信号からデジタル信号に変換された後に、各増幅器１１ａ〜増幅器１１ｍに入力される。
【０１０７】
係数決定部１２０は、収音信号Ｓｍａ〜収音信号Ｓｍｍの信号パワーを検出する。各収音信号Ｓｍａ〜収音信号Ｓｍｍの信号パワーを比較し、最大パワーとなる収音信号を検出する。係数決定部１２０は、最大パワーと検出された収音信号に対するゲイン係数を「１」とする。係数決定部１２０は、最大パワーと検出された収音信号以外の収音信号に対するゲイン係数を「０」とする。
【０１０８】
係数決定部１２０は、決定したゲイン係数を、増幅器１１ａ〜増幅器１１ｍに出力する。具体的には、係数決定部１２０は、最大パワーと検出された収音信号が入力される増幅器にはゲイン係数＝「１」を出力し、それ以外の増幅器にはゲイン係数＝「０」を出力する。
【０１０９】
係数決定部１２０は、最大パワーと検出された収音信号の信号レベルを検出して、レベル情報ＩＦｏ１０Ａを生成する。係数決定部１２０は、レベル情報ＩＦｏ１０Ａを、ＦＰＧＡ５１Ａに出力する。
【０１１０】
増幅器１１ａ〜増幅器１１ｍは、ゲイン調整可能な増幅器である。増幅器１１ａ〜増幅器１１ｍは、収音信号Ｓｍａ〜収音信号Ｓｍｍを、係数決定部１２０から与えられたゲイン係数で増幅し、それぞれに、増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍを生成する。具体的に、例えば、増幅器１１ａは、係数決定部１２０からのゲイン係数で収音信号Ｓｍａを増幅して、増幅後収音信号Ｓｍｇａを出力する。増幅器１１ｂは、係数決定部１２０からのゲイン係数で収音信号Ｓｍｂを増幅して、増幅後収音信号Ｓｍｇｂを出力する。増幅器１１ｍは、係数決定部１２０からのゲイン係数で収音信号Ｓｍｍを増幅して、増幅後収音信号Ｓｍｇｍを出力する。
【０１１１】
ここで、上述のように、ゲイン係数は、「１」もしくは「０」であるので、ゲイン係数＝「１」が与えられた増幅器は、収音信号の信号レベルをそのまま維持して出力する。この場合、増幅後収音信号は、収音信号のままとなる。
【０１１２】
一方、ゲイン係数＝「０」が与えられた増幅器は、収音信号の信号レベルを「０」に抑圧する。この場合、増幅後収音信号は、信号レベル「０」の信号となる。
【０１１３】
各増幅後収音信号Ｓｍｇａ〜Ｓｍｇｍは、合成部１３０に入力される。合成部１３０は、加算器であり、各増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍを加算することで、子機音声信号Ｓｍ１０Ａを生成する。
【０１１４】
ここで、増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍは、当該増幅後収音信号Ｓｍｇａ〜Ｓｍｇｍの元となる収音信号Ｓｍａ〜収音信号Ｓｍｍの最大パワーのものだけが、収音信号に応じた信号レベルであり、他のものは信号レベルが「０」である。
【０１１５】
したがって、増幅後収音信号Ｓｍｇａ〜増幅後収音信号Ｓｍｇｍを加算した子機音声信号Ｓｍ１０Ａは、最大パワーと検出された収音信号そのものとなる。
【０１１６】
このような処理を行うことで、最大パワーの収音信号を検出して、子機音声信号Ｓｍ１０Ａとして出力することができる。この処理は、所定の時間間隔をおいて逐次実行される。したがって、最大パワーの収音信号が変化すれば、すなわち、この最大パワーの収音信号の音源が移動すれば、この変化および移動に応じて、子機音声信号Ｓｍ１０Ａとなる収音信号も変化する。これにより、各マイクロホンの収音信号に基づいて音源を追尾し、音源からの音を最も効率良く収音した子機音声信号Ｓｍ１０Ａを出力することができる。
【０１１７】
ＡＧＣ１４０は、所謂、オートゲインコントロールアンプであり、子機音声信号Ｓｍ１０Ａを、所定ゲインで増幅して、ＦＰＧＡ５１Ａに出力する。ＡＧＣ１４０で設定するゲインは、通信仕様に応じて適宜設定される。具体的には、例えば、ＡＧＣ１４０で設定するゲインは、予め伝送損失を見積もっておき、当該伝送損失を補償するように設定される。
【０１１８】
このような子機音声信号Ｓｍ１０Ａのゲインコントロールを行うことで、子機１０Ａからホスト装置１へ、子機音声信号Ｓｍ１０Ａを正確且つ確実に送信することができる。これにより、ホスト装置１は、子機音声信号Ｓｍ１０Ａを正確且つ確実に受信し、復調することができる。
【０１１９】
そして、ＦＰＧＡ５１Ａには、ＡＧＣ後の子機音声信号Ｓｍ１０Ａとレベル情報ＩＦｏ１０Ａとが入力される。
【０１２０】
ＦＰＧＡ５１Ａは、ＡＧＣ後の子機音声信号Ｓｍ１０Ａとレベル情報ＩＦｏ１０Ａとから子機データＤ１０Ａを生成して、ホスト装置１に送信する。この際、レベル情報ＩＦｏ１０Ａは、同じ子機データに割り当てられる子機音声信号Ｓｍ１０Ａと同期したデータである。
【０１２１】
図１６は、子機からホスト装置に送信される子機データのデータフォーマット例を示す図である。子機データＤ１０Ａは、送信元である子機が識別可能なヘッダＤＨ、子機音声信号Ｓｍ１０Ａ、レベル情報ＩＦｏ１０Ａがそれぞれ所定ビット数割り当てられたデータである。例えば、図１６に示すように、ヘッダＤＨの後に子機音声信号Ｓｍ１０Ａが所定ビット割り当てられ、子機音声信号Ｓｍ１０Ａのビット列の後にレベル情報ＩＦｏ１０Ａが所定ビット割り当てられている。
【０１２２】
他の子機１０Ｂ〜１０Ｅも、上述の子機１０Ａと同様に、それぞれに子機音声信号Ｓｍ１０Ｂ〜子機音声信号Ｓｍ１０Ｅとレベル情報ＩＦｏ１０Ｂ〜レベル情報ＩＦｏ１０Ｅとを含む子機データＤ１０Ｂ〜子機データＤ１０Ｅを生成して、ホスト装置１に出力する。なお、子機データＤ１０Ｂ〜子機データＤ１０Ｅは、それぞれ一定の単位ビットデータに分割されて上位に接続された子機に送信されることにより、各子機が協同してシリアルデータを作成することになる。
【０１２３】
図１７は、ホスト装置１のＣＰＵ１２が所定の音声信号処理プログラムを実行することにより実現される各種構成を示すブロック図である。
【０１２４】
ホスト装置１のＣＰＵ１２は、複数の増幅器２１ａ〜増幅器２１ｅ、係数決定部２２０、および合成部２３０を備える。
【０１２５】
通信Ｉ／Ｆ１１には、各子機１０Ａ〜子機１０Ｅからの子機データＤ１０Ａ〜子機データＤ１０Ｅが入力される。通信Ｉ／Ｆ１１は、子機データＤ１０Ａ〜子機データＤ１０Ｅを復調し、子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅと、各レベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅを取得する。
【０１２６】
通信Ｉ／Ｆ１１は、子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅをそれぞれ増幅器２１ａ〜増幅器２１ｅに出力する。具体的には、通信Ｉ／Ｆ１１は、子機音声信号Ｓｍ１０Ａを増幅器２１ａに出力し、子機音声信号Ｓｍ１０Ｂを増幅器２１ｂに出力する。同様に、通信Ｉ／Ｆ１１は、子機音声信号Ｓｍ１０Ｅを増幅器２１ｅに出力する。
【０１２７】
通信Ｉ／Ｆ１１は、レベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅを係数決定部２２０に出力する。
【０１２８】
係数決定部２２０は、レベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅを比較し、最大のレベル情報を検出する。
【０１２９】
係数決定部２２０は、最大レベルと検出されたレベル情報に対応する子機音声信号に対するゲイン係数を「１」とする。係数決定部２２０は、最大レベルと検出されたレベル情報に対応する子機音声信号以外の収音信号に対するゲイン係数を「０」とする。
【０１３０】
係数決定部２２０は、決定したゲイン係数を、増幅器２１ａ〜増幅器２１ｅに出力する。具体的には、係数決定部２２０は、最大レベルと検出されたレベル情報に対応する子機音声信号が入力される増幅器にはゲイン係数＝「１」を出力し、それ以外の増幅器にはゲイン係数＝「０」を出力する。
【０１３１】
増幅器２１ａ〜増幅器２１ｅは、ゲイン調整可能な増幅器である。増幅器２１ａ〜２１ｅは、子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅを、係数決定部２２０から与えられたゲイン係数で増幅し、それぞれに、増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅを生成する。
【０１３２】
具体的に、例えば、増幅器２１ａは、係数決定部２２０からのゲイン係数で子機音声信号Ｓｍ１０Ａを増幅して、増幅後音声信号Ｓｍｇ１０Ａを出力する。増幅器２１ｂは、係数決定部２２０からのゲイン係数で子機音声信号Ｓｍ１０Ｂを増幅して、増幅後音声信号Ｓｍｇ１０Ｂを出力する。増幅器２１ｅは、係数決定部２２０からのゲイン係数で子機音声信号Ｓｍ１０Ｅを増幅して、増幅後音声信号Ｓｍｇ１０Ｅを出力する。
【０１３３】
ここで、上述のように、ゲイン係数は、「１」もしくは「０」であるので、ゲイン係数＝「１」が与えられた増幅器は、子機音声信号の信号レベルをそのまま維持して出力する。この場合、増幅後音声信号は、子機音声信号のままとなる。
【０１３４】
一方、ゲイン係数＝「０」が与えられた増幅器は、子機音声信号の信号レベルを「０」に抑圧する。この場合、増幅後音声信号は、信号レベル「０」の信号となる。
【０１３５】
各増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅは、合成部２３０に入力される。合成部２３０は、加算器であり、各増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅを加算することで、追尾音声信号を生成する。
【０１３６】
ここで、増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅは、当該増幅後音声信号Ｓｍｇ１０Ａ〜Ｓｍｇ１０Ｅの元となる子機音声信号Ｓｍ１０Ａ〜子機音声信号Ｓｍ１０Ｅの最大レベルのものだけが、子機音声信号に応じた信号レベルであり、他のものは信号レベルが「０」である。
【０１３７】
したがって、増幅後音声信号Ｓｍｇ１０Ａ〜増幅後音声信号Ｓｍｇ１０Ｅを加算した追尾音声信号は、最大レベルと検出された子機音声信号そのものとなる。
【０１３８】
このような処理を行うことで、最大レベルの子機音声信号を検出して、追尾音声信号として出力することができる。この処理は、所定の時間間隔をおいて逐次実行される。したがって、最大レベルの子機音声信号が変化すれば、すなわち、この最大レベルの子機音声信号の音源が移動すれば、この変化および移動に応じて、追尾音声信号となる子機音声信号も変化する。これにより、各子機の子機音声信号に基づいて音源を追尾し、音源からの音を最も効率良く収音した追尾音声信号を出力することができる。
【０１３９】
そして、以上のような構成および処理を行うことで、子機１０Ａ〜子機１０Ｅによって、マイクロホンの収音信号による第１段の音源追尾が行われ、ホスト装置１によって、各子機１０Ａ〜子機１０Ｅの子機音声信号による第２段の音源追尾が行われる。これにより、複数の子機１０Ａ〜子機１０Ｅの複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍによる、音源追尾を実現することができる。したがって、子機１０Ａ〜子機１０Ｅの個数、および配置パターンを適宜設定することで、収音範囲の大きさや、話者等の音源位置に影響されることなく、確実に音源追尾を行うことができる。このため、音源の位置に依存することなく、音源からの音声を高品質に収音することができる。
【０１４０】
さらに、子機１０Ａ〜子機１０Ｅが送信する音声信号数は、子機に装着されるマイクロホンの本数に依存することなく、１つである。したがって、全てのマイクロホンの収音信号を、ホスト装置に送信するよりも、通信データ量を軽減することができる。例えば、各子機に装着されるマイクロホンの本数がｍ本の場合、各子機からホスト装置に送信される音声データ数は、全ての収音信号をホスト装置に送信する場合の（１／ｍ）となる。
【０１４１】
このように本実施形態の構成および処理を用いることで、全ての収音信号をホスト装置に送信する場合と同じ音源追尾精度を有しながら、通信負荷を軽減することができる。これにより、よりリアルタイムな音源追尾が可能になる。
【０１４２】
図１８は本発明の実施形態に係る子機の音源追尾処理のフローチャートである。以下、一台の子機の処理フローを説明するが、複数の子機は同じフローの処理を実行する。また、詳細な処理の内容は、上述の記載されているものであるので、以下では詳細な説明を省略する。
【０１４３】
子機は、各マイクロホンで収音し、収音信号を生成する（Ｓ１０１）。子機は、各マイクロホンの収音信号のレベルを検出する（Ｓ１０２）。子機は、最大パワーの収音信号を検出し、当該最大パワーの収音信号のレベル情報を生成する（Ｓ１０３）。
【０１４４】
子機は、各収音信号に対するゲイン係数を決定する（Ｓ１０４）。具体的には、子機は、最大パワーの収音信号のゲインを「１」に設定し、それ以外の収音信号のゲインを「０」に設定する。
【０１４５】
子機は、決定したゲイン係数で各収音信号を増幅処理する（Ｓ１０５）。子機は、増幅後の収音信号を合成し、子機音声信号を生成する（Ｓ１０６）。
【０１４６】
子機は、子機音声信号をＡＧＣ処理し（Ｓ１０７）、ＡＧＣ処理後の子機音声信号とレベル情報を含む子機データを生成して、ホスト装置に出力する（Ｓ１０８）。
【０１４７】
図１９は本発明の実施形態に係るホスト装置の音源追尾処理のフローチャートである。また、詳細な処理の内容は、上述の記載されているものであるので、以下では詳細な説明を省略する。
【０１４８】
ホスト装置１は、各子機から子機データを受信して、子機音声信号とレベル情報を取得する（Ｓ２０１）。ホスト装置１は、各子機からのレベル情報を比較し、最大レベルの子機音声信号を検出する（Ｓ２０２）。
【０１４９】
ホスト装置１は、各子機音声信号に対するゲイン係数を決定する（Ｓ２０３）。具体的には、ホスト装置１は、最大レベルの子機音声信号のゲインを「１」に設定し、それ以外の子機音声信号のゲインを「０」に設定する。
【０１５０】
ホスト装置１は、決定したゲイン係数で各子機音声信号を増幅処理する（Ｓ２０４）。ホスト装置１は、増幅後の子機音声信号を合成し、追尾音声信号を生成する（Ｓ２０５）。
【０１５１】
なお、上述の説明では、最大パワーの収音信号が切り替わるタイミングで、元最大パワーの収音信号のゲイン係数を「１」から「０」に設定し、新たな最大パワーの収音信号のゲイン係数を「０」から「１」に切り替えるようにした。しかしながら、これらのゲイン係数を、より詳細な段階的に変化させるようにしてもよい。例えば、元最大パワーの収音信号のゲイン係数を「１」から「０」になるように徐々に低下させ、新たな最大パワーの収音信号のゲイン係数を「０」から「１」になるように徐々に増加させる。すなわち、元最大パワーの収音信号から、新たな最大パワーの収音信号にクロスフェード処理を行うようにしてもよい。この際、これらのゲイン係数の和は「１」となるようにする。
【０１５２】
そして、このようなクロスフェード処理は、子機で行われる収音信号の合成のみでなく、ホスト装置１で行われる子機音声信号の合成に適用してもよい。
【０１５３】
また、上述の説明では、ＡＧＣを各子機１０Ａ〜子機１０Ｅに設ける例を示したが、ホスト装置１に設けてもよい。この場合、ホスト装置１の通信Ｉ／Ｆ１１でＡＧＣを行えばよい。
【０１５４】
なお、ホスト装置１は、図２０のフローチャートに示すように、スピーカ１０２から各子機に向けて試験用音波を発して各子機に当該試験用音波のレベルを判定させることも可能である。
【０１５５】
まず、ホスト装置１は、子機の起動状態を検知すると（Ｓ５１）、不揮発性メモリ１４からレベル判定用プログラムを読み出し（Ｓ５２）、通信Ｉ／Ｆ１１を介して各子機に送信する（Ｓ５３）。このとき、ホスト装置１のＣＰＵ１２は、レベル判定用プログラムを一定の単位ビットデータに分割し、単位ビットデータを各子機が受け取る順に配列したシリアルデータを作成して、子機へ送信する。
【０１５６】
各子機は、ホスト装置１から送信されたレベル判定用プログラムを受信する（Ｓ７１）。レベル判定用プログラムは、揮発性メモリ２３Ａに一時記憶する（Ｓ７２）。このとき、各子機は、シリアルデータから自己が受け取るべき単位ビットデータを抜き出して受け取り、抜き出した単位ビットデータを一時記憶する。そして、各子機は、一時記憶した単位ビットデータを結合し、結合したレベル判定用プログラムを実行する（Ｓ７３）。これにより、音声信号処理部２４は、図１５に示した構成を実現する。ただし、レベル判定用プログラムは、レベル判定を行うだけであり、子機音声信号Ｓｍ１０Ａを生成して送信する必要はないため、増幅器１１ａ〜増幅器１１ｍ、係数決定部１２０、合成部１３０、およびＡＧＣ１４０の構成は不要である。
【０１５７】
そして、ホスト装置１は、レベル判定用プログラムを送信してから所定時間経過後に試験用音波を発する（Ｓ５４）。各子機の係数決定部２２０は、音声レベル判定手段として機能し、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍに入力された試験用音波のレベルを判定する（Ｓ７４）。係数決定部２２０は、判定結果となるレベル情報（レベルデータ）をホスト装置１に送信する（Ｓ７５）。レベルデータは、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍそれぞれについて送信してもよいし、子機毎に最大レベルを示したレベルデータのみを送信してもよい。なお、レベルデータは、一定の単位ビットデータに分割して上位に接続された子機に送信されることにより、各子機が協同してレベル判定用シリアルデータを作成することになる。
【０１５８】
次に、ホスト装置１は、各子機からレベルデータを受信する（Ｓ５５）。ホスト装置１は、受信したレベルデータに基づいて、各子機に送信すべき音声信号処理プログラムを選択し、これらプログラムを不揮発性メモリ１４から読み出す（ｓ５６）。例えば、試験用音波のレベルが高い子機は、エコーのレベルが高いと判断し、エコーキャンセラのプログラムを選択する。また、試験用音波のレベルが低い子機は、エコーのレベルが低いと判断し、ノイズキャンセラのプログラムを選択する。そして、ホスト装置１は、読み出した音声信号処理プログラムを各子機に送信する（ｓ５７）。以後の処理は、図１１に示したフローチャートと同じであるため、説明を省略する。
【０１５９】
なお、ホスト装置１は、受信したレベルデータに基づいてエコーキャンセラのプログラムにおける各子機のフィルタ係数の数を変更し、各子機へフィルタ係数の数を変更するための変更パラメータを定めてもよい。例えば、試験用音波のレベルが高い子機にはタップ数を増加し、試験用音波のレベルが低い子機にはタップ数を減少する。この場合、ホスト装置１は、この変更パラメータを一定の単位ビットデータに分割して、単位ビットデータを各子機が受け取る順に配列した変更パラメータ用シリアルデータを作成し、各子機へ送信する。
【０１６０】
なお、エコーキャンセラは、各子機における複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍのそれぞれについて備える態様とすることも可能である。この場合、各子機の係数決定部２２０は、複数のマイクロホンＭＩＣａ〜マイクロホンＭＩＣｍのそれぞれについてレベルデータを送信する。
【０１６１】
また、上述のレベル情報ＩＦｏ１０Ａ〜レベル情報ＩＦｏ１０Ｅには、各子機におけるマイクロホンの識別情報が含まれていてもよい。
【０１６２】
この場合、図２１に示すように、子機は、最大パワーの収音信号を検出し、当該最大パワーの収音信号のレベル情報を生成したとき（Ｓ８０１）、最大パワーが検出されたマイクロホンの識別情報をレベル情報に含めて送信する（Ｓ８０２）。
【０１６３】
そして、ホスト装置１は、各子機からレベル情報を受信し（Ｓ９０１）、最大レベルとなるレベル情報を選択したときに、当該選択されたレベル情報に含まれているマイクロホンの識別情報に基づいて当該マイクロホンを特定することで、使用されているエコーキャンセラを特定する（Ｓ９０２）。ホスト装置１は、特定されたエコーキャンセラを使用している子機に対して、当該エコーキャンセラに関係する各信号の送信リクエストを行う（Ｓ９０３）。
【０１６４】
そして、子機は、送信リクエストを受信した場合（Ｓ８０３）、ホスト装置１に対して、指定されたエコーキャンセラから擬似回帰音信号、収音信号ＮＥ１（前段のエコーキャンセラによりエコー成分が除去される前の収音信号）、および収音信号ＮＥ１’（前段のエコーキャンセラによりエコー成分が除去された後の収音信号）の各信号を送信する（Ｓ８０４）。
【０１６５】
ホスト装置１は、これら各信号を受信し（Ｓ９０４）、受信した各信号をエコーサプレッサに入力する（Ｓ９０５）。これにより、エコーサプレッサのエコー生成部１２５には、特定されたエコーキャンセラの学習進捗度に応じた係数が設定されるため、適切な残留エコー成分を生成することができる。
【０１６６】
なお、図２２に示すように、進捗度算出部１２４は、音声信号処理部２４Ａ側に設ける態様とすることも可能である。この場合、ホスト装置１は、図２１のＳ９０３において、特定したエコーキャンセラを使用している子機に対して、学習進捗度に応じて変化する係数の送信をリクエストする。子機は、Ｓ８０４において、進捗度算出部１２４で算出される係数を読み出し、ホスト装置１に送信する。エコー生成部１２５では、受信した係数および擬似回帰音信号に応じて残留エコー成分が生成される。
【０１６７】
次に、図２３は、ホスト装置および子機の配置に関する変形例を示した図である。図２３（Ａ）は、図１２に示した接続態様と同じであるが、子機１０Ｃがホスト装置１に最も遠く、子機１０Ｅがホスト装置１に最も近くなる例を示している。すなわち、子機１０Ｃおよび子機１０Ｄを接続するケーブル３６１が曲げられて子機１０Ｄおよび子機１０Ｅがホスト装置１に近づくようになっている。
【０１６８】
一方、図２３（Ｂ）の例では、子機１０Ｃがケーブル３３１を介してホスト装置１に接続されている。この場合、子機１０Ｃは、ホスト装置１から送信されたデータを分岐して子機１０Ｂおよび子機１０Ｄに送信する。また、子機１０Ｃは、子機１０Ｂから送信されたデータと、子機１０Ｄから送信されたデータと、自装置のデータと、をまとめてホスト装置１に送信する。この場合も、直列接続された複数の子機のいずれか１つにホスト装置が接続されていることになる。
【０１６９】
本発明を詳細にまた特定の実施態様を参照して説明してきたが、本発明の精神、範囲または意図の範囲を逸脱することなく様々な変更や修正を加えることができることは当業者にとって明らかである。
【符号の説明】
【０１７０】
１…ホスト装置
２Ａ，２Ｂ，２Ｃ，２Ｄ，２Ｅ…マイクユニット
１１…通信Ｉ／Ｆ
１２…ＣＰＵ
１３…ＲＡＭ
１４…不揮発性メモリ
２１Ａ…通信Ｉ／Ｆ
２２Ａ…ＤＳＰ
２３Ａ…揮発性メモリ
２４Ａ…音声信号処理部
２５Ａ…マイク
【図１】
2014116930.tif 000003
【図２】
2014116930.tif 000004
【図３】
2014116930.tif 000005
【図４】
2014116930.tif 000006
【図５】
2014116930.tif 000007
【図６】
2014116930.tif 000008
【図７】
2014116930.tif 000009
【図８】
2014116930.tif 000010
【図９】
2014116930.tif 000011
【図１０】
2014116930.tif 000012
【図１１】
2014116930.tif 000013
【図１２】
2014116930.tif 000014
【図１３】
2014116930.tif 000015
【図１４】
2014116930.tif 000016
【図１５】
2014116930.tif 000017
【図１６】
2014116930.tif 000018
【図１７】
2014116930.tif 000019
【図１８】
2014116930.tif 000020
【図１９】
2014116930.tif 000021
【図２０】
2014116930.tif 000022
【図２１】
2014116930.tif 000023
【図２２】
2014116930.tif 000024
【図２３】
2014116930.tif 000025