以下、本発明の実施の形態について説明する。
ビデオ会議システムは、ネットワーク、または電話回線などの電気通信回線を介して複数の情報処理装置をつなぎ、音声、または画像などの通話情報を送受信して通話を行うための情報処理システムである。
<第1実施形態>
図1は、本発明の一実施形態に係るビデオ会議システムの構成の一例を示すシステム図である。
本発明の一実施形態に係る情報処理システムは、例えば図1に示すビデオ会議システム1である。以下、ビデオ会議システム1を例に説明する。
ビデオ会議システム1は、後述する話し手側の情報処理装置100と、後述する聞き手側の情報処理装置101と、を有する。話し手側の情報処理装置100、および聞き手側の情報処理装置101は、ネットワーク200によって接続されている。
ネットワーク200は、LAN(Local Area Network)、またはインターネットなどの有線または無線の通信用ネットワークである。
話し手側の情報処理装置100は、音声を入力し、入力された音声に基づいて音声データを生成し、音声データを聞き手側の情報処理装置101に送信する。聞き手側の情報処理装置101は、送信された音声データに基づいて音声を出力する。
話し手側の情報処理装置100と、聞き手側の情報処理装置101と、の音声の入出力は一方的でなく、入力と出力は、相互に入れ替わり、または双方向に行われる。以下、話し手側の情報処理装置100で音声が入力され、聞き手側の情報処理装置101で音声の出力が行われる場合を例に説明する。
図2は、本発明の一実施形態に係る情報処理装置の構成の一例を示す機能ブロック図である。
情報処理装置は、例えば、話し手側の情報処理装置100と、聞き手側の情報処理装置101と、である。以下、聞き手側の情報処理装置101は話し手側の情報処理装置100と同様の構成であるため、話し手側の情報処理装置100を例に説明する。
話し手側の情報処理装置100は、入力処理部100F1と、制御部100F2と、音声処理部100F3と、判定処理部100F4と、記憶部100F5と、出力処理部100F6と、を有する。
入力処理部100F1は、話し手側の情報処理装置100に音声を入力するための処理を行う。例えば音声を入力するための処理は、入力処理部100F1が後述するマイク100H51によって話し手のユーザが話す声の音声、および話し手のユーザの周辺の音声を取得し、音声データに変換するなどである。また、音声を入力するための処理は、入力処理部100F1がネットワーク200を介して聞き手側の情報処理装置101など他の情報処理装置から音声データを受信するなどである。
なお、入力処理部100F1は、入力された音声に基づいて生成された音声データを後段の処理で読み込み可能な形式、または高速に処理できる形式にデータを変換する処理などを行ってもよい。また、入力処理部100F1は、生成された音声データから入力用の通信に用いたヘッダデータなど後段の処理には不要な情報を削除し、データ量を少なくするための処理を行ってもよい。
制御部100F2は、後述するCPU100H3などによって、話し手側の情報処理装置100の有する各装置、または話し手側の情報処理装置100に接続された外部装置(図示せず)などの制御を行う。制御部100F2は、入力制御部100F21を有する。入力制御部100F21は、後述する操作スイッチ100H53から話し手のユーザによる音声の入出力に係る装置の操作、例えば後述するマイク100H51のミュート操作、または音量調整などに基づいて入力処理部100F1を制御する。
音声処理部100F3は、後述するCPU100H3などによって、プログラムを実行し、後述する音声処理を行う。なお、音声処理部100F3による処理は、処理の一部または全部を外部装置に処理させてもよい。
判定処理部100F4は、後述するCPU100H3などによって、プログラムを実行し、後述する判定処理を行うための処理を行う。判定処理部100F4は、入力処理部100F1から音声データを取得し後述する判定処理を行う。また、判定処理部100F4は、入力制御部100F21に入力された入出力に係る装置の操作に基づいて後述する判定処理を行う。判定処理による判定に基づいて制御部100F2は、後述する判定に基づく制御を行う。
なお、判定処理部100F4による処理は、処理の一部または全部を外部装置に処理させてもよい。
記憶部100F5は、後述するCPU100H3のレジスタ、後述する補助記憶装置100H1、または記憶装置100H2などに、各データ、パラメータ、各処理の中間処理結果のデータなど情報を記憶させる。例えば記憶部100F5は、音声処理部100F3が音声処理を行うのに用いるパラメータなど設定情報、入力処理部100F1から生成、または受信した音声データなどの情報を記憶する。なお、記憶部100F5は、記憶する情報の一部または全部を外部装置に記憶させてもよい。
出力処理部100F6は、話し手側の情報処理装置100から音声データを出力するための処理を行う。例えば出力処理部100F6は、後述するネットワークI/F100H7によって、ネットワーク200を介して音声処理部100F3が処理した音声データを聞き手側の情報処理装置101へ送信するための処理を行う。
また、出力処理部100F6は、入力処理部100F1が受信した音声データをスピーカ100H52に出力させるための処理を行う。
なお、出力処理部100F6は、話し手側の情報処理装置100に接続されたディスプレイ100H61に聞き手側の情報処理装置101から送信された画像などを出力する処理を行ってもよい。なお、出力処理部100F6は、出力する処理の前処理として、出力先が読み取り可能な形式にデータを変換する処理、またはネットワークを介して送信するためにヘッダデータなどを付加する処理などを行ってもよい。また、出力処理部100F6が送信する音声データは、静止画または動画などの画像データがあってもよい。
<ハードウェア構成>
図3は、本発明の一実施形態に係る情報処理装置のハードウェア構成の一例を示すブロック図である。
話し手側の情報処理装置100、および聞き手側の情報処理装置101は、例えば図4に示したハードウェアの構成である。以下、聞き手側の情報処理装置101は話し手側の情報処理装置100と同様の構成であるため、話し手側の情報処理装置100を例にして説明する。
話し手側の情報処理装置100は、補助記憶装置100H1と、記憶装置100H2と、CPU(Central Processing Unit)100H3と、コネクタ100H4と、音声入出力I/F100H5と、出力I/F100H6と、を有する。
また、話し手側の情報処理装置100は、ネットワークI/F100H7を有し、ネットワーク200に接続している。
話し手側の情報処理装置100の各構成要素は、バス(Bus)100H8により接続されている。なお、バス100H8への接続は、ブリッジ回路を介して接続した構成でもよい。また、話し手側の情報処理装置100の構成は、図4に示した構成に限られない。例えば、話し手側の情報処理装置100は、複数のバスを有し、CPU100H3など高速な伝送によって処理を行う構成要素と、入力装置との接続など低速な伝送によって処理を行う構成要素と、が異なるバスに接続されている構成でもよい。
補助記憶装置100H1は、CPU100H3、および制御装置などの制御によって、CPU100H3が行う処理の中間結果を含む各種データ、パラメータ、またはプログラムなどの情報を記憶する。補助記憶装置100H1は、例えば、ハードディスク、フラッシュSSD(Solid State Drive)などである。
記憶装置100H2は、CPU100H3が実行するプログラムが使用する記憶領域、いわゆるメモリ(Memory)などの主記憶装置である。記憶装置100H2は、データ、プログラム、またはパラメータなどの情報を記憶する。
CPU100H3は、情報処理装置100が行う各処理のための演算、制御を行う。入力された音声、または音声データを入力、音声処理、または出力するための各種処理を行う。CPU100H3は、音声処理、判定のための各種処理を行う。CPU100H3は、話し手側の情報処理装置100の有する各種装置の制御、および話し手側の情報処理装置100に接続されている装置の制御を行う。
なお、CPU100H3は、並列処理によって高速化を行うために、複数のCPU、または複数のコア(core)から構成されていてもよい。また、CPU100H3による処理は、話し手側の情報処理装置100の内部、または外部に別のハードウェアリソースを有してもよい。CPU100H3による処理は、別のハードウェアリソースによって、CPU100H3の行う処理の一部または全部が行われてもよい。
なお、CPU100H3は、DSP(Digital Signal Processor)、ASIC(Application Specific Integrated Circuit)によって実現してもよい。さらに、CPU100H3は、ASICに代えて、FPGA(Field−Programmable Gate Array)などによって実現してもよい。また、CPU100H3は、ASICに代えて、CPLD(Complex Programmable Logic Device)などによって実現してもよい。
コネクタ100H4は、外部装置と接続し、外部装置と入出力を行うためのバス、いわゆる外部バスである。コネクタ100H4は、たとえばUSB(Unversal Serial Bus)などである。コネクタ100H4は、接続された装置からデータなどを受信する処理を行う回路、ドライバなどを有してもよい。コネクタ100H4は、IEEE(The Institute of Electrical and Electronics Engineers,Inc.)1394、またはThunderbolt(登録商標)などでもよい。コネクタ100H4には、カメラ100H41が接続され、音声と同時に画像を取得できる。
音声入出力I/F100H5は、話し手側の情報処理装置100に音声入力装置、または音声出力装置を接続するためのインタフェース(Interface)である。音声入力装置は、例えばマイク100H51である。マイク100H51は、話し手側の情報処理装置100のユーザが話す音声などを入力するために用いられる。音声出力装置は、例えばスピーカ100H52である。スピーカ100H52は、音声データに基づいてユーザへ音声を出力するために用いられる。また、音声入出力I/F100H5には、操作スイッチ100H53が接続され、操作スイッチ100H53によってユーザは、マイク100H51、およびスピーカ100H52の各種操作を行う。操作は、例えば音声入力装置、または音声出力装置への音声の入出力を無音にする、いわゆるミュート(Mute)操作、入出力の音声量を調整するなどである。なお、音声入出力I/F100H5に接続されている装置は、音声入力、音声出力、音声調整の機能ごとに専用の装置を接続する構成でなくともよい。例えばマイク100H51と、操作スイッチ100H53と、は一体となっている装置が接続されている構成でもよい。
出力I/F100H6は、話し手側の情報処理装置100に画像を出力する画像出力装置を接続するためのインタフェースである。画像出力装置は、例えばディスプレイ100H61である。ディスプレイ100H61は、話し手側の情報処理装置100から画像データを受け取り、話し手側の情報処理装置100のユーザへ画像を表示するために用いられる。出力I/F100H6は、処理結果などを表示する出力装置であるディスプレイ100H61、ディスプレイ100H61に出力する画像信号を制御する処理回路(図示せず)、ドライバ、およびケーブルなどを有してもよい。なお、出力装置は、ディスプレイ100H61に代えてプロジェクタなどの投影装置でもよい。
また、ディスプレイ100H61は、音声入出力の機能を有してもよい。
ネットワークI/F100H7は、話し手側の情報処理装置100を有線または無線でLANなどのネットワークに接続するためのインタフェースである。ネットワークI/F100H7は、IEEEなどの規格に準じたコネクタ形状、および接続ピンなどの物理的な接続端子と、を有する。また、ネットワークI/F100H7は、話し手側の情報処理装置100と、回線を物理的に接続させるケーブルと、接続端子を介して入力された信号を処理する処理回路、ドライバと、を有する。なお、話し手側の情報処理装置100は、LANを介して他のネットワーク、またはインターネットに接続していてもよい。
バス100H8は、話し手側の情報処理装置100の各構成要素間の通信に用いられる。バス100H8は、いわゆる内部バスである。バス100H8は、たとえばPCI Express(Peripheral Component Interconnect Bus Express)である。バス100H8は、PCI、またはISA(Industry Standard Architecture)などでもよい。
なお、説明したハードウェア構成は一例であり、話し手側の情報処理装置100は、説明した構成要素をすべて有していなくてもよい。また、話し手側の情報処理装置100は、説明した構成要素以外の要素が追加、または説明した構成要素を冗長して有してもよい。
<全体処理>
図4は、本発明の一実施形態に係る第1実施形態のビデオ会議システムによる全体処理の一例を示すフローチャートである。
エコー、またはユーザの周囲の音に係る音声など(以下、不快な音声情報という。)による出力を減少させる音声処理は、例えば会話におけるエコーを消すエコーキャンセル処理がある。以下、エコーキャンセル処理を行う場合を例に説明する。
なお、不快な音声情報による出力を減少させる音声処理は、ユーザが話す声以外の周辺の騒音いわゆる環境音、またはノイズなどを減少させる、いわゆるノイズキャンセル処理などでもよい。不快な音声情報による出力を減少させる音声処理は、音声入出力の音量を調整する、いわゆるオートゲインコントロール処理などでもよい。不快な音声情報による出力を減少させる音声処理は、複数の種類の処理が行われてもよい。
ステップS0401では、話し手側の情報処理装置100は、入力処理を行う。具体的には、話し手側の情報処理装置100は、話し手のユーザの会話など音声を図2の入力処理部100F1によって入力するための処理を行う。入力された音声は、図2の入力処理部100F1によって音声データに変換される。
また、ステップS0401では、話し手のユーザによるミュート操作、または音量調整など入力状態を変化させる操作が行われ、図2の入力制御部100F21に操作に係る情報された場合、話し手側の情報処理装置100は、操作に基づいた制御を行う。例えば、話し手のユーザが操作スイッチ100H53によってミュート操作を行った場合、話し手側の情報処理装置100は、図2の制御部100F2によってマイク100H51からの入力を無音とする処理に切り替えるための制御を行う。
ステップS0402では、話し手側の情報処理装置100は、音声処理を行う。具体的には、例えば話し手側の情報処理装置100は、ステップS0401で入力された音声データからエコーキャンセルなどを行うための処理を行う。音声処理の詳細は、後述する。
ステップS0403では、話し手側の情報処理装置100は、ステップS0402で音声処理が行われた音声データを聞き手側の情報処理装置101に送信するための処理を行う。
ステップS0404では、聞き手側の情報処理装置101は、ステップS0403で話し手側の情報処理装置100から送信された音声データに基づいて図2のスピーカ100H52から音声を出力する。
なお、ステップS0404で聞き手側の情報処理装置101は、聞き手のユーザによって図2のスピーカ100H52の出力を設定する操作が行われた場合、操作に基づいて音声データを変換して出力してもよい。変換は、例えば音声データに所定のゲインをかけて出力する音量を増幅する処理などである。
<音声処理>
図5は、本発明の一実施形態に係る第1実施形態の音声処理の一例を示すフローチャートである。図5に示す処理は、図4のステップS0402の処理に相当する。
ステップS0501では、話し手側の情報処理装置100の判定処理部100F4は、音声の入力状態を判定する判定処理を行う。判定処理は、詳細は後述する。
ステップS0502では、話し手側の情報処理装置100は、ステップS0502の判定処理の判定結果に基づいて入力状態に変化があったと判断した場合(ステップS0502にてYES)はステップS0503の処理に進む。また、ステップS0502では、話し手側の情報処理装置100は、入力状態に変化がないと判断した場合(ステップS0502にてNO)はステップS0507の処理に進む。
入力状態は、例えば話し手のユーザが図2の操作スイッチ100H53によってミュート状態に切り換える操作行った場合、ステップS0501で変化があったと判定される。ミュート状態の場合、入力される音声は無音である。以下、ミュート状態に切り換える操作によってミュート状態に遷移し、ステップS0501の判定処理で、入力状態に変化があったと判定された場合を例にして説明する。
ステップS0503では、話し手側の情報処理装置100は、エコーキャンセル処理が行われていた場合、エコーキャンセル処理を中断するさせるための処理を行う。ミュート状態に遷移した場合、入力される音声は無音であるため、話し手側の情報処理装置100から聞き手側の情報処理装置101に図4のステップS0403で送信される音声データがなくなり、エコーキャンセル処理を行う必要がなくなるためである。
ステップS0504では、話し手側の情報処理装置100の判定処理部100F4は、音声の入力状態を判定する判定処理を行う。判定処理は、詳細は後述する。
ステップS0504では、例えば話し手のユーザが図2の操作スイッチ100H53によってミュート状態から入力処理部100F1が音声の入力を行うようにするミュート状態を解除する操作を行った場合、変化があったと判定される。ミュート状態を解除した場合、入力される音声は話し手のユーザが話す声の音声、および話し手のユーザの周辺の音声などである。以下、ミュート状態を解除する操作によってミュート状態を解除し、ステップS0504の判定処理で、入力状態に変化があったと判定された場合を例にして説明する。
ステップS0505では、話し手側の情報処理装置100は、ステップS0505の判定処理の判定結果に基づいて入力状態に変化があったと判断した場合(ステップS0505にてYES)はステップS0506の処理に進む。また、ステップS0505では、話し手側の情報処理装置100は、入力状態に変化がないと判断した場合(ステップS0505にてNO)はステップS0503の処理に戻る。
ステップS0506では、話し手側の情報処理装置100は、入力処理部100F1による入力処理の開始を所定の時間遅らせるための処理を行う。
エコーキャンセル処理の学習処理は、マイク100H51、またはスピーカ100H52の設定値を話し手側の情報処理装置100が変更する処理によって実現される。変更する処理は、設定値を固定せず、入力される音声に基づいて設定値を計算し、計算した設定値に変更する処理である。ミュート状態の場合、入力される音声は無音であるため、無音状態に対応した学習処理が行われる状態である。ミュート状態に対応したエコーキャンセル処理は、ノイズなどが全く無い状態に対応する処理、すなわちノイズなどを減少させる処理を行わないのと同様である。
入力処理の開始を所定の時間遅らせる処理によって、所定の時間、入力処理を停止させる。入力処理を停止させている時間において、話し手のユーザが話す声の音声、および話し手のユーザの周辺の音声などに基づいて学習処理が行われ、エコーキャンセル処理を減少させた音声データを出力することができる。
ステップS0507では、話し手側の情報処理装置100は、ステップS0506の学習処理によって、ミュート解除の状態に対応したエコーキャンセル処理を行う。
<判定処理>
図6は、本発明の一実施形態に係る第1実施形態の処理の一例を説明するタイミングチャートである。
判定処理は、t1で行われるマイク100H51をミュート状態にする操作、またはt2で行われるマイク100H51をミュート解除状態にする操作に基づいて入力状態に変化があったか否かを判定する処理である。
t1は、話し手のユーザが図2の操作スイッチ100H53によってミュート解除状態からミュート状態に切り換える操作を行った場合である。ミュート状態に切り換える操作によって、図5のステップS0501の判定処理は、入力状態に変化があったと判定する。
図5のステップS0501の判定処理で入力状態に変化があったと判定されると、図5のステップS0502のエコーキャンセル処理の学習処理を中断する処理が行われる。エコーキャンセル処理の学習処理を中断する処理によって、図6に示すようにt1から学習処理が中断する。
t2は、話し手のユーザが図2の操作スイッチ100H53によってミュート状態からミュート状態を解除する操作を行った場合である。ミュート状態を解除する操作によって、図5のステップS0504の判定処理は、入力状態に変化があったと判定する。
図5のステップS0504の判定処理で入力状態に変化があったと判定されると、図5のステップS0506の入力処理の開始を遅らせるための処理が行われる。ミュート状態を解除する操作が行われたt2から、図6に示すように学習処理は開始される。入力処理の開始を遅らせるための処理によって、学習処理が開始されたt2より所定の時間であるΔtだけ遅れたt3からミュート解除状態になる。
Δtは、例えば学習処理が終了するまでにかかる時間などである。学習処理は、会話の音声の大小、または周辺の音声の時間による変化の差分に基づいて行われるため、ミュート状態の切り換えなど急激な変化がある場合、処理時間がかかる場合がある。Δtを学習処理の処理時間に対応させることで、話し手側の情報処理装置100は、学習処理が完了し、エコーキャンセル処理がミュート解除状態に対応した状態で音声を入力がされる。したがって、ミュート解除した場合であっても、話し手側の情報処理装置100は、不快な音声情報による出力を減少させることができる。
なお、入力状態の変化の判定は、ミュート状態、またはミュート解除状態にする操作による判定に限られない。例えば入力状態の変化の判定は、入力音量を調整するボタン(図示せず)によって設定変更できる場合、所定の時間以内に予め定めた以上入力音量を設定変更する操作が行われた場合を入力状態に変化があったと判定してもよい。
また、実施形態は、図5および図6に示した場合に限られない。例えば初期設定がミュート状態の電源投入の際などt1まで学習処理が実行されていない場合、すなわち図6のt1の状態の場合、図5のステップS0504から処理を開始してもよい。
<第2実施形態>
第2実施形態は、第1実施形態と同様に、図1のビデオ会議システム1を用いる。ビデオ会議システム1についての説明は省略する。
第2実施形態は、第1実施形態と同様に、図2の話し手側の情報処理装置100、および聞き手側の情報処理装置101を用いる。話し手側の情報処理装置100、および聞き手側の情報処理装置101についての説明は省略する。
第2実施形態は、第1実施形態と同様に、図4で説明した全体処理を行う。全体処理についての説明は省略する。
図7は、本発明の一実施形態に係る第2実施形態の音声処理の一例を示すフローチャートである。
第1実施形態の図5の処理と、第2実施形態の図7の処理と、を比較すると、ステップS0704が加えられていること異なる。また、第1実施形態の図5の処理と、第2実施形態の図7の処理と、ではステップS0708の処理内容が異なる。ステップS0701乃至ステップS0703は、第1実施形態の図5のステップS0501乃至ステップS0503と同様の処理である。ステップS0705乃至ステップS0707は、第1実施形態の図5のステップS0504乃至ステップS0506と同様の処理である。以下、第1実施形態と異なる点を中心に説明し、第1実施形態と同様の点は説明を省略する。
ステップS0704では、ステップS0701でミュート状態に切り換える操作によって入力状態に変化があったと判定された際、話し手側の情報処理装置100は、記憶部100F5にエコーキャンセル処理に係る情報を記憶させる。エコーキャンセル処理に係る情報は、例えばエコーキャンセル処理を行うための設定値などである。エコーキャンセル処理に係る情報は、入力状態に変化があったと判定された際の音声を記憶し、記憶された音声情報から生成される設定値でもよい。
ステップS0708では、話し手側の情報処理装置100は、ステップS0704で記憶した情報を記憶部100F5から読み出し、エコーキャンセル処理の学習処理を行う。
図8は、本発明の一実施形態に係る第2実施形態の処理の一例を説明するタイミングチャートである。
図6と同様に、マイク100H51をミュート状態にする操作、またはt2で行われるマイク100H51をミュート解除状態にする操作が行われた場合を例に説明する。
t1は、図6と同様に話し手のユーザが図2の操作スイッチ100H53によってミュート解除状態からミュート状態に切り換える操作を行った場合である。ミュート状態に切り換える操作によって、図7のステップS0701の判定処理は、入力状態に変化があったと判定する。入力状態に変化があったと判定された際、話し手側の情報処理装置100は、例えばt1の時点のエコーキャンセル処理に係る設定値を記憶する。
t2は、図6と同様に話し手のユーザが図2の操作スイッチ100H53によってミュート状態からミュート状態を解除する操作を行った場合である。ミュート状態を解除する操作によって、図7のステップS0705の判定処理は、入力状態に変化があったと判定する。入力状態に変化があったと判定された際、第1実施形態と同様に図7のステップS0708のエコーキャンセル処理の学習処理を開始する。エコーキャンセル処理の学習処理は、エコーキャンセル処理に係る設定値を読み出してt1のミュート状態になる際の設定値が保持されたと同様の状態から開始される。
なお、話し手側の情報処理装置100は、エコーキャンセル処理に係る設定値を読み出す際、現在の設定値をクリアする処理としてもよい。すなわち、話し手側の情報処理装置100は、ミュート状態にする操作が行われたt1の際に学習処理を中断せず、学習処理を継続する。t2の際に、話し手側の情報処理装置100は、エコーキャンセル処理に係る設定値を読み出す際にミュート状態に学習処理によって対応した設定値をクリアした後、エコーキャンセル処理に係る設定値を読み出すとしてもよい。話し手側の情報処理装置100は、クリアによって、ミュート状態の学習処理による影響を除去し、エコーキャンセル処理に係る設定値を読み出してt1のミュート状態になる際の設定値が保持されたと同様の状態に戻すことができる。話し手側の情報処理装置100は、t1の際に学習処理を中断する処理、およびt2の際に学習処理を開始する処理を不要にすることができる。
記憶部100F5から読み出し学習処理を行う場合、ミュート状態、すなわち入力される音声が無音の場合から学習処理を行う場合と比較してミュート解除の状態で不快な音声を十分に減少できるエコーキャンセル処理ができるまでの時間を短くすることができる。
<第3実施形態>
第3実施形態は、第1実施形態と同様に、図1のビデオ会議システム1を用いる。ビデオ会議システム1についての説明は省略する。
第3実施形態は、第1実施形態と同様に、図2の話し手側の情報処理装置100、および聞き手側の情報処理装置101を用いる。話し手側の情報処理装置100、および聞き手側の情報処理装置101についての説明は省略する。
第3実施形態は、第1実施形態と同様に、図4で説明した全体処理を行う。全体処理についての説明は省略する。
第3実施形態は、第2実施形態と同様に、図7で説明した音声処理を行う。第3実施形態は、音声処理のステップS0701の判定処理の内容が異なる。
図9は、本発明の一実施形態に係る第3実施形態の処理の一例を説明するタイミングチャートである。
第3実施形態の判定処理は、例えば閾値Thを設定し、図9に示すように入力音量が閾値Thに達し、所定の時間内に閾値Th以下となる、いわゆるノイズが入力された場合、図7のステップS0701で入力状態に変化があったと判定する。したがって、第2実施形態がユーザによるミュート操作をトリガとするのに対し、第3実施形態は、ノイズの入力をトリガとする。
t1は、ノイズの入力が検出された場合である。ノイズの入力が検出された場合、図7のステップS0701の判定処理は、入力状態に変化があったと判定する。入力状態に変化があったと判定された際、話し手側の情報処理装置100は、第2実施形態と同様に、例えばt1の時点のエコーキャンセル処理に係る設定値を記憶する。
t2は、ノイズの入力がなくなったと検出された場合である。ノイズの入力がなくなったと検出された場合、図7のステップS0705の判定処理は、入力状態に変化があったと判定する。入力状態に変化があったと判定された際、第2実施形態と同様に図7のステップS0708のエコーキャンセル処理の学習処理を開始する。エコーキャンセル処理の学習処理は、エコーキャンセル処理に係る設定値を読み出してt1のノイズが入力される以前の設定値が保持されたと同様の状態から開始される。設定値が保持されることによって、エコーキャンセル処理は、ノイズが入力される前の音声に対応した不快な音声情報による出力を減少させる処理を行うことができる。したがって、ノイズをエコーキャンセル処理の学習処理に反映させないことで、ノイズが入力された場合でもエコーキャンセル処理に不快な音声情報による出力を減少させることができる。
なお、ノイズの検出は閾値を設定する方法に限られない。ノイズの検出は、他の検出方法によって検出されてもよい。
なお、実施形態は、話し手側の情報処理装置100で処理が行われるに限られない。例えば、音声処理、または判定処理は、操作スイッチ100H53の操作に係る情報が音声データとともに聞き手側の情報処理装置101に送信されて、聞き手側の情報処理装置101が行ってもよい。また、音声処理、または判定処理は、話し手側の情報処理装置100に代えてネットワーク200に接続された別のコンピュータ、いわゆる情報処理装置が一部または全部の処理を行ってもよい。
なお、ビデオ会議システムを例示として示された処理は、例えばデスクトップPC、ノートPC、タブレット、およびスマートフォンなどの情報処理装置にビデオ会議システム用のアプリケーションソフトプログラムをインストールして実現してもよい。
また、実施形態で説明した情報処理装置が接続されたシステム構成は一例であり、用途や目的に応じて様々なシステム構成があることは言うまでもない。例えば、各処理は、ネットワークを介して2つ以上のコンピュータによって分散、冗長、または並列に処理されてもよい。また、情報処理装置が用いる情報は、2つ以上の記憶装置に分散、または冗長して記憶されてもよい。
以上、本発明の好ましい実施例について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。