JPH1051769A - Synchronization data generator and its method - Google Patents
Synchronization data generator and its methodInfo
- Publication number
- JPH1051769A JPH1051769A JP20485096A JP20485096A JPH1051769A JP H1051769 A JPH1051769 A JP H1051769A JP 20485096 A JP20485096 A JP 20485096A JP 20485096 A JP20485096 A JP 20485096A JP H1051769 A JPH1051769 A JP H1051769A
- Authority
- JP
- Japan
- Prior art keywords
- data
- audio
- video
- stream
- pcr
- 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.)
- Pending
Links
Landscapes
- Television Systems (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Synchronizing For Television (AREA)
Abstract
Description
【0001】[0001]
【発明の属する技術分野】本発明は、MPEG方式の圧
縮音声・映像データに、正確なプログラムクロックリフ
ァレンス(PCR;program clock reference)を生成
し、多重化して出力する同期データ生成装置およびその
方法に関する。BACKGROUND OF THE INVENTION 1. Field of the Invention The present invention relates to a synchronous data generating apparatus and method for generating an accurate program clock reference (PCR) from compressed audio / video data of the MPEG system, multiplexing and outputting the same, and a method therefor. .
【0002】[0002]
【従来の技術および発明が解決しようとする課題】映像
データの高能率符号化方式として、MPEG(moving pi
cture coding experts group) 方式が実用化されてい
る。MPEG方式により圧縮符号化された映像データ
(圧縮映像データ)は、4バイトのトランスポートスト
リーム(TS)ヘッダおよび184バイトのTSペイロ
ードから構成される188バイト固定長のTSパケット
に多重化されて伝送される。このTSヘッダには、送信
側のシステムタイムクロック(STC)と受信側のST
Cとの同期をとるために用いられるPCRが付加されて
いる。2. Description of the Related Art MPEG (moving pi) is an efficient coding method for video data.
cture coding experts group) method has been put to practical use. Video data (compressed video data) compressed and encoded by the MPEG system is multiplexed and transmitted to a 188-byte fixed-length TS packet composed of a 4-byte transport stream (TS) header and a 184-byte TS payload. Is done. The TS header includes a system time clock (STC) on the transmitting side and an STC on the receiving side.
A PCR used for synchronization with C is added.
【0003】第i番目のPCR〔PCR(i)〕は、シ
ステムタイムクロック〔STC;27MHz(MPEG
2),90kHz(MPEG1)〕で定まる時間精度
(1/27MHz,1/90kHz)で定義されるデー
タPCRbase(i)およびデータPCRext (i)の2
つの部分に分かれる。MPEG2方式においては、PC
R(i)、データPCRbase(i)およびデータPCR
ext (i)は、下の式1〜式3にそれぞれ示すように定
義される。The i-th PCR [PCR (i)] uses a system time clock [STC; 27 MHz (MPEG
2), data PCR base (i) and data PCR ext (i) defined with time accuracy (1/27 MHz, 1/90 kHz) determined by 90 kHz (MPEG1)].
Divided into two parts. In the MPEG2 system, PC
R (i), data PCR base (i) and data PCR
ext (i) is defined as shown in Equations 1 to 3 below.
【0004】なお、ビデオフレームごとのデータPCR
base(i) の増加量は、画面が525/60構成の場合は
3,003[= ((27,000,000/300)/30)*1.001)]であり、
625/50構成の場合は3,600[= ((27,000,000/
300)/25]であり、いずれの場合も固定値である。また、
PCRは受信側において移相同期ループ(PLL)制御
のクロック発振回路に設定されるデータとして用いら
れ、PLLの安定動作を保証するために、送信間隔が1
00ミリ秒以下で送信側から受信側に伝送されるように
規定されている。The data PCR for each video frame is
The increase amount of base (i) is 3,003 [= ((27,000,000 / 300) / 30) * 1.001) when the screen has a 525/60 configuration.
In the case of the 625/50 configuration, 3,600 [= ((27,000,000 /
300) / 25], which is a fixed value in each case. Also,
The PCR is used as data set in a clock oscillation circuit of a phase-locked loop (PLL) control on the receiving side, and has a transmission interval of 1 to guarantee a stable operation of the PLL.
It is defined that the data is transmitted from the transmission side to the reception side in less than 00 milliseconds.
【0005】[0005]
【数1】 PCR base(i) = [(27,000,000*t(i)/300)] % 223 (1) 但し、*は、乗算を示し、%は、余りを求める演算子を
示し、t(i)は、受信側にデータが到着した時刻を示す。[Equation 1] PCR base (i) = [(27,000,000 * t (i) / 300)]% 2 23 (1) where * indicates multiplication,% indicates an operator for calculating a remainder, and t ( i) indicates the time when the data arrives at the receiving side.
【0006】[0006]
【数2】 PCR ext (i) = [(27,000,000*t(i)/1)] % 300 (2)[ Equation 2] PCR ext (i) = [(27,000,000 * t (i) / 1)]% 300 (2)
【0007】[0007]
【数3】 PCR(i) = PCR base (i)*300 + PCR ext (i) (3)[Equation 3] PCR (i) = PCR base (i) * 300 + PCR ext (i) (3)
【0008】また、最新のPCR(i’)は、PCR
(i’)以前のPCR(i”)に基づいて、下に示す式
4に示すように定義される。The latest PCR (i ′) is a PCR
(I ′) Based on the previous PCR (i ″), it is defined as shown in Equation 4 below.
【0009】[0009]
【数4】 PCR(i') = [(i' - i")*27,000,000]/transport-rate + PCR(i") (4) 但し、transport-rateは、トランスポートストリームの
データレートであり、i (i は整数i" < i < i' )は、
トランスポートストリーム中のTSパケットの任意のバ
イトのインデックス番号(先頭からのバイト数)を示
し、i'は、復号されるプログラム(番組)に適用される
最も新しいデータPCR base(i) の最終ビットを含むバイ
トのインデックス番号を示し、i"は、復号されるプログ
ラムに適用される直後に続くデータPCR base(i) 最終ビ
ットを含むバイトのインデックス番号を示す。PCR(i")
は、PCR base(i) フィールド(フィールドは、そのデー
タがある位置を示す)およびPCR ext (i) フィールドで
符号化される時刻を示す。なお、STCに値はPCRの
値にセットされる。## EQU00004 ## PCR (i ') = [(i'-i ") * 27,000,000] / transport-rate + PCR (i") (4) where transport-rate is the data rate of the transport stream, i, where i is an integer i "<i <i ', is
Indicates the index number (number of bytes from the beginning) of an arbitrary byte of the TS packet in the transport stream, and i ′ is the last bit of the latest data PCR base (i) applied to the program (program) to be decoded. And i "indicates the index number of the byte containing the last bit of data PCR base (i) immediately following the data applied to the program to be decoded. PCR (i")
Indicates the time of encoding in the PCR base (i) field (the field indicates the location where the data is located) and the PCR ext (i) field. The value of STC is set to the value of PCR.
【0010】なお、通常、PCRは、PCRの初期値
に、数値〔[(i' - i")*27,000,000]/transport-rate
(式4)〕を順次、ソフトウェア的に整数加算すること
により算出される。しかしながら、整数演算処理により
算出されたPCRの値と、実際のPCRの値との誤差
は、時間の経過につれて蓄積し、拡大する。PCRは、
受信側のSTCを、送信側のSTCに同期させるために
用いられるので、PCRの値の演算誤差が大きくなる
と、受信側と送信側の間のSTCが同期しなくなる。ま
た、算出されたPCRの演算誤差が、受信側のSTCの
周波数を、送信側のSTCの周波数よりも高くする方向
に向かうか、低くする方向に向かうかを、予測すること
はできない。[0010] Normally, the PCR is performed by adding a numerical value [[(i'-i ") * 27,000,000] / transport-rate to the initial value of the PCR.
(Equation 4)] is sequentially calculated by software by integer addition. However, the error between the PCR value calculated by the integer arithmetic processing and the actual PCR value accumulates and expands over time. PCR is
Since the STC on the receiving side is used to synchronize with the STC on the transmitting side, if the calculation error of the PCR value increases, the STC between the receiving side and the transmitting side becomes out of synchronization. In addition, it is impossible to predict whether the calculated error of the PCR will increase or decrease the frequency of the STC on the receiving side from the frequency of the STC on the transmitting side.
【0011】算出されたPCRの演算誤差を少なくする
ためには、PCRを実数演算により算出するようにソフ
トウェアを変更すればよい。しかしながら、実数演算に
よるPCRの算出は、整数演算によるに比べて非常に多
くの時間を要する。また、算出されたPCRと、実際の
再生時刻との誤差を少なくするために、専用ハードウェ
アを用い、PCRを実数演算により算出する方法が考え
られる。しかしながら、この方法によると、再生装置の
装置規模およびコストが増大してしまう。In order to reduce the calculation error of the calculated PCR, the software may be changed so that the PCR is calculated by real number calculation. However, the calculation of PCR by real number operation requires much more time than by integer operation. Further, in order to reduce the error between the calculated PCR and the actual reproduction time, a method of calculating the PCR by real number calculation using dedicated hardware is conceivable. However, according to this method, the size and cost of the reproducing apparatus increase.
【0012】本発明は上述した従来技術の問題点に鑑み
てなされたものであり、整数演算によりPCRの生成を
行っても、生成されたPCRの演算誤差が蓄積せず、正
確なPCRを生成することができる同期データ生成装置
およびその方法を提供することを目的とする。また、本
発明は、ソフトウェア的な整数演算により、実数演算を
行う専用のハードウェアなしに、正確に、しかも、高速
にPCRを生成することができる同期データ生成装置お
よびその方法を提供することを目的とする。The present invention has been made in view of the above-described problems of the prior art, and even if a PCR is generated by integer arithmetic, a calculation error of the generated PCR does not accumulate and an accurate PCR is generated. It is an object of the present invention to provide a synchronous data generating device and a synchronous data generating method. Further, the present invention provides a synchronous data generating apparatus and a synchronous data generating apparatus capable of generating a PCR accurately and at high speed without dedicated hardware for performing a real number operation by software integer operation. Aim.
【0013】[0013]
【課題を解決するための手段】本発明に係る同期データ
生成装置は、上述した従来技術の問題点に鑑みてなされ
たものであり、音声データおよび映像データまたはこれ
らのいずれか(音声・映像データ)をMPEG方式によ
り、所定のクロック信号に同期して圧縮し、圧縮音声・
映像データを生成する圧縮手段と、所定の伝送周期ごと
に、前記クロック信号の再生に用いられる同期データを
生成する同期データ生成手段と、少なくとも、生成した
前記圧縮音声・映像データと前記同期データとを、所定
の伝送パケットに収容する多重化手段とを有し、前記同
期データ生成手段は、前記伝送周期ごとに、前記伝送パ
ケットに収容されずに残っている残存データ量を算出す
る残存データ量算出手段と、前記伝送周期ごとに、前記
同期データのオフセット値を算出するオフセット値算出
手段と、算出した残存データ量および前記オフセット値
に基づいて、前記同期データを、前記伝送周期ごとに算
出する同期データ算出手段とを有する。SUMMARY OF THE INVENTION A synchronous data generating apparatus according to the present invention has been made in view of the above-mentioned problems of the prior art, and has been described with respect to audio data and video data or any one of them (audio / video data). ) Is compressed in synchronism with a predetermined clock signal by the MPEG method,
Compression means for generating video data, for each predetermined transmission cycle, synchronization data generation means for generating synchronization data used for reproduction of the clock signal, and at least the generated compressed audio / video data and the synchronization data. And multiplexing means for accommodating the remaining data in a predetermined transmission packet, wherein the synchronization data generating means calculates, for each transmission cycle, a remaining data amount remaining without being accommodated in the transmission packet. Calculating means, an offset value calculating means for calculating an offset value of the synchronization data for each transmission cycle, and calculating the synchronization data for each transmission cycle based on the calculated remaining data amount and the offset value. A synchronous data calculating unit.
【0014】本発明は、MPEG方式の圧縮音声・映像
データを伝送等する際に、受信側と送信側との間でシス
テムタイムクロックの同期をとるために用いられる同期
データ(PCR)を生成する。圧縮手段は、音声・映像
データをMPEG方式により、所定のクロック信号(シ
ステムタイムクロック;STC)に同期して圧縮符号化
し、圧縮音声・映像データを生成する。The present invention generates synchronous data (PCR) used for synchronizing a system time clock between a receiving side and a transmitting side when transmitting compressed audio / video data of the MPEG system or the like. . The compression means compresses and encodes the audio / video data in accordance with a predetermined clock signal (system time clock; STC) according to the MPEG system, and generates compressed audio / video data.
【0015】同期データ生成手段は、送信側のSTCと
受信側のSTCとの同期をとるために、受信側で用いら
れる同期データ(PCR)を生成する。同期データ生成
手段において、残存データ量算出手段は、ある伝送周期
において伝送可能なデータ量から、ある伝送周期におい
て伝送するTSパケットの数、つまり、伝送可能なデー
タ量を減算し、伝送パケットに収容されずに残るデータ
のデータ量(残存データ量;数値size remain )を算出
する。[0015] The synchronous data generating means generates synchronous data (PCR) used on the receiving side to synchronize the STC on the transmitting side and the STC on the receiving side. In the synchronous data generating means, the remaining data amount calculating means subtracts the number of TS packets to be transmitted in a certain transmission cycle, that is, the amount of transmittable data, from the data quantity that can be transmitted in a certain transmission cycle, and stores the number in a transmission packet. The data amount of remaining data (remaining data amount; numerical value size remain) is calculated.
【0016】オフセット値算出手段は、伝送周期ごと
に、前の伝送周期のオフセット値(数値PCR FRAME )
に、映像データが625/50構成の場合には固定値
3,600を加算し、映像データが525/60構成の
場合には固定値3,003を加算し、その伝送周期にお
いてPCRの算出のために用いられるオフセット値を更
新する。同期データ算出手段は、伝送周期ごとに、オフ
セット値(数値PCR FRAME )に、所定の演算処理(size
remain*27,000,000/RATE )を施した残存データ量(数
値size remain )を加算し、同期データ(PCR) を算出す
る。なお、残存データ量に対する演算処理は除算を含
み、演算結果に誤差を含むが、伝送周期ごとに、正しい
値のオフセット値が算出されるので、演算誤差が蓄積さ
れることはない。The offset value calculating means calculates, for each transmission cycle, an offset value (numerical value PCR FRAME) of a previous transmission cycle.
When the video data has a 625/50 configuration, a fixed value of 3,600 is added, and when the video data has a 525/60 configuration, a fixed value of 3,003 is added. Update the offset value used for The synchronization data calculating means adds a predetermined arithmetic processing (size) to the offset value (numeric PCR FRAME) for each transmission cycle.
The remaining data amount (numerical value size remain) subjected to remain * 27,000,000 / RATE) is added to calculate the synchronous data (PCR). Note that the arithmetic processing for the remaining data amount includes division, and the arithmetic result includes an error. However, since an offset value having a correct value is calculated for each transmission cycle, an arithmetic error is not accumulated.
【0017】また、本発明に係る同期データ生成方法
は、音声データおよび映像データまたはこれらのいずれ
か(音声・映像データ)をMPEG方式により、所定の
クロック信号に同期して圧縮して、圧縮音声・映像デー
タを生成し、所定の伝送周期ごとに、前記クロック信号
の再生に用いられる同期データを生成し、少なくとも、
生成した前記圧縮音声・映像データおよび同期データ
を、所定の伝送パケットに多重化する同期データ生成方
法であって、前記伝送周期ごとに、所定の伝送パケット
に収容されずに残る残存データ量を算出し、前記伝送周
期ごとに、前記同期データのオフセット値を算出し、算
出した残存データ量および前記オフセット値に基づい
て、前記伝送周期ごとに前記同期データを算出する。Further, the synchronous data generating method according to the present invention is characterized in that the audio data and the video data or any one of them (audio / video data) is compressed in synchronization with a predetermined clock signal by the MPEG system, and Generating video data, for each predetermined transmission cycle, generating synchronization data used for reproducing the clock signal, at least
A synchronous data generation method for multiplexing the generated compressed audio / video data and synchronous data into a predetermined transmission packet, wherein a remaining data amount remaining without being accommodated in the predetermined transmission packet is calculated for each transmission cycle. Then, an offset value of the synchronization data is calculated for each transmission cycle, and the synchronization data is calculated for each transmission cycle based on the calculated remaining data amount and the offset value.
【0018】[0018]
【発明の実施の形態】第1実施形態 以下、本発明の第1の実施形態を説明する。図1は、第
1の実施形態における本発明に係る音声・映像データ生
成装置1の構成を示す図である。図1に示すように、音
声・映像データ生成装置1は、ビデオエンコーダ(video
encoder) 20、オーディオエンコーダ(audio encoder)
24およサブタイトルエンコーダ(subtitle encoder)
28および多重化装置(multiplexer) 10から構成さ
れ、多重化装置10は、バッファメモリ(buffer)100
およびトランスポートストリーム生成装置(transport s
tream maker)102から構成される。DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS First Embodiment Hereinafter, a first embodiment of the present invention will be described. FIG. 1 is a diagram showing a configuration of an audio / video data generation device 1 according to the present invention in the first embodiment. As shown in FIG. 1, the audio / video data generation device 1 includes a video encoder (video
encoder) 20, Audio encoder
24 and subtitle encoder
28 and a multiplexer 10. The multiplexer 10 includes a buffer memory 100.
And transport stream generator (transport s
stream maker) 102.
【0019】音声・映像データ生成装置1は、これらの
構成部分により、ビデオエンコーダ20、オーディオエ
ンコーダ24およびサブタイトルエンコーダ28それぞ
れによりエンコードされた映画あるいは音楽プロモーシ
ョン用のビデオストリーム(video stream)、オーディオ
ストリーム(audio stream)およびサブタイトルストリー
ム(subtitle stream) を多重化してトランスポートスト
リーム(transport stream)を生成する。With these components, the audio / video data generating apparatus 1 uses the video encoder 20, audio encoder 24 and subtitle encoder 28 to encode a movie or music promotion video stream (video stream) and audio stream ( An audio stream and a subtitle stream are multiplexed to generate a transport stream.
【0020】ビデオエンコーダ20は、システムタイム
クロック(STC)に同期して動作し、編集装置等の外
部機器(図示せず)から入力されるディジタル非圧縮映
像データを、例えばMPEG2方式等により圧縮符号化
し、ビデオストリームとして多重化装置10のバッファ
メモリ100に対して出力する。オーディオエンコーダ
24は、STCに同期して動作し、外部機器から入力さ
れるディジタル非圧縮音声データを、例えばMPEG2
方式等により1,152サンプリング周期(1オーディ
オフレーム;1 audio frame)ごとに圧縮符号化し、オー
ディオストリームとして多重化装置10のバッファメモ
リ100に対して出力する。The video encoder 20 operates in synchronization with a system time clock (STC), and compresses digital uncompressed video data input from an external device (not shown) such as an editing device by, for example, the MPEG2 system. The multiplexed data is output to the buffer memory 100 of the multiplexer 10 as a video stream. The audio encoder 24 operates in synchronization with the STC and converts digital uncompressed audio data input from an external device into, for example, MPEG2
In accordance with a method or the like, compression encoding is performed every 1,152 sampling periods (1 audio frame) and output to the buffer memory 100 of the multiplexer 10 as an audio stream.
【0021】サブタイトルエンコーダ28は、サブタイ
トルデータを生成する外部機器から入力されるサブタイ
トルデータを、線形量子化処理および固定長符号化処理
によりエンコードし、サブタイトルストリームとして多
重化装置10のバッファメモリ100に対して出力す
る。The subtitle encoder 28 encodes the subtitle data input from the external device for generating the subtitle data by a linear quantization process and a fixed length coding process, and sends the encoded subtitle data to the buffer memory 100 of the multiplexer 10 as a subtitle stream. Output.
【0022】多重化装置10のバッファメモリ100
は、ビデオエンコーダ20、オーディオエンコーダ24
およびサブタイトルエンコーダ28からそれぞれ入力さ
れるビデオストリーム、オーディオストリームおよびサ
ブタイトルストリームをバッファリングしてトランスポ
ートストリーム生成装置102に対して出力する。トラ
ンスポートストリーム生成装置102は、例えば、マイ
クロプロセッサ(CPU)等を用いた高速コンピュータ
から構成され、バッファメモリ100にバッファリング
されたビデオストリーム、オーディオストリームおよび
サブタイトルストリーム(それぞれをエレメンタリスト
リームとも記す)を所定のタイミングで読み出してスケ
ジューリングを行い、トランスポートストリームの伝送
フォーマットに合わせてヘッダ等を付加してトランスポ
ートストリームを生成し、出力する。The buffer memory 100 of the multiplexer 10
Is a video encoder 20, an audio encoder 24
And a video stream, an audio stream, and a subtitle stream respectively input from the subtitle encoder 28 and output to the transport stream generating apparatus 102. The transport stream generation device 102 is composed of, for example, a high-speed computer using a microprocessor (CPU) and the like, and the video stream, the audio stream, and the subtitle stream buffered in the buffer memory 100 (each is also referred to as an elementary stream). Is read out at a predetermined timing, scheduling is performed, a header or the like is added in accordance with the transport format of the transport stream, and a transport stream is generated and output.
【0023】第1の実施形態に示した音声・映像データ
生成装置1によれば、映画等の音声データ、映像データ
およびサブタイトルデータをMPEG方式等により圧縮
符号化し、圧縮符号化したこれらのデータを多重化して
1つのトランスポートストリームを生成し、出力するこ
とができる。また、第1の実施形態に示した音声・映像
データ生成装置1は、映画あるいは音楽プロモーション
等の音声データおよび映像データのディジタルテレビジ
ョン放送を行う際に、例えば、音楽の音声データをいわ
ゆるサラウンド(surround)対応のデータとし、音声デー
タを数カ国語対応に用意し、さらに、映像データに数カ
国語の字幕を付す等の処理を行った音声データ、映像デ
ータおよび付加データを多重化してトランスポートスト
リームを生成することができる。According to the audio / video data generating apparatus 1 shown in the first embodiment, audio data such as a movie, video data and subtitle data are compression-encoded by the MPEG system or the like, and these data obtained by compression-encoding are obtained. One transport stream can be generated by multiplexing and output. Further, the audio / video data generation device 1 shown in the first embodiment, when performing digital television broadcasting of audio data and video data such as a movie or music promotion, for example, converts audio data of music into a so-called surround ( surround), audio data is prepared in several languages, and audio data, video data and additional data that have been processed such as adding subtitles in several languages to video data are multiplexed and transported. Streams can be created.
【0024】第2実施形態 以下、本発明の第2の実施形態を説明する。第1の実施
形態に示した音声・映像データ生成装置1は、バッファ
メモリ100が全てのエレメンタリストリームをバッフ
ァメモリ100に一度、蓄積し、さらに、トランスポー
トストリーム生成装置102のCPUがスケジューリン
グおよびヘッダ(header)の付加等の処理を行ってトラン
スポートストリームを生成する。このように、処理を行
うCPUが直接、CPUがエレメンタリストリームの各
ワード(バイト)に対してデータバスを介してアクセス
して処理を行うことによりトランスポートストリームを
生成する方法は、トランスポートストリーム生成装置1
02のデータバスに生じるバスネック等が原因となって
高速処理ができず、高速なトランスポートストリームの
生成に適用しえない。 Second Embodiment Hereinafter, a second embodiment of the present invention will be described. In the audio / video data generation device 1 shown in the first embodiment, the buffer memory 100 temporarily stores all the elementary streams in the buffer memory 100, and further, the CPU of the transport stream generation device 102 performs scheduling and header A transport stream is generated by performing processing such as adding (header). As described above, the method of generating a transport stream by directly processing the words (bytes) of the elementary stream via the data bus by the CPU performing the processing is performed by the transport stream. Generator 1
High-speed processing cannot be performed due to a bus neck or the like occurring in the data bus No. 02, and cannot be applied to generation of a high-speed transport stream.
【0025】第2の実施形態において説明する本発明に
係る音声・映像データ生成装置2は、かかる音声・映像
データ生成装置1の問題点を解決するための装置であ
り、エレメンタリストリーム多重化のスケジューリング
を行う制御系と、直接にエレメンタリストリームを多重
化する多重化系とを分離することにより高速なトランス
ポートストリームの生成を可能としている。The audio / video data generation device 2 according to the present invention described in the second embodiment is a device for solving the problem of the audio / video data generation device 1, and is a device for multiplexing elementary streams. By separating a control system that performs scheduling and a multiplexing system that directly multiplexes elementary streams, a high-speed transport stream can be generated.
【0026】図2は、第2の実施形態における本発明に
係る音声・映像データ生成装置2の構成を示す図であ
る。図3は、図2に示したビデオエンコーダ20の構成
を示す図である。図4は、図2に示したオーディオエン
コーダ24の構成を示す図である。図2に示すように、
音声・映像データ生成装置2は、ビデオエンコーダ2
0、オーディオエンコーダ24、サブタイトルエンコー
ダ28、多重化系12および制御系42から構成され
る。多重化系12は、入力用のFIFOメモリ32a,
32b,32c、第1のスイッチ回路(swich) 34、第
2のスイッチ回路36、出力用のFIFOメモリ38お
よひSCSI(small computer system interface) イン
ターフェース回路(SCSIIF回路)40から構成さ
れる。FIG. 2 is a diagram showing the configuration of the audio / video data generating device 2 according to the present invention in the second embodiment. FIG. 3 is a diagram showing a configuration of the video encoder 20 shown in FIG. FIG. 4 is a diagram showing a configuration of the audio encoder 24 shown in FIG. As shown in FIG.
The audio / video data generation device 2 includes a video encoder 2
0, an audio encoder 24, a subtitle encoder 28, a multiplexing system 12, and a control system 42. The multiplexing system 12 includes an input FIFO memory 32a,
32b, 32c, a first switch circuit (switch) 34, a second switch circuit 36, a FIFO memory 38 for output, and a small computer system interface (SCSI) interface circuit (SCSI IF circuit) 40.
【0027】制御系42は、データサイズ計数用インタ
ーフェース回路(データサイズIF)30a,30b,
30c、イーサネットインターフェース回路(ether-ne
t interface;ENIF回路)420、シリアルインター
フェース回路(serial interface; SIF回路)42
2、CPU424、処理用RAM426および制御デー
タ用RAM428がCPUバスで相互に接続されて構成
される。ビデオエンコーダ20は、図3に示すように、
加算回路202、DCT回路204、量子化回路(quant
ize)206、逆量子化回路(I quantize)208、逆DC
T回路(I DCT) 210、加算回路212、フレームメモ
リ回路216、可変長符号化回路(VLC回路)21
8、ビットレート制御回路(bit rate control)220、
可変長符号バッファ(VLCバッファ)222から構成
され、外部機器から入力される映像データVideoIN をM
PEG2方式により圧縮符号化し、ビデオストリーム(M
PEG Video stream) を生成し、音声・映像データ生成装
置2のデータサイズIF30aおよびFIFOメモリ3
2aに対して出力する。The control system 42 includes a data size counting interface circuit (data size IF) 30a, 30b,
30c, Ethernet interface circuit (ether-ne
t interface; ENIF circuit) 420, serial interface circuit (SIF circuit) 42
2, a CPU 424, a processing RAM 426, and a control data RAM 428 are mutually connected by a CPU bus. Video encoder 20, as shown in FIG.
The addition circuit 202, the DCT circuit 204, and the quantization circuit (quant
ize) 206, inverse quantizer (I quantize) 208, inverse DC
T circuit (IDCT) 210, adder circuit 212, frame memory circuit 216, variable length encoding circuit (VLC circuit) 21
8, bit rate control circuit (bit rate control) 220,
It is composed of a variable length code buffer (VLC buffer) 222, and converts video data VideoIN input from an external device into M
The video stream (M
PEG Video stream) and the data size IF 30a and the FIFO memory 3 of the audio / video data generation device 2.
Output to 2a.
【0028】オーディオエンコーダ24は、図4に示す
ように、サブバンド分析フィルタバンク(SAFB)2
40、線形量子化回路242、ビット圧縮回路244、
FFT(fast fourier transfer) 回路246、心理聴覚
モデル248、動的ビット割り当て回路250、スケー
ルファクタ選択情報記憶回路252、スケールファクタ
抽出回路254、サイド情報符号化回路256およびビ
ットストリーム生成回路258から構成され、外部機器
から入力された音声データ(Audio入力)を、MP
EG2方式により圧縮符号化し、オーディオストリーム
(MPEG Audio stream) を生成し、音声・映像データ生成
装置2のデータサイズIF30bおよびFIFOメモリ
32bに対して出力する。サブタイトルエンコーダ28
は、第1の実施形態と同様に、外部機器から入力される
サブタイトルデータ等の付加データをエンコードする。The audio encoder 24 includes a sub-band analysis filter bank (SAFB) 2 as shown in FIG.
40, a linear quantization circuit 242, a bit compression circuit 244,
It comprises an FFT (fast fourier transfer) circuit 246, a psychological auditory model 248, a dynamic bit allocation circuit 250, a scale factor selection information storage circuit 252, a scale factor extraction circuit 254, a side information encoding circuit 256, and a bit stream generation circuit 258. The audio data (Audio input) input from the external device is
Audio stream compressed and encoded by EG2 method
(MPEG Audio stream) is generated and output to the data size IF 30b and the FIFO memory 32b of the audio / video data generation device 2. Subtitle encoder 28
Encodes additional data such as subtitle data input from an external device, as in the first embodiment.
【0029】多重化系12(図1)において、FIFO
メモリ32a,32b,32cはそれぞれ、ビデオエン
コーダ20、オーディオエンコーダ24およびサブタイ
トルエンコーダ28からそれぞれ入力されるビデオスト
リーム、オーディオストリームおよびサブタイトルスト
リームをバッファリングし、スイッチ回路34の入力端
子a,b,cに対して出力する。In the multiplexing system 12 (FIG. 1), the FIFO
The memories 32a, 32b, and 32c buffer the video stream, the audio stream, and the subtitle stream input from the video encoder 20, the audio encoder 24, and the subtitle encoder 28, respectively, and input the input terminals a, b, and c of the switch circuit 34. Output to
【0030】スイッチ回路34は、制御信号(control)
を介した多重化系12の制御に従って、入力端子a,
b,cのいずれかを選択し、これらの入力端子それぞれ
に入力されるエレメンタリストリームのいずれかを選択
して多重化し、スイッチ回路36の入力端子bに対して
出力する。なお、スイッチ回路34は、入力端子のいず
れにも入力されるエレメンタリストリームがない場合、
あるいは、スタッフィング処理を行う場合等は、入力端
子a,b,cのいずれかも選択せず、所定のブランクデ
ータ(連続した論理値1または0)を出力する。The switch circuit 34 has a control signal (control).
According to the control of the multiplexing system 12 through the input terminals a,
One of b and c is selected, and one of the elementary streams input to each of these input terminals is selected and multiplexed, and output to the input terminal b of the switch circuit 36. Note that, when there is no elementary stream input to any of the input terminals, the switch circuit 34
Alternatively, when stuffing processing is performed, predetermined blank data (consecutive logical values 1 or 0) is output without selecting any of the input terminals a, b, and c.
【0031】スイッチ回路36は、制御信号(control)
を介した多重化系12の制御に従って、入力端子a,b
のいずれかを選択し、入力端子aにスイッチ回路34か
ら入力されるエレメンタリストリームのいずれか、また
は、入力端子bに処理用RAM426から入力される付
加データストリーム(ヘッダ情報)を選択して多重化
し、FIFOメモリ38およびSCSIIF回路40に
対して出力する。FIFOメモリ38は、スイッチ回路
36が多重化したデータストリームをバッファリング
し、トランスポートストリームとして通信回線等の外部
機器(図示せず)に対して出力する。SCSIIF回路
40は、スイッチ回路36が多重化したデータストリー
ムを、ハードディスク装置(HDD) あるいは光磁気ディス
ク装置(MOD) の記録装置等(図示せず)に対して出力
し、記録させる。The switch circuit 36 controls a control signal (control).
Input terminals a and b according to the control of the multiplexing system 12 via
And multiplexing by selecting one of the elementary streams input from the switch circuit 34 to the input terminal a or the additional data stream (header information) input from the processing RAM 426 to the input terminal b. And outputs it to the FIFO memory 38 and the SCSIIF circuit 40. The FIFO memory 38 buffers the data stream multiplexed by the switch circuit 36 and outputs it as a transport stream to an external device (not shown) such as a communication line. The SCSIIF circuit 40 outputs the data stream multiplexed by the switch circuit 36 to a recording device (not shown) of a hard disk device (HDD) or a magneto-optical disk device (MOD) and records it.
【0032】制御系42において、データサイズIF3
0a,30b,30cはそれぞれ、ビデオエンコーダ2
0、オーディオエンコーダ24およびサブタイトルエン
コーダ28から入力されるビデオストリーム、オーディ
オストリームおよびサブタイトルストリームのデータサ
イズ(size)を計数し、CPUバスを介してCPU424
に対して出力する。ENIF回路420は、イーサネッ
ト等のLAN(図示せず)を介して入力されてくる字幕
用の付加データ(private data)を受け入れ、CPUバス
を介してCPU424に対して出力する。SIF回路4
22は、例えばコンピュータから入力されるシリアル形
式の付加データを受け入れ、CPU424に対して出力
する。In the control system 42, the data size IF3
0a, 30b and 30c are video encoders 2 respectively.
0, the data size (size) of the video stream, audio stream and subtitle stream input from the audio encoder 24 and the subtitle encoder 28 are counted, and the CPU 424 is counted via the CPU bus.
Output to The ENIF circuit 420 accepts subtitle additional data (private data) input via a LAN (not shown) such as Ethernet, and outputs the data to the CPU 424 via the CPU bus. SIF circuit 4
22 receives, for example, additional data in a serial format input from a computer and outputs it to the CPU 424.
【0033】CPU424は、CPU424は、例え
ば、マイクロプロセッサおよびプログラム格納用のRO
Mおよびこれらの周辺回路から構成され、データサイズ
IF30a,30b,30cから入力されるデータサイ
ズを処理用RAM426に記憶し、処理用RAM426
に記憶したデータサイズに基づいて、エレメンタリスト
リームの多重化の順番、多重化のタイミング調整および
スケジューリング等の多重化方法の計画を行い、計画し
た多重化方法に従ってスイッチ回路34,36の多重化
動作をCPUバスを介して制御する。The CPU 424 includes, for example, a microprocessor and an RO for storing programs.
M and these peripheral circuits, and stores the data size input from the data size IFs 30a, 30b, 30c in the processing RAM 426, and stores the data size in the processing RAM 426.
Based on the data size stored in the multiplexing method, a multiplexing method such as a multiplexing order of elementary streams, multiplexing timing adjustment and scheduling is planned, and the multiplexing operation of the switch circuits 34 and 36 according to the planned multiplexing method. Is controlled via a CPU bus.
【0034】また、CPU424は、ENIF回路42
0およびSIF回路422から入力される付加データを
処理用RAM426に記憶し、処理用RAM426に記
憶した付加データに対して所定の処理を行って、トラン
スポートストリームのヘッダ部分に多重化される付加デ
ータストリーム(ヘッダ情報)を生成し、処理用RAM
426を介してスイッチ回路36の入力端子aに対して
出力する。制御データ用RAM428は、CPU424
の処理に係る制御用のデータを記憶する。The CPU 424 controls the ENIF circuit 42
0 and the additional data input from the SIF circuit 422 are stored in the processing RAM 426, the additional data stored in the processing RAM 426 is subjected to a predetermined process, and the additional data multiplexed into the header portion of the transport stream. Generate a stream (header information) and process RAM
The signal is output to the input terminal a of the switch circuit 36 via 426. The control data RAM 428 is a CPU 424
The control data for the processing of (1) is stored.
【0035】以下、図5を参照して、第2の実施形態に
おける音声・映像データ生成装置2の動作を説明する。
ビデオエンコーダ20、オーディオエンコーダ24およ
びサブタイトルエンコーダ28はそれぞれ、入力される
映像データ、音声データおよびサブタイトルデータをエ
ンコードする。データサイズIF30a,30b,30
cはそれぞれ、ビデオストリーム、オーディオストリー
ムおよびサブタイトルストリームのデータサイズを計数
し、CPU424に対して出力する。The operation of the audio / video data generating device 2 according to the second embodiment will be described below with reference to FIG.
The video encoder 20, the audio encoder 24, and the subtitle encoder 28 encode input video data, audio data, and subtitle data, respectively. Data size IF 30a, 30b, 30
c counts the data size of the video stream, the audio stream, and the subtitle stream, respectively, and outputs them to the CPU 424.
【0036】図5は、第2の実施形態における音声・映
像データ生成装置2(図2)のCPU424の処理を示
すフローチャートである。図5に示すように、ステップ
102(S102)において、CPU424は、データ
サイズIF30a,30b,30cからデータサイズを
受信すると、処理用RAM426に受信したデータサイ
ズを格納する。ステップ104(S104)において、
CPU424は、上述した多重化方法の計画を行う。FIG. 5 is a flowchart showing the processing of the CPU 424 of the audio / video data generation device 2 (FIG. 2) in the second embodiment. As shown in FIG. 5, in step 102 (S102), upon receiving the data size from the data size IFs 30a, 30b, 30c, the CPU 424 stores the received data size in the processing RAM 426. In step 104 (S104),
The CPU 424 plans the multiplexing method described above.
【0037】ステップ106(S106)において、C
PU424は、計画した多重化方法が、その時点でビデ
オストリームを出力することを示すか否かを判断する。
多重化方法が、その時点でビデオストリームを出力する
ことを示す場合には、CPU424はS108の処理に
進み、その時点でビデオストリームを出力することを示
さない場合には、S110の処理に進む。ステップ10
8(S108)において、CPU424は、スイッチ回
路34を制御してビデオストリームを選択させ、スイッ
チ回路36を制御してスイッチ回路34からのデータス
トリームを選択させてビデオストリームをトランスポー
トストリームに多重化させる。In step 106 (S106), C
PU 424 determines whether the planned multiplexing method indicates to output a video stream at that time.
If the multiplexing method indicates that the video stream is to be output at that time, the CPU 424 proceeds to the process of S108, and if it does not indicate that the video stream is to be output at that time, the process proceeds to S110. Step 10
8 (S108), the CPU 424 controls the switch circuit 34 to select a video stream, and controls the switch circuit 36 to select a data stream from the switch circuit 34 to multiplex the video stream into a transport stream. .
【0038】ステップ110(S110)において、C
PU424は、計画した多重化方法が、その時点で音声
ストリームを出力することを示すか否かを判断する。多
重化方法が、その時点で音声ストリームを出力すること
を示す場合には、CPU424はS112の処理に進
み、その時点で音声ストリームを出力することを示さな
い場合には、S114の処理に進む。ステップ112
(S112)において、CPU424は、スイッチ回路
34を制御してオーディオストリームを選択させ、スイ
ッチ回路36を制御してスイッチ回路34からのデータ
ストリームを選択させてオーディオストリームをトラン
スポートストリームに多重化させる。In step 110 (S110), C
PU 424 determines whether the planned multiplexing method indicates to output an audio stream at that time. If the multiplexing method indicates that the audio stream is to be output at that time, the CPU 424 proceeds to the process of S112. If the multiplexing method does not indicate that the audio stream is to be output at that time, the process proceeds to S114. Step 112
In (S112), the CPU 424 controls the switch circuit 34 to select an audio stream, controls the switch circuit 36 to select a data stream from the switch circuit 34, and multiplexes the audio stream into the transport stream.
【0039】ステップ114(S114)において、C
PU424は、スイッチ回路34を制御してサブタイト
ルストリームを選択させ、スイッチ回路36を制御して
スイッチ回路34からのデータストリームを選択させて
サブタイトルストリームをトランスポートストリームに
多重化させる。ステップ116(S116)において、
CPU424は、計画した多重化方法が、その時点でヘ
ッダ情報を付加することを示すか否かを判断する。多重
化方法が、その時点でヘッダ情報を出力することを示す
場合には、CPU424はS118の処理に進み、その
時点でヘッダ情報を出力することを示さない場合には、
S120の処理に進む。In step 114 (S114), C
The PU 424 controls the switch circuit 34 to select a subtitle stream, controls the switch circuit 36 to select a data stream from the switch circuit 34, and multiplexes the subtitle stream into a transport stream. In step 116 (S116),
The CPU 424 determines whether or not the planned multiplexing method indicates that header information is added at that time. If the multiplexing method indicates that the header information is to be output at that time, the CPU 424 proceeds to the process of S118, and if the multiplexing method does not indicate that the header information is to be output at that time,
The process proceeds to S120.
【0040】ステップ118(S118)において、C
PU424は、処理用RAM426を介して、予めEN
IF回路420等から入力された付加データを処理して
生成した付加データストリーム(ヘッダ情報)をスイッ
チ回路36に対して出力し、さらに、スイッチ回路36
を制御して付加データストリームを選択させて付加デー
タストリーム(ヘッダ情報)をトランスポートストリー
ムに多重化させる。ステップ120(S120)におい
て、CPU424は、スイッチ回路36を制御してスイ
ッチ回路34から入力されるエレメンタリストリームの
いずれかを選択させ、トランスポートストリームに多重
化させる。In step 118 (S118), C
The PU 424 pre-enables EN via the processing RAM 426.
An additional data stream (header information) generated by processing the additional data input from the IF circuit 420 or the like is output to the switch circuit 36, and further, the switch circuit 36
Is controlled to select an additional data stream and multiplex the additional data stream (header information) with the transport stream. In step 120 (S120), the CPU 424 controls the switch circuit 36 to select one of the elementary streams input from the switch circuit 34, and multiplexes the elementary stream to the transport stream.
【0041】ステップ122(S122)において、C
PU424は、多重化すべきエレメンタリストリームの
入力が終了したか否かを判断する。多重化すべきエレメ
ンタリストリームの入力が終了した場合にはS124の
処理に進み、トランスポートストリームの生成を終了
し、終了していない場合にはS102の処理に進む。In step 122 (S122), C
The PU 424 determines whether the input of the elementary stream to be multiplexed has been completed. When the input of the elementary stream to be multiplexed is completed, the process proceeds to S124, the generation of the transport stream is completed, and when not completed, the process proceeds to S102.
【0042】FIFOメモリ38は、FIFOメモリ3
8から出力されるトランスポートストリームをバッファ
リングして、通信回線等に対して送出する。SCSII
F回路40は、FIFOメモリ38から出力されるトラ
ンスポートストリームをハードディスク装置等に対して
送出し、記録させる。The FIFO memory 38 is a FIFO memory 3
The transport stream output from the buffer 8 is buffered and transmitted to a communication line or the like. SCSII
The F circuit 40 sends the transport stream output from the FIFO memory 38 to a hard disk device or the like, and records the transport stream.
【0043】以上説明したように、本発明に係る音声・
映像データ生成装置2においては、データ量が非常に多
いエレメンタリストリームをCPUバス上で伝送するこ
とがないので、CPUバス上でバスネックが生じて高速
なエレメンタリストリームのトランスポートストリーム
に対する多重化が妨げられることがない。従って、音声
・映像データ生成装置2は、高速なトランスポートスト
リームを生成するために好適である。As described above, the voice / voice according to the present invention
In the video data generation device 2, since an elementary stream having a very large amount of data is not transmitted on the CPU bus, a bus bottleneck occurs on the CPU bus and the high-speed elementary stream is multiplexed with the transport stream. Is not disturbed. Therefore, the audio / video data generation device 2 is suitable for generating a high-speed transport stream.
【0044】また、CPU424のソフトウェア処理に
より、トランスポートストリームを生成するたびに多重
化方法を計画するので、例えば、エレメンタリストリー
ムをハードウェアによりトランスポートストリームに多
重化する場合に比べて、付加する付加データストリーム
(ヘッダ情報)の種類および数を任意に変更可能である
という特徴がある。従って、付加データストリームの種
類および数の変更が容易である。Further, since a multiplexing method is planned each time a transport stream is generated by software processing of the CPU 424, the multiplexing method is added, for example, as compared with a case where an elementary stream is multiplexed into a transport stream by hardware. The feature is that the type and number of additional data streams (header information) can be arbitrarily changed. Therefore, it is easy to change the type and the number of the additional data streams.
【0045】なお、音声・映像データ生成装置2に対し
ては、トランスポートストリームに多重化するエレメン
タリストリームの数を増減する、あるいは、ENIF回
路420およびSIF回路422の数を増減する変更を
加えることが可能である。また、第2の実施形態に示し
たほか、サブタイトルストリームの代わりに、例えば、
編集処理および放送時の処理に係るデータストリームを
トランスポートストリームに多重化する等、音声・映像
データ生成装置2は、種々の構成を採ることができる。The audio / video data generating device 2 is modified to increase or decrease the number of elementary streams to be multiplexed in the transport stream, or to increase or decrease the number of ENIF circuits 420 and SIF circuits 422. It is possible. In addition to the subtitle stream shown in the second embodiment, for example,
The audio / video data generation device 2 can adopt various configurations, such as multiplexing a data stream related to editing processing and processing during broadcasting into a transport stream.
【0046】第3実施形態 以下、本発明の第3の実施形態を説明する。図6は、M
PEG方式により圧縮符号化したオーディオストリーム
およびビデオストリームの伝送に用いられるトランスポ
ートストリーム、PES、パックおよびPSの構成(ITU
-T勧告H.222.0 |ISO/IEC 13818-1)を示す図である。図
7は、図6に示したトランスポートストリームに含まれ
るTSヘッダ詳細のな構成を示す図である。 Third Embodiment Hereinafter, a third embodiment of the present invention will be described. FIG.
Configuration of transport stream, PES, pack and PS used for transmission of audio stream and video stream compressed and encoded by PEG method (ITU
-T Recommendation H.222.0 | ISO / IEC 13818-1). FIG. 7 is a diagram showing a detailed configuration of the TS header included in the transport stream shown in FIG.
【0047】例えば、第1の実施形態および第2の実施
形態にそれぞれ示した音声・映像データ生成装置1,2
(図1,図2)が生成するトランスポートストリーム
は、図6に示すように、アダプテーションフィールドの
オプショナルフィールドにクロックリファレンスPCR
(program clock reference) を含むTSヘッダ部(図
7)、および、TSペイロード部を含むTSパケットか
ら構成され、可変長のパケッタイズドエレメンタリース
トリーム(PES:packetized elementary stream)
は、TSパケットに分割されて収容される。さらに、複
数個のPESは、パックヘッダが付加されてパックを構
成し、複数個のパックは、プログラムエンコードが付加
されてプログラムストリーム(PS:program stream )
を構成する。For example, the audio / video data generating devices 1 and 2 shown in the first and second embodiments, respectively.
As shown in FIG. 6, the transport stream generated by (FIGS. 1 and 2) includes a clock reference PCR in an optional field of an adaptation field.
A variable length packetized elementary stream (PES) composed of a TS header section (FIG. 7) including (program clock reference) and a TS packet including a TS payload section.
Is divided into TS packets and accommodated. Further, a plurality of PESs form a pack with a pack header added thereto, and the plurality of packs have a program stream (PS: program stream) added with a program encode.
Is configured.
【0048】図8は、図6に示したPESのPESヘッ
ダ部の構成を示す図である。図9(A),(B)は、そ
れぞれ、サンプリング周波数が48kHz,44.1k
Hzの場合のオーディオフレーム、オーディオストリー
ムのデータ量(SIZE) およびPTSの増加量の関係を示
す図である。図8に示すように、PESのPESヘッダ
部は、プレゼンテーションタイムスタンプ(PTS;pre
sentation time stamp)を含む。このPTSは、PES
に収容されているオーディオストリームおよびビデオス
トリームの表示時刻を示す(以下、オーディオストリー
ムおよびビデオストリームの表示時刻を示すPTSを、
それぞれオーディオPTSおよびビデオPTSとも記
す)。伸長復号装置が、オーディオストリームおよびビ
デオストリームを伸長復号する場合、オーディオPTS
およびビデオPTSは、音声データおよび映像データの
同期をとるために用いられる。FIG. 8 is a diagram showing the configuration of the PES header section of the PES shown in FIG. FIGS. 9A and 9B show that the sampling frequencies are 48 kHz and 44.1 k, respectively.
FIG. 8 is a diagram illustrating a relationship between an audio frame, an audio stream data amount (SIZE), and an increase amount of a PTS in the case of Hz. As shown in FIG. 8, the PES header part of the PES has a presentation time stamp (PTS; pre).
sentation time stamp). This PTS is PES
Indicates the display time of the audio stream and the video stream contained in the PTS (hereinafter, the PTS indicating the display time of the audio stream and the video stream is represented by
Audio PTS and video PTS, respectively). When the decompression decoding device decompresses and decodes the audio stream and the video stream, the audio PTS
The video PTS is used for synchronizing audio data and video data.
【0049】一方、音声・映像データ生成装置1,2に
おいて、オーディオエンコーダ24は、システムタイム
クロックに同期して動作し、上述のように、入力される
ディジタル非圧縮音声データを、その1,152サンプ
リング周期(1オーディオフレーム)を周期として、圧
縮符号化後のデータレートがほぼ一定になるように圧縮
符号化する。オーディオエンコーダ24に入力される非
圧縮音声データのサンプリング周波数画48kHz(デ
ータレート=384kbps)である場合には、図9
(A)に示すように、1オーディオフレームごとに生成
されるオーディオストリームのデータ量は1,152バ
イトであり、オーディオストリームを収容するPESの
PTS(オーディオPTS)の値の増加量は2,160
になる(下に示す式5)。従って、1オーディオフレー
ムごとのオーディオPTSの値を整数演算により算出す
ることができる。On the other hand, in the audio / video data generating devices 1 and 2, the audio encoder 24 operates in synchronization with the system time clock, and converts the input digital uncompressed audio data into its 1, 152 The compression encoding is performed so that the data rate after the compression encoding becomes substantially constant with a sampling period (one audio frame) as a period. When the sampling frequency of the uncompressed audio data input to the audio encoder 24 is 48 kHz (data rate = 384 kbps), FIG.
As shown in (A), the data amount of the audio stream generated for each audio frame is 1,152 bytes, and the increase in the value of the PTS (audio PTS) of the PES containing the audio stream is 2,160.
(Equation 5 shown below). Therefore, the value of the audio PTS for each audio frame can be calculated by an integer operation.
【0050】[0050]
【数5】 1152×90(kHz)/48(kHz) = 2160 (5) 但し、90(kHz)は、PTS生成処理の基準周波
数、48(kHz)は、非圧縮音声データのサンプリン
グ周波数である。## EQU00005 ## 1152.times.90 (kHz) / 48 (kHz) = 2160 (5) where 90 (kHz) is the reference frequency of the PTS generation process and 48 (kHz) is the sampling frequency of the uncompressed audio data. .
【0051】一方、オーディオエンコーダ24に入力さ
れる非圧縮音声データのサンプリング周波数が44.1
kHz(データレート=384kbps)である場合に
は、図9(B)に示すように、1オーディオフレームご
とに生成されるオーディオストリームのデータ量は12
53.8776バイト、オーディオPTSの値の増加量
は2,351.0204(下に示す式6)になる。従っ
て、この場合、1オーディオフレームごとのオーディオ
PTSの値を、実数演算により算出しなければならな
い。On the other hand, the sampling frequency of the uncompressed audio data input to the audio encoder 24 is 44.1.
In the case of kHz (data rate = 384 kbps), the data amount of the audio stream generated for each audio frame is 12 as shown in FIG.
53.8776 bytes, the amount of increase in the value of the audio PTS is 2,351.0204 (formula 6 shown below). Therefore, in this case, the value of the audio PTS for each audio frame must be calculated by a real number operation.
【0052】[0052]
【数6】 1152×90(kHz)/44.1(kHz) = 2351.0204 (6) 但し、44.1(kHz)は、非圧縮音声データのサン
プリング周波数である。[Formula 6] 1152 × 90 (kHz) /44.1 (kHz) = 2351.0204 (6) where 44.1 (kHz) is the sampling frequency of the uncompressed audio data.
【0053】しかしながら、非圧縮音声データのサンプ
リング周波数が44.1kHzである場合にも、オーデ
ィオPTSを算出するハードウェアあるいはソフトウェ
アの構成上、オーディオPTSを整数演算により算出す
ることが望ましい。一方、非圧縮音声データのサンプリ
ング周波数が44.1kHzである場合に、オーディオ
PTSのオーディオフレームごとの増加量を整数値2,
351または2,352に近似し、整数演算により算出
すると、何らかの方法により補正しなければ、誤差が蓄
積して、伸長復号時に映像データと音声データの同期が
とれなくなってしまう。かかる観点から、第3の実施形
態においては、整数演算によりオーディオPTSを算出
することができ、しかも、整数演算により算出したオー
ディオPTSの値の誤差を長時間に渡って蓄積させるこ
とがない音声・映像データ生成装置2(第2の実施形態
において示した図2)の制御系42の動作の変形例を説
明する。However, even when the sampling frequency of the uncompressed audio data is 44.1 kHz, it is desirable to calculate the audio PTS by an integer operation due to the hardware or software configuration for calculating the audio PTS. On the other hand, when the sampling frequency of the uncompressed audio data is 44.1 kHz, the increment of each audio frame of the audio PTS is set to the integer value 2,
If it is approximated to 351 or 2,352 and calculated by an integer operation, unless it is corrected by any method, errors accumulate and video data and audio data cannot be synchronized at the time of decompression decoding. From this point of view, in the third embodiment, the audio PTS can be calculated by the integer operation, and the error of the audio PTS calculated by the integer operation is not accumulated for a long time. A modification of the operation of the control system 42 of the video data generation device 2 (FIG. 2 shown in the second embodiment) will be described.
【0054】以下、図10を参照して、第3の実施形態
における音声・映像データ生成装置2の動作を説明す
る。なお、以下の説明においては、説明の簡略化のため
に、映像データおよびサブタイトルデータに対する処理
(第2の実施形態においてと同一)の説明を省略し、音
声データに対する処理を主に説明する。オーディオエン
コーダ24は、第1の実施形態および第2の実施形態に
おいてと同様に、入力されるディジタル非圧縮音声デー
タをエンコードする。データサイズ30bは、第2の実
施形態においてと同様に、オーディオエンコーダ24が
生成したオーディオストリームのデータサイズを1オー
ディオフレームごとに計数し、CPU424に対して出
力する。The operation of the audio / video data generation device 2 according to the third embodiment will be described below with reference to FIG. In the following description, processing for video data and subtitle data (same as in the second embodiment) will be omitted for simplification of description, and processing for audio data will be mainly described. The audio encoder 24 encodes input digital uncompressed audio data as in the first embodiment and the second embodiment. As in the second embodiment, the data size 30b counts the data size of the audio stream generated by the audio encoder 24 for each audio frame, and outputs the data size to the CPU 424.
【0055】図10は、第3の実施形態における音声・
映像データ生成装置2(図2)のCPU424の処理を
示すフローチャートである。ステップ200(S20
0)に示すように、CPU424は、例えば、ENIF
回路420を介して接続された端末装置(図示せず)等
に、音声・映像データ生成装置2の使用者が入力したオ
ーディオストリームのデータレート(符号レートSIZE S
EC)の設定を受ける。つまり、CPU424は、オーデ
ィオエンコーダ24が1秒間に生成するオーディオスト
リームのバイト数の設定を受け、以下の各ステップにお
ける処理を、符号レートSIZE SECに基づいて行う。FIG. 10 shows a voice / voice according to the third embodiment.
4 is a flowchart showing a process of a CPU 424 of the video data generation device 2 (FIG. 2). Step 200 (S20
0), the CPU 424, for example,
The data rate (code rate SIZE S) of the audio stream input by the user of the audio / video data generation device 2 to a terminal device (not shown) or the like connected via the circuit 420
EC) settings. That is, the CPU 424 receives the setting of the number of bytes of the audio stream generated per second by the audio encoder 24, and performs the processing in the following steps based on the code rate SIZE SEC.
【0056】ステップ202(S202)に示すよう
に、CPU424は、オーディオPTSの算出に用いる
数値(size sum, PTS, PTS SEC )を初期化し、これらの
数値の値を0に〔ゼロクリア(size sum = 0, PTS = 0,
PTS SEC = 0 )〕する。ステップ204(S204)に
おいて、CPU424は、データ量IF30bから、オ
ーディオストリームのデータサイズの入力があったか否
かを判断する。データ量IF30bから、オーディオス
トリームのデータサイズSIZEの入力があった場合にの
み、S206の処理に進む。As shown in step 202 (S202), the CPU 424 initializes numerical values (size sum, PTS, PTS SEC) used for calculating the audio PTS, and resets these numerical values to 0 [zero clear (size sum = 0, PTS = 0,
PTS SEC = 0)]. In step 204 (S204), the CPU 424 determines whether or not the data size of the audio stream has been input from the data amount IF 30b. The process proceeds to S206 only when the data size SIZE of the audio stream is input from the data amount IF 30b.
【0057】ステップ206(S206)において、C
PU424は、処理用RAM426に記憶された各デー
タ(図8)の内、オーディオPTSの値を、S216の
処理において計算された値に変更する。ステップ208
(S208)において、CPU424は、スイッチ回路
36を制御し、まず、入力端子a側を選択させて、処理
用RAM426に記憶されたPESヘッダ(図6)をト
ランスポートストリームに多重化させる。In step 206 (S206), C
The PU 424 changes the value of the audio PTS from the data (FIG. 8) stored in the processing RAM 426 to the value calculated in the process of S216. Step 208
In (S208), the CPU 424 controls the switch circuit 36 to first select the input terminal a and multiplex the PES header (FIG. 6) stored in the processing RAM 426 into the transport stream.
【0058】ステップ210(S210)において、C
PU424は、スイッチ回路34を制御して入力端子b
側を選択させ、スイッチ回路36を制御して入力端子b
側を選択させて、オーディオストリームをトランスポー
トストリームに多重化させる。ステップ212(S21
2)において、CPU424は、数値size sumに、デー
タ量IF30bから入力されたデータサイズSIZEを累加
算(size sum = sizesum + SIZE) して、データ量IF
30bが計数したオーディオストリームの累加算値を示
す数値size sumを新たに算出する。In step 210 (S210), C
The PU 424 controls the switch circuit 34 to control the input terminal b
Side, and controls the switch circuit 36 to control the input terminal b
Side to multiplex the audio stream to the transport stream. Step 212 (S21
In 2), the CPU 424 adds the data size SIZE input from the data amount IF 30b to the numerical value size sum (size sum = sizesum + SIZE) to obtain the data amount IF.
Numerical value size sum indicating the cumulative addition value of the audio stream counted by 30b is newly calculated.
【0059】ステップ214(S214)において、C
PU424は、S212の処理において算出した数値si
ze sumの値が、S200の処理において設定された符号
レートSIZE SEC以上であるか否かを判断する。CPU4
24は、数値size sumの値が符号レートSIZE SEC以上で
ある場合には、S218の処理に進み、符号レートSIZE
SEC以下である場合にはS216の処理に進む。つま
り、CPU424は、数値size sumの値が符号レートSI
ZE SEC以上となる1秒間隔で、オーディオPTSの値を
補正するS218およびS220の処理に進む。In step 214 (S214), C
The PU 424 calculates the numerical value si calculated in the process of S212.
It is determined whether or not the value of ze sum is equal to or greater than the code rate SIZE SEC set in the processing of S200. CPU4
24, if the value of the numerical value size sum is equal to or greater than the code rate SIZE SEC, the process proceeds to S218, where the code rate SIZE
If it is equal to or less than SEC, the process proceeds to S216. That is, the CPU 424 determines that the value of the numerical value size sum is the code rate SI
At one second intervals equal to or longer than ZE SEC, the process proceeds to S218 and S220 for correcting the value of the audio PTS.
【0060】ステップ216(S216)において、C
PU424は、下の式7に示す整数演算を行い、オーデ
ィオPTSの値を算出し、S204の処理に進む。In step 216 (S216), C
The PU 424 performs an integer operation shown in Expression 7 below, calculates the value of the audio PTS, and proceeds to the processing of S204.
【0061】[0061]
【数7】 PTS = PTS SEC + 90000 ×size sum / SIZE SEC (7) 但し、式7において、数値90,000は、PTSを生
成する際に、1秒ごとに加算されるオフセット値であ
る。PTS = PTS SEC + 90000 × size sum / SIZE SEC (7) In Expression 7, the numerical value 90,000 is an offset value added every second when generating the PTS.
【0062】ステップ218(S218)において、C
PU424は、数値size sumの値を新たに算出する(si
ze sum = size sum - SIZE SEC)。つまり、CPU42
4は、S218の処理において、S200において設定
された符号レートSIZE SECと、実際に、その1秒間に発
生されたオーディオストリームのデータ量との差の値を
算出し、新たな数値size sumとする。In step 218 (S218), C
The PU 424 newly calculates the value of the numerical value size sum (si
ze sum = size sum-SIZE SEC). That is, the CPU 42
4 calculates the value of the difference between the code rate SIZE SEC set in S200 and the data amount of the audio stream actually generated for one second in the process of S218, and sets it as a new numerical value size sum. .
【0063】ステップ220(S220)において、C
PU424は、1秒間に生じたオーディオPTSの値の
誤差、つまり、次の1秒間におけるオーディオPTSの
値を算出する際に用いるオフセット値を示す数値PTS SE
C を算出する(PTS SEC = PTSSEC + 90000)。つまり、
CPU424は、それまで1秒間で用いていた数値PTS
SEC の値に、式7に示した数値90,000を加算する
ことにより、次の1秒間のS216における演算におい
て用いる数値PTS SEC の値を算出する。In step 220 (S220), C
The PU 424 is a numerical value PTS SE indicating an error in the value of the audio PTS generated in one second, that is, an offset value used in calculating the value of the audio PTS in the next one second.
Calculate C (PTS SEC = PTSSEC + 90000). That is,
The CPU 424 calculates the value PTS used for 1 second
By adding the numerical value 90,000 shown in Expression 7 to the SEC value, the value of the numerical value PTS SEC to be used in the calculation in S216 for the next one second is calculated.
【0064】なお、ビデオPTSのフレームごとのオフ
セット値は、固定整数値3,003または3,600で
ある。一方、CPU424が、以上説明したようにオー
ディオPTSを生成することにより、オーディオPTS
に加えるオフセット値は整数になる。従って、ビデオP
TSとオーディオPTSとの同期を整数演算により正確
にとることが可能である。The offset value for each frame of the video PTS is a fixed integer value of 3,003 or 3,600. On the other hand, when the CPU 424 generates the audio PTS as described above, the audio PTS is generated.
Is an integer. Therefore, video P
It is possible to accurately synchronize the TS and the audio PTS by an integer operation.
【0065】FIFOメモリ38は、FIFOメモリ3
8から出力されるトランスポートストリームをバッファ
リングして、通信回線等に対して送出する。SCSII
F回路40は、FIFOメモリ38から出力されるトラ
ンスポートストリームをハードディスク装置等に対して
送出し、記録させる。The FIFO memory 38 stores the FIFO memory 3
The transport stream output from the buffer 8 is buffered and transmitted to a communication line or the like. SCSII
The F circuit 40 sends the transport stream output from the FIFO memory 38 to a hard disk device or the like, and records the transport stream.
【0066】以下、図11を参照して、第3の実施形態
に示した音声・映像データ生成装置2の動作により生成
されたトランスポートストリーム(MPEGシステムス
トリーム)から音声データおよび映像データを再生する
処理を説明する。図11は、第3の実施形態に示した音
声・映像データ生成装置2の動作により生成されたトラ
ンスポートストリームからオーディオストリーム、ビデ
オストリームおよびこれらのPESを分離し、伸長復号
する音声・映像データ伸長・復号装置3の構成を示す図
である。Referring to FIG. 11, audio data and video data are reproduced from the transport stream (MPEG system stream) generated by the operation of audio / video data generation device 2 shown in the third embodiment. The processing will be described. FIG. 11 shows audio / video data decompression for separating and decompressing audio and video streams and their PES from the transport stream generated by the operation of the audio / video data generation device 2 shown in the third embodiment. -It is a figure showing the composition of decoding device 3.
【0067】音声・映像データ伸長・復号装置3は、図
11に示すように、システムデコーダ300、オーディ
オデコーダ302、ビデオデコーダ304、オーディオ
用の遅延メモリ306、ビデオ用の遅延メモリ308お
よびタイムスタンプ比較回路310から構成される。音
声・映像データ伸長・復号装置3のシステムデコーダ3
00は、音声・映像データ生成装置2から入力されたト
ランスポートストリームに含まれるPESから、オーデ
ィオストリーム、ビデオストリーム、オーディオPTS
(オーディオタイムスタンプ)およびビデオPTS(ビ
デオタイムスタンプ)を分離し、オーディオストリーム
をオーディオデコーダ302に対して出力し、ビデオス
トリームをビデオデコーダ304に対して出力し、オー
ディオPTSおよびビデオPTSをタイムスタンプ比較
回路310に対して出力する。As shown in FIG. 11, the audio / video data decompression / decoding device 3 includes a system decoder 300, an audio decoder 302, a video decoder 304, an audio delay memory 306, a video delay memory 308, and a time stamp comparison. It comprises a circuit 310. System decoder 3 of audio / video data decompression / decoding device 3
00 is an audio stream, a video stream, an audio PTS from the PES included in the transport stream input from the audio / video data generation device 2.
(Audio time stamp) and video PTS (video time stamp), output the audio stream to the audio decoder 302, output the video stream to the video decoder 304, and compare the audio PTS and the video PTS with the time stamp. Output to the circuit 310.
【0068】オーディオデコーダ302は、システムデ
コーダ300から入力されたオーディオストリームを、
音声・映像データ生成装置1,2(図1,図2)のオー
ディオエンコーダ24に対応する伸長復号方法で伸長復
号し、元の音声データを生成して遅延メモリ306に対
して出力する。ビデオデコーダ304は、システムデコ
ーダ300から入力されたビデオストリームを、ビデオ
エンコーダ20に対応する伸長復号方法で伸長復号し、
元の映像データを生成して遅延メモリ308に対して出
力する。遅延メモリ306,308はそれぞれ、タイム
スタンプ比較回路310の制御に従って、オーディオデ
コーダ302およびビデオデコーダ304から入力され
た音声データおよび映像データをバッファリングして出
力する。The audio decoder 302 converts the audio stream input from the system decoder 300
The audio / video data generators 1 and 2 (FIGS. 1 and 2) decompress and decode by the decompression and decoding method corresponding to the audio encoder 24, generate original audio data, and output it to the delay memory 306. The video decoder 304 decompresses and decodes the video stream input from the system decoder 300 by a decompression decoding method corresponding to the video encoder 20.
The original video data is generated and output to the delay memory 308. The delay memories 306 and 308 buffer and output the audio data and the video data input from the audio decoder 302 and the video decoder 304, respectively, under the control of the time stamp comparison circuit 310.
【0069】タイムスタンプ比較回路310は、システ
ムデコーダ300から入力されたオーディオPTSおよ
びビデオPTSに基づいて遅延メモリ306,308を
制御し、遅延メモリ306,308がバッファリングし
ている音声データおよび映像データの同期をとり、表示
時間を合わせて出力する。以上説明した音声・映像デー
タ伸長・復号装置3によれば、音声・映像データ生成装
置2により生成されたオーディオストリームおよびビデ
オストリームを伸長復号し、さらに、表示時間を合わせ
て出力することができる。The time stamp comparison circuit 310 controls the delay memories 306 and 308 based on the audio PTS and the video PTS input from the system decoder 300, and stores the audio data and the video data buffered by the delay memories 306 and 308. And synchronize with the display time and output. According to the audio / video data decompression / decoding device 3 described above, the audio stream and the video stream generated by the audio / video data generation device 2 can be decompressed and decoded, and output with the same display time.
【0070】以上第3の実施形態において説明したよう
に、オーディオエンコーダ24に入力される非圧縮映像
データのサンプリング周波数が44.1kHzの場合
に、オーディオストリームを収容するPESのPTSの
値を整数演算により算出しても、CPU424は、1秒
間に1回の割合でS218,S220(図10)の処理
を行い、PTS(数値PTS SEC )の値を補正するので、
長時間に渡ってPTSの値の誤差が蓄積してゆくことは
ない。As described in the third embodiment, when the sampling frequency of the uncompressed video data input to the audio encoder 24 is 44.1 kHz, the value of the PTS of the PES containing the audio stream is calculated by an integer. CPU 424 performs the processing of S218 and S220 (FIG. 10) once per second to correct the value of PTS (numerical value PTS SEC).
Errors in the value of PTS do not accumulate over a long period of time.
【0071】従って、オーディオエンコーダ24に入力
される非圧縮映像データのサンプリング周波数が44.
1kHzである場合にも、PTSの算出処理が実数演算
によらず、整数演算により可能となり、PTS算出処理
のアルゴリズム(PTSの値をハードウェア的に算出す
る場合にはハードウェア構成)を簡略化することができ
る。Therefore, the sampling frequency of the uncompressed video data input to the audio encoder 24 is 44.
Even when the frequency is 1 kHz, the PTS calculation process can be performed by an integer calculation instead of a real number calculation, and the algorithm of the PTS calculation process (hardware configuration when calculating the PTS value by hardware) is simplified. can do.
【0072】なお、第3の実施形態においては、CPU
424が、1秒間隔で、PESのPTSの値を補正する
場合について説明したが、S200(図10)において
設定する符号レートSIZE SECを変更することにより、オ
ーディオエンコーダ24が出力するオーディオストリー
ムのデータレートを一定値にすることができることを条
件として、PTSに対する補正の時間間隔を変更するこ
とができる。In the third embodiment, the CPU
424 describes the case where the value of the PTS of the PES is corrected at one-second intervals. By changing the code rate SIZE SEC set in S200 (FIG. 10), the data of the audio stream output by the audio encoder 24 is changed. On the condition that the rate can be set to a constant value, the time interval of correction for the PTS can be changed.
【0073】第4実施形態 以下、本発明の第4の実施形態として、図12を参照し
て、第2の実施形態に示した音声・映像データ生成装置
2(図2)が、ソフトウェア的な整数演算により、高速
に、しかも、正確にプログラムクロックリファレンス
(PCR)を生成し、トランスポートストリームを生成
する方法を説明する。なお、第4の実施形態における音
声・映像データ生成装置2のCPU424以外の各構成
部分の動作は、第2の実施形態において説明した通りで
ある。 Fourth Embodiment Hereinafter, as a fourth embodiment of the present invention, referring to FIG. 12, the audio / video data generation device 2 (FIG. 2) shown in the second embodiment will be described in terms of software. A method of generating a program clock reference (PCR) at high speed and accurately by an integer operation and generating a transport stream will be described. The operation of each component other than the CPU 424 of the audio / video data generation device 2 in the fourth embodiment is as described in the second embodiment.
【0074】図12は、第4の実施形態における音声・
映像データ生成装置2(図2)のCPU424の処理を
示すフローチャートである。なお、図12に示す各演算
は、全て、整数演算であり、ソフトウェア的に実行され
る。図12に示すように、音声・映像データ生成装置2
は、図10に示したオーディオPTSの算出処理とほぼ
同じ処理により、演算誤差の蓄積なくPCRを算出する
ことができる。FIG. 12 shows the voice / voice in the fourth embodiment.
4 is a flowchart showing a process of a CPU 424 of the video data generation device 2 (FIG. 2). Note that all the operations shown in FIG. 12 are integer operations and are executed by software. As shown in FIG. 12, the audio / video data generation device 2
Can calculate the PCR without accumulating the calculation error by substantially the same processing as the calculation processing of the audio PTS shown in FIG.
【0075】ステップ300(S300)において、C
PU424は、ビデオストリームのデータレート(符号
レートSIZE SEC)の設定を受ける。つまり、CPU42
4は、ビデオエンコーダ20が1秒間に生成するビデオ
ストリームのバイト数(RATE)の設定を受け、以下の各ス
テップにおける処理を、符号レートSIZE SECに基づいて
行う。In step 300 (S300), C
The PU 424 receives the setting of the data rate (code rate SIZE SEC) of the video stream. That is, the CPU 42
4 receives the setting of the number of bytes (RATE) of the video stream generated by the video encoder 20 per second, and performs the processing in the following steps based on the code rate SIZE SEC.
【0076】ステップ302(S302)に示すよう
に、CPU424は、処理用RAM426に記憶され、
オーディオPTSの算出に用いられる数値(PCR FRAME,
PCR)の値を初期化し、これらの数値の値を0にする。ス
テップ304(S304)において、CPU424は、
データ量IF30aから、ビデオストリームのデータサ
イズの入力があったか否かを判断する。少なくとも、デ
ータ量IF30aから、ビデオストリームのデータサイ
ズSIZEの入力があった場合にのみ、S306の処理に進
む。As shown in step 302 (S302), the CPU 424 stores the data in the processing RAM 426,
Numeric value used to calculate audio PTS (PCR FRAME,
PCR) and initialize these values to zero. In step 304 (S304), the CPU 424
It is determined from the data amount IF 30a whether or not the data size of the video stream has been input. At least, the process proceeds to S306 only when the data size SIZE of the video stream is input from the data amount IF 30a.
【0077】ステップ306(S306)において、C
PU424は、処理用RAM426に記憶された各デー
タ(図7)の内、PCRの値を、S318の処理におい
て計算された値に更新する。ステップ308(S30
8)において、CPU424は、下に示す式8の演算を
行い、数値packet frameを算出する。なお、数値packet
frameは、処理中のビデオフレームの間に出力するTS
パケットの総バイト数を示しており、数値packet frame
の値は、ビデオフレーム当たりのバイト数を示す数値SI
ZE FRAMEの値を超えない。In step 306 (S306), C
The PU 424 updates the PCR value among the data (FIG. 7) stored in the processing RAM 426 to the value calculated in the process of S318. Step 308 (S30
In 8), the CPU 424 calculates the numerical value packet frame by performing the operation of Expression 8 shown below. The value packet
frame is the TS to output during the video frame being processed
Indicates the total number of bytes of the packet, and is a numeric
Is a number SI indicating the number of bytes per video frame
Does not exceed the value of ZE FRAME.
【0078】[0078]
【数8】 packet frame = ((SIZE FRAME + size remain)/188)*188 (8)[Equation 8] packet frame = ((SIZE FRAME + size remain) / 188) * 188 (8)
【0079】ステップ310(S310)において、C
PU424は、スイッチ回路34を制御して入力端子
a,b側を選択させ、送信側装置36を制御して入力端
子b側を選択させ、ビデオストリームおよびオーディオ
ストリームをトランスポートストリームに多重化させ、
さらに、スイッチ回路36を制御して入力端子a側を選
択させて、処理用RAM426に記憶されたヘッダデー
タ(図7,図8)をトランスポートストリームに多重化
させて、FIFOメモリ38を介して出力させる。In step 310 (S310), C
The PU 424 controls the switch circuit 34 to select the input terminals a and b, controls the transmitting device 36 to select the input terminal b, and multiplexes the video stream and the audio stream into the transport stream.
Further, by controlling the switch circuit 36 to select the input terminal a side, the header data (FIGS. 7 and 8) stored in the processing RAM 426 is multiplexed into the transport stream, and is multiplexed through the FIFO memory 38. Output.
【0080】ステップ312(S312)において、C
PU424は、S308において算出した数値packet f
rameが示すバイト数だけデータをトランスポートストリ
ームに多重化し、出力したか否かを判断し、数値packet
frameだけデータを多重化・出力した場合には、S31
4の処理に進み、数値packet frameだけデータを多重化
・出力していない場合には、S312の処理に進み、デ
ータを多重化・出力処理を繰り返させる。In step 312 (S312), C
The PU 424 calculates the numerical value packet f calculated in S308.
Data is multiplexed into the transport stream by the number of bytes indicated by rame, and it is determined whether or not the data
If data is multiplexed and output only for frame, S31
If the process proceeds to step 4 and the data is not multiplexed and output only for the numerical packet frame, the process proceeds to step S312 to repeat the data multiplexing and output process.
【0081】ステップ314(S314)において、C
PU424は、下に示す式9の演算を行って、数値size
remain を算出する。なお、式9に示すように、数値si
ze remain は、数値packet frameと数値SIZE FRAMEとの
差分値であり、処理中のビデオフレームにおいて、トラ
ンスポートパケットに多重化しなかったデータのバイト
数を示し、次に処理されるビデオフレームにおいて、ト
ランスポートパケットに多重化するデータのバイト数に
加算される。なお、S314(式9)の演算において
は、数値size remain の値は負値となる。In step 314 (S314), C
The PU 424 performs an operation of Expression 9 shown below to obtain a numerical value size
Calculate remain. Note that, as shown in Equation 9, the numerical value si
ze remain is a difference value between the numerical value packet frame and the numerical value SIZE FRAME, and indicates the number of bytes of data not multiplexed in the transport packet in the video frame being processed. It is added to the number of bytes of data to be multiplexed in the port packet. In the calculation of S314 (Equation 9), the value of the numerical value size remain is a negative value.
【0082】[0082]
【数9】 size remain = packet frame - SIZE FRAME + size remain (9)[Equation 9] size remain = packet frame-SIZE FRAME + size remain (9)
【0083】ステップ316(S316)において、C
PU424は、下の式10に示す整数演算を行い、数値
PCR FRAME の値を算出する。なお、数値PCR FRAME は、
数値PCR のビデオフレームごとのオフセット値を示す。In step 316 (S316), C
The PU 424 performs an integer operation shown in Expression 10 below,
Calculate the value of PCR FRAME. The numerical PCR FRAME is
Indicates the offset value for each video frame of the numerical PCR.
【0084】[0084]
【数10】 PCR FRAME = PCR FRAME + PCR base (10) 但し、式10において、映像データが525/60構成
の場合、PCR base=3,003であり、映像データが6
25/50構成の場合、PCR base=3,600である。[Expression 10] PCR FRAME = PCR FRAME + PCR base (10) In Expression 10, when the video data has a 525/60 configuration, PCR base = 3,003 and the video data is 6
In the case of the 25/50 configuration, PCR base = 3,600.
【0085】ステップ318(S318)において、C
PU424は、下の式11に示す演算を行い、次にトラ
ンスポートパケットに多重化するPCRを算出し、S3
04の処理に戻る。式11の右辺第2項は、演算に除算
を含むので、整数演算によって算出した場合、演算誤差
が生じる。しかしながら、右辺第1項には整数演算によ
っても演算誤差は生じず、しかも、S316の処理によ
り、ビデオフレームごとに更新されるので、従来の技術
として示した方法と異なり、時間経過につれて演算誤差
が蓄積され、増大することはない。In step 318 (S318), C
The PU 424 performs the operation shown in Expression 11 below, then calculates the PCR to be multiplexed into the transport packet, and calculates S3
It returns to the process of 04. Since the second term on the right side of Equation 11 includes division in the operation, an arithmetic error occurs when calculated by integer operation. However, no arithmetic error occurs in the first term on the right side even by integer arithmetic, and furthermore, since the processing is updated for each video frame by the processing in S316, the arithmetic error differs with time, unlike the method shown in the related art. It accumulates and does not grow.
【0086】[0086]
【数11】 PCR = PCR FRAME + size remain*27,000,000/RATE (11)[Equation 11] PCR = PCR FRAME + size remain * 27,000,000 / RATE (11)
【0087】なお、図12に示した処理によれば、PC
Rの値は、ビデオフレームごとに、正しい値に設定さ
れ、演算誤差は蓄積しない。従って、受信側と送信側と
のSTCの同期が崩れることがないので、長時間に渡
り、音声・映像データを正確に伝送・再生することがで
きる。また、第4の実施形態に示した方法は、複数の送
信側装置と複数の受信側装置との間で音声・映像データ
を伝送する場合にも応用することができる。According to the processing shown in FIG.
The value of R is set to a correct value for each video frame, and no calculation error is accumulated. Therefore, the synchronization of the STC between the receiving side and the transmitting side is not lost, so that the audio / video data can be accurately transmitted and reproduced for a long time. Further, the method described in the fourth embodiment can be applied to a case where audio / video data is transmitted between a plurality of transmitting apparatuses and a plurality of receiving apparatuses.
【0088】また、第4の実施形態に示した方法によれ
ば、PCRと同様に、受信側と送信側のクロック同期に
用いられるSCRも、正確に算出することができる。ま
た、第4の実施形態においては、PCRが多重されたT
Sパケットの位置(図7)を先頭にして処理する場合を
示してあるが、必ずしもPCRが多重されたTSパケッ
トの位置は先頭でなくともよい。Further, according to the method shown in the fourth embodiment, similarly to the PCR, the SCR used for clock synchronization between the receiving side and the transmitting side can be accurately calculated. Further, in the fourth embodiment, the T
Although the case where the processing is performed with the position of the S packet (FIG. 7) at the beginning is shown, the position of the TS packet with the PCR multiplexed is not necessarily at the beginning.
【0089】[0089]
【発明の効果】以上説明したように、本発明に係る同期
データ生成装置およびその方法によれば、整数演算によ
りPCRの生成を行っても、生成されたPCRの演算誤
差が蓄積せず、正確なPCRを生成することができる。
また、本発明に係る同期データ生成装置およびその方法
によれば、ソフトウェア的な整数演算により、実数演算
を行う専用のハードウェアなしに、正確に、しかも、高
速にPCRを生成することができる。As described above, according to the synchronous data generating apparatus and method of the present invention, even if the PCR is generated by the integer operation, the operation error of the generated PCR is not accumulated, and PCR can be generated.
Further, according to the synchronous data generation device and the method thereof according to the present invention, it is possible to generate PCR accurately and at high speed by software integer operation without dedicated hardware for performing real number operation.
【図1】第1の実施形態における本発明に係る音声・映
像データ生成装置の構成を示す図である。FIG. 1 is a diagram showing a configuration of an audio / video data generation device according to the present invention in a first embodiment.
【図2】第2の実施形態における本発明に係る音声・映
像データ生成装置の構成を示す図である。FIG. 2 is a diagram illustrating a configuration of an audio / video data generation device according to the present invention in a second embodiment.
【図3】図2に示したビデオエンコーダの構成を示す図
である。FIG. 3 is a diagram illustrating a configuration of a video encoder illustrated in FIG. 2;
【図4】図2に示したオーディオエンコーダの構成を示
す図である。FIG. 4 is a diagram illustrating a configuration of an audio encoder illustrated in FIG. 2;
【図5】第2の実施形態における音声・映像データ生成
装置(図2)のCPUの処理を示すフローチャートであ
る。FIG. 5 is a flowchart illustrating processing of a CPU of the audio / video data generation device (FIG. 2) according to the second embodiment.
【図6】MPEG方式により圧縮符号化したオーディオ
ストリームおよびビデオストリームの伝送に用いられる
トランスポートストリーム、PES、パックおよびPS
の構成(ITU-T勧告H.222.0 |ISO/IEC 13818-1)を示す図
である。FIG. 6 is a diagram illustrating a transport stream, a PES, a pack, and a PS used for transmitting an audio stream and a video stream compression-encoded by the MPEG method
FIG. 2 is a diagram showing a configuration of the ITU-T Recommendation H.222.0 | ISO / IEC 13818-1.
【図7】図6に示したトランスポートストリームに含ま
れるTSヘッダの詳細な構成を示す図である。FIG. 7 is a diagram showing a detailed configuration of a TS header included in the transport stream shown in FIG.
【図8】図6に示したPESのPESヘッダ部の構成を
示す図である。FIG. 8 is a diagram illustrating a configuration of a PES header section of the PES illustrated in FIG. 6;
【図9】(A),(B)は、サンプリング周波数が48
kHz,44.1kHzの場合のオーディオフレーム、
オーディオストリームのデータ量(SIZE) およびPTS
の増加量の関係を示す図である。FIGS. 9A and 9B show a case where the sampling frequency is 48;
kHz, an audio frame at 44.1 kHz,
Audio stream data size (SIZE) and PTS
It is a figure showing the relation of the increase amount of.
【図10】第3の実施形態における音声・映像データ生
成装置(図2)のCPUの処理を示すフローチャートで
ある。FIG. 10 is a flowchart showing processing of a CPU of the audio / video data generation device (FIG. 2) according to the third embodiment.
【図11】第3の実施形態に示した音声・映像データ生
成装置の動作により生成されたトランスポートストリー
ムからオーディオストリーム、ビデオストリームおよび
これらのPESを分離し、伸長復号する音声・映像デー
タ伸長・復号装置の構成を示す図である。FIG. 11 shows an audio / video data decompression / decompression unit that separates an audio / video stream and their PES from a transport stream generated by the operation of the audio / video data generation apparatus shown in the third embodiment, and decompresses and decodes them. It is a figure showing the composition of a decoding device.
【図12】第4の実施形態における音声・映像データ生
成装置(図2)のCPUの処理を示すフローチャートで
ある。FIG. 12 is a flowchart illustrating processing of a CPU of an audio / video data generation device (FIG. 2) according to a fourth embodiment.
1,2…音声・映像データ生成装置、10…多重化装
置、100…バッファメモリ、102…トランスポート
ストリーム生成装置、12…多重化系、32a,32
b,32c…FIFOメモリ、34,36…スイッチ回
路、38…FIFOメモリ、40…SCSIIF回路、
42…制御系、30a,30b,30c…データ量I
F、420…ENIF回路、422…SIF回路、42
4…CPU、426…処理用RAM、428…制御デー
タ用RAM、3…音声・映像データ伸長・復号装置、3
00…システムデコーダ、302…オーディオデコー
ダ、304…ビデオデコーダ、306,308…遅延メ
モリ、310…タイムスタンプ比較回路。1, 2, audio / video data generating device, 10: multiplexing device, 100: buffer memory, 102: transport stream generating device, 12: multiplexing system, 32a, 32
b, 32c: FIFO memory, 34, 36: switch circuit, 38: FIFO memory, 40: SCSIIF circuit,
42: control system, 30a, 30b, 30c: data amount I
F, 420: ENIF circuit, 422: SIF circuit, 42
4 ... CPU, 426 ... Processing RAM, 428 ... Control Data RAM, 3 ... Audio / Video Data Decompression / Decoding Device, 3
00: system decoder, 302: audio decoder, 304: video decoder, 306, 308: delay memory, 310: time stamp comparison circuit.
Claims (2)
のいずれか(音声・映像データ)をMPEG方式によ
り、所定のクロック信号に同期して圧縮し、圧縮音声・
映像データを生成する圧縮手段と、 所定の伝送周期ごとに、前記クロック信号の再生に用い
られる同期データを生成する同期データ生成手段と、 少なくとも、生成した前記圧縮音声・映像データと前記
同期データとを、所定の伝送パケットに収容する多重化
手段とを有し、 前記同期データ生成手段は、 前記伝送周期ごとに、前記伝送パケットに収容されずに
残っている残存データ量を算出する残存データ量算出手
段と、 前記伝送周期ごとに、前記同期データのオフセット値を
算出するオフセット値算出手段と、 算出した残存データ量および前記オフセット値に基づい
て、前記同期データを、前記伝送周期ごとに算出する同
期データ算出手段とを有する同期データ生成装置。An audio data and / or video data or any one of them (audio / video data) is compressed in synchronism with a predetermined clock signal by an MPEG system, and compressed audio / video data is compressed.
Compression means for generating video data; synchronization data generation means for generating synchronization data used for reproducing the clock signal for each predetermined transmission cycle; and at least the generated compressed audio / video data and the synchronization data. Multiplexing means for accommodating the remaining data in a predetermined transmission packet, wherein the synchronization data generating means calculates, for each transmission cycle, a remaining data amount remaining without being accommodated in the transmission packet. Calculating means; an offset value calculating means for calculating an offset value of the synchronization data for each transmission cycle; and calculating the synchronization data for each transmission cycle based on the calculated remaining data amount and the offset value. A synchronous data generation device having synchronous data calculation means.
のいずれか(音声・映像データ)をMPEG方式によ
り、所定のクロック信号に同期して圧縮して、圧縮音声
・映像データを生成し、所定の伝送周期ごとに、前記ク
ロック信号の再生に用いられる同期データを生成し、少
なくとも、生成した前記圧縮音声・映像データおよび同
期データを、所定の伝送パケットに多重化する同期デー
タ生成方法であって、 前記伝送周期ごとに、所定の伝送パケットに収容されず
に残っている残存データ量を算出し、 前記伝送周期ごとに、前記同期データのオフセット値を
算出し、 算出した残存データ量および前記オフセット値に基づい
て、前記伝送周期ごとに前記同期データを算出する同期
データ生成方法。2. A method for compressing audio data and / or video data or any one of them (audio / video data) in synchronism with a predetermined clock signal according to an MPEG system to generate compressed audio / video data and transmitting the predetermined data. For each cycle, a synchronous data generating method for generating synchronous data used for reproduction of the clock signal, and at least multiplexing the generated compressed audio / video data and synchronous data into a predetermined transmission packet, For each transmission cycle, calculate the remaining data amount that is not accommodated in the predetermined transmission packet, calculate the offset value of the synchronization data for each transmission cycle, and calculate the remaining data amount and the offset value. A synchronous data generation method for calculating the synchronous data for each transmission cycle based on the transmission data.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20485096A JPH1051769A (en) | 1996-08-02 | 1996-08-02 | Synchronization data generator and its method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP20485096A JPH1051769A (en) | 1996-08-02 | 1996-08-02 | Synchronization data generator and its method |
Publications (1)
Publication Number | Publication Date |
---|---|
JPH1051769A true JPH1051769A (en) | 1998-02-20 |
Family
ID=16497437
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP20485096A Pending JPH1051769A (en) | 1996-08-02 | 1996-08-02 | Synchronization data generator and its method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JPH1051769A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2001003305A1 (en) * | 1999-06-30 | 2001-01-11 | Sony Corporation | Method and apparatus for transcoding, and medium |
US6441863B1 (en) | 1997-11-26 | 2002-08-27 | Sony Corporation | Image processing apparatus, image processing method, and television receiver |
US6493832B1 (en) | 1999-03-17 | 2002-12-10 | Sony Corporation | Communication apparatus which handles a time stamp |
-
1996
- 1996-08-02 JP JP20485096A patent/JPH1051769A/en active Pending
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6441863B1 (en) | 1997-11-26 | 2002-08-27 | Sony Corporation | Image processing apparatus, image processing method, and television receiver |
US6493832B1 (en) | 1999-03-17 | 2002-12-10 | Sony Corporation | Communication apparatus which handles a time stamp |
WO2001003305A1 (en) * | 1999-06-30 | 2001-01-11 | Sony Corporation | Method and apparatus for transcoding, and medium |
US7088725B1 (en) | 1999-06-30 | 2006-08-08 | Sony Corporation | Method and apparatus for transcoding, and medium |
US7729358B2 (en) | 1999-06-30 | 2010-06-01 | Sony Corporation | Transcoding apparatus, method and medium |
US7787473B2 (en) | 1999-06-30 | 2010-08-31 | Sony Corporation | Transcoding apparatus, method and medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP3976759B2 (en) | Device for synchronizing audio and video signals | |
JP3932059B2 (en) | Signal processing device | |
CN100364339C (en) | Transcoding system and method for maintaining timing parameters before and after performing transcoding process | |
EP1323312B1 (en) | Regeneration of program clock reference data for mpeg transport streams | |
US8149883B2 (en) | Data receiving device, data receiving method, and computer product | |
US20020041609A1 (en) | Multiplexed data producing apparatus, encoded data reproducing apparatus, clock conversion apparatus, encoded data recording medium, encoded data transmission medium, multiplexed data producing method, encoded data reproducing method, and clock conversion method | |
JP4303775B2 (en) | Method and apparatus for adaptive bit rate control in an asynchronous coding system | |
KR20090018853A (en) | Clock drift compensation techniques for audio decoding | |
JP5972616B2 (en) | Reception device, clock restoration method, and program | |
JPH11275519A (en) | Data recording method and data recorder | |
JP3552249B2 (en) | Image and audio signal processing method and apparatus | |
JPH11317768A (en) | Transmission system, transmitting device, recording and reproducing device, and recording device | |
JPH1051769A (en) | Synchronization data generator and its method | |
JP3893643B2 (en) | Signal multiplexing method and transmission signal generating apparatus using the same | |
JP2005151463A (en) | Device and method for receiving stream data | |
JPH09284732A (en) | Device and method for generating audio and video data | |
JP4026556B2 (en) | Data transmission device | |
JPH09312656A (en) | Transmitter and method therefor | |
KR20060105326A (en) | Method and apparatus for av output in digital broadcasting system | |
JPH11298893A (en) | Transport stream synchronous circuit | |
KR100202019B1 (en) | Pcr signal generator of system coder | |
JP2000244437A (en) | Data multiplexer and data multiplexing method | |
JP2000187940A (en) | Recording/reproducing device and recorder | |
JP2000244433A (en) | Data multiplexer and data multiplexing method | |
JPH10271463A (en) | Data multiplexer and method therefor |