JP4457841B2 - Transmission apparatus, transmission program, and transmission method for controlling coding rate - Google Patents

Transmission apparatus, transmission program, and transmission method for controlling coding rate Download PDF

Info

Publication number
JP4457841B2
JP4457841B2 JP2004301610A JP2004301610A JP4457841B2 JP 4457841 B2 JP4457841 B2 JP 4457841B2 JP 2004301610 A JP2004301610 A JP 2004301610A JP 2004301610 A JP2004301610 A JP 2004301610A JP 4457841 B2 JP4457841 B2 JP 4457841B2
Authority
JP
Japan
Prior art keywords
buffer
rate
media data
transmission
encoding
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.)
Expired - Fee Related
Application number
JP2004301610A
Other languages
Japanese (ja)
Other versions
JP2006115306A (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.)
KDDI Corp
Original Assignee
KDDI 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 KDDI Corp filed Critical KDDI Corp
Priority to JP2004301610A priority Critical patent/JP4457841B2/en
Publication of JP2006115306A publication Critical patent/JP2006115306A/en
Application granted granted Critical
Publication of JP4457841B2 publication Critical patent/JP4457841B2/en
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Compression Or Coding Systems Of Tv Signals (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Description

本発明は、符号化レートを制御する送信装置、送信プログラム及び送信方法に関する。   The present invention relates to a transmission apparatus, a transmission program, and a transmission method for controlling a coding rate.

異なるメディアデータを多重化する送信装置は、同時に並行して発生する複数のメディアデータをメディア毎に符号化し、所定サイズのフレームに構成してネットワークへ送信する。一方、受信装置は、メディア毎に異なるメディアデコーダを用いて、受信したフレーム単位でメディアデータを復号する。メディアデータ毎に、所定サイズをどのように決定するかが、マルチメディアデータの多重化においては重要である。   A transmission apparatus that multiplexes different media data encodes a plurality of media data generated in parallel at the same time for each medium, and configures the frames into a predetermined size and transmits them to a network. On the other hand, the receiving apparatus decodes the media data in units of received frames by using a media decoder that is different for each medium. How to determine a predetermined size for each media data is important in multiplexing multimedia data.

多重化方式としては、バイト多重がある。バイト多重は、異なるメディアデータを適当なバイト数の単位で切り替えることができる。受信装置は、フレームに付加されたヘッダの内容によって、そのメディアデータに適したデコーダに切り替える。このようなパケット多重は、柔軟性が高く、ソフトウェア処理に適している。   As a multiplexing method, there is byte multiplexing. In byte multiplexing, different media data can be switched in units of an appropriate number of bytes. The receiving apparatus switches to a decoder suitable for the media data depending on the contents of the header added to the frame. Such packet multiplexing is highly flexible and suitable for software processing.

図1は、従来技術によるパケット多重化のための送信装置の機能構成図である。   FIG. 1 is a functional configuration diagram of a transmission apparatus for packet multiplexing according to the prior art.

送信装置1は、映像データ及び音声データをリアルタイムで符号化して送信するものである。送信装置1は、映像信号を出力するカメラ4と、音声信号を出力するマイク5とに接続され、データパケットを送信するためにIPネットワーク3に接続されている。   The transmission device 1 encodes and transmits video data and audio data in real time. The transmission device 1 is connected to a camera 4 that outputs a video signal and a microphone 5 that outputs an audio signal, and is connected to an IP network 3 to transmit a data packet.

送信装置1は、映像データについて、フォーマット変換部101と、映像エンコーダ部102と、映像データ用バッファ103と、RTP(Real-time Transport Protocol)ヘッダ付加部104とを有する。また、音声データについて、増幅器110と、音声エンコーダ部108と、音声データ用バッファ107と、RTPヘッダ付加部106とを有する。更に、IP(Internet Protocol)ネットワーク3に対応してUDP(User Datagram Protocol)/IPプロトコルスタック部105を有する。   The transmission apparatus 1 includes a format conversion unit 101, a video encoder unit 102, a video data buffer 103, and an RTP (Real-time Transport Protocol) header addition unit 104 for video data. Further, the audio data includes an amplifier 110, an audio encoder unit 108, an audio data buffer 107, and an RTP header adding unit 106. Further, a UDP (User Datagram Protocol) / IP protocol stack unit 105 is provided corresponding to the IP (Internet Protocol) network 3.

カメラ4から出力された映像信号は、フォーマット変換部101によって圧縮符号化に適した映像フォーマットに変換され、映像エンコーダ102によって圧縮符号化される。その方式は、1フレーム(1画面)を単位として符号化データを生成するものであって、例えばISO/IEC(International Organization for Standardization/International Electrotechnical Commission) MPEG−4(Moving Picture Experts Group-4)ビジュアルがある。低ビットレートのMPEG−4によれば、1フレームは、例えば100m秒間隔(毎秒10フレーム)となる。生成されたビットストリームデータは、映像データ用バッファ103に入力される。RTPヘッダ付加部104は、バッファ103から取り出した映像データのフレーム毎にRTPヘッダを付加する。そのRTPパケットは、UDP/IPプロトコルスタック部105によってUDP及びIPヘッダが付加され、IPネットワーク3へ送信される。   The video signal output from the camera 4 is converted into a video format suitable for compression encoding by the format conversion unit 101 and compressed and encoded by the video encoder 102. The method generates encoded data in units of one frame (one screen). For example, ISO / IEC (International Organization for Standardization / International Electrotechnical Commission) MPEG-4 (Moving Picture Experts Group-4) visual There is. According to the low bit rate MPEG-4, one frame is, for example, at an interval of 100 milliseconds (10 frames per second). The generated bit stream data is input to the video data buffer 103. The RTP header adding unit 104 adds an RTP header for each frame of video data extracted from the buffer 103. The UDP / IP header is added to the RTP packet by the UDP / IP protocol stack unit 105 and transmitted to the IP network 3.

一方、マイク5から出力された音声信号は、増幅器110によって増幅され、A/D(Analog/Digital)変換部109によって伝送可能なビット列に変換される。次に、その音声データは、音声エンコーダ108によって圧縮符号化される。その方式は、予め決められた時間長を1フレームとして符号化データを生成するものであって、例えば3GPP(3rd Generation Partnership Project) AMR(Adaptive Multi Rate)がある。AMR方式においては、1フレームは20m秒となる。生成されたビットストリームは、音声データ用バッファ107に入力される。RTPヘッダ付加部106は、バッファ107から取り出した映像データのフレーム毎にRTPヘッダを付加する。そのRTPパケットは、UDP/IPプロトコルスタック部105によってUDP及びIPヘッダが付加され、IPネットワーク3へ送信される。   On the other hand, the audio signal output from the microphone 5 is amplified by the amplifier 110 and converted into a bit string that can be transmitted by an A / D (Analog / Digital) converter 109. Next, the audio data is compression encoded by the audio encoder 108. This method generates encoded data with a predetermined time length as one frame, and includes, for example, 3GPP (3rd Generation Partnership Project) AMR (Adaptive Multi Rate). In the AMR method, one frame is 20 milliseconds. The generated bit stream is input to the audio data buffer 107. The RTP header adding unit 106 adds an RTP header for each frame of video data extracted from the buffer 107. The UDP / IP header is added to the RTP packet by the UDP / IP protocol stack unit 105 and transmitted to the IP network 3.

受信装置2は、データパケットを受信するためにIPネットワーク3に接続され、受信したデータパケットのメディアデータに応じて復号するものである。受信装置2は、映像信号を入力するディスプレイ6と、音声信号を入力するスピーカ7とに接続されている。   The receiving device 2 is connected to the IP network 3 to receive a data packet, and decodes it according to the media data of the received data packet. The receiving device 2 is connected to a display 6 for inputting a video signal and a speaker 7 for inputting an audio signal.

受信装置2は、IPネットワーク3から受信したパケットに対して、IP及びUDPヘッダを処理するUDP/IPプロトコルスタック部205を有する。受信装置2は、映像データについて、RTPヘッダ除去部204と、映像デコーダ203と、映像データ用バッファ202と、ディスプレイ制御部201とを有する。映像信号は、ディスプレイ制御部201からディスプレイ6に出力される。また、音声データについて、RTPヘッダ除去部206と、音声デコーダ207と、音声データ用バッファ208と、D/A変換部209と、増幅器210とを有する。音声信号は、増幅器210からスピーカ7へ出力される。   The receiving device 2 includes a UDP / IP protocol stack unit 205 that processes IP and UDP headers for packets received from the IP network 3. The reception apparatus 2 includes an RTP header removal unit 204, a video decoder 203, a video data buffer 202, and a display control unit 201 for video data. The video signal is output from the display control unit 201 to the display 6. In addition, the audio data includes an RTP header removal unit 206, an audio decoder 207, an audio data buffer 208, a D / A conversion unit 209, and an amplifier 210. The audio signal is output from the amplifier 210 to the speaker 7.

先行公知文献としては、RTPについて規定したIETF RFC3550(非特許文献1参照)、MPEG−4をRTPに乗せたフォーマットを規定したIETF RFC3016(非特許文献2参照)、AMRをRTPに乗せたフォーマットを規定したIETF RFC3267(非特許文献3参照)がある。   As prior known documents, IETF RFC3550 (refer to Non-Patent Document 1) that defines RTP, IETF RFC3016 (refer to Non-Patent Document 2) that defines a format in which MPEG-4 is mounted on RTP, and a format in which AMR is mounted on RTP. There is a defined IETF RFC3267 (see Non-Patent Document 3).

IETF(Internet Engineering Task Force) RFC(Request For Comment)3550IETF (Internet Engineering Task Force) RFC (Request For Comment) 3550 IETF RFC3016IETF RFC3016 IETF RFC3267IETF RFC3267

表1は、従来技術におけるパケット多重化フレームのデータ構造である。

Figure 0004457841
Table 1 shows a data structure of a packet multiplexed frame in the prior art.
Figure 0004457841

従来技術によれば、音声データのフレームと、映像データのフレームとは別々に必要となる。これは、フレーム毎に、そのメディアデータに応じたデコーダによって復号させるためである。   According to the prior art, a frame of audio data and a frame of video data are required separately. This is because each frame is decoded by a decoder corresponding to the media data.

前述したような従来技術によれば、生成されるRTPパケットは以下のようになる。ここで、符号化パラメータとして、低い伝送レート(64kbit/秒)における一般的な値を想定する。
映像の符号化ビットレート:32kbit/秒、フレームレート:10枚/秒
音声の符号化ビットレート:6800bit/秒、フレーム長:20m秒
RTPヘッダサイズ:12byte
UDPヘッダ:8byte
IPヘッダ:20byte
According to the prior art as described above, the generated RTP packet is as follows. Here, a general value at a low transmission rate (64 kbit / sec) is assumed as an encoding parameter.
Video coding bit rate: 32 kbit / s, frame rate: 10 frames / s Audio coding bit rate: 6800 bits / s, frame length: 20 ms RTP header size: 12 bytes
UDP header: 8 bytes
IP header: 20 bytes

映像データについては、以下のようになる。
映像の符号化ビットレート:32kbit/秒÷8bit = 4kbyte/秒
秒当たりの伝送フレーム数:10フレーム/秒
映像データパケットの伝送間隔:1秒/10フレーム = 100m秒
フレームレート:4kbyte/秒÷10フレーム/秒 = 400byte/フレーム
映像の1パケット:400byte+12byte+8byte+20byte = 440byte
映像1パケットの伝送時間:440byte×8bit÷64kbit/秒 = 55m秒
The video data is as follows.
Video coding bit rate: 32 kbit / second ÷ 8 bit = 4 kbyte / second Number of transmission frames per second: 10 frame / second Transmission interval of video data packet: 1 second / 10 frame = 100 ms Frame rate: 4 kbyte / second ÷ 10 Frame / second = 400 bytes / frame 1 packet of video: 400 bytes + 12 bytes + 8 bytes + 20 bytes = 440 bytes
Transmission time of one video packet: 440 bytes × 8 bits ÷ 64 kbit / sec = 55 msec

音声データについては、以下のようになる。
音声の符号化ビットレート:6800bit/秒÷8bit = 850byte/秒
秒当たりの伝送フレーム数:50フレーム/秒
音声データパケットの伝送間隔:1秒/50フレーム = 20m秒
1フレーム当たりのバイト数:850byte/秒×20m秒 = 17byte/フレーム
音声の1パケット:17byte+12byte+8byte+20byte = 57byte
音声1パケットの伝送時間:57byte×8bit÷64kbit/秒 = 7.125m秒
The audio data is as follows.
Audio encoding bit rate: 6800 bits / second ÷ 8 bits = 850 bytes / second Number of transmission frames per second: 50 frames / second Transmission interval of voice data packets: 1 second / 50 frames = 20 milliseconds Number of bytes per frame: 850 bytes / Second x 20 milliseconds = 17 bytes / frame 1 packet of audio: 17 bytes + 12 bytes + 8 bytes + 20 bytes = 57 bytes
Transmission time of one voice packet: 57 bytes × 8 bits ÷ 64 kbit / s = 7.125 ms

音声データパケットは20m秒間隔で送信され、映像データパケットは100m秒間隔で送信されるので、音声データパケットの送信の5回に1回の割合で、映像データパケットの送信が割り込むこととなる。   Since audio data packets are transmitted at intervals of 20 msec and video data packets are transmitted at intervals of 100 msec, transmission of video data packets is interrupted at a rate of once every five transmissions of audio data packets.

図2は、従来技術におけるフレームの伝送シーケンス図である。   FIG. 2 is a frame transmission sequence diagram in the prior art.

音声データパケットは20m秒毎に送信され、映像データパケットは100m秒毎に送信される。音声データパケットは、40byteのヘッダ(IP、UDP、RTP)とデータ部分とからなる。データ部分が17byteとすると、伝送に7.125m秒を要する。映像データパケットは、40byteのヘッダとデータ部分とからなる。データ部分が400byteとすると、伝送に55m秒を要する。   Audio data packets are transmitted every 20 milliseconds and video data packets are transmitted every 100 milliseconds. The voice data packet includes a 40-byte header (IP, UDP, RTP) and a data portion. If the data part is 17 bytes, 7.125 msec is required for transmission. The video data packet includes a 40-byte header and a data portion. If the data portion is 400 bytes, transmission takes 55 milliseconds.

図2によれば、例えば、映像データパケットV1の送信の直後に、音声データパケットA3が送信されたとする。映像データパケットV1は、送信装置から送信されてから55m秒後に、受信装置に到着する。一方、音声データパケットA3は、更に7.125m秒後、即ち送信装置から送信されてから62.125m秒後に、受信装置に到着する。このために、映像データパケットによって割り込まれた音声データパケットは、送信装置の送出間隔20m秒に対し、受信装置に受信された時は62m秒後ということになる。その後、音声データパケットA4,A5,A6,A7が連続して、受信装置に到着する。音声データパケットの伝送に要する時間7m秒は、送出間隔20m秒に比べて十分小さいため、受信装置における到着間隔はやがて元に戻ることとなるが、その後、再度、映像データパケットが音声データパケットの間に割り込むため、到着遅延の変動が生じる。   According to FIG. 2, for example, it is assumed that the audio data packet A3 is transmitted immediately after the transmission of the video data packet V1. The video data packet V1 arrives at the receiving device 55 milliseconds after being transmitted from the transmitting device. On the other hand, the voice data packet A3 arrives at the receiving device after another 7.125 ms, that is, 62.125 ms after being transmitted from the transmitting device. For this reason, when the audio data packet interrupted by the video data packet is received by the receiving device, it is 62 ms after the transmission interval of 20 msec of the transmitting device. Thereafter, the voice data packets A4, A5, A6, A7 arrive in succession at the receiving device. The time required for transmitting the audio data packet is 7 m seconds, which is sufficiently shorter than the transmission interval of 20 msec. Therefore, the arrival interval in the receiving apparatus will be restored to the original time. Due to the interruption, the arrival delay varies.

音声データは、映像データのようなフレーム単位で離散的なデータと異なって、アナログ信号に戻して再生する際に、連続的でなければならない。このため、受信装置は、音声データパケットの最大到着遅延量に合わせて、予めバッファに蓄積してから再生する。このような音声データパケットの遅延変動は、受信側に大きなバッファ蓄積を要求することとなり、伝送遅延全体を増大させるものとなる。   Unlike discrete data such as video data that is discrete in units of frames, audio data must be continuous when converted back to an analog signal. For this reason, the receiving apparatus reproduces after accumulating in the buffer in advance according to the maximum arrival delay amount of the voice data packet. Such a delay variation of the voice data packet requires a large buffer accumulation on the receiving side, and increases the entire transmission delay.

更に、従来技術によれば、RTP、UDP、IPのヘッダを、映像データパケット及び音声データパケットそれぞれ独立に付加する必要がある。従って、
(12byte+8byte+20byte)×8bit×(50音声フレーム+10映像フレーム)
= 19.2kbit/秒
ものヘッダによるオーバヘッドを要する。
Furthermore, according to the prior art, it is necessary to add RTP, UDP, and IP headers independently to each of the video data packet and the audio data packet. Therefore,
(12 bytes + 8 bytes + 20 bytes) x 8 bits x (50 audio frames + 10 video frames)
= 19.2 kbit / s overhead is required.

また、音声データパケットの遅延変動を抑えるために、映像データパケットを分割し、映像データパケットと音声データパケットとを交互に送信するという方法もある。この場合、両パケットが等間隔で送信されるため、音声データパケットの到着時間ゆらぎを回避することは可能となる。しかしながら、この方法によれば、ヘッダによるオーバヘッドは、更に大きくなり、伝送効率が極めて低下する。
(12byte+8byte+20byte)×8bit×(50音声フレーム+50映像フレーム)
= 32kbit/秒
Further, in order to suppress delay variation of the audio data packet, there is a method of dividing the video data packet and transmitting the video data packet and the audio data packet alternately. In this case, since both packets are transmitted at equal intervals, it is possible to avoid the arrival time fluctuation of the voice data packet. However, according to this method, the overhead due to the header is further increased, and the transmission efficiency is extremely lowered.
(12 bytes + 8 bytes + 20 bytes) x 8 bits x (50 audio frames + 50 video frames)
= 32kbit / s

このように、従来技術によれば、異なるメディアデータが異なるフレームで伝送され、フレーム毎にRTPヘッダを必要とするために伝送効率が低くなるだけでなく、一方のメディアデータの伝送が、他方のメディアデータの伝送の遅延変動に影響を与えることとなる。   As described above, according to the prior art, different media data is transmitted in different frames, and an RTP header is required for each frame. Therefore, not only transmission efficiency is lowered, but transmission of one media data is This will affect the delay variation of media data transmission.

しかしながら、多重化フレームのパケットを一時的に蓄積するバッファについて、バッファ入力レートよりも、伝送路レート即ちバッファ出力レートの方が低い場合、バッファに蓄積されるパケットの数が時間と共に増大する。帯域保証のないインターネットや、無線環境が変化しやすいモバイルネットワークにおいては、伝送路レートの変動が著しい。リアルタイム通信における音声データについては、音声データが所望の時間間隔で到着しないことによる音途切れが発生する。また、映像データについては、フレーム間隔のゆらぎ及び表示遅延として、利用者に知覚されることとなる。   However, when the transmission path rate, that is, the buffer output rate is lower than the buffer input rate for a buffer that temporarily stores multiplexed frame packets, the number of packets stored in the buffer increases with time. In the Internet without bandwidth guarantee and the mobile network in which the wireless environment is likely to change, the transmission path rate fluctuates significantly. For voice data in real-time communication, sound interruption occurs due to voice data not arriving at a desired time interval. In addition, the video data is perceived by the user as fluctuations in the frame interval and display delay.

特に、IPテレビ電話等の会話目的のリアルタイム通信においては、会話成立のために、少なくとも音声データは遅滞なく伝送される必要がある。このため、伝送路レートが変動するような環境下においては、音声データを確実に伝送するための制御が必要となる。   In particular, in real-time communication for conversational purposes such as IP videophone, at least audio data needs to be transmitted without delay in order to establish a conversation. For this reason, in an environment where the transmission path rate fluctuates, control for reliably transmitting audio data is required.

従って、本発明は、IPテレビ電話等の会話目的のリアルタイム通信に適するように、符号化レートを制御する送信装置、送信プログラム及び送信方法を提供する。   Therefore, the present invention provides a transmission apparatus, a transmission program, and a transmission method for controlling the coding rate so as to be suitable for real-time communication for conversational purposes such as IP videophone.

本発明における送信装置は、
送信すべきメディアデータを符号化するエンコーダ手段と、
符号化されたメディアデータを一時的に蓄積するバッファと、
バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定されたバッファ出力レートBRを符号化レートとしてエンコーダ手段に入力する符号化レート決定手段と
を有することを特徴とする。
The transmission device in the present invention is
Encoder means for encoding media data to be transmitted;
A buffer for temporarily storing the encoded media data;
Memory means for measuring the number of bytes of media data accumulated in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculation means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And coding rate determining means for inputting the determined buffer output rate BR to the encoder means as a coding rate.

また、本発明における送信装置は、
送信すべき第1のメディアデータを符号化する第1のエンコーダ手段と、
送信すべき第2のメディアデータを符号化する第2のエンコーダ手段と、
符号化された第1のメディアデータ及び第2のメディアデータそれぞれのパケットを一時的に蓄積するバッファと、
バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定されたバッファ出力レートBRを符号化レートとして第1のエンコーダ手段に入力する符号化レート決定手段と
を有することを特徴とする。
Further, the transmission device in the present invention is
First encoder means for encoding first media data to be transmitted;
Second encoder means for encoding second media data to be transmitted;
A buffer for temporarily storing packets of encoded first media data and second media data;
Memory means for measuring the number of bytes of media data accumulated in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculation means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And coding rate determining means for inputting the determined buffer output rate BR as a coding rate to the first encoder means.

本発明の送信装置における他の実施形態によれば、第1のメディアデータは映像データであって、第2のメディアデータは音声データであってもよい。また、第1のメディアデータは音声データであって、第2のメディアデータは映像データであってもよい。   According to another embodiment of the transmission apparatus of the present invention, the first media data may be video data and the second media data may be audio data. Further, the first media data may be audio data, and the second media data may be video data.

また、本発明の送信装置における他の実施形態によれば、符号化レート決定手段は、符号化レートを
符号化レート ≦ バッファ出力レートBR
となるように決定することも好ましい。
According to another embodiment of the transmission apparatus of the present invention, the coding rate determining means sets the coding rate to coding rate ≦ buffer output rate BR.
It is also preferable to determine so that.

更に、本発明の送信装置における他の実施形態によれば、
バッファ入力レートBRin ≦ バッファ出力レートBR
であって、且つ、バッファのバッファ蓄積量が所定の閾値以下である状態が、一定時間経過した際に、安定状態であるとして検出する安定状態判定手段と、
安定状態判定手段が安定状態であると判定した際に、メディアデータを送信すべき伝送路レートを測定する伝送路レート測定手段と
を更に有し、
符号化レート決定手段は、伝送路レート測定手段によって測定された伝送路レートをバッファ出力レートBRとして、符号化レートを決定することも好ましい。
Furthermore, according to another embodiment of the transmission device of the present invention,
Buffer input rate BRin ≤ Buffer output rate BR
And a stable state determination means for detecting that the state where the buffer accumulation amount of the buffer is equal to or less than a predetermined threshold value is a stable state when a predetermined time has elapsed,
When the stable state determining means determines that it is in a stable state, it further comprises transmission line rate measuring means for measuring a transmission line rate at which media data should be transmitted,
The encoding rate determining means preferably determines the encoding rate using the transmission path rate measured by the transmission path rate measuring means as the buffer output rate BR.

更に、本発明の送信装置における他の実施形態によれば、バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)について平均化する平均化手段を更に有することも好ましい。   Furthermore, according to another embodiment of the transmission apparatus of the present invention, it is preferable to further include an averaging means for averaging with respect to the buffer accumulation fluctuation amount (B1-BN) / variation time interval (dT × N).

