JP3633535B2 - Data transmission device - Google Patents

Data transmission device Download PDF

Info

Publication number
JP3633535B2
JP3633535B2 JP2001273767A JP2001273767A JP3633535B2 JP 3633535 B2 JP3633535 B2 JP 3633535B2 JP 2001273767 A JP2001273767 A JP 2001273767A JP 2001273767 A JP2001273767 A JP 2001273767A JP 3633535 B2 JP3633535 B2 JP 3633535B2
Authority
JP
Japan
Prior art keywords
output
packet
packets
data
data transmission
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
JP2001273767A
Other languages
Japanese (ja)
Other versions
JP2002158710A (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.)
Victor Company of Japan Ltd
Original Assignee
Victor Company of Japan Ltd
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 Victor Company of Japan Ltd filed Critical Victor Company of Japan Ltd
Priority to JP2001273767A priority Critical patent/JP3633535B2/en
Publication of JP2002158710A publication Critical patent/JP2002158710A/en
Application granted granted Critical
Publication of JP3633535B2 publication Critical patent/JP3633535B2/en
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Images

Description

【0001】
【発明の属する技術分野】
本発明は、データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置に関する。
【0002】
【従来の技術】
近年では、ビデオデータ及びオーディオデータの圧縮伝送規格のひとつであるMPEG−2 Systems(ITU−T H.222.0,ISO/IEC 13818−1)を利用して、デジタル方式によりデータを伝送するデジタル放送が実用化されている。
【0003】
このようなデジタル放送は、従来から広く利用されているアナログ放送に比べて、高品質なビデオデータやオーディオデータを伝送することができる。また、デジタル方式で伝送することから、ビデオデータやオーディオデータだけでなく、例えばコンピュータや各種の情報端末を介して利用するような各種データをも伝送することができ、様々なコンテンツを組み合わせて多様な放送をすることが容易となる。
【0004】
ところで、このようなデジタル放送を送信する際に用いられるデータ伝送装置は、送信するデータを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリーム(パケットを時間方向に並べた集合体)として送出することによりデータを伝送している。なお、MPEG−2 Systemsを利用してデータを伝送するデジタル放送では、データストリームのことをトランスポートストリームと称することから、以下の説明においてもトランスポートストリームと記述する。
【0005】
このとき、データ伝送装置は、ビデオデータのエレメンタリストリーム(ES:Elementary Stream)やオーディオデータのESなどを多重化して得られたトランスポート・パケット(以下、TSパケットという。)をトランスポートストリームとして送出する。このように、TSパケットをトランスポートストリームとして送出する手法のひとつとしては、送出するTSパケットの種類に応じてその送出順序を示すインタリーブテーブルを参照する、いわゆるテーブル参照方式のデータ多重化方法がある。
【0006】
ここで、テーブル参照方式が採用された従来のデータ多重化装置の一例について、図11を参照しながら説明する。
【0007】
従来のデータ多重化装置は、ビデオデータを圧縮符号化するビデオエンコーダや、オーディオデータを圧縮符号化するオーディオエンコーダと接続されている。そして、これらのエンコーダから、MPEG−2 Systemsの規格におけるESの基本単位であるPES(Packetized Elementary Stream)が、それぞれビデオ用のTSパケット化部100とオーディオ用のTSパケット化部101とに入力される。
【0008】
各TSパケット化部100,101では、入力されたPESをTSパケットに分解して、TSパケットを出力する。また、各TSパケット化部100,101から出力されたTSパケットは、それぞれビデオ用のTSパケットバッファ102と、オーディオ用のTSパケットバッファ103とに入力される。各TSパケットバッファ102,103は、例えばFIFO(Fast In Fast Out)型のメモリ素子により構成されており、入力されたTSパケットを蓄積するとともに、出力決定部104からの出力要求がなされたときに、蓄積したTSパケットを出力する。
【0009】
また、従来のデータ多重化装置においては、プログラム時刻基準参照値(PCR:Program Clock Reference)や番組特定情報(PSI:Program Specific Information)などのような、デジタル放送の受信時に必要となる所定の情報が格納されたTSパケット(PCRパケット,PSIパケット)が、CPU(Central Processing Unit)などにより生成される。
【0010】
これらPCRパケットやPSIパケットは、上述したTSパケットバッファ102,103と同様にして構成された複数のTSパケットバッファ105,106に入力され、これらTSパケットバッファ105,106に蓄積される。
【0011】
一方、出力決定部104は、各TSパケットバッファ102,103,105,106に対して、所定の順序で出力要求を行い、各TSパケットバッファから出力するTSパケットの出力順序を制御する。また、出力決定部104は、TSパケット切替部107を制御して、各TSパケットバッファからの出力を切り替えて、出力バッファ108に出力する。そして、出力バッファ108に入力されたTSパケットは、この出力バッファ108に蓄積された後に、図示しない出力インタフェースに出力されて、この出力インタフェースにより伝送される。
【0012】
このとき、テーブル参照方式のデータ多重化装置では、出力決定部104が、各TSパケットバッファに出力要求を行うに際して、メモリ部109に保持されたインタリーブテーブルを参照する。このインタリーブテーブルは、トランスポートストリームとして送出するTSパケットの出力順序を示しており、ビデオデータが多重化されたTSパケット、オーディオデータが多重化されたTSパケット、PCRパケット、及びPSIパケットなどのように、出力するTSパケットの種類に応じて、どのような順序でTSパケットを出力するかを示している。
【0013】
そして、出力決定部104は、TSパケットを出力するタイミングを示すTSパケットパルスに同期してカウンタ110がカウントアップしたカウント値に基づいて、メモリ部109に保持されたインタリーブテーブルを参照し、出力要求を行うTSパケットバッファを選択するとともに、TSパケット切替部107を制御し、インタリーブテーブルに示された出力順序でTSパケットを出力する。
【0014】
【発明が解決しようとする課題】
ところで、上述したようにして伝送するTSパケットのうち、PCRやPSIなどの情報が格納されたTSパケット(PCRパケット,PSIパケット)は、トランスポートストリーム中に出現する頻度が、一般運用では決められており、ビデオデータやオーディオデータが多重化されたTSパケットと比較して、低レートで出力する必要がある。
【0015】
しかしながら、従来のデータ伝送装置においては、インタリーブテーブルの大きさによって出力レートの下限値が決まってしまい、PCRパケットやPSIパケットの出力時に伝送帯域を無駄に使用してしまうといった問題がある。
【0016】
例えば、トランスポートストリーム全体での出力レートが20Mビット/secであり、インタリーブテーブルの大きさ(要素数)が4096である場合において、特定の種類のTSパケットの出力レートは、このTSパケットの出力がインタリーブテーブル中で1回だけ示されている場合に相当することから、その下限値が以下の式1に示すようにして求まる。なお、式中の単位[bps]は、1秒あたりのビット数(bit per second)を表す。
【0017】
【数1】

