(57)【特許請求の範囲】
【請求項１】
複数のパケットを含むビットストリームを受け取り、受け取ったビットストリームから複数の新たなパケットを生成するパケット再生成部と、
前記パケット再生成部によって生成された前記複数の新たなパケットを格納する格納部と、
前記ビットストリームの再生動作モードを示す制御信号を受け取り、該制御信号にて示される再生動作モードに従ってアドレス信号を生成して、生成されたアドレス信号を前記格納部に出力し、該アドレス信号に基づいて、前記格納部に格納された前記複数のパケットのデータを読み出す読み出し制御部と、
該読み出し制御部にて読み出されたデータを復号する復号部とを備えたデコード装置であって、
前記パケット再生成部は、単独でデコードすることが可能な最小のデータ単位である１つのアクセスユニットが、前記ビットストリームにおける第１のパケットに含まれる第１データ部分と、前記第１のパケットに続く第２のパケットに含まれる第２部分とを有する場合に、前記第１データ部分と前記第２データ部分とを結合して、前記アクセスユニットに対応するデータを含む新たな１つのパケットを、該データの長さを示す情報を含んで生成し、
前記読み出し制御部は、前記制御信号がスキップ再生動作モードを示す場合に、前記アクセスユニットに対応するデータの長さを示す情報を利用して、前記複数の新たなパケットのうち少なくとも１つをスキップするように、前記格納部から前記複数の新たなパケットを読み出す、デコード装置。
【請求項２】
前記新たなパケットは、プレゼンテーションタイムスタンプを示す情報をさらに含む請求項１に記載のデコード装置。
【請求項３】
複数のパケットを含むビットストリームを受け取り、受け取ったビットストリームから複数の新たなパケットを生成するパケット再生成ステップと、
生成された前記複数の新たなパケットを格納部に格納する格納ステップと、
前記ビットストリームの再生動作モードを示す制御信号に基づいてアドレス信号を生成し、生成された前記アドレス信号に基づいて、前記格納部に格納された前記複数のパケットのデータを読み出す読み出しステップと、
該読み出しステップにて読み出されたデータを復号する復号ステップとを包含するデコード方法であって、
前記パケット再生成ステップは、単独でデコードすることが可能な最小のデータ単位である１つのアクセスユニットが、前記ビットストリームにおける第１のパケットに含まれる第１データ部分と、前記第１のパケットに続く第２のパケットに含まれる第２部分とを有する場合に、前記第１データ部分と前記第２データ部分とを結合して、前記アクセスユニットに対応するデータを含む新たな１つのパケットを、該データの長さを示す情報を含んで生成し、
前記読み出しステップは、前記制御信号がスキップ再生動作モードを示す場合に、前記アクセスユニットに対応するデータの長さを示す情報を利用して、前記複数の新たなパケットのうち少なくとも１つをスキップするように、前記格納部から前記複数の新たなパケットを読み出す、デコード方法。
【発明の詳細な説明】
（技術分野）
本発明は、複数のパケットを含むビットストリームをデコードするデコード装置およびデコード方法に関する。
【０００１】
（背景技術）
複数のパケットを含むビットストリームをデコードするデコード装置が知られている。複数のパケットのそれぞれは、ヘッダ部とデータ部とを含む。アクセスユニットの先頭の位置を示すピクチャスタートコードは、データ部の任意の位置に配置される。
【０００２】
映像データや音声データの特殊再生動作として、スキップ再生動作とフリーズ再生動作とが知られている。スキップ再生動作は、複数のアクセスユニットのうち少なくとも１つをスキップすることによって実現される。フリーズ再生動作は、複数のアクセスユニットのうち少なくとも１つを繰り返し再生することによって実現される。
【０００３】
スキップ再生動作を実現するためには、アクセスユニットの先頭の位置を特定する必要がある。そのために、従来のデコード装置は、パケットのデータ部をサーチすることにより、そのデータ部に含まれるピクチャスタートコードを検出する必要があった。しかし、パケットのデータ部をサーチするには時間がかかる。このことは、スキップ再生動作をなめらかに行うことを困難にしていた。
【０００４】
また、従来のデコード装置は、ビットストリームをいったんバッファメモリに蓄積し、そのバッファメモリに蓄積されたビットストリームに含まれる特定のデータを繰り返し読み出すことにより、フリーズ再生動作を行っていた。従って、従来のデコード装置には、表示用の大容量のバッファメモリが必要であった。
【０００５】
本発明は、（１）高速なスキップ再生動作を実現するデコード装置およびデコード方法を提供すること、（２）表示用のバッファメモリを不要にするデコード装置およびデコード方法を提供することを目的とする。
【０００６】
（発明の開示）
本発明のデコード装置は、複数のパケットを含むビットストリームを受け取り、受け取ったビットストリームから複数の新たなパケットを生成するパケット再生成部と、前記パケット再生成部によって生成された前記複数の新たなパケットを格納する格納部と、前記ビットストリームの再生動作モードを示す制御信号を受け取り、該制御信号にて示される再生動作モードに従ってアドレス信号を生成して、生成されたアドレス信号を前記格納部に出力し、該アドレス信号に基づいて、前記格納部に格納された前記複数のパケットのデータを読み出す読み出し制御部と、該読み出し制御部にて読み出されたデータを復号する復号部とを備えたデコード装置であって、前記パケット再生成部は、単独でデコードすることが可能な最小のデータ単位である１つのアクセスユニットが、前記ビットストリームにおける第１のパケットに含まれる第１データ部分と、前記第１のパケットに続く第２のパケットに含まれる第２部分とを有する場合に、前記第１データ部分と前記第２データ部分とを結合して、前記アクセスユニットに対応するデータを含む新たな１つのパケットを、該データの長さを示す情報を含んで生成し、前記読み出し制御部は、前記制御信号がスキップ再生動作モードを示す場合に、前記アクセスユニットに対応するデータの長さを示す情報を利用して、前記複数の新たなパケットのうち少なくとも１つをスキップするように、前記格納部から前記複数の新たなパケットを読み出す。これにより、上記目的が達成される。
【０００８】
前記新たなパケットは、プレゼンテーションタイムスタンプを示す情報をさらに含んでいてもよい。
【０００９】
本発明のデコード方法は、複数のパケットを含むビットストリームを受け取り、受け取ったビットストリームから複数の新たなパケットを生成するパケット再生成ステップと、生成された前記複数の新たなパケットを格納部に格納する格納ステップと、前記ビットストリームの再生動作モードを示す制御信号に基づいてアドレス信号を生成し、生成された前記アドレス信号に基づいて、前記格納部に格納された前記複数のパケットのデータを読み出す読み出しステップと、該読み出しステップにて読み出されたデータを復号する復号ステップとを包含するデコード方法であって、前記パケット再生成ステップは、単独でデコードすることが可能な最小のデータ単位である１つのアクセスユニットが、前記ビットストリームにおける第１のパケットに含まれる第１データ部分と、前記第１のパケットに続く第２のパケットに含まれる第２部分とを有する場合に、前記第１データ部分と前記第２データ部分とを結合して、前記アクセスユニットに対応するデータを含む新たな１つのパケットを、該データの長さを示す情報を含んで生成し、前記読み出しステップは、前記制御信号がスキップ再生動作モードを示す場合に、前記アクセスユニットに対応するデータの長さを示す情報を利用して、前記複数の新たなパケットのうち少なくとも１つをスキップするように、前記格納部から前記複数の新たなパケットを読み出す。これにより、上記目的が達成される。
【００１１】
（発明を実施するための最良の形態）
以下、図面を参照しながら本発明の実施の形態を説明する。
【００１２】
図１は、本発明のデコード装置１を含むＤＶＤ再生装置３００の構成例を示す。
【００１３】
ＤＶＤ再生装置３００は、ピックアップユニット３２０と、物理ブロック３３０と、デコード装置１と、出力装置３５０と、ＣＰＵ３６０と、入力装置３７０とを含む。
【００１４】
ＤＶＤディスク３１０には、映像データや音声データが記録されている。ＤＶＤディスク３１０に記録されているデータは、ＤＶＤ再生装置３００により読み出され、再生される。なお、本明細書ではディスク３１０はＤＶＤディスクとして説明しているが、他の情報記録媒体であってもよい。
【００１５】
ピックアップユニット３２０は、ＤＶＤディスク３１０に記録されたデータを読み出す。データの読み出しは、レーザユニット３２１から所定の波長を有するレーザをＤＶＤディスク３１０に照射し、ＤＶＤディスク３１０から反射されたレーザを検出することによって行われる。ピックアップユニット３２０は、読み出されたデータを物理ブロック３３０に出力する。
【００１６】
物理ブロック３３０は、誤り符号訂正ユニット３３１およびサーボコントロールユニット３３２とを含んでいる。物理ブロック３３０は、ピックアップユニット３２０から出力されたデータを受け取る。受け取られたデータは、誤り符号訂正ユニット３３１によって誤り符号訂正等の信号処理が施される。物理ブロック３３０は、信号処理されたデータをビットストリーム１００としてデコード装置１に出力する。
【００１７】
デコード装置１は、物理ブロック３３０から出力されたビットストリーム１００を受け取る。デコード装置１は、中央処理装置（ＣＰＵ）３６０から再生動作モードを示す制御信号３６１を受け取る。デコード装置１は、制御信号３６１によって示される再生動作モードに従って、ビットストリーム１００のデコード処理を実行する。デコード装置１は、ビットストリーム１００のデコード結果として、映像信号２００ａおよび／または音声信号２００ｂを出力装置３５０に出力する。
【００１８】
デコード装置１の構成および動作の詳細は、後述される。
【００１９】
出力装置３５０は、デコード装置１から出力された映像信号２００ａをテレビジョンなどのディプレイに表示し、デコード装置１から出力された音声信号２００ｂをスピーカに出力する。このように、デコード装置１からの出力は、ディスプレイまたはスピーカに出力可能な形式でなされる。
【００２０】
中央処理装置（ＣＰＵ）３６０は、ピックアップユニット３２０と物理ブロック３３０とデコード装置１と出力装置３５０とを制御する。ＣＰＵ３６０は、入力装置３７０から再生動作モード（例えば、通常再生モード／２倍速再生モード／フリーズ再生モード）を示すコマンドが入力されると、そのコマンドに対応する制御信号３６１を生成し、その制御信号３６１をデコード装置１に出力する。
【００２１】
入力装置３７０は、再生動作モードを示すコマンドをユーザが入力するために使用される。そのようなコマンドの入力は、例えば、リモートコントローラ（図示せず）またはＤＶＤ再生装置３００に設けられている操作パネル（図示せず）を用いて行われる。
【００２２】
以上の例では、デコード装置１に入力されるビットストリーム１００は、ＤＶＤディスク３１０から読み出され、信号処理されたデータであるとした。しかし、ビットストリーム１００は蓄積メディアまたは放送メディアから得られるデータであってもよい。ここで、蓄積メディアとは、例えば、ＣＤ−ＲＯＭ、ＬＤ、ビデオテープであり得る。放送メディアとは、例えば、テレビジョン放送、衛星放送、データ通信であり得る。
【００２３】
以下、デコード装置１に入力されるビットストリーム１００の構造を説明する。
【００２４】
図２Ａは、ビットストリーム１００の構造を摸式的に示す。
【００２５】
図２Ａに示されるビットストリーム１００は、ＭＰＥＧ２規格に準拠している。しかし、デコード装置１に入力されるビットストリーム１００は、ＭＰＥＧ２規格に準拠しているものには限定されない。後述するようなアクセスユニットに対応するデータを含むビットストリームである限り、任意のビットストリームがデコード装置１に入力され得る。
【００２６】
ビットストリーム１００は、１以上のパック（Ｐａｃｋ）１１０を含む。パック１１０は、パックヘッダ１２０と１以上のパケット（Ｐａｃｋｅｔ）１３０とを含む。パケット１３０は、ＰＥＳヘッダ１４０とデータ部１５０とを含む。
【００２７】
データ部１５０には、映像データ１５０ａまたは音声データ１５０ｂのいずれかが格納される。ＤＶＤディスクではデータ部１５０のデータ長は固定されている。しかし、ＭＰＥＧデータストリームの場合は、データ部１５０のデータ長は固定長でなくともよい。
【００２８】
映像データ１５０ａは、主映像のデータだけでなく副映像のデータも含む。ここで、主映像とは映画やテレビ放送などに含まれる主要な映像である。副映像とは、例えば字幕やタイトルなど、主映像データに対する付加的な情報を表す映像である。
【００２９】
音声データ１５０ｂは、映像データ１５０ａの表す映像に対応する、あるいは映像データ１５０ａの表す映像と独立した音声のデータである。
【００３０】
図２Ａに示されるように、ピクチャースタートコード１６２ａはアクセスユニットと次のアクセスユニットとの間の境界（アクセスユニット境界１６３ａ）を規定する。ここで、用語「アクセスユニット」は、単独でデコードすることが可能な最小のデータ単位をいうと定義する。映像データ１５０ａの場合には、アクセスユニットは１フィールドであってもよいし、１フレームであってもよい。
【００３１】
１つのアクセスユニットに対応するデータが１つのパケット１３０のデータ部１５０に含まれているとは限らない。例えば、図２Ａに示されるように、１つのアクセスユニットに対応する映像データ１５０ａの一部分（第１データ部分１５０ａ−１）があるパケット１３０のデータ部１５０に含まれ、そのアクセスユニットに対応する映像データ１５０ａの他の部分（第２データ部分１５０ａ−２）が他のパケット１３０のデータ部１５０に含まれている場合がある。この場合には、本発明によるデコード装置１は、第１データ部分１５０ａ−１と第２データ部分１５０ａ−２とを結合することにより映像データ１５０Ａを生成し、映像データ１５０ＡとＰＥＳヘッダ１４１とを結合することにより、新たなパケット１６４を生成する（図２Ｂ参照）。このようにして、新たなパケット１６４は、１つのアクセスユニットに対応するデータを含むように生成される。
【００３２】
なお、１つのアクセスユニットに対応するデータが３以上のパケットにまたがっている場合には、各パケットのデータを結合することにより、１つのアクセスユニットに対応するデータを含むように新たなパケット１６４が生成される。
【００３３】
あるいは、１つのパケット１３０のデータ部１５０に複数のアクセスユニットに対応するデータが含まれている場合がある。この場合には、本発明によるデコード装置１は、データ部１５０のデータを複数のアクセスユニットに対応するように区分することにより、各パケットが１つのアクセスユニットに対応するデータを含むように複数の新たなパケット１６４が生成される。
【００３４】
図６Ａは、パックヘッダ１２０のシンタックスおよびビット配列の例を示す。
【００３５】
パックヘッダ１２０は、ｐａｃｋ＿ｓｔａｒｔ＿ｃｏｄｅの値によって識別される。すなわち、ｐａｃｋ＿ｓｔａｒｔ＿ｃｏｄｅの値が０００００１ＢＡ（１６進）である場合には、ビットストリーム１００中にパックヘッダ１２０があることが検出される。パックヘッダ１２０中に存在する代表的な情報としては、ｓｙｓｔｅｍ＿ｃｌｏｃｋ＿ｒｅｆｅｒｅｎｃｅ（ＳＣＲ）がある。ＳＣＲは、映像データ１５０ａまたは音声データ１５０ｂのプレゼンテーションタイミングの基準時刻を示す情報である。
【００３６】
図６Ｂは、ＰＥＳヘッダ１４０のシンタックスおよびビット配列の例を示す。
【００３７】
ＰＥＳヘッダ１４０は、ｐａｃｋｅｔ＿ｓｔａｒｔ＿ｃｏｄｅ＿ｐｒｅｆｉｘの値とｓｔｒｅａｍ＿ｉｄの値によって識別される。
【００３８】
ＰＥＳヘッダ１４０中には、ｐａｃｋｅｔ＿ｌｅｎｇｔｈというフィールドとｐａｃｋｅｔ＿ｄａｔａ＿ｂｙｔｅというフィールドとが存在する。
【００３９】
ｐａｃｋｅｔ＿ｌｅｎｇｔｈというフィールドは、このフィールド以降のＰＥＳヘッダ１４０のバイト数を規定する。
【００４０】
ｐａｃｋｅｔ＿ｌｅｎｇｔｈというフィールドからｐａｃｋｅｔ＿ｄａｔａ＿ｂｙｔｅというフィールドまでの間には、プレゼンテーションタイムスタンプ（ＰＴＳ）を示す情報などがさらに存在し得る。ＰＴＳは、ＳＣＲを基準時刻とする相対的な表示時刻を示す情報である。
【００４１】
ｐａｃｋｅｔ＿ｄａｔａ＿ｂｙｔｅというフィールドは、映像データ１５０ａまたは音声データ１５０ｂを表す。もし、ｓｔｒｅａｍ＿ｉｄの値がＥＸ（１６進、Ｘは任意）である場合には、ｐａｃｋｅｔ＿ｄａｔａ＿ｂｙｔｅというフィールドは、映像データ１５０ａを表す。
【００４２】
ここで、ｐａｃｋｅｔ＿ｌｅｎｇｔｈというフィールドからｐａｃｋｅｔ＿ｄａｔａ＿ｂｙｔｅというフィールドまでの間のバイト数は、シンタックスにより固定のバイト数に予め決められている。従って、ｐａｃｋｅｔ＿ｌｅｎｇｔｈによって示されるバイト数からこの固定のバイト数を引き算した値が、ｐａｃｋｅｔ＿ｄａｔａ＿ｂｙｔｅのバイト数に等しくなる。このように、ｐａｃｋｅｔ＿ｌｅｎｇｔｈに基づく計算によって映像データ１５０ａまたは音声データ１５０ｂの長さを求めることができる。このことは、ビットストリーム１００から映像データ１５０ａまたは音声データ１５０ｂを抽出することを可能にする。
【００４３】
図３は、本発明の実施の形態のデコード装置１の構成を示す。
【００４４】
デコード装置１は、パケット再生成部１０と、データ格納部２０と、読み出し制御部３０と、復号部４０と、入力部５０とを含む。
【００４５】
パケット再生成部１０は、ビットストリーム１００を受け取り、アクセスユニット単位にパケット化されたビットストリーム１６０を生成する。生成されたビットストリーム１６０はデータ格納部２０に出力される。パケット再生成部１０の詳細な構成および動作は、図４を参照しながら後述される。
【００４６】
データ格納部２０は、パケット再生成部１０からアクセスユニット単位にパケット化されたビットストリーム１６０を受け取り、受け取ったビットストリーム１６０を一時的に格納する。データ格納部２０はまた、アクセスユニット単位にパケット化されたビットストリーム１６０が格納されている位置を示す読み出しアドレス信号５５０を、読み出し制御部３０から受け取る。データ格納部２０は、受け取った読み出しアドレス信号５５０が表すアドレスに対応する格納領域の位置から、ビットストリーム１６０を読み出し、データ信号５６０として読み出し制御部３０に出力する。
【００４７】
データ格納部２０は、例えばＤＲＡＭであり得る。
【００４８】
読み出し制御部３０は、入力部５０から出力された制御信号３６２を受け取る。制御信号３６２は、ビットストリーム１００の再生動作モードを示す信号である。読み出し制御部３０は、制御信号３６２によって示される再生動作モードに従って、アドレス信号５５０を生成し、生成されたアドレス信号５５０をデータ格納部２０に出力する。読み出し制御部３０は、データ格納部２０から出力されたデータ信号５６０を受け取り、受け取ったデータ信号５６０をデータ信号５６１として復号部４０に出力する。読み出し制御部３０の詳細な構成および動作は、図５を参照しながら後述される。
【００４９】
復号部４０は、読み出し制御部３０からデータ信号５６１を受け取り、受け取ったデータ信号５６１を復号する。復号部４０は、データ信号５６１から復号された映像信号２００ａおよび／または音声信号２００ｂを、デコード装置１の外部にある出力装置３５０に出力する。
【００５０】
以下、デコード装置１に含まれるパケット再生成部１０の構成および動作を説明する。
【００５１】
図４は、パケット再生成部１０の構成を示す。
【００５２】
パケット再生成部１０は、スタートコード検出器５１と、分解器５２と、ＰＥＳヘッダ格納部５３と、ＰＥＳパケット生成部５４とを含んでいる。
【００５３】
スタートコード検出器５１は、ビットストリーム１００を受け取り、スタートコードを検出する。スタートコードは、ビットストリーム１００に含まれるパックヘッダ１２０の先頭、ＰＥＳヘッダ１４０の先頭およびアクセスユニット１５１ａの先頭に挿入されているコードである。例えば、スタートコードは、２４ビットのビット列”００００  ００００  ００００  ００００  ００００  ０００１”である。スタートコード検出器５１は、受け取ったビットストリーム１００を分解器５２に出力する。入力されたビットストリーム１００の中にスタートコードが現れた場合、スタートコード検出器５１は、スタートコード検出信号を分解器５２に出力する。
【００５４】
分解器５２は、スタートコード検出器５１からビットストリーム１００とスタートコード検出信号とを受け取る。
【００５５】
分解器５２がスタートコード検出信号を受け取ると、分解器５２はスタートコードに続く所定の数のビット（例えば、８ビット）のデータを読み取り、そのデータが所定のビット列に一致するか否かを調べる。その結果、分解器５２はそのスタートコードに対応するデータの種類を判別する。
【００５６】
例えば、スタートコードに続く８ビットが”１１１０  ＸＸＸＸ”に一致する場合には、分解器５２はそのデータが映像データ１５０ａに対応するＰＥＳヘッダ１４０であると判別する。あるいは、スタートコードに続く８ビットが”１１００  ＸＸＸＸ”である場合には、分解器５２はそのデータが音声データ１５０ｂに対応するＰＥＳヘッダ１４０であると判別する。なお、音声データ１５０ｂ内のアクセスユニットの区切りの判定には、Ｓｙｎｃ  ｂｙｔｅと呼ばれる同期ワードが用いられることがある。この場合は、同期ワードがスタートコード検出器５１内で検出されるとしてもよい。
【００５７】
分解器５２は、ビットストリーム１００中にＰＥＳヘッダ１４０を検出すると、ＰＥＳヘッダ検出信号をＰＥＳヘッダ格納部５３に出力する。これにより、ビットストリーム１００から抽出されたＰＥＳヘッダ１４０がＰＥＳヘッダ格納部５３に格納される。
【００５８】
パックヘッダ１２０およびＰＥＳヘッダ１４０のシンタックスは、図６Ａおよび図６Ｂに示されるとおりである。これらのシンタックスに従って、ビットストリーム１００からパックヘッダ１２０およびＰＥＳヘッダ１４０が抽出される。
【００５９】
以下では、パケット１３０のデータ部１５０に映像データ１５０ａが格納されている場合を例にとり説明する。しかし、これは一例であり、本発明を適用可能なデータが映像データ１５０ａに限定されることを意味するものではない。本発明は、特殊再生の対象となる任意のデータに対して適用され得る。例えば、映像データ１５０ａ、音声データ１５０ｂ、その他の種類のデータが特殊再生の対象となり得る。
【００６０】
ＰＥＳヘッダ１４０に続く映像データ１５０ａがスタートコード検出器５１に入力されると、スタートコード検出器５１は、スタートコードを検出する。例えば、スタートコードに続く８ビットが”００００  ００００”である場合、分解器５２は、そのデータがピクチャースタートコード１６２ａであると判定し、ピクチャースタートコード検出信号をＰＥＳパケット生成部５４に出力する。
【００６１】
ＰＥＳヘッダ格納部５３は、分解器５２によってビットストリーム１００から抽出されたＰＥＳヘッダ１４０を格納する。分解器５２からのＰＥＳヘッダ検出信号は、ＰＥＳヘッダ１４０のＰＥＳヘッダ格納部５３への格納を許可するイネーブル信号として使用される。
【００６２】
なお、ＰＥＳヘッダ格納部５３は、ＰＥＳヘッダ１４０のデータ全体を格納する代わりに、ＰＥＳヘッダ１４０のデータの一部（例えば、ｐａｃｋｅｔ＿ｌｅｎｇｔｈ、または、ｐａｃｋｅｔ＿ｌｅｎｇｔｈとＰＴＳ）のみを格納するようにしてもよい。
【００６３】
ＰＥＳパケット生成部５４は、分解器５２からピクチャースタートコード検出信号を受け取る。カウンタ５４ａは、ピクチャースタートコード検出信号に応答して、カウント値を初期化する。そのカウント値は、あるピクチャースタートコード検出信号を受け取ってからその次のピクチャースタートコード検出信号を受け取るまでにカウンタ５４ａに入力される映像データ１５０ａのバイト数を表す。このように、カウンタ５４ａは、アクセスユニットの先頭から次のアクセスユニットの先頭までのバイト数（すなわち、アクセスユニットの長さ）をカウントするために使用される。
【００６４】
ＰＥＳパケット生成部５４は、ＰＥＳヘッダ格納部５３に格納されたＰＥＳヘッダ１４０をさらに受け取る。ＰＥＳヘッダ１４０は、パケットレングス更新部５４ｂに格納される。パケットレングス更新部５４ｂにおいて、ＰＥＳヘッダ１４０のｐａｃｋｅｔ＿ｌｅｎｇｔｈの値がカウンタ５４ａによってカウントされたアクセスユニットの長さに一致するように更新される。パケットレングス更新部５４ｂは、更新されたｐａｃｋｅｔ＿ｌｅｎｇｔｈを有するＰＥＳヘッダ１４０をＰＥＳヘッダ１４１として結合部５４ｄに出力する。
【００６５】
ＰＥＳパケット生成部５４は、ピクチャースタートコード１６２ａから始まる映像データ１５０ａをさらに受け取る。映像データ１５０ａは、バッファ５４ｃに蓄積される。ここで、図２Ｂに示されるように、映像データ１５０ａの一部分（第１データ部分１５０ａ−１）が第１パケット１３０のデータ部１５０に含まれており、映像データ１５０ａの他の部分（第２データ部分１５０ａ−２）が第１パケットに続く第２パケット１３０のデータ部１５０に含まれている場合には、第１のデータ部分１５０ａ−１と第２のデータ部分１５０ａ−２とはバッファ５４ｃに蓄積され、バッファ５４ｃにおいて第１のデータ部分１５０ａ−１と第２のデータ部分１５０ａ−２とが結合される。その結果、１つのアクセスユニット１５１ａに対応する映像データ１５０Ａがバッファ５４ｃから結合部５４ｄに出力されることになる。
【００６６】
結合部５４ｄは、パケットレングス更新部５４ｂからＰＥＳヘッダ１４１を受け取り、バッファ５４ｄからアクセスユニット１５１ａに対応する映像データ１５０Ａを受け取り、ＰＥＳヘッダ１４１と映像データ１５０Ａとを結合する。このようにして、アクセスユニット１５１ａに対応する映像データ１５０Ａを含む新たなＰＥＳパケット１６４が生成される。ＰＥＳパケット１６４は、データ格納部２０に出力される。
【００６７】
ここで、アクセスユニット１５１ａに対応する映像データ１５０Ａに結合されるＰＥＳヘッダ１４１は、ピクチャースタートコード１６２ａを含む第１データ部分１５０ａ−１より前に現れた複数のＰＥＳヘッダ１４０のうち、最後に現れたＰＥＳヘッダ１４０のｐａｃｋｅｔ＿ｌｅｎｇｔｈを更新したものである。
【００６８】
ＰＥＳヘッダ１４１に含まれる情報は、ＰＥＳヘッダ１４０に含まれる情報と同一であってよい。しかし、ＰＥＳヘッダ１４１は、ＰＥＳヘッダ１４０に含まれる情報の一部を含んでいれば十分である。ＰＥＳパケット１４０は、ＰＥＳヘッダ１４１には必ずしも必要でない情報を含んでいるからである。
【００６９】
例えば、特殊再生動作を実現するという観点からは、ＰＥＳヘッダ１４１は、ｐａｋｅｔ＿ｌｅｎｇｔｈを含んでいれば足りる。これは、ＰＥＳヘッダ１４１中のｐａｋｅｔ＿ｌｅｎｇｔｈの値を参照することにより、ピクチャースタートコード１６２ａを含むアクセスユニット１５１ａのデータ長を得ることができ、このデータ長を利用することによって、特殊再生動作を行うことができるからである。このような処理は、後述する読み出し制御部３０によって実行される。さらに、ＰＥＳヘッダ１４１は、ｐａｃｋ＿ｓｔａｒｔ＿ｃｏｄｅ＿ｐｒｅｆｉｘとｓｔｒｅａｍ＿ｉｄとＰＴＳとをさらに含んでいることが好ましい。あるいは、ＰＴＳは、映像データ１５０Ａの所定の位置に挿入されていてもよい。
【００７０】
パケットレングス更新部５４ｂは、ＰＥＳヘッダ１４０に含まれる情報のうちＰＥＳヘッダ１４１に必要な情報を選択し、その選択された情報を含むＰＥＳヘッダ１４１を出力するように構成され得る。パケットレングス更新部５４ｂによって選択される情報は、ＰＥＳヘッダ１４０に含まれる予め決められた情報であってもよいし、ＰＥＳヘッダ１４０に含まれる情報のうちＰＥＳヘッダ１４０に続くデータに応じて選択される情報であってもよい。
【００７１】
上述した動作を繰り返すことにより、ＰＥＳパケット生成部５４は、複数の新たなＰＥＳパケット１６４を生成する。その複数のＰＥＳパケット１６４のそれぞれは、１つのアクセスユニットに対応する映像データを含む。
【００７２】
図７は、ＰＥＳパケット生成部５４によって生成されたＰＥＳパケット１６４ａ〜１６４ｄを含むビットストリーム１６０の例を示す。
【００７３】
なお、上述の映像データの場合と同様にして、ＰＥＳパケット生成部５４は、１つのアクセスユニットに対応する音声データを含むＰＥＳパケット１６４を生成することができる。
【００７４】
なお、ＰＥＳヘッダ１４０にその他の情報を付加することは、たとえＭＰＥＧ２のシステムストリームの規格の範囲外であっても、復号部４０との間でその情報の取り扱いに関する取り決めがなされていれば、特に問題がない。
【００７５】
以下、デコード装置１に含まれる読み出し制御部３０の構成および動作を説明する。
【００７６】
図５は、読み出し制御部３０の構成を示す。
【００７７】
読み出し制御部３０は、コントローラ５００と、アドレス発生器５０１ａおよび５０１ｂと、アドレス選択回路５０２と、ＦＩＦＯ（Ｆｉｒｓｔ−Ｉｎ  Ｆｉｒｓｔ−Ｏｕｔ）メモリ５０３ａおよび５０３ｂとを含む。
【００７８】
再生動作モードを示す制御信号３６２がコントローラ５００に入力される。コントローラ５００は、制御信号３６２に従って、ビットストリーム１００の再生を制御する。以下に、再生動作モードが通常再生モードである場合における読み出し制御部３０の動作と、再生動作モードが２倍速再生モードまたはフリーズ再生モードである場合における読み出し制御部３０の動作とを説明する。
【００７９】
再生動作モードが通常再生モードである場合には、コントローラ５００は、アドレス発生器５０１ａに読み出しアドレス５０６ａを設定するとともに、アドレス発生器５０１ａに読み出し起動信号５０７ａを出力する。
【００８０】
アドレス発生器５０１ａは、データ格納部２０に対して、設定された読み出しアドレス５０６ａから始まるビットストリーム１６０を読み出すことを求める。ビットストリーム１６０の読み出しアドレスおよび読み出し命令は、アドレス選択回路５０２を介してアドレス５５０としてデータ格納部２０に出力される。
【００８１】
ビットストリーム１６０の読み出しアドレスおよび読み出し命令に基づいてデータ格納部２０からデータ信号５６０が送信される。データ信号５６０は、ＦＩＦＯメモリ５０３ａに蓄えられる。データ信号５６０は、読み出しアドレス５０６ａで示されたデータ格納部２０のアドレスを初期値として、そのアドレス以降のアドレスに格納されているデータを表す信号である。所定量のデータ信号５６０がＦＩＦＯメモリ５０３ａに蓄えられると、蓄えられたデータ信号５６０は復号部４０にデータ信号５６１として出力される。データ信号５６１は、データ信号５６０と実質的に同一のデータである。このようにして、通常再生モードの動作が実行される。
【００８２】
再生動作モードが２倍速再生モードまたはフリーズ再生モードである場合には、データ格納部２０からデータ信号５６０が送信されてくるまでの読み出し制御部３０の動作は、通常再生モード時の読み出し制御部３０の動作と同様である。ただし、通常再生モードの場合と比較して、アドレス発生器５０１ａに代えてアドレス発生器５０１ｂが用いられ、読み出しアドレス５０６ａおよび読み出し起動信号５０７ａに代えてそれぞれ読み出しアドレス５０６ｂおよび読み出し起動信号５０７ｂが用いられる点が相違する。
【００８３】
データ格納部２０から送信されるデータ信号５６０は、ＦＩＦＯメモリ５０３ｂに蓄えられる。データ信号５６０は、読み出しアドレス５０６ｂで示されたデータ格納部２０のアドレスを初期値として、そのアドレス以降のアドレスに格納されているデータを表す信号である。
【００８４】
ＦＩＦＯメモリ５０３ｂに蓄えられたデータ信号５６０は、コントローラ５００によって読み出される。データ信号５６０はビットストリーム１６０であり、１以上のＰＥＳパケット１６４（図７では、ＰＥＳパケットは参照番号１６４ａ〜１６４ｄによって示される）を含む。コントローラ５００は、このＰＥＳパケット１６４を解析し、ＰＥＳパケット１６４のＰＥＳヘッダ１４１に含まれるｐａｃｋｅｔ＿ｌｅｎｇｔｈの値を参照することにより、アクセスユニット１５１ａのデータ長を読み出す。コントローラ５００は、読み出したアクセスユニット１５１ａのデータ長に基づいて、２倍速再生モードの場合は１つおきのＰＥＳパケット１６４（図７ではたとえば１６４ａ、１６４ｃ）のアドレスを、フリーズ再生モードの場合は繰り返し１つのＰＥＳパケット１６４（図７ではたとえば１６４ａ）のアドレスを読み出しアドレス５０６ｂとして、アドレス発生器５０１ｂに出力する。すなわち、２倍速再生モードの場合はＰＥＳパケット１６４を１つおきに読み飛ばし、フリーズ再生モードの場合は同じＰＥＳパケット１６４を繰り返し読み出すように処理が行われる。その後、読み出しアドレス５０６ｂに対応するアドレス以降のデータ信号５６０がデータ格納部２０から読み出され、ＦＩＦＯメモリ５０３ａに蓄えられる。ＦＩＦＯメモリ５０３ａに蓄えられたデータ信号５６０は所定量に達すると復号部４０に出力される。
【００８５】
上述した読み出し制御部３０の２倍速再生動作によれば、ｐａｃｋｅｔ＿ｌｅｎｇｔｈの値のみを参照することにより、ＰＥＳパケット１６４（図７では例えば１６４ｂおよび１６４ｄ）のスキップ動作を実現できるため、なめらかな高速再生を実現することができる。
【００８６】
さらに、上述した読み出し制御部３０のフリーズ再生動作によれば、アクセスユニットに対応するデータを含むように生成された複数のＰＥＳパケット１６４のうち少なくとも１つが繰り返しデコードされる。従来のように復号後のデータを繰り返し表示されることがないので、復号後のデータを蓄積するバッファメモリを必要としない。
【００８７】
なお、コントローラ５００は、読み出したアクセスユニット１５１ａのデータ長に基づいて読み出しアドレスを改めてアドレス発生器５０１ｂに出力するとした。しかし、コントローラ５００は、読み出したアクセスユニット１５１ａのデータ長に基づいて、ＦＩＦＯメモリ５０３ｂに蓄えられた該当するＰＥＳパケット１６４を直接読み出してもよい。その場合、コントローラ５００は、読み出すべきＰＥＳパケット１６４のＦＩＦＯメモリ５０３ｂの適切なアドレスをＦＩＦＯメモリ５０３ｂに出力する。そのアドレスを受け取ったＦＩＦＯメモリ５０３ｂは、そのアドレス以降の対応するＰＥＳパケット１６４を含むデータ信号５６１を復号部４０へ出力する。この構成によれば、１つのＰＥＳパケット１６４を繰り返し再生するフリーズ再生動作に特に有用である。
【００８８】
なお、制御信号３６２が「３倍速再生モード」を示す場合にも、上述した動作と同様の動作により、２連続でアクセスユニット単位のＰＥＳパケットをスキップした後に、１つのアクセスユニット単位のＰＥＳパケットを再生することにより実現できる。
【００８９】
なお、読み出し制御部３０は、ＭＰＥＧ特有の前方および後方動き予測による符号化方式に起因して、スキップ動作ができない場合がある。たとえば、”Ｉ／Ｐ／Ｂ／Ｂ／Ｐ／Ｂ／Ｂ／Ｐ−−−−−”と続く画像で、スキップ動作が実現できるのは、Ｂのみである。この動作の実現は、ピクチャースタートコード１６２ａに続くピクチャーコーディングタイプをチェックすることにより、容易に実現できる。
【００９０】
ＰＥＳパケットを読み飛ばす動作についての制限は、音声データにおいては特にない。
【００９１】
なお、本実施の形態でＦＩＦＯメモリ５０３ａおよび５０３ｂを用いたのは、読み出し制御部３０と復号部４０との間の信号線を効率的に利用するためである。これは、読み出し制御部３０とデータ格納部２０との間では信号は高速に送信され得るのに対し、読み出し制御部３０と復号部４０との間では信号は比較的遅く送信されることに起因する。ＦＩＦＯメモリ５０３ａおよび５０３ｂを設け、データが所定量に達した時点で送信を開始することにより、転送速度が比較的遅い信号線を効率的に使用することができる。
【００９２】
（産業上の利用可能性）
本発明によれば、パケット再生成部によって、アクセスユニットに対応するデータを含む新たなパケットが生成される。その新たなパケットは、アクセスユニットに対応するデータの長さを示す情報を含む。アクセスユニットの先頭は、アクセスユニットに対応するデータの長さを示す情報を参照することによって容易に特定される。従来のように、アクセスユニットを特定するためにパケットのデータ部をサーチする必要はない。これにより、高速なスキップ再生動作を実現することが可能になる。
【００９３】
本発明によれば、アクセスユニットに対応するデータを含むように生成された複数の新たなパケットのうち少なくとも１つを繰り返しデコードすることにより、フリーズ再生動作が実現される。これにより、復号後のデータを蓄積するためのバッファメモリが不要になる。その結果、システムコストが低減される。
【図面の簡単な説明】
【図１】図１は、本発明のデコード装置１を含むＤＶＤ再生装置３００の構成例を示す図である。
【図２Ａ】図２Ａは、ビットストリーム１００の構造を摸式的に示す図である。
【図２Ｂ】図２Ｂは、ＰＥＳパケット１６４を生成する様子を模式的に説明するための図である。
【図３】図３は、本発明の実施の形態のデコード装置１の構成を示す図である。
【図４】図４は、パケット再生成部１０の構成を示す図である。
【図５】図５は、読み出し制御部３０の構成を示す図である。
【図６Ａ】図６Ａは、パックヘッダ１２０のシンタックスおよびビット配列の例を示す図である。
【図６Ｂ】図６Ｂは、ＰＥＳヘッダ１４０のシンタックスおよびビット配列の例を示す図である。
【図７】図７は、ＰＥＳパケット生成部５４によって生成されたＰＥＳパケット１６４ａ〜１６４ｄを含むビットストリーム１６０の例を示す図である。
【図１】
0003729737.tif 000002
【図２Ａ】
0003729737.tif 000003
【図２Ｂ】
0003729737.tif 000004
【図３】
0003729737.tif 000005
【図４】
0003729737.tif 000006
【図５】
0003729737.tif 000007
【図６Ａ】
0003729737.tif 000008
【図６Ｂ】
0003729737.tif 000009
【図７】
0003729737.tif 000010