JP4299731B2 - Reception device and reception reproduction method - Google Patents

Reception device and reception reproduction method Download PDF

Info

Publication number
JP4299731B2
JP4299731B2 JP2004157243A JP2004157243A JP4299731B2 JP 4299731 B2 JP4299731 B2 JP 4299731B2 JP 2004157243 A JP2004157243 A JP 2004157243A JP 2004157243 A JP2004157243 A JP 2004157243A JP 4299731 B2 JP4299731 B2 JP 4299731B2
Authority
JP
Japan
Prior art keywords
reception
packet
packets
receiving
sampling frequency
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.)
Active
Application number
JP2004157243A
Other languages
Japanese (ja)
Other versions
JP2005341203A (en
Inventor
友史 苅谷
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toa Corp
Original Assignee
Toa Corp
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Toa Corp filed Critical Toa Corp
Priority to JP2004157243A priority Critical patent/JP4299731B2/en
Publication of JP2005341203A publication Critical patent/JP2005341203A/en
Application granted granted Critical
Publication of JP4299731B2 publication Critical patent/JP4299731B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Description

本発明は、例えばビルの構内放送設備などに用いられるディジタルデータ通信システムに関する。   The present invention relates to a digital data communication system used, for example, in a building broadcasting facility.

LANなどのネットワーク上でのディジタルデータ通信システムでは、テキストや静止画像だけでなく、音声や動画像などのデータをパケット化して通信を行う。ディジタル通信及び再生方式の1つに、データの最後までの受信を待たずに再生する「ストリーミング再生方式」がある。ストリーミング再生方式では、音声や動画像をリアルタイムに伝送する方式であり、送信装置及び受信装置にそれぞれ送信バッファ及び受信バッファが設けられる。この方式における送信装置及び受信装置の処理は、次のようになる。   In a digital data communication system on a network such as a LAN, communication is performed by packetizing not only text and still images but also data such as voice and moving images. One of the digital communication and reproduction methods is a “streaming reproduction method” in which reproduction is performed without waiting for reception until the end of data. The streaming reproduction method is a method for transmitting audio and moving images in real time, and a transmission buffer and a reception buffer are provided in the transmission device and the reception device, respectively. The processing of the transmitting device and the receiving device in this method is as follows.

例えば音声通信の場合、送信装置に入力されたアナログ音声信号は、アナログ/ディジタル変換器(ADC)によりディジタル音声データに変換され、送信バッファに蓄積される。受信装置は、パケットを受信して分解し、ディジタル音声データを受信バッファに蓄積する。受信バッファのデータ蓄積量が一定以上になると、ディジタル音声データが受信バッファから読み出され、ディジタル/アナログ変換器(DAC)でアナログ音声データに変換され、出力される。   For example, in the case of voice communication, an analog voice signal input to a transmission device is converted into digital voice data by an analog / digital converter (ADC) and stored in a transmission buffer. The receiving device receives and disassembles the packet, and stores the digital audio data in the receiving buffer. When the amount of data stored in the reception buffer exceeds a certain level, the digital audio data is read from the reception buffer, converted into analog audio data by a digital / analog converter (DAC), and output.

この通信システムにおける音声や動画像の通信では、以下の2つのことが要求される。
1.受信装置は、連続したデータのパケットを、送信装置におけるパケットの送信間隔と同じ時間間隔で受信すること。
2.送信装置におけるサンプリング周波数(以下、送信側サンプリング周波数)fsと受信装置におけるサンプリング周波数(以下、受信側サンプリング周波数)frとが一致すること。
In the communication of voice and moving images in this communication system, the following two things are required.
1. The receiving device receives continuous data packets at the same time interval as the packet transmission interval in the transmitting device.
2. The sampling frequency (hereinafter referred to as “transmission-side sampling frequency”) fs in the transmission device and the sampling frequency (hereinafter referred to as “reception-side sampling frequency”) fr in the reception device must match.

しかし、ネットワークのトラフィックの状況によっては、パケットの伝送時間に揺らぎが生じる、衝突によりパケットが欠落したり順番通り到着しない、などの不具合が生じる。また、送信装置と受信装置とでは、別々の内部クロックに基づくサンプリング周波数を用いるため、送信側サンプリング周波数fsと受信側サンプリング周波数frとに誤差が生じる。よって、同一時間当たりに送信されるパケットに含まれるデータ量と再生されるデータ量とにずれが生じる。そのため、再生中に受信バッファのデータ蓄積量がゼロになってしまい、再生が停止するアンダーフローが発生する場合がある。アンダーフローが生じると音切れが生じ、音声品質が劣化してしまう。逆に、受信したパケットを受信バッファに吸収しきれないオーバーフローが発生する場合もある。オーバーフローが生じると、受信したパケットは破棄されるため、音声データが不連続となりノイズの発生を招く。   However, depending on the network traffic conditions, there are problems such as fluctuations in packet transmission time, packet loss due to collision, and failure to arrive in order. Further, since the transmission device and the reception device use sampling frequencies based on different internal clocks, an error occurs between the transmission-side sampling frequency fs and the reception-side sampling frequency fr. Therefore, there is a difference between the amount of data included in packets transmitted per same time and the amount of data to be reproduced. For this reason, the amount of data stored in the reception buffer becomes zero during reproduction, which may cause an underflow that stops reproduction. When an underflow occurs, the sound is cut off and the sound quality is deteriorated. Conversely, an overflow may occur in which the received packet cannot be absorbed by the reception buffer. When the overflow occurs, the received packet is discarded, so that the voice data becomes discontinuous and causes noise.

そこで、音声などのデータの品質を高めるために、受信装置におけるサンプリング周波数を補正する補正手段を有する受信装置が特許文献1に記載されている。特許文献1に記載の受信装置は、ディジタルデータとともにパケット送信時刻を含む第1及び第2パケットを送信装置から順次受信し、パケットの送信時刻及びパケットを受信した受信時刻を取得する。ここで、パケット送信時刻とは、第1及び第2パケットが送信装置から受信装置へ送信される時刻である。そして、所定数のパケットを送信するのに要する時間として送信間隔を算出し、所定数のパケットを受信するのに要する時間として受信間隔を算出する。この送信間隔と受信間隔との差が小さくなるように受信側サンプリング周波数frを補正する。よって、送信装置及び受信装置でのサンプリング周波数の誤差に起因するアンダーフローやオーバーフローを抑制し、再生されるデータの品質を高めることができる。
特開2002−374319号公報
In view of this, Patent Document 1 discloses a receiving apparatus having correction means for correcting the sampling frequency in the receiving apparatus in order to improve the quality of data such as voice. The receiving device described in Patent Document 1 sequentially receives the first and second packets including the packet transmission time together with the digital data from the transmitting device, and acquires the packet transmission time and the reception time when the packet is received. Here, the packet transmission time is the time at which the first and second packets are transmitted from the transmission device to the reception device. Then, the transmission interval is calculated as the time required to transmit the predetermined number of packets, and the reception interval is calculated as the time required to receive the predetermined number of packets. The reception-side sampling frequency fr is corrected so that the difference between the transmission interval and the reception interval becomes small. Therefore, underflow and overflow caused by sampling frequency errors in the transmission device and the reception device can be suppressed, and the quality of reproduced data can be improved.
JP 2002-374319 A

しかし、特許文献1に記載の受信装置では、アンダーフローやオーバーフローを抑制することはできるものの、受信側サンプリング周波数frを調整するために、送信装置から受信装置へパケット送信時刻等の時刻情報を送信しなければならない。そのため、送信装置は、送信するパケットにパケット送信時刻等の時刻情報を組み込む必要がある。よって、送信装置と受信装置とが一体とならなければサンプリング周波数の誤差を補正できない。また、時刻情報を組み込むことでパケットのデータ量が増加し、伝送効率の低下や使用する帯域幅の増加を招く。   However, although the receiving apparatus described in Patent Document 1 can suppress underflow and overflow, time information such as packet transmission time is transmitted from the transmitting apparatus to the receiving apparatus in order to adjust the receiving-side sampling frequency fr. Must. Therefore, the transmission device needs to incorporate time information such as packet transmission time into the packet to be transmitted. Therefore, the sampling frequency error cannot be corrected unless the transmission device and the reception device are integrated. Also, incorporation of time information increases the amount of packet data, leading to a decrease in transmission efficiency and an increase in bandwidth used.

そこで、本発明は、送信装置側によらずに受信装置側だけで受信側サンプリング周波数の補正を行い、音質を高めることができる受信装置を提供することを目的とする。   SUMMARY OF THE INVENTION An object of the present invention is to provide a receiving apparatus that can improve the sound quality by correcting the receiving side sampling frequency only on the receiving apparatus side, not on the transmitting apparatus side.

本願第1発明は、上記の課題を解決するために、送信装置に通信網を介して接続された受信装置であって、前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信手段と、前記複数のパケットそれぞれに含まれるディジタルデータを一時的に蓄積する受信バッファと、受信側サンプリング周波数frを生成する周波数生成手段と、前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換手段と、受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信手段がk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正手段とを備える受信装置を提供する。 In order to solve the above-described problems, the first invention of the present application is a receiving device connected to a transmitting device via a communication network, and receives a plurality of packets sequentially from the transmitting device via the communication network. Means, a reception buffer for temporarily storing digital data included in each of the plurality of packets, a frequency generation means for generating a reception-side sampling frequency fr, and a reception buffer according to the reception-side sampling frequency fr. For each packet group G n (n is a natural number) composed of a conversion means for reading out digital data and converting it into analog data, and a predetermined number k (k ≧ 2) packets determined on the receiving side A reception interval ΔTr indicating a time required for the means to receive k packets, and a digital signal included in each of the k packets. And a correction unit that obtains a reading interval ΔTo indicating a time required to read the total data from the reception buffer, and calculates a reception-side sampling frequency fr in the packet group G n based on the following conditions: I will provide a.

例えば、受信手段が時刻Tr0〜Tr1の間に100個のパケット (nは自然数)を受信している。この受信手段で受信されたそれぞれのパケットに含まれるディジタルデータは、受信バッファに一時的に蓄積される。そして、100個のパケットのディジタルデータが時刻To0からTo1の間に受信バッファから読み出される。ここで、100個のうち最初と最後のパケットの受信時刻から受信間隔ΔTr=Tr1−Tr0が算出される。また、100個のうち最初と最後のパケットの読出時刻からディジタルデータの読出間隔ΔTo=Tr1−Tr0が算出される。補正手段は、算出された受信間隔ΔTrと読出間隔ΔToとがfr=fr’×(ΔTo÷ΔTr)条件になるように受信側サンプリング周波数frを補正する。fr’はパケット群G (n−1) における受信側サンプリング周波数。
ここで、受信間隔ΔTrは、送信装置から受信装置への両パケットの送信間隔に応答している。よって、受信側サンプリング周波数frを前記のように補正することで、送信側サンプリング周波数fsと受信側サンプリング周波数frとを所定の関係にすることができる。以上の処理を行うことで、受信バッファの蓄積量を制御し、オーバーフローやアンダーフローを防止し、再生されるデータの品質を高めることができる。また、前述の受信側サンプリング周波数frの補正は、受信装置側で取得した受信時刻及び読出時刻に基づいて行われる。よって、送信装置側からパケット送信時刻、パケット送信間隔等の送信側サンプリング周波数fsに関連する時刻情報を受信装置側に送信する必要がない。そのため、送信するパケットのパケット構成を簡略化し、パケットのデータ量を削減することで、パケットの伝送効率の向上や使用する帯域幅を減少することができる。なお、所定の関係とは、受信側サンプリング周波数frと送信側サンプリング周波数fsが、fr:fs=1:1、fr:fs=1:2等になる関係であり、等倍速、所定の倍速の読み出しに対応することができる。
For example, 100 packets G n between the receiving means time Tr0~Tr1 (n is a natural number) are receiving. The digital data included in each packet received by the receiving means is temporarily stored in the reception buffer. Then, 100 packets of digital data are read from the reception buffer between times To0 and To1. Here, the reception interval ΔTr = Tr 1 −Tr 0 is calculated from the reception times of the first and last packets of the 100 packets. Also, the digital data read interval ΔTo = Tr 1 −Tr 0 is calculated from the read times of the first and last packets out of 100. The correcting unit corrects the reception-side sampling frequency fr so that the calculated reception interval ΔTr and readout interval ΔTo satisfy the condition of fr = fr ′ × (ΔTo ÷ ΔTr) . fr ′ is a sampling frequency on the receiving side in the packet group G (n−1) .
Here, the reception interval ΔTr is responsive to the transmission interval of both packets from the transmission device to the reception device. Therefore, by correcting the reception-side sampling frequency fr as described above, the transmission-side sampling frequency fs and the reception-side sampling frequency fr can be in a predetermined relationship. By performing the above processing, it is possible to control the accumulation amount of the reception buffer, prevent overflow and underflow, and improve the quality of reproduced data. Further, the correction of the reception side sampling frequency fr described above is performed based on the reception time and reading time acquired on the reception device side. Therefore, there is no need to transmit time information related to the transmission side sampling frequency fs such as the packet transmission time and the packet transmission interval from the transmission device side to the reception device side. Therefore, by simplifying the packet configuration of the packet to be transmitted and reducing the data amount of the packet, the packet transmission efficiency can be improved and the bandwidth to be used can be reduced. The predetermined relationship is a relationship in which the reception-side sampling frequency fr and the transmission-side sampling frequency fs are fr: fs = 1: 1, fr: fs = 1: 2, and the like. Reading can be supported.

本願第発明は、本願第1発明において、前記周波数生成手段としてVCO(Voltage Control Oscillator)を用い、前記補正手段は前記VCOへの印加電圧を調整することにより、前記受信側サンプリング周波数frを補正する受信装置を提供する。
本願第3発明は、本願第1発明において、前記受信手段により受信されたパケットの送信順位及び前記受信バッファ内の蓄積量を監視し、パケットを正常に受信しているか否かを判定する監視手段をさらに備え、前記変換手段は、前記監視手段におけるパケットを正常に受信しているか否かの判定に応じて、蓄積されたディジタルデータを前記受信バッファから読み出し、前記受信バッファは、前記監視手段におけるパケットを正常に受信しているか否かの判定、及び当該受信バッファ内の蓄積量に応じて、ディジタルデータを蓄積する受信装置を提供する。
本願第発明は、送信装置に通信網を介して接続された受信装置に用いられる受信再生方法であって、前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信ステップと、前記複数のパケットそれぞれに含まれるディジタルデータを一時的に受信バッファに蓄積する蓄積ステップと、受信側サンプリング周波数frを生成する周波数生成ステップと、前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換ステップと、受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信ステップでk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正する補正ステップとを含む受信再生方法を提供する。
fr=fr’×(ΔTo÷ΔTr)
ここで、fr’はパケット群G(n−1)における受信側サンプリング周波数。
According to a second aspect of the present invention, in the first aspect of the present invention, a VCO (Voltage Control Oscillator) is used as the frequency generation means, and the correction means corrects the reception-side sampling frequency fr by adjusting an applied voltage to the VCO. A receiving apparatus is provided.
The third invention of the present application is the monitoring means according to the first invention of the present application, which monitors the transmission order of the packets received by the receiving means and the accumulation amount in the reception buffer, and determines whether or not the packets are normally received. The conversion means reads out the stored digital data from the reception buffer according to the determination as to whether or not the monitoring means has received the packet normally, and the reception buffer is in the monitoring means Provided is a receiving device for storing digital data in accordance with determination as to whether or not a packet is normally received and the amount stored in the reception buffer.
A fourth invention of the present application is a reception reproduction method used for a reception device connected to a transmission device via a communication network, wherein a reception step of sequentially receiving a plurality of packets from the transmission device via the communication network; An accumulation step for temporarily accumulating digital data included in each of the plurality of packets in a reception buffer, a frequency generation step for generating a reception-side sampling frequency fr, and an accumulation in the reception buffer according to the reception-side sampling frequency fr For each packet group G n (n is a natural number) composed of a predetermined number k (k ≧ 2) packets determined on the receiving side, A reception interval ΔTr indicating the time required to receive k packets in the step, and the k packets. A reading interval ΔTo indicating the time required to read the digital data contained in each from the reception buffer is obtained, and the reception-side sampling frequency fr in the packet group Gn is calculated based on the following conditions: And a receiving / reproducing method including a correcting step for correcting.
fr = fr ′ × (ΔTo ÷ ΔTr)
Here, fr ′ is the reception-side sampling frequency in the packet group G (n−1).

本願第発明は、送信装置に通信網を介して接続された受信装置に用いられる受信再生プログラムであって、前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信手段、前記複数のパケットそれぞれに含まれるディジタルデータを一時的に蓄積する受信バッファ、受信側サンプリング周波数frを生成する周波数生成手段、前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換手段、及び、受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信手段がk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正手段としてコンピュータを機能させるための受信再生プログラムを提供する。
fr=fr’×(ΔTo÷ΔTr)
ここで、fr’はパケット群G (n−1) における受信側サンプリング周波数。
A fifth invention of the present application is a reception reproduction program used for a reception device connected to a transmission device via a communication network, the reception means sequentially receiving a plurality of packets from the transmission device via the communication network, A reception buffer for temporarily storing digital data included in each of a plurality of packets, frequency generation means for generating a reception-side sampling frequency fr, and reading out the digital data stored in the reception buffer according to the reception-side sampling frequency fr; For each packet group G n (n is a natural number) composed of conversion means for converting into analog data and a predetermined number k (k ≧ 2) packets determined on the receiving side, the receiving means includes k pieces A reception interval ΔTr indicating the time required to receive a packet, and a digital included in each of the k packets. The reading interval ΔTo indicating the time required to read the total data from the reception buffer is acquired, and the computer is caused to function as correction means for calculating the reception-side sampling frequency fr in the packet group G n based on the following conditions: A receiving / reproducing program is provided.
fr = fr ′ × (ΔTo ÷ ΔTr)
Here, fr ′ is the receiving-side sampling frequency in the packet group G (n−1) .

本願第発明は、送信装置に通信網を介して接続された受信装置に用いられる受信再生プログラムを記録した、コンピュータ読み取り可能な記録媒体であって、前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信ステップと、前記複数のパケットそれぞれに含まれるディジタルデータを一時的に受信バッファに蓄積する蓄積ステップと、受信側サンプリング周波数frを生成する周波数生成ステップと、前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換ステップと、受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信ステップでk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正する補正ステップとを実行するための受信再生プログラムを記録した、コンピュータ読み取り可能な記録媒体を提供する。
fr=fr’×(ΔTo÷ΔTr)
ここで、fr’はパケット群G (n−1) における受信側サンプリング周波数。
A sixth invention of the present application is a computer-readable recording medium in which a reception / playback program used in a reception device connected to a transmission device via a communication network is recorded, wherein a plurality of packets are transmitted via the communication network. A reception step for sequentially receiving from the transmission device; a storage step for temporarily storing digital data contained in each of the plurality of packets in a reception buffer; a frequency generation step for generating a reception-side sampling frequency fr; and the reception-side sampling A packet group G n composed of a conversion step of reading digital data stored in the reception buffer according to the frequency fr and converting it into analog data, and a predetermined number k (k ≧ 2) packets determined on the reception side (n is a natural number) for each, to receive the k packets in the receiving step A reception interval ΔTr indicating the time that the k pieces of digital data packets are included in each acquired a read interval ΔTo indicating the time required to read from the receive buffer, the based on the following conditions recording the received reproducing program for executing a correction step of correcting for calculating the reception side sampling frequency fr in the packet group G n, and a computer-readable recording medium.
fr = fr ′ × (ΔTo ÷ ΔTr)
Here, fr ′ is the receiving-side sampling frequency in the packet group G (n−1) .

本願第発明は、放送システムであって、音声入力手段と、前記音声入力手段に接続され、入力された音声を送信側サンプリング周波数fsに基づいてサンプリングすることによりディジタル音声データに変換し、前記ディジタル音声データを含むパケットを順次伝送路に出力する音声送信手段と、前記音声送信手段と前記伝送路を介して接続され、前記ディジタル音声データを受信側サンプリング周波数frに基づいてアナログ音声データに変換する音声受信手段と、前記音声受信手段に接続され、前記アナログ音声データを出力する音声出力手段とを含む放送システムを提供する。ここで、前記音声受信手段は、複数のパケットを前記送信装置から順次受信する受信手段と、前記複数のパケットそれぞれに含まれるディジタルデータを一時的に蓄積する受信バッファと、受信側サンプリング周波数frを生成する周波数生成手段と、前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換手段と、受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信手段がk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正手段とを有するものである
fr=fr’×(ΔTo÷ΔTr)
ここで、fr’はパケット群G (n−1) における受信側サンプリング周波数。
The seventh invention of the present application is a broadcasting system, which is connected to the voice input means and the voice input means, and converts the input voice into digital voice data by sampling based on the transmission side sampling frequency fs, Voice transmission means for sequentially outputting packets including digital voice data to the transmission path, and connected to the voice transmission means via the transmission path, and converting the digital voice data into analog voice data based on the sampling frequency fr on the receiving side And a voice output unit connected to the voice receiving unit and outputting the analog voice data. Here, the voice receiving means includes a receiving means for sequentially receiving a plurality of packets from the transmitting device, a receiving buffer for temporarily storing digital data included in each of the plurality of packets, and a receiving-side sampling frequency fr. A frequency generation means for generating, a conversion means for reading out digital data stored in the reception buffer according to the reception side sampling frequency fr and converting it into analog data, and a predetermined number k (k ≧ 2) determined on the reception side For each packet group G n (n is a natural number) composed of packets , the reception means includes a reception interval ΔTr indicating the time required for receiving k packets, and each of the k packets. get a read interval ΔTo indicating the time required for digital data to read from the receive buffer being, Based on the following conditions and has a correction means for calculating a reception side sampling frequency fr in the packet group G n.
fr = fr ′ × (ΔTo ÷ ΔTr)
Here, fr ′ is the receiving-side sampling frequency in the packet group G (n−1) .

本発明を用いれば、送信装置側からパケット送信時刻、パケット送信間隔等の送信側サンプリング周波数fsに関連する時刻情報を受信装置側に送信することなく、受信側サンプリング周波数frの補正を行うことができる。   By using the present invention, the reception side sampling frequency fr can be corrected without transmitting time information related to the transmission side sampling frequency fs such as packet transmission time and packet transmission interval from the transmission side to the reception side. it can.

<発明の概要>
本発明では、送信装置から送信されるパケットが受信装置の受信部で受信されるときの受信間隔と、パケットに含まれるディジタルデータが受信バッファから読み出されるときの読出間隔とに基づいて受信側サンプリング周波数frを補正する。
図1は、本発明の概要を示す概念説明図である。ここでは、パケット100個を1つのパケット群として受信間隔及び読出間隔を算出するものとする。受信装置の受信部が、時刻Tr0〜Tr1の間にパケットP0〜P100を順次受信する。受信部で受信されたパケットP0〜P100に含まれるディジタルデータは、受信バッファに一時的に蓄積され、時刻To0からTo1の間に受信バッファから読み出される。ここで、パケットP0とパケットP100との受信時刻から1つのパケット群を構成するパケット100個を受信するのに要する時間として、受信間隔ΔTr1=Tr1−Tr0が算出される。また、パケットP0とパケットP100とに含まれるディジタルデータの読出時刻からパケット100個に含まれるディジタルデータを読み出すのに要する時間として、読出間隔ΔTo1=To1−To0が算出される。次に、受信間隔ΔTr1と読出間隔ΔTo1との差を検出し、この差が小さくなるように受信側サンプリング周波数frを補正する。同様に、次の100個のパケットについても同様の処理を行う。ここで、次のパケット群の受信間隔ΔTr2は、パケットP100とパケットP200との受信時刻の差からΔTr2=Tr2−Tr1として算出される。また、次のパケット群の読出間隔ΔTo2は、パケットP100とパケットP200とに含まれるディジタルデータの読出時刻の差からΔTo2=To2−To1として算出される。そして、受信間隔ΔTr1と読出間隔ΔTo1との差が小さくなるように受信側サンプリング周波数frを補正する。以上のように、100個のパケット単位で同様の処理を繰り返し行うことで、送信装置と受信装置とのサンプリング周波数の誤差による受信バッファのオーバーフローやアンダーフローを防止し、再生されるデータの品質を高めることができる。
<Outline of the invention>
In the present invention, the sampling on the receiving side is performed based on the reception interval when the packet transmitted from the transmission device is received by the reception unit of the reception device and the reading interval when the digital data included in the packet is read from the reception buffer. The frequency fr is corrected.
FIG. 1 is a conceptual explanatory diagram showing an outline of the present invention. Here, it is assumed that the reception interval and the reading interval are calculated with 100 packets as one packet group. The receiving unit of the receiving apparatus sequentially receives the packets P 0 to P 100 during the times Tr 0 to Tr 1 . The digital data included in the packets P 0 to P 100 received by the receiving unit is temporarily stored in the reception buffer, and is read from the reception buffer between times To 0 and To 1 . Here, the reception interval ΔTr 1 = Tr 1 −Tr 0 is calculated as the time required to receive 100 packets constituting one packet group from the reception times of the packets P 0 and P 100 . Further, a reading interval ΔTo 1 = To 1 −To 0 is calculated as the time required to read the digital data contained in 100 packets from the reading time of the digital data contained in the packets P 0 and P 100 . Next, the difference between the reception interval ΔTr 1 and the reading interval ΔTo 1 is detected, and the reception-side sampling frequency fr is corrected so as to reduce this difference. Similarly, the same processing is performed for the next 100 packets. Here, the reception interval ΔTr 2 of the next packet group is calculated as ΔTr 2 = Tr 2 −Tr 1 from the difference in reception time between the packet P 100 and the packet P 200 . Further, the reading interval ΔTo 2 of the next packet group is calculated as ΔTo 2 = To 2 −To 1 from the difference in reading time of the digital data included in the packet P 100 and the packet P 200 . Then, the reception side sampling frequency fr is corrected so that the difference between the reception interval ΔTr 1 and the reading interval ΔTo 1 becomes small. As described above, by repeating the same processing in units of 100 packets, the overflow and underflow of the reception buffer due to the sampling frequency error between the transmission device and the reception device can be prevented, and the quality of the reproduced data can be improved. Can be increased.

上記のように、受信側サンプリング周波数frの補正は、送信装置からパケット送信間隔などの時刻情報を受信することなく、受信装置で取得した受信間隔及び読出間隔に基づいて行われる。よって、送信装置及び受信装置間で時刻情報を送受信する必要がなく、受信装置のみで受信側サンプリング周波数frの補正を行うことができる。
<第1実施形態例>
次に、本発明の受信装置を適用した音声通信システムについて、第1実施形態例を挙げて詳細に説明する。以下では、所定数k(kは自然数でk≧2)個のパケットを1つのパケット群として受信間隔及び読出間隔を算出するものとする。
[構成]
図2は、第1実施形態例に係る音声通信システムの構成を示すブロック図である。音声通信システム10は、送信装置1と受信装置2とがLANなどのネットワーク3により接続されて構成されている。なお、図2では、ネットワーク3に接続されている送信装置1及び受信装置2はそれぞれ1つしか示されていないが、通常は複数の送信装置1及び受信装置2がネットワーク3に接続される。また、送信装置1と受信装置2とは、一体に構成されていても良い。
As described above, the correction of the reception-side sampling frequency fr is performed based on the reception interval and reading interval acquired by the reception device without receiving time information such as a packet transmission interval from the transmission device. Therefore, it is not necessary to transmit / receive time information between the transmission device and the reception device, and the reception-side sampling frequency fr can be corrected only by the reception device.
<First embodiment>
Next, a voice communication system to which the receiving apparatus of the present invention is applied will be described in detail with reference to the first embodiment. In the following, it is assumed that a predetermined number k (k is a natural number and k ≧ 2) packets are used as one packet group to calculate the reception interval and the reading interval.
[Constitution]
FIG. 2 is a block diagram showing the configuration of the voice communication system according to the first embodiment. The voice communication system 10 is configured by connecting a transmission device 1 and a reception device 2 via a network 3 such as a LAN. In FIG. 2, only one transmitting device 1 and one receiving device 2 connected to the network 3 are shown, but normally a plurality of transmitting devices 1 and receiving devices 2 are connected to the network 3. Further, the transmission device 1 and the reception device 2 may be configured integrally.

送信装置1は、入力部11、増幅器13、ADC15、入力バッファ17、符号化部19、送信バッファ21、送信部23及びVCO25を有している。マイクなどの入力部11に入力された音声は、アナログ音声信号に変換される。このアナログ音声信号は、増幅器13により増幅され、VCO25が発生するサンプリング周波数fsに基づいてADC15によりディジタル音声データに変換され、入力バッファ17に蓄積される。符号化部19は、入力バッファ17に蓄積されているディジタル音声データを圧縮音声符号化情報に符号化し、送信バッファ21に蓄積する。なお、VCO25は、印加電圧により発生するサンプリング周波数fsを変化させることができる。送信部23は、送信バッファ21の圧縮音声符号化情報をパケットに組み立て、一定の時間間隔でネットワーク3に送出する。   The transmission apparatus 1 includes an input unit 11, an amplifier 13, an ADC 15, an input buffer 17, an encoding unit 19, a transmission buffer 21, a transmission unit 23, and a VCO 25. The sound input to the input unit 11 such as a microphone is converted into an analog sound signal. The analog audio signal is amplified by the amplifier 13, converted to digital audio data by the ADC 15 based on the sampling frequency fs generated by the VCO 25, and stored in the input buffer 17. The encoding unit 19 encodes the digital audio data stored in the input buffer 17 into compressed audio encoding information and stores it in the transmission buffer 21. Note that the VCO 25 can change the sampling frequency fs generated by the applied voltage. The transmission unit 23 assembles the compressed audio coding information of the transmission buffer 21 into a packet, and transmits the packet to the network 3 at regular time intervals.

受信装置2は、受信部31、受信時刻取得部33、受信バッファ35、受信バッファ監視部37、読出部39、復号化部41、再生バッファ43、読出時刻取得部45、DAC47、増幅器49、出力部51、補正部53及びVCO55を有している。ネットワーク3に送出されたパケットは、受信部31により受信され分解される。分解された圧縮音声符号化情報は、受信バッファ35に格納される。読出部39は、後述の読出時刻取得部45が1パケット分のディジタル音声データをカウントする毎に起動し、1パケット分の圧縮音声符号化情報を受信バッファ35から復号化部41に出力する。そして、圧縮音声符号化情報は、復号化部41により復号化及び伸長され、ディジタル音声データになる。このディジタル音声データは、再生バッファ43に格納される。そして、読出時刻取得部45は、受信側サンプリング周波数frで再生バッファ43からディジタル音声データを読み出す。そして、読み出されたディジタル音声データは、DAC47により受信側サンプリング周波数frでアナログ音声信号に変換される。この受信側サンプリング周波数frは、VCO55により生成される。アナログ音声信号は、増幅器49により増幅され、スピーカなどの出力部51から空気中に拡声される。受信バッファ監視部37は、受信バッファ35内のデータ量を監視する。ここで、送信装置1側の符号化部19が省略される場合、受信装置2の復号化部41を省略することができる。スピーカなどの出力部51は、受信装置2と独立に設けてもよい。   The reception device 2 includes a reception unit 31, a reception time acquisition unit 33, a reception buffer 35, a reception buffer monitoring unit 37, a reading unit 39, a decoding unit 41, a reproduction buffer 43, a reading time acquisition unit 45, a DAC 47, an amplifier 49, and an output. Part 51, correction part 53, and VCO 55. A packet sent to the network 3 is received and disassembled by the receiving unit 31. The decomposed compressed audio coding information is stored in the reception buffer 35. The reading unit 39 is activated every time a later-described reading time acquisition unit 45 counts digital voice data for one packet, and outputs compressed audio coding information for one packet from the reception buffer 35 to the decoding unit 41. The compressed audio coding information is decoded and expanded by the decoding unit 41 to become digital audio data. This digital audio data is stored in the reproduction buffer 43. Then, the reading time acquisition unit 45 reads the digital audio data from the reproduction buffer 43 at the reception side sampling frequency fr. The read digital audio data is converted into an analog audio signal by the DAC 47 at the reception side sampling frequency fr. This reception side sampling frequency fr is generated by the VCO 55. The analog audio signal is amplified by the amplifier 49, and is amplified into the air from the output unit 51 such as a speaker. The reception buffer monitoring unit 37 monitors the amount of data in the reception buffer 35. Here, when the encoding unit 19 on the transmission device 1 side is omitted, the decoding unit 41 of the reception device 2 can be omitted. The output unit 51 such as a speaker may be provided independently of the receiving device 2.

受信時刻取得部33は、1つのパケット群を構成する所定数k個(kは自然数でk≧2)のパケットが受信部31において受信される毎に、つまり所定数k個毎にパケットの受信時刻を取得する。そして、それぞれの受信時刻の差から1つのパケット群を構成する所定数k個のパケットを受信するのに要する時間として受信間隔を算出する。
読出時刻取得部45は、DAC47により再生バッファ43から読み出されてアナログ変換された後、再生されるディジタル音声データ(以下、再生データ)の1パケット分をカウントする。再生データ量のカウントは、例えば、1パケット分のディジタル音声データが再生される毎に発生する割り込みをカウントすることにより行う。また、読出時刻取得部45は、再生データを1パケット分カウントする毎に読出部39を呼出し、読出部39に次の1パケット分の圧縮音声符号化情報を受信バッファ35から読み出させる。さらに、読出時刻取得部45は、1つのパケット群を構成する所定数k個のパケットに含まれる圧縮音声符号化情報が受信バッファ35から読み出される毎に、つまり再生データを所定数k個分カウントする毎に読出時刻を取得する。そして、取得した読出時刻の差から1つのパケット群を構成する所定数k個のパケットに含まれる圧縮音声符号化情報を読み出すのに要する時間として読出間隔を算出する。
The reception time acquisition unit 33 receives a packet every time a predetermined number k (k is a natural number, k ≧ 2) constituting one packet group is received by the reception unit 31, that is, every predetermined number k. Get the time. Then, a reception interval is calculated as a time required to receive a predetermined number k packets constituting one packet group from the difference between the reception times.
The read time acquisition unit 45 counts one packet of digital audio data (hereinafter referred to as reproduction data) to be reproduced after being read from the reproduction buffer 43 by the DAC 47 and converted to analog. The reproduction data amount is counted, for example, by counting interrupts that occur every time digital audio data for one packet is reproduced. In addition, the reading time acquisition unit 45 calls the reading unit 39 every time the reproduction data is counted for one packet, and causes the reading unit 39 to read the compressed audio coding information for the next one packet from the reception buffer 35. Further, the read time acquisition unit 45 counts a predetermined number k of reproduced data every time compressed audio coding information included in a predetermined number k packets constituting one packet group is read from the reception buffer 35. Read time is acquired every time. Then, the readout interval is calculated as the time required to read out the compressed speech encoded information included in the predetermined number k packets constituting one packet group from the difference in the obtained readout times.

補正部53は、受信時刻取得部33及び読出時刻取得部45から受信間隔及び読出間隔を取得し、受信間隔と読出間隔との誤差が小さくなるように受信側サンプリング周波数frを補正する。
上記の受信装置は、送信装置から受信装置へのパケットの送信間隔に応答してパケットを受信する。つまり、パケットの受信間隔は、パケットの送信間隔に応答している。また、送信側サンプリング周波数fsはパケットの送信間隔と反比例する関係にある。同様に、受信側サンプリング周波数frは、パケットの読出間隔と反比例する関係にある。よって、受信間隔と読出間隔との誤差を小さくするように受信側サンプリング周波数frを補正することで、受信側サンプリング周波数frを送信側サンプリング周波数fsに近づけることができる。そのため、送信側及び受信側でのサンプリング周波数の誤差に起因するアンダーフローやオーバーフローを抑制し、再生されるデータの品質を高めることができる。
The correction unit 53 acquires the reception interval and the read interval from the reception time acquisition unit 33 and the read time acquisition unit 45, and corrects the reception-side sampling frequency fr so that the error between the reception interval and the read interval becomes small.
The receiving device receives a packet in response to a transmission interval of packets from the transmitting device to the receiving device. That is, the packet reception interval responds to the packet transmission interval. Further, the transmission side sampling frequency fs is inversely proportional to the packet transmission interval. Similarly, the receiving-side sampling frequency fr is inversely proportional to the packet reading interval. Therefore, the reception-side sampling frequency fr can be brought close to the transmission-side sampling frequency fs by correcting the reception-side sampling frequency fr so as to reduce the error between the reception interval and the reading interval. Therefore, underflow and overflow caused by sampling frequency errors on the transmission side and the reception side can be suppressed, and the quality of reproduced data can be improved.

また、補正部53は、受信間隔と読出間隔とが所定の関係になるように受信側サンプリング周波数frを補正しても良い。つまり、受信間隔と読出間隔とが1:1の関係に限定されず、例えば1:2、1:3等の所定の関係になるように受信側サンプリング周波数frを補正する。このように補正することで、受信側サンプリング周波数frと送信側サンプリング周波数fsとを所定の関係にすることができる。よって、例えば2倍速、3倍速などの読み出しに対応しつつ、アンダーフローやオーバーフローを抑制することができる。   The correction unit 53 may correct the reception-side sampling frequency fr so that the reception interval and the reading interval have a predetermined relationship. That is, the reception-side sampling frequency fr is corrected so that the reception interval and the read-out interval are not limited to a 1: 1 relationship, for example, a predetermined relationship such as 1: 2, 1: 3. By correcting in this way, the reception-side sampling frequency fr and the transmission-side sampling frequency fs can be in a predetermined relationship. Therefore, for example, underflow and overflow can be suppressed while supporting reading at double speed, triple speed, and the like.

以下に、受信間隔と読出間隔とが1:1の関係になるように受信側サンプリング周波数frを補正する場合を例に挙げ、受信間隔及び読出間隔の取得方法及び受信側サンプリング周波数frの補正についてより詳細に説明する。
(1)受信間隔及び読出間隔の算出方法
まず、受信間隔及び読出間隔の取得方法について図3を用いてより詳細に説明する。ここで、受信部31は、最初のパケットP0から順次パケットP1、パケットP2…を受信しており、所定数k個のパケットによりパケット群G1、パケット群G2…パケット群Gnが構成される。ここで、パケットPの添字は、パケットの送信順を表す番号であり、パケット群Gnの添字は、パケット群の送信順を表す番号である。さらに、受信時刻Trn、読出間隔Ton、受信間隔ΔTrn、読出間隔ΔTonの各添字は、パケット群Gnの添字に対応している。また、添字nは、0以上の自然数である。以下、各パケット群毎に受信時間及び読出時間の算出方法を説明する。
a)1番目のパケット群G1について
受信時刻取得部33は、1番目のパケット群G1に含まれる最初のパケットP0の受信部31での受信時刻Tr0を取得する。次に、最初のパケットP0からk個目のパケットPkの受信部31での受信時刻Tr1を取得する。そして、受信時刻取得部33は、受信時刻Tr1とTr0との差から1番目のパケット群G1を構成する所定数k個のパケットを受信するのに要した時間として、受信間隔ΔTr1=Tr1−Tr0を算出する。
In the following, a case where the reception-side sampling frequency fr is corrected so that the reception interval and the reading interval have a 1: 1 relationship will be described as an example. This will be described in more detail.
(1) Calculation Method for Reception Interval and Read Interval First, a method for obtaining a reception interval and a read interval will be described in more detail with reference to FIG. Here, the reception unit 31 sequentially packet P 1 from the first packet P 0, the packet P 2 ... have received the packet group G 1 by a predetermined number k packets, packet group G 2 ... packet group G n Is configured. Here, the subscript of the packet P is a number indicating the transmission order of the packets, and the subscript of the packet group Gn is a number indicating the transmission order of the packet groups. Further, the reception time Tr n, read intervals the To n, reception interval [Delta] Tr n, each subscript of the read interval .DELTA.To n corresponds to the subscript of the packet group G n. The subscript n is a natural number of 0 or more. Hereinafter, a method for calculating the reception time and the readout time for each packet group will be described.
a) Regarding the first packet group G 1 The reception time acquisition unit 33 acquires the reception time Tr 0 of the first packet P 0 included in the first packet group G 1 at the reception unit 31. Next, the reception time Tr 1 at the reception unit 31 of the kth packet P k from the first packet P 0 is acquired. Then, the reception time acquisition unit 33 determines the reception interval ΔTr 1 as the time required to receive the predetermined number k packets constituting the first packet group G 1 from the difference between the reception times Tr 1 and Tr 0. = Tr 1 −Tr 0 is calculated.