本発明における送信プログラムは、
送信すべきメディアデータを符号化するエンコーダ手段と、
符号化されたメディアデータを一時的に蓄積するバッファと、
バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定されたバッファ出力レートBRを符号化レートとしてエンコーダ手段に入力する符号化レート決定手段と
してコンピュータを機能させることを特徴とする。
The transmission program in the present invention is:
Encoder means for encoding media data to be transmitted;
A buffer for temporarily storing the encoded media data;
Memory means for measuring the number of bytes of media data accumulated in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculation means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And the computer functions as an encoding rate determining means for inputting the determined buffer output rate BR to the encoder means as an encoding rate.

また、本発明における送信プログラムは、
送信すべき第1のメディアデータを符号化する第1のエンコーダ手段と、
送信すべき第2のメディアデータを符号化する第2のエンコーダ手段と、
符号化された第1のメディアデータ及び第2のメディアデータそれぞれのパケットを一時的に蓄積するバッファと、
バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定されたバッファ出力レートBRを符号化レートして第1のエンコーダ手段に入力する符号化レート決定手段と
してコンピュータを機能させることを特徴とする。
The transmission program in the present invention is:
First encoder means for encoding first media data to be transmitted;
Second encoder means for encoding second media data to be transmitted;
A buffer for temporarily storing packets of encoded first media data and second media data;
Memory means for measuring the number of bytes of media data accumulated in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculation means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And the computer functions as an encoding rate determining means for inputting the determined buffer output rate BR into the first encoder means.

