(57)【特許請求の範囲】
【請求項１】
受信した音声パケットを受信バッファへ蓄積し、その受信バッファよりフレーム番号順に、音声パケットを順次取り出し、その取り出した音声パケットを復号して、音声信号を出力する音声パケット受信再生方法において、
フレームごとに、上記受信バッファから取り出す音声パケットがあるか否かを判定する第１判定過程と、
上記第１判定過程において、音声パケットがないと判断された場合に、パケット損失補償処理を行うか、無音生成処理を行うか判定する第２判定過程と、
上記第１判定過程において、音声パケットがないと判定された場合に、上記第２判定過程の判定に基づいて、パケット損失補償処理または無音生成処理のいずれかを行って信号を生成し、出力する過程と、
上記受信バッファより音声パケットを取り出して復号するごとに、対応するフレーム番号をフレーム番号カウンタに記憶させる過程と、
上記パケット損失補償処理を１フレーム分行うごとに、上記フレーム番号カウンタの計数値を１増加させる過程と、
上記無音生成処理を行うごとに、上記フレーム番号カウンタの計数値は増加させないでそのまま維持する過程と、
上記第１判定過程で取り出す音声パケットがあると判定され、取り出された音声パケットのフレーム番号が上記フレーム番号カウンタが示すフレーム番号以下か否かを判定するフレーム番号判定過程と、
上記フレーム番号判定過程の判定結果が以下であれば、上記受信した音声パケットを破棄し、上記判定結果が以下でなければ、上記取り出した音声パケットを復号して、音声信号を出力する過程とを有し、
前記第２判定過程は、上記第１判定過程において、音声パケットがないと判定される状態がＮフレーム（Ｎは０以上の整数）連続するまでは、パケット損失補償処理を行う判定を行い、音声パケットがないと判定される状態がＮフレームを超えて連続した場合は、無音生成処理を行う判定を行う
ことを特徴とする音声パケット受信再生方法。
【請求項２】
請求項１記載の方法において、
受信される一連の音声パケットを観測して、受信した音声パケットが無音圧縮を利用したものであるか否かを推定するＤＴＸ検出過程を有し、
上記ＤＴＸ検出過程において、無音圧縮を利用したものでないと、推定される場合には、Ｎ≧１とし、
上記ＤＴＸ検出過程において、無音圧縮を利用したものであると、推定される場合には、Ｎ＝０とする
ことを特徴とする音声パケット受信再生方法。
【請求項３】
請求項２記載の方法において、
上記ＤＴＸ検出過程において、無音圧縮を利用したものではないと推定される場合には、上記Ｎを４０〜１００ミリ秒に相当するフレーム数とする
ことを特徴とする音声パケット受信再生方法。
【請求項４】
請求項１〜３の何れかに記載した音声パケット受信再生方法の各過程をコンピュータに実行させるためのプログラムを記録したコンピュータ読み取り可能な記録媒体。
【請求項５】
受信した音声パケットを受信バッファへ蓄積し、その受信バッファより、フレーム番号順に、音声パケットを順次取り出し、その取り出した音声パケットを復号して、音声信号を出力端子へ出力すると共に、そのフレーム番号をフレーム番号カウンタに記憶する音声パケット受信再生装置において、
フレームごとに上記受信バッファから取り出す音声パケットがあるか否かを示すパケット取出し可否信号を生成するパケット取出し可否信号生成部と、
上記パケット取出し可否信号生成部よりパケット取出し可否信号が入力され、パケット取出し可否信号が取出し不可を示すことが、Ｎフレーム（Ｎは０以上の整数）連続したか否かを示す補償継続可否信号を生成する補償継続可否信号生成部と、
フレームごとに、上記パケット取出し可否信号と上記補償継続可否信号とが入力され、上記パケット取出し可否信号が取出し不可であり、上記補償継続可否信号が補償継続可であれば、パケット損失補償処理を１フレーム分実行して、音声信号を生成し、その音声信号を上記出力端子に出力すると共に上記フレーム番号カウンタの計数値を１増加させる損失補償部と、
フレームごとに、上記パケット取出し可否信号と上記補償継続可否信号とが入力され、上記パケット取出し可否信号が取出し不可であり、上記補償継続可否信号が補償継続不可であれば、無音信号を生成して、上記出力端子に出力するが、上記フレーム番号カウンタの計数値の増加は行わない無音生成部と、
受信した音声パケットのフレーム番号と、フレーム番号カウンタが示すフレーム番号とを比較し、当該音声パケットのフレーム番号が上記フレーム番号カウンタが示すフレーム番号以下か否かを判定する整合判定部と、
上記整合判定部の判定結果が以下であれば、受信した音声パケットを破棄するパケット破棄部と、
上記判定結果が以下でなければ、受信した音声パケットを、受信バッファに蓄積するゲートと、
上記パケット取出し可否信号生成部よりパケット取出し可否信号が入力され、パケット取出し可否信号が取出し可を示す場合に、受信バッファに蓄積された音声パケットを取り出して、復号し、音声信号を上記出力端子に出力する音声パケット復号部と、
を具備することを特徴とする音声パケット受信再生装置。
【請求項６】
請求項５記載の装置において、
上記受信した音声パケットが入力され、送信側が無音圧縮を利用しているか否かを検出するＤＴＸ検出部と、
上記ＤＴＸ検出部の検出出力が入力され、その検出出力が、無音圧縮を利用していないことを表せば、上記Ｎを１以上に設定し、利用していることを表せば、上記Ｎを０に設定する手段とを備えることを特徴とする音声パケット受信再生装置。
【発明の詳細な説明】
【技術分野】
【０００１】
この発明は、ディジタル化された音声信号、音楽信号などの音響信号（この出願書類においては、総称して音声信号）をインターネットをはじめとするパケット通信網を介して送信する際に、受信側において、安定した品質で、音声信号を再生するために用いる音声パケット受信再生方法及びその装置、そのプログラム記録媒体に関する。
【背景技術】
【０００２】
近年、音声信号をＶｏｉｃｅ  ｏｖｅｒ  ＩＰ（ＶｏＩＰ）技術を利用して、より品質の高い音声信号を送受信する技術が望まれている。
図８は音声信号を音声パケットに変換してＩＰ通信網をはじめとするパケット通信網によってリアルタイムで通信する構成例である。音声信号送信部７０に入力された入力音声信号はフレームと呼ばれる一定の時間毎にフレーム分割部７１で区切られ、音声符号化部７２により、音声信号は符号化される。ここで、フレームの長さは、一般に１０ミリ秒から２０ミリ秒が用いられることが多い。符号化された音声信号は、音声パケット変換部７３により、音声パケットに変換される。このように入力音声は音声信号送信部７０内で、音声パケットに変換されて、ＩＰ通信網７４に送信される。
【０００３】
音声パケットには、フレームに区切った音声信号を音声符号化の手法によって変換した音声符号と、パケットの時間順序を示すタイムスタンプまたはフレーム番号が含まれている。代表的な音声符号化手法としては、ＩＴＵ−Ｔ（国際電気通信連合）の標準であるＧ．７１１方式があるが、その他の任意の方式でも良い。タイムスタンプとフレーム番号は相互に変換可能であるため、以下タイムスタンプまたはフレーム番号を単にフレーム番号と呼ぶことにする。
ＩＰ通信網７４よりの音声パケットは音声信号受信部７５で受信され、音声信号受信部７５に受信された音声パケットは、音声信号に変換されて出力される。
【０００４】
図９に音声信号受信部７５の具体的な構成例を示す。ＩＰ通信網からの音声パケットは、パケット受信部８０によって受信され、更に、受信バッファ８１に蓄積される。音声パケット復号部８２は受信バッファ８１から音声パケットを取り出し、音声信号に復号して、音声信号を切替スイッチ８９を通じて、出力端子８８に出力する。
ここで受信バッファ８１は、ゆらぎ吸収バッファとも呼ばれ、ＩＰ通信網の状態によってパケットの到着時間にゆらぎが生じた時にゆらぎを吸収し、再生音声信号が途切れることを防止する。また通信網において、パケットロス（パケット損失）が発生した場合や、受信バッファ８１のゆらぎ吸収量を超えるゆらぎが発生して、受信バッファ８１が一時的に空になった場合には、音声パケット復号部８２は受信バッファ８１から復号すべき音声パケットを取り出すことができない。これらの場合、制御部８４は、損失補償処理部（パケットロスコンシールメント部）８３を作動させ、損失補償処理部８３は補償音声信号を生成して切替スイッチ８９を通じて、出力端子８８に出力する。なお損失補償処理部８３とは、パケットロスが発生した際に、再生音声の劣化が目立たないような音声信号を、既に受信した音声信号から、生成する方法で、代表的な方法として、ＩＴＵ−Ｔ（国際電気通信連合）の標準として定められているＧ．７１１  Ａｐｐｅｎｄｉｘ  Ｉ（ジードット７１１アペンディックスワン）または非特許文献１に示す方法が知られている。
【０００５】
切替スイッチ８９は、音声パケット復号部８２から、又は損失補償処理部８３から、音声信号を出力するかに応じて、制御部８４により、切替を行う。
図１０は１つの装置内に、音声信号受信部９１、音声信号送信部９２、音声信号受信部９１よりの音声信号を再生するスピーカ９３、送話信号を受音するマイクロホン９４、マイクロホン９４に収音された音声信号から反響信号を抑圧して、音声信号送信部９２へ送信するエコーキャンセラ９５を備えた装置の構成例を示す。スピーカ９３とマイクロホン９４はそれぞれ、一般的な音響スピーカ、一般的なマイクロホンであり、音声信号受信部９１と音声信号送信部９２の両方を備えた、電話通信のように双方向に通話する装置の構成例である。また音声信号受信部９１よりの受話音声信号（受話信号）ｘ（ｋ）はスピーカ９３から再生放音され、この再生音声は反響経路９６を通じて、マイクロホン９４にも収音され、これが音響エコーとして送信される。そこで、スピーカ９３へ供給される音声信号ｘ（ｋ）がエコーキャンセラ９５にも入力され、エコーキャンセラ９５内で擬似反響経路に通され、擬似音響エコーが生成され、これが、マイクロホン９４よりの収音信号ｙ（ｋ）からエコーキャンセラ９５内で差し引かれ、反響信号が抑圧された送話信号が、音声信号送信部９２に入力される。
【０００６】
なお、エコーキャンセラ９５内の擬似反響経路は真の反響経路の特性に、近づくように適応的に制御されている。このように、エコーキャンセラ９５は受信信号ｘ（ｋ）と、収音信号ｙ（ｋ）とが正しく同期するように入力されて、正常に作動している。受信信号ｘ（ｋ）が入力されない状態が発生したり、同期がずれると、正常に作動しなくなる。すなわち、正しく反響抑圧されなくなる。
音声信号送信部９２としては、入力音声信号が無音のとき、すなわち呼は接続されているが、送信側の話者が発声していない時に音声パケットを全く送らない送信方法もある。この方法を無音圧縮またはＤｉｓｃｏｎｔｉｎｕｏｕｓ  Ｔｒａｎｓｍｉｓｓｉｏｎ（以下ＤＴＸ）と呼び、パケット通信網の帯域を効率的に使用している方法として使われている。
【非特許文献１】大室仲、他“音声特徴量並行送信によるバーストパケットロス耐性の向上”，信学技報（電子情報学会）学会）通信，ＳＰ２００４−７７，ｐｐ．３５−４０，２００４
【発明の開示】
【発明が解決しようとする課題】
【０００７】
この発明が解決しようとする課題を２点挙げる。
１つ目は、前記のようにパケットのゆらぎが受信バッファのゆらぎ吸収量よりも大きくなった場合に、受信バッファは一時的に空になる。この現象を防ぐために、受信バッファのゆらぎ吸収量を大きくする、すなわち受信バッファに蓄積するパケットの量を多くすることは可能であるが、受信バッファに蓄積するパケットの量を多くすると、パケットを受信してから音声信号が再生されるまでの遅延が大きくなり、双方向通話の場合には話しづらくなる。このため、ゆらぎが変動した際に受信バッファが一時的に空になる状態はある程度許容することが一般的である。
【０００８】
受信バッファが空になった場合は、前記のように、損失補償処理部が作動され、パケット損失補償処理を行う。しかし、この処理を、何秒も連続して適用すると、パケット到着再開時の受信バッファの状態が不安定になる問題である。つまり、一般に受信バッファに、蓄積する量があらかじめ定められた適当量になるように、プログラム制御していることがあるが、その場合、前述したように何秒も連続してパケット損失補償処理を行う状態になると、蓄積量を適量にする動作がうまく作動しなくなり、遅延が不適切になったり、それを回復する処理によって再生音が劣化する。またこのように長い間、パケット損失補償処理による再生音声は、音質が悪いものとなる。
【０００９】
２つ目は、前記の受信バッファが不安定になるという問題を防ぐため、損失補償処理を行わず、パケットが受信バッファに溜まるまで、音声パケットを復号する処理を停止することにすると、エコーキャンセラの作動に不具合が生じるという問題である。即ち、図１０において、エコーキャンセラ９５に入力される受話信号ｘ（ｋ）が停止すると、収音信号ｙ（ｋ）のみがエコーキャンセラ９５に入力されることになり、エコーキャンセラ９５が正しく動作せず、この場合は、送信音すなわち、相手側の再生音が劣化するという現象が生じる。
【課題を解決するための手段】
【００１０】
フレームごとに、上記受信バッファから取り出す音声パケットがあるか否かを第１判定過程で判定し、音声パケットがないと判断された場合に、パケット損失補償処理を行うか、無音生成処理を行うか第２判定過程で判定し、音声パケットがないと判定された場合に、上記第２判定過程の判定に基づいて、パケット損失補償処理または無音生成処理のいずれかを行って信号を生成する。つまり音声パケットがないと判定される状態がＮフレーム（Ｎは０以上の整数）連続するまでは、上記第２判定過程でパケット損失補償処理を行うと判定し、音声パケットがないと判定される状態がＮフレーム（Ｎは０以上の整数）を超えて連続した場合は、上記第２判定過程で無音生成処理を行うと判定する。
【００１１】
必要に応じて、受信される一連の音声パケットを観測して、受信した音声パケットが無音圧縮を利用したものであるか否かをＤＴＸ検出過程で推定し、無音圧縮を利用したものでないと、推定される場合には、Ｎ≧１とし、無音圧縮を利用したものであると、推定される場合には、Ｎ＝０とする。
更に必要に応じて、上記受信バッファより音声パケットを取り出して復号するごとに、対応するフレーム番号をフレーム番号カウンタに記憶させ、上記パケット損失補償処理を１フレーム分行うごとに、上記フレーム番号カウンタの計数値を１増加させ、上記無音生成処理を行うごとに、上記フレーム番号カウンタの計数値は増加させないでそのまま維持し、上記第１判定過程で取り出す音声パケットがあると判定され、取り出された音声パケットのフレーム番号が上記フレーム番号カウンタが示すフレーム番号以下か否かをフレーム番号判定過程で判定し、その判定結果が以下であれば、上記受信した音声パケットを破棄し、上記判定結果が以下でなければ、上記取り出した音声パケットを復号して、音声信号を出力する。
【発明を実施するための最良の形態】
【００１２】
［実施例１］
図１にこの発明を実施するための最良な形態の音声パケット受信再生装置の機能構成例を示す。この図には図９と対応する部分に同じ符号を付け、重複説明を省略する。パケット受信部８０は、ＩＰ通信網から音声パケットを受け取り、受信バッファ８１へ送る。
受信バッファ８１に音声パケットが蓄積されている時は、音声パケット復号部８２は受信バッファ８１内の音声パケットの中から、フレーム番号の最も小さいものを１つ（１フレーム分）取り出し、音声パケットに含まれる音声符号を復号すると同時に、取り出されたパケットのフレーム番号をフレーム番号カウンタ８５にカウント値として設定する。復号された音声信号は出力端子８８に送られ、出力される。
【００１３】
受信バッファ８１が空で、音声パケット復号部８２が受信バッファ８１から音声パケットを取り出そうとした際に、取り出す音声パケットが蓄積されていない場合は、制御部８４により、損失補償処理部８３を作動させ、補償音声信号が出力端子８８に送られ、出力される。パケット損失補償処理を１フレーム分行うごとに、フレーム番号カウンタ８５のカウント値を「１」増加（「１」インクリメント）させる。パケット損失補償処理が終わると、再度受信バッファ８１から音声パケットを取出せるか否かを調べる。取り出す音声パケットがなく損失補償処理部８３を作動させることがＮ回連続的に行われ、その後も、受信バッファ８１から取り出せる音声パケットがない場合は、無音生成部８７を作動させ、無音信号を生成し、出力端子８８に送られ、出力される。ただしＮは０以上の整数とする。これにより、１つ目の課題を解決できる。また、出力端子８８へ供給される信号はエコーキャンセラへも供給される。従って、エコーキャンセラには受信信号側からも常時、信号が入力されるため、エコーキャンセラを正しく動作させることができ、これにより、２つ目の課題を解決できる。
【００１４】
なお、フレーム長が２０ミリ秒の場合は、Ｎの値は２フレーム〜５フレームがよく、フレーム長が１０ミリ秒の場合は、Ｎの値は４フレーム〜１０フレームがよく、つまり、Ｎは４０〜１００ミリ秒に相当するフレーム数とするとよく、好ましくは、４０〜６０ミリ秒に相当するフレーム数とするとよいことが実験的に確認されている。なお、Ｎが小さすぎると直ぐ無音信号となり、音声として、好ましくなく、逆に、Ｎが大きすぎても、音声品質が劣化する。
［実施例２］
送信側でＤＴＸを利用する場合に対するこの発明装置の実施例を説明する。
この場合は、図１中に一点鎖線枠で示されているＤＴＸ検出部８６が設けられる。ＤＴＸ検出部８６は、パケット受信部８０におけるパケット受信状態を監視して、送信側がＤＴＸを利用して音声パケットを送っているか否かの推定を継続的に行う。ＤＴＸが利用されているかどうかは、例えば、パケットのヘッダ情報を参照することにより、推定可能である。
【００１５】
ＤＴＸを利用して送信側が音声パケットを送信している場合、受信側の受信バッファ８１内が空になり、音声パケット復号部８２が音声パケットを取り出せない場合、それが想定したゆらぎよりも大きなゆらぎによる場合なのか、ＤＴＸを利用している場合なのかの判断がその時点ではできない。もしＤＴＸの利用により、発生した受信バッファ８１内が空になる現象をパケットロスと見なして（間違った判断をして）、損失補償処理を行うと、再生音が劣化する。
そこで、受信バッファ８１内が空になった場合、送信側がＤＴＸを利用していなかったら、前述したように、パケット損失補償処理、更に必要に応じて無音信号生成を行い、受信パケットがＤＴＸを利用していた場合は直ちに無音信号の生成を行う。
制御部の具体例
次に、図１中の制御部８４の具体的機能の構成例を図２に示す。音声パケット復号部８２が受信バッファ８１から取り出せる音声パケットがあるか否かの信号が受信バッファ８１内の音声パケット蓄積状態からパケット取出し可否信号生成部２０で生成される。パケット取出し可否信号生成部２０は、取り出せる音声パケットがあれば図２では、「１」を出力し、取り出せる音声パケットがなければ、「０」を出力する。パケット取り出し可否信号は音声パケット復号指示部２２、損失補償指示部２４、無音生成指示部２６へそれぞれ送られる。パケット取り出し可否信号が「１」であれば、音声パケット復号指示部２２は、音声パケット復号部８２に復号処理を指示する。
【００１６】
ＤＴＸ検出部８６からの検出信号はＤＴＸフラグレジスタ２８に送られる。この例では、ＤＴＸフラグレジスタ２８内のＤＴＸフラグを、ＤＴＸを利用している場合は「１」に、ＤＴＸを利用していない場合はＤＴＸフラグを「０」に設定する。ＤＴＸフラグ信号は、損失補償指示部２４及び無音生成指示部２６に送られる。
パケット損失補償処理は連続してＮフレーム（Ｎは０以上の整数）までしか行わせないため、補償継続可否信号生成部３４が設けられる。これよりの補償継続可否信号は損失補償指示部２４および、無音生成指示部２６へ送られる。
【００１７】
補償継続可否信号生成部３４は例えば、図３に示すように、ゼロにリセットされているｎカウンタ３４ｅが、パケット損失補償処理を１フレーム分行うように指示する毎に、１増加され、ｎカウンタ３４ｅの計数値ｎはレジスタ３４ｃの値Ｎと比較部３４ｄで比較され、その比較結果に応じて、計数値ｎがＮ未満であれば、補償継続可否信号を「１」とし、Ｎ以上であれば、補償継続可否信号を「０」として出力する。ｎカウンタは音声パケット復号指示部２２よりの復号指示信号により０にリセットされる。
あるいは、損失補償処理部８３がパケット損失補償処理の開始時のフレーム番号カウンタ８５のカウント値Ｆ１を記憶し、パケット損失補償処理を１フレーム分行うごとに、フレーム番号カウンタ８５のカウント値ＦｃからＦ１を減算して、その減算結果がＮ未満か否かの判定をしてもよい。
【００１８】
これらの構成は、いずれも連続的に行うパケット損失補償処理のフレームの数を計数しているから、損失補償処理カウンタともいう。
受信バッファ８１から音声パケット復号部８２が音声パケットを取り出せず、かつＤＴＸフラグの値が「０」であり、かつ損失補償処理の連続回数がＮ回未満であれば、つまり補償継続可否信号が「１」であれば、損失補償指示部２４は、損失補償指示を出し、損失補償処理部８３を作動させ、つまり、損失補償指示部２４は例えば、図中で示すように、ＡＮＤ回路３８で構成され、ＡＮＤ回路３８の出力が「１」となると、損失補償指示が発生する。
【００１９】
また、受信バッファ８１から音声パケット復号部８２が音声パケットを取り出せず、かつＤＴＸフラグの値が０であり、かつ損失補償処理の連続回数がＮ回以上であれば、つまり補償継続可否信号が「０」であれば、（条件１とする）、無音生成指示部２６が無音生成指示を無音生成部８７に出し、無音生成部８７を作動させる。また、受信バッファ８１から音声パケット復号部８２が音声パケットを取り出せず、かつＤＴＸフラグの値が１であれば、つまり送信側が無音区間は音声パケットを送信しなければ（条件２とする）、無音生成指示部２６が無音生成指示を無音生成部８７に出し、無音生成部８７を作動させる。つまり、無音生成指示部２６は、例えば、図中に示すように、条件１はＡＮＤ回路４０で検出され、条件２はＡＮＤ回路４２で検出され、ＡＮＤ回路４０、４２のいずれかの出力が「１」であれば、ＯＲ回路４６を通じて、無音生成指示部２６が無音生成指示を出力することになる。
【００２０】
制御部８４は、音声パケット復号指示部２２から復号指示が出力されると、図１中のスイッチ８９を切り替えて、音声パケット復号部８２の出力側を出力端子８８に接続し、損失補償指示部２４から、損失補償指示が出力されると、スイッチ８９を切り替え、損失補償処理部８３の出力側を出力端子８８に接続し、無音生成指示部４６から無音生成指示が出力されると、スイッチ８９を切り替えて、無音生成部８７の出力側を出力端子８８に接続する。
先にも述べたように、受信バッファ８１から音声パケット復号部８２が取り出した音声パケットのフレーム番号をフレーム番号カウンタ８５にカウント値として設定し、かつパケット損失補償処理を１フレーム分行うごとにフレーム番号カウンタ８５のカウント値を「１」増加させるが、無音信号を生成した場合は、フレーム番号カウンタ８５のカウント値の増加は行わせず、そのカウント値はそのままとする。
【００２１】
パケット受信部８０は音声パケットを受信したときに、例えば図４に示すように一旦受信パケットレジスタ８０ａに格納し、パケット受信部８０内において、その受信音声パケットのフレーム番号と、フレーム番号カウンタ８５のカウント値とを整合判定部８０ｂが比較し、受信音声パケットのフレーム番号がフレーム番号カウンタのカウント値以下であれば、当該パケットを受信バッファ５２で蓄積せずに、整合判定部８０ｂがパケット破棄部８０ｃを作動させ、受信音声パケットを破棄する。受信音声パケットのフレーム番号がフレーム番号カウンタのカウント値より大きければ、整合判定部８０ｂは、ゲート８０ｄを開き、ゲート８０ｄ通じて、当該受信音声パケットを受信バッファ８１に蓄積する。
【００２２】
このような受信パケットと既に受信したパケットとフレーム番号の整合性の処理は、受信音声パケットではなく、受信バッファ８１から取り出した音声パケットについて行ってもよい。この場合は、図４中に示すように、括弧内に示すように受信バッファ８１内にこのための機能構成が設けられる。受信バッファ８１から取り出した音声パケットは取り出しパケットレジスタ８１ａに格納され、その音声パケットの整合判定部８１ｂに入力し、フレーム番号カウンタ８５のカウント値との整合性が判定される。この場合は、取り出した音声パケットをパケット破棄部８１ｃでするか、ゲート８１ｄを通じて、音声パケット復号部８２へ送り、復号処理するかのいずれかになる。
【００２３】
またこの構成例はＤＴＸ検出部８６を設けた場合であるので、ＤＴＸ検出部８６を設けない場合は、ＤＴＸフラグレジスタ２８及び無音生成指示部２６内のＡＮＤ回路４２およびＯＲ回路４６は省略される。
［実施例３］
図５、図６を参照して、ＤＴＸ検出部８６を設けた場合のこの発明方法の実施例を説明する。音声パケットの受信バッファ８１への蓄積と、受信バッファ８１からの取り出しは非同期に作動する。図５は受信バッファへの蓄積作動の流れを示す。まずＤＴＸフラグレジスタ２８を０にリセットし（Ｓ２０１）、パケット受信部８０が音声パケットを受信すると（Ｓ２０３）、ＤＴＸ検出部８６がパケットヘッダを観測する（Ｓ２０５）。その結果、受信音声パケットがＤＴＸを利用しているか否かを判別し（Ｓ２０７）、ＤＴＸを利用していれば、ＤＴＸフラグレジスタ２８を１にセットし（Ｓ２０９）、ＤＴＸを利用していなければ、ＤＴＸフラグレジスタ２８をそのままにする。整合判定部８０ｂが、フレーム番号カウンタ８５のカウント値を参照して（Ｓ２１１）、受信音声パケットのフレーム番号と比較し（Ｓ２１３）、既に、再生されたフレームでなければ、つまり受信音声パケットのフレーム番号の方が大きければ、受信バッファ８１へ当該パケットを蓄積し（Ｓ２１５）、既に再生されたフレーム、つまり受信音声パケットのフレーム番号がフレーム番号カウンタ８５のカウント値以下であれば、パケット破棄部８０ｃにより、その受信音声パケットを破棄する（Ｓ２１７）。その後、通話終了したか否かを調べ、終了していなければ、ステップＳ２０３のパケットを受信するステップに戻り、通話終了であれば、受信バッファへの蓄積処理を終了する（Ｓ２１９）。
【００２４】
次に受信バッファ８１から音声パケットの取り出しとその後の処理の流れを図６参照して説明する。補償継続可否信号生成部３４内の損失補償処理カウンタを０にリセットし（Ｓ３０１）、音声パケット復号部８２が、受信バッファ８１から音声パケットを取り出す操作を行う（Ｓ３０３）。取り出せる音声パケットが受信バッファ８１にあるか否かを判別し（Ｓ３０５）、取り出せる音声パケットがあれば、フレーム番号最小の音声パケットを取り出す（Ｓ３０７）。その取り出した音声パケットを音声パケット復号部８２で復号し（Ｓ３０９）、フレーム番号カウンタ８５に復号した音声パケットのフレーム番号をカウント値として設定する（Ｓ３１１）。この復号した音声信号を出力端子８８に出力し、音声信号送信部も備えている場合は、復号音声信号をエコーキャンセラへも送る（Ｓ３１３）。次に、通話が終了か否かを判定し（Ｓ３１５）、通話が終了でなければ、ステップＳ３０３の受信バッファ８１から音声パケットを取り出すステップに戻る。
【００２５】
一方、ステップＳ３０５で、受信バッファ８１から取り出す音声パケットがない場合は、ＤＴＸフラグの値を判別し（Ｓ３１７）、もしＤＴＸフラグの値が「０」の場合、すなわち、ＤＴＸが利用されていなければ、パケット損失補償処理の連続回数がＮ回未満であるかどうかを判別する（Ｓ３１９）。もし、パケット損失補償処理の連続回数がＮ回未満であると、損失補償処理部８３を作動させ、１フレーム分の損失補償信号を生成し（Ｓ３２１）、かつフレーム番号カウンタ８５のカウント値を「１」増加させ（Ｓ３２３）、生成した補償信号を出力端子８８に出力する（Ｓ３１３）。またステップＳ３１７で、ＤＴＸフラグの値が１の場合、すなわち、ＤＴＸが利用されている場合は、無音生成部８７を作動させ（Ｓ３２５）、出力端子８８に無音信号を出力する（Ｓ３１３）。またステップＳ３１９で、パケット損失補償処理の連続回数がＮ回以上と判断されると、無音生成部８７を作動させて（Ｓ３２５）、出力端子８８に無音信号を出力する（Ｓ３１３）。ステップＳ３１５で通話終了と判定されると、以上述べた音声パケットの取り出し、これに伴う処理を終了する。
［実施例４］
次に、図５、７を参照して、受信音声パケットのフレーム番号の整合性を、受信バッファから取り出す際に行う実施例を説明する。この場合、音声パケットの受信バッファ８１への蓄積処理は図５中に破線で示すように、ステップＳ２１１、Ｓ２１３、Ｓ２１７が省略され、ステップＳ２０９からステップＳ２１５に直ちに移る。
【００２６】
一方、受信バッファ８１から音声パケットの取り出し処理は、図７に図６と対応するステップには、同一番号を示し、異なる部分では、音声パケット復号部８２が最小のフレーム番号の音声パケットを取り出した後は、フレーム番号カウンタ８５のカウント値を参照し（Ｓ６０１）、このカウント値と取り出した音声パケットのフレーム番号を比較し、後者の方が大きければ、再生済みでないと判断して（Ｓ６０３）、ステップＳ３０９に移り、取り出した音声パケットの復号処理を行う。ステップＳ６０３で取り出した音声パケットのフレーム番号がフレーム番号カウンタのカウント値以下であれば、再生済みと判断して、その取り出した音声パケットを破棄し（Ｓ６０５）、ステップＳ３１５に移る。
【００２７】
上述において、無音信号は完全な無音信号ではなく、受話者に影響を与えない小さな振幅の信号でもよい。
図１及び図２に示した装置をコンピュータにより機能させてもよい。この場合は、これら図１及び図２に示した装置として、コンピュータを機能させるためのプログラムを、ＣＤ−ＲＯＭ、磁気ディスク、など記録媒体に実装して、あるいは、通信回線を介して、コンピュータにダウンロードして、実現することも可能である。
この発明の構成により、ネットワークから音声パケットが到着せず、受信バッファが空の場合、損失補償処理を行い、再生音の劣化を防ぐ。しかし、損失補償処理を何秒も行うと、再生音の劣化などを招きやすくなるので、あらかじめ設定しておいたＮフレーム分、損失補償処理を行うと、無音信号を生成出力し、エコーキャンセラにその無音信号も入力されるため、エコーキャンセラを正しく作動させることができる。更に、ＤＴＸ検出部を設け、受信バッファが空になった現象が、ＤＴＸ機能を利用しているものなのか、想定以上のゆらぎによるものなのかを検出し、それに適した処理を行うことにより、音質を劣化させない効果を得ることができる。
【図面の簡単な説明】
【００２８】
【図１】この発明の実施例１の機能構成例を示すブロック図。
【図２】図１中の制御部８４の具体的機能構成例を示す図。
【図３】図２中の補償継続可否信号生成部３４の具体的構成例の各特性を表すブロック図。
【図４】受信パケット又は取出しパケットのフレーム番号とフレーム番号カウンタ８５の整合性を判定する機能構成を示すブロック図。
【図５】この発明の実施例３及び実施例４の受信バッファ８１への蓄積処理の例を示すフローチャート図。
【図６】この発明の実施例３の受信バッファ８１からの取り出し処理の例を示すフローチャート図。
【図７】この発明の実施例４の受信バッファ８１からの取り出し処理の例を示すフローチャート図。
【図８】従来技術の音声信号を音声パケットに変換してパケット通信網によって通信するシステム構成例を示すブロック図。
【図９】従来技術の音声信号受信部の構成例を示すブロック図。
【図１０】従来技術の図８のエコーキャンセラを備えた送受信装置の構成例を示すブロック図。
【図１】
0004510742.tif 000002
【図２】
0004510742.tif 000003
【図３】
0004510742.tif 000004
【図４】
0004510742.tif 000005
【図５】
0004510742.tif 000006
【図６】
0004510742.tif 000007
【図７】
0004510742.tif 000008
【図８】
0004510742.tif 000009
【図９】
0004510742.tif 000010
【図１０】
0004510742.tif 000011