一方、読出時刻取得部45は、最初のパケットP0に含まれる圧縮音声符号化情報が受信バッファ35から読み出される読出時刻To0を取得する。次に、最初のパケットP0からk個目のパケットPkに含まれる圧縮音声符号化情報の読出時刻To1を取得する。そして、読出時刻取得部45は、読出時刻To1とTo0との差から1番目のパケット群G1を構成する所定数k個のパケットに含まれる圧縮音声符号化情報を読み出すのに要した時間として、読出間隔ΔTo1=To1−To0を算出する。
b)2番目のパケット群について
2番目のパケット群G2に含まれる最初のパケットの受信時刻として、1番目のパケット群G1の最後のパケットPkの受信時刻Tr1が用いられる。次に、受信時刻取得部33は、パケットPkからk個目のパケットP2kの受信部31での受信時刻Tr2を取得する。そして、受信時刻取得部33は、受信時刻Tr2とTr1との差から2番目のパケット群G2の受信間隔ΔTr2=Tr2−Tr1を算出する。
On the other hand, the read time acquisition unit 45 acquires the read time To 0 at which the compressed audio coding information included in the first packet P 0 is read from the reception buffer 35. Next, the read time To 1 of the compressed audio coding information included in the kth packet P k from the first packet P 0 is acquired. Then, the read time acquisition unit 45 required to read the compressed speech encoded information included in the predetermined number k packets constituting the first packet group G 1 from the difference between the read times To 1 and To 0 . As the time, the reading interval ΔTo 1 = To 1 −To 0 is calculated.
b) for the second packet group as the reception time of the first packet included in the second packet group G 2, reception time Tr 1 of the first of the last packet P k packet group G 1 it is used. Next, the reception time acquisition unit 33 acquires the reception time Tr 2 at the reception unit 31 of the kth packet P 2k from the packet P k . Then, the reception time acquisition unit 33 calculates the reception interval ΔTr 2 = Tr 2 −Tr 1 of the second packet group G 2 from the difference between the reception times Tr 2 and Tr 1 .

