(57)【要約】【課題】ＬＡＮを利用する音声ＩＰ化装置において、パケット遅延のばらつきが常時大きくてデータ量が正規分布を示さない回線の場合であっても、受信バッファにおけるオーバーフローやアンダーフローの発生を回避する。【解決手段】受信側のバッファ１１４内のデータ量をＣＰＵ１１２により一定時間（１６秒）毎に検出し、一定時間毎に検出したデータ量の平均値を求める。求めた平均値に基づいて復号クロックＤＣＫの周波数を復号クロック発生器５６により変化させる。このように制御することで、パケット遅延のばらつきが常時大きくてデータ量が正規分布を示さないネットワークを利用する回線の場合であっても、受信側の復号クロックＤＣＫの周波数を適切に変化させることができ、受信側のバッファ１１４におけるオーバーフローやアンダーフローが回避される。【選択図】図２
2004219475.tif 000002
【特許請求の範囲】
【請求項１】
入力された音声データを音声ＩＰデータに変換して、ネットワークに送出するとともに、前記ネットワークから前記音声ＩＰデータを受け、音声データにもどして一旦受信バッファに格納し、この受信バッファから前記音声データを復号クロックにより読み出して出力する音声ＩＰ化装置において、
前記受信バッファ内のデータ量を一定時間毎に検出するデータ量検出手段と、
前記一定時間毎に検出したデータ量の平均値を算出する平均値算出手段と、
前記平均値に基づいて前記復号クロックの周波数を変化させる周波数変化手段と
を有することを特徴とする音声ＩＰ化装置。
【請求項２】
請求項１記載の音声ＩＰ化装置において、
前記一定時間は、５秒−１００秒内の所定時間に設定される
ことを特徴とする音声ＩＰ化装置。
【請求項３】
請求項１または２記載の音声ＩＰ化装置において、
前記平均値は、連続して検出した少なくとも４回のデータ量の平均値である
ことを特徴とする音声ＩＰ化装置。
【請求項４】
請求項１−３のいずれか１項に記載の音声ＩＰ化装置において、
前記復号クロックの周波数の変化は、基準周波数に対して上下に１段階の合計３段階の変化とする
ことを特徴とする音声ＩＰ化装置。
【請求項５】
入力された音声データを音声ＩＰデータに変換して、ネットワークに送出するとともに、ネットワークから音声ＩＰデータを受け、音声データにもどして一旦受信バッファに格納し、この受信バッファから前記音声データを復号クロックにより読み出して出力する音声ＩＰ化方法において、
前記受信バッファ内のデータ量を一定時間毎に検出するデータ量検出ステップと、
前記一定時間毎に検出したデータ量の平均値を算出する平均値算出ステップと、
前記平均値に基づいて前記クロックの周波数を変化させる周波数変化ステップと
を有することを特徴とする音声ＩＰ化方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
この発明は、ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）等の非同期ネットワークを介して受信した音声ＩＰデータを音声データにもどして一旦受信バッファに格納し、この受信バッファから前記音声データを復号クロックにより読み出して出力する音声ＩＰ化装置およびその方法に関する。
【０００２】
【発明の背景】
図８は、この出願の発明者の考案に係る未発表の（公知となっていない）音声ＩＰ化システム２の構成を示している。この音声ＩＰ化システム２は、ネットワーク４に対して、同一構成の音声ＩＰ化装置６ａ，６ｂがＬＡＮポート１０ａ，１０ｂを介して接続される構成となっている。
【０００３】
図９は、図８中、未発表の（公知となっていない）音声ＩＰ化装置６（６ａ，６ｂ）の構成を示している。この音声ＩＰ化装置６は、基本的には、ＣＰＵ１２とバッファ１４とを有するＬＡＮコントローラ１６（１６ａ，１６ｂ）と、符号部１８と復号部２０とを有する音声コーデック部２２とから構成されている。
【０００４】
この場合、自局（ここでは、音声ＩＰ化装置６ａとする。）の音声入力ポート２４（２４ａ）から供給される音声信号（アナログ信号）が増幅器２６を介して音声コーデック部２２の符号部１８に入力される。符号部１８は、水晶発振器２８から供給される６４［ｋＨｚ］の符号クロックＣＫにより音声信号を８ビット幅のデジタルデータに符号化し入力音声データＤｉとしてＬＡＮコントローラ１６に供給する。
【０００５】
ＬＡＮコントローラ１６（のＣＰＵ１２）は、この入力音声データＤｉを音声ＩＰデータ（ヘッダ＋音声データからなるパケット構成のシリアルデータ）に変換し、変換した音声ＩＰデータをＬＡＮポート１０（１０ａ）を経由してネットワーク４に対して出力する。
【０００６】
実際上、ネットワーク４あるいはＬＡＮポート１０には、ルータ、ゲートウェイ、スイッチ等が接続され、音声ＩＰデータのヘッダを参照して、対応する対局の、この場合、音声ＩＰ化装置６ｂに音声ＩＰデータを送る。
【０００７】
対局側の音声ＩＰ化装置６ｂは、音声ＩＰデータを入力音声データＤｉに対応する８ビット幅の出力音声データＤｏに変換する。この後、ネットワーク４上の、いわゆるパケット遅延のばらつきを吸収するために、出力音声データＤｏは、一旦、ＬＡＮコントローラ１６のバッファ１４に蓄積される。その後、復号部２０からの読出イネーブル信号Ｓｅにより読み出され、復号部２０にラッチされる。復号部２０では、ラッチした８ビット幅の出力音声データＤｏを符号クロックＣＫと同一の６４［ｋＨｚ］の復号クロックＣＫにより音声信号（アナログ信号）に復号化する。
【０００８】
復号化された音声信号は、増幅器３０を介して音声出力ポート３２（３２ｂ）へ供給される。なお前記の読出イネーブル信号Ｓｅは、８クロックＣＫ毎に出力される。
【０００９】
ところで、音声ＩＰ化装置６を対向接続した図８例の音声ＩＰ化システム２において、放送やモデムによるデータ通信を連続して実施しようとすると、一方の音声ＩＰ化装置６ａ（たとえば、音声データ入力側）と他方の音声ＩＰ化装置６ｂ（したがって、音声データ出力側）の水晶発振器２８から出力されるクロックＣＫの周波数誤差、通常［ｐｐｍ］オーダーの誤差を原因とするＬＡＮコントローラ１６ｂ内のバッファ１４（音声用としては、たとえば、５０［ｍｓ］分のメモリ容量が割り当てられている。）のオーバーフローやアンダーフローが周期的に発生し、音声の不連続やモデムによるデータ通信のエラーの原因となる。
【００１０】
これを軽減するために、ネットワーク４内にサーバを設けて複雑なシーケンスで通信したり、符号部・復号部に補間機能を持たせたり、送出するパケットにタイムスタンプ情報を付加する技術を採用することも考えられるが、これらの技術では、送信側の符号部と受信側の復号部のクロックを完全に同期させようとしているため、いずれも複雑な回路やソフトウエア処理を必要とし、コストなどで問題がある。
【００１１】
【従来の技術】
この発明に関連する従来技術として、放送等において、受信されたオーディオビジュアル信号を一旦受信バッファ内に蓄積し、この受信バッファ内のデータ量を閾値と比較し、復号側クロックの周波数を変化することが提案されている（特許文献１，特許文献２参照）。
【００１２】
ところで、音声ＩＰデータのような非同期ネットワークであるＬＡＮでのデータ伝送の場合には、受信バッファ内のデータ量の変化には、水晶発振器の誤差を原因とする変化量よりもはるかに大きな変化量であるネットワーク上のパケット遅延のばらつきが含まれている。これに対して特許文献１，２に開示されている技術では、ネットワークを介して通信することなく、いわゆる理想的な通信環境下での通信を前提としている。
【００１３】
このため、特許文献１または特許文献２に開示されている技術のように、受信バッファ内のデータ量の変化に対応して、直接復号クロックの周波数を変化させる技術を、輻輳の存在する一般的なネットワークで使用した場合には、本来無視しなければならないパケット遅延のばらつきにより復号クロックが激しく変化することになり、結果としてアンダーフローやオーバーフローを招くおそれを解消するには至っていない。
【００１４】
この問題を解決するために、統計的手法を用いて、ネットワーク上のパケット遅延のばらつきの影響を受けている補正値を棄却し、遅延量が正規分布となっている状態の値を使って復号クロックの補正を実行し、端末装置間のクロックを同期させる技術が提案されている（特許文献３参照）。
【００１５】
【特許文献１】
特開平９−２５２２９２号公報（段落［００１０］、図１，図３）
【特許文献２】
特開２００２−１６５１４８号公報（段落［００２１］、図４，図７）
【特許文献３】
特開２０００−２２６７８号公報（段落［００４８］、図１，図２）
【００１６】
【発明が解決しようとする課題】
しかしながら、上記の特許文献３に係る技術では、遅延量が正規分布を示す回線では補正量を正しく決定することができるとしても、パケット遅延のばらつきが常時大きくてデータ量が正規分布を示さない回線の場合には、クロック補正量を決定することができないため、結局のところクロックを補正しない状態と同じになり、やがて、受信バッファのオーバーフローやアンダーフローが発生するに至るという問題がある。
【００１７】
この発明はこのような課題を考慮してなされたものであり、パケット遅延のばらつきが常時大きくてデータ量が正規分布を示さない回線の場合であっても、受信バッファのオーバーフローやアンダーフローが発生しないように受信側のクロック周波数を適切に変化させることを可能とする音声ＩＰ化装置およびその方法を提供することを目的とする。
【００１８】
【課題を解決するための手段】
上述したように、受信バッファ内のデータ量の変化は、短期的にはネットワーク上のパケット遅延のばらつきも含まれるが、長期的には、音声入力および音声出力に使用される音声コーデック部（音声符号部・復号部）では一定速度でデータを入出力しているため、平均をとれば一定値になるいう知見を得た。
【００１９】
たとえば、入出力速度が６４［ｋｂｐｓ］の場合には、５秒程度から１００秒程度の間毎に平均を採ることにより一定値になる。
【００２０】
以下、この項では、理解の容易化のために添付図面中の符号を付けて説明する。したがって、この項に記載した内容がその符号を付けたものに限定して解釈されるものではない。
【００２１】
この発明の音声ＩＰ化装置および方法では、入力された音声データを音声ＩＰデータに変換して、ネットワーク（４）に送出するとともに、前記ネットワークから前記音声ＩＰデータを受け、音声データにもどして一旦受信バッファ（１１４，１１５）に格納し、この受信バッファから前記音声データを復号クロック（ＤＣＫ）により読み出して出力する際に、データ量検出手段（１１２，２１６）により、前記受信バッファ内のデータ量を一定時間毎に検出し、一定時間毎に検出したデータ量の平均値を平均値算出手段（１１２，２１６）により算出する。そして、算出した平均値に基づいて前記復号クロックの周波数を周波数変化手段（５６）により変化させるようにしている。
【００２２】
このため、パケット遅延のばらつきが常時大きくてデータ量が正規分布を示さない回線の場合であっても、適切に受信側のクロック周波数を変化させることが可能となり、結果として、受信バッファのオーバーフローやアンダーフローが発生する確率を可及的に小さくすることができる。
【００２３】
この場合、一定時間は、５秒−１００秒内の所定時間に設定されることがこのましい。
【００２４】
また、平均値は、連続して検出した少なくとも４回のデータ量の平均値にすればよい。実験的には２−３回の平均では、所望の特性を得られないことが分かっている。
【００２５】
さらに、前記復号クロックの周波数の変化は、基準周波数に対して上下に１段階の合計３段階の変化で十分である。基準周波数は、たとえば６４［ｋＨｚ］に選択される。
【００２６】
【発明の実施の形態】
以下、この発明の実施形態について図面を参照して説明する。なお、以下に参照する図面において、上記図８、図９に示したものと対応するものには同一の符号を付けてその詳細な説明は省略する。
【００２７】
図１は、この発明の一実施形態が適用された音声ＩＰ化システム１０２の構成を示している。この音声ＩＰ化システム１０２は、ネットワーク４に対して、同一構成（仕様）の音声ＩＰ化装置１０６ａ，１０６ｂがＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）ポート１０ａ，１０ｂを介して接続される構成となっている。なお、ＬＡＮポート１０ａ，１０ｂとしては、たとえばイーサネット（登録商標）における１０ＢＡＳＥ−Ｔ，１００ＢＡＳＥ−ＴＸ等を採用することができる。
【００２８】
図２は、図１に示した音声ＩＰ化装置１０６（１０６ａ，１０６ｂ）の構成を示している。この音声ＩＰ化装置１０６は、基本的には、ＣＰＵ１１２と受信バッファであるバッファ１１４とを有するＬＡＮコントローラ１１６（１１６ａ，１１６ｂ）と、符号部１８と復号部２０とを有する音声コーデック部２２と、ＬＡＮコントローラ１１６から出力される制御電圧データＤｖに対応した周波数の復号クロックＤＣＫを出力する復号クロック発生器５６とから構成されている。
【００２９】
復号クロック発生器５６は、制御電圧データＤｖを受けてアナログの制御電圧を発生する制御電圧発生器５２と、アナログの制御電圧を受けて、この電圧値に対応する周波数Ｆの復号クロックＤＣＫを発生する電圧制御型水晶発振器５４とから構成される。後述するように、この実施形態において、復号クロックＤＣＫの周波数Ｆの基準値（基準周波数または中心周波数という。）Ｆ０は、６４［ｋＨｚ］とされ、この基準周波数Ｆ０に対して上下１段階、合計で３段階に周波数が変化するように、制御電圧データＤｖが出力される。すなわち、制御電圧データＤｖは、３値（分かり易く説明すれば、０±１）である。これに対応して、復号クロックＤＣＫは、Ｆ０±１の３段階で周波数Ｆが変化する。
【００３０】
ここで、ＣＰＵ１１２は、いわゆるＣＰＵ（中央演算装置）の他、タイマ，カウンタ，時計の他、プログラムが記録されたＲＯＭ（読出専用メモリ）および作業用のＲＡＭ（ランダムアクセスメモリ）等を含む。ＣＰＵ１１２は、後述するように、ＲＯＭに記録されたプログラムに従って、一連の計算またはデータ処理を自動的に行う、いわゆるコンピュータ機能を有している。
【００３１】
図２において、自局（ここでは、音声ＩＰ化装置１０６ａとする。）の音声入力ポート２４（２４ａ）から供給される音声信号（アナログ信号）が増幅器２６を介して音声コーデック部２２の符号部１８に入力される。符号部１８は、ＡＤ変換器を有し、水晶発振器２８から供給される基準周波数Ｆ０が６４［ｋＨｚ］の固定周波数の符号クロックＣＣＫにより音声信号を８ビット幅のデジタルデータに符号化し入力音声データＤｉとしてＬＡＮコントローラ１１６に供給する。
【００３２】
ＬＡＮコントローラ１１６（のＣＰＵ１１２）は、この入力音声データＤｉを音声ＩＰデータ（ヘッダ＋音声データからなるパケット構成のシリアルデータ）に変換し、変換した音声ＩＰデータをＬＡＮポート１０（１０ａ）を経由してネットワーク４（図１参照）に対して出力する。
【００３３】
ネットワーク４あるいはＬＡＮポート１０には、実際には、ルータ、ゲートウェイ、スイッチ等が接続され、音声ＩＰデータのヘッダを参照して、対応する対局の、この場合、音声ＩＰ化装置１０６ｂに音声ＩＰデータを送る。
【００３４】
対局側の音声ＩＰ化装置１０６ｂは、音声ＩＰデータを入力音声データＤｉに対応する８ビット幅の出力音声データＤｏに変換する。この後、ネットワーク４上の、いわゆるパケット遅延のばらつきを吸収するために、出力音声データＤｏを、一旦バッファ１１４に蓄積する。
【００３５】
この実施形態において、バッファ１１４のメモリ容量は、１２８０［バイト］とされている。なお、実際上、ＩＰ音声データの１パケットが２０［バイト］で構成されているので、バッファ１１４には、最大６４パケットを蓄積することができる。なお、復号クロックＤＣＫの基準周波数Ｆ０は、Ｆ０＝６４［ｋＨｚ］であるので、１パケット２０［バイト］は、８［ビット］×２０×１／６４［ｋＨｚ］＝２．５［ｍｓ］となり、６４パケットは１６０［ｍｓ］に相当する。
【００３６】
ＣＰＵ１１２は、バッファ１１４内のデータ量を一定時間ｔ（この実施形態では、ｔ＝１６秒）毎にデータ量カウンタ値Ｃとして検出するデータ量検出手段として機能するとともに、前記一定時間ｔ毎に検出したデータ量カウンタ値Ｃをｍ回（この実施形態では８回）積算し、その積算値Ｓの平均値Ｍ（Ｍ＝Ｓ／８）を算出する平均値算出手段としても機能する。さらに、ＣＰＵ１１２は、算出した平均値Ｍに基づいて復号クロックＤＣＫの周波数Ｆを基準周波数Ｆ０に対して±１段階（Ｆ０±１）の範囲で変化させる制御電圧データＤｖを出力する周波数変化手段として機能する。なお、この実施形態において、±１段階は、６４［ｋＨｚ］×±５０［ｐｐｍ］≒±３［Ｈｚ］である。
【００３７】
バッファ１１４に蓄積されている音声データは、復号部２０からの読出イネーブル信号Ｓｅにより読み出され、復号部２０にラッチされる。復号部２０はＤＡ変換器を有し、ラッチした８ビット幅の出力音声データＤｏを復号クロックＤＣＫにより音声信号（アナログ信号）に復号化する。復号化された音声信号は、増幅器３０を介して音声出力ポート３２（３２ｂ）へ供給される。
【００３８】
なお、前記の読出イネーブル信号Ｓｅは、復号クロックＤＣＫの８クロック毎に出力され、この復号クロックＤＣＫの周波数Ｆは、上述したように、バッファ１１４内のデータ量を一定時間毎に検出したデータ量カウンタ値Ｃの平均値Ｍに基づく制御電圧データＤｖ（−１，０，＋１に対応する３段階の電圧データ）に対応して周波数Ｆ０−１，Ｆ０，Ｆ０＋１変化させられる。この実施形態によれば、バッファ１１４内のデータ量がバッファ１１４内のデータ量の時間平均値Ｍに応じて制御される。
【００３９】
次に、上述の実施形態に係る復号クロックＤＣＫの周波数変化（周期変化）の制御動作について、ＣＰＵ１１２により一定時間ｔ毎に繰り返し実行されるアプリケーションプログラムに係る図３に示すフローチャートに基づいて詳しく説明する。なお、特に断らない限り、制御主体はＣＰＵ１１２であるが、これをその都度参照するのは繁雑になるので、必要に応じて参照する。
【００４０】
まず、ステップＳ１では、一定時間ｔが経過したかどうかが判定される。一定時間ｔは、入出力速度が６４［ｋｂｐｓ］の場合には、５秒程度から１００秒程度の間の所定時間とし、この一定時間ｔ毎に平均を採ることにより、データ量が一定値になることが実験的に確かめられている。この実施形態では、コンピュータによる計算の便宜上、ｔ＝１６［秒］に設定している。
【００４１】
そこで、ステップＳ１の判定が肯定となったｔ＝１６［秒］経過時に、ステップＳ２において、バッファ１１４に現時点で蓄積されているデータ量がデータ量カウンタ値Ｃとして検出される。
【００４２】
図４は、１パケットが２０［バイト］で、２０［バイト］が２．５［ｍｓ］に対応する最大で６４パケットの蓄積可能なバッファ１１４の構成を示している。ここで、オーバーフローあるいはアンダーフローしないように、実験的に予め定めた中心値Ｖｃ（１６パケット）と、＋閾値ＴＨｈ（２４パケット）、−閾値ＴＨｌ（８パケット）、＋中心値Ｖｃｈ（１７パケット）、−中心値Ｖｃｌ（１５パケット）とは、図３のフローチャートの制御処理に用いられる基準値である。
【００４３】
なお、上限の基準値に設定している＋閾値ＴＨｈが、２４パケット、読出時間では６０［ｍｓ］に換算となるので、たとえば、図１の音声ＩＰ化システム１０２において、音声入力ポート２４ａから入力した音声データが、音声ＩＰ化装置１０６ａ、ネットワーク４、音声ＩＰ化装置１０６ｂ、音声出力ポート３２ｂ、音声入力ポート２４ｂ、音声ＩＰ化装置１０６ｂ、ネットワーク４、音声ＩＰ化装置１０６ａを介して、再び、音声出力ポート３２ａまでもどってくる時間が、１２０［ｍｓ］の遅延時間となる。このため、音声ＩＰ化システム１０２を利用して双方向リアルタイム通信を行った場合でも、遅延時間を原因とする聞き難さは、実用上十分な範囲にある。
【００４４】
また、図４において、データ量カウンタ値Ｃは、約１０パケット近傍の値を示している。
【００４５】
次に、ステップＳ３において、平均値Ｍを求めるための積算値Ｓを更新する。図５に示すように、データ量カウンタ値Ｃは、最新のデータ量カウンタ値Ｃ（ｎ）を含め過去８回のデータ量カウンタ値ＣがＲＡＭ（データ量カウンタ値記録テーブル）に記憶されている。このＲＡＭには、一定時間ｔ＝１６秒毎に新たなデータ量カウンタ値Ｃがデータ量カウンタ値Ｃ（ｎ）としてＲＡＭに記憶されると、最も古いデータ量カウンタ値Ｃ（ｎ−７）が捨てられる、いわゆる先入れ先出し方式で記憶されている。
【００４６】
そこで、ステップＳ３における積算値Ｓの更新は、データが更新されたＲＡＭに記憶されている過去８回のデータ量カウンタＣの値の積算値Ｓとされる。
【００４７】
次に、ステップＳ４では、その積算値Ｓを８で割ったデータ量平均値Ｍ（Ｍ＝Ｓ／８）を求め、このデータ量平均値Ｍと、＋方向の閾値ＴＨｈと−方向の閾値ＴＨｌとの大小関係を調べる。
【００４８】
データ量平均値Ｍが、＋方向の閾値ＴＨｈと−方向の閾値ＴＨｌとの間の値であった場合には（ＴＨｌ＜Ｍ＜ＴＨｈ）、オーバーフローもアンダーフローも発生しないと判定し、復号クロックＤＣＫの周波数Ｆは変更しないでステップＳ７の処理に進む。
【００４９】
また、ステップＳ４の判定において、データ量平均値Ｍが、＋方向の閾値ＴＨｈより大きな値であった場合には（Ｍ≧ＴＨｈ）、オーバーフローが発生する可能性があるとして、ステップＳ５において、制御電圧データＤｖを１段階上げることにより復号クロック発生器５６から出力される復号クロックＤＣＫの周波数Ｆを１段階増加させて早く読み出す処理を行う（Ｆ０＋１←Ｆ）。なお、このステップＳ５の処理時に、すでに周波数ＦがＦ＝Ｆ０＋１となっていた場合には、現時点でバッファ１１４からの音声データの読出処理が１段階早い速度で行われているので、周波数Ｆは、Ｆ＝Ｆ０＋１のままとする。
【００５０】
その一方、ステップＳ４の判定において、データ量平均値Ｍが、−方向の閾値ＴＨｌより小さな値であった場合には（Ｍ≦ＴＨｌ）、アンダーフローが発生する可能性があるとして、ステップＳ６において、復号クロックＤＣＫの周波数Ｆを１段階減少させて遅く読み出す処理を行う（Ｆ０−１←Ｆ）。なお、このとき、すでに周波数ＦがＦ＝Ｆ０−１となっていた場合には、現時点でバッファ１１４からの音声データの読出処理が１段階遅い速度で行われているので、周波数Ｆは、Ｆ＝Ｆ０−１のままとする。
【００５１】
次に、ステップＳ７において、復号クロックＤＣＫの周波数Ｆが、Ｆ＝Ｆ０であるか、Ｆ＝Ｆ０＋１であるか、Ｆ＝Ｆ０−１であるかに応じて、周波数Ｆを基準周波数Ｆ０にもどすかどうかの分岐判断処理を行う。
【００５２】
周波数ＦがＦ＝Ｆ０であるとき、周波数Ｆを変更する必要がないと判定して、次回のステップＳ１の処理にもどる。
【００５３】
ステップＳ７の判定において、周波数ＦがＦ＝Ｆ０＋１であった場合には、ステップＳ８において、ステップＳ４で算出したデータ量平均値Ｍと−中心値Ｖｃｌとを比較する。データ量平均値Ｍが−中心値Ｖｃｌより大きい場合には（Ｍ≧Ｖｃｌ）、まだ、早い速度で読み出す必要があると判断して周波数Ｆを、Ｆ＝Ｆ０＋１から変更しないで処理を終了し、次回のステップＳ１の処理を行う。
【００５４】
その一方、データ量平均値Ｍが−中心値Ｖｃｌより小さい場合には（Ｍ＜Ｖｃｌ）、もはや、早い速度で読み出す必要はないと判断して周波数Ｆを１段階上げて基準周波数Ｆ０にもどす（Ｆ０←Ｆ）。そして、次回のステップＳ１の処理にもどる。
【００５５】
また、ステップＳ７の判定において、周波数ＦがＦ＝Ｆ０−１であった場合には、ステップＳ１０において、ステップＳ４で算出したデータ量平均値Ｍと＋中心値Ｖｃｈとを比較する。データ量平均値Ｍが＋中心値Ｖｃｈより小さい場合には（Ｍ≦Ｖｃｈ）、まだ、遅い速度で読み出す必要があると判断して周波数Ｆは、Ｆ＝Ｆ０−１から変更しないで処理を終了し、次回のステップＳ１の処理を行う。
【００５６】
その一方、データ量平均値Ｍが＋中心値Ｖｃｈより大きい場合には（Ｍ＞Ｖｃｈ）、もはや、遅い速度で読み出す必要はないと判断して周波数Ｆを１段階下げて基準周波数Ｆ０にもどす（Ｆ０←Ｆ）。そして、次回のステップＳ１の処理にもどる。
【００５７】
上記ステップＳ１−Ｓ１１の処理を簡潔に説明すれば、以下の（１）−（４）の通りである。
【００５８】
（１）ＬＡＮコントローラ１１６は、バッファ１１４内のデータ量カウンタ値Ｃを一定時間ｔの時間間隔をおいて周期的に確認して検出する。
【００５９】
（２）検出したデータ量カウンタ値Ｃの８回積算値Ｓを求める。
【００６０】
（３）次に、積算値Ｓの平均値Ｍに対して、バッファ１１４に予め決めてある基準の中心値Ｖｃに対する＋方向の閾値ＴＨｈと−方向の閾値ＴＨｌとを比較し、この大小関係によって、復号クロックＤＣＫの周波数Ｆを制御する。復号クロックＤＣＫの周波数Ｆの制御は、具体的には、（ｉ）平均値Ｍが＋方向の閾値ＴＨｈより大きい場合には、復号クロックＤＣＫの周波数Ｆを１段階高い方に制御する（Ｆ０＋１←Ｆ）。（ｉｉ）平均値Ｍが−方向の閾値ＴＨｌより小さい場合には、復号クロックＤＣＫの周波数Ｆを１段階低い方に制御する（Ｆ０−１←Ｆ）。（ｉｉｉ）平均値Ｍが＋方向の閾値ＴＨｈと−方向の閾値ＴＨｌとの間の値である場合には、周波数Ｆを基準周波数Ｆ０に保持する（Ｆ０←Ｆ）。
【００６１】
（４）上記（３）の（ｉ）（ｉｉ）（ｉｉｉ）の周波数制御の結果、平均値Ｍがバッファ１１４のデータ容量の予め決めた中心値Ｖｃ（正確には、＋中心値Ｖｃｈまたは−中心値Ｖｃｌ）を超えた時点で周波数Ｆを基準周波数Ｆ０にもどす。
【００６２】
以上説明したように制御することにより、パケット遅延のばらつきが常時大きくてデータ量が正規分布を示さないネットワーク４を有する回線の場合であっても、適切に受信側の復号クロックＤＣＫの周波数Ｆを変化させることが可能となり、結果として、受信側のバッファ１１４のオーバーフローやアンダーフローが発生する確率を可及的に小さくすることができる。
【００６３】
図６は、図１の音声ＩＰ化システム１０２により、自局の音声ＩＰ化装置１０６ａの音声入力ポート２４ａから連続的に音声信号を入力し、ネットワーク４を経由して、対局の音声ＩＰ化装置１０６ｂの音声出力ポート３２ｂから音声信号を出力するように、実際に、連続１００時間の間、対向動作させた場合の復号クロックＤＣＫの周波数Ｆの変化を実線で示している。また、バッファ１１４に蓄積されているデータ量カウンタ値Ｃの平均値Ｍの変化を点線で示している。
【００６４】
実線で示す復号クロックＤＣＫの変化特性から、この音声ＩＰ化システム１０２においては、対局の音声ＩＰ化装置１０６ｂの復号クロックＤＣＫからみた自局の音声ＩＰ化装置１０６ａの符号クロックＣＣＫの偏差が、周波数Ｆ０と周波数Ｆ０＋１との間に存在することが理解される。
【００６５】
なお、点線で示す平均値Ｍの変化特性から、バッファ１１４内のデータ量は、中心値Ｖｃと＋方向の閾値ＴＨｈの間でのこぎり波状に変化していることが理解される。
【００６６】
この図６例では、音声信号の入力を開始した０時間から、約３２．４時間後までデータ量カウンタ値Ｃの平均値Ｍが徐々に直線的に増加し、その時点で平均値Ｍが＋閾値ＴＨｈより大きくなったので（Ｍ≧ＴＨｈ）、周波数ＦをＦ０からＦ０＋１に高くする制御を行い、バッファ１１４から早い速度で読み出すように制御を開始する。そのため、その時点からデータ量カウンタ値Ｃの平均値Ｍは減り始める。約３３．７時間後にデータ量カウンタ値Ｃの平均値Ｍが中心値Ｖｃとなったので、その時点で周波数ＦがＦ０＋１からＦ０にもどされている。なお、上述したように、制御は１６秒毎に行われているが、平均値Ｍを採る処理を行っているので、パケット遅延量の変動が常時大きいネットワーク４上でも、その変動に即応することなく、復号クロックＤＣＫの周波数Ｆを変化させているので、制御量が行き過ぎとなることがない。
【００６７】
図７は、この発明の他の実施形態に係る音声ＩＰ化装置２０６（２０６ａ，２０６ｂ）の構成を示している。この図７例では、バッファ１１４を、いわゆる外付けとし、外付けしたデータバッファ１１５（データ容量はバッファ１１４と同じ容量）に対して上記（１）−（４）の処理を、ハードウエアであるＤＳＰ等により構成したデータ量監視変化検出器２１６で行うようにしている。すなわち、データ量監視変化検出器２１６は、データバッファ１１５内のデータ量を一定時間ｔ毎にデータ量カウンタ値Ｃとして検出するデータ量検出手段、一定時間ｔ毎に検出したデータ量の平均値Ｍを算出する平均値算出手段および算出した平均値Ｍに基づいて復号クロック発生器５６から出力される復号クロックＤＣＫの周波数Ｆを変化させる周波数変化手段として機能する。
【００６８】
なお、この発明は、上述の実施形態に限らず、この明細書の記載内容に基づき、種々の構成を採り得ることはもちろんである。
【００６９】
【発明の効果】
以上説明したように、この発明によれば、パケット遅延量の変動が常時大きいネットワーク上でも、装置間のクロックの誤差のみに着目したクロック周波数制御が可能となり、受信バッファにおけるオーバーフローやアンダーフローを原因とする音声の不連続やモデムによるデータ通信のエラーを防止することができるという効果が達成される。
【００７０】
これにより、音声ＩＰ化システムの長時間使用、たとえば２４時間を超える連続使用が可能になるという効果が達成される。
【００７１】
たとえば、高速道路のトンネル内等での連続的なラジオ放送、工場内での臨時的な放送、市町村での定期的あるいは臨時的な防災放送および双方向通話、大規模団地での放送等に適用して好適である。さらに、電話等のリアルタイム双方向通信にも使用することができる。
【図面の簡単な説明】
【図１】この発明の一実施形態の音声ＩＰ化装置が適用された音声ＩＰ化システムのブロック図である。
【図２】この実施形態に係る音声ＩＰ化装置のブロック図である。
【図３】図２例の音声ＩＰ化装置の動作説明に供されるフローチャートである。
【図４】受信側のバッファの構成図である。
【図５】データ量カウンタ値テーブルを示す模式図である。
【図６】復号クロックの周波数変化と受信側バッファのデータ量の変化を示す実測値の特性図である。
【図７】この発明の他の実施形態に係る音声ＩＰ化装置のブロック図である。
【図８】初期段階の音声ＩＰ化装置が適用された音声ＩＰ化システムのブロック図である。
【図９】図８例中、音声ＩＰ化装置のブロック図である。
【符号の説明】
２，１０２…音声ＩＰ化システム        ４…ネットワーク
６，６ａ，６ｂ，１０６，１０６ａ，１０６ｂ，２０６，２０６ａ，２０６ｂ…音声ＩＰ化装置
１０，１０ａ，１０ｂ…ＬＡＮポート    １２，１１２…ＣＰＵ
１４，１１４…バッファ
１６，１６ａ，１６ｂ，１１６，１１６ａ，１１６ｂ…ＬＡＮコントローラ
１８…符号部                          ２０…復号部
２２…音声コーデック部
２４，２４ａ，２４ｂ…音声入力ポート  ２６，３０…増幅器
２８…水晶発振器
３２，３２ａ，３２ｂ…音声出力ポート  ５２…制御電圧発生器
５４…電圧制御型水晶発振器            ５６…復号クロック発生器
１１５…データバッファ                ２１６…データ量監視変化検出器
【図１】
2004219475.tif 000003
【図２】
2004219475.tif 000004
【図３】
2004219475.tif 000005
【図４】
2004219475.tif 000006
【図５】
2004219475.tif 000007
【図６】
2004219475.tif 000008
【図７】
2004219475.tif 000009
【図８】
2004219475.tif 000010
【図９】
2004219475.tif 000011