本発明の送信プログラムにおける他の実施形態によれば、第1のメディアデータは映像データであって、第2のメディアデータは音声データであってもよい。また、第1のメディアデータは音声データであって、第2のメディアデータは映像データであってもよい。   According to another embodiment of the transmission program of the present invention, the first media data may be video data and the second media data may be audio data. Further, the first media data may be audio data, and the second media data may be video data.

また、本発明の送信プログラムにおける他の実施形態によれば、符号化レート決定手段は、符号化レートを
符号化レート ≦ バッファ出力レートBR
となるように決定するように機能させることも好ましい。
According to another embodiment of the transmission program of the present invention, the encoding rate determining means sets the encoding rate to encoding rate ≦ buffer output rate BR.
It is also preferable to make it function so that it may become.

更に、本発明の送信プログラムにおける他の実施形態によれば、
バッファ入力レートBRin ≦ バッファ出力レートBR
であって、且つ、バッファのバッファ蓄積量が所定の閾値以下である状態が、一定時間経過した際に、安定状態であるとして検出する安定状態判定手段と、
安定状態判定手段が安定状態になったと判定した際に、メディアデータを送信すべき伝送路レートを測定する伝送路レート測定手段と
を更に有し、
符号化レート決定手段は、伝送路レート測定手段によって測定された伝送路レートをバッファ出力レートBRとして、符号化レートを決定するように機能させることも好ましい。
Furthermore, according to another embodiment of the transmission program of the present invention,
Buffer input rate BRin ≤ Buffer output rate BR
And a stable state determination means for detecting that the state where the buffer accumulation amount of the buffer is equal to or less than a predetermined threshold value is a stable state when a predetermined time has elapsed,
A transmission path rate measuring means for measuring a transmission path rate at which the media data should be transmitted when the stable state determination means determines that the stable state has been reached;
The encoding rate determining means preferably functions to determine the encoding rate with the transmission path rate measured by the transmission path rate measuring means as the buffer output rate BR.

更に、本発明の送信プログラムにおける他の実施形態によれば、バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)について平均化する平均化手段を更に有するように機能させることも好ましい。   Furthermore, according to another embodiment of the transmission program of the present invention, the transmission program may further include an averaging unit that averages the buffer accumulation fluctuation amount (B1-BN) / the fluctuation time interval (dT × N). preferable.

本発明における送信方法は、
送信すべきメディアデータを符号化するエンコーダと、符号化されたメディアデータを一時的に蓄積するバッファとを有し、
バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、メモリにその測定されたバイト数(B1〜BN)の履歴を記録する第1のステップと、
バッファへのバッファ入力レートBRinを測定する第2のステップと、
バッファ蓄積変動量(B1−BN)が増加している場合、バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定されたバッファ出力レートBRを符号化レートとしてエンコーダに入力する第3のステップと
有することを特徴とする。
The transmission method in the present invention is:
An encoder that encodes media data to be transmitted, and a buffer that temporarily stores the encoded media data;
A first step of measuring the number of bytes of media data accumulated in the buffer every predetermined time dT and recording a history of the measured number of bytes (B1 to BN) in a memory;
A second step of measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And a third step of inputting the determined buffer output rate BR to the encoder as an encoding rate.

また、本発明における送信方法は、
送信すべき第1のメディアデータを符号化する第1のエンコーダと、送信すべき第2のメディアデータを符号化する第2のエンコーダと、符号化された第1のメディアデータ及び第2のメディアデータそれぞれのパケットを一時的に蓄積するバッファとを有し、
バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、メモリにその測定されたバイト数(B1〜BN)の履歴を記録する第1のステップと、
バッファへのバッファ入力レートBRinを測定する第2のステップと、
バッファ蓄積変動量(B1−BN)が増加している場合、バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定されたバッファ出力レートBRを符号化レートとして第1のエンコーダ手段に入力する第3のステップと
を有することを特徴とする。
The transmission method in the present invention is as follows.
A first encoder that encodes first media data to be transmitted, a second encoder that encodes second media data to be transmitted, the encoded first media data and second media A buffer for temporarily storing each packet of data,
A first step of measuring the number of bytes of media data accumulated in the buffer every predetermined time dT and recording a history of the measured number of bytes (B1 to BN) in a memory;
A second step of measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And a third step of inputting the determined buffer output rate BR as a coding rate to the first encoder means.

本発明の送信方法における他の実施形態によれば、第1のメディアデータは映像データであって、第2のメディアデータは音声データであってもよい。また、第1のメディアデータは音声データであって、第2のメディアデータは映像データであってもよい。   According to another embodiment of the transmission method of the present invention, the first media data may be video data and the second media data may be audio data. Further, the first media data may be audio data, and the second media data may be video data.

また、本発明の送信方法における他の実施形態によれば、第3のステップは、符号化レートを
符号化レート ≦ バッファ出力レートBR
となるように決定することも好ましい。
According to another embodiment of the transmission method of the present invention, the third step is the step of: encoding rate encoding rate ≦ buffer output rate BR
It is also preferable to determine so that.

更に、本発明の送信方法における他の実施形態によれば、
バッファ入力レートBRin ≦ バッファ出力レートBR
であって、且つ、バッファのバッファ蓄積量が所定の閾値以下である状態が、一定時間経過した際に、安定状態であるとして検出するステップと、
安定状態判定手段が安定状態であると判定した際に、メディアデータを送信すべき伝送路レートを測定するステップとを更に有し、
第3のステップは、伝送路レート測定手段によって測定された伝送路レートをバッファ出力レートBRとして、符号化レートを決定することも好ましい。
Furthermore, according to another embodiment of the transmission method of the present invention,
Buffer input rate BRin ≤ Buffer output rate BR
And detecting that the state where the buffer accumulation amount of the buffer is equal to or less than a predetermined threshold value is a stable state when a predetermined time has elapsed, and
Measuring the transmission line rate at which the media data should be transmitted when the stable state determining means determines that the stable state is in a stable state;
In the third step, it is also preferable to determine the encoding rate with the transmission channel rate measured by the transmission channel rate measuring means as the buffer output rate BR.

更に、本発明の送信方法における他の実施形態によれば、バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)について平均化するステップを更に有することも好ましい。   Furthermore, according to another embodiment of the transmission method of the present invention, it is preferable that the method further includes the step of averaging with respect to the buffer accumulation fluctuation amount (B1-BN) / fluctuation time interval (dT × N).

本発明によれば、バッファ入力レートと、時間経過に伴うバッファ蓄積変動量とに基づいて、バッファ出力レートを算出し、そのバッファ出力レートよりも幾分低い符号化レートをエンコーダに入力することによって、バッファ入力レートがバッファ出力レート(伝送路レート)を越えないように、エンコーダの情報発生量を制御することができる。   According to the present invention, the buffer output rate is calculated based on the buffer input rate and the buffer accumulation fluctuation amount with time, and an encoding rate somewhat lower than the buffer output rate is input to the encoder. The information generation amount of the encoder can be controlled so that the buffer input rate does not exceed the buffer output rate (transmission path rate).