同様に、読出時刻取得部45は、パケットPkに含まれる圧縮音声符号化情報の読出時刻To1と、パケットP2kに含まれる圧縮音声符号化情報の読出時刻To2との差から読出間隔ΔTo2=To2−To1を算出する。
c)n番目のパケット群について
受信時刻取得部33は、n番目のパケット群Gnに含まれる最初のパケットP(n-1)kの受信部31での受信時刻Tr(n-1)を取得する。次に、最初のパケットP(n-1)kからk個目のパケットPnkの受信部31での受信時刻Trnを取得する。そして、受信時刻取得部33は、受信時刻TrnとTr(n-1)との差からn番目のパケット群Gnを構成する所定数k個のパケットを受信するのに要した時間として、受信間隔ΔTrn=Trn−Tr(n-1)を算出する。ここで、P(n-1)kは、パケット群G(n-1)に含まれる最後のパケットである。
Similarly, the read time acquisition unit 45, a read time To 1 compression speech coding information included in the packet P k, read interval from the difference between the read time To 2 of the compressed audio coded information contained in the packet P 2k ΔTo 2 = To 2 −To 1 is calculated.
c) About the n-th packet group The reception time acquisition unit 33 obtains the reception time Tr (n-1) of the first packet P (n-1) k included in the n-th packet group G n at the reception unit 31. get. Next, the reception time Tr n of the k-th packet P nk at the receiving unit 31 is acquired from the first packet P (n−1) k . Then, the reception time acquisition unit 33 calculates the time required to receive the predetermined number k packets constituting the nth packet group G n from the difference between the reception times Tr n and Tr (n−1) . The reception interval ΔTr n = Tr n −Tr (n−1) is calculated. Here, P (n-1) k is the last packet included in the packet group G (n-1) .

一方、読出時刻取得部45は、読出時刻取得部45は、パケットP(n-1)kに含まれる圧縮音声符号化情報の読出時刻To(n-1)と、パケットPnkに含まれる圧縮音声符号化情報の読出時刻Tonとの差から読出間隔ΔTon=Ton−To(n-1)を算出する。
(2)受信側サンプリング周波数frの補正
補正部53は、受信時刻取得部33から取得した受信間隔と読出時刻取得部45から取得した読出間隔との誤差が小さくなるように、次のように受信側サンプリング周波数frを補正する。
a)1番目のパケット群G1について
1番目のパケット群G1における補正後の受信側サンプリング周波数fr1は、次式のように算出される。
On the other hand, the read time acquisition unit 45 reads the read time To (n−1) of the compressed speech encoded information included in the packet P (n−1) k and the compression included in the packet P nk. calculating a read interval ΔTo n = to n -To (n -1) from the difference between the read time the to n speech coding information.
(2) Correction of Receiving-Sampling Frequency fr The correction unit 53 receives as follows so that the error between the reception interval acquired from the reception time acquisition unit 33 and the read interval acquired from the read time acquisition unit 45 is reduced. The side sampling frequency fr is corrected.
a) the receiving side the sampling frequency fr 1 corrected for the first packet group G 1 in the first packet group G 1 is calculated by the following equation.

fr1=fr0×(ΔTo1÷ΔTr1
ここで、fr0:補正前の受信側サンプリング周波数である。
b)2番目のパケット群G2について
2番目のパケット群G2における補正後の受信側サンプリング周波数fr2は、次式のように算出される。
fr 1 = fr 0 × (ΔTo 1 ÷ ΔTr 1 )
Here, fr 0 is the reception-side sampling frequency before correction.
b) the receiving side the sampling frequency fr 2 after correction for the second packet group G 2 in the second packet group G 2 is calculated by the following equation.

fr2=fr1×(ΔTo2÷ΔTr2
ここで、fr1:1番目のパケット群G1における補正後の受信側サンプリング周波数である。
c)n番目のパケット群G2について
n番目のパケット群Gnにおける補正後の受信側サンプリング周波数frnは、次式のように算出される。
fr 2 = fr 1 × (ΔTo 2 ÷ ΔTr 2 )
Here, fr 1 is the reception-side sampling frequency after correction in the first packet group G 1 .
c) About the n-th packet group G 2 The corrected reception-side sampling frequency fr n in the n-th packet group G n is calculated as follows.

frn=fr(n-1)×(ΔTon÷ΔTrn
ここで、fr(n-1):n−1番目のパケット群G(n-1)における補正後の受信側サンプリング周波数である。
[パケット構成]
図4(a)に、送受信されるパケットの構成例を示す。パケットには、IPヘッダ、UDPヘッダ及び音声ディジタルデータが含まれている。IPヘッダには、送信元のIPアドレス、送信先のIPアドレスなどが記述されている。UDPヘッダには、送信元ポート番号、送信先ポート番号、メッセージ長などが記述されている。なお、IPパケットのデータ部にUDPパケットではなくTCPパケットを用いることもでき、その場合にはUDPヘッダに代えてTCPヘッダが用いられる。
fr n = fr (n−1) × (ΔTo n ÷ ΔTr n )
Here, fr (n- 1) is the corrected reception-side sampling frequency in the (n-1) th packet group G (n-1) .
[Packet structure]
FIG. 4A shows a configuration example of a packet to be transmitted / received. The packet includes an IP header, a UDP header, and voice digital data. In the IP header, a source IP address, a destination IP address, and the like are described. In the UDP header, a transmission source port number, a transmission destination port number, a message length, and the like are described. Note that a TCP packet can be used instead of a UDP packet in the data portion of the IP packet. In this case, a TCP header is used instead of the UDP header.

送受信されるパケットの別の構成例を図4(b)に示す。図4(b)に示すパケットには、さらにRTPヘッダが含まれている。RTPヘッダには、例えば下記の情報が含まれている。
a)バージョン
b)パディング
c)CSRC:CSRC識別子を何個含んでいるかを示す。
FIG. 4B shows another configuration example of the transmitted / received packet. The packet shown in FIG. 4B further includes an RTP header. The RTP header includes the following information, for example.
a) Version b) Padding c) CSRC: Indicates how many CSRC identifiers are included.

d)ペイロードタイプ
e)シーケンシャル番号:パケットの順番を示す。
g)SSRC:送信装置の識別子
h)CSRC:元の送信者の識別子リスト。
図4(b)のようにパケットが構成されている場合、受信時刻取得部33及び読出時刻取得部45は、シーケンシャル番号に基づいて受信時刻及び読出時刻を取得する。
[処理]
次に、前記構成を有する受信装置2が行う処理の流れについて詳細に説明する。受信装置2は、受信処理、再生処理、受信時刻取得処理、読出時刻取得処理及び補正処理の5つの処理を実行する。以下、これらの処理について、図面を参照しつつ具体的に説明する。
(1)受信処理
図5は、受信装置2が行う受信処理の流れの一例を示すフローチャートである。受信装置2は、送信装置1から通信の開始を示すコマンドを受信することにより、以下の処理を開始する。
d) Payload type e) Sequential number: Indicates the order of packets.
g) SSRC: transmitting device identifier h) CSRC: original sender identifier list.
When the packet is configured as shown in FIG. 4B, the reception time acquisition unit 33 and the read time acquisition unit 45 acquire the reception time and the read time based on the sequential number.
[processing]
Next, the flow of processing performed by the receiving apparatus 2 having the above configuration will be described in detail. The receiving device 2 executes five processes: a reception process, a reproduction process, a reception time acquisition process, a read time acquisition process, and a correction process. Hereinafter, these processes will be specifically described with reference to the drawings.
(1) Reception Processing FIG. 5 is a flowchart illustrating an example of the flow of reception processing performed by the reception device 2. The receiving device 2 starts the following process by receiving a command indicating the start of communication from the transmitting device 1.

ステップS1:受信部31は、通信の終了を示すコマンドを送信装置1から受信するまで、以下のステップS2〜S6までの処理を行う。通信の終了を示すコマンドを受信すると、処理を終了する。
ステップS2:受信部31は、パケットを待機しており、パケットを受信すると、ステップS3に移行する。
Step S1: The receiving unit 31 performs the following steps S2 to S6 until a command indicating the end of communication is received from the transmission device 1. When a command indicating the end of communication is received, the process ends.
Step S2: The receiving unit 31 waits for a packet, and when receiving a packet, proceeds to step S3.

ステップS3、S4:受信バッファ監視部37は、受信バッファ35に新たな圧縮音声符号化情報を書き込む空きメモリがあるか否かを判断する(S3)。空きメモリがあれば、受信部31は、受信したパケットを受信バッファ35に格納する(S4)。
ステップS5、S6:受信バッファ35に空きメモリがない場合、受信部31は、受信バッファ35内に蓄積されている古い圧縮音声符号化情報を破棄し(S5)、新たに受信したパケットの圧縮音声符号化情報を受信バッファ35に書き込む(S6)。
Steps S3 and S4: The reception buffer monitoring unit 37 determines whether or not there is an empty memory in which new compressed audio coding information is written in the reception buffer 35 (S3). If there is free memory, the reception unit 31 stores the received packet in the reception buffer 35 (S4).
Steps S5 and S6: When there is no free memory in the reception buffer 35, the reception unit 31 discards the old compressed audio coding information stored in the reception buffer 35 (S5), and the compressed audio of the newly received packet The encoded information is written in the reception buffer 35 (S6).

