(57)【要約】第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する方法を提供する。第１フォーマットのストリームでは、ストリームの再生時に必要とされないアドレス情報がストリームと関連付けられて存在する。第２フォーマットのストリームでは、ストリームの再生時に必要なアドレス情報が制御パック内に存在する。変換方法は、第１フォーマットのストリームと関連付けられたアドレス情報を取得するステップと、第１フォーマットの第１制御パックに基づいて第２フォーマットに従った第２制御パックを生成するステップであって、取得したアドレス情報を格納した第２制御パックを生成するステップと、第１制御パックを第２制御パックに置き換えて、第１フォーマットのデータストリームから第２フォーマットのデータストリームを生成するステップとを包含する。
2004057869.tif 000002
【特許請求の範囲】
【請求項１】
第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する方法であって、
いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、
さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、
前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されており、
前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、
前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、
前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップと
を包含するフォーマット変換方法。
【請求項２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換えるステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項３】
前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、
特定された前記データ長が基準長以下か否かを判定するステップと
をさらに包含し、前記データ長が基準長以下のとき、前記置き換えるステップを実行する、請求項２に記載のフォーマット変換方法。
【請求項４】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、
特定された前記データ長が基準長以下か否かを判定するステップと、
前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除するステップと、
削除された前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じたパケット長のパディングパケットを、前記少なくとも１つのパケットに付加するステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項５】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
前記拡張フィールドを削除するステップと、
削除された前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整するステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項６】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、
前記アドレス情報を取得するステップは、前記第１制御パックに格納された前記アドレス情報を抽出する、請求項１に記載のフォーマット変換方法。
【請求項７】
前記アドレス情報を取得するステップは、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出する、請求項６に記載のフォーマット変換方法。
【請求項８】
前記アドレス情報を取得するステップは、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出する、請求項１に記載のフォーマット変換方法。
【請求項９】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する、請求項１に記載のフォーマット変換方法。
【請求項１０】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックである、請求項２、４、５のいずれかに記載のフォーマット変換方法。
【請求項１１】
第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する装置であって、
いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、
さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、
前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されており、
前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得する受信部と、
前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するパック生成部であって、取得した前記アドレス情報を格納した第２制御パックを生成し、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するパック生成部と
を備えたフォーマット変換装置。
【請求項１２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、
特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換える変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１３】
前記判定部は、前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するとともに、特定された前記データ長が基準長以下か否かを判定し、前記データ長が基準長以下のとき、前記変換部に対して置き換えを指示する、請求項１２に記載のフォーマット変換装置。
【請求項１４】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部であって、さらに、前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定し、かつ、前記データ長が基準長以下か否かを判定する判定部と、
パディングパケットを生成するパケット生成部と、
前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除する変換部であって、削除した前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整して、前記少なくとも１つのパケットに付加する変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１５】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、
前記拡張フィールドを削除する変換部であって、削除した前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整する変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１６】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、
前記パック生成部は、前記第１制御パックに格納された前記アドレス情報を抽出する、請求項１１に記載のフォーマット変換装置。
【請求項１７】
前記パック生成部は、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出する、請求項１６に記載のフォーマット変換装置。
【請求項１８】
前記パック生成部は、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出する、請求項１１に記載のフォーマット変換装置。
【請求項１９】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する、請求項１１に記載のフォーマット変換装置。
【請求項２０】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックである、請求項１２、１４、１５のいずれかに記載のフォーマット変換装置。
【発明の詳細な説明】
【技術分野】  本発明は、映像および音声を含むコンテンツのフォーマットを変換する技術に関する。より具体的には、本発明は、ＤＶＤビデオレコーディング規格等で記録されたコンテンツをＤＶＤビデオ規格のコンテンツに変換する技術に関する。
【背景技術】  近年、光ディスク等の記録媒体にコンテンツを記録するために、種々の規格が定められている。例えば、ＤＶＤには、映画等の再生専用コンテンツが記録されるパッケージメディア用の記録フォーマットとして、ＤＶＤビデオ規格（以下、「ビデオ規格」と称する）が定められている。また、コンテンツをリアルタイムに記録し、後の編集等を可能にする記録フォーマットとして、ＤＶＤビデオレコーディング規格（以下、「ＶＲ規格」と称する）が定められている。一般の再生専用のＤＶＤプレーヤは、ビデオ規格で記録されたコンテンツを再生することは可能であるが、ＶＲ規格で記録されたコンテンツを再生することはできない。
現在、最も広く普及しているのが再生専用のプレーヤであるため、ＶＲ規格で記録されたコンテンツをビデオ規格に変換する必要性は高い。例えば、カムコーダを用いてＶＲ規格で記録された映像および音声を、再生専用のプレーヤを持つ知人に記録媒体を介して渡す必要が生じた場合には、ビデオ規格に変換する必要がある。
従来、このようなフォーマット変換処理は、ＶＲ規格で記録されたコンテンツを一旦復号し、ディジタルのベースバンド信号に変換した後、再度、ビデオ規格に符号化することによって実現されていた。
または、例えば日本国特開２００２−１５０７１３号公報に記載されている処理のように、コンテンツ内の各データが記録された記録媒体上の物理的な記録位置とその時間情報とを予め記録しておき、これらの情報を用いてフォーマット変換処理が実現されていた。
しかしながら、コンテンツを一旦復号して再符号化する従来のフォーマット変換処理では、再符号化する処理が介在するために、元のコンテンツの記録時間と同じ変換時間を要するばかりでなく、コンテンツの画質が劣化するという問題が生じていた。
また、あらかじめ記録されたデータの物理的記録位置と時間情報とを用いるフォーマット変換処理でも、フォーマット変換を行う際に物理的な記録位置を再度計算しなくてはならず、やはり比較的長い変換時間を要するという問題が生じていた。
【発明の開示】
本発明の目的は、コンテンツの画質劣化をさせることなく、かつ短時間でコンテンツのフォーマットを変換することである。
本発明によるデータストリームの変換方法は、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換することができる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有している。さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記変換方法は、前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップとを包含する。
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換えるステップとをさらに包含していてもよい。
前記方法は、前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、特定された前記データ長が基準長以下か否かを判定するステップとをさらに包含し、前記データ長が基準長以下のとき、前記置き換えるステップを実行してもよい。
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有している。前記方法は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、特定された前記データ長が基準長以下か否かを判定するステップと、前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除するステップと、削除された前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じたパケット長のパディングパケットを、前記少なくとも１つのパケットに付加するステップとをさらに包含していてもよい。
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有している。前記方法は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、前記拡張フィールドを削除するステップと、削除された前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整するステップとをさらに包含していてもよい。
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、前記アドレス情報を取得するステップは、前記第１制御パックに格納された前記アドレス情報を抽出してもよい。
前記アドレス情報を取得するステップは、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出してもよい。
前記アドレス情報を取得するステップは、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出してもよい。
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定してもよい。
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックであってもよい。
本発明によるフォーマット変換装置は、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換するに際して用いられる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記フォーマット変換装置は、前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得する受信部と、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するパック生成部であって、取得した前記アドレス情報を格納した第２制御パックを生成し、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するパック生成部とを備えている。
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されている。前記フォーマット変換装置は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換える変換部とをさらに備えていてもよい。
前記判定部は、前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するとともに、特定された前記データ長が基準長以下か否かを判定し、前記データ長が基準長以下のとき、前記変換部は前記スタッフィングデータへの置き換えを実行してもよい。
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有している。前記フォーマット変換装置は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部であって、さらに、前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定し、かつ、前記データ長が基準長以下か否かを判定する判定部と、パディングパケットを生成するパケット生成部と、前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除する変換部であって、削除した前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整して、前記少なくとも１つのパケットに付加する変換部とをさらに備えていてもよい。
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有している。前記フォーマット変換装置は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、前記拡張フィールドを削除する変換部であって、削除した前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整する変換部とをさらに備えていてもよい。
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、前記パック生成部は、前記第１制御パックに格納された前記アドレス情報を抽出してもよい。
前記パック生成部は、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出してもよい。
前記パック生成部は、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出してもよい。
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定してもよい。
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックであってもよい。
本発明による、コンピュータにおいて実行可能なデータストリームの変換プログラムは、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する際に用いられる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有している。さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記プログラムにしたがってコンピュータが実行する変換方法は、前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップとを包含する。
本発明による記録方法は、第１フォーマットのデータストリームを記録するに際して用いられる。前記記録方法は、映像および音声に関するコンテンツのデータを受け取るステップと、受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成するステップと、配列された前記データパックのアドレスを特定するアドレス情報を取得するステップと、前記データパックの再生を制御するために必要な制御情報に基づいて、制御パックを生成するステップと、前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するステップと、前記データストリーム内の前記データパックの格納位置を特定するアドレス情報を取得するステップと、前記アドレス情報と前記データストリームとを関連付けて記録媒体に記録するステップとを包含する。
前記記録方法は、前記アドレス情報を前記制御パックに格納するステップをさらに包含してもよい。
前記記録方法は、前記アドレス情報を、前記制御パック内の任意の情報を記述することが可能な属性情報フィールドに格納するステップをさらに包含してもよい。
前記記録方法は、前記アドレス情報を、前記データストリームとは異なるデータファイル内に格納するステップをさらに包含してもよい。
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する情報であってもよい。
前記記録方法によって記録された記録媒体には、前記アドレス情報が、データストリームの前記制御パック内の任意の情報を記述することが可能な属性情報フィールドに格納されている。または、記録媒体には、前記アドレス情報が、前記データストリームとは異なるデータファイル内に格納されている。
本発明による記録装置は、第１フォーマットのデータストリームを記録媒体に記録することができる。前記記録装置は、映像および音声に関するコンテンツのデータを受け取り、受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成し、配列された前記データパックのアドレスを特定するアドレス情報を出力するエンコーダと、前記データパックの再生を制御するために必要な制御情報に基づいて制御パックを生成する生成部と、前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するシステムエンコーダと、少なくとも前記データストリームを記録媒体に記録する記録部とを備えている。
前記生成部は、前記アドレス情報を取得して、アドレス情報を前記制御パックに記述する。または、前記記録部は、前記アドレス情報を前記データストリームとは異なるデータファイル内に格納してもよい。
本発明による、コンピュータにおいて実行可能な記録用プログラムは、第１フォーマットのデータストリームを生成し、記録するに際して用いられる。前記プログラムにしたがってコンピュータが実行する記録方法は、映像および音声に関するコンテンツのデータを受け取るステップと、受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成するステップと、配列された前記データパックのアドレスを特定するアドレス情報を取得するステップと、前記データパックの再生を制御するために必要な制御情報に基づいて、制御パックを生成するステップと、前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するステップと、前記データストリーム内の前記データパックの格納位置を特定するアドレス情報を取得するステップと、前記アドレス情報と前記データストリームとを関連付けて記録媒体に記録するステップとを包含する。
本発明によるデータストリームに変換する方法は、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換するに際して用いられる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記変換方法は、前記第１フォーマットのデータストリームを解析するステップと、前記データストリームの第１制御パックおよび前記データパックの配置を特定し、所定のデータパックのアドレス情報を取得するステップと、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップとを包含する。
【図面の簡単な説明】  図１（ａ）は、ＶＲ規格に準拠したＭＰＥＧ２プログラムストリーム１０ａのデータ構造を示す図である。
図１（ｂ）は、ビデオ規格に準拠したＭＰＥＧ２プログラムストリーム１０ｂのデータ構造を示す図である。
図２は、ＲＤＩパック１１ａのデータ構造を示す図である。
図３（ａ）は、ナビゲーションパック１１ｂのデータ構造を示す図である。
図３（ｂ）は、データサーチ情報３０のデータ構造を示す図である。
図３（ｃ）は、一般情報３１のデータ構造を示す図である。
図３（ｄ）は、同期情報３２のデータ構造を示す図である。
図４は、ビデオパック４０のデータ構造を示す図である。
図５は、本発明によるフォーマット変換処理によるＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂの対応関係を示す図である。
図６は、本実施形態によるデータ処理装置６０の機能ブロックの構成を示す図である。
図７は、ＲＤＩパック５０の概略的なデータ構造を示す図である。
図８は、エンコーダ６１の処理の手順を示すフローチャートである。
図９（ａ）はスタッフィングバイトへの変換処理を示す図である。
図９（ｂ）はパディングパケットへの変換処理を示す図である。
図９（ｃ）はパディングパケットへの統合処理を示す図である。
図１０は、フォーマット変換の手順を示すフローチャートである。
図１１は、フォーマット変換の他の手順を示すフローチャートである。
図１２は、本実施形態によるデータ処理装置１６０の機能ブロックの構成を示す図である。
【発明を実施するための最良の形態】  以下、本発明によるコンテンツのフォーマット変換処理およびその関連技術を説明する。
本明細書では、「コンテンツ」とは、映像および／または音声を含む情報であるとする。すなわち、コンテンツは、映像を表す映像情報および／または音声を表す音声情報を含んでいる。例えば、コンテンツはカムコーダで撮影された動画や、アナログ放送等である。
また、本明細書では、変換前のフォーマットをＤＶＤビデオレコーディング規格（ＶＲ規格）に準拠したフォーマットとし、変換後のフォーマットをＤＶＤビデオ規格（ビデオ規格）に準拠したフォーマットとしたときの例を説明する。
以下、まずＶＲ規格およびビデオ規格のデータストリームのデータ構造を説明し、その後、フォーマット変換処理に関する各実施形態を説明する。
図１（ａ）は、ＶＲ規格に準拠したＭＰＥＧ２プログラムストリーム１０ａのデータ構造を示す（以下、このストリームを「ＶＲ規格ストリーム１０ａ」と称する）。
ＶＲ規格ストリーム１０ａは、複数のビデオオブジェクトユニット（Ｖｉｄｅｏ  ＯＢｊｅｃｔ；ＶＯＢ）＃１、＃２、・・・、＃ｋを含んでいる。例えば、ＶＲ規格ストリーム１０ａがカムコーダで撮影されたコンテンツとすると、各ＶＯＢは、ユーザが録画を開始してから録画を停止するまでの１回の録画動作に対応する動画データが格納されている。
各ＶＯＢは、複数のＶＯＢユニット（Ｖｉｄｅｏ  ＯＢｊｅｃｔ  ｕｎｉｔ；ＶＯＢＵ）＃１、＃２、・・・、＃ｎを含んでいる。各ＶＯＢＵは、映像の再生時間にして０．４秒から１秒程度のデータを含むデータ単位である。以下、最初に配置されたＶＯＢＵとその次に配置されたＶＯＢＵを例にして、ＶＯＢＵのデータ構造を説明する。
ＶＯＢＵ＃１は、複数のパックから構成されている。ＶＲ規格ストリーム１０ａ内の各パックのデータ長（パック長）は一定（２キロバイト（２０４８バイト））である。ＶＯＢＵの先頭には、図１（ａ）に“Ｒ”で示されるリアルタイムインフォメーションパック（ＲＤＩパック）１１ａが配置されている。ＲＤＩパック１１ａの後には、“Ｖ”で示されるビデオパック（ビデオパック１２ａ等）および“Ａ”で示されるオーディオパック（オーディオパック１３ａ等）が複数含まれている。なお、１つのＶＯＢＵのデータサイズは、ビデオデータが可変ビットレートであれば最大記録再生レート以下の範囲で変動し、ビデオデータが固定ビットレートであればほぼ一定である。
各パックは以下の情報を格納している。すなわち、ＲＤＩパック１１ａは、ＶＲ規格ストリーム１０ａの再生を制御するために用いられる情報、例えばＶＯＢＵの再生タイミングを示す情報や、ＶＲ規格ストリーム１０ａのコピーを制御するための情報を格納している。ビデオパック１２ａは、ＭＰＥＧ２圧縮されたビデオデータを格納している。オーディオパック１３ａは、例えばＭＰＥＧ２−オーディオ規格によって圧縮されたオーディオデータを格納している。近接するビデオパック１２ａおよびオーディオパック１３ａには、例えば、同期して再生されるビデオデータおよびオーディオデータが格納されているが、それらの配置（順序）は任意である。本明細書では、ＶＲ規格ストリーム１０ａは、拡張ストリーム（ｅｘｔｅｎｓｉｏｎ  ｓｔｒｅａｍ）を含まないＶＲ規格のストリームであるとする。なお、ＲＤＩパック１１ａおよびビデオパック１２ａのデータ構造の詳細は、図２および図４を参照しながら後述する。
ＶＯＢＵ＃２もまた、複数のパックから構成されている。ＶＯＢＵ＃２の先頭には、ＲＤＩパック１４ａが配置され、その後、ビデオパック１５ａおよびオーディオパック１６ａ等が複数配置されている。各パックに格納される情報の内容はＶＯＢＵ＃１と同様である。
図１（ｂ）は、ビデオ規格に準拠したＭＰＥＧ２プログラムストリーム１０ｂのデータ構造を示す（以下、このストリームを「ビデオ規格ストリーム１０ｂ」と称する）。
ビデオ規格ストリーム１０ｂのデータ構造は、ＶＲ規格ストリーム１０ａのデータ構造と類似している。すなわち、ビデオ規格ストリーム１０ｂは、複数のＶＯＢ＃１、＃２、・・・、＃ｋを含み、各ＶＯＢは複数のＶＯＢＵから構成されている。ＶＯＢＵは、ビデオパック１２ｂ、１５ｂ等およびオーディオパック１３ｂ、１６ｂ等を含む。ビデオパックおよびオーディオパックは、ビデオデータおよびオーディオデータを格納している。
データ構造において、ビデオ規格ストリーム１０ｂがＶＲ規格ストリーム１０ａと異なる点は以下のとおりである。ビデオ規格ストリーム１０ｂの各ＶＯＢＵの先頭には、ＶＲ規格ストリーム１０ａのＲＤＩパックに代えて、“Ｎ”で示されるナビゲーションパック１１ｂ、１４ｂが配置されている。ナビゲーションパックは、ビデオデータおよびオーディオデータの再生を制御するためのナビゲーション情報（後述）が格納されている。
また、ビデオ規格ストリーム１０ｂでは、各ＶＯＢのＶＯＢＵ＃１において最初に現れるビデオパック１２ｂおよびオーディオパック１３ｂには、同じＶＯＢＵのみならず、同じＶＯＢ内の他のビデオパックおよびオーディオパックには存在しないフィールド（後述するＰＥＳ拡張フィールド）が設けられている。具体的には、このフィールドは、ビデオパック１２ｂには存在するがビデオパック１５ｂには存在せず、オーディオパック１３ｂには存在するがオーディオパック１６ｂには存在しない。
ＶＲ規格ストリーム１０ａをビデオ規格ストリーム１０ｂにフォーマット変換するためには、上述したデータ構造の相違点を考慮する必要がある。そこで、以下、図２および図３（ａ）〜（ｄ）を参照しながら、ＶＲ規格ストリーム１０ａのＲＤＩパックおよびビデオ規格ストリーム１０ｂのナビゲーションパックのデータ構造を説明し、さらに図４を参照しながらビデオパックのデータ構造を説明する。
図２は、ＲＤＩパック１１ａのデータ構造を示す。ＲＤＩパック１１ａは、パックの種類を特定するパックヘッダ（ＰａｃｋＨ）、システムヘッダ（ｓｙｓｔｅｍ＿Ｈ）およびＲＤＩパケットを有している。これらは順に配置されて２０４８バイトのパックを構成する。ＲＤＩパケットはさらに、パケットの種類を特定するパケットヘッダ（Ｐａｃｋｅｔ＿Ｈ）、ＩＤフィールドおよびデータフィールドを有する。データフィールドには、ＶＯＢＵの再生タイミングを示すＲＤＩ情報を格納するフィールド（ＲＤＩ＿ＧＩ）、ＶＲ規格ストリーム１０ａのコピーを制御するための情報を格納するフィールド（ＤＣＩ＿ＣＣＩ）および任意の属性情報が記述されるマニュファクチュアズ・インフォメーションフィールドが規定される。ＶＲ規格ストリーム１０ａを生成する装置は、その装置のメーカー（マニュファクチュア）が予め定めた任意の情報を属性情報として記述することができる。
図３（ａ）は、ナビゲーションパック１１ｂのデータ構造を示す。ナビゲーションパック１１ｂは、パックの種類を特定するパックヘッダ（Ｐａｃｋ＿Ｈ）、システムヘッダ（ｓｙｓｔｅｍ＿Ｈ）、再生制御情報を格納したＰＣＩパケットおよびＤＳＩパケットを有している。これらもまた順に配置されて２０４８バイトのパックを構成する。
ナビゲーションパック１１ｂを構成するデータのうち、ここではＤＳＩパケットに関するデータ構造を詳しく説明する。ＤＳＩパケットは、ナビゲーションパック１１ｂの先頭から１０２５バイト以降の部分に相当する、１０２４バイトのデータ長を有するパケットである。ＤＳＩパケットの先頭から８バイト目以降のフィールドには、データサーチ情報３０が格納される。
図３（ｂ）は、データサーチ情報３０のデータ構造を示す。データサーチ情報３０は、ビデオデータおよびオーディオデータの再生を制御するためのナビゲーション情報を含む種々の情報である。ここでは、ナビゲーション情報に関連する一般情報３１（ＤＳＩ＿ＧＩ）と、同期情報３２（ＳＹＮＣＩ）を説明する。一般情報３１はデータサーチ情報３０の先頭に配置され、３２バイトのデータ長を有している。
図３（ｃ）は、一般情報３１のデータ構造を示す。一般情報３１は、第１、第２および第３の映像の参照ピクチュアのアドレスを特定するためのアドレス情報３３ａ、３３ｂおよび３３ｃ（ＶＯＢＵ＿１ＳＴＲＥＦ＿ＥＡ，ＶＯＢＵ＿２ＮＤＲＥＦ＿ＥＡ，ＶＯＢＵ＿３ＲＤＲＥＦ＿ＥＡ）を格納している。上述のナビゲーション情報は、これらのアドレス情報を含んでいる。先頭のアドレス情報３３ａは一般情報３１の先頭から１３バイト目以降に配置される。アドレス情報３３ａ、３３ｂおよび３３ｃのデータ長はそれぞれ４バイトである。
アドレス情報は、各参照ピクチュアに対応するデータの最後の部分が格納されているビデオパックの位置を特定する情報である。「ビデオパックの位置」とは、具体的には、ＶＯＢＵの先頭から数えてそのパックが何番目のパックであるかを示す値によって示される。上述のように、各パックのパック長は２０４８バイトであるため、そのパックの先頭位置は（アドレス情報の値）×２０４８バイトによって特定される。また、「参照ピクチュア」とは、フレーム構造で符号化されたイントラピクチュア、フレーム構造で符号化された前方向予測ピクチュア、フィールド構造で符号化された一対のイントラピクチュア、フィールド構造で符号化された一対の前方向予測ピクチュア、または、フィールド構造で符号化された直後に前方向予測ピクチュアが続くイントラピクチュアを意味する。参照ピクチュアは、再生時間等に応じて任意に決定される。
図３（ｄ）は、同期情報３２のデータ構造を示す。同期情報３２は、オーディオパックのアドレス情報３４（Ａ＿ＳＹＮＣＡ）を含んでいる。上述のナビゲーション情報は、このアドレス情報も含む。アドレス情報は、各ピクチュアと同期して再生されるオーディオデータが格納されたオーディオパックの位置を特定する情報である。ここでの「オーディオパックの位置」もまた、ＶＯＢＵの先頭から数えてそのパックが何番目のパックであるかを示す値によって示される。オーディオバックの先頭位置は、ビデオパックの例と同様に特定される。なお、同期情報３２のデータサイズは１４４バイトであり、データサーチ情報３０の先頭から４０３〜５４６バイトまでに格納される。
１つのオーディオパックのアドレスは、フィールド３４ａ（Ａ＿ＰＣＫ＿ｌｏｃａｔｉｏｎ）およびフィールド３４ｂ（Ａ＿ＰＣＫＡ）を用いて特定される。フィールド３４ａは対象となるオーディオパックの存在位置が、本ビットの前か後かを記述するために用いられる１ビットのフィールド長を有する。オーディオパックが本ビットの前に存在するときは“１”がセットされ、後に存在するときは“０”がセットされる。フィールド３４ｂは上述のオーディオパックの位置を記述するために用いられる１５ビットのフィールド長を有する。計２バイトのフィールド３４ａおよび３４ｂの組は８つ設けることができるので、オーディオパックのアドレス情報を記述するフィールドは８×２バイトの１６バイトのフィールド長が確保されている。
次に、図４を参照しながらビデオパックのデータ構造を説明する。ビデオパックに関しては、ＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂの両方において同じデータ構造をとり得る。
図４は、ビデオパック４０のデータ構造を示す。ビデオパック４０は、ビデオパケット４１およびパディングパケット４２を含む。なお、パディングパケット４２はデータパックのパック長を調整するために設けられたパケットであるため、パック長を調整する必要がないときは存在しない。このときは、ビデオパック４０にはビデオパケット４１のみが含まれる。
ビデオパケット４１は、先頭から順に、１４バイトのパックヘッダ（Ｐａｃｋ＿Ｈ）、２４バイトのシステムヘッダ（ｓｙｓｔｅｍ＿Ｈ）、パケットヘッダ（Ｐａｃｋｅｔ＿Ｈ）４１ａおよびペイロードを有する。パックヘッダには、パックの種類（ここではビデオパケット）を特定する情報が記述される。システムヘッダは、ＶＯＢＵの先頭のパックに必ず付加される。パケットヘッダ４１ａは後に詳述する。ペイロードには、圧縮符号化されたビデオデータが記述される。
一方、パディングパケット４２は、パケットヘッダ（Ｐａｃｋｅｔ＿Ｈ）４２ａおよびパディングデータ４２ｂを有する。パケットヘッダ４２ａには、パディングパケットであることを特定する情報の他に、５および６バイト目のフィールド（ＰＥＳ＿ｐａｃｋｅｔ＿ｌｅｎｇｔｈ）においてパディングパケット４２ａのデータ長（バイト長）が記述される。パディングデータ４２ｂには、予め定められた値が格納される。この値は、例えば、意味を持たない値“０ｘＦＦ”（１６進数）の羅列であり、上述のようにビデオパック４０のパック長を２０４８バイトに調整するために必要なデータ量だけ配置される。
次に、ビデオパケット４１のパケットヘッダ４１ａのデータ構造を説明する。パケットヘッダ４１ａは、パケット長フィールド４３、フラグフィールド４４およびヘッダデータ長フィールド４５を有する。さらに、パケットヘッダ４１ａには、時間フラグフィールド４４ａおよびＰＥＳ拡張フラグフィールド４４ｂの値に応じて、追加のフィールド４６が設けられることがある。
パケット長フィールド４３には、そのフィールド以降からそのビデオパケット４１の最後までのパケット長（バイト長）が記述される。よって、パディングパケット４２が存在するときにはビデオパケット４１のパケット長は短くなり、パケット長フィールド４３に記述されるパケット長の値は小さくなる。続いて、フラグフィールド４４は、時間フラグフィールド４４ａ（ＰＴＳ＿ＤＴＳ＿ｆｌａｇ）、ＰＥＳ拡張フラグフィールド（ＰＥＳ＿ｅｘｔｅｎｓｉｏｎ＿ｆｌａｇ）４４ｂ等を含む。時間フラグフィールド４４ａには、後述するプレゼンテーションタイムスタンプ（ＰＴＳ）およびでコーディングタイムスタンプ（ＤＴＳ）の有無を示すフラグが記述される。また、ＰＥＳ拡張フラグフィールド４４ｂには、後述するＰＥＳ拡張フィールドの有無を示すフラグが記述される。ヘッダデータ長フィールド４５には、追加のフィールド４６およびスタッフィングバイトフィールド４９のフィールド長の和が格納される。
次に、追加のフィールド４６を説明する。例えば、時間フラグフィールド４４ａがＰＴＳおよびＤＴＳを有することを示すときは、フィールド４６として各５バイトのＰＴＳ／ＤＴＳフィールド４７が設けられる。ＰＴＳは映像データの表示時間情報であり、ＤＴＳ情報は復号のための時間情報である。時間フラグフィールド４４ａの値に応じて、いずれか一方のフィールドが設けられる。
また、追加のフィールド４６としてＰＥＳ拡張フィールド４８が設けられることもある。ＰＥＳ拡張フィールド４８にはプログラムストリーム１０ａ、１０ｂの復号に必要な情報、例えば復号用のデータバッファの容量等が記述される。
ＰＥＳ拡張フィールド４８は、ＶＲ規格ストリーム１０ａでは各ＶＯＢＵにおいて最初に現れるビデオパックおよびオーディオパックに設けられ、ビデオ規格ストリーム１０ｂでは、１つのＶＯＢ中で最初のＶＯＢＵにおいて最初に現れるビデオパックおよびオーディオパックにのみ設けられる。ＰＥＳ拡張フィールド４８は、例えばＰＥＳ拡張フラグフィールド４４ｂが１のときに存在し、０のときは存在しない。
パケットヘッダ４１ａには、スタッフィングバイトフィールド４９が設けられることがある。スタッフィングバイトフィールド４９には、パック長を調整するためのスタッフィングバイトが格納される。スタッフィングバイトは、意味を持たない“０ｘＦＦ”（１６進数）等のバイトデータである。スタッフィングバイトフィールド４９とパディングパケット４２とは、パック長を調整するための同じ目的で設けられる。よって、ＤＶＤビデオ規格のスタッフィングバイトは７バイト以下という条件、および、スタッフィングバイト４９とパディングパケット４２は同一のパック内に共存できないという条件が定められている。図４に示す例では、ビデオパック４０にはパディングパケット４２が存在しているため、スタッフィングバイトフィールド４９は０バイトであり存在しない。
なお、図４ではビデオパックのデータ構造を示したが、オーディオパックのデータ構造も同様である。「ビデオパケット」を「オーディオパケット」に読み替え、ペイロードに格納される「ビデオデータ」を「オーディオデータ」に読み替えればよい。例えば、ＶＲ規格ストリーム１０ａでは、ＰＥＳ拡張フィールド４８は、各ＶＯＢＵにおいて最初に現れるオーディオパックに設けられる。一方、ビデオ規格ストリーム１０ｂでは、ＰＥＳ拡張フィールド４８は、１つのＶＯＢ中では、最初のＶＯＢＵにおいて最初に現れるオーデイオパックにのみ設けられる。
（実施形態１）
以下、本発明によるフォーマット変換処理の概要を説明し、その後、フォーマット変換を実現するための第１の実施形態を説明する。
図５は、本発明によるフォーマット変換処理によるＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂの対応関係を示す。ＶＲ規格ストリーム１０ａは、コンテンツがエンコードされて得られ、光ディスク６５、ハードディスク（図示せず）等の記録媒体に記録されている。説明の便宜上、図５には、１つのＶＯＢに関して、ＶＲ規格ストリーム１０ａからビデオ規格ストリーム１０ｂへの変換したときの対応関係を示している。
ＶＲ規格ストリーム１０ａをビデオ規格ストリーム１０ｂに変換するにあたっては、下記の（１）〜（３）の処理を行う。すなわち、（１）ＲＤＩパック５０等をナビゲーションパック５１等に置き換える。（２）２番目以降に配置されたＶＯＢＵ＃２、＃３、・・・に関して、最初のビデオパック１５ａ等およびオーディオパック１６ａ等に含まれるＰＥＳ拡張フィールド４８を無効化するとともに、パック長を調整するための所定の処理を行って、ビデオパック１５ｂおよびオーディオパック５６を生成する。（３）ＶＲ規格ストリーム１０ａにおいて、映像再生時間が０．４秒以下のＶＯＢＵ＃ｎを前のＶＯＢＵ＃（ｎ−１）と結合して、ビデオ規格ストリーム１０ｂのＶＯＢＵ＃（ｎ−１）を生成する。
上述の処理（１）に関して、本実施形態では、フォーマット変換を行うことを前提としてＶＲ規格ストリーム１０ａをエンコードし、変換後のビデオ規格ストリーム１０ｂに記述することが必要な情報を予めＲＤＩパック５０に保持している。具体的には、ＲＤＩパック５０のマニュファクチュアズ・インフォメーションフィールド２０（図２）に、ビデオパックのアドレス情報３３ａ〜３３ｃ（図３（ｃ））およびオーディオパックのアドレス情報３４（図３（ｄ））を保持しておく。そして、フォーマット変換時には、それらのアドレス情報３３ａ〜３３ｃおよび３４を、そのままナビゲーションパック５１の一般情報３１および同期情報３２内に記述する。そのまま記述することができる理由は、変換前後において、ＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂのいずれにおいてもビデオパックおよびオーディオパックのＶＯＢＵ先頭からの順序は変わらないからである。
次に、上述の処理（２）に関して、ＰＥＳ拡張フィールド４８の無効化は、ＰＥＳ拡張フィールド４８を削除することにより実現する。具体的には、ＰＥＳ拡張フラグフィールド４４ｂ（図４）に、ＰＥＳ拡張フィールド４８が存在しないことを示すフラグを記述する。そして、パディングパケット４２を付加し、またはスタッフィングバイト４９を付加して、２０４８バイトのパック長を有するビデオパック５５およびオーディオパック５６を生成する。パディングパケット４２およびスタッフィングバイト４９のいずれを付加するかは、スタッフィングバイトが７バイト以下か、および、スタッフィングバイト４９とパディングパケット４２が同一のパック内に共存していないかによって決定される。
なお、ＶＲ規格ストリームおよびビデオ規格ストリームのいずれにおいても、最初のＶＯＢＵにおいて最初に現れるビデオパックおよびオーディオパックにはＰＥＳ拡張フィールド４８が存在する。よって、フォーマット変換に際しては、ＶＲ規格ストリーム１０ａのＶＯＢＵ＃１内で最初に現れるビデオパック１２ａおよびオーディオパック１３ａには上述の処理（２）のような特別の処理を施すことはない。それらのパックを用いて、ビデオ規格ストリーム１０ｂのＶＯＢＵ＃１内で最初に現れるビデオパック５２およびオーディオパック５３を得ることができる。
また、上述の処理（３）は、本実施形態においては特に実行しなくてもよい。その理由は、本実施形態において生成されるＶＲ規格ストリームは、原則としてＶＯＢＵのデータサイズを映像の再生時間にして０．４秒以上の固定長にして生成され、処理（３）を実行する必要がないからである。よって、ＶＯＢＵのデータサイズに何ら規定がないＶＲ規格ストリームを変換する際に、上述の処理（３）を実行すればよい。
以下、上述の処理を実現するための第１の実施形態によるデータ処理装置の構成とともに、その処理をより詳しく説明する。
図６は、本実施形態によるデータ処理装置６０の機能ブロックの構成を示す。データ処理装置６０は、例えばアナログ放送等のコンテンツを受信してＶＲ規格のデータストリーム１０ａを生成し、記録媒体に記録する。そして、記録されたＶＲ規格のデータストリーム１０ａをビデオ規格のデータストリーム１０ｂに変換して出力することができる。すなわち、データ処理装置６０は、受信したコンテンツに基づいてＶＲ規格ストリーム１０ａを生成する第１の機能、生成したＶＲ規格ストリーム１０ａを記録する第２の機能およびＶＲ規格ストリーム１０ａをビデオ規格ストリーム１０ｂに変換する第３の機能を有している。第１および第３の機能については、専用の処理チップを設けてハードウェア的に実現してもよいし、一般的な中央処理装置（ＣＰＵ）にプログラムを実行させることによってソフトウェア的に実現してもよい。
なお、本明細書では、記録媒体として、例えばＤＶＤ−ＲＡＭディスク等の光ディスクまたはハードディスクを例に挙げて説明するが、特にこれらに限定されるものではない。また、データストリームを格納できる媒体であれば、例えば光ディスクのサイズは直径１２ｃｍでも８ｃｍでもよいし、記録容量の大小も問わない。
データ処理装置６０は、エンコーダ６１と、ストリームコントローラ６２と、ハードディスク（図示せず）または光ディスク６４にデータストリームを書き込み、読み出すことが可能なハードディスクドライブ（ＨＤＤ）６３および／または光ディスクドライブ６５とを有する。データ処理装置６０は、必ずしもＨＤＤ６３と光ディスクドライブ６５とを両方を有する必要はなく、一方を有していればよい。また、光ディスク６４等の光記録媒体、ハードディスク等の磁気記録媒体に限らず、例えば半導体記録媒体およびそのリーダ・ライタを有していてもよい。以下の説明では、データ処理装置６０が光ディスクドライブ６５を有するとして説明する。
エンコーダ６１は、コンテンツを受け取って、ＶＲ規格に従ってコンテンツに含まれる映像情報および音声情報を圧縮符号化してＶＲ規格ストリーム１０ａを生成し、出力する。エンコーダ６１は、マニュファクチュアズ・インフォメーション２０として、ＶＲ規格ストリーム１０ａのＲＤＩパック５０内にビデオパックおよびオーディオパックのアドレスを特定するアドレス情報を記述する。
ストリームコントローラ６２は、エンコーダ６１からＶＲ規格ストリーム１０ａを受け取って光ディスクドライブ６５に出力する。ストリームコントローラ６２は、エンコーダ６１または光ディスクドライブ６５からＶＲ規格ストリーム１０ａを受け取り、そのＲＤＩパック５０に規定されたマニュファクチュアズ・インフォメーション２０からビデオパックおよびオーディオパックのアドレス情報を抽出する。そして、そのアドレス情報をそのまま用いてビデオ規格に従ったナビゲーションパック１１ｂを生成し、ＶＲ規格ストリーム１０ａのＲＤＩパック５０をナビゲーションパック１１ｂに置き換える。また、ストリームコントローラ６２は、ＶＲ規格ストリーム１０ａの２番目以降に配置されたＶＯＢＵの最初のビデオパックおよびオーディオパックのみに含まれる拡張フィールドを特定し、そのフィールドをスタッフィングバイトに置き換え、または、そのパックの最後にパディングパケット４２を付加する。その結果、ストリームコントローラ６２はビデオ規格ストリーム１０ｂを得て、出力する。
光ディスクドライブ６５は、ストリームコントローラ６２からＶＲ規格ストリーム１０ａを受け取って光ディスクドライブ６５に記録する。また、光ディスクドライブ６５は、光ディスク６４に記録されたＶＲ規格ストリーム１０ａを読み出してストリームコントローラ６２に出力する。なお、光ディスクドライブ６５は、変換されたビデオ規格ストリーム１０ｂを書き込み、読み出すこともできる。
続いて、エンコーダ６１およびストリームコントローラ６２のより詳細な構成および動作を説明する。
エンコーダ６１は、エレメンタリーストリームエンコーダ７１と、マニュファクチュアズインフォメーション生成器７２、システムエンコーダ７３とを有する。以下では、エレメンタリーストリームエンコーダ７１は「ＥＳエンコーダ７１」と称し、「マニュファクチュアズインフォメーション生成器７２」は「ＭＩ生成器７２」と称する。
ＥＳエンコーダ７１は、アナログ放送用のチューナからコンテンツを受け取る。ＥＳエンコーダ７１は、入力されたコンテンツの映像情報および音声情報を圧縮符号化し、ビデオパックおよびオーディオパックを生成してシステムエンコーダ７３に出力する。同時に、ＥＳエンコーダ７１は、同期して再生される映像および音声の各データを格納したビデオパックおよびオーディオパックのアドレス情報を出力する。アドレス情報は、ＶＯＢＵ先頭から起算してそのパックが何番目であるかを示す情報として得られる。より具体的には、ある映像に対応するオーディオパックのアドレス情報（Ａ＿ＳＹＮＣＡ）、第１の映像の参照ピクチュア、第２の映像の参照ピクチュア、第３の映像の参照ピクチュアの最終データが記録されているビデオパックのアドレス（ＶＯＢＵ＿１ＳＴＲＥＦ＿ＥＡ，ＶＯＢＵ＿２ＮＤＲＥＦ＿ＥＡ，ＶＯＢＵ＿３ＲＤＲＥＦ＿ＥＡ）が取得される。ＥＳエンコーダ７１は、得られたアドレス情報をＭＩ生成器７２に出力する。
ＭＩ生成器７２は、ＶＲ規格に従ったＲＤＩパック５０を生成する。図７は、ＲＤＩパック５０の概略的なデータ構造を示す。ＭＩ生成器７２は、パックヘッダ７５、パケットヘッダ７６等を生成してＶＲ規格に従ったＲＤＩパック５０を生成する。このときＭＩ生成器７２は、受け取ったビデオパックおよびオーディオパックのアドレス情報を、マニュファクチュアズ・インフォメーションフィーデータ７７として記述する。図７のデータ７７には、オーディオパックのアドレス情報３４およびビデオパックのアドレス情報３３ａ〜３３ｃが格納されていることが理解される。なお、図７はＲＤＩパック５０の概略的なデータ構造を示しているため、システムヘッダ（図２）が記載されておらず、またパケットヘッダ７６の直後にデータ７７が続いている。しかし、システムヘッダは含まれ得るし、パケットヘッダ７６とデータ７７との間に他のデータが挿入されてもよい。
次に、システムエンコーダ７３を説明する。システムエンコーダ７３は、ＥＳエンコーダ７１から出力されたビデオパックおよびオーディオパックと、ＭＩ生成器７２から出力されたＲＤＩパック５０とを統合して、ＶＲ規格に準拠するようにパックヘッダおよびパケットヘッダを生成すると共に、ビデオパックおよびオーディオパックを配列したデータストリームの中にＲＤＩパック５０を挿入する。
なお、システムエンコーダ７３は、ＶＯＢＵの映像再生期間が０．４秒以上の一定期間になるように調整を行う。これにより、ビデオ規格ストリーム１０ｂへの変換時に処理負荷が軽減され、さらに容易に変換できるようにする。なお、ＶＯＢＵの映像再生期間は０．４秒以下であってもよい。そのようなＶＯＢＵが存在するときは、ビデオ規格ストリーム１０ｂに変換する際に、そのＶＯＢＵを前のＶＯＢＵに結合して、映像再生時間を０．４秒以上に確保する。
図８は、エンコーダ６１の処理の手順を示す。ステップＳ８１において、ＥＳエンコーダ７１は、コンテンツ内の映像情報および音声情報を圧縮符号化してビデオパックおよびオーディオパックを生成する。ステップＳ８２において、ＭＩ生成器７２は、ＥＳエンコーダ７１から、オーディオパックのアドレス、および、第１〜第３の映像の参照ピクチュアが格納されたビデオパックのアドレスを取得する。次に、ＭＩ生成器７２は、ステップＳ８３においてマニュファクチュアズ・インフォメーション・データを生成し、ステップＳ８４においてＲＤＩパック５０を生成する。最後に、ステップＳ８５において、システムエンコーダ７３は、複数のパックから構成されるデータストリームにＲＤＩパックを挿入する。これにより、ＶＲ規格ストリーム１０ａを得ることができる。
次に、再び図６を参照しながら、ストリームコントローラ６２を説明する。ストリームコントローラ６２は、記録／再生処理器８１と、パディングパケット検出器８２と、判定器８３と、制御および書き換え器８４と、スタッフィングバイト生成器８５と、パディングパケット生成器８６と、ナビゲーションパック生成器８７とを有している。
記録／再生処理器８１は、ＶＲ規格ストリーム１０ａを受け取り、光ディスクドライブ６５とのインターフェース規格に従って、ＶＲ規格ストリーム１０ａを光ディスクドライブ６５に送信する送信部である。また、記録／再生処理器８１は、光ディスクドライブ６５によって光ディスク６４から読み出されたＶＲ規格ストリーム１０ａを受け取る受信部である。さらに、記録／再生処理器８１は、受け取ったＶＲ規格ストリーム１０ａをパッディングパケット検出器８２および判定器８３に出力する。
例えば、ストリームコントローラ６２と光ディスクドライブ６５とがＡＴＡ／ＡＴＡＰＩインターフェースによって接続されているとき、記録／再生処理器８１はＡＴＡ／ＡＴＡＰＩコントローラであり、光ディスクドライブ６５との間ではＡＴＡ／ＡＴＡＰＩ準拠のデータストリームで送受信を行う。なお、ここでの変換処理は本発明では特に問題としないので、その説明は省略する。
パディングパケット検出器８２は、ＶＲ規格ストリーム１０ａの個々のパックに対しパディングパケットが存在するか否かの判定を行い、パディングパケットの有無を示す検出情報を判定器８３に出力する。上述の判定は、個々のパックに対して行われる。その後、パディングパケット検出器８２は、ＶＲ規格ストリーム１０ａを制御および書き換え器８４に出力する。
ここで、パディングパケット検出器８２がどのようにパディングパケットを検出するかを説明する。
パディングパケット検出器８２は、各パックのパケットヘッダ４１ａを特定し、パケットヘッダ４１ａ内のパケット長フィールド４３に格納されているパケット長の情報を取得する。そして、パケット長が２０２８バイトであればパディングパケットが存在しないと判断し、２０２８バイト未満であればパディングパケットが存在すると判断する。その根拠は、各パックのパック長は２０４８バイトに固定されていること、パックヘッダが１４バイトに固定されていること、および、パケットヘッダ４１ａの先頭からパケット長フィールド４３の終端までのデータ長は６バイトで固定されていることに基づく。また、パディングパケットの検出対象は２番目以降のＶＯＢＵにおいて最初に存在するビデオパックおよびオーディオパックであるから、システムヘッダは存在しない。この結果、パックの先頭からパケット長フィールド４３の終端までのデータ長は２０バイトであるから、パケット長が２０２８バイトと記述されていればパックにはビデオ／オーディオパケットのみが存在することになり、パディングパケットは存在しないと判断できる。一方、パケット長が２０２８バイトでないとき、すなわち２０２８バイト未満であるときは、そのパケットのみではパックの規定長を満たすことができないため、他のデータ、すなわちパディングパケットが存在すると判断できる。
次に、判定器８３は、パディングパケットの有無を示す検出情報に基づいて、パック内のＰＥＳ拡張フィールド４８の無効化に必要な処理を判定し、判定情報を出力する。具体的には、判定器８３は、検出情報に応じて下記（ａ）〜（ｄ）の判定を行い、行うべき処理を指示する判定情報を制御および書き換え器８に出力する。
（ａ）パディングパケットが存在せず、かつ、スタッフィングバイト長が４バイト以下のときは、ＰＥＳ拡張フィールド４８をスタッフィングバイト化する。
（ｂ）パディングパケットが存在せず、かつ、スタッフィングバイト長が４バイトより大きい（５バイト以上の）ときは、ＰＥＳ拡張フィールド４８およびスタッフィングバイトをパディングパケット化する。
（ｃ）パディングパケットが存在するときは、ＰＥＳ拡張フィールド４８をパディングパケット化する。
（ｄ）現在の処理対象のパックが最初のＶＯＢＵのパックであるとき、または、ＰＥＳ拡張フィールド４８を含まないパックであるときは、そのパックをそのまま利用する。
（ａ）〜（ｃ）の処理では、ＰＥＳ拡張フィールド４８を削除するに際し、パック長を調整するためにスタッフィングバイトおよびパディングパケットのいずれを用いるかを決定している。このとき、スタッフィングバイトが７バイト以下で、かつ、スタッフィングバイト４９とパディングパケット４２が同一のパック内に共存しないように調整されている。
（ｄ）の処理では、ＰＥＳ拡張フィールド４８を無効化する必要がないため、パックを加工しないことを決定している。なお、図示しないホストマイコン等から現在の処理対象のパックが最初のＶＯＢＵのパックであることの通知を受け、制御および書き換え器８４が上記した（ｄ）の判断を直接行うこともできる。
図９（ａ）〜（ｃ）も参照しながら、処理（ａ）〜（ｃ）の内容を詳しく説明する。
（ａ）の処理は、図９（ａ）に示す変換に対応する。図９（ａ）はスタッフィングバイトへの変換処理を示す。３バイトのＰＥＳ拡張フィールド９０が削除され、３バイトのスタッフィングバイトフィールド９１に置き換えられている。
図では、変換前のパックにはスタッフィングバイトは存在していないが、基準長（４バイト長）以下のスタッフィングバイトであれば予め存在していてもよい。ＰＥＳ拡張フィールド４８のフィールド長は３バイトであるため、４バイト以下のスタッフィングバイトであれば合計しても７バイト以下になるからである。
判定器８３は、既に存在するスタッフィングバイトのデータ長を以下のように特定する。すなわち、判定器８３は、パケットヘッダ４１ａのヘッダデータ長フィールド４５に記述されたデータ長から、ＰＴＳ／ＤＴＳフィールド４７のフィールド長と、ＰＥＳ拡張フィールド４８のフィールド長とを減算する。
ここで、ＰＴＳ／ＤＴＳフィールド４７はいずれも５バイトであり、その存在の有無は時間フラグフィールド４４ａにおいて示されている。よって、ＰＴＳ／ＤＴＳフィールド４７のフィールド長は、ＰＴＳ／ＤＴＳフィールド４７が存在しないときは０バイト、一方のみが存在するときは５バイト、両方存在するときは１０バイトである。また、ＰＥＳ拡張フィールド４８は３バイトであり、その存在の有無はＰＥＳ拡張フラグフィールド４４ｂにおいて示されている。よって、ＰＥＳ拡張フィールド４８のフィールド長は、ＰＥＳ拡張フィールド４８が存在するときは３バイト、存在しないときは０バイトである。
以上の計算により、判定器８３は、スタッフィングバイト４９のデータ長を特定することができる。
（ｂ）の処理は、図９（ｂ）に示す変換に対応する。図９（ｂ）はパディングパケットへの変換処理を示す。この処理は、上述の（ａ）の処理を行うとスタッフィングバイト長が７バイトを超えてしまうときに採用され、７バイトより大きいデータ長の調整が可能なパディングパケットを利用する。ＰＥＳ拡張フィールド９２ａおよびスタッフィングバイトフィールド９２ｂがパケットヘッダ９４から削除され、パディングパケット９３が付加されている。パディングパケットのパケット長は、ＰＥＳ拡張フィールド４８のフィールド長およびスタッフィングバイトのデータ長の和と等しい。
（ｃ）の処理は、図９（ｃ）に示す変換に対応する。図９（ｃ）はパディングパケットへの統合処理を示す。この処理は、パディングパケットが既に存在し、スタッフィングバイトを設けることができないときに採用される。ＰＥＳ拡張フィールド９６がパケットヘッダ９９から削除され、ＰＥＳ拡張フィールド９６のフィールド長に対応するデータ長のパディングバイトが、既に存在するパディングパケット９８に組み込まれる。
再び図６を参照する。制御および書き換え器８４は、パディングパケット検出器８２からはＶＲ規格ストリーム１０ａを受け取り、判定器８３からは判定情報を受け取るとともに、スタッフィングバイト生成器１１からのスタッフィングバイト、または、パディングパケット生成器８６からのパディングパケットを受け取る。そして、制御および書き換え器８４は、判定情報に基づいてＰＥＳ拡張フィールド４８の無効化処理を行う。
この無効化処理では、制御および書き換え器８４は、ＰＥＳ拡張フラグフィールド４４ｂのフラグをＰＥＳ拡張フィールド４８が存在しないことを表す値（例えば”０“）に書き換えるとともに、スタッフィングバイトの付加またはパディングパケットの付加を行う。
判定情報によってスタッフィングバイト化が指示されたときは、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８の位置のデータをスタフィングバイト生成器１１から出力されたスタフィングバイトに置き換える。
また、パディングパケット化が指示されたときは、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８の領域を削除して後続のペイロードのデータを詰めて配置し、そのパケットの後ろにパディングパケットを付加する。挿入するパディングパケットのパケット長（ＰＥＳ＿ｐａｃｋｅｔ＿ｌｅｎｇｔｈ）は（３バイト＋スタフィングバイト長−パディングパケットのパケットヘッダ長６バイト）、すなわち、（スタフィングバイト長−３）バイトである。この処理とともに、制御および書き換え器８４は、パック内のパケット長フィールド４３とヘッダデータ長４５を書き換え、さらに、ＰＥＳ拡張フラグフィールド４４ｂの書き換えもおこなう。書き換え後のＰＥＳ拡張フラグフィールド４４ｂの値およびヘッダデータ長は、変換前のパケット長とヘッダデータ長から、ＰＥＳ拡張フィールド４８のフィールド長に相当する３（バイト）とスタフィングバイト長とを減算することによって得られる。
なお、判定情報によってそのパックをそのまま利用することが指示されているときには、制御および書き換え器８４はＰＥＳ拡張フィールド４８の無効化処理を行うことはない。制御および書き換え器８４は、処理した、または処理しなかったパックを順にナビゲーションパック生成器８７に送る。なお、制御および書き換え器８４が行う置き換え処理および無効化処理は、換言すればパックの変換処理である。さらに、変換後のパックが変換前のパックと同じであると考えれば、無効化処理を行わない場合であっても、広く変換という表現を用いることができる。
スタッフィングバイト生成器８５は、スタッフィングバイトとして利用される所定の値“０ｘＦＦ”のバイトデータを生成して出力する。また、パディングパケット生成器８６は、所定のパケットヘッダ４２ａおよびパディングデータ４２ｂを有するパディングパケット４２を生成して出力する。なお、パケット長フィールドおよびパディングデータ４２ｂ等は特定されていなくてもよく、制御および書き換え器８４がそのパケット長の確定後に記述すればよい。
ナビゲーションパック生成器８７は、ストリーム中のＲＤＩパック５０のマニュファクチュアズ・インフォメーション２０から、ナビゲーション情報として記述されたアドレス情報（Ａ＿ＳＹＮＣＡ，ＶＯＢＵ＿１ＳＴＲＥＦ＿ＥＡ，ＶＯＢＵ＿２ＮＤＲＥＦ＿ＥＡ，ＶＯＢＵ＿３ＲＤＲＥＦ＿ＥＡ）を抽出し、ビデオ規格にしたがったナビゲーションパック５１を生成する。データ構造の詳細は図３（ａ）〜（ｄ）を参照しながら説明したとおりである。その後、ナビゲーションパック生成器８７は書き換えられた、または、そのまま用いられた他のパック（ビデオパックおよびオーディオパック等）を配置し、ＲＤＩパック５０をナビゲーションパック５１で置き換える。
次に、ナビゲーションパック生成器８７は、ＶＲ規格ストリーム１０ａに、映像再生時間が０．４秒以下のＶＯＢＵが存在する場合は、そのＶＯＢＵを近接するＶＯＢＵに結合して１つにまとめる。例えば、図５中のＶＯＢＵ＃ｎが映像再生時間が０．４秒以下のＶＯＢＵであるとすると、ナビゲーションパック生成器８７は、ＶＯＢＵ＃ｎを前に配置されたＶＯＢＵ＃（ｎ−１）と結合する。または、ナビゲーションパック生成器８７は、ＶＯＢＵ＃ｎの終了表示時刻を変更して、その再生所要時間を０．４秒以上にしてもよい。
ナビゲーションパック生成器８７が上述した処理を行うことにより、ビデオ規格ストリーム１０ｂが得られる。ナビゲーションパック生成器８７は、得られたビデオ規格ストリーム１０ｂを出力する。
以下、図１０を参照しながら、ストリームコントローラ６２によるフォーマット変換処理を説明する。図１０は、フォーマット変換の手順を示すフローチャートである。まず、ステップＳ１００において、記録／再生処理器８１は、光ディスクドライブ６５から読み出されたＶＲ規格ストリーム１０ａを受け取り、ＲＤＩパック５０をナビゲーションパック５１に置き換えるとともに、ＶＲ規格ストリーム１０ａからビデオパックまたはオーディオパックを抽出する。ステップＳ１０１において、パディングパケット検出器８２はパックに含まれるパケットのパケット長を特定し、ステップＳ１０２においてパケット長が２０２８バイトか否かを判定する。パケット長が２０２８バイトであれば、パック内にはパディングパケットが存在しておらず、次にステップＳ１０３の処理に進む。２０２８バイトでなければパディングパケットが存在していることを意味し、ステップＳ１０９に進む。
ステップＳ１０３では、判定器８３はスタッフィングバイトのデータ長を特定し、ステップＳ１０４において、そのデータ長は４バイト以下か否かを判定する。４バイト以下のときはステップＳ１０５に進み、４バイトより大きいときはステップＳ１０７に進む。ステップＳ１０５では、判定器８３はＰＥＳ拡張フィールド４８を無効化するか否かを判定する。無効化するときはステップＳ１０６に進み、無効化しないときには処理は終了する。無効化しないときとは、例えば、そのパックがＶＯＢの先頭のＶＯＢＵに含まれるパックである場合である。ステップＳ１０６では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８をスタッフィングバイトで置き換える。この処理は、図９（ａ）に示す変換に対応する。すなわち、制御および書き換え器８４は変換処理を行う変換部として機能している。
ステップＳ１０７では、判定器８３はＰＥＳ拡張フィールド４８を無効化するか否かをさらに判定する。無効化するときはステップＳ１０８に進み、無効化しないときには処理は終了する。ステップＳ１０８において、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８およびスタッフィングバイトフィールドを削除して、パディングパケットを付加する。この処理は、図９（ｂ）に示す変換に対応する。続いて処理はステップＳ１１１に進む。ステップＳ１１１において、制御および書き換え器８４はパケット長４３およびヘッダデータ長４５を書き換える。
一方、ステップＳ１０９では、判定器８３はＰＥＳ拡張フィールド４８を無効化するか否かを判定する。無効化するときはステップＳ１１０に進み、無効化しないときには処理は終了する。ステップＳ１１０では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８を削除してパディングパケットを付加する。この処理は、図９（ｃ）に示す変換に対応する。ステップＳ１１１において、制御および書き換え器８４はパケット長４３およびヘッダデータ長４５を書き換える。
以上の処理を各パックに対して実行することにより、データストリームのフォーマットを、ＶＲ規格からビデオ規格に変換できる。
次に、図１１を参照しながら、変換処理の他の例を説明する。図１１は、フォーマット変換の他の手順を示すフローチャートである。ステップＳ１２０において、ビデオパックまたはオーディオパックを受け取る。図１０のステップＳ１００と同じである。ステップＳ１２１において、判定器８３は、ＰＥＳ拡張フィールド４８を無効化するか否かを判定する。無効化するときはステップＳ１２２に進み、無効化しないときにはステップＳ１３０に進む。ステップＳ１２２では、パディングパケット検出器８２はパケットのパケット長を特定し、ステップＳ１２３においてパケット長が２０２８バイトか否かを判定する。パケット長が２０２８バイトであれば、パック内にはパディングパケットが存在しておらず、次にステップＳ１２４の処理に進む。２０２８バイトでなければパディングパケットが存在していることを意味し、ステップＳ１２８に進む。
ステップＳ１２４では、判定器８３はスタッフィングバイトのデータ長を特定し、ステップＳ１２５において、そのデータ長は４バイト以下か否かを判定する。４バイト以下のときはステップＳ１２６に進み、４バイトより大きいときはステップＳ１２７に進む。ステップＳ１２６では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８をスタッフィングバイトで置き換え、そのパックの処理を終了する。ステップＳ１２７では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８およびスタッフィングバイトを削除して、パディングパケットを付加する。その後処理はステップＳ１２９に進む。
一方、ステップＳ１２８では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８を削除してパディングパケットを付加する。ステップＳ１２９では、制御および書き換え器８４はパケット長４３およびヘッダデータ長４５を書き換える。これによりそのパックの処理を終了する。
以上の処理によれば、ＤＶＤビデオレコーディング規格で記録したデータストリームを復号し、再符号化することなくＤＶＤビデオ規格のデータストリームを生成できる。これにより、画質が劣化することがなく、かつ、高速なフォーマット変換を実現できる。また、処理負荷も軽いため、処理能力が低い機器においても実装することは容易である。
また、上述の処理によればフォーマット変換時にＶＯＢＵの再生時間等を調整することもできるので、ＤＶＤビデオレコーディング規格によるＶＯＢＵのデータサイズにも自由度が増す。
（実施形態２）
本発明による第１の実施形態では、ビデオ規格ストリームのナビゲーションパックに格納されるべきナビゲーション情報（所定のビデオパックおよびオーディオパックのアドレス情報）を、変換前のＶＲ規格ストリームのＲＤＩパック内に予め格納しておくとした。
本実施形態では、このナビゲーション情報を、ＶＲ規格ストリームとは別のファイルとして保持し、記録媒体に記録しておく。
図１２は、本実施形態によるデータ処理装置１６０の機能ブロックの構成を示す。データ処理装置１６０は、エンコーダ１６１と、ストリームコントローラ１６２と、ＨＤＤ１６３と、光ディスクドライブ１６５と、ホストマイコン１６６とを有する。
データ処理装置１６０が、第１の実施形態によるデータ処理装置６０と異なる点は、エンコーダ１６１内のマニュファクチュアズインフォメーション生成器１７２、ホストマイコン１６６およびストリームコントローラ１６２内のナビゲーションパック生成器１８７の動作である。図に示す他の構成要素は、同名を付した図６のデータ処理装置６０の各構成要素と同じ処理を行う。したがって、以下では、データ処理装置６０と相違する構成要素に関連する動作等を説明する。
まず、ＭＩ生成器１７２は、ＶＲ規格に従ったＲＤＩパック１１ａを生成する。しかし、本実施形態では、ＭＩ生成器１７２は、ナビゲーション情報をＲＤＩパックのマニュファクチュアズインフォメーションフィールド２０に格納しない。
一方、ホストマイコン１６６は、ＥＳエンコーダ１７１から、図７に示す所定のビデオパックおよびオーディオパックのアドレス情報３３ａ〜３３ｃおよび３４（Ａ＿ＳＹＮＣＡ，ＶＯＢＵ＿１ＳＴＲＥＦ＿ＥＡ，ＶＯＢＵ＿２ＮＤＲＥＦ＿ＥＡおよびＶＯＢＵ＿３ＲＤＲＥＦ＿ＥＡ）をナビゲーション情報として受け取る。そして、ホストマイコン１６６は、ＶＲ規格ストリームのデータファイルとは異なるデータファイルにナビゲーション情報を格納するように、記録／再生処理器１８１および光ディスクドライブ１６５に指示する。
なお、ナビゲーション情報が格納されたナビゲーション情報ファイルが、どのＶＲ規格ストリームに対応するナビゲーション情報を格納しているかを特定するために、ＶＲ規格ストリームファイルと対応するナビゲーション情報ファイルとの間に何らかの関連付けをしておくことが好ましい。例えば対応するＶＲ規格ストリームファイルおよびナビゲーション情報ファイルには同じファイル名を付し、拡張子のみを変えて関連付けを行うことができる。これにより、後にＶＲ規格ストリームをビデオ規格ストリームにフォーマット変換するに際して、対象となるＶＲ規格ストリームに対応するナビゲーションファイルを容易に特定できる。
さらに、ホストマイコン１６６は、記録されたＶＲ規格ストリームファイルおよびナビゲーション情報ファイルを記録／再生処理器１８１を介して読み出すことができる。フォーマット変換処理において、ホストマイコン１６６は、ナビゲーション情報ファイルを読み出して、ナビゲーションパック生成器１８７に出力する。または、ホストマイコン１６６がナビゲーションパック１１ｂを生成してもよい。なお、フォーマット変換処理に関するパックの変換処理は第１の実施形態による手順と同じである。よって、本実施形態においてはその説明は省略する。
ナビゲーショパック生成器１８７は、ホストマイコン１６６から受け取ったナビゲーション情報を格納して、ナビゲーションパック１１ｂを生成する。そして、ナビゲーションパック生成器１８７は、ＶＲ規格ストリームからＲＤＩパック１１ａを検出して、生成したナビゲーションパック１１ｂによって置き換える。なお、置き換えの対象になるパック同士は、図５で示すＲＤＩパック５０およびナビゲーションパック５１のように、対応するビデオパックおよびオーディオパックの再生を制御するためのパックでなければならない。
以上、本発明による第１および第２の実施形態を説明した。いずれの実施形態においても、ＶＲ規格ストリーム１０ａが生成されると共にナビゲーション情報も生成されるとして説明した。しかし、ナビゲーション情報をＶＲ規格ストリーム１０ａの生成時に生成せず、ビデオ規格ストリームへの変換時に生成することもできる。
以下、図６に示す第１の実施形態によるデータ処理装置６０を用いて、フォーマット変換時においてナビゲーション情報を取得する手順を説明する。
データ処理装置６０は、記録／再生処理器８１を介してＶＲ規格ストリーム１０ａを読み出すと、ＶＲ規格ストリーム１０ａに含まれるＲＤＩパック１１ａ、ビデオパックおよびオーディオパックの各種のヘッダを特定し、その内容を解析する。対象となるヘッダは、少なくとも、ＶＲ規格ストリーム１０ａ内のエレメンタリーストリームのシーケンスヘッダ、ＧＯＰヘッダ、ピクチュアヘッダ（いずれも図示せず）である。これらのヘッダについては周知であるため、その具体的な説明は省略する。解析の結果、データ処理装置６０は、ＶＲ規格ストリーム１０ａ内のパックの配置を特定し、ナビゲーション情報として必要な参照ピクチュアが格納されているビデオパックのアドレス情報およびオーディオパックのアドレス情報を取得する。この結果、ビデオ規格ストリーム１０ｂのナビゲーションパック１１ｂに格納するナビゲーション情報を得ることができる。フォーマット変換に必要な他の処理は第１の実施形態において説明したとおりである。
以上により、ＤＶＤビデオレコーディング規格で記録したコンテンツを画質劣化無しかつ高速でＤＶＤビデオ規格に変換することができる。
ここまでは、ＶＲ規格ストリーム１０ａからビデオ規格ストリーム１０ｂへのフォーマット変換を説明した。しかし、ＶＲ規格ストリーム１０ａとは異なるデータストリームであっても、データ構造がＶＲ規格ストリーム１０ａと類似している場合には上述の処理を適用できる。例えば、ＭＰＥＧ２−ビデオのプログラムストリームを規定したＭＴＦ（Ｍｏｖｉｅ  Ｔａｋｅ  Ｆｉｌｅ）に対しては上述の処理を適用できる。ＭＴＦのＰ２ストリーム（Ｐ２ｓｔｒｅａｍ）は図５に示すＶＯＢに相当し、Ｐ２サンプル（Ｐ２ｓａｍｐｌｅ）はＶＯＢＵに相当する。Ｐ２サンプルはその先頭にデータストリームの再生の制御に用いられる制御パックを有し、さらにその後に複数のビデオパックおよびオーディオパックを有している。よって上述のＶＲ規格ストリーム１０ａとデータ構造に関して同様である。
Ｐ２サンプルに対して本発明を適用するときには、Ｐ２サンプルの制御パックに各ビデオパックおよびオーディオパックのアドレスを記述すればよい。
上述した第１の実施形態ではＲＤＩパックのマニュファクチュアズ・インフォメーションフィールドに参照ピクチュアに関するビデオパックおよびオーディオパックのアドレス情報を記述したが、他のフィールドに設けることも可能である。例えば「ストリーム情報」（ｓｔｒｅａｍ  ｉｎｆｏｒｍａｔｉｏｎ）として一括してデータストリームを管理するフィールドを設け、そのフィールドに参照ピクチュアのアドレス情報とオーディオパックのアドレス情報とを記述することができる。なお、第１の実施形態ではＲＤＩパックに第１〜第３の参照ピクチュアの３つのアドレス情報を記述するとしたが、例えばそのうちの第１の参照ピクチュアのアドレス情報のみを、第２の実施形態で説明したように別のデータファイル（制御ファイル）に格納することも可能である。さらに、その制御ファイルには、その他、ストリーム情報に第２および第３の参照ピクチュアに関するアドレス情報およびオーディオパックのアドレス情報が記述されているか否かを示すフラグを記述しておくことが好ましい（例えば、記述されているときは、“１”のフラグを立て、記述されていないときは“０”のフラグを立てるとする）。
本発明によるデータ処理装置６０、１６０の機能ブロックは、単独で設けられてもよいし、組み合わせて設けられてもよい。例えば図６によるデータ処理装置６０が再生専用のＤＶＤプレーヤであるときは、データ処理装置６０は、光ディスクドライブ６５およびストリームコントローラ６２のみを有する。本発明によるＶＲ規格ストリーム１０ａが記録されている光ディスク６４が光ディスクドライブ６５に装填されると、データ処理装置６０は、上述のフォーマット変換を実現することができる。
データ処理装置６０、１６０は、コンピュータプログラムに基づいてデータストリームの生成、記録および再生処理を行うことができる。例えば、フォーマット変換を想定したコンテンツの符号化ストリームの生成処理は、図８に示すフローチャートに基づいて記述されたコンピュータプログラムを実行することによって実現される。また、フォーマット変換処理は、図１０および／または図１１に示すフローチャートに基づいて記述されたコンピュータプログラムを実行することによって実現される。コンピュータプログラムは、光ディスクに代表される光記録媒体、ＳＤメモリカード、ＥＥＰＲＯＭに代表される半導体記録媒体、フレキシブルディスクに代表される磁気記録媒体等の記録媒体に記録することができる。なお、光ディスク装置は、記録媒体を介してのみならず、インターネット等の電気通信回線を介してもコンピュータプログラムを取得できる。
【産業上の利用可能性】  本発明によれば、映像情報および音声情報が符号化されたあるフォーマットのデータストリームを再符号化することなく、異なるフォーマットのデータストリームに変換することができる方法および装置が提供される。再符号化の必要がないため、処理の高速化および処理負荷の軽減を図ることができ、処理能力が低い装置においても実装することは非常に容易である。
【図１】
2004057869.tif 000003
【図２】
2004057869.tif 000004
【図３】
2004057869.tif 000005
【図４】
2004057869.tif 000006
【図５】
2004057869.tif 000007
【図６】
2004057869.tif 000008
【図７】
2004057869.tif 000009
【図８】
2004057869.tif 000010
【図９】
2004057869.tif 000011
【図１０】
2004057869.tif 000012
【図１１】
2004057869.tif 000013
【図１２】
2004057869.tif 000014
【手続補正書】
【提出日】平成16年8月18日(2004.8.18)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する方法であって、
いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、
さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、
前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されており、
前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、
前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、
前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップと
を包含するフォーマット変換方法。
【請求項２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換えるステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項３】
前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、
特定された前記データ長が基準長以下か否かを判定するステップと
をさらに包含し、前記データ長が基準長以下のとき、前記置き換えるステップを実行する、請求項２に記載のフォーマット変換方法。
【請求項４】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、
特定された前記データ長が基準長以下か否かを判定するステップと、
前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除するステップと、
削除された前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じたパケット長のパディングパケットを、前記少なくとも１つのパケットに付加するステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項５】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
前記拡張フィールドを削除するステップと、
削除された前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整するステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項６】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、
前記アドレス情報を取得するステップは、前記第１制御パックに格納された前記アドレス情報を抽出する、請求項１に記載のフォーマット変換方法。
【請求項７】
前記アドレス情報を取得するステップは、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出する、請求項６に記載のフォーマット変換方法。
【請求項８】
前記アドレス情報を取得するステップは、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出する、請求項１に記載のフォーマット変換方法。
【請求項９】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する、請求項１に記載のフォーマット変換方法。
【請求項１０】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックである、請求項２、４、５のいずれかに記載のフォーマット変換方法。
【請求項１１】
第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する装置であって、
いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、
さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、
前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されており、
前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得する受信部と、
前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するパック生成部であって、取得した前記アドレス情報を格納した第２制御パックを生成し、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するパック生成部と
を備えたフォーマット変換装置。
【請求項１２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、
特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換える変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１３】
前記判定部は、前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するとともに、特定された前記データ長が基準長以下か否かを判定し、前記データ長が基準長以下のとき、前記変換部に対して置き換えを指示する、請求項１２に記載のフォーマット変換装置。
【請求項１４】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部であって、さらに、前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定し、かつ、前記データ長が基準長以下か否かを判定する判定部と、
パディングパケットを生成するパケット生成部と、
前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除する変換部であって、削除した前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整して、前記少なくとも１つのパケットに付加する変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１５】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、
前記拡張フィールドを削除する変換部であって、削除した前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整する変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１６】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、
前記パック生成部は、前記第１制御パックに格納された前記アドレス情報を抽出する、請求項１１に記載のフォーマット変換装置。
【請求項１７】
前記パック生成部は、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出する、請求項１６に記載のフォーマット変換装置。
【請求項１８】
前記パック生成部は、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出する、請求項１１に記載のフォーマット変換装置。
【請求項１９】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する、請求項１１に記載のフォーマット変換装置。
【請求項２０】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックである、請求項１２、１４、１５のいずれかに記載のフォーマット変換装置。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、映像および音声を含むコンテンツのフォーマットを変換する技術に関する。より具体的には、本発明は、ＤＶＤビデオレコーディング規格等で記録されたコンテンツをＤＶＤビデオ規格のコンテンツに変換する技術に関する。
【背景技術】
【０００２】
近年、光ディスク等の記録媒体にコンテンツを記録するために、種々の規格が定められている。例えば、ＤＶＤには、映画等の再生専用コンテンツが記録されるパッケージメディア用の記録フォーマットとして、ＤＶＤビデオ規格（以下、「ビデオ規格」と称する）が定められている。また、コンテンツをリアルタイムに記録し、後の編集等を可能にする記録フォーマットとして、ＤＶＤビデオレコーディング規格（以下、「ＶＲ規格」と称する）が定められている。一般の再生専用のＤＶＤプレーヤは、ビデオ規格で記録されたコンテンツを再生することは可能であるが、ＶＲ規格で記録されたコンテンツを再生することはできない。
【０００３】
現在、最も広く普及しているのが再生専用のプレーヤであるため、ＶＲ規格で記録されたコンテンツをビデオ規格に変換する必要性は高い。例えば、カムコーダを用いてＶＲ規格で記録された映像および音声を、再生専用のプレーヤを持つ知人に記録媒体を介して渡す必要が生じた場合には、ビデオ規格に変換する必要がある。
【０００４】
従来、このようなフォーマット変換処理は、ＶＲ規格で記録されたコンテンツを一旦復号し、ディジタルのベースバンド信号に変換した後、再度、ビデオ規格に符号化することによって実現されていた。
【０００５】
または、例えば日本国特開２００２−１５０７１３号公報に記載されている処理のように、コンテンツ内の各データが記録された記録媒体上の物理的な記録位置とその時間情報とを予め記録しておき、これらの情報を用いてフォーマット変換処理が実現されていた。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
しかしながら、コンテンツを一旦復号して再符号化する従来のフォーマット変換処理では、再符号化する処理が介在するために、元のコンテンツの記録時間と同じ変換時間を要するばかりでなく、コンテンツの画質が劣化するという問題が生じていた。
【０００７】
また、あらかじめ記録されたデータの物理的記録位置と時間情報とを用いるフォーマット変換処理でも、フォーマット変換を行う際に物理的な記録位置を再度計算しなくてはならず、やはり比較的長い変換時間を要するという問題が生じていた。
【０００８】
本発明の目的は、コンテンツの画質劣化をさせることなく、かつ短時間でコンテンツのフォーマットを変換することである。
【課題を解決するための手段】
【０００９】
本発明によるデータストリームの変換方法は、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換することができる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有している。さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記変換方法は、前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップとを包含する。
【００１０】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換えるステップとをさらに包含していてもよい。
【００１１】
前記方法は、前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、特定された前記データ長が基準長以下か否かを判定するステップとをさらに包含し、前記データ長が基準長以下のとき、前記置き換えるステップを実行してもよい。
【００１２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有している。前記方法は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、特定された前記データ長が基準長以下か否かを判定するステップと、前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除するステップと、削除された前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じたパケット長のパディングパケットを、前記少なくとも１つのパケットに付加するステップとをさらに包含していてもよい。
【００１３】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有している。前記方法は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、前記拡張フィールドを削除するステップと、削除された前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整するステップとをさらに包含していてもよい。
【００１４】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、前記アドレス情報を取得するステップは、前記第１制御パックに格納された前記アドレス情報を抽出してもよい。
【００１５】
前記アドレス情報を取得するステップは、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールド に格納された前記アドレス情報を抽出してもよい。
【００１６】
前記アドレス情報を取得するステップは、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出してもよい。
【００１７】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定してもよい。
【００１８】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックであってもよい。
【００１９】
本発明によるフォーマット変換装置は、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換するに際して用いられる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて 存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記フォーマット変換装置は、前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得する受信部と、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するパック生成部であって、取得した前記アドレス情報を格納した第２制御パックを生成し、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するパック生成部とを備えている。
【００２０】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されている。前記フォーマット変換装置は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換える変換部とをさらに備えていてもよい。
【００２１】
前記判定部は、前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するとともに、特定された前記データ長が基準長以下か否かを判定し、前記データ長が基準長以下のとき、前記変換部は前記スタッフィングデータへの置き換えを実行してもよい。
【００２２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有している。前記フォーマット変換装置は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部であって、さらに、前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定し、かつ、前記データ長が基準長以下か否かを判定する判定部と、パディングパケットを生成するパケット生成部と、前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除する変換部であって、削除した前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整して、前記少なくとも１つのパケットに付加する変換部とをさらに備えていてもよい。
【００２３】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有している。前記フォーマット変換装置は、２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、前記拡張フィールドを削除する変換部であって、削除した前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整する変換部とをさらに備えていてもよい。
【００２４】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、前記パック生成部は、前記第１制御パックに格納された前記アドレス情報を抽出してもよい。
【００２５】
前記パック生成部は、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出してもよい。
【００２６】
前記パック生成部は、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出してもよい。
【００２７】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定してもよい。
【００２８】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックであってもよい。
【００２９】
本発明による、コンピュータにおいて実行可能なデータストリームの変換プログラムは、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する際に用いられる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有している。さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記プログラムにしたがってコンピュータが実行する変換方法は、前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップとを包含する。
【００３０】
本発明による記録方法は、第１フォーマットのデータストリームを記録するに際して用いられる。前記記録方法は、映像および音声に関するコンテンツのデータを受け取るステップと、受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成するステップと、配列された前記データパックのアドレスを特定するアドレス情報を取得するステップと、前記データパックの再生を制御するために必要な制御情報に基づいて、制御パックを生成するステップと、前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するステップと、前記データストリーム内の前記データパックの格納位置を特定するアドレス情報を取得するステップと、前記アドレス情報と前記データストリームとを関連付けて記録媒体に記録するステップとを包含する。
【００３１】
前記記録方法は、前記アドレス情報を前記制御パックに格納するステップをさらに包含してもよい。
【００３２】
前記記録方法は、前記アドレス情報を、前記制御パック内の任意の情報を記述することが可能な属性情報フィールドに格納するステップをさらに包含してもよい。
【００３３】
前記記録方法は、前記アドレス情報を、前記データストリームとは異なるデータファイル内に格納するステップをさらに包含してもよい。
【００３４】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する情報であってもよい。
【００３５】
前記記録方法によって記録された記録媒体には、前記アドレス情報が、データストリームの前記制御パック内の任意の情報を記述することが可能な属性情報フィールドに格納されている。または、記録媒体には、前記アドレス情報が、前記データストリームとは異なるデータファイル内に格納されている。
【００３６】
本発明による記録装置は、第１フォーマットのデータストリームを記録媒体に記録することができる。前記記録装置は、映像および音声に関するコンテンツのデータを受け取り、受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成し、配列された前記データパックのアドレスを特定するアドレス情報を出力するエンコーダと、前記データパックの再生を制御するために必要な制御情報に基づいて制御パックを生成する生成部と、前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するシステムエンコーダと、少なくとも前記データストリームを記録媒体に記録する記録部とを備えている。
【００３７】
前記生成部は、前記アドレス情報を取得して、アドレス情報を前記制御パックに記述する。または、前記記録部は、前記アドレス情報を前記データストリームとは異なるデータファイル内に格納してもよい。
【００３８】
本発明による、コンピュータにおいて実行可能な記録用プログラムは、第１フォーマットのデータストリームを生成し、記録するに際して用いられる。前記プログラムにしたがってコンピュータが実行する記録方法は、映像および音声に関するコンテンツのデータを受け取るステップと、受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成するステップと、配列された前記データパックのアドレスを特定するアドレス情報を取得するステップと、前記データパックの再生を制御するために必要な制御情報に基づいて、制御パックを生成するステップと、前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するステップと、前記データストリーム内の前記データパックの格納位置を特定するアドレス情報を取得するステップと、前記アドレス情報と前記データストリームとを関連付けて記録媒体に記録するステップとを包含する。
【００３９】
本発明によるデータストリームに変換する方法は、第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換するに際して用いられる。いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されている。前記変換方法は、前記第１フォーマットのデータストリームを解析するステップと、前記データストリームの第１制御パックおよび前記データパックの配置を特定し、所定のデータパックのアドレス情報を取得するステップと、前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップとを包含する。
【発明の効果】
【００４０】
本発明によれば、映像情報および音声情報が符号化されたあるフォーマットのデータストリームを再符号化することなく、異なるフォーマットのデータストリームに変換することができる方法および装置が提供される。再符号化の必要がないため、処理の高速化および処理負荷の軽減を図ることができ、処理能力が低い装置においても実装することは非常に容易である。
【発明を実施するための最良の形態】
【００４１】
以下、本発明によるコンテンツのフォーマット変換処理およびその関連技術を説明する。
【００４２】
本明細書では、「コンテンツ」とは、映像および／または音声を含む情報であるとする。すなわち、コンテンツは、映像を表す映像情報および／または音声を表す音声情報を含んでいる。例えば、コンテンツはカムコーダで撮影された動画や、アナログ放送等である。
【００４３】
また、本明細書では、変換前のフォーマットをＤＶＤビデオレコーディング規格（ＶＲ規格）に準拠したフォーマットとし、変換後のフォーマットをＤＶＤビデオ規格（ビデオ規格）に準拠したフォーマットとしたときの例を説明する。
【００４４】
以下、まずＶＲ規格およびビデオ規格のデータストリームのデータ構造を説明し、その後、フォーマット変換処理に関する各実施形態を説明する。
【００４５】
図１（ａ）は、ＶＲ規格に準拠したＭＰＥＧ２プログラムストリーム１０ａのデータ構造を示す（以下、このストリームを「ＶＲ規格ストリーム１０ａ」と称する）。
【００４６】
ＶＲ規格ストリーム１０ａは、複数のビデオオブジェクトユニット（Video OBject；ＶＯＢ）＃１、＃２、・・・、＃ｋを含んでいる。例えば、ＶＲ規格ストリーム１０ａがカムコーダで撮影されたコンテンツとすると、各ＶＯＢは、ユーザが録画を開始してから録画を停止するまでの１回の録画動作に対応する動画データが格納されている。
【００４７】
各ＶＯＢは、複数のＶＯＢユニット（Video OBject unit；ＶＯＢＵ）＃１、＃２、・・・、＃ｎを含んでいる。各ＶＯＢＵは、映像の再生時間にして０．４秒から１秒程度のデータを含むデータ単位である。以下、最初に配置されたＶＯＢＵとその次に配置されたＶＯＢＵを例にして、ＶＯＢＵのデータ構造を説明する。
【００４８】
ＶＯＢＵ＃１は、複数のパックから構成されている。ＶＲ規格ストリーム１０ａ内の各パックのデータ長（パック長）は一定（２キロバイト（２０４８バイト））である。ＶＯＢＵの先頭には、図１（ａ）に“Ｒ”で示されるリアルタイムインフォメーションパック（ＲＤＩパック）１１ａが配置されている。ＲＤＩパック１１ａの後には、“Ｖ”で示されるビデオパック（ビデオパック１２ａ等）および“Ａ”で示されるオーディオパック（オーディオパック１３ａ等）が複数含まれている。なお、１つのＶＯＢＵのデータサイズは、ビデオデータが可変ビットレートであれば最大記録再生レート以下の範囲で変動し、ビデオデータが固定ビットレートであればほぼ一定である。
【００４９】
各パックは以下の情報を格納している。すなわち、ＲＤＩパック１１ａは、ＶＲ規格ストリーム１０ａの再生を制御するために用いられる情報、例えばＶＯＢＵの再生タイミングを示す情報や、ＶＲ規格ストリーム１０ａのコピーを制御するための情報を格納している。ビデオパック１２ａは、ＭＰＥＧ２圧縮されたビデオデータを格納している。オーディオパック１３ａは、例えばＭＰＥＧ２−オーディオ規格によって圧縮されたオーディオデータを格納している。近接するビデオパック１２ａおよびオーディオパック１３ａには、例えば、同期して再生されるビデオデータおよびオーディオデータが格納されているが、それらの配置（順序）は任意である。本明細書では、ＶＲ規格ストリーム１０ａは、拡張ストリーム（extension  stream）を含まないＶＲ規格のストリームであるとする。なお、ＲＤＩパック１１ａおよびビデオパック１２ａのデータ構造の詳細は、図２および図４を参照しながら後述する。
【００５０】
ＶＯＢＵ＃２もまた、複数のパックから構成されている。ＶＯＢＵ＃２の先頭には、ＲＤＩパック１４ａが配置され、その後、ビデオパック１５ａおよびオーディオパック１６ａ等が複数配置されている。各パックに格納される情報の内容はＶＯＢＵ＃１と同様である。
【００５１】
図１（ｂ）は、ビデオ規格に準拠したＭＰＥＧ２プログラムストリーム１０ｂのデータ構造を示す（以下、このストリームを「ビデオ規格ストリーム１０ｂ」と称する）。
【００５２】
ビデオ規格ストリーム１０ｂのデータ構造は、ＶＲ規格ストリーム１０ａのデータ構造と類似している。すなわち、ビデオ規格ストリーム１０ｂは、複数のＶＯＢ＃１、＃２、・・・、＃ｋを含み、各ＶＯＢは複数のＶＯＢＵから構成されている。ＶＯＢＵは、ビデオパック１２ｂ、１５ｂ等およびオーディオパック１３ｂ、１６ｂ等を含む。ビデオパックおよびオーディオパックは、ビデオデータおよびオーディオデータを格納している。
【００５３】
データ構造において、ビデオ規格ストリーム１０ｂがＶＲ規格ストリーム１０ａと異なる点は以下のとおりである。ビデオ規格ストリーム１０ｂの各ＶＯＢＵの先頭には、ＶＲ規格ストリーム１０ａのＲＤＩパックに代えて、“Ｎ”で示されるナビゲーションパック１１ｂ、１４ｂが配置されている。ナビゲーションパックは、ビデオデータおよびオーディオデータの再生を制御するためのナビゲーション情報（後述）が格納されている。
【００５４】
また、ビデオ規格ストリーム１０ｂでは、各ＶＯＢのＶＯＢＵ＃１において最初に現れるビデオパック１２ｂおよびオーディオパック１３ｂには、同じＶＯＢＵのみならず、同じＶＯＢ内の他のビデオパックおよびオーディオパックには存在しないフィールド（後述するＰＥＳ拡張フィールド）が設けられている。具体的には、このフィールドは、ビデオパック１２ｂには存在するがビデオパック１５ｂには存在せず、オーディオパック１３ｂには存在するがオーディオパック１６ｂには存在しない。
【００５５】
ＶＲ規格ストリーム１０ａをビデオ規格ストリーム１０ｂにフォーマット変換するためには、上述したデータ構造の相違点を考慮する必要がある。そこで、以下、図２および図３（ａ）〜（ｄ）を参照しながら、ＶＲ規格ストリーム１０ａのＲＤＩパックおよびビデオ規格ストリーム１０ｂのナビゲーションパックのデータ構造を説明し、さらに図４を参照しながらビデオパックのデータ構造を説明する。
【００５６】
図２は、ＲＤＩパック１１ａのデータ構造を示す。ＲＤＩパック１１ａは、パックの種類を特定するパックヘッダ（Pack_H）、システムヘッダ（system_H）およびＲＤＩパケットを有している。これらは順に配置されて２０４８バイトのパックを構成する。ＲＤＩパケットはさらに、パケットの種類を特定するパケットヘッダ（Packet_H）、ＩＤフィールドおよびデータフィールドを有する。データフィールドには、ＶＯＢＵの再生タイミングを示すＲＤＩ情報を格納するフィールド（RDI_GI）、ＶＲ規格ストリーム１０ａのコピーを制御するための情報を格納するフィールド（DCI_CCI）および任意の属性情報が記述されるマニュファクチュアズ・インフォメーションフィールドが規定される。ＶＲ規格ストリーム１０ａを生成する装置は、その装置のメーカー（マニュファクチュア）が予め定めた任意の情報を属性情報として記述することができる。
【００５７】
図３（ａ）は、ナビゲーションパック１１ｂのデータ構造を示す。ナビゲーションパック１１ｂは、パックの種類を特定するパックヘッダ（Pack_H）、システムヘッダ（system_H）、再生制御情報を格納したＰＣＩパケットおよびＤＳＩパケットを有している。これらもまた順に配置されて２０４８バイトのパックを構成する。
【００５８】
ナビゲーションパック１１ｂを構成するデータのうち、ここではＤＳＩパケットに関するデータ構造を詳しく説明する。ＤＳＩパケットは、ナビゲーションパック１１ｂの先頭から１０２５バイト以降の部分に相当する、１０２４バイトのデータ長を有するパケットである。ＤＳＩパケットの先頭から８バイト目以降のフィールドには、データサーチ情報３０が格納される。
【００５９】
図３（ｂ）は、データサーチ情報３０のデータ構造を示す。データサーチ情報３０は、ビデオデータおよびオーディオデータの再生を制御するためのナビゲーション情報を含む種々の情報である。ここでは、ナビゲーション情報に関連する一般情報３１（DSI_GI）と、同期情報３２（SYNCI）を説明する。一般情報３１はデータサーチ情報３０の先頭に配置され、３２バイトのデータ長を有している。
【００６０】
図３（ｃ）は、一般情報３１のデータ構造を示す。一般情報３１は、第１、第２および第３の映像の参照ピクチュアのアドレスを特定するためのアドレス情報３３ａ、３３ｂおよび３３ｃ（VOBU＿1STREF＿EA, VOBU＿2NDREF＿EA, VOBU＿3RDREF＿EA）を格納している。上述のナビゲーション情報は、これらのアドレス情報を含んでいる。先頭のアドレス情報３３ａは一般情報３１の先頭から１３バイト目以降に配置される。アドレス情報３３ａ、３３ｂおよび３３ｃのデータ長はそれぞれ４バイトである。
【００６１】
アドレス情報は、各参照ピクチュアに対応するデータの最後の部分が格納されているビデオパックの位置を特定する情報である。「ビデオパックの位置」とは、具体的には、ＶＯＢＵの先頭から数えてそのパックが何番目のパックであるかを示す値によって示される。上述のように、各パックのパック長は２０４８バイトであるため、そのパックの先頭位置は（アドレス情報の値）×２０４８バイトによって特定される。また、「参照ピクチュア」とは、フレーム構造で符号化されたイントラピクチュア、フレーム構造で符号化された前方向予測ピクチュア、フィールド構造で符号化された一対のイントラピクチュア、フィールド構造で符号化された一対の前方向予測ピクチュア、または、フィールド構造で符号化された直後に前方向予測ピクチュアが続くイントラピクチュアを意味する。参照ピクチュアは、再生時間等に応じて任意に決定される。
【００６２】
図３（ｄ）は、同期情報３２のデータ構造を示す。同期情報３２は、オーディオパックのアドレス情報３４（A_SYNCA）を含んでいる。上述のナビゲーション情報は、このアドレス情報も含む。アドレス情報は、各ピクチュアと同期して再生されるオーディオデータが格納されたオーディオパックの位置を特定する情報である。ここでの「オーディオパックの位置」もまた、ＶＯＢＵの先頭から数えてそのパックが何番目のパックであるかを示す値によって示される。オーディオパックの先頭位置は、ビデオパックの例と同様に特定される。なお、同期情報３２のデータサイズは１４４バイトであり、データサーチ情報３０の先頭から４０３〜５４６バイトまでに格納される。
【００６３】
１つのオーディオパックのアドレスは、フィールド３４ａ（A_PCK_location）およびフィールド３４ｂ（A_PCKA）を用いて特定される。フィールド３４ａは対象となるオーディオパックの存在位置が、本ビットの前か後かを記述するために用いられる１ビットのフィールド長を有する。オーディオパックが本ビットの前に存在するときは“１”がセットされ、後に存在するときは“０”がセットされる。フィールド３４ｂは上述のオーディオパックの位置を記述するために用いられる１５ビットのフィールド長を有する。計２バイトのフィールド３４ａおよび３４ｂの組は８つ設けることができるので、オーディオパックのアドレス情報を記述するフィールドは８×２バイトの１６バイトのフィールド長が確保されている。
【００６４】
次に、図４を参照しながらビデオパックのデータ構造を説明する。ビデオパックに関しては、ＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂの両方において同じデータ構造をとり得る。
【００６５】
図４は、ビデオパック４０のデータ構造を示す。ビデオパック４０は、ビデオパケット４１およびパディングパケット４２を含む。なお、パディングパケット４２はデータパックのパック長を調整するために設けられたパケットであるため、パック長を調整する必要がないときは存在しない。このときは、ビデオパック４０にはビデオパケット４１のみが含まれる。
【００６６】
ビデオパケット４１は、先頭から順に、１４バイトのパックヘッダ（Pack_H）、２４バイトのシステムヘッダ（system_H）、パケットヘッダ（Packet_H）４１ａおよびペイロードを有する。パックヘッダには、パックの種類（ここではビデオパケット）を特定する情報が記述される。システムヘッダは、ＶＯＢＵの先頭のパックに必ず付加される。パケットヘッダ４１ａは後に詳述する。ペイロードには、圧縮符号化されたビデオデータが記述される。
【００６７】
一方、パディングパケット４２は、パケットヘッダ（Packet_H）４２ａおよびパディングデータ４２ｂを有する。パケットヘッダ４２ａには、パディングパケットであることを特定する情報の他に、５および６バイト目のフィールド（PES_packet_length）においてパディングパケット４２ａのデータ長（バイト長）が記述される。パディングデータ４２ｂには、予め定められた値が格納される。この値は、例えば、意味を持たない値“０ｘＦＦ”（１６進数）の羅列であり、上述のようにビデオパック４０のパック長を２０４８バイトに調整するために必要なデータ量だけ配置される。
【００６８】
次に、ビデオパケット４１のパケットヘッダ４１ａのデータ構造を説明する。パケットヘッダ４１ａは、パケット長フィールド４３、フラグフィールド４４およびヘッダデータ長フィールド４５を有する。さらに、パケットヘッダ４１ａには、時間フラグフィールド４４ａおよびＰＥＳ拡張フラグフィールド４４ｂの値に応じて、追加のフィールド４６が設けられることがある。
【００６９】
パケット長フィールド４３には、そのフィールド以降からそのビデオパケット４１の最後までのパケット長（バイト長）が記述される。よって、パディングパケット４２が存在するときにはビデオパケット４１のパケット長は短くなり、パケット長フィールド４３に記述されるパケット長の値は小さくなる。続いて、フラグフィールド４４は、時間フラグフィールド４４ａ（PTS_DTS_flag）、ＰＥＳ拡張フラグフィールド（PES_extension_flag）４４ｂ等を含む。時間フラグフィールド４４ａには、後述するプレゼンテーションタイムスタンプ（ＰＴＳ）およびでコーディングタイムスタンプ（ＤＴＳ）の有無を示すフラグが記述される。また、ＰＥＳ拡張フラグフィールド４４ｂには、後述するＰＥＳ拡張フィールドの有無を示すフラグが記述される。ヘッダデータ長フィールド４５には、追加のフィールド４６およびスタッフィングバイトフィールド４９のフィールド長の和が格納される。
【００７０】
次に、追加のフィールド４６を説明する。例えば、時間フラグフィールド４４ａがＰＴＳおよびＤＴＳを有することを示すときは、フィールド４６として各５バイトのＰＴＳ／ＤＴＳフィールド４７が設けられる。ＰＴＳは映像データの表示時間情報であり、ＤＴＳ情報は復号のための時間情報である。時間フラグフィールド４４ａの値に応じて、いずれか一方のフィールドが設けられる。
【００７１】
また、追加のフィールド４６としてＰＥＳ拡張フィールド４８が設けられることもある。ＰＥＳ拡張フィールド４８にはプログラムストリーム１０ａ、１０ｂの復号に必要な情報、例えば復号用のデータバッファの容量等が記述される。
【００７２】
ＰＥＳ拡張フィールド４８は、ＶＲ規格ストリーム１０ａでは各ＶＯＢＵにおいて最初に現れるビデオパックおよびオーディオパックに設けられ、ビデオ規格ストリーム１０ｂでは、１つのＶＯＢ中で最初のＶＯＢＵにおいて最初に現れるビデオパックおよびオーディオパックにのみ設けられる。ＰＥＳ拡張フィールド４８は、例えばＰＥＳ拡張フラグフィールド４４ｂが１のときに存在し、０のときは存在しない。
【００７３】
パケットヘッダ４１ａには、スタッフィングバイトフィールド４９が設けられることがある。スタッフィングバイトフィールド４９には、パック長を調整するためのスタッフィングバイトが格納される。スタッフィングバイトは、意味を持たない“０ｘＦＦ”（１６進数）等のバイトデータである。スタッフィングバイトフィールド４９とパディングパケット４２とは、パック長を調整するための同じ目的で設けられる。よって、ＤＶＤビデオ規格のスタッフィングバイトは７バイト以下という条件、および、スタッフィングバイト４９とパディングパケット４２は同一のパック内に共存できないという条件が定められている。図４に示す例では、ビデオパック４０にはパディングパケット４２が存在しているため、スタッフィングバイトフィールド４９は０バイトであり存在しない。
【００７４】
なお、図４ではビデオパックのデータ構造を示したが、オーディオパックのデータ構造も同様である。「ビデオパケット」を「オーディオパケット」に読み替え、ペイロードに格納される「ビデオデータ」を「オーディオデータ」に読み替えればよい。例えば、ＶＲ規格ストリーム１０ａでは、ＰＥＳ拡張フィールド４８は、各ＶＯＢＵにおいて最初に現れるオーディオパックに設けられる。一方、ビデオ規格ストリーム１０ｂでは、ＰＥＳ拡張フィールド４８は、１つのＶＯＢ中では、最初のＶＯＢＵにおいて最初に現れるオーディオパックにのみ設けられる。
【００７５】
（実施形態１）
以下、本発明によるフォーマット変換処理の概要を説明し、その後、フォーマット変換を実現するための第１の実施形態を説明する。
【００７６】
図５は、本発明によるフォーマット変換処理によるＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂの対応関係を示す。ＶＲ規格ストリーム１０ａは、コンテンツがエンコードされて得られ、光ディスク６５、ハードディスク（図示せず）等の記録媒体に記録されている。説明の便宜上、図５には、１つのＶＯＢに関して、ＶＲ規格ストリーム１０ａからビデオ規格ストリーム１０ｂへの変換したときの対応関係を示している。
【００７７】
ＶＲ規格ストリーム１０ａをビデオ規格ストリーム１０ｂに変換するにあたっては、下記の（１）〜（３）の処理を行う。すなわち、（１）ＲＤＩパック５０等をナビゲーションパック５１等に置き換える。（２）２番目以降に配置されたＶＯＢＵ＃２、＃３、・・・に関して、最初のビデオパック１５ａ等およびオーディオパック１６ａ等に含まれるＰＥＳ拡張フィールド４８を無効化するとともに、パック長を調整するための所定の処理を行って、ビデオパック１５ｂおよびオーディオパック５６を生成する。（３）ＶＲ規格ストリーム１０ａにおいて、映像再生時間が０．４秒以下のＶＯＢＵ＃ｎを前のＶＯＢＵ＃（ｎ−１）と結合して、ビデオ規格ストリーム１０ｂのＶＯＢＵ＃（ｎ−１）を生成する。
【００７８】
上述の処理（１）に関して、本実施形態では、フォーマット変換を行うことを前提としてＶＲ規格ストリーム１０ａをエンコードし、変換後のビデオ規格ストリーム１０ｂに記述することが必要な情報を予めＲＤＩパック５０に保持している。具体的には、ＲＤＩパック５０のマニュファクチュアズ・インフォメーションフィールド２０（図２）に、ビデオパックのアドレス情報３３ａ〜３３ｃ（図３（ｃ））およびオーディオパックのアドレス情報３４（図３（ｄ））を保持しておく。そして、フォーマット変換時には、それらのアドレス情報３３ａ〜３３ｃおよび３４を、そのままナビゲーションパック５１の一般情報３１および同期情報３２内に記述する。そのまま記述することができる理由は、変換前後において、ＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂのいずれにおいてもビデオパックおよびオーディオパックのＶＯＢＵ先頭からの順序は変わらないからである。
【００７９】
次に、上述の処理（２）に関して、ＰＥＳ拡張フィールド４８の無効化は、ＰＥＳ拡張フィールド４８を削除することにより実現する。具体的には、ＰＥＳ拡張フラグフィールド４４ｂ（図４）に、ＰＥＳ拡張フィールド４８が存在しないことを示すフラグを記述する。そして、パディングパケット４２を付加し、またはスタッフィングバイト４９を付加して、２０４８バイトのパック長を有するビデオパック５５およびオーディオパック５６を生成する。パディングパケット４２およびスタッフィングバイト４９のいずれを付加するかは、スタッフィングバイトが７バイト以下か、および、スタッフィングバイト４９とパディングパケット４２が同一のパック内に共存していないかによって決定される。
【００８０】
なお、ＶＲ規格ストリームおよびビデオ規格ストリームのいずれにおいても、最初のＶＯＢＵにおいて最初に現れるビデオパックおよびオーディオパックにはＰＥＳ拡張フィールド４８が存在する。よって、フォーマット変換に際しては、ＶＲ規格ストリーム１０ａのＶＯＢＵ＃１内で最初に現れるビデオパック１２ａおよびオーディオパック１３ａには上述の処理（２）のような特別の処理を施すことはない。それらのパックを用いて、ビデオ規格ストリーム１０ｂのＶＯＢＵ＃１内で最初に現れるビデオパック５２およびオーディオパック５３を得ることができる。
【００８１】
また、上述の処理（３）は、本実施形態においては特に実行しなくてもよい。その理由は、本実施形態において生成されるＶＲ規格ストリームは、原則としてＶＯＢＵのデータサイズを映像の再生時間にして０．４秒以上の固定長にして生成され、処理（３）を実行する必要がないからである。よって、ＶＯＢＵのデータサイズに何ら規定がないＶＲ規格ストリームを変換する際に、上述の処理（３）を実行すればよい。
【００８２】
以下、上述の処理を実現するための第１の実施形態によるデータ処理装置の構成とともに、その処理をより詳しく説明する。
【００８３】
図６は、本実施形態によるデータ処理装置６０の機能ブロックの構成を示す。データ処理装置６０は、例えばアナログ放送等のコンテンツを受信してＶＲ規格のデータストリーム１０ａを生成し、記録媒体に記録する。そして、記録されたＶＲ規格のデータストリーム１０ａをビデオ規格のデータストリーム１０ｂに変換して出力することができる。すなわち、データ処理装置６０は、受信したコンテンツに基づいてＶＲ規格ストリーム１０ａを生成する第１の機能、生成したＶＲ規格ストリーム１０ａを記録する第２の機能およびＶＲ規格ストリーム１０ａをビデオ規格ストリーム１０ｂに変換する第３の機能を有している。第１および第３の機能については、専用の処理チップを設けてハードウェア的に実現してもよいし、一般的な中央処理装置（ＣＰＵ）にプログラムを実行させることによってソフトウェア的に実現してもよい。
【００８４】
なお、本明細書では、記録媒体として、例えばＤＶＤ−ＲＡＭディスク等の光ディスクまたはハードディスクを例に挙げて説明するが、特にこれらに限定されるものではない。また、データストリームを格納できる媒体であれば、例えば光ディスクのサイズは直径１２ｃｍでも８ｃｍでもよいし、記録容量の大小も問わない。
【００８５】
データ処理装置６０は、エンコーダ６１と、ストリームコントローラ６２と、ハードディスク（図示せず）または光ディスク６４にデータストリームを書き込み、読み出すことが可能なハードディスクドライブ（ＨＤＤ）６３および／または光ディスクドライブ６５とを有する。データ処理装置６０は、必ずしもＨＤＤ６３と光ディスクドライブ６５とを両方を有する必要はなく、一方を有していればよい。また、光ディスク６４等の光記録媒体、ハードディスク等の磁気記録媒体に限らず、例えば半導体記録媒体およびそのリーダ・ライタを有していてもよい。以下の説明では、データ処理装置６０が光ディスクドライブ６５を有するとして説明する。
【００８６】
エンコーダ６１は、コンテンツを受け取って、ＶＲ規格に従ってコンテンツに含まれる映像情報および音声情報を圧縮符号化してＶＲ規格ストリーム１０ａを生成し、出力する。エンコーダ６１は、マニュファクチュアズ・インフォメーション２０として、ＶＲ規格ストリーム１０ａのＲＤＩパック５０内にビデオパックおよびオーディオパックのアドレスを特定するアドレス情報を記述する。
【００８７】
ストリームコントローラ６２は、エンコーダ６１からＶＲ規格ストリーム１０ａを受け取って光ディスクドライブ６５に出力する。ストリームコントローラ６２は、エンコーダ６１または光ディスクドライブ６５からＶＲ規格ストリーム１０ａを受け取り、そのＲＤＩパック５０に規定されたマニュファクチュアズ・インフォメーション２０からビデオパックおよびオーディオパックのアドレス情報を抽出する。そして、そのアドレス情報をそのまま用いてビデオ規格に従ったナビゲーションパック１１ｂを生成し、ＶＲ規格ストリーム１０ａのＲＤＩパック５０をナビゲーションパック１１ｂに置き換える。また、ストリームコントローラ６２は、ＶＲ規格ストリーム１０ａの２番目以降に配置されたＶＯＢＵの最初のビデオパックおよびオーディオパックのみに含まれる拡張フィールドを特定し、そのフィールドをスタッフィングバイトに置き換え、または、そのパックの最後にパディングパケット４２を付加する。その結果、ストリームコントローラ６２はビデオ規格ストリーム１０ｂを得て、出力する。
【００８８】
光ディスクドライブ６５は、ストリームコントローラ６２からＶＲ規格ストリーム１０ａを受け取って光ディスクドライブ６５に記録する。また、光ディスクドライブ６５は、光ディスク６４に記録されたＶＲ規格ストリーム１０ａを読み出してストリームコントローラ６２に出力する。なお、光ディスクドライブ６５は、変換されたビデオ規格ストリーム１０ｂを書き込み、読み出すこともできる。
【００８９】
続いて、エンコーダ６１およびストリームコントローラ６２のより詳細な構成および動作を説明する。
【００９０】
エンコーダ６１は、エレメンタリーストリームエンコーダ７１と、マニュファクチュアズインフォメーション生成器７２、システムエンコーダ７３とを有する。以下では、エレメンタリーストリームエンコーダ７１は「ＥＳエンコーダ７１」と称し、「マニュファクチュアズインフォメーション生成器７２」は「ＭＩ生成器７２」と称する。
【００９１】
ＥＳエンコーダ７１は、アナログ放送用のチューナからコンテンツを受け取る。ＥＳエンコーダ７１は、入力されたコンテンツの映像情報および音声情報を圧縮符号化し、ビデオパックおよびオーディオパックを生成してシステムエンコーダ７３に出力する。同時に、ＥＳエンコーダ７１は、同期して再生される映像および音声の各データを格納したビデオパックおよびオーディオパックのアドレス情報を出力する。アドレス情報は、ＶＯＢＵ先頭から起算してそのパックが何番目であるかを示す情報として得られる。より具体的には、ある映像に対応するオーディオパックのアドレス情報（Ａ＿ＳＹＮＣＡ）、第１の映像の参照ピクチュア、第２の映像の参照ピクチュア、第３の映像の参照ピクチュアの最終データが記録されているビデオパックのアドレス（VOBU＿1STREF＿EA,VOBU＿2NDREF＿EA,VOBU＿3RDREF＿EA）が取得される。ＥＳエンコーダ７１は、得られたアドレス情報をＭＩ生成器７２に出力する。
【００９２】
ＭＩ生成器７２は、ＶＲ規格に従ったＲＤＩパック５０を生成する。図７は、ＲＤＩパック５０の概略的なデータ構造を示す。ＭＩ生成器７２は、パックヘッダ７５、パケットヘッダ７６等を生成してＶＲ規格に従ったＲＤＩパック５０を生成する。このときＭＩ生成器７２は、受け取ったビデオパックおよびオーディオパックのアドレス情報を、マニュファクチュアズ・インフォメーションフィーデータ７７として記述する。図７のデータ７７には、オーディオパックのアドレス情報３４およびビデオパックのアドレス情報３３ａ〜３３ｃが格納されていることが理解される。なお、図７はＲＤＩパック５０の概略的なデータ構造を示しているため、システムヘッダ（図２）が記載されておらず、またパケットヘッダ７６の直後にデータ７７が続いている。しかし、システムヘッダは含まれ得るし、パケットヘッダ７６とデータ７７との間に他のデータが挿入されてもよい。
【００９３】
次に、システムエンコーダ７３を説明する。システムエンコーダ７３は、ＥＳエンコーダ７１から出力されたビデオパックおよびオーディオパックと、ＭＩ生成器７２から出力されたＲＤＩパック５０とを統合して、ＶＲ規格に準拠するようにパックヘッダおよびパケットヘッダを生成すると共に、ビデオパックおよびオーディオパックを配列したデータストリームの中にＲＤＩパック５０を挿入する。
【００９４】
なお、システムエンコーダ７３は、ＶＯＢＵの映像再生期間が０．４秒以上の一定期間になるように調整を行う。これにより、ビデオ規格ストリーム１０ｂへの変換時に処理負荷が軽減され、さらに容易に変換できるようにする。なお、ＶＯＢＵの映像再生期間は０．４秒以下であってもよい。そのようなＶＯＢＵが存在するときは、ビデオ規格ストリーム１０ｂに変換する際に、そのＶＯＢＵを前のＶＯＢＵに結合して、映像再生時間を０．４秒以上に確保する。
【００９５】
図８は、エンコーダ６１の処理の手順を示す。ステップＳ８１において、ＥＳエンコーダ７１は、コンテンツ内の映像情報および音声情報を圧縮符号化してビデオパックおよびオーディオパックを生成する。ステップＳ８２において、ＭＩ生成器７２は、ＥＳエンコーダ７１から、オーディオパックのアドレス、および、第１〜第３の映像の参照ピクチュアが格納されたビデオパックのアドレスを取得する。次に、ＭＩ生成器７２は、ステップＳ８３においてマニュファクチュアズ・インフォメーション・データを生成し、ステップＳ８４においてＲＤＩパック５０を生成する。最後に、ステップＳ８５において、システムエンコーダ７３は、複数のパックから構成されるデータストリームにＲＤＩパックを挿入する。これにより、ＶＲ規格ストリーム１０ａを得ることができる。
【００９６】
次に、再び図６を参照しながら、ストリームコントローラ６２を説明する。ストリームコントローラ６２は、記録／再生処理器８１と、パディングパケット検出器８２と、判定器８３と、制御および書き換え器８４と、スタッフィングバイト生成器８５と、パディングパケット生成器８６と、ナビゲーションパック生成器８７とを有している。
【００９７】
記録／再生処理器８１は、ＶＲ規格ストリーム１０ａを受け取り、光ディスクドライブ６５とのインターフェース規格に従って、ＶＲ規格ストリーム１０ａを光ディスクドライブ６５に送信する送信部である。また、記録／再生処理器８１は、光ディスクドライブ６５によって光ディスク６４から読み出されたＶＲ規格ストリーム１０ａを受け取る受信部である。さらに、記録／再生処理器８１は、受け取ったＶＲ規格ストリーム１０ａをパッディングパケット検出器８２および判定器８３に出力する。
【００９８】
例えば、ストリームコントローラ６２と光ディスクドライブ６５とがＡＴＡ／ＡＴＡＰＩインターフェースによって接続されているとき、記録／再生処理器８１はＡＴＡ／ＡＴＡＰＩコントローラであり、光ディスクドライブ６５との間ではＡＴＡ／ＡＴＡＰＩ準拠のデータストリームで送受信を行う。なお、ここでの変換処理は本発明では特に問題としないので、その説明は省略する。
【００９９】
パディングパケット検出器８２は、ＶＲ規格ストリーム１０ａの個々のパックに対しパディングパケットが存在するか否かの判定を行い、パディングパケットの有無を示す検出情報を判定器８３に出力する。上述の判定は、個々のパックに対して行われる。その後、パディングパケット検出器８２は、ＶＲ規格ストリーム１０ａを制御および書き換え器８４に出力する。
【０１００】
ここで、パディングパケット検出器８２がどのようにパディングパケットを検出するかを説明する。
【０１０１】
パディングパケット検出器８２は、各パックのパケットヘッダ４１ａを特定し、パケットヘッダ４１ａ内のパケット長フィールド４３に格納されているパケット長の情報を取得する。そして、パケット長が２０２８バイトであればパディングパケットが存在しないと判断し、２０２８バイト未満であればパディングパケットが存在すると判断する。その根拠は、各パックのパック長は２０４８バイトに固定されていること、パックヘッダが１４バイトに固定されていること、および、パケットヘッダ４１ａの先頭からパケット長フィールド４３の終端までのデータ長は６バイトで固定されていることに基づく。また、パディングパケットの検出対象は２番目以降のＶＯＢＵにおいて最初に存在するビデオパックおよびオーディオパックであるから、システムヘッダは存在しない。この結果、パックの先頭からパケット長フィールド４３の終端までのデータ長は２０バイトであるから、パケット長が２０２８バイトと記述されていればパックにはビデオ／オーディオパケットのみが存在することになり、パディングパケットは存在しないと判断できる。一方、パケット長が２０２８バイトでないとき、すなわち２０２８バイト未満であるときは、そのパケットのみではパックの規定長を満たすことができないため、他のデータ、すなわちパディングパケットが存在すると判断できる。
【０１０２】
次に、判定器８３は、パディングパケットの有無を示す検出情報に基づいて、パック内のＰＥＳ拡張フィールド４８の無効化に必要な処理を判定し、判定情報を出力する。具体的には、判定器８３は、検出情報に応じて下記（ａ）〜（ｄ）の判定を行い、行うべき処理を指示する判定情報を制御および書き換え器８に出力する。
【０１０３】
（ａ）パディングパケットが存在せず、かつ、スタッフィングバイト長が４バイト以下のときは、ＰＥＳ拡張フィールド４８をスタッフィングバイト化する。
【０１０４】
（ｂ）パディングパケットが存在せず、かつ、スタッフィングバイト長が４バイトより大きい（５バイト以上の）ときは、ＰＥＳ拡張フィールド４８およびスタッフィングバイトをパディングパケット化する。
【０１０５】
（ｃ）パディングパケットが存在するときは、ＰＥＳ拡張フィールド４８をパディングパケット化する。
【０１０６】
（ｄ）現在の処理対象のパックが最初のＶＯＢＵのパックであるとき、または、ＰＥＳ拡張フィールド４８を含まないパックであるときは、そのパックをそのまま利用する。
【０１０７】
（ａ）〜（ｃ）の処理では、ＰＥＳ拡張フィールド４８を削除するに際し、パック長を調整するためにスタッフィングバイトおよびパディングパケットのいずれを用いるかを決定している。このとき、スタッフィングバイトが７バイト以下で、かつ、スタッフィングバイト４９とパディングパケット４２が同一のパック内に共存しないように調整されている。
【０１０８】
（ｄ）の処理では、ＰＥＳ拡張フィールド４８を無効化する必要がないため、パックを加工しないことを決定している。なお、図示しないホストマイコン等から現在の処理対象のパックが最初のＶＯＢＵのパックであることの通知を受け、制御および書き換え器８４が上記した（ｄ）の判断を直接行うこともできる。
【０１０９】
図９（ａ）〜（ｃ）も参照しながら、処理（ａ）〜（ｃ）の内容を詳しく説明する。
【０１１０】
（ａ）の処理は、図９（ａ）に示す変換に対応する。図９（ａ）はスタッフィングバイトへの変換処理を示す。３バイトのＰＥＳ拡張フィールド９０が削除され、３バイトのスタッフィングバイトフィールド９１に置き換えられている。
【０１１１】
図では、変換前のパックにはスタッフィングバイトは存在していないが、基準長（４バイト長）以下のスタッフィングバイトであれば予め存在していてもよい。ＰＥＳ拡張フィールド４８のフィールド長は３バイトであるため、４バイト以下のスタッフィングバイトであれば合計しても７バイト以下になるからである。
【０１１２】
判定器８３は、既に存在するスタッフィングバイトのデータ長を以下のように特定する。すなわち、判定器８３は、パケットヘッダ４１ａのヘッダデータ長フィールド４５に記述されたデータ長から、ＰＴＳ／ＤＴＳフィールド４７のフィールド長と、ＰＥＳ拡張フィールド４８のフィールド長とを減算する。
【０１１３】
ここで、ＰＴＳ／ＤＴＳフィールド４７はいずれも５バイトであり、その存在の有無は時間フラグフィールド４４ａにおいて示されている。よって、ＰＴＳ／ＤＴＳフィールド４７のフィールド長は、ＰＴＳ／ＤＴＳフィールド４７が存在しないときは０バイト、一方のみが存在するときは５バイト、両方存在するときは１０バイトである。また、ＰＥＳ拡張フィールド４８は３バイトであり、その存在の有無はＰＥＳ拡張フラグフィールド４４ｂにおいて示されている。よって、ＰＥＳ拡張フィールド４８のフィールド長は、ＰＥＳ拡張フィールド４８が存在するときは３バイト、存在しないときは０バイトである。
【０１１４】
以上の計算により、判定器８３は、スタッフィングバイト４９のデータ長を特定することができる。
【０１１５】
（ｂ）の処理は、図９（ｂ）に示す変換に対応する。図９（ｂ）はパディングパケットへの変換処理を示す。この処理は、上述の（ａ）の処理を行うとスタッフィングバイト長が７バイトを超えてしまうときに採用され、７バイトより大きいデータ長の調整が可能なパディングパケットを利用する。ＰＥＳ拡張フィールド９２ａおよびスタッフィングバイトフィールド９２ｂがパケットヘッダ９４から削除され、パディングパケット９３が付加されている。パディングパケットのパケット長は、ＰＥＳ拡張フィールド４８のフィールド長およびスタッフィングバイトのデータ長の和と等しい。
【０１１６】
（ｃ）の処理は、図９（ｃ）に示す変換に対応する。図９（ｃ）はパディングパケットへの統合処理を示す。この処理は、パディングパケットが既に存在し、スタッフィングバイトを設けることができないときに採用される。ＰＥＳ拡張フィールド９６がパケットヘッダ９９から削除され、ＰＥＳ拡張フィールド９６のフィールド長に対応するデータ長のパディングバイトが、既に存在するパディングパケット９８に組み込まれる。
【０１１７】
再び図６を参照する。制御および書き換え器８４は、パディングパケット検出器８２からはＶＲ規格ストリーム１０ａを受け取り、判定器８３からは判定情報を受け取るとともに、スタッフィングバイト生成器１１からのスタッフィングバイト、または、パディングパケット生成器８６からのパディングパケットを受け取る。そして、制御および書き換え器８４は、判定情報に基づいてＰＥＳ拡張フィールド４８の無効化処理を行う。
【０１１８】
この無効化処理では、制御および書き換え器８４は、ＰＥＳ拡張フラグフィールド４４ｂのフラグをＰＥＳ拡張フィールド４８が存在しないことを表す値（例えば”０“）に書き換えるとともに、スタッフィングバイトの付加またはパディングパケットの付加を行う。
【０１１９】
判定情報によってスタッフィングバイト化が指示されたときは、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８の位置のデータをスタフィングバイト生成器１１から出力されたスタフィングバイトに置き換える。
【０１２０】
また、パディングパケット化が指示されたときは、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８の領域を削除して後続のペイロードのデータを詰めて配置し、そのパケットの後ろにパディングパケットを付加する。挿入するパディングパケットのパケット長（PES＿packet＿length）は（３バイト＋スタフィングバイト長−パディングパケットのパケットヘッダ長６バイト）、すなわち、（スタフィングバイト長−３）バイトである。この処理とともに、制御および書き換え器８４は、パック内のパケット長フィールド４３とヘッダデータ長４５を書き換え、さらに、ＰＥＳ拡張フラグフィールド４４ｂの書き換えもおこなう。書き換え後のＰＥＳ拡張フラグフィールド４４ｂの値およびヘッダデータ長は、変換前のパケット長とヘッダデータ長から、ＰＥＳ拡張フィールド４８のフィールド長に相当する３（バイト）とスタフィングバイト長とを減算することによって得られる。
【０１２１】
なお、判定情報によってそのパックをそのまま利用することが指示されているときには、制御および書き換え器８４はＰＥＳ拡張フィールド４８の無効化処理を行うことはない。制御および書き換え器８４は、処理した、または処理しなかったパックを順にナビゲーションパック生成器８７に送る。なお、制御および書き換え器８４が行う置き換え処理および無効化処理は、換言すればパックの変換処理である。さらに、変換後のパックが変換前のパックと同じであると考えれば、無効化処理を行わない場合であっても、広く変換という表現を用いることができる。
【０１２２】
スタッフィングバイト生成器８５は、スタッフィングバイトとして利用される所定の値“０ｘＦＦ”のバイトデータを生成して出力する。また、パディングパケット生成器８６は、所定のパケットヘッダ４２ａおよびパディングデータ４２ｂを有するパディングパケット４２を生成して出力する。なお、パケット長フィールドおよびパディングデータ４２ｂ等は特定されていなくてもよく、制御および書き換え器８４がそのパケット長の確定後に記述すればよい。
【０１２３】
ナビゲーションパック生成器８７は、ストリーム中のＲＤＩパック５０のマニュファクチュアズ・インフォメーション２０から、ナビゲーション情報として記述されたアドレス情報（A＿SYNCA,  VOBU＿1STREF＿EA,  VOBU＿2NDREF＿EA,VOBU＿3RDREF＿EA）を抽出し、ビデオ規格にしたがったナビゲーションパック５１を生成する。データ構造の詳細は図３（ａ）〜（ｄ）を参照しながら説明したとおりである。その後、ナビゲーションパック生成器８７は書き換えられた、または、そのまま用いられた他のパック（ビデオパックおよびオーディオパック等）を配置し、ＲＤＩパック５０をナビゲーションパック５１で置き換える。
【０１２４】
次に、ナビゲーションパック生成器８７は、ＶＲ規格ストリーム１０ａに、映像再生時間が０．４秒以下のＶＯＢＵが存在する場合は、そのＶＯＢＵを近接するＶＯＢＵに結合して１つにまとめる。例えば、図５中のＶＯＢＵ＃ｎが映像再生時間が０．４秒以下のＶＯＢＵであるとすると、ナビゲーションパック生成器８７は、ＶＯＢＵ＃ｎを前に配置されたＶＯＢＵ＃（ｎ−１）と結合する。または、ナビゲーションパック生成器８７は、ＶＯＢＵ＃ｎの終了表示時刻を変更して、その再生所要時間を０．４秒以上にしてもよい。
【０１２５】
ナビゲーションパック生成器８７が上述した処理を行うことにより、ビデオ規格ストリーム１０ｂが得られる。ナビゲーションパック生成器８７は、得られたビデオ規格ストリーム１０ｂを出力する。
【０１２６】
以下、図１０を参照しながら、ストリームコントローラ６２によるフォーマット変換処理を説明する。図１０は、フォーマット変換の手順を示すフローチャートである。まず、ステップＳ１００において、記録／再生処理器８１は、光ディスクドライブ６５から読み出されたＶＲ規格ストリーム１０ａを受け取り、ＲＤＩパック５０をナビゲーションパック５１に置き換えるとともに、ＶＲ規格ストリーム１０ａからビデオパックまたはオーディオパックを抽出する。ステップＳ１０１において、パディングパケット検出器８２はパックに含まれるパケットのパケット長を特定し、ステップＳ１０２においてパケット長が２０２８バイトか否かを判定する。パケット長が２０２８バイトであれば、パック内にはパディングパケットが存在しておらず、次にステップＳ１０３の処理に進む。２０２８バイトでなければパディングパケットが存在していることを意味し、ステップＳ１０９に進む。
【０１２７】
ステップＳ１０３では、判定器８３はスタッフィングバイトのデータ長を特定し、ステップＳ１０４において、そのデータ長は４バイト以下か否かを判定する。４バイト以下のときはステップＳ１０５に進み、４バイトより大きいときはステップＳ１０７に進む。ステップＳ１０５では、判定器８３はＰＥＳ拡張フィールド４８を無効化するか否かを判定する。無効化するときはステップＳ１０６に進み、無効化しないときには処理は終了する。無効化しないときとは、例えば、そのパックがＶＯＢの先頭のＶＯＢＵに含まれるパックである場合である。ステップＳ１０６では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８をスタッフィングバイトで置き換える。この処理は、図９（ａ）に示す変換に対応する。すなわち、制御および書き換え器８４は変換処理を行う変換部として機能している。
【０１２８】
ステップＳ１０７では、判定器８３はＰＥＳ拡張フィールド４８を無効化するか否かをさらに判定する。無効化するときはステップＳ１０８に進み、無効化しないときには処理は終了する。ステップＳ１０８において、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８およびスタッフィングバイトフィールドを削除して、パディングパケットを付加する。この処理は、図９（ｂ）に示す変換に対応する。続いて処理はステップＳ１１１に進む。ステップＳ１１１において、制御および書き換え器８４はパケット長４３およびヘッダデータ長４５を書き換える。
【０１２９】
一方、ステップＳ１０９では、判定器８３はＰＥＳ拡張フィールド４８を無効化するか否かを判定する。無効化するときはステップＳ１１０に進み、無効化しないときには処理は終了する。ステップＳ１１０では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８を削除してパディングパケットを付加する。この処理は、図９（ｃ）に示す変換に対応する。ステップＳ１１１において、制御および書き換え器８４はパケット長４３およびヘッダデータ長４５を書き換える。
【０１３０】
以上の処理を各パックに対して実行することにより、データストリームのフォーマットを、ＶＲ規格からビデオ規格に変換できる。
【０１３１】
次に、図１１を参照しながら、変換処理の他の例を説明する。図１１は、フォーマット変換の他の手順を示すフローチャートである。
ステップＳ１２０において、ビデオパックまたはオーディオパックを受け取る。図１０のステップＳ１００と同じである。ステップＳ１２１において、判定器８３は、ＰＥＳ拡張フィールド４８を無効化するか否かを判定する。無効化するときはステップＳ１２２に進み、無効化しないときにはステップＳ１３０に進む。ステップＳ１２２では、パディングパケット検出器８２はパケットのパケット長を特定し、ステップＳ１２３においてパケット長が２０２８バイトか否かを判定する。パケット長が２０２８バイトであれば、パック内にはパディングパケットが存在しておらず、次にステップＳ１２４の処理に進む。２０２８バイトでなければパディングパケットが存在していることを意味し、ステップＳ１２８に進む。
【０１３２】
ステップＳ１２４では、判定器８３はスタッフィングバイトのデータ長を特定し、ステップＳ１２５において、そのデータ長は４バイト以下か否かを判定する。４バイト以下のときはステップＳ１２６に進み、４バイトより大きいときはステップＳ１２７に進む。ステップＳ１２６では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８をスタッフィングバイトで置き換え、そのパックの処理を終了する。ステップＳ１２７では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８およびスタッフィングバイトを削除して、パディングパケットを付加する。その後処理はステップＳ１２９に進む。
【０１３３】
一方、ステップＳ１２８では、制御および書き換え器８４は、ＰＥＳ拡張フィールド４８を削除してパディングパケットを付加する。ステップＳ１２９では、制御および書き換え器８４はパケット長４３およびヘッダデータ長４５を書き換える。これによりそのパックの処理を終了する。
【０１３４】
以上の処理によれば、ＤＶＤビデオレコーディング規格で記録したデータストリームを復号し、再符号化することなくＤＶＤビデオ規格のデータストリームを生成できる。これにより、画質が劣化することがなく、かつ、高速なフォーマット変換を実現できる。また、処理負荷も軽いため、処理能力が低い機器においても実装することは容易である。
【０１３５】
また、上述の処理によればフォーマット変換時にＶＯＢＵの再生時間等を調整することもできるので、ＤＶＤビデオレコーディング規格によるＶＯＢＵのデータサイズにも自由度が増す。
【０１３６】
（実施形態２）
本発明による第１の実施形態では、ビデオ規格ストリームのナビゲーションパックに格納されるべきナビゲーション情報（所定のビデオパックおよびオーディオパックのアドレス情報）を、変換前のＶＲ規格ストリームのＲＤＩパック内に予め格納しておくとした。
【０１３７】
本実施形態では、このナビゲーション情報を、ＶＲ規格ストリームとは別のファイルとして保持し、記録媒体に記録しておく。
【０１３８】
図１２は、本実施形態によるデータ処理装置１６０の機能ブロックの構成を示す。データ処理装置１６０は、エンコーダ１６１と、ストリームコントローラ１６２と、ＨＤＤ１６３と、光ディスクドライブ１６５と、ホストマイコン１６６とを有する。
【０１３９】
データ処理装置１６０が、第１の実施形態によるデータ処理装置６０と異なる点は、エンコーダ１６１内のマニュファクチュアズインフォメーション生成器１７２、ホストマイコン１６６およびストリームコントローラ１６２内のナビゲーションパック生成器１８７の動作である。図に示す他の構成要素は、同名を付した図６のデータ処理装置６０の各構成要素と同じ処理を行う。したがって、以下では、データ処理装置６０と相違する構成要素に関連する動作等を説明する。
【０１４０】
まず、ＭＩ生成器１７２は、ＶＲ規格に従ったＲＤＩパック１１ａを生成する。しかし、本実施形態では、ＭＩ生成器１７２は、ナビゲーション情報をＲＤＩパックのマニュファクチュアズインフォメーションフィールド２０に格納しない。
【０１４１】
一方、ホストマイコン１６６は、ＥＳエンコーダ１７１から、図７に示す所定のビデオパックおよびオーディオパックのアドレス情報３３ａ〜３３ｃおよび３４（A＿SYNCA, VOBU＿1STREF＿EA, VOBU＿2NDREF＿EAおよびVOBU＿3RDREF＿EA）をナビゲーション情報として受け取る。そして、ホストマイコン１６６は、ＶＲ規格ストリームのデータファイルとは異なるデータファイルにナビゲーション情報を格納するように、記録／再生処理器１８１および光ディスクドライブ１６５に指示する。
【０１４２】
なお、ナビゲーション情報が格納されたナビゲーション情報ファイルが、どのＶＲ規格ストリームに対応するナビゲーション情報を格納しているかを特定するために、ＶＲ規格ストリームファイルと対応するナビゲーション情報ファイルとの間に何らかの関連付けをしておくことが好ましい。例えば対応するＶＲ規格ストリームファイルおよびナビゲーション情報ファイルには同じファイル名を付し、拡張子のみを変えて関連付けを行うことができる。これにより、後にＶＲ規格ストリームをビデオ規格ストリームにフォーマット変換するに際して、対象となるＶＲ規格ストリームに対応するナビゲーションファイルを容易に特定できる。
【０１４３】
さらに、ホストマイコン１６６は、記録されたＶＲ規格ストリームファイルおよびナビゲーション情報ファイルを記録／再生処理器１８１を介して読み出すことができる。フォーマット変換処理において、ホストマイコン１６６は、ナビゲーション情報ファイルを読み出して、ナビゲーションパック生成器１８７に出力する。または、ホストマイコン１６６がナビゲーションパック１１ｂを生成してもよい。なお、フォーマット変換処理に関するパックの変換処理は第１の実施形態による手順と同じである。よって、本実施形態においてはその説明は省略する。
【０１４４】
ナビゲーショパック生成器１８７は、ホストマイコン１６６から受け取ったナビゲーション情報を格納して、ナビゲーションパック１１ｂを生成する。そして、ナビゲーションパック生成器１８７は、ＶＲ規格ストリームからＲＤＩパック１１ａを検出して、生成したナビゲーションパック１１ｂによって置き換える。なお、置き換えの対象になるパック同士は、図５で示すＲＤＩパック５０およびナビゲーションパック５１のように、対応するビデオパックおよびオーディオパックの再生を制御するためのパックでなければならない。
【０１４５】
以上、本発明による第１および第２の実施形態を説明した。いずれの実施形態においても、ＶＲ規格ストリーム１０ａが生成されると共にナビゲーション情報も生成されるとして説明した。しかし、ナビゲーション情報をＶＲ規格ストリーム１０ａの生成時に生成せず、ビデオ規格ストリームへの変換時に生成することもできる。
【０１４６】
以下、図６に示す第１の実施形態によるデータ処理装置６０を用いて、フォーマット変換時においてナビゲーション情報を取得する手順を説明する。
【０１４７】
データ処理装置６０は、記録／再生処理器８１を介してＶＲ規格ストリーム１０ａを読み出すと、ＶＲ規格ストリーム１０ａに含まれるＲＤＩパック１１ａ、ビデオパックおよびオーディオパックの各種のヘッダを特定し、その内容を解析する。対象となるヘッダは、少なくとも、ＶＲ規格ストリーム１０ａ内のエレメンタリーストリームのシーケンスヘッダ、ＧＯＰヘッダ、ピクチュアヘッダ（いずれも図示せず）である。これらのヘッダについては周知であるため、その具体的な説明は省略する。解析の結果、データ処理装置６０は、ＶＲ規格ストリーム１０ａ内のパックの配置を特定し、ナビゲーション情報として必要な参照ピクチュアが格納されているビデオパックのアドレス情報およびオーディオパックのアドレス情報を取得する。この結果、ビデオ規格ストリーム１０ｂのナビゲーションパック１１ｂに格納するナビゲーション情報を得ることができる。フォーマット変換に必要な他の処理は第１の実施形態において説明したとおりである。
【０１４８】
以上により、ＤＶＤビデオレコーディング規格で記録したコンテンツを画質劣化無しかつ高速でＤＶＤビデオ規格に変換することができる。
【０１４９】
ここまでは、ＶＲ規格ストリーム１０ａからビデオ規格ストリーム１０ｂへのフォーマット変換を説明した。しかし、ＶＲ規格ストリーム１０ａとは異なるデータストリームであっても、データ構造がＶＲ規格ストリーム１０ａと類似している場合には上述の処理を適用できる。例えば、ＭＰＥＧ２−ビデオのプログラムストリームを規定したＭＴＦ（Movie Take File）に対しては上述の処理を適用できる。ＭＴＦのＰ２ストリーム（P2stream）は図５に示すＶＯＢに相当し、Ｐ２サンプル（P2sample）はＶＯＢＵに相当する。Ｐ２サンプルはその先頭にデータストリームの再生の制御に用いられる制御パックを有し、さらにその後に複数のビデオパックおよびオーディオパックを有している。よって上述のＶＲ規格ストリーム１０ａとデータ構造に関して同様である。
【０１５０】
Ｐ２サンプルに対して本発明を適用するときには、Ｐ２サンプルの制御パックに各ビデオパックおよびオーディオパックのアドレスを記述すればよい。
【０１５１】
上述した第１の実施形態ではＲＤＩパックのマニュファクチュアズ・インフォメーションフィールドに参照ピクチュアに関するビデオパックおよびオーディオパックのアドレス情報を記述したが、他のフィールドに設けることも可能である。例えば「ストリーム情報」（stream information）として一括してデータストリームを管理するフィールドを設け、そのフィールドに参照ピクチュアのアドレス情報とオーディオパックのアドレス情報とを記述することができる。なお、第１の実施形態ではＲＤＩパックに第１〜第３の参照ピクチュアの３つのアドレス情報を記述するとしたが、例えばそのうちの第１の参照ピクチュアのアドレス情報のみを、第２の実施形態で説明したように別のデータファイル（制御ファイル）に格納することも可能である。さらに、その制御ファイルには、その他、ストリーム情報に第２および第３の参照ピクチュアに関するアドレス情報およびオーディオパックのアドレス情報が記述されているか否かを示すフラグを記述しておくことが好ましい（例えば、記述されているときは、“１”のフラグを立て、記述されていないときは“０”のフラグを立てるとする）。
【０１５２】
本発明によるデータ処理装置６０、１６０の機能ブロックは、単独で設けられてもよいし、組み合わせて設けられてもよい。例えば図６によるデータ処理装置６０が再生専用のＤＶＤプレーヤであるときは、データ処理装置６０は、光ディスクドライブ６５およびストリームコントローラ６２のみを有する。本発明によるＶＲ規格ストリーム１０ａが記録されている光ディスク６４が光ディスクドライブ６５に装填されると、データ処理装置６０は、上述のフォーマット変換を実現することができる。
【０１５３】
データ処理装置６０、１６０は、コンピュータプログラムに基づいてデータストリームの生成、記録および再生処理を行うことができる。例えば、フォーマット変換を想定したコンテンツの符号化ストリームの生成処理は、図８に示すフローチャートに基づいて記述されたコンピュータプログラムを実行することによって実現される。また、フォーマット変換処理は、図１０および／または図１１に示すフローチャートに基づいて記述されたコンピュータプログラムを実行することによって実現される。コンピュータプログラムは、光ディスクに代表される光記録媒体、ＳＤメモリカード、ＥＥＰＲＯＭに代表される半導体記録媒体、フレキシブルディスクに代表される磁気記録媒体等の記録媒体に記録することができる。なお、光ディスク装置は、記録媒体を介してのみならず、インターネット等の電気通信回線を介してもコンピュータプログラムを取得できる。
【産業上の利用可能性】
【０１５４】
本発明によれば、映像情報および音声情報が符号化されたあるフォーマットのデータストリームを再符号化することなく、異なるフォーマットのデータストリームに変換することができる方法および装置が提供される。再符号化の必要がないため、処理の高速化および処理負荷の軽減を図ることができ、処理能力が低い装置においても実装することは非常に容易である。
【図面の簡単な説明】
【０１５５】
【図１】（ａ）は、ＶＲ規格に準拠したＭＰＥＧ２プログラムストリーム１０ａのデータ構造を示す図である。（ｂ）は、ビデオ規格に準拠したＭＰＥＧ２プログラムストリーム１０ｂのデータ構造を示す図である。
【図２】ＲＤＩパック１１ａのデータ構造を示す図である。
【図３】（ａ）は、ナビゲーションパック１１ｂのデータ構造を示す図である。（ｂ）は、データサーチ情報３０のデータ構造を示す図である。（ｃ）は、一般情報３１のデータ構造を示す図である。（ｄ）は、同期情報３２のデータ構造を示す図である。
【図４】ビデオパック４０のデータ構造を示す図である。
【図５】本発明によるフォーマット変換処理によるＶＲ規格ストリーム１０ａおよびビデオ規格ストリーム１０ｂの対応関係を示す図である。
【図６】本実施形態によるデータ処理装置６０の機能ブロックの構成を示す図である。
【図７】ＲＤＩパック５０の概略的なデータ構造を示す図である。
【図８】エンコーダ６１の処理の手順を示すフローチャートである。
【図９】（ａ）はスタッフィングバイトへの変換処理を示す図である。（ｂ）はパディングパケットへの変換処理を示す図である。（ｃ）はパディングパケットへの統合処理を示す図である。
【図１０】フォーマット変換の手順を示すフローチャートである。
【図１１】フォーマット変換の他の手順を示すフローチャートである。
【図１２】本実施形態によるデータ処理装置１６０の機能ブロックの構成を示す図である。
【手続補正書】
【提出日】平成17年6月13日(2005.6.13)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する方法であって、
いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、
さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、
前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されており、
前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、
前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、
前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップと
を包含するフォーマット変換方法。
【請求項２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換えるステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項３】
前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、
特定された前記データ長が基準長以下か否かを判定するステップと
をさらに包含し、前記データ長が基準長以下のとき、前記置き換えるステップを実行する、請求項２に記載のフォーマット変換方法。
【請求項４】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するステップと、
特定された前記データ長が基準長以下か否かを判定するステップと、
前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除するステップと、
削除された前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じたパケット長のパディングパケットを、前記少なくとも１つのパケットに付加するステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項５】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定するステップと、
前記拡張フィールドを削除するステップと、
削除された前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整するステップと
をさらに包含する、請求項１に記載のフォーマット変換方法。
【請求項６】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、
前記アドレス情報を取得するステップは、前記第１制御パックに格納された前記アドレス情報を抽出する、請求項１に記載のフォーマット変換方法。
【請求項７】
前記アドレス情報を取得するステップは、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出する、請求項６に記載のフォーマット変換方法。
【請求項８】
前記アドレス情報を取得するステップは、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出する、請求項１に記載のフォーマット変換方法。
【請求項９】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する、請求項１に記載のフォーマット変換方法。
【請求項１０】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックである、請求項２、４、５のいずれかに記載のフォーマット変換方法。
【請求項１１】
第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する装置であって、
いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、
さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、
前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されており、
前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得する受信部と、
前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するパック生成部であって、取得した前記アドレス情報を格納した第２制御パックを生成し、前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するパック生成部と
を備えたフォーマット変換装置。
【請求項１２】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、
特定した前記拡張フィールドのデータを予め定められたスタッフィングデータに置き換える変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１３】
前記判定部は、前記拡張フィールドの後に配置され、前記スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定するとともに、特定された前記データ長が基準長以下か否かを判定し、前記データ長が基準長以下のとき、前記変換部に対して置き換えを指示する、請求項１２に記載のフォーマット変換装置。
【請求項１４】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含む少なくとも１つのパケットを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部であって、さらに、前記拡張フィールドの後に配置され、スタッフィングデータが予め格納されたスタッフィングフィールドのデータ長を特定し、かつ、前記データ長が基準長以下か否かを判定する判定部と、
パディングパケットを生成するパケット生成部と、
前記データ長が基準長より大きいとき、前記拡張フィールドおよび前記スタッフィングフィールドを削除する変換部であって、削除した前記拡張フィールドおよび前記スタッフィングフィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整して、前記少なくとも１つのパケットに付加する変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１５】
前記第１フォーマットのデータストリームは、複数のデータパックおよび前記第１制御パックを有するデータ単位が複数配置されて構成されており、各データパックは、前記映像および前記音声の一方のデータを含むパケットと、前記データパックのパック長を調整するためのパディングパケットとを有しており、
２番目以降に配置された各データ単位において、最初のデータパックのみに含まれる拡張フィールドを特定する判定部と、
前記拡張フィールドを削除する変換部であって、削除した前記拡張フィールドのフィールド長に応じて、前記パディングパケットのパケット長を調整する変換部と
をさらに備えた、請求項１１に記載のフォーマット変換装置。
【請求項１６】
前記アドレス情報は、前記第１フォーマットのデータストリーム内の前記第１制御パックに格納されており、
前記パック生成部は、前記第１制御パックに格納された前記アドレス情報を抽出する、請求項１１に記載のフォーマット変換装置。
【請求項１７】
前記パック生成部は、前記第１制御パック内の、任意の情報を記述することが可能な属性情報フィールドに格納された前記アドレス情報を抽出する、請求項１６に記載のフォーマット変換装置。
【請求項１８】
前記パック生成部は、前記データストリームとは異なるデータファイル内に格納された前記アドレス情報を抽出する、請求項１１に記載のフォーマット変換装置。
【請求項１９】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する、請求項１１に記載のフォーマット変換装置。
【請求項２０】
前記最初のデータパックは、映像のデータを含むビデオパック、および、音声のデータを含むオーディオパックの各々についての最初のパックである、請求項１２、１４、１５のいずれかに記載のフォーマット変換装置。
【請求項２１】
第１フォーマットのデータストリームを記録するに際して用いられる記録方法であって、
映像および音声に関するコンテンツのデータを受け取るステップと、
受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成するステップと、
配列された前記データパックのアドレスを特定するアドレス情報を取得するステップと、前記データパックの再生を制御するために必要な制御情報に基づいて、制御パックを生成するステップと、
前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するステップと、
前記データストリーム内の前記データパックの格納位置を特定するアドレス情報を取得するステップと、
前記アドレス情報と前記データストリームとを関連付けて記録媒体に記録するステップとを包含する記録方法。
【請求項２２】
前記アドレス情報を前記制御パックに格納するステップをさらに包含する、請求項２１に記載の記録方法。
【請求項２３】
前記アドレス情報を、前記制御パック内の任意の情報を記述することが可能な属性情報フィールドに格納するステップをさらに包含する、請求項２２に記載の記録方法。
【請求項２４】
前記アドレス情報を、前記データストリームとは異なるデータファイル内に格納するステップをさらに包含する、請求項２１に記載の記録方法。
【請求項２５】
前記アドレス情報は、前記映像を表すピクチュアのデータパックの格納位置と、前記ピクチュアと同期して再生される音声のデータパックの格納位置とを特定する情報である、請求項２１に記載の記録方法。
【請求項２６】
第１フォーマットのデータストリームを記録する記録装置であって、
映像および音声に関するコンテンツのデータを受け取り、受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成し、配列された前記データパックのアドレスを特定するアドレス情報を出力するエンコーダと、
前記データパックの再生を制御するために必要な制御情報に基づいて制御パックを生成する生成部と、
前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するシステムエンコーダと、
少なくとも前記データストリームを記録媒体に記録する記録部と
を備えた、記録装置。
【請求項２７】
前記生成部は、前記アドレス情報を取得して、アドレス情報を前記制御パックに記述する、請求項２６に記載の記録装置。
【請求項２８】
前記記録部は、前記アドレス情報を前記データストリームとは異なるデータファイル内に格納する、請求項２６に記載の記録装置。
【請求項２９】
第１フォーマットのデータストリームを、第２フォーマットのデータストリームに変換する際に用いられる、コンピュータにおいて実行可能なデータストリームの変換プログラムであって、
いずれのデータストリームも、映像データおよび音声データを格納したデータパックと、前記データストリームの再生の制御に用いられる制御パックとを有しており、
さらに、前記第１フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされないアドレス情報が前記データストリームと関連付けられて存在しており、
前記第２フォーマットのデータストリームでは、前記データパックのアドレスを特定するアドレス情報であって、前記データストリームの再生時に必要とされるアドレス情報が制御パック内に格納されており、
前記変換プログラムは、前記コンピュータに、
前記第１フォーマットのデータストリーム、および、関連付けられた前記アドレス情報を取得するステップと、
前記第１フォーマットの第１制御パックに基づいて前記第２フォーマットに従った第２制御パックを生成するステップであって、取得した前記アドレス情報を格納した第２制御パックを生成するステップと、
前記第１制御パックを前記第２制御パックに置き換えて、前記第１フォーマットのデータストリームから前記第２フォーマットのデータストリームを生成するステップと
を実行させる、変換プログラム。
【請求項３０】
第１フォーマットのデータストリームを生成し、記録するに際して用いられる、コンピュータにおいて実行可能な記録プログラムであって、
前記記録プログラムは、前記コンピュータに、
映像および音声に関するコンテンツのデータを受け取るステップと、
受け取ったデータに基づいて、前記映像のデータを含むデータパックおよび前記音声のデータを含むデータパックを生成するステップと、
配列された前記データパックのアドレスを特定するアドレス情報を取得するステップと、
前記データパックの再生を制御するために必要な制御情報に基づいて、制御パックを生成するステップと、
前記第１フォーマットにしたがって、前記データパックおよび前記制御パックを配列してデータストリームを生成するステップと、
前記データストリーム内の前記データパックの格納位置を特定するアドレス情報を取得するステップと、
前記アドレス情報と前記データストリームとを関連付けて記録媒体に記録するステップとを実行させる、記録プログラム。
【国際調査報告】
2004057869.tif 000015
2004057869.tif 000016