(57)【要約】【課題】伝送したパケットが無駄に廃棄されてしまうことがなく、サーバにスパイク状の負荷をかけず、また、アンダフローによって再生すべきパケットが到着していない時間が長くなるのを防止する音声伝送装置を提供する。【解決手段】受信部に設けたパケットの伝送遅延を吸収する揺らぎ吸収バッファ部と、送信部に設けた送信が一時的に行えない場合に送信すべきパケットを待ち行列に繋ぐ送信待ち制御部を備える音声伝送装置において、送信待ち制御部１５は、待ち行列１９に繋がれているパケットの音声データの蓄積時間を算出する蓄積時間算出部１８を備え、送信待ち制御部１５は、蓄積時間算出部１８が算出した蓄積時間が閾値以下になるように、最も古く繋がれたパケットを待ち行列１９から取り出し廃棄して、新しいパケットを待ち行列１９に繋ぎ続け、閾値を揺らぎ吸収バッファ部２１の蓄積時間に等しくする。【選択図】図１
2008085798.tif 000002
【特許請求の範囲】
【請求項１】
音声データを格納したパケットをパケット交換網へ送信する送信手段と、
前記パケット交換網から前記パケットを受信する受信手段と、
前記受信手段に設けられた、前記パケットの伝送遅延を吸収する揺らぎ吸収バッファ手段と、
前記送信手段に設けられた、送信が一時的に行えない場合に送信すべき前記パケットを待ち行列に繋ぐ送信待ち制御手段と
を備える音声伝送装置において、
前記送信待ち制御手段は、前記待ち行列に繋がれている前記パケットの音声データの蓄積時間を算出する蓄積時間算出手段を備え、
前記送信待ち制御手段は、前記蓄積時間算出手段が算出した蓄積時間が閾値以下になるように、最も古く繋がれたパケットを前記待ち行列から取り出して廃棄することにより、新しいパケットを前記待ち行列に繋ぎ続け、
前記閾値を前記揺らぎ吸収バッファ手段の蓄積時間に等しくすることを特徴とする音声伝送装置。
【請求項２】
前記受信手段は、前記揺らぎ吸収バッファ手段の前記蓄積時間を前記送信待ち制御手段へ通知し、
前記送信待ち制御手段は、通知された前記蓄積時間によって前記閾値を更新することを特徴とする請求項１に記載の音声伝送装置。
【請求項３】
前記送信待ち制御手段は、前記待ち行列に繋がれている前記パケットを廃棄するかどうか判定する廃棄判定手段を備え、該廃棄判定手段の判定に従って廃棄を行い、
前記廃棄判定手段は、前記待ち行列の最大の長さをＬとし、ｋ個のパケットの送信に対して１個の割合でパケットの廃棄を行うとした場合に、前記個数ｋを１≦ｋ≦Ｌの範囲で変化させ、前記蓄積時間算出手段が算出した蓄積時間が大きいほど前記個数ｋを小さくし、蓄積時間が小さいほど前記個数ｋを大きくするように判定することを特徴とする請求項１または２に記載の音声伝送装置。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、音声を符号化して通信する音声伝送装置に関し、特に、無線ＬＡＮ（Ｌｏｃａｌ  Ａｒｅａ  Ｎｅｔｗｏｒｋ）や携帯電話網等、一時的に途切れることのある通信路を経由する場合に、中断時間を短くするように改善した音声伝送装置に関する。
【背景技術】
【０００２】
従来、パケット交換網を通じて符号化した音声を伝送する装置や方法が知られており、例えば、「パケット交換方式」（特許文献１参照）や「パケット通信方法」（特許文献２参照）がある。
パケット交換網用の通信装置としては、ＡＴＭ（Ａｓｙｎｃｈｒｏｎｏｕｓ  Ｔｒａｎｓｆｅｒ  Ｍｏｄｅ）やＩＥＥＥ８０２．３等があるが、近年では、ケーブルテレビやＡＤＳＬ（Ａｓｓｙｍｅｔｒｉｃ  Ｄｉｇｉｔａｌ  Ｓｕｂｓｃｒｉｂｅｒ  Ｌｉｎｅ）や光ファイバー等による高速インターネット接続が家庭に普及したことにより、ＩＰ（Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ）上で音声データを送受信して通話を可能とするＶｏＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  ＩＰ）装置が実用化され、ＩＰ電話とも呼ばれている。
【０００３】
このような音声伝送装置の受信側では、パケット交換網で発生する伝送遅延の揺らぎを吸収するため、揺らぎ吸収バッファを備えている。
図１３は、従来のパケット交換方式を説明するブロック図である。図１３に示すように、従来のパケット交換方式においては、受信側に遅延差吸収用バッファを設け、送信側は同一通話に属するパケットにシーケンス番号を付加して送信し、受信側では受信パケットのシーケンス番号を監視しつつ受信パケットを遅延差吸収用バッファに格納し、また、当該通話に属する最初のパケットを受信した時点から定められた時間だけ経過した時点において、受信パケットの遅延差吸収用バッファから一定速度での読み出しを開始する。
【０００４】
受信側では、受信パケットのシーケンス番号が抜けた場合には、抜けた個数だけ余分なパケットを前記遅延差吸収用バッファに格納する。更に、バッファがアンダフローしたら余分なパケットを挿入再生し、且つ、挿入後アンダフロー時に再生すべきであったシーケンス番号を有するパケットを受信したときには、それを廃棄する。更に、遅延差吸収用バッファがオーバフローした場合には、オーバフローしたパケットを廃棄する。
これによって再生タイミングを変更することなく、一定のタイミングでバッファから読み出して再生することが可能になる。余分なパケットはダミー・パケットとも呼ばれ、無音や背景雑音或いは一つ前に届いたパケットを繰り返したパケットである。但し、パケットの到着が早過ぎて遅延差吸収バッファがオーバフローした場合は、オーバフローしたパケットを廃棄して、再生タイミングを変更する。パケット廃棄等によりシーケンス番号が抜けていた場合には、余分なパケットをバッファに格納する。
【０００５】
図１３において、受信回線１からパケットを受信すると、シーケンス番号チェック回路２は、受信パケットのシーケンス番号をチェックし、シーケンス番号が飛んだ場合には、その個数だけダミーパケット発生回路３に通知して、音声の場合なら、無音パケット或いは背景雑音パケット等のダミーパケットを遅延差吸収バッファメモリ４に書き込ませる。
また、シーケンス番号チェック回路２は、遅延差吸収バッファメモリ４が一杯で受信パケットを格納できないときには、そのパケットを廃棄する。更に、シーケンス番号チェック回路２は、呼設定が行われた後に最初に到着するパケットを検出し、タイマ５に通知して、確率的に十分な長さの時間Ｄの後に、遅延差吸収バッファメモリ４からのパケットの連続的再生をスタートさせる。
【０００６】
一方、遅延差吸収バッファメモリ４が空になり、アンダフローとなったときには、ダミーパケット発生回路３からのダミーパケットを再生して、アンダフローした旨をシーケンス番号チェック回路２に通知する。シーケンス番号チェック回路２は、その後、当該パケットを受信した場合には、そのパケットを直ちに廃棄する。時間Ｄの値、呼設定情報等は、制御回路６から各回路に通知される。
現在、無線ＬＡＮや携帯電話網の普及により、このような無線通信路上でＶｏＩＰを実現することが要望されつつある。無線通信路は一時的に通信品質が悪化して、比較的長い時間通信が途絶えることがある。このときの挙動は、無線通信路の無線通信プロトコルによるが、これについては、例えば、本発明人による、「データ通信装置」（特開２００６−１０１３３９号公報参照）や「データ通信装置」（特開２００６−１０１３４０号公報参照）において、説明されている。
【０００７】
即ち、比較的長い時間、通信が途絶えた後に、送信を待っていたパケットが大量に送信されると、場合によってはその下流で輻輳を起こしたり受信側での処理能力を圧迫したりする。この現象をディレイスパイクと呼ぶ。
また、従来、音声パケットを伝送する需要の増大に対応して、サービスクラスに応じた制御を行うＱｏＳ（ＱｕａＬｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）制御を備えた無線通信装置も現れている。この装置の場合、音声パケットに対しては遅延を少なくし、誤りや廃棄を許容するので、ディレイスパイクを生じさせないようにすることもできる。
【特許文献１】特開平０１−０２９１４１号公報
【特許文献２】特開平０４−１００４５４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
このディレイスパイクを生じるような無線通信路で音声パケットを伝送すると、受信端末装置の揺らぎ吸収バッファがアンダフローした後に大量のパケットが到着するが、これらのうち再生時刻を過ぎているパケットは廃棄され、再生時刻に間に合ったパケットは再生される。
図１４は、従来技術において各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。図において、横軸は時間であり、音声フレーム及び音声フレームを格納したパケットが上から下へ伝達される様子を矢印で示してある。１本の矢印が１個の音声フレーム又はパケットを表しており、図を分かり易くするために４個毎にハッチングを施してある。但し、このハッチングは便宜上のものでありデータタイプや機能の違いを示すものではない。
【０００９】
図１４に示すように、伝達に関わる部品や装置は、マイク、エンコーダ、無線送信部、第１基地局、サーバ、第２基地局、無線受信部＋揺らぎ吸収バッファ部、デコーダ、及びスピーカである。これらの部品や装置は、音声フレーム又はパケットを受け取った後、ある遅延時間が経過してから出力する。この遅延時間は、各部品又は装置の動作に依るのであるが、エンコーダ、無線送信部、第１基地局、第２基地局、デコーダにおいては、１フレーム又はパケット分の遅延を生じている。更に、サーバでは、２．５パケット分の遅延が生じている。揺らぎ吸収バッファ部では、初期化時にＪ個のパケットを蓄積する。但し、Ｊ＝７である。１個のパケットに１個の音声フレームを格納しているので、所定蓄積時間Ｔｊは音声フレームの周期のＪ倍である。
【００１０】
図１４では、先ず、音声伝送が定常状態になっている所から始まる。定常状態では、揺らぎ吸収バッファ部において、所定蓄積時間Ｔｊ分に対応するJ個のパケットが蓄積されている。この状態で設定した標準的な遅延を受けて、４個のパケットが揺らぎ吸収バッファ部へ到着する様子が示されている。揺らぎ吸収バッファ部でＴｊの遅延を受けた後、４個の音声フレームが再生されている。
それに引き続いて、無線送信部と第１の基地局の間の無線通信路が悪化し、時間ｄの間は送信ができくなっている。但し、ｄは音声パケット周期の１０倍である。この中断期間中も音声パケットは発生し続けており、無線送信部の前で滞留している。
時間ｄの経過後、無線通信路が回復すると無線送信部はパケットの送信を再開するが、遅延時間ｔ１（ここでは、１音声フレーム周期としている）を必要としており、ｔ１以上経過してから送信が再開する。
【００１１】
送信が再開されると、滞留していたパケットがスパイク状に大量に送信される。このパケットは、下流の通信装置やサーバにスパイク状の負荷をかけるため、更に、遅延を生じたり輻輳を起こす可能性がある。時間ｄは、揺らぎ吸収バッファ部の所定蓄積時間Ｔｊよりも３フレーム分大きかったため、時間ｔｕｆで示す間、つまり、３フレームの間、パケットの到着は再生タイミングに間に合わず、アンダフローが発生する。アンダフローの発生時には、パケットの補間が行われる。アンダフロー中の補間方法としては、前のフレームを外挿補間しつつゲインを段々小さくする方法を用いる。また、再生タイミングに間に合わなかったパケットは廃棄される。時間ｔｕｆの後、到着したパケットは、再生タイミングに間に合うので再生され始める。更に、大量に到着するパケットによって、揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊ分のパケットは、通信路が十分に広い帯域を持つ理想的な場合では速やかに回復される。
【００１２】
但し、通信路は、一度に大量のパケットを伝送するだけの帯域を持たない場合がある。このため、パケットは更に遅延させられ、受信端末装置に到着するパケットのうち再生時刻に間に合わないものの割合が多くなる。この結果、帯域を圧迫して伝送しても再生時刻に間に合わずに無駄に廃棄されてしまうという問題がある。
また、通信路中には介在しているサーバがあり、仕様上の収容回線数を保証しなければならないため、スパイク状の負荷をサーバにかけることは危険であるという問題がある。
次に、ＱｏＳ制御を備えて遅延した音声パケットを早期に廃棄する無線通信路の場合を説明する。
【００１３】
図１５は、従来技術においてＱｏＳ制御を備えて遅延した音声パケットを早期に廃棄する無線通信路の様子を示す、図１４と同様の説明図である。図１５に示すように、この場合、無線送信部は無線通信路が途切れた時間ｄの間、送信できないパケットを直ちに廃棄する。会話を目的とする音声伝送の際は、遅延は大きな品質評価値の下落を引き起こすことが知られており、遅延したパケットを廃棄することは重要な手段である。
時間ｄの経過後、無線通信路が回復すると、無線送信部は送信を再開するが、遅延時間ｔ１（ここでは、１音声フレーム周期としている）を必要としており、ｔ１以上経過してから送信が再開する。
【００１４】
パケットが到着し始めたとき、揺らぎ吸収バッファはアンダフローを生じ、空になっている。揺らぎ吸収バッファ部は、到着したパケットの再生タイミングを管理しているので、到着しても直ぐには再生せずに、所定蓄積時間Ｔｊの遅延を加味したタイミングで再生が開始される。これによって、揺らぎ吸収バッファの蓄積量が回復するが、アンダフローによって再生すべきパケットが到着していない時間が長くなるという問題がある。この間、最初は補間が行われるが、やがて音声信号のゲインが下げられ、替わりに快適に感じられる雑音を出力するだけである。
本発明の目的は、伝送したパケットが無駄に廃棄されてしまうことがなく、サーバにスパイク状の負荷をかけず、また、アンダフローによって再生すべきパケットが到着していない時間が長くなるのを防止する音声伝送装置を提供することである。
【課題を解決するための手段】
【００１５】
上記目的を達成するため、本発明に係る音声伝送装置は、音声データを格納したパケットをパケット交換網へ送信する送信手段と、前記パケット交換網から前記パケットを受信する受信手段と、前記受信手段に設けられた、前記パケットの伝送遅延を吸収する揺らぎ吸収バッファ手段と、前記送信手段に設けられた、送信が一時的に行えない場合に送信すべき前記パケットを待ち行列に繋ぐ送信待ち制御手段とを備える音声伝送装置において、前記送信待ち制御手段は、前記待ち行列に繋がれている前記パケットの音声データの蓄積時間を算出する蓄積時間算出手段を備え、前記送信待ち制御手段は、前記蓄積時間算出手段が算出した蓄積時間が閾値以下になるように、最も古く繋がれたパケットを前記待ち行列から取り出して廃棄することにより、新しいパケットを前記待ち行列に繋ぎ続け、前記閾値を前記揺らぎ吸収バッファ手段の蓄積時間に等しくすることを特徴としている。
【００１６】
また、本発明は、前記受信手段が、前記揺らぎ吸収バッファ手段の前記蓄積時間を前記送信待ち制御手段へ通知し、前記送信待ち制御手段は、通知された前記蓄積時間によって前記閾値を更新することが好ましい。
また、本発明は、前記送信待ち制御手段が、前記待ち行列に繋がれている前記パケットを廃棄するかどうか判定する廃棄判定手段を備え、該廃棄判定手段の判定に従って廃棄を行い、前記廃棄判定手段は、前記待ち行列の最大の長さをＬとし、ｋ個のパケットの送信に対して１個の割合でパケットの廃棄を行うとした場合に、前記個数ｋを１≦ｋ≦Ｌの範囲で変化させ、前記蓄積時間算出手段が算出した蓄積時間が大きいほど前記個数ｋを小さくし、蓄積時間が小さいほど前記個数ｋを大きくするように判定することが好ましい。
【発明の効果】
【００１７】
本発明によれば、伝送したパケットが無駄に廃棄されてしまうことがなく、サーバにスパイク状の負荷をかけず、また、アンダフローによって再生すべきパケットが到着していない時間が長くなるのを防止する。
【発明を実施するための最良の形態】
【００１８】
以下、本発明を実施するための最良の形態について図面を参照して説明する。
（第１実施の形態）
図１は、本発明の第１実施の形態に係る音声伝送装置の送信部と受信部を示し、（ａ）は送信部のブロック図、（ｂ）は受信部のブロック図である。図１に示すように、送信部（送信手段）１０と受信部（受信手段）１１は、音声伝送装置を構成し、一体の端末装置に組み込まれて、無線データ通信を実現する基地局と通信する。送信部１０は、マイク１２、エンコーダ１３、パケット化部１４、送信待ち制御部（送信待ち制御手段）１５、メモリ１６、及び無線送信部１７を有しており、送信待ち制御部１５は、蓄積時間算出部（蓄積時間算出手段）１８と待ち行列１９を有している。受信部１１は、無線受信部２０、揺らぎ吸収バッファ部（揺らぎ吸収バッファ手段）２１、逆パケット化部２２、デコーダ２３、及びスピーカ２４を有している。
【００１９】
図２は、図１の音声伝送装置を用いたパケット交換網による通信システムを説明するブロック図である。図２において、図１の送信部１０と受信部１１からなる音声伝送装置は、第１端末装置２５と第２端末装置２６として示されている。第１端末装置２５は、第１基地局２７との間で無線通信を行い、第２端末装置２６は第２基地局２８と無線通信を行う。第１基地局２７と第２基地局２８は、有線の通信路によってサービスを提供している事業者専用のＩＰ網２９へと接続する。
第１端末装置２５と第１基地局２７の間では、無線レイヤプロトコルを実行することにより通信を実現している。第１端末装置２５は、第１基地局２７と無線通信路を確立した後、ＩＰ網２９を経由したパケット通信を行う。第２端末装置２６と第２基地局２８の間も同様である。
【００２０】
ＩＰ網２９には、更に、サーバ３０が接続されており、通信されるＩＰパケットは、一度サーバ３０に集められ、事業者固有の処理やサービスを実施した後、相手端末装置へ送られる。
図１に示す、音声伝送装置を構成する送信部１０と受信部１１について説明する。ここで、第１端末装置２５と第１基地局２７の間、及び第２端末装置２６と第２基地局２８の間で、無線通信路が確立されているものとし、更に、送信部１０は、第１端末装置２５内にあり、受信部１１は第２端末装置２６内にあり、音声を伝送するものとする。
【００２１】
先ず、音声伝送を開始するための初期化段階において、蓄積時間算出部１８が記憶している蓄積時間Ｔｔを０に初期化し、また、待ち行列１９を空に、また、送信待ち制御部１５の所定の閾値Ｔｗと揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊを、共に所定の初期値で初期化しておく。本実施の形態では、この初期値は音声フレームの７個分の１４０ｍｓである。但し、１個の音声フレームは２０ｍｓである。
送信部１０において、音声は、マイク１２によって電気信号に変換され、エンコーダ１３へ入力される。エンコーダ１３は、電気信号をＡ／Ｄ変換し、公知の符号化方式であるＧＳＭ（Ｇｌｏｂａｌ  Ｓｙｓｔｅｍ  ｆｏｒ  Ｍｏｂｉｌｅ  ｃｏｍｍｕｎｉｃａｔｉｏｎ）−ＡＭＲ（Ａｄａｐｔｉｖｅ  Ｍｕｌｔｉ−Ｒａｔｅ）で音声を符号化する。この場合、音声は８ｋＨｚでサンプルされて２０ｍｓのフレーム毎に符号化され、符号化速度は１２．２ｋｂｐｓである。
【００２２】
パケット化部１４は、２０ｍｓ分の音声フレームの１個から数個を、第２端末装置２６に宛てたパケットに格納する。パケット化の際に使用するプロトコルは、ＲＴＰ（Ｒｅａｌ−ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）／ＵＤＰ（Ｕｓｅｒ  Ｄａｔａｇｒａｍ  Ｐｒｏｔｏｃｏｌ）／ＩＰである。１個のパケットに格納する音声フレームの数が少ないほど遅延が短くなり、品質評価上好ましいが、総データ中に占めるプロトコルが使用するヘッダの割合が増えるために多くのスループットを必要とする、という短所がある。本実施の形態では、ネットワークは十分に広帯域であるため、１個のパケットに１個の音声フレームを格納する。
パケット化部１４は、作成したパケットをメモリ１６に記憶させ、更に、メモリ１６上のアドレスを送信待ち制御部１５へ通知する。送信待ち制御部１５は、待ち行列１９が空かどうか判定し、空であれば、無線送信部１７が送信可能状態にあるかどうかを判定する。
【００２３】
無線送信部１７は、既に第１基地局２７と無線データ通信を開始しているので、通常なら送信可能な状態であるはずであるが、一時的に無線通信路の品質が悪化し送信が不可能な状態になることがある。無線送信部１７は、この状態を表すレジスタを持っており、送信待ち制御部１５は、このレジスタを読み出して送信可能状態かどうかを判定する。送信可能状態ならば、送信待ち制御部１５は、通知されたアドレスを無線送信部１７へ通知する。無線送信部１７は、通知されたアドレスで識別されるメモリ１６内のパケットを、無線通信路を通じて第１基地局２７へ送信する。送信が完了すると、無線送信部１７はメモリ１６上のパケットを解放する。
【００２４】
その他の場合、つまり、待ち行列１９が空でない場合、又は無線送信部１７が送信可能状態でない場合、送信待ち制御部１５は、通知されたアドレスを蓄積時間算出部１８へ通知する。蓄積時間算出部１８は、通知されたアドレスで識別されるパケットに含まれる音声データの再生時間Ｔｐを求める。１個のパケットに必ず１個の音声フレームを格納する場合には、再生時間Ｔｐは２０ｍｓとなる。但し、１個のパケットに格納する音声フレームの数が変動するような構成も可能であり、その場合、蓄積時間算出部１８は、通知されたアドレスで識別されるパケットを調べて再生時間Ｔｐを求める。
【００２５】
蓄積時間算出部１８は、記憶している現在の蓄積時間がＴｔであり、通知されたパケットの再生時間がＴｐであるとすると、両者の和が閾値Ｔｗ以下であるか否かを判定する。
Ｔｔ＋  Ｔｐ  ≦  Ｔｗ………（１）
両者の和が閾値Ｔｗ以下の場合、蓄積時間算出部１８は、その和（Ｔｔ＋Ｔｐ）でＴｔの値を更新し、送信待ち制御部１５に対して、式（１）の不等式が満たされていることを通知する。この通知によって、送信待ち制御部１５は、通知されたアドレスを待ち行列１９に繋ぐ。
両者の和が閾値Ｔｗを越える場合、蓄積時間算出部１８は、送信待ち制御部１５に対して、式（１）の不等式が満たされないことを通知する。この通知によって、送信待ち制御部１５は、待ち行列１９の中の順序が最も古いパケットのアドレスを取り出し、蓄積時間算出部１８に対して、そのパケットが待ち行列１９から削除されることを通知する。
【００２６】
蓄積時間算出部１８は、通知されたアドレスで識別されるパケットに含まれる音声データの再生時間Ｔｐを求め、現在の蓄積時間Ｔｔから減算する。つまり、（Ｔｔ−Ｔｐ）を求めて、これを新しいＴｔの値として記憶する。次に、送信待ち制御部１５は、待ち行列１９から該当のパケットのアドレスを取り除き、更に、対応するメモリ１６内のパケットデータを解放する。その後、送信待ち制御部１５は、新しいパケットを格納するべく通知されたアドレスを蓄積時間算出部１８へ通知する処理へ戻る。
この動作によって、待ち行列１９に格納されて送信待ちをするパケットに含まれる音声の再生時間の合計が、閾値Ｔｗ以下となり、且つ、最新のパケットが待ち行列１９に繋がれていることになる。本発明では、この所定の閾値Ｔｗを、揺らぎ吸収バッファ部２１の所定蓄積時間に等しくすることに特徴がある。
【００２７】
無線送信部１７が、送信不可能状態から送信可能状態に変化すると、送信待ち制御部１５は、待ち行列１９の中に繋がれているパケットが有るか否かを判定する。パケットが有る場合、その中で順序が最も古いパケットを選択し、蓄積時間算出部１８に対して、そのパケットが待ち行列１９から削除されることを通知する。
蓄積時間算出部１８は、通知されたパケットの再生時間Ｔｐを求めて、蓄積時間Ｔｔから減算する。その後、送信待ち制御部１５は、待ち行列１９から該当パケットのアドレスを削除し、そのアドレスを無線送信部１７へ通知する。無線送信部１７は、通知されたアドレスで識別されるメモリ１６内のパケットを、無線通信路を通じて第１基地局２７へ送信する。送信が完了すると、無線送信部１７は、メモリ１６上の該当パケットを解放する。
【００２８】
この動作の最中であっても、新しい音声パケットを発生させ送信待ち制御部１５へ入力することが可能である。このパケットは、上述の動作に従って待ち行列１９に繋がれる。待ち行列１９に新しいパケットの繋がれる速度よりも、古いパケットが取り出される速度の方が大きいために、待ち行列１９は、速やかに減少して、やがて空になる。
図２において、第１基地局２７は、送信部１０から受信したパケットの中からＩＰ層以上のパケットデータを取り出し、これをＩＰ網２９へ送信する。但し、ＩＰパケットは、第２端末装置２６に宛てられているが、サービス及び管理上の必要からサーバ３０を経由する必要がある。このため、第１基地局２７からサーバ３０へ宛てたパケットの中に、該ＩＰパケットをカプセル化する。サーバ３０は、受信したパケットを第２の基地局を経由して第２端末装置２６へ届ける。
【００２９】
次に、受信部１１について説明する。受信部１１は、第２端末装置２６に設けられている。無線受信部２０は、第２基地局２８からパケットを受信する。受信したパケットデータに誤りがあった場合は廃棄し、正しければ揺らぎ吸収バッファ部２１へ渡される。
揺らぎ吸収バッファ部２１では、通信の開始時に、所定の蓄積時間Ｔｊ相当の音声フレームを蓄積する。所定の蓄積時間Ｔｊは、通信路の遅延の揺らぎをどの程度まで吸収するか、及び、音声品質評価上どの程度の遅延まで許すか、を勘案して決める。所定蓄積時間Ｔｊ相当のパケット数を変数Ｊで表すことにし、本実施の形態では、Ｊ＝７パケット、即ち、Ｔｊ＝１４０ｍｓとする。所定の蓄積時間Ｔｊ相当の音声フレームを再生している間に、新しいパケットが到着しない場合、アンダフローが発生する。
【００３０】
揺らぎ吸収バッファ部２１は、Ｔｊの倍程度のバッファを確保しておき、それを超えて到着したパケットはオーバフローを発生しているので、到着したパケットを廃棄する。若しくはバッファ内の順序の最も古いパケットを廃棄して、到着したパケットをバッファに格納する構成でもよい。
ＲＴＰヘッダには、シーケンス番号やタイムスタンプを格納することができるため、廃棄やエラーによるパケットの損失を検出することができる。この場合、揺らぎ吸収バッファ部２１には、パケット損失を示すパケットを発生させて格納しておき、再生時には、デコーダ２３が備えているＰＬＣ（Ｐａｃｋｅｔ  Ｌｏｓｓ  Ｃｏｎｃｅａｌｍｅｎｔ）を実行する。
【００３１】
ＰＬＣとしては、前のフレームを繰り返す方法、外挿によって補間する方法、心地の良い雑音を再生する方法等がある。また、ＧＳＭ−ＡＭＲの欠損したフレームの誤り隠蔽については、例えば、“ＡＭＲ  ｓｐｅｅｃｈ  Ｃｏｄｅｃ；Ｅｒｒｏｒ  ｃｏｎｃｅａｌｍｅｎｔ  ｏｆ  ｌｏｓｔ  ｆｒａｍｅｓ  （Ｒｅｌｅａｓｅ  ６）”，３ＧＰＰ  ＴＳ  ２６．０９１  Ｖ６．０．０（２００４−１２）．に、説明されている。
本実施の形態において、アンダフローが発生した場合、その後パケットが到着し始めると、揺らぎ吸収バッファ部２１は、通信の開始時と同様に、所定の蓄積時間Ｔｊ相当の音声フレームを蓄積し遅延させる。蓄積量が所定の蓄積時間Ｔｊに達した後は、再生タイミングに従って、順序の古いパケットから順に読み出して逆パケット化部２２へ渡し、再生を行う。
【００３２】
或いは、従来技術のように、アンダフローが発生した場合、揺らぎ吸収バッファ部２１は、パケット損失と同様に、ＲＴＰヘッダのシーケンス番号やタイムスタンプに基づいた再生タイミングをカウントし続け、再生タイミングに間に合わないパケットを廃棄し、遅延揺らぎが回復して再生タイミングに間に合うパケットの到着を待つことも可能である。
揺らぎ吸収バッファ部２１において、通信の開始時に、所定の蓄積時間Ｔｊ相当の音声フレームを蓄積した後は、再生タイミングに従って、順序の古いパケットから順に読み出して逆パケット化部２２へ渡す。
逆パケット化部２２は、渡されたパケットの中の音声フレームを取り出し、デコーダ２３へ渡す。デコーダ２３は、符号を復号して音声フレームを作成しアナログ信号を出力する。アナログ信号は、スピーカ２４により音波となって、人の聴覚で聴取される。
【００３３】
本実施の形態では、音声伝送を開始するための初期化段階において、送信待ち制御部１５の所定の閾値Ｔｗと揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊを、共に所定の初期値で初期化した。しかし、通信路の遅延揺らぎの状況によっては、揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊを動的に変更することができる。
この場合、第２端末装置２６の受信部１１は、第１端末装置２５の送信部１０の送信待ち制御部１５へ、新しい所定蓄積時間Ｔｊを通知する。第２端末装置２６にも、送信部１０と無線送信部１７が存在し、第１端末装置２５にも、受信部１１と無線受信部２０が存在しており、逆方向の通信路が形成されているため、これらを通じて通知を実行する。新しい所定蓄積時間Ｔｊの通知を受けた送信待ち制御部１５は、所定の閾値Ｔｗを更新する。
【００３４】
図３は、送信部の処理の手順を示すフローチャート（その１）であり、図４は、送信部の処理の手順を示すフローチャート（その２）である。但し、図３の処理の前に、音声伝送を開始するための初期化段階において、蓄積時間算出部１８が記憶している蓄積時間Ｔｔを０に初期化し、また、待ち行列１９を空に初期化しておくものとする。また、図３に示す、送信部１０の処理は、連続した音声信号を符号化して送信するために、音声フレームの周期である２０ｍｓ毎に繰り返し実行される。
図３及び図４に示すように、送信部１０が処理を開始すると、先ず、エンコーダ１３が符号を出力する（ステップＳ１０１）。マイク１２が出力している音声の電気信号を、エンコーダ１３がＡ／Ｄ変換し、公知の符号化方式であるＧＳＭ−ＡＭＲで音声を符号化する。この場合、音声は８ｋＨｚでサンプルされて２０ｍｓのフレーム毎に符号化され、符号化速度は１２．２ｋｂｐｓである。
【００３５】
次に、パケット化部１４がメモリ１６にパケットを作成する（ステップＳ１０２）。つまり、パケット化部１４が、２０ｍｓ分の音声フレームの１個を、第２端末装置２６に宛てたパケットに格納する。パケット化の際に使用するプロトコルは、ＲＴＰ／ＵＤＰ／ＩＰである。パケット化部１４は、作成したパケットをメモリ１６に記憶させ、更に、メモリ１６上のアドレスを送信待ち制御部１５へ通知する。
【００３６】
次に、待ち行列１９は空か否かを判断する（ステップＳ１０３）。送信待ち制御部１５が、待ち行列１９は空か否かを判断した結果、空である（ｙｅｓ）場合、送信可能か否かを判断する（ステップＳ１０４）。即ち、送信待ち制御部１５は、無線送信部１７は送信可能状態にあるかどうかを判断する。無線送信部１７は、既に第１基地局２７と無線データ通信を開始しているので、通常なら送信可能な状態のはずであるが、一時的に、無線通信路の品質が悪化し送信が不可能な状態になることがある。無線送信部１７は、この状態を表すレジスタを持っており、送信待ち制御部１５は、このレジスタを読み出して送信可能状態かどうかを判断する。
【００３７】
この送信可能か否かの判断の結果、送信可能状態である（ｙｅｓ）場合、無線送信部１７にパケットを直ちに送信させる（ステップＳ１０５）。送信待ち制御部１５は、通知されたアドレスを無線送信部１７へ通知し、無線送信部１７は、通知されたアドレスで識別されるメモリ１６内のパケットを、無線通信路を通じて第１基地局２７へ送信する。送信が完了すると、無線送信部１７は、メモリ１６上のパケットを解放する。その後、処理を終了する。
【００３８】
一方、待ち行列１９は空か否かを判断（ステップＳ１０３）した結果、空でない（ｎｏ）場合、及び送信可能か否かを判断（ステップＳ１０４）した結果、送信可能状態でない（ｎｏ）場合、蓄積時間算出部１８がパケットの音声の再生時間Ｔｐを求める（ステップＳ１０６）。つまり、蓄積時間算出部１８は、送信待ち制御部１５に通知されたアドレスで識別されるパケットに含まれる音声データの再生時間Ｔｐを求める。１個のパケットに必ず１個の音声フレームを格納する場合には、再生時間Ｔｐは２０ｍｓとなる。但し、１個のパケットに格納する音声フレームの数が変動するような構成も可能であり、その場合、蓄積時間算出部１８は、通知されたアドレスで識別されるパケットを調べて再生時間Ｔｐを求める。
【００３９】
次に、蓄積時間Ｔｔと再生時間Ｔｐの和が閾値Ｔｗ以下であるか否かを判断する（ステップＳ１０７）。つまり、蓄積時間算出部１８は、記憶している現在の蓄積時間がＴｔであり、通知されたパケットの再生時間がＴｐであるとして、両者の和が閾値Ｔｗ以下である（式（１）参照）か否かを判断する。判断の結果、両者の和（Ｔｔ＋Ｔｐ）が閾値Ｔｗ以下である（ｙｅｓ）場合、蓄積時間算出部１８は、その和でＴｔの値（Ｔｔ＝Ｔｔ＋Ｔｐ）を更新する（ステップＳ１０８）。更新後、送信待ち制御部１５は、通知されたアドレスをパケット待ち行列１９へ繋ぎ（ステップＳ１０９）、その後、処理を終了する。
【００４０】
一方、両者の和が閾値Ｔｗ以下であるか否かを判断（ステップＳ１０７）した結果、閾値Ｔｗ以下でない（ｎｏ）場合、最も古いパケットを選択して通知する（ステップＳ１１０）。つまり、送信待ち制御部１５が、待ち行列１９の中の順序が最も古いパケットのアドレスを取り出す。
次に、蓄積時間算出部１８がパケットの音声の再生時間Ｔｐを求める（ステップＳ１１１）。つまり、送信待ち制御部１５は、蓄積時間算出部１８に対し、取り出した最も古いパケットのアドレスを通知すると共に、そのパケットが待ち行列１９から削除されることを通知し、蓄積時間算出部１８は、通知されたアドレスで識別されるパケットに含まれる音声データの再生時間Ｔｐを求める。
【００４１】
その後、蓄積時間算出部１８が、現在の蓄積時間Ｔｔから再生時間Ｔｐを減算（Ｔｔ−Ｔｐ）し、得られた結果を、新しいＴｔの値（Ｔｔ＝Ｔｔ−Ｔｐ）として記憶する（ステップＳ１１２）。
次に、最も古いパケットを待ち行列１９から削除しメモリ１６からも開放する（ステップＳ１１３）。つまり、送信待ち制御部１５が、待ち行列１９から該当のパケットのアドレスを取り除き、更に、対応するメモリ１６内のパケットデータを解放する。
その後、ステップＳ１０６へ戻る。
【００４２】
このように、上述した処理を経ることにより、待ち行列１９に格納されて送信待ちをするパケットに含まれる音声の再生時間の合計が閾値Ｔｗ以下となり、且つ、最新のパケットが待ち行列１９に繋がれていることになる。本発明では、この所定の閾値Ｔｗを揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊに等しくすることに特徴がある。
図５は、無線送信部が送信不可能状態から送信可能状態へと変化した際に実行される処理手順を示すフローチャートである。図５に示すように、本実施の形態において無線送信部１７が送信不可能状態から送信可能状態へ変化すると、先ず、送信待ち制御部１５が、待ち行列１９の中に繋がれているパケットが有るかどうかを判断する（ステップＳ２０１）。
【００４３】
判断の結果、繋がれているパケットが有る（ｙｅｓ）場合は、最も古いパケットを選択して通知する（ステップＳ２０２）。つまり、送信待ち制御部１５が、待ち行列１９の中で順序が最も古いパケットを選択し、蓄積時間算出部１８に対して、そのパケットが待ち行列１９から削除されることを通知する。一方、判断の結果、繋がれているパケットが無い（ｎｏ）場合は、処理を終了する。
次に、蓄積時間算出部１８は、通知されたパケットの音声の再生時間Ｔｐを求める（ステップＳ２０３）。その後、蓄積時間算出部１８が、再生時間Ｔｐを蓄積時間Ｔｔから減算（Ｔｔ−Ｔｐ）する（ステップＳ２０４）。
【００４４】
次に、送信待ち制御部１５が、最も古いパケットのアドレスを待ち行列１９から削除する（ステップＳ２０５）。その後、送信待ち制御部１５が、そのアドレスを無線送信部１７へ通知し、無線送信部１７は、通知されたアドレスで識別されるメモリ１６内のパケットを、無線通信路を通じて第１基地局２７へ送信する（ステップＳ２０６）。送信を完了した無線送信部１７は、メモリ１６上の該当パケットを解放する（ステップＳ２０７）。
その後、送信待ち制御部１５が、無線送信部１７はまだ送信可能状態であるか否かを判断する（ステップＳ２０８）。判断の結果、送信可能状態である（ｙｅｓ）場合、ステップＳ２０１へ戻り、送信可能状態でない（ｎｏ）場合、処理を終了する。
【００４５】
この閾値Ｔｗが、揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊに等しいという特徴によって生じる、本実施の形態の動作を説明する。
図６は、本実施の形態において各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。図において、横軸は時間であり、音声フレーム及び音声フレームを格納したパケットが上から下へ伝達される様子を矢印で示してある。１本の矢印が１個の音声フレーム又はパケットを表しており、図を分かり易くするために４個毎にハッチングを施してある。但し、このハッチングは便宜上のものでありデータタイプや機能の違いを示すものではない。
【００４６】
図６に示すように、伝達に関わる部品や装置は、マイク１２、エンコーダ１３、送信待ち制御部１５＋無線送信部１７、第１基地局２７、サーバ３０、第２基地局２８、無線受信部２０＋揺らぎ吸収バッファ部２１、デコーダ２３、スピーカ２４である。これらの部品や装置は、音声フレーム又はパケットを受け取った後、ある遅延時間が経過してから出力する。この遅延時間は、各部品又は装置の動作に依るのであるが、エンコーダ１３、無線送信部１７、第１基地局２７、第２基地局２８、デコーダ２３においては、１フレーム又はパケット分の遅延を生じている。更に、サーバ３０では、２．５パケット分の遅延が生じている。揺らぎ吸収バッファ部２１では、初期化時にＪ個のパケットを蓄積する。但し、Ｊ＝７である。１個のパケットに１個の音声フレームを格納しているので、所定蓄積時間Ｔｊは音声フレームの周期のＪ倍である。
【００４７】
図６にあっては、揺らぎ吸収バッファ分のパケットを通過させるための負荷が発生するが、その負荷や輻輳の危険は無制限に増えたりしない。ここでは、先ず、音声伝送が定常状態になっている所から始まる。定常状態では、揺らぎ吸収バッファ部２１において、所定蓄積時間Ｔｊ、即ち、J個のパケットが蓄積されている。この状態で設定した標準的な遅延を受けて、４個のパケットが揺らぎ吸収バッファ部２１へ到着する様子が示されている。揺らぎ吸収バッファ部２１でＴｊの遅延を受けた後、４個の音声フレームが再生されている。
【００４８】
それに引き続いて、無線送信部１７と第１基地局２７の間の無線通信路が悪化し、時間ｄの間は送信ができくなっている。但し、ｄは音声パケット周期の１０倍である。無線送信部１７が送信不可能な状態になると、送信待ち制御部１５が蓄積を開始する。この中断期間ｄの間も、音声パケットは発生し続けているが、送信待ち制御部１５の待ち行列１９に保存しているのは、所定蓄積時間Ｔｊに相当するパケット、即ち、Ｊ＝７個分である。
時間ｄの経過後、無線通信路が回復すると、無線送信部１７は送信を再開するが、遅延時間ｔ１（ここでは、１音声フレーム周期としている）を必要としており、ｔ１以上経過してから送信が再開する。
【００４９】
送信が再開されると、送信待ち制御部１５の待ち行列１９に繋がれていたパケットが、スパイク状に送信される。但し、そのパケットの個数は、Ｊ＝７個である。揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊは、音声の品質評価上それほど大きくはできないが、無線通信路の中断時間は、ときにかなり大きくなる。
本実施の形態では、いかに中断時間が大きくなろうとも、一定数（Ｊ個）のパケットしか蓄積しないため、輻輳の危険やサーバ３０の負荷を圧迫する危険が軽減される。また、ＱｏＳを備えた従来例と比べると、より早い時点で再生を開始しても、揺らぎ吸収バッファ部２１を回復することができるため、中断時間を短くすることができる。
【００５０】
通信が途切れた時間ｄは、揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊよりも３フレーム分大きかったため、図６では時間ｔｕｆで示す間、つまり、３フレームの間、パケットの到着は再生タイミングに間に合わず、アンダフローが発生する。アンダフローの発生時にはパケットの補間が行われる。アンダフロー中の補間方法としては、前のフレームを外挿補間しつつ、ゲインを段々小さくしていく。この補間は、図６においては点線の矢印で示されている。
【００５１】
また、再生タイミングに間に合わなかったパケットは廃棄される。時間ｔｕｆの後に到着したパケットは、再生タイミングに間に合うので再生され始める。更に、所定蓄積時間Ｔｊ分のパケットは、速やかに到着する。これらを再生するには、時間Ｔｊがかかり、この再生が終わった時点で、揺らぎ吸収バッファ部２１の蓄積量は所定蓄積時間Ｔｊ分に達し、定常状態に復帰する。
（第２実施の形態）
【００５２】
図７は、本発明の第２実施の形態に係る音声伝送装置の送信部を示すブロック図である。図７に示すように、送信部３５は、送信待ち制御部１５に代えて、パケットの廃棄を判定する機能を備えた送信待ち制御部３６を有している。送信待ち制御部３６は、蓄積時間算出部１８と待ち行列１９に加えて、廃棄判定部（廃棄判定手段）３７を有しており、廃棄判定部３７は、カウンタ３８及び配列３９を有している。その他の構成及び作用は、送信部１０（図１参照）と同様である。
【００５３】
音声符号の特徴として、音声フレームがランダムに欠損したとしても、前後のフレームから外挿すれば、主観評価値はそれほど低下しないことが挙げられる。本実施の形態は、この特徴を利用して、送信待ち制御部３６で音声フレーム廃棄を行い、受信部１１に廃棄されたパケットを外挿補間させる。これによって、主観評価値の小さな低下を伴いつつも、伝送の効率を上げ、サーバ３０やネットワーク装置に加わるスパイク状の負荷を解消する。
【００５４】
無線送信部１７が、送信不可能状態から送信可能状態に変化すると、廃棄判定部３７は、それが保持するカウンタ３８を０に初期化する。送信待ち制御部３６は、エンコーダ１３の音声フレーム周期のタイミングを受けて繰り返し動作を行う。送信待ち制御部３６は、待ち行列１９の中に繋がれているパケットが有るか否かを判定する。パケットが有る場合、その中で順序が最も古いパケットを選択し、蓄積時間算出部１８に対してそのパケットが待ち行列１９から削除されることを通知する。蓄積時間算出部１８は、通知されたパケットの再生時間Ｔｐを求めて、蓄積時間Ｔｔから減算する。
【００５５】
送信待ち制御部３６は、待ち行列１９から該当パケットのアドレスを削除し、更に、廃棄判定部３７に通知して、判定を実行させる。廃棄判定部３７は、カウンタ３８の値を変数ｉで、配列２３をｒで表すとして、ｉをインデクスとした配列の値ｒ［ｉ］を参照する。配列２３には、１又は０の値、即ち、送信すべきカウントのときには０が、廃棄すべきカウントのときには１が、記憶されている。このため、廃棄判定部３７は、配列２３の参照値ｒ［ｉ］を判定結果として、送信待ち制御部３６へ通知し、更に、カウンタ３８を１だけ増加させる。
【００５６】
この廃棄判定部３７の判定結果に応じて、送信待ち制御部３６は、パケットを廃棄又は送信させる。パケットを廃棄する場合、送信待ち制御部３６は、メモリ１６上の該当パケットを解放し、その後、再度パケットが有るか否かを判定する動作に戻る。パケットを送信させる場合、そのアドレスを無線送信部１７へ通知する。無線送信部１７は、通知されたアドレスで識別されるメモリ１６内のパケットを、無線通信路を通じて第１基地局２７へ送信し、送信が完了すると、メモリ１６上の該当パケットを解放する。
この動作の最中であっても、新しい音声パケットを発生させて送信待ち制御部３６へ入力することが可能である。このパケットは、上述の動作に従って待ち行列１９に繋がれる。待ち行列１９に新しいパケットの繋がれる速度よりも、古いパケットが取り出される速度の方が大きいため、待ち行列１９は、速やかに減少しやがて空になる。
【００５７】
配列ｒには、カウンタｉが小さいほど廃棄割合が大きく、カウンタｉが大きいほど廃棄割合が小さくなるように設計された値が、予め記憶されている。但し、廃棄割合は２分の１より大きくはしない。本発明は、このようなパケット個数ｋを次のように設計することに特徴がある。
待ち行列１９の、閾値Ｔｗに対応した最大の長さをＬとし、ｋ個のパケットの送信に対し１個の割合でパケットの廃棄を行うとした場合、個数ｋを、１≦ｋ≦Ｌの範囲で変化させる。個数ｋは、最初１とし、カウンタｉが大きくなるにつれて同じか大きくなるように変化させる。このようにして作成した配列ｒの例を、図８に示す。
【００５８】
図８は、カウンタｉに対する配列の参照値ｒ［ｉ］と個数ｋの関係を表で示す説明図である。図８においては、揺らぎ吸収バッファ部２１が所定蓄積時間Ｔｊで蓄積するパケットの個数Ｊが７の場合、個数ｋを２としており、３個に１個の割合でパケットを廃棄することを基礎としている。音声フレーム３個分の再生時間を２個のフレームで実現するため、送信速度は３／２倍に上がったことになる。但し、実際のパケットは、音声フレーム周期の間隔のまま伝送する。このとき、総数Ｗ＝２１個の音声フレームを再生し終えた時に、揺らぎ吸収バッファ部２１が、所定蓄積数Ｊ＝７個を回復し定常状態に復帰する。このため、図８の配列ｒは２１個分の値を持っており、そのうち７個が廃棄されるようになっている。
【００５９】
廃棄したパケットの分は外挿補間されるので、廃棄割合を２分の１より大きくすることは好ましくない。また、できれば２分の１よりも小さくしたほうが音声品質は向上する。
一般に、ｋ個の送信に対して１個のパケットを廃棄し、送信速度の向上倍率をｎとすると次の式が成り立つ。
ｎ＝（ｋ＋１）／ｋ………（２）
総数Ｗ個のパケットを再生している間に、ｎ倍の速度でＷ個のパケットが伝送され、更に、所定蓄積数Ｊ個の蓄積が達成されることから、次の式が成り立つ。
Ｗ／ｎ＋Ｊ＝Ｗ………（３）
∴  Ｗ＝Ｊ／（１−（１／ｎ））
∴  Ｗ＝Ｊ×（ｋ＋１）
【００６０】
このように、廃棄割合を小さくして個数ｋを大きくすれば音声品質は向上するが、揺らぎ吸収バッファ部２１が回復して定常状態に戻るまでに送信する総パケット数Ｗは、増加する。
図９は、第２実施の形態において送信待ち制御部がエンコーダの音声フレーム周期のタイミングを受けて繰り返し行う処理の手順を示すフローチャートである。図９に示すように、先ず、待ち行列１９に有るか否かを判断する（ステップＳ３０１）。つまり、送信待ち制御部３６が、待ち行列１９の中に繋がれているパケットが有るかどうか判定する。
【００６１】
判断の結果、パケットが有る（ｙｅｓ）場合、最も古いパケットを選択して通知する（ステップＳ３０２）。最も古いパケットを選択して通知した後、送信待ち制御部３６が、待ち行列１９の中で順序が最も古いパケットを選択し、蓄積時間算出部１８に対してそのパケットが待ち行列１９から削除されることを通知する。
一方、判断の結果、パケットが無い（ｎｏ）場合、処理を終了する。
次に、蓄積時間算出部１８が、通知されたパケットの音声の再生時間Ｔｐを求め（ステップＳ３０３）、その後、蓄積時間算出部１８が、再生時間Ｔｐを蓄積時間Ｔｔから減算（Ｔｔ＝Ｔｔ−Ｔｐ）する（ステップＳ３０４）。
【００６２】
次に、最も古いパケットを待ち行列１９から削除する（ステップＳ３０５）。つまり、送信待ち制御部３６が、待ち行列１９から該当パケットのアドレスを削除する。
その後、廃棄判定部３７が、カウンタ３８の値を変数ｉで、配列２３をｒで表すとして、ｉをインデクスとした配列の値ｒ［ｉ］を参照し、これを判定結果とする（ステップＳ３０６）。更に、廃棄判定部３７は、カウンタ３８を１だけ増加させる。
次に、廃棄判定部３７が、廃棄か否かを判断する（ステップＳ３０７）。判断の結果、廃棄する（ｙｅｓ）場合、送信待ち制御部３６は、メモリ１６上の該当パケットを解放し（ステップＳ３０８）、その後、ステップＳ３０１へ戻る。
【００６３】
一方、判断の結果、廃棄しない（ｎｏ）場合、送信待ち制御部３６が、そのアドレスを無線送信部１７へ通知し、無線送信部１７は、通知されたアドレスで識別されるメモリ１６内のパケットを、無線通信路を通じて第１基地局２７へ送信する（ステップＳ３０９）。送信を完了した後、無線送信部１７は、メモリ１６上の該当パケットを解放し（ステップＳ３１０）、その後、処理を終了する。
このように、上述した処理は、エンコーダ１３の音声フレーム周期で繰り返し実行されるため、待ち行列１９の長さは、無線送信部が送信不可能状態から送信可能状態へと変化した際に実行される処理（図５参照）の場合よりも、ゆっくりと減っていく。
【００６４】
図１０は、第２実施の形態において各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。図において、横軸は時間であり、音声フレーム及び音声フレームを格納したパケットが上から下へ伝達される様子を矢印で示してある。１本の矢印が１個の音声フレーム又はパケットを表しており、図を分かり易くするために４個毎にハッチングを施してある。但し、このハッチングは便宜上のものでありデータタイプや機能の違いを示すものではない。
【００６５】
図１０では、図６と違って、無線送信部１７が音声フレーム周期と同じ間隔でパケットを送信するため、サーバ３０やその他の通信装置にスパイク状の負荷をかけない。また、無線送信部１７から送信されるパケットの数は、廃棄判定部３７に従った廃棄によって減っている。廃棄するパケットは、図中、×印で示してある。
図１０にあっては、廃棄割合は１／３を基本とし、ｋ＝１からｋ＝４の間で変化させた場合を示す。ここでは、先ず、音声伝送が定常状態になっている所から始まる。定常状態では、揺らぎ吸収バッファ部２１において、所定蓄積時間Ｔｊ、即ち、J個のパケットが蓄積されている。この状態で、設定した標準的な遅延を受けて４個のパケットが揺らぎ吸収バッファ部２１へ到着する様子が示されている。揺らぎ吸収バッファ部２１で、所定蓄積時間Ｔｊの遅延を受けた後、４個の音声フレームが再生されている。
【００６６】
それに引き続いて、無線送信部１７と第１基地局２７の間の無線通信路が悪化し、時間ｄの間は送信ができくなっている。但し、ｄは音声パケット周期の１０倍である。無線送信部１７が送信不可能な状態になると、送信待ち制御部３６が蓄積を開始する。この中断期間ｄの間も、音声パケットは発生し続けているが、送信待ち制御部３６の待ち行列１９に保存しているのは、所定蓄積時間Ｔｊに相当するパケット、即ち、Ｊ＝７個分である。
時間ｄの経過後、無線通信路が回復すると、無線送信部１７は送信を再開するが、遅延時間ｔ１（ここでは、１音声フレーム周期としている）を必要としており、ｔ１以上経過してから送信が再開する。
【００６７】
送信が再開されると、送信待ち制御部３６は、外部から供給される音声フレーム周期に従って繰り返し動作を行う。待ち行列１９に繋がれていたパケットが取り出され、廃棄判定部３７が廃棄か送信かを判定する。パケットが廃棄された場合、送信待ち制御部３６は、再度待ち行列１９の中の次のパケットを取り出して動作を繰り返す。
通信が途切れた時間ｄは、揺らぎ吸収バッファ部２１の所定蓄積時間Ｔｊよりも３フレーム分大きかったため、図１０では時間ｔｕｆで示す間、つまり、３フレームの間、パケットの到着は再生タイミングに間に合わず、アンダフローが発生する。アンダフローの発生時には、パケットの補間が行われる。アンダフロー中の補間方法としては、前のフレームを外挿補間しつつ、ゲインを段々小さくしていく。この補間は、図１０では点線の矢印で表されている。
【００６８】
また、再生タイミングに間に合わなかったパケットは廃棄される。時間ｔｕｆの後に到着したパケットは、再生タイミングに間に合うので再生され始める。但し、廃棄判定部３７が廃棄を指示したパケットは欠損しているので、補間が行われる。この補間は、図１０では点線の矢印で表されている。アンダフローの場合のパケット損失は連続して生じるが、廃棄判定部３７は、パケット損失が連続しないように廃棄を指示している。
図１０においては、送信待ち制御部３６が、外部から供給される音声フレーム周期に従って動作しているため、パケットの間隔は変化していない。このため、揺らぎ吸収バッファ部２１の蓄積量は、ゆっくりと回復する。所定蓄積時間Ｔｊ分のパケットは、Ｗ＝３×Ｊ個のパケットの再生が完了した時点で達成され、その後、定常状態に復帰する。
【００６９】
図１１は、第２実施の形態において、アンダフローの回復が下流の遅延揺らぎを受けて更に遅延した場合における、各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。
図１１は、サーバ３０が、通常音声パケット周期の２．５倍、つまり、５０ｍｓで処理を行っていたところ、更に、遅延ｄｓを生じた状態を示しており、遅延ｄｓは、音声パケット周期の２倍、つまり、４０ｍｓの場合である。遅延して受信部１１の揺らぎ吸収バッファ部２１に到着したパケットは、再生タイミングに間に合わずに廃棄され、代わりにパケットが補間されて、アンダフローによる損失時間ｔｕｆが増加している。時間ｔｕｆは、図６では音声パケット周期の３倍であったが、図１１では７倍である。加わった遅延ｄｓの倍の時間が、損失時間ｔｕｆに加わっている。
【００７０】
このように、廃棄割合が大きい品質の悪い区間がアンダフローし、廃棄割合が小さい品質の良い区間が再生されており、揺らぎ発生時の再生開始時刻が早くなっている。つまり、バースト損失がランダム損失に変換されている。
本実施の形態では、このアンダフローによる損失時間ｔｕｆの増加を抑制することができる。これは、廃棄判定部３７が、古いパケットの廃棄割合を大きくしていることによる。比較のために、廃棄割合を３個に１個、即ち、ｋ＝２に固定した場合の様子を、図１２に示す。
【００７１】
図１２は、図１１との比較のために、廃棄割合を３個に１個に固定した場合における、各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。図１２においては、損失時間ｔｕｆが音声パケット周期の９倍であり、加わった遅延ｄｓの３倍の時間が損失時間ｔｕｆに加わっている。これは、個数ｋが大きいほどパケットの到達時刻が遅く、再生タイミングと到達時刻の差が広がるまでに時間がかかるためである。
従って、本実施の形態では、図１１に示すように、下流の通信路が揺らいで遅延が増えても、早期に再生を開始し、且つ、再生される部分の廃棄割合は小さくして音声品質を向上させることができる。つまり、早期の再生開始と良好な音声品質の両方の長所を兼ね備えている。
【００７２】
このように、本発明によれば次の効果及び利点が得られる。
先ず、再生されないものは送らないので、無駄に廃棄されてしまうことはなく、使用しない通信インフラを備えておく無駄がない。
また、揺らぎ吸収バッファがアンダフローするほど送信ができない場合でも、通信が再開した際に揺らぎ吸収バッファの所定蓄積時間分のパケットから送信を開始するので、遅延した全てのパケットを送信する従来例に比べて輻輳やサーバの負荷を圧迫することを軽減することができる。また、遅延した音声パケットを廃棄するＱｏＳを備えた従来例と比べて、より早い時点で再生を開始しても、揺らぎ吸収バッファを回復することができるため、中断時間を短くすることができる。
【００７３】
また、通信路上の通信装置やサーバへのスパイク状の負荷の増大を避けること、若しくは負荷の増大量を一定割合以内に制御することができる。
更に、下流の通信路が揺らいで遅延が増えても、早期の再生開始と良好な音声品質の両方の要望を満たすように改善することができる。
なお、本発明は、上述した実施の形態により説明したが、この実施の形態に限定されるものではない。従って、本発明の趣旨を逸脱することなく変更態様として実施するものも含むものである。
【図面の簡単な説明】
【００７４】
【図１】本発明の第１実施の形態に係る音声伝送装置の送信部と受信部を示し、（ａ）は送信部のブロック図、（ｂ）は受信部のブロック図である。
【図２】図１の音声伝送装置を用いたパケット交換網による通信システムを説明するブロック図である。
【図３】送信部の処理の手順を示すフローチャート（その１）である。
【図４】送信部の処理の手順を示すフローチャート（その２）である。
【図５】無線送信部が送信不可能状態から送信可能状態へと変化した際に実行される処理手順を示すフローチャートである。
【図６】本実施の形態において各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。
【図７】本発明の第２実施の形態に係る音声伝送装置の送信部を示すブロック図である。
【図８】カウンタｉに対する配列の参照値ｒ［ｉ］と個数ｋの関係を表で示す説明図である。
【図９】第２実施の形態において送信待ち制御部がエンコーダの音声フレーム周期のタイミングを受けて繰り返し行う処理の手順を示すフローチャートである。
【図１０】第２実施の形態において各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。
【図１１】第２実施の形態において、アンダフローの回復が下流の遅延揺らぎを受けて更に遅延した場合における、各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。
【図１２】図１１との比較のために、廃棄割合を３個に１個に固定した場合における、各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。
【図１３】従来のパケット交換方式を説明するブロック図である。
【図１４】従来技術において各部品又は装置を伝達される音声フレーム又はパケットの様子を示す説明図である。
【図１５】従来技術においてＱｏＳ制御を備えて遅延した音声パケットを早期に廃棄する無線通信路の様子を示す、図１４と同様の説明図である。
【符号の説明】
【００７５】
１０，３５  送信部
１１  受信部
１２  マイク
１３  エンコーダ
１４  パケット化部
１５，３６  送信待ち制御部
１６  メモリ
１７  無線送信部
１８  蓄積時間算出部
１９  待ち行列
２０  無線受信部
２１  揺らぎ吸収バッファ部
２２  逆パケット化部
２３  デコーダ
２４  スピーカ
２５  第１端末装置
２６  第２端末装置
２７  第１基地局
２８  第２基地局
２９  ＩＰ網
３０  サーバ
３７  廃棄判定部
３８  カウンタ
３９  配列
【図１】
2008085798.tif 000003
【図２】
2008085798.tif 000004
【図３】
2008085798.tif 000005
【図４】
2008085798.tif 000006
【図５】
2008085798.tif 000007
【図６】
2008085798.tif 000008
【図７】
2008085798.tif 000009
【図８】
2008085798.tif 000010
【図９】
2008085798.tif 000011
【図１０】
2008085798.tif 000012
【図１１】
2008085798.tif 000013
【図１２】
2008085798.tif 000014
【図１３】
2008085798.tif 000015
【図１４】
2008085798.tif 000016
【図１５】
2008085798.tif 000017