以上の処理により、受信バッファ35に次々に圧縮音声符号化情報を蓄積する。なお、上記ステップS1では、送信装置1から通信の終了を示すコマンドを受信する場合を記載したが、受信装置2内のコマンドに基づいて通信を終了しても良い。また、上記ステップS5及びS6においては、古い圧縮音声符号化情報を受信バッファ35に保持しておき、新たに受信したパケットの圧縮音声符号化情報を破棄しても良い。
(2)再生処理
図6は、受信装置2が行う再生処理の流れの一例を示すフローチャートである。受信装置2は、送信装置1から通信の開始を示すコマンドを受信することにより、以下の処理を開始する。
Through the above processing, the compressed audio coding information is accumulated in the reception buffer 35 one after another. In step S1, the case where a command indicating the end of communication is received from the transmission device 1 is described. However, the communication may be ended based on the command in the reception device 2. In steps S5 and S6, the old compressed speech coding information may be held in the reception buffer 35, and the compressed speech coding information of the newly received packet may be discarded.
(2) Reproduction Process FIG. 6 is a flowchart illustrating an example of the flow of the reproduction process performed by the reception device 2. The receiving device 2 starts the following process by receiving a command indicating the start of communication from the transmitting device 1.

ステップS11:受信バッファ監視部37は、再生開始条件が満たされたか否かを判断する。再生開始条件の一例としては、「受信バッファ35に蓄積される圧縮音声符号化情報のデータ量≧しきい値D1」が挙げられる。しきい値D1としては、ネットワーク負荷や再生速度を考慮した上で、通信システムに適合する経験値を求める。
ステップS12:受信バッファ監視部37は、再生開始条件が満たされた場合は、読出部39に再生開始信号を送信する。再生開始信号を受信した読出部39は、音声の再生処理を開始させる。
Step S11: The reception buffer monitoring unit 37 determines whether or not the reproduction start condition is satisfied. As an example of the reproduction start condition, “data amount of compressed audio coding information accumulated in the reception buffer 35 ≧ threshold value D1” can be cited. As the threshold value D1, an experience value suitable for the communication system is obtained in consideration of the network load and the reproduction speed.
Step S12: The reception buffer monitoring unit 37 transmits a reproduction start signal to the reading unit 39 when the reproduction start condition is satisfied. Upon receiving the reproduction start signal, the reading unit 39 starts the audio reproduction process.

ステップS13:受信装置2が、通信の終了を示すコマンドを送信装置1から受信するまで、以下のステップS14〜S17までの再生処理を行う。通信の終了を示すコマンドを受信すると、再生処理を終了する。
ステップS14:再生が継続している場合は、読出部39は、読出時刻取得部45の呼出に応答して、受信バッファ35から圧縮音声符号化情報を1パケット分ずつ読み出す。ついで、復号化部41は、1パケットに含まれている圧縮音声符号化情報を、順次伸長及び復号化し、再生バッファ43に格納する。再生バッファ43に格納されたディジタル音声データは、DAC47により補正後の受信側サンプリング周波数frに基いてアナログ音声信号に変換され、増幅器49により増幅されて出力部51から空気中に拡声される。1パケットに含まれる圧縮音声符号化情報を全てアナログデータに変換して出力するまで、再生を行う。
Step S13: Until the reception device 2 receives a command indicating the end of communication from the transmission device 1, the following reproduction processing from steps S14 to S17 is performed. When a command indicating the end of communication is received, the reproduction process is terminated.
Step S14: When the reproduction is continued, the reading unit 39 reads the compressed audio coding information for each packet from the reception buffer 35 in response to the call of the reading time acquisition unit 45. Next, the decoding unit 41 sequentially decompresses and decodes the compressed audio coding information included in one packet, and stores it in the reproduction buffer 43. The digital audio data stored in the reproduction buffer 43 is converted into an analog audio signal based on the corrected reception side sampling frequency fr by the DAC 47, amplified by the amplifier 49, and amplified in the air from the output unit 51. Reproduction is performed until all the compressed audio coding information included in one packet is converted into analog data and output.

ステップS15、S16:1パケット分の再生が終了すると、受信バッファ監視部37は、受信バッファ35内に蓄積されている圧縮音声符号化情報があるか否かを判断する(S15)。受信バッファ35に圧縮音声符号化情報が蓄積されている場合は、読出部39は、1パケット分の圧縮音声符号化情報を受信バッファ35から読み出す(S16)。
ステップS17:受信バッファ35に圧縮音声符号化情報が蓄積されていない場合は、読出部39は、受信バッファ監視部37からの指示により1パケット分の無音データを再生バッファ43に挿入する。
Steps S15 and S16: When the reproduction of one packet is completed, the reception buffer monitoring unit 37 determines whether there is compressed audio coding information stored in the reception buffer 35 (S15). When the compressed audio coding information is stored in the reception buffer 35, the reading unit 39 reads the compressed audio coding information for one packet from the reception buffer 35 (S16).
Step S17: When the compressed audio coding information is not stored in the reception buffer 35, the reading unit 39 inserts the silence data for one packet into the reproduction buffer 43 according to the instruction from the reception buffer monitoring unit 37.

なお、上記では、送信装置1から通信の開始又は通信終了を示すコマンドを受信する場合を記載したが、受信装置2内のコマンドに基づいて通信を開始又は終了しても良い。
(3)受信時刻取得処理
図7は、受信装置2が行う受信時刻取得処理の流れの一例を示すフローチャートである。受信時刻取得部33は、前述の通り、1つのパケット群を構成する所定数k個のパケット毎に受信部31での受信時刻を取得する。
In the above description, the case where a command indicating the start or end of communication is received from the transmission device 1 has been described. However, communication may be started or ended based on a command in the reception device 2.
(3) Reception Time Acquisition Process FIG. 7 is a flowchart illustrating an example of the flow of the reception time acquisition process performed by the reception device 2. As described above, the reception time acquisition unit 33 acquires the reception time at the reception unit 31 for each predetermined number k packets constituting one packet group.

ステップS21:パケット群の送信順を表すパケット群Gnの添字nの初期値として、n=0に設定する。
ステップS22、S23:受信部31は、1番目のパケット群G1に含まれる最初のパケットP0を受信する(S22)。そして、受信時刻取得部33は、1番目のパケット群G1に含まれる最初のパケットP0の受信部31での受信時刻Tr0を取得する(S23)。
Step S21: n = 0 is set as the initial value of the subscript n of the packet group G n indicating the transmission order of the packet group.
Steps S22 and S23: The receiving unit 31 receives the first packet P 0 included in the first packet group G 1 (S22). The reception time acquisition unit 33 acquires the reception time Tr 0 of the first packet P 0 included in the first packet group G 1 at the reception unit 31 (S23).

ステップS24:nの値を加算する。
ステップS25:受信装置2が、通信の終了を示すコマンドを送信装置1から受信するまで、ステップS24〜S30までの受信時刻取得処理を行う。通信の終了を示すコマンドを受信すると、受信時刻取得処理を終了する。
ステップS26、S27:受信部31は、順次、パケットを受信する(S26)。受信時刻取得部33は、受信部31がパケットを受信するたびにパケット数をカウントする(S27)。
Step S24: The value of n is added.
Step S25: Until the reception device 2 receives a command indicating the end of communication from the transmission device 1, the reception time acquisition processing from Steps S24 to S30 is performed. When a command indicating the end of communication is received, the reception time acquisition process is terminated.
Steps S26 and S27: The receiving unit 31 sequentially receives packets (S26). The reception time acquisition unit 33 counts the number of packets every time the reception unit 31 receives a packet (S27).

ステップS28:受信時刻取得部33は、1つのパケット群を構成するパケットの所定数kをカウントしたかどうかを判定する。所定数kをカウントしていなければ、ステップS25に戻り、受信部31によりさらにパケットを受信する。
ステップS29:受信時刻取得部33は、所定数kをカウントしていれば、所定数kをカウント後に受信部31において受信されたパケットの受信時刻Trnを取得する。ここで、受信時刻取得部33は、1番目のパケット群G1における所定数kカウント後の受信時刻としてTr1を取得する。また、この受信時刻Tr1は、2番目のパケット群G2における最初のパケットの受信時刻となる。つまり、n番目のパケット群Gnにおける最初のパケットの受信時刻としてTr(n-1)を取得し、所定数kカウント後の受信時刻としてTrnを取得する。
Step S28: The reception time acquisition unit 33 determines whether a predetermined number k of packets constituting one packet group has been counted. If the predetermined number k has not been counted, the process returns to step S25, and the receiving unit 31 further receives a packet.
Step S29: If the predetermined number k is counted, the reception time acquisition unit 33 acquires the reception time Trn of the packet received by the reception unit 31 after counting the predetermined number k. Here, the reception time acquisition unit 33 acquires Tr1 as the reception time after counting a predetermined number k in the first packet group G1. The reception time Tr1 is the reception time of the first packet in the second packet group G2. That is, Tr (n−1) is acquired as the reception time of the first packet in the nth packet group G n , and Trn is acquired as the reception time after counting a predetermined number k.

ステップS30:受信時刻取得部33は、最初のパケットの受信時刻と所定数kカウント後のパケットの受信時刻との差から受信間隔を算出する。n番目のパケット群Gnにおける受信間隔としてΔTrn=Trn−Tr(n-1)が算出される。
なお、上記では、送信装置1から通信開始又は通信終了を示すコマンドを受信する場合を記載したが、受信装置2内のコマンドに基づいて通信を開始又は終了しても良い。
(4)読出時刻取得処理
図8は、受信装置2が行う読出時刻取得処理の流れの一例を示すフローチャートである。読出時刻取得部45は、受信時刻取得部33と同様に、1つのパケット群を構成する所定数k個のパケットに含まれる圧縮音声符号化情報を、受信バッファ35から読み出すのに応答してその読出時刻を取得する。つまり、読出時刻取得部45は、再生データを所定数k個分カウントする毎に読出時刻を取得する。
Step S30: The reception time acquisition unit 33 calculates a reception interval from the difference between the reception time of the first packet and the reception time of the packet after counting a predetermined number k. ΔTr n = Tr n −Tr (n−1) is calculated as a reception interval in the n-th packet group G n .
In the above description, a case where a command indicating communication start or communication end is received from the transmission device 1 is described. However, communication may be started or ended based on a command in the reception device 2.
(4) Reading Time Acquisition Process FIG. 8 is a flowchart illustrating an example of a reading time acquisition process performed by the receiving device 2. Similar to the reception time acquisition unit 33, the read time acquisition unit 45 responds to reading out the compressed audio coding information included in a predetermined number k packets constituting one packet group from the reception buffer 35. Get the reading time. That is, the reading time acquisition unit 45 acquires the reading time every time a predetermined number k of reproduction data is counted.

ステップS31:パケット群の送信順を表すパケット群Gnの添字nの初期値として、n=0に設定する。
ステップS32、S33:読出時刻取得部45は、最初の再生データを1パケット分カウントすると、読出部39を呼び出す。読出部39は、その呼出に応答して1番目のパケット群G1に含まれる最初のパケットP0に含まれる圧縮音声符号化情報を受信バッファ35から読み出す(S32)。そして、読出時刻取得部45は、1番目のパケット群G1に含まれる最初のパケットP0に含まれる圧縮音声符号化情報の読出時刻Tr0を取得する(S33)。
Step S31: n = 0 is set as the initial value of the subscript n of the packet group G n indicating the transmission order of the packet group.
Steps S32 and S33: The reading time acquisition unit 45 calls the reading unit 39 after counting the first reproduction data for one packet. In response to the call, the reading unit 39 reads the compressed audio coding information included in the first packet P 0 included in the first packet group G 1 from the reception buffer 35 (S32). Then, the read time acquisition unit 45 acquires the read time Tr 0 of the compressed speech encoded information included in the first packet P 0 included in the first packet group G 1 (S33).

ステップS34:次に、nの値を加算する。
ステップS35:受信装置2が、通信の終了を示すコマンドを送信装置1から受信するまで、ステップS34〜S40までの読出時刻取得処理を行う。通信の終了を示すコマンドを受信すると、読出時刻取得処理を終了する。
ステップS36、S37:読出時刻取得部45は、DAC47により再生バッファ43から読み出されてアナログ変換された後、再生される再生データをカウントする(S36)。読出時刻取得部45は、再生データを1パケット分カウントする毎に読出部39を呼出し、読出部39は、読出時刻取得部45の呼出に応答して受信バッファ35から順次、圧縮音声符号化情報を読み出す(S37)。ここで、受信バッファ35内に圧縮音声符号化情報が蓄積されていない場合は、再生バッファ43には無音データが挿入されており、読出時刻取得部45は、再生データのカウントと同様に無音データをカウントする。
Step S34: Next, the value of n is added.
Step S35: Read time acquisition processing from steps S34 to S40 is performed until the reception device 2 receives a command indicating the end of communication from the transmission device 1. When a command indicating the end of communication is received, the read time acquisition process is terminated.
Steps S36 and S37: The read time acquisition unit 45 counts the reproduction data to be reproduced after being read from the reproduction buffer 43 by the DAC 47 and converted to analog (S36). The reading time acquisition unit 45 calls the reading unit 39 every time the reproduction data is counted for one packet, and the reading unit 39 sequentially receives the compressed audio coding information from the reception buffer 35 in response to the call of the reading time acquisition unit 45. Is read (S37). Here, when the compressed audio coding information is not stored in the reception buffer 35, silence data is inserted in the reproduction buffer 43, and the read time acquisition unit 45 performs the silence data in the same manner as the reproduction data count. Count.

ステップS38:読出時刻取得部45は、1つのパケット群を構成するパケットの所定数k分だけ、再生データ量をカウントしたかどうかを判定する。所定数kをカウントしていなければ、ステップS35に戻り、読出部49によりさらに圧縮音声符号化情報を読み出す。
ステップS39:読出時刻取得部45は、所定数kをカウントしていれば、所定数kをカウント後に受信バッファから読み出された圧縮音声符号化情報の読出時刻Tonを取得する。なお、受信バッファ35内に圧縮音声符号化情報が蓄積されておらず、無音データが再生バッファ43に挿入されている場合は、読出部49が無音データを挿入した時刻を圧縮音声符号化情報の読出時刻として取得する。あるいは、読出時刻取得部45が読出部39を呼び出した時刻を読出時刻として取得する。ここで、読出時刻取得部45は、1番目のパケット群G1における所定数kカウント後の圧縮音声符号化情報の読出時刻としてTo1を取得する。また、この読出時刻To1は、2番目のパケット群G2における最初のパケットに含まれる圧縮音声符号化情報の読出時刻となる。つまり、n番目のパケット群Gnにおける最初のパケットの読出時刻としてTo(n-1)を取得し、所定数kカウント後の読出時刻としてTonを取得する。
Step S38: The read time acquisition unit 45 determines whether or not the reproduction data amount has been counted by a predetermined number k of packets constituting one packet group. If the predetermined number k has not been counted, the process returns to step S35, and the compressed speech encoded information is further read by the reading unit 49.
Step S39: If the predetermined number k is counted, the reading time acquisition unit 45 acquires the reading time Ton of the compressed speech encoded information read from the reception buffer after counting the predetermined number k. If the compressed audio coding information is not accumulated in the reception buffer 35 and silence data is inserted into the reproduction buffer 43, the time when the reading unit 49 inserts the silence data is set as the compressed audio coding information. Acquired as read time. Alternatively, the time when the reading time acquisition unit 45 calls the reading unit 39 is acquired as the reading time. Here, the read time acquisition unit 45 acquires To1 as the read time of the compressed speech encoded information after a predetermined number k counts in the first packet group G1. The readout time To1 is the readout time of the compressed speech encoded information included in the first packet in the second packet group G2. That is, To (n-1) is acquired as the read time of the first packet in the nth packet group Gn , and Ton is acquired as the read time after counting a predetermined number k.

ステップS40:読出時刻取得部45は、最初のパケットに含まれる圧縮音声符号化情報の読出時刻と、所定数kカウント後のパケットに含まれる圧縮音声符号化情報の読出時刻との差から読出間隔を算出する。よって、n番目のパケット群Gnにおける読出間隔としてΔTon=Ton−To(n-1)が算出される。
なお、上記では、送信装置1から通信開始又は通信終了を示すコマンドを受信する場合を記載したが、受信装置2内のコマンドに基づいて通信を開始又は終了しても良い。
(5)補正処理
図9は、補正処理の流れの一例を示すフローチャートである。
Step S40: The read time acquisition unit 45 reads the read interval from the difference between the read time of the compressed speech encoded information included in the first packet and the read time of the compressed speech encoded information included in the packet after a predetermined number k counts. Is calculated. Therefore, ΔTo n = To n -To ( n-1) as a read interval in the n-th packet group G n is calculated.
In the above description, a case where a command indicating communication start or communication end is received from the transmission device 1 is described. However, communication may be started or ended based on a command in the reception device 2.
(5) Correction Processing FIG. 9 is a flowchart showing an example of the flow of correction processing.

