(57)【特許請求の範囲】
【請求項１】
受信した音声データを記憶する受信バッファと、
前記受信バッファに記憶された前記音声データのデータ量を制御するバッファ制御部と、
前記バッファ制御部により前記受信バッファから読み出された前記音声データが入力されて、入力された前記音声データに対応する音声を出力する音声デバイスと、
前記バッファ制御部により前記受信バッファから読み出されて前記音声デバイスに出力される前記音声データのデータ量に対する変化の度合を表す変動係数に応じて基礎値を算出し、算出した前記基礎値を前記バッファ制御部に出力する音声品質調整処理部を備え、
前記バッファ制御部は前記基礎値に基づいて前記受信バッファに記憶される前記音声データのデータ量を制御することを特徴とする受信端末装置。
【請求項２】
前記音声品質調整処理部は、前記変動係数が第１の閾値以上のとき前記基礎値を第１の基礎値から前記第１の基礎値よりも値が高い第２の基礎値に変更し、前記変動係数が第２の閾値以下のとき前記基礎値を前記第１の基礎値から前記第１の基礎値よりも値が低い第３の基礎値に変更し、前記変動係数が前記第１の閾値より高く前記第２の閾値未満のときは前記基礎値を前記第１の基礎値とすることを特徴とする請求項１記載の受信端末装置。
【請求項３】
前記第１の基礎値は前記バッファ制御部において前記データ量を制御するときのデフォルト値であることを特徴とする請求項２記載の受信端末装置。
【請求項４】
前記音声品質調整処理部は、前記バッファ制御部により前記受信バッファから読み出されて前記音声デバイスに出力される前記音声データのデータ量の監視区間における標準偏差を前記監視区間における当該データ量の平均値で除算した値を変動係数として算出することを特徴とする請求項１記載の受信端末装置。
【請求項５】
受信端末装置におけるバッファ制御方法において、
受信した音声データが受信バッファに記憶され、
前記受信バッファからバッファ制御部により読み出されて音声デバイスに出力される前記音声データのデータ量に対する変化の度合を表す変動係数に応じて基礎値を算出し、算出した前記基礎値を前記バッファ制御部に出力し、
前記基礎値に基づいて前記受信バッファに記憶される前記音声データのデータ量を制御する
ことを特徴とするバッファ制御方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、受信端末装置、及び受信端末装置におけるバッファ制御方法に関する。
【背景技術】
【０００２】
近年、携帯電話機などによる音声通話に関して、ＶｏＩＰ（Voice Over Internet Protocol）通信が注目されている。ＶｏＩＰ通信は、例えば、音声データがパケット化されて、ＩＰ（Internet Protocol）ネットワークにおいて伝送される通信技術である。
【０００３】
ただし、ＩＰネットワークは、例えば、ベストエフォート型のネットワークであり、送受信装置間で伝送路の帯域が保証されていない。このため、例えば、ＩＰネットワークにおける輻輳などに起因する伝送遅延揺らぎ（例えば、ジッタと称することがある）が発生し、ＶｏＩＰ通信において音声品質が劣化する場合がある。また、送受信装置間で独立したクロックで動作することでクロックずれが生じ、これにより音声品質が劣化する場合もある。音声品質には、音声の鮮明さと音声遅延の双方を含む場合がある。
【０００４】
例えば、携帯電話機などでは不定期に到来するパケットを一時蓄積するバッファを備える場合がある。バッファに蓄積されたパケットは定期的に読み出され、これによりジッタやクロックずれが吸収され、音声品質が維持されることができる。
【０００５】
しかしながら、ネットワークにおけるジッタや送受信装置間のクロックずれが閾値以上のとき、バッファに蓄積されるパケットの方が、バッファから読み出されるパケットよりもその数が多くなる場合もある。このような場合、バッファにおいてバッファオーバーフローが生じ、受信パケットを蓄積することができなくなる。受信パケットが蓄積できなくなると、例えば、当該受信バケットを音声デバイスなどに出力することができなくなり、その結果音飛びなどが生じ、音声が鮮明とならない場合がある。
【０００６】
他方、バッファから読み出されるパケットの方が、バッファで蓄積されるパケットよりもその数が多くなる場合もある。このような場合、バッファにおいて、バッファアンダーフローが生じ、バッファに蓄積される受信パケットが無くなってしまう場合がある。バッファに蓄積される受信パケットが無くなると、例えば、音声デバイスに出力される当該受信パケットも無くなり、その結果、音飛びなどが生じて音声が鮮明にならない場合がある。
【０００７】
このようなバッファオーバーフローやバッファアンダーフローに対しては、例えば、バッファサイズをこれまでよりも大きくすることで対処することも可能である。しかし、バッファサイズがこれまでよりも大きくなると、バッファからのパケットの読み出しに時間がかかり、パケットがバッファに入力してから出力されるまでの伝送遅延（又は音声遅延）がバッファサイズを大きくする前と比較して増加することになる。
【０００８】
このように、受信パケットを受信するバッファに関して、バッファサイズをこれまでよりも大きくするとバッファオーバーフローやバッファアンダーフローを防止し、音飛びなどを防止して音声を鮮明にすることができる。しかし、その一方、バッファサイズがこれまでよりも大きくなると、バッファから受信パケットを読み出すときに時間がかかり、音声遅延が生じてしまう。音声が鮮明になることと音声遅延とはトレードオフの関係にあるということができる。
【０００９】
バッファ制御は、例えば、バッファにおけるパケットの蓄積可能な最大値（バッファサイズ）と基礎値（又は初期値）を調整する技術である。受信パケットを蓄積するバッファに対してバッファ制御が行わせることにより、例えば、これまでのものと比較して、音声を鮮明にしつつ、音声遅延を少なくさせるようにすることができる。
【００１０】
このようなバッファ制御に関する技術としては例えば以下のようなものがある。すなわち、受信パケットバッファに一時記憶した音声パケットから得られる１つ以上のパラメータ情報に基づき複数の異なるバッファ調整値を決定し、複数のバッファ調整値から決定した受信バッファ調整値に基づきバッファ量を制御するようにしたパケット受信装置がある。
【先行技術文献】
【特許文献】
【００１１】
【特許文献１】特開２００５−３１８０９２号公報
【発明の概要】
【発明が解決しようとする課題】
【００１２】
上述した複数のバッファ調整値からバッファ量を制御する技術は、例えば、バッファの基礎値（又は初期値）について予め設定された値が用いられて、その後、ジッタやクロックずれに応じて、バッファのオーバーフローやアンダーフローが生じないように基礎値が調整される。
【００１３】
しかし、基礎値が設定されたときにジッタやクロックずれが閾値から大きくかい離している場合、オーバーフローなどが発生しないように基礎値が調整されるまでに時間がかかる場合がある。基礎値が調整されるまでの間は、例えば、バッファにおいてオーバーフローやアンダーフローが生じる場合もある。このような場合、基礎値が調整された後と比較して音声が鮮明にならなかったり、音声遅延が生じたりするなどして、音声品質が劣化する場合もある。
【００１４】
そこで、本発明の一目的は、音声品質を向上させるようにした受信端末装置、及び受信端末装置におけるバッファ制御方法を提供することにある。
【課題を解決するための手段】
【００１５】
一態様によれば、受信した音声データを記憶する受信バッファと、前記受信バッファに記憶された前記音声データのデータ量を制御するバッファ制御部と、前記バッファ制御部により前記受信バッファから読み出された前記音声データが入力されて、入力された前記音声データに対応する音声を出力する音声デバイスと、前記バッファ制御部により前記受信バッファから読み出されて前記音声デバイスに出力される前記音声データのデータ量に対する変化の度合を表す変動係数に応じて、前記受信バッファに記憶される前記音声データのデータ量を制御する。
【発明の効果】
【００１６】
音声品質を向上させるようにした受信端末装置、及び受信端末装置におけるバッファ制御方法を提供することができる。
【図面の簡単な説明】
【００１７】
【図１】図１は文字入力装置の構成例を表わす図である。
【図２】図２は通信システムと受信端末装置の各構成例を表わす図である。
【図３】図３は可変バッファ制御部と音声品質自動調整処理部の構成例をそれぞれ表わす図である。
【図４】図４は可変バッファ制御部と音声品質自動調整処理部の構成例をそれぞれ表わす図である。
【図５】図５（Ａ）はバッファ調整値、図５（Ｂ）はクロックずれバッファ調整値、図５（Ｃ）は基礎値に例を夫々表わす図である。
【図６】図６はシミュレーションシステムの構成例を表わす図である。
【図７】図７（Ａ）は揺らぎパターン、図７（Ｂ)は設定パターンの例を夫々表わす図である。
【図８】図８は揺らぎパターンを説明するための図である。
【図９】図９は音声データ数の時間推移を表わす図である。
【図１０】図１０（Ａ）と図１０（Ｂ）は音声データ数の時間推移を表わす図である。
【図１１】図１１（Ａ）と図１１（Ｂ）は音声データ数の時間推移を表わす図である。
【図１２】図１２は音声データ数の時間推移を表わす図である。
【図１３】図１３はシミュレーション結果の例を表わす図である。
【図１４】図１４（Ａ）は変動係数、図１４（Ｂ）はＰＥＳＱ値に対するシミュレーション結果の例をそれぞれ表わす図である。
【図１５】図１５は変動係数と基礎値変更分との対応関係の例を表わす図である。
【図１６】図１６は動作例を表わすフローチャートである。
【図１７】図１７は動作例を表わすフローチャートである。
【図１８】図１８は動作例を表わすフローチャートである。
【図１９】図１９は動作例を表わすフローチャートである。
【図２０】図２０は揺らぎパターンに対するＰＥＳＱ値と遅延時間の測定結果の例を表わす図である。
【図２１】図２１は各揺らぎパターンの測定結果に対する主観的評価結果の例を表わす図である。
【図２２】図２２は受信端末装置の他の構成例を表わす図である。
【図２３】図２３は受信端末装置の他の構成例を表わす図である。
【発明を実施するための形態】
【００１８】
以下、本発明を実施するための形態について説明する。
【００１９】
［第１の実施の形態］
最初に第１の実施の形態について説明する。図１は第１の実施の形態における受信端末装置１００の構成例を表わす図である。受信端末装置１００は、例えば、送信装置から送信された音声データを受信することができる。受信端末装置１００は、受信バッファ１７０、バッファ制御部１７１、音声品質調整処理部１７２、及び音声デバイス１７３を備える。
【００２０】
受信バッファ１７０は、受信した音声データを記憶することができる。
【００２１】
バッファ制御部１７１は、受信バッファ１７０に記憶された音声データのデータ量を制御することができる。また、バッファ制御部１７１は、音声品質調整処理部１７２から出力された受信バッファ１７０に対する変更後の基礎値を受け取り、基礎値に基づいて受信バッファ１７０に記憶される音声データのデータ量を制御することができる。
【００２２】
音声品質調整処理部１７２は、バッファ制御部１７１により受信バッファ１７０から読み出されて音声デバイス１７３に出力される音声データのデータ量に対する変動係数に応じて、受信バッファ１７０の基礎値を算出し、算出した基礎値をバッファ制御部１７１に出力することができる。変動係数は、例えば、音声デバイス１７３に出力される音声データのデータ量に対する変化の度合を表す指標である。また、基礎値は、受信バッファ１７０の記憶容量に対応して設定される。例えば、受信バッファ１７０の最大記憶容量に対して半分の容量を表わすものである。
【００２３】
音声デバイス１７３は、バッファ制御部１７１により受信バッファ１７０から読み出された音声データが入力されて、入力された音声データに対応する音声を出力することができる。
【００２４】
本第１の実施の形態では、例えば、音声品質調整処理部１７２は音声デバイス１７３に出力されるデータ量に対する変動係数に応じて、受信バッファ１７０の基礎値を変更するようにしている。例えば、音声品質調整処理部１７２は、変動係数に応じてデフォルト値の基礎値を増加させたり、減少させたりすることで基礎値を変更することができる。バッファ制御部１７１は、変更後の基礎値に基づいて受信バッファ１７０に記憶される音声データのデータ量を制御する。
【００２５】
したがって、音声デバイス１７３に出力される音声データのデータ量に応じて受信バッファ１７０の基礎値が変更されるため、例えば、基礎値が設定されたときにジッタやクロックずれが閾値から大きくかい離している場合でも、変動係数に応じた適切な基礎値に変更される。よって、上述した複数のバッファ調整値からバッファ量を制御する技術と比較して、本受信端末１００は時間をかけずにバッファオーバーフローや音声遅延などが生じない適切な基礎値に変更させることができ、音声品質の向上を図ることができる。
【００２６】
［第２の実施の形態］
＜通信システムと受信端末装置の各構成例＞
次に第２の実施の形態について説明する。図２は第２の実施の形態における通信システム１０の構成例を表わす図である。
【００２７】
通信システム１０は送信端末装置（以下、「送信端末」と称する場合がある）２００と受信端末装置（以下、「受信端末」と称する場合がある）１００とを備える。送信端末２００と受信端末１００は無線通信を行うことができ、例えば、送信端末２００から送信された無線信号を受信端末１００は受信することができる。送信端末２００は、例えば、無線基地局装置などであり、受信端末１００は携帯電話機（例えばフィーチャーフォンとスマートフォンの双方を含む）やパーソナルコンピュータなどである。
【００２８】
受信端末１００は、例えば、送信端末２００の電波到達可能範囲（セル範囲と呼ばれる場合もある）において、送信端末２００から送信された無線信号を受信することができる。本第２の実施の形態では、受信端末１００は、ＵＤＰ（User Data Protocol）による音声パケットを受信することができる。ＵＤＰは、例えば、ＩＰ（Internet Protocol）で使用される通信プロトコルの一つであり、ＴＣＰ（Transmission Control Protocol）と異なり、送達確認しなくてもよいため、ＴＣＰと比較して音声データや映像データのストリーミングに適している。
【００２９】
図２は受信端末１００の構成例も表わし、図３は受信端末１００のうち可変バッファ制御部１１０と音声品質自動調整処理部（以下、「音声品質処理部」と称することがある）１３０の構成例を表わす図である。
【００３０】
受信端末１００は、ＵＤＰ受信部１０１、ＲＴＰデカプセリング部１０２、音声パケット抽出部１０３、デコード処理部１０４、可変バッファ制御部１１０、音声品質処理部１３０、及び音声デバイス１４０とを備える。
【００３１】
なお、第１の実施の形態における受信バッファ１７０とバッファ制御部１７１は、例えば、可変バッファ制御部１１０に対応する。また、第１の実施の形態における音声品質調整処理部１７２は、例えば、音声品質自動調整処理部１３０に対応する。さらに、第１の実施の形態における音声デバイス１７３は、例えば、音声デバイス１４０に対応する。
【００３２】
ＵＤＰ受信部１０１は、送信端末２００から送信された無線信号を受信し、周波数変換処理（ダウンコンバート）、復調処理、誤り訂正復号化処理などを行うことで無線信号からＵＤＰパケットを抽出することができる。ＵＤＰ受信部１０１は、このような周波数変換処理などを行うことができるように、例えば、Ａ／Ｄ（Analogue to Digital）変換回路、Ｄ／Ａ変換回路、帯域通過フィルタ（ＢＰＦ：Band Pass Filter）、復調処理部、誤り訂正復号化処理部などを備えることができる。
【００３３】
ＲＴＰデカプセリング部１０２は、ＵＤＰ受信部１０１から出力されたＵＤＰパケットをデカプセリングすることでＲＴＰ（Real-time Transport Protocol）パケットを抽出する。例えば、ＵＤＰパケットには１又は複数のＲＴＰパケットが含まれ、ＲＴＰデカプセリング部１０２はＵＤＰパケットから、ＲＴＰパケットを抽出することができる。
【００３４】
音声パケット抽出部１０３は、ＲＴＰデカプセリング部１０２から出力されたＲＴＰパケットに対して音声パケットを抽出する。例えば、ＲＴＰパケットのヘッダ領域には、ペイロード領域に格納されたデータの種別を表わす情報が格納されており、音声パケット抽出部１０３はデータ種別が音声データであるときは当該ＲＴＰパケットを抽出し、それ以外のときは他の処理部に出力することができる。
【００３５】
デコード処理部１０４は、音声パケット抽出部１０３から出力された音声パケットに対して、音声データを抽出し、抽出した音声データに対して、Ｇ７２９などのアルゴリズムにより伸長処理を施すことで圧縮された音声データをデコードすることができる。抽出した音声データがＧ７．１１などのアルゴリズムで符号化されているときは、デコード処理部１０４は、復号化処理を施すことで符号化前の音声データを抽出することができる。デコードされた音声データは、例えば、ＰＣＭ（Pulse Code Modulation）データとして可変バッファ制御部１１０に出力される。
【００３６】
可変バッファ制御部１１０は、受信パケットバッファ１１１、ｎ（ｎは２以上の整数）個のパラメータ情報監視部１１３−１〜１１３−ｎ、バッファ調整値決定部１１５、及びバッファ制御部１１７を備える。
【００３７】
なお、第１の実施の形態における受信バッファ１７０は、例えば、受信パケットバッファ１１１に対応し、第１の実施の形態におけるバッファ制御部１７１は、例えば、バッファ制御部１１７に対応する。
【００３８】
可変バッファ制御部１１０は、デコード処理部１０４から出力された音声データ（例えばＰＣＭデータ）を受信パケットバッファ１１１に記憶し、バッファ制御部１１７によって、あるタイミングで音声データを読み出して音声デバイス１４０に出力することができる。このとき、可変バッファ制御部１１０は、音声品質処理部１３０から、受信パケットバッファ１１１に対する基礎値（又は初期値、以下「基礎値」と称する場合がある）を受け取り、受信パケットバッファ１１１に対して基礎値を設定することができる。可変バッファ制御部１１０は、設定された基礎値に基づいて受信パケットバッファ１１１から音声データを読み出すことができる。
【００３９】
受信パケットバッファ１１１に対する基礎値は、例えば、受信パケットバッファ１１１において蓄積可能なデータ容量の最大値（又はバッファサイズ）に対して１／２の容量のことである。例えば、ジッタなどが無い場合、受信パケットバッファ１１１において受信パケットの量はほぼ基礎値で推移することができる。一方、ジッタなどが発生した場合、受信パケットの量は基礎値の前後で推移する。図５（Ｃ）はジッタなどの発生しない場合における受信バッファ数の時間推移を表わすグラフ例を表わしている。図５（Ｃ）の例では、受信パケットバッファ１１１で記憶する（又は受信パケットバッファ１１１に入力する）受信パケットの数がどの時間でも基礎値となっている。
【００４０】
図３に戻り、受信パケットバッファ１１１は音声データを記憶することができる。受信パケットバッファ１１１は、記憶可能な音声データ量（又は音声データ数）は可変長であり、バッファ制御部１１７により適切な値に設定されることができる。
【００４１】
パラメータ情報監視部１１３−１〜１１３−ｎは、例えば、受信パケットバッファ１１１に記憶された音声データを監視し、第１から第ｎのバッファ調整値を出力することができる。
【００４２】
図４はパラメータ情報監視部１１３−１〜１１３−ｎの例を含む可変バッファ制御部１１０の構成例を表わす図である。図４の例では、パラメータ情報監視部１１３−１はジッタ監視部１１３−１であり、パラメータ監視部１１３−２はクロックずれ監視部１１３−２の例を表わしている。
【００４３】
ジッタ監視部１１３−１は、例えば、受信パケットバッファ１１１に記憶される音声データ（例えばＲＴＰパケット）の受信時間を監視し、音声データの受信間隔の分散特性を求めることでジッタを算出することができる。そして、ジッタ監視部１１３−１は、監視区間内における最大ジッタ値（max_jit）と、１受信パケット（例えばＲＴＰパケット）に含まれる音声データのフレーム長（t_send）とから以下の式を用いて、受信パケットバッファ１１１に対する基礎値（ref_npk）を算出する。
【００４４】
基礎値（ref_npk）＝１＋最大ジッタ値（max_jit）／音声データのフレーム長（t_send）  ・・・（１）
また、ジッタ監視部１１３−１は、監視区間ｊにおける受信バッファの平均量（ave_npk(j)）を求めて、バッファ調整量（ajbu_jit(j):jは現在の監視区間）を以下の式を用いて算出する。
【００４５】
バッファ調整量（ajbu_jit(j)）＝基礎値（ref_npk）−受信バッファの平均量（ave_npk(j)）  ・・・（２）
ジッタ監視部１１３−１は、式（２）で算出したバッファ調整量を第１のバッファ調整量としてバッファ調整値決定部１１５に出力することができる。図５（Ａ）は、ジッタ監視部１１３−１から出力されるバッファ調整量などを理解しやすくするために、バッファ調整量などの関係例が図示されている。
【００４６】
なお、ジッタ監視部１１３−１において式（１）を用いて算出された基礎値は、例えば、音声品質処理部１３０から出力された基礎値により設定された後で、算出されるものである。例えば、受信パケットバッファ１１１に対する基礎値は、最初に、音声品質処理部１３０で算出された基礎値が用いられて音声データが読み出され、その後、ジッタ監視部１１３−１で算出された基礎値が用いられ、当該基礎値が更新されることになる。
【００４７】
クロックずれ監視部１１３−２は、例えば、受信パケットバッファ１１１に記憶される音声データの監視区間（j）における受信バッファの平均量（ave_npk(j)）の単位時間あたりの変化量をクロックずれ（clk_diff(j)）として算出することができる。例えば、以下の式が用いられる。
【００４８】
クロックずれ（ave_npk(j)）＝１つ前の監視区間（j-1）における受信バッファの平均量（ave_npk(j-1)）＋｛受信バッファの平均量（ave_npk(j)）−１つ前の監視区間における受信バッファの平均量（ave_npk(j-1)）｝      ・・・（３）
クロックずれ監視部１１３−２は、クロックずれ（clk_diff(j)）に対してこれを打ち消す値を第２のバッファ調整量としてバッファ調整値決定部１１５に出力することができる。例えば、クロックずれ監視部１１３−２は、以下の数式を用いてクロックずれバッファ調整値（ajbuf_clk(j)）を算出することができる。
【００４９】
クロックずれバッファ調整値（ajbuf_clk(j)）＝−クロックずれ（ave_npk(j)）     
・・・（４）
クロックずれ監視部１１３−２は、式（４）で算出したクロックずれバッファ調整値を第２のバッファ調整庁としてバッファ調整値決定部１１５に出力することができる。図５（Ｂ）は、クロックずれ監視部１１３−２から出力されるクロックずれバッファ調整量などを理解しやすくするために、クロックずれバッファ調整量などの関係例が図示されている。
【００５０】
バッファ調整値決定部１１５は、パラメータ情報監視部１１３−１〜１１３−ｎからそれぞれ出力された第１から第ｎのバッファ調整量に基づいて最終的なバッファ調整値を決定する。
【００５１】
パラメータ情報監視部１１３−１，１１３−２がジッタ監視部１１３−１，クロックずれ監視部１１３−２の場合（例えば図４）、バッファ調整値決定部１１５は、最終的なバッファ調整値（ajbuf_pk(j)）を以下の式を用いて算出することができる。
【００５２】
最終的なバッファ調整値（ajbuf_pk(j)）＝第１のバッファ調整量（ajbu_jit(j)）＋第２のバッファ調整量（ajbuf_clk(j)）    ・・・（５）
バッファ制御部１１７は、基礎値変更部１３５から出力された基礎値に基づいて、受信パケットバッファ１１１の基礎値を設定する。また、バッファ制御部１１７は、バッファ調整値決定部１１５から出力されたバッファ調整値に基づいて、設定された基礎値を更新することができる。さらに、バッファ制御部１１７は、更新後の基礎値に基づいて、受信パケットを破棄したり繰り返したりすることで、記憶される音声データの量を増減させて、バッファサイズを増減させることができる。
【００５３】
なお、バッファ制御部１１７は、バッファ調整値決定部１１５から受け取ったバッファ調整値に対して、例えば以下のような処理を行うことができる。
【００５４】
すなわち、バッファ制御部１１７は、最終的なバッファ調整値（ajbuf_pk(j)）＝０のとき、音声品質処理部１３０により設定された基礎値を調整する必要がなく、受信パケットバッファ１１１に記憶された音声データを適宜読み出して音声デバイス１４０に出力することができる。このような状態のときは、受信パケットバッファ１１１における受信バッファ数は基礎値でほぼ一定となっている。図５（Ｃ）はこのような場合における受信パケットバッファ１１１における受信バッファ数の例を表わしている。
【００５５】
また、最終的なバッファ調整値（ajbuf_pk(j)）＞０のとき、バッファ制御部１１７は、受信パケットバッファ１１１から読み出した音声データを繰り返して音声デバイス１４０に出力する。このような繰り返しにより、受信パケットバッファ１１１から読み出される音声データ量が繰り返しの無い場合と比較して少なくなり、受信パケットバッファ１１１に記憶される音声データ量が相対的に増加させることができる。繰り返す回数は、例えば、バッファ調整値（ajbuf_pk(j)）とすることで、受信パケットバッファ１１１の受信バッファ数がバッファ調整値（ajbuf_pk(j)）分だけ相対的に増加し、基礎値も増加することになる。
【００５６】
さらに、最終的なバッファ調整値（ajbuf_pk(j)）＜０のとき、バッファ制御部１１７は受信パケットバッファ１１１から読み出した音声データを破棄し、これにより受信パケットバッファ１１１の受信バッファ数を減少させることができる。例えば、バッファ調整値（ajbuf_pk(j)）分の音声データ量が破棄されるとき、受信パケットバッファ１１１の受信バッファ数もバッファ調整値（ajbuf_pk(j)）分減少し、基礎値も減少することになる。
【００５７】
このように、可変バッファ制御部１１０では、ジッタとクロックずれに対して独立して受信パケットバッファ１１１に対する制御を行うことができる。そのため、ジッタとクロックずれが同時に発生した場合だけでなく、ジッタだけ発生した場合やクロックずれだけ発生した場合でも、受信パケットバッファ１１１のパケットオーバーフローやパケットアンダーフローを発生させないようにすることができる。従って、このようなバッファ制御が行われない場合と比較して、可変バッファ制御部１１０は音声品質を向上させることができる。
【００５８】
図３に図示されるように、音声品質処理部１３０は、再生データ監視部１３１、データ数記憶部１３２、変動係数算出部１３３、バッファ制御状態判定部１３４、及び基礎値変更部１３５とを備える。
【００５９】
再生データ監視部１３１は、バッファ制御部１１７から音声デバイス１４０に出力される音声データ（又は再生データ）を監視することができる。例えば、再生データ監視部１３１は、バッファ制御部１１７から出力される音声データの数（又は量）を一定期間（例えば後述する「バッファ監視周期」期間）カウントし、データ数記憶部１３２に記憶することができる。なお、バッファ制御部１１７から出力されて音声デバイス１４０に出力される音声データを再生データ（又は「デバイスに再生依頼するデータ」）と称する場合がある。
【００６０】
データ数記憶部１３２は、バッファ制御部１１７から音声デバイス１４０に出力される音声データ数などを記憶することができる。
【００６１】
変動係数算出部１３３は、データ数記憶部１３２に記憶された音声データ数を適宜読み出して、例えば、音声データ数の「バッファ監視周期」期間における平均値ｘなどを算出することができる。そして、変動係数算出部１３３は、算出した平均値ｘなどに基づいて、デバイスに再生依頼するデータ数の変動係数を算出することができる。変動係数の算出方法などの詳細は後述する。
【００６２】
バッファ制御状態判定部１３４は、変動係数算出部１３３で算出された変動係数に基づいて、バッファサイズを増加させるか、減少させるか、増減なしにするかを決定することができる。バッファ制御状態判定部１３４における処理の詳細は後述する。
【００６３】
基礎値変更部１３５は、バッファ制御状態判定部１３４における判定結果に応じて、受信パケットバッファ１１１に対するバッファ設定パラメータを算出し、さらに、受信パケットバッファ１１１に対する基礎値を決定することができる。基礎値変更部１３５は、決定した基礎値をバッファ制御部１１７に出力することができる。基礎値変更部１３５における処理の詳細などは後述する。
【００６４】
なお、基礎値変更部１３５は、例えば、決定した基礎値をパラメータ情報監視部１１３−１に出力することもできる。例えば、パラメータ情報監視部１１３−１がジッタ監視部（例えば図４）のとき、パラメータ監視部１１３−１は第１のパラメータ調整値を算出するときに基礎値の計算を行っている（例えば式（１）及び式（２））。よって、基礎値変更部１３５が算出した基礎値をパラメータ情報監視部１１３−１に出力することで、パラメータ情報監視部１１３−１は受け取った基礎値に対して、式（１）や式（２）を用いて更新後の基礎値を算出することができる。
【００６５】
音声デバイス１４０は、例えば、スピーカなどであり、バッファ制御部１１７から出力された音声データを音声として出力することができる。これにより、受信端末１００を利用するユーザは送信端末２００から送信された音声を聴くことができる。
【００６６】
＜変動係数について＞
次に、変動係数算出部１３３で算出される変動係数について説明する。変動係数は、例えば、受信パケットバッファ１１１から音声デバイス１４０に出力される音声データ数（又は音声データ量）の変化の激しさ（又は度合）を表わす指標である。本第２の実施の形態において、受信端末１００は変動係数に応じて受信パケットバッファ１１１の基礎値を変更するようにしている。例えば、変動係数がある第１の閾値（例えば、「０．３」。詳細は後述する）より大きいとき、音声品質処理部１３０は、受信パケットバッファ１１１においてジッタまたはクロックずれによりバッファオーバーフローやバッファアンダーフローなどが生じる可能性があるため、受信バッファの基礎値をデフォルト値よりも増加させるようにする。そして、増加した基礎値が受信パケットバッファ１１１の基礎値として設定される。これにより、バッファオーバーフローやバッファアンダーフローの発生を防止し、音飛びなどを防止して音声を鮮明にして音声品質を向上させることができる。
【００６７】
一方、変動係数が第２の閾値（例えば、「０．２５」。詳細は後述する）以下のとき、受信パケットバッファ１１１においてジッタやクロックずれなどによりそのサイズが大き過ぎて、読み出しに時間がかかる音声遅延が生じている可能性がある。このときは、音声品質処理部１３０は、受信パケットバッファ１１１の基礎値をデフォルト値よりも減少させるようにする。そして、減少した基礎値が受信パケットバッファ１１１の基礎値として設定される。これにより、音声遅延を防止して音声品質を向上させることができる。
【００６８】
この変動係数は、本第２の実施の形態においては変動係数算出部１３３において算出される。変動係数算出部１３３は、以下の式を用いて変動係数を算出する。
【００６９】
変動係数＝（データの標準偏差σ）／（再生依頼するデータ数の平均値ｘ）  
・・・（６）
ここで、標準偏差σは、以下の式により算出されることができる。
【００７０】
【数１】
0005747760.tif 000002
【００７１】
他方、音声品質を評価する指標としては、例えばＰＥＳＱ（Perceptual Evaluation of Speech Quality）値がある。このＰＥＳＱ値は、例えば、音声品質を客観的に評価する評価値であり、ＩＴＵ−Ｔ（International Telecommunication Union Telecommunication Standardization Sector:国際電気通信連合  電気通信標準化部門）のＰ．８６２として勧告されている。
【００７２】
本願発明者は、このＰＥＳＱ値と上述した変動係数について、音声デバイス１４０に再生依頼するデータ数を様々に変化させたときに２つの値がどのように推移するかについて、シミュレーションを行った。以下、シミュレーションについて説明することにする。
【００７３】
＜シミュレーション＞
図６は、本シミュレーションを実行するシミュレーションシステム２０の構成例を表わす図である。シミュレーションシステム２０は、音声送信装置３００、ネットワークシミュレータ４００、音声受信装置５００、ＶＱＴ（Voice Quality Tester）６００とを備える。
【００７４】
音声送信装置３００は音声データを生成して送信することができる。ネットワークシミュレータ４００は音声送信装置３００から送信された音声データに対して、複数種類の揺らぎパターンを生成して音声受信装置５００に出力する。揺らぎパターンは、例えば、音声データがネットワークにおいてどの程度遅延しているかなどを表わしている。
【００７５】
図７（Ａ）は本シミュレーションにおける揺らぎパターンの例を表わす図である。揺らぎパターンとしては、「ゆらぎなし」、「平均２００ｍｓ，偏差１００」、及び「平均５００ｍｓ，偏差２５０」の３つのパターンでシミュレーションを行った。
【００７６】
図８はこれら３つの揺らぎパターンのグラフ例を表わしている。図８において縦軸が音声データの計測数、横軸が遅延時間を表わしている。  
【００７７】
揺らぎパターンのうち「ゆらぎなし」は図８においてＸ１で表わされている。「揺らぎなし」は遅延時間が「０」であり、この遅延時間「０」において音声データが計測される。
【００７８】
また、揺らぎパターンのうち「平均２００ｍｓ，偏差１００」は、図８においてＸ２で表わされている。「平均２００ｍｓ，偏差１００」は、遅延時間が「２００ｍｓ」、標準偏差が「１００ｍｓ」である揺らぎパターンを表わしている。
【００７９】
さらに、揺らぎパターンのうち「平均５００ｍｓ，偏差２５０」は、図８においてＸ３で表わされている。「平均５００ｍｓ，偏差２５０」は、遅延時間が「５００ｍｓ」、標準偏差が「２５０ｍｓ」である揺らぎパターンを表わしている。Ｘ１からＸ３で表わされるような揺らぎパターンの音声データがネットワークシミュレータ４００で生成される。
【００８０】
図６に戻り、音声受信装置５００は、ネットワークシミュレータ４００から出力された揺らぎパターンの音声データを受信する。音声受信装置５００は、例えば、バッファと音声デバイスとを有し、バッファに対して複数種類の設定パターンが設定されることができる。
【００８１】
図７（Ｂ）は本シミュレーションにおける設定パターンの例を表わす図である。本シミュレーションで用いられる設定パターンは、「設定パターンＡ」と「設定パターンＢ」の２つである。２つのパターンは、図７（Ｂ）に表わされるように、５つの設定パラメータによりそれぞれ設定される。
【００８２】
「設定パターンＡ」は、バッファ容量が「設定パターンＢ」よりも少ない設定パターンである。「設定パターンＡ」は、ある揺らぎパターンのときは、「設定パターンＢ」と比較して、音声が聞き取りづらいものとなっている。
【００８３】
図９は受信パケットバッファ１１１に蓄積される音声データの時間推移の例を表わしている。また、図９において、「バッファ最大値」、「再生要求閾値（通常遅延最大値）」、「定常遅延閾値（定常遅延最小値）」、「再生要求最小値」、「バッファ監視周期」の５つの設定パラメータの例が表わされている。
【００８４】
「バッファ最大値」は、例えば、バッファにおいて記憶可能な音声データの最大値である。受信バッファ数が「バッファ最大値」を超えると、例えば、受信端末１００は受信バッファ数（又は記憶可能な音声データ数）が「バッファ最大値」以下になるまで受信する音声データを強制廃棄することができる。
【００８５】
「再生要求閾値（定常遅延最大値）」は、例えば、強制廃棄防止のための閾値である。受信バッファ数が「再生要求閾値（定常遅延最大値）」を超えると、受信端末１００は強制廃棄とならないようにバッファ制御を行うことができる。
【００８６】
また、「定常遅延閾値（定常遅延最小値）」は、例えば、音飛び（又は音欠け）防止のための閾値であり、受信バッファ数が「定常遅延閾値（定常遅延最小値）」以下になると、受信端末１００は音飛びなどが生じないようにバッファ制御を行うことができる。
【００８７】
「再生要求最小値」は、例えば、音声データについて補完を行うか否かの閾値であり、受信バッファ数が「再生要求最小値」になるとき、受信端末１００は音声データを受信するまで補完することができる。図９において丸印で表わされている部分は音声データの補完処理が行われていることを表わしている。
【００８８】
「バッファ監視周期」は、例えば、受信バッファ数が監視される周期を表わしている。
【００８９】
なお、「基礎値」は、例えば、「バッファ最大値」と「再生要求閾値」の２つの設定パラメータによりバッファサイズが決定されるとき、この２つのバッファ設定パラメータ値の１／２とすることができる。
【００９０】
これら５つの設定パラメータを用いて「設定パターンＡ」と「設定パターンＢ」とが設定される。本シミュレーションでは、このような「揺らぎパターン」と「設定パターン」の組み合わせにより、ＰＥＳＱ値と変動係数とが算出される。
【００９１】
図１０（Ａ）から図１２は、「揺らぎパターン」と「設定パターン」とを組み合わせたときの音声データ数の時間推移の例をそれぞれ表わすグラフである。いずれの図も、横軸は時間で縦軸はデータ数を表わし、例えば、音声受信装置５００において受信バッファから音声デバイスに出力されるデータ数（「デバイスに再生依頼するデータ数」と称することもある）の時間推移を表わしている。
【００９２】
図１０（Ａ）は、揺らぎパターンが「ゆらぎなし」、設定パターンが「設定パターンＡ」の場合の音声データ数の例を表わし、図１０（Ｂ）は揺らぎパターンが「平均２００ｍｓ，偏差１００」で設定パターンが「設定パターンＡ」の場合の音声データ数の例を表わしている。図１０（Ａ）は「ゆらぎなし」のため、揺らぎパターンのある図１０（Ｂ）と比較して、デバイスに再生依頼するデータ数の変動は激しいものとなっている。
【００９３】
また、図１１（Ａ）は揺らぎパターンが「平均５００ｍｓ，偏差２５０」で設定パターンが「設定パターンＡ」、図１１（Ｂ）は揺らぎパターンが「平均２００ｍｓ，偏差１００」で設定パターンが「設定パターンＢ」の場合における音声データ数の例をそれぞれ表わしている。「設定パターンＢ」は「設定パターンＡ」と比較してバッファサイズが大きいため、「設定パターンＢ」である図１１（Ｂ）の例は、「設定パターンＡ」である図１１（Ａ）と比較して、一定範囲内において、デバイスに再生依頼するデータ数が変動している。
【００９４】
さらに、図１２は揺らぎパターンが「平均５００ｍｓ，偏差２５０」で設定パターンが「設定パターンＢ」の場合における音声データ数の例を表わしている。
【００９５】
図６に戻り、ＶＱＴ６００は、音声送信装置３００から送信された音声データについてネットワークシミュレータ４００において揺らぎパターンが生成され、音声受信装置５００において設定パターンにより受信したときの、ＰＥＳＱ値を算出することができる。なお、変動係数は、例えば、音声受信装置５００において式（６）を用いて算出されるものとする。
【００９６】
図１３は本シミュレーションに対するシミュレーション結果の例を表わす図である。図１３は、「揺らぎパターン」と「設定パターン」の組み合わせて、「デバイスに再生依頼するデータ数」を変化させたときのＰＥＳＱ値と変動係数との値を比較したものである。
【００９７】
ＰＥＳＱ値は、例えば、音声データ数の変化が他と比較して激しいとき、その値が他と比較して低くなり、音声は鮮明でないとされる。逆に、ＰＥＳＱ値は、音声が鮮明なときはその値が他と比較して高くなる。
【００９８】
ＰＥＳＱ値が最も高いとき組み合わせは「ゆらぎなし」と「設定パターンＡ」であり、逆にＰＥＳＱ値が最も低い組み合わせは「平均５００ｍｓ，偏差２５０」と「設定パターンＡ」というシミュレーション結果を得た。図１３のＰＥＳＱ値の欄に記載した順位は、ＰＥＳＱ値が最も高い値のときの組み合わせからの順位を表わしている。
【００９９】
一方、変動係数については、例えば、音声データ数の変化が他と比較して激しいとき、その値は他と比較して高くなり、音声は鮮明でないとすることができる。逆に、変動係数は、音声が他と比較して低いときは、音声が鮮明となる。
【０１００】
変動係数について、最もその値が小さい組み合わせは「ゆらぎなし」と「設定パターンＡ」であり、逆に変動係数が最も高いときの組み合わせは「平均５００ｍｓ，偏差２５０」と「設定パターンＡ」というシミュレーション結果を得た。図１３の変動係数の欄に記載した順位は、変動係数の最も小さい値のときの組み合わせからの順位を表わしている。
【０１０１】
ここで図１３のシミュレーション結果において「順位」に着目すると、ＰＥＳＱ値の場合も変動係数の場合も、「揺らぎパターン」と「設定パターン」の組み合わせに対する順位は同じであった。このことは、例えば、音声品質の客観的な評価基準であるＰＥＳＱ値と、本第２の実施の形態における変動係数とが音声品質に対する評価としては同じ結果を得ることができることを表わしている。従って、音声品質を評価する指標としては変動係数が用いられても、例えば、ＰＥＳＱ値と同様に音声データ（例えば、「デバイスに再生依頼する音声データ」）に対して音声品質を評価することができる。
【０１０２】
図１４（Ａ）は「ゆらぎ設定」（上述した「揺らぎパターン」）と「バッファサイズ」との組み合わせに対する変動係数のシミュレーション結果の例を表わす図である。ここで「バッファサイズ」は、例えば、上述した「設定パターン」に含まれるものであり、音声受信装置５００におけるバッファ（又は受信端末１００における受信パケットバッファ１１１）のバッファサイズを表わしている。「ゆらぎ設定」について図１４（Ａ）において、例えば、「５０−２５」とあるのは、「遅延時間の平均値−標準偏差」の組み合わせを表わしており、遅延時間の平均値が「５０ｍｓ」、標準偏差が「２５ｍｓ」であることを表わしている。
【０１０３】
ここで、図１４（Ａ）に着目すると、バッファサイズを「１００」増加させたとき、変動係数は約０．０３減少する傾向にある結果を得た。例えば、バッファサイズが「３８０」から「４８０」に増加したとき、「ゆらぎ設定」が「４００−２００」の変動係数は「０．３２」から「０．２９」に「０．０３」だけ減少している。
【０１０４】
この変動係数については、例えば、「０．３」以上のとき、音声品質に影響が出て音切れなどの発生頻度が他と比較して多くなる傾向となった。一方、例えば、変動係数が「０．３」以下のときは音切れなどもなく、変動係数が「０．３」以上と比較して、音声品質は良好なものとなった。
【０１０５】
図１４（Ｂ）は「ゆらぎ設定」と「バッファサイズ」の組み合わせに対するＰＥＳＱ値のシミュレーション結果の例を表わす図である。ＰＥＳＱ値についても、例えば、「２．５」以下のとき、音切れなどの発生が他の場合と比較して多くなる傾向にあり、音声品質が他と比較して悪くなり会話に支障が出るものとなった。他方、変動係数が「２．５」以上のとき、変動係数が「２．５」以下の場合と比較して、音声品質は良好なものとなった。
【０１０６】
＜変動係数と基礎値との対応関係＞  
以上のようなシミュレーション結果に基づいて、本第２の実施の形態における受信端末１００は、デバイスに再生依頼するデータ数の変動係数に応じて受信パケットバッファ１１１に設定する基礎値を変更させるようにしている。
【０１０７】
図１５は、変動係数と基礎値の変更分との対応関係の例を表わす図である。例えば、変動係数が「０．３」以上のとき、受信端末１００は受信パケットバッファ１１１のバッファサイズのデフォルト値に対して、
バッファサイズ＝（変動係数−０．３）／０．０３×１００    ・・・（８）
だけ増加させる。或いは、受信端末１００は、受信パケットバッファ１１１に対して最初に設定された基礎値のデフォルト値に対して、式（８）のバッファサイズ分に対応する基礎値の増加分を加算した値を基礎値として受信パケットバッファ１１１に設定することができる。
【０１０８】
例えば、音声品質処理部１３０の基礎値変更部１３０は、式（８）に基づいて算出した基礎値をバッファ制御部１１７に出力し、バッファ制御部１１７では受け取った基礎値に対応するようにバッファ制御を行うことができる。
【０１０９】
この場合、例えば、バッファ制御部１１７は、受信パケットバッファ１１１から取り出した音声データを所定回数繰り返し使用して音声デバイス１４０に出力する。このとき、受信パケットバッファ１１１から読み出される音声データ数が一時的に停止する一方で、記憶される音声データ数も増加する。これにより、基礎値がこれまでよりも増加し、式（８）のサイズ分だけバッファサイズを増加させることができる。
【０１１０】
例えば、上述したシミュレーションにおいて、「平均５００ｍｓ，偏差２５０」で「設定パターンＡ」のとき（例えば図１１（Ａ））、変動係数は「３．２８」となり、「０．３」以上となっている。この場合は、例えば、図１１（Ａ）に表わされるように「デバイスに再生依頼するデータ数」の変動は他と比較して激しく、バッファオーバーフローやバッファアンダーフローが生じる可能性が他と比較して高い。従って、受信端末１００は、バッファオーバーフローやバッファアンダーフローが生じないように、受信パケットバッファ１１１のバッファサイズを増加させて、その増加に対応する基礎値を受信パケットバッファ１１１に設定することができる。
【０１１１】
なお、式（８）では、変動係数が「０．０３」減少するようなバッファサイズとなるようなバッファサイズの増加分が算出されている。式（８）は一例であって、バッファサイズが増加できるような値であれば他の式で算出された値をバッファサイズの増加分とすることができる。
【０１１２】
図１３に表わされるように、変動係数が「０．２６」から「０．３」のときは、受信端末１００は受信パケットバッファ１１１のバッファサイズを変更しないようにすることができる。
【０１１３】
この場合、バッファ制御部１１７は、例えば、受信パケットバッファ１１１に記憶されている音声データを定期的に読み出して音声デバイス１４０に出力することができる。これにより、バッファ制御部１１７は、予め保持した基礎値のデフォルト値に応じたバッファ制御を行うことができる。
【０１１４】
例えば、上述したシミュレーションにおいて「平均５００ｍｓ，偏差２５０」と「設定パターンＢ」の組み合わせ（例えば図１２）における音声データの推移では、変動係数は「０．２７」であり当該範囲内となっている。このような音声データの推移では、図１１（Ａ）の場合よりも変動の激しさは少なく、受信端末１００は、受信パケットバッファ１１１に設定する初期値としてデフォルト値のままであってもバッファオーバ−フローやバッファアンダーフローなどは発生しない。
【０１１５】
図１３に表わされるように、変動係数が５周期連続で「０．２５」以下となるとき、受信端末１００は受信パケットバッファ１１１のバッファサイズを減少させるようにすることができる。或いは、基礎値変更部１３５は、受信パケットバッファ１１１のバッファサイズを「５０」減少させた場合のバッファサイズに対応する基礎値をバッファ制御部１１７に出力することができる。
【０１１６】
この場合、例えば、バッファ制御部１１７は、受信パケットバッファ１１１から所定個数分の音声データを取り出して破棄し、その直後の音声データを音声デバイス１４０に出力することができる。これにより、受信パケットバッファ１１１に記憶される音声データ数を所定個数分少なくさせることができ、これまでのものよりもバッファサイズも少なくさせ、初期値も少なくさせることができる。
【０１１７】
例えば、上述したシミュレーション結果においては、図１０（Ａ）の場合、バッファサイズを減少させ、初期値も減少させるようにすることで、音声遅延を防止して、音声品質を向上させることができる。
【０１１８】
＜受信端末１００の動作例＞
次に受信端末１００における動作例について説明する。図１６から図１９は受信端末１００における動作例をそれぞれ表わすフローチャートである。このうち図１６は受信する音声データの強制破棄と無音データの破棄の各処理を含む動作例、図１７は音声データの補完処理を含む動作例、図１８と図１９は音声品質自動調整処理（以下、「音声品質調整処理」と称することがある）の動作例をそれぞれ表わしている。
【０１１９】
最初に、図１６を参照して、音声データの強制破棄と無線データの破棄の各処理を含む動作例について説明する。図１６に表わされる処理は、例えば、バッファ制御部１１７において行われる。
【０１２０】
デコード処理部１０４が受信パケットバッファ１１１に音声データを出力し、受信パケットバッファ１１１が音声データを記憶する（又は「音声データを受信する」と称する場合がある）と本処理が開始される（Ｓ１０）。
【０１２１】
次いで、バッファ制御部１１７は強制廃棄フラグが「ＴＲＵＥ」または「ＦＡＬＳＥ」になっているかを判定する（Ｓ１１）。例えば、バッファ制御部１１７は、受信パケットバッファ１１１において蓄積される音声データの個数（又は音声データ数）を監視し、その個数が「バッファ最大値」以上のときは「ＴＲＵＥ」、その個数が「バッファ最大値」未満のときは「ＦＡＬＳＥ」と判定することができる。音声データの個数としては、例えば、ＲＴＰパケットの数、又は音声データのビット数などとすることができる。
【０１２２】
バッファ制御部１１７は、強制廃棄フラグが「ＴＲＵＥ」のとき（Ｓ１１で「ＴＲＵＥ」）、音声データ数が強制廃棄閾値を超えるか否かを判定する（Ｓ１２）。例えば、強制廃棄される音声データの個数には強制廃棄閾値分の閾値が設けられており、バッファ制御部１１７が強制廃棄を行うときは強制廃棄閾値以内の音声データの個数分廃棄を行い、強制廃棄閾値を超えたときは廃棄を行わないようにしている。
【０１２３】
よって、バッファ制御部１１７は、音声データ個数が強制廃棄閾値を超えたとき（Ｓ１２でＮＯ）、受信パケットバッファ１１１に入力される音声データの強制廃棄を終了する（Ｓ１３）。次いで、バッファ制御部１１７はＳ１４の処理に移行する。
【０１２４】
一方、バッファ制御部１１７は、音声データ数が強制廃棄閾値を超えないとき（Ｓ１２でＹｅｓ）、音声データ数が「バッファ最大値」を超えている場合は、一定時間受信パケットバッファ１１１に入力される音声データを強制廃棄する（Ｓ１４）。
【０１２５】
一方、バッファ制御部１１７は、強制廃棄フラグが「ＦＡＬＳＥ」のとき（Ｓ１１で「ＦＡＬＳＥ」）、Ｓ１４の処理に移行する。
【０１２６】
バッファ制御部１１７は、Ｓ１４の処理を終了すると、無音データを破棄する処理（Ｓ１５からＳ１７）を行う。無音データの破棄とは、例えば、無音データがあるときにこれを破棄する処理のことであり、音声データが破棄されるとその分音声データの数も分少なくなり、結果として、音声遅延を回復させることができる。
【０１２７】
バッファ制御部１１７は、受信パケットバッファ１１１から音声データを読み出して、読み出した音声データが無音であるか否かを判定する（Ｓ１５）。例えば、バッファ制御部１１７は一定時間、音声データがない状態のとき（例えば、音声データとして「０」と「１」がない状態）、音声データは無音であると判定し、そうでないとき、音声データは無音でないと判定することができる。
【０１２８】
バッファ制御部１１７は、音声データが無音と判定したとき（Ｓ１５でＹｅｓ）、無音破棄条件に合致しているときは無音データを破棄し、無音破棄条件に合致しないときは無音データを破棄しない（Ｓ１７）。無音破棄条件は、例えば、無音補正カウンタが「０」以上で、かつ、受信パケットバッファ１１１に記憶されている音声データの数が「定常遅延閾値（定常遅延最小値）」のとき無音データの破棄が実施され、そうでないとき無音データの破棄が実施されない条件である。無音補正カウンタは、例えば、補完処理（Ｓ１７）を行うか否かを判定するためのカウンタであり、後述する図１７の処理により無音補正カウンタの値が設定される。なお、無音補正カウンタが「０」以上のときは、例えば、補完処理が行われないものとなっている。
【０１２９】
次いで、バッファ制御部１１７は本処理を終了する（Ｓ１９）。
【０１３０】
一方、バッファ制御部１１７は、音声データが無音でないと判定したとき（Ｓ１５でＮｏ）、無音データの破棄を行うことなく本処理を終了する（Ｓ１９）。
【０１３１】
次に、音声データの補完処理を含む動作例について図１７を参照して説明する。本動作例は、例えば、バッファ制御部１１７において行われる。
【０１３２】
バッファ制御部１１７は、音声デバイス１４０から音声データの再生完了通知を受け取ると処理を開始する（Ｓ２０）。例えば、音声デバイス１４０は、定期的に音声データの再生完了通知をバッファ制御部１１７に出力することができる。
【０１３３】
次いで、バッファ制御部１１７は、受信パケットバッファ１１１において記憶されている音声データの個数を１つデクリメントする（Ｓ２１）。バッファ制御部１１７は、例えば、監視区間ごとに受信パケットバッファ１１１において蓄積されている音声データの個数を管理することができる。
【０１３４】
次いで、バッファ制御部１１７は音声データの補完処理を行う（Ｓ２２）。補完処理は、例えば、無音補正カウンタがマイナスのときに行われる。無音補正カウンタは、例えば、受信パケットバッファ１１１における蓄積パケット数が「定常遅延閾値（定常遅延最小値）」以下になるとき、マイナス値を取り得るようになされている（例えばＳ２８）。このような場合は、例えば、図９の丸印で示されるように補完処理が行われる。バッファ制御部１１７は、例えば、受信パケットバッファ１１１に記憶された直前の無音データや直前の音声データを１又は複数回音声デバイス１４０に出力するなどすることにより、補完処理を行うことができる。
【０１３５】
次いで、バッファ制御部１１７は、受信パケットバッファ１１１に蓄積されている音声データの個数が現在のバッファ下限値よりも小さいか否かを判定する（Ｓ２３）。そして、バッファ制御部１１７は、音声データの個数が現在のバッファ下限値よりも小さいとき（Ｓ２３でＹＥＳ）、現在のバッファ下限値を更に低い値に更新し（Ｓ２４）、Ｓ２５の処理に移行する。
【０１３６】
一方、バッファ制御部１１７は、音声データの個数が現在のバッファ下限値よりも小さくないとき（Ｓ２３でＮＯ）、現在のバッファ下限値を更新することなく、Ｓ２５の処理に移行する。Ｓ２３とＳ２４の処理は、例えば、受信パケットバッファ１１１に蓄積される音声データの個数に対応するように現在のバッファの下限値を更新する処理を行っている。
【０１３７】
次いで、バッファ制御部１１７はバッファ監視カウンタをインクリメントする（Ｓ２５）。そして、バッファ制御部１１７は監視タイミングが到来したか否かを判定する（Ｓ２６）。
【０１３８】
バッファ制御部１１７は、例えば、インクリメントしたバッファ監視タイミング（Ｓ２５）が「バッファ監視周期」を超えるか否かにより本処理を判定することができる。例えば、図９において、バッファ監視カウンタはバッファ監視周期が到来するごとにリフレッシュされ、それまでは所定のタイミングでインクリメントされるカウンタでもある。
【０１３９】
バッファ制御部１１７は、監視タイミングが到来していないと判定したとき（Ｓ２６でＮｏ）、音声品質自動調整処理を行う（Ｓ４０）。例えば、バッファ制御部１１７は、バッファ監視タイミングが「バッファ監視周期」を超えないときは、音声品質自動調整処理を行うことになる。音声品質自動調整処理の詳細は後述する。
【０１４０】
一方、バッファ制御部１１７は、監視タイミングが到来したと判定したとき（Ｓ２６でＹｅｓ）、現在のバッファ下限値と「定常遅延閾値（定常遅延最小値）」との差分値が「０」より小さいか、「０」となっているか、「０」より大きいか否かを判定する。
【０１４１】
バッファ制御部１１７は、現在のバッファ下限値と「定常遅延閾値（定常遅延最小値）」との差分が「０」よりも小さいとき（Ｓ２７で「＜０」）、無音補正カウンタをマイナス値にする（Ｓ２８）。現在のバッファ下限値と「定常遅延閾値（定常遅延最小値）」の差分が「０」より小さいときは、例えば、現在受信パケットバッファ１１１に蓄積されるデータ数が「定常遅延閾値（定常遅延最小値）」よりも小さいときである。例えば、図９に図示されるように、受信パケットバッファ１１１に蓄積されるデータ数が「定常遅延閾値（定常遅延最小値）」より小さく補完処理が行われる場合である。本第２の実施の形態では、このような補完処理が行われるようにするため、無音補正カウンタをマイナス値にする。無音補正カウンタがマイナス値のとき、Ｓ２２の処理において補完処理が行われる。
【０１４２】
一方、バッファ制御部１１７は、現在のバッファ下限値と「定常遅延閾値（定常遅延最小値）」との差分が「０」のとき、無音補正カウンタを「０」にする（Ｓ２９）。この場合は、現在受信パケットバッファ１１１に蓄積されるデータ数と「定常遅延閾値（定常遅延最小値）」とが同じ値となっている場合である。この場合、バッファ制御部１１７は、例えば補完処理などがすぐに行われるように無線補正カウンタを「０」にしている。
【０１４３】
一方、バッファ制御部１１７は、現在のバッファ下限値と「定常遅延閾値（定常遅延最小値）」との差分が「０」より大きいとき（Ｓ２７で「＞０」）、無音補正カウンタをプラス値にする（Ｓ３０）。この場合は、現在受信パケットバッファ１１１に蓄積されるデータ数は、「定常遅延閾値（定常遅延最小値）」よりも大きい値となっているため、例えば、補完処理が行われないようにバッファ制御部１１７は無音補正カウンタをプラス値にしている。
【０１４４】
次いで、バッファ制御部１１７は、前回（例えばバッファ監視カウンタが現在のものよりも１つ前のカウンタ値）のバッファ下限値よりも現在のバッファ下限値の方か多いか否かを判定する（Ｓ３１）。
【０１４５】
バッファ制御部１１７は、前回のバッファ下限値よりも現在のバッファ下限値の方が多いとき（Ｓ３１でＹｅｓ）、無音補正カウンタを最大値にする（Ｓ３２）。例えば、バッファ制御部１１７は補完処理が行われないように無音補正カウンタの値を設定している。一方、バッファ制御部１１７は、前回のバッファ下限値よりも現在のバッファ下限値の方が多くないとき（Ｓ３１でＮｏ）、Ｓ３３の処理に移行する。
【０１４６】
バッファ制御部１１７は、Ｓ２８の処理が終了するか、Ｓ２９の処理が終了するか、Ｓ３１の処理でＮｏのとき、またはＳ３２の処理が終了したときは、現在のバッファ下限値を「９９９９」にする（Ｓ３３）。バッファ制御部１１７は、例えば、監視タイミング（例えば「バッファ監視期間」）が到来するごとに現在のバッファ下限値を「９９９９」にすることができる。
【０１４７】
次いで、受信端末１００は音声品質自動調整処理を行う（Ｓ４０）。図１８は音声品質自動調整処理の動作例を表わすフローチャートである。本動作例は、例えば、音声品質処理部１３０において行われる。
【０１４８】
受信端末１００は、音声自動調整処理を開始すると（Ｓ４０又はＳ４００）、受信バッファ最下限値が「９９９９」であるか否かを判定する（Ｓ４０１）。例えば、バッファ制御部１１７が現在のバッファ下限値が「９９９９」であるか否かにより判定することができる。すなわち、例えば、バッファ制御部１１７は「バッファ監視周期」が到来したか否かを判定している。
【０１４９】
受信端末１００は、受信バッファ最下限値が「９９９９」のとき（Ｓ４０１で「＝初期値（９９９９）」）、Ｓ４０７以降の処理を行い、受信バッファ最下限値が「９９９９」でないとき（Ｓ４０１で「／＝初期値（９９９９）」）、Ｓ４０２以降の処理を行う。例えば、バッファ制御部１１７は「バッファ監視周期」が到来したと判定したときは、再生データ監視部１３１などを介して変動係数算出部１３３に対して、Ｓ４０７以降の処理を行わせるようにその旨を通知する。一方、バッファ制御部１１７は「バッファ監視周期」が到来していないと判定したときは、再生データ監視部１３１に対してＳ４０２以降の処理を行わせるようにその旨を通知する。
【０１５０】
Ｓ４０２において、再生データ監視部１３１は、再生中データ数をデータ数記憶部１３２に記憶する。例えば、バッファ制御部１１７から出力される音声データのビット数や音声データが格納されるパケットのパケット数などである。
【０１５１】
次いで、再生データ監視部１３１は、格納カウンタを１つインクリメントする（Ｓ４０３）。格納カウンタは、例えば、再生データ数の１つ１つをカウントするカウンタであり、再生データ監視部１３１において格納カウンタを保持することができる。再生データ監視部１３１は、格納カウンタによりカウントしたカウント値をデータ数記憶部１３２に記憶することもできる。
【０１５２】
次いで、再生データ監視部１３１は再生待ちフラグが「ＴＲＵＥ」であれば再生待ちフラグカウンタをカウントアップする（Ｓ４０４）。再生待ちフラグは、例えば、受信パケットバッファ１１１において受信する音声データが受信パケットバッファ１１１のバッファサイズを超えたときに「ＴＲＵＥ」となり、そうでないとき「ＦＡＬＳＥ」となるフラグである。再生待ちフラグは、例えば、バッファ制御部１１７において受信パケットバッファ１１１に入力される音声データが受信待ちの状態になったか否かが検出されて、この検出結果に基づいて「ＴＲＵＥ」または「ＦＡＬＳＥ」が設定され、メモリなどに記憶される。また、再生待ちフラグカウンタは、例えば、再生データ監視部１３１において保持されるカウンタであり、メモリに記憶された再生待ちフラグが「ＴＲＵＥ」のとき、カウンタ値をカウントアップすることができる。
【０１５３】
次いで、再生データ監視部１３１はバッファ補完フラグが「ＴＲＵＥ」であればバッファ補完フラグカウンタをカウントアップする（Ｓ４０５）。バッファ補完フラグは、例えば、受信パケットバッファ１１１において音声データを受信せず（又は不足し）、定期的に受信パケットバッファ１１１から音声データを読み出させないことで補完処理が行われたときに「ＴＲＵＥ」となるフラグである。バッファ補完フラグは、例えば、補完処理が行われないときは「ＦＡＬＳＥ」となる。バッファ補完フラグは、例えば、バッファ制御部１１７において補完処理が行われたか否か（例えば図１７のＳ２２）が検出され、この検出結果に基づいてバッファ補完フラグを「ＴＲＵＥ」または「ＦＡＬＳＥ」に設定される。そして、例えば、バッファ制御部１１７はバッファ補完フラグを再生データ監視部１３１に出力して、再生データ監視部１３１はバッファ補完フラグを得て、バッファ補完フラグが「ＴＲＵＥ」のときバッファ補完フラグカウンタをカウントアップすることができる。バッファフラグ補完フラグカウンタは、例えば、再生データ監視部１３１において保持されるカウンタであり、バッファ補完フラグが「ＴＲＵＥ」のとき、カウンタ値をカウントアップすることができる。
【０１５４】
そして、音声品質処理部１３０は音声品質自動調整処理を終了する（図１９のＳ４０６）。なお、Ｓ４０２からＳ４０５までの処理は、例えば、「バッファ監視周期」内において音声デバイス１４０に出力される再生中データがカウントされ（Ｓ４０２）、受信パケットバッファ１１１においてバッファサイズを超えた回数がカウントされる（Ｓ４０４）。また、例えば、「バッファ監視周期」において、補完処理が行われた回数がカウントされる（Ｓ４０４）。
【０１５５】
一方、受信バッファ下限値が「９９９９」のとき、すなわち、「バッファ監視周期」が到来したとき（Ｓ４０１で「＝初期値（９９９９）」）、変動係数算出部１３３は再生データ数の平均値ｘを算出する（Ｓ４０７）。例えば、変動係数算出部１３３は、データ数記憶部１３２に記憶されている再生データ数と格納カウンタのカウント値ｎを読み出して、平均値ｘを算出する（Ｓ４０７）。変動係数算出部１３３は、例えば、再生データ数を格納カウンタのカウント値ｎで除算することで平均値ｘを算出することができる。
【０１５６】
次いで、変動係数算出部１３３は、再生データに対する標準偏差σを算出する（Ｓ４０８）。変動係数算出部１３３は、例えば、平均値ｘ（Ｓ４０７）と格納カウンタｎとを用いて、上述した式（７）により、標準偏差σを算出する。  
【０１５７】
次いで、変動係数算出部１３３は、算出した標準偏差σを平均値ｘで除算することで変動係数を算出する（Ｓ４０９）。変動係数算出部１３３は、例えば、上述した式（６）により変動係数を算出する。
【０１５８】
次いで、変動係数算出部１３３は格納カウンタを初期化する（Ｓ４１０）。例えば、変動係数算出部１３３は、再生データ監視部１３１に対して格納カウンタを初期化するよう通知し、再生データ監視部１３１はこの通知に基づいて格納カウンタを初期化することができる。なお、本処理は、Ｓ４０７からＳ４０９の間で行われてもよい。
【０１５９】
次いで、バッファ制御状態判定部１３４は、変動係数算出部１３３から変動係数を受け取り、変動係数の値がどのようになっているか判定する（Ｓ４１１）。
【０１６０】
そして、バッファ制御状態判定部１３４は、変動係数が「０．３」よりも大きいとき、式（８）を用いて受信パケットバッファ１１１に対するバッファサイズの増加分を算出する（Ｓ４１２）。例えば、変動係数が「０．３」よりも大きいときは、変動係数が「０．３」以下の場合と比較して、受信する音声データの変動が激しくなる（例えば図１１（Ａ））。このような場合、例えば、受信端末１００はバッファサイズをこれまでよりも大きくすることでバッファオーバーフローなどを防止し、音声品質を確保するようにしている。なお、バッファ制御状態判定部１３４は、算出したバッファサイズの増加分を基礎値変更部１３５に出力する。
【０１６１】
次いで、基礎値変更部１３５は、バッファ制御状態判定部１３４からバッファサイズの増加分の値を受け取り、バッファチューニング処理（図１９のＳ４１３）を行う。バッファチューニング処理は後述する。
【０１６２】
一方、バッファ制御状態判定部１３４は、変動係数が「０．２６」以上で「０．３」以下のとき（Ｓ４１１で「０．２６−０．３（バッファ維持）」のとき（図１９））、受信パケットバッファ１１１に対するバッファ増減を行わないことを決定する（図１９のＳ４１５）。変動係数が「０．２６」以上で「０．３」以下のときは、それ以外の場合と比較して、受信パケットバッファ１１１において受信する受信パケット数が「バッファ最大値」と「再生要求閾値」の間に収まるようになっている（例えば図１０（Ｂ）や図１２など）。このような場合は、受信パケットバッファ１１１に対する基礎値や各設定パラメータの値についてはデフォルト値のままにしておくことで、バッファサイズもデフォルト値のままにしておくことができる。バッファ制御状態判定部１３４は、例えば、変動係数が「０．２６」以上で「０．３」以下のとき、バッファサイズを増減しないことを決定し、その旨を基礎値変更部１３５に通知する。そして、処理はバッファチューニング処理（Ｓ４１３）に移行する。
【０１６３】
一方、バッファ制御状態判定部１３４は、変動係数が「０．２６」よりも小さいとき（Ｓ４１１で「＜０．２６（バッファ減）」のとき（図１９））、受信パケットバッファ１１１のバッファサイズを「５０」減少させることを決定する（Ｓ４１４）。例えば、変動係数が「０．２６」より小さいときは、変動係数がそれ以外と比較して、バッファサイズが大きく（例えば図１０（Ａ））、音声データの読み出しに時間がかかり、音声遅延が大きくなる傾向がある。バッファ制御状態判定部１３４は、変動係数が「０．２６」よりも小さいときは、バッファサイズをこれまでよりも小さくして音声遅延の発生を防止するようにしている。
【０１６４】
ただし、バッファ制御状態判定部１３４は、５回連続して（又は「バッファ監視周期」が５周期連続して）、変動係数が「０．２６」より小さいときにバッファサイズを「５０」減少させることができる。例えば、変動係数が「０．２６」より小さくなるとすぐにバッファサイズを減少させるのではなく、しばらく受信する音声データの様子を確認した上で減少させるようにしている。
【０１６５】
なお、バッファ制御状態判定部１３４は、バッファサイズを「５０」減少させることを決定したときは、その旨を基礎値変更部１３５に出力する。
【０１６６】
次いで、基礎値変更部１３５は、バッファチューニング処理（Ｓ４１３）を行う。すなわち、基礎値変更部１３５は、バッファサイズを「５０」減少することを決定した旨の通知を受けたとき（Ｓ４１４）でも、再生待ちフラグカウンタ、又はバッファ補完フラグカウンタが「０」以上のときはバッファサイズを減少させないことを決定する。基礎値変更部１３５は、受信パケットバッファ１１１において音声データ数がバッファサイズを超えたとき、又は補完処理が行われたときは、例えば、バッファサイズを「５０」減少させることをせず、受信する音声データを監視するようにしている。
【０１６７】
また、基礎値変更部１３５は、バッファの増減を行わないことを決定した旨の通知を受けたときでも（Ｓ４１５）、再生待ちフラグカウンタが「１０」以上あればバッファサイズを「１００」増加することを決定する（Ｓ４１３）。この場合、例えば、「バッファ監視期間」内において、受信する音声データが受信パケットバッファ１１１のバッファサイズを超えた回数が「１０」回以上あった場合である。このような場合、基礎値変更部１３５は、例えば、バッファサイズを増加させてバッファオーバーフローなどを防止して、音声を鮮明にする、すなわち音声品質の劣化を防止するようにしている。増加させるサイズである「１００」は一例であり、それ以外の値でもよい。  
【０１６８】
次いで、基礎値変更部１３５は、バッファサイズの変更をすることを決定したか否かを判定する（Ｓ４１７）。基礎値変更部１３５は、例えば、Ｓ４１２，Ｓ４１４，及びＳ４１５だけでなく、バッファチューニング処理（Ｓ４１４）を含めて判定することができる。
【０１６９】
基礎値変更部１３５は、バッファサイズを変更することを決定したとき（Ｓ４１７で「変更あり」）、バッファ設定パラメータを算出する（Ｓ４１８）。バッファ設定パラメータは、例えば、上述した「バッファ最大値」から「バッファ監視周期」（例えば図７（Ｂ））までの５つの設定パラメータのことである。
【０１７０】
例えば、５つのパラメータには予めデフォルト値が夫々設定されおり、例えば、バッファ制御部１１７や基礎値変更部１３５において保持されている。基礎値変更部１３５は、決定したバッファサイズの増減値に応じたパラメータの増減値を算出し、デフォルト値に対してパラメータの増減値を加算又は減算するなどして、バッファ設定パラメータを算出できる。
【０１７１】
受信パケットバッファ１１１に対する基礎値については、基礎値変更部１３５は、例えば算出したバッファ設定パラメータに基づいて基礎値を算出することができる。例えば、算出したバッファ設定パラメータのうち「バッファ最大値」と「再生要求最小値」とに基づいて基礎値を算出することもできる。
【０１７２】
なお、基礎値変更部１３５は、５つのパラメータすべてについてパラメータを算出するのではなく、任意のパラメータについて設定することもできる。例えば、「バッファ監視周期」はバッファサイズと関係がないため、「バッファ監視周期」はデフォルト値を用いてパラメータを算出しないようにすることができる。
【０１７３】
次いで、基礎値変更部１３５は、算出したバッファ設定パラメータをバッファ制御部１１７に出力し、バッファ制御部１１７はバッファ設定パラメータを設定する（Ｓ４１９）。本第２の実施の形態では、基礎値変更部１３５は算出した基礎値をバッファ制御部１１７に出力し、バッファ制御部１１７は、デフォルト値となっていた基礎値を、基礎値変更部１３５から受け取った基礎値に変更する。
【０１７４】
基礎値やバッファ設定パラメータが変更後された後、例えば、以下のように動作する。すなわち、バッファ制御部１１７は、受信パケットバッファ１１１から読み出した音声データを、設定されたバッファ設定パラメータや算出された基礎値に対応するように、所定回数繰り返し音声デバイス１４０に出力する。これにより、例えば、バッファサイズをこれまでよりも増加させ、基礎値も増加させることができる。また、バッファ制御部１１７は、設定されたバッファ設定パラメータや算出された基礎値に対応するように、所定個数の音声データを読み出して破棄することで、バッファサイズをこれまでよりも減少させ、基礎値も減少させることができる。
【０１７５】
そして、音声品質自動調整処理が終了する（Ｓ４０６）。
【０１７６】
一方、基礎値変更部１３５は、バッファサイズを変更しないことを決定したとき（Ｓ４１７で「変更なし」）、バッファ制御部１１７に対して変更しない旨を通知することもできるし、とくに何も通知しないようにすることもできる。いずれの場合も、バッファ制御部１１７は受信パケットバッファ１１１に対する基礎値はデフォルト値となっているため、これを変更することなく以後の処理を行うことができる。そして、音声品質自動調整処理が終了する（Ｓ４０６）。
【０１７７】
音声品質自動調整処理が終了すると、図１７に戻り、音声補完処理を含む処理が終了する（Ｓ５０）。
【０１７８】
＜測定結果＞
次に、本受信端末１００におけるＰＥＳＱ値の測定結果について説明する。図２０は測定結果のグラフ例、図２１は主観的な評価結果の例をそれぞれ表わしている。
【０１７９】
図２０において横軸は「揺らぎパターン」、縦軸は各「揺らぎパターン」におけるＰＥＳＱ値と遅延時間とを表わしている。また、棒グラフはＰＥＳＱ値、折れ線グラフは遅延時間の測定結果を夫々表わしている。なお、「既存方式」は、例えば、受信端末１００において音声品質処理部１３０がない場合、「採用方式」は受信端末１００において音声品質処理部１３０がある場合における測定結果を表わしている。
【０１８０】
図２０に図示されるように、ＰＥＳＱ値については「採用方式」の場合、「ゆらぎなし」から「平均７００ｍｓ，偏差３５０」に至るまでほぼ変化のない推移を示している。一方、「既存方式」では、「ゆらぎなし」から「平均７００ｍｓ，偏差３５０」に至るまでにおいて除々にＰＥＳＱ値が小さくなるように推移している。
【０１８１】
図２２は、「揺らぎパターン」において「既存方式」と「採用方式」とで音声の鮮明さなどの主観的な評価結果を表わしている。「採用方式」では、すべての「揺らぎパターン」に対して会話の成立に支障がなく、音声が鮮明に聞こえる結果を得た。一方、「既存方式」では、「平均３００ｍｓ，偏差１５０」の「揺らぎパターン」において音声が鮮明でなくなり、「平均４００ｍｓ，偏差２００」の「揺らぎパターン」では会話の成立が難しい状況となった。
【０１８２】
以上から、本第２の実施の形態における音声品質自動調整処理による受信パケットバッファ１１１に対する初期値の設定については、すべての「揺らぎパターン」について音声が鮮明となり、音声品質が確保されている測定結果を得た。
【０１８３】
なお、「遅延時間」については、「既存方式」と「採用方式」ではどの「揺らぎパターン」でもほぼ同じ遅延時間となる結果を得た。このことから、音声遅延に関しては、本第２の実施の形態における音声品質自動調整処理による場合と「既存方式」とはほとんど変わらない結果を得ており、音声遅延の観点から音声品質は確保されているということができる。
【０１８４】
［その他の実施の形態］
次にその他の実施の形態について説明する。
【０１８５】
図２２は受信端末１００におけるハードウェアの構成例を表わす図である。受信端末１００は、アンテナ１５０、ＲＦ（Radio Frequency）部１５１、ＤＳＰ（Digital Signal Processor）１５２、メモリ１５３、ＣＰＵ（Central Processing Unit）１５４、ＲＯＭ（Read Only Memory）１５５、ＲＡＭ（Random Access Memory）１５６、及びスピーカ１５７を備える。
【０１８６】
アンテナ１５０とＲＦ部１５１は、例えば、第２の実施の形態におけるＵＤＰ受信部１０１に対応する。また、ＤＳＰ１５２は、例えば、第２の実施の形態におけるＲＴＰデカプセリング部１０２と、音声パケット抽出部１０３、及びデコード処理部１０４に対応する。さらに、メモリ１５３は、例えば、第２の実施の形態における受信パケットバッファ１１１に対応する。さらに、ＣＰＵ１５４とＲＯＭ１５５、及びＲＡＭ１５６は、例えば、第２の実施の形態における、受信パケットバッファ１１１を除く可変バッファ制御部１１０、音声品質処理部１３０に対応する。さらに、スピーカ１５７は、例えば、第２の実施の形態における音声デバイス１４０に対応する。図２２に図示された受信端末１００においても、第２の実施の形態における受信端末１００と同様に実施することができる。
【０１８７】
図２３は受信端末１００における可変バッファ制御部１１０の他の構成例を表わす図である。図２３に図示される可変バッファ制御部１１０は、第２の実施の形態における可変バッファ制御部１１０と比較して、パラメータ情報監視部１１３−１〜１１３−ｎとバッファ調整値決定部１１５がない場合の構成例を表わしている。この場合、第２の実施の形態と比較して、基礎値変更部１３５において、デフォルトの基礎値に対して変更後の基礎値をバッファ制御部１１７に与えるだけでなく、算出したすべての設定パラメータをバッファ制御部１１７に与えることができる。音声品質処理部１３０は、再生データ監視部１３１により音声デバイス１４０に出力される音声データを監視することができるため、例えば、変更後（変更しない場合も含む）の基礎値を与えた以後においても、基礎値や設定パラメータをバッファ制御部１１７に与えることが可能となる。
【０１８８】
また、第２の実施の形態や上述したその他の実施の形態では、送信端末２００と受信端末１００は無線通信により音声データを送信するものとして説明した。例えば、無線通信に代えて有線通信による場合でも第２の実施の形態などと同様に実施することができる。
【０１８９】
以上まとめると付記のようになる。
【０１９０】
（付記１）
受信した音声データを記憶する受信バッファと、
前記受信バッファに記憶された前記音声データのデータ量を制御するバッファ制御部と、
前記バッファ制御部により前記受信バッファから読み出された前記音声データが入力されて、入力された前記音声データに対応する音声を出力する音声デバイスと、
前記バッファ制御部により前記受信バッファから読み出されて前記音声デバイスに出力される前記音声データのデータ量に対する変化の度合を表す変動係数に応じて、前記受信バッファに記憶される前記音声データのデータ量を制御することを特徴とする受信端末装置。
【０１９１】
（付記２）
さらに、前記変動係数に応じて基礎値を算出し、算出した前記基礎値を前記バッファ制御部に出力する音声品質調整処理部を備え、
前記バッファ制御部は前記基礎値に基づいて前記受信バッファに記憶される前記音声データのデータ量を制御することを特徴とする付記１記載の受信端末装置。
【０１９２】
（付記３）
前記音声品質調整処理部は、前記変動係数が第１の閾値以上のとき前記基礎値を第１の基礎値から前記第１の基礎値よりも値が高い第２の基礎値に変更し、前記変動係数が第２の閾値以下のとき前記基礎値を前記第１の基礎値から前記第１の基礎値よりも値が低い第３の基礎値に変更し、前記変動係数が前記第１の閾値より高く前記第２の閾値未満のときは前記基礎値を前記第１の基礎値とすることを特徴とする付記２記載の受信端末装置。
【０１９３】
（付記４）
前記第１の基礎値は前記バッファ制御部において前記データ量を制御するときのデフォルト値であることを特徴とする付記３記載の受信端末装置。
【０１９４】
（付記５）
前記音声品質調整処理部は、前記バッファ制御部により前記受信バッファから読み出されて前記音声デバイスに出力される前記音声データのデータ量の監視区間における標準偏差を前記監視区間における当該データ量の平均値で除算した値を変動係数として算出することを特徴とする付記２記載の受信端末装置。
【０１９５】
（付記６）
前記音声品質調整処理部は、前記基礎値を前記第３の基礎値に変更することを決定したときにおいて、前記受信パケットに記憶される前記音声データのデータ量が前記最大記憶容量を超えたとき、又は前記受信パケットに記憶される前記音声データのデータ量が前記最大記憶容量のうち最低記憶容量を表わす再生要求閾値以下のとき、前記基礎値を前記第１の基礎値とすることを特徴とする付記３記載の受信端末装置。
【０１９６】
（付記７）
前記音声品質調整処理部は、前記基礎値を前記第１の基礎値にすることを決定したときにおいて、前記受信パケットに記憶される前記音声データのデータ量が前記最大記憶容量を超えた回数が閾値回数を超えたとき、前記基礎値を前記第１の基礎値よりも値が高い第４の基礎値とすることを特徴とする付記３記載の受信端末装置。
【０１９７】
（付記８）
更に、前記受信バッファに記憶された前記音声データから得られる１つ以上のパラメータ情報に基づき、前記受信バッファに記憶される前記受信データのデータ量を決定するための第１及び第２のバッファ調整値をそれぞれ決定する第１及び第２のパラメータ情報監視部と、
前記第１及び第２のバッファ調整値から受信バッファ調整値を決定するバッファ調整値決定部とを備え、
前記バッファ制御部は、前記バッファ調整値決定部から出力された前記受信バッファ調整値に基づいて前記音声品質調整処理部から出力された前記基礎値を更新し、更新後の基礎値に基づいて前記受信バッファに対するデータ量を制御することを特徴とする付記２記載の受信端末装置。
【０１９８】
（付記９）
前記バッファ制御部は、前記受信バッファに記憶されるデータ量が前記受信バッファの最大記憶容量範囲内のときにおいて前記受信バッファから読み出して前記音声デバイスに出力する前記音声データが無音のとき、当該音声データを破棄することを特徴とする付記１または付記２記載の受信端末装置。
【０１９９】
（付記１０）
前記バッファ制御部は、前記受信バッファに記憶されるデータ量が前記受信バッファの最大記憶容量のうち最低記憶容量以下となっているとき、前記受信バッファから読み出して前記音声デバイスに出力する前記音声データを繰り返し前記音声デバイスに出力することを特徴とする付記１または付記２記載の受信端末装置。
【０２００】
（付記１１）
受信端末装置におけるバッファ制御方法において、
受信した音声データが受信バッファに記憶され、
前記受信バッファからバッファ制御部により読み出されて音声デバイスに出力される前記音声データのデータ量に対する変化の度合を表す変動係数に応じて、前記受信バッファに記憶される前記音声データのデータ量を制御する
ことを特徴とするバッファ制御方法。    
【符号の説明】
【０２０１】
１０：通信システム                    １００：受信端末装置（受信端末）
１０１：ＵＤＰ受信部                  １０２：ＲＴＰデカプセリング部
１０３：音声パケット抽出部            １０４：デコード処理部
１１０：可変バッファ制御部            １１１：受信パケットバッファ
１１３−１，…，１１３−ｎ：パラメータ情報監視部（ジッタ監視部，クロックずれ監視部）
１１５：バッファ調整値決定部          １３０：音声品質自動調整処理部（音声品質処理部）
１３１：再生データ監視部              １３２：データ数記憶部
１３３：変動係数算出部                １３４：バッファ制御状態判定部
１３５：基礎値変更部                  １４０：音声デバイス
２００：送信端末装置（送信端末）      ３００：音声送信装置
４００：ネットワークシミュレータ      ５００：音声受信装置
６００：ＶＱＴ
【図１】
0005747760.tif 000003
【図２】
0005747760.tif 000004
【図３】
0005747760.tif 000005
【図４】
0005747760.tif 000006
【図５】
0005747760.tif 000007
【図６】
0005747760.tif 000008
【図７】
0005747760.tif 000009
【図８】
0005747760.tif 000010
【図９】
0005747760.tif 000011
【図１０】
0005747760.tif 000012
【図１１】
0005747760.tif 000013
【図１２】
0005747760.tif 000014
【図１３】
0005747760.tif 000015
【図１４】
0005747760.tif 000016
【図１５】
0005747760.tif 000017
【図１６】
0005747760.tif 000018
【図１７】
0005747760.tif 000019
【図１８】
0005747760.tif 000020
【図１９】
0005747760.tif 000021
【図２０】
0005747760.tif 000022
【図２１】
0005747760.tif 000023
【図２２】
0005747760.tif 000024
【図２３】
0005747760.tif 000025