特に、音声エンコーダと映像エンコーダとを有する送信装置等においては、映像エンコーダのみの符号化レートを制御することにより、音声データは、そのビットレートを変更することなく維持することができ、安定した音声会話が実現できる。   In particular, in a transmission apparatus or the like having an audio encoder and a video encoder, by controlling the encoding rate of only the video encoder, the audio data can be maintained without changing its bit rate, and stable audio Conversation can be realized.

また、バッファ蓄積量が所定の閾値以下であって、バッファ蓄積量に基づく符号化レート決定が変動しない状態が一定時間経過した際に、伝送路レート測定部によって伝送路レートの回復を判断し、測定された伝送路レートに応じてメディアエンコーダの情報発生量を制御することもできる。   In addition, when the buffer accumulation amount is equal to or less than a predetermined threshold and the state in which the coding rate determination based on the buffer accumulation amount does not fluctuate has passed for a certain period of time, the transmission line rate measurement unit determines the recovery of the transmission line rate, The information generation amount of the media encoder can be controlled according to the measured transmission line rate.

以下では、図面を用いて、本発明を実施するための最良の形態について詳細に説明する。   Hereinafter, the best mode for carrying out the present invention will be described in detail with reference to the drawings.

表2は、本発明によって用いられるパケット多重化フレームのデータ構造である。

Figure 0004457841
Table 2 shows the data structure of the packet multiplexed frame used by the present invention.
Figure 0004457841

表2によれば、本発明におけるフレームのデータ構造は、UDPヘッダに続いて、1byteのシリアル番号部と、1byteの音声データサイズ部と、そのサイズ部に格納された長さの音声データと、映像データとを含む。従って、表1と比較して、RTPヘッダを必要としない。シリアル番号部は、符号なし整数であって、0〜255の巡回値となる。音声データサイズ部は1byteであるので、必然的に音声データのサイズは0〜255byteとなる。   According to Table 2, the frame data structure according to the present invention has a UDP header followed by a 1-byte serial number portion, a 1-byte audio data size portion, and audio data of a length stored in the size portion, Video data. Therefore, an RTP header is not required as compared with Table 1. The serial number part is an unsigned integer and has a cyclic value of 0 to 255. Since the audio data size part is 1 byte, the size of the audio data is inevitably 0 to 255 bytes.

図3は、本発明におけるパケット多重化フレームのメディア分割構成図である。   FIG. 3 is a diagram illustrating a media division configuration of a packet multiplexed frame according to the present invention.

図3の上段には、映像データを等サイズに分割し、パケット多重化フレームを構成したものである。常に、所定のバイト数の位置で映像データを分割することができるので、実装が容易となる。しかしながら、フレームの間を意識することなく、等サイズに分割するために、フレームに跨って分割される場合がある。この場合、映像フレームに跨った映像データを含むパケットを損失すると、2つの(前後の)フレーム対して影響を及ぼす。   In the upper part of FIG. 3, the video data is divided into equal sizes to form packet multiplexed frames. Since video data can always be divided at a predetermined number of bytes, mounting is easy. However, in order to divide into equal sizes without being conscious of the space between the frames, the frames may be divided across the frames. In this case, if a packet including video data straddling video frames is lost, it affects two (front and rear) frames.

図3の下段には、映像フレームにResyncマーカが挿入されたものが表されている。Resyncマーカは、符号化時に、マクロブロック境界に挿入される。このResyncマーカを実質的に等サイズ間に挿入し、このResyncマーカ間を1つの映像データとして多重化フレームに含めることにより、映像フレームに跨って映像データが分割されることがなくなる。即ち、1つの多重化フレームの損失が、2つの映像フレームに影響を及ぼすことがなくなる。   The lower part of FIG. 3 shows a video frame with a Resync marker inserted. The Resync marker is inserted at the macroblock boundary during encoding. By inserting the Resync markers between substantially equal sizes and including the spaces between the Resync markers as one video data in the multiplexed frame, the video data is not divided across the video frames. That is, the loss of one multiplexed frame does not affect two video frames.

図4は、本発明によって用いられる送信装置の機能構成図である。以下では、音声再生装置の機能について説明するが、各機能はプログラムによって実装され、そのプログラムをコンピュータが実行することによって各機能が実現される。   FIG. 4 is a functional configuration diagram of the transmission apparatus used according to the present invention. In the following, functions of the audio playback device will be described. Each function is implemented by a program, and each function is realized by the computer executing the program.

図4によれば、送信装置1は、図1のRTPヘッダ付加部104及び106に代わって、多重化部111を備えている。多重化部111は、多重パケット生成部111と、映像データを一時的に蓄積するメモリ1112と、音声データを一時的に蓄積するメモリ1113と、シリアル番号を生成する減算器1114と、遅延回路1115とを有する。ここで、音声データ用メモリ1112は、音声データサイズ(書き込みポインタと読み出しポインタとの差分)を、0〜255byteで表して出力することができる。   According to FIG. 4, the transmission apparatus 1 includes a multiplexing unit 111 instead of the RTP header addition units 104 and 106 in FIG. 1. The multiplexing unit 111 includes a multiplexed packet generation unit 111, a memory 1112 that temporarily stores video data, a memory 1113 that temporarily stores audio data, a subtracter 1114 that generates a serial number, and a delay circuit 1115. And have. Here, the audio data memory 1112 can output the audio data size (difference between the write pointer and the read pointer) in 0 to 255 bytes.

音声データがメモリ113に蓄積され及び/又は映像データがメモリ112に蓄積された際、多重パケット生成部111は、4入力1出力のスイッチで、シリアル番号、音声データサイズ、音声データ、映像データの順に切り替えて、その1巡によって、表2に表した1つのフレームを構成する。シリアル番号は、遅延回路115を通じて減算器1114に入力され、1増分(1加算)されて、新たなシリアル番号となる。   When the audio data is stored in the memory 113 and / or the video data is stored in the memory 112, the multiplex packet generation unit 111 is a switch of 4 inputs and 1 output, and includes a serial number, audio data size, audio data, and video data. By switching in order, one frame shown in Table 2 is formed by one round. The serial number is input to the subtracter 1114 through the delay circuit 115 and incremented by 1 (added by 1) to become a new serial number.

本発明によれば、映像データ及び音声データは、同じタイミングでバッファ103及び107から抜き取られ、シェーピングされて1つのフレームに多重化される。これにより、映像データと音声データとの到着遅延が一定となり、受信装置において音声データの到着ゆらぎを回避することができる。   According to the present invention, video data and audio data are extracted from the buffers 103 and 107 at the same timing, shaped, and multiplexed into one frame. As a result, the arrival delay between the video data and the audio data is constant, and the arrival fluctuation of the audio data can be avoided in the receiving apparatus.

また、多重パケットの生成に際し、RTPによって映像データパケット及び音声データパケットそれぞれに12byteを要していたのに対し、本発明によれば、これら異なるメディアデータのパケットが統合され、且つRTPに相当する部分のヘッダが2byteとなるため、ヘッダサイズを軽減することができる。   Also, when generating multiple packets, RTP required 12 bytes for each of the video data packet and the audio data packet, whereas according to the present invention, these different media data packets are integrated and correspond to RTP. Since the header of the part is 2 bytes, the header size can be reduced.

例えば、パケット送出間隔を20m秒とした場合、
(2byte+8byte+20byte) × 8bit × 50 = 12kbit/秒
のオーバヘッドとなる。
For example, if the packet transmission interval is 20 milliseconds,
(2 bytes + 8 bytes + 20 bytes) × 8 bits × 50 = 12 kbit / second overhead.

即ち、従来技術によれば32kbit/秒であることを考慮すると、本発明によれば20kbit/秒ものオーバヘッドを削減することができる。ここで削減されたオーバヘッドのbit数は、映像データ又は音声データの符号化ビットレートに割り当てることができ、符号化品質を向上させることもできる。   That is, considering that the conventional technique is 32 kbit / sec, the present invention can reduce the overhead of 20 kbit / sec. The number of bits of overhead reduced here can be assigned to the encoding bit rate of video data or audio data, and the encoding quality can be improved.

図5は、図4の送信装置におけるフレームの伝送シーケンス図である。以下では、受信装置の機能について説明するが、各機能はプログラムによっても実現できる。   FIG. 5 is a frame transmission sequence diagram in the transmission apparatus of FIG. Hereinafter, functions of the receiving apparatus will be described, but each function can also be realized by a program.

図5は、従来技術である図2のS200の部分を表している。20m秒毎に送信する音声データパケットの送信タイミングで送信しようとすると、図2の映像データパケットよりも短い長さの映像データパケットを送信することができる。図5によれば、17byteの音声データと80byteの映像データとからなるフレームは、15.8m秒で受信装置によって受信される。即ち、映像データV1(400byte)の受信終了タイミングは、音声データA1〜A4(17byte×4個)の受信終了のタイミングと一致する。   FIG. 5 shows a portion of S200 of FIG. If an attempt is made to transmit the audio data packet transmitted every 20 milliseconds, a video data packet having a shorter length than the video data packet of FIG. 2 can be transmitted. According to FIG. 5, a frame composed of 17-byte audio data and 80-byte video data is received by the receiving device in 15.8 milliseconds. That is, the reception end timing of the video data V1 (400 bytes) coincides with the reception end timing of the audio data A1 to A4 (17 bytes × 4 pieces).

例えば、AMR方式の音声データサイズは、パケット送出間隔が20m秒である場合、以下のようなバイト数になる。ここでは、代表的な3モードについて列記する。
4.75kbit/秒モード: 14byte
※6.70kbit/秒モード: 19byte
12.2kbit/秒モード: 33byte
For example, the AMR audio data size has the following number of bytes when the packet transmission interval is 20 milliseconds. Here, typical three modes are listed.
4.75 kbit / s mode: 14 bytes
* 6.70 kbit / s mode: 19 bytes
12.2 kbit / s mode: 33 bytes

映像データサイズは、単純に「ビットレート×時間」で表される。1パケットが20m秒間隔の場合、以下のようなバイト数となる。
32kbit/秒: 32kbit/8bit × 20m秒 = 80byte
The video data size is simply expressed as “bit rate × time”. When one packet is 20 ms apart, the number of bytes is as follows.
32kbit / s: 32kbit / 8bit x 20msec = 80byte

AMRが6.70kbit/秒モードの場合、多重化フレームは、シリアル番号1byte、音声データサイズ1byte、音声データ19byte及び映像データ80byteからなる合計101byteを要する。   When the AMR is in the 6.70 kbit / second mode, the multiplexed frame requires a total of 101 bytes including a serial number of 1 byte, audio data size of 1 byte, audio data of 19 bytes, and video data of 80 bytes.