ステップS41:補正部53は、受信時刻取得部33から受信間隔ΔTrnを、読出時刻取得部45から読出間隔ΔTonを取得したかどうかを判定する。
ステップS42:受信間隔及び読出間隔を取得した場合は、受信間隔と読出間隔との誤差が小さくなるように受信側サンプリング周波数frを補正する。ここで、n番目のパケット群Gnにおける補正後の受信側サンプリング周波数をfrnは、次式のように算出される。
Step S41: correction unit 53, a receiving interval [Delta] Tr n from the receiving time acquiring unit 33 determines whether it has acquired the read interval .DELTA.To n from the read time acquisition unit 45.
Step S42: When the receiving interval and the reading interval are acquired, the receiving side sampling frequency fr is corrected so that the error between the receiving interval and the reading interval is reduced. Here, the corrected receiving side sampling frequency fr n in the n-th packet group G n is calculated as follows.

frn=fr(n-1)×(ΔTon÷ΔTrn
ここで、fr(n-1):n−1番目のパケット群G(n-1)における補正後の受信側サンプリング周波数である。
より具体的には、補正部53は、VCO55に印加する電圧値Vcを補正することにより受信側サンプリング周波数frnの補正を行っている。例えば、新たな電圧値Vcは、以下のようにして算出することができる。
fr n = fr (n−1) × (ΔTo n ÷ ΔTr n )
Here, fr (n- 1) is the corrected reception-side sampling frequency in the (n-1) th packet group G (n-1) .
More specifically, the correction unit 53 corrects the reception side sampling frequency fr n by correcting the voltage value Vc applied to the VCO 55. For example, the new voltage value Vc can be calculated as follows.

Vc(V)=Vcp+D・Vmax/2F
ここで、Vcp:補正前の電圧値
Vmax:VCO制御電圧の上限
F:VCO制御電圧の振幅(+方向及び−方向)
D=A・(ΔTrn−ΔTon)/ΔTon
A:変換係数
である。
Vc (V) = Vcp + D · Vmax / 2F
Where Vcp: voltage value before correction
Vmax: Upper limit of VCO control voltage
F: Amplitude of VCO control voltage (+ direction and-direction)
D = A · (ΔTr n −ΔTo n ) / ΔTo n
A: Conversion coefficient
It is.

そして、補正部53は、算出した電圧値Vcを、VCO55に出力する。これにより、新たな電圧Vcに基づいて受信側サンプリング周波数frnが生成される。
ステップS43:補正部53は、通信終了の信号を受信していない場合は、次のパケット群についてステップS41〜S43の処理を行う。
ここで、受信側サンプリング周波数frnの補正は、次式のように係数aを用いて行うことができる。
Then, the correction unit 53 outputs the calculated voltage value Vc to the VCO 55. As a result, the reception-side sampling frequency fr n is generated based on the new voltage Vc.
Step S43: When the correction unit 53 has not received a communication end signal, the correction unit 53 performs the processes of steps S41 to S43 for the next packet group.
Here, the correction of the reception-side sampling frequency fr n can be performed using the coefficient a as in the following equation.

frn=fr(n-1)
a×{fr(n-1)×(ΔTon÷ΔTrn)−fr(n-1)
このように係数aを与えることで、補正による受信側サンプリング周波数frの変化を緩やかに設定する。例えば、数回の補正により徐々に受信側サンプリング周波数frを送信側サンプリング周波数fsに近づける。よって、補正による音質の急激な変化を和らげ、音質の低下を低減することができる。また、測定誤差がある場合に、測定誤差にすぐに応答して受信側サンプリング周波数frが補正される場合等の誤動作を低減することができる。
fr n = fr (n-1) +
a × {fr (n−1) × (ΔTo n ÷ ΔTr n ) −fr (n−1) }
By giving the coefficient a in this way, a change in the reception-side sampling frequency fr due to the correction is set gently. For example, the reception-side sampling frequency fr is gradually brought closer to the transmission-side sampling frequency fs by several corrections. Therefore, a sudden change in sound quality due to correction can be mitigated, and a decrease in sound quality can be reduced. Further, when there is a measurement error, it is possible to reduce malfunctions such as when the reception-side sampling frequency fr is corrected in response to the measurement error immediately.

また、前述したように、受信間隔と読出間隔とが1:1の関係になるように補正することに限定されず、例えば1:2等の所定の関係になるように受信側サンプリング周波数frを補正しても良い。
[効果]
上記の通り、受信装置2において取得した受信間隔及び読出間隔に基づいて受信側サンプリング周波数frを補正することができる。よって、受信バッファの蓄積量を制御し、オーバーフローやアンダーフローを防止し、再生されるデータの品質を高めることができる。また、受信時刻及び読出時刻は、受信装置側で取得される。よって、送信装置側からパケット送信時刻、パケット送信間隔に関連する時刻情報を受信装置側に送信する必要がない。そのため、送信するパケットのパケット構成を簡略化し、時刻情報のパケットへの組込時刻やパケットのデータ量を削減することで、パケットの伝送効率の向上や使用する帯域幅を減少することができる。
Further, as described above, the correction is not limited to the correction so that the reception interval and the reading interval have a relationship of 1: 1, but the reception-side sampling frequency fr is set so as to have a predetermined relationship such as 1: 2. It may be corrected.
[effect]
As described above, the reception-side sampling frequency fr can be corrected based on the reception interval and reading interval acquired by the reception device 2. Therefore, the amount of data stored in the reception buffer can be controlled, overflow and underflow can be prevented, and the quality of reproduced data can be improved. Further, the reception time and the read time are acquired on the receiving device side. Therefore, it is not necessary to transmit the time information related to the packet transmission time and the packet transmission interval from the transmission device side to the reception device side. Therefore, by simplifying the packet configuration of the packet to be transmitted and reducing the time of incorporation of the time information into the packet and the amount of packet data, the packet transmission efficiency can be improved and the bandwidth used can be reduced.

なお、送信装置1から一定間隔でパケットが送信されている必要はなく、不定の間隔でパケットが送信されている場合であっても第1実施形態例を適用可能である。ただし、送信装置1から一定間隔でパケットが送信されている場合は、受信側サンプリング周波数frを補正することにより個々のパケットの受信間隔と読出間隔とを一致させることができる。つまり、上記では受信側サンプリング周波数frの補正はパケット群毎に行われるため、パケット群を構成する個々のパケット毎の受信間隔と読出間隔との差の補正は困難である。しかし、送信装置1から一定間隔でパケットが送信されている場合は、受信側サンプリング周波数frを補正することで、個々のパケットの受信間隔とディジタルデータの読出間隔とを一致させることができる。よって、受信バッファ量が安定し、アンダーフローやオーバーフローの抑制をより細やかに行うことができる。
<第2実施形態例>
第2実施形態例では、アンダーフローやオーバーフローを抑制しつつパケットの欠落、パケットの受信装置への到達の遅れや揺らぎ等のネットワーク障害に対する対策を行う。
[構成]
第2実施形態例に係る音声通信システムの構成は、図2に示す第1実施形態例と同様であるので説明は省略する。また、送信されるパケットは、前記第1実施形態例の図4(b)に示すRTPヘッダを含む。よって、受信部31は、受信したパケットからパケットのシーケンシャル番号SNnを取得する。また、受信バッファ監視部37は、パケットのシーケンシャル番号SNnを監視している。さらに、パケットの欠落、パケットの受信装置への到達の遅れや揺らぎ等のネットワーク障害を検出するために、受信バッファ監視部37は、受信バッファ35内のデータの蓄積量を監視する。
The packets need not be transmitted from the transmission apparatus 1 at regular intervals, and the first embodiment can be applied even when packets are transmitted at irregular intervals. However, when packets are transmitted from the transmission apparatus 1 at regular intervals, the reception intervals and readout intervals of individual packets can be matched by correcting the reception-side sampling frequency fr. That is, in the above, since the correction of the reception side sampling frequency fr is performed for each packet group, it is difficult to correct the difference between the reception interval and the reading interval for each individual packet constituting the packet group. However, when packets are transmitted from the transmission apparatus 1 at regular intervals, the reception intervals of the individual packets and the digital data reading intervals can be matched by correcting the reception-side sampling frequency fr. Therefore, the reception buffer amount is stabilized, and underflow and overflow can be suppressed more precisely.
<Second Embodiment>
In the second embodiment, countermeasures are taken against network failures such as packet loss, packet arrival delay and fluctuation while suppressing underflow and overflow.
[Constitution]
The configuration of the voice communication system according to the second embodiment is the same as that of the first embodiment shown in FIG. Further, the transmitted packet includes the RTP header shown in FIG. 4B of the first embodiment. Therefore, the receiving unit 31 acquires the packet sequential number SN n from the received packet. The reception buffer monitoring unit 37 monitors the sequential number SN n of the packet. Furthermore, the reception buffer monitoring unit 37 monitors the amount of data stored in the reception buffer 35 in order to detect network failures such as packet loss, delay in packet arrival at the receiving device, and fluctuations.

以下では、所定数k(kは自然数でk≧2)個のパケットを1つのパケット群として受信間隔及び読出間隔を算出するものとする。また、所定数kのパケットを受信するのに要する受信間隔の平均をΔTravとする。
次に、受信装置2が行う処理の流れについて、ネットワーク障害に対する対策とともに詳細に説明する。まず、ネットワーク障害について説明する。
[ネットワーク障害]
ネットワーク障害により送信装置1から受信するパケットに損失が生じたり、受信パケットの到達時刻が遅延したりする。ネットワーク障害を、例えば(a)パケットロスト、(b)バーストロスト、(c)ゆらぎの3種類に分類し、図10を用いて各々を説明する。図10は、送信装置1から送信され、受信部31において受信されるパケットを時刻の推移とともに示す説明図である。
a)パケットロスト
図10(a)は、パケットロストの説明図である。シーケンシャル番号SN98、SN99のパケットP98、P99は、受信部31において正常に受信される。しかし、送信装置1から送信されるパケットに損失が生じ、シーケンシャル番号SN100、SN101のパケットP100、P101が受信部31において受信できていない。次に、受信部31は、パケットP99の次にシーケンシャル番号SN102のパケットP102を受信する。よって、受信バッファ35には、パケットP100、P101に含まれる有効な圧縮音声符号化情報は格納されず、パケットP100、P101に対応する無効な圧縮音声符号化情報が格納され、受信バッファ35から再生バッファ43へ読み出しが行われている。ここで、受信バッファ35内のデータの蓄積量が“0”にならない場合をパケットロストと定義する。つまり、パケットロストの場合は、損失したパケットのデータ分は受信バッファ35により吸収できる。
b)バーストロスト
図10(b)は、バーストロストの説明図である。シーケンシャル番号SN11のパケットP11までは、受信部31において正常に受信される。しかし、送信装置1から送信されるパケットに損失が生じ、シーケンシャル番号SN12〜SN51までのパケットP12〜パケットP51が受信部31において受信できていない。そして、受信部31は、パケットP11の次にシーケンシャル番号SN52のパケットP52を受信する。ここで、シーケンシャル番号SN12〜SN51までのパケットP12〜パケットP51が受信バッファ35に格納されないことにより、受信バッファ35内のデータの蓄積量が“0”になる場合をバーストロストと定義する。前述のパケットロストとは、パケットの損失が生じた場合に受信バッファ35内のデータの蓄積量が“0”になる点で異なる。
In the following, it is assumed that a predetermined number k (k is a natural number and k ≧ 2) packets are used as one packet group to calculate the reception interval and the reading interval. In addition, an average of reception intervals required to receive a predetermined number k of packets is ΔTrav.
Next, the flow of processing performed by the receiving device 2 will be described in detail together with countermeasures against network failures. First, a network failure will be described.
[Network failure]
A packet received from the transmission device 1 is lost due to a network failure, or the arrival time of the received packet is delayed. Network failures are classified into three types, for example, (a) packet lost, (b) burst lost, and (c) fluctuation, and each will be described with reference to FIG. FIG. 10 is an explanatory diagram showing a packet transmitted from the transmission apparatus 1 and received by the reception unit 31 together with a transition of time.
a) Packet Loss FIG. 10A is an explanatory diagram of packet loss. The packets P 98 and P 99 with sequential numbers SN 98 and SN 99 are normally received by the receiving unit 31. However, a loss occurs in the packet transmitted from the transmission apparatus 1, and the packets P 100 and P 101 of the sequential numbers SN 100 and SN 101 cannot be received by the reception unit 31. Then, the receiving unit 31 receives the packet P 102 sequential numbers SN 102 to the next packet P 99. Therefore, the valid compressed speech coding information included in the packets P 100 and P 101 is not stored in the reception buffer 35, but invalid compressed speech coding information corresponding to the packets P 100 and P 101 is stored. Reading from the buffer 35 to the reproduction buffer 43 is performed. Here, a case where the amount of data stored in the reception buffer 35 does not become “0” is defined as packet lost. That is, in the case of packet lost, the lost packet data can be absorbed by the reception buffer 35.
b) Burst Lost FIG. 10B is an explanatory diagram of burst lost. Up to the packet P 11 with the sequential number SN 11 is normally received by the receiving unit 31. However, a loss occurs in the packet transmitted from the transmission device 1, and packets P 12 to P 51 with sequential numbers SN 12 to SN 51 cannot be received by the receiving unit 31. Then, the receiving unit 31 receives the packet P 52 with the sequential number SN 52 next to the packet P 11 . Defined herein, by the packet P 12 ~ packet P 51 to the sequential number SN 12 to SN 51 is not stored in the reception buffer 35, a case where the amount of accumulated data in the receive buffer 35 becomes "0" and burst Lost To do. It differs from the packet lost described above in that the amount of data stored in the reception buffer 35 becomes “0” when a packet loss occurs.

バーストロストが生じた場合、バーストロスト後に受信するパケットが、ネットワーク障害がなければ本来受信される時刻に受信された時は、受信したパケットを受信バッファ35に書き込む。例えば、シーケンシャル番号SN51のパケットP51までのパケットは損失したが、パケットP52が本来受信される時刻に受信された場合は、パケットP52は受信バッファ35に書き込まれる。一方、本来と異なる時刻に受信された場合には、古いパケットが受信されたとして破棄する。
c)ゆらぎ
図10(c)は、ゆらぎの説明図である。シーケンシャル番号SN11のパケットP11までは、受信部31において正常に受信される。しかし、ネットワークのゆらぎなどによりシーケンシャル番号SN11の次のパケットP12が受信部31において受信されるまでに遅延が生じている。ここで、パケットP12の受信部31での受信に遅延が生じることにより、受信バッファ35内のデータの蓄積量が“0”になる場合をゆらぎと定義する。
When burst loss occurs, when a packet received after burst loss is received at a time when it is originally received unless there is a network failure, the received packet is written in the reception buffer 35. For example, packets up to the packet P 51 with the sequential number SN 51 are lost, but if the packet P 52 is received at the time when it is originally received, the packet P 52 is written in the reception buffer 35. On the other hand, if it is received at a time different from the original time, it is discarded as an old packet is received.
c) Fluctuation FIG. 10C is an explanatory diagram of fluctuation. Up to the packet P 11 with the sequential number SN 11 is normally received by the receiving unit 31. However, there is a delay until the receiving unit 31 receives the next packet P 12 of the sequential number SN 11 due to network fluctuations. Here, a case where the amount of data stored in the reception buffer 35 becomes “0” due to a delay in reception of the packet P 12 by the reception unit 31 is defined as fluctuation.

