(57)【特許請求の範囲】
【請求項１】
データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置において、
前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積される複数のバッファ手段と、
前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序を示すインタリーブテーブルを保持するメモリ手段と、
前記メモリ手段に保持されたインタリーブテーブルを参照して、このインタリーブテーブルに示された出力順序で前記各バッファ手段に蓄積されるパケット又はヌルパケットを出力する出力手段とを備え、
前記出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力されたときに、このパケットを前記インタリーブテーブルに示された出力順序に優先して出力し、前記優先出力要求が入力された直後に前記インタリーブテーブルにおいて出現するヌルパケットの出力を無視すること
を特徴とするデータ伝送装置。
【請求項２】
データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置において、
前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積される複数のバッファ手段と、
前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序に冗長度を持たせたインタリーブテーブルを保持するメモリ手段と、
前記インタリーブテーブルの冗長データとパケット種別との対応関係を示すテーブル変換情報に従って、前記インタリーブテーブルの冗長データを所定のパケット種別に変換するテーブルデータ変換手段と
前記テーブルデータ変換手段による変換結果を参照して、前記各バッファ手段に蓄積されるパケットを出力する出力手段とを備え、
前記出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力された場合には優先パケット要求に基づいたパケットを出力し、前記優先出力要求が入力された直後の前記パケット種別がヌルパケットであるパケットの出力を無視すること
を特徴とするデータ伝送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置に関する。
【０００２】
【従来の技術】
近年では、ビデオデータ及びオーディオデータの圧縮伝送規格のひとつであるＭＰＥＧ−２  Ｓｙｓｔｅｍｓ（ＩＴＵ−Ｔ  Ｈ．２２２．０，ＩＳＯ／ＩＥＣ  １３８１８−１）を利用して、デジタル方式によりデータを伝送するデジタル放送が実用化されている。
【０００３】
このようなデジタル放送は、従来から広く利用されているアナログ放送に比べて、高品質なビデオデータやオーディオデータを伝送することができる。また、デジタル方式で伝送することから、ビデオデータやオーディオデータだけでなく、例えばコンピュータや各種の情報端末を介して利用するような各種データをも伝送することができ、様々なコンテンツを組み合わせて多様な放送をすることが容易となる。
【０００４】
ところで、このようなデジタル放送を送信する際に用いられるデータ伝送装置は、送信するデータを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリーム（パケットを時間方向に並べた集合体）として送出することによりデータを伝送している。なお、ＭＰＥＧ−２  Ｓｙｓｔｅｍｓを利用してデータを伝送するデジタル放送では、データストリームのことをトランスポートストリームと称することから、以下の説明においてもトランスポートストリームと記述する。
【０００５】
このとき、データ伝送装置は、ビデオデータのエレメンタリストリーム（ＥＳ：Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）やオーディオデータのＥＳなどを多重化して得られたトランスポート・パケット（以下、ＴＳパケットという。）をトランスポートストリームとして送出する。このように、ＴＳパケットをトランスポートストリームとして送出する手法のひとつとしては、送出するＴＳパケットの種類に応じてその送出順序を示すインタリーブテーブルを参照する、いわゆるテーブル参照方式のデータ多重化方法がある。
【０００６】
ここで、テーブル参照方式が採用された従来のデータ多重化装置の一例について、図１１を参照しながら説明する。
【０００７】
従来のデータ多重化装置は、ビデオデータを圧縮符号化するビデオエンコーダや、オーディオデータを圧縮符号化するオーディオエンコーダと接続されている。そして、これらのエンコーダから、ＭＰＥＧ−２  Ｓｙｓｔｅｍｓの規格におけるＥＳの基本単位であるＰＥＳ（Ｐａｃｋｅｔｉｚｅｄ  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）が、それぞれビデオ用のＴＳパケット化部１００とオーディオ用のＴＳパケット化部１０１とに入力される。
【０００８】
各ＴＳパケット化部１００，１０１では、入力されたＰＥＳをＴＳパケットに分解して、ＴＳパケットを出力する。また、各ＴＳパケット化部１００，１０１から出力されたＴＳパケットは、それぞれビデオ用のＴＳパケットバッファ１０２と、オーディオ用のＴＳパケットバッファ１０３とに入力される。各ＴＳパケットバッファ１０２，１０３は、例えばＦＩＦＯ（Ｆａｓｔ  Ｉｎ  Ｆａｓｔ  Ｏｕｔ）型のメモリ素子により構成されており、入力されたＴＳパケットを蓄積するとともに、出力決定部１０４からの出力要求がなされたときに、蓄積したＴＳパケットを出力する。
【０００９】
また、従来のデータ多重化装置においては、プログラム時刻基準参照値（ＰＣＲ：Ｐｒｏｇｒａｍ  Ｃｌｏｃｋ  Ｒｅｆｅｒｅｎｃｅ）や番組特定情報（ＰＳＩ：Ｐｒｏｇｒａｍ  Ｓｐｅｃｉｆｉｃ  Ｉｎｆｏｒｍａｔｉｏｎ）などのような、デジタル放送の受信時に必要となる所定の情報が格納されたＴＳパケット（ＰＣＲパケット，ＰＳＩパケット）が、ＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などにより生成される。
【００１０】
これらＰＣＲパケットやＰＳＩパケットは、上述したＴＳパケットバッファ１０２，１０３と同様にして構成された複数のＴＳパケットバッファ１０５，１０６に入力され、これらＴＳパケットバッファ１０５，１０６に蓄積される。
【００１１】
一方、出力決定部１０４は、各ＴＳパケットバッファ１０２，１０３，１０５，１０６に対して、所定の順序で出力要求を行い、各ＴＳパケットバッファから出力するＴＳパケットの出力順序を制御する。また、出力決定部１０４は、ＴＳパケット切替部１０７を制御して、各ＴＳパケットバッファからの出力を切り替えて、出力バッファ１０８に出力する。そして、出力バッファ１０８に入力されたＴＳパケットは、この出力バッファ１０８に蓄積された後に、図示しない出力インタフェースに出力されて、この出力インタフェースにより伝送される。
【００１２】
このとき、テーブル参照方式のデータ多重化装置では、出力決定部１０４が、各ＴＳパケットバッファに出力要求を行うに際して、メモリ部１０９に保持されたインタリーブテーブルを参照する。このインタリーブテーブルは、トランスポートストリームとして送出するＴＳパケットの出力順序を示しており、ビデオデータが多重化されたＴＳパケット、オーディオデータが多重化されたＴＳパケット、ＰＣＲパケット、及びＰＳＩパケットなどのように、出力するＴＳパケットの種類に応じて、どのような順序でＴＳパケットを出力するかを示している。
【００１３】
そして、出力決定部１０４は、ＴＳパケットを出力するタイミングを示すＴＳパケットパルスに同期してカウンタ１１０がカウントアップしたカウント値に基づいて、メモリ部１０９に保持されたインタリーブテーブルを参照し、出力要求を行うＴＳパケットバッファを選択するとともに、ＴＳパケット切替部１０７を制御し、インタリーブテーブルに示された出力順序でＴＳパケットを出力する。
【００１４】
【発明が解決しようとする課題】
ところで、上述したようにして伝送するＴＳパケットのうち、ＰＣＲやＰＳＩなどの情報が格納されたＴＳパケット（ＰＣＲパケット，ＰＳＩパケット）は、トランスポートストリーム中に出現する頻度が、一般運用では決められており、ビデオデータやオーディオデータが多重化されたＴＳパケットと比較して、低レートで出力する必要がある。
【００１５】
しかしながら、従来のデータ伝送装置においては、インタリーブテーブルの大きさによって出力レートの下限値が決まってしまい、ＰＣＲパケットやＰＳＩパケットの出力時に伝送帯域を無駄に使用してしまうといった問題がある。
【００１６】
例えば、トランスポートストリーム全体での出力レートが２０Ｍビット／ｓｅｃであり、インタリーブテーブルの大きさ（要素数）が４０９６である場合において、特定の種類のＴＳパケットの出力レートは、このＴＳパケットの出力がインタリーブテーブル中で１回だけ示されている場合に相当することから、その下限値が以下の式１に示すようにして求まる。なお、式中の単位［ｂｐｓ］は、１秒あたりのビット数（ｂｉｔ  ｐｅｒ  ｓｅｃｏｎｄ）を表す。
【００１７】
【数１】
0003633535.tif 000002
一方、ＰＣＲが格納されたＰＣＲパケットを例にとると、このＰＣＲパケットをトランスポートストリームとして送出する頻度は、最大０．１秒に１回までと規定されている。また、ＭＰＥＧ−２  Ｓｙｓｔｅｍｓの規定ではＴＳパケットのデータ長が１８８バイトであることを考慮すると、ＰＣＲパケットの出力レートの下限値は、以下の式２に示すようにして求まる。
【００１８】
【数２】
0003633535.tif 000003
ここで、前記の式１から、インタリーブテーブル中にＰＣＲパケットの出力回数が３回示されている場合は出力レートが４８８２．８×３＝１４６４８．４［ｂｐｓ］となり、４回示されている場合は出力レートが４８８２．８×４＝１９５３１．２［ｂｐｓ］となる。
【００１９】
したがって、前記の式２に示す下限値を満足するためには、ＰＣＲパケットの出力回数が、インタリーブテーブル中に４回なくてはならない。しかしながら、この場合には、以下に示す式３により求まる出力レート分が、必要以上に多く送出されていることとなり、伝送帯域を無駄に使用していることとなる。
【００２０】
【数３】
0003633535.tif 000004
また、データ伝送装置においては、ビデオデータが多重化されたＴＳパケット、オーディオデータが多重化されたＴＳパケット、ＰＣＲパケット、及びＰＳＩパケットなどのように、種類に応じたＴＳパケットの出力間隔を、略々一定とすることが望ましいとされている。しかしながら、従来のデータ伝送装置では、ＴＳパケットの出力順序がインタリーブテーブルにより予め設定されているために、ＰＣＲパケットやＰＳＩパケットなどを柔軟に送出することができず、各ＴＳパケットの出力間隔がずれてしまいやすいといった問題がある。
【００２１】
さらに、従来のデータ伝送装置では、トランスポートストリームとして送出すべき頻度が予め決められているＴＳパケット（ＰＣＲパケット，ＰＳＩパケットなど）がＴＳパケットバッファに書き込まれたタイミングを、出力決定部１０４が知ることができないため、複数のＴＳパケットバッファ１０５，１０６を用意する必要がある。これにより、回路構成が複雑化し、高コスト化を招いてしまうといった問題がある。
【００２２】
さらにまた、従来のデータ伝送装置では、全ての運用において想定されるレートの最大レートでデータを多重化するように設定されているために、例えばエレメンタリストリームのレートが途中で変化する運用を行うような場合には、局所的にデータが多く多重化されてしまい、効率的なデータ伝送を行うことができないといった問題がある。
【００２３】
本発明は、上述の課題に鑑みてなされたものであり、伝送帯域を有効に利用して効率的なデータ伝送を行うことが可能なデータ伝送装置を提供することを目的とする。
【００２４】
【課題を解決するための手段】
本発明に係るデータ伝送装置は、上述の課題を解決するための手段としてデータを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置であり、複数のバッファ手段と、メモリ手段と、出力手段とを備える。
【００２５】
前記複数のバッファ手段は、前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積される。前記メモリ手段は、前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序を示すインタリーブテーブルを保持する。前記出力手段は、前記メモリ手段に保持されたインタリーブテーブルを参照して、このインタリーブテーブルに示された出力順序で前記バッファ手段に蓄積されるパケット又はヌルパケットを出力する。また、前記出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力されたときに、このパケットを前記インタリーブテーブルに示された出力順序に優先して出力し、前記優先出力要求が入力された直後に前記インタリーブテーブルにおいて出現するヌルパケットの出力を無視する。
【００２６】
以上のように構成された本発明に係るデータ伝送装置は、複数のバッファ手段に蓄積されるパケットを、インタリーブテーブルに予め設定された出力順序で出力するとともに、優先出力要求がなされたときに、所定の情報が格納されたパケットを、インタリーブテーブルに示された出力順序に優先して出力することができる。また、インタリーブテーブルに示された出力順序に優先してパケットを出力したときに、この直後にインタリーブテーブルにおいて出現するヌルパケットの出力を無視することから、このヌルパケット以外のパケットの出力間隔を一定に保つことができる。
【００２７】
また、本発明に係るデータ伝送装置は、データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置であり、複数のバッファ手段と、メモリ手段と、テーブルデータ変換手段と、出力手段とを備える。
【００２８】
複数のバッファ手段は、前記パケットが前記エレメンタリストリーム毎にそれぞれ蓄積する。メモリ手段は、前記各バッファ手段に蓄積されるパケット及びヌルパケットの出力順序に冗長度を持たせたインタリーブテーブルを保持する。テーブルデータ変換手段は、前記インタリーブテーブルの冗長データとパケット種別との対応関係を示すテーブル変換情報に従って、前記インタリーブテーブルの冗長データを所定のパケット種別に変換する。出力手段は、前記テーブルデータ変換手段による変換結果を参照して、前記各バッファ手段に蓄積されるパケットを出力する。また、出力手段は、所定の情報が格納されたパケットを優先して出力することを要求する優先出力要求が入力された場合には優先パケット要求に基づいたパケットを出力し、前記優先出力要求が入力された直後の前記パケット種別がヌルパケットであるパケットの出力を無視する。
【００２９】
以上のように構成された本発明に係るデータ伝送装置は、レートの変化に対して局所的にデータレートが高くなることを抑制することができる。また、時間が関係ないデータ伝送等の処理において、そのレートを最初に割り当てること無く運用することができるようになる。
【００３０】
【発明の実施の形態】
［第１の実施形態］
本発明は、図１に示すようなデータ伝送装置１に適用することができる。この本発明の第１の実施形態となるデータ伝送装置１は、ＭＰＥＧ−２  Ｓｙｓｔｅｍｓ（ＩＴＵ−Ｔ  Ｈ．２２２．０，ＩＳＯ／ＩＥＣ  １３８１８−１）で規定されるトランスポート・パケット（以下、ＴＳパケットという。）を所定の伝送フォーマットによりＭＰＥＧ−２  Ｓｙｓｔｅｍｓ（ＩＴＵ−Ｔ  Ｈ．２２２．０，ＩＳＯ／ＩＥＣ  １３８１８−１）で規定されるデータストリーム（トランスポートストリーム）に変換してデータ伝送を行うようになっている。
【００３１】
具体的な構成としては、このデータ伝送装置１は、図１に示すように、第１及び第２のパケット化部１１，１２と、第１，第２，第４のＴＳパケットバッファ１３，１４，１６と、ヌルパケットバッファ１５と、出力決定部１７と、ＴＳパケット切替部１８と、出力バッファ１９と、メモリ部２０と、カウンタ２１とを備える。
【００３２】
第１のパケット化部１１には、ビデオデータを圧縮符号化するビデオエンコーダから、ＭＰＥＧ−２  Ｓｙｓｔｅｍｓの規格におけるエレメンタリストリーム（ＥＳ：Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）の基本単位であるＰＥＳ（Ｐａｃｋｅｔｉｚｅｄ  Ｅｌｅｍｅｎｔａｒｙ  Ｓｔｒｅａｍ）が入力される。そして、第１のパケット化部１１は、入力されたＰＥＳをＴＳパケットに分解して、ＴＳパケットを第１のＴＳパケットバッファ１３に出力する。
【００３３】
なお、ビデオエンコーダやオーディオエンコーダは、本発明の本質ではなく、従来と同等の構成とすることができるため、図１中での図示と詳細な説明とを省略する。
【００３４】
第２のパケット化部１２は、第１のパケット化部１１と同様に、オーディオデータを圧縮符号化するオーディオエンコーダからＰＥＳが入力されて、このＰＥＳをＴＳパケットに分解して、ＴＳパケットを第２のＴＳパケットバッファ１４に出力する。
【００３５】
第１及び第２のＴＳパケットバッファ１３，１４は、入力されたＴＳパケットをそれぞれ蓄積する。すなわち、第１のＴＳパケットバッファ１３には、ビデオデータを含むＥＳのＴＳパケットが蓄積され、第２のＴＳパケットバッファ１４には、オーディオデータを含むＥＳのＴＳパケットが蓄積されることとなる。そして、第１及び第２のＴＳパケットバッファ１３，１４は、後述するようにして出力決定部１７からの出力要求が入力されたときに、蓄積したＴＳパケットをＴＳパケット切替部１８に出力する。
【００３６】
また、第３のＴＳパケットバッファ１５は、ヌルパケットが入力されるとともに、このヌルパケットを蓄積する。そして、後述するようにして出力決定部１７からの出力要求が入力されると、蓄積したヌルパケットをＴＳパケット切替部１８に入力する。このヌルパケットは、図示を省略するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）などにより生成され、主として出力レートを調整する目的でトランスポートストリームとして送出されるもので、特定のデータが多重化されたものではなく、無意味な内容を有する。
【００３７】
さらに、第４のＴＳパケットバッファ１６は、所定の情報が格納されたＴＳパケットが入力されるとともに、このＴＳパケットを蓄積する。そして、後述するようにして出力決定部１７からの出力要求が入力されると、蓄積したＴＳパケットをＴＳパケット切替部１８に出力する。
【００３８】
この第４のＴＳパケットバッファ１６に入力されるＴＳパケットは、ヌルパケットと同様にしてＣＰＵなどにより生成され、プログラム時刻基準参照値（ＰＣＲ：Ｐｒｏｇｒａｍ  Ｃｌｏｃｋ  Ｒｅｆｅｒｅｎｃｅ）や番組特定情報（ＰＳＩ：Ｐｒｏｇｒａｍ  Ｓｐｅｃｉｆｉｃ  Ｉｎｆｏｒｍａｔｉｏｎ）などのような、デジタル放送の受信時に必要となる所定の情報が格納されたＴＳパケットである。
【００３９】
尚、以下では、ＰＣＲが格納されたＴＳパケットをＰＣＲパケットを称し、ＰＳＩが格納されたＴＳパケットをＰＳＩパケットと称する。また、このようなＴＳパケットは、トランスポートストリームとして送出すべき頻度が予め決められており、当該実施の形態ではビデオデータやオーディオデータのＴＳパケットに優先して出力される。そこで、以下では、このようなＴＳパケットを総称して優先パケットと称する。
【００４０】
また、第１乃至第４のＴＳパケットバッファ１３，１４，１５，１６は、例えばＦＩＦＯ（Ｆａｓｔ  Ｉｎ  Ｆａｓｔ  Ｏｕｔ）型のメモリ素子によって構成することができる。なお、図１に示す本実施の形態では、ＥＳから生成されたＴＳパケットが蓄積されるＴＳパケットバッファが２つ（第１及び第２のＴＳパケットバッファ１３，１４）配設される場合を示しているが、複数種類のＥＳから生成したＴＳパケットをトランスポートストリームとして送出し、複数のＴＳパケットバッファを用意して、ＴＳパケットがＥＳ毎にそれぞれ蓄積されるとしてもよい。具体的には、例えばビデオデータのＥＳが１チャンネル、オーディオデータのＥＳが４チャンネル入力される場合には、ＥＳ用のＴＳパケットバッファを５つ用意すればよい。
【００４１】
出力決定部１７は、第１〜第３のＴＳパケットバッファ１３，１４，１５に対して所定の順序で出力要求を行うとともに、ＴＳパケット切替部１８を制御して、このＴＳパケット切替部１８の入力先を切り替える。
【００４２】
ＴＳパケット切替部１８は、出力決定部１７により切り替えられた入力先から入力されるＴＳパケットを出力バッファ１９に出力する。出力バッファ１９は、例えばＦＩＦＯ型のメモリ素子によって構成されており、入力されたＴＳパケットを蓄積するとともに、蓄積したＴＳパケットを順次出力インタフェース（図示せず。）に出力する。そして、出力インタフェースは、出力バッファ１９から出力されるＴＳパケットを、順次トランスポートストリームに送出して伝送する。
【００４３】
なお、出力インタフェースは、本発明の本質ではなく、従来と同等の構成とすることができるため、図１中での図示と詳細な説明とを省略する。
【００４４】
ここで、出力決定部１７は、上述したように出力要求を行うに際して、メモリ部２０に保持されたインタリーブテーブルを参照する。
【００４５】
このメモリ部２０は、例えば各種半導体メモリ素子により構成されており、トランスポートストリームとして送出するＴＳパケットの出力順序を示すインタリーブテーブルを保持している。このインタリーブテーブルには、第１及び第２のＴＳパケットバッファ１３，１４から出力される、ＥＳが多重化されてなるＴＳパケット、及び第３のＴＳパケットバッファ１５から出力されるヌルパケットの出力順序が示されている。
【００４６】
また、メモリ部２０は、カウンタ２１に接続されている。カウンタ２１は、トランスポートストリームとしてＴＳパケットを送出するタイミングを示すＴＳパケットパルスが入力されており、このＴＳパケットパルスに同期してカウントアップされたカウント値をメモリ部２０に出力する。
【００４７】
メモリ部２０は、カウンタ２１から出力されるカウント値が入力されており、このカウント値に応じてインタリーブテーブルのアドレスが参照され、このアドレスに示された選択先を出力決定部１７に出力する。
【００４８】
そして、出力決定部１７は、メモリ部２０から入力された選択先に応じて、第１乃至第３のＴＳパケットバッファ１３，１４，１５のいずれかに対して出力要求を行うとともに、このＴＳパケットバッファからの出力されるＴＳパケット又はヌルパケットがＴＳパケット切替部１７に入力されるように、このＴＳパケット切替部１７を制御する。これにより、インタリーブテーブルに示された出力順序で、ＥＳが多重化されてなるＴＳパケット又はヌルパケットが出力バッファ１９に出力される。そして、これらＴＳパケット又はヌルパケットは、インタリーブテーブルに示された出力順序で出力バッファ１９から出力インタフェースに出力され、最終的に、この順序でトランスポートストリームとして送出される。
【００４９】
このように、出力決定部１７は、メモリ部２０に保持されたインタリーブテーブルを参照し、このインタリーブテーブルに示された出力順序で、ＥＳが多重化されてなるＴＳパケット又はヌルパケットを出力している。なお、本実施の形態においては、メモリ部２０がカウント値に基づいてインタリーブテーブルを参照しており、このインタリーブテーブルが示す選択先を出力決定部１７に出力している。これにより、出力決定部１７がインタリーブテーブルを参照して、このインタリーブテーブルに示された出力順序でＴＳパケット又はヌルパケットを出力することを実現しているが、例えば、カウンタ値が出力決定部１７に入力されるとし、この出力決定部１７が積極的にメモリ部２０のインタリーブテーブルを参照するように構成してもよい。
【００５０】
また一方、出力決定部１７は、例えばＣＰＵから出力される優先出力要求が入力されたときに、メモリ部２０のインタリーブテーブルに示された出力順序に優先して、第４のＴＳパケットバッファ１６に対して出力要求を行うとともに、この第４のＴＳパケットバッファ１６から出力される優先パケットが出力バッファ１９に入力されるようにＴＳパケット切替部１８を制御する。また、この優先出力要求が入力された直後にインタリーブテーブルにおいて出現するヌルパケットの出力を無視する。
【００５１】
すなわち、当該第１の実施形態のデータ伝送装置１では、ＥＳが多重化されてなるＴＳパケット及びヌルパケットをテーブル参照方式によって出力しており、ＰＣＲパケットやＰＳＩパケットなどのような所定の情報が格納されたＴＳパケット（優先パケット）を出力するときには、インタリーブテーブルに優先する優先出力要求が用いられており、いわばイベント要求方式によって出力している。
【００５２】
したがって、一般にＥＳが多重化されてなるＴＳパケットよりも低い出力レートで出力される優先パケット（ＰＣＲパケット，ＰＳＩパケット）を、インタリーブテーブルに依存せず、必要に応じて柔軟に出力することができる。これにより、従来のデータ伝送装置においては、これらＰＣＲパケットやＰＳＩパケットを送出する際に生じていた出力レートの浪費分を削減することができ、伝送帯域を有効に利用して効率的なデータ伝送を行うことができる。
【００５３】
また、当該第１の実施形態のデータ伝送装置１は、優先パケットを出力した直後におけるヌルパケットの出力を無視している。ヌルパケットは本来、出力レートを調整する目的でトランスポートストリームとして送出される無意味なＴＳパケットであることから、このヌルパケットの出力を無視した場合であっても、データ伝送に影響が生じることはない。したがって、インタリーブテーブルに優先して優先パケットを出力した場合であっても、このヌルパケット以外のＴＳパケット（ＥＳが多重化されてなるＴＳパケット、及び優先パケット）の出力間隔を一定に保って出力することができる。
【００５４】
さらに、当該第１の実施形態のデータ伝送装置１においては、ＣＰＵなどによって、出力すべき優先パケットが第４のＴＳパケットバッファ１６に完全に蓄積された時点で、出力決定部１７に対する優先出力要求を行うことができる。これにより、出力決定部１７は、優先出力要求が入力されたときに、第４のＴＳパケットバッファ１６に優先パケットが完全に蓄積されたか否かを判定することなく、この第４のＴＳパケットバッファ１６に対して即座に出力要求を行うことができる。したがって、優先パケットを蓄積するためのＴＳパケットバッファを複数用意する必要がなく、回路構成を簡略化して低コスト化を実現することができる。
【００５５】
次に、ＴＳパケットを選択して出力する場合における当該第１の実施形態のデータ伝送装置１の具体的な動作例について、図２に示すフローチャートに従って説明する。
【００５６】
データ伝送装置１は、その動作が開始されると、先ず、図２に示すステップＳ１において、保留カウントＰの値、及びインタリーブテーブルの参照アドレスＡの値が出力決定部１７によって「０」に設定され、それぞれの値が初期化される。なお、保留カウントＰは、優先出力要求が出力決定部１７に入力された回数と、ヌルパケットの出力を無視した回数との関係を示す値であり、優先出力要求が入力されたときに「１」加算され、ヌルパケットの出力を無視したときに「１」減算される値である。
【００５７】
次に、ステップＳ２において、出力決定部１７は、ＣＰＵなどから優先出力要求が入力されているか否かを判定する。判定の結果、優先出力要求が入力されている場合には処理を次のステップＳ３にすすめ、入力されていない場合には処理をステップＳ７に進める。
【００５８】
ステップＳ３において、出力決定部１７は、保留カウントＰの値を「１」加算する。
【００５９】
次に、ステップＳ４において、出力決定部１７は、第４のＴＳパケットバッファ１６に対して出力要求を行うとともに、ＴＳパケット切替部１８を制御して、この第４のＴＳパケットバッファ１６から出力される優先パケットを出力バッファ１９に出力する。
【００６０】
次に、ステップＳ５において、出力決定部１７は、ＴＳパケットの出力動作を停止する要求がＣＰＵなどから入力されているか否かを判定する。そして、この判定の結果、停止要求が入力されている場合には、ＴＳパケットの出力動作を停止する。また、停止要求が入力されていない場合には、処理をステップＳ６に進める。
【００６１】
ステップＳ６において、出力決定部１７は、カウンタ２１にＴＳパケットパルスが入力されてカウント値が出力され、次のＴＳパケットを送出するタイミングとされたか否かを判定する。そして、この判定の結果、ＴＳパケットパルスが入力された場合には、処理をステップＳ２に戻し、次のＴＳパケットを出力するように動作する。また、ＴＳパケットパルスが入力されていない場合には、入力されるまで判定を繰り返す。
【００６２】
一方、ステップＳ７において、出力決定部１７は、参照アドレスＡの値を加算するとともに、メモリ部２０に保持されたインタリーブテーブルを参照して、このインタリーブテーブルにおけるアドレスＡに記述された選択先を取得する。
【００６３】
次に、ステップＳ８において、出力決定部１７は、保留カウントＰの値が「０」であるか否かを判定する。そして、この判定の結果、値が「０」でない場合には、処理を次のステップＳ９に進め、値が「０」である場合には、処理をステップＳ１０に進める。
【００６４】
ステップＳ９において、出力決定部１７は、第１乃至第３のＴＳパケットバッファ１３，１４，１５のうちで、ステップＳ７で取得した選択先に相当するＴＳパケットバッファに対して出力要求を行うとともに、ＴＳパケット切替部１８を制御して、このＴＳパケットバッファから出力されるＴＳパケット又はヌルパケットを出力バッファに出力し、処理をステップＳ５に進める。
【００６５】
一方、ステップＳ１０において、出力決定部１７は、選択先に相当するＴＳパケットバッファが第３のＴＳパケットバッファであるか否か、すなわち、次に出力するＴＳパケットがヌルパケットであるか否かを判定する。そして、この判定の結果、次の出力がヌルパケットでない場合には、処理をステップＳ９に進め、ヌルパケットである場合には、処理をステップＳ１１に進める。
【００６６】
ステップＳ１１において、出力決定部１７は、保留カウントＰの値を「１」減算し、ヌルパケットを出力しないで処理をステップＳ７に進める。
【００６７】
当該第１の実施形態のデータ伝送装置１は、上述のように動作することにより、ＴＳパケットを順次出力バッファ１９に出力するとともに、この出力バッファ１９に蓄積されたＴＳパケットを順次トランスポートストリームとして送出する。
【００６８】
データ伝送装置１においては、図２に示すフローチャートにおいて、ステップＳ７，Ｓ８，Ｓ９の流れ、又はステップＳ７，Ｓ１０，Ｓ９の流れで動作することにより、出力決定部１７がインタリーブテーブルに示された出力順序で、ＥＳが多重化されてなるＴＳパケット又はヌルパケットを出力バッファ１９に出力しており、この出力順序でＴＳパケットをトランスポートストリームとして送出している。
【００６９】
また、データ伝送装置１においては、ステップＳ２，Ｓ３，Ｓ４の流れで動作することにより、優先出力要求が出力決定部１７に入力されたときに、インタリーブテーブルの参照に優先して優先パケットを出力バッファ１９に出力しており、この優先パケットをトランスポートストリームとして送出している。
【００７０】
また、データ伝送装置１においては、優先パケットを送出した回数が保留カウントＰの値によりカウントされており、ステップＳ８，Ｓ１０，Ｓ１１の流れで動作することにより、保留カウントＰの値が「０」でないとき（優先パケットを送出した直後であるとき）には、ヌルパケットの出力が無視されている。ただし、優先パケットを送出した直後であっても、次の出力対象がヌルパケット以外のＴＳパケットである場合には、ステップＳ８，Ｓ１０，Ｓ９の流れで動作することにより、このＴＳパケットをインタリーブテーブルに示された出力順序で出力する。
【００７１】
すなわち、データ伝送装置１は、図２のフローチャートに示すように動作することにより、例えば図３に示すような出力順序で、トランスポートストリームとしてＴＳパケットが送出される。なお、図３に示すインタリーブテーブルにおいて、「Ｖ」で示す位置には、ビデオデータのＥＳが多重化されたＴＳパケットが出力されるように、第１のＴＳパケットバッファ１３が出力決定部１７の選択先として記述されており、「Ａ」で示す位置には、オーディオデータのＥＳが多重化されたＴＳパケットが出力されるように、第２のＴＳパケットバッファ１４が出力決定部１７の選択先として記述されている。また、「Ｎ」で示す位置には、ヌルパケットが出力されるように、第３のＴＳパケットバッファ１５が出力決定部１７の選択先として記述されている。
【００７２】
図２から明らかであるように、データ伝送装置１は、メモリ部１９に保持されたインタリーブテーブルに示された出力順序で、ＥＳが多重化されてなるＴＳパケット又はヌルパケットを出力し、この順序でトランスポートストリームとして送出する。
【００７３】
またデータ伝送装置１では、図２において時刻Ｔ１の時点において、出力決定部１７に優先出力要求が入力されると、インタリーブテーブルに示された出力順序に優先して、即座に優先パケットを出力している。また、時刻Ｔ１において優先出力要求が入力された後で、ヌルパケットを出力する記述がインタリーブテーブルに出現した時点Ｔ２では、このヌルパケットの出力を無視して、インタリーブテーブルに示された次のＴＳパケットを出力している。すなわち、データ伝送装置１は、優先パケットをインタリーブテーブルに優先して送出した分だけ、ヌルパケットの送出をしていない。
【００７４】
したがって、データ伝送装置１は、インタリーブテーブルに優先して優先パケットを送出した場合であっても、ビデオデータのＥＳが多重化されてなるＴＳパケットや、オーディオデータのＥＳが多重化されてなるＴＳパケットの出力間隔を、一定に保って出力することができる。
【００７５】
なお、図２に示す例においては、ビデオデータのＥＳが多重化されてなるＴＳパケットの連続した出力の合間に、優先パケットを挿入して出力されている。以下、この点について説明する。
【００７６】
ビデオデータやオーディオデータのＥＳは、高レートでトランスポートストリームとして出力するものであり、ＰＥＳの出力レートが規定されている。しかしながら、これらＰＥＳを第１及び第２のＴＳパケット化部１１，１２でパケット化するときにオーバーヘッドを伴うため、ビデオデータやオーディオデータのＥＳが多重化されてなるＴＳパケットは、トランスポートストリームとして送出するレートに十分な余裕を有している。そして、トランスポートストリームを受信する受信装置には、多重化を解いてＥＳに復元するときにバッファが用いられることが一般的である。
【００７７】
したがって、ビデオデータのＥＳが多重化されてなるＴＳパケットの連続した出力の合間に、優先パケットを挿入して出力した場合であっても、これらＴＳパケットの連続性が問題になることはない。
【００７８】
また、上述で説明した本第１の実施形態においては、データ伝送装置１に第３及び第４のＴＳパケットバッファ１５，１６が用意されており、これらのＴＳパケットバッファにそれぞれ、ヌルパケットと優先パケットとが一時蓄積されるとしている。
【００７９】
しかしながら、当該第１の実施形態においては、必ずしも第３及び第４のＴＳパケットバッファ１５，１６を用意する必要はない。ＣＰＵによる制御や同期信号などを用いることなどによって、出力決定部１７に対する優先出力要求の入力、そしてこれによるＴＳパケット切替部１８での入力の切り替えと、優先パケットのＴＳパケット切替部１８への入力に同期がとれていれば、第４のＴＳパケットバッファ１６を不要とすることができる。同様に、ＣＰＵによる制御や同期信号などを用いることなどによって、ＴＳパケット切替部１８においてヌルパケットを入力先として選択する切り替えと、このＴＳパケット切替部１８へのヌルパケットの入力に同期がとれていれば、第３のＴＳパケットバッファ１５を不要とすることができる。
【００８０】
つぎに以下では、上述したインタリーブテーブルの作成方法について、その具体的な一例を挙げて説明する。
【００８１】
なお、以下の説明においては、作成するインタリーブテーブルの大きさ（要素数）を「４０９６」とし、入力されるＥＳのチャンネルとして、［Ｖｉｄｅｏ］、［Ａｕｄｉｏ＃０］、［Ａｕｄｉｏ＃１］、［Ａｕｄｉｏ＃２］、及び［Ａｕｄｉｏ＃３］の５チャンネルがあるとする。したがって、作成するインタリーブテーブルには、これらＥＳの５チャンネル分にヌルパケット分を加えた、合計６種類のＴＳパケットの出力順序を記述することとなる。また、このインタリーブテーブルに優先して出力する優先パケットとしては、ＰＣＲパケット及びＰＳＩパケットと、テキスト情報が格納されてなる「ＴＥＸＴ０」パケット及び「ＴＥＸＴ２」パケットとの合計４種類があるとする。これら４種類の優先パケットは、インタリーブテーブル中の記述されたヌルパケットの要素数に相当する分から割り当てる。
【００８２】
インタリーブテーブルを作成する際には、いずれの種類のＴＳパケットに注目した場合でも、このＴＳパケットの送出間隔が略々一定となるようにして、各ＴＳパケット又はヌルパケットの出力順序を設定することが重要となる。
【００８３】
先ず、最終的な出力であるトランスポートストリーム全体での出力レートを求める。また、ＥＳの各チャンネルに対応するＴＳパケットの出力レートについて、トランスポートストリーム全体での出力レートに占める割合を求める。このとき、ＥＳの各チャンネルに対応するＴＳパケットの出力レートは、ＥＳやＰＥＳをトランスポートストリームとして送出するまでの間に生じるオーバーヘッドを考慮した出力レートとする。
【００８４】
次に、求まったＥＳ毎のＴＳパケットの出力レートに対して、僅かに余裕を持たせた出力レートをそれぞれ決定する。
【００８５】
ここで、トランスポートストリーム全体での出力レートをＲＴＳとし、例えば、［Ｖｉｄｅｏ］のＥＳチャンネルを多重化してなるＴＳパケットの出力レートをＲＶとすると、この種類のＴＳパケットについてインタリーブテーブルに記述するべき要素数ＮＶは、１要素に対応する出力レートがＲＴＳ／４０９６であることから、以下に示す式４のように表すことができる。但し下記の式４において、［ｘ］は、ｘを超えない最大の整数を表す。
【００８６】
【数４】
0003633535.tif 000005
そして、前記の式４において、端数が丸め込まれたことによる出力レートの上昇分を考慮して、［Ｖｉｄｅｏ］のＥＳチャンネルを多重化してなるＴＳパケットの実際の出力レートをＲＶ’とすると、このＲＶ’は以下の式５に示すように表すことができる。
【００８７】
【数５】
0003633535.tif 000006
上述では、［Ｖｉｄｅｏ］のＥＳチャンネルを多重化してなるＴＳパケットについて算出したが、同様にして、他のＥＳチャンネルを多重化してなるＴＳパケットについても実際の出力レートを算出し、これらの合計がトランスポートストリーム全体での出力レートＲＴＳを上回っていないことを確認する。
【００８８】
次に、例えば、図４のフローチャートに示すアルゴリズムに従い、ＥＳが多重化されてなるＴＳパケット、及びヌルパケットについて、インタリーブテーブルに記述する要素数を設定する。尚、以下では、上述した値ＮＶを一般化してＮｅｎと表す。ただし、ｎはＥＳが多重化されてなるＴＳパケットの種類を示し、ヌルパケットは含まない。また、［ｅｎ］は、ｎ番目のＥＳが多重化されてなるＴＳパケットを示す。さらに、Ｎｅｎは、以下に示す式６の関係を満足するとする。
【００８９】
【数６】
0003633535.tif 000007
先ず、図４中に示すステップＳ２０において、中間値Ｓｅｎの値をそれぞれ［４０９６−Ｎｅｎ］に設定するとともに、変数ｉの値を［０］に設定し、初期化を行う。
【００９０】
次に、ステップＳ２１において、中間値Ｓｅｎの値をそれぞれ［Ｓｅｎ＋Ｎｅｎ］に設定する。
【００９１】
次に、ステップＳ２２において、変数ｋの値を［０］に設定する。
【００９２】
次に、ステップＳ２３において、ｋ番目の中間値Ｓｅｋの値が［４０９６］以上であるか否かを判定する。この判定の結果、［４０９６］以上である場合には、処理をステップＳ２４に進め、［４０９６］未満である場合には、処理をステップＳ２７に進める。
【００９３】
ステップＳ２４においては、ｋ番目の中間値Ｓｅｋの値を［Ｓｅｋ−４０９６］に設定し、インタリーブテーブルのｉ番目の要素（ｔａｂｌｅ｛ｉ｝）として、［ｅｋ］を示す情報を設定する。
【００９４】
次に、ステップＳ２５において、変数ｉの値を［ｉ＋１］に設定する。
【００９５】
次に、ステップＳ２６において、変数ｉの値が［４０９６］以上であるか否かを判定する。この判定の結果、［４０９６］以上である場合には、インタリーブテーブル中の全ての要素が設定されたこととなり、設定作業を終了する。また、［４０９６］未満である場合には、インタリーブテーブル中の次の要素を設定するために、処理をステップＳ２１に戻す。
【００９６】
一方、上述のステップＳ２３において、ｋ番目の中間値Ｓｅｋの値が［４０９６］未満であるとされた場合には、ステップＳ２７において、変数ｋの値を［ｋ＋１］に設定する。
【００９７】
次に、ステップＳ２８において、変数ｋの値が［ｎ］よりも大きいか否かを判定する。この判定の結果、［ｎ］以下である場合には、処理をステップＳ２３に戻し、［ｎ］よりも大きい場合には、処理をステップＳ２９に進める。
【００９８】
ステップＳ２９においては、インタリーブテーブルのｉ番目の要素（ｔａｂｌｅ｛ｉ｝）として、ヌルパケットを示す情報を設定する。
【００９９】
以上のようなアルゴリズムを用いることにより、インタリーブテーブルの各要素を設定することができる。そして、このようにして設定したインタリーブテーブルについて、各ＥＳが多重化されてなるＴＳパケット、及びヌルパケットがどのように送出されるかを分析した結果を、以下の表１に示す。
【０１００】
【表１】
0003633535.tif 000008
前記の表１に示すように、上述のようにしてインタリーブテーブルを設定することにより、各ＥＳが多重化されてなるＴＳパケット、及びヌルパケットを、所望とする出力間隔で出力されるように設定することができる。また、この出力間隔が、各ＴＳパケット毎に略々一定となるように設定することができる。
【０１０１】
［第２の実施形態］
本発明は、図５に例示するようなデータ伝送装置２に適用することができる。
【０１０２】
この本発明の第２の実施形態となるデータ伝送装置２は、図１に示すデータ伝送装置１と同様、ＭＰＥＧ−２  Ｓｙｓｔｅｍｓ（ＩＴＵ−Ｔ  Ｈ．２２２．０，ＩＳＯ／ＩＥＣ  １３８１８−１）で規定されるトランスポート・パケット（以下、「ＴＳパケット」という。）を所定の伝送フォーマットによりＭＰＥＧ−２  Ｓｙｓｔｅｍｓ（ＩＴＵ−Ｔ  Ｈ．２２２．０，ＩＳＯ／ＩＥＣ  １３８１８−１）で規定されるデータストリーム（トランスポートストリーム）に変換してデータ伝送を行うようになっている。
【０１０３】
具体的な構成としては、このデータ伝送装置２は、図５に示すように、第１及び第２のパケット化部３１，３２と、第１，第２，第３のＴＳパケットバッファ３３，３４，３５と、出力決定部３６と、ＴＳパケット切替部３７と、出力バッファ３８と、テーブルデータ変換部３９と、メモリ部４０と、カウンタ４１とを備える。
【０１０４】
尚、第１のパケット化部３１、第２のパケット化部３２、第３のＴＳパケットバッファ３５、ＴＳパケット切替部３７、出力バッファ３８、メモリ部４０、及びカウンタ４１の構成と動作は、それぞれ、図１に示す第１のパケット化部１１、第２のパケット化部１２、第４のＴＳパケットバッファ１６、ＴＳパケット切替部１８、出力バッファ１９、メモリ部２０、カウンタ２１のそれと同様であるので、ここではその詳細な説明を省略する。
【０１０５】
第１及び第２のＴＳパケットバッファ３３，３４は、入力されたＴＳパケットをそれぞれ蓄積し、出力決定部３６からの出力要求が入力されたときに、蓄積したＴＳパケットをＴＳパケット切替部３７に出力する。また、第１及び第２のＴＳパケットバッファ３３，３４は、ＴＳパケットが蓄積されていないときには、ヌルパケットをＴＳパケット切替部３７に出力する。
【０１０６】
尚、このデータ伝送装置２では、ＥＳから生成されたＴＳパケットが蓄積されるＴＳパケットバッファが２つ（第１及び第２のＴＳパケットバッファ３３，３４）配設される場合を示しているが、複数種類のＥＳから生成したＴＳパケットをトランスポートストリームとして送出し、複数のＴＳパケットバッファを用意して、ＴＳパケットがＥＳ毎にそれぞれ蓄積されるとしてもよい。
【０１０７】
出力決定部３６は、第１及び第２のＴＳパケットバッファ３３，３４に対して所定の順序で出力要求を行うとともに、ＴＳパケット切替部３７を制御して、このＴＳパケット切替部３７の入力先を切り替える。尚、この出力決定部３６は、テーブルデータ変換部３９から出力される信号に従って出力要求を行う。
【０１０８】
テーブルデータ変換部３９は、メモリ部４０内に保持されたインタリーブテーブルの入力に対応したＴＳパケットの種別を変換出力として出力する。具体的には、インタリーブテーブルに保持される出力順序データの一部あるいは全部には冗長度を持たせており、テーブルデータ変換部３９は、インタリーブテーブルの冗長データとパケット種別との対応関係を示すテーブル変換情報に従って、多重化処理の時間単位を示す同期信号に同期して入力と出力の変換を行う。このテーブルデータ変換情報は、ＣＰＵ等により書き込まれ多重化処理の時間単位を示す同期信号に同期して内部に取り込まれる。
【０１０９】
次に、カウンタ４１、メモリ部４０、テーブルデータ変換部３９、及び出力決定部３６動作について、図６に示すフローチャートに従って説明する。尚、この図６に示すフローチャートにおいては、図２に示すステップＳ７〜ステップＳ１１の処理に対応する処理が異なるのみであるので、以下では、ステップＳ７〜ステップＳ１１の処理に対応する処理（ステップＳ３７〜ステップ４１）についてのみ説明し、その他のステップの動作についてはその説明を省略する。
【０１１０】
ステップＳ３７において、出力決定部３６は参照アドレスＡの値を「１」増数する。そして、テーブルデータ変換部３９は、テーブル変換情報を利用して、参照アドレスＡに対応するインタリーブテーブルのデータＤ［Ａ］をパケット種別Ｔ［Ｄ［Ａ］］に変換し、パケット種別Ｔ［Ｄ［Ａ］］に関する情報を出力決定部３６に出力する。尚、参照アドレスＡを増数した結果、参照アドレスＡが参照アドレスＡの最大値Ａｍａｘに達した場合には、出力決定部３６は参照アドレスＡの値を「０」にする。
【０１１１】
次に、ステップＳ３８において、出力決定部３６は、保留カウントＰの値が「０」であるか否かを判定する。そして、この判定の結果、値が「０」である場合には処理を次のステップＳ３９に進め、値が「０」でない場合には処理をステップＳ４０に進める。
【０１１２】
ステップＳ３９において、出力決定部３６は、第１及び第２のＴＳパケットバッファ３３，３４のうち、ステップＳ３７で取得したパケット種別Ｔ［Ｄ［Ａ］］に相当するＴＳパケットバッファに対して出力要求を行うとともに、ＴＳパケット切替部１８を制御して、このＴＳパケットバッファから出力されるＴＳパケット又はヌルパケットを出力バッファに出力し、処理をステップＳ３５に進める。
【０１１３】
一方、ステップＳ４０において、出力決定部３６は、パケット種別Ｔ［Ｄ［Ａ］］がヌルパケットであるか否かを判定する。そして、この判定の結果、パケット種別Ｔ［Ｄ［Ａ］］がヌルパケットでない場合には処理をステップＳ３９に進め、ヌルパケットである場合には、処理をステップＳ４１に進める。
【０１１４】
ステップＳ４１において、出力決定部３６は、保留カウントＰの値を「１」減算し、ヌルパケットを出力しないで処理をステップＳ３７に進める。
【０１１５】
次に、具体例を示しながら、本発明の第２の実施形態となるデータ伝送装置２の実際の動作について説明する。
【０１１６】
この第２の実施形態となるデータ伝送装置２においては、インタリーブテーブルデータは２進数Ｎ桁の数値としてメモリ部４０に保持されている。このとき、インタリーブテーブルデータにより表現できる最大数２ｎが、ＴＳパケットの種別の最大値よりも小さい場合には、その値を冗長データパケットとして割り当てる。
【０１１７】
ここで、ビデオのエレメンタリストリームのレートが１６Ｍ〜２４Ｍｂｐｓの範囲で変化し、パケットの種別が［ヌル］［ビデオ］［音声＃０］［音声＃１］［音声＃２］［音声＃３］［ＰＳＩ］［ＰＣＲ］［ＴＥＸＴ０］［ＴＥＸＴ１］の１０種ある場合を例として、データ伝送装置２の動作について説明する。
【０１１８】
この場合、テーブルに設定するパケット種別は、［ヌル］［ビデオ］［音声＃０］［音声＃１］［音声＃２］［音声＃３］の６種とし、［ＰＳＩ］［ＰＣＲ］［ＴＥＸＴ０］［ＴＥＸＴ１］はヌルに設定した分から割り当てる。そして、パケットの種別数が１０であるので、テーブルデータ１個当たりのビット数は４ビットとなる。
【０１１９】
今、［ビデオ］のパケットを複数に分けることを考える。［ビデオ］のパケットを［２の整数乗個＋１］のテーブルデータに分けるものとし、最低レートを示すテーブルデータに１つ割り当て、最高レートと最低レートの差をその２の整数乗の値［２Ｋ］で割った値を［Ａ］として、［Ａ］を２つと、［Ａ×２］，［Ａ×２２］，…，［Ａ×２Ｋ−１］をそれぞれ１つ割り当てる。例えば、［ビデオ］の最低レートを１６Ｍｂｐｓ、最高レートを２４Ｍｂｐｓとし、Ｋ＝３として計算すると、最低レートから最高レートまでを［Ａ］レート間隔（この場合、１Ｍｂｐｓ間隔）で指定することができるようになる。最低レートから最高レートまでの各値は、具体的には、図７に示すアルゴリズムに従って求めることができる。
【０１２０】
図７において、先ず始めに、ステップＳ５１において、０番目のビットレートＲ［０］を［（Ｒｍａｘ−Ｒｍｉｎ）／２Ｋ］に設定する。ここで、Ｒｍａｘは最高ビットレート、Ｒｍｉｎは最低ビットレートである。
【０１２１】
次に、ステップＳ５２において、ビットレート番号を計数するカウンタＮの値に「１」を設定する。
【０１２２】
次に、ステップＳ５３において、Ｎ番目のビットレートを［Ｎ−１］番目のビットレートに２を乗数した値［Ｒ［Ｎ−１］×２］に設定する。
【０１２３】
続いて、ステップＳ５４において、カウンタＮの値が分割数Ｋに達しているか否かを判別し、達していない場合には、ステップＳ５５の処理へ進む。一方、達している場合にはステップＳ５６の処理へ進む。
【０１２４】
そして、ステップＳ５５において、カウンタＮの値を「１」増数し、ステップＳ５３の処理に戻る。
【０１２５】
ステップＳ５６においては、［Ｋ＋１］番目のビットレートの値を最低ビットレートＲｍｉｎに設定し、一連の処理を終了する。
【０１２６】
一般的には、想定される最低ビットレートをＲｍｉｎ，最高ビットレートをＲｍａｘ，及びビットレートをＲとした時の［Ａ］，［Ａ×２］，…，［Ａ×２Ｋ−１］の変換データの設定方法は、以下の数式７で求められたＸを２進数表記したときの各桁により決定することができる（２０と［Ａ］、２１と［Ａ×２］…、２Ｋ−１と［Ａ×２Ｋ−１］がそれぞれ対応する。但し［Ｒ＝Ｒｍａｘ］のときに限り、２つめの［Ａ］を含めたすべてが選択される）。
【０１２７】
【数７】
0003633535.tif 000009
ここで、［ｘ］は［ｘ］を越えない最大の整数を示す。
【０１２８】
尚、図１０にテーブル変換情報の設定例を示す。この例においては、冗長度を持たせたテーブルデータ１〜５を［ビデオ］パケットに変換するように割り当て、［ビデオ］のビットレートが２４Ｍｂｐｓ，２０Ｍｂｐｓ，１９Ｍｂｐｓ，１８Ｍｂｐｓ，１６Ｍｂｐｓである時のそれぞれの設定例を示している。２４Ｍｂｐｓの場合には［ビデオ１］〜［ビデオ５］が使用されるのに対して、例えば、２０Ｍｂｐｓの場合には［ビデオ３］〜［ビデオ５］が未使用となり、１９Ｍｂｐｓの場合には［ビデオ２］と［ビデオ５］が未使用となる。
【０１２９】
最後に、図８及び図９を参照して、従来及び上記第２の実施形態となるデータ伝送装置を用いた［ビデオ］のＴＳパケットの出力状況について説明する。
【０１３０】
図８及び図９は、それぞれ、従来及び上記第２の実施形態となるデータ伝送装置による［ビデオ］のＴＳパケットの出力状況を示す模式図であり、［ビデオ］のＴＳパケットの最大レートを２４Ｍｂｐｓとしたときの２０Ｍｂｐｓ，１９．５Ｍｂｐｓのパケットのインタリーブを図示したものである。
【０１３１】
図８からわかるように、従来のデータ伝送装置では、２０Ｍｂｐｓのパケットの場合、多重化バッファは多重化時間単位であるフレームの先頭から最大レート：２４Ｍｂｐｓで多重化を開始するために、ほぼ［５／６］フレーム時間で全てのパケットＡの送出を終え（時間Ｔ１）、その後は［ヌル］パケットＢを送出する。また、１９．５Ｍｂｐｓのパケットの場合には、更に短い時間Ｔ２で全てのパケットＡの送信を終え、その後は［ヌル］パケットＢを送出するようになる。
【０１３２】
これに対して、本発明の第２の実施形態となるデータ伝送装置では、図９に示すように、２０Ｍｂｐｓの場合、１フレーム時間を要するような冗長度を持たせたパケットＤを送出するようになる。つまり、２４Ｍｂｐｓの場合のパケットＣにおける［ビデオ３］〜［ビデオ５］のパケットに対応する部分が、２０Ｍｂｐｓではそれぞれ［ヌル］パケットに設定されている。
【０１３３】
また、図９では、１９．５Ｍｂｐｓの場合も、２０Ｍｂｐｓの場合と同様の冗長度を持たせたパケットＤを送出する例を示している。そのため、２０Ｍｂｐｓのパケットとの差、すなわち、０．５Ｍｂｐｓ相当分だけ早く終了するものの、明らかに従来のデータ伝送装置と比べて改善されていることが解る。
【０１３４】
尚、この図に示す例では、１９．５Ｍｂｐｓのパケットの場合に、２０Ｍｂｐｓとしてレートの設定を行っているが、多重化の単位（フレーム）で、ＣＰＵ等が十分に処理できるのであれば、１９Ｍｂｐｓと２０Ｍｂｐｓとをフレーム毎に交互に設定することで、１９．５Ｍｂｐｓのレートを実現することも可能である。
【０１３５】
また、多重化の単位は、それぞれのパケットの種別によって異なるため、［ビデオ］用に割り当てたレートを［音声］に使用する場合は、それぞれの多重化の単位で十分に余裕をもって設定することが必要である。例えば、図１０に示す例で［ビデオ］のレートを２４Ｍｂｐｓから２０Ｍｂｐｓに変更し、さらに２０Ｍｂｐｓのときに［音声］を２ｃｈ追加するためにテーブルデータ４，５に［音声＃４］［音声＃５］を割り当てる場合、先ず、［ビデオ］のレートを２０Ｍｂｐｓに落としてから［音声］の割り当てを行い、その後に実際の［音声］のＴＳパケットを作成するといった処理が必要である。
【０１３６】
［その他の実施形態］
最後に、上述の実施の形態は本発明の一例である。このため、本発明は上述の実施の形態に限定されるものではなく、データを圧縮符号化して得られたエレメンタリストリームを多重化してパケットを生成し、このパケットをデータストリームとして送出することによりデータを伝送するデータ伝送装置に対して広く適用することができる技術的思想である。
【０１３７】
また、データ伝送装置１の各部は、各種半導体素子などを用いてハードウエアにより構成してもよいし、コンピュータ等の情報処理装置における所定の動作を記述したソフトウエアにより構成してもよい。
【０１３８】
そして、これら以外であっても、本発明に係る技術的思想を逸脱しない範囲であれば設計等に応じて種々の変更が可能であることは勿論である。
【０１３９】
【発明の効果】
本発明に係るデータ伝送装置は、複数のバッファ手段に蓄積されるパケットを、インタリーブテーブルに予め設定された出力順序で出力するとともに、優先出力要求がなされたときに、所定の情報が格納されたパケットを、インタリーブテーブルに示された出力順序に優先して出力することができる。また、インタリーブテーブルに示された出力順序に優先してパケットを出力したときに、この直後にインタリーブテーブルにおいて出現するヌルパケットの出力を無視することから、このヌルパケット以外のパケットの出力間隔を一定に保つことができる。
【０１４０】
したがって、本発明に係るデータ伝送装置は、所定の情報が格納されたパケットを蓄積するためのバッファを複数用意する必要がなく、回路構成を簡略化して低コスト化を実現することができる。また、所定の情報が格納されたパケットを低レートで出力する場合であっても、このパケットを必要に応じて柔軟に出力することができるため、伝送帯域を有効に利用して効率的なデータ伝送を行うことができる。さらに、インタリーブテーブルに優先してパケットを出力したときには、この直後のヌルパケットの出力を無視することから、このヌルパケット以外のパケットを、このパケットの種類に応じた出力間隔を一定に保って出力することができる。
【０１４１】
また、本発明に係るデータ伝送装置は、インタリーブテーブルに冗長度を持たせ、その冗長データが現れたときにテーブル変換情報を参照し、そのインデックスに対応するパケットを送出することができる。なお、上記インデックスは、ＣＰＵ等により装置内部に書き込まれ、その内容は多重化周期で更新するようにする。
したがって、本発明に係るデータ伝送装置は、レートの変化に対して局所的にデータレートが高くなることを抑制することができる。また、時間が関係ないデータ伝送等の処理において、そのレートを最初に割り当てること無く運用することができるようになる。
【図面の簡単な説明】
【図１】本発明を適用した第１の実施形態となるデータ伝送装置の機能ブロック図である。
【図２】図１に示すデータ伝送装置の動作を説明するためのフローチャートである。
【図３】図１に示すデータ伝送装置によりトランスポートストリームとしてＴＳパケットや優先パケットが送出される様子を説明するための概略図である。
【図４】図１に示すデータ伝送装置で用いるインタリーブテーブルを設定するアルゴリズムの一例として示すフローチャートである。
【図５】本発明を適用した第２の実施形態となるデータ伝送装置の機能ブロック図である。
【図６】図５に示すデータ伝送装置の動作を説明するためのフローチャートである。
【図７】図５に示すデータ伝送装置によりレートを設定するアルゴリズムの一例として示すフローチャートである。
【図８】従来のデータ伝送装置によるビデオＴＳパケットの出力状況を示す模式図である。
【図９】図５に示すデータ伝送装置によるビデオＴＳパケットの出力状況を示す模式図である。
【図１０】図５に示すデータ伝送装置におけるテーブル変換情報の一例を示す図である。
【図１１】従来のデータ伝送装置の機能ブロック図である。
【符号の説明】
１，２…データ伝送装置、  １１，３１…第１のＴＳパケット化部、  １２，３２…第２のＴＳパケット化部、  １３，３３…第１のＴＳパケットバッファ、１４，３３…第２のＴＳパケットバッファ、  １５，３５…第３のＴＳパケットバッファ、  １６…第４のＴＳパケットバッファ、  １７，３６…出力決定部、  １８，３７…ＴＳパケット切替部、  １９，３８…出力バッファ、  ２０，４０…メモリ部、  ２１，４１…カウンタ、  ３９…テーブルデータ変換部
【図１】
0003633535.tif 000010
【図２】
0003633535.tif 000011
【図３】
0003633535.tif 000012
【図４】
0003633535.tif 000013
【図５】
0003633535.tif 000014
【図６】
0003633535.tif 000015
【図７】
0003633535.tif 000016
【図８】
0003633535.tif 000017
【図９】
0003633535.tif 000018
【図１０】
0003633535.tif 000019
【図１１】
0003633535.tif 000020