図6は、本発明における送信装置の基本的な機能構成図である。これは、1つのメディアデータに対する機能構成を表しており、エンコーダは、映像エンコーダであってよいし、音声エンコーダであってもよい。以下では、送信装置の機能について説明するが、各機能はプログラムによって実装され、そのプログラムをコンピュータが実行することによって各機能が実現される。   FIG. 6 is a basic functional configuration diagram of the transmission apparatus according to the present invention. This represents a functional configuration for one piece of media data, and the encoder may be a video encoder or an audio encoder. Hereinafter, functions of the transmission apparatus will be described. Each function is implemented by a program, and each function is realized by executing the program by a computer.

図6の送信装置は、メディアデータを符号化するエンコーダ部102と、符号化されたデータをパケットに構成するパケット構成部111と、符号化されたデータを一時的に蓄積するバッファ103と、UDP/IPヘッダを付加してIPネットワークへ送信するUDP/IPプロトコルスタック部105とを有する。更に、メモリであるN個のシフトレジスタ122と、減算器123と、平均化部124と、安定度判定部125と、伝送路レート測定部126と、タイマ127と、クロック128と、減算器130と、バッファ入力レート算出部131と、符号化レート決定部132とを有する。   6 includes an encoder unit 102 that encodes media data, a packet configuration unit 111 that configures the encoded data into packets, a buffer 103 that temporarily stores the encoded data, and a UDP. A UDP / IP protocol stack unit 105 which adds a / IP header and transmits the IP network. Further, N shift registers 122, which are memories, a subtractor 123, an averaging unit 124, a stability determination unit 125, a transmission path rate measurement unit 126, a timer 127, a clock 128, and a subtractor 130 are provided. A buffer input rate calculation unit 131 and a coding rate determination unit 132.

シフトレジスタ122は、バッファ121に蓄積されているパケットのバイト数を、一定の時間間隔dTで測定し、そのバイト数を現在時刻のバッファ蓄積バイト数としてレジスタB1に記憶する。時間間隔dTは、クロック128によって供給される。例えば、N個のレジスタ(B1〜BN)が備えられ、各レジスタに記憶されたバイト数はFIFO(First In First Out)の形式で順にシフトされる。   The shift register 122 measures the number of bytes of the packet accumulated in the buffer 121 at a constant time interval dT, and stores the number of bytes in the register B1 as the number of bytes accumulated in the buffer at the current time. The time interval dT is supplied by the clock 128. For example, N registers (B1 to BN) are provided, and the number of bytes stored in each register is sequentially shifted in a FIFO (First In First Out) format.

各変数を、以下のように定義する。
B1:現在時刻のバッファ蓄積バイト数
BN:過去時刻(=現在時刻−変動時間間隔(dT×N))のバッファ蓄積バイト数
dT:バッファのバイト数測定時間間隔
dT×N:過去時刻から現在時刻までの時間間隔
BR:バッファ出力レート(伝送路レート)
BRin:バッファ入力レート(情報発生速度)
CR:エンコーダに入力される符号化レート
Each variable is defined as follows.
B1: Number of bytes stored in buffer at current time BN: Number of bytes stored in buffer at past time (= current time-variable time interval (dT × N)) dT: Time interval for measuring byte count of buffer dT × N: Current time from past time Time interval BR: Buffer output rate (transmission path rate)
BRin: Buffer input rate (information generation speed)
CR: Coding rate input to the encoder

バッファ蓄積変動量dBは、以下のように表される。これは、減算器123によって行われる。
dB = B1−BN 式(1)
The buffer accumulation fluctuation amount dB is expressed as follows. This is performed by the subtractor 123.
dB = B1-BN Formula (1)

一方、バッファ入力レートBRinと、バッファ出力レートBRとの差分が、バッファ蓄積変動量dBに反映される。
dB = (BRin−BR)×dT×N 式(2)
On the other hand, the difference between the buffer input rate BRin and the buffer output rate BR is reflected in the buffer accumulation fluctuation amount dB.
dB = (BRin−BR) × dT × N Formula (2)

式(1)=式(2)から、以下のような関係式となる。
B1−BN = (BRin−BR)×dT×N 式(3)
From Expression (1) = Expression (2), the following relational expression is obtained.
B1-BN = (BRin-BR) * dT * N Formula (3)

式(3)から、以下のような関係式が得られる。本発明によれば、式(4)によってバッファ蓄積量からバッファ出力レートBRを決定することができる。これは、符号化レート決定部132によって行われる。
BR = BRin−(B1−BN)/(dT×N) 式(4)
From the expression (3), the following relational expression is obtained. According to the present invention, the buffer output rate BR can be determined from the buffer accumulation amount by the equation (4). This is performed by the coding rate determination unit 132.
BR = BRin− (B1−BN) / (dT × N) Formula (4)

更に、バッファ量の推移については、局所変動による影響を避けるため平均化処理を行う。平均化部124は、(B1−BN)/(dT×N)の値を所定個数だけ蓄積し、その平均を算出することにより、実際の変動よりも緩和される。
BR = BRin−average{(B1−BN)/(dT×N)} 式(5)
Furthermore, the transition of the buffer amount is averaged to avoid the influence of local fluctuations. The averaging unit 124 accumulates a predetermined number of values of (B1−BN) / (dT × N), and calculates the average, thereby mitigating the actual fluctuation.
BR = BRin-average {(B1-BN) / (dT × N)} Formula (5)

通常、バッファ入力レートBRinがバッファ出力レートBRよりも小さくなければ、バッファ蓄積変動量は増加する一方となる。従って、通信を安定させるためには、以下の式を満たす必要がある。
BRin ≦ BR 式(6)
Normally, if the buffer input rate BRin is not smaller than the buffer output rate BR, the buffer accumulation fluctuation amount will only increase. Therefore, in order to stabilize communication, it is necessary to satisfy the following expression.
BRin ≦ BR Formula (6)

式(5)によって推定されたBRから、エンコーダ102へ入力する符号化レートCRを決定する際に、測定されたBRinが式(6)を満足するように、例えば運用で使用される符号化レートの中で、BRを越えないものをCRとする(CR<≒BR)。映像データの符号化レートCRは、例えば、32kbps->28kbps->24kbps・・・->4kbps->0kbpsのように変更できるとする。このときBR=25kbpsであれば、CRは24kbpsに設定する。即ち、決定されたBRよりも小さい値であって、且つ、エンコーダで実際に運用される設定可能な値を設定する。決定された符号化レートCRは、エンコーダ102へ入力される。エンコーダ102は、入力された符号レートCRによって制御される。   When determining the coding rate CR to be input to the encoder 102 from the BR estimated by the equation (5), for example, the coding rate used in operation so that the measured BRin satisfies the equation (6). Among these, CR that does not exceed BR is defined as CR (CR <≈BR). Assume that the video data coding rate CR can be changed, for example, 32 kbps → 28 kbps → 24 kbps → 4 kbps → 0 kbps. At this time, if BR = 25 kbps, CR is set to 24 kbps. That is, a settable value that is smaller than the determined BR and is actually used by the encoder is set. The determined coding rate CR is input to the encoder 102. The encoder 102 is controlled by the input code rate CR.

安定度判定部125は、伝送路レートが回復したにもかかわらず、バッファ入力レートが低く抑えられている際に、伝送路レートを測定するタイミングを判定するものである。
式(6)「バッファ入力レートBRin ≦ バッファ出力レートBR」の状態であって、且つ、バッファのバッファ蓄積量が所定の閾値Th以下である状態が、一定時間TM経過した際に、安定状態であるとして検出する。所定の閾値Thは、パケット1個分のバイト数に設定することができる。例えば図5によれば、1byte+1byte+17byte+80byte=99byteとなる(UDP/IPヘッダの28byteを含まない)。
The stability determination unit 125 determines the timing for measuring the transmission line rate when the buffer input rate is kept low despite the recovery of the transmission line rate.
When the state of the expression (6) “buffer input rate BRin ≦ buffer output rate BR” and the buffer accumulation amount of the buffer is equal to or less than the predetermined threshold Th, Detect as there is. The predetermined threshold Th can be set to the number of bytes for one packet. For example, according to FIG. 5, 1 byte + 1 byte + 17 bytes + 80 bytes = 99 bytes (not including 28 bytes of the UDP / IP header).

伝送路レート測定部126は、安定度判定部125が安定状態にあると判定した際に、実際に伝送路レートを測定するものである。伝送路レートの具体的な測定方法としては、例えば同一出願人による特願2003−080134号がある。この方法は、サイズの異なる2種類のレポートパケットを送信装置及び受信装置の間で交換することによる往復遅延時間に基づいて、伝送路レートを決定するものである。   The transmission line rate measuring unit 126 actually measures the transmission line rate when the stability determination unit 125 determines that the state is in a stable state. As a specific method for measuring the transmission line rate, there is, for example, Japanese Patent Application No. 2003-080134 by the same applicant. In this method, a transmission line rate is determined based on a round trip delay time obtained by exchanging two types of report packets having different sizes between a transmission device and a reception device.

図7は、測定時間間隔dT毎に実行されるフローチャートである。   FIG. 7 is a flowchart executed at every measurement time interval dT.

図7の処理は、一定の時間間隔dT毎、即ちバッファ蓄積量が測定され、レジスタをシフトし、シフトレジスタB1にバッファ蓄積量が格納される毎、に行われる。
(S701)レジスタB1に蓄積された現在時刻のバッファ蓄積量B1が、レジスタBNに蓄積された過去時刻のバッファ蓄積量BNよりも大きいか否か判定する。B1がBNよりも大きくないならば、処理を終了する。
(S702)B1がBNよりも大きいならば、式(4)の計算をする。これにより、バッファ出力レートBRが算出される。
(S703)次に、バッファ出力レートBRに基づいて、エンコーダに対する符号化レートCRを求める。ここでは、CR=BR−αとする。
(S704)算出された符号化レートCRは、エンコーダへ入力される。エンコーダは、入力された符号化レートCRに応じて制御される。
The processing in FIG. 7 is performed at regular time intervals dT, that is, whenever the buffer accumulation amount is measured, the register is shifted, and the buffer accumulation amount is stored in the shift register B1.
(S701) It is determined whether or not the buffer accumulation amount B1 at the current time accumulated in the register B1 is larger than the buffer accumulation amount BN at the past time accumulated in the register BN. If B1 is not larger than BN, the process is terminated.
(S702) If B1 is larger than BN, the equation (4) is calculated. Thereby, the buffer output rate BR is calculated.
(S703) Next, an encoding rate CR for the encoder is obtained based on the buffer output rate BR. Here, CR = BR−α.
(S704) The calculated coding rate CR is input to the encoder. The encoder is controlled according to the input coding rate CR.

図8は、安定度判定部における伝送路レートの回復のためのフローチャートである。   FIG. 8 is a flowchart for recovering the transmission line rate in the stability determination unit.

