(57)【要約】【課題】一定したビットレートのトランスポートストリームをスレーブ動作またはマスタ動作で出力できる多重化装置の構成を提供する。【解決手段】多重化装置１は、一定したビットレートのトランスポートストリームを生成し、記録装置２にスレーブ動作で伝送する。多重化部１０３は、生成したトランスポートストリームのパケット数からプログラム時刻基準参照値ＰＣＲを生成し、クロック発生部１０８を基準にしたシステム基準時刻ＳＴＣとを比較し、ＰＣＲがＳＴＣを超えた場合にトランスポートストリーム生成を中断し、伝送部１０７が伝送停止要求１１４を出してトランスポートストリーム出力を停止することで制限し、一定したビットレートのトランスポートストリームをスレーブ動作で出力することを可能にする。【選択図】      図１
2004187175.tif 000002
【特許請求の範囲】
【請求項１】
外部の記録装置から受ける伝送要求信号に応じてトランスポートストリームを送出する際に、前記トランスポートストリームのパケット数から生成したプログラム時刻基準参照値と内部クロック発生手段のクロックを基準にしたシステム基準時刻との比較結果に基づき、前記プログラム時刻基準参照値が前記システム基準時刻を超えた場合に前記トランスポートストリームの生成を中断し、かつ前記記録装置に対し第１の伝送停止要求信号を発行し、さらに前記トランスポートストリーム出力を停止して一定したビットレートを確保するトランスポートストリーム制御手段を有することを特徴とする多重化装置。
【請求項２】
前記トランスポートストリーム制御手段は、前記比較結果に基づき、前記システム基準時刻が前記プログラム時刻基準参照値を超えた場合に前記トランスポートストリームの生成を開始し、かつ前記記録装置に対する第１の伝送停止要求信号の発行を解除し、さらに前記トランスポートストリームの出力も開始する機能を有する請求項１記載の多重化装置。
【請求項３】
前記トランスポートストリーム制御手段は、常に前記システム基準時刻の所定の時刻以前の時刻において前記トランスポートストリームを多重化して出力する機能を有する請求項１記載の多重化装置。
【請求項４】
前記トランスポートストリーム制御手段が、前記記録装置からの要求に対して多重化出力を中断するスレーブ動作の伝送機能を有する請求項１記載の多重化装置。
【請求項５】
前記トランスポートストリーム制御手段は、前記第１の伝送停止要求信号の発行または停止に応じて、トランスポートパケット生成手段を介して外部の符号化装置を制御し、その制御結果に応じ前記符号化装置から前記トランスポートパケット生成手段へのストリーム取り込みを制限して前記トランスポートパケット生成手段のバッファ破綻を抑制する機能を有する請求項１記載の多重化装置。
【請求項６】
前記符号化装置を制御するための手段は、前記第１の伝送停止要求信号の発行および停止に応答してトランスポートパケット生成手段に符号化制御信号を生成させ、この符号化制御信号により前記符号化装置の符号化ビットレートの抑制、符号化の一時停止および符号化するデータの間引きを間接的に制御する機能を有する請求項５記載の多重化装置。
【請求項７】
前記内部クロック発生手段のクロックに代えて、前記記録装置から供給されるクロックを基準に前記システム基準時刻を生成する請求項１記載の多重化装置。
【請求項８】
前記トランスポートストリームの受信手段およびその記録媒体を備えた前記記録装置から出力される前記伝送要求信号とその伝送要求信号に対して前記トランスポート制御手段から送出される前記第１の伝送停止要求信号とに代えて、前記記憶媒体への書き込みタイミングに同期させるために前記受信手段が前記トランスポートストリーム制御手段へ要求する第２の伝送停止要求信号を有する請求項１記載の多重化装置。
【請求項９】
前記第２の伝送停止要求信号が無効期間中は前記トランスポートストリームの出力動作を維持することで前記トランスポートストリーム制御手段が前記記録装置に対してマスタ動作状態の伝送機能を有する請求項８記載の多重化装置。
【請求項１０】
圧縮符号化されて伝送されたストリームデータを符号化手段から受けてトランスポートストリームを生成し外部の記録装置へ多重化して出力するトランスポートストリーム制御手段を有する多重化装置において、前記トランスポートストリーム制御手段は、入力するストリームからトランスポートパケットを生成するトランスポートパケット生成手段と、前記トランスポートパケットを受ける多重化手段と、前記記録装置からの伝送要求信号に応答してトランスポートストリームを出力する伝送手段と、前記多重化手段が前記伝送部へ出力した前記トランスポートストリームを内蔵のデコーダバッファに仮想的に充足するとともに充足後の情報を前記多重化手段に出力する仮想バッファ計算手段と、入力されたクロックを基準にシステム基準時刻を生成するシステム基準時刻生成手段と、伝送開始時に前記システム基準時刻を基準にした時刻を設定するとともに前記仮想バッファ計算手段から入力したトランスポートパケット総数および所定のビットレートからプログラム時刻を計算するプログラム時刻基準参照値生成手段とから構成することを特徴とする多重化装置。
【請求項１１】
前記多重化手段は、前記システム基準時刻と前記プログラム時刻基準参照値と前記仮想バッファ計算手段の制御情報とで多重化候補のトランスポートパケットを優先付けして前記トランスポートパケット生成手段から選択的に取り出し前記伝送手段に出力する機能を有する請求項１０記載の多重化装置。
【請求項１２】
前記多重化手段は、プログラム時刻基準参照値フィールドを持つトランスポートパケットを前記伝送手段に出力するタイミングに同期して、前記プログラム時刻基準参照値を前記トランスポートストリームの前記プログラム時刻基準参照値フィールドに打刻する機能を有する請求項１１記載の多重化装置。
【請求項１３】
前記多重化手段は、前記トランスポートパケット生成手段、システム基準時刻生成手段、プログラム時刻基準参照値生成手段、前記仮想バッファ計算手段の各情報を基に、前記ストリームの多重化で前記プログラム時刻基準参照値時刻が前記システム基準時刻に対して進み過ぎると発生するアンダフローを検出し、前記アンダフローに応答してストリーム出力を前記出力量の上限内に抑制する機能を有する請求項１１記載の多重化装置。
【請求項１４】
前記仮想バッファ計算手段は、前記トランスポートパケット総数と予め定める所定のビットレートを前記プログラム時刻基準参照値生成手段へ出力する機能も有する請求項１１記載の多重化装置。
【請求項１５】
前記記録装置は受信手段と記録媒体とを含み、前記受信手段は、前記伝送停止要求信号が無ければ、前記記録媒体に応じたクロックタイミングで前記伝送要求信号を出力し、前記伝送要求信号に応じて送出される前記トランスポートストリームを受信して前記記録媒体に書き込む機能を有する請求項１１記載の多重化装置。
【請求項１６】
圧縮符号化されて伝送されたストリームデータを符号化手段から受けてトランスポートストリーム制御手段がトランスポートストリームを生成し多重化して外部の記録装置へ出力する多重化装置のトランスポートストリーム制御方法において、外部の記録装置から受ける伝送要求信号に応じてトランスポートストリームを送出する際に、前記トランスポートストリーム制御手段を用いて、前記トランスポートストリームのパケット数から生成したプログラム時刻基準参照値と内部クロック発生手段のクロックを基準にしたシステム基準時刻との比較結果に基づき、前記プログラム時刻基準参照値が前記システム基準時刻を超えた場合に前記トランスポートストリームの生成を中断し、かつ前記記録装置に対し第１の伝送停止要求信号を発行し、さらに前記トランスポートストリームの出力を停止して一定したビットレートを確保することを特徴とする多重化装置のトランスポートストリーム制御方法。
【請求項１７】
前記比較結果に基づき、前記トランスポートストリーム制御手段は、前記システム基準時刻が前記プログラム時刻基準参照値を超えた場合に前記トランスポートストリームの生成を開始し、かつ前記記録装置に対する第１の伝送停止要求信号の発行を解除し、さらに前記トランスポートストリームの出力も開始する請求項１６記載の多重化装置のトランスポートストリーム制御方法。
【請求項１８】
前記トランスポートストリーム制御手段が、常に前記システム基準時刻の所定の時刻以前の時刻において前記トランスポートストリームを多重化して出力する請求項１６記載の多重化装置のトランスポートストリーム制御方法。
【請求項１９】
前記トランスポートストリーム制御手段が、前記第１の伝送停止要求信号の発行および停止に応答してトランスポートパケット生成手段に符号化制御信号を生成させ、この符号化制御信号により前記符号化装置の符号化ビットレートの抑制、符号化の一時停止および符号化するデータの間引きを間接的に制御して、前記トランスポートストリームに複合時のエラー要因が発生するのを抑制する請求項１８記載の多重化装置のトランスポートストリーム制御方法。
【請求項２０】
前記トランスポートストリームの受信手段およびその記録媒体を備えた前記記録装置から出力される前記伝送要求信号とその伝送要求信号に対して前記トランスポート制御手段から送出される前記第１の伝送停止要求信号とに代えて、前記記憶媒体への書き込みタイミングに同期させるための第２の伝送停止要求信号により、前記受信手段が前記トランスポートストリーム制御手段へ前記トランスポートストリームの伝送中断を要求する請求項１９記載の多重化装置のトランスポートストリーム制御方法。
【請求項２１】
圧縮符号化されて伝送されたストリームデータを符号化手段から受けてトランスポートストリームを生成し外部の記録装置へ多重化して出力するトランスポートストリーム制御方法において、トランスポートパケット生成手段が入力ストリームまたはプログラム仕様情報に応じてトランスポートパケットを生成するステップと、
多重化手段が仮想バッファ計算手段から多重化候補のトランスポートパケット一覧を取得するステップと、
システム基準時刻生成手段から取得したシステム基準時刻とプログラム時刻基準参照値生成手段から取得したプログラム時刻基準参照値とを比較するステップと、比較した結果、前記システム基準時刻が前記プログラム時刻基準参照値よりも大きい場合、前記多重化候補一覧から優先順に検索して前記トランスポートパケット生成手段においても多重化可能な候補を取得するステップと、
前記記録装置からの伝送要求信号が有効であればトランスポートパケット生成手段から前記多重可能な候補のトランスポートパケットを取得し、伝送手段を介して前記トランスポートストリームとし前記記憶装置の受信手段に伝送するステップと、前記トランスポートストリームのプログラム時刻基準参照値を前記多重化手段が前記伝送手段に出力したトランスポートパケット総数および予め定める所定のビットレートから計算するステップと、
前記多重化手段が前記伝送手段へ出力したトランスポートパケットを仮想バッファ計算手段に充足し、現在のプログラム時刻基準参照値の時刻におけるデコーダバッファの情報を計算するステップと、
前記比較するステップで比較した結果、前記システム基準時刻が前記プログラム時刻基準参照値よりも小さい場合、前記多重化候補一覧から最優先候補を取得するステップと、
前記最優先候補が前記トランスポートパケット生成手段において多重化不能である場合、伝送停止要求信号を前記記憶装置に出力するステップと、
前記システム基準時刻が前記プログラム時刻基準参照値を上回るか、前記トランスポートパケット生成手段で多重化可能になるまで待ち、多重化可能になったら前記伝送停止要求信号をキャンセルするステップへ進むステップとを備えることを特徴とする多重化装置のトランスポートストリーム制御方法。
【請求項２２】
前記最優先候補が前記トランスポートパケット生成手段において多重化不能である場合、前記システム基準時刻が前記プログラム時刻基準参照値を上回り、かつ前記トランスポートパケット生成手段で多重化可能になるまで待つステップと、前記最優先候補が多重化可能になり、かつ前記記録装置からの伝送停止要求信号が有効であれば無効になるまで待機し、無効であればトランスポートパケット生成手段から前記多重可能な候補のトランスポートパケットを取得し、伝送手段を介して前記トランスポートストリームとし前記記憶装置の受信手段に伝送するステップとを備える請求項１６記載の多重化装置のトランスポートストリーム制御方法。
【請求項２３】
圧縮符号化されて伝送されたストリームデータを符号化手段から受けてトランスポートストリームを生成し外部の記録装置へ多重化出力するトランスポートストリーム制御方法において、トランスポートパケット生成手段が入力ストリームまたはプログラム仕様情報に応じてトランスポートパケットを生成するステップと、多重化手段が仮想バッファ計算手段から多重化候補のトランスポートパケット一覧を取得するステップと、システム基準時刻生成手段から取得したシステム基準時刻とプログラム時刻基準参照値生成手段から取得したプログラム時刻基準参照値とを比較するステップと、比較した結果、前記システム基準時刻が前記プログラム時刻基準参照値よりも大きい場合、前記多重化候補一覧から優先順に検索して前記トランスポートパケット生成手段においても多重化可能な候補を取得するステップと、前記記録装置からの伝送要求信号が有効であればトランスポートパケット生成手段から前記多重可能な候補のトランスポートパケットを取得し、伝送手段を介して前記トランスポートストリームとし前記記憶装置の受信手段に伝送するステップと、前記トランスポートストリームのプログラム時刻基準参照値を前記多重化手段が前記伝送手段に出力したトランスポートパケット総数および予め定める所定のビットレートから計算するステップと、
前記多重化手段が前記伝送手段へ出力したトランスポートパケットを仮想バッファ計算手段に充足し、現在のプログラム時刻基準参照値の時刻におけるデコーダバッファの情報を計算するステップと、前記比較するステップで比較した結果、前記システム基準時刻が前記プログラム時刻基準参照値よりも小さい場合、前記多重化候補一覧から最優先候補を取得するステップと、前記最優先候補が前記トランスポートパケット生成手段において多重化不能である場合、伝送停止要求信号を前記記憶装置に出力するステップと、前記システム基準時刻が前記プログラム時刻基準参照値を上回るか、前記トランスポートパケット生成手段で多重化可能になるまで待ち、多重化可能になったら前記伝送停止要求信号をキャンセルするステップへ進むステップとを、前記トランスポートパケット生成手段が備えるＣＰＵに実行させるプログラム。
【請求項２４】
前記最優先候補が前記トランスポートパケット生成手段において多重化不能である場合、前記システム基準時刻が前記プログラム時刻基準参照値を上回り、かつ前記トランスポートパケット生成手段で多重化可能になるまで待つステップと、前記最優先候補が多重化可能になり、かつ前記記録装置からの伝送停止要求信号が有効であれば無効になるまで待機し、無効であればトランスポートパケット生成手段から前記多重可能な候補のトランスポートパケットを取得し、伝送手段を介して前記トランスポートストリームとし前記記憶装置の受信手段に伝送するステップとを、前記トランスポートパケット生成手段が備えるＣＰＵに実行させるプログラム。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は多重化装置、トランスポートストリーム制御方法およびそのプログラムに係わり、特に一定したビットレートのトランスポートストリームをスレーブまたはマスター動作で外部の記録装置に出力できる構成を改善した多重化装置、トランスポートストリーム制御方法およびそのプログラムに関する。
【０００２】
【従来の技術】
近年、半導体素子の微細化技術の進展に伴い、その半導体素子で構成する半導体装置も大規模化しているが、半導体装置の中には特定用途向けＩＣであるＡＳＩＣ（Ａｐｐｌｉｃａｔｉｏｎ  Ｓｐｅｃｉｆｉｃ  ＩＣ）または複合ＩＣであるＳＯＣ（Ｓｙｓｔｅｍ  Ｏｎ  Ｃｈｉｐ）などでは、ある特定の目的のために種々の回路を構成する場合が多く、データ通信における多重化装置の分野でもその傾向が顕著である。
【０００３】
この種のデータ通信分野では圧縮技術の進歩により、例えば動画像情報の伝送も可能になってきている。動画像の伝送においてはＭＰＥＧ２と称する国際標準に則り圧縮が行われ、トランスポートストリームという形式に多重化して時分割で伝送される。
【０００４】
ここで、トランスポートストリームとは、ＭＰＥＧ圧縮符号化して得られたビデオエレメンタリーストリーム、オーディオエレメンタリーストリームなどの入力ストリームに表示時刻ＰＴＳ、復号時刻ＤＴＳ等を付加してトランスポートパケット（以下、ＴＳパケットと称す）を生成し、また、プログラム時刻基準参照値ＰＣＲ、プログラム仕様情報ＰＳＩ、ヌルパケットと呼ばれるスタッフィングパケットとを時分割多重したストリームである。
【０００５】
一般的に、トランスポートストリームの多重化装置と、トランスポートストリームを記録する記録装置は、多重化装置がマスター動作でトランスポートストリームを出力する構成である。
【０００６】
このような構成を有する従来の多重化装置の一例を示した図７を参照すると、従来の多重化装置は、多重化装置６と記録装置７とを備え、多重化装置６は、ＴＳパケット生成部１０２、多重化部６０１、仮想バッファ計算部６０２，伝送部６０３、ＳＴＣ生成部６０４，クロック発生部１０８とで構成され、記録装置７は、受信手段７０１，受信バッファ７０２，記録媒体２０２とで構成される。
【０００７】
上述した構成を有する従来の多重化装置がマスター動作で多重化出力するトランスポートストリームの制御動作を説明するためのフローチャートを示した図８を併せて参照すると、ＴＳパケット生成部１０２は、ビデオエレメンタリーストリーム、オーディオエレメンタリーストリームなどの入力ストリームをＴＳパケット化し、多重化部６０１に入力する。
【０００８】
多重化部６０１は、仮想バッファ計算部６０２の制御情報を用いて多重化候補のＴＳパケットを優先付けして（ステップＳ４１）、ＴＳパケット生成部１０２からＴＳパケットを選択する（ステップＳ４２、Ｓ４３、Ｓ４４）。
【０００９】
伝送部６０３は、入力クロックを基準に、所定のビットレートから求められるＴＳパケット間隔でトランスポートストリーム１１６を出力する（ステップＳ４５、Ｓ４６）。
【００１０】
トランスポートストリーム中には、所定の間隔でＰＣＲフィールドが存在する。ＰＣＲフィールドは多重化部６０１で作られる。伝送部６０３は、トランスポートストリーム中のＰＣＲフィールドがトランスポートストリーム１１６を出力するタイミングでシステム基準時刻ＳＴＣ１１３をプログラム時刻基準参照値ＰＣＲフィールドに打刻する。
【００１１】
仮想バッファ計算部６０２は、多重化部６０１が伝送部６０３へ出力したトランスポートストリームを仮想的にデコーダバッファに充足し、デコーダバッファの情報を多重化部６０１に出力する（ステップＳ４７）。
【００１２】
次に、図７の従来の多重化装置においてスレーブ動作でトランスポートストリームを多重化出力する仮想的な例の構成図を示した図９と、従来の多重化装置においてスレーブ動作で多重化出力するトランスポートストリームの制御方法のフローチャートを示した図１０と、図７の従来の多重化装置において仮想的なトランスポートストリーム制御動作を説明するためのタイミングチャートを示した図１１を併せて参照すると、多重化装置８のＴＳパケット生成部１０２、仮想バッファ計算部６０２、ＳＴＣ生成部６０４、クロック発生部１０８は図６の従来装置と同じ動作をする。
【００１３】
多重化装置８の伝送部８０１は図７の従来装置と異なり、記録装置９からの伝送要求信号８０２に応じてトランスポートストリーム１１６を出力する。
【００１４】
よって、伝送部８０１は一定間隔でトランスポートストリームを出力することは保障できない。
【００１５】
また、図７の従来装置と同様にトランスポートストリーム中のＰＣＲフィールドがトランスポートストリームを出力するタイミングでＳＴＣ１１３をＰＣＲフィールドに打刻する。
【００１６】
また、他の多重化装置の例として、タイミング発生器からのビットクロックと外部から入力される出力伝送路クロックとの差を計数し、ＴＳパケットのビット数である１５０４クロックをカウントしたときにヌルパケットを制御部１２から出力バッファへ送出させる要求を制御部へ出力させることが記載されている（特許文献１参照）。
【００１７】
【特許文献１】
特開平１１−３４１０５６号公報（段落番号「００１５」〜「００１６」、「００２３」〜「００２６」、図２）
【００１８】
【発明が解決しようとする課題】
上述したように従来の多重装置におけるトランスポートストリーム制御には次のような問題があった。
【００１９】
第１の問題は、多重化装置６がマスター動作で一定したビットレートで出力し、記録装置７が多重化装置６に合わせて記録媒体２０２に記録するために、記録装置７に受信用バッファ７０２が必要になることである。
【００２０】
すなわち、記録装置７は、記録媒体２０２によって記録タイミングや記録データサイズなどの伝送方法が異なるため、一定したビットレートで受信できないためである。
【００２１】
図７に示した多重化装置における場合の例として、伝送部６０３がスレーブ動作でトランスポートストリームを出力する仮想的な多重化装置８の構成図を示した図９と、仮想的なトランスポートストリーム制御方法を説明するためのフローチャートを示した図１０とを併せて参照すると、多重化装置８のＴＳパケット生成部１０２、仮想バッファ計算部６０２、ＳＴＣ生成部６０４、クロック発生部１０８は図７の従来装置と同じ動作をする。
【００２２】
多重化装置８の伝送部８０１は図７の従来装置と異なり、記録装置９からの伝送要求信号８０２に応じてトランスポートストリーム１１６を出力する。
【００２３】
よって、伝送部８０１は一定間隔でトランスポートストリームを出力することは保障できない。
【００２４】
また、図７の従来の多重化装置と同様に、トランスポートストリーム中のＰＣＲフィールドがトランスポートストリームを出力するタイミングでシステム基準時刻ＳＴＣ１１３をＰＣＲフィールドに打刻する。
【００２５】
しかし、この従来技術には、次のような問題点があった。
【００２６】
第２の問題点は、トランスポートストリーム中に打刻したプログラム時刻基準参照値ＰＣＲに誤差が生じることである。プログラム時刻基準参照値ＰＣＲに許容される誤差を超えた場合、トランスポートストリームを再生する復号装置のクロック再生が不能になり、復号できなかったり、復号に乱れが生じる。
【００２７】
すなわち、一定したビットレートのトランスポートストリームではプログラム時刻基準参照値ＰＣＲの増加量と出力したトランスポートストリームデータバイト数の比が一定であるが、プログラム時刻基準参照値ＰＣＲに許容される誤差を超えた場合、その比が一定でないためである。
【００２８】
図９の従来の多重化装置における仮想的なトランスポートストリーム制御動作を説明するためのタイミングチャートを示した図１１を参照すると、図７の従来の多重化装置６がマスター動作をする伝送方式では、伝送部６０３が所定のＴＳパケット間隔でトランスポートストリームを出力し、一定期間毎にトランスポートストリームにシステム基準時刻ＳＴＣを基準にしたプログラム時刻基準参照値ＰＣＲを打刻していた。
【００２９】
ところが、多重化装置６の伝送部６０３がスレーブ動作で記録装置７に合わせて任意のタイミングでトランスポートストリームを出力すると、予定より早く、または遅いＳＴＣ時刻にプログラム時刻基準参照値ＰＣＲを打刻するため、打刻したプログラム時刻基準参照値ＰＣＲの増加量と出力したトランスポートストリームデータバイト数の比が一定しないので、打刻したプログラム時刻基準参照値ＰＣＲに誤差が生じる。
【００３０】
また、記録装置７が発生する任意のタイミング次第では、プログラム時刻基準参照値ＰＣＲに許容される誤差を超える。
【００３１】
第３の問題点は、所定のビットレートでトランスポートストリームを生成することが保障できない。
【００３２】
すなわち、図９の従来の多重化装置８において、伝送部８０１がスレーブ動作をすると、記録装置９のタイミングで伝送するためトランスポートストリームに打刻したプログラム時刻基準参照値ＰＣＲ間に存在するトランスポートストリームデータバイト数を所定のビットレートになるようにトランスポートストリーム出力を制御できないためである。
【００３３】
また、特許文献１の多重化装置では、ＰＣＲ仮想バッファ充足量とＴＳパケットの蓄積量とを比較して、ＴＳパケット分以上あるとＰＣＲ仮想バッファ充足量をＴＳパケット分減らしているので、後述する本発明の構成および効果とも異なる。
【００３４】
本発明の目的は、上述した従来の欠点に鑑みなされたものであり、トランスポートストリームを多重化出力し過ぎることで起こるアンダフローを検出し、アンダフローしないようにストリーム出力を制限することで、一定したビットレートのトランスポートストリームをスレーブ動作またはマスタ動作で出力できる多重化装置の構成を提供することにある。
【００３５】
【課題を解決するための手段】
本発明の多重化装置は、外部の記録装置から受ける伝送要求信号に応じてトランスポートストリームを送出する際に、前記トランスポートストリームのパケット数から生成したプログラム時刻基準参照値と内部クロック発生手段のクロックを基準にしたシステム基準時刻との比較結果に基づき、前記プログラム時刻基準参照値が前記システム基準時刻を超えた場合に前記トランスポートストリームの生成を中断し、かつ前記記録装置に対し第１の伝送停止要求信号を発行し、さらに前記トランスポートストリーム出力を停止して一定したビットレートを確保するトランスポートストリーム制御手段を有することを特徴とする。
【００３６】
また、前記トランスポートストリーム制御手段は、前記比較結果に基づき、前記システム基準時刻が前記プログラム時刻基準参照値を超えた場合に前記トランスポートストリームの生成を開始し、かつ前記記録装置に対する第１の伝送停止要求信号の発行を解除し、さらに前記トランスポートストリームの出力も開始する機能を有することができる。
【００３７】
さらに、前記トランスポートストリーム制御手段は、常に前記システム基準時刻の所定の時刻以前の時刻において前記トランスポートストリームを多重化して出力する機能を有することもできる。
【００３８】
さらにまた、前記トランスポートストリーム制御手段が、前記記録装置からの要求に対して多重化出力を中断するスレーブ動作の伝送機能を有することもできる。
【００３９】
また、前記トランスポートストリーム制御手段は、前記第１の伝送停止要求信号の発行または停止に応じて、トランスポートパケット生成手段を介して外部の符号化装置を制御し、その制御結果に応じ前記符号化装置から前記トランスポートパケット生成手段へのストリーム取り込みを制限して前記トランスポートパケット生成手段のバッファ破綻を抑制する機能を有する。
【００４０】
さらに、前記符号化装置を制御するための手段は、前記第１の伝送停止要求信号の発行および停止に応答してトランスポートパケット生成手段に符号化制御信号を生成させ、この符号化制御信号により前記符号化装置の符号化ビットレートの抑制、符号化の一時停止および符号化するデータの間引きを間接的に制御する機能を有する。
【００４１】
さらにまた、前記内部クロック発生手段のクロックに代えて、前記記録装置から供給されるクロックを基準に前記システム基準時刻を生成することもできる。
【００４２】
また、前記トランスポートストリームの受信手段およびその記録媒体を備えた前記記録装置から出力される前記伝送要求信号とその伝送要求信号に対して前記トランスポート制御手段から送出される前記第１の伝送停止要求信号とに代えて、前記記憶媒体への書き込みタイミングに同期させるために前記受信手段が前記トランスポートストリーム制御手段へ要求する第２の伝送停止要求信号を有する。
【００４３】
さらに、前記第２の伝送停止要求信号が無効期間中は前記トランスポートストリームの出力動作を維持することで前記トランスポートストリーム制御手段が前記記録装置に対してマスタ動作状態の伝送機能を有する。
【００４４】
本発明の多重化装置の他の特徴は、圧縮符号化されて伝送されたストリームデータを復号化手段から受けてトランスポートストリームを生成し外部の記録装置へ多重化出力するトランスポートストリーム制御手段を有する多重化装置において、前記トランスポートストリーム制御手段は、入力するストリームからトランスポートパケットを生成するトランスポートパケット生成手段と、前記トランスポートパケットを受ける多重化手段と、前記記録装置からの伝送要求信号に応答してトランスポートストリームを出力する伝送手段と、前記多重化手段が前記伝送部へ出力した前記トランスポートストリームを内蔵のデコーダバッファに仮想的に充足するとともに充足後の情報を前記多重化手段に出力する仮想バッファ計算手段と、入力されたクロックを基準にシステム基準時刻を生成するシステム基準時刻生成手段と、伝送開始時に前記システム基準時刻を基準にした時刻を設定するとともに前記仮想バッファ計算手段から入力したトランスポートパケット総数および所定のビットレートからプログラム時刻を計算するプログラム時刻基準参照値生成手段とから構成することにある。
【００４５】
また、前記多重化手段は、前記システム基準時刻と前記プログラム時刻基準参照値と前記仮想バッファ計算手段の制御情報とで多重化候補のトランスポートパケットを優先付けして前記トランスポートパケット生成手段から選択的に取り出し前記伝送手段に出力する機能を有する。
【００４６】
さらに、前記多重化手段は、プログラム時刻基準参照値フィールドを持つトランスポートパケットを前記伝送手段に出力するタイミングに同期して、前記プログラム時刻基準参照値を前記トランスポートストリームの前記プログラム時刻基準参照値フィールドに打刻する機能を有する。
【００４７】
さらにまた、前記多重化手段は、前記トランスポートパケット生成手段、システム基準時刻生成手段、プログラム時刻基準参照値生成手段、前記仮想バッファ計算手段の各情報を基に、前記ストリームの多重化で前記プログラム時刻基準参照値時刻が前記システム基準時刻に対して進み過ぎると発生するアンダフローを検出し、前記アンダフローに応答してストリーム出力を前記出力量の上限内に抑制する機能を有する。
【００４８】
また、前記仮想バッファ計算手段は、前記トランスポートパケット総数と予め定める所定のビットレートを前記プログラム時刻基準参照値生成手段へ出力する機能も有することができる。
【００４９】
さらに、前記記録装置は受信手段と記録媒体とを含み、前記受信手段は、前記伝送停止要求信号が無ければ、前記記録媒体に応じたクロックタイミングで前記伝送要求信号を出力し、前記伝送要求信号に応じて送出される前記トランスポートストリームを受信して前記記録媒体に書き込む機能を有することもできる。
【００５０】
本発明のトランスポートストリーム制御方法は、圧縮符号化されて伝送されたストリームデータを符号化手段から受けてトランスポートストリーム制御手段がトランスポートストリームを生成し多重化して外部の記録装置へ出力する多重化装置のトランスポートストリーム制御方法において、外部の記録装置から受ける伝送要求信号に応じてトランスポートストリームを送出する際に、前記トランスポートストリーム制御手段を用いて、前記トランスポートストリームのパケット数から生成したプログラム時刻基準参照値と内部クロック発生手段のクロックを基準にしたシステム基準時刻との比較結果に基づき、前記プログラム時刻基準参照値が前記システム基準時刻を超えた場合に前記トランスポートストリームの生成を中断し、かつ前記記録装置に対し第１の伝送停止要求信号を発行し、さらに前記トランスポートストリームの出力を停止して一定したビットレートを確保することにある。
【００５１】
また、前記比較結果に基づき、前記トランスポートストリーム制御手段は、前記システム基準時刻が前記プログラム時刻基準参照値を超えた場合に前記トランスポートストリームの生成を開始し、かつ前記記録装置に対する第１の伝送停止要求信号の発行を解除し、さらに前記トランスポートストリームの出力も開始することができる。
【００５２】
さらに、前記トランスポートストリーム制御手段が、常に前記システム基準時刻の所定の時刻以前の時刻において前記トランスポートストリームを多重化して出力することもできる。
【００５３】
さらにまた、前記トランスポートストリーム制御手段が、前記第１の伝送停止要求信号の発行および停止に応答してトランスポートパケット生成手段に符号化制御信号を生成させ、この符号化制御信号により前記符号化装置の符号化ビットレートの抑制、符号化の一時停止および符号化するデータの間引きを間接的に制御して、前記トランスポートストリームに複合時のエラー要因が発生するのを抑制することでもよい。
【００５４】
また、前記トランスポートストリームの受信手段およびその記録媒体を備えた前記記録装置から出力される前記伝送要求信号とその伝送要求信号に対して前記トランスポート制御手段から送出される前記第１の伝送停止要求信号とに代えて、前記記憶媒体への書き込みタイミングに同期させるための第２の伝送停止要求信号により、前記受信手段が前記トランスポートストリーム制御手段へ前記トランスポートストリームの伝送中断を要求することもできる。
【００５５】
本発明のトランスポートストリーム制御方法の他の特徴は、圧縮符号化されて伝送されたストリームデータを符号化手段から受けてトランスポートストリームを生成し外部の記録装置へ多重化して出力するトランスポートストリーム制御方法において、トランスポートパケット生成手段が入力ストリームまたはプログラム仕様情報に応じてトランスポートパケットを生成するステップと、
多重化手段が仮想バッファ計算手段から多重化候補のトランスポートパケット一覧を取得するステップと、
システム基準時刻生成手段から取得したシステム基準時刻とプログラム時刻基準参照値生成手段から取得したプログラム時刻基準参照値とを比較するステップと、比較した結果、前記システム基準時刻が前記プログラム時刻基準参照値よりも大きい場合、前記多重化候補一覧から優先順に検索して前記トランスポートパケット生成手段においても多重化可能な候補を取得するステップと、
前記記録装置からの伝送要求信号が有効であればトランスポートパケット生成手段から前記多重可能な候補のトランスポートパケットを取得し、伝送手段を介して前記トランスポートストリームとし前記記憶装置の受信手段に伝送するステップと、前記トランスポートストリームのプログラム時刻基準参照値を前記多重化手段が前記伝送手段に出力したトランスポートパケット総数および予め定める所定のビットレートから計算するステップと、
前記多重化手段が前記伝送手段へ出力したトランスポートパケットを仮想バッファ計算手段に充足し、現在のプログラム時刻基準参照値の時刻におけるデコーダバッファの情報を計算するステップと、
前記比較するステップで比較した結果、前記システム基準時刻が前記プログラム時刻基準参照値よりも小さい場合、前記多重化候補一覧から最優先候補を取得するステップと、
前記最優先候補が前記トランスポートパケット生成手段において多重化不能である場合、伝送停止要求信号を前記記憶装置に出力するステップと、
前記システム基準時刻が前記プログラム時刻基準参照値を上回るか、前記トランスポートパケット生成手段で多重化可能になるまで待ち、多重化可能になったら前記伝送停止要求信号をキャンセルするステップへ進むステップとを備えることにある。
【００５６】
また、前記最優先候補が前記トランスポートパケット生成手段において多重化不能である場合、前記システム基準時刻が前記プログラム時刻基準参照値を上回り、かつ前記トランスポートパケット生成手段で多重化可能になるまで待つステップと、前記最優先候補が多重化可能になり、かつ前記記録装置からの伝送停止要求信号が有効であれば無効になるまで待機し、無効であればトランスポートパケット生成手段から前記多重可能な候補のトランスポートパケットを取得し、伝送手段を介して前記トランスポートストリームとし前記記憶装置の受信手段に伝送するステップとを備えることができる。
【００５７】
【発明の実施の形態】
まず、本発明の概要を述べると、本発明は、トランスポートストリームの多重化装置において、一定したビットレートのトランスポートストリームをスレーブ動作で出力できる構成を提供するものである。前述したように、トランスポートストリームは、ＭＰＥＧ圧縮符号化して得られたビデオエレメンタリーストリーム、オーディオエレメンタリーストリームなどの入力ストリームに表示時刻ＰＴＳ、復号時刻ＤＴＳ等を付加してトランスポートパケット（ＴＳパケット）を生成し、また、時刻基準参照値ＰＣＲ、プログラム仕様情報ＰＳＩ、ヌルパケットと呼ばれるスタッフィングパケットとを時分割多重したストリームである。
【００５８】
なお、図示しないが、ここでの多重化装置にはＣＰＵと命令コードを格納するメモリとが内蔵されており、そのＣＰＵがメモリから命令コードを読出し、内部の各ユニットの動作を制御するとともに、後述する処理のプログラムを実行する。
【００５９】
本発明の第１の実施の形態の構成図で、多重化装置がスレーブ動作によりトランスポートストリームを多重化出力する構成を示した図１を参照すると、多重化装置１は、一定したビットレートのトランスポートストリーム１１６を生成し、記録装置２にスレーブ動作で伝送する。しかし、伝送速度は任意であり、トランスポートストリームのビットレートと一致するとは限らない。
【００６０】
そのため、多重化部１０３は、生成したトランスポートストリーム１１６のパケット数からプログラム時刻基準参照値ＰＣＲ１１４を生成し、クロック発生部１０８を基準にしたシステム基準時刻ＳＴＣ１１３とを比較する。
【００６１】
その比較結果が、プログラム時刻基準参照値ＰＣＲ１１４がシステム基準時刻１１３を超えた場合にトランスポートストリーム生成を中断し、伝送部１０７が伝送停止要求信号１１８を出してトランスポートストリーム出力を停止することで制限し、ビットレートの変動が抑制されて一定したビットレートのトランスポートストリーム１１６をスレーブ動作で出力することができるものである。
【００６２】
次に図面を参照しながら第１の実施の形態を詳細に説明する。図１を参照すると、本発明の多重化装置は、トランスポートストリーム１１６を多重化出力する多重化装置１と出力されたトランスポートストリーム１１６を記録する記録装置２とを備え、多重化装置１は、ＴＳパケット生成部１０２と多重化部１０３とＳＴＣ生成部１０４とＰＣＲ生成部１０５と仮想バッファ計算部１０６と伝送部１０７とクロック発生部１０８とを有する。
【００６３】
ＴＳパケット生成部１０２は、入力するストリーム数に相当するパケット生成部（１）〜（ｎ）１０９とヌルパケット生成部１１０とプログラム仕様情報パケット生成部１１１とを含み、生成したそれぞれのＴＳパケットを多重化部１０３に出力する。
【００６４】
パケット生成部（１）〜（ｎ）１０９は、入力されたストリーム（１）〜（ｎ）にシステム基準時刻ＳＴＣ１１３を基準に生成した表示時刻ＰＴＳ、復号時刻ＲＴＳを付加してＴＳパケットを生成する。
【００６５】
ヌルパケット生成部１１０は、スタッフィングバイトで埋められたＴＳパケットを生成する。
【００６６】
ＰＳＩパケット生成部１１１は、ＰＳＩ情報１１２からＴＳパケットを生成する。
【００６７】
ＳＴＣ生成部１０４は、入力されたクロック１１５を基準に多重化装置１のシステム基準時刻ＳＴＣ１１３を生成し、ＴＳパケット生成部１０２および多重化部１０３へ出力する。
【００６８】
ＰＣＲ生成部１０５は、プログラム時刻基準参照値ＰＣＲ１１４を生成する。
【００６９】
プログラム時刻基準参照値ＰＣＲ１１４は、伝送開始時にＳＴＣ１１３を基準にした時刻を設定し、仮想バッファ計算部１０６から入力したＴＳパケット総数と所定のビットレートからプログラム時刻基準参照値ＰＣＲ時刻を計算した値であり、多重化部１０３へ出力する。
【００７０】
すなわち、トランスポートストリーム１１６を出力する前にパラメータとしてビットレートを設定する。例えば、ビットレートが１２Ｍｂｐｓだとすると、多重化部で多重化したトランスポートパケット数をＰＣＲ生成部に与える。
【００７１】
これが例えば３パケットだとすると、その場合、現在ＰＣＲ値に対して加えるべき加算値は、以下の式で計算でき、計算した値をＰＣＲカウンタに加算することで生成する。
ＰＣＲ加算値＝（３×１８８×８／１２００００００）×２７００００００  ［２７ＭＨｚ］
ここで、（３×１８８×８／１２００００００）は、トランスポートストリーム中で３パケット分の経過時間、
×２７００００００  は、ＰＣＲの単位である２７ＭＨｚカウント値に変換することを示す。
【００７２】
多重化部１０３は、ＳＴＣ生成部１０４とＰＣＲ生成部１０５、仮想バッファ計算部１０６の制御情報を用いて多重化候補のＴＳパケットを優先付けしてＴＳパケット生成部１０２からＴＳパケットを選択して伝送部１０７に出力する。
【００７３】
多重化部１０３は、ＰＣＲフィールドを持つＴＳパケットを伝送部１０７に出力するタイミングでプログラム時刻基準参照値ＰＣＲ１１４から得たプログラム時刻基準参照値ＰＣＲ１１４をトランスポートストリーム１１６のＰＣＲフィールドに打刻する。
【００７４】
仮想バッファ計算部１０６は、多重化部１０３が伝送部１０７へ出力したトランスポートストリーム１１６を自身に内蔵するデコーダバッファに仮想的に充足し、デコーダバッファの情報を多重化部１０３に出力する。
【００７５】
伝送部１０７は、記録装置２からの伝送要求信号１１７に基づきトランスポートストリーム１１６を出力する。トランスポートストリーム出力に用いるクロックの入力元は、記録装置２であっても、多重化装置１のクロック発生部１０８であっても良い。多重化部１０３がトランスポートストリーム１１６を送ることができない場合には伝送停止要求信号１１８を記録装置２へ出し、記録装置２へのトランスポートストリーム１１６の伝送を停止する。
【００７６】
記録装置２は受信手段２０１と記録媒体２０２とを有する。受信手段２０１は、伝送停止要求信号１１８が無ければ、記録媒体２０２に応じたタイミングで伝送要求信号１１７を伝送部１０７へ出力し、トランスポートストリーム１１６を受信し、記録媒体２０２に受信データへの書き込み動作をする。
【００７７】
トランスポートストリーム１１６の多重化処理において、入力したストリーム（１）〜（ｎ）はパケット生成部１０９によってＴＳパケット化され多重化部１０３で多重化してトランスポートストリーム１１６を構成し、伝送部１０７を通じて記録装置２へと伝送される。
【００７８】
その際、多重化部１０３は、ＴＳパケット生成部１０２、ＳＴＣ生成部１０４、ＰＣＲ生成部１０５、仮想バッファ計算部１０６の各情報からトランスポートストリーム１１６を多重化出力し過ぎることで起こるアンダフローを検出し、アンダフローしないようにストリーム出力を制限する。
【００７９】
上述した構成により、ビットレートの変動が抑制されてトランスポートストリーム１１６を一定にしたビットレートのトランスポートストリーム１１６をスレーブ動作で出力することを実現する。
【００８０】
次に、図１とスレーブ動作で多重化出力するトランスポートストリーム制御方法を示すフローチャートを示した図２とを併せて参照すると、まず、ＴＳパケット生成部１０２は、入力ストリームやＰＳＩ情報１１２に応じてＴＳパケットを生成する。
【００８１】
多重化部１０３は、仮想バッファ計算部１０６から多重化候補のＴＳパケット一覧を取得する（ステップＳ１）。
【００８２】
次に、ＳＴＣ生成部１０４から１１３を取得し、ＰＣＲ生成部１０５からプログラム時刻基準参照値ＰＣＲ１１４を取得して比較する（ステップＳ２、Ｓ３）。
【００８３】
比較した結果、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４よりも大きい場合について説明する。多重化候補一覧から優先順に検索して、ＴＳパケット生成部１０２においても多重化可能な候補を取得し（ステップＳ４、Ｓ５、Ｓ６）、伝送停止要求信号１１８をキャンセルする（ステップＳ７）。
【００８４】
伝送要求信号１１７が有効であれば（ステップＳ８）、ＴＳパケット生成部１０２より候補のＴＳパケットを取得し、伝送部１０７に出力し、トランスポートストリーム１１６として受信手段２０１に伝送する（ステップＳ９）。
【００８５】
トランスポートストリーム１１６のプログラム時刻基準参照値ＰＣＲ１１４は、多重化部１０３が伝送部１０７に出力したＴＳパケット総数と所定のビットレートから計算する（ステップＳ１０）。
【００８６】
また、多重化部１０３が伝送部１０７へ出力したＴＳパケットを仮想バッファ計算部１０６に充足し、現在のプログラム時刻基準参照値ＰＣＲ時刻におけるデコーダバッファの情報を計算する（ステップＳ１１）。
【００８７】
一方、比較した結果、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４よりも小さい場合について説明する。
【００８８】
システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４よりも小さいので、多重化候補一覧から最優先候補を取得する（ステップＳ１２）。
【００８９】
最優先候補がＴＳパケット生成部１０２において多重化不能である場合（ステップＳ１３）、伝送停止要求信号１１８を出力し（ステップＳ１４）、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４を上回るか、ＴＳパケット生成部１０２において多重化可能になるまで待つ。
【００９０】
多重化可能になったら伝送停止要求信号１１８をキャンセルし（ステップＳ７）、上述した多重化処理を行う。
【００９１】
上述した処理ステップで、ビットレートの変動が抑制されてトランスポートストリーム１１６を一定したビットレートのトランスポートストリーム１１６をスレーブ動作で出力することを実現する。
【００９２】
次に、図１、図２およびトランスポートストリーム制御動作を説明するためのタイミングチャートを示した図３を併せて参照しながら、具体例を用いて説明する。
【００９３】
例えば、図１において、入力ストリーム（１）〜（ｎ）が説明を容易にするために２種類であると仮定し、それぞれをＡ、Ｂとする。Ａ，Ｂは例えばテレビ番組等を符号化する時で、この場合は、ビデオ、オーディオ、番組情報であり、もし、テレビ番組でも複数番組を同時に符号化する時は、ビデオ０、オーディオ０、番組情報０、ビデオ１、オーディオ１・・・と続くものである。
【００９４】
また、出力するトランスポートストリーム１１６のビットレートは１パケット送出に対し、プログラム時刻基準参照値ＰＣＲ１１４が２加算される値である場合について説明する。
【００９５】
さらに、システム基準時刻ＳＴＣ１１３は０から開始し、１パケット送出するのにシステム基準時刻ＳＴＣ１１３は１加算されるものとする。
【００９６】
さらにまた、ストリームＢは常に多重化可能な入力があり、ストリームＡはシステム基準時刻ＳＴＣ１１３が１の時に多重化可能なデータが入力され、以降はデータの入力が無かったものとする。
【００９７】
また、多重化装置１はパケット生成部１０９にストリームＡ、Ｂをパケット化するパケット生成部Ａ、Ｂを備える。
【００９８】
図３におけるタイミングｔ１において、はじめにステップＳ１は仮想バッファ計算部１０６から多重化候補のＴＳパケット一覧を取得し、図３に示した多重化候補リストは｛Ａ、Ｂ｝を示す。
【００９９】
この時、多重化の優先順はＡ、Ｂの順であるとする。ステップＳ２は、ＳＴＣ生成部１０４から現在のシステム基準時刻ＳＴＣ１１３を取得し、ＰＣＲ生成部１０５からは次に多重化するＴＳパケットのプログラム時刻基準参照値ＰＣＲ１１４を取得する。
【０１００】
システム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とは両方とも０を示す。ステップＳ３は、システム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とを比較し、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４以上であるため、ステップＳ４の最優先候補取得で｛Ａ、Ｂ｝の内Ａを選択する
ステップＳ５は、最優先候補が多重化の可否を調べ、Ａは多重化不可であるため、ステップＳ６により最優先候補のＡを削除する。
【０１０１】
ステップＳ４により多重化候補リスト｛Ｂ｝の最優先候補Ｂを選択する。ステップＳ５で最優先候補Ｂが多重化可能であることから、ステップＳ８で伝送停止要求信号１１８をキャンセルし、ステップＳ９で伝送要求信号１１７がアクティブになるのを待つ。
【０１０２】
ステップＳ９でパケット生成部ＢよりＴＳパケットを取得して伝送部１０７に出力する。ステップＳ１０は、プログラム時刻基準参照値ＰＣＲ１１４を加算する。この場合プログラム時刻基準参照値ＰＣＲ１１４は２になる。
【０１０３】
ステップＳ１１は、仮想バッファ計算部１０６にパケット生成部Ｂから取得したＴＳパケットを充足する。
【０１０４】
続いてタイミングｔ２において、ステップＳ１は、多重化候補一覧を取得し、多重化候補リストは｛Ａ、Ｂ｝を示す。
【０１０５】
ステップＳ２は、ＳＴＣ生成部１０４から現在のシステム基準時刻ＳＴＣ１１３を、ＰＣＲ生成部１０５からプログラム時刻基準参照値ＰＣＲ１１４をそれぞれ取得し、システム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とはそれぞれ１、２を示す。
【０１０６】
ステップＳ３は、システム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とを比較し、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４より低いため、ステップＳ１２で最優先候補取得で｛Ａ、Ｂ｝の内Ａを選択する。
【０１０７】
ステップＳ１３は、最優先候補Ａが多重化可能であるかを調べ、多重化可能であることからステップＳ７から上述と同様にストリームＡのＴＳパケット出力を行う。
【０１０８】
続いてタイミングｔ３において、ステップＳ１は、多重化候補一覧を取得し、多重化候補リストは｛Ａ、Ｂ｝を示す。ステップＳ２は、ＳＴＣ生成部１０４から現在のシステム基準時刻ＳＴＣ１１３を取得し、ＰＣＲ生成部１０５からはプログラム時刻基準参照値ＰＣＲ１１４を取得し、システム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とはそれぞれ２、４を示す。
【０１０９】
ステップＳ３は、システム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とを比較し、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４より低いため、ステップＳ１２で最優先候補取得で｛Ａ、Ｂ｝の内Ａを選択する。
【０１１０】
ステップＳ１３は、最優先候補Ａが多重化可能であるかを調べ、多重化が不能であることからステップＳ１４で伝送停止要求信号１１８をアクティブにする。
【０１１１】
ステップＳ２から同様にタイミングｔ４に到達するまで繰り返す。
【０１１２】
タイミングｔ４において、ステップＳ２で再度システム基準時刻ＳＴＣ１１３を取得し、システム基準時刻ＳＴＣ１１３は４を示す。
【０１１３】
ステップＳ３でシステム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とを比較し、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４以上であるため、ステップＳ７で伝送停止要求信号１１８をキャンセルし、ステップ８より上述と同様にストリームＢのＴＳパケット出力を行う。
【０１１４】
このようにして、ビットレートの変動が抑制されてトランスポートストリーム１１６を一定したビットレートのトランスポートストリーム１１６をスレーブ動作で出力することを可能にする。
【０１１５】
上述した第１の実施の形態によれば、まず第１に、システムに必要なバッファが削減できる。
【０１１６】
すなわち、従来、記録装置に備えた伝送用のバッファを多重化装置に備えることで記録装置のバッファが削減でき、多重化装置で備えるバッファサイズは記録装置で備えるバッファサイズに比べて少ないからである。
【０１１７】
従来、多重化装置がマスター動作で一定間隔で記録装置に伝送するシステムでは、記録装置において受信手段と記録手段との差を吸収する伝送用のバッファが必要であったが、本発明では記録装置が伝送タイミングを決めるため、記録装置の伝送用のバッファは不要である。
【０１１８】
しかし、その一方で、多重化装置がスレーブ動作で記録装置に伝送するシステムにおいては、多重化装置に記憶装置へ伝送するためのバッファを用意する必要がある。
【０１１９】
従来、多重化装置ではシステム基準時刻ＳＴＣ１１３とトランスポートストリーム中のプログラム時刻基準参照値ＰＣＲ１１４とは伝送部において同値であったが、本発明の多重化装置ではシステム基準時刻ＳＴＣ１１３とプログラム時刻基準参照値ＰＣＲ１１４とは非同期であり、互いの関係は前後する。
【０１２０】
そのため、従来に比べてＴＳパケット生成部にＳＴＣ−ＰＣＲの最大時間差分の入力ストリームを溜めるバッファが必要になるが、ＴＳパケット生成部で確保したバッファで蓄積するストリームデータは、パケットヘッダを付加する前である。
【０１２１】
そのため、確保するバッファ量は記録装置で必要な量に比べてパケットヘッダ分だけ少なくて済む。削減できるバッファサイズを求める式を以下に示す。
削減バッファサイズ＝（（最大ＳＴＣ−ＰＣＲ時間差）／２７，０００，０００）×（ｐａｃｋｅｔ＿ｏｖｅｒｈｅａｄ）×（ｔｒａｎｓｐｏｒｔ＿ｂｉｔｒａｔｅ）
次に、上記の算出式により具体的に削減できるバッファサイズを求める。多重化装置のトランスポートビットレートを１２Ｍｂｐｓ、記録装置のアクセスタイムを２０ｍｓｅｃであるとする。
【０１２２】
入力したストリームに対しトランスポートストリーム１１６を生成した時に付加されるデータ量は、パケットヘッダが２．１３％、プログラム情報が０．３％、ヌルパケットが０．５％であるとすると、合計で２．９３％である。
【０１２３】
詳述すると、トランスポートストリーム１１６は主に放送局からデジタル放送で使用されるか地上波やビデオカメラ等のアナログ映像を符号化して記録して自己録画／再生するために使用されるかの２種類に分かれる。ここでは、自己録再の場合の標準的なビットレートを例えば１２Ｍｂｐｓであるとする。
【０１２４】
記録装置のアクセスタイムは、１０〜３０ｍｓｅｃ前後の値と仮定してここでは２０ｍｓｅｃとする。
【０１２５】
パケットヘッダは、トランスポートストリーム１１６がトランスポートパケットの連続であり、トランスポートパケットは１８８バイトの固定長パケットで必ず４バイトのヘッダがつくので、ここでは４／１８８＝２．１３％とする。
【０１２６】
プログラム情報は、秒間２０パケット強のトランスポートパケットで出力するので、上記の４／１８８を除いた１８４バイトで２０パケット強のデータを１２Ｍｂｐｓで出力したときの計算値である。すなわち、（１８４×２０×８）／１２００００００≒０．３％である。
【０１２７】
ヌルパケットは、トランスポートストリーム１１６が固定ビットレートである必要があるが、トランスポートストリーム中に含まれるビデオは非同期に生成されるため、ジッタ（ゆらぎ）があり、オーディオには装置的に無である。
【０１２８】
例えば、アナログ放送波を受信した場合を考えると、ビデオの同期タイミングは放送局が作成したもので、オーディオはアナログ波を符号化装置がサンプリングしたタイミングになるためビデオにのみジッタがあることになる。
【０１２９】
トランスポートストリーム１１６を生成する時に、ジッタが入った結果、予定していたストリーム量よりも入力したビデオストリームが少なくなることがあり、ヌルパケットを挿入することで穴を埋めて固定したビットレートを保っている。逆に予定したよりもストリームが増えてしまった場合、あらかじめヌルパケットの伝送帯域を設け、ストリームが増えた時にヌルパケットを除く（伝送帯域を狭くする）ことで固定ビットレートを保っている。その伝送帯域がビットレートに対して、ここでは０．５％と仮定する。
【０１３０】
上式より削減できるバッファサイズは、８７９バイトであることが分かる。この削減できるバッファサイズは、アクセスタイムに比例して増えるため、アクセスタイムに比例してより効果があると言える。
【０１３１】
次に、ＰＣＲ生成部を追加したことによるデメリットについて検討する。ここで図１と前述した従来例における図７とを併せて参照すると、バッファを削減する代わりにＰＣＲ生成部を追加したことが分かる。
【０１３２】
このＰＣＲ生成部１０５が追加されることにより動作が異なる点は、図７の従来例でシステム基準時刻ＳＴＣ１１３をトランスポートストリーム中のＰＣＲフィールドに打刻していたのに対し、図１の本実施の形態においては、仮想バッファ計算部１０６に入力したトランスポートパケット数と所定のビットレートから計算した値を打刻する点で異なる。
【０１３３】
例えば、ＲＡＭにトランスポートストリーム１１６を溜めておいてＲＡＭからリードしてストリーム出力端子からストリームを送信する装置において、ＲＡＭにトランスポートストリーム１１６をライトするときに、ＰＣＲフィールドを打刻するべきＲＡＭアドレスを決めておき、ＲＡＭからデータをリードした時に上述のアドレスと一致したら、以降ＰＣＲフィールドのデータ数分はリードするが送信せず破棄して、代わりに内部のＳＴＣ（タイムスタンプ）のデータを送信するような装置であり、前述した図７がこれにあたる。
【０１３４】
もしくは、ＲＡＭにトランスポートストリーム１１６をライトするときにＰＣＲフィールドを含むトランスポートパケットのＰＣＲフィールド前のデータをライトして、ＳＴＣのデータをライトしてＰＣＲフィールド後のデータをライトする場合があり、これは図１がこのパタンにあたる。
【０１３５】
しかし、このＰＣＲ生成部１０５は単純な計算処理で済むため、特別なハードウェアを必要とせず、ソフトウェア処理で少ないステップを追加することで実現できる。そのため、ＰＣＲ生成部１０５を追加したことによるデメリットは低い。
【０１３６】
第２に、トランスポートストリーム中に打刻したプログラム時刻基準参照値ＰＣＲ１１４に誤差が生じないことである。
【０１３７】
すなわち、トランスポートストリーム１１６に打刻するプログラム時刻基準参照値ＰＣＲ１１４をＴＳパケット総数から計算することで、従来のトランスポートストリーム１１６を出力するタイミングに依存してプログラム時刻基準参照値ＰＣＲ１１４を決める方法による誤差が生じない。
【０１３８】
第３に、所定のビットレートでトランスポートストリーム１１６を安定して生成できることにある。
【０１３９】
すなわち、第２で述べた効果からプログラム時刻基準参照値ＰＣＲ１１４に誤差は無く、プログラム時刻基準参照値ＰＣＲ１１４は所定のビットレートと出力したトランスポートストリーム１１６のパケット総数から計算するので、トランスポートストリーム１１６は常に所定のビットレートで生成される。
【０１４０】
また、記録装置が過剰にトランスポートストリーム１１６を引き取ることを想定し、（多重化部がシステム基準時刻ＳＴＣ）＜（プログラム時刻基準参照値ＰＣＲ）を条件に出力制限制御を行うため、多重化装置にてＰＣＲ時刻がシステム基準時刻ＳＴＣ１１３に対して進み過ぎることで起こるアンダーフローを回避している。
【０１４１】
次に、本発明の第２の実施の形態を説明する。
【０１４２】
第２の実施の形態では、前述した第１の実施の形態に加え、多重化装置の伝送をマスター動作で行う場合について説明する。
【０１４３】
本発明の第２の実施の形態の構成図を示した図４と、トランスポートストリーム制御方法のフローチャートを示した図５とを併せて参照すると、ここでは多重化装置３の伝送部３０１がマスター動作で伝送を行うため、図１における伝送停止要求信号１１８が不要になる。代わりに図２における記録装置４の受信手段４０１に記録媒体２０２のタイミングに合わせるために伝送を停止する伝送停止要求信号３０２を加える点で第１の実施の形態と異なる。
【０１４４】
具体的には、第１に、ステップＳ３３で多重化可能で無い場合に伝送部が伝送停止要求信号をアクティブにしない点、第２に、ステップＳ２５もしくはステップＳ３３で多重化可能である場合に伝送停止要求信号をキャンセルにしない点、第３に、図２のステップＳ８で伝送要求信号がアクティブになるのを待つループがステップＳ３５にて伝送停止要求信号３０２がキャンセルになるのを待つループに変更した点と、以上３点において第１の実施の形態とは異なる。
【０１４５】
図５を参照すると、多重化部１０３は、仮想バッファ計算部１０６から多重化候補のＴＳパケット一覧を取得する（ステップＳ２１）。
【０１４６】
次に、ＳＴＣ生成部１０４からシステム基準時刻ＳＴＣ１１３を取得し、ＰＣＲ生成部１０５からプログラム時刻基準参照値ＰＣＲ１１４を取得して、これら双方を比較する（ステップＳ２２、Ｓ２３）。
【０１４７】
比較した結果、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４よりも大きい場合について説明する。多重化候補一覧から優先順に検索して、ＴＳパケット生成部１０２においても多重化可能な候補を取得する（ステップＳ２４、Ｓ２５、Ｓ２６）。
【０１４８】
伝送要求信号１１７が有効であれば（ステップＳ２８）、ＴＳパケット生成部１０２から候補のＴＳパケットを取得し、伝送部１０７に出力し、トランスポートストリーム１１６として受信手段２０１に伝送する（ステップＳ２９）。
【０１４９】
トランスポートストリーム１１６のプログラム時刻基準参照値ＰＣＲ１１４は、多重化部１０３が伝送部１０７に出力したＴＳパケット総数と所定のビットレートから計算する（ステップＳ３０）。
【０１５０】
また、多重化部１０３が伝送部１０７へ出力したＴＳパケットを仮想バッファ計算部１０６に充足し、現在のプログラム時刻基準参照値ＰＣＲ時刻におけるデコーダバッファの情報を計算する（ステップＳ３１）。
【０１５１】
一方、比較した結果、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４よりも小さい場合、多重化候補一覧から最優先候補を取得する（ステップＳ３２）。
【０１５２】
最優先候補がＴＳパケット生成部１０２において多重化不能である場合（ステップＳ３３）、システム基準時刻ＳＴＣ１１３がプログラム時刻基準参照値ＰＣＲ１１４を上回るか、ＴＳパケット生成部１０２において多重化可能になるまで待ち、多重化可能になったら上記で述べた多重化処理を行う。
【０１５３】
上述した処理ステップで、ビットレートの変動が抑制されてランスポートストリームを一定したビットレートのトランスポートストリーム１１６をマスタ動作で出力することを実現する。
【０１５４】
なお、図１と図４とは多重化装置３と記録装置４とでどちらがマスターになり伝送を行うかが異なるのみで多重化動作の挙動は図１、図２の伝送方法と同等の効果が得られる。
【０１５５】
次に、第３の実施の形態を説明する。
【０１５６】
第３の実施の形態の構成図を示した図６を参照すると、前述した第１および第２の実施の形態に加え、多重化装置５のＴＳパケット生成部において、ＴＳパケット生成部のバッファ量が容量限界、もしくは限界に近い間、ＴＳパケット生成部へのストリーム入力を停止する。
【０１５７】
多重化装置５の前段にある符号化装置（不図示）は、パケット生成部（１）〜（２）か符号化装置へ出力する符号化制御信号３０４を新たに設け、この符号化制御信号３０４によりＴＳパケット生成部へのストリーム出力が停止期間中、符号化ビットレートを抑える、または符号化を一時停止する、符号化するデータを間引くなどを行って符号化装置のバッファ破綻やストリームに不連続点を発生しないように制御する。
【０１５８】
この実施の形態によれば次のような状態にも対応する。例えば、記録装置が伝送を長時間停止した場合、多重化装置５のＴＳパケット生成部１０２は入力されたストリームを多重化部に出力できずにＴＳパケット生成部のバッファが破綻する。
【０１５９】
破綻した時のデータは記録装置に伝送できないため、記録したトランスポートストリーム１１６には不連続点が発生する。不連続点を含むトランスポートストリーム１１６を復号すると、不連続点において復号エラーが発生するため、復号映像や音声が途切れる。
【０１６０】
従って本実施の形態では、トランスポートストリーム１１６の不連続点を作らないため、スムーズな復号映像や音声の表示が行えるようになる。
【０１６１】
さらに、記録装置が伝送を一時停止することで、多重化装置、符号化装置との連系動作を他の制御手段を通じて開始や停止をせずに、多重化装置における伝送の開始、伝送の停止で制御を行うことができるので、符号化装置と記録装置との連携を簡略化できる。
【０１６２】
【発明の効果】
上述したように、本発明の多重化装置、トランスポートストリーム制御方法およびそのプログラムは、多重化部が、一定したビットレートのトランスポートストリームを生成し、記録装置にスレーブ動作で伝送するとともに、多重化部は、生成したトランスポートストリームのパケット数からプログラム時刻基準参照値ＰＣＲを生成し、生成したプログラム時刻基準参照値ＰＣＲとクロック発生部を基準にしたシステム基準時刻ＳＴＣとを比較し、プログラム時刻基準参照値ＰＣＲがシステム基準時刻ＳＴＣを超えた場合にトランスポートストリーム生成を中断し、伝送部が記録装置に伝送停止要求信号を出してトランスポートストリーム出力を停止することで伝送を制限するので、システムに必要なバッファが削減できる。
【０１６３】
すなわち、従来、記録装置に備えた伝送用のバッファを多重化装置に備えることで記録装置のバッファが削減でき、多重化装置で備えるバッファサイズは記録装置で備えるバッファサイズに比べて少なくなる。
【０１６４】
また、トランスポートストリーム中に打刻したプログラム時刻基準参照値ＰＣＲに誤差が生じない。すなわち、トランスポートストリームに打刻するプログラム時刻基準参照値ＰＣＲをＴＳパケット総数から計算することで、従来のトランスポートストリームを出力するタイミングに依存しプログラム時刻基準参照値てプログラム時刻基準参照値ＰＣＲを決める方法による誤差が生じない。
【０１６５】
さらに、所定のビットレートでトランスポートストリームを安定して生成できる。
【０１６６】
すなわち、上述の効果からプログラム時刻基準参照値ＰＣＲに誤差は無く、プログラム時刻基準参照値ＰＣＲは所定のビットレートと出力したトランスポートストリームのパケット総数から計算するので、トランスポートストリームは常に所定のビットレートで生成される。
【０１６７】
さらにまた、記録装置が過剰にトランスポートストリームを引き取ることを想定し、多重化部が（ＳＴＣ）＜（ＰＣＲ）を条件に出力制限制御を行うため、多重化装置にてプログラム時刻基準参照値ＰＣＲ時刻がシステム基準時刻ＳＴＣに対して進み過ぎることで起こるアンダーフローを回避する。
【図面の簡単な説明】
【図１】本発明の第１の実施形態の構成図である。
【図２】スレーブ動作で多重化出力するトランスポートストリーム制御方法を示すフローチャートである。
【図３】本発明の第１の実施の形態のトランスポートストリーム制御動作を説明するためのタイミングチャートである。
【図４】本発明の第２の実施の形態の構成図である。
【図５】本発明の第２の実施の形態のトランスポートストリーム制御方法を示すフローチャートである。
【図６】本発明の第３の実施の形態の構成図である。
【図７】従来の多重化装置においてマスター動作で多重化出力する例の構成図である。
【図８】従来の多重化装置においてマスター動作で多重化出力するトランスポートストリームの制御方法のフローチャートである。
【図９】図７の従来の多重化装置においてスレーブ動作でトランスポートストリームを多重化出力する仮想的な例の構成図である。
【図１０】図７の多重化装置におけるトランスポートストリーム制御動作を説明するためのフローチャートである。
【図１１】図９の従来の多重化装置においてスレーブ動作による仮想的なトランスポートストリーム制御動作を説明するためのタイミングチャートである。
【符号の説明】
１，３，５，６，８    多重化装置
２，４，７，９    記録装置
１０２    ＴＳパケット生成部
１０３，６０１    多重化部
１０４，６０４    ＳＴＣ生成部
１０５    ＰＣＲ生成部
１０６，６０２    仮想バッファ計算部
１０７，３０１，６０３，８０１    伝送部
１０８    クロック発生部
１０９    パケット生成部（１）〜（ｎ）
１１０    ヌルパケット生成部
１１１    ＰＳＩパケット生成部
１１２    ＰＳＩ情報
１１３    システム基準時刻ＳＴＣ
１１４    プログラム時刻基準参照値ＰＣＲ
１１５    クロック
１１６    トランスポートストリーム
１１７，８０２    伝送要求信号
１１８，３０２    伝送停止要求信号
２０１，４０１，７０１    受信手段
２０２    記録媒体
３０４    符号化制御信号
７０２    受信バッファ
【図１】
2004187175.tif 000003
【図２】
2004187175.tif 000004
【図３】
2004187175.tif 000005
【図４】
2004187175.tif 000006
【図５】
2004187175.tif 000007
【図６】
2004187175.tif 000008
【図７】
2004187175.tif 000009
【図８】
2004187175.tif 000010
【図９】
2004187175.tif 000011
【図１０】
2004187175.tif 000012
【図１１】
2004187175.tif 000013