(57)【特許請求の範囲】
【請求項１】
少なくとも第1および第２のバッファの順に、所定の数のバッファを経由してデコードされるディジタル信号のビットストリームを符号化するディジタル信号符号化方法であって、
前記ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、前記第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、
前記アクセスユニットのデコード時刻から、前記上限値以下に設定されたサイズのデータが、前記第１のバッファに入力完了後、前記第２のバッファに転送されることにより前記第１のバッファから無くなるまでの時間を減算して、前記疑似アクセスユニットの前記第１のバッファへの入力完了時刻を計算し、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化する
ことを特徴とするディジタル信号符号化方法。
【請求項２】
少なくとも第1および第２のバッファの順に、所定の数のバッファを経由してデコードされるディジタル信号のビットストリームを符号化するディジタル信号符号化装置であって、
前記ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、前記第１のバッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、
前記アクセスユニットのデコード時刻から、前記上限値以下に設定されたサイズのデータが、前記第１のバッファに入力完了後、前記第２のバッファに転送されることにより前記第１のバッファから無くなるまでの時間を減算して、前記疑似アクセスユニットの前記第１のバッファへの入力完了時刻を計算する演算手段と、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化するパケット化手段と
を備えることを特徴とするディジタル信号符号化装置。
【請求項３】
少なくとも第1および第２のバッファの順に、所定の数のバッファを経由してデコードされるディジタル信号のビットストリームを伝送するディジタル信号伝送方法であって、
前記ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、前記第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、
前記アクセスユニットのデコード時刻から、前記上限値以下に設定されたサイズのデータが、前記第１のバッファに入力完了後、前記第２のバッファに転送されることにより前記第１のバッファから無くなるまでの時間を減算して、前記疑似アクセスユニットの前記第１のバッファへの入力完了時刻を計算し、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化して伝送ストリームを生成し、
その伝送ストリームを伝送する
ことを特徴とするディジタル信号伝送方法。
【請求項４】
少なくとも第1および第２のバッファの順に、所定の数のバッファを経由してデコードされるディジタル信号のビットストリームを符号化するディジタル信号伝送装置であって、
前記ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、前記第１のバッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、
前記アクセスユニットのデコード時刻から、前記上限値以下に設定されたサイズのデータが、前記第１のバッファに入力完了後、前記第２のバッファに転送されることにより前記第１のバッファから無くなるまでの時間を減算して、前記疑似アクセスユニットの前記第１のバッファへの入力完了時刻を計算する演算手段と、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化して伝送ストリームを生成するパケット化手段と、
前記伝送ストリームを伝送する伝送手段と
を備えることを特徴とするディジタル信号伝送装置。
【請求項５】
少なくとも１つのバッファを経由してデコードされるディジタル信号のビットストリームを符号化するディジタル信号符号化方法であって、
前記ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、前記バッファのオーバーフローを回避する所定の上限値以下に設定し、
前記所定の上限値以下に設定された前記疑似アクセスユニットのサイズを、前記バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットの前記バッファへの入力完了時刻を計算し、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化する
ことを特徴とするディジタル信号符号化方法。
【請求項６】
少なくとも１つのバッファを経由してデコードされるディジタル信号のビットストリームを符号化するディジタル信号符号化装置であって、
前記ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、前記バッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、
前記所定の上限値以下に設定された前記疑似アクセスユニットのサイズを、前記バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットの前記バッファへの入力完了時刻を計算する演算手段と、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化するパケット化手段と
を備えることを特徴とするディジタル信号符号化装置。
【請求項７】
少なくとも１つのバッファを経由してデコードされるディジタル信号のビットストリームを伝送するディジタル信号伝送方法であって、
前記ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、前記バッファのオーバーフローを回避する所定の上限値以下に設定し、
前記所定の上限値以下に設定された前記疑似アクセスユニットのサイズを、前記バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットの前記バッファへの入力完了時刻を計算し、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化して伝送ストリームを生成し、
その伝送ストリームを伝送する
ことを特徴とするディジタル信号伝送方法。
【請求項８】
少なくとも１つのバッファを経由してデコードされるディジタル信号のビットストリームを伝送するディジタル信号伝送装置であって、
前記ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、前記バッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、
前記所定の上限値以下に設定された前記疑似アクセスユニットのサイズを、前記バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットの前記バッファへの入力完了時刻を計算する演算手段と、
前記入力完了時刻と前記疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、
前記クロックリファレンスと前記パケットサイズとに基づいて、前記アクセスユニットをパケット化して伝送ストリームを生成するパケット化手段と、
前記伝送ストリームを伝送する伝送手段と
を備えることを特徴とするディジタル信号伝送装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、ディジタル信号符号化方法および装置、並びにディジタル信号伝送方法および装置に関し、特に、複数のビットストリームを多重化してパケット化して得られたストリームを記録媒体に記録するシステムや、伝送路を介して受信側に送信するシステムなどに用いて好適なディジタル信号符号化方法および装置、並びにディジタル信号伝送方法および装置に関する。
【０００２】
【従来の技術】
映像信号や音声信号などを、光磁気ディスク、磁気テープなどの記録媒体に記録し、それらを再生してディスプレイなどに表示したり、テレビ会議システム、テレビ電話システム、放送システムなどにおいて、送信側が、所定の伝送路を介して、それらの信号を伝送し、受信側が受信して表示する場合などにおいて、最近、これらの信号は、Ａ／Ｄ変換した後、ＭＰＥＧ(Moving Picture Experts Group)方式で符号化して取り扱われることが多くなりつつある。ＭＰＥＧとは、ＩＳＯ−ＩＥＣ／ＪＴＣ１／ＳＣ２／ＷＧ１１にて議論され、標準案として提案されたものであり、動き補償予測符号化と離散コサイン変換（ＤＣＴ：Discrcte Cosine Transform）符号化とを組み合わせたハイブリッド方式の符号化方法である。なお、ＭＰＥＧについては、例えば、本出願人による米国出願ＵＳＰ５，１５５，５９３（１９９２年８月１３日）の明細書および図面などに、その詳細が記載されている。
【０００３】
所謂マルチメディアにおいては、映像信号、音声信号、および、関連するデータといった複数の種類のデータを多重化して伝送し、その伝送されたデータを再生するときに、多重化されたデータを、映像信号や音声信号といった、データの種類別に分離した後、それらのデータを同期させて再生する。
【０００４】
また、複数のデータを多重化する場合、所定の数の映像信号および音声信号を個別に符号化し、各信号に対する符号化ストリームを生成した後、それらの符号化ストリームが多重化される。
【０００５】
複数のデータを多重化して生成されるストリーム（多重化ストリーム）は、例えば、図１０に示すように、ビデオエレメンタリストリーム、オーディオエレメンタリストリームなどのアクセスユニット毎にパケット化されており、この多重化ストリームには、さらに、デコーダに入力される時刻を示す情報（クロックリファレンス）や、そのアクセスユニットがデコード（表示）されるデコード時刻も含まれる。ここで、アクセスユニットとは、符号化の単位であり、例えば、ビデオ信号では、１フレームのデータに対応し、オーディオ信号では、オーディオフレームに対応する。
【０００６】
このように、デコード時刻を、映像信号と、それに対応する音声信号にエンコードしておくことで、復号側においてそれらの映像と音声の同期が保たれて、それぞれ出力される。
【０００７】
ここで、ＭＰＥＧシステムにて規定されているストリームについて説明する。ＭＰＥＧシステムには、トランスポートストリームとプログラムストリームの２種類のストリームがある。トランスポートストリームは、ビット誤りやセルロスのような誤りの発生する環境における伝送に使用されるストリームであり、例えば、ＡＴＭ（Asynchronous Transfer Mode）ネットワークやディジタル放送などの伝送路で使用される。また、プログラムストリームは、誤りが発生し難い環境における蓄積に使用されるストリームであり、特にディスクやテープなどの記録媒体で使用される。
【０００８】
次に、図１０を用いて、各ストリームについて詳細に説明する。
【０００９】
トランスポートストリームは、図１０（Ａ）に示すように、アダプテーションフィールド、ビデオエレメンタリストリーム、オーディオエレメンタリストリームからなる領域を有し、それぞれ、トランスポートストリームヘッダを有している。さらに、ビデオエレメンタリストリームおよびオーディオエレメンタリストリームの各領域は、パケットヘッダを有している。そして、上述したクロックリファレンスは、アダプテーションフィールドにエンコードされ、デコード時刻は、パケットヘッダにエンコードされている。
【００１０】
また、プログラムストリームは、図１０（Ｂ）に示すように、ビデオエレメンタリストリーム、オーディオエレメンタリストリームからなる領域を有し、それぞれ、パケットヘッダを有している。さらに、プログラムストリームは、パックヘッダを有し、クロックリファレンスは、パックヘッダにエンコードされている。また、デコード時刻は、パケットヘッダにエンコードされている。
【００１１】
これらのトランスポートストリームやプログラムストリームを多重化するに当たっては、デコーダとして標準的なモデル（システムターゲットデコーダ（ＳＴＤ））が想定され、このＳＴＤにおいて正しくデコード処理（復号化処理）ができるように、符号化処理（エンコード処理）が行われる。
【００１２】
図１１は、そのような符号化処理を行う、一般的なディジタル信号符号化装置の一例の構成を示している。
【００１３】
まず、入力されたエレメンタリストリームは、アクセスユニット検出器１およびパケッタイザ３に供給される。アクセスユニット検出器１は、エレメンタリストリームよりアクセスユニットを収得し、そのアクセスユニットの大きさとデコード時刻情報を検出する。そして、アクセスユニット検出器１は、検出されたアクセスユニットの大きさをスケジューラ４に供給し、デコード時刻情報をスケジューラ４およびパケッタイザ３に供給する。
【００１４】
スケジューラ４は、アクセスユニットの大きさとデコード時刻情報からクロックリファレンスおよびパケットの大きさを計算し、それらの値をパケッタイザ３に出力する。
【００１５】
パケッタイザ３は、入力されたエレメンタリストリームを、スケジューラ４からのパケットの大きさにしたがってパケット化するとともに、アクセスユニット検出器１から供給されるデコード時刻情報およびスケジューラ４から供給されるクロックリファレンスをエンコードして、図１０に示したＭＰＥＧシステムストリーム（トランスポートストリーム、プログラムストリームなど）を生成する。
【００１６】
そして、このパケッタイザ３からの出力システムストリームがトランスポートストリームの場合、このシステムストリームは、所定の伝送器を介して伝送される。また、このパケッタイザ３からの出力システムストリームがプログラムストリームの場合、所定の記録媒体に記録される。
【００１７】
伝送路を介して伝送されるシステムストリームは、例えば、図１２に示すようなデコーダで受信されてデコードされる。
【００１８】
即ち、図１２は、ＭＰＥＧ２システム（ISO/IEC13818-1）においてトランスポートストリームのＳＴＤ（システムターゲットデコーダ）として規定されているデコーダの構成例を示している。
【００１９】
このトランスポートストリームのＳＴＤにおいては、一旦、バッファ（ＳＴＤバッファ）に蓄積された各信号が、所定の時刻に同期してデコードされるようになされている。
【００２０】
即ち、ＳＴＤバッファモデルのデコーダにおいては、最初に、デコードするアクセスユニットのクロックリファレンスが読み出され、その時刻に、そのデータがＳＴＤに入力される。入力されたデータは、スイッチ５１において、各アクセスユニット（図１０（Ａ）におけるビデオエレメンタリストリーム、オーディオエレメンタリストリームなど）に分離され、前段バッファ５２（ＳＴＤバッファ）を構成する、対応するバッファに供給される。
【００２１】
前段バッファ５２は、ビデオトランスポートバッファや、複数の（Ｎ個のチャンネルの）オーディオトランスポートバッファなどを備え、ビデオエレメンタリストリームのアクセスユニットは、ビデオトランスポートバッファに供給され、オーディオエレメンタリストリームのアクセスユニットは、対応するチャンネルのオーディオトランスポートバッファに供給されて記憶される。そして、前段バッファ５２においては、所定のレートで、供給されたデータが、後段バッファ（メインバッファ）５３（ＳＴＤバッファ）に転送される。
【００２２】
後段バッファ５３は、前段バッファ５２を構成するビデオトランスポートバッファ、オーディオトランスポートバッファなどに対応する、ビデオメインバッファ、オーディオメインバッファなどを備え、転送されてくるデータを、対応するバッファで蓄積する。そして、後段バッファ５３は、蓄積されたデータのデコード時刻（タイムスタンプ）を読み出し、そのデコード時刻になると、そのデータをデコーダ５４に転送する。その後、デコーダ５４において、転送されてきた各データがデコードされて出力される。
【００２３】
なお、アクセスユニット毎に分離されたデータは、所定の時刻までＳＴＤバッファ（図１２においては、前段バッファ５２および後段バッファ５３）に蓄積されるので、それらのバッファが、オーバーフロー（バッファに蓄積するデータ量がバッファ容量を越えてしまうこと）やアンダーフロー（所定のデータがデコードする時刻までにバッファに到達しないこと）を引き起こさないように、多重化側（符号化側）において、信号を多重化しておく必要がある。
【００２４】
一方、所定の記録媒体に記録されたプログラムストリームは、所定の再生装置で再生され、例えば、図１３に示すようなデコーダで受信されてデコードされる。
【００２５】
即ち、図１３は、ＭＰＥＧ２システム（ISO/IEC13818-1）に規定されているプログラムストリームやＭＰＥＧ１システム（ISO/IEC11172-1）に規定されているシステムストリームのＳＴＤモデルとして規定されているデコーダの構成例を示している。
【００２６】
この場合においても、図１２における場合と同様に、デコードするアクセスユニットのクロックリファレンスが読み出され、その時刻に、そのデータがＳＴＤに入力される。入力されたデータは、スイッチ６１において、各アクセスユニット（図１０（Ｂ）におけるビデオエレメンタリストリーム、オーディオエレメンタリストリームなど）に分離され、バッファ６２（ＳＴＤバッファ）を構成する、対応するバッファに供給される。
【００２７】
バッファ６２は、図１２における後段バッファ５３における場合と同様に、スイッチ６１から供給されるデータを、対応するバッファで蓄積し、その蓄積されたデータのデコード時刻（タイムスタンプ）を読み出す。そして、そのデコード時刻になると、そのデータをデコーダ６３に転送する。その後、デコーダ６３において、図１２におけるデコーダ５４における場合と同様に、転送された各データがデコードされて出力される。
【００２８】
以上のように、ＭＰＥＧ２ビデオ規格（ISO/IEC13818-2）またはＭＰＥＧ１ビデオ規格（ISO/IEC11172-2）に従ってエンコードされたビデオエレメンタリストリームや、ＭＰＥＧ２オーディオ規格（ISO/IEC13818-3）またはＭＰＥＧ１オーディオ規格（ISO/IEC11172-3）に従ってエンコードされたオーディオエレメンタリストリームは、上述のトランスポートストリームにおける場合の処理とは異なり、１段のバッファ６２で処理される。
【００２９】
なお、図１３のＳＴＤにおいては、例えば、ユーザにより定義されたプライベートストリームの処理を２段のバッファ６４，６５を用いて行うこともできる。但し、この場合は、多重化側において、上述のトランスポートストリームの場合と同様に、この２段のバッファ６４，６５に対応した多重化処理を行う必要がある。
【００３０】
【発明が解決しようとする課題】
トランスポートストリームのＳＴＤバッファモデルやプログラムストリームのＳＴＤバッファモデルにおいて、２段のバッファを使用する場合には、上述したように、その２つのバッファがオーバーフローやアンダーフローを起こさないように、２つのバッファの占有量を監視しながら、多重化側においてクロックリファレンスを設定する必要があるため、多重化のアルゴリズムが非常に複雑になるという課題があった。
【００３１】
また、バッファの段数に拘らず、ＳＴＤバッファモデルにおいては、アクセスユニット毎にデコード時刻が設定されているため、アクセスユニットのサイズが小さくなると、多重化におけるアクセスユニットのパケット化の処理の回数が増大し、処理効率が悪化する課題があった。
【００３２】
本発明は、このような状況に鑑みてなされたものであり、多重化のアルゴリズムを大幅に簡素化し、これにより、デコーダにおける全段のバッファの占有量を監視せずに、符号化を容易にすることができるようにし、また、パケット化の回数を大幅に減少させ、これにより、多重化の処理を効率良く行うことができるようにするものである。
【００３３】
【課題を解決するための手段】
請求項１に記載のディジタル信号符号化方法は、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化することを特徴とする。
【００３４】
請求項２に記載のディジタル信号符号化装置は、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算する演算手段と、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化するパケット化手段とを備えることを特徴とする。
【００３５】
請求項３に記載のディジタル信号伝送方法は、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成し、その伝送ストリームを伝送することを特徴とする。
【００３６】
請求項４に記載のディジタル信号伝送装置は、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算する演算手段と、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成するパケット化手段と、伝送ストリームを伝送する伝送手段とを備えることを特徴とする。
【００３８】
請求項５に記載のディジタル信号符号化方法は、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定し、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化することを特徴とする。
【００３９】
請求項６に記載のディジタル信号符号化装置は、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算する演算手段と、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化するパケット化手段とを備えることを特徴とする。
【００４０】
請求項７に記載のディジタル信号伝送方法は、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定し、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成し、その伝送ストリームを伝送することを特徴とする。
【００４１】
請求項８に記載のディジタル信号伝送装置は、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定する設定手段と、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算する演算手段と、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求めるスケジュール手段と、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成するパケット化手段と、伝送ストリームを伝送する伝送手段とを備えることを特徴とする。
【００４３】
請求項１に記載のディジタル信号符号化方法においては、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化するようになされている。
【００４４】
請求項２に記載のディジタル信号符号化装置においては、設定手段は、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、演算手段は、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算し、スケジュール手段は、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、パケット化手段は、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化するようになされている。
【００４５】
請求項３に記載のディジタル信号伝送方法においては、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成し、その伝送ストリームを伝送するようになされている。
【００４６】
請求項４に記載のディジタル信号伝送装置においては、設定手段は、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズを、第１のバッファのオーバーフローを回避する所定の上限値以下に設定し、演算手段は、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻を計算し、スケジュール手段は、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、パケット化手段は、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成するようになされている。伝送手段は、伝送ストリームを伝送するようになされている。
【００４８】
請求項５に記載のディジタル信号符号化方法においては、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定し、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化するようになされている。
【００４９】
請求項６に記載のディジタル信号符号化装置においては、設定手段は、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定し、演算手段は、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算し、スケジュール手段は、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、パケット化手段は、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化するようになされている。
【００５０】
請求項７に記載のディジタル信号伝送方法においては、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定し、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算し、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成し、その伝送ストリームを伝送するようになされている。
【００５１】
請求項８に記載のディジタル信号伝送装置においては、設定手段は、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズを、バッファのオーバーフローを回避する所定の上限値以下に設定し、演算手段は、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻を計算し、スケジュール手段は、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとを求め、パケット化手段は、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットをパケット化して伝送ストリームを生成するようになされている。伝送手段は、伝送ストリームを伝送するようになされている。
【００５３】
【発明の実施の形態】
図１は、本発明のディジタル信号符号化装置の第１実施の形態の構成例を示している。なお、図中、図１１における場合と対応する部分については、同一の符号を付してある。即ち、このディジタル信号符号化装置は、疑似アクセスユニット計算器２が、アクセスユニット検出器１とスケジューラ４との間に新たに設けられている他は、基本的に、図１１における場合と同様に構成されている。
【００５４】
図１のディジタル信号符号化装置は、例えば、後述する図２に示すような２段バッファＳＴＤモデルを想定して、エレメンタリストリームをパケット化し、ＭＰＥＧシステムストリーム（トランスポートストリーム、プログラムストリームなど）を生成するようになされている。
【００５５】
即ち、アクセスユニット検出器１は、エレメンタリストリームよりアクセスユニットを取得し、そのアクセスユニットの大きさとデコード時刻情報を検出する。ここで、アクセスユニットとは、前述したように、符号化の単位であり、ビデオ信号では、例えば１フレームのデータに対応し、オーディオ信号では、例えばオーディオフレームのデータに対応する。そして、アクセスユニット検出器１は、その検出されたアクセスユニットの大きさを、疑似アクセスユニット計算器２に供給し、デコード時刻情報を、疑似アクセスユニット計算器２およびパケッタイザ３に供給する。
【００５６】
疑似アクセスユニット計算器２（演算手段）は、図２に示す前段バッファ２１の大きさ、その前段バッファ２１へのデータ転送レート、および後段バッファ２２へのデータ転送レートに応じて、アクセスユニットを、所定の大きさの疑似アクセスユニットに分割したときの、その疑似アクセスユニットが前段バッファ２１へ入力される時刻（入力完了時刻）（疑似アクセスユニットのデコード時刻）を計算し、スケジューラ４に出力する。さらに、疑似アクセスユニット計算器２は、疑似アクセスユニットの大きさ（サイズ）も、スケジューラ４に出力する。
【００５７】
スケジューラ４は、疑似アクセスユニットの大きさと疑似デコード時刻から、多重化ストリームをデコーダに供給する時刻（クロックリファレンス）およびパケットの大きさ（パケットサイズ）を計算し、それらの値をパケッタイザ３に出力する。
【００５８】
パケッタイザ３（パケット化手段）（伝送手段）は、そこに供給されるエレメンタリストリームを、スケジューラ４からのパケットサイズにしたがってパケット化し、さらに、アクセスユニット検出器２より供給されるデコード時刻、およびスケジューラ４より供給されるクロックリファレンスをエンコードして、図１０に示したようなＭＰＥＧシステムストリーム（トランスポートストリーム、プログラムストリームなど）を生成する。
【００５９】
そして、パケッタイザ３より出力されたストリームがトランスポートストリームの場合、そのストリームは、例えば、ＣＡＴＶ網や、インターネット、地上回線、衛星回線などの所定の伝送路５を介して、図２に示すようなデコーダに伝送される。また、パケッタイザ３より出力されたストリームがプログラムストリームの場合、例えば、光磁気ディスクや、磁気ディスク、光ディスク、磁気テープなどの所定の記録媒体６に記録される。記録媒体６にストリームが記録された場合、そのストリームは、記録媒体６より再生された後、図２に示すようなデコーダに入力される。
【００６０】
図２は、図１のディジタル信号符号化装置において符号化（多重化）に際して想定される２段バッファを有するＳＴＤの構成例を示している。
【００６１】
図２の２段バッファのＳＴＤにおいては、前段バッファ２１には、ビットレートＲ［ｂｐｓ(bit per second)］で、システムストリームが供給され、前段バッファ２１は、ビットレートｒ［ｂｐｓ］（Ｒ＞ｒ）でデータを後段バッファ２２に出力する。
【００６２】
後段バッファ２２は、前段バッファ２１より供給されたデータから、デコード時刻を読み取り、その時刻に、そのデータをデコーダ２３に出力する。デコーダ２３では、後段バッファ２２より供給されるデータがデコードされ、所定の装置、例えば、表示装置（例えば、ＣＲＴやＬＣＤなど）に出力される。
【００６３】
次に、図３は、図２のＳＴＤにデータが供給されたときの、前段バッファ２１（図３（Ａ））および後段バッファ（図３（Ｂ））のデータ占有量の変化を示している。
【００６４】
前段バッファ２１は、時刻０からレートＲ［ｂｐｓ］でデータを受け取り、同時に、レートｒ［ｂｐｓ］で後段バッファ２２にデータを転送する。従って、前段バッファ２１は、データがレートＲ［ｂｐｓ］で供給されている間、（Ｒ−ｒ）［ｂｐｓ］でデータを蓄積する。
【００６５】
いま、Ｙ［ｂｉｔ］のデータが、ビットレートＲ［ｂｐｓ］で、前段バッファ２１に供給されるとすると、前段バッファ２１は、データが供給され始めると同時に、後段バッファ２２へのデータの供給をビットレートｒ［ｂｐｓ］で開始する。従って、前段バッファ２１へのデータの供給は、Ｔ1秒間行われ（Ｔ1＝Ｙ／Ｒ）、時刻Ｔ1での占有量Ｘは、Ｙ（１−ｒ／Ｒ）に達する。
【００６６】
時刻Ｔ1において、前段バッファ２１へのデータの供給は終了する。しかしながら、前段バッファ２１から後段バッファ２２へのデータの転送は、その後、前段バッファ２１に蓄積されているデータがなくなる時刻である時刻Ｔ2までの時間ΔＴ、さらに行われる。
【００６７】
後段バッファ２２は、図３（Ｂ）に示すように、時刻０から時刻Ｔ2まで、一定のレートｒでデータを蓄積する。従って、入力データ（Ｙ［ｂｉｔ］）が全て後段バッファ２２に転送される時刻Ｔ2は、Ｙ／ｒとなる。
【００６８】
以上から、図２のＳＴＤにおいて、前段バッファ２１へのデータの供給を終了してから、後段バッファ２２に全てのデータが転送されるまでの時間ΔＴ（＝Ｔ2−Ｔ1）は、Ｙ（１／ｒ−１／Ｒ）となる。
【００６９】
次に、エンコーダ（ディジタル信号符号化装置）側の疑似アクセスユニット計算器２の処理について説明する。
【００７０】
エンコーダ側において、疑似アクセスユニット計算器２は、デコード時刻PTSまでに、図２のＳＴＤの後段バッファ２２に所定量のデータ（大きさAU_Size）が供給され、データを正しくデコードすることができるようにするために、前段バッファ２１に入力する疑似アクセスユニットのサイズ（Pseudo_AU_Size）と、疑似アクセスユニットの入力を完了する時刻（Pseudo_PTS）を算出する。
【００７１】
即ち、疑似アクセスユニット計算器２は、疑似アクセスユニットのサイズとその入力を完了する時刻（入力完了時刻）を計算するにあたり、まず最初に、疑似アクセスユニット計算器２は、前段バッファ２１がオーバーフローしないように、疑似アクセスユニットのサイズの上限値ΔＡＵＳを計算する。
【００７２】
上述したように、Ｙ［ｂｉｔ］のデータを前段バッファ２１に供給する場合、前段バッファ２１の最大占有量は、Ｙ（１−ｒ／Ｒ）となる。従って、最大占有量が前段バッファ２１のサイズと等しくなる場合のＹが、ΔＡＵＳとなる。つまり、最大占有量は、ΔＡＵＳ（１−ｒ／Ｒ）であるから、バッファ２１がオーバーフローしないためには、式
ΔＡＵＳ（１−ｒ／Ｒ）＜（前段バッファ２１の大きさ）
をΔＡＵＳが満たす必要がある。疑似アクセスユニット計算器２は、上式を満たす△ＡＵＳを、疑似アクセスユニットのサイズおよび入力完了時刻を計算するのに先立って求める。
【００７３】
その後、疑似アクセスユニット計算器２では、図４のフローチャートにしたがった処理が行われることにより、疑似アクセスユニットの入力完了時刻Pseudo_PTSおよびそのサイズPseudo_AU_Sizeが求められる。なお、ここでは、入力完了時刻（前段バッファ２１への供給完了時刻）Pseudo_PTSは、デコード時刻PTS（Presentation Time Stamp）に対して、時間的に遡って求められる。
【００７４】
即ち、まず最初に、ステップＳ１において、変数ＡＵＳに、アクセスユニットのサイズＡＵ＿Ｓｉｚｅを初期値として設定し、変数Ｔにデコード時刻PTSを初期値として設定し、ステップＳ２に進み、変数ＡＵＳが、疑似アクセスユニットの上限値ΔＡＵＳより大きいか否かを判断する。
【００７５】
ステップＳ２において、変数ＡＵＳがΔＡＵＳより大きいと判断された場合、ステップＳ３に進み、疑似アクセスユニットのサイズPseudo_AU_SizeにΔＡＵＳを設定する。そして、ステップＳ５に進み、その疑似アクセスユニットの入力完了時刻Pseudo_PTSを計算する。
【００７６】
この時刻Pseudo_PTSは、変数Ｔ（現時点の値はPTSの値）から、前段バッファ２１に入力完了後、後段バッファ２２にデータが転送されることにより前段バッファ２１のデータが無くなるまでの時間ΔＴを引くことにより計算される（Pseudo_PTS＝Ｔ−ΔＴ）。
【００７７】
即ち、前段バッファ２１に入力が完了したときに、前段バッファ２１に蓄積されているデータの大きさは、Pseudo_AU_Size（１−ｒ／Ｒ）であり、このデータがレートｒで後段バッファ２２に転送されるので、ΔＴは、Pseudo_AU_Size（１／ｒ−１／Ｒ）（＝Pseudo_AU_Size（１−ｒ／Ｒ）／ｒ）となる。従って、Pseudo_PTSは、次式に示すように計算される。
Pseudo_PTS＝Ｔ−Pseudo_AU_Size×（１／ｒ−１／Ｒ）
【００７８】
ステップＳ５において入力完了時刻Pseudo_PTSを計算した後は、ステップＳ６に進み、ステップＳ３において算出したサイズPseudo_AU_Sizeと、ステップＳ５において算出したPseudo_PTSを記憶し、ステップＳ７に進む。ステップＳ７では、変数Ｔから、サイズPseudo_AU_Sizeの疑似アクセスユニットが後段バッファ２２に供給されるのに要する時間（Pseudo_AU_Size／ｒ）を引くことにより、変数Ｔを更新するとともに、変数ＡＵＳから、サイズPseudo_AU_Sizeを引くことにより、変数ＡＵＳを更新する。
【００７９】
例えば、図５に示すように、サイズが、３×△ＡＵＳより大きく、かつ４×△ＡＵＳより小さいアクセスユニット（ＳＴＤにおけるオーバフローを防止するために、サイズが△ＡＵＳの３つの疑似アクセスユニット（ａ）乃至（ｃ）と、サイズが△ＡＵＳ未満の１つの疑似アクセスユニット（ｄ）との合計４つの疑似アクセスユニットに分割されるべきアクセスユニット）については、このようにして、最初に、疑似アクセスユニット（ａ）におけるサイズPseudo_AU_Sizeと入力完了時刻Pseudo_PTSとが計算される。
【００８０】
そして、ステップＳ８において、変数ＡＵＳが零であるか否かを判断し、零である場合は、アクセスユニットを疑似アクセスユニットに分割したときの、その疑似アクセスユニットすべてについてのサイズおよび入力完了時刻の計算が完了したとして処理を終了する。また、ステップＳ８において、変数ＡＵＳが零でないと判断された場合は、ステップＳ２に戻り、次の疑似アクセスユニットのサイズPseudo_AU_Sizeと入力完了時刻Pseudo_PTSを計算する。
【００８１】
即ち、例えば、図５に示した場合においては、次に、ステップＳ２，Ｓ３，Ｓ５乃至Ｓ７において、疑似アクセスユニット（ｂ）のサイズPseudo_AU_Sizeと入力完了時刻Pseudo_PTSが計算され、続いて、疑似アクセスユニット（ｃ）のサイズPseudo_AU_Sizeと入力完了時刻Pseudo_PTSが計算される。
【００８２】
そして、その後、疑似アクセスユニット（ｄ）のサイズPseudo_AU_Sizeと入力完了時刻Pseudo_PTSが計算されるが、上述したように、図５において、アクセスユニットのサイズは、３×△ＡＵＳより大きく、かつ４×△ＡＵＳより小さいから、この場合、ステップＳ２において、変数ＡＵＳがΔＡＵＳより小さいと判断される。従って、この場合、ステップＳ２からＳ４に進み、サイズPseudo_AU_Sizeに変数ＡＵＳが代入される。
【００８３】
そして、以下、疑似アクセスユニット（ａ）乃至（ｃ）における場合と同様に、ステップＳ５において、Pseudo_PTSが算出され、ステップＳ６において、その値を、Pseudo_AU_Sizeの値とともに記憶し、ステップＳ７において、変数ＴおよびＡＵＳを更新し、ステップＳ８に進む。
【００８４】
この場合、変数ＡＵＳには、ステップＳ４において、サイズPseudo_AU_Sizeが設定されているので、ステップＳ７において、変数ＡＵＳの値は０に更新されるため、ステップＳ８においては、変数ＡＵＳが０であると判断されて、処理を終了する。
【００８５】
図１では、スケジューラ４において、このようにして得られる、疑似アクセスユニットの前段バッファ２１へのデータ供給終了時刻（入力完了時刻）Pseudo_PTS、およびそのサイズPseudo_AU_Sizeから、クロックリファレンスおよびパケットサイズが求められ、パケッタイザ３では、そのクロックリファレンスおよびパケットサイズに基づいて、エレメンタリストリーム（アクセスユニット）がパケット化される。即ち、パケッタイザ３においては、アクセスユニットが、入力完了時刻Pseudo_PTSまでに前段バッファ２１に入力されるような疑似アクセスユニットに分割されてパケット化される。
【００８６】
以上のような疑似アクセスユニットの前段バッファ２１へのデータ供給終了時刻（入力完了時刻）Pseudo_PTS、またはそのサイズPseudo_AU_Sizeを、仮想的に、前段バッファ２１におけるデコード時刻またはアクセスユニットのサイズとそれぞれ見なすと、図２に示した２段バッファＳＴＤモデルを、１段のバッファのＳＴＤモデルに、大きさ（サイズ）Pseudo_AU_Sizeのアクセスユニット（疑似アクセスユニット）を、時刻Pseudo_PTSまでに供給するという問題に置き換えることができ、多重化のスケジューリングを容易に行うことができる。
【００８７】
なお、以上の第１実施の形態においては、２段のＳＴＤバッファ（前段バッファ２１および後段バッファ２２）にデータを供給する場合の多重化を行っているが、３段以上のＳＴＤバッファにデータを供給する場合の多重化も、同様に行うことができる。
【００８８】
次に、図６は、本発明のディジタル信号符号化装置の第２実施の形態の構成例を示している。なお、図中、図１における場合と対応する部分については、同一の符号を付してある。即ち、このディジタル信号符号化装置は、疑似アクセスユニット計算器２に代えて、疑似アクセスユニット計算器３２（演算手段）が設けられている他は、基本的に図１における場合と同様に構成されている。
【００８９】
図６のディジタル信号符号化装置は、後述する図７に示すような１段バッファＳＴＤモデルを想定して、例えば、リニアＰＣＭオーディオのようなエレメンタリーストリームをパケット化し、ＭＰＥＧシステムストリームを生成するようになされている。即ち、ここでは、リニアＰＣＭオーディオのエレメンタリーストリーム（オーディオエレメンタリストリーム）などのように、１つのアクセスユニットのサイズが小さく、デコード時刻の間隔が短い信号について、所定の複数個のアクセスユニットを１つのパケットに統合することにより、ＭＰＥＧシステムストリームが生成される。
【００９０】
具体的には、このディジタル信号符号化装置に、例えば、オーディオエレメンタリストリームが入力されると、そのオーディオエレメンタリストリームは、アクセスユニット検出器１およびパケッタイザ３に供給される。アクセスユニット検出器１は、オーディオエレメンタリストリームよりアクセスユニットを取得し、そのアクセスユニットの大きさとデコード時刻情報を検出する。ここで、この場合におけるアクセスユニットは、オーディオフレームに対応している。そして、アクセスユニット検出器１は、アクセスユニットの大きさを、疑似アクセスユニット計算器３２に供給し、デコード時刻情報を、疑似アクセスユニット計算器３２およびパケッタイザ３に供給する。
【００９１】
疑似アクセスユニット計算器３２は、複数のアクセスユニットを、所定の大きさの１つの疑似アクセスユニットに統合したときの、その疑似アクセスユニットが図７に示すバッファ４１に入力される時刻（入力完了時刻）（疑似デコード時刻）を計算し、スケジューラ４に出力する。さらに、疑似アクセスユニット計算器３２は、その疑似アクセスユニットの大きさ（サイズ）も、スケジューラ４に出力する。
【００９２】
スケジューラ４では、図１における場合と同様に、疑似アクセスユニットの大きさと疑似デコード時刻から、多重化ストリームをデコーダに供給する時刻（クロックリファレンス）およびパケットの大きさ（パケットサイズ）が計算され、パケッタイザ３に出力される。
【００９３】
パケッタイザ３は、スケジューラ４からのパケットサイズにしたがって、エレメンタリストリームをパケット化し、さらに、アクセスユニット検出器２より供給されるデコード時刻、およびスケジューラ４より供給されるクロックリファレンスをエンコードして、図１０に示したようなＭＰＥＧシステムストリーム（トランスポートストリーム、プログラムストリームなど）を生成する。
【００９４】
そして、パケッタイザ３より出力されたストリームがトランスポートストリームの場合、そのストリームは、所定の伝送路５を介して、図７に示すようなデコーダに伝送される。また、パケッタイザ３より出力されたストリームがプログラムストリームの場合、所定の記録媒体６に記録される。記録媒体６に記録された場合においては、そのストリームは、記録媒体６より再生された後、図７に示すようなデコーダに入力される。
【００９５】
図７は、図６のディジタル信号符号化装置において符号化（多重化）に際して想定される１段バッファのＳＴＤの構成例を示している。
【００９６】
このような１段ＳＴＤバッファモデルにおいて、バッファ４１には、データがレートＲ［ｂｐｓ］で供給される。そして、バッファ４１は、そのデータのデコード時刻を読み出し、そのデコード時刻に、そのデータをレートｒ［ｂｐｓ］でデコーダ４２に出力する。ここで、リニアＰＣＭオーディオなどについては、デコード時刻の間隔が充分短いので、バッファ４１からの出力は、ほぼ連続的に発生しているとみなすことができる。
【００９７】
デコーダ４２は、バッファ４１より供給されるデータをデコードし、所定の装置、例えば、表示装置に出力する。
【００９８】
ここで、バッファ４１におけるデータの占有量について説明すると、バッファ４１が、時刻０からレートＲ［ｂｐｓ］でデータを受け取り、同時に、バッファ４１へのデータの入力直後にデコーダ４２によるデコードが始まるとすると、レートｒ［ｂｐｓ］でバッファ４１にデータが転送される。従って、バッファ４１は、データがレートＲ［ｂｐｓ］で供給されている間、（Ｒ−ｒ）［ｂｐｓ］でデータを蓄積する。つまり、バッファ４１の占有量の推移は、図３（Ａ）に示した前段バッファ２１の占有量の推移と同様になり、図８に示すように、ΔＡＵＳ／ｒを１周期として占有量が変化する。
【００９９】
次に、エンコーダ側の疑似アクセスユニット計算器３２の処理について説明する。
【０１００】
エンコーダ側において、疑似アクセスユニット計算器３２は、デコード時刻PTSまでに、図７のＳＴＤのバッファ４１に所定量のデータが供給され、データを正しくデコードすることができるようにするために、バッファ４１に入力する疑似アクセスユニットのサイズPseudo_AU_Sizeと、疑似アクセスユニットの入力を完了する時刻（入力完了時刻）Pseudo_PTSを算出する。
【０１０１】
即ち、疑似アクセスユニットのサイズをΔＡＵＳとしたとき、第１実施の形態における場合と同様に、バッファ４１の最大占有量は、ΔＡＵＳ（１−ｒ／Ｒ）であるから、バッファ２１がオーバーフローしないためには、
ΔＡＵＳ（１−ｒ／Ｒ）＜（バッファ４１の大きさ）
をΔＡＵＳが満たしている必要がある。疑似アクセスユニット計算器３２は、上式を満たす△ＡＵＳを、疑似アクセスユニットのサイズPseudo_AU_Sizeおよび入力完了時刻Pseudo_PTSを計算するのに先立って求める。
【０１０２】
そして、疑似アクセスユニット計算器３２は、疑似アクセスユニットのサイズPseudo_AU_Sizeを△ＡＵＳに設定し、このようなサイズの疑似アクセスユニットとなるように、アクセスユニットを統合したときの、その疑似アクセスユニットがデコードされるべき時刻を疑似デコード時刻、つまり、バッファ４１への入力完了時刻Pseudo_PTSとして出力する。
【０１０３】
即ち、この場合、図８および図９に示すように、ΔＡＵＳ／Ｒ，ΔＡＵＳ／ｒ＋ΔＡＵＳ／Ｒ，２ΔＡＵＳ／ｒ＋ΔＡＵＳ／Ｒ・・・が疑似デコード時刻（バッファ４１への入力完了時刻）となる。
【０１０４】
図６では、スケジューラ４において、このようにして得られる、疑似アクセスユニットの入力完了時刻Pseudo_PTS、およびそのサイズPseudo_AU_Sizeから、クロックリファレンスおよびパケットサイズが求められ、パケッタイザ３では、そのクロックリファレンスおよびパケットサイズに基づいて、エレメンタリストリーム（アクセスユニット）がパケット化される。即ち、パケッタイザ３においては、アクセスユニットが、入力完了時刻Pseudo_PTSまでにバッファ４１に入力されるような疑似アクセスユニットに統合されてパケット化される。
【０１０５】
図９に示すように、小さなアクセスユニットを統合した疑似アクセスユニットをパケット化してバッファ４１に供給する場合においては（図９の破線）、小さなアクセスユニットのままパケット化してバッファ４１に供給する場合（図９の実線）と比較して、パケット化の回数を大幅に減少させることができ、多重化の処理を効率良く行うことができる。
【０１０６】
なお、この実施の形態は、リニアＰＣＭオーディオデータの他、１つのアクセスユニットのサイズが小さく、かつデコード時刻の間隔が短いあらゆる信号について適用することができる。
【０１０７】
以上のように、ディジタル信号のビットストリームを符号化する際、アクセスユニットを所定の大きさの疑似アクセスユニットに分割した場合の、その疑似アクセスユニットがバッファに入力完了する時刻を算出し、この時刻までに疑似アクセスユニットがバッファに出力されるように符号化するようにしたので、所定の段数のバッファを有するＳＴＤにおける第１段目のバッファに対するアクセスユニットの入力のスケジューリングを行うだけで、全段のバッファを監視する必要がなくなり、符号化を容易にすることができる。
【０１０８】
また、ディジタル信号のビットストリームを符号化する際、小さなアクセスユニットを所定の大きさの疑似アクセスユニットに統合した場合の、その疑似アクセスユニットがバッファに入力完了する時刻を算出し、この時刻までに疑似アクセスユニットがバッファに出力されるように符号化するようにしたので、パケット化の回数を大幅に減少させることができ、多重化の処理を効率良く行うことができる。
【０１０９】
さらに、ディジタル信号のビットストリームを伝送する際、アクセスユニットを所定の大きさの疑似アクセスユニットに分割または統合したときの、その疑似アクセスユニットがバッファに入力完了する時刻を算出し、この時刻を、疑似アクセスユニットに対する仮想的なデコード時刻とみなすようにしたので、多重化のアルゴリズムを大幅に簡略化することができる。
【０１１０】
なお、本発明は、ハードウェア、およびＣＰＵやメモリなどを用いて構成される情報処理装置に行わせるソフトウェアのいずれでも実現可能である。
【０１１１】
また、本実施の形態においては、図１では、アクセスユニットを分割するように、図６では、アクセスユニットを統合するようにしたが、１のエンコーダ（ディジタル信号符号化装置）において、分割および統合を、必要に応じて行わせるようにすることも可能である。
【０１１２】
さらに、本発明の主旨を逸脱しない範囲において、さまざまな変形や応用例が考えうる。従って、本発明の要旨は、本実施の形態に限定されるものではない。
【０１１３】
【発明の効果】
請求項１に記載のディジタル信号符号化方法および請求項２に記載のディジタル信号符号化装置によれば、ビットストリームごとに規定されるアクセスユニットを、複数の疑似アクセスユニットに分割したときの、その疑似アクセスユニットのサイズが、第１のバッファのオーバーフローを回避する所定の上限値以下に設定され、アクセスユニットのデコード時刻から、上限値以下に設定されたサイズのデータが、第１のバッファに入力完了後、第２のバッファに転送されることにより第１のバッファから無くなるまでの時間を減算して、疑似アクセスユニットの第１のバッファへの入力完了時刻が計算され、その入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとが求められ、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットがパケット化される。また、請求項３に記載のディジタル信号伝送方法および請求項４に記載のディジタル信号伝送装置によれば、そのようにパケット化されて生成された伝送ストリームが伝送される。従って、多重化のアルゴリズムを大幅に簡素化し、これにより、符号化を容易に行うことが可能となる。
【０１１４】
請求項５に記載のディジタル信号符号化方法および請求項６に記載のディジタル信号符号化装置によれば、ビットストリームごとに規定される複数のアクセスユニットが統合された疑似アクセスユニットのサイズが、バッファのオーバーフローを回避する所定の上限値以下に設定され、所定の上限値以下に設定された疑似アクセスユニットのサイズを、バッファから出力されるデータのデータ転送レートで割った値を１周期として、疑似アクセスユニットのバッファへの入力完了時刻が計算され、入力完了時刻と疑似アクセスユニットのサイズとから、クロックリファレンスとパケットサイズとが求められ、クロックリファレンスとパケットサイズとに基づいて、アクセスユニットがパケット化される。また、請求項７に記載のディジタル信号伝送方法および請求項８に記載のディジタル信号伝送装置によれば、そのようにパケット化されて生成された伝送ストリームが伝送される。従って、パケット化の回数を大幅に減少させ、これにより、多重化の処理を効率良く行うことが可能となる。
【図面の簡単な説明】
【図１】本発明のデジタル信号符号化装置の第１の実施の形態の構成例を示すブロック図である。
【図２】２段バッファＳＴＤモデルの構成例を示すブロック図である。
【図３】図２の前段バッファ２１および後段バッファ２２の占有量の推移を示す図である。
【図４】図２の前段バッファ２１にデータを入力する時刻（入力完了時刻）を算出する手順を示すフローチャートである。
【図５】アクセスユニットを疑似アクセスユニットに分割したときの、図２の前段バッファ２１および後段バッファ２２の占有量の推移を示す図である。
【図６】本発明のデジタル信号符号化装置の第２の実施の形態の構成例を示すブロック図である。
【図７】１段バッファＳＴＤモデルの構成例を示すブロック図である。
【図８】図７のバッファ４１の占有量の推移を示す図である。
【図９】アクセスユニットを統合した疑似アクセスユニットの大きさとデコード時刻を示す図である。
【図１０】トランスポートストリームおよびプログラムストリームの構造の一例を示す図である。
【図１１】従来のディジタル信号符号化装置の一例の構成を示すブロック図である。
【図１２】トランスポートストリームＳＴＤモデルの一例の構成を示すブロック図である。
【図１３】プログラムストリームＳＴＤモデルの一例の構成を示すブロック図である。
【符号の説明】
１  アクセスユニット検出器，  ２  疑似アクセスユニット計算器，  ３  パケッタイザ，  ４  スケジューラ，  ５  伝送路，  ６  記録媒体，  ２１  前段バッファ，  ２２  後段バッファ，  ２３  デコーダ，  ３２  疑似アクセスユニット計算器，  ４１  バッファ，  ４２  デコーダ
【図１】
0004016215.tif 000002
【図２】
0004016215.tif 000003
【図３】
0004016215.tif 000004
【図４】
0004016215.tif 000005
【図５】
0004016215.tif 000006
【図６】
0004016215.tif 000007
【図７】
0004016215.tif 000008
【図８】
0004016215.tif 000009
【図９】
0004016215.tif 000010
【図１０】
0004016215.tif 000011
【図１１】
0004016215.tif 000012
【図１２】
0004016215.tif 000013
【図１３】
0004016215.tif 000014