図8の処理は、図7の処理に続いて(dT毎に)実行されてもよいし、別のタイミングで実行されてもよい。
(S801)バッファ入力レートBRinが、バッファ出力レートBR以下であるか否かを判定する。BRinがBRよりも大きければ、変数tに現在時刻nowを代入して(S807)、処理を終了する。
(S802)BRinがBR以下であるならば、バッファのバッファ蓄積量が、所定の閾値Thよりも小さいか否かを判定する。バッファ蓄積量が閾値Th以上であれば、変数tに現時時刻nowを代入して(S807)、処理を終了する。
(S803)バッファ蓄積量が閾値Thよりも小さいならば、現在時刻nowから過去時刻tを差し引いた時間間隔が、所定の時間間隔TMよりも長いか否かを判定する。TMよりも短かいならば、処理を終了する。時間間隔TMは、伝送路レートの回復判定時間であって、タイマ127によってカウントされる。例えば実際の伝送路レートが80kbps程度であれば、時間間隔TMはおよそ5秒程度に設定される。
(S804)所定の時間間隔TMよりも長いならば、安定状態にあると判断し、伝送路レート測定処理を行う。
(S805)伝送レート測定処理によって測定された伝送路レートTRは、バッファ出力レートBRに代入され、符号化レートCR(=BR−α)が決定される。
(S806)最後に、符号化レートCRは、エンコーダへ入力される。エンコーダは、CRに基づいて符号化レートを制御する。
The process of FIG. 8 may be executed (every dT) following the process of FIG. 7 or may be executed at another timing.
(S801) It is determined whether or not the buffer input rate BRin is equal to or lower than the buffer output rate BR. If BRin is larger than BR, the current time now is substituted for variable t (S807), and the process is terminated.
(S802) If BRin is equal to or less than BR, it is determined whether or not the buffer storage amount of the buffer is smaller than a predetermined threshold Th. If the buffer accumulation amount is equal to or greater than the threshold Th, the current time now is substituted for the variable t (S807), and the process is terminated.
(S803) If the buffer accumulation amount is smaller than the threshold value Th, it is determined whether or not the time interval obtained by subtracting the past time t from the current time now is longer than the predetermined time interval TM. If it is shorter than TM, the process is terminated. The time interval TM is a transmission line rate recovery determination time, and is counted by the timer 127. For example, if the actual transmission line rate is about 80 kbps, the time interval TM is set to about 5 seconds.
(S804) If it is longer than the predetermined time interval TM, it is determined that it is in a stable state, and transmission line rate measurement processing is performed.
(S805) The transmission line rate TR measured by the transmission rate measurement process is substituted into the buffer output rate BR, and the coding rate CR (= BR-α) is determined.
(S806) Finally, the coding rate CR is input to the encoder. The encoder controls the coding rate based on the CR.

図9は、バッファ蓄積量の時間変動を表すグラフである。縦軸は現在時刻のバッファ蓄積量を表し、横軸は時刻を表す。   FIG. 9 is a graph showing the time variation of the buffer accumulation amount. The vertical axis represents the buffer accumulation amount at the current time, and the horizontal axis represents time.

伝送開始当初、式(6)BRin ≦ BRの関係が満足されているとする。
(S1)N=5として、過去時刻のバッファ蓄積量BN=2、現在時刻のバッファ蓄積量B1=7とする。これは、伝送路レートが低下したことによって、バッファ蓄積変動量dB(B1−BN)が増加している。このとき、式(4)によってバッファ出力レートBRが算出される。そして、符号化レートCR(=BR−α)がエンコーダに入力される。
Assume that the relationship of the expression (6) BRin ≦ BR is satisfied at the beginning of transmission.
(S1) N = 5, the buffer accumulation amount BN = 2 at the past time, and the buffer accumulation amount B1 = 7 at the current time. This is because the buffer accumulation fluctuation amount dB (B1-BN) is increased due to the decrease in the transmission line rate. At this time, the buffer output rate BR is calculated by Equation (4). Then, the coding rate CR (= BR−α) is input to the encoder.

(S2)次に、dT時間経過した際、レジスタをシフトさせ、レジスタB1に現在時刻のバッファ蓄積量を新たに格納する。このとき、過去時刻のバッファ蓄積量BN=2、現在時刻のバッファ蓄積量B1=7とする。このとき、式(4)によってバッファ出力レートBRが算出される。そして、符号化レートCR(=BR−α)がエンコーダに入力される。 (S2) Next, when dT time elapses, the register is shifted, and the buffer accumulation amount at the current time is newly stored in the register B1. At this time, it is assumed that the buffer accumulation amount BN = 2 at the past time and the buffer accumulation amount B1 = 7 at the current time. At this time, the buffer output rate BR is calculated by Equation (4). Then, the coding rate CR (= BR−α) is input to the encoder.

(S3、S4)次に、dT時間経過した際、レジスタをシフトさせ、レジスタB1に現在時刻のバッファ蓄積量を新たに格納する。このとき、過去時刻のバッファ蓄積量BN=4、現在時刻のバッファ蓄積量B1=5とする。このとき、式(4)によってバッファ出力レートBRが算出される。そして、符号化レートCR(=BR−α)がエンコーダに入力される。 (S3, S4) Next, when the dT time has elapsed, the register is shifted, and the buffer accumulation amount at the current time is newly stored in the register B1. At this time, the buffer accumulation amount BN = 4 at the past time and the buffer accumulation amount B1 = 5 at the current time are set. At this time, the buffer output rate BR is calculated by Equation (4). Then, the coding rate CR (= BR−α) is input to the encoder.

(S5)次に、dT時間経過した際、レジスタをシフトさせ、レジスタB1に現在時刻のバッファ蓄積量を新たに格納する。このとき、過去時刻のバッファ蓄積量BN=7、現在時刻のバッファ蓄積量B1=2とする。ここでは、バッファ蓄積変動量dB(B1−BN)が減少している。従って、式(4)によって新たなバッファ出力レートを算出することはしない。 (S5) Next, when dT time elapses, the register is shifted, and the buffer accumulation amount at the current time is newly stored in the register B1. At this time, the buffer accumulation amount BN = 7 at the past time and the buffer accumulation amount B1 = 2 at the current time are set. Here, the buffer accumulation fluctuation amount dB (B1-BN) decreases. Therefore, a new buffer output rate is not calculated by equation (4).

(S6)次に、dT時間経過した際、レジスタをシフトさせ、レジスタB1に現在時刻のバッファ蓄積量を新たに格納する。このとき、過去時刻のバッファ蓄積量BN=7、現在時刻のバッファ蓄積量B1=2とする。ここでは、バッファ蓄積変動量dB(B1−BN)が減少している。従って、式(4)によって新たなバッファ出力レートを算出することはしない。 (S6) Next, when dT time elapses, the register is shifted, and the buffer accumulation amount at the current time is newly stored in the register B1. At this time, the buffer accumulation amount BN = 7 at the past time and the buffer accumulation amount B1 = 2 at the current time are set. Here, the buffer accumulation fluctuation amount dB (B1-BN) decreases. Therefore, a new buffer output rate is not calculated by equation (4).

図3のS4以降は、新たに決定されたバッファ入力レートBRinによって式(6)「バッファ入力レートBRin≦バッファ出力レートBR」の状態が継続している。この間、バッファに蓄積されているデータバイト数は小さい値で維持されることとなる。しかしながら、伝送路レートが回復した場合であっても、このバッファ入力レートBRinを簡単に増大することはできない。式(4)からは、伝送路レートの回復の判断はできないためである。   After S4 in FIG. 3, the state of the expression (6) “buffer input rate BRin ≦ buffer output rate BR” continues with the newly determined buffer input rate BRin. During this time, the number of data bytes stored in the buffer is maintained at a small value. However, even when the transmission line rate is recovered, the buffer input rate BRin cannot be increased easily. This is because it cannot be determined from equation (4) that the transmission path rate is restored.

図3のS4以降は、式(6)「バッファ入力レートBRin≦バッファ出力レートBR」の状態であって、且つ、閾値Th以下の状態が、一定時間TM以上継続しているとする安定状態か否かを判定する。安定状態が継続した場合、伝送路レートの測定を開始する。実際に測定された伝送路レートは、新たにバッファ出力レートBRとして反映される。従って、「バッファ入力レートBRin≦バッファ出力レートBR」となるバッファ入力レートBRinが新たに決定され、そのバッファ入力レートBRinが映像エンコーダに102に入力される。   After S4 in FIG. 3, is the stable state in which the state of the equation (6) “buffer input rate BRin ≦ buffer output rate BR” and the threshold value Th or less continues for a certain time TM or more? Determine whether or not. When the stable state continues, measurement of the transmission line rate is started. The actually measured transmission line rate is newly reflected as the buffer output rate BR. Accordingly, a buffer input rate BRin satisfying “buffer input rate BRin ≦ buffer output rate BR” is newly determined, and the buffer input rate BRin is input to the video encoder 102.

安定度判定部125は、レポートパケットを送受信して伝送路レートを測定する。レポートパケットを送信している際に、式(4)による伝送路レートの低下が検知されれば、レポートパケットにより送信バッファが影響を受けていることとなる。この場合、伝送路の回復状態は不十分と判断し、安定状態の判断は解除されることとなる。   The stability determination unit 125 transmits and receives report packets to measure the transmission path rate. When a report packet is transmitted, if a decrease in the transmission line rate according to the equation (4) is detected, the transmission buffer is affected by the report packet. In this case, the recovery state of the transmission line is determined to be insufficient, and the determination of the stable state is cancelled.

図10は、本発明における送信装置の機能構成図である。   FIG. 10 is a functional configuration diagram of the transmission apparatus according to the present invention.

図10の送信装置は、図4の送信装置に図6の機能構成を含むものである。バッファ入力レート算出部131は、映像エンコーダ部102と音声エンコーダ部108とからバッファ入力レートを取得する。これら入力レートの和が、バッファ入力レートBRinとして算出される。バッファ121は、多重化部111によって映像データ及び音声データが1つのフレームに構成された多重化パケットを一時的に蓄積しており、シフトレジスタ122は、バッファ121のバッファ蓄積量を記憶する。符号化レート決定部132は、決定した符号化レートCRを映像エンコーダ部102に入力する。従って、映像データの符号化レートが動的に変更されることとなる。   The transmission apparatus of FIG. 10 includes the functional configuration of FIG. 6 in the transmission apparatus of FIG. The buffer input rate calculation unit 131 acquires the buffer input rate from the video encoder unit 102 and the audio encoder unit 108. The sum of these input rates is calculated as the buffer input rate BRin. The buffer 121 temporarily stores multiplexed packets in which video data and audio data are configured in one frame by the multiplexing unit 111, and the shift register 122 stores the buffer storage amount of the buffer 121. The encoding rate determination unit 132 inputs the determined encoding rate CR to the video encoder unit 102. Therefore, the encoding rate of the video data is dynamically changed.

