(57)【特許請求の範囲】
【請求項１】
エレメンタリストリームが多重化されたトランスポートストリームを記録するトランスポートストリーム記録装置において、
前記トランスポートストリームに含まれているヌルパケットを除去する除去手段と、
前記ヌルパケットが除去されたトランスポートストリームを構成する全てのトランスポートパケットに時刻情報を付加する付加手段と、
前記付加手段が前記時刻情報を付加した前記トランスポートパケットを一時的に記憶する記憶手段と、
前記記憶手段が記憶した前記時刻情報が付加された前記トランスポートパケットを所定のビットレートで読み出す読み出し手段と、
前記読み出し手段が所定のビットレートで読み出した前記時刻情報が付加された前記トランスポートパケットを情報記録媒体に記録する記録手段と
を含むトランスポートストリーム記録装置。
【請求項２】
エレメンタリストリームが多重化されたトランスポートストリームを記録するトランスポートストリーム記録装置のトランスポートストリーム記録方法において、
前記トランスポートストリームに含まれているヌルパケットを除去する除去ステップと、
前記ヌルパケットが除去されたトランスポートストリームを構成する全てのトランスポートパケットに時刻情報を付加する付加ステップと、
前記付加ステップの処理で前記時刻情報が付加された前記トランスポートパケットを一時的に記憶する記憶ステップと、
前記記憶ステップの処理で記憶した前記時刻情報が付加された前記トランスポートパケットを所定のビットレートで読み出す読み出しステップと、
前記読み出しステップの処理で所定のビットレートで読み出された前記時刻情報が付加された前記トランスポートパケットを情報記録媒体に記録する記録ステップと
を含むトランスポートストリーム記録方法。
【請求項３】
エレメンタリストリームが多重化されたトランスポートストリームを記録するトランスポートストリーム記録装置の記録用のプログラムであって、
前記トランスポートストリームに含まれているヌルパケットを除去する除去ステップと、
前記ヌルパケットが除去されたトランスポートストリームを構成する全てのトランスポートパケットに時刻情報を付加する付加ステップと、
前記付加ステップの処理で前記時刻情報が付加された前記トランスポートパケットを一時的に記憶する記憶ステップと、
前記記憶ステップの処理で記憶した前記時刻情報が付加された前記トランスポートパケットを所定のビットレートで読み出す読み出しステップと、
前記読み出しステップの処理で所定のビットレートで読み出された前記時刻情報が付加された前記トランスポートパケットを情報記録媒体に記録する記録ステップと
を含む処理を、前記トランスポートストリーム記録装置のコンピュータに実行させるプログラムを記録した記録媒体。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、トランスポートストリーム記録装置および方法、並びに記録媒体に関し、特に、ビットレートが変動するエレメンタリストリームを多重化してトランスポートストリームを生成して、記録する場合に用いて好適なトランスポートストリーム記録装置および方法、並びに記録媒体に関する。
【０００２】
【従来の技術】
図１は、従来のトランスポートストリーム生成装置の構成の一例を示している。このトランスポートストリーム生成装置は、入力されるビデオ信号およびオーディオ信号をMPEG(Moving Picture Experts Group)２方式でエンコードした後、トランスポートパケット（以下、ＴＳパケットと記述する）化して時分割で多重化することにより、トランスポートストリームを生成するものである。
【０００３】
このトランスポートストリーム生成装置のMPEGビデオエンコーダ１は、入力されるビデオ信号をMPEG２方式でエンコードして、得られたMPEGビデオストリームをビデオストリームバッファ２に出力する。MPEGビデオエンコーダ１はまた、得られたMPEGビデオストリームに対応するアクセスユニット情報を多重化スケジューラ５に出力する。MPEGビデオストリームに対応するアクセスユニット情報とは、MPEGビデオストリームを構成する各ピクチャのピクチャタイプ、符号化ビット量、およびデコードタイムスタンプである。ここで、ピクチャタイプとは、当該ピクチャがIピクチャ、Pピクチャ、またはBピクチャのうちのいずれであるかを示す情報であり、デコードタイムスタンプとは、MPEG２システムズ(ISO/IEC 13818-1)で規定されている情報である。
【０００４】
ビデオストリームバッファ２は、MPEGビデオエンコーダ１から入力されるMPEGビデオストリームを一時的に蓄え、スイッチ６を介するトランスポートパケット化回路７からの要求に対応して、蓄えたMPEGビデオストリームをスイッチ６の入力端子ａを介してトランスポートパケット化回路（以下、ＴＳパケット化回路と記述する）７に出力する。
【０００５】
MPEGオーディオエンコーダ３は、入力されるオーディオ信号をMPEG２方式でエンコードして、得られたMPEGオーディオストリームをオーディオストリームバッファ４に出力する。MPEGオーディオエンコーダ３はまた、得られたMPEGオーディオストリームに対応するアクセスユニット情報を多重化スケジューラ５に出力する。MPEGオーディオストリームに対応するアクセスユニット情報とは、MPEGオーディオストリームを構成する各オーディオフレームの符号化ビット量、およびデコードタイムスタンプである。
【０００６】
オーディオストリームバッファ４は、MPEGオーディオエンコーダ３から入力されるMPEGオーディオストリームを一時的に蓄え、スイッチ６を介するＴＳパケット化回路７からの要求に対応して、蓄えたMPEGオーディオストリームをスイッチ６の入力端子ｂを介してＴＳパケット化回路７に出力する。
【０００７】
多重化スケジューラ５は、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３から入力されるアクセスユニット情報に基づいて、MPEGビデオストリームおよびMPEGオーディオストリームからトランスポートストリームを生成する方法を決定し、決定結果に対応するパケット化制御情報を生成して、スイッチ６およびＴＳパケット化回路７に出力する。多重化スケジューラ５はまた、MPEG２システムズで規定されているPCR（Program Clock Reference、プログラム時刻基準参照値）を発生し、ＴＳパケット化回路７に出力する。
【０００８】
スイッチ６は、多重化スケジューラ５から入力されるパケット化制御情報に基づいて、ビデオストリームバッファ２からのMPEGビデオストリームが入力される入力端子ａ、オーディオストリームバッファ４からのMPEGオーディオストリームが入力される入力端子ｂ、または、情報としては意味をなさない、トランスポートストリームのビットレートを一定とするために用いられるヌルデータ(Null data)が入力される入力端子ｃに切り替えられる。したがって、ＴＳパケット化回路７には、MPEGビデオストリーム、MPEGオーディオストリーム、またはヌルデータのいずれかが入力される。
【０００９】
ＴＳパケット化回路７は、多重化スケジューラ５から入力されるパケット化制御情報に基づいて、スイッチ６から入力されるMPEGビデオストリーム、MPEGオーディオストリーム、ヌルデータ、または、多重化スケジューラ５から入力されるPCRをＴＳパケット化し、後段に出力する。
【００１０】
次に、多重化スケジューラ５の動作について、図２にフローチャートを参照して説明する。このＴＳパケット化制御処理は、多重化スケジューラ５に、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３から最初のアクセスユニット情報が入力されたときに開始される。
【００１１】
ステップＳ１において、多重化スケジューラ５は、ＴＳパケット化回路７に生成させるトランスポートストリームのビットレートを決定する。トランスポートストリームのビットレートは、各入力ストリーム（MPEGビデオストリームおよびMPEGオーディオストリーム）のビットレートの最大値の総和よりも、少なくとも多重化のためにＴＳパケット化されて付加されるヘッダの分だけ大きい値に設定される。これ以降、決定されたトランスポートストリームのビットレートは固定値となる。
【００１２】
ステップＳ２において、多重化スケジューラ５はMPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３からのアクセスユニット情報を受信して、ＴＳパケットの符号化方法（ペイロードデータ長等）を決定する。この符号化方法は、MPEG２システムズで規定されているT-STD(Transport stream System Target Decorder)の条件を満たすものである。
【００１３】
ステップＳ３において、多重化スケジューラ５は、PCRパケットを生成するタイミングであるか否かを判定する。PCRパケットを生成するタイミングであると判定された場合、ステップＳ４に進む。ここで、PCRパケットとは、トランスポートパケットのadaptation_fieldにMPEG２システムズで規定されているPCRが符号化されているパケットである。PCRパケットは、１００ミリ秒以内の時間間隔で生成しなければならない。PCRは、トランスポートパケットが受信側に到着する時刻を２７MHzの精度で表すものである。
【００１４】
ステップＳ４において、多重化スケジューラ５は、PCRパケットの生成を指示するパケット化制御情報をＴＳパケット化回路７に出力する。
【００１５】
次に、ステップＳ５に進み、多重化スケジューラ５は、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３のそれぞれから入力されたアクセスユニット情報に基づいて、当該トランスポートストリーム生成装置に対するビデオ信号およびオーディオ信号の入力が終了したか否かを判定する。ビデオ信号およびオーディオ信号の入力が終了していないと判定された場合、ステップＳ２に戻り、それ以降の処理が繰り返される。
【００１６】
再び、ステップＳ３に進み、PCRパケットを生成するタイミングではないと判定された場合、ステップＳ６に進む。
【００１７】
ステップＳ６において、多重化スケジューラ５は、MPEGオーディオエンコーダ３から入力されたアクセスユニット情報に基づいて、MPEGオーディオストリームをＴＳパケット化するタイミングであるか否かを判定する。MPEGオーディオストリームをＴＳパケット化するタイミングであると判定された場合、ステップＳ７に進む。
【００１８】
ステップＳ７において、多重化スケジューラ５は、オーディオＴＳパケットの生成と、そのペイロードデータ長を指示するパケット化制御情報を、スイッチ６およびＴＳパケット化回路７に出力する。オーディオパケットの場合、そのペイロードは、所定の数のオーディオフレームをMPEGで規定されているPESパケットにパケット化したデータを１８４バイト（１８８バイトのトランスポートパケットから４バイトの必須ヘッダを除いたデータ長）ずつに分割したものである。従って、PESパケットの最後のデータを含む場合、ペイロードのデータ長は、そのPESパケットのデータ長を１８４で割ったときの余りであり、それ以外のときのペイロードのデータ長は１８４バイトである。
【００１９】
また、ステップＳ６において、MPEGオーディオストリームをＴＳパケット化するタイミングではないと判定された場合、ステップＳ８に進む。ステップＳ８において、多重化スケジューラ５は、MPEGビデオエンコーダ１から入力されたアクセスユニット情報に基づいて、MPEGビデオストリームをＴＳパケット化するタイミングであるか否かを判定する。MPEGビデオストリームをＴＳパケット化するタイミングであると判定された場合、ステップＳ９に進む。
【００２０】
ステップＳ９において、多重化スケジューラ５は、ビデオＴＳパケットの生成と、そのペイロードデータ長を指示するパケット化制御情報を、スイッチ６およびＴＳパケット化回路７に出力する。ビデオパケットの場合、そのペイロードは、１枚のピクチャをMPEGで規定されているPESパケットにパケット化したデータを１８４バイト（１８８バイトのトランスポートパケットから４バイトの必須ヘッダを除いたデータ長）ずつに分割したものである。従って、PESパケットの最後のデータを含む場合、ペイロードのデータ長は、そのPESパケットのデータ長を１８４で割ったときの余りであり、それ以外のときのペイロードのデータ長は１８４バイトである。
【００２１】
なお、ステップＳ８において、MPEGビデオストリームをＴＳパケット化するタイミングではないと判定された場合、ステップＳ１０に進む。ステップＳ１０において、多重化スケジューラ５は、ヌルパケットの生成を指示するパケット化制御情報を、スイッチ６およびＴＳパケット化回路７に出力する。ここで、ヌルパケットとは、ＴＳパケットのPIDがx1FFFであり、ペイロードに意味をなさないデータが記述されているパケットである。ヌルパケットは、PCRパケット、ビデオＴＳパケット、およびオーディオＴＳパケットが生成されないタイミングにおいて、トランスポートストリームのビットレートを一定化するために生成される。
【００２２】
その後、ステップＳ５において、ビデオ信号およびオーディオ信号の入力が終了したと判定された場合、多重化スケジューラ５は、ＴＳパケット化の終了を指示するパケット化制御情報をＴＳパケット化回路７に出力した後、このＴＳパケット化制御処理を終了する。
【００２３】
次に、ＴＳパケット化回路７の動作について、図３のフローチャートを参照して説明する。始めに、ステップＳ１１において、ＴＳパケット化回路７に、多重化スケジューラ５からのパケット化制御信号が入力される。ステップＳ１２において、ＴＳパケット化回路７は、ステップＳ１１で入力されたパケット化制御信号に対応して、スイッチ６から入力されるデータをＴＳパケット化する。
【００２４】
すなわち、パケット化制御信号がPCRパケットの生成を指示するものである場合、このパケット化制御信号に対応して、ＴＳパケット化回路７は、多重化スケジューラ５から入力されるPCRを用いてPCRパケットを生成する。
【００２５】
パケット化制御信号がビデオＴＳパケットの生成を指示するものである場合、このパケット化制御信号に対応して、ＴＳパケット化回路７は、入力端子ａに切り替えられたスイッチ６を介してビデオストリームバッファ３からMPEGビデオストリームを読み出し、ビデオＴＳパケットを生成する。
【００２６】
パケット化制御信号がオーディオＴＳパケットの生成を指示するものである場合、このパケット化制御信号に対応して、ＴＳパケット化回路７は、入力端子ｂに切り替えられたスイッチ６を介してオーディオストリームバッファ４からMPEGオーディオストリームを読み出し、オーディオＴＳパケットを生成する。
【００２７】
パケット化制御信号がヌルパケットの生成を指示するものである場合、このパケット化制御信号に対応して、ＴＳパケット化回路７は、入力端子ｃに切り替えられたスイッチ６を介して入力されるヌルデータを用いて、ヌルパケットを生成する。
【００２８】
次に、図４は、図１のトランスポートストリーム生成装置により生成されたトランスポートストリームを記録するトランスポートストリーム記録装置の構成の一例を示している。ビットストリームパーサ１１は、入力されるトランスポートストリーム（図１のトランスポートストリーム生成装置により生成されたトランスポートストリーム）をTSP_extra_header付加回路１４に供給するとともに、トランスポートストリームを構成するPCRパケットからPCRを読み出してPLL(Phase Locked Loop)回路１２に出力する。PLL回路１２は、当該トランスポートストリーム記録装置のクロック信号（２７MHz）をPCRにロックさせる。タイムスタンプ発生回路１３は、PCRにロックされたクロック信号のクロックカウンタ値に基づいてタイムスタンプを発生し、TSP_extra_header付加回路１４に出力する。
【００２９】
TSP_extra_header付加回路１４は、ビットストリームパーサ１１からの各ＴＳパケットの第１バイト目がスムージングバッファ１５に入力されるときのタイムスタンプ発生回路１３から供給されるタイムスタンプを、TSP_extra_headerとして各ＴＳパケットに付加する。
【００３０】
図５は、TSP_extra_headerが付加されたＴＳパケットの記録フォーマットを示している。同図に示すように、TSP_extra_header（３バイト）は、ＴＳパケットの第１バイト目のsync_byte(=0x47)を除いた１８７バイトのMSB(Most Significant Bit)側に付加される。TSP_extra_headerは、３ビットのリザーブ(reserved)、および２１ビットのタイムスタンプカウンタ(time_satmp_counter)から構成される。タイムスタンプカウンタは、MPEG２システムズ(ISO/IEC13818-1)で規定されているスムージングバッファ１５の入力におけるＴＳパケットの第１バイト目の最初のビットの予定到着時刻を示す。
【００３１】
タイムスタンプが付加されたＴＳパケットは、スムージングバッファ１５にバッファリングされた後、例えば、磁気テープ等の記録媒体１６に記録される。
【００３２】
次に、図６は、図５のトランスポートストリーム記録装置によって記録媒体１６に記録されたＴＳパケットを再生するトランスポートストリーム再生装置の構成の一例を示している。TSP_extra_header分離回路１７は、記録媒体１６から読み出した、TSP_extra_headerが付加されたＴＳパケットからTSP_extra_headerを分離してその中のタイムスタンプカウンタの値を、タイミング発生回路２１および比較回路１９に出力し、TSP_extra_headerが分離されたＴＳパケットを出力制御回路１８に供給する。
【００３３】
タイミング発生回路２１は、発振回路２０から供給されるクロック信号（２７MHz）に基づいて、TSP_extra_header分離回路１７から最初に供給されるタイムスタンプカウンタの値を初期値とする時間を計算する。比較回路１９は、タイミング発生回路２１からの時間と、TSP_extra_header分離回路１７からのタイムスタンプカウンタの値を比較して、両者が等しい場合、出力制御回路１８に制御信号を供給する。出力制御回路１８は、比較回路１９から制御信号が入力された場合、TSP_extra_header分離回路１７からのTSP_extra_headerが除去されたＴＳパケットを後段に出力する。
【００３４】
図７は、上述したトランスポートストリーム生成装置、およびトランスポートストリーム記録装置によるＴＳパケットの生成と記録の例を示している。ただし、同図においては、図示を簡略化するためにビデオ信号だけを入力した場合を示している。MPEGビデオエンコーダ１で生成された可変ビットレートのMPEGビデオストリームは、ビデオバッファ２およびスイッチ６を介してＴＳパケット化回路７に供給され、同図(A)に示すように、固定ビットレートのトランスポートストリームとして後段に出力される。
【００３５】
すなわち、ビデオビットレートＲｖが６Mbpsである状態のときに、ヌルパケットが用いられない状態であるとすると、ビデオビットレートＲｖが２Mbpsであるときには、１個のビデオＴＳパケットが生成された後に、２個のヌルパケットが生成されることとなり、ビデオビットレートＲｖが３Mbpsであるときには、１個のビデオＴＳパケットが生成された後に、１個のヌルパケットが生成されることとなる。このようにして生成されたビデオＴＳパケットとヌルパケットには、同図(B)に示すように、TSP_extra_headerが付加されて、同図(C)に示すように、前詰めされて記録媒体１６に記録される。
【００３６】
【発明が解決しようとする課題】
以上のように、従来において生成されるトランスポートストリームには、そのビットレートを一定化させるためにヌルパケットが挿入されていた。すなわち、平均ビットレートがＲAVであり、最大ビットレートがＲMAXである可変ビットレートのストリームを用いて、固定ビットレートＲMAXのトランスポートストリームを生成する場合、生成されるトランスポートストリームには、単位時間当たり、ビット量（ＲMAX−ＲAV）のヌルパケットが含まれることとなる。
【００３７】
そのようなトランスポートストリームを記録する場合、情報としては意味をなさないヌルパケットも記録することになるので、ヌルパケットを記録する記録媒体の領域やその記録処理に費やす時間が無駄であって、実質的な情報の記録効率が悪い課題があった。
【００３８】
本発明はこのような状況に鑑みてなされたものであり、間欠的なＴＳパケットに時刻情報を付加した後、間隔を詰めることにより、トランスポートストリームを効率的に記録できるようにするものである。
【００４４】
【課題を解決するための手段】
本発明のトランスポートストリーム記録装置は、トランスポートストリームに含まれているヌルパケットを除去する除去手段と、ヌルパケットが除去されたトランスポートストリームを構成する全てのトランスポートパケットに時刻情報を付加する付加手段と、付加手段が時刻情報を付加したトランスポートパケットを一時的に記憶する記憶手段と、記憶手段が記憶した時刻情報が付加されたトランスポートパケットを所定のビットレートで読み出す読み出し手段と、読み出し手段が所定のビットレートで読み出した時刻情報が付加されたトランスポートパケットを情報記録媒体に記録する記録手段とを含む。
【００４５】
本発明のトランスポートストリーム記録方法は、トランスポートストリームに含まれているヌルパケットを除去する除去ステップと、ヌルパケットが除去されたトランスポートストリームを構成する全てのトランスポートパケットに時刻情報を付加する付加ステップと、付加ステップの処理で時刻情報が付加されたトランスポートパケットを一時的に記憶する記憶ステップと、記憶ステップの処理で記憶した時刻情報が付加されたトランスポートパケットを所定のビットレートで読み出す読み出しステップと、読み出しステップの処理で所定のビットレートで読み出された時刻情報が付加されたトランスポートパケットを情報記録媒体に記録する記録ステップとを含む。
【００４６】
本発明の記録媒体に記録されたプログラムは、トランスポートストリームに含まれているヌルパケットを除去する除去ステップと、ヌルパケットが除去されたトランスポートストリームを構成する全てのトランスポートパケットに時刻情報を付加する付加ステップと、付加ステップの処理で時刻情報が付加されたトランスポートパケットを一時的に記憶する記憶ステップと、記憶ステップの処理で記憶した時刻情報が付加されたトランスポートパケットを所定のビットレートで読み出す読み出しステップと、読み出しステップの処理で所定のビットレートで読み出された時刻情報が付加されたトランスポートパケットを情報記録媒体に記録する記録ステップとを含む処理をトランスポートストリーム記録装置のコンピュータに実行させる。
【００４８】
本発明においては、トランスポートストリームに含まれているヌルパケットが除去され、ヌルパケットが除去されたトランスポートストリームを構成する全てのトランスポートパケットに時刻情報が付加される。また、時刻情報が付加されたトランスポートパケットが一時的に記憶され、記憶された時刻情報が付加されたトランスポートパケットが所定のビットレートで読み出され、所定のビットレートで読み出された時刻情報が付加されたトランスポートパケットが情報記録媒体に記録される。
【００４９】
【発明の実施の形態】
本発明を適用したトランスポートストリーム記録装置（以下、ＴＳ記録装置と記述する）の構成例について、図８を参照して説明する。このＴＳ記録装置は、入力されるビデオ信号およびオーディオ信号を、MPEG２方式でエンコードした後、ＴＳパケット化して時分割で多重化し、得られたトランスポートストリーム（以下、ＴＳと記述する）を記録媒体に記録するものである。なお、当該ＴＳ記録装置を構成する回路のうちの、図１に示したトランスポートストリーム生成装置を構成する回路と共通するもの（MPEGビデオエンコーダ１乃至オーディオストリームバッファ４）については同一の符号を付しており、その説明は適宜省略する。
【００５０】
ＴＳ記録装置の多重化スケジューラ５は、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３のそれぞれから入力されるアクセスユニット情報に基づいて、パケット化制御情報を生成し、スイッチ６およびＴＳパケット化回路７に出力する。多重化スケジューラ５はまた、MPEG２方式で規定されているPCRを発生し、ＴＳパケット化回路７およびarrival_time_stamp計算回路３２に出力する。
【００５１】
スイッチ３１は、多重化スケジューラ５から入力されるパケット化制御情報に基づいて、ビデオストリームバッファ２の出力が供給される入力端子ａ、オーディオストリームバッファ４の出力が供給される入力端子ｂ、または中立に切り換えられる。ＴＳパケット化回路７は、多重化スケジューラ５から入力されるパケット化制御情報に基づいて、スイッチ６を介してビデオストリームバッファ２からMPEGビデオストリームを、または、オーディオストリームバッファ４からMPEGオーディオストリームを読み出してＴＳパケット化し、arrival_time_stamp付加回路３３に出力する。ＴＳパケット化回路７はまた、多重化スケジューラ５から入力されるPCRをＴＳパケット化し、得られたPCRパケットをarrival_time_stamp付加回路３３に出力する。
【００５２】
arrival_time_stamp計算回路３２は、多重化スケジューラ５から入力されるPCRに基づいて、ＴＳパケットの第１バイト目が受信側に到着する時刻を２７MHzの精度で示すタイムスタンプarrival_time_stampを計算し（詳細は図１１を参照して後述する）、arrival_time_stamp付加回路３３に出力する。arrival_time_stamp付加回路３３は、ＴＳパケット化回路７から入力されるＴＳパケットに、arrival_time_stamp計算回路３２から入力されるarrival_time_stampを付加してスムージングバッファ３４に出力する。
【００５３】
スムージングバッファ３４は、arrival_time_stamp付加回路３３から入力される、arrival_time_stampが付加されたＴＳパケットを一時的に蓄える。書き込み回路３５は、スムージングバッファ３４が一時的に蓄えたarrival_time_stampが付加されたＴＳパケットを、固定のビットレートで読み出して記録媒体１６に記録する。
【００５４】
次に、ＴＳ記録装置の動作について説明する。ＴＳ記録装置に入力されたビデオ信号は、MPEGビデオエンコーダ１により、MPEGビデオストリームにエンコードされてビデオストリームバッファ２に一時的に蓄えられる。ビデオ信号に対応するオーディオ信号は、MPEGオーディオエンコーダ３により、MPEGオーディオストリームにエンコードされてオーディオストリームバッファ４に一時的に蓄えられる。
【００５５】
ビデオストリームバッファ２に蓄えられたMPEGビデオストリーム、および、オーディオストリームバッファ４に蓄えられたMPEGオーディオストリームは、スイッチ３１を介して、多重化スケジューラ５からの制御によって動作するＴＳパケット化回路７に読み出されてＴＳパケット化され、arrival_time_stamp付加回路３３により、arrival_time_stampが付加されてスムージングバッファ３４に一時的に蓄えられる。スムージングバッファ３４に蓄えられた、arrival_time_stampが付加されたＴＳパケットは、書き込み回路３５により所定のビットレートRrecで読み出されて記録媒体１６に記録される。
【００５６】
ここで、ＴＳパケット化回路７から出力されるトランスポートストリームのビットレートをRtrとすると、Rrecは次に示す値となる。すなわち、スムージングバッファ３４が空のとき、Rrecは０であり、スムージングバッファ３４が空でないとき、Rrecは次式を満たす固定値である。
【００５７】
Rrec＞Rtr×１９２／１８８
次に、多重化スケジューラ５の詳細な動作について、図９のフローチャートを参照して説明する。このＴＳパケット化制御処理は、多重化スケジューラ５に、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３からの最初のアクセスユニット情報が入力されたときに開始される。
【００５８】
ステップＳ２１において、多重化スケジューラ５は、ＴＳパケット化回路７に生成させるトランスポートストリーム（以下、ＴＳと記述する）のビットレート（上述した、ビットレートRrec）を決定する。なお、このＴＳのビットレートとしては、ＴＳに多重化する各エレメンタリストリームの最大ビットレートの総和よりも大きな値である必要がある。
【００５９】
ステップＳ２２において、多重化スケジューラ５は、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３のそれぞれから入力されたアクセスユニット情報に基づいて、ＴＳパケットの符号化方法（ペイロードデータ長等）を決定する。
【００６０】
ステップＳ２３において、多重化スケジューラ５は、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３からのアクセスユニット情報の基づいて、PCRをＴＳパケット化するタイミングであるか否かを判定する。PCRをＴＳパケット化するタイミングであると判定された場合、ステップＳ２４に進む。ステップＳ２４において、多重化スケジューラ５は、PCRパケットの生成を指示するパケット化制御情報をＴＳパケット化回路７に出力する。
【００６１】
ステップＳ２５において、多重化スケジューラ５は、MPEGビデオエンコーダ１およびMPEGオーディオエンコーダ３のそれぞれから入力されたアクセスユニット情報に基づいて、当該ＴＳ記録装置に対するビデオ信号およびオーディオ信号の入力が終了したか否かを判定する。ビデオ信号およびオーディオ信号の入力が終了していないと判定された場合、ステップＳ２２に戻り、それ以降の処理が繰り返される。
【００６２】
再び、ステップＳ２３に進み、PCRをＴＳパケット化するタイミングではないと判定された場合、ステップＳ２６に進む。
【００６３】
ステップＳ２６において、多重化スケジューラ５は、MPEGオーディオエンコーダ３から入力されたアクセスユニット情報に基づいて、MPEGオーディオストリームをＴＳパケット化するタイミングであるか否かを判定する。MPEGオーディオストリームをＴＳパケット化するタイミングであると判定された場合、ステップＳ２７に進む。ステップＳ２７において、多重化スケジューラ５は、オーディオＴＳパケットの生成と、そのペイロードデータ長を指示するパケット化制御情報をＴＳパケット化回路２７に出力する。
【００６４】
なお、ステップＳ２６において、MPEGオーディオストリームをＴＳパケット化するタイミングではないと判定された場合、ステップＳ２８に進む。ステップＳ２８において、多重化スケジューラ５は、MPEGビデオエンコーダ１から入力されたアクセスユニット情報に基づいて、MPEGビデオストリームをＴＳパケット化するタイミングであるか否かを判定する。MPEGビデオストリームをＴＳパケット化するタイミングであると判定された場合、ステップＳ２９に進む。ステップＳ２９において、多重化スケジューラ５は、ビデオＴＳパケットの生成と、そのペイロードデータ長を指示するパケット化制御情報をＴＳパケット化回路７に出力する。
【００６５】
なお、ステップＳ２８において、MPEGビデオストリームをＴＳパケット化するタイミングではないと判定された場合、ステップＳ３０に進む。ステップＳ３０において、多重化スケジューラ５は、パケット化処理の中断を指示するパケット化制御情報をＴＳパケット化回路７に出力する。
【００６６】
その後、ステップＳ２５において、ビデオ信号およびオーディオ信号の入力が終了したと判定された場合、多重化スケジューラ５は、ＴＳパケット化の終了を指示するパケット化制御情報をＴＳパケット化回路７に出力した後、このＴＳパケット化制御処理を終了する。
【００６７】
次に、上述したＴＳパケット化制御処理によって出力されたパケット化制御情報に対応するスイッチ３１乃至arrival_time_stamp付加回路３３の詳細な動作について、図１０のフローチャートを参照して説明する。このＴＳパケット化処理は、ＴＳパケット化回路７に、多重化スケジューラ５からのパケット化制御情報が入力されたときに開始される。
【００６８】
ステップＳ４１において、ＴＳパケット化回路７は、多重化スケジューラ５から入力されたパケット化制御情報がＴＳパケット化処理の中断を指示するものであるか否かを判定し、ＴＳパケット化処理中断を指示するものではないと判定した場合、ステップＳ４２に進む。
【００６９】
ステップＳ４２において、スイッチ３１は、多重化スケジューラ５から入力されたパケット化制御情報に対応してスイッチングする。すなわち、スイッチ３１は、入力されたパケット化制御情報が、ビデオＴＳパケットの生成を指示するものであれば、入力端子ａ側にスイッチングし、オーディオＴＳパケットの生成を指示するものであれば、入力端子ｂ側にスイッチングし、PCRパケットの生成を指示するものであれば、中立の位置にスイッチングする。
【００７０】
ステップＳ４３において、ＴＳパケット化回路７は、多重化スケジューラ５から入力されたパケット化制御情報に対応し、スイッチ３１を介してビデオストリームバッファ２からMPEGビデオストリームを、または、オーディオストリームバッファ４からMPEGオーディオストリームを、指示されたペイロードデータ長の分だけ読み出してＴＳパケットを生成し、arrival_time_stamp付加回路３３に出力する。ただし、多重化スケジューラ５から入力されたパケット化制御情報がPCRパケットの生成を指示するものである場合、多重化スケジューラ５から入力されるPCRを用いてPCRパケットを生成し、arrival_time_stamp付加回路３３に出力する。なお、PCRパケットのペイロードには、任意のスタッフィングデータが書き込まれる。
【００７１】
ステップＳ４４において、arrival_time_stamp付加回路３３は、ＴＳパケット化回路７から入力される全てのＴＳパケットに、arrival_time_stamp計算回路３２から供給されたarrival_time_stampを付加してスムージングバッファ１０に出力する。
【００７２】
ここで、arrival_time_stamp計算回路３２の、ＴＳパケットの１バイト目が受信側に到着する時刻を示すarrival_time_stampを求める計算方法について説明する。ＴＳパケット化回路７から入力されるＴＳパケットは、図１１に示すように、"sync_byte"を先頭とする１８８バイトで構成されており、当該ＴＳパケットに対応するPCRとして多重化スケジューラ５からarrival_time_stamp計算回路３２に供給されるPCRは、ＴＳパケット中の"PCR_base and PCR_extension"の５バイト目が受信側に到着する時刻を示している。したがって、arrival_time_stampが示す時刻は、PCRが示す時刻から１０バイト前のデータが到着する時刻として、次式により計算することができる。
【００７３】
arrival_time_stamp＝PCR-27000000*10*8/Transport_rate
ここで、Transport_rateとは、上述したＴＳパケット化処理のステップＳ２１で多重化スケジューラ５が決定したＴＳのビットレートである。
【００７４】
図１０に戻る。ステップＳ４５において、ＴＳパケット化回路７は、多重化スケジューラ５からＴＳパケット化処理の終了が指示されたか否かを判定し、ＴＳパケット化処理の終了が指示されたと判定するまで、ステップＳ４１に戻り、それ以降の処理を繰り返す。
【００７５】
この繰り返し処理の間、ステップＳ４３で生成されたＴＳパケットのうちの例えば、ビデオＴＳパケットだけに着目すれば、その生成のタイミングは、図１２(A)に示すように、パケット化制御情報に対応して間欠的に行われる。また、ステップＳ４４においては、図１２(B)に示すように、全てのＴＳパケットにarrival_time_stampが付加される。
【００７６】
なお、ステップＳ４１において、多重化スケジューラ５から入力されたパケット化制御情報がＴＳパケット化処理の中断を指示するものであると判定された場合、ステップＳ４２乃至Ｓ４４はスキップされる。
【００７７】
その後、ステップＳ４５において、多重化スケジューラ５からＴＳパケット化処理の終了が指示されたと判定された場合、このＴＳパケット化処理は終了される。
【００７８】
なお、arrival_time_stamp付加回路３３によりarrival_time_stampが付加されたＴＳパケットは、スムージングバッファ３４に一時的に蓄えられた後、図１２(C)に示すように、書き込み回路３５によって所定のビットレートRrecで読み出されて記録媒体１６に記録される。
【００７９】
次に、本発明を適用したデジタルテレビジョン放送波記録装置（以下、デジタルＴＶ記録装置と記述する）の構成例について、図１３を参照して説明する。このデジタルＴＶ記録装置は、デジタル衛星放送（例えば、スカイパーフェクＴＶ！（商標））や今後実施が予定されているデジタル地上放送の放送波としての、MPEGビデオストリームやMPEGオーディオストリーム等が多重化されたＴＳを受信して記録媒体に記録するものである。
【００８０】
セットトップボックス４１は、デジタルテレビジョン放送波としてのＴＳを受信してヌルパケット除去回路４２に出力する。ヌルパケット除去回路４２は、セットトップボックス４１から入力されるＴＳから、ヌルパケット（送信レートを一定化させるために挿入されている情報としては意味をなさないパケット）を除去してビットストリームパーサ４３に出力する。
【００８１】
ビットストリームパーサ４３は、ヌルパケット除去回路４２からのヌルパケットが除去されたＴＳに含まれるPCRパケットからPCR（プログラム時刻基準参照値）を抽出してPLL回路４５に供給する。ビットストリームパーサ４３はまた、ヌルパケット除去回路４２から供給されるヌルパケット以外のＴＳパケットをarrival_time_stamp付加回路４４に出力する。
【００８２】
PLL回路４５は、当該デジタルＴＶ記録装置のクロック信号（２７MHz）を、ビットストリームパーサ４３から入力されるPCRにロックさせてタイムスタンプ発生回路４６に出力する。タイムスタンプ発生回路４６は、クロック信号のクロックカウンタ値に基づいたarrival_time_stampを発生し、arrival_time_stamp付加回路４４に供給する。
【００８３】
arrival_time_stamp付加回路４４は、ビットストリームパーサ４３から入力される、各ＴＳパケットに、タイムスタンプ発生回路４６から供給されるarrival_time_stampを付加してスムージングバッファ４７に出力する。
【００８４】
スムージングバッファ４７は、arrival_time_stamp付加回路４４から入力される、arrival_time_stampが付加されたＴＳパケットを一時的に蓄える。書き込み回路４８は、スムージングバッファ４７が一時的に蓄えたarrival_time_stampが付加されたＴＳパケットを所定のビットレートRrecで読み出して記録媒体１６に記録する。
【００８５】
ここで、ビットレートRrecは、スムージングバッファ４７が空のとき０であり、スムージングバッファ４７が空でないとき、アプリケーションにより予め決められている固定値とされる。
【００８６】
次に、デジタルＴＶ記録装置の動作について説明する。セットトップボックス４１で受信されたデジタルテレビジョン放送波としてのＴＳは、ヌルパケット除去回路４２で、ヌルパケットが除去されてビットストリームパーサ４３に供給される。ビットストリームパーサ４３では、ヌルパケットが除去されたＴＳからPCRが抽出されてPLL回路４５に供給され、その他のＴＳパケットはarrival_time_stamp付加回路４４に供給される。
【００８７】
PLL回路４５では、２７MHzのクロック信号がPCRにロックされ、そのクロックカウンタ値に基づいて、タイムスタンプ発生回路４６では、arrival_time_stampが発生され、arrival_time_stamp付加回路４４に供給される。
【００８８】
ビットストリームパーサ４３から出力される各ＴＳパケットには、arrival_time_stamp付加回路４４により、arrival_time_stampが付加されてスムージングバッファ４７に一時的に蓄えられる。スムージングバッファ４７に蓄えられた、arrival_time_stampが付加されたＴＳパケットは、書き込み回路４８により所定のビットレートRrecで読み出されて記録媒体１６に記録される。
【００８９】
次に、図８に示したＴＳ記録装置、または図１３に示したデジタルＴＶ記録装置により、図１２(C)に示したように、ＴＳパケットの間隔が詰められて記録媒体１６に記録されたＴＳを、記録媒体１６から再生するＴＳ再生装置の構成例について、図１４を参照して説明する。
【００９０】
読み出し回路５１は、記録媒体１６からarrival_time_stampが付加されたＴＳパケットを順次読み出してarrival_time_stamp分離回路５２に出力する。arrival_time_stamp分離回路５２は、読み出し回路５１から入力されるarrival_time_stampが付加されたＴＳパケットから、arrival_time_stampを分離して、arrival_time_stampを分離したＴＳパケットを出力制御回路５３に供給し、arrival_time_stampを比較回路５６およびタイミング発生回路５５に供給する。
【００９１】
出力制御回路５３は、arrival_time_stamp分離回路５２から入力されるＴＳパケットを、比較回路５６からの制御信号に対応して後段に出力する。
【００９２】
発振回路５４は、２７MHzのクロック信号を発振してタイミング発生回路５５に出力する。タイミング発生回路５５は、arrival_time_stamp分離回路５２から最初に供給されるarrival_time_stampを初期値とする２７MHzのクロックカウンタ値に基づいて時間と計算し、比較回路５６に供給する。比較回路５６は、arrival_time_stamp分離回路５２から供給されるarrival_time_stampと、タイミング発生回路５５から供給される時間を比較して両者が等しい場合、出力制御回路５３にＴＳパケットの出力を指示する制御信号を出力する。
【００９３】
次に、ＴＳ再生装置の動作について説明する。記録媒体１６に記録されているarrival_time_stampが付加されたＴＳパケットは、読み出し回路５１によって読み出され、arrival_time_stamp分離回路５２で、arrival_time_stampとＴＳパケットに分離されて、ＴＳパケットは出力制御回路５３に供給され、arrival_time_stampは比較回路５６およびタイミング発生回路５５に供給される。出力制御回路５３に供給されたＴＳパケットは、比較回路５６からの制御信号に対応して後段に出力される。
【００９４】
後段に出力されたＴＳパケットは、例えばMPEGデコーダ（不図示）によりデコードされてモニタ等に表示される。
【００９５】
以上のように、本発明を適用したＴＳ記録装置、またはデジタルＴＶ記録装置によれば、図１２(C)に示したように、間欠的なＴＳパケットの間隔が詰められて所定のビットレートRrecで記録媒体１６に記録されるので、無駄なパケット（ヌルパケット）を記録することなく効率的にビデオＴＳパケットやオーディオＴＳパケットを記録することが可能となる。
【００９６】
また、本発明を適用したＴＳ再生装置によれば、ＴＳパケットに付加されているarrival_time_stampを参照することにより、ＴＳパケットを適切なタイミングで後段のMPEGデコーダ等に供給することが可能となる。
【００９７】
なお、本発明を適用したＴＳ記録装置またはデジタルＴＶ記録装置と、ＴＳ再生装置を一体化することも可能である。
【００９８】
ところで、上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアとしてのＴＳ記録装置、デジタルＴＶ記録装置、またはＴＳ再生装置に組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどにインストールされる。
【００９９】
次に、図１５を参照して、上述した一連の処理を実行するプログラムをコンピュータにインストールし、コンピュータによって実行可能な状態とするために用いられる媒体について、そのコンピュータが汎用のパーソナルコンピュータである場合を例として説明する。
【０１００】
プログラムは、図１５(A)に示すように、パーソナルコンピュータ３０１に内蔵されている記録媒体としてのハードディスク３０２や半導体メモリ３０３に予めインストールした状態でユーザに提供することができる。
【０１０１】
あるいはまた、プログラムは、図１５(B)に示すように、フロッピーディスク３１１、CD-ROM(Compact Disc-Read Only Memory)３１２、ＭＯ(Magneto Optical)ディスク３１３、DVD(Digital Versatile Disc)３１４、磁気ディスク３１５、半導体メモリ３１６などの記録媒体に、一時的あるいは永続的に格納し、パッケージソフトウエアとして提供することができる。
【０１０２】
さらに、プログラムは、図１５(C)に示すように、ダウンロードサイト３２１から、無線で衛星３２２を介して、パーソナルコンピュータ３０１に転送したり、ローカルエリアネットワーク、インターネットといったネットワーク３３１を介して、有線または無線でパーソナルコンピュータ３０１に転送し、パーソナルコンピュータ３０１において、内蔵するハードディスク３０２などに格納させることができる。
【０１０３】
本明細書における媒体とは、これら全ての媒体を含む広義の概念を意味するものである。
【０１０４】
パーソナルコンピュータ３０１は、例えば、図１６に示すように、CPU(Central Proccessing Unit)３４２を内蔵している。CPU３４２にはバス３４１を介して、入出力インタフェース３４５が接続されており、CPU３４２は、入出力インタフェース３４５を介して、ユーザから、キーボード、マウスなどよりなる入力部３４７から指令が入力されると、それに対応して、図１５(A)の半導体メモリ３０３に対応するROM(Read Only Memory)３４３に格納されているプログラム、衛星３２２もしくはネットワーク３３１から転送され、通信部３４８により受信され、さらにハードディスク３０２にインストールされたプログラム、またはドライブ３４９に装着されたフロッピディスク３１１、CD-ROM３１２、ＭＯディスク３１３、DVD３１４、もしくは磁気ディスク３１５から読み出され、ハードディスク３０２にインストールされたプログラムを、RAM(Random Access Memory) ３４４にロードして実行する。さらに、CPU３４２は、その処理結果を、例えば、入出力インタフェース３４５を介して、LCD(Liquid Crystal Display)などよりなる表示部３４６に必要に応じて出力する。
【０１０５】
なお、本明細書において、媒体により提供されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１０６】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０１０８】
【発明の効果】
本発明によれば、ＴＳを効率的に記録することが可能となる。
【図面の簡単な説明】
【図１】従来のトランスポートストリーム生成装置の構成の一例を示すブロック図である。
【図２】図１の多重化スケジューラ５の動作を説明するフローチャートである。
【図３】図１のＴＳパケット化回路７の動作を説明するフローチャートである。
【図４】従来のトランスポートストリーム記録装置の構成の一例を示すブロック図である。
【図５】  TSP_extra_headerが付加されたＴＳパケットの記録フォーマットを説明するための図である。
【図６】従来のトランスポートストリーム再生装置の構成の一例を示すブロック図である。
【図７】従来のＴＳの生成および記録を説明するための図である。
【図８】本発明を適用したＴＳ記録装置の構成例を示すブロック図である。
【図９】図８の多重化スケジューラ５の動作を説明するフローチャートである。
【図１０】ＴＳ記録装置のＴＳパケット化処理を説明するフローチャートである。
【図１１】  arrival_time_stampを説明するための図である。
【図１２】本発明を適用したＴＳ記録装置のＴＳ記録方法を説明するための図である。
【図１３】本発明を適用したデジタルＴＶ記録装置の構成例を示すブロック図である。
【図１４】本発明を適用したＴＳ再生装置の構成例を示すブロック図である。
【図１５】プログラムをパーソナルコンピュータ３０１にインストールし、実行可能な状態とするために用いられる媒体について説明するための図である。
【図１６】パーソナルコンピュータ３０１について説明するための図である。
【符号の説明】
５  多重化スケジューラ，  ７  ＴＳパケット化回路，  １６  記録媒体，  ３１  スイッチ，  ３２  arrival_time_stamp計算回路，  ３３  arrival_time_stamp付加回路，  ４１  セットトップボックス，  ４２  ヌルパケット除去回路，  ４３  ビットストリームパーサ，  ４４  arrival_time_stamp付加回路，４５  PLL回路，  ４６  タイムスタンプ発生回路，  ５１  読み出し回路，５２  arrival_time_stamp分離回路，  ５３  出力制御回路，  ５５  タイミング発生回路，  ５６  比較回路
【図１】
0004217934.tif 000002
【図２】
0004217934.tif 000003
【図３】
0004217934.tif 000004
【図４】
0004217934.tif 000005
【図５】
0004217934.tif 000006
【図６】
0004217934.tif 000007
【図７】
0004217934.tif 000008
【図８】
0004217934.tif 000009
【図９】
0004217934.tif 000010
【図１０】
0004217934.tif 000011
【図１１】
0004217934.tif 000012
【図１２】
0004217934.tif 000013
【図１３】
0004217934.tif 000014
【図１４】
0004217934.tif 000015
【図１５】
0004217934.tif 000016
【図１６】
0004217934.tif 000017