ゆらぎが生じた場合、ゆらぎ後に受信するパケットは、受信部31で本来受信される時刻から遅れ、短い時間間隔で受信される。よって、ゆらぎ後に受信されるパケットが本来の受信時刻に受信されるまで、受信したパケットを破棄する。そして、本来の受信時刻に受信されるようになると、受信したパケットを受信バッファ35に書き込む。
[処理]
次に、各部で行われる処理について説明する。
(1)状態判定処理
まず、パケットの損失や到達時刻の遅延がなくパケットを正常に受信しているか、あるいはネットワーク障害によりパケットロスト、バーストロスト、ゆらぎの状態にあるかについての状態判定処理を説明する。この状態判定処理は、後述の再生処理中に受信バッファ監視部37により行われる。以下、受信したパケットには、図4(b)に示すようにシーケンシャル番号SNnが含まれていることとする。なお、受信バッファ監視部37は、受信部31において受信したパケットのシーケンシャル番号SNnを監視するとともに、受信バッファ35内の受信バッファ量を監視している。
a)パケットを送信順に遅延無く正常に受信しているか
パケットを送信順に受信しているかは、受信しているパケットのシーケンシャル番号SNnを受信バッファ監視部37により監視し、シーケンシャル番号SNnの前後関係や抜けが無いか等を判定することにより行う。さらに、パケットの受信に遅れが生じていないかは、受信バッファ監視部37により受信バッファ35内の受信バッファ量を監視することにより行う。例えば、パケットを損失している場合やパケットの受信に遅れが生じている場合には、受信バッファ35への圧縮音声符号化情報の格納がないまま圧縮音声符号化情報が読み出され、受信バッファ量が減少する。この減少が無いことを見ることで正常であることを判定する。
b)パケットロストの状態であるか
パケットロストの状態であるかは、受信バッファ監視部37によりシーケンシャル番号SNnの抜けが無いかを判定することにより行う。ここで、パケットロストでは受信バッファ35で吸収できる程度のパケットの損失であるため、受信バッファ35内の受信バッファ量は減少するが受信バッファ量が“0”にはならない。
c)バーストロスト又はゆらぎの状態であるか
バーストロスト又はゆらぎの状態であるかは、受信バッファ量が“0”であるかを判定することにより行う。この場合、受信バッファ35で吸収できる以上のパケットを損失しているため、受信バッファ35内の受信バッファ量が“0”になる。バーストロスト又はゆらぎの状態であると判定された場合は、受信バッファ監視部37は、バーストロスト又はゆらぎの状態にあることを示す「ロストフラグ」を立てる。
When fluctuations occur, packets received after the fluctuations are received at short time intervals, delayed from the time at which the reception unit 31 originally receives the packets. Therefore, the received packet is discarded until the packet received after the fluctuation is received at the original reception time. When the packet is received at the original reception time, the received packet is written into the reception buffer 35.
[processing]
Next, processing performed in each unit will be described.
(1) State determination processing First, state determination processing for whether a packet is received normally without packet loss or arrival time delay, or whether it is in a packet lost, burst lost, or fluctuation state due to a network failure will be described. To do. This state determination process is performed by the reception buffer monitoring unit 37 during a reproduction process described later. Hereinafter, it is assumed that the received packet includes a sequential number SN n as shown in FIG. The reception buffer monitoring unit 37 monitors the sequential number SN n of the packet received by the reception unit 31 and monitors the reception buffer amount in the reception buffer 35.
a) Whether the packets are normally received in the order of transmission without delay Whether the packets are received in the order of transmission is determined by monitoring the sequential number SN n of the received packet by the reception buffer monitoring unit 37 and before and after the sequential number SN n . This is done by determining whether there are any relationships or omissions. Further, whether or not there is a delay in packet reception is performed by monitoring the reception buffer amount in the reception buffer 35 by the reception buffer monitoring unit 37. For example, when a packet is lost or when reception of a packet is delayed, the compressed speech encoded information is read without storing the compressed speech encoded information in the reception buffer 35, and the reception buffer The amount decreases. It is judged normal by seeing that there is no decrease.
b) Whether the packet is lost or not is determined by determining whether the sequential number SN n is missing by the reception buffer monitoring unit 37. Here, in the packet lost, the packet loss is such that it can be absorbed by the reception buffer 35. Therefore, the reception buffer amount in the reception buffer 35 decreases, but the reception buffer amount does not become “0”.
c) Whether the data is in the burst lost or fluctuation state or the burst lost or fluctuation state is determined by determining whether the reception buffer amount is “0”. In this case, since more packets than can be absorbed by the reception buffer 35 are lost, the reception buffer amount in the reception buffer 35 becomes “0”. When it is determined that the state is the burst lost or the fluctuation, the reception buffer monitoring unit 37 sets a “lost flag” indicating that the burst lost or the fluctuation is present.

さらに、バーストロストかゆらぎのいずれかであるかは、例えばシーケンシャル番号SNnを比較することにより次のように行う。図10(b)及び(c)に示すように、バーストロスト又はゆらぎが発生する直前に受信部31が受信したパケットのシーケンシャル番号をSNlastとする。ここで、バーストロスト又はゆらぎが発生した場合は、受信バッファ監視部37が受信バッファ35の受信バッファ量が“0”となっていることを監視しており、受信バッファ監視部37からの指示により再生バッファ43には無音データが挿入される。この無音データの挿入回数をCsdとして、バーストロスト又はゆらぎが発生していなければ現在受信するはずの受信パケットのシーケンシャル番号を推定する。推定される推定シーケンシャル番号SNeは、SNe=SNlast+Csdより算出できる。ここで、バーストロスト又はゆらぎが発生した直後に受信する受信パケットのシーケンシャル番号をSNaとする。このシーケンシャル番号SNaと推定シーケンシャル番号SNeとを比較する。推定シーケンシャル番号SNeとシーケンシャル番号SNaとの差が許容範囲内である場合はバーストロストであると判定する。つまり、推定シーケンシャル番号SNeまでのパケットは損失しているが、その後に受信したパケットは本来受信される時刻に受信されている。一方、許容範囲内でない場合は、推定シーケンシャル番号SNeとシーケンシャル番号SNaとの間に開きがあり、パケットの受信時刻に遅延が発生しており、ゆらぎの状態であると判定する。
(2)受信処理
次に、受信処理について説明する。図11は、受信装置2が行う受信処理の流れの一例を示すフローチャートである。受信装置2は、送信装置1から通信の開始を示すコマンドを受信することにより、以下の処理を開始する。
Further, whether it is a burst lost or a fluctuation is performed, for example, by comparing sequential numbers SN n as follows. As shown in FIGS. 10B and 10C, the sequential number of the packet received by the receiving unit 31 immediately before burst loss or fluctuation occurs is SN last . Here, when burst lost or fluctuation occurs, the reception buffer monitoring unit 37 monitors that the reception buffer amount of the reception buffer 35 is “0”, and in response to an instruction from the reception buffer monitoring unit 37. Silence data is inserted into the reproduction buffer 43. If the silent data insertion count is Csd, the sequential number of the received packet that is supposed to be received if the burst lost or fluctuation does not occur is estimated. The estimated sequential number SN e to be estimated can be calculated from SN e = SN last + Csd. Here, the sequential number of the received packet received immediately after the occurrence of burst lost or fluctuation is SN a . The sequential number SN a is compared with the estimated sequential number SN e . When the difference between the estimated sequential number SN e and the sequential number SN a is within an allowable range, it is determined that the burst is lost. That is, the packets up to the estimated sequential number SN e are lost, but the packets received thereafter are received at the time when they are originally received. On the other hand, when it is not within the allowable range, there is a gap between the estimated sequential number SN e and the sequential number SN a, and it is determined that there is a delay in the reception time of the packet, and that the state is a fluctuation.
(2) Reception processing Next, reception processing will be described. FIG. 11 is a flowchart illustrating an example of a flow of reception processing performed by the reception device 2. The receiving device 2 starts the following process by receiving a command indicating the start of communication from the transmitting device 1.

ステップS51:受信部31は、通信の終了を示すコマンドを送信装置1から受信するまで、以下のステップS52〜S61までの処理を行う。通信の終了を示すコマンドを受信すると、処理を終了する。
ステップS52:受信部31は、パケットを待機しており、パケットを受信すると、ステップS53に移行する。
Step S51: The receiving unit 31 performs the following steps S52 to S61 until a command indicating the end of communication is received from the transmission device 1. When a command indicating the end of communication is received, the process ends.
Step S52: The receiving unit 31 waits for a packet, and when receiving a packet, proceeds to step S53.

ステップS53:受信バッファ監視部37は、バーストロスト又はゆらぎの状態にあることを示す「ロストフラグ」が立っているかどうかを確認する。「ロストフラグ」は、後述の再生処理中で行われる状態判定処理の結果を示す。
ステップS54:「ロストフラグ」が立っていない場合、つまり、パケットを正常に受信しているか、パケットロストの状態である場合は、受信バッファ35への書き込みが可能かどうかを判定する。これは、パケットの受信に許容範囲以上の遅延が発生し、古いパケットを受信しているためである。書き込みが可能であると判定された場合は、ステップS55に進み、書き込みが不可能であると判定された場合は、ステップS61に進む。
Step S53: The reception buffer monitoring unit 37 checks whether or not the “lost flag” indicating that the burst lost or fluctuation state is set. The “lost flag” indicates a result of a state determination process performed during a reproduction process described later.
Step S54: If the “lost flag” is not set, that is, if the packet is normally received or the packet is lost, it is determined whether or not writing to the reception buffer 35 is possible. This is because the reception of a packet has a delay that exceeds an allowable range, and an old packet is received. If it is determined that writing is possible, the process proceeds to step S55. If it is determined that writing is not possible, the process proceeds to step S61.

ステップS55:受信バッファ監視部37は、受信バッファ35に新たな圧縮音声符号化情報を書き込む空きメモリがあるか否かを判断する。
ステップS56:空きメモリがあれば、受信部31は、受信したパケットを受信バッファ35に書き込む。
ステップS57、S58:受信バッファ35に空きメモリがない場合、受信部31は、受信バッファ35内に蓄積されている古い圧縮音声符号化情報を破棄し(S57)、新たに受信したパケットの圧縮音声符号化情報を受信バッファ35に書き込む(S58)。
Step S55: The reception buffer monitoring unit 37 determines whether or not there is an empty memory in which new compressed audio coding information is written in the reception buffer 35.
Step S56: If there is free memory, the receiving unit 31 writes the received packet in the reception buffer 35.
Steps S57 and S58: When there is no free memory in the reception buffer 35, the reception unit 31 discards the old compressed audio coding information stored in the reception buffer 35 (S57), and the compressed audio of the newly received packet. The encoded information is written in the reception buffer 35 (S58).

ステップS59:「ロストフラグ」が立っている場合、つまり、バーストロスト又はゆらぎの状態である場合は、受信バッファ35への書き込みが可能かどうかを判定する。これは、バーストロストの場合は受信したパケットは本来受信される時刻に受信されているが、ゆらぎの場合はパケットの受信に許容範囲以上の遅延が発生し、古いパケットを受信しているためである。よって、ゆらぎの場合は、許容範囲以上の遅延後に受信された古いパケットを破棄する必要がある。そこで、受信バッファ監視部37は、現在受信している受信パケットのシーケンシャル番号SNaと推定シーケンシャル番号SNeとの比較を行う。そして比較結果に基づいて、現在受信しているパケットに含まれる圧縮音声符号化情報を受信バッファ35に書き込むかどうかを判定する。受信したパケットが、本来受信される時刻に受信されている場合は、書き込むと判定する。一方、受信したパケットが、本来受信される時刻よりも許容範囲以上の遅延後に受信されている場合は、書き込まないと判定する。 Step S59: If the “lost flag” is set, that is, if it is in a burst lost or fluctuation state, it is determined whether or not writing to the reception buffer 35 is possible. This is because in the case of burst lost, the received packet is originally received at the time it is received, but in the case of fluctuation, the packet reception is delayed more than the allowable range and an old packet is received. is there. Therefore, in the case of fluctuation, it is necessary to discard the old packet received after a delay exceeding the allowable range. Therefore, the reception buffer monitoring unit 37 makes a comparison between the sequential number SN a received packet currently being received and the estimated sequential number SN e. Then, based on the comparison result, it is determined whether or not to write the compressed audio coding information included in the currently received packet to the reception buffer 35. If the received packet is received at the time it is originally received, it is determined to be written. On the other hand, if the received packet has been received after a delay of an allowable range or more than the time when it was originally received, it is determined not to be written.

ステップS60:ステップS59において書き込むと判定された場合は、現在受信しているパケットに含まれる圧縮音声符号化情報を受信バッファ35に書き込むことを示す「書き込み再開フラグ」を立てる。次に、ステップS55に進み、受信バッファ35への書き込みを行う。
ステップS61:一方、ステップS59において書き込まないと判定された場合は、現在受信しているパケットを破棄する。
Step S60: If it is determined in step S59 that writing is to be performed, a “write restart flag” indicating that the compressed audio coding information included in the currently received packet is to be written to the reception buffer 35 is set. Next, the process proceeds to step S55, and writing to the reception buffer 35 is performed.
Step S61: On the other hand, if it is determined in step S59 that writing is not performed, the currently received packet is discarded.

以上の処理により、受信バッファ35に次々に圧縮音声符号化情報を蓄積する。なお、上記ステップS51では、送信装置1から通信の終了を示すコマンドを受信する場合を記載したが、受信装置2内のコマンドに基づいて通信を終了しても良い。また、上記ステップS57及びS58においては、古い圧縮音声符号化情報を受信バッファ35に保持しておき、新たに受信したパケットの圧縮音声符号化情報を破棄しても良い。
(2)再生処理
次に、再生処理について説明する。図12は、受信装置2が行う再生処理の流れの一例を示すフローチャートである。受信装置2は、送信装置1から通信の開始を示すコマンドを受信することにより、以下の処理を開始する。
Through the above processing, the compressed audio coding information is accumulated in the reception buffer 35 one after another. In step S51, the case where a command indicating the end of communication is received from the transmission device 1 is described. However, the communication may be ended based on the command in the reception device 2. In steps S57 and S58, the old compressed speech coding information may be held in the reception buffer 35, and the compressed speech coding information of the newly received packet may be discarded.
(2) Reproduction Process Next, the reproduction process will be described. FIG. 12 is a flowchart illustrating an example of the flow of reproduction processing performed by the reception device 2. The receiving device 2 starts the following process by receiving a command indicating the start of communication from the transmitting device 1.

ステップS62、S63:受信バッファ監視部37は、再生開始条件が満たされたか否かを判断し、満たされた場合は読出部39に再生開始信号を送信する(S62)。再生開始信号を受信した読出部39は、音声の再生処理を開始させる(S63)。
ステップS64:受信装置2が、通信の終了を示すコマンドを送信装置1から受信するまで、ステップS64〜S77までの再生処理を行う。通信の終了を示すコマンドを受信すると、再生処理を終了する。
Steps S62 and S63: The reception buffer monitoring unit 37 determines whether or not the reproduction start condition is satisfied, and if satisfied, transmits a reproduction start signal to the reading unit 39 (S62). The reading unit 39 that has received the reproduction start signal starts the audio reproduction process (S63).
Step S64: Until the reception device 2 receives a command indicating the end of communication from the transmission device 1, the reproduction processing from steps S64 to S77 is performed. When a command indicating the end of communication is received, the reproduction process is terminated.

ステップS65:再生が継続している場合は、読出部39は、読出時刻取得部45の呼出に応答して、受信バッファ35から圧縮音声符号化情報を1パケット分ずつ読み出す。ついで、復号化部41、再生バッファ43、読出時刻取得部45、DAC47、増幅器49及び出力部51により、1パケットに含まれる圧縮音声符号化情報を全てアナログデータに変換して出力されるまで、再生が行われる。   Step S65: When the reproduction is continued, the reading unit 39 reads the compressed audio coding information for each packet from the reception buffer 35 in response to the call of the reading time acquisition unit 45. Next, until the decoding unit 41, the reproduction buffer 43, the reading time acquisition unit 45, the DAC 47, the amplifier 49, and the output unit 51 convert all the compressed audio coding information contained in one packet into analog data and output it, Playback is performed.

ステップS66:1パケット分の再生が終了すると、受信バッファ監視部37は、バーストロスト又はゆらぎの状態にあることを示す「ロストフラグ」が立っているかどうかを確認する。このときの「ロストフラグ」は、ステップS65で1パケットを再生する前の状態を示している。「ロストフラグ」が立っていない場合、つまり、ステップS65の1パケット再生する前において、パケットを正常に受信しているか、パケットロストの状態にあった場合は、ステップS67へ進む。一方、「ロストフラグ」が立っている場合、つまり、バーストロスト又はゆらぎの状態であった場合はステップS74へ進む。   Step S66: When the reproduction for one packet is completed, the reception buffer monitoring unit 37 checks whether or not the “lost flag” indicating that the burst lost or fluctuation state is set. The “lost flag” at this time indicates a state before one packet is reproduced in step S65. If the “lost flag” is not set, that is, if the packet is normally received or the packet is lost before reproducing one packet in step S65, the process proceeds to step S67. On the other hand, if the “lost flag” is set, that is, if it is in a burst lost or fluctuation state, the process proceeds to step S74.

ステップS67、S68:パケットを正常に受信しているか、パケットロストの状態にあった場合は、受信バッファ監視部37は、ステップS65で1パケットを再生した後において、受信バッファ35内に圧縮音声符号化情報が蓄積されているか否かを判断する(S67)。受信バッファ35に圧縮音声符号化情報が蓄積されている場合は、読出部39は、1パケット分の圧縮音声符号化情報を受信バッファ35から読み出す(S68)。   Steps S67 and S68: If the packet is normally received or is in a packet lost state, the reception buffer monitoring unit 37 reproduces one packet in step S65, and then stores the compressed audio code in the reception buffer 35. It is determined whether or not the digitized information is accumulated (S67). When the compressed audio coding information is stored in the reception buffer 35, the reading unit 39 reads the compressed audio coding information for one packet from the reception buffer 35 (S68).

ステップS69:受信バッファ35に圧縮音声符号化情報が蓄積されていない場合は、受信バッファ監視部37は、ステップS65で1パケットを再生した後における状態判定処理を行う。
ステップS70、S71:ステップS69の状態判定処理の結果、バーストロストまたはゆらぎの状態ではないと判定された場合は、読出部39は、受信バッファ監視部37の指示により1パケット分の無音データを再生バッファ43に挿入する。
Step S69: If compressed audio coding information is not accumulated in the reception buffer 35, the reception buffer monitoring unit 37 performs a state determination process after reproducing one packet in step S65.
Steps S70 and S71: If it is determined as a result of the state determination process in step S69 that the burst lost or fluctuation state is not detected, the reading unit 39 reproduces silence data for one packet according to an instruction from the reception buffer monitoring unit 37. Insert into buffer 43.

ステップS72、73:ステップS70において、バーストロストまたはゆらぎの状態にあると判定された場合は、受信バッファ監視部37は、「ロストフラグ」を立てる(S72)。このとき、受信部31はパケットを正常に受信できていないため、受信時刻取得部33においてパケットの受信時刻を取得できていない。そのため、受信時刻取得部33は、1つのパケット群を構成する所定数kのパケットを受信するのに要する受信間隔の平均ΔTravを、パケットを損失したパケット群の受信間隔と設定する(S73)。その後、ステップS71に進み、無音データを挿入する。   Steps S72 and 73: If it is determined in step S70 that the burst lost or fluctuation state exists, the reception buffer monitoring unit 37 sets a “lost flag” (S72). At this time, since the reception unit 31 has not received the packet normally, the reception time acquisition unit 33 cannot acquire the reception time of the packet. Therefore, the reception time acquisition unit 33 sets the average reception interval ΔTav required to receive a predetermined number k of packets constituting one packet group as the reception interval of the packet group that lost the packet (S73). Then, it progresses to step S71 and silence data is inserted.

ステップS74:ステップS66において、ステップS65で1パケットを再生する前の状態が、バーストロスト又はゆらぎの状態であったと判定された場合は、「書き込み再開フラグ」が立っているかどうかを判定する。「書き込み再開フラグ」は、受信処理のステップS60において立てられるフラグであり、現在受信している受信パケットを受信バッファ35に書き込むかどうかを示す。   Step S74: If it is determined in step S66 that the state before reproducing one packet in step S65 is a burst lost or fluctuation state, it is determined whether or not a “write resume flag” is set. The “write restart flag” is a flag set in step S60 of the reception process, and indicates whether or not the currently received reception packet is to be written in the reception buffer 35.

ステップS75、S76:「書き込み再開フラグ」が立っている場合、つまり、現在受信している受信パケットを受信バッファ35に書き込む場合は、「ロストフラグ」を終了する(S75)。ここでは、現在受信しているパケットの受信バッファ35への書き込みが再開され、バーストロスト又はゆらぎの状態から脱している。そして、読出部39は、1パケット分の圧縮音声符号化情報を受信バッファ35から読み出す(S76)。   Steps S75 and S76: When the “write resume flag” is set, that is, when the currently received reception packet is written to the reception buffer 35, the “lost flag” is terminated (S75). In this case, the writing of the currently received packet to the reception buffer 35 is resumed, and the packet is lost from the burst lost or fluctuation state. Then, the reading unit 39 reads the compressed audio coding information for one packet from the reception buffer 35 (S76).

ステップS77:「書き込み再開フラグ」が立っていない場合、つまり、現在受信しているパケットを破棄する場合は、読出部39は、受信バッファ監視部37の指示により1パケット分の無音データを再生バッファ43に挿入する。
なお、上記では、送信装置1から通信開始又は通信終了を示すコマンドを受信する場合を記載したが、受信装置2内のコマンドに基づいて通信を開始又は終了しても良い。
(3)受信時刻取得処理
図13は、受信装置2が行う受信時刻取得処理の流れの一例を示すフローチャートである。受信時刻取得部33は、前述の通り、1つのパケット群を構成する所定数k個のパケットが受信部31において受信される毎に、つまり所定数k個毎にパケットの受信時刻を取得する。
Step S77: If the “write resume flag” is not set, that is, if the currently received packet is discarded, the reading unit 39 reproduces the silence data for one packet according to the instruction of the reception buffer monitoring unit 37. 43.
In the above description, a case where a command indicating communication start or communication end is received from the transmission device 1 is described. However, communication may be started or ended based on a command in the reception device 2.
(3) Reception Time Acquisition Processing FIG. 13 is a flowchart illustrating an example of the flow of reception time acquisition processing performed by the reception device 2. As described above, the reception time acquisition unit 33 acquires the reception time of a packet every time a predetermined number k packets constituting one packet group are received by the reception unit 31, that is, every predetermined number k.

以下、パケットの損失や受信時刻の遅延を監視する基準となるシーケンシャル番号を基準シーケンシャル番号SNnとする。ここで、基準シーケンシャル番号SNnの添字nは、パケット群Gnに対応している。
ステップS81:受信時間取得処理の開始にあたって、受信バッファ監視部37は、基準シーケンシャル番号SNnの初期値として、及びパケット群の送信順を表すパケット群Gnの添字nの初期値として、n=0に設定する。
Hereinafter, a sequential number serving as a reference for monitoring packet loss and reception time delay is referred to as a reference sequential number SN n . Here, the subscript n of the reference sequential number SN n corresponds to the packet group G n .
Step S81: At the start of the reception time acquisition process, the reception buffer monitoring unit 37 sets n = as the initial value of the reference sequential number SN n and the initial value of the subscript n of the packet group G n indicating the transmission order of the packet group. Set to 0.

ステップS82、S83:受信部31は、1番目のパケット群G1に含まれる最初のパケットP0を受信する(S82)。そして、受信バッファ監視部37は、1番目のパケット群G1に含まれる最初のパケットP0のシーケンシャル番号SNrをRTPヘッダから取得する(S83)。
ステップS84:次に、受信バッファ監視部37は、取得した最初のシーケンシャル番号SNrを、最初のパケットP0の基準シーケンシャル番号SN0に設定(SN0=SNr)する。例えば、取得したパケットP0のシーケンシャル番号が“3”である場合は、SN0=SN3となる。
Steps S82 and S83: The receiving unit 31 receives the first packet P 0 included in the first packet group G 1 (S82). Then, the reception buffer monitoring unit 37 acquires the sequential number SN r of the first packet P 0 included in the first packet group G 1 from the RTP header (S83).
Step S84: Next, the reception buffer monitoring unit 37 sets the acquired first sequential number SN r to the reference sequential number SN 0 of the first packet P 0 (SN 0 = SN r ). For example, when the sequential number of the acquired packet P 0 is “3”, SN 0 = SN 3 .

ステップS85:受信時刻取得部33は、最初のパケットP0の受信部31での受信時刻Tr0を取得する。
ステップS86:次に、nを加算する。nが1加算されることにより、基準シーケンシャル番号はSN1、SN2、SN3…となる。
ステップS87:ステップS86における加算前の基準シーケンシャル番号SNn-1に、1つのパケット群を構成するパケットの個数である所定数kを加算し、基準シーケンシャル番号SNnを算出する。例えば、基準シーケンシャル番号SN1=SN0+k、SN2=SN1+k、…となる。この基準シーケンシャル番号SNnのパケットを受信した時刻に基づいて受信間隔が算出される。
Step S85: The reception time acquisition unit 33 acquires the reception time Tr 0 of the first packet P 0 at the reception unit 31.
Step S86: Next, n is added. By adding 1 to n, the reference sequential numbers are SN 1 , SN 2 , SN 3 .
Step S87: A predetermined number k, which is the number of packets constituting one packet group, is added to the reference sequential number SN n-1 before addition in step S86 to calculate the reference sequential number SN n . For example, reference sequential numbers SN 1 = SN 0 + k, SN 2 = SN 1 + k,. The reception interval is calculated based on the time when the packet having the reference sequential number SN n is received.

ステップS88:受信装置2が、通信の終了を示すコマンドを送信装置1から受信するまで受信時刻取得処理を行う。通信の終了を示すコマンドを受信すると、受信時刻取得処理を終了する。
ステップS89、S90:受信部31は、順次、パケットを受信する(S89)。受信バッファ監視部37は、受信したパケットのシーケンシャル番号SNrをRTPヘッダから取得する(S90)。
Step S88: Reception time acquisition processing is performed until the reception device 2 receives a command indicating the end of communication from the transmission device 1. When a command indicating the end of communication is received, the reception time acquisition process is terminated.
Steps S89 and S90: The receiving unit 31 sequentially receives packets (S89). The reception buffer monitoring unit 37 acquires the sequential number SN r of the received packet from the RTP header (S90).

ステップS91:受信バッファ監視部37は、バーストロスト又はゆらぎの状態にあるかを判定する。
ステップS92:バーストロスト又はゆらぎの状態でない場合は、ステップS90で取得したパケットのシーケンシャル番号SNrがステップS87で算出した基準シーケンシャル番号SNn以上(SNr≧SNn)であるか比較する。SNr<SNnである場合は、ステップS88に戻り、パケットを受信する。例えば、基準シーケンシャル番号SN0=SN3である場合、ステップS87において次の基準シーケンシャル番号SN1がSN1=SN(3+k)と算出される。よって、受信したパケットのシーケンシャル番号SNrがSNr=SN(3+k)になるまでステップS88〜ステップS92を繰り返す。
Step S91: The reception buffer monitoring unit 37 determines whether it is in a burst lost or fluctuation state.
Step S92: If it is not the state of the burst lost or wobble, sequential number SN r packet acquired in step S90 is compared whether the reference sequential number SN n or calculated in step S87 (SN r ≧ SN n) . If SN r <SN n , the process returns to step S88 to receive the packet. For example, when the reference sequential number SN 0 = SN 3 , the next reference sequential number SN 1 is calculated as SN 1 = SN (3 + k) in step S87. Therefore, steps S88 to S92 are repeated until the sequential number SN r of the received packet becomes SN r = SN (3 + k) .

ステップS93:SNr≧SNnである場合は、基準シーケンシャル番号SNnと受信したパケットのシーケンシャル番号SNrが等しい(SNr=SNn)かどうかを判定する。
ステップS94:SNr=SNnである場合、つまりパケットの損失がなく正常にパケットを受信している場合、受信時刻取得部33は、シーケンシャル番号SNr(SNr=SNn)のパケットの受信時刻をTrnを取得する。ここで、受信時刻取得部33は、SNr=SN1である場合、1番目のパケット群G1における所定数k個のパケットを受信した後の受信時刻としてTr1を取得する。また、この受信時刻Tr1は、2番目のパケット群G2における最初のパケットの受信時刻となる。つまり、n番目のパケット群Gnにおける最初のパケットの受信時刻としてTr(n-1)を取得し、所定数k個のパケットを受信した後の受信時刻としてTrnを取得する。
Step S93: If SNr ≧ SNn, it is determined whether or not the reference sequential number SNn is equal to the sequential number SNr of the received packet (SNr = SNn).
Step S94: When SNr = SNn, that is, when the packet is normally received without packet loss, the reception time acquisition unit 33 acquires Trn as the reception time of the packet with the sequential number SNr (SNr = SNn). To do. Here, when SNr = SN1, the reception time acquisition unit 33 acquires Tr1 as the reception time after receiving a predetermined number k packets in the first packet group G1. The reception time Tr1 is the reception time of the first packet in the second packet group G2. That is, Tr (n−1) is acquired as the reception time of the first packet in the n-th packet group G n , and Trn is acquired as the reception time after receiving a predetermined number k packets.

ステップS95:ステップS93において、基準シーケンシャル番号SNnとシーケンシャル番号SNrが等しくないと判定された場合、つまりSNr>SNnでありパケットロストの状態である場合は、まず現在受信しているシーケンシャル番号SNrのパケットの受信時刻RTrを取得する。
ステップS96:次に、パケットロストにより損失したパケットの欠落数LCをLC=SNr−SNnより算出する。なお、パケット欠落数は、受信バッファ監視部37により受信バッファ量を監視することによっても算出できる。つまり、パケットの損失により受信バッファ35にはパケットが格納されないため、受信バッファ監視部37により受信バッファ量の減少を監視することでパケット欠落数LCを求めることができる。
Step S95: If it is determined in step S93 that the reference sequential number SNn is not equal to the sequential number SNr, that is, if SNr> SNn and the packet is lost, the packet of the sequential number SNr currently received is firstly received. The reception time RTr of is acquired.
Step S96: Next, the number of lost packets LC lost due to packet loss is calculated from LC = SNr−SNn. Note that the number of missing packets can also be calculated by monitoring the reception buffer amount by the reception buffer monitoring unit 37. That is, since the packet is not stored in the reception buffer 35 due to packet loss, the packet loss number LC can be obtained by monitoring the decrease in the reception buffer amount by the reception buffer monitoring unit 37.

ステップS97:パケットを受信できなかった時刻Tcをパケット欠落数LCを用いて算出する。ここで、所定数kのパケットを受信するのに要する受信間隔の平均をΔTravとし、パケット1個当たりの受信間隔をΔTrav/kである。よって、パケットを受信できなかった時刻Tc=LC×ΔTrav/kと算出される。
ステップS98:次に、1つのパケット群の最後のパケットについて、パケットを損失することなく受信した場合における受信時刻を推定する。推定受信時刻Teは、現在の受信時刻RTrから、パケットを受信できなかった時刻Tc=LC×ΔTrav/kを減算(Te=RTr−Tc)することにより算出される。
Step S97: Time Tc at which the packet could not be received is calculated using the packet loss number LC. Here, the average of reception intervals required to receive a predetermined number k of packets is ΔTrav, and the reception interval per packet is ΔTrav / k. Therefore, the time when the packet cannot be received is calculated as Tc = LC × ΔTrav / k.
Step S98: Next, the reception time when the last packet of one packet group is received without loss is estimated. The estimated reception time Te is calculated by subtracting the time Tc = LC × ΔTrav / k at which the packet could not be received from the current reception time RTr (Te = RTr−Tc).

図10(a)を用いてより詳細に説明する。パケットの損失が無ければ受信部31がシーケンシャル番号SN100のパケットP100を受信する。つまり、基準シーケンシャル番号がSN100とされているとする。このとき、図10(a)では、P100及び次のパケットP101のパケットを損失し、シーケンシャル番号SN100とSN101を受信できていない。また、パケットロスト後にシーケンシャル番号SN102のパケットを受信しており、シーケンシャル番号がSN102である。よって、パケットの欠落数LC=SN102−SN100=2と算出される。さらに、シーケンシャル番号SN102の受信時刻はRTr102である。
よって、パケットを受信できなかった時刻Tc=2×ΔTrav/100となり、推定受信時刻Te=RTr102−2×ΔTrav/100と算出される。
This will be described in more detail with reference to FIG. If there is no packet loss, the receiving unit 31 receives the packet P100 having the sequential number SN100. That is, it is assumed that the reference sequential number is SN100. At this time, in FIG. 10A, the packets of P100 and the next packet P101 are lost, and the sequential numbers SN100 and SN101 cannot be received. Further, after the packet loss has received the packet of the sequential number SN102, the sequential number is S N102. Therefore, the number of lost packets LC = SN102−SN100 = 2 is calculated. Further, the reception time of the sequential number S N102 is RTr102.
Therefore, the time Tc = 2 × ΔTrav / 100 when the packet could not be received is calculated, and the estimated reception time Te = RTr102-2 × ΔTrav / 100 is calculated.

ステップS99:ステップS94において受信時刻Trnを取得した場合には、受信時刻取得部33は、n番目のパケット群Gnにおける受信間隔としてΔTrn=Trn−Tr(n-1)を算出する。また、ステップS98において推定受信時刻Teを算出した場合には、n番目のパケット群Gnにおける受信間隔としてΔTrn=Te−Tr(n-1)を算出する。
なお、ステップS91において、バーストロスト又はゆらぎの状態であると判定された場合は、受信時刻取得部33は、再生処理のステップS72において設定された受信間隔の平均ΔTravを受信間隔として取得する。
(4)読出時刻取得処理及び補正処理
読出時刻取得処理及び補正処理は、第1実施形態例と同様の処理であるので説明を省略する。
[効果]
上記の通り、ネットワーク障害が生じている場合であっても、受信装置2において取得した受信間隔ΔTr及び読出間隔ΔToに基づいて受信側サンプリング周波数frを補正することができる。よって、送信装置側からパケット送信時刻、パケット送信間隔等の送信側サンプリング周波数fsに関連する時刻情報を受信装置側に送信することなく、受信側サンプリング周波数frの補正を行うことができる。
Step S99: When the reception time Tr n is acquired in step S94, the reception time acquisition unit 33 calculates ΔTr n = Tr n −Tr (n−1) as the reception interval in the n-th packet group G n . . If the estimated reception time Te is calculated in step S98, ΔTr n = Te−Tr (n−1) is calculated as the reception interval in the nth packet group G n .
If it is determined in step S91 that the state is a burst lost or a fluctuation, the reception time acquisition unit 33 acquires the average ΔTrav of the reception intervals set in step S72 of the reproduction process as the reception interval.
(4) Reading time acquisition process and correction process The reading time acquisition process and the correction process are the same as those in the first embodiment, and a description thereof will be omitted.
[effect]
As described above, even when a network failure occurs, the reception-side sampling frequency fr can be corrected based on the reception interval ΔTr and the reading interval ΔTo acquired in the reception device 2. Therefore, the reception side sampling frequency fr can be corrected without transmitting the time information related to the transmission side sampling frequency fs such as the packet transmission time and the packet transmission interval from the transmission device side to the reception device side.

なお、送信装置1から一定間隔でパケットが送信されている必要はなく、不定の間隔でパケットが送信されている場合であっても第2実施形態例を適用可能である。一の間隔でパケットが送信されている場合は、前述のΔTravから推定受信時刻Teをより正確に算出することができる。
<その他の実施形態例>
(A)前述の第1及び第2実施形態例では、音声通信システムについて説明したが、本発明に係る受信装置は、音声通信だけでなく、動画像通信にも好ましく用いられる。また、静止画像、テキストデータなどの受信装置としても好適である。
The packets need not be transmitted from the transmission device 1 at regular intervals, and the second embodiment can be applied even when packets are transmitted at irregular intervals. If the packet at regular intervals is transmitted, it is possible to more accurately calculate the estimated reception time Te from the foregoing DerutaTrav.
<Other embodiment examples>
(A) In the first and second embodiments described above, the voice communication system has been described. However, the receiving apparatus according to the present invention is preferably used not only for voice communication but also for moving picture communication. Further, it is also suitable as a receiving device for still images, text data, and the like.

(B)コンピュータに前述の処理を実行させるプログラム及びそのプログラムを記録したコンピュータ読み取り可能な記録媒体は、本発明に含まれる。ここで記録媒体としては、コンピュータが読み書き可能なフレキシブルディスク、ハードディスク、半導体メモリ、CD−ROM、DVD、光磁気ディスク(MO)、その他のものが挙げられる。   (B) A program that causes a computer to execute the above-described processing and a computer-readable recording medium that records the program are included in the present invention. Here, examples of the recording medium include a computer readable / writable flexible disk, hard disk, semiconductor memory, CD-ROM, DVD, magneto-optical disk (MO), and others.

本発明を用いれば、ストリーム再生方式を採用した通信システムの受信装置で再生される音声の品質を高めることを期待できる。   By using the present invention, it can be expected to improve the quality of audio reproduced by a receiving apparatus of a communication system that employs a stream reproduction method.

本発明の概念説明図。The concept explanatory drawing of this invention. 第1実施形態例に係る通信システムの構成を示す構成図。1 is a configuration diagram showing a configuration of a communication system according to a first embodiment. 受信間隔及び読出間隔の取得方法の説明図。Explanatory drawing of the acquisition method of a receiving interval and a reading interval. (a) 第1実施形態例におけるパケット構成の一例を示す説明図。(b) 第1実施形態例におけるパケット構成の別の一例を示す説明図。(A) Explanatory drawing which shows an example of the packet structure in 1st Embodiment. (B) Explanatory drawing which shows another example of the packet structure in 1st Embodiment. 第1実施形態例における受信処理の流れを示すフローチャート。The flowchart which shows the flow of the reception process in 1st Embodiment. 第1実施形態例における再生処理の流れを示すフローチャート。The flowchart which shows the flow of the reproduction | regeneration processing in 1st Embodiment. 第1実施形態例における受信時刻取得処理の流れを示すフローチャート。The flowchart which shows the flow of the reception time acquisition process in 1st Embodiment. 第1実施形態例における読出時刻取得処理の流れを示すフローチャート。The flowchart which shows the flow of the reading time acquisition process in 1st Embodiment. 第1実施形態例における補正処理の流れを示すフローチャート。The flowchart which shows the flow of the correction process in 1st Embodiment. (a)パケットロストの説明図。(b)バーストロストの説明図。(c)ゆらぎの説明図。(A) Explanatory drawing of packet lost. (B) Explanatory drawing of burst lost. (C) Explanatory drawing of fluctuation. 第2実施形態例における受信処理の流れを示すフローチャート。The flowchart which shows the flow of the reception process in 2nd Embodiment. 第2実施形態例における再生処理の流れを示すフローチャート。The flowchart which shows the flow of the reproduction | regeneration processing in 2nd Embodiment. 第2実施形態例における受信時刻取得処理の流れを示すフローチャート。The flowchart which shows the flow of the reception time acquisition process in 2nd Embodiment.

符号の説明Explanation of symbols

1:送信装置
2:受信装置
3:ネットワーク
31:受信部
33:受信時刻取得部
35:受信バッファ
37:受信バッファ監視部
39:読出部
43:再生バッファ
45:読出時刻取得部
53:補正部
1: Transmission device 2: Reception device 3: Network 31: Reception unit
33: Reception time acquisition unit
35: Receive buffer
37: Receive buffer monitoring unit
39: Reading unit 43: Playback buffer 45: Reading time acquisition unit 53: Correction unit

Claims (7)

送信装置に通信網を介して接続された受信装置であって、
前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信手段と、
前記複数のパケットそれぞれに含まれるディジタルデータを一時的に蓄積する受信バッファと、
受信側サンプリング周波数frを生成する周波数生成手段と、
前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換手段と、
受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信手段がk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正手段と、
を備える受信装置。
fr=fr’×(ΔTo÷ΔTr)
ここで、fr’はパケット群G (n−1) における受信側サンプリング周波数。
A receiving device connected to a transmitting device via a communication network,
Receiving means for sequentially receiving a plurality of packets from the transmitting device via the communication network;
A reception buffer for temporarily storing digital data included in each of the plurality of packets;
A frequency generating means for generating a receiving side sampling frequency fr;
Conversion means for reading out digital data stored in the reception buffer according to the reception-side sampling frequency fr and converting it into analog data;
For each packet group G n (n is a natural number) composed of a predetermined number k (k ≧ 2) packets determined on the receiving side, the time required for the receiving means to receive k packets is calculated. And a reading interval ΔTo indicating a time required for reading the digital data contained in each of the k packets from the receiving buffer, and obtaining the packet group G based on the following conditions: and correcting means for calculating a reception side sampling frequency fr in n,
A receiving device.
fr = fr ′ × (ΔTo ÷ ΔTr)
Here, fr ′ is the receiving-side sampling frequency in the packet group G (n−1) .
前記周波数生成手段としてVCO(Voltage Control Oscillator)を用い、
前記補正手段は、前記VCOへの印加電圧を調整することにより、前記受信側サンプリング周波数frを補正する、請求項1に記載の受信装置。
As the frequency generation means, a VCO (Voltage Control Oscillator) is used,
The receiving apparatus according to claim 1, wherein the correction unit corrects the reception-side sampling frequency fr by adjusting a voltage applied to the VCO .
前記受信手段により受信されたパケットの送信順位及び前記受信バッファ内の蓄積量を監視し、パケットを正常に受信しているか否かを判定する監視手段をさらに備え、
前記変換手段は、
前記監視手段におけるパケットを正常に受信しているか否かの判定に応じて、蓄積されたディジタルデータを前記受信バッファから読み出し、
前記受信バッファは、
前記監視手段におけるパケットを正常に受信しているか否かの判定、及び当該受信バッファ内の蓄積量に応じて、ディジタルデータを蓄積する、請求項1に記載の受信装置。
Monitoring means for monitoring the transmission order of the packets received by the receiving means and the amount stored in the reception buffer, and further determining whether or not the packets are normally received;
The converting means includes
In response to the determination as to whether or not the monitoring means has received the packet normally, the stored digital data is read from the reception buffer,
The receive buffer is
The receiving apparatus according to claim 1 , wherein digital data is accumulated in accordance with a determination as to whether or not a packet is normally received by the monitoring unit and an accumulation amount in the reception buffer .
送信装置に通信網を介して接続された受信装置に用いられる受信再生方法であって、A reception reproduction method used for a reception device connected to a transmission device via a communication network,
前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信ステップと、A reception step of sequentially receiving a plurality of packets from the transmission device via the communication network;
前記複数のパケットそれぞれに含まれるディジタルデータを一時的に受信バッファに蓄積する蓄積ステップと、An accumulation step of temporarily accumulating digital data included in each of the plurality of packets in a reception buffer;
受信側サンプリング周波数frを生成する周波数生成ステップと、A frequency generation step of generating a reception-side sampling frequency fr;
前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換ステップと、A conversion step of reading the digital data stored in the reception buffer according to the reception-side sampling frequency fr and converting it into analog data;
受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群GPacket group G composed of a predetermined number k (k ≧ 2) packets determined on the receiving side n (nは自然数)ごとに、前記受信ステップでk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群GFor each (n is a natural number), the reception interval ΔTr indicating the time taken to receive k packets in the reception step and the digital data included in each of the k packets are read from the reception buffer. And a reading interval ΔTo indicating the time required for the packet group G based on the following conditions: n における受信側サンプリング周波数frを算出する補正する補正ステップと、A correction step for correcting the reception-side sampling frequency fr in
を含む受信再生方法。Receiving and playing method including:
fr=fr’×(ΔTo÷ΔTr)fr = fr ′ × (ΔTo ÷ ΔTr)
ここで、fr’はパケット群GHere, fr ′ is the packet group G (n−1)(N-1) における受信側サンプリング周波数。Receiver sampling frequency at.
送信装置に通信網を介して接続された受信装置に用いられる受信再生プログラムであって、
前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信手段、
前記複数のパケットそれぞれに含まれるディジタルデータを一時的に蓄積する受信バッファ、
受信側サンプリング周波数frを生成する周波数生成手段、
前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換手段、及び
受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信手段がk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正手段、
としてコンピュータを機能させるための受信再生プログラム
fr=fr’×(ΔTo÷ΔTr)
ここで、fr’はパケット群G (n−1) における受信側サンプリング周波数。
A reception reproduction program used for a reception device connected to a transmission device via a communication network,
Receiving means for sequentially receiving a plurality of packets from the transmitting device via the communication network ;
Reception buffer for temporarily storing the digital data included in each of the plurality of packets,
A frequency generating means for generating a receiving side sampling frequency fr ;
Conversion means for reading digital data stored in the reception buffer according to the reception-side sampling frequency fr and converting it into analog data ;
For each packet group G n (n is a natural number) composed of a predetermined number k (k ≧ 2) packets determined on the receiving side, the time required for the receiving means to receive k packets is calculated. And a reading interval ΔTo indicating a time required for reading the digital data contained in each of the k packets from the receiving buffer, and obtaining the packet group G based on the following conditions: correcting means for calculating a reception side sampling frequency fr in n,
As a reception / reproduction program for causing a computer to function .
fr = fr ′ × (ΔTo ÷ ΔTr)
Here, fr ′ is the receiving-side sampling frequency in the packet group G (n−1) .
送信装置に通信網を介して接続された受信装置に用いられる受信再生プログラムを記録した、コンピュータ読み取り可能な記録媒体であって、
前記通信網を介し、複数のパケットを前記送信装置から順次受信する受信ステップと
前記複数のパケットそれぞれに含まれるディジタルデータを一時的に受信バッファに蓄積する蓄積ステップと
受信側サンプリング周波数frを生成する周波数生成ステップと
前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換ステップと
受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群G (nは自然数)ごとに、前記受信ステップでk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群G における受信側サンプリング周波数frを算出する補正する補正ステップと
を実行するための受信再生プログラムを記録した、コンピュータ読み取り可能な記録媒体
fr=fr’×(ΔTo÷ΔTr)
ここで、fr’はパケット群G (n−1) における受信側サンプリング周波数。
A computer-readable recording medium on which a reception / playback program used for a reception device connected to a transmission device via a communication network is recorded ,
A reception step of sequentially receiving a plurality of packets from the transmission device via the communication network;
An accumulation step of temporarily accumulating digital data included in each of the plurality of packets in a reception buffer;
A frequency generation step of generating a reception-side sampling frequency fr;
A conversion step of reading the digital data stored in the reception buffer according to the reception-side sampling frequency fr and converting it into analog data;
For each packet group G n (n is a natural number) composed of a predetermined number k (k ≧ 2) packets determined on the receiving side, the time required to receive k packets in the reception step is determined. And a reading interval ΔTo indicating a time required for reading the digital data contained in each of the k packets from the receiving buffer, and obtaining the packet group G based on the following conditions: a correction step of correcting for calculating the reception side sampling frequency fr in n,
Recording the received playback program order to execute the computer-readable recording medium.
fr = fr ′ × (ΔTo ÷ ΔTr)
Here, fr ′ is the receiving-side sampling frequency in the packet group G (n−1) .
放送システムであって、A broadcasting system,
音声入力手段と、Voice input means;
前記音声入力手段に接続され、入力された音声を送信側サンプリング周波数fsに基づいてサンプリングすることによりディジタル音声データに変換し、前記ディジタル音声データを含むパケットを順次伝送路に出力する音声送信手段と、A voice transmission unit connected to the voice input unit, which converts the input voice into digital voice data by sampling based on the transmission-side sampling frequency fs, and sequentially outputs packets including the digital voice data to the transmission path; ,
前記音声送信手段と前記伝送路を介して接続され、前記ディジタル音声データを受信側サンプリング周波数frに基づいてアナログ音声データに変換する音声受信手段と、Voice receiving means connected to the voice transmitting means via the transmission line, and converting the digital voice data into analog voice data based on a receiving-side sampling frequency fr;
前記音声受信手段に接続され、前記アナログ音声データを出力する音声出力手段とを含み、  Voice output means connected to the voice receiving means and outputting the analog voice data;
前記音声受信手段は、The voice receiving means is
複数のパケットを前記送信装置から順次受信する受信手段と、Receiving means for sequentially receiving a plurality of packets from the transmitting device;
前記複数のパケットそれぞれに含まれるディジタルデータを一時的に蓄積する受信バッファと、A reception buffer for temporarily storing digital data included in each of the plurality of packets;
受信側サンプリング周波数frを生成する周波数生成手段と、A frequency generating means for generating a receiving side sampling frequency fr;
前記受信側サンプリング周波数frに従って前記受信バッファに蓄積されているディジタルデータを読み出し、アナログデータに変換する変換手段と、Conversion means for reading out digital data stored in the reception buffer according to the reception-side sampling frequency fr and converting it into analog data;
受信側で定められた所定数k(k≧2)個のパケットで構成されるパケット群GPacket group G composed of a predetermined number k (k ≧ 2) packets determined on the receiving side n (nは自然数)ごとに、前記受信手段がk個のパケットを受信するのに要した時間を示す受信間隔ΔTrと、前記k個のパケットそれぞれに含まれているディジタルデータを前記受信バッファから読み出すのに要した時間を示す読出間隔ΔToとを取得し、以下の条件に基づいて当該パケット群GFor each (n is a natural number), the reception means ΔTr indicating the time required for the reception means to receive k packets and the digital data contained in each of the k packets are read from the reception buffer. And a reading interval ΔTo indicating the time required for the packet group G based on the following conditions: n における受信側サンプリング周波数frを算出する補正手段と、Correction means for calculating the receiving-side sampling frequency fr in
を備えている放送システム。Broadcast system equipped with.
fr=fr’×(ΔTo÷ΔTr)fr = fr ′ × (ΔTo ÷ ΔTr)
ここで、fr’はパケット群GHere, fr ′ is the packet group G (n−1)(N-1) における受信側サンプリング周波数。Receiver sampling frequency at.
JP2004157243A 2004-05-27 2004-05-27 Reception device and reception reproduction method Active JP4299731B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004157243A JP4299731B2 (en) 2004-05-27 2004-05-27 Reception device and reception reproduction method

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004157243A JP4299731B2 (en) 2004-05-27 2004-05-27 Reception device and reception reproduction method

Publications (2)

Publication Number Publication Date
JP2005341203A JP2005341203A (en) 2005-12-08
JP4299731B2 true JP4299731B2 (en) 2009-07-22

Family

ID=35494258

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004157243A Active JP4299731B2 (en) 2004-05-27 2004-05-27 Reception device and reception reproduction method

Country Status (1)

Country Link
JP (1) JP4299731B2 (en)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013092515A (en) * 2011-10-06 2013-05-16 Sony Corp Frequency difference detection device, frequency difference detection method, and program
JP6827296B2 (en) * 2016-11-01 2021-02-10 日本電信電話株式会社 Data communication method
CN113409801B (en) * 2021-08-05 2024-03-19 云从科技集团股份有限公司 Noise processing method, system, medium and device for real-time audio stream playing

Also Published As

Publication number Publication date
JP2005341203A (en) 2005-12-08

Similar Documents

Publication Publication Date Title
JP3699910B2 (en) Data transmission apparatus, data transmission method and program
US7453897B2 (en) Network media playout
US7061863B2 (en) Data communication system, data receiving terminal and data sending terminal
US9246644B2 (en) Jitter buffer
US8855145B2 (en) Jitter buffer
JP4842075B2 (en) Audio transmission device
US7787500B2 (en) Packet receiving method and device
JP5109787B2 (en) Data transmission system, program and method
US8948213B2 (en) Jitter buffer
JP2005151600A (en) Data transmission unit, data transmission method, and program
US20020136205A1 (en) Packet data processing apparatus and packet data processing method
JP4076981B2 (en) Communication terminal apparatus and buffer control method
US20070133619A1 (en) Apparatus and method of processing bitstream of embedded codec which is received in units of packets
JP4299731B2 (en) Reception device and reception reproduction method
JP4597826B2 (en) COMMUNICATION DEVICE, ITS COMMUNICATION METHOD, COMMUNICATION PROGRAM, AND COMPUTER-READABLE RECORDING MEDIUM CONTAINING THE COMMUNICATION PROGRAM
JP4376165B2 (en) Receiver, clock adjustment method, and broadcasting system
JP4623867B2 (en) Reception device and reception reproduction method
JP2002330180A (en) Reception device and reception reproducing method
JP2007027813A (en) Communication system
US20080140854A1 (en) Method and apparatus for streaming av data
JP4266733B2 (en) Video receiver
JP2002330181A (en) Reception device and reception reproducing method
JP4730797B2 (en) Reception device and reception reproduction method
JP4338083B2 (en) Digital audio playback device
JPH04357735A (en) Voice packet communication equipment

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20060530

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20081009

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20081021

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20081219

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: 20090331

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: 20090417

R150 Certificate of patent or registration of utility model

Ref document number: 4299731

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: 20120424

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20120424

Year of fee payment: 3

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20130424

Year of fee payment: 4

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250