Figure 0003633535
一方、PCRが格納されたPCRパケットを例にとると、このPCRパケットをトランスポートストリームとして送出する頻度は、最大0.1秒に1回までと規定されている。また、MPEG−2 Systemsの規定ではTSパケットのデータ長が188バイトであることを考慮すると、PCRパケットの出力レートの下限値は、以下の式2に示すようにして求まる。
【0018】
【数2】
Figure 0003633535
ここで、前記の式1から、インタリーブテーブル中にPCRパケットの出力回数が3回示されている場合は出力レートが4882.8×3=14648.4[bps]となり、4回示されている場合は出力レートが4882.8×4=19531.2[bps]となる。
【0019】
したがって、前記の式2に示す下限値を満足するためには、PCRパケットの出力回数が、インタリーブテーブル中に4回なくてはならない。しかしながら、この場合には、以下に示す式3により求まる出力レート分が、必要以上に多く送出されていることとなり、伝送帯域を無駄に使用していることとなる。
【0020】
【数3】
Figure 0003633535
また、データ伝送装置においては、ビデオデータが多重化されたTSパケット、オーディオデータが多重化されたTSパケット、PCRパケット、及びPSIパケットなどのように、種類に応じたTSパケットの出力間隔を、略々一定とすることが望ましいとされている。しかしながら、従来のデータ伝送装置では、TSパケットの出力順序がインタリーブテーブルにより予め設定されているために、PCRパケットやPSIパケットなどを柔軟に送出することができず、各TSパケットの出力間隔がずれてしまいやすいといった問題がある。
【0021】
さらに、従来のデータ伝送装置では、トランスポートストリームとして送出すべき頻度が予め決められているTSパケット(PCRパケット,PSIパケットなど)がTSパケットバッファに書き込まれたタイミングを、出力決定部104が知ることができないため、複数のTSパケットバッファ105,106を用意する必要がある。これにより、回路構成が複雑化し、高コスト化を招いてしまうといった問題がある。
【0022】
さらにまた、従来のデータ伝送装置では、全ての運用において想定されるレートの最大レートでデータを多重化するように設定されているために、例えばエレメンタリストリームのレートが途中で変化する運用を行うような場合には、局所的にデータが多く多重化されてしまい、効率的なデータ伝送を行うことができないといった問題がある。
【0023】
本発明は、上述の課題に鑑みてなされたものであり、伝送帯域を有効に利用して効率的なデータ伝送を行うことが可能なデータ伝送装置を提供することを目的とする。
【0024】
【課題を解決するための手段】
本発明に係るデータ伝送装置は、上述の課題を解決するための手段としてデータを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置であり、複数のバッファ手段と、メモリ手段と、出力手段とを備える。
【0025】
前記複数のバッファ手段は、前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積される。前記メモリ手段は、前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序を示すインタリーブテーブルを保持する。前記出力手段は、前記メモリ手段に保持されたインタリーブテーブルを参照して、このインタリーブテーブルに示された出力順序で前記バッファ手段に蓄積されるパケット又はヌルパケットを出力する。また、前記出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力されたときに、このパケットを前記インタリーブテーブルに示された出力順序に優先して出力し、前記優先出力要求が入力された直後に前記インタリーブテーブルにおいて出現するヌルパケットの出力を無視する。
【0026】
以上のように構成された本発明に係るデータ伝送装置は、複数のバッファ手段に蓄積されるパケットを、インタリーブテーブルに予め設定された出力順序で出力するとともに、優先出力要求がなされたときに、所定の情報が格納されたパケットを、インタリーブテーブルに示された出力順序に優先して出力することができる。また、インタリーブテーブルに示された出力順序に優先してパケットを出力したときに、この直後にインタリーブテーブルにおいて出現するヌルパケットの出力を無視することから、このヌルパケット以外のパケットの出力間隔を一定に保つことができる。
【0027】
また、本発明に係るデータ伝送装置は、データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置であり、複数のバッファ手段と、メモリ手段と、テーブルデータ変換手段と、出力手段とを備える。
【0028】
複数のバッファ手段は、前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積する。メモリ手段は、前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序に冗長度を持たせたインタリーブテーブルを保持する。テーブルデータ変換手段は、前記インタリーブテーブルの冗長データとパケット種別との対応関係を示すテーブル変換情報に従って、前記インタリーブテーブルの冗長データを所定のパケット種別に変換する。出力手段は、前記テーブルデータ変換手段による変換結果を参照して、前記各バッファ手段に蓄積されるパケットを出力する。また、出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力された場合には優先パケット要求に基づいたパケットを出力し、前記優先出力要求が入力された直後の前記パケット種別がヌルパケットであるパケットの出力を無視する。
【0029】
以上のように構成された本発明に係るデータ伝送装置は、レートの変化に対して局所的にデータレートが高くなることを抑制することができる。また、時間が関係ないデータ伝送等の処理において、そのレートを最初に割り当てること無く運用することができるようになる。
【0030】
【発明の実施の形態】
[第1の実施形態]
本発明は、図1に示すようなデータ伝送装置1に適用することができる。この本発明の第1の実施形態となるデータ伝送装置1は、MPEG−2 Systems(ITU−T H.222.0,ISO/IEC 13818−1)で規定されるトランスポート・パケット(以下、TSパケットという。)を所定の伝送フォーマットによりMPEG−2 Systems(ITU−T H.222.0,ISO/IEC 13818−1)で規定されるデータストリーム(トランスポートストリーム)に変換してデータ伝送を行うようになっている。
【0031】
具体的な構成としては、このデータ伝送装置1は、図1に示すように、第1及び第2のパケット化部11,12と、第1,第2,第4のTSパケットバッファ13,14,16と、ヌルパケットバッファ15と、出力決定部17と、TSパケット切替部18と、出力バッファ19と、メモリ部20と、カウンタ21とを備える。
【0032】
第1のパケット化部11には、ビデオデータを圧縮符号化するビデオエンコーダから、MPEG−2 Systemsの規格におけるエレメンタリストリーム(ES:Elementary Stream)の基本単位であるPES(Packetized Elementary Stream)が入力される。そして、第1のパケット化部11は、入力されたPESをTSパケットに分解して、TSパケットを第1のTSパケットバッファ13に出力する。
【0033】
なお、ビデオエンコーダやオーディオエンコーダは、本発明の本質ではなく、従来と同等の構成とすることができるため、図1中での図示と詳細な説明とを省略する。
【0034】
第2のパケット化部12は、第1のパケット化部11と同様に、オーディオデータを圧縮符号化するオーディオエンコーダからPESが入力されて、このPESをTSパケットに分解して、TSパケットを第2のTSパケットバッファ14に出力する。
【0035】
第1及び第2のTSパケットバッファ13,14は、入力されたTSパケットをそれぞれ蓄積する。すなわち、第1のTSパケットバッファ13には、ビデオデータを含むESのTSパケットが蓄積され、第2のTSパケットバッファ14には、オーディオデータを含むESのTSパケットが蓄積されることとなる。そして、第1及び第2のTSパケットバッファ13,14は、後述するようにして出力決定部17からの出力要求が入力されたときに、蓄積したTSパケットをTSパケット切替部18に出力する。
【0036】
また、第3のTSパケットバッファ15は、ヌルパケットが入力されるとともに、このヌルパケットを蓄積する。そして、後述するようにして出力決定部17からの出力要求が入力されると、蓄積したヌルパケットをTSパケット切替部18に入力する。このヌルパケットは、図示を省略するCPU(Central Processing Unit)などにより生成され、主として出力レートを調整する目的でトランスポートストリームとして送出されるもので、特定のデータが多重化されたものではなく、無意味な内容を有する。
【0037】
さらに、第4のTSパケットバッファ16は、所定の情報が格納されたTSパケットが入力されるとともに、このTSパケットを蓄積する。そして、後述するようにして出力決定部17からの出力要求が入力されると、蓄積したTSパケットをTSパケット切替部18に出力する。
【0038】
この第4のTSパケットバッファ16に入力されるTSパケットは、ヌルパケットと同様にしてCPUなどにより生成され、プログラム時刻基準参照値(PCR:Program Clock Reference)や番組特定情報(PSI:Program Specific Information)などのような、デジタル放送の受信時に必要となる所定の情報が格納されたTSパケットである。
【0039】
尚、以下では、PCRが格納されたTSパケットをPCRパケットを称し、PSIが格納されたTSパケットをPSIパケットと称する。また、このようなTSパケットは、トランスポートストリームとして送出すべき頻度が予め決められており、当該実施の形態ではビデオデータやオーディオデータのTSパケットに優先して出力される。そこで、以下では、このようなTSパケットを総称して優先パケットと称する。
【0040】
また、第1乃至第4のTSパケットバッファ13,14,15,16は、例えばFIFO(Fast In Fast Out)型のメモリ素子によって構成することができる。なお、図1に示す本実施の形態では、ESから生成されたTSパケットが蓄積されるTSパケットバッファが2つ(第1及び第2のTSパケットバッファ13,14)配設される場合を示しているが、複数種類のESから生成したTSパケットをトランスポートストリームとして送出し、複数のTSパケットバッファを用意して、TSパケットがES毎にそれぞれ蓄積されるとしてもよい。具体的には、例えばビデオデータのESが1チャンネル、オーディオデータのESが4チャンネル入力される場合には、ES用のTSパケットバッファを5つ用意すればよい。
【0041】
出力決定部17は、第1〜第3のTSパケットバッファ13,14,15に対して所定の順序で出力要求を行うとともに、TSパケット切替部18を制御して、このTSパケット切替部18の入力先を切り替える。
【0042】
TSパケット切替部18は、出力決定部17により切り替えられた入力先から入力されるTSパケットを出力バッファ19に出力する。出力バッファ19は、例えばFIFO型のメモリ素子によって構成されており、入力されたTSパケットを蓄積するとともに、蓄積したTSパケットを順次出力インタフェース(図示せず。)に出力する。そして、出力インタフェースは、出力バッファ19から出力されるTSパケットを、順次トランスポートストリームに送出して伝送する。
【0043】
なお、出力インタフェースは、本発明の本質ではなく、従来と同等の構成とすることができるため、図1中での図示と詳細な説明とを省略する。
【0044】
ここで、出力決定部17は、上述したように出力要求を行うに際して、メモリ部20に保持されたインタリーブテーブルを参照する。
【0045】
このメモリ部20は、例えば各種半導体メモリ素子により構成されており、トランスポートストリームとして送出するTSパケットの出力順序を示すインタリーブテーブルを保持している。このインタリーブテーブルには、第1及び第2のTSパケットバッファ13,14から出力される、ESが多重化されてなるTSパケット、及び第3のTSパケットバッファ15から出力されるヌルパケットの出力順序が示されている。
【0046】
また、メモリ部20は、カウンタ21に接続されている。カウンタ21は、トランスポートストリームとしてTSパケットを送出するタイミングを示すTSパケットパルスが入力されており、このTSパケットパルスに同期してカウントアップされたカウント値をメモリ部20に出力する。
【0047】
メモリ部20は、カウンタ21から出力されるカウント値が入力されており、このカウント値に応じてインタリーブテーブルのアドレスが参照され、このアドレスに示された選択先を出力決定部17に出力する。
【0048】
そして、出力決定部17は、メモリ部20から入力された選択先に応じて、第1乃至第3のTSパケットバッファ13,14,15のいずれかに対して出力要求を行うとともに、このTSパケットバッファからの出力されるTSパケット又はヌルパケットがTSパケット切替部17に入力されるように、このTSパケット切替部17を制御する。これにより、インタリーブテーブルに示された出力順序で、ESが多重化されてなるTSパケット又はヌルパケットが出力バッファ19に出力される。そして、これらTSパケット又はヌルパケットは、インタリーブテーブルに示された出力順序で出力バッファ19から出力インタフェースに出力され、最終的に、この順序でトランスポートストリームとして送出される。
【0049】
このように、出力決定部17は、メモリ部20に保持されたインタリーブテーブルを参照し、このインタリーブテーブルに示された出力順序で、ESが多重化されてなるTSパケット又はヌルパケットを出力している。なお、本実施の形態においては、メモリ部20がカウント値に基づいてインタリーブテーブルを参照しており、このインタリーブテーブルが示す選択先を出力決定部17に出力している。これにより、出力決定部17がインタリーブテーブルを参照して、このインタリーブテーブルに示された出力順序でTSパケット又はヌルパケットを出力することを実現しているが、例えば、カウンタ値が出力決定部17に入力されるとし、この出力決定部17が積極的にメモリ部20のインタリーブテーブルを参照するように構成してもよい。
【0050】
また一方、出力決定部17は、例えばCPUから出力される優先出力要求が入力されたときに、メモリ部20のインタリーブテーブルに示された出力順序に優先して、第4のTSパケットバッファ16に対して出力要求を行うとともに、この第4のTSパケットバッファ16から出力される優先パケットが出力バッファ19に入力されるようにTSパケット切替部18を制御する。また、この優先出力要求が入力された直後にインタリーブテーブルにおいて出現するヌルパケットの出力を無視する。
【0051】
すなわち、当該第1の実施形態のデータ伝送装置1では、ESが多重化されてなるTSパケット及びヌルパケットをテーブル参照方式によって出力しており、PCRパケットやPSIパケットなどのような所定の情報が格納されたTSパケット(優先パケット)を出力するときには、インタリーブテーブルに優先する優先出力要求が用いられており、いわばイベント要求方式によって出力している。
【0052】
したがって、一般にESが多重化されてなるTSパケットよりも低い出力レートで出力される優先パケット(PCRパケット,PSIパケット)を、インタリーブテーブルに依存せず、必要に応じて柔軟に出力することができる。これにより、従来のデータ伝送装置においては、これらPCRパケットやPSIパケットを送出する際に生じていた出力レートの浪費分を削減することができ、伝送帯域を有効に利用して効率的なデータ伝送を行うことができる。
【0053】
また、当該第1の実施形態のデータ伝送装置1は、優先パケットを出力した直後におけるヌルパケットの出力を無視している。ヌルパケットは本来、出力レートを調整する目的でトランスポートストリームとして送出される無意味なTSパケットであることから、このヌルパケットの出力を無視した場合であっても、データ伝送に影響が生じることはない。したがって、インタリーブテーブルに優先して優先パケットを出力した場合であっても、このヌルパケット以外のTSパケット(ESが多重化されてなるTSパケット、及び優先パケット)の出力間隔を一定に保って出力することができる。
【0054】
さらに、当該第1の実施形態のデータ伝送装置1においては、CPUなどによって、出力すべき優先パケットが第4のTSパケットバッファ16に完全に蓄積された時点で、出力決定部17に対する優先出力要求を行うことができる。これにより、出力決定部17は、優先出力要求が入力されたときに、第4のTSパケットバッファ16に優先パケットが完全に蓄積されたか否かを判定することなく、この第4のTSパケットバッファ16に対して即座に出力要求を行うことができる。したがって、優先パケットを蓄積するためのTSパケットバッファを複数用意する必要がなく、回路構成を簡略化して低コスト化を実現することができる。
【0055】
次に、TSパケットを選択して出力する場合における当該第1の実施形態のデータ伝送装置1の具体的な動作例について、図2に示すフローチャートに従って説明する。
【0056】
データ伝送装置1は、その動作が開始されると、先ず、図2に示すステップS1において、保留カウントPの値、及びインタリーブテーブルの参照アドレスAの値が出力決定部17によって「0」に設定され、それぞれの値が初期化される。なお、保留カウントPは、優先出力要求が出力決定部17に入力された回数と、ヌルパケットの出力を無視した回数との関係を示す値であり、優先出力要求が入力されたときに「1」加算され、ヌルパケットの出力を無視したときに「1」減算される値である。
【0057】
次に、ステップS2において、出力決定部17は、CPUなどから優先出力要求が入力されているか否かを判定する。判定の結果、優先出力要求が入力されている場合には処理を次のステップS3にすすめ、入力されていない場合には処理をステップS7に進める。
【0058】
ステップS3において、出力決定部17は、保留カウントPの値を「1」加算する。
【0059】
次に、ステップS4において、出力決定部17は、第4のTSパケットバッファ16に対して出力要求を行うとともに、TSパケット切替部18を制御して、この第4のTSパケットバッファ16から出力される優先パケットを出力バッファ19に出力する。
【0060】
次に、ステップS5において、出力決定部17は、TSパケットの出力動作を停止する要求がCPUなどから入力されているか否かを判定する。そして、この判定の結果、停止要求が入力されている場合には、TSパケットの出力動作を停止する。また、停止要求が入力されていない場合には、処理をステップS6に進める。
【0061】
ステップS6において、出力決定部17は、カウンタ21にTSパケットパルスが入力されてカウント値が出力され、次のTSパケットを送出するタイミングとされたか否かを判定する。そして、この判定の結果、TSパケットパルスが入力された場合には、処理をステップS2に戻し、次のTSパケットを出力するように動作する。また、TSパケットパルスが入力されていない場合には、入力されるまで判定を繰り返す。
【0062】
一方、ステップS7において、出力決定部17は、参照アドレスAの値を加算するとともに、メモリ部20に保持されたインタリーブテーブルを参照して、このインタリーブテーブルにおけるアドレスAに記述された選択先を取得する。
【0063】
次に、ステップS8において、出力決定部17は、保留カウントPの値が「0」であるか否かを判定する。そして、この判定の結果、値が「0」でない場合には、処理を次のステップS9に進め、値が「0」である場合には、処理をステップS10に進める。
【0064】
ステップS9において、出力決定部17は、第1乃至第3のTSパケットバッファ13,14,15のうちで、ステップS7で取得した選択先に相当するTSパケットバッファに対して出力要求を行うとともに、TSパケット切替部18を制御して、このTSパケットバッファから出力されるTSパケット又はヌルパケットを出力バッファに出力し、処理をステップS5に進める。
【0065】
一方、ステップS10において、出力決定部17は、選択先に相当するTSパケットバッファが第3のTSパケットバッファであるか否か、すなわち、次に出力するTSパケットがヌルパケットであるか否かを判定する。そして、この判定の結果、次の出力がヌルパケットでない場合には、処理をステップS9に進め、ヌルパケットである場合には、処理をステップS11に進める。
【0066】
ステップS11において、出力決定部17は、保留カウントPの値を「1」減算し、ヌルパケットを出力しないで処理をステップS7に進める。
【0067】
当該第1の実施形態のデータ伝送装置1は、上述のように動作することにより、TSパケットを順次出力バッファ19に出力するとともに、この出力バッファ19に蓄積されたTSパケットを順次トランスポートストリームとして送出する。
【0068】
データ伝送装置1においては、図2に示すフローチャートにおいて、ステップS7,S8,S9の流れ、又はステップS7,S10,S9の流れで動作することにより、出力決定部17がインタリーブテーブルに示された出力順序で、ESが多重化されてなるTSパケット又はヌルパケットを出力バッファ19に出力しており、この出力順序でTSパケットをトランスポートストリームとして送出している。
【0069】
また、データ伝送装置1においては、ステップS2,S3,S4の流れで動作することにより、優先出力要求が出力決定部17に入力されたときに、インタリーブテーブルの参照に優先して優先パケットを出力バッファ19に出力しており、この優先パケットをトランスポートストリームとして送出している。
【0070】
また、データ伝送装置1においては、優先パケットを送出した回数が保留カウントPの値によりカウントされており、ステップS8,S10,S11の流れで動作することにより、保留カウントPの値が「0」でないとき(優先パケットを送出した直後であるとき)には、ヌルパケットの出力が無視されている。ただし、優先パケットを送出した直後であっても、次の出力対象がヌルパケット以外のTSパケットである場合には、ステップS8,S10,S9の流れで動作することにより、このTSパケットをインタリーブテーブルに示された出力順序で出力する。
【0071】
すなわち、データ伝送装置1は、図2のフローチャートに示すように動作することにより、例えば図3に示すような出力順序で、トランスポートストリームとしてTSパケットが送出される。なお、図3に示すインタリーブテーブルにおいて、「V」で示す位置には、ビデオデータのESが多重化されたTSパケットが出力されるように、第1のTSパケットバッファ13が出力決定部17の選択先として記述されており、「A」で示す位置には、オーディオデータのESが多重化されたTSパケットが出力されるように、第2のTSパケットバッファ14が出力決定部17の選択先として記述されている。また、「N」で示す位置には、ヌルパケットが出力されるように、第3のTSパケットバッファ15が出力決定部17の選択先として記述されている。
【0072】
図2から明らかであるように、データ伝送装置1は、メモリ部19に保持されたインタリーブテーブルに示された出力順序で、ESが多重化されてなるTSパケット又はヌルパケットを出力し、この順序でトランスポートストリームとして送出する。
【0073】
またデータ伝送装置1では、図2において時刻T1の時点において、出力決定部17に優先出力要求が入力されると、インタリーブテーブルに示された出力順序に優先して、即座に優先パケットを出力している。また、時刻T1において優先出力要求が入力された後で、ヌルパケットを出力する記述がインタリーブテーブルに出現した時点T2では、このヌルパケットの出力を無視して、インタリーブテーブルに示された次のTSパケットを出力している。すなわち、データ伝送装置1は、優先パケットをインタリーブテーブルに優先して送出した分だけ、ヌルパケットの送出をしていない。
【0074】
したがって、データ伝送装置1は、インタリーブテーブルに優先して優先パケットを送出した場合であっても、ビデオデータのESが多重化されてなるTSパケットや、オーディオデータのESが多重化されてなるTSパケットの出力間隔を、一定に保って出力することができる。
【0075】
なお、図2に示す例においては、ビデオデータのESが多重化されてなるTSパケットの連続した出力の合間に、優先パケットを挿入して出力されている。以下、この点について説明する。
【0076】
ビデオデータやオーディオデータのESは、高レートでトランスポートストリームとして出力するものであり、PESの出力レートが規定されている。しかしながら、これらPESを第1及び第2のTSパケット化部11,12でパケット化するときにオーバーヘッドを伴うため、ビデオデータやオーディオデータのESが多重化されてなるTSパケットは、トランスポートストリームとして送出するレートに十分な余裕を有している。そして、トランスポートストリームを受信する受信装置には、多重化を解いてESに復元するときにバッファが用いられることが一般的である。
【0077】
したがって、ビデオデータのESが多重化されてなるTSパケットの連続した出力の合間に、優先パケットを挿入して出力した場合であっても、これらTSパケットの連続性が問題になることはない。
【0078】
また、上述で説明した本第1の実施形態においては、データ伝送装置1に第3及び第4のTSパケットバッファ15,16が用意されており、これらのTSパケットバッファにそれぞれ、ヌルパケットと優先パケットとが一時蓄積されるとしている。
【0079】
しかしながら、当該第1の実施形態においては、必ずしも第3及び第4のTSパケットバッファ15,16を用意する必要はない。CPUによる制御や同期信号などを用いることなどによって、出力決定部17に対する優先出力要求の入力、そしてこれによるTSパケット切替部18での入力の切り替えと、優先パケットのTSパケット切替部18への入力に同期がとれていれば、第4のTSパケットバッファ16を不要とすることができる。同様に、CPUによる制御や同期信号などを用いることなどによって、TSパケット切替部18においてヌルパケットを入力先として選択する切り替えと、このTSパケット切替部18へのヌルパケットの入力に同期がとれていれば、第3のTSパケットバッファ15を不要とすることができる。
【0080】
つぎに以下では、上述したインタリーブテーブルの作成方法について、その具体的な一例を挙げて説明する。
【0081】
なお、以下の説明においては、作成するインタリーブテーブルの大きさ(要素数)を「4096」とし、入力されるESのチャンネルとして、[Video]、[Audio#0]、[Audio#1]、[Audio#2]、及び[Audio#3]の5チャンネルがあるとする。したがって、作成するインタリーブテーブルには、これらESの5チャンネル分にヌルパケット分を加えた、合計6種類のTSパケットの出力順序を記述することとなる。また、このインタリーブテーブルに優先して出力する優先パケットとしては、PCRパケット及びPSIパケットと、テキスト情報が格納されてなる「TEXT0」パケット及び「TEXT2」パケットとの合計4種類があるとする。これら4種類の優先パケットは、インタリーブテーブル中の記述されたヌルパケットの要素数に相当する分から割り当てる。
【0082】
インタリーブテーブルを作成する際には、いずれの種類のTSパケットに注目した場合でも、このTSパケットの送出間隔が略々一定となるようにして、各TSパケット又はヌルパケットの出力順序を設定することが重要となる。
【0083】
先ず、最終的な出力であるトランスポートストリーム全体での出力レートを求める。また、ESの各チャンネルに対応するTSパケットの出力レートについて、トランスポートストリーム全体での出力レートに占める割合を求める。このとき、ESの各チャンネルに対応するTSパケットの出力レートは、ESやPESをトランスポートストリームとして送出するまでの間に生じるオーバーヘッドを考慮した出力レートとする。
【0084】
次に、求まったES毎のTSパケットの出力レートに対して、僅かに余裕を持たせた出力レートをそれぞれ決定する。
【0085】
ここで、トランスポートストリーム全体での出力レートをRTSとし、例えば、[Video]のESチャンネルを多重化してなるTSパケットの出力レートをRとすると、この種類のTSパケットについてインタリーブテーブルに記述するべき要素数Nは、1要素に対応する出力レートがRTS/4096であることから、以下に示す式4のように表すことができる。但し下記の式4において、[x]は、xを超えない最大の整数を表す。
【0086】
【数4】
Figure 0003633535
そして、前記の式4において、端数が丸め込まれたことによる出力レートの上昇分を考慮して、[Video]のESチャンネルを多重化してなるTSパケットの実際の出力レートをR’とすると、このR’は以下の式5に示すように表すことができる。
【0087】
【数5】
Figure 0003633535
上述では、[Video]のESチャンネルを多重化してなるTSパケットについて算出したが、同様にして、他のESチャンネルを多重化してなるTSパケットについても実際の出力レートを算出し、これらの合計がトランスポートストリーム全体での出力レートRTSを上回っていないことを確認する。
【0088】
次に、例えば、図4のフローチャートに示すアルゴリズムに従い、ESが多重化されてなるTSパケット、及びヌルパケットについて、インタリーブテーブルに記述する要素数を設定する。尚、以下では、上述した値NVを一般化してNenと表す。ただし、nはESが多重化されてなるTSパケットの種類を示し、ヌルパケットは含まない。また、[en]は、n番目のESが多重化されてなるTSパケットを示す。さらに、Nenは、以下に示す式6の関係を満足するとする。
【0089】
【数6】
Figure 0003633535
先ず、図4中に示すステップS20において、中間値Senの値をそれぞれ[4096−Nen]に設定するとともに、変数iの値を[0]に設定し、初期化を行う。
【0090】
次に、ステップS21において、中間値Senの値をそれぞれ[Sen+Nen]に設定する。
【0091】
次に、ステップS22において、変数kの値を[0]に設定する。
【0092】
次に、ステップS23において、k番目の中間値Sekの値が[4096]以上であるか否かを判定する。この判定の結果、[4096]以上である場合には、処理をステップS24に進め、[4096]未満である場合には、処理をステップS27に進める。
【0093】
ステップS24においては、k番目の中間値Sekの値を[Sek−4096]に設定し、インタリーブテーブルのi番目の要素(table{i})として、[ek]を示す情報を設定する。
【0094】
次に、ステップS25において、変数iの値を[i+1]に設定する。
【0095】
次に、ステップS26において、変数iの値が[4096]以上であるか否かを判定する。この判定の結果、[4096]以上である場合には、インタリーブテーブル中の全ての要素が設定されたこととなり、設定作業を終了する。また、[4096]未満である場合には、インタリーブテーブル中の次の要素を設定するために、処理をステップS21に戻す。
【0096】
一方、上述のステップS23において、k番目の中間値Sekの値が[4096]未満であるとされた場合には、ステップS27において、変数kの値を[k+1]に設定する。
【0097】
次に、ステップS28において、変数kの値が[n]よりも大きいか否かを判定する。この判定の結果、[n]以下である場合には、処理をステップS23に戻し、[n]よりも大きい場合には、処理をステップS29に進める。
【0098】
ステップS29においては、インタリーブテーブルのi番目の要素(table{i})として、ヌルパケットを示す情報を設定する。
【0099】
以上のようなアルゴリズムを用いることにより、インタリーブテーブルの各要素を設定することができる。そして、このようにして設定したインタリーブテーブルについて、各ESが多重化されてなるTSパケット、及びヌルパケットがどのように送出されるかを分析した結果を、以下の表1に示す。
【0100】
【表1】
Figure 0003633535
前記の表1に示すように、上述のようにしてインタリーブテーブルを設定することにより、各ESが多重化されてなるTSパケット、及びヌルパケットを、所望とする出力間隔で出力されるように設定することができる。また、この出力間隔が、各TSパケット毎に略々一定となるように設定することができる。
【0101】
[第2の実施形態]
本発明は、図5に例示するようなデータ伝送装置2に適用することができる。
【0102】
この本発明の第2の実施形態となるデータ伝送装置2は、図1に示すデータ伝送装置1と同様、MPEG−2 Systems(ITU−T H.222.0,ISO/IEC 13818−1)で規定されるトランスポート・パケット(以下、「TSパケット」という。)を所定の伝送フォーマットによりMPEG−2 Systems(ITU−T H.222.0,ISO/IEC 13818−1)で規定されるデータストリーム(トランスポートストリーム)に変換してデータ伝送を行うようになっている。
【0103】
具体的な構成としては、このデータ伝送装置2は、図5に示すように、第1及び第2のパケット化部31,32と、第1,第2,第3のTSパケットバッファ33,34,35と、出力決定部36と、TSパケット切替部37と、出力バッファ38と、テーブルデータ変換部39と、メモリ部40と、カウンタ41とを備える。
【0104】
尚、第1のパケット化部31、第2のパケット化部32、第3のTSパケットバッファ35、TSパケット切替部37、出力バッファ38、メモリ部40、及びカウンタ41の構成と動作は、それぞれ、図1に示す第1のパケット化部11、第2のパケット化部12、第4のTSパケットバッファ16、TSパケット切替部18、出力バッファ19、メモリ部20、カウンタ21のそれと同様であるので、ここではその詳細な説明を省略する。
【0105】
第1及び第2のTSパケットバッファ33,34は、入力されたTSパケットをそれぞれ蓄積し、出力決定部36からの出力要求が入力されたときに、蓄積したTSパケットをTSパケット切替部37に出力する。また、第1及び第2のTSパケットバッファ33,34は、TSパケットが蓄積されていないときには、ヌルパケットをTSパケット切替部37に出力する。
【0106】
尚、このデータ伝送装置2では、ESから生成されたTSパケットが蓄積されるTSパケットバッファが2つ(第1及び第2のTSパケットバッファ33,34)配設される場合を示しているが、複数種類のESから生成したTSパケットをトランスポートストリームとして送出し、複数のTSパケットバッファを用意して、TSパケットがES毎にそれぞれ蓄積されるとしてもよい。
【0107】
出力決定部36は、第1及び第2のTSパケットバッファ33,34に対して所定の順序で出力要求を行うとともに、TSパケット切替部37を制御して、このTSパケット切替部37の入力先を切り替える。尚、この出力決定部36は、テーブルデータ変換部39から出力される信号に従って出力要求を行う。
【0108】
テーブルデータ変換部39は、メモリ部40内に保持されたインタリーブテーブルの入力に対応したTSパケットの種別を変換出力として出力する。具体的には、インタリーブテーブルに保持される出力順序データの一部あるいは全部には冗長度を持たせており、テーブルデータ変換部39は、インタリーブテーブルの冗長データとパケット種別との対応関係を示すテーブル変換情報に従って、多重化処理の時間単位を示す同期信号に同期して入力と出力の変換を行う。このテーブルデータ変換情報は、CPU等により書き込まれ多重化処理の時間単位を示す同期信号に同期して内部に取り込まれる。
【0109】
次に、カウンタ41、メモリ部40、テーブルデータ変換部39、及び出力決定部36動作について、図6に示すフローチャートに従って説明する。尚、この図6に示すフローチャートにおいては、図2に示すステップS7〜ステップS11の処理に対応する処理が異なるのみであるので、以下では、ステップS7〜ステップS11の処理に対応する処理(ステップS37〜ステップ41)についてのみ説明し、その他のステップの動作についてはその説明を省略する。
【0110】
ステップS37において、出力決定部36は参照アドレスAの値を「1」増数する。そして、テーブルデータ変換部39は、テーブル変換情報を利用して、参照アドレスAに対応するインタリーブテーブルのデータD[A]をパケット種別T[D[A]]に変換し、パケット種別T[D[A]]に関する情報を出力決定部36に出力する。尚、参照アドレスAを増数した結果、参照アドレスAが参照アドレスAの最大値Amaxに達した場合には、出力決定部36は参照アドレスAの値を「0」にする。
【0111】
次に、ステップS38において、出力決定部36は、保留カウントPの値が「0」であるか否かを判定する。そして、この判定の結果、値が「0」である場合には処理を次のステップS39に進め、値が「0」でない場合には処理をステップS40に進める。
【0112】
ステップS39において、出力決定部36は、第1及び第2のTSパケットバッファ33,34のうち、ステップS37で取得したパケット種別T[D[A]]に相当するTSパケットバッファに対して出力要求を行うとともに、TSパケット切替部18を制御して、このTSパケットバッファから出力されるTSパケット又はヌルパケットを出力バッファに出力し、処理をステップS35に進める。
【0113】
一方、ステップS40において、出力決定部36は、パケット種別T[D[A]]がヌルパケットであるか否かを判定する。そして、この判定の結果、パケット種別T[D[A]]がヌルパケットでない場合には処理をステップS39に進め、ヌルパケットである場合には、処理をステップS41に進める。
【0114】
ステップS41において、出力決定部36は、保留カウントPの値を「1」減算し、ヌルパケットを出力しないで処理をステップS37に進める。
【0115】
次に、具体例を示しながら、本発明の第2の実施形態となるデータ伝送装置2の実際の動作について説明する。
【0116】
この第2の実施形態となるデータ伝送装置2においては、インタリーブテーブルデータは2進数N桁の数値としてメモリ部40に保持されている。このとき、インタリーブテーブルデータにより表現できる最大数2が、TSパケットの種別の最大値よりも小さい場合には、その値を冗長データパケットとして割り当てる。
【0117】
ここで、ビデオのエレメンタリストリームのレートが16M〜24Mbpsの範囲で変化し、パケットの種別が[ヌル][ビデオ][音声#0][音声#1][音声#2][音声#3][PSI][PCR][TEXT0][TEXT1]の10種ある場合を例として、データ伝送装置2の動作について説明する。
【0118】
この場合、テーブルに設定するパケット種別は、[ヌル][ビデオ][音声#0][音声#1][音声#2][音声#3]の6種とし、[PSI][PCR][TEXT0][TEXT1]はヌルに設定した分から割り当てる。そして、パケットの種別数が10であるので、テーブルデータ1個当たりのビット数は4ビットとなる。
【0119】
今、[ビデオ]のパケットを複数に分けることを考える。[ビデオ]のパケットを[2の整数乗個+1]のテーブルデータに分けるものとし、最低レートを示すテーブルデータに1つ割り当て、最高レートと最低レートの差をその2の整数乗の値[2]で割った値を[A]として、[A]を2つと、[A×2],[A×2],…,[A×2K−1]をそれぞれ1つ割り当てる。例えば、[ビデオ]の最低レートを16Mbps、最高レートを24Mbpsとし、K=3として計算すると、最低レートから最高レートまでを[A]レート間隔(この場合、1Mbps間隔)で指定することができるようになる。最低レートから最高レートまでの各値は、具体的には、図7に示すアルゴリズムに従って求めることができる。
【0120】
図7において、先ず始めに、ステップS51において、0番目のビットレートR[0]を[(Rmax−Rmin)/2]に設定する。ここで、Rmaxは最高ビットレート、Rminは最低ビットレートである。
【0121】
次に、ステップS52において、ビットレート番号を計数するカウンタNの値に「1」を設定する。
【0122】
次に、ステップS53において、N番目のビットレートを[N−1]番目のビットレートに2を乗数した値[R[N−1]×2]に設定する。
【0123】
続いて、ステップS54において、カウンタNの値が分割数Kに達しているか否かを判別し、達していない場合には、ステップS55の処理へ進む。一方、達している場合にはステップS56の処理へ進む。
【0124】
そして、ステップS55において、カウンタNの値を「1」増数し、ステップS53の処理に戻る。
【0125】
ステップS56においては、[K+1]番目のビットレートの値を最低ビットレートRminに設定し、一連の処理を終了する。
【0126】
一般的には、想定される最低ビットレートをRmin,最高ビットレートをRmax,及びビットレートをRとした時の[A],[A×2],…,[A×2K−1]の変換データの設定方法は、以下の数式7で求められたXを2進数表記したときの各桁により決定することができる(2と[A]、2と[A×2]…、2K−1と[A×2K−1]がそれぞれ対応する。但し[R=Rmax]のときに限り、2つめの[A]を含めたすべてが選択される)。
【0127】
【数7】
Figure 0003633535
ここで、[x]は[x]を越えない最大の整数を示す。
【0128】
尚、図10にテーブル変換情報の設定例を示す。この例においては、冗長度を持たせたテーブルデータ1〜5を[ビデオ]パケットに変換するように割り当て、[ビデオ]のビットレートが24Mbps,20Mbps,19Mbps,18Mbps,16Mbpsである時のそれぞれの設定例を示している。24Mbpsの場合には[ビデオ1]〜[ビデオ5]が使用されるのに対して、例えば、20Mbpsの場合には[ビデオ3]〜[ビデオ5]が未使用となり、19Mbpsの場合には[ビデオ2]と[ビデオ5]が未使用となる。
【0129】
最後に、図8及び図9を参照して、従来及び上記第2の実施形態となるデータ伝送装置を用いた[ビデオ]のTSパケットの出力状況について説明する。
【0130】
図8及び図9は、それぞれ、従来及び上記第2の実施形態となるデータ伝送装置による[ビデオ]のTSパケットの出力状況を示す模式図であり、[ビデオ]のTSパケットの最大レートを24Mbpsとしたときの20Mbps,19.5Mbpsのパケットのインタリーブを図示したものである。
【0131】
図8からわかるように、従来のデータ伝送装置では、20Mbpsのパケットの場合、多重化バッファは多重化時間単位であるフレームの先頭から最大レート:24Mbpsで多重化を開始するために、ほぼ[5/6]フレーム時間で全てのパケットAの送出を終え(時間T1)、その後は[ヌル]パケットBを送出する。また、19.5Mbpsのパケットの場合には、更に短い時間T2で全てのパケットAの送信を終え、その後は[ヌル]パケットBを送出するようになる。
【0132】
これに対して、本発明の第2の実施形態となるデータ伝送装置では、図9に示すように、20Mbpsの場合、1フレーム時間を要するような冗長度を持たせたパケットDを送出するようになる。つまり、24Mbpsの場合のパケットCにおける[ビデオ3]〜[ビデオ5]のパケットに対応する部分が、20Mbpsではそれぞれ[ヌル]パケットに設定されている。
【0133】
また、図9では、19.5Mbpsの場合も、20Mbpsの場合と同様の冗長度を持たせたパケットDを送出する例を示している。そのため、20Mbpsのパケットとの差、すなわち、0.5Mbps相当分だけ早く終了するものの、明らかに従来のデータ伝送装置と比べて改善されていることが解る。
【0134】
尚、この図に示す例では、19.5Mbpsのパケットの場合に、20Mbpsとしてレートの設定を行っているが、多重化の単位(フレーム)で、CPU等が十分に処理できるのであれば、19Mbpsと20Mbpsとをフレーム毎に交互に設定することで、19.5Mbpsのレートを実現することも可能である。
【0135】
また、多重化の単位は、それぞれのパケットの種別によって異なるため、[ビデオ]用に割り当てたレートを[音声]に使用する場合は、それぞれの多重化の単位で十分に余裕をもって設定することが必要である。例えば、図10に示す例で[ビデオ]のレートを24Mbpsから20Mbpsに変更し、さらに20Mbpsのときに[音声]を2ch追加するためにテーブルデータ4,5に[音声#4][音声#5]を割り当てる場合、先ず、[ビデオ]のレートを20Mbpsに落としてから[音声]の割り当てを行い、その後に実際の[音声]のTSパケットを作成するといった処理が必要である。
【0136】
[その他の実施形態]
最後に、上述の実施の形態は本発明の一例である。このため、本発明は上述の実施の形態に限定されるものではなく、データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置に対して広く適用することができる技術的思想である。
【0137】
また、データ伝送装置1の各部は、各種半導体素子などを用いてハードウエアにより構成してもよいし、コンピュータ等の情報処理装置における所定の動作を記述したソフトウエアにより構成してもよい。
【0138】
そして、これら以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば設計等に応じて種々の変更が可能であることは勿論である。
【0139】
【発明の効果】
本発明に係るデータ伝送装置は、複数のバッファ手段に蓄積されるパケットを、インタリーブテーブルに予め設定された出力順序で出力するとともに、優先出力要求がなされたときに、所定の情報が格納されたパケットを、インタリーブテーブルに示された出力順序に優先して出力することができる。また、インタリーブテーブルに示された出力順序に優先してパケットを出力したときに、この直後にインタリーブテーブルにおいて出現するヌルパケットの出力を無視することから、このヌルパケット以外のパケットの出力間隔を一定に保つことができる。
【0140】
したがって、本発明に係るデータ伝送装置は、所定の情報が格納されたパケットを蓄積するためのバッファを複数用意する必要がなく、回路構成を簡略化して低コスト化を実現することができる。また、所定の情報が格納されたパケットを低レートで出力する場合であっても、このパケットを必要に応じて柔軟に出力することができるため、伝送帯域を有効に利用して効率的なデータ伝送を行うことができる。さらに、インタリーブテーブルに優先してパケットを出力したときには、この直後のヌルパケットの出力を無視することから、このヌルパケット以外のパケットを、このパケットの種類に応じた出力間隔を一定に保って出力することができる。
【0141】
また、本発明に係るデータ伝送装置は、インタリーブテーブルに冗長度を持たせ、その冗長データが現れたときにテーブル変換情報を参照し、そのインデックスに対応するパケットを送出することができる。なお、上記インデックスは、CPU等により装置内部に書き込まれ、その内容は多重化周期で更新するようにする。
したがって、本発明に係るデータ伝送装置は、レートの変化に対して局所的にデータレートが高くなることを抑制することができる。また、時間が関係ないデータ伝送等の処理において、そのレートを最初に割り当てること無く運用することができるようになる。
【図面の簡単な説明】
【図1】本発明を適用した第1の実施形態となるデータ伝送装置の機能ブロック図である。
【図2】図1に示すデータ伝送装置の動作を説明するためのフローチャートである。
【図3】図1に示すデータ伝送装置によりトランスポートストリームとしてTSパケットや優先パケットが送出される様子を説明するための概略図である。
【図4】図1に示すデータ伝送装置で用いるインタリーブテーブルを設定するアルゴリズムの一例として示すフローチャートである。
【図5】本発明を適用した第2の実施形態となるデータ伝送装置の機能ブロック図である。
【図6】図5に示すデータ伝送装置の動作を説明するためのフローチャートである。
【図7】図5に示すデータ伝送装置によりレートを設定するアルゴリズムの一例として示すフローチャートである。
【図8】従来のデータ伝送装置によるビデオTSパケットの出力状況を示す模式図である。
【図9】図5に示すデータ伝送装置によるビデオTSパケットの出力状況を示す模式図である。
【図10】図5に示すデータ伝送装置におけるテーブル変換情報の一例を示す図である。
【図11】従来のデータ伝送装置の機能ブロック図である。
【符号の説明】
1,2…データ伝送装置、 11,31…第1のTSパケット化部、 12,32…第2のTSパケット化部、 13,33…第1のTSパケットバッファ、14,33…第2のTSパケットバッファ、 15,35…第3のTSパケットバッファ、 16…第4のTSパケットバッファ、 17,36…出力決定部、 18,37…TSパケット切替部、 19,38…出力バッファ、 20,40…メモリ部、 21,41…カウンタ、 39…テーブルデータ変換部[0001]
BACKGROUND OF THE INVENTION
The present invention relates to a data transmission apparatus for transmitting data by multiplexing elementary streams obtained by compressing and encoding data, generating a packet, and sending the packet as a data stream.
[0002]
[Prior art]
In recent years, digital data is transmitted digitally using MPEG-2 Systems (ITU-T H.222.0, ISO / IEC 13818-1), which is one of the compression transmission standards for video data and audio data. Broadcasting is in practical use.
[0003]
Such digital broadcasting can transmit high-quality video data and audio data compared to analog broadcasting that has been widely used conventionally. In addition, since it is transmitted digitally, it can transmit not only video data and audio data, but also various data that can be used via, for example, computers and various information terminals. Easy broadcasting.
[0004]
By the way, a data transmission apparatus used when transmitting such digital broadcasts multiplexes elementary streams obtained by compressing and encoding data to be transmitted to generate packets, and these packets are converted into data streams (packets). Data is transmitted by sending it as an aggregate in the time direction. Note that in digital broadcasting that transmits data using MPEG-2 Systems, a data stream is referred to as a transport stream, and hence is described as a transport stream in the following description.
[0005]
At this time, the data transmission apparatus uses, as a transport stream, a transport packet (hereinafter referred to as a TS packet) obtained by multiplexing an elementary stream (ES: Elementary Stream) of video data, an ES of audio data, or the like. Send it out. As described above, as one of the methods for sending TS packets as a transport stream, there is a so-called table reference type data multiplexing method that refers to an interleave table indicating the sending order according to the type of TS packets to be sent. .
[0006]
Here, an example of a conventional data multiplexing apparatus employing the table reference method will be described with reference to FIG.
[0007]
A conventional data multiplexing apparatus is connected to a video encoder that compresses and encodes video data and an audio encoder that compresses and encodes audio data. From these encoders, PES (Packetized Elementary Stream), which is the basic unit of ES in the MPEG-2 Systems standard, is input to the video TS packetizer 100 and the audio TS packetizer 101, respectively. The
[0008]
Each TS packetizing section 100, 101 breaks the input PES into TS packets and outputs TS packets. The TS packets output from the TS packetizing units 100 and 101 are input to the video TS packet buffer 102 and the audio TS packet buffer 103, respectively. Each of the TS packet buffers 102 and 103 is composed of, for example, a FIFO (Fast In Fast Out) type memory element. When the TS packet buffers 102 and 103 store input TS packets, an output request from the output determination unit 104 is made. The accumulated TS packet is output.
[0009]
In addition, in the conventional data multiplexing apparatus, predetermined information required at the time of receiving a digital broadcast such as a program time base reference value (PCR: Program Clock Reference) and program specific information (PSI: Program Specific Information) TS packet (PCR packet, PSI packet) in which is stored is generated by a CPU (Central Processing Unit) or the like.
[0010]
These PCR packets and PSI packets are input to a plurality of TS packet buffers 105 and 106 configured in the same manner as the TS packet buffers 102 and 103 described above, and accumulated in these TS packet buffers 105 and 106.
[0011]
On the other hand, the output determination unit 104 issues an output request to each TS packet buffer 102, 103, 105, 106 in a predetermined order, and controls the output order of TS packets output from each TS packet buffer. Further, the output determination unit 104 controls the TS packet switching unit 107 to switch the output from each TS packet buffer, and outputs it to the output buffer 108. The TS packets input to the output buffer 108 are accumulated in the output buffer 108, then output to an output interface (not shown), and transmitted through this output interface.
[0012]
At this time, in the table reference type data multiplexing apparatus, the output determination unit 104 refers to the interleave table held in the memory unit 109 when making an output request to each TS packet buffer. This interleave table indicates the output order of TS packets to be transmitted as a transport stream, such as TS packets in which video data is multiplexed, TS packets in which audio data is multiplexed, PCR packets, and PSI packets. The order in which TS packets are output according to the type of TS packets to be output is shown.
[0013]
Then, the output determination unit 104 refers to the interleave table held in the memory unit 109 based on the count value counted up by the counter 110 in synchronization with the TS packet pulse indicating the output timing of the TS packet, and outputs an output request. The TS packet buffer to perform is selected, and the TS packet switching unit 107 is controlled to output TS packets in the output order shown in the interleave table.
[0014]
[Problems to be solved by the invention]
By the way, of the TS packets transmitted as described above, the frequency of appearance of TS packets (PCR packets, PSI packets) in which information such as PCR and PSI is stored in the transport stream is determined in general operation. Therefore, it is necessary to output at a lower rate than TS packets in which video data and audio data are multiplexed.
[0015]
However, the conventional data transmission apparatus has a problem that the lower limit value of the output rate is determined depending on the size of the interleave table, and the transmission band is wasted when the PCR packet or the PSI packet is output.
[0016]
For example, when the output rate of the entire transport stream is 20 Mbit / sec and the size (number of elements) of the interleave table is 4096, the output rate of a particular type of TS packet is the output of this TS packet. Is equivalent to the case where is shown only once in the interleave table, the lower limit value is obtained as shown in Equation 1 below. The unit [bps] in the expression represents the number of bits per second (bit per second).
[0017]
[Expression 1]
Figure 0003633535
On the other hand, when a PCR packet storing PCR is taken as an example, the frequency at which this PCR packet is transmitted as a transport stream is defined to be once every 0.1 seconds at maximum. Considering that the data length of the TS packet is 188 bytes in the MPEG-2 Systems specification, the lower limit value of the output rate of the PCR packet is obtained as shown in the following equation 2.
[0018]
[Expression 2]
Figure 0003633535
Here, when the number of output times of the PCR packet is indicated 3 times in the interleave table, the output rate is 4882.8 × 3 = 14648.4 [bps] and is indicated 4 times. In this case, the output rate is 4882.8 × 4 = 195311.2 [bps].
[0019]
Therefore, in order to satisfy the lower limit value shown in Equation 2, the number of output times of the PCR packet must be four times in the interleave table. However, in this case, the output rate obtained by Equation 3 shown below is transmitted more than necessary, and the transmission band is wasted.
[0020]
[Equation 3]
Figure 0003633535
In addition, in the data transmission apparatus, the output interval of TS packets according to the type, such as TS packets in which video data is multiplexed, TS packets in which audio data is multiplexed, PCR packets, and PSI packets, It is considered desirable to be substantially constant. However, in the conventional data transmission apparatus, since the output order of TS packets is set in advance by an interleave table, PCR packets and PSI packets cannot be sent flexibly, and the output intervals of TS packets are shifted. There is a problem that it is easy to do.
[0021]
Furthermore, in the conventional data transmission apparatus, the output determination unit 104 knows the timing at which TS packets (PCR packet, PSI packet, etc.) whose frequency to be transmitted as a transport stream is predetermined are written in the TS packet buffer. Therefore, it is necessary to prepare a plurality of TS packet buffers 105 and 106. As a result, there is a problem that the circuit configuration becomes complicated and the cost is increased.
[0022]
Furthermore, since the conventional data transmission apparatus is set to multiplex data at the maximum rate assumed in all operations, for example, an operation in which the rate of the elementary stream changes in the middle is performed. In such a case, there is a problem that a large amount of data is locally multiplexed and efficient data transmission cannot be performed.
[0023]
The present invention has been made in view of the above-described problems, and an object of the present invention is to provide a data transmission apparatus capable of performing efficient data transmission by effectively using a transmission band.
[0024]
[Means for Solving the Problems]
The data transmission apparatus according to the present invention generates a packet by multiplexing elementary streams obtained by compressing and encoding data as means for solving the above problems, and sends the packet as a data stream. A data transmission device for transmitting data, comprising a plurality of buffer means, memory means, and output means.
[0025]
In the plurality of buffer means, the packet is accumulated for each elementary stream. The memory means holds an interleave table indicating the output order of packets and null packets stored in the buffer means. The output means refers to the interleave table held in the memory means and outputs packets or null packets stored in the buffer means in the output order indicated in the interleave table. The output means prioritizes the output order indicated in the interleave table when a priority output request that requests that a packet storing predetermined information is preferentially output is input. And the output of a null packet that appears in the interleave table immediately after the priority output request is input is ignored.
[0026]
The data transmission apparatus according to the present invention configured as described above outputs packets accumulated in a plurality of buffer means in an output order preset in an interleave table, and when a priority output request is made, A packet in which predetermined information is stored can be output with priority over the output order shown in the interleave table. Also, when a packet is output in preference to the output order shown in the interleave table, the output of the null packet that appears in the interleave table immediately after this is ignored, so the output interval of packets other than this null packet is constant. Can be kept in.
[0027]
A data transmission apparatus according to the present invention is a data transmission apparatus that multiplexes elementary streams obtained by compressing and encoding data to generate a packet, and transmits the packet by transmitting the packet as a data stream. A plurality of buffer means, memory means, table data conversion means, and output means.
[0028]
The plurality of buffer units accumulate the packets for each elementary stream. The memory means holds an interleave table in which redundancy is provided in the output order of the packets and null packets stored in the buffer means. The table data converting means converts the redundant data in the interleave table into a predetermined packet type according to table conversion information indicating the correspondence between the redundant data in the interleave table and the packet type. The output means refers to the conversion result by the table data conversion means and outputs the packets stored in the respective buffer means. The output means outputs a packet based on the priority packet request when a priority output request that requests that a packet storing predetermined information is preferentially output is input. The output of the packet whose packet type is a null packet immediately after the input is ignored.
[0029]
The data transmission apparatus according to the present invention configured as described above can suppress a local increase in data rate with respect to a change in rate. Also, in processing such as data transmission that is not related to time, the rate can be operated without first being assigned.
[0030]
DETAILED DESCRIPTION OF THE INVENTION
[First Embodiment]
The present invention can be applied to a data transmission apparatus 1 as shown in FIG. The data transmission apparatus 1 according to the first embodiment of the present invention includes a transport packet (hereinafter referred to as TS) defined in MPEG-2 Systems (ITU-T H.222.0, ISO / IEC 13818-1). Packet) is converted into a data stream (transport stream) defined by MPEG-2 Systems (ITU-T H.222.0, ISO / IEC 13818-1) according to a predetermined transmission format, and data transmission is performed. It is like that.
[0031]
As a specific configuration, as shown in FIG. 1, the data transmission apparatus 1 includes first and second packetizing units 11 and 12 and first, second, and fourth TS packet buffers 13 and 14. , 16, null packet buffer 15, output determination unit 17, TS packet switching unit 18, output buffer 19, memory unit 20, and counter 21.
[0032]
The first packetizing unit 11 receives a PES (Packetized Elementary Stream), which is a basic unit of an elementary stream (ES) in the MPEG-2 Systems standard, from a video encoder that compresses and encodes video data. Is done. Then, the first packetizing unit 11 decomposes the input PES into TS packets and outputs the TS packets to the first TS packet buffer 13.
[0033]
Note that the video encoder and the audio encoder are not the essence of the present invention, and can be configured in the same manner as in the prior art, so the illustration and detailed description in FIG. 1 are omitted.
[0034]
Similar to the first packetization unit 11, the second packetization unit 12 receives PES from an audio encoder that compresses and encodes audio data, decomposes the PES into TS packets, and converts the TS packets into first packets. 2 to the TS packet buffer 14.
[0035]
The first and second TS packet buffers 13 and 14 store the input TS packets, respectively. In other words, ES TS packets including video data are stored in the first TS packet buffer 13, and ES TS packets including audio data are stored in the second TS packet buffer 14. The first and second TS packet buffers 13 and 14 output the accumulated TS packets to the TS packet switching unit 18 when an output request from the output determination unit 17 is input as described later.
[0036]
Further, the third TS packet buffer 15 receives a null packet and accumulates the null packet. Then, when an output request from the output determination unit 17 is input as described later, the accumulated null packet is input to the TS packet switching unit 18. This null packet is generated by a CPU (Central Processing Unit) (not shown) or the like, and is sent as a transport stream mainly for the purpose of adjusting the output rate. Specific data is not multiplexed. Has meaningless content.
[0037]
Furthermore, the fourth TS packet buffer 16 receives TS packets storing predetermined information and accumulates the TS packets. When an output request is input from the output determination unit 17 as described later, the accumulated TS packets are output to the TS packet switching unit 18.
[0038]
The TS packet input to the fourth TS packet buffer 16 is generated by the CPU or the like in the same manner as the null packet, and is programmed time base reference value (PCR: Program Clock Reference) or program specific information (PSI: Program Specific Information). The TS packet stores predetermined information necessary for receiving a digital broadcast, such as.
[0039]
Hereinafter, a TS packet in which PCR is stored is referred to as a PCR packet, and a TS packet in which PSI is stored is referred to as a PSI packet. Further, the frequency with which such TS packets should be transmitted as a transport stream is determined in advance. In this embodiment, TS packets of video data and audio data are output with priority. Therefore, hereinafter, such TS packets are collectively referred to as priority packets.
[0040]
The first to fourth TS packet buffers 13, 14, 15, and 16 can be configured by, for example, a FIFO (Fast In Fast Out) type memory element. The present embodiment shown in FIG. 1 shows a case where two TS packet buffers (first and second TS packet buffers 13 and 14) in which TS packets generated from ES are stored are arranged. However, TS packets generated from a plurality of types of ES may be transmitted as a transport stream, a plurality of TS packet buffers may be prepared, and TS packets may be stored for each ES. Specifically, for example, when one channel of video data ES and four channels of audio data ES are input, five TS packet buffers for ES may be prepared.
[0041]
The output determination unit 17 issues output requests to the first to third TS packet buffers 13, 14, and 15 in a predetermined order, and controls the TS packet switching unit 18 to control the TS packet switching unit 18. Switch the input destination.
[0042]
The TS packet switching unit 18 outputs TS packets input from the input destination switched by the output determining unit 17 to the output buffer 19. The output buffer 19 is composed of, for example, a FIFO type memory element, accumulates input TS packets, and sequentially outputs the accumulated TS packets to an output interface (not shown). Then, the output interface sequentially transmits TS packets output from the output buffer 19 to the transport stream for transmission.
[0043]
Note that the output interface is not the essence of the present invention and can be configured in the same manner as in the prior art, so illustration and detailed description in FIG. 1 are omitted.
[0044]
Here, the output determination unit 17 refers to the interleave table held in the memory unit 20 when making an output request as described above.
[0045]
The memory unit 20 is composed of, for example, various semiconductor memory elements, and holds an interleave table indicating the output order of TS packets transmitted as a transport stream. In this interleave table, the output order of the TS packets output from the first and second TS packet buffers 13 and 14 in which ES is multiplexed and the null packet output from the third TS packet buffer 15 is output. It is shown.
[0046]
The memory unit 20 is connected to the counter 21. The counter 21 receives a TS packet pulse indicating the timing of sending a TS packet as a transport stream, and outputs a count value counted up in synchronization with the TS packet pulse to the memory unit 20.
[0047]
The memory unit 20 receives the count value output from the counter 21, refers to the address of the interleave table in accordance with this count value, and outputs the selection destination indicated by this address to the output determination unit 17.
[0048]
Then, the output determination unit 17 makes an output request to one of the first to third TS packet buffers 13, 14, and 15 according to the selection destination input from the memory unit 20, and the TS packet The TS packet switching unit 17 is controlled so that the TS packet or null packet output from the buffer is input to the TS packet switching unit 17. As a result, TS packets or null packets in which ESs are multiplexed are output to the output buffer 19 in the output order shown in the interleave table. These TS packets or null packets are output from the output buffer 19 to the output interface in the output order shown in the interleave table, and finally sent out as a transport stream in this order.
[0049]
As described above, the output determination unit 17 refers to the interleave table held in the memory unit 20, and outputs a TS packet or a null packet in which ESs are multiplexed in the output order indicated in the interleave table. Yes. In the present embodiment, the memory unit 20 refers to the interleave table based on the count value, and outputs the selection destination indicated by the interleave table to the output determination unit 17. Thereby, the output determination unit 17 refers to the interleave table and outputs TS packets or null packets in the output order indicated in the interleave table. For example, the counter value is output from the output determination unit 17. The output determination unit 17 may positively refer to the interleave table of the memory unit 20.
[0050]
On the other hand, when the priority output request output from the CPU, for example, is input, the output determination unit 17 gives priority to the output order indicated in the interleave table of the memory unit 20 in the fourth TS packet buffer 16. In addition to making an output request, the TS packet switching unit 18 is controlled so that the priority packet output from the fourth TS packet buffer 16 is input to the output buffer 19. Further, the output of a null packet that appears in the interleave table immediately after the priority output request is input is ignored.
[0051]
That is, in the data transmission apparatus 1 of the first embodiment, TS packets and null packets in which ESs are multiplexed are output by a table reference method, and predetermined information such as PCR packets and PSI packets is received. When the stored TS packet (priority packet) is output, a priority output request having priority over the interleave table is used, which is output by an event request method.
[0052]
Therefore, priority packets (PCR packets and PSI packets) that are generally output at a lower output rate than TS packets in which ESs are multiplexed can be flexibly output as needed without depending on the interleave table. . As a result, in the conventional data transmission apparatus, it is possible to reduce the waste of the output rate that has occurred when sending out these PCR packets and PSI packets, and to efficiently use the transmission band for efficient data transmission. It can be performed.
[0053]
Further, the data transmission device 1 of the first embodiment ignores the output of the null packet immediately after outputting the priority packet. Since null packets are meaningless TS packets that are sent out as a transport stream for the purpose of adjusting the output rate, data transmission is affected even if the output of this null packet is ignored. There is no. Therefore, even when priority packets are output in preference to the interleave table, output is performed while keeping the output interval of TS packets (TS packets in which ESs are multiplexed and priority packets) other than this null packet constant. can do.
[0054]
Furthermore, in the data transmission device 1 of the first embodiment, when the priority packet to be output is completely accumulated in the fourth TS packet buffer 16 by the CPU or the like, a priority output request to the output determination unit 17 is made. It can be performed. Thereby, the output determination unit 17 does not determine whether or not the priority packet is completely accumulated in the fourth TS packet buffer 16 when the priority output request is input, and the fourth TS packet buffer. An output request can be made immediately to 16. Therefore, it is not necessary to prepare a plurality of TS packet buffers for storing priority packets, and the circuit configuration can be simplified and the cost can be reduced.
[0055]
Next, a specific operation example of the data transmission device 1 according to the first embodiment when a TS packet is selected and output will be described with reference to the flowchart shown in FIG.
[0056]
When the operation of the data transmission apparatus 1 is started, first, in step S1 shown in FIG. 2, the value of the hold count P and the value of the reference address A of the interleave table are set to “0” by the output determination unit 17. Each value is initialized. The hold count P is a value indicating the relationship between the number of times that the priority output request is input to the output determination unit 17 and the number of times that the output of the null packet is ignored, and is “1” when the priority output request is input. ”Is added and“ 1 ”is subtracted when the output of the null packet is ignored.
[0057]
Next, in step S2, the output determination unit 17 determines whether or not a priority output request is input from a CPU or the like. As a result of the determination, if a priority output request has been input, the process proceeds to the next step S3, and if not, the process proceeds to step S7.
[0058]
In step S3, the output determination unit 17 adds “1” to the value of the hold count P.
[0059]
Next, in step S 4, the output determination unit 17 issues an output request to the fourth TS packet buffer 16 and controls the TS packet switching unit 18 to output from the fourth TS packet buffer 16. The priority packet is output to the output buffer 19.
[0060]
Next, in step S5, the output determination unit 17 determines whether a request for stopping the output operation of the TS packet is input from the CPU or the like. If the result of this determination is that a stop request has been input, the TS packet output operation is stopped. If no stop request has been input, the process proceeds to step S6.
[0061]
In step S <b> 6, the output determination unit 17 determines whether or not the TS packet pulse is input to the counter 21 and the count value is output, and it is time to send the next TS packet. If the result of this determination is that a TS packet pulse has been input, the process returns to step S2 to operate to output the next TS packet. If the TS packet pulse is not input, the determination is repeated until it is input.
[0062]
On the other hand, in step S7, the output determination unit 17 adds the value of the reference address A and refers to the interleave table held in the memory unit 20 to obtain the selection destination described in the address A in the interleave table. To do.
[0063]
Next, in step S8, the output determination unit 17 determines whether or not the value of the hold count P is “0”. As a result of this determination, if the value is not “0”, the process proceeds to the next step S9, and if the value is “0”, the process proceeds to step S10.
[0064]
In step S9, the output determination unit 17 issues an output request to the TS packet buffer corresponding to the selection destination acquired in step S7 among the first to third TS packet buffers 13, 14, and 15, and The TS packet switching unit 18 is controlled to output the TS packet or null packet output from the TS packet buffer to the output buffer, and the process proceeds to step S5.
[0065]
On the other hand, in step S10, the output determination unit 17 determines whether or not the TS packet buffer corresponding to the selection destination is the third TS packet buffer, that is, whether or not the TS packet to be output next is a null packet. judge. As a result of this determination, if the next output is not a null packet, the process proceeds to step S9. If the next output is a null packet, the process proceeds to step S11.
[0066]
In step S11, the output determination unit 17 subtracts “1” from the value of the hold count P, and advances the process to step S7 without outputting a null packet.
[0067]
The data transmission device 1 according to the first embodiment operates as described above, so that TS packets are sequentially output to the output buffer 19 and the TS packets stored in the output buffer 19 are sequentially used as a transport stream. Send it out.
[0068]
In the data transmission device 1, the output determination unit 17 operates in the flow of steps S7, S8, and S9 or the flow of steps S7, S10, and S9 in the flowchart shown in FIG. TS packets or null packets in which ESs are multiplexed in this order are output to the output buffer 19, and TS packets are sent out as a transport stream in this output order.
[0069]
The data transmission apparatus 1 operates in the flow of steps S2, S3, and S4, so that when a priority output request is input to the output determination unit 17, the priority packet is output in preference to the reference of the interleave table. The data is output to the buffer 19, and this priority packet is transmitted as a transport stream.
[0070]
In the data transmission apparatus 1, the number of times the priority packet is sent is counted by the value of the hold count P, and the value of the hold count P is “0” by operating in the flow of steps S8, S10, and S11. When it is not (when it is just after sending the priority packet), the output of the null packet is ignored. However, even immediately after sending the priority packet, if the next output target is a TS packet other than the null packet, the TS packet is converted into an interleave table by operating in the flow of steps S8, S10, and S9. Output in the order shown in.
[0071]
That is, the data transmission apparatus 1 operates as shown in the flowchart of FIG. 2, thereby sending TS packets as a transport stream in the output order shown in FIG. 3, for example. In the interleave table shown in FIG. 3, the first TS packet buffer 13 of the output determination unit 17 is arranged so that a TS packet in which ES of video data is multiplexed is output at a position indicated by “V”. The second TS packet buffer 14 is selected by the output determination unit 17 so that a TS packet in which an ES of audio data is multiplexed is output at a position indicated by “A”. It is described as. Further, the third TS packet buffer 15 is described as a selection destination of the output determination unit 17 so that a null packet is output at a position indicated by “N”.
[0072]
As apparent from FIG. 2, the data transmission apparatus 1 outputs TS packets or null packets in which ESs are multiplexed in the output order shown in the interleave table held in the memory unit 19. Is sent out as a transport stream.
[0073]
In addition, when a priority output request is input to the output determination unit 17 at time T1 in FIG. 2, the data transmission apparatus 1 immediately outputs a priority packet in preference to the output order shown in the interleave table. ing. In addition, after a priority output request is input at time T1, at time T2 when a description for outputting a null packet appears in the interleave table, the output of the null packet is ignored and the next TS indicated in the interleave table is displayed. The packet is output. That is, the data transmission apparatus 1 does not send out null packets by the amount of sending priority packets with priority over the interleave table.
[0074]
Therefore, even if the data transmission apparatus 1 sends priority packets in preference to the interleave table, the TS packet in which video data ESs are multiplexed and the TS in which audio data ESs are multiplexed. The packet output interval can be kept constant and output.
[0075]
In the example shown in FIG. 2, priority packets are inserted and output between successive outputs of TS packets in which ES of video data is multiplexed. Hereinafter, this point will be described.
[0076]
ES of video data and audio data is output as a transport stream at a high rate, and an output rate of PES is defined. However, since overhead is involved when these PESs are packetized by the first and second TS packetizing units 11 and 12, TS packets obtained by multiplexing ESs of video data and audio data are used as transport streams. There is a sufficient margin in the transmission rate. A receiving apparatus that receives a transport stream generally uses a buffer when demultiplexing and restoring to ES.
[0077]
Therefore, even if a priority packet is inserted and output between consecutive outputs of TS packets in which ESs of video data are multiplexed, the continuity of these TS packets does not become a problem.
[0078]
Further, in the first embodiment described above, the third and fourth TS packet buffers 15 and 16 are prepared in the data transmission apparatus 1, and a null packet and a priority are respectively given to these TS packet buffers. Packets are temporarily stored.
[0079]
However, in the first embodiment, it is not always necessary to prepare the third and fourth TS packet buffers 15 and 16. Input of a priority output request to the output determination unit 17 by using control by the CPU, a synchronization signal, and the like, switching of the input by the TS packet switching unit 18 and input of the priority packet to the TS packet switching unit 18 If the synchronization is established, the fourth TS packet buffer 16 can be dispensed with. Similarly, the TS packet switching unit 18 is synchronized with the selection to select a null packet as an input destination and the input of the null packet to the TS packet switching unit 18 by using control by the CPU or a synchronization signal. Thus, the third TS packet buffer 15 can be dispensed with.
[0080]
Next, a method for creating the above-described interleave table will be described with a specific example.
[0081]
In the following description, the size (number of elements) of the interleave table to be created is “4096”, and the input ES channel is [Video], [Audio # 0], [Audio # 1], [ It is assumed that there are five channels, [Audio # 2] and [Audio # 3]. Therefore, in the interleave table to be created, the output order of a total of six types of TS packets, in which the null packets are added to the five ES channels, is described. Further, it is assumed that there are a total of four types of priority packets to be output with priority to the interleave table, that is, a PCR packet and a PSI packet, and a “TEXT0” packet and a “TEXT2” packet in which text information is stored. These four types of priority packets are allocated from the amount corresponding to the number of elements of the null packet described in the interleave table.
[0082]
When creating an interleave table, the output order of each TS packet or null packet should be set so that the TS packet transmission interval is substantially constant regardless of which type of TS packet is considered. Is important.
[0083]
First, the output rate of the entire transport stream, which is the final output, is obtained. Further, the ratio of the output rate of TS packets corresponding to each channel of ES to the output rate in the entire transport stream is obtained. At this time, the output rate of the TS packet corresponding to each channel of the ES is an output rate that takes into account the overhead that occurs until the ES or PES is transmitted as a transport stream.
[0084]
Next, an output rate with a slight margin is determined for the output rate of the TS packet for each ES obtained.
[0085]
Here, the output rate of the entire transport stream is set to R TS For example, the output rate of a TS packet formed by multiplexing the ES channel of [Video] is R V N number of elements to be described in the interleave table for this type of TS packet V The output rate corresponding to one element is R TS Since it is / 4096, it can be expressed as shown in Equation 4 below. However, in the following formula 4, [x] represents a maximum integer not exceeding x.
[0086]
[Expression 4]
Figure 0003633535
Then, in the above equation 4, the actual output rate of the TS packet formed by multiplexing the [Video] ES channel is determined as R in consideration of the increase in the output rate due to the rounded fraction. V 'Then this R V 'Can be expressed as shown in Equation 5 below.
[0087]
[Equation 5]
Figure 0003633535
In the above description, the TS packet obtained by multiplexing the [Video] ES channel is calculated. Similarly, the actual output rate is calculated for the TS packet obtained by multiplexing other ES channels, and the total of these is calculated. Output rate R for the entire transport stream TS Make sure that it does not exceed.
[0088]
Next, for example, according to the algorithm shown in the flowchart of FIG. 4, the number of elements described in the interleave table is set for TS packets multiplexed with ESs and null packets. In the following, the above-described value NV is generalized to N en It expresses. However, n indicates the type of TS packet in which ES is multiplexed and does not include a null packet. [En] indicates a TS packet in which the nth ES is multiplexed. In addition, N en Satisfies the relationship of Equation 6 shown below.
[0089]
[Formula 6]
Figure 0003633535
First, in step S20 shown in FIG. en The values of [4096-N en ] And the value of the variable i is set to [0] and initialization is performed.
[0090]
Next, in step S21, the intermediate value S en The value of [S en + N en ] Is set.
[0091]
Next, in step S22, the value of the variable k is set to [0].
[0092]
Next, in step S23, the kth intermediate value S ek It is determined whether or not the value of [4096] is greater than or equal to [4096]. If the result of this determination is [4096] or more, the process proceeds to step S24, and if it is less than [4096], the process proceeds to step S27.
[0093]
In step S24, the k-th intermediate value S ek The value of [S ek −4096], and information indicating [ek] is set as the i-th element (table {i}) of the interleave table.
[0094]
Next, in step S25, the value of the variable i is set to [i + 1].
[0095]
Next, in step S26, it is determined whether or not the value of the variable i is [4096] or more. If the result of this determination is [4096] or more, all elements in the interleave table have been set, and the setting operation is terminated. If it is less than [4096], the process returns to step S21 in order to set the next element in the interleave table.
[0096]
On the other hand, in step S23 described above, the kth intermediate value S ek Is less than [4096], the variable k is set to [k + 1] in step S27.
[0097]
Next, in step S28, it is determined whether or not the value of the variable k is larger than [n]. If the result of this determination is [n] or less, the process returns to step S23, and if it is greater than [n], the process proceeds to step S29.
[0098]
In step S29, information indicating a null packet is set as the i-th element (table {i}) of the interleave table.
[0099]
By using the algorithm as described above, each element of the interleave table can be set. Table 1 below shows the results of analyzing how the TS packet and the null packet in which each ES is multiplexed are transmitted for the interleave table set in this way.
[0100]
[Table 1]
Figure 0003633535
As shown in Table 1 above, by setting the interleave table as described above, it is set so that TS packets in which each ES is multiplexed and null packets are output at a desired output interval. can do. Further, this output interval can be set to be substantially constant for each TS packet.
[0101]
[Second Embodiment]
The present invention can be applied to a data transmission apparatus 2 illustrated in FIG.
[0102]
The data transmission apparatus 2 according to the second embodiment of the present invention is an MPEG-2 Systems (ITU-T H.222.0, ISO / IEC 13818-1), similarly to the data transmission apparatus 1 shown in FIG. A data stream defined by MPEG-2 Systems (ITU-T H.222.0, ISO / IEC 13818-1) in accordance with a predetermined transmission format for a specified transport packet (hereinafter referred to as “TS packet”). Data is transmitted after being converted to (transport stream).
[0103]
As a specific configuration, as shown in FIG. 5, the data transmission apparatus 2 includes first and second packetizing units 31 and 32, and first, second, and third TS packet buffers 33 and 34. , 35, an output determination unit 36, a TS packet switching unit 37, an output buffer 38, a table data conversion unit 39, a memory unit 40, and a counter 41.
[0104]
The configurations and operations of the first packetization unit 31, the second packetization unit 32, the third TS packet buffer 35, the TS packet switching unit 37, the output buffer 38, the memory unit 40, and the counter 41 are respectively 1 is the same as that of the first packetizing unit 11, the second packetizing unit 12, the fourth TS packet buffer 16, the TS packet switching unit 18, the output buffer 19, the memory unit 20, and the counter 21 shown in FIG. Therefore, detailed description thereof is omitted here.
[0105]
The first and second TS packet buffers 33 and 34 respectively store the input TS packets, and when the output request from the output determination unit 36 is input, the stored TS packets are input to the TS packet switching unit 37. Output. The first and second TS packet buffers 33 and 34 output a null packet to the TS packet switching unit 37 when the TS packet is not accumulated.
[0106]
In the data transmission apparatus 2, a case is shown in which two TS packet buffers (first and second TS packet buffers 33 and 34) in which TS packets generated from the ES are stored are arranged. Alternatively, TS packets generated from a plurality of types of ES may be transmitted as a transport stream, a plurality of TS packet buffers may be prepared, and TS packets may be stored for each ES.
[0107]
The output determination unit 36 issues output requests to the first and second TS packet buffers 33 and 34 in a predetermined order, and controls the TS packet switching unit 37 to input an input destination of the TS packet switching unit 37. Switch. The output determination unit 36 makes an output request according to the signal output from the table data conversion unit 39.
[0108]
The table data conversion unit 39 outputs the type of TS packet corresponding to the input of the interleave table held in the memory unit 40 as a conversion output. Specifically, some or all of the output order data held in the interleave table is given redundancy, and the table data conversion unit 39 indicates the correspondence between the redundant data in the interleave table and the packet type. In accordance with the table conversion information, input and output are converted in synchronization with a synchronization signal indicating a time unit of the multiplexing process. This table data conversion information is written in by the CPU or the like in synchronization with a synchronization signal indicating a time unit of multiplexing processing.
[0109]
Next, operations of the counter 41, the memory unit 40, the table data conversion unit 39, and the output determination unit 36 will be described with reference to the flowchart shown in FIG. In the flowchart shown in FIG. 6, only the processes corresponding to the processes in steps S7 to S11 shown in FIG. 2 are different. Therefore, the processes corresponding to the processes in steps S7 to S11 (step S37) will be described below. Only step 41) will be described, and the description of the other steps will be omitted.
[0110]
In step S37, the output determination unit 36 increases the value of the reference address A by “1”. Then, using the table conversion information, the table data conversion unit 39 converts the data D [A] of the interleave table corresponding to the reference address A into the packet type T [D [A]], and the packet type T [D Information about [A]] is output to the output determination unit 36. As a result of incrementing the reference address A, the reference address A becomes the maximum value A of the reference address A. max When the value reaches the value, the output determination unit 36 sets the value of the reference address A to “0”.
[0111]
Next, in step S38, the output determination unit 36 determines whether or not the value of the hold count P is “0”. As a result of this determination, if the value is “0”, the process proceeds to the next step S39, and if the value is not “0”, the process proceeds to step S40.
[0112]
In step S39, the output determining unit 36 outputs an output request to the TS packet buffer corresponding to the packet type T [D [A]] acquired in step S37 out of the first and second TS packet buffers 33 and 34. In addition, the TS packet switching unit 18 is controlled to output the TS packet or null packet output from the TS packet buffer to the output buffer, and the process proceeds to step S35.
[0113]
On the other hand, in step S40, the output determination unit 36 determines whether or not the packet type T [D [A]] is a null packet. As a result of the determination, if the packet type T [D [A]] is not a null packet, the process proceeds to step S39. If the packet type T [D [A]] is a null packet, the process proceeds to step S41.
[0114]
In step S41, the output determination unit 36 subtracts “1” from the value of the hold count P, and proceeds to step S37 without outputting a null packet.
[0115]
Next, the actual operation of the data transmission apparatus 2 according to the second embodiment of the present invention will be described with a specific example.
[0116]
In the data transmission device 2 according to the second embodiment, the interleave table data is held in the memory unit 40 as a numerical value of binary N digits. At this time, the maximum number 2 that can be expressed by the interleave table data n However, if it is smaller than the maximum value of the type of TS packet, that value is assigned as a redundant data packet.
[0117]
Here, the rate of the elementary stream of video changes in the range of 16 M to 24 Mbps, and the packet type is [null] [video] [audio # 0] [audio # 1] [audio # 2] [audio # 3]. The operation of the data transmission apparatus 2 will be described by taking as an example a case where there are 10 types of [PSI] [PCR] [TEXT0] [TEXT1].
[0118]
In this case, the packet types set in the table are [Null] [Video] [Audio # 0] [Audio # 1] [Audio # 2] [Audio # 3], and [PSI] [PCR] [TEXT0]. ] [TEXT1] is allocated from the amount set to null. Since the number of packet types is 10, the number of bits per table data is 4 bits.
[0119]
Now, consider dividing the [video] packet into a plurality of packets. Assume that the packet of [video] is divided into [integer power of 2 + 1] table data, one is assigned to the table data indicating the lowest rate, and the difference between the highest rate and the lowest rate is an integer power of 2 [2 K ] Is divided into [A], [A] is two, [A × 2], [A × 2 2 ], ..., [A × 2 K-1 ] Is assigned to each. For example, assuming that the minimum rate of [Video] is 16 Mbps, the maximum rate is 24 Mbps, and K = 3, it is possible to specify the [A] rate interval (in this case, 1 Mbps interval) from the minimum rate to the maximum rate. become. Specifically, each value from the lowest rate to the highest rate can be obtained according to the algorithm shown in FIG.
[0120]
In FIG. 7, first, in step S51, the 0th bit rate R [0] is changed to [(R max -R min ) / 2 K ] Is set. Where R max Is the highest bit rate, R min Is the minimum bit rate.
[0121]
Next, in step S52, "1" is set to the value of the counter N that counts the bit rate number.
[0122]
Next, in step S53, the Nth bit rate is set to a value [R [N-1] × 2] obtained by multiplying the [N−1] th bit rate by 2.
[0123]
Subsequently, in step S54, it is determined whether or not the value of the counter N has reached the division number K. If not, the process proceeds to step S55. On the other hand, if it has reached, the process proceeds to step S56.
[0124]
In step S55, the value of the counter N is incremented by “1”, and the process returns to step S53.
[0125]
In step S56, the value of the [K + 1] -th bit rate is set to the lowest bit rate R. min To complete the series of processing.
[0126]
In general, the assumed minimum bit rate is R min , The highest bit rate is R max , And when the bit rate is R, [A], [A × 2],..., [A × 2 K-1 ] Conversion data setting method can be determined by each digit when X obtained by the following formula 7 is expressed in binary (2 0 And [A], 2 1 And [Ax2] ... 2 K-1 And [A × 2 K-1 ] Correspond to each. However, [R = R max ] And everything including the second [A] is selected).
[0127]
[Expression 7]
Figure 0003633535
Here, [x] represents the maximum integer that does not exceed [x].
[0128]
FIG. 10 shows an example of setting table conversion information. In this example, table data 1 to 5 having redundancy are assigned so as to be converted into [video] packets, and the bit rates of [video] are 24 Mbps, 20 Mbps, 19 Mbps, 18 Mbps, and 16 Mbps, respectively. A setting example is shown. For example, in the case of 24 Mbps, [Video 1] to [Video 5] are used, whereas in the case of 20 Mbps, [Video 3] to [Video 5] are unused, and in the case of 19 Mbps, [Video 3] is unused. Video 2] and [Video 5] are unused.
[0129]
Finally, with reference to FIG. 8 and FIG. 9, the output status of the [Video] TS packet using the data transmission apparatus according to the related art and the second embodiment will be described.
[0130]
FIG. 8 and FIG. 9 are schematic diagrams showing the output status of [Video] TS packets by the data transmission apparatus according to the conventional and second embodiments, respectively, and the maximum rate of [Video] TS packets is 24 Mbps. The interleaving of 20 Mbps and 19.5 Mbps packets is shown.
[0131]
As can be seen from FIG. 8, in the conventional data transmission apparatus, in the case of a 20 Mbps packet, the multiplexing buffer starts multiplexing at the maximum rate: 24 Mbps from the beginning of the frame, which is a multiplexing time unit. / 6] The transmission of all the packets A is completed within the frame time (time T1), and thereafter, the [null] packet B is transmitted. Further, in the case of a 19.5 Mbps packet, transmission of all packets A is completed in a shorter time T2, and thereafter a [null] packet B is transmitted.
[0132]
On the other hand, in the data transmission apparatus according to the second embodiment of the present invention, as shown in FIG. 9, in the case of 20 Mbps, a packet D having a redundancy that requires one frame time is transmitted. become. That is, the portions corresponding to the packets of [Video 3] to [Video 5] in the packet C in the case of 24 Mbps are set to [Null] packets in 20 Mbps, respectively.
[0133]
Further, FIG. 9 shows an example in which a packet D having the same redundancy as that in the case of 20 Mbps is transmitted in the case of 19.5 Mbps. Therefore, although it ends earlier by the difference from the packet of 20 Mbps, that is, by 0.5 Mbps, it can be clearly seen that it is improved compared to the conventional data transmission apparatus.
[0134]
In the example shown in this figure, in the case of a 19.5 Mbps packet, the rate is set as 20 Mbps. However, if the CPU or the like can sufficiently process in a multiplexing unit (frame), 19 Mbps. It is also possible to achieve a rate of 19.5 Mbps by alternately setting and 20 Mbps for each frame.
[0135]
Also, since the multiplexing unit differs depending on the type of each packet, when the rate assigned for [video] is used for [voice], the multiplexing unit can be set with a sufficient margin. is necessary. For example, in the example shown in FIG. 10, the [Video] rate is changed from 24 Mbps to 20 Mbps, and [Audio # 4] and [Audio # 5] are added to the table data 4 and 5 in order to add 2ch [Audio] when the rate is 20 Mbps. ], First, the [video] rate is reduced to 20 Mbps, then [voice] is assigned, and then an actual [voice] TS packet is created.
[0136]
[Other Embodiments]
Finally, the above-described embodiment is an example of the present invention. For this reason, the present invention is not limited to the above-described embodiment. By multiplexing elementary streams obtained by compressing and encoding data, packets are generated, and the packets are transmitted as data streams. This is a technical idea that can be widely applied to data transmission apparatuses that transmit data.
[0137]
Each unit of the data transmission apparatus 1 may be configured by hardware using various semiconductor elements or the like, or may be configured by software describing a predetermined operation in an information processing apparatus such as a computer.
[0138]
Of course, various modifications can be made according to the design and the like as long as they do not depart from the technical idea of the present invention.
[0139]
【The invention's effect】
The data transmission apparatus according to the present invention outputs packets stored in a plurality of buffer means in an output order preset in an interleave table, and stores predetermined information when a priority output request is made. Packets can be output in preference to the output order shown in the interleave table. Also, when a packet is output in preference to the output order shown in the interleave table, the output of the null packet that appears in the interleave table immediately after this is ignored, so the output interval of packets other than this null packet is constant. Can be kept in.
[0140]
Therefore, the data transmission apparatus according to the present invention does not need to prepare a plurality of buffers for accumulating packets storing predetermined information, and can reduce the cost by simplifying the circuit configuration. Even when a packet storing predetermined information is output at a low rate, the packet can be output flexibly as necessary. Transmission can be performed. In addition, when a packet is output with priority over the interleave table, the output of the null packet immediately after this is ignored, so packets other than this null packet are output with a constant output interval according to the type of the packet. can do.
[0141]
In addition, the data transmission apparatus according to the present invention can provide redundancy to the interleave table, refer to the table conversion information when the redundant data appears, and transmit a packet corresponding to the index. The index is written in the apparatus by a CPU or the like, and the contents are updated at a multiplexing cycle.
Therefore, the data transmission apparatus according to the present invention can suppress the local increase in the data rate with respect to the rate change. Also, in processing such as data transmission that is not related to time, the rate can be operated without first being assigned.
[Brief description of the drawings]
FIG. 1 is a functional block diagram of a data transmission apparatus according to a first embodiment to which the present invention is applied.
FIG. 2 is a flowchart for explaining the operation of the data transmission apparatus shown in FIG. 1;
3 is a schematic diagram for explaining a state in which TS packets and priority packets are transmitted as a transport stream by the data transmission apparatus shown in FIG. 1. FIG.
4 is a flowchart showing an example of an algorithm for setting an interleave table used in the data transmission apparatus shown in FIG. 1. FIG.
FIG. 5 is a functional block diagram of a data transmission apparatus according to a second embodiment to which the present invention is applied.
6 is a flowchart for explaining the operation of the data transmission apparatus shown in FIG. 5;
7 is a flowchart showing an example of an algorithm for setting a rate by the data transmission apparatus shown in FIG.
FIG. 8 is a schematic diagram showing an output state of a video TS packet by a conventional data transmission apparatus.
9 is a schematic diagram showing an output state of a video TS packet by the data transmission apparatus shown in FIG.
10 is a diagram showing an example of table conversion information in the data transmission apparatus shown in FIG.
FIG. 11 is a functional block diagram of a conventional data transmission apparatus.
[Explanation of symbols]
DESCRIPTION OF SYMBOLS 1,2 ... Data transmission apparatus 11,31 ... 1st TS packetization part 12,32 ... 2nd TS packetization part 13,33 ... 1st TS packet buffer, 14,33 ... 2nd TS packet buffer, 15, 35 ... third TS packet buffer, 16 ... fourth TS packet buffer, 17, 36 ... output determining unit, 18, 37 ... TS packet switching unit, 19, 38 ... output buffer, 20, 40: Memory unit, 21, 41 ... Counter, 39 ... Table data conversion unit

Claims (2)

データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置において、
前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積される複数のバッファ手段と、
前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序を示すインタリーブテーブルを保持するメモリ手段と、
前記メモリ手段に保持されたインタリーブテーブルを参照して、このインタリーブテーブルに示された出力順序で前記各バッファ手段に蓄積されるパケット又はヌルパケットを出力する出力手段とを備え、
前記出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力されたときに、このパケットを前記インタリーブテーブルに示された出力順序に優先して出力し、前記優先出力要求が入力された直後に前記インタリーブテーブルにおいて出現するヌルパケットの出力を無視すること
を特徴とするデータ伝送装置。
In a data transmission apparatus for transmitting data by multiplexing elementary streams obtained by compressing and encoding data, generating packets, and sending the packets as data streams,
A plurality of buffer means for storing the packets for each elementary stream;
Memory means for holding an interleave table indicating the output order of packets and null packets stored in each buffer means;
Referring to an interleave table held in the memory means, and an output means for outputting packets or null packets stored in the buffer means in the output order shown in the interleave table,
The output means outputs the packet in preference to the output order shown in the interleave table when a priority output request for requesting that a packet storing predetermined information is output with priority is input. And a data transmission device that ignores an output of a null packet that appears in the interleave table immediately after the priority output request is input.
データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置において、
前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積される複数のバッファ手段と、
前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序に冗長度を持たせたインタリーブテーブルを保持するメモリ手段と、
前記インタリーブテーブルの冗長データとパケット種別との対応関係を示すテーブル変換情報に従って、前記インタリーブテーブルの冗長データを所定のパケット種別に変換するテーブルデータ変換手段と
前記テーブルデータ変換手段による変換結果を参照して、前記各バッファ手段に蓄積されるパケットを出力する出力手段とを備え、
前記出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力された場合には優先パケット要求に基づいたパケットを出力し、前記優先出力要求が入力された直後の前記パケット種別がヌルパケットであるパケットの出力を無視すること
を特徴とするデータ伝送装置。
In a data transmission apparatus for transmitting data by multiplexing elementary streams obtained by compressing and encoding data, generating packets, and sending the packets as data streams,
A plurality of buffer means for storing the packets for each elementary stream;
Memory means for holding an interleave table with redundancy in the output order of packets and null packets stored in each buffer means;
Refer to the table data conversion means for converting the redundant data of the interleave table into a predetermined packet type according to the table conversion information indicating the correspondence between the redundant data of the interleave table and the packet type, and the conversion result by the table data conversion means. Output means for outputting packets accumulated in the buffer means,
The output means outputs a packet based on the priority packet request when a priority output request requesting that a packet storing predetermined information is preferentially output is input, and the priority output request is input A data transmission apparatus characterized by ignoring the output of a packet whose packet type is a null packet immediately after being transmitted.
JP2001273767A 2000-09-11 2001-09-10 Data transmission device Expired - Fee Related JP3633535B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2001273767A JP3633535B2 (en) 2000-09-11 2001-09-10 Data transmission device

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2000275236 2000-09-11
JP2000-275236 2000-09-11
JP2001273767A JP3633535B2 (en) 2000-09-11 2001-09-10 Data transmission device

Publications (2)

Publication Number Publication Date
JP2002158710A JP2002158710A (en) 2002-05-31
JP3633535B2 true JP3633535B2 (en) 2005-03-30

Family

ID=26599671

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2001273767A Expired - Fee Related JP3633535B2 (en) 2000-09-11 2001-09-10 Data transmission device

Country Status (1)

Country Link
JP (1) JP3633535B2 (en)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP4837744B2 (en) * 2006-10-31 2011-12-14 パナソニック株式会社 Multiplexer, integrated circuit, multiplexing method, multiplexed program, computer-readable recording medium recording the multiplexed program, and computer-readable recording medium recording the multiplexed stream
JP2016116178A (en) * 2014-12-17 2016-06-23 ソニー株式会社 Communication device and communication method

Also Published As

Publication number Publication date
JP2002158710A (en) 2002-05-31

Similar Documents

Publication Publication Date Title
US6327421B1 (en) Multiple speed fast forward/rewind compressed video delivery system
US20060039363A1 (en) Voice architecture for transmission over a shared, contention based medium
KR100649336B1 (en) Digital signal processing and signal format
JPH06253277A (en) Method and equipment for controlling buffer for variable-bit-rate channel
US7310354B2 (en) Synchronous data link signal generator
US5784277A (en) Real-time audio packet layer encoder
KR19990068138A (en) Digital signal multiplexing method and apparatus, digital signal transmission method and apparatus, digital signal recording method and apparatus and recording medium
JPH0730886A (en) Method and device for processing picture and audio signal
JP3633535B2 (en) Data transmission device
US20110122320A1 (en) Broadcast contents data transmitting apparatus and contents data transmitting method
JPH08172410A (en) Time division multiplex communication system and equipment for the system
JP3891035B2 (en) Media multiplexing apparatus and encoding apparatus using the same
US7623470B2 (en) Method and apparatus for adjusting output bit rate of video packet
US7130265B1 (en) Data multiplexing device and data multiplexing method, and data transmitter
KR100962083B1 (en) Method and system for converting a first data stream into a second data stream
JPH11341056A (en) Multiplexing device
US7623541B2 (en) Apparatus for transmitting an anisochronic data stream on an isochronic transmission route
US7180907B2 (en) Apparatus and method for transmitting an anisochronic data stream on an isochronic transmission route
JP4216553B2 (en) Digital broadcast signal switching device and digital broadcast signal switching method
US7050460B1 (en) Method and apparatus for multiplexing data streams using time constraints
JP2005519541A5 (en)
KR100414638B1 (en) Method for producing Data transmission rate and Apparatus for transmitting
JPH11340936A (en) Method and device for multiplexing data
JP4206559B2 (en) Signal multiplexing method and apparatus
KR100202019B1 (en) Pcr signal generator of system coder

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20041119

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

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20041220

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

Free format text: PAYMENT UNTIL: 20090107

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20090107

Year of fee payment: 4

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

Free format text: PAYMENT UNTIL: 20100107

Year of fee payment: 5

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

Free format text: PAYMENT UNTIL: 20110107

Year of fee payment: 6

LAPS Cancellation because of no payment of annual fees