しかしながら、符号化レート決定部132によって出力される符号化レートは、音声エンコーダに入力されてもよい。また、映像エンコーダ及び音声エンコーダの両方に入力されるものであってもよい。   However, the coding rate output by the coding rate determination unit 132 may be input to the speech encoder. Further, it may be input to both the video encoder and the audio encoder.

例えば、符号化レート決定部132は、以前の符号化レートから10000bit/秒だけ減少させなればならないとする。図10の送信装置によれば、10000bit/秒の符号化レートの減少を、映像エンコーダ102によって制御する。しかしながら、映像エンコーダ102の符号化レートを9000bit/秒だけ低下させ、音声エンコーダ108の符号化レートを1000bit/秒だけ低下させることもできる。   For example, it is assumed that the coding rate determination unit 132 has to reduce the previous coding rate by 10,000 bits / second. According to the transmission apparatus of FIG. 10, the video encoder 102 controls the decrease in the coding rate of 10,000 bits / second. However, the encoding rate of the video encoder 102 can be decreased by 9000 bits / second and the encoding rate of the audio encoder 108 can be decreased by 1000 bits / second.

実際には、IPテレビ電話によって用いられる会話用音声エンコーダは、ビットレートの設定範囲が狭い。例えばAMRでは、4.75kbit/秒〜12.2kbit/秒である。これに対し、映像エンコーダは、32kbit/秒の設定範囲がある。従って、音声エンコーダのレートを変更してもその範囲に限界があり、会話を優先するためにも音声エンコーダのレートは維持する必要がある。一方、映像エンコーダは、レート変更の範囲が広く、音声エンコーダと比較してビットレートに依存しないために、そのビットレート情報を相手通信装置へ送信する必要もない。従って、図10の送信装置によれば、映像エンコーダのみの符号化レートを変更している。   Actually, a conversational voice encoder used by an IP videophone has a narrow bit rate setting range. For example, in AMR, it is 4.75 kbit / sec to 12.2 kbit / sec. On the other hand, the video encoder has a setting range of 32 kbit / sec. Therefore, even if the rate of the speech encoder is changed, the range is limited, and the rate of the speech encoder needs to be maintained in order to give priority to conversation. On the other hand, since the video encoder has a wide rate change range and does not depend on the bit rate as compared with the audio encoder, it is not necessary to transmit the bit rate information to the counterpart communication device. Therefore, according to the transmission apparatus of FIG. 10, the encoding rate of only the video encoder is changed.

前述した本発明における符号化レートを制御する送信装置、送信プログラム及び送信方法の種々の実施形態によれば、本発明の技術思想及び見地の範囲の種々の変更、修正及び省略を、当業者は容易に行うことができる。前述の説明はあくまで例であって、何ら制約しようとするものではない。本発明は、特許請求の範囲及びその均等物として限定するものにのみ制約される。   According to the above-described various embodiments of the transmission apparatus, transmission program, and transmission method for controlling the coding rate in the present invention, those skilled in the art can make various changes, modifications and omissions in the technical idea and scope of the present invention. It can be done easily. The above description is merely an example, and is not intended to be restrictive. The invention is limited only as defined in the following claims and the equivalents thereto.

従来技術によるパケット多重化のための送信装置の機能構成図である。It is a function block diagram of the transmitter for packet multiplexing by a prior art. 従来技術におけるデータパケットの伝送のシーケンス図である。It is a sequence diagram of data packet transmission in the prior art. 本発明におけるパケット多重化フレームのメディア分割構成図である。It is a media division | segmentation block diagram of the packet multiplexing frame in this invention. 本発明によって用いられる送信装置の機能構成図である。It is a function block diagram of the transmitter used by this invention. 図4の送信装置におけるデータパケットの伝送のシーケンス図である。FIG. 5 is a sequence diagram of data packet transmission in the transmission device of FIG. 4. 本発明における送信装置の基本的な機能構成図である。It is a basic functional block diagram of the transmission apparatus in this invention. 測定時間間隔dT毎に実行されるフローチャートである。It is a flowchart performed for every measurement time interval dT. 安定度判定部における伝送路レートの回復のためのフローチャートである。It is a flowchart for the recovery of the transmission line rate in a stability determination part. バッファ蓄積量の時間変動を表すグラフである。It is a graph showing the time fluctuation | variation of the buffer accumulation amount. 本発明における送信装置の機能構成図である。It is a function block diagram of the transmitter in this invention.

符号の説明Explanation of symbols

1 送信装置
101 フォーマット変換部
102 映像エンコーダ部、エンコーダ部
103 映像データ用バッファ、バッファ
104、106 RTPヘッダ付加部
105 UDP/IPプロトコルスタック部
107 音声データ用バッファ
108 音声エンコーダ部
109 A/D変換部
110 増幅器
111 パケット構成部、多重化部
121 バッファ
122 シフトレジスタ
123、130 減算器
124 平均化部
125 安定度判定部
126 伝送路レート測定部
127 タイマ
128 クロック
129 スイッチ
131 バッファ入力レート算出部
132 符号化レート決定部
3 IPネットワーク
4 カメラ
5 マイク
DESCRIPTION OF SYMBOLS 1 Transmission apparatus 101 Format conversion part 102 Video encoder part, Encoder part 103 Video data buffer, buffer 104, 106 RTP header addition part 105 UDP / IP protocol stack part 107 Audio data buffer 108 Audio encoder part 109 A / D conversion part DESCRIPTION OF SYMBOLS 110 Amplifier 111 Packet structure part, Multiplexing part 121 Buffer 122 Shift register 123, 130 Subtractor 124 Averaging part 125 Stability determination part 126 Transmission path rate measurement part 127 Timer 128 Clock 129 Switch 131 Buffer input rate calculation part 132 Encoding Rate determining unit 3 IP network 4 Camera 5 Microphone

Claims (21)

