(57)【要約】【課題】制御情報のパックの解析を任意のタイミングで行えるようにする。【解決手段】入出力をつなぐラインに並行にＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出するためのストリームパーサ２１と、入力されるストリームを２０４８バイトのパック単位にカウントする入力パックカウンタ２２と、ストリームパーサ２１によりＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出した際に入力パックカウンタ２２のカウンタ値を保持するカウンタバッファ２３が設けられる。さらにストリームパーサ２１で行われるＮａｖｉｇａｔｉｏｎ  Ｐａｃｋ検出は、パックに付加されているヘッダー情報との一致を取ることで行われる。【選択図】      図２
2005004898.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツ情報のパックと共に制御情報のパックが単一のストリームで入力される情報処理装置であって、
前記ストリーム中の特定のパターンにより前記制御情報のパックを判別する手段を備え、
前記ストリームをそのままメインメモリに記憶させると共に、
前記制御情報のパックが判別された際の前記メインメモリ中の記憶位置を特定する値を検出して保持する手段を設ける
ことを特徴とする情報処理装置。
【請求項２】
請求項１記載の情報処理装置において、
前記メインメモリ中の記憶位置を特定する値を検出して保持する手段は、前記入力されるストリームのパックの数をカウントする手段と、前記パックカウント値を保持するバッファとを有する
ことを特徴とする情報処理装置。
【請求項３】
請求項２記載の情報処理装置において、
前記メインメモリ中の記憶位置のアドレスを前記バッファに保持されたパックカウント値からの演算により算出する
ことを特徴とする情報処理装置。
【請求項４】
請求項３記載の情報処理装置において、
前記メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行う
ことを特徴とする情報処理装置。
【請求項５】
請求項２記載の情報処理装置において、
前記パックカウント値を保持するバッファを複数持つ
ことを特徴とする情報処理装置。
【請求項６】
請求項１記載の情報処理装置において、
前記ストリーム中の特定のパターンにより前記制御情報のパックを判別する手段は、前記ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出する手段を含む
ことを特徴とする情報処理装置。
【請求項７】
コンテンツ情報のパックと共に制御情報のパックが単一のストリームで入力される情報処理装置における情報処理方法であって、
前記ストリーム中の特定のパターンにより前記制御情報のパックを判別し、
前記ストリームをそのままメインメモリに記憶させると共に、
前記制御情報のパックが判別された際の前記メインメモリ中の記憶位置を特定する値を検出して保持する
ことを特徴とする情報処理方法。
【請求項８】
請求項７記載の情報処理方法において、
前記メインメモリ中の記憶位置を特定する値の検出及び保持は、前記入力されるストリームのパックの数をカウントし、前記パックカウント値をバッファに保持する
ことを特徴とする情報処理方法。
【請求項９】
請求項８記載の情報処理方法において、
前記メインメモリ中の記憶位置のアドレスを前記バッファに保持されたパックカウント値からの演算により算出する
ことを特徴とする情報処理方法。
【請求項１０】
請求項９記載の情報処理方法において、
前記メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行う
ことを特徴とする情報処理方法。
【請求項１１】
請求項８記載の情報処理方法において、
前記パックカウント値を保持するバッファを複数持つ
ことを特徴とする情報処理方法。
【請求項１２】
請求項７記載の情報処理方法において、
前記ストリーム中の特定のパターンにより前記制御情報のパックの判別は、前記ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出して行うことを特徴とする情報処理方法。
【請求項１３】
コンテンツ情報のパックと共に制御情報のパックが単一のストリームで記録された記録媒体を再生する再生手段を有する再生装置であって、
前記ストリーム中の特定のパターンにより前記制御情報のパックを判別する手段を備え、
前記ストリームをそのままメインメモリに記憶させると共に、
前記制御情報のパックが判別された際の前記メインメモリ中の記憶位置を特定する値を検出して保持する手段を設ける
ことを特徴とする再生装置。
【請求項１４】
請求項１３記載の再生装置において、
前記メインメモリ中の記憶位置を特定する値を検出して保持する手段は、前記入力されるストリームのパックの数をカウントする手段と、前記パックカウント値を保持するバッファとを有する
ことを特徴とする再生装置。
【請求項１５】
請求項１４記載の再生装置において、
前記メインメモリ中の記憶位置のアドレスを前記バッファに保持されたパックカウント値からの演算により算出する
ことを特徴とする再生装置。
【請求項１６】
請求項１５記載の再生装置において、
前記メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行う
ことを特徴とする再生装置。
【請求項１７】
請求項１４記載の再生装置において、
前記パックカウント値を保持するバッファを複数持つ
ことを特徴とする再生装置。
【請求項１８】
請求項１３記載の再生装置において、
前記ストリーム中の特定のパターンにより前記制御情報のパックを判別する手段は、前記ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出する手段を含む
ことを特徴とする再生装置。
【請求項１９】
コンテンツ情報のパックと共に制御情報のパックが単一のストリームで記録された記録媒体を再生する再生装置における再生方法であって、
前記ストリーム中の特定のパターンにより前記制御情報のパックを判別し、
前記ストリームをそのままメインメモリに記憶させると共に、
前記制御情報のパックが判別された際の前記メインメモリ中の記憶位置を特定する値を検出して保持する
ことを特徴とする再生方法。
【請求項２０】
請求項１９記載の再生方法において、
前記メインメモリ中の記憶位置を特定する値の検出及び保持は、前記入力されるストリームのパックの数をカウントし、前記パックカウント値をバッファに保持する
ことを特徴とする再生方法。
【請求項２１】
請求項２０記載の再生方法において、
前記メインメモリ中の記憶位置のアドレスを前記バッファに保持されたパックカウント値からの演算により算出する
ことを特徴とする再生方法。
【請求項２２】
請求項２１記載の再生方法において、
前記メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行う
ことを特徴とする再生方法。
【請求項２３】
請求項２０記載の再生方法において、
前記パックカウント値を保持するバッファを複数持つ
ことを特徴とする再生方法。
【請求項２４】
請求項１９記載の再生方法において、
前記ストリーム中の特定のパターンにより前記制御情報のパックの判別は、前記ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出して行うことを特徴とする再生方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、例えばＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ：以下ＤＶＤと略称する）の再生に使用して好適な情報処理装置、情報処理方法、再生装置及び再生方法に関する。詳しくは、再生ストリーム中の制御情報のパックに対する情報処理を良好に行うことができるようにするものである。
なお、本発明はＤＶＤの再生に限定されるものではないが、以下の説明では、技術が公知であり、理解の容易なＤＶＤの再生について行う。
【０００２】
【従来の技術】
従来のＤＶＤの再生においても、再生ストリーム中の制御情報のパックを取り出して情報処理することは行われている（例えば、特許文献１参照。）。
【０００３】
【特許文献１】
特開平１０−３３４５８９号公報
【０００４】
【発明が解決しようとする課題】
図８には、ＤＶＤストリームの階層構造を示す。ＤＶＤのストリームは、例えば１タイトルあたり最大９９個のＶｉｄｅｏ  ｏｂｊｅｃｔ  ｓｅｔ（ＶＯＢＳ）からなり、このＶＯＢＳには、それぞれ最大３２７６７個のＣｅｌｌ（Ｃ）が設けられている。さらに、これらのＣｅｌｌ（Ｃ）は、それぞれが２０４８バイトを単位とする多数のＰａｃｋ（ＰＣＫ）によって構成される。
【０００５】
これらのＰａｃｋ（ＰＣＫ）には、Ｖｉｄｅｏ  Ｐａｃｋ、Ａｕｄｉｏ  Ｐａｃｋ、Ｓｕｂ  Ｐｉｃｔｕｒｅ  Ｐａｃｋ、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの４種類がある。この内、Ｖｉｄｅｏ  Ｐａｃｋ、Ａｕｄｉｏ  Ｐａｃｋ、Ｓｕｂ  Ｐｉｃｔｕｒｅ  Ｐａｃｋは、映像、音声情報を含んだデータからなる、いわゆるコンテンツ情報のパックである。これに対して、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋは、ストリームの特定データに関する位置情報や、アングル、ハイライトといった表示に関する情報をもち、ＤＶＤの制御に必要な情報となる制御情報のパックである。
【０００６】
従って、上述のＤＶＤストリームの再生に当って、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋは、ストリーム中のそれ以外のＶｉｄｅｏ  Ｐａｃｋ、Ａｕｄｉｏ  Ｐａｃｋ等のパックが実際に処理（デマルチプレクス、デコード、表示等）され始めるタイミングよりも早くに取得され、解析されることが求められる。なお、図８の下部には、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの具体的な構成が示されている。
【０００７】
ところで、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの取得のために検出が行われるが、その方法として従来の装置では、例えばＤＶＤドライブから読み出したストリームを、デマルチプレクサで解析する際に検出する方法が用いられている。図９には、このような従来の検出方法を実現するためのシステム構成を示す。
【０００８】
すなわち図９において、光学ピックアップ３０からのレーザービームがディスク３１に照射され、その反射光を検出した信号がプロセッサ３２に供給されて、ディスク３１に記録されたデータストリームが読み出される。なお、これらの光学ピックアップ３０〜プロセッサ３２によりＤＶＤドライブが形成される。そして読み出されたストリームがデマルチプレクサ３３に供給され、このデマルチプレクサ３３で、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出が行われる。
【０００９】
なお、ディスク３１から読み出されたストリームの処理では、図９のＡに示すように直接デマルチプレクサ３３に供給される場合と、図９のＢに示すように、ストリームがデータバス３４を介してメモリ３５に一旦バッファリングされた後に、デマルチプレクサ３３に供給される場合とがある。
【００１０】
さらに、デマルチプレクサ３３でＮａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出が行われると、割り込み等によってＣＰＵ３６にそれが通知され、ＣＰＵ３６ではこれを受けて、メモリ３５に転送されたＮａｖｉｇａｔｉｏｎ  ｐａｃｋの解析を行う。そしてこの解析されたＮａｖｉｇａｔｉｏｎ  ｐａｃｋの制御情報に従って、Ｖｉｄｅｏ  Ｐａｃｋ、Ａｕｄｉｏ  Ｐａｃｋ等の処理（デマルチプレクス、デコード、表示等）が行われる。
【００１１】
すなわち、デマルチプレクサ３３で解析され、分離されたＶｉｄｅｏ、Ａｕｄｉｏストリームは、それぞれ映像復号化装置３７、音声復号化装置３８に送られて、デコード、表示等の処理が行われる。また、メモリ３５の管理のためにメモリコントローラ３９が設けられており、各ブロックからのメモリ３５に対するデータアクセスの制御等が行われる。
【００１２】
このようにして、ディスク３１から読み出されたストリームを解析した映像信号（Ｖｉｄｅｏ）及び音声信号（Ａｕｄｉｏ）の再生が行われる。そしてこれらのコンテンツ情報の再生は、上述のＣＰＵ３６で解析されたＮａｖｉｇａｔｉｏｎ  ｐａｃｋの制御情報に従って行われるものである。
【００１３】
しかしながら上述のシステムにおいては、入力されるストリームを他のパックも処理しながら順次解析していくために、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出のタイミングが遅くなる問題がある。すなわち、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの解析も、Ｖｉｄｅｏ  Ｐａｃｋ、Ａｕｄｉｏ  Ｐａｃｋ等と共にストリーム中に設けられた順番で行われるために、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋを他のパックの処理よりも早くに取得し、解析することが困難である。
【００１４】
また、ＣＰＵが取得できたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを解析中に、次のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが読み出されないという保証はない。すなわちＤＶＤを早送り再生しているような場合には、前のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを解析中に次のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが読み出される場合がある。この場合に、上述のシステムでは、新たに取得されたＮａｖｉｇａｔｉｏｎ
Ｐａｃｋは無視され、そこに示された制御は行えないことになってしまう。
【００１５】
この出願はこのような点に鑑みて成されたものであって、解決しようとする問題点は、従来の装置では、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出をデマルチプレクサで行うために、検出のタイミングが遅くなる問題があり、また、ＣＰＵが取得できたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを解析中に、次のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが読み出された場合には、新たに取得されたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋは無視され、そこに示された制御を実行することができないなどの問題を生じていたというものである。
【００１６】
【課題を解決するための手段】
このため本発明においては、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持するようにしたものであって、これによれば、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができる。
【００１７】
【発明の実施の形態】
すなわち本発明においては、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで入力される情報処理装置であって、ストリーム中の特定のパターンにより制御情報のパックを判別する手段を備え、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持する手段を設けてなるものである。
【００１８】
さらに本発明においては、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで入力される情報処理装置における情報処理方法であって、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持してなるものである。
【００１９】
また、本発明においては、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで記録された記録媒体を再生する再生手段を有する再生装置であって、ストリーム中の特定のパターンにより制御情報のパックを判別する手段を備え、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持する手段を設けてなるものである。
【００２０】
さらに本発明においては、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで記録された記録媒体を再生する再生装置における再生方法であって、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持してなるものである。
【００２１】
以下、図面を参照して本発明を説明するに、図１は本発明による情報処理装置、情報処理方法、再生装置及び再生方法を適用したＤＶＤ再生装置の一実施形態の構成を示すブロック図である。
【００２２】
図１において、光学ピックアップ１からのレーザービームがディスク２に照射され、その反射光を検出した信号がプロセッサ３に供給されて、ディスク２に記録されたデータストリームが読み出される。なお、これらの光学ピックアップ１〜プロセッサ３によりＤＶＤドライブが形成される。そして本発明では、この読み出されたストリームが、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋ検出機構（以下、Ｎａｖｉ  Ｐａｃｋパーサと呼ぶ）４を通じてデマルチプレクサ５に供給される。
【００２３】
なお、図１では、上述の図９のＢに示したように、ストリームがデータバス６を介してメモリ７に一旦バッファリングされた後に、デマルチプレクサ５に供給される場合を示すが、図９のＡに示したように、直接デマルチプレクサ５に供給される場合も同様である。
【００２４】
そしてＮａｖｉ  Ｐａｃｋパーサ４は、光学ピックアップ１（ＤＶＤドライブ）から読み出されたストリームを入力とし、これをそのままメモリ７に出力すると共に、それに並行してＮａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出を行うものであり、そのための手段として、Ｎａｖｉ  Ｐａｃｋパーサ４には、例えば図２に示すような構成が設けられる。
【００２５】
すなわち図２において、入出力をつなぐラインに並行にＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出するためのストリームパーサ２１と、入力されるストリームを２０４８バイトのパック単位にカウントする入力パックカウンタ２２と、ストリームパーサ２１によりＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出した際に入力パックカウンタ２２のカウンタ値を保持するカウンタバッファ２３が設けられる。
【００２６】
さらに、ストリームパーサ２１で行われるＮａｖｉｇａｔｉｏｎ  Ｐａｃｋ検出は、パックに付加されているヘッダー情報との一致を取ることで行われる。そこで図３には、それらの情報の所在が示されている。
【００２７】
すなわち、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋには、先頭に４バイトのＰａｃｋ  Ｈｅａｄｅｒが設けられ、次に２４バイトのＳｙｓｔｅｍ  Ｈｅａｄｅｒが設けられ、さらに９８６バイトのＰＣＩ（Ｐｒｅｓｅｎｔａｔｉｏｎ  Ｃｏｎｔｒｏｌ  Ｉｎｆｏｒｍａｔｉｏｎ）と、１０２４バイトのＤＳＩ（Ｄａｔａ  Ｓｅａｒｃｈ  Ｉｎｆｏｒｍａｔｉｏｎ）が設けられる。また、これらのＰＣＩとＤＳＩの先頭には、それぞれ６バイトのＰａｃｋｅｔ  Ｈｅａｄｅｒと１バイトのｓｕｂ  ｓｔｒｅａｍ  ｉｄが設けられている。
【００２８】
そしてＮａｖｉｇａｔｉｏｎ  Ｐａｃｋでは、Ｓｙｓｔｅｍ  Ｈｅａｄｅｒの先頭の４バイトに所在するｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅに  “０００００１ｂｂ〔ｈ〕”のコードが設けられる。またＰＣＩの先頭のＰａｃｋｅｔ  Ｈｅａｄｅｒの先頭の３バイトに所在するｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘに  “０００００１〔ｈ〕”のコードと、続く１バイトに所在するｓｔｒｅａｍ  ｉｄに  “１０１１１１１１〔ｂ〕”のコードが設けられる。さらにＰＣＩのｓｕｂ  ｓｔｒｅａｍ  ｉｄに  “００００００００〔ｂ〕”のコードが設けられる。
【００２９】
従って、ストリームパーサ２１では、これらのコードが全て一致したときに、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋであると判断し、検出信号を出力する。なお、これらの一致の検出は、例えばデータバッファと論理ゲート回路等のハードロジックによって行うことができる。
【００３０】
すなわち、ストリームの先頭から１５〜１８バイト目、３９〜４２バイト目、及び４５バイト目を検出し、これらの値と上述のコードとの一致を論理ゲート回路で判別することにより、一致の検出が行われる。ここでストリームの先頭は、例えばプロセッサ３から別途供給される信号により、判別することができるものである。
【００３１】
そして上述のＮａｖｉ  Ｐａｃｋパーサ４を使用した場合に、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの転送されたメモリ７のアドレスは、メモリ７の転送開始アドレスと、カウンタバッファ２３より取得した入力パックカウント値から１を引いた値に２０４８を掛けた値を加算することで求められる。
【００３２】
すなわち、例えばＤＶＤの再生ストリームにおいては、全てのパックは２０４８バイトで構成されたものであり、従って転送を開始したときのメモリ７の転送開始アドレスに、カウンタバッファ２３より取得した入力パックカウント値に２０４８を掛けた値を加算することで、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの転送されたメモリ７のアドレスを求めることができる。
【００３３】
なお、このような処理は、例えばＣＰＵ８においてソフトウェアで行うことができる。さらにＣＰＵ８では、メモリアドレスを算出した後、このメモリ領域を読み、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの解析を行うことができる。そして、この解析されたＮａｖｉｇａｔｉｏｎ  ｐａｃｋの制御情報に従って、Ｖｉｄｅｏ  Ｐａｃｋ、Ａｕｄｉｏ  Ｐａｃｋ等の処理（デマルチプレクス、デコード、表示等）が行われる。
【００３４】
すなわち、デマルチプレクサ５で解析され、分離されたＶｉｄｅｏ、Ａｕｄｉｏストリームは、それぞれ映像復号化装置９、音声復号化装置１０に送られて、デコード、表示等の処理が行われる。また、メモリ７の管理のためにメモリコントローラ１１が設けられており、各ブロックからのメモリ７に対するデータアクセスの制御等が行われる。
【００３５】
このようにして、ディスク２から読み出されたストリームを解析した映像信号（Ｖｉｄｅｏ）及び音声信号（Ａｕｄｉｏ）の再生が行われる。そしてこれらのコンテンツ情報の再生は、上述のＣＰＵ８で解析されたＮａｖｉｇａｔｉｏｎ  ｐａｃｋの制御情報に従って行われるものである。
【００３６】
さらにカウンタバッファ２３は、例えば図４に示すようにカウンタ値を複数保持できるように構成される。なお、図はバッファ数を８としたときの例である。このバッファ数は、Ｎａｖｉ  Ｐａｃｋパーサに入力されるストリーム中のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋの出現頻度を考慮して定められる。
【００３７】
すなわち、バッファ数が不十分な場合には、ＣＰＵ８がＮａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出割り込みを受け、カウンタバッファ２３を読みに行く前に、Ｎａｖｉ  Ｐａｃｋパーサ４が次のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出した場合に、この情報を取り逃してしまう状況が発生する。そこで、カウンタバッファ２３に複数バッファを持たせることで、この状況を回避することができる。
【００３８】
そして図４の例では、それぞれのバッファに０００〜１１１のポインタ値が振られており、対応するバッファにＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが検出されたときの入力パックカウンタ２２の値が書き込まれる。なお図では、ポインタ値１０１の示すＰａｃｋ  ｎが時間的に最も古い入力パックカウント値を表し、１１０、１１１、０００と順に、時間の新しい入力パックカウント値を保持している。そして最新の入力パックカウント値は１００の示すＰａｃｋ  ｎ＋７である。
【００３９】
また、書き込みポインタは、次にＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出したときに、どのバッファに書き込まれるかを示すポインタであり、上述の場合には１０１を指す。さらに読み出しポインタは、次に読み出すバッファの位置を表しており、上述の場合には０１０を指す。これらの書き込みポインタはハードウェアが更新し、読み出しポインタはＣＰＵが更新する。
【００４０】
なお、図４では、ポインタ値１０１〜００１の示す入力パックカウント値は、ＣＰＵ８がすでに読み出したことを表し、ポインタ値０１０〜１００の示す入力パックカウント値は、まだ読み出していないことを表している。
【００４１】
さらに、書き込みポインタの更新方法を図５に示す。すなわち図５において、ステップ〔１〕でＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが検出されたか否か判断され、検出されていないとき（Ｎｏ）はこのステップ〔１〕が繰り返される。これに対して、ステップ〔１〕でＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが検出されたとき（Ｙｅｓ）は、ステップ〔２〕で後述するバッファフルのフラグが立っているか否か判断される。
【００４２】
そしてステップ〔２〕でバッファフルのフラグが立っているとき（Ｙｅｓ）は、ステップ〔３〕で書き込みポインタＷＰが値ＷＰのままとされて、入力パックカウント値の書き込み保存は行われない。これに対して、ステップ〔２〕でバッファフルのフラグが立っていないとき（Ｎｏ）は、ステップ〔４〕で書き込みポインタＷＰが値ＷＰ＋１に更新される。
【００４３】
このようにして、書き込みポインタＷＰの値が更新される。さらに、ステップ〔５〕で書き込みポインタＷＰが読み出しポインタＲＰと等しくなっているか否か判断され、等しくなっているとき（Ｙｅｓ）は、ステップ〔６〕でバッファフルのフラグが立てられる。
【００４４】
これにより書き込みポインタＷＰは、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋが検出されるごとに、読み出しポインタＲＰの値を超えないように１ずつ更新されて行くものである。ただしバッファがフルの状態では、書き込みポインタＷＰの更新は起こらない。この状態は、読み出しポインタＲＰの更新の頻度が、書き込みポインタＷＰの更新の頻度より少ない場合に発生するものである。
【００４５】
すなわち上述の構成では、例えば読み出しポインタＲＰが０、書き込みポインタＷＰが７の状態で、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出した場合にバッファはフルになる。このとき、バッファには新しいカウント値は書き込まれることはなく、古い情報が保持される。なお、ＣＰＵ８はこのような状態にならないようにバッファを制御する必要があり、また、ＣＰＵ８の性能及びＮａｖｉｇａｔｉｏｎ  Ｐａｃｋの出現頻度等を考慮してカウンタバッファ２３の数を選択する必要がある。
【００４６】
さらに、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出から始まる、ＣＰＵ８を介したカウンタバッファ２３の制御フローを図６に示す。
【００４７】
すなわち、Ｎａｖｉ  Ｐａｃｋパーサ４でＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが検出されると、ＣＰＵ８に対して検出割り込みが発行される。そして図６において、ＣＰＵ８では、ステップ〔１１〕においてＮａｖｉｇａｔｉｏｎ  Ｐａｃｋ検出割り込みの有無を判別し、検出割り込みがないとき（Ｎｏ）はステップ〔１１〕が繰り返されると共に、検出割り込みがあったとき（Ｙｅｓ）は、ステップ〔１２〕に進められる。
【００４８】
ステップ〔１２〕では、検出割り込みを受けてカウンタバッファの書き込みポインタＷＰと読み出しポインタＲＰを読み出す。続いて、ステップ〔１３〕〜〔１５〕で参照バッファの数Ｎを計算する。すなわち、ステップ〔１３〕で「ＷＰ−ＲＰ＞０」であるか否か判断され、「ＷＰ−ＲＰ＞０」であるとき（Ｙｅｓ）は、ステップ〔１４〕で「Ｎ＝ＷＰ−ＲＰ」とされ、「ＷＰ−ＲＰ＞０」でないとき（Ｎｏ）は、ステップ〔１５〕で「Ｎ＝（ＷＰ−ＲＰ）＋８」とされる。
【００４９】
このようにして、最新の情報がどのバッファに書き込まれたかが計算される。さらにステップ〔１６〕で読み出しポインタＲＰの示すバッファから、算出した数Ｎ個分のバッファに格納されている入力パックカウント値を読み出す。読み出し後、その情報は不要になるので、ステップ〔１７〕で読み出しポインタＲＰを更新する。この更新値は、ＣＰＵ８が最新の情報をすべて読んだ場合であれば、書き込みポインタＷＰの値になる。
【００５０】
そしてステップ〔１８〕でメモリ７中のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋのアドレスが算出される。なお、このアドレスの算出は前述した通り、メモリ７の転送開始アドレスと、カウンタバッファ２３より取得した入力パックカウント値から１を引いた値に２０４８を掛けた値を加算することで求められる。
【００５１】
さらにＣＰＵ８では、メモリアドレスを算出した後、このメモリ領域を読み、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの解析が行われる。そして、この解析されたＮａｖｉｇａｔｉｏｎ  ｐａｃｋの制御情報に従って、Ｖｉｄｅｏ  Ｐａｃｋ、Ａｕｄｉｏ  Ｐａｃｋ等の処理（デマルチプレクス、デコード、表示等）が行われる。
【００５２】
従ってこの実施形態において、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持するようにしたことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができる。
【００５３】
これによって、従来の装置では、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出をデマルチプレクサで行うために、検出のタイミングが遅くなる問題があり、また、ＣＰＵが取得できたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを解析中に、次のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが読み出された場合には、新たに取得されたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋは無視され、そこに示された制御を実行することができないなどの問題を生じていたものを、本発明によればこれらの問題点を容易に解消することができるものである。
【００５４】
さらに、図７には、本発明による情報処理装置、情報処理方法、再生装置及び再生方法の他の実施形態を示す。すなわち図７において、光学ピックアップ１〜プロセッサ３２によりＤＶＤドライブとデマルチプレクサ間にＮａｖｉ  Ｐａｃｋパーサ４を持ち、さらにこのＮａｖｉ  Ｐａｃｋパーサ４に併設される専用メモリ１２を持つ。
【００５５】
そしてＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを検出した際には、これを専用メモリ１２に格納し、割り込み等でＣＰＵ８に通知を行う。この割り込みを受けてＣＰＵ８では、専用メモリ１２を、バス１３を介して読むことで、Ｎａｖｉｇａｔｉｏｎ  ｐａｃｋの解析を行う。この方法は、ストリームをＤＶＤから読み出した直後に解析し、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出を行う他、解析用に専用メモリ１２を設けているため、解析を早くに行うことができるものである。
【００５６】
ただしこの方法では、ＣＰＵ８が取得できたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを解析中に、次のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが読み出された場合を考慮すると、専用メモリ１２の容量を極めて多く持つ必要があり、ローカルなメモリの回路規模を増大させてしまうという問題は有している。
【００５７】
さらに上述の実施形態では、カウンタバッファ２３には、入力されるストリームを２０４８バイトのパック単位にカウントしたカウンタ値を保持することとしたが、ここにはＮａｖｉｇａｔｉｏｎ  Ｐａｃｋの書き込まれたメモリ７のアドレスを検出して保持するようにしても良い。これによれば、カウンタバッファ２３の記憶容量は多少増加するが、上述した図６の制御フローに示すステップ〔１８〕でのＮａｖｉｇａｔｉｏｎ  Ｐａｃｋのアドレスの算出は不要になる。
【００５８】
こうして上述の情報処理装置によれば、ストリーム中の特定のパターンにより制御情報のパックを判別する手段を備え、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持する手段を設けることにより、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで入力される場合において制御情報のパックの解析を任意のタイミングで行うことができるものである。
【００５９】
また、上述の情報処理方法によれば、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持することにより、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで入力される情報処理装置において制御情報のパックの解析を任意のタイミングで行うことができるものである。
【００６０】
さらに上述の再生装置によれば、ストリーム中の特定のパターンにより制御情報のパックを判別する手段を備え、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持する手段を設けることにより、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで記録された記録媒体の再生において制御情報のパックの解析を任意のタイミングで行うことができるものである。
【００６１】
また、上述の再生方法によれば、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持することにより、コンテンツ情報のパックと共に制御情報のパックが単一のストリームで記録された記録媒体を再生する再生装置において制御情報のパックの解析を任意のタイミングで行うことができるものである。
【００６２】
なお本発明は、上述の説明した実施の形態に限定されるものではなく、本発明の精神を逸脱することなく種々の変形が可能とされるものである。
【００６３】
【発明の効果】
従って請求項１の発明によれば、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持するようにしたことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００６４】
また、請求項２の発明によれば、メインメモリ中の記憶位置を特定する値を検出して保持する手段は、入力されるストリームのパックの数をカウントする手段と、パックカウント値を保持するバッファとを有することによって、少ない記憶容量でメインメモリ中の記憶位置を特定することができるものである。
【００６５】
請求項３の発明によれば、メインメモリ中の記憶位置のアドレスをバッファに保持されたパックカウント値からの演算により算出することによって、簡単な演算でメインメモリ中の記憶位置を特定することができるものである。
【００６６】
請求項４の発明によれば、メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行うことによって、容易にメインメモリ中の記憶位置を特定することができるものである。
【００６７】
請求項５の発明によれば、パックカウント値を保持するバッファを複数持つことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００６８】
請求項６の発明によれば、ストリーム中の特定のパターンにより制御情報のパックを判別する手段は、ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出する手段を含むことによって、簡単な構成でストリーム中の制御情報のパックの判別を行うことができるものである。
【００６９】
さらに請求項７の発明によれば、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持するようにしたことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００７０】
また、請求項８の発明によれば、メインメモリ中の記憶位置を特定する値の検出及び保持は、入力されるストリームのパックの数をカウントし、パックカウント値をバッファに保持することによって、少ない記憶容量でメインメモリ中の記憶位置を特定することができるものである。
【００７１】
請求項９の発明によれば、メインメモリ中の記憶位置のアドレスをバッファに保持されたパックカウント値からの演算により算出することによって、簡単な演算でメインメモリ中の記憶位置を特定することができるものである。
【００７２】
請求項１０の発明によれば、メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行うことによって、容易にメインメモリ中の記憶位置を特定することができるものである。
【００７３】
請求項１１の発明によれば、パックカウント値を保持するバッファを複数持つことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００７４】
請求項１２の発明によれば、ストリーム中の特定のパターンにより制御情報のパックの判別は、ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出して行うことによって、簡単な構成でストリーム中の制御情報のパックの判別を行うことができるものである。
【００７５】
さらに請求項１３の発明によれば、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持するようにしたことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００７６】
また、請求項１４の発明によれば、メインメモリ中の記憶位置を特定する値を検出して保持する手段は、入力されるストリームのパックの数をカウントする手段と、パックカウント値を保持するバッファとを有することによって、少ない記憶容量でメインメモリ中の記憶位置を特定することができるものである。
【００７７】
請求項１５の発明によれば、メインメモリ中の記憶位置のアドレスをバッファに保持されたパックカウント値からの演算により算出することによって、簡単な演算でメインメモリ中の記憶位置を特定することができるものである。
【００７８】
請求項１６の発明によれば、メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行うことによって、容易にメインメモリ中の記憶位置を特定することができるものである。
【００７９】
請求項１７の発明によれば、パックカウント値を保持するバッファを複数持つことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００８０】
請求項１８の発明によれば、ストリーム中の特定のパターンにより制御情報のパックを判別する手段は、ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出する手段を含むことによって、簡単な構成でストリーム中の制御情報のパックの判別を行うことができるものである。
【００８１】
さらに請求項１９の発明によれば、ストリーム中の特定のパターンにより制御情報のパックを判別し、ストリームをそのままメインメモリに記憶させると共に、制御情報のパックが判別された際のメインメモリ中の記憶位置を特定する値を検出して保持するようにしたことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００８２】
また、請求項２０の発明によれば、メインメモリ中の記憶位置を特定する値の検出及び保持は、入力されるストリームのパックの数をカウントし、パックカウント値をバッファに保持することによって、少ない記憶容量でメインメモリ中の記憶位置を特定することができるものである。
【００８３】
請求項２１の発明によれば、メインメモリ中の記憶位置のアドレスをバッファに保持されたパックカウント値からの演算により算出することによって、簡単な演算でメインメモリ中の記憶位置を特定することができるものである。
【００８４】
請求項２２の発明によれば、メインメモリ中の記憶位置のアドレスの算出は「転送開始アドレス値＋１パックのバイト数×（パックカウント値−１）」の演算により行うことによって、容易にメインメモリ中の記憶位置を特定することができるものである。
【００８５】
請求項２３の発明によれば、パックカウント値を保持するバッファを複数持つことによって、制御情報のパックの解析を任意のタイミングで行うことができると共に、新たに入力された制御情報のパックの情報も保持して解析することができるものである。
【００８６】
請求項２４の発明によれば、ストリーム中の特定のパターンにより前記制御情報のパックの判別は、前記ストリーム中の制御情報のパックに設けられるｓｙｓｔｅｍ  ｈｅａｄｅｒ  ｓｔａｒｔ  ｃｏｄｅ、ｐａｃｋｅｔ  ｓｔａｒｔ  ｃｏｄｅ  ｐｒｅｆｉｘ、ｓｔｒｅａｍ  ｉｄ、ｓｕｂ  ｓｔｒｅａｍ  ｉｄの全ての値を検出して行うことによって、簡単な構成でストリーム中の制御情報のパックの判別を行うことができるものである。
【００８７】
これによって、従来の装置では、Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋの検出をデマルチプレクサで行うために、検出のタイミングが遅くなる問題があり、また、ＣＰＵが取得できたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋを解析中に、次のＮａｖｉｇａｔｉｏｎ  Ｐａｃｋが読み出された場合には、新たに取得されたＮａｖｉｇａｔｉｏｎ  Ｐａｃｋは無視され、そこに示された制御を実行することができないなどの問題を生じていたものを、本発明によればこれらの問題点を容易に解消することができるものである。
【図面の簡単な説明】
【図１】本発明による情報処理装置、情報処理方法、再生装置及び再生方法を適用したＤＶＤ再生装置の一実施形態の構成を示すブロック図である。
【図２】その要部の構成を示す一実施形態のブロック図である。
【図３】その説明のための図である。
【図４】その説明のための図である。
【図５】その動作の説明のためのフローチャート図である。
【図６】その動作の説明のためのフローチャート図である。
【図７】本発明による情報処理装置、情報処理方法、再生装置及び再生方法を適用したＤＶＤ再生装置の他の実施形態の構成を示すブロック図である。
【図８】ＤＶＤストリームの階層構造を示す線図である。
【図９】従来のＤＶＤ再生装置の構成を示すブロック図である。
【符号の説明】
１…光学ピックアップ、２…ディスク、３…プロセッサ、４…Ｎａｖｉｇａｔｉｏｎ  Ｐａｃｋ検出機構（Ｎａｖｉ  Ｐａｃｋパーサ）、５…デマルチプレクサ、６…データバス、７…メモリ、８…ＣＰＵ、９…映像復号化装置、１０…音声復号化装置、１１…メモリコントローラ、２１…ストリームパーサ、２２…入力パックカウンタ、２３…カウンタバッファ
【図１】
2005004898.tif 000003
【図２】
2005004898.tif 000004
【図３】
2005004898.tif 000005
【図４】
2005004898.tif 000006
【図５】
2005004898.tif 000007
【図６】
2005004898.tif 000008
【図７】
2005004898.tif 000009
【図８】
2005004898.tif 000010
【図９】
2005004898.tif 000011