JP2007108388A - Voice packet receiving and reproducing method, and device therefor and its program recording medium - Google Patents
Voice packet receiving and reproducing method, and device therefor and its program recording medium Download PDFInfo
- Publication number
- JP2007108388A JP2007108388A JP2005298691A JP2005298691A JP2007108388A JP 2007108388 A JP2007108388 A JP 2007108388A JP 2005298691 A JP2005298691 A JP 2005298691A JP 2005298691 A JP2005298691 A JP 2005298691A JP 2007108388 A JP2007108388 A JP 2007108388A
- Authority
- JP
- Japan
- Prior art keywords
- packet
- voice
- voice packet
- frame number
- signal
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
Description
この発明は、ディジタル化された音声信号、音楽信号などの音響信号(この出願書類においては、総称して音声信号)をインターネットをはじめとするパケット通信網を介して送信する際に、受信側において、安定した品質で、音声信号を再生するために用いる音声パケット受信再生方法及びその装置、そのプログラム記録媒体に関する。 In the present invention, when a digital audio signal, an audio signal such as a music signal (in this application document, the audio signal is generically) is transmitted through a packet communication network such as the Internet, the receiving side The present invention relates to an audio packet reception and reproduction method and apparatus used for reproducing an audio signal with stable quality, and a program recording medium thereof.
近年、音声信号をVoice over IP(VoIP)技術を利用して、より品質の高い音声信号を送受信する技術が望まれている。
図8は音声信号を音声パケットに変換してIP通信網をはじめとするパケット通信網によってリアルタイムで通信する構成例である。音声信号送信部70に入力された入力音声信号はフレームと呼ばれる一定の時間毎にフレーム分割部71で区切られ、音声符号化部72により、音声信号は符号化される。ここで、フレームの長さは、一般に10ミリ秒から20ミリ秒が用いられることが多い。符号化された音声信号は、音声パケット変換部73により、音声パケットに変換される。このように入力音声は音声信号送信部70内で、音声パケットに変換されて、IP通信網74に送信される。
In recent years, there has been a demand for a technology for transmitting and receiving a higher quality audio signal by using a Voice over IP (VoIP) technology.
FIG. 8 shows a configuration example in which voice signals are converted into voice packets and communicated in real time through a packet communication network such as an IP communication network. The input audio signal input to the audio
音声パケットには、フレームに区切った音声信号を音声符号化の手法によって変換した音声符号と、パケットの時間順序を示すタイムスタンプまたはフレーム番号が含まれている。代表的な音声符号化手法としては、ITU−T(国際電気通信連合)の標準であるG.711方式があるが、その他の任意の方式でも良い。タイムスタンプとフレーム番号は相互に変換可能であるため、以下タイムスタンプまたはフレーム番号を単にフレーム番号と呼ぶことにする。
IP通信網74よりの音声パケットは音声信号受信部75で受信され、音声信号受信部75に受信された音声パケットは、音声信号に変換されて出力される。
The voice packet includes a voice code obtained by converting a voice signal divided into frames by a voice coding method, and a time stamp or a frame number indicating the time order of the packet. As a typical speech coding method, G.I. which is a standard of ITU-T (International Telecommunication Union). There are 711 methods, but any other method may be used. Since the time stamp and the frame number can be converted to each other, the time stamp or the frame number is hereinafter simply referred to as a frame number.
Voice packets from the
図9に音声信号受信部75の具体的な構成例を示す。IP通信網からの音声パケットは、パケット受信部80によって受信され、更に、受信バッファ81に蓄積される。音声パケット復号部82は受信バッファ81から音声パケットを取り出し、音声信号に復号して、音声信号を切替スイッチ89を通じて、出力端子88に出力する。
ここで受信バッファ81は、ゆらぎ吸収バッファとも呼ばれ、IP通信網の状態によってパケットの到着時間にゆらぎが生じた時にゆらぎを吸収し、再生音声信号が途切れることを防止する。また通信網において、パケットロス(パケット損失)が発生した場合や、受信バッファ81のゆらぎ吸収量を超えるゆらぎが発生して、受信バッファ81が一時的に空になった場合には、音声パケット復号部82は受信バッファ81から復号すべき音声パケットを取り出すことができない。これらの場合、制御部84は、損失補償処理部(パケットロスコンシールメント部)83を作動させ、損失補償処理部83は補償音声信号を生成して切替スイッチ89を通じて、出力端子88に出力する。なお損失補償処理部83とは、パケットロスが発生した際に、再生音声の劣化が目立たないような音声信号を、既に受信した音声信号から、生成する方法で、代表的な方法として、ITU−T(国際電気通信連合)の標準として定められているG.711 Appendix I(ジードット711アペンディックスワン)または非特許文献1に示す方法が知られている。
FIG. 9 shows a specific configuration example of the audio
Here, the
切替スイッチ89は、音声パケット復号部82から、又は損失補償処理部83から、音声信号を出力するかに応じて、制御部84により、切替を行う。
図10は1つの装置内に、音声信号受信部91、音声信号送信部92、音声信号受信部91よりの音声信号を再生するスピーカ93、送話信号を受音するマイクロホン94、マイクロホン94に収音された音声信号から反響信号を抑圧して、音声信号送信部92へ送信するエコーキャンセラ95を備えた装置の構成例を示す。スピーカ93とマイクロホン94はそれぞれ、一般的な音響スピーカ、一般的なマイクロホンであり、音声信号受信部91と音声信号送信部92の両方を備えた、電話通信のように双方向に通話する装置の構成例である。また音声信号受信部91よりの受話音声信号(受話信号)x(k)はスピーカ93から再生放音され、この再生音声は反響経路96を通じて、マイクロホン94にも収音され、これが音響エコーとして送信される。そこで、スピーカ93へ供給される音声信号x(k)がエコーキャンセラ95にも入力され、エコーキャンセラ95内で擬似反響経路に通され、擬似音響エコーが生成され、これが、マイクロホン94よりの収音信号y(k)からエコーキャンセラ95内で差し引かれ、反響信号が抑圧された送話信号が、音声信号送信部92に入力される。
The changeover switch 89 is switched by the
FIG. 10 shows an audio
なお、エコーキャンセラ95内の擬似反響経路は真の反響経路の特性に、近づくように適応的に制御されている。このように、エコーキャンセラ95は受信信号x(k)と、収音信号y(k)とが正しく同期するように入力されて、正常に作動している。受信信号x(k)が入力されない状態が発生したり、同期がずれると、正常に作動しなくなる。すなわち、正しく反響抑圧されなくなる。
音声信号送信部92としては、入力音声信号が無音のとき、すなわち呼は接続されているが、送信側の話者が発声していない時に音声パケットを全く送らない送信方法もある。この方法を無音圧縮またはDiscontinuous Transmission(以下DTX)と呼び、パケット通信網の帯域を効率的に使用している方法として使われている。
The voice
この発明が解決しようとする課題を2点挙げる。
1つ目は、前記のようにパケットのゆらぎが受信バッファのゆらぎ吸収量よりも大きくなった場合に、受信バッファは一時的に空になる。この現象を防ぐために、受信バッファのゆらぎ吸収量を大きくする、すなわち受信バッファに蓄積するパケットの量を多くすることは可能であるが、受信バッファに蓄積するパケットの量を多くすると、パケットを受信してから音声信号が再生されるまでの遅延が大きくなり、双方向通話の場合には話しづらくなる。このため、ゆらぎが変動した際に受信バッファが一時的に空になる状態はある程度許容することが一般的である。
There are two problems to be solved by the present invention.
First, when the fluctuation of the packet becomes larger than the fluctuation absorption amount of the reception buffer as described above, the reception buffer is temporarily emptied. In order to prevent this phenomenon, it is possible to increase the amount of fluctuation absorbed in the reception buffer, that is, to increase the amount of packets stored in the reception buffer, but if the amount of packets stored in the reception buffer is increased, packets are received. After that, the delay until the audio signal is reproduced increases, and it becomes difficult to speak in the case of a two-way call. For this reason, it is common to tolerate a state in which the reception buffer is temporarily emptied when fluctuations fluctuate.
受信バッファが空になった場合は、前記のように、損失補償処理部が作動され、パケット損失補償処理を行う。しかし、この処理を、何秒も連続して適用すると、パケット到着再開時の受信バッファの状態が不安定になる問題である。つまり、一般に受信バッファに、蓄積する量があらかじめ定められた適当量になるように、プログラム制御していることがあるが、その場合、前述したように何秒も連続してパケット損失補償処理を行う状態になると、蓄積量を適量にする動作がうまく作動しなくなり、遅延が不適切になったり、それを回復する処理によって再生音が劣化する。またこのように長い間、パケット損失補償処理による再生音声は、音質が悪いものとなる。 When the reception buffer becomes empty, the loss compensation processing unit is operated as described above to perform packet loss compensation processing. However, if this process is applied continuously for many seconds, there is a problem that the state of the reception buffer becomes unstable when resuming packet arrival. In other words, in general, program control may be performed so that the amount stored in the reception buffer becomes a predetermined appropriate amount. In this case, as described above, packet loss compensation processing is continuously performed for many seconds. When it is in a state to perform, the operation for setting the accumulation amount to an appropriate amount does not work well, the delay becomes inappropriate, or the reproduced sound deteriorates due to the process of recovering it. In addition, for a long time, the sound reproduced by the packet loss compensation process has a poor sound quality.
2つ目は、前記の受信バッファが不安定になるという問題を防ぐため、損失補償処理を行わず、パケットが受信バッファに溜まるまで、音声パケットを復号する処理を停止することにすると、エコーキャンセラの作動に不具合が生じるという問題である。即ち、図10において、エコーキャンセラ95に入力される受話信号x(k)が停止すると、収音信号y(k)のみがエコーキャンセラ95に入力されることになり、エコーキャンセラ95が正しく動作せず、この場合は、送信音すなわち、相手側の再生音が劣化するという現象が生じる。
Second, in order to prevent the problem that the reception buffer becomes unstable, loss compensation processing is not performed, and the process of decoding voice packets is stopped until packets accumulate in the reception buffer. It is a problem that malfunction occurs in the operation. That is, in FIG. 10, when the reception signal x (k) input to the
フレームごとに、上記受信バッファから取り出す音声パケットがあるか否かを第1判定過程で判定し、音声パケットがないと判断された場合に、パケット損失補償処理を行うか、無音生成処理を行うか第2判定過程で判定し、音声パケットがないと判定された場合に、上記第2判定過程の判定に基づいて、パケット損失補償処理または無音生成処理のいずれかを行って信号を生成する。つまり音声パケットがないと判定される状態がNフレーム(Nは0以上の整数)連続するまでは、上記第2判定過程でパケット損失補償処理を行うと判定し、音声パケットがないと判定される状態がNフレーム(Nは0以上の整数)を超えて連続した場合は、上記第2判定過程で無音生成処理を行うと判定する。 Whether or not there is a voice packet to be extracted from the reception buffer for each frame is determined in the first determination process, and if it is determined that there is no voice packet, whether to perform packet loss compensation processing or silence generation processing When it is determined in the second determination process and it is determined that there is no voice packet, a signal is generated by performing either the packet loss compensation process or the silence generation process based on the determination in the second determination process. That is, until N frames (N is an integer equal to or greater than 0) continue to be determined that there is no voice packet, it is determined that the packet loss compensation process is performed in the second determination process, and it is determined that there is no voice packet. When the state continues beyond N frames (N is an integer of 0 or more), it is determined that the silence generation process is performed in the second determination process.
必要に応じて、受信される一連の音声パケットを観測して、受信した音声パケットが無音圧縮を利用したものであるか否かをDTX検出過程で推定し、無音圧縮を利用したものでないと、推定される場合には、N≧1とし、無音圧縮を利用したものであると、推定される場合には、N=0とする。
更に必要に応じて、上記受信バッファより音声パケットを取り出して復号するごとに、対応するフレーム番号をフレーム番号カウンタに記憶させ、上記パケット損失補償処理を1フレーム分行うごとに、上記フレーム番号カウンタの計数値を1増加させ、上記無音生成処理を行うごとに、上記フレーム番号カウンタの計数値は増加させないでそのまま維持し、上記第1判定過程で取り出す音声パケットがあると判定され、取り出された音声パケットのフレーム番号が上記フレーム番号カウンタが示すフレーム番号以下か否かをフレーム番号判定過程で判定し、その判定結果が以下であれば、上記受信した音声パケットを破棄し、上記判定結果が以下でなければ、上記取り出した音声パケットを復号して、音声信号を出力する。
If necessary, observe a series of received voice packets, estimate whether the received voice packets use silence compression in the DTX detection process, and if not use silence compression, If it is estimated, N ≧ 1, and if it is estimated that silence compression is used, N = 0.
If necessary, every time an audio packet is extracted from the reception buffer and decoded, the corresponding frame number is stored in the frame number counter, and each time the packet loss compensation process is performed for one frame, the frame number counter Every time the count value is incremented by 1 and the silence generation process is performed, the count value of the frame number counter is maintained as it is without being increased, and it is determined that there is an audio packet to be extracted in the first determination process. In the frame number determination process, it is determined whether or not the frame number of the packet is equal to or less than the frame number indicated by the frame number counter. If the determination result is the following, the received voice packet is discarded, and the determination result is If not, the extracted voice packet is decoded and a voice signal is output.
[実施例1]
図1にこの発明を実施するための最良な形態の音声パケット受信再生装置の機能構成例を示す。この図には図9と対応する部分に同じ符号を付け、重複説明を省略する。パケット受信部80は、IP通信網から音声パケットを受け取り、受信バッファ81へ送る。
受信バッファ81に音声パケットが蓄積されている時は、音声パケット復号部82は受信バッファ81内の音声パケットの中から、フレーム番号の最も小さいものを1つ(1フレーム分)取り出し、音声パケットに含まれる音声符号を復号すると同時に、取り出されたパケットのフレーム番号をフレーム番号カウンタ85にカウント値として設定する。復号された音声信号は出力端子88に送られ、出力される。
[Example 1]
FIG. 1 shows a functional configuration example of a voice packet reception / playback apparatus according to the best mode for carrying out the present invention. In this figure, parts corresponding to those in FIG. The
When the voice packet is stored in the
受信バッファ81が空で、音声パケット復号部82が受信バッファ81から音声パケットを取り出そうとした際に、取り出す音声パケットが蓄積されていない場合は、制御部84により、損失補償処理部83を作動させ、補償音声信号が出力端子88に送られ、出力される。パケット損失補償処理を1フレーム分行うごとに、フレーム番号カウンタ85のカウント値を「1」増加(「1」インクリメント)させる。パケット損失補償処理が終わると、再度受信バッファ81から音声パケットを取出せるか否かを調べる。取り出す音声パケットがなく損失補償処理部83を作動させることがN回連続的に行われ、その後も、受信バッファ81から取り出せる音声パケットがない場合は、無音生成部87を作動させ、無音信号を生成し、出力端子88に送られ、出力される。ただしNは0以上の整数とする。これにより、1つ目の課題を解決できる。また、出力端子88へ供給される信号はエコーキャンセラへも供給される。従って、エコーキャンセラには受信信号側からも常時、信号が入力されるため、エコーキャンセラを正しく動作させることができ、これにより、2つ目の課題を解決できる。
When the
なお、フレーム長が20ミリ秒の場合は、Nの値は2フレーム〜5フレームがよく、フレーム長が10ミリ秒の場合は、Nの値は4フレーム〜10フレームがよく、つまり、Nは40〜100ミリ秒に相当するフレーム数とするとよく、好ましくは、40〜60ミリ秒に相当するフレーム数とするとよいことが実験的に確認されている。なお、Nが小さすぎると直ぐ無音信号となり、音声として、好ましくなく、逆に、Nが大きすぎても、音声品質が劣化する。
[実施例2]
送信側でDTXを利用する場合に対するこの発明装置の実施例を説明する。
この場合は、図1中に一点鎖線枠で示されているDTX検出部86が設けられる。DTX検出部86は、パケット受信部80におけるパケット受信状態を監視して、送信側がDTXを利用して音声パケットを送っているか否かの推定を継続的に行う。DTXが利用されているかどうかは、例えば、パケットのヘッダ情報を参照することにより、推定可能である。
When the frame length is 20 milliseconds, the value of N is preferably 2 to 5 frames, and when the frame length is 10 milliseconds, the value of N is preferably 4 to 10 frames. It has been experimentally confirmed that the number of frames corresponds to 40 to 100 milliseconds, and preferably the number of frames corresponding to 40 to 60 milliseconds. Note that if N is too small, it becomes a silent signal immediately, which is not preferable as voice, and conversely, if N is too large, voice quality deteriorates.
[Example 2]
An embodiment of the inventive device for the case of using DTX on the transmission side will be described.
In this case, a
DTXを利用して送信側が音声パケットを送信している場合、受信側の受信バッファ81内が空になり、音声パケット復号部82が音声パケットを取り出せない場合、それが想定したゆらぎよりも大きなゆらぎによる場合なのか、DTXを利用している場合なのかの判断がその時点ではできない。もしDTXの利用により、発生した受信バッファ81内が空になる現象をパケットロスと見なして(間違った判断をして)、損失補償処理を行うと、再生音が劣化する。
そこで、受信バッファ81内が空になった場合、送信側がDTXを利用していなかったら、前述したように、パケット損失補償処理、更に必要に応じて無音信号生成を行い、受信パケットがDTXを利用していた場合は直ちに無音信号の生成を行う。
制御部の具体例
次に、図1中の制御部84の具体的機能の構成例を図2に示す。音声パケット復号部82が受信バッファ81から取り出せる音声パケットがあるか否かの信号が受信バッファ81内の音声パケット蓄積状態からパケット取出し可否信号生成部20で生成される。パケット取出し可否信号生成部20は、取り出せる音声パケットがあれば図2では、「1」を出力し、取り出せる音声パケットがなければ、「0」を出力する。パケット取り出し可否信号は音声パケット復号指示部22、損失補償指示部24、無音生成指示部26へそれぞれ送られる。パケット取り出し可否信号が「1」であれば、音声パケット復号指示部22は、音声パケット復号部82に復号処理を指示する。
When the transmission side is transmitting voice packets using DTX, the
Therefore, when the
Specific Example of Control Unit Next, a configuration example of specific functions of the
DTX検出部86からの検出信号はDTXフラグレジスタ28に送られる。この例では、DTXフラグレジスタ28内のDTXフラグを、DTXを利用している場合は「1」に、DTXを利用していない場合はDTXフラグを「0」に設定する。DTXフラグ信号は、損失補償指示部24及び無音生成指示部26に送られる。
パケット損失補償処理は連続してNフレーム(Nは0以上の整数)までしか行わせないため、補償継続可否信号生成部34が設けられる。これよりの補償継続可否信号は損失補償指示部24および、無音生成指示部26へ送られる。
A detection signal from the
Since the packet loss compensation processing can be performed continuously up to N frames (N is an integer of 0 or more), a compensation continuation enable / disable
補償継続可否信号生成部34は例えば、図3に示すように、ゼロにリセットされているnカウンタ34eが、パケット損失補償処理を1フレーム分行うように指示する毎に、1増加され、nカウンタ34eの計数値nはレジスタ34cの値Nと比較部34dで比較され、その比較結果に応じて、計数値nがN未満であれば、補償継続可否信号を「1」とし、N以上であれば、補償継続可否信号を「0」として出力する。nカウンタは音声パケット復号指示部22よりの復号指示信号により0にリセットされる。
あるいは、損失補償処理部83がパケット損失補償処理の開始時のフレーム番号カウンタ85のカウント値F1を記憶し、パケット損失補償処理を1フレーム分行うごとに、フレーム番号カウンタ85のカウント値FcからF1を減算して、その減算結果がN未満か否かの判定をしてもよい。
For example, as shown in FIG. 3, the compensation continuation enable / disable
Alternatively, the loss
これらの構成は、いずれも連続的に行うパケット損失補償処理のフレームの数を計数しているから、損失補償処理カウンタともいう。
受信バッファ81から音声パケット復号部82が音声パケットを取り出せず、かつDTXフラグの値が「0」であり、かつ損失補償処理の連続回数がN回未満であれば、つまり補償継続可否信号が「1」であれば、損失補償指示部24は、損失補償指示を出し、損失補償処理部83を作動させ、つまり、損失補償指示部24は例えば、図中で示すように、AND回路38で構成され、AND回路38の出力が「1」となると、損失補償指示が発生する。
These configurations are also referred to as loss compensation processing counters because they count the number of frames of packet loss compensation processing that are continuously performed.
If the voice
また、受信バッファ81から音声パケット復号部82が音声パケットを取り出せず、かつDTXフラグの値が0であり、かつ損失補償処理の連続回数がN回以上であれば、つまり補償継続可否信号が「0」であれば、(条件1とする)、無音生成指示部26が無音生成指示を無音生成部87に出し、無音生成部87を作動させる。また、受信バッファ81から音声パケット復号部82が音声パケットを取り出せず、かつDTXフラグの値が1であれば、つまり送信側が無音区間は音声パケットを送信しなければ(条件2とする)、無音生成指示部26が無音生成指示を無音生成部87に出し、無音生成部87を作動させる。つまり、無音生成指示部26は、例えば、図中に示すように、条件1はAND回路40で検出され、条件2はAND回路42で検出され、AND回路40、42のいずれかの出力が「1」であれば、OR回路46を通じて、無音生成指示部26が無音生成指示を出力することになる。
Further, if the voice
制御部84は、音声パケット復号指示部22から復号指示が出力されると、図1中のスイッチ89を切り替えて、音声パケット復号部82の出力側を出力端子88に接続し、損失補償指示部24から、損失補償指示が出力されると、スイッチ89を切り替え、損失補償処理部83の出力側を出力端子88に接続し、無音生成指示部46から無音生成指示が出力されると、スイッチ89を切り替えて、無音生成部87の出力側を出力端子88に接続する。
先にも述べたように、受信バッファ81から音声パケット復号部82が取り出した音声パケットのフレーム番号をフレーム番号カウンタ85にカウント値として設定し、かつパケット損失補償処理を1フレーム分行うごとにフレーム番号カウンタ85のカウント値を「1」増加させるが、無音信号を生成した場合は、フレーム番号カウンタ85のカウント値の増加は行わせず、そのカウント値はそのままとする。
When the decoding instruction is output from the voice packet
As described above, the frame number of the voice packet taken out by the voice
パケット受信部80は音声パケットを受信したときに、例えば図4に示すように一旦受信パケットレジスタ80aに格納し、パケット受信部80内において、その受信音声パケットのフレーム番号と、フレーム番号カウンタ85のカウント値とを整合判定部80bが比較し、受信音声パケットのフレーム番号がフレーム番号カウンタのカウント値以下であれば、当該パケットを受信バッファ52で蓄積せずに、整合判定部80bがパケット破棄部80cを作動させ、受信音声パケットを破棄する。受信音声パケットのフレーム番号がフレーム番号カウンタのカウント値より大きければ、整合判定部80bは、ゲート80dを開き、ゲート80d通じて、当該受信音声パケットを受信バッファ81に蓄積する。
When receiving a voice packet, the
このような受信パケットと既に受信したパケットとフレーム番号の整合性の処理は、受信音声パケットではなく、受信バッファ81から取り出した音声パケットについて行ってもよい。この場合は、図4中に示すように、括弧内に示すように受信バッファ81内にこのための機能構成が設けられる。受信バッファ81から取り出した音声パケットは取り出しパケットレジスタ81aに格納され、その音声パケットの整合判定部81bに入力し、フレーム番号カウンタ85のカウント値との整合性が判定される。この場合は、取り出した音声パケットをパケット破棄部81cでするか、ゲート81dを通じて、音声パケット復号部82へ送り、復号処理するかのいずれかになる。
Such a process of consistency between the received packet and the already received packet and the frame number may be performed not on the received voice packet but on the voice packet extracted from the
またこの構成例はDTX検出部86を設けた場合であるので、DTX検出部86を設けない場合は、DTXフラグレジスタ28及び無音生成指示部26内のAND回路42およびOR回路46は省略される。
[実施例3]
図5、図6を参照して、DTX検出部86を設けた場合のこの発明方法の実施例を説明する。音声パケットの受信バッファ81への蓄積と、受信バッファ81からの取り出しは非同期に作動する。図5は受信バッファへの蓄積作動の流れを示す。まずDTXフラグレジスタ28を0にリセットし(S201)、パケット受信部80が音声パケットを受信すると(S203)、DTX検出部86がパケットヘッダを観測する(S205)。その結果、受信音声パケットがDTXを利用しているか否かを判別し(S207)、DTXを利用していれば、DTXフラグレジスタ28を1にセットし(S209)、DTXを利用していなければ、DTXフラグレジスタ28をそのままにする。整合判定部80bが、フレーム番号カウンタ85のカウント値を参照して(S211)、受信音声パケットのフレーム番号と比較し(S213)、既に、再生されたフレームでなければ、つまり受信音声パケットのフレーム番号の方が大きければ、受信バッファ81へ当該パケットを蓄積し(S215)、既に再生されたフレーム、つまり受信音声パケットのフレーム番号がフレーム番号カウンタ85のカウント値以下であれば、パケット破棄部80cにより、その受信音声パケットを破棄する(S217)。その後、通話終了したか否かを調べ、終了していなければ、ステップS203のパケットを受信するステップに戻り、通話終了であれば、受信バッファへの蓄積処理を終了する(S219)。
Since this configuration example is provided with the
[Example 3]
With reference to FIG. 5 and FIG. 6, an embodiment of the method of the present invention in the case where the
次に受信バッファ81から音声パケットの取り出しとその後の処理の流れを図6参照して説明する。補償継続可否信号生成部34内の損失補償処理カウンタを0にリセットし(S301)、音声パケット復号部82が、受信バッファ81から音声パケットを取り出す操作を行う(S303)。取り出せる音声パケットが受信バッファ81にあるか否かを判別し(S305)、取り出せる音声パケットがあれば、フレーム番号最小の音声パケットを取り出す(S307)。その取り出した音声パケットを音声パケット復号部82で復号し(S309)、フレーム番号カウンタ85に復号した音声パケットのフレーム番号をカウント値として設定する(S311)。この復号した音声信号を出力端子88に出力し、音声信号送信部も備えている場合は、復号音声信号をエコーキャンセラへも送る(S313)。次に、通話が終了か否かを判定し(S315)、通話が終了でなければ、ステップS303の受信バッファ81から音声パケットを取り出すステップに戻る。
Next, the extraction of voice packets from the
一方、ステップS305で、受信バッファ81から取り出す音声パケットがない場合は、DTXフラグの値を判別し(S317)、もしDTXフラグの値が「0」の場合、すなわち、DTXが利用されていなければ、パケット損失補償処理の連続回数がN回未満であるかどうかを判別する(S319)。もし、パケット損失補償処理の連続回数がN回未満であると、損失補償処理部83を作動させ、1フレーム分の損失補償信号を生成し(S321)、かつフレーム番号カウンタ85のカウント値を「1」増加させ(S323)、生成した補償信号を出力端子88に出力する(S313)。またステップS317で、DTXフラグの値が1の場合、すなわち、DTXが利用されている場合は、無音生成部87を作動させ(S325)、出力端子88に無音信号を出力する(S313)。またステップS319で、パケット損失補償処理の連続回数がN回以上と判断されると、無音生成部87を作動させて(S325)、出力端子88に無音信号を出力する(S313)。ステップS315で通話終了と判定されると、以上述べた音声パケットの取り出し、これに伴う処理を終了する。
[実施例4]
次に、図5、7を参照して、受信音声パケットのフレーム番号の整合性を、受信バッファから取り出す際に行う実施例を説明する。この場合、音声パケットの受信バッファ81への蓄積処理は図5中に破線で示すように、ステップS211、S213、S217が省略され、ステップS209からステップS215に直ちに移る。
On the other hand, if there is no voice packet to be extracted from the
[Example 4]
Next, with reference to FIGS. 5 and 7, an embodiment will be described which is performed when the consistency of the frame number of the received voice packet is taken out from the reception buffer. In this case, the process of accumulating voice packets in the
一方、受信バッファ81から音声パケットの取り出し処理は、図7に図6と対応するステップには、同一番号を示し、異なる部分では、音声パケット復号部82が最小のフレーム番号の音声パケットを取り出した後は、フレーム番号カウンタ85のカウント値を参照し(S601)、このカウント値と取り出した音声パケットのフレーム番号を比較し、後者の方が大きければ、再生済みでないと判断して(S603)、ステップS309に移り、取り出した音声パケットの復号処理を行う。ステップS603で取り出した音声パケットのフレーム番号がフレーム番号カウンタのカウント値以下であれば、再生済みと判断して、その取り出した音声パケットを破棄し(S605)、ステップS315に移る。
On the other hand, in the process of extracting the voice packet from the
上述において、無音信号は完全な無音信号ではなく、受話者に影響を与えない小さな振幅の信号でもよい。
図1及び図2に示した装置をコンピュータにより機能させてもよい。この場合は、これら図1及び図2に示した装置として、コンピュータを機能させるためのプログラムを、CD−ROM、磁気ディスク、など記録媒体に実装して、あるいは、通信回線を介して、コンピュータにダウンロードして、実現することも可能である。
この発明の構成により、ネットワークから音声パケットが到着せず、受信バッファが空の場合、損失補償処理を行い、再生音の劣化を防ぐ。しかし、損失補償処理を何秒も行うと、再生音の劣化などを招きやすくなるので、あらかじめ設定しておいたNフレーム分、損失補償処理を行うと、無音信号を生成出力し、エコーキャンセラにその無音信号も入力されるため、エコーキャンセラを正しく作動させることができる。更に、DTX検出部を設け、受信バッファが空になった現象が、DTX機能を利用しているものなのか、想定以上のゆらぎによるものなのかを検出し、それに適した処理を行うことにより、音質を劣化させない効果を得ることができる。
In the above description, the silence signal is not a complete silence signal, and may be a small amplitude signal that does not affect the receiver.
The apparatus shown in FIGS. 1 and 2 may be operated by a computer. In this case, a program for causing the computer to function as the apparatus shown in FIGS. 1 and 2 is mounted on a recording medium such as a CD-ROM, a magnetic disk, or the computer via a communication line. It can also be downloaded and realized.
With the configuration of the present invention, when a voice packet does not arrive from the network and the reception buffer is empty, loss compensation processing is performed to prevent deterioration of reproduced sound. However, if the loss compensation process is performed for many seconds, it will be easy to cause deterioration of the reproduced sound. Therefore, if the loss compensation process is performed for N frames set in advance, a silence signal is generated and output to the echo canceller Since the silent signal is also input, the echo canceller can be operated correctly. Furthermore, by providing a DTX detector, detecting whether the phenomenon that the reception buffer is emptied is due to the use of the DTX function or due to fluctuations more than expected, and performing processing suitable for it, An effect that does not deteriorate the sound quality can be obtained.
Claims (7)
フレームごとに、上記受信バッファから取り出す音声パケットがあるか否かを判定する第1判定過程と、
上記第1判定過程において、音声パケットがないと判断された場合に、パケット損失補償処理を行うか、無音生成処理を行うか判定する第2判定過程と、
上記第1判定過程において、音声パケットがないと判定された場合に、上記第2判定過程の判定に基づいて、パケット損失補償処理または無音生成処理のいずれかを行って信号を生成し、出力する過程とを有し、
上記第1判定過程において、音声パケットがないと判定される状態がNフレーム(Nは0以上の整数)連続するまでは、上記第2判定過程において、パケット損失補償処理を行う判定を行い、
上記第1判定過程において、音声パケットがないと判定される状態がNフレーム(Nは0以上の整数)を超えて連続した場合は、上記第2判定過程において無音生成処理を行う判定を行う
ことを特徴とする音声パケット受信再生方法。 In the audio packet receiving and reproducing method for accumulating received audio packets in a reception buffer, sequentially extracting audio packets from the reception buffer in order of frame number, decoding the extracted audio packets, and outputting an audio signal.
A first determination step for determining whether there is an audio packet to be extracted from the reception buffer for each frame;
A second determination process for determining whether to perform a packet loss compensation process or a silence generation process when it is determined in the first determination process that there is no voice packet;
When it is determined in the first determination process that there is no voice packet, a signal is generated by performing either the packet loss compensation process or the silence generation process based on the determination in the second determination process, and is output. And having a process
In the first determination process, until the state where it is determined that there is no voice packet continues for N frames (N is an integer of 0 or more), in the second determination process, a determination is made to perform packet loss compensation processing,
In the first determination process, when the state where it is determined that there is no voice packet continues beyond N frames (N is an integer of 0 or more), a determination is made to perform silence generation processing in the second determination process. A voice packet receiving and reproducing method characterized by the above.
受信される一連の音声パケットを観測して、受信した音声パケットが無音圧縮を利用したものであるか否かを推定するDTX検出過程を有し、
上記DTX検出過程において、無音圧縮を利用したものでないと、推定される場合には、N≧1とし、
上記DTX検出過程において、無音圧縮を利用したものであると、推定される場合には、N=0とする
ことを特徴とする音声パケット受信再生方法。 The method of claim 1, wherein
Having a DTX detection process of observing a series of received voice packets and estimating whether the received voice packets utilize silence compression;
In the above DTX detection process, if it is estimated that silence compression is not used, N ≧ 1,
In the DTX detection process, if it is estimated that silence compression is used, N = 0 is set.
上記受信バッファより音声パケットを取り出して復号するごとに、対応するフレーム番号をフレーム番号カウンタに記憶させる過程と、
上記パケット損失補償処理を1フレーム分行うごとに、上記フレーム番号カウンタの計数値を1増加させる過程と、
上記無音生成処理を行うごとに、上記フレーム番号カウンタの計数値は増加させないでそのまま維持する過程と、
上記第1判定過程で取り出す音声パケットがあると判定され、取り出された音声パケットのフレーム番号が上記フレーム番号カウンタが示すフレーム番号以下か否かを判定するフレーム番号判定過程と、
上記フレーム番号判定過程の判定結果が以下であれば、上記受信した音声パケットを破棄し、上記判定結果が以下でなければ、上記取り出した音声パケットを復号して、音声信号を出力する過程とを有する
ことを特徴とする音声パケット受信再生方法。 The method according to claim 1 or 2, wherein
Each time a voice packet is extracted from the reception buffer and decoded, a corresponding frame number is stored in a frame number counter;
Each time the packet loss compensation process is performed for one frame, the count value of the frame number counter is incremented by 1,
Each time the silence generation process is performed, the process of maintaining the count value of the frame number counter without increasing it,
It is determined that there is a voice packet to be extracted in the first determination process, and a frame number determination process for determining whether or not the frame number of the extracted voice packet is equal to or less than the frame number indicated by the frame number counter;
If the determination result of the frame number determination process is the following, the received voice packet is discarded, and if the determination result is not the following, the extracted voice packet is decoded and an audio signal is output. A method for receiving and reproducing voice packets, comprising:
上記DTX検出過程において、無音圧縮を利用したものではないと推定される場合には、上記Nを40〜100ミリ秒に相当するフレーム数とする
ことを特徴とする音声パケット受信再生方法。 The method according to claim 2 or 3,
In the DTX detection process, when it is estimated that silence compression is not used, the N is set to the number of frames corresponding to 40 to 100 milliseconds.
フレームごとに上記受信バッファから取り出す音声パケットがあるか否かを示すパケット取出し可否信号を生成するパケット取出し可否信号生成部と、
上記パケット取出し可否信号生成部よりのパケット取出し可否信号が入力され、パケット取出し可否信号が取出し不可を示すことが、Nフレーム(Nは0以上の整数)連続したか否かを示す補償継続可否信号を生成する補償継続可否信号生成部と、
フレームごとに、上記パケット取出し可否信号と上記補償継続可否信号とが入力され、上記パケット取出し可否信号が取出し不可であり、上記補償継続可否信号が補償継続可であれば、パケット損失補償処理を1フレーム分実行して、音声信号を生成し、その音声信号を上記出力端子に出力すると共に上記フレーム番号カウンタの計数値を1増加させる損失補償部と、
フレームごとに、上記パケット取出し可否信号と上記補償継続可否信号とが入力され、上記パケット取出し可否信号が取出し不可であり、上記補償継続可否信号が補償継続不可であれば、無音信号を生成して、上記出力端子に出力するが、上記フレーム番号カウンタの計数値の増加は行わない無音生成部とを具備することを特徴とする音声パケット受信再生装置。 The received voice packets are stored in the reception buffer, and the voice packets are sequentially extracted from the reception buffer in the order of the frame numbers. The extracted voice packets are decoded by the decoding unit, and the voice signal is output to the output terminal. In the voice packet receiving / reproducing apparatus for storing the frame number in the frame number counter,
A packet extraction enable / disable signal generator for generating a packet extraction enable / disable signal indicating whether or not there is a voice packet to be extracted from the reception buffer for each frame;
Compensation continuation enable / disable signal indicating whether or not the packet takeout enable / disable signal from the packet takeout enable / disable signal generation unit is input and that the packet takeout enable / disable signal indicates that it is impossible to take out continues for N frames (N is an integer of 0 or more). A compensation continuation enable / disable signal generator for generating
For each frame, the packet extraction enable / disable signal and the compensation continuation enable / disable signal are input. If the packet extraction enable / disable signal cannot be extracted, and the compensation continuation enable / disable signal can continue to be compensated, a packet loss compensation process is performed. A loss compensator that executes the frame, generates an audio signal, outputs the audio signal to the output terminal, and increases the count value of the frame number counter by 1;
For each frame, the packet extraction enable / disable signal and the compensation continuation enable / disable signal are input. If the packet extraction enable / disable signal cannot be extracted and the compensation continuation enable / disable signal cannot be compensated, a silence signal is generated. A voice packet receiving / reproducing apparatus comprising: a silence generation unit that outputs to the output terminal but does not increase the count value of the frame number counter.
上記受信した音声パケットが入力され、送信側が無音圧縮を利用しているか否かを検出するDTX検出部と、
上記DTX検出部の検出出力が入力され、その検出出力が、無音圧縮を利用していないことを表せば、上記Nを0に設定し、利用していることを表せば、上記Nを1以上に設定する手段とを備えることを特徴とする音声パケット受信再生装置。 The apparatus of claim 6.
A DTX detector that receives the received voice packet and detects whether the transmission side uses silence compression;
If the detection output of the DTX detection unit is input and the detection output indicates that silence compression is not used, the N is set to 0, and if the detection output indicates that the NTX is used, the N is 1 or more. A voice packet receiving / reproducing apparatus, comprising:
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005298691A JP4510742B2 (en) | 2005-10-13 | 2005-10-13 | Voice packet receiving and reproducing method and apparatus, and program recording medium therefor |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005298691A JP4510742B2 (en) | 2005-10-13 | 2005-10-13 | Voice packet receiving and reproducing method and apparatus, and program recording medium therefor |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2007108388A true JP2007108388A (en) | 2007-04-26 |
JP4510742B2 JP4510742B2 (en) | 2010-07-28 |
Family
ID=38034297
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005298691A Active JP4510742B2 (en) | 2005-10-13 | 2005-10-13 | Voice packet receiving and reproducing method and apparatus, and program recording medium therefor |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4510742B2 (en) |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01296739A (en) * | 1988-05-25 | 1989-11-30 | Hitachi Ltd | Voice packet transmission control system |
JP2002542521A (en) * | 1999-04-19 | 2002-12-10 | エイ・ティ・アンド・ティ・コーポレーション | Method and apparatus for performing packet loss or frame erasure concealment |
JP2003218957A (en) * | 2002-01-28 | 2003-07-31 | Matsushita Electric Ind Co Ltd | Reception apparatus and reception method |
-
2005
- 2005-10-13 JP JP2005298691A patent/JP4510742B2/en active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH01296739A (en) * | 1988-05-25 | 1989-11-30 | Hitachi Ltd | Voice packet transmission control system |
JP2002542521A (en) * | 1999-04-19 | 2002-12-10 | エイ・ティ・アンド・ティ・コーポレーション | Method and apparatus for performing packet loss or frame erasure concealment |
JP2003218957A (en) * | 2002-01-28 | 2003-07-31 | Matsushita Electric Ind Co Ltd | Reception apparatus and reception method |
Also Published As
Publication number | Publication date |
---|---|
JP4510742B2 (en) | 2010-07-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7539615B2 (en) | Audio signal quality enhancement in a digital network | |
JP4473869B2 (en) | Acoustic signal packet communication method, transmission method, reception method, apparatus and program thereof | |
CN103748865B (en) | Utilize the clock deskew of the acoustic echo arrester of not audible tone | |
WO2012141486A2 (en) | Frame erasure concealment for a multi-rate speech and audio codec | |
US20070206645A1 (en) | Method of dynamically adapting the size of a jitter buffer | |
EP2130203B1 (en) | Method of transmitting data in a communication system | |
Milner et al. | Robust speech recognition over IP networks | |
US20100325302A1 (en) | Generic on-chip homing and resident, real-time bit exact tests | |
WO2007143953A1 (en) | Device and method for lost frame concealment | |
JP2006238445A (en) | Method and apparatus for handling network jitter in voice-over ip communication network using virtual jitter buffer and time scale modification | |
WO2009088431A1 (en) | Method and apparatus for detecting and suppressing echo in packet networks | |
CN108076239B (en) | Method for improving IP telephone echo | |
Ogunfunmi et al. | Speech over VoIP networks: Advanced signal processing and system implementation | |
JP3566931B2 (en) | Method and apparatus for assembling packet of audio signal code string and packet disassembly method and apparatus, program for executing these methods, and recording medium for recording program | |
JP2006033789A (en) | Method, device, and program for estimating amount of echo path coupling; method, device, and program for controlling echoes; method for suppressing echoes; echo suppressor; echo suppressor program; method and device for controlling amount of losses on transmission lines; program for controlling losses on transmission lines; method, device, and program for suppressing multichannel echoes; and recording medium | |
JP4510742B2 (en) | Voice packet receiving and reproducing method and apparatus, and program recording medium therefor | |
KR100594599B1 (en) | Apparatus and method for restoring packet loss based on receiving part | |
JP4403103B2 (en) | Voice signal packet communication method, multipoint mixing method, and system and apparatus using them | |
JP4093174B2 (en) | Receiving apparatus and method | |
JP2008139661A (en) | Speech signal receiving device, speech packet loss compensating method used therefor, program implementing the method, and recording medium with the recorded program | |
JP4597360B2 (en) | Speech decoding apparatus and speech decoding method | |
KR20050024651A (en) | Method and apparatus for frame loss concealment for packet network | |
JP2005142757A (en) | Receiving apparatus and method | |
JP3460783B2 (en) | Voice switch for talker | |
TWI394398B (en) | Apparatus and method for transmitting a sequence of data packets and decoder and apparatus for decoding a sequence of data packets |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20070607 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20100129 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20100202 |
|
A521 | Request for written amendment filed |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20100330 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20100420 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20100430 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130514 Year of fee payment: 3 |
|
R150 | Certificate of patent or registration of utility model |
Ref document number: 4510742 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20140514 Year of fee payment: 4 |
|
S531 | Written request for registration of change of domicile |
Free format text: JAPANESE INTERMEDIATE CODE: R313531 |
|
R350 | Written notification of registration of transfer |
Free format text: JAPANESE INTERMEDIATE CODE: R350 |