送信すべきメディアデータを符号化するエンコーダ手段と、
前記符号化されたメディアデータを一時的に蓄積するバッファと、
前記バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
前記バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、前記バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定された前記バッファ出力レートBRを符号化レートとして前記エンコーダ手段に入力する符号化レート決定手段と
を有することを特徴とする符号化レートを制御する送信装置。
Encoder means for encoding media data to be transmitted;
A buffer for temporarily storing the encoded media data;
Memory means for measuring the number of bytes of media data stored in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculating means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And a coding rate determining unit that inputs the determined buffer output rate BR to the encoder unit as a coding rate.
送信すべき第1のメディアデータを符号化する第1のエンコーダ手段と、
送信すべき第2のメディアデータを符号化する第2のエンコーダ手段と、
前記符号化された第1のメディアデータ及び第2のメディアデータそれぞれのパケットを一時的に蓄積するバッファと、
前記バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
前記バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、前記バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定された前記バッファ出力レートBRを符号化レートとして前記第1のエンコーダ手段に入力する符号化レート決定手段と
を有することを特徴とする符号化レートを制御する送信装置。
First encoder means for encoding first media data to be transmitted;
Second encoder means for encoding second media data to be transmitted;
A buffer for temporarily storing packets of the encoded first media data and second media data;
Memory means for measuring the number of bytes of media data stored in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculating means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And a coding rate determining unit that inputs the determined buffer output rate BR to the first encoder unit as a coding rate.
前記第1のメディアデータは映像データであって、前記第2のメディアデータは音声データであることを特徴とする請求項2に記載の送信装置。   The transmission device according to claim 2, wherein the first media data is video data, and the second media data is audio data. 前記第1のメディアデータは音声データであって、前記第2のメディアデータは映像データであることを特徴とする請求項2に記載の送信装置。   The transmission apparatus according to claim 2, wherein the first media data is audio data, and the second media data is video data. 前記符号化レート決定手段は、前記符号化レートを
符号化レート ≦ バッファ出力レートBR
となるように決定することを特徴とする請求項1から4のいずれか1項に記載の送信装置。
The encoding rate determining means sets the encoding rate to encoding rate ≦ buffer output rate BR.
The transmission device according to claim 1, wherein the transmission device is determined so as to satisfy.
バッファ入力レートBRin ≦ バッファ出力レートBR
であって、且つ、前記バッファのバッファ蓄積量が所定の閾値以下である状態が、一定時間経過した際に、安定状態であるとして検出する安定状態判定手段と、
前記安定状態判定手段が前記安定状態であると判定した際に、前記メディアデータを送信すべき伝送路レートを測定する伝送路レート測定手段と
を更に有し、
前記符号化レート決定手段は、前記伝送路レート測定手段によって測定された伝送路レートを前記バッファ出力レートBRとして、前記符号化レートを決定することを特徴とする請求項1から5のいずれか1項に記載の送信装置。
Buffer input rate BRin ≤ Buffer output rate BR
And a stable state determination means for detecting that the state where the buffer accumulation amount of the buffer is equal to or less than a predetermined threshold value is a stable state when a predetermined time has elapsed,
When the stable state determining means determines that it is in the stable state, it further comprises transmission line rate measuring means for measuring a transmission line rate at which the media data is to be transmitted,
6. The coding rate determination unit according to claim 1, wherein the coding rate determination unit determines the coding rate using the transmission channel rate measured by the transmission channel rate measurement unit as the buffer output rate BR. The transmitter according to the item.
バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)について平均化する平均化手段を更に有することを特徴とする請求項1から6のいずれか1項に記載の送信装置。   7. The transmission apparatus according to claim 1, further comprising averaging means for averaging the buffer accumulation fluctuation amount (B1-BN) / fluctuation time interval (dT × N). 送信すべきメディアデータを符号化するエンコーダ手段と、
前記符号化されたメディアデータを一時的に蓄積するバッファと、
前記バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
前記バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、前記バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定された前記バッファ出力レートBRを符号化レートとして前記エンコーダ手段に入力する符号化レート決定手段と
してコンピュータを機能させることを特徴とする符号化レートを制御する送信プログラム。
Encoder means for encoding media data to be transmitted;
A buffer for temporarily storing the encoded media data;
Memory means for measuring the number of bytes of media data stored in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculating means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
A transmission program for controlling a coding rate, characterized by causing a computer to function as a coding rate determining means for inputting the determined buffer output rate BR to the encoder means as a coding rate.
送信すべき第1のメディアデータを符号化する第1のエンコーダ手段と、
送信すべき第2のメディアデータを符号化する第2のエンコーダ手段と、
前記符号化された第1のメディアデータ及び第2のメディアデータそれぞれのパケットを一時的に蓄積するバッファと、
前記バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、該測定されたバイト数(B1〜BN)の履歴を記録するメモリ手段と、
前記バッファへのバッファ入力レートBRinを測定するバッファ入力レート算出手段と、
バッファ蓄積変動量(B1−BN)が増加している場合、前記バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定された前記バッファ出力レートBRを符号化レートして前記第1のエンコーダ手段に入力する符号化レート決定手段と
してコンピュータを機能させることを特徴とする符号化レートを制御する送信プログラム。
First encoder means for encoding first media data to be transmitted;
Second encoder means for encoding second media data to be transmitted;
A buffer for temporarily storing packets of the encoded first media data and second media data;
Memory means for measuring the number of bytes of media data stored in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN);
Buffer input rate calculating means for measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
Determined by the determined the buffer output rate BR for controlling the encoding rate for causing a computer to function as the coding rate determination unit as the coding rate is input to the first encoder means sends program.
前記第1のメディアデータは映像データであって、前記第2のメディアデータは音声データであることを特徴とする請求項9に記載の送信プログラム。   The transmission program according to claim 9, wherein the first media data is video data, and the second media data is audio data. 前記第1のメディアデータは音声データであって、前記第2のメディアデータは映像データであることを特徴とする請求項9に記載の送信プログラム。   The transmission program according to claim 9, wherein the first media data is audio data, and the second media data is video data. 前記符号化レート決定手段は、前記符号化レートを
符号化レート ≦ バッファ出力レートBR
となるように決定するようにコンピュータを機能させることを特徴とする請求項8から11のいずれか1項に記載の送信プログラム。
The encoding rate determining means sets the encoding rate to encoding rate ≦ buffer output rate BR.
The transmission program according to claim 8, wherein the computer is caused to function so as to be determined as follows.
バッファ入力レートBRin ≦ バッファ出力レートBR
であって、且つ、前記バッファのバッファ蓄積量が所定の閾値以下である状態が、一定時間経過した際に、安定状態であるとして検出する安定状態判定手段と、
前記安定状態判定手段が前記安定状態になったと判定した際に、前記メディアデータを送信すべき伝送路レートを測定する伝送路レート測定手段と
を更に有し、
前記符号化レート決定手段は、前記伝送路レート測定手段によって測定された伝送路レートを前記バッファ出力レートBRとして、前記符号化レートを決定するようにコンピュータを機能させることを特徴とする請求項8から12のいずれか1項に記載の送信プログラム。
Buffer input rate BRin ≤ Buffer output rate BR
And a stable state determination means for detecting that the state where the buffer accumulation amount of the buffer is equal to or less than a predetermined threshold value is a stable state when a predetermined time has elapsed,
When the stable state determining means determines that the stable state has been reached, it further comprises transmission line rate measuring means for measuring a transmission line rate at which the media data is to be transmitted,
9. The coding rate determination means causes a computer to function so as to determine the coding rate with the transmission path rate measured by the transmission path rate measurement means as the buffer output rate BR. The transmission program according to any one of 1 to 12.
バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)について平均化する平均化手段を更に有するように機能させることを特徴とする請求項8から13のいずれか1項に記載の送信プログラム。   14. The apparatus according to claim 8, further comprising an averaging unit that averages the buffer accumulation fluctuation amount (B1−BN) / variation time interval (dT × N). Send program. 送信すべきメディアデータを符号化するエンコーダと、前記符号化されたメディアデータを一時的に蓄積するバッファとを有し、
前記バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、メモリにその測定されたバイト数(B1〜BN)の履歴を記録する第1のステップと、
前記バッファへのバッファ入力レートBRinを測定する第2のステップと、
バッファ蓄積変動量(B1−BN)が増加している場合、前記バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定された前記バッファ出力レートBRを符号化レートとして前記エンコーダに入力する第3のステップと
有することを特徴とする符号化レートを制御する送信方法。
An encoder that encodes media data to be transmitted, and a buffer that temporarily stores the encoded media data;
A first step of measuring the number of bytes of media data accumulated in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN) in a memory;
A second step of measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And a third step of inputting the determined buffer output rate BR to the encoder as an encoding rate, and a transmission method for controlling the encoding rate.
送信すべき第1のメディアデータを符号化する第1のエンコーダと、送信すべき第2のメディアデータを符号化する第2のエンコーダと、前記符号化された第1のメディアデータ及び第2のメディアデータそれぞれのパケットを一時的に蓄積するバッファとを有し、
前記バッファに蓄積されたメディアデータのバイト数を所定時間dT毎に測定し、メモリにその測定されたバイト数(B1〜BN)の履歴を記録する第1のステップと、
前記バッファへのバッファ入力レートBRinを測定する第2のステップと、
バッファ蓄積変動量(B1−BN)が増加している場合、前記バッファからのメディアデータのバッファ出力レートBRを、
バッファ出力レートBR=
バッファ入力レートBRin−バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)
によって決定し、決定された前記バッファ出力レートBRを符号化レートとして前記第1のエンコーダ手段に入力する第3のステップと
を有することを特徴とする符号化レートを制御する送信方法。
A first encoder that encodes first media data to be transmitted; a second encoder that encodes second media data to be transmitted; and the encoded first media data and second A buffer for temporarily storing packets of media data,
A first step of measuring the number of bytes of media data accumulated in the buffer every predetermined time dT, and recording a history of the measured number of bytes (B1 to BN) in a memory;
A second step of measuring a buffer input rate BRin to the buffer;
When the buffer accumulation fluctuation amount (B1-BN) increases, the buffer output rate BR of media data from the buffer is
Buffer output rate BR =
Buffer input rate BRin−buffer accumulation variation (B1−BN) / variation time interval (dT × N)
And a third step of inputting the determined buffer output rate BR as an encoding rate to the first encoder means, and a transmission method for controlling the encoding rate.
前記第1のメディアデータは映像データであって、前記第2のメディアデータは音声データであることを特徴とする請求項16に記載の送信方法。   The transmission method according to claim 16, wherein the first media data is video data, and the second media data is audio data. 前記第1のメディアデータは音声データであって、前記第2のメディアデータは映像データであることを特徴とする請求項16に記載の送信方法。   The transmission method according to claim 16, wherein the first media data is audio data, and the second media data is video data. 前記第3のステップは、前記符号化レートを
符号化レート ≦ バッファ出力レートBR
となるように決定することを特徴とする請求項15から18のいずれか1項に記載の送信方法。
In the third step, the encoding rate is set to encoding rate ≦ buffer output rate BR.
The transmission method according to any one of claims 15 to 18, wherein the transmission method is determined so that
バッファ入力レートBRin ≦ バッファ出力レートBR
であって、且つ、前記バッファのバッファ蓄積量が所定の閾値以下である状態が、一定時間経過した際に、安定状態であるとして検出するステップと、
前記安定状態判定手段が前記安定状態であると判定した際に、前記メディアデータを送信すべき伝送路レートを測定するステップと
を更に有し、
前記第3のステップは、前記伝送路レート測定手段によって測定された伝送路レートを前記バッファ出力レートBRとして、前記符号化レートを決定することを特徴とする請求項15から18のいずれか1項に記載の送信方法。
Buffer input rate BRin ≤ Buffer output rate BR
And detecting that the state where the buffer accumulation amount of the buffer is equal to or less than a predetermined threshold is a stable state when a predetermined time has elapsed, and
Measuring the transmission line rate at which the media data should be transmitted when the stable state determining means determines that the stable state is present;
19. The encoding step according to any one of claims 15 to 18, wherein the third step determines the encoding rate using the transmission path rate measured by the transmission path rate measuring means as the buffer output rate BR. The transmission method described in.
バッファ蓄積変動量(B1−BN)/変動時間間隔(dT×N)について平均化するステップを更に有することを特徴とする請求項15から20のいずれか1項に記載の送信方法。   The transmission method according to any one of claims 15 to 20, further comprising the step of averaging the buffer accumulation fluctuation amount (B1-BN) / fluctuation time interval (dT x N).
JP2004301610A 2004-10-15 2004-10-15 Transmission apparatus, transmission program, and transmission method for controlling coding rate Expired - Fee Related JP4457841B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2004301610A JP4457841B2 (en) 2004-10-15 2004-10-15 Transmission apparatus, transmission program, and transmission method for controlling coding rate

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2004301610A JP4457841B2 (en) 2004-10-15 2004-10-15 Transmission apparatus, transmission program, and transmission method for controlling coding rate

Publications (2)

Publication Number Publication Date
JP2006115306A JP2006115306A (en) 2006-04-27
JP4457841B2 true JP4457841B2 (en) 2010-04-28

Family

ID=36383426

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2004301610A Expired - Fee Related JP4457841B2 (en) 2004-10-15 2004-10-15 Transmission apparatus, transmission program, and transmission method for controlling coding rate

Country Status (1)

Country Link
JP (1) JP4457841B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5199219B2 (en) * 2009-11-17 2013-05-15 株式会社日立国際電気 Digital broadcast apparatus, digital broadcast method, and digital broadcast program
KR101937247B1 (en) * 2016-12-28 2019-01-14 네이버 주식회사 Bandwidth estimation based on buffer and adaptive bitrate publish in real-time live environment

Also Published As

Publication number Publication date
JP2006115306A (en) 2006-04-27

Similar Documents

Publication Publication Date Title
JP4661373B2 (en) Transmission device and transmission program for controlling discard of specific media data
JP4838273B2 (en) Adaptive media playback method and apparatus for intra-media synchronization
US6985501B2 (en) Device and method for reducing delay jitter in data transmission
KR20030095995A (en) Method for transporting media, transmitter and receiver therefor
US20020026310A1 (en) Real-time information receiving apparatus
US20050129006A1 (en) Voice packet communications system with communications quality evaluation function
US7787500B2 (en) Packet receiving method and device
JP3891755B2 (en) Packet receiver
KR20140104969A (en) Apparatus and method for synchronized transmission of multimedia content over an asynchronous network
KR100323322B1 (en) Method and apparatus for reducing jitter of program clock reference in MPEG transport stream on ATM, and MPEG decoder
JPWO2006009087A1 (en) Stream data receiving / reproducing apparatus and stream data receiving / reproducing method
JPWO2005039180A1 (en) Media signal transmission method and reception method, and transmission / reception method and apparatus
JP2005151600A (en) Data transmission unit, data transmission method, and program
KR101516113B1 (en) Voice decoding apparatus
JP4457841B2 (en) Transmission apparatus, transmission program, and transmission method for controlling coding rate
JP2004214755A (en) Dynamic coding rate revision method and apparatus thereof
JPWO2005006688A1 (en) Communications system
JP4050961B2 (en) Packet-type voice communication terminal
JP4454255B2 (en) Voice / fax communication system, voice / fax receiver, and fluctuation absorbing buffer amount control method
JP2006115305A (en) Transmission method for controlling generating timing of packet multiplexed frame in different media data, transmission program, and transmission apparatus
JP4376681B2 (en) Audio data receiving apparatus and audio data transmitting apparatus
JP2010136159A (en) Data receiver
JP5234845B2 (en) Packet transmitting / receiving apparatus, method, and program
JP4893363B2 (en) Stream data receiving / reproducing device
JP2004222150A (en) Internet protocol telephone terminal and its data conversion method

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070905

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20090619

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20090728

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20090811

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

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

R150 Certificate of patent or registration of utility model

Ref document number: 4457841

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

Year of fee payment: 3

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

Free format text: PAYMENT UNTIL: 20160219

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees