(57)【要約】【課題】より簡単に、論理ブロックを単位として記録媒体に記録され、連続して再生される範囲のデータを単位とするフォーマットの動画像の動画像データをネットワークを介して提供し、動画像データを再生する。【解決手段】再生アプリケーション用バッファ１６４は、サーバ１０１から提供された動画像データから、動画像データにおけるフォーマットの単位のつながりと配置とを記述するナビゲーションパックを抽出する。フロー制御モジュール１８４は、抽出されたナビゲーションパックから、再生しようとする範囲の動画像データを記録しているLogical Blockを特定する。読み出し制御モジュール１８２は、特定されたLogical Blockに記録されている動画像データの提供を、ネットワーク１０３を介してサーバ１０１に要求する。本発明は、パーソナルコンピュータに適用できる。【選択図】図１０
2007317264.tif 000002
【特許請求の範囲】
【請求項１】
論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置と、前記サーバから提供された前記動画像データを再生する情報処理装置とからなる再生システムにおいて、
前記情報処理装置は、
前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出する抽出手段と、
抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定する特定手段と、
特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する要求手段と
を備え、
前記提供装置は、
前記論理ブロックを単位として前記動画像データを記録する記録手段と、
前記ネットワークを介して前記情報処理装置から要求された前記動画像データの前記論理ブロックからの読み出しを制御する読み出し制御手段と、
前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する提供手段と
を備える再生システム。
【請求項２】
前記記録媒体は、DVD（Digital Versatile Disc）であり、
前記フォーマットは、DVDビデオフォーマットであり、
前記単位情報は、ナビゲーションパックである
請求項１に記載の再生システム。
【請求項３】
論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置から提供された前記動画像データを再生する情報処理装置において、
前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出する抽出手段と、
抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定する特定手段と、
特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する要求手段と
を備える情報処理装置。
【請求項４】
前記記録媒体は、DVDであり、
前記フォーマットは、DVDビデオフォーマットであり、
前記単位情報は、ナビゲーションパックである
請求項３に記載の情報処理装置。
【請求項５】
前記動画像データにおける前記フォーマットの単位は、Cellである
請求項４に記載の情報処理装置。
【請求項６】
前記動画像データにおける前記フォーマットの単位は、Interleaved Unitである
請求項４に記載の情報処理装置。
【請求項７】
論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置から提供された前記動画像データを再生する情報処理方法において、
前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出し、
抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定し、
特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する
ステップを含む情報処理方法。
【請求項８】
論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置から提供された前記動画像データを再生する処理を、コンピュータに行わせるプログラムにおいて、
前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出し、
抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定し、
特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する
ステップを含むプログラム。
【請求項９】
論理ブロックを単位として第１の記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置において、
前記論理ブロックを単位として前記動画像データを記録する記録手段と、
提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御する読み出し制御手段と、
前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する提供手段と
を備える提供装置。
【請求項１０】
前記第１の記録媒体は、DVDであり、
前記フォーマットは、DVDビデオフォーマットであり、
前記単位情報は、ナビゲーションパックである
請求項９に記載の提供装置。
【請求項１１】
前記記録手段は、前記第１の記録媒体と異なる第２の記録媒体からなり、前記第１の記録媒体における前記論理ブロックを単位として前記動画像データを記録する
請求項９に記載の提供装置。
【請求項１２】
前記記録手段は、ハードディスクからなり、DVDである前記第１の記録媒体における前記論理ブロックを単位として前記動画像データを記録する
請求項１１に記載の提供装置。
【請求項１３】
前記動画像データにおける前記フォーマットの単位は、Cellである
請求項９に記載の提供装置。
【請求項１４】
前記動画像データにおける前記フォーマットの単位は、Interleaved Unitである
請求項９に記載の提供装置。
【請求項１５】
論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データを、前記論理ブロックを単位として記録手段に記録し、記録している動画像データをネットワークを介して提供する提供方法において、
提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御し、
前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する
ステップを含む提供方法。
【請求項１６】
論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データを、前記論理ブロックを単位として記録手段に記録し、記録している動画像データをネットワークを介して提供する処理を、コンピュータに行わせるプログラムにおいて、
提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御し、
前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は再生システム、情報処理装置および方法、プログラム、並びに提供装置および方法に関し、特に、ネットワークを介して動画像データを提供し、動画像データを再生することができるようにした再生システム、情報処理装置および方法、プログラム、並びに提供装置および方法に関する。
【背景技術】
【０００２】
インターネットといった公的なネットワークや、家庭内での私的なネットワークの発展により、画像のコンテンツまたは音声のコンテンツを視聴する場合、そのコンテンツのデータを提供する装置が、コンテンツを再生する装置から離れていても、ネットワーク経由でそのデータをコンテンツを再生する装置に送ることで、そのコンテンツを視聴することが可能である。
【０００３】
例えば、ビデオカメラレコーダで記録した画像を家庭内で楽しむ場合、書斎にあるパーソナルコンピュータに、家族で旅行に行った場合に撮影された画像のデータがMPEG（Moving Pictures Experts Group）−2形式で保存されており、その画像を寝室にあるパーソナルコンピュータまたはプレーヤで再生し視聴しようとしたとき、書斎のパーソナルコンピュータと寝室のパーソナルコンピュータまたはプレーヤとがネットワークで接続されていれば、その画像の視聴は可能である。
【０００４】
このような再生システムの多くは、パーソナルコンピュータをベースに構築されていることから、このような再生システムにおいて、ファイルと呼ばれる単位により１つのコンテンツが扱われる。
【０００５】
一方、DVD（Digital Versatile Disc）ビデオフォーマット（DVD Video Format）は、画像を記録するフォーマットとして、広く普及しているフォーマットである。
【０００６】
DVDビデオフォーマット方式のデータが記録された記録媒体であるディスクの多くにおいて、コンテンツがタイトルという単位で使用者に示される。つまり、使用者は、再生したいコンテンツをタイトルで選択する。
【０００７】
DVDビデオフォーマット方式のデータでタイトルを再生する場合、そのタイトルの再生に必要な画像のデータや音声のデータは、１つのファイルとして記録されているとは限らない。あるファイルに格納されている画像のデータや音声のデータの一部が、１つのタイトルとして扱われる場合もあれば、複数のファイルに格納されている画像のデータや音声のデータの一部が、１つのタイトルとして扱われる場合もある。
【０００８】
そこで、DVDビデオフォーマット方式のデータにおいて、あるタイトルが指定された場合、そのタイトルでは、どのような順序で画像のデータや音声のデータが再生されるかを示す再生制御情報が存在する。この再生制御情報は、画像のデータや音声のデータが記録されたファイルとは別なファイルとして記録されている。
【０００９】
つまり、DVDビデオフォーマットでは、画像のデータや音声のデータが格納されているファイルの他に、再生制御情報が格納されているファイルが必要とされる。
【００１０】
また、DVDビデオフォーマットでは、画像のデータや音声のデータが格納されているファイルに、一部、再生制御情報が格納されていることから、単純に、再生制御情報が格納されているファイルのその再生制御情報を解析し、そこに指示された通りの順番でファイルに格納されている画像のデータや音声のデータを再生すればよいというものではない。
【００１１】
図１は、従来の、DVDビデオフォーマット方式のデータを再生する再生システムの構成を示すブロック図である。再生システムは、光ディスクドライブ１１、ホストCPU（Central Processing Unit）１２、再生アプリケーション用バッファ１３、デコーダ用バッファ１４、およびデコーダ１５から構成される。
【００１２】
光ディスクドライブ１１は、ホストCPU１２の制御に基づいて、装着されているDVDから、DVDのLogical Block単位のデータをストリームデータとして読み出して、読み出したストリームデータを再生アプリケーション用バッファ１３に供給する。
【００１３】
ホストCPU１２は、光ディスクドライブ１１、再生アプリケーション用バッファ１３、デコーダ用バッファ１４、およびデコーダ１５を制御する。
【００１４】
再生アプリケーション用バッファ１３は、ホストCPU１２により、ストリームデータに含まれる再生制御情報が参照されるように、光ディスクドライブ１１から供給されたストリームデータを一時的に記憶する。再生アプリケーション用バッファ１３は、記憶しているストリームデータをデコーダ用バッファ１４に供給する。デコーダ用バッファ１４は、デコーダ１５における復号の処理の対象となるストリームデータを途切れさせないようにストリームデータを一時的に記憶する。
【００１５】
デコーダ１５は、デコーダ用バッファ１４に記憶されているストリームデータを復号して、復号の結果得られた画像のデータおよび音声のデータを出力する。
【００１６】
ホストCPU１２は、プログラムを実行することにより、読み出し制御モジュール３１、デコーダ制御モジュール３２、フロー制御モジュール３３、およびナビゲーション解析モジュール３４を実現する。
【００１７】
読み出し制御モジュール３１は、フロー制御モジュール３３の制御に基づいて、光ディスクドライブ１１に、DVDのLogical Block単位のデータの読み出しを要求する。デコーダ制御モジュール３２は、フロー制御モジュール３３の制御に基づいて、デコーダ１５のストリームデータの復号を制御する。
【００１８】
フロー制御モジュール３３は、再生アプリケーション用バッファ１３に記憶されているストリームデータに含まれる再生制御情報を参照して、読み出し制御モジュール３１にLogical Blockを単位とするデータの読み出しを指示する。フロー制御モジュール３３は、再生アプリケーション用バッファ１３に記憶されているストリームデータを参照して、デコーダ制御モジュール３２を制御する。
【００１９】
フロー制御モジュール３３は、読み出し制御モジュール３１とデコーダ制御モジュール３２とを調停する。例えば、デコーダ１５によるストリームデータの復号の停止中に、新たにデータを読み出してからそのデータからなるストリームデータの復号を開始する場合、フロー制御モジュール３３は、所定の量のデータが再生アプリケーション用バッファ１３に供給された旨を示す、読み出し制御モジュール３１からの通知を受けてから、デコーダ制御モジュール３２にストリームデータの復号の開始を指示する。
【００２０】
ナビゲーション解析モジュール３４は、再生制御情報を解析して、DVDから読み出されるデータのうち、シームレスに（連続して）再生できる範囲を特定し、特定した範囲をフロー制御モジュール３３に指定する。
【００２１】
図２は、DVDから読み出されるストリームデータであるDVDビデオストリームのうち、シームレスに再生できる範囲の例を示す図である。図２において、範囲Aおよび範囲Bが、シームレスに再生できる範囲である。
【００２２】
シームレスに再生できる範囲について、より詳細に説明する。
【００２３】
図３は、DVDビデオフォーマット方式のデータにおけるタイトルの構成の例を示す図である。DVDビデオフォーマット方式において、タイトルは、１つ以上のPGC（Program Chain）から構成される。
【００２４】
図３の上側に示されるように、例えば、タイトル＃１は、PGC#1、PGC#2、およびPGC#3から構成されている。
【００２５】
タイトル＃１が再生される場合、条件により、PGC#1が再生された後、PGC#2が再生されるときと、PGC#1が再生された後、PGC#3が再生されるときがある。そのいずれであるかは、PGC#1の再生が終了した後に確定される。例えば、使用者により、PGC#2またはPGC#3の何れか一方が選択される場合、再生システムの設定により、PGC#2またはPGC#3の何れか一方が選択される場合などがある。
【００２６】
この場合、PGC#1、PGC#2、およびPGC#3のそれぞれが、連続して再生できる、すなわちシームレスに再生できる範囲である。このとき、ナビゲーション解析モジュール３４は、シームレスに（連続して）再生できる範囲として、PGC#1、PGC#2、およびPGC#3のそれぞれを特定する。
【００２７】
図３の下側に示されるように、PGC、例えば、PGC#1は、複数のCell、例えばCell#1などから構成される。Cellのデータは、DVDにおける記録の単位であるLogical Block（論理ブロック）を単位としてDVDに記録される。１つのLogical Blockには、１つのパケットとして2048バイトのデータが配置される。１つのLogical Blockの１つのパケットは、画像のデータを格納するか、音声のデータを格納するか、または再生制御情報を格納する。画像のデータ、音声のデータ、または再生制御情報のうち、いずれのデータを格納しているかを示すIDがそれぞれのパケットに付加されている。このIDを参照することで、そのパケットに格納されているデータが、画像のデータ、音声のデータ、または再生制御情報のうちのいずれであるかを知ることができる。
【００２８】
図４は、PGC#1とLogical Blockとの関係を示す図である。PGCは、１つ以上のCellから構成され、例えば、PGC#1は、Cell#1乃至Cell#6から構成される。Cellは、１つ以上のVOBU（Video object Unit）から構成され、例えば、Cell#1は、VOBU#1乃至VOBU#nから構成される。
【００２９】
VOBUは、約１秒間の画像の再生に必要なデータを含む。また、VOBUには、再生制御情報が埋め込まれている。すなわち、DVDビデオフォーマット方式のデータの再生には、適切なタイミングで、DVDから読み出されるデータからなるストリームデータに含まれる再生制御情報を参照する必要がある。
【００３０】
VOBU#1は、複数のLogical Blockに記録される。
【００３１】
すなわち、DVDから読み出されるデータからなるストリームデータは、Logical Blockを単位としたデータを配列してなる。
【００３２】
ナビゲーション解析モジュール３４は、最初にPGC#1の先頭のCellの番号と最後のCellの番号とから、シームレスに再生できる範囲としてPGC#1をフロー制御モジュール３３に指定する。この時点では、PGC#1の次に、PGC#2またはPGC#3のいずれが再生されるかは未定なので、シームレスに再生できる範囲としてPGC#1の再生に必要なVOBUの範囲が指定されることになる。
【００３３】
フロー制御モジュール３３は、ナビゲーション解析モジュール３４から指定されたCellの範囲を、VOBUに分けて、読み出し制御モジュール３１に、そのVOBUのデータの読み出しを要求する。例えば、ナビゲーション解析モジュール３４から指定されたCellの範囲が、Cell#1乃至Cell#10である場合、各Cellの再生に必要なストリームデータの範囲は、C_PBIから導き出すことができる。C_PBIにそのCellを再生するのに最初に必要となるVOBUの先頭アドレスと最後に必要となるVOBUの終了アドレスがLogical Block番号単位で記述されている。
【００３４】
ここで、Logical Block番号は、Logical Blockを特定するアドレスである。
【００３５】
従って、ナビゲーション解析モジュール３４から指定されたCellの範囲を再生するのに必要なVOBUの範囲をLogical Block単位で特定することができる。
【００３６】
このように、フロー制御モジュール３３は、ナビゲーション解析モジュール３４から指定されたCellの範囲を、Logical Block単位で特定し、読み出し制御モジュール３１に、Logical Block単位で特定した、Logical Blockの範囲の読み出しを要求する。
【００３７】
読み出し制御モジュール３１は、フロー制御モジュール３３から読み出しが要求されたLogical Blockの範囲を、Logical Block単位で、光ディスクドライブ１１に読み出させて、読み出させたデータを再生アプリケーション用バッファ１３に記憶させる。
【００３８】
フロー制御モジュール３３は、再生アプリケーション用バッファ１３に記憶されたデータから、再生制御情報を取得する。再生アプリケーション用バッファ１３に記憶されたデータは、デコーダ用バッファ１４に送られる。
【００３９】
デコーダ用バッファ１４は、所定の量のデータを記憶すると、その旨をホストCPU１２に通知する。その通知を受けたホストCPU１２のデコーダ制御モジュール３２は、デコーダ１５に、復号の開始を指示する。デコードの開始が指示されたデコーダ１５は、デコーダ用バッファ１４からデータを読み込んで、読み込んだデータの復号を開始する。
【００４０】
また、デコーダ制御モジュール３２は、再生、停止、一時停止、変速再生などの使用者の要求に応じて、デコーダ１５の復号を制御する。
【００４１】
さらに、DVDビデオフォーマット方式において、Angle機能が採用されている。Angle機能により、例えば、進行方向に対して右側と左側の両方の、電車の車窓の画像を記録し、使用者の選択によりいずれかの画像が再生できる。この場合、車窓の画像の再生中に、使用者の操作により右側の車窓の画像と、左側の車窓の画像とを切り替えることができる。
【００４２】
図５は、DVDビデオフォーマット方式のデータのうち、Angle機能に対応したデータの配置の例を示す図である。図５において、Angle機能に対応したAngle BlockであるCell#2には、ILVU（Interleabed Unit）#1−1、ILVU#2−1、ILVU#1−2、ILVU#2−2、ILVU#1−3、ILVU#2−3、ILVU#1−4、およびILVU#2−4が配置される。
【００４３】
図６は、順に配置されるILVU#1−1、ILVU#2−1、ILVU#1−2、ILVU#2−2、ILVU#1−3、ILVU#2−3、ILVU#1−4、およびILVU#2−4の構成の詳細の例を示す図である。
【００４４】
例えば、ILVU#1−1は、VOBU#1乃至VOBU#5から構成され、ILVU#2−1は、VOBU#6乃至VOBU#10から構成され、ILVU#1−2は、VOBU#11乃至VOBU#15から構成され、ILVU#2−2は、VOBU#16乃至VOBU#20から構成される。同様に、ILVU#1−3は、VOBU#21乃至VOBU#25から構成され、ILVU#2−3は、VOBU#26乃至VOBU#30から構成され、ILVU#1−4は、VOBU#31乃至VOBU#35から構成され、ILVU#2−4は、VOBU#36乃至VOBU#40から構成される。
【００４５】
VOBU#1乃至VOBU#40のそれぞれは、１つのナビゲーション・パック、所定の数のビデオ・パック、および所定の数のオーディオ・パックからなる。ナビゲーション・パックには、再生制御情報が格納されている。ビデオ・パックには、画像のデータが格納されている。オーディオ・パックには、音声のデータが格納されている。
【００４６】
使用者がAngle機能におけるAngle#1を選択したままである場合、ILVU#1−1、ILVU#1−2、ILVU#1−3、およびILVU#1−4が順に再生に使用される。すなわち、使用者がAngle#1を選択したままである場合、VOBU#1乃至VOBU#5、VOBU#11乃至VOBU#15、VOBU#21乃至VOBU#25、およびVOBU#31乃至VOBU#35が順に再生に使用される。
【００４７】
また、使用者がAngle機能におけるAngle#2を選択したままである場合、ILVU#2−1、ILVU#2−2、ILVU#2−3、およびILVU#2−4が順に再生に使用される。
【００４８】
なお、VOBU#1乃至VOBU#40のそれぞれのナビゲーション・パックには、次に再生に使用すべきILVUのアドレスが、各Angle番号について、記述されている。例えば、ILVU#1−1の再生制御情報には、ILVU#1−2またはILVU#2−2のアドレスが記述されているが、ILVU#1−3、ILVU#2−3、ILVU#1−4、およびILVU#2−4のアドレスは記述されていない。
【００４９】
従って、Angle機能を正しく動作させるためには、DVDから読み出されるストリームデータに含まれる再生制御情報を読み出さなければならない。
【００５０】
図７乃至図９を参照して、Angle機能に対応したデータの再生を説明する。以下、データの再生を開始する前に、使用者が、Angle#1の再生を選択していたものとして説明する。
【００５１】
ナビゲーション解析モジュール３４は、シームレスに再生する範囲として、PGC#1をフロー制御モジュール３３に指定する。
【００５２】
フロー制御モジュール３３は、ナビゲーション解析モジュール３４から指定された範囲にInterleaved Block、すなわちILVUが存在するかを確認する。すなわち、フロー制御モジュール３３は、指定されたPGC#1を解析し、PGC#1のCell#2がAngle Blockであることを知る。
【００５３】
この場合、フロー制御モジュール３３は、以下の手順で、Cell#2の再生を制御する。
【００５４】
始めに、Angle BlockであるCell#2の前にCell#1が再生される。図７で示されるように、Cell#1の再生の状況に応じて、ILVU#1−1が光ディスクドライブ１１によって読み出されて、再生アプリケーション用バッファ１３を経由して、デコーダ用バッファ１４に送られる。再生アプリケーション用バッファ１３から、ILVU#1−1に含まれるナビゲーション・パックがフロー制御モジュール３３に取得される。
【００５５】
フロー制御モジュール３３は、ILVU#1−1のナビゲーション・パックを基に、読み出し制御モジュール３１に制御させることにより、光ディスクドライブ１１にILVU#1−2を読み出させて、ILVU#1−2を再生アプリケーション用バッファ１３に記憶させる。
【００５６】
デコーダ１５においてILVU#1−1の復号中に、使用者がAngle#2の再生を選択しなければ、ILVU#1−1に続いてILVU#1−2がデコーダ１５において復号される。
【００５７】
一方、デコーダ１５においてILVU#1−1の復号中に、使用者がAngle#2の再生を選択すると、ILVU#1−1に続いてILVU#2−2を復号しなければならない。
【００５８】
この場合、ILVU#1−1の復号の終了の直前に、使用者からAngle#2の再生が指示されると、ILVU#2−2の読み出しが間に合わず、ILVU#1−1の復号の終了後、再生が途切れてしまうことがある。
【００５９】
そこで、フロー制御モジュール３３は、ILVU#1−1およびILVU#1−2の読み出しを読み出し制御モジュール３１に指示する。
【００６０】
次に、ILVU#1−1の復号が進み、再生アプリケーション用バッファ１３に格納されているILVU#1−2のデータ量が所定の閾値以下になった場合、フロー制御モジュール３３は、ILVU#1−2を再生するのに必要なストリームデータに含まれている再生制御情報（ナビゲーション・パック）を参照して、ILVU#1−3またはILVU#2−3の読み出しを読み出し制御モジュール３１に指示して、ILVU#1−3またはILVU#2−3を再生アプリケーション用バッファ１３に記憶させる。
【００６１】
再生アプリケーション用バッファ１３に記憶されているILVU#1−2のデータ量が所定の閾値以下になるまで、使用者からAngle#2への変更の指示がなかった場合、図８に示されるように、ILVU#1−3が読み出されて、再生アプリケーション用バッファ１３に記憶され、使用者からAngle#2への変更の指示があった場合、図９に示されるように、ILVU#2−3が読み出されて、再生アプリケーション用バッファ１３に記憶される。
【００６２】
このように、DVDビデオフォーマット方式のデータにおいて、PGCと、Angle Blockを構成するILVUとは、VOBUを基本単位として構成されている。
【００６３】
従来、ＥＣＣ回路から出力される再生されたセクタ内に含まれるデータの属性情報をストリームディテクタで検出し、検出された属性情報を制御回路に送って、そのセクタと対応するよう記憶させ、Ｉピクチャのみの変速再生を行う場合は、制御回路がリングバッファに記憶されているデータのうち、属性情報に基づいてＩピクチャのデータだけを読み出すようリードポインタＲＰを制御し、リングバッファから読み出されたＩピクチャのデータはデコーダに供給されてデコードされディスプレイに表示されるようにしているものもある（例えば、特許文献１参照）。
【００６４】
【特許文献１】特開平８−７９６８７号公報
【発明の開示】
【発明が解決しようとする課題】
【００６５】
以上のように、DVDビデオフォーマット方式のデータを再生する場合に、再生制御情報が必要とされることから、DVDビデオフォーマット方式のデータをネットワークを介して送信する場合、サーバ内でDVDビデオフォーマット方式の画像のデータおよび音声のデータを再生（復号）し、その結果得られたデータをさらに、MPEG−TS（Transport Stream）に符号化して、符号化により得られたストリームをネットワークを介して伝送することも考えられる。
【００６６】
しかし、この方法では、ストリームを提供する相手、すなわちクライアントが複数存在するマルチクライアントに対応しようとする場合、対応しようとするクライアントの数と同じ数の符号化および復号するデバイスをサーバ側に実装する必要がある。
【００６７】
本発明は、このような状況に鑑みてなされたものであり、より簡単に、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供し、動画像データを再生することができるようにするものである。
【課題を解決するための手段】
【００６８】
本発明の一側面の再生システムは、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置と、前記サーバから提供された前記動画像データを再生する情報処理装置とからなる再生システムであって、前記情報処理装置が、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出する抽出手段と、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定する特定手段と、特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する要求手段とを備え、前記提供装置が、前記論理ブロックを単位として前記動画像データを記録する記録手段と、前記ネットワークを介して前記情報処理装置から要求された前記動画像データの前記論理ブロックからの読み出しを制御する読み出し制御手段と、前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する提供手段とを備える。
【００６９】
前記記録媒体を、DVD（Digital Versatile Disc）とし、前記フォーマットを、DVDビデオフォーマットとし、前記単位情報を、ナビゲーション・パックとすることができる。
【００７０】
本発明の第２の側面の情報処理装置は、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置から提供された前記動画像データを再生する情報処理装置であって、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出する抽出手段と、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定する特定手段と、特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する要求手段とを備える。
【００７１】
前記記録媒体を、DVDとし、前記フォーマットを、DVDビデオフォーマットとし、前記単位情報を、ナビゲーション・パックとすることができる。
【００７２】
前記動画像データにおける前記フォーマットの単位を、Cellとすることができる。
【００７３】
前記動画像データにおける前記フォーマットの単位を、Interleaved Unitとすることができる。
【００７４】
本発明の第２の側面の情報処理方法は、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置から提供された前記動画像データを再生する情報処理方法であって、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出し、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求するステップを含む。
【００７５】
本発明の第２の側面のプログラムは、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置から提供された前記動画像データを再生する処理を、コンピュータに行わせるプログラムであって、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出し、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求するステップを含む。
【００７６】
本発明の第３の側面の提供装置は、論理ブロックを単位として第１の記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供する提供装置であって、前記論理ブロックを単位として前記動画像データを記録する記録手段と、提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御する読み出し制御手段と、前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する提供手段とを備える。
【００７７】
前記第１の記録媒体を、DVDとし、前記フォーマットを、DVDビデオフォーマットとし、前記単位情報を、ナビゲーション・パックとすることができる。
【００７８】
前記記録手段は、前記第１の記録媒体と異なる第２の記録媒体で構成し、前記記録手段には、前記第１の記録媒体における前記論理ブロックを単位として前記動画像データを記録させることができる。
【００７９】
前記記録手段は、ハードディスクで構成し、前記記録手段には、DVDである前記第１の記録媒体における前記論理ブロックを単位として前記動画像データを記録させることができる。
【００８０】
前記動画像データにおける前記フォーマットの単位を、Cellとすることができる。
【００８１】
前記動画像データにおける前記フォーマットの単位を、Interleaved Unitとすることができる。
【００８２】
本発明の第３の側面の提供方法は、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データを、前記論理ブロックを単位として記録手段に記録し、記録している動画像データをネットワークを介して提供する提供方法であって、提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御し、前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供するステップを含む。
【００８３】
本発明の第３の側面のプログラムは、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データを、前記論理ブロックを単位として記録手段に記録し、記録している動画像データをネットワークを介して提供する処理を、コンピュータに行わせるプログラムであって、提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御し、前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供するステップを含む。
【００８４】
本発明の一側面においては、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報が抽出され、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックが特定され、特定された前記論理ブロックに記録されている前記動画像データの提供が、前記ネットワークを介して前記提供装置に要求され、前記論理ブロックを単位として前記動画像データが記録され、前記ネットワークを介して前記情報処理装置から要求された前記動画像データの前記論理ブロックからの読み出しが制御され、前記論理ブロックから読み出された前記動画像データが前記ネットワークを介して前記情報処理装置に提供される。
【００８５】
本発明の第２の側面においては、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報が抽出され、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックが特定され、特定された前記論理ブロックに記録されている前記動画像データの提供が、前記ネットワークを介して前記提供装置に要求される。
【００８６】
本発明の第３の側面においては、提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記論理ブロックを単位として記録手段に記録されている前記動画像データの前記論理ブロックからの読み出しが制御され、前記論理ブロックから読み出された前記動画像データが前記ネットワークを介して前記情報処理装置に提供される。
【００８７】
ネットワークとは、少なくとも２つの装置が接続され、ある装置から、他の装置に対して、情報の伝達をできるようにした仕組みをいう。ネットワークを介して通信する装置は、独立した装置どうしであっても良いし、１つの装置を構成している内部ブロックどうしであっても良い。
【００８８】
また、通信とは、無線通信および有線通信は勿論、無線通信と有線通信とが混在した通信、即ち、ある区間では無線通信が行われ、他の区間では有線通信が行われるようなものであっても良い。さらに、ある装置から他の装置への通信が有線通信で行われ、他の装置からある装置への通信が無線通信で行われるようなものであっても良い。
【発明の効果】
【００８９】
以上のように、本発明の第１の側面によれば、動画像データを再生することができる。
【００９０】
また、本発明の第１の側面によれば、より簡単に、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供し、動画像データを再生することができる。
【００９１】
本発明の第２の側面によれば、動画像データを再生することができる。
【００９２】
また、本発明の第２の側面によれば、より簡単に、ネットワークを介して提供される、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データを再生することができる。
【００９３】
本発明の第３の側面によれば、動画像データを提供することができる。
【００９４】
また、本発明の第３の側面によれば、より簡単に、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供することができる。
【発明を実施するための最良の形態】
【００９５】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書または図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書または図面に記載されていることを確認するためのものである。従って、明細書または図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００９６】
本発明の一側面の再生システムは、論理ブロックを単位として記録媒体（例えば、DVD）に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマット（例えば、DVDビデオフォーマット）の動画像のデータである動画像データをネットワーク（例えば、図１０のネットワーク１０３）を介して提供する提供装置（例えば、図１０のサーバ１０１）と、前記サーバから提供された前記動画像データを再生する情報処理装置（例えば、図１０のクライアント１０２）とからなる再生システムであって、前記情報処理装置が、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出する抽出手段（例えば、図１０の再生アプリケーション用バッファ１６４）と、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定する特定手段（例えば、図１０のフロー制御モジュール１８４）と、特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する要求手段（例えば、図１０の読み出し制御モジュール１８２）とを備え、前記提供装置が、前記論理ブロックを単位として前記動画像データを記録する記録手段（例えば、図１０のストレージデバイス１２２）と、前記ネットワークを介して前記情報処理装置から要求された前記動画像データの前記論理ブロックからの読み出しを制御する読み出し制御手段（例えば、図１０のストレージ制御モジュール１４２）と、前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する提供手段（例えば、図１０の通信部１２５）とを備える。
【００９７】
本発明の第２の側面の情報処理装置は、論理ブロックを単位として記録媒体（例えば、DVD）に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマット（例えば、DVDビデオフォーマット）の動画像のデータである動画像データをネットワーク（例えば、図１０のネットワーク１０３）を介して提供する提供装置から提供された前記動画像データを再生する情報処理装置であって、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出する抽出手段（例えば、図１０の再生アプリケーション用バッファ１６４）と、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定する特定手段（例えば、図１０のフロー制御モジュール１８４）と、特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する要求手段（例えば、図１０の読み出し制御モジュール１８２）とを備える。
【００９８】
本発明の第２の側面の情報処理方法およびプログラムは、前記提供装置から提供された前記動画像データから、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報を抽出し（例えば、図４０のステップＳ１９２）、抽出された前記単位情報から、再生しようとする範囲の前記動画像データを記録している前記論理ブロックを特定し（例えば、図３３のステップＳ８２）、特定された前記論理ブロックに記録されている前記動画像データの提供を、前記ネットワークを介して前記提供装置に要求する（例えば、図３３のステップＳ８４）ステップを含む。
【００９９】
本発明の第３の側面の提供装置は、論理ブロックを単位として第１の記録媒体（例えば、DVD）に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマット（例えば、DVDビデオフォーマット）の動画像のデータである動画像データをネットワーク（例えば、図１０のネットワーク１０３）を介して提供する提供装置であって、前記論理ブロックを単位として前記動画像データを記録する記録手段（例えば、図１０のストレージデバイス１２２）と、提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御する読み出し制御手段（例えば、図１０のストレージ制御モジュール１４２）と、前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する提供手段（例えば、図１０の通信部１２５）とを備える。
【０１００】
本発明の第３の側面の提供方法およびプログラムは、提供された前記動画像データを再生する情報処理装置であって、提供した前記動画像データに含まれる、前記動画像データにおける前記フォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の前記動画像データが記録されている前記論理ブロックを特定し、特定された前記論理ブロックに記録されている前記動画像データの提供を前記ネットワークを介して要求してきた前記情報処理装置からのその要求に応じて、前記動画像データの前記論理ブロックからの読み出しを制御し（例えば、図３０のステップＳ１６）、前記論理ブロックから読み出された前記動画像データを前記ネットワークを介して前記情報処理装置に提供する（例えば、図３２のステップＳ６２）ステップを含む。
【０１０１】
図１０は、本発明の一実施の形態の再生システムの構成を示すブロック図である。再生システムは、サーバ１０１およびクライアント１０２から構成されている。サーバ１０１およびクライアント１０２は、ネットワーク１０３により相互に接続されている。
【０１０２】
サーバ１０１は、パーソナルコンピュータまたは専用のサーバなどからなり、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワーク１０３を介してクライアント１０２に提供する。例えば、サーバ１０１は、DVDに記録される、DVDビデオフォーマットの動画像データをネットワーク１０３を介してクライアント１０２に提供する。
【０１０３】
クライアント１０２は、パーソナルコンピュータまたは専用の端末装置などからなり、ネットワーク１０３を介してサーバ１０１から提供された動画像データを再生する。
【０１０４】
なお、動画像データは、再生システムにおいて取り扱いの対象となる、動画像データ、音声データ、または有意なデータなどのコンテンツの一例であり、以下、動画像データを例に説明する。
【０１０５】
サーバ１０１は、ホストCPU１２１、ストレージデバイス１２２、RAM（Random Access Memory）１２３、データ送信用バッファ１２４、および通信部１２５を含むように構成される。ホストCPU１２１は、汎用のCPUまたは専用のシステムコントローラなどからなり、プログラムを実行して、サーバ１０１を制御する。
【０１０６】
ストレージデバイス１２２は、ハードディスクドライブ、または光ディスクが装着されているドライブなどからなり、論理ブロックを単位として動画像データを記録する。例えば、ストレージデバイス１２２は、DVDに論理ブロックを単位として記録される、DVDビデオフォーマットの動画像データを、イメージデータとして記録する。
【０１０７】
RAM１２３は、DRAM（Dynamic Random Access Memory）またはSRAM（Static Random Access Memory）などから構成され、ストレージデバイス１２２から読み出された動画像データを記憶する。RAM１２３は、記憶している動画像データをデータ送信用バッファ１２４に供給する。
【０１０８】
データ送信用バッファ１２４は、半導体メモリからなるか、またはハードディスクの所定の記録空間などからなり、RAM１２３から供給された動画像データを一時的に記憶し、記憶している動画像データを通信部１２５に供給する。
【０１０９】
通信部１２５は、ネットワーク１０３を介して、クライアント１０２に各種のデータを送信する。通信部１２５は、データ送信用バッファ１２４から供給された動画像データをネットワーク１０３を介して、クライアント１０２に送信することで、動画像データをクライアント１０２に供給する。
【０１１０】
また、通信部１２５は、ネットワーク１０３を介して、クライアント１０２から送信されてきた各種のデータを受信して、受信したデータをホストCPU１２１に供給する。
【０１１１】
ホストCPU１２１は、プログラムを実行することにより、送信用バッファ制御モジュール１４１、ストレージ制御モジュール１４２、読み出し変換モジュール１４３、再送通知モジュール１４４、およびリスト管理モジュール１４５を実現する。
【０１１２】
送信用バッファ制御モジュール１４１は、データ送信用バッファ１２４を制御する。送信用バッファ制御モジュール１４１は、空きがあるかなどのデータ送信用バッファ１２４の状態をストレージ制御モジュール１４２に通知する。すなわち、例えば、データ送信用バッファ１２４に格納されていた動画像データがネットワーク１０３を介してクライアント１０２に送信されるなどにより、データ送信用バッファ１２４のメモリ空間に空きができると、送信用バッファ制御モジュール１４１は、ストレージ制御モジュール１４２に、メモリ空間に空きができた旨を通知する。
【０１１３】
ストレージ制御モジュール１４２は、読み出し変換モジュール１４３からの要求に応じて、ストレージデバイス１２２からの動画像データの読み出しを制御する。すなわち、ストレージ制御モジュール１４２は、ネットワーク１０３を介してクライアント１０２から要求された動画像データの論理ブロックからの読み出しを制御する。
【０１１４】
読み出し変換モジュール１４３は、クライアント１０２からの、動画像データの読み出しの要求の範囲を受け取り、ストレージ制御モジュール１４２に対して、要求された範囲の動画像データの読み出しを指示する。
【０１１５】
再送通知モジュール１４４は、TCP（Transmission Control Protocol）/IP（Internet Protocol）などの規格に準拠して、ネットワーク１０３を介して、各種のデータを通信する通信部１２５から、再送要求を受け付けて、その再送要求を読み出し変換モジュール１４３に通知する。
【０１１６】
リスト管理モジュール１４５は、ストレージデバイス１２２に記録されている動画像データのタイトルのリストを管理して、通信部１２５に、ネットワーク１０３を介して、動画像データのタイトルのリストをクライアント１０２に提供させる。また、リスト管理モジュール１４５は、ネットワーク１０３を介してクライアント１０２から送信されてきた、動画像データのタイトルの選択の指示を、通信部１２５に受信させて、受信した指示に応じて、読み出し変換モジュール１４３に、動画像データの選択を指令する。
【０１１７】
クライアント１０２は、ホストCPU１６１、通信部１６２、データ受信用バッファ１６３、再生アプリケーション用バッファ１６４、デコーダ用バッファ１６５、デコーダ１６６、およびRAM１６７を含むように構成される。
【０１１８】
ホストCPU１６１は、汎用のCPUまたは専用のシステムコントローラなどからなり、プログラムを実行して、クライアント１０２を制御する。
【０１１９】
通信部１６２は、ネットワーク１０３を介して、サーバ１０１から送信されてくる各種のデータを受信する。通信部１６２は、ネットワーク１０３を介して、サーバ１０１から送信されてくる動画像データを受信して、受信した動画像データをデータ受信用バッファ１６３に供給する。また、通信部１６２は、ネットワーク１０３を介して、各種のデータをサーバ１０１に送信する。
【０１２０】
データ受信用バッファ１６３は、半導体メモリからなるか、またはハードディスクの所定の記録空間などからなり、ネットワーク１０３を介して、サーバ１０１から送信され、通信部１６２において受信された動画像データを一時的に記憶する。データ受信用バッファ１６３は、記憶している動画像データを再生アプリケーション用バッファ１６４に供給する。
【０１２１】
再生アプリケーション用バッファ１６４は、データ受信用バッファ１６３から供給された動画像データを記憶し、記憶している動画像データに、再生制御情報の一例であるナビゲーション・パックが含まれている場合、そのナビゲーション・パックを抽出する。
【０１２２】
再生アプリケーション用バッファ１６４は、抽出したナビゲーション・パックをRAM１６７に供給する。また、再生アプリケーション用バッファ１６４は、記憶している動画像データをデコーダ用バッファ１６５に供給する。
【０１２３】
なお、再生アプリケーション用バッファ１６４は、制御機能を備えるメモリとして構成するようにしても良いし、単なるメモリとして構成して、ホストCPU１６１により、再生制御情報の一例であるナビゲーション・パックが検出され、ホストCPU１６１の制御の基に、検出し抽出したナビゲーション・パックをRAM１６７に供給するようにしても良い。
【０１２４】
デコーダ用バッファ１６５は、半導体メモリからなるか、またはハードディスクの所定の記録空間などからなり、再生アプリケーション用バッファ１６４から供給された動画像データを一時的に記憶する。
【０１２５】
デコーダ１６６は、ホストCPU１６１の制御の基に、デコーダ用バッファ１６５から動画像データを読み出して、読み出した動画像データを復号し、出力する。
【０１２６】
RAM１６７は、DRAMまたはSRAMなどから構成され、再生アプリケーション用バッファ１６４において抽出され、再生アプリケーション用バッファ１６４から供給された再生制御情報の一例であるナビゲーション・パックを記憶する。RAM１６７は、記憶しているナビゲーション・パックをホストCPU１６１に供給する。
【０１２７】
ホストCPU１６１は、プログラムを実行することにより、受信用バッファ制御モジュール１８１、読み出し制御モジュール１８２、デコーダ制御モジュール１８３、フロー制御モジュール１８４、ナビゲーション解析モジュール１８５、およびリスト表示モジュール１８６を実現する。
【０１２８】
受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３を制御する。受信用バッファ制御モジュール１８１は、所定のデータ量の動画像データが記憶されているか、または所定の空きがあるかなどのデータ受信用バッファ１６３の状態を読み出し制御モジュール１８２に通知する。すなわち、例えば、ネットワーク１３を介してサーバ１０１から動画像データが送信されてきて、通信部１６２において、動画像データが受信されて、データ受信用バッファ１６３に動画像データが記憶されると、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３に動画像データが記憶されたことを読み出し制御モジュール１８２に通知する。
【０１２９】
読み出し制御モジュール１８２は、フロー制御モジュール１８４の制御に基づいて、通信部１６２およびネットワーク１０３を介して、サーバ１０１に、Logical Block単位の動画像データの提供を要求する。すなわち、例えば、読み出し制御モジュール１８２は、通信部１６２に、ネットワーク１０３を介して、フロー制御モジュール１８４から読み出しが要求された動画像データにおけるLogical Block単位の範囲の提供をサーバ１０１に要求させる。
【０１３０】
デコーダ制御モジュール１８３は、フロー制御モジュール１８４の制御に基づいて、デコーダ１６６の動画像データの復号を制御する。
【０１３１】
フロー制御モジュール１８４は、RAM１６７に記憶されている、動画像データから抽出された再生制御情報の一例であるナビゲーション・パックを参照して、読み出し制御モジュール１８２およびデコーダ制御モジュール１８３を制御する。
【０１３２】
再生アプリケーション用バッファ１６４は、ナビゲーション・パックを抽出し、ナビゲーション・パックをRAM１６７に記憶させると、フロー制御モジュール１８４に割り込みするので、再生アプリケーション用バッファ１６４からの割り込みがあると、フロー制御モジュール１８４は、RAM１６７に記憶されているナビゲーション・パックを参照して、読み出し制御モジュール１８２およびデコーダ制御モジュール１８３を制御する。
【０１３３】
例えば、フロー制御モジュール１８４は、読み出し制御モジュール１８２にLogical Blockを単位とする動画像データの範囲の読み出しを指示する。
【０１３４】
フロー制御モジュール１８４は、読み出し制御モジュール１８２とデコーダ制御モジュール１８３とを調停する。例えば、デコーダ１６６の復号の停止中に、新たに動画像データを取得からその動画像データの復号を開始する場合、フロー制御モジュール１８４は、所定の量のデータが再生アプリケーション用バッファ１６４に供給された旨を示す、読み出し制御モジュール１８２からの通知を受けてから、デコーダ制御モジュール１８３に復号の開始を指示する。
【０１３５】
ナビゲーション解析モジュール１８５は、再生制御情報の一例であるナビゲーション・パックを解析して、サーバ１０１から提供される動画像データのうち、シームレスに（連続して）再生できる範囲を特定し、特定した範囲をフロー制御モジュール１８４に指定する。ナビゲーション解析モジュール１８５は、シームレスに（連続して）再生できる範囲をCell単位で特定して、Cell単位で特定した範囲をフロー制御モジュール１８４に指定する。
【０１３６】
リスト表示モジュール１８６は、ネットワーク１０３を介して、サーバ１０１から提供された、サーバ１０１において記録されている動画像データのタイトルのリストを通信部１６２に受信させ、その動画像データのタイトルのリストを取得する。リスト表示モジュール１８６は、図示せぬ表示装置に、リストを表示させて、使用者による、動画像データのタイトルの選択の指示を取得する。
【０１３７】
リスト表示モジュール１８６は、通信部１６２に、ネットワーク１０３を介して、使用者による、動画像データのタイトルの選択の指示をサーバ１０１に送信させる。
【０１３８】
図１１は、ストレージデバイス１２２に記録されている動画像データの例を示す図である。例えば、ストレージデバイス１２２は、DVDに論理ブロックを単位として記録される、DVDビデオフォーマットの動画像データを、イメージデータ２０１として記録する。
【０１３９】
DVDのDVDビデオフォーマットの動画像データをストレージデバイス１２２に登録する場合、ストレージデバイス１２２は、DVDに記録されているデータを、DVDに記録されているナビゲーション・データおよびストリームデータだけでなく、ファイルシステムを含むイメージデータ２０１として記録する。ここで、登録するとは、サーバ１０１がクライアント１０２に動画像データを提供できるようにすることをいう。
【０１４０】
また、DVDに限らず、任意の記録媒体に記録されているDVDビデオフォーマットの動画像データをストレージデバイス１２２に登録する場合、ストレージデバイス１２２は、記録媒体に記録されているデータをイメージデータ２０１として記録する。
【０１４１】
仮に、DVDのDVDビデオフォーマットの動画像データをDVDからファイルとして読み出して、これをストレージデバイス１２２に記録すると、DVDのDVDビデオフォーマットの動画像データは、例えば、ｎ個のファイル＃１乃至ファイル＃ｎに格納されて記録されることになる。すなわち、この場合、パーソナルコンピュータなどから、再生制御情報と、動画像データと、音声データとをそれぞれ格納しているファイルが見えることになる。このように、再生制御情報と、動画像データと、音声データとを異なるファイルに格納してストレージデバイス１２２に記録すると、再生制御情報と、動画像データと、音声データとが物理的に不連続に配置される可能が生じ、Logical Block単位で読み出ししようとした場合、配置のデータを別途記録するなどデータの管理手法が複雑になる。
【０１４２】
これに対して、動画像データをイメージデータ２０１として記録すると、動画像データのLogical Block単位での読み出しが容易になる。
【０１４３】
例えば、図１２で示されるように、イメージデータ２０１−１、イメージデータ２０１−２、およびイメージデータ２０１−３を、ハードディスクであるストレージデバイス１２２に記録する場合、イメージデータ２０１−１、イメージデータ２０１−２、およびイメージデータ２０１−３のそれぞれの、先頭のアドレスおよびデータ量が記録される。
【０１４４】
なお、図１２の例において、イメージデータ２０１−１の先頭のアドレスは、0x00010000であり、イメージデータ２０１−１の最後尾のアドレスは、0x00020000である。従って、イメージデータ２０１−１のデータ量は、0x00010000である。同様に、イメージデータ２０１−２の先頭のアドレスは、0x00025000であり、イメージデータ２０１−２の最後尾のアドレスは、0x00030000であり、イメージデータ２０１−２のデータ量は、0x00005000である。また、イメージデータ２０１−３の先頭のアドレスは、0x00050000であり、イメージデータ２０１−３の最後尾のアドレスは、0x0005A000であり、イメージデータ２０１−３のデータ量は、0x0000A000である。
【０１４５】
ここで、0xは、１６進数であることを示す。なお、データ量の単位は、2048バイトである。
【０１４６】
この場合、例えば、リスト管理モジュール１４５は、ストレージデバイス１２２に記録されている動画像データであるイメージデータ２０１−１をコンテンツＡの名称で管理し、イメージデータ２０１−２をコンテンツＢの名称で管理し、イメージデータ２０１−３をコンテンツＣの名称で管理する。
【０１４７】
リスト管理モジュール１４５は、コンテンツＡ、コンテンツＢ、およびコンテンツＣの名称などを含むタイトルのリストを、ネットワーク１０３を介して、クライアント１０２に送信する。クライアント１０２のリスト表示モジュール１８６は、受信したタイトルのリストを図示せぬ表示装置に表示させて、使用者による、コンテンツＡ、コンテンツＢ、またはコンテンツＣの選択の指示を取得する。例えば、使用者がコンテンツＢの選択を指示すると、リスト表示モジュール１８６は、ネットワーク１０３を介して、コンテンツＢの選択の指示をサーバ１０１に通知する。
【０１４８】
図１３で示されるように、読み出し変換モジュール１４３は、イメージデータ２０１の先頭のアドレスおよびデータ量を、それぞれ、オフセットおよびサイズとして記録する。
【０１４９】
図１３の例において、イメージデータ２０１−１として記録されているコンテンツＡのオフセットおよびサイズは、それぞれ、0x00010000および0x00010000とされる。イメージデータ２０１−２として記録されているコンテンツＢのオフセットおよびサイズは、それぞれ、0x00025000および0x00005000とされる。イメージデータ２０１−３として記録されているコンテンツＣのオフセットおよびサイズは、それぞれ、0x00050000および0x0000A000とされる。
【０１５０】
例えば、サーバ１０１は、クライアントからのコンテンツＢの選択の指示を受けると、コンテンツＢであるイメージデータ２０１−２のオフセットおよびサイズを基に、イメージデータ２０１−２である動画像データを読み出す。
【０１５１】
すなわち、コンテンツＢについて、クライアント１０２から0x100であるLogical Block番号から0x200であるLogical Block番号のLogical Blockに格納されている動画像データが要求された場合、コンテンツＢのオフセットが0x00025000なので、読み出し変換モジュール１４３は、0x00025100乃至0x00025200であるLogical Block番号のLogical Blockに格納されている動画像データの読み出しをストレージ制御モジュール１４２に要求する。
【０１５２】
ストレージデバイス１２２は、例えば、ハードディスクドライブと光ディスクチェンジャからなるHSM（Hierarchical Storage Management）として構成するようにしてもよい。HSMについては、例えば、特開２００３−２９６１５１号において、その詳細が開示されている。
【０１５３】
この場合、イメージデータ２０１をハードディスクまたは光ディスク内の記録領域に連続するように配置する必要はない。ただ、少なくともハードディスクは、１つのイメージデータ２０１の全てを記録できる記録容量を持つことが好ましい。これは、HSMであるストレージデバイス１２２において、アクセスのより速い記録媒体であるハードディスクには、イメージデータ２０１の一部が記録され（キャッシュされ）、アクセスのより遅い記録媒体である光ディスクには、イメージデータ２０１の残りまたはイメージデータ２０１の全部が記録され、そのイメージデータ２０１へのアクセスが生じた場合には、光ディスクに記録されているイメージデータ２０１がハードディスクに一旦コピーされてから、イメージデータ２０１がハードディスクから読み出されるように構成されているからである。
【０１５４】
HSMであるストレージデバイス１２２において、ハードディスクにキャッシュされているイメージデータ２０１の一部と、光ディスクに記録されているイメージデータ２０１とが、物理的に連続的に配置されているように見せる処理が実行される。
【０１５５】
例えば、図１４で示されるように、ハードディスクに、0x10000であるLogical Block番号から、0x150の数のLogical Blockに、コンテンツＢであるイメージデータ２０１−２の一部がキャッシュされ、光ディスクに、0x10000であるLogical Block番号から、0x10000の数のLogical Blockに、コンテンツＢであるイメージデータ２０１−２が記録されているとする。
【０１５６】
なお、図１４の上側は、ハードディスク上のデータの配置を示し、図１４の下側は、光ディスク上のデータの配置を示す。また、図１４において、左下がりの斜線を付した部分は、ハードディスクにキャッシュされているデータを示し、右下がりの斜線を付した部分は、光ディスクからハードディスクに読み出されたデータを示し、光ディスクに対応する部分の白抜きの部分は、光ディスクからハードディスクに読み出されていないデータを示す。
【０１５７】
クライアント１０２から、0x10100乃至0x10200であるLogical Block番号のLogical Blockに格納されている動画像データの読み出しが要求されると、サーバ１０１の読み出し変換モジュール１４３は、0x10100乃至0x10150であるLogical Block番号のLogical Blockに格納されている動画像データのハードディスクからの読み出しと、0x10151乃至0x10200であるLogical Block番号のLogical Blockに格納されている動画像データの光ディスクからの読み出しとを分けて、ストレージ制御モジュール１４２に要求することをしない。
【０１５８】
この場合、単に、読み出し変換モジュール１４３は、0x10100乃至0x10200であるLogical Block番号のLogical Blockに格納されている動画像データの読み出しをストレージ制御モジュール１４２に要求する。
【０１５９】
クライアント１０２からサーバ１０１に対して、クライアント１０２がこれからコンテンツＢであるイメージデータ２０１−２にアクセスすることが予め通知されるので、読み出し変換モジュール１４３は、クライアント１０２からの、0x10100乃至0x10200であるLogical Block番号のLogical Blockに格納されている動画像データの読み出しの要求を、コンテンツＢであるファイル名、オフセット0x10100、サイズ0x00200に変換して、動画像データの読み出しをストレージ制御モジュール１４２に要求する。
【０１６０】
HSMであるストレージデバイス１２２において、コンテンツＢである動画像データの読み出しが要求されると、光ディスクに記録されているコンテンツＢである動画像データがハードディスクにコピーされる。そして、コンテンツＢであるファイル名、オフセット0x10100、サイズ0x00200の動画像データの読み出しの要求に応じて、ハードディスクから、0x10100乃至0x10200であるLogical Block番号のLogical Blockに格納されている動画像データが読み出される。
【０１６１】
なお、厳密には、０であるLogical Block番号は、ファイルとしてのイメージデータ２０１の先頭を示さず、ファイルシステム内のUDF（Universal Disk Format） File Structureの先頭部分を示す。ファイルとしてのイメージデータ２０１の先頭からUDF File Structureの先頭までのオフセットは、ファイルシステムを解析することにより特定される。
【０１６２】
ここで、図１５乃至図２９を参照して、DVDビデオフォーマットについて説明する。
【０１６３】
図１５で示されるように、DVDビデオフォーマットには、単一のDVD-Video zoneが設けられる。DVD-Video zoneは、１つのビデオ・マネージャ（VMG）と、少なくとも１個、最大９９個のビデオ・タイトル・セット（VTS）で構成される。
【０１６４】
VMGは、制御データであるビデオ・マネージャ情報（VMGI（Video Manager Information））、VMGメニュー用VOBS（VMGM_VOBS）、バックアップ用制御データ（VMGI_BUP）で構成される。
【０１６５】
VTSは、制御データであるビデオ・タイトル・セット情報（VTSI（Video Title Set Information））、VTSメニュー用データ（VTSM_VOBS）、VTS内タイトル用VOBS（VTS_TT_VOBS）、バックアップ用制御データ（VTSI_BUP）で構成される。
【０１６６】
VOBSは、ビデオ、オーディオ、サブピクチャなどのデータで構成されるビデオ・オブジェクトの集合である。
【０１６７】
図１６は、VMGIの構造を説明する図である。
【０１６８】
VMGIは、VIDEO_TSディレクトリ下に存在するDVD Videoコンテンツに関する情報を記述するテーブルの集合である。VMGIは、タイトルを検索するための情報、FP_PGC、およびVMGMを再生するための制御情報、パレンタル管理のための情報などを含む。また、VMGIは、１つのディスクにただ１つだけ存在する。
【０１６９】
VMGIは、ビデオ・マネージャ情報（VMGI_MAT（Video Manager Information Management Table））、タイトル・サーチポインタ・テーブル（TT_SRPT（Title Search Pointer Table））などを含む。
【０１７０】
VMGI_MATには、VMGとVMGIのサイズ、VMG内の各情報（TT_SRPTなど）の先頭アドレス、VMGM用VOBの属性情報などが記述される。例えば、VMGI_MATには、Region（地域）番号が記述されている。
【０１７１】
TT_SRPTには、DVDビデオフォーマットのコンテンツ内のタイトルのサーチ情報が記述される。例えば、TT_SRPTには、ディスクに記録されたタイトルの総数や各タイトルのチャプター総数が記述されている。TT_SRPTには、また、タイトルが所属するVTSの番号（VTSN）と、そのVTS内でのタイトル番号（VTS_TTN）が記述されている。
【０１７２】
例えば、図１６に示す例において、タイトル＃１が所属するVTSの１であるVTSNと、そのVTS内での１であるVTS_TTNが記述され、タイトル＃２が所属するVTSの２であるVTSNと、そのVTS内での１であるVTS_TTNが記述され、タイトル＃３が所属するVTSの２であるVTSNと、そのVTS内での２であるVTS_TTNが記述され、タイトル＃４が所属するVTSの３であるVTSNと、そのVTS内での１であるVTS_TTNが記述されている。
【０１７３】
図１７に示されるように、TT_SRPTには、TT_SRPTI、TT_SRP#1乃至TT_SRP#nが配置される。TT_SRPTIには、TT_SRP（タイトル）の数、TT_SRPTの終了アドレスが記述される。TT_SRP#1乃至TT_SRP#nには、それぞれ、VTS番号、VTS_TT番号、アングル数、PTT数、VTSアドレスなど各タイトルのサーチ情報が記述される。
【０１７４】
VTSIは、１個以上のタイトル、VTSメニューの情報を記述するための情報テーブル群、PTTのサーチ情報、PGCの再生制御情報、ビデオ・オブジェクト・ユニット（VOBU（Video Object Unit））のアドレス・マップなどを含む。VTSIは、１つのディスクに最大99個存在する。
【０１７５】
図１８は、VTSIの構造を説明する図である。VTSIには、VTS PTTサーチポインタ・テーブル（VTS_PTT_SRPT（VTS PTT Search Pointer Table））、VTSプログラム・チェーン情報テーブル（VTS_PGCIT（VTS Program Chain Information Table））、VTS VOBUアドレス・マップ（VTS_VOBU_ADMAP（VTS VOBU Address Map））、およびその他のデータが配置される。
【０１７６】
VTS_PTT_SRPTは、各PTTがどのPGCのどのPGに対応するかを示すテーブルである。VTS_PTT_SRPTには、VTS_TTNを再生するのに必要なPGCIの番号が記述されている。
【０１７７】
VTS_PGCITは、VTSに属する全てのPGCの情報を記述するためのテーブル群である。VTS_PGCITには、プログラム・チェーン情報（PGCI（Program Chain Information）であるPGCI#1乃至PGCI#nが配置される。
【０１７８】
PGCIは、PGCの再生を制御するためのナビゲーション・データの集合である。
【０１７９】
VTS_VOBU_ADMAPは、VTSのタイトルに関する全VOBUの先頭アドレスが記述されるテーブルである。VTS_VOBU_ADMAPには、全てのVOBUの先頭アドレスがそのLBNの昇順で記述される。すなわち、VTS_VOBU_ADMAPには、このVTSIに属するVOBU#1乃至VOBU#mのデータが記録されている場所を特定できるアドレスが記述されている。
【０１８０】
VTS VOBU#nアドレス（VTS_VOBU_AD #n（VTS VOBU #n Address））には、VTS_VOBU_ADMAP内のｎ番目のVOBUの先頭アドレスが記述される。
【０１８１】
例えば、図１８に示す例において、０００セクタである、このVTSIに属するVOBU#1のアドレス（先頭アドレス）が記述され、１００セクタである、このVTSIに属するVOBU#2のアドレス（先頭アドレス）が記述され、２００セクタである、このVTSIに属するVOBU#3のアドレス（先頭アドレス）が記述され、４００セクタである、このVTSIに属するVOBU#4のアドレス（先頭アドレス）が記述されている。なお、１セクタの記録容量は、２０４８バイトである。
【０１８２】
図１９は、VTS_PTT_SRPTの構造を示す図である。VTS_PTT_SRPTには、PTT_SRPTI、TTU_SRP#1乃至TTU_SRP#n、PTT_SRP#1乃至PTT_SRP#m、およびPTT_SRP#n乃至PTT_SRP#zが配置されている。PTT_SRPTIには、TTUの数、VTS_PTT_SRPTの終了アドレスが記述される。
【０１８３】
TTU_SRP#1乃至TTU_SRP#nのそれぞれには、各TTUの先頭アドレスが、VTS_PTT_SRPTの先頭からの相対バイト数で記述される。
【０１８４】
PTT_SRP#1は、対応するPGC番号とPG番号とを記述する。
【０１８５】
ここで、タイトル毎のPTT_SRP集合をTTUと称し、TTUは、各タイトルがどのPTTで構成されているかを示す。例えば、TTU#1は、PTT_SRP#1乃至PTT_SRP#mから構成され、TTU#nは、PTT_SRP#zから構成される。
【０１８６】
図２０は、PGCIの構造を示す図である。PGCIには、PGC一般情報（PGC_GI（PGC General Information））、PGCプログラム・マップ（PGC_PGMAP（PGC Program Map））、セル再生情報テーブル（C_PBIT（Cell Playback Information Table））、その他の情報が配置される。
【０１８７】
PGC_GIには、PGCに関する全般的な情報が記述される。例えば、PGC_GIには、PGC内のPG（Program）総数、Cell総数、PGC再生時間、およびPGCに関する各種テーブルの開始アドレスなどが記述される。
【０１８８】
PGC_PGMAPは、PGC内のプログラムの構造を示すマップ・テーブルである。PGC_PGMAPには、各PGに関して、最初に再生されるCell（Entry Cell）の番号が記述される。
【０１８９】
例えば、図２１に示されるように、PGC_PGMAPには、PG#1であるPG番号に対して、１であるEntry Cellの番号が配置され、PG#2であるPG番号に対して、３であるEntry Cellの番号が配置され、PG#3であるPG番号に対して、６であるEntry Cellの番号が配置され、PG#iであるPG番号に対して、NであるEntry Cellの番号が配置され、PG#(i+1)であるPG番号に対して、MであるEntry Cellの番号が配置される。
【０１９０】
この場合、図２１に示されるPGC_PGMAPは、図２２に示されるように、PG#1は、Cell#1から始まり、PG#2は、Cell#3から始まり、PG#3は、Cell#6から始まることを意味する。
【０１９１】
C_PBITは、GC内のセルの再生順序を定義するためセル再生情報（C_PBI（Cell Playback Information Table））を要素に持つテーブルである。
【０１９２】
C_PBIには、Cellのカテゴリ、再生時間、先頭／終了アドレスなどが記述される。
【０１９３】
すなわち、図２３で示されるように、C_PBIは、C_CAT、C_PBTM、C_FVOBU_SA、C_FILVU_EA、C_LVOBU_SA、およびC_LVOBU_EAからなる。
【０１９４】
C_CATは、Cellのカテゴリを示す。具体的には、C_CATは、Cellのタイプ、シームレス再生フラグ、STC不連続フラグ、アクセス制限フラグ、スチル時間、セルコマンド番号などを示す。C_PBTMは、Cellの再生時間を示す。C_FVOBU_SAは、セルの先頭のVOBUの先頭アドレスを示す。
【０１９５】
C_FILVU_EAは、セルの先頭のILVUの終了アドレスを示す。C_LVOBU_SAは、セルの最終のVOBUの先頭アドレスを示す。C_LVOBU_EAは、セルの最終のVOBUの終了アドレスを示す。
【０１９６】
次に、VOBUについて説明する。VOBUは、VOBの構成要素である。１つのVOBUの再生時間は0.4秒から1.0秒である。VOBUは、ナビゲーション・パック（NV_PCK（Navigation Pack））で始まり、整数個のパック（PCK）で構成される。
【０１９７】
PCKは、ナビゲーション・パック（NV_PCK）、ビデオ・パック（V_PCK（Video_PCK））、オーディオ・パック（A_PCK（Audio_PCK））、サブピクチャ・パック（SP_PCK）のいずれかである。
【０１９８】
図２４で示されるように、VOBUは、NV_PCK、Video_PCK、およびAudio_PCKを含む。
【０１９９】
NV_PCKは、全てのVOBUの先頭に必ず一つ存在し、PCIパケット（PCI Packet）およびDSIパケット（DSI Packet）を含む。より詳細には、図２５で示されるように、NV_PCKは、パックヘッダ、PCIパケット、およびDSIパケットからなる。
【０２００】
なお、データ・サーチ情報（DSI）の詳細は後述する。
【０２０１】
再生制御情報（PCI）には、このVOBUの再生される時間が、このVOBUが再生されるCellの経過時間(C_ELTM)として記述されている。
【０２０２】
NV_PCKは、必ずVOBUに一つ存在し、VOBUの先頭に配置される。
【０２０３】
なお、例えば、Cell #1が、VOBU #1、VOBU #2、VOBU #3、およびVOBU #4で構成され、VOBU #1の再生時間が０．５秒であり、VOBU #2の再生時間が０．５秒であり、VOBU #3の再生時間が０．５秒であり、VOBU #4の再生時間が０．５秒である場合、Cell #1の再生時間は、２秒であり、VOBU #1のC_ELTMは、０秒を示し、VOBU #2のC_ELTMは、０．５秒を示し、VOBU #3のC_ELTMは、１．５秒を示し、VOBU #4のC_ELTMは、２．５秒を示す。
【０２０４】
実際のDVDビデオフォーマットのコンテンツにおいて、例えば、そのコンテンツが映画である場合、１つのCellの再生時間は、数分から十数分であり、１つのVOBUの再生時間は、０．５〜１．０秒程である。
【０２０５】
Video_PCKは、このVOBUの再生が指定されたとき、再生されるビデオ情報である。すなわち、Video_PCKは、画像データである。
【０２０６】
Audio_PCKは、このVOBUの再生が指定されたとき、再生されるオーディオ情報である。すなわち、Audio_PCKは、音声データである。
【０２０７】
図２６は、PCIのより詳細な構造を示す図である。PCIは、PCI一般情報（PCI_GI）、非シームレス用アングル情報（NSML_AGLI）、ハイライト情報（HLI）、および記録情報（RECI）から構成される。
【０２０８】
PCI_GIは、さらに、ナビゲーション・パックのLBN（論理ブロック番号）（NV_PCK_LBN）、アナログ・プロテクションの状態を記述するVOBUのカテゴリ（VOBU_CAT）、VOBUのユーザ操作制御（VOBU_UOP_CTL）、VOBUの開始PTM（Presentation Time）（VOBU_S_PTM）、VOBUの終了PTM（VOBU_E_PTM）、VOBU内のシーケンス・エンドの終了PTM（VOBU_SE_PTM）、およびセル内経過時間（C_ELTM）からなる。
【０２０９】
NSML_AGLIは、アングル変更時の行き先アドレスに関する情報である。
【０２１０】
HLIは、サブピクチャ表示領域内の一矩形領域をハイライトする情報である。
【０２１１】
RECIは、本VOBUに記録されたビデオ・データ、全てのオーディオ・データ、およびサブピクチャ（SP）データ用の情報である。
【０２１２】
図２７は、DSIのより詳細な構造を示す図である。DSIは、DSI一般情報（DSI_GI）、シームレス再生情報（SML_PBI）、シームレス用アングル情報（SML_AGLI）、VOBUサーチ情報（VOBU_SRI）、および同期情報（SYNCI）からなる。
【０２１３】
DSI_GIは、DSIに関する情報であり、このNavigation PackのLogical Block Number（LBN）（NV_PCK_LBN）、このNavigation Packが含まれるVOBUの最終Packのアドレス（LBN）（VOBU_EA）、第１リファレンスピクチャーの最終データが記録されているアドレス（LBN）（VOBU_1STREF_EA）、第２リファレンスピクチャーの最終データが記録されているアドレス（LBN）（VOBU_2NDREF_EA）、および第３リファレンスピクチャーの最終データが記録されているアドレス（LBN）（VOBU_3RDREF_EA）を含む。
【０２１４】
第１リファレンスピクチャーとは、VOBUに属するIピクチャーである。第２リファレンスピクチャーとは、このVOBUに属する第１P（I）ピクチャーである。第３リファレンスピクチャーとは、このVOBUに属する第２P（I）ピクチャーである。
【０２１５】
SML_PBIは、シームレス再生を実行するために必要な情報VOBU_SML_CATを含む。VOBU_SML_CATには、ILVU flagが配置される。このILVU flagが立っている場合、このVOBUはインターリーブド・ブロック内に位置している。
【０２１６】
SML_AGLIは、各Angle番号に対応したILVUのアドレスとサイズを示す。SML_AGL_C1_DSTAは、Angle #1用のILVUのアドレスとそのサイズを示す。SML_AGL_C2_DSTA乃至SML_AGL_C9_DSTAは、それぞれ、Angle #2乃至Angle #9用のILVUのアドレスとそのサイズを示す。
【０２１７】
VOBU_SRIには、本DSIが含まれるVOBUの再生開始時刻の前後０．５×ｎ秒に再生されるVOBUの先頭アドレスが記述される。
【０２１８】
SYNCIは、本DSIが含まれるVOBUのビデオ・データと同期して再生されるオーディオ・データとサブピクチャ・データのアドレス情報である。
【０２１９】
図２８および図２９は、PGC、PG、Cell、およびVOBUの関連を示す図である。Program Chain（PGC）は、例えば、Program（PG）#1、Program（PG）#2、およびProgram（PG）#3からなる。
【０２２０】
例えば、Program（PG）#1は、Cell#1およびCell#2からなる。例えば、Program（PG）#2は、Cell#3乃至Cell#5からなる。例えば、Program（PG）#3は、Cell#6乃至Cell#8からなる。
【０２２１】
この場合、Program#1のEntry Cellは、Cell#1であり、Program#2のEntry Cellは、Cell#3であり、Program#3のEntry Cellは、Cell#6である。
【０２２２】
さらに、例えば、Cell#1は、VOBU#1およびVOBU#2からなり、Cell#2は、VOBU#3乃至VOBU#5からなり、Cell#3は、VOBU#6乃至VOBU#8からなる。
【０２２３】
図２９で示されるように、ナビゲーション・パック（NV_PCK）は、それぞれのVOBUに必ず１つ存在し、そのVOBUの先頭に配置される。
【０２２４】
図２９で示される例において、VOBU#3は、Cell#2で最初に再生される。VOBU#3の開始アドレスは、PGC #nのC_PBI #2に記述されている。もし、VOBU#5の開始アドレスを知りたい場合、このPGC#nが属するVTSIのVTS_VOBU_ADMAPを使って知ることが出来る。
【０２２５】
次に、図３０のフローチャートを参照して、サーバ１０１の読み出し変換モジュール１４３の処理を説明する。ステップＳ１１において、読み出し変換モジュール１４３は、ネットワーク１０３を介して、クライアント１０２から指定された読み出し範囲を設定する。すなわち、読み出し変換モジュール１４３は、変数Startに、指定された開始位置を設定し、変数Endに、指定された終了位置を設定し、変数Targetに、変数Startの値を設定し、変数Tmp_Targetに０を設定する。
【０２２６】
ステップＳ１２において、読み出し変換モジュール１４３は、ネットワーク１０３を介して、クライアント１０２からクリアが要求されているか否かを判定し、クリアが要求されていると判定された場合、ステップＳ１３に進み、ストレージ制御モジュール１４２に、データ送信用バッファ１２４のクリアを指示する。この指示を受けたストレージ制御モジュール１４２は、データ送信用バッファ１２４をクリアする。
【０２２７】
ステップＳ１４において、読み出し変換モジュール１４３は、ストレージ制御モジュール１４２からの通知を基に、データ送信用バッファ１２４のクリアが終了したか否かを判定する。データ送信用バッファ１２４がクリアされたと判定されるまで、ステップＳ１４の判定の処理が繰り返される。
【０２２８】
ステップＳ１４において、データ送信用バッファ１２４がクリアされたと判定された場合、手続きは、ステップＳ１５に進む。
【０２２９】
また、ステップＳ１２において、データ送信用バッファ１２４のクリアが要求されていないと判定された場合、ステップＳ１３およびステップＳ１４はスキップされて、手続きは、ステップＳ１５に進む。
【０２３０】
ステップＳ１５において、読み出し変換モジュール１４３は、読み出すデータのアドレスを設定する。すなわち、ステップＳ１５において、読み出し変換モジュール１４３は、読み出すデータのアドレスを示す変数Readに、変数Targetの値を設定する。
【０２３１】
ステップＳ１６において、読み出し変換モジュール１４３は、ストレージ制御モジュール１４２に、変数Readで指定された位置のデータの読み出しを指示する。
【０２３２】
ステップＳ１７において、読み出し変換モジュール１４３は、変数Tmp_Targetが０に等しいか否かを判定し、変数Tmp_Targetが０に等しいと判定された場合、ステップＳ１８に進み、変数Tmp_Targetの値を１だけインクリメントし、手続きは、ステップＳ２１に進む。
【０２３３】
ステップＳ１７において、変数Tmp_Targetが０に等しくないと判定された場合、ステップＳ１９に進み、読み出し変換モジュール１４３は、送信用バッファ制御モジュール１４１に、データ送信用バッファ１２４を復帰させる。ステップＳ２０において、読み出し変換モジュール１４３は、変数Targetに、変数Tmp_Targetの値を設定し、変数Tmp_Targetに０を設定し、手続きは、ステップＳ２１に進む。
【０２３４】
ステップＳ２１において、読み出し変換モジュール１４３は、再送通知モジュール１４４からの通知を基に、再送要求があったか否かを判定し、再送要求があったと判定された場合、ステップＳ２２に進み、変数Tmp_Targetに、変数Targetの値を設定し、変数Targetに、再送位置（のアドレス）を設定する。ステップＳ２３において、読み出し変換モジュール１４３は、送信用バッファ制御モジュール１４１に、データ送信用バッファ１２４を待避させ、ステップＳ１２に戻り、上述した処理を繰り返す。
【０２３５】
ステップＳ２１において、再送要求がないと判定された場合、ステップＳ２４に進み、読み出し変換モジュール１４３は、変数Endの値が変数Targetの値より小さいか否かを判定し、変数Endの値が変数Targetの値より小さくないと判定された場合、指定された範囲の動画像データがまだ全部送信されていないので、ステップＳ１５に戻り、上述した処理を繰り返す。
【０２３６】
ステップＳ２４において、変数Endの値が変数Targetの値より小さいと判定された場合、指定された範囲の動画像データが全部送信されたので、処理は終了する。
【０２３７】
図３１は、ストレージ制御モジュール１４２の処理を説明するフローチャートである。ステップＳ４１において、ストレージ制御モジュール１４２は、RAM１２３に空きがあるか否かを判定し、空きがあると判定されるまで、ステップＳ４１の判定の処理を繰り返す。
【０２３８】
ステップＳ４１において、RAM１２３に空きがあると判定された場合、ステップＳ４２に進み、ストレージ制御モジュール１４２は、指定されたデータをRAM１２３に読み出す。すなわち、ステップＳ４２において、ストレージ制御モジュール１４２は、ストレージデバイス１２２に、読み出し変換モジュール１４３から指定された動画像データを読み出させ、読み出した動画像データをRAM１２３のライトポインタで指示される記憶領域に書き込ませる。
【０２３９】
ステップＳ４３において、ストレージ制御モジュール１４２は、ストレージデバイス１２２による動画像データの読み出しが完了したか否かを判定し、完了したと判定されるまで、ステップＳ４３の判定の処理を繰り返す。
【０２４０】
ステップＳ４３において、ストレージデバイス１２２による動画像データの読み出しが完了したと判定された場合、ステップＳ４４に進み、ストレージ制御モジュール１４２は、RAM１２３のライトポインタを１つ進める。
【０２４１】
ステップＳ４５において、ストレージ制御モジュール１４２は、送信用バッファ制御モジュール１４１に、読み出し完了を通知して、処理は終了する。
【０２４２】
次に、図３２のフローチャートを参照して、送信用バッファ制御モジュール１４１の処理を説明する。ステップＳ６１において、送信用バッファ制御モジュール１４１は、データ送信用バッファ６１に空きがあるか否かを判定し、データ送信用バッファ６１に空きができるまで、判定の処理を繰り返す。
【０２４３】
ステップＳ６１において、データ送信用バッファ６１に空きがあると判定された場合、ステップＳ６２に進み、送信用バッファ制御モジュール１４１は、動画像データを、RAM１２３からデータ送信用バッファ１２４に読み出す。すなわち、ステップＳ６２において、送信用バッファ制御モジュール１４１は、RAM１２３の記憶領域のうち、リードポインタで指示される記憶領域に記録されている動画像データを読み出して、読み出した動画像データを、データ送信用バッファ１２４の記憶領域のうち、ライトポインタで指示される記憶領域に記憶させる。
【０２４４】
ステップＳ６３において、送信用バッファ制御モジュール１４１は、RAM１２３からの動画像データの読み出しが完了したか否かを判定し、動画像データの読み出しが完了するまで判定の処理を繰り返す。
【０２４５】
ステップＳ６３において、動画像データの読み出しが完了したと判定された場合、ステップＳ６４に進み、送信用バッファ制御モジュール１４１は、RAM１２３のリードポインタを１つ進める。ステップＳ６５において、送信用バッファ制御モジュール１４１は、データ送信用バッファ１２４のライトポインタを１つ進めて、処理は終了する。
【０２４６】
次に、クライアント１０２の処理について説明する。
【０２４７】
まず、ナビゲーション解析モジュール１８５は、フロー制御モジュール１８４を介してRAM１６７に記憶されている再生制御情報を取得し、再生制御情報を基に、アングル機能が利用される場合、連続して再生されるSeamless Angle BlockであるCellが、これから再生しようとするPGC内にあるか否かを判定する。
【０２４８】
これから再生しようとするPGC内に、連続して再生されるSeamless Angle Blockがないと判定された場合、クライアント１０２において実行される処理を図３３のフローチャートを参照して説明する。ステップＳ８１において、ナビゲーション解析モジュール１８５は、再生制御情報を基に、これから再生するPGCの範囲を、Cellを単位として特定する。ナビゲーション解析モジュール１８５は、フロー制御モジュール１８４に、Cellを単位として特定されたシームレス再生範囲を指定する。
【０２４９】
ステップＳ８２において、フロー制御モジュール１８４は、これから再生するPGCの範囲、すなわち、ナビゲーション解析モジュール１８５から指定された、Cellを単位として特定されたシームレス再生範囲を、Logical Block単位で特定する。
【０２５０】
ステップＳ８３において、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３をクリアし、再生アプリケーション用バッファ１６４をクリアし、デコーダ用バッファ１６５をクリアする。なお、フロー制御モジュール１８４が、再生アプリケーション用バッファ１６４をクリアし、デコーダ制御モジュール１８３が、デコーダ用バッファ１６５をクリアするようにしてもよい。
【０２５１】
ステップＳ８４において、読み出し制御モジュール１８２が、ネットワーク１０３を介して、Logical Block単位で特定した、これから再生するPGCの範囲の読み出しをサーバ１０１に要求する。すなわち、ステップＳ８４において、読み出し制御モジュール１８２が、Logical Block単位の動画像データの読み出しをサーバ１０１に要求する。
【０２５２】
Logical Block単位の動画像データの読み出しをサーバ１０１に要求すると、図３０乃至図３２を参照して説明した処理により、サーバ１０１は、要求されたLogical Block単位の動画像データを、ネットワーク１０３を介して、クライアント１０２に送信する。
【０２５３】
ステップＳ８５において、受信用バッファ制御モジュール１８１は、ネットワーク１０３を介して送信されてきたサーバ１０１からの動画像データが通信部１６２において受信されて、データ受信用バッファ１６３に動画像データが記憶されたか否か、すなわち、データ受信用バッファ１６３に動画像データが送られてきたか否かを判定し、データ受信用バッファ１６３に動画像データが送られてくるまで、ステップＳ８５の判定の処理を繰り返す。
【０２５４】
ステップＳ８５において、データ受信用バッファ１６３に動画像データが送られてきたと判定された場合、ステップＳ８６に進み、受信用バッファ制御モジュール１８１は、読み出し制御モジュール１８２に、動画像データを受信したことを通知する。
【０２５５】
ステップＳ８７において、読み出し制御モジュール１８２は、フロー制御モジュール１８４に、動画像データを受信したことを通知する。
【０２５６】
ステップＳ８８において、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３から再生アプリケーション用バッファ１６４へ、動画像データを移動させるとともに、再生アプリケーション用バッファ１６４からデコーダ用バッファ１６５に動画像データを移動させる。すなわち、ステップＳ８８において、受信用バッファ制御モジュール１８１は、再生アプリケーション用バッファ１６４に記憶されている動画像データをデコーダ用バッファ１６５に移動させるとともに、データ受信用バッファ１６３に記憶されている動画像データを再生アプリケーション用バッファ１６４に移動させる。
【０２５７】
ステップＳ８９において、フロー制御モジュール１８４は、デコーダ用バッファ１６５に所定の量の動画像データが記憶されたか否か、すなわちデコーダ用バッファ１６５に所定の量の動画像データが送られたか否かを判定し、デコーダ用バッファ１６５に所定の量の動画像データが送られるまで、ステップＳ８９の判定の処理を繰り返す。
【０２５８】
ステップＳ８９において、デコーダ用バッファ１６５に所定の量の動画像データが送られたと判定された場合、ステップＳ９０に進み、フロー制御モジュール１８４は、デコーダ制御モジュール１８３にデコードの開始を指示する。デコーダ制御モジュール１８３は、フロー制御モジュール１８４からデコードの開始が指示されると、デコーダ１６６に、デコーダ用バッファ１６５に記憶されている動画像データの復号の開始を指示する。これにより、デコーダ１６６は、デコーダ用バッファ１６５に記憶されている動画像データの復号を開始する。
【０２５９】
ステップＳ９１において、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３に記憶された動画像データを基に、サーバ１０１に要求した動画像データを全て受け取ったか否かを判定し、サーバ１０１に要求した動画像データを全て受け取るまで、ステップＳ９１の判定の処理を繰り返す。
【０２６０】
ステップＳ９１において、サーバ１０１に要求した動画像データを全て受け取ったと判定された場合、ステップＳ９２に進み、受信用バッファ制御モジュール１８１は、サーバ１０１に要求した動画像データを全て受け取ったことを読み出し制御モジュール１８２に通知する。
【０２６１】
ステップＳ９３において、読み出し制御モジュール１８２は、サーバ１０１に要求した動画像データを全て受け取ったことをフロー制御モジュール１８４に通知して、処理は終了する。
【０２６２】
一方、これから再生しようとするPGC内に、連続して再生されるSeamless Angle Blockがあると判定された場合、クライアント１０２において実行される処理を図３４のフローチャートを参照して説明する。ステップＳ１０１において、ナビゲーション解析モジュール１８５は、再生制御情報を参照して、Seamless Angle Blockより手前の動画像データをCellを単位として特定する。すなわち、図３５に示されるように、例えば、Cell#2がSeamless Angle Blockである場合、ナビゲーション解析モジュール１８５は、Cell#2より手前の、Cell#1を特定する。
【０２６３】
ステップＳ１０２において、読み出し制御モジュール１８２は、ネットワーク１０３を介して、サーバ１０１に、ステップＳ１０１でCellを単位として特定された動画像データの読み出しを要求する。
【０２６４】
ステップＳ１０１およびステップＳ１０２の処理の詳細は、図３６のフローチャートを参照して後述する。
【０２６５】
ステップＳ１０３において、フロー制御モジュール１８４は、デコーダ制御モジュール１８３に、ステップＳ１０２の要求に応じてサーバ１０１から送信されてきた動画像データの再生を指示する。すなわち、デコーダ制御モジュール１８３は、フロー制御モジュール１８４から動画像データの再生が指示されると、デコーダ１６６に、デコーダ用バッファ１６５に記憶されている動画像データの復号を指示する。デコーダ１６６は、デコーダ用バッファ１６５に記憶されている動画像データを復号することで再生する。
【０２６６】
ステップＳ１０４において、フロー制御モジュール１８４は、RAM１６７に記憶されている再生制御情報を参照して、Seamless Angle BlockのデータをILVU単位で特定する。例えば、ステップＳ１０４において、フロー制御モジュール１８４は、図３５で示されるようにCell#2であるSeamless Angle BlockのデータをILVU単位で特定する。
【０２６７】
ステップＳ１０５において、読み出し制御モジュール１８２は、ネットワーク１０３を介して、サーバ１０１に、ステップＳ１０４でILVU単位で特定された動画像データの読み出しを要求する。
【０２６８】
ステップＳ１０４およびステップＳ１０５の処理の詳細は、図３８のフローチャートを参照して後述する。
【０２６９】
ステップＳ１０６において、フロー制御モジュール１８４は、デコーダ制御モジュール１８３に、ステップＳ１０５の要求に応じてサーバ１０１から送信されてきた動画像データの再生を指示する。デコーダ制御モジュール１８３は、フロー制御モジュール１８４から動画像データの再生が指示されると、デコーダ１６６に、デコーダ用バッファ１６５に記憶されている動画像データの復号を指示する。デコーダ１６６は、デコーダ用バッファ１６５に記憶されている動画像データを復号することで再生する。
【０２７０】
ステップＳ１０７において、ナビゲーション解析モジュール１８５は、Seamless Angle Block以降の動画像データをCellを単位として特定する。すなわち、図３５に示されるように、例えば、Cell#2がSeamless Angle Blockである場合、ナビゲーション解析モジュール１８５は、Cell#2以降の、Cell#3を特定する。
【０２７１】
ステップＳ１０８において、読み出し制御モジュール１８２は、ネットワーク１０３を介して、サーバ１０１に、ステップＳ１０７でCellを単位として特定された動画像データの読み出しを要求する。
【０２７２】
ステップＳ１０７およびステップＳ１０８の処理の詳細は、図４１のフローチャートを参照して後述する。
【０２７３】
ステップＳ１０９において、フロー制御モジュール１８４は、デコーダ制御モジュール１８３に、ステップＳ１０８の要求に応じてサーバ１０１から送信されてきた動画像データの再生を指示する。デコーダ制御モジュール１８３は、フロー制御モジュール１８４から動画像データの再生が指示されると、デコーダ１６６に、デコーダ用バッファ１６５に記憶されている動画像データの復号を指示する。デコーダ１６６は、デコーダ用バッファ１６５に記憶されている動画像データを復号することで再生して、処理は終了する。
【０２７４】
図３６は、ステップＳ１０１およびステップＳ１０２に対応する処理の詳細を説明するフローチャートである。ステップＳ１３１において、ナビゲーション解析モジュール１８５は、再生制御情報を参照して、PGCの先頭からSeamless Angle Blockまでの再生範囲をCell単位で特定する。ナビゲーション解析モジュール１８５は、特定した再生範囲をCell単位で、フロー制御モジュール１８４に指定する。
【０２７５】
ステップＳ１３２において、フロー制御モジュール１８４は、ナビゲーション解析モジュール１８５から指定されたCell単位で特定された再生範囲を、Logical Block単位で特定する。より具体的には、ステップＳ１３２において、フロー制御モジュール１８４は、再生範囲の最初のLogical BlockのLogical Block番号であるStart LBNと再生範囲の最後のLogical BlockのLogical Block番号であるEnd LBNとを特定する。
【０２７６】
ステップＳ１３３において、フロー制御モジュール１８４は、End LBNに続くSeamless Angle BlockであるCellのC_FILVU_EAを取得する。図３７で示されるように、C_FILVU_EAは、Seamless Angle BlockであるCellの先頭のILVUの終了アドレスを示す。
【０２７７】
そして、フロー制御モジュール１８４は、End LBNに、C_FILVU_EAの値を加算することにより、Seamless Angle BlockであるCellの先頭のILVUの終了アドレスを示す値をEnd LBNに設定する。フロー制御モジュール１８４は、読み出し制御モジュール１８２に、再生範囲を、Start LBNとEnd LBNとによりLogical Block単位で指定する。
【０２７８】
ステップＳ１３４において、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３をクリアし、再生アプリケーション用バッファ１６４をクリアし、デコーダ用バッファ１６５をクリアする。なお、フロー制御モジュール１８４が、再生アプリケーション用バッファ１６４をクリアし、デコーダ制御モジュール１８３が、デコーダ用バッファ１６５をクリアするようにしてもよい。
【０２７９】
ステップＳ１３５において、読み出し制御モジュール１８２が、ネットワーク１０３を介して、Start LBNとEnd LBNとによりLogical Block単位で特定される再生範囲の読み出しをサーバ１０１に要求する。
【０２８０】
ステップＳ１３６において、受信用バッファ制御モジュール１８１は、サーバ１０１が要求に応じてネットワーク１０３を介して動画像データを送信し、送信されてきた動画像データが通信部１６２において受信されて、データ受信用バッファ１６３に動画像データが記憶されたか否か、すなわち、データ受信用バッファ１６３に動画像データが送られてきたか否かを判定し、データ受信用バッファ１６３に動画像データが送られてくるまで、ステップＳ１３６の判定の処理を繰り返す。
【０２８１】
ステップＳ１３６において、データ受信用バッファ１６３に動画像データが送られてきたと判定された場合、ステップＳ１３７に進み、受信用バッファ制御モジュール１８１は、読み出し制御モジュール１８２に、動画像データが送られてきたこと、すなわち動画像データを受信したことを通知する。
【０２８２】
ステップＳ１３８において、読み出し制御モジュール１８２は、フロー制御モジュール１８４に、動画像データが送られてきたこと、すなわち動画像データを受信したことを通知する。
【０２８３】
ステップＳ１３９において、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３から再生アプリケーション用バッファ１６４へ、動画像データを移動させるとともに、再生アプリケーション用バッファ１６４からデコーダ用バッファ１６５に動画像データを移動させる。すなわち、ステップＳ１３９において、受信用バッファ制御モジュール１８１は、再生アプリケーション用バッファ１６４に記憶されている動画像データをデコーダ用バッファ１６５に移動させると共に、データ受信用バッファ１６３に記憶されている動画像データを再生アプリケーション用バッファ１６４に移動させる。
【０２８４】
ステップＳ１４０において、フロー制御モジュール１８４は、デコーダ用バッファ１６５に所定の量の動画像データが記憶されたか否か、すなわちデコーダ用バッファ１６５に所定の量の動画像データが送られたか否かを判定し、デコーダ用バッファ１６５に所定の量の動画像データが送られるまで、ステップＳ１４０の判定の処理を繰り返す。
【０２８５】
ステップＳ１４０において、デコーダ用バッファ１６５に所定の量の動画像データが送られたと判定された場合、ステップＳ１４１に進み、フロー制御モジュール１８４は、デコーダ制御モジュール１８３にデコードの開始を指示する。デコーダ制御モジュール１８３は、フロー制御モジュール１８４からデコードの開始が指示されると、デコーダ１６６に、デコーダ用バッファ１６５に記憶されている動画像データの復号の開始を指示する。デコーダ１６６は、デコーダ用バッファ１６５に記憶されている動画像データの復号を開始し、処理は終了する。
【０２８６】
次に、ステップＳ１０４およびステップＳ１０５の処理の詳細を、図３８のフローチャートを参照して説明する。ステップＳ１６１において、フロー制御モジュール１８４は、RAM１６７に記憶されている再生制御情報における、VOBU_SML_CATに配置されているILVU flagが立っているか否かを判定し、ILVU flagが立つまでステップＳ１６１の判定の処理を繰り返す。このILVU flagが立っている場合、そのVOBUはインターリーブド・ブロック内に位置している。
【０２８７】
ステップＳ１６１において、ILVU flagが立っていると判定された場合、ステップＳ１６２に進み、フロー制御モジュール１８４は、使用者の操作により選択されているか、またはデフォルトとして設定されているAngle番号に対応したILVUをLogical Block単位で特定する。より具体的には、ステップＳ１６２において、フロー制御モジュール１８４は、Angle番号に対応したILVUの最初のLogical BlockのLogical Block番号であるStart ILVU LBNとAngle番号に対応したILVUの最後のLogical BlockのLogical Block番号であるEnd ILVU LBNとを特定する。フロー制御モジュール１８４は、読み出し制御モジュール１８２に、再生範囲を、Start ILVU LBNとEnd ILVU LBNとによりLogical Block単位で指定する。
【０２８８】
ステップＳ１６３において、フロー制御モジュール１８４は、ILVU flagが立っている動画像データを再生アプリケーション用バッファ１６４から削除し、データ受信用バッファ１６３内のデータも削除する。
【０２８９】
ステップＳ１６４において、読み出し制御モジュール１８２は、ネットワーク１０３を介して、Start ILVU LBNからEnd ILVU LBNまでのLogical Block単位で特定される再生範囲の読み出しをサーバ１０１に要求する。なお、ステップＳ１６４において、サーバ１０１のデータ送信用バッファ１２４がクリアするモードによる動画像データの読み出しが要求される。
【０２９０】
ステップＳ１６５において、読み出し制御モジュール１８２は、変数Countに１を設定する。変数Countは、受信したILVUの数を数えるための変数である。
【０２９１】
ステップＳ１６６において、受信用バッファ制御モジュール１８１は、サーバ１０１が要求に応じてネットワーク１０３を介して動画像データを送信し、送信されてきた動画像データが通信部１６２において受信されて、データ受信用バッファ１６３に動画像データが記憶されたか否か、すなわち、データ受信用バッファ１６３に動画像データが送られてきたか否かを判定し、データ受信用バッファ１６３に動画像データが送られてくるまで、ステップＳ１６６の判定の処理を繰り返す。
【０２９２】
ステップＳ１６７において、読み出し制御モジュール１８２は、例えば、シームレス用アングル情報（SML_AGLI）を参照することにより、受信したILVUがseamless Angle Blockの最終のILVUであるか否かを判定する。例えば、図３９で示されるように、読み出し制御モジュール１８２は、受信したILVUがseamless Angle BlockであるCell#2の最終のILVUであるか否かを判定する。
【０２９３】
ステップＳ１６７において、受信したILVUがseamless Angle Blockの最終のILVUでないと判定された場合、ステップＳ１６８に進み、読み出し制御モジュール１８２は、変数Countが予め定めた所定回数未満であるか否かを判定する。ここで、所定回数は、再生アプリケーション用バッファ１６４に記憶するILUVの数の上限を示す。
【０２９４】
ステップＳ１６８において、変数Countが予め定めた所定回数未満であると判定された場合、ステップＳ１６９に進み、フロー制御モジュール１８４は、Angle番号に対応した次のILVUをLogical Block単位で特定する。より具体的には、ステップＳ１６９において、フロー制御モジュール１８４は、Angle番号に対応した次のILVUの最初のLogical BlockのLogical Block番号であるStart ILVU LBNとAngle番号に対応した次のILVUの最後のLogical BlockのLogical Block番号であるEnd ILVU LBNとを特定する。フロー制御モジュール１８４は、読み出し制御モジュール１８２に、再生範囲を、Start ILVU LBNとEnd ILVU LBNとによりLogical Block単位で指定する。
【０２９５】
ステップＳ１７０において、読み出し制御モジュール１８２は、ネットワーク１０３を介して、ステップＳ１６９で特定されたStart ILVU LBNからEnd ILVU LBNまでのLogical Block単位で特定される再生範囲の読み出しをサーバ１０１に要求する。なお、ステップＳ１７０において、サーバ１０１のデータ送信用バッファ１２４がクリアされないモードによる動画像データの読み出しが要求される。
【０２９６】
ステップＳ１７１において、読み出し制御モジュール１８２は、変数Countを１だけインクリメントして、手続きは、ステップＳ１６６に戻り、上述した処理を繰り返す。
【０２９７】
ステップＳ１６８において、変数Countが予め定めた所定回数未満でないと判定された場合、ステップＳ１７２に進み、読み出し制御モジュール１８２は、変数Countに０を設定する。ステップＳ１７３において、フロー制御モジュール１８４は、再生アプリケーション用バッファ１６４に記憶されている動画像データのデータ量が所定の残量になったか否かを判定し、再生アプリケーション用バッファ１６４に記憶されている動画像データのデータ量が所定の残量になるまで、ステップＳ１７３の判定の処理を繰り返す。
【０２９８】
ステップＳ１７３において、再生アプリケーション用バッファ１６４に記憶されている動画像データのデータ量が所定の残量になったと判定された場合、ステップＳ１６９に戻り、次のILVUを取得する処理を実行する。
【０２９９】
ステップＳ１６７において、受信したILVUがseamless Angle Blockの最終のILVUであると判定された場合、処理は終了する。
【０３００】
図４０は、再生アプリケーション用バッファ１６４による処理を説明するフローチャートである。ステップＳ１９１において、再生アプリケーション用バッファ１６４は、自分に記憶されたPackが、図２５を参照して説明したナビゲーション・パックであるか否かを判定し、ナビゲーション・パックであると判定された場合、ステップＳ１９２に進み、ナビゲーション・パック内のPCIのデータとDSIのデータとをRAM１６７にコピーする。例えば、再生アプリケーション用バッファ１６４は、PCIパケットおよびDSIパケットを抽出して、抽出したPCIパケットおよびDSIパケットをRAM１６７に記憶させる。
【０３０１】
ステップＳ１９３において、再生アプリケーション用バッファ１６４は、RAM１６７のライトポインタを１つ進める。
【０３０２】
ステップＳ１９４において、再生アプリケーション用バッファ１６４は、データ受信用バッファから受け取った動画像データ、すなわち、ナビゲーション・パックであるか否かを判定した部分の動画像データをデコーダ用バッファ１６５に送り、デコーダ用バッファ１６５に動画像データを記憶させ、処理は終了する。
【０３０３】
ステップＳ１９１において、ナビゲーション・パックでないと判定された場合、ステップＳ１９２およびステップＳ１９３はスキップされる。
【０３０４】
図４１は、ステップＳ１０７およびステップＳ１０８に対応する処理の詳細を説明するフローチャートである。ステップＳ２１１において、ナビゲーション解析モジュール１８５は、再生制御情報を参照して、Seamless Angle Blockの次の点からPGCの終点までの再生範囲をCell単位で特定する。ナビゲーション解析モジュール１８５は、特定した再生範囲をCell単位で、フロー制御モジュール１８４に指定する。
【０３０５】
例えば、ナビゲーション解析モジュール１８５は、図４２で示されるPGCの例において、Seamless Angle Blockの次の点からPGCの終点までの再生範囲であるCEll#3を特定する。
【０３０６】
ステップＳ２１２において、フロー制御モジュール１８４は、ナビゲーション解析モジュール１８５から指定されたCell単位で特定された再生範囲を、Logical Block単位で特定する。より具体的には、ステップＳ２１２において、フロー制御モジュール１８４は、再生範囲の最初のLogical BlockのLogical Block番号であるStart LBNと再生範囲の最後のLogical BlockのLogical Block番号であるEnd LBNとを特定する。
【０３０７】
ステップＳ２１３において、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３をクリアし、再生アプリケーション用バッファ１６４をクリアし、デコーダ用バッファ１６５をクリアする。なお、フロー制御モジュール１８４が、再生アプリケーション用バッファ１６４をクリアし、デコーダ制御モジュール１８３が、デコーダ用バッファ１６５をクリアするようにしてもよい。
【０３０８】
ステップＳ２１４において、読み出し制御モジュール１８２が、ネットワーク１０３を介して、Start LBNとEnd LBNとによりLogical Block単位で特定される再生範囲の読み出しをサーバ１０１に要求する。
【０３０９】
ステップＳ２１５において、受信用バッファ制御モジュール１８１は、サーバ１０１が要求に応じてネットワーク１０３を介して動画像データを送信し、送信されてきた動画像データが通信部１６２において受信されて、データ受信用バッファ１６３に動画像データが記憶されたか否か、すなわち、データ受信用バッファ１６３に動画像データが送られてきたか否かを判定し、データ受信用バッファ１６３に動画像データが送られてくるまで、ステップＳ２１５の判定の処理を繰り返す。
【０３１０】
ステップＳ２１５において、データ受信用バッファ１６３に動画像データが送られてきたと判定された場合、ステップＳ２１６に進み、受信用バッファ制御モジュール１８１は、読み出し制御モジュール１８２に、動画像データが送られてきたこと、すなわち動画像データを受信したことを通知する。
【０３１１】
ステップＳ２１７において、読み出し制御モジュール１８２は、フロー制御モジュール１８４に、動画像データが送られてきたこと、すなわち動画像データを受信したことを通知する。
【０３１２】
ステップＳ２１８において、受信用バッファ制御モジュール１８１は、データ受信用バッファ１６３から再生アプリケーション用バッファ１６４へ、動画像データを移動させるとともに、再生アプリケーション用バッファ１６４からデコーダ用バッファ１６５に動画像データを移動させ、処理は終了する。すなわち、ステップＳ２１８において、受信用バッファ制御モジュール１８１は、再生アプリケーション用バッファ１６４に記憶されている動画像データをデコーダ用バッファ１６５に移動させると共に、データ受信用バッファ１６３に記憶されている動画像データを再生アプリケーション用バッファ１６４に移動させる。
【０３１３】
次に、動画像データの再生中に、使用者から停止が指示された場合の処理について説明する。図４３は、使用者から停止が指示された場合のクライアント１０２の処理を説明するフローチャートである。ステップＳ２３１において、フロー制御モジュール１８４は、デコーダ制御モジュール１８３に、デコードの停止を指示する。デコーダ制御モジュール１８３は、デコーダ１６６にデコードを停止させる。
【０３１４】
ステップＳ２３２において、フロー制御モジュール１８４は、読み出し制御モジュール１８２に、読み出しの停止を指示する。
【０３１５】
ステップＳ２３３において、読み出し制御モジュール１８２は、サーバ１０１の読み出し変換モジュール１４３に読み出しの停止を指示する。すなわち、ステップＳ２３３において、読み出し制御モジュール１８２は、通信部１６２に、読み出し変換モジュール１４３への、動画像データの読み出しの停止の指示の送信を要求する。すると、通信部１６２は、ネットワーク１０３を介して、読み出し変換モジュール１４３に、動画像データの読み出しの停止の指示を送信する。
【０３１６】
ステップＳ２３４において、読み出し制御モジュール１８２は、受信用バッファ制御モジュール１８１に、動画像データの受信の停止を指示する。これにより、受信用バッファ制御モジュール１８１は、通信部１６２において受信した動画像データの記憶を停止し、通信部１６２は、サーバ１０１から送信されてきた動画像データの受信を停止する。
【０３１７】
ステップＳ２３５において、読み出し制御モジュール１８２は、RAM１６７、データ受信用バッファ１６３、再生アプリケーション用バッファ１６４、およびデコーダ用バッファ１６５をクリアして、処理は終了する。なお、フロー制御モジュール１８４が、RAM１６７および再生アプリケーション用バッファ１６４をクリアし、デコーダ制御モジュール１８３が、デコーダ用バッファ１６５をクリアするようにしてもよい。
【０３１８】
図４４は、使用者から停止が指示された場合のサーバ１０１の処理を説明するフローチャートである。ステップＳ２３３により、読み出し制御モジュール１８２から、読み出し変換モジュール１４３に読み出しの停止が指示されると、ステップＳ２５１において、読み出し変換モジュール１４３は、ストレージ制御モジュール１４２に、動画像データの読み出しの停止を指示する。ストレージ制御モジュール１４２は、ストレージデバイス１２２に動画像データの読み出しの停止を指示するので、ストレージデバイス１２２は、動画像データの読み出しを停止する。
【０３１９】
ステップＳ２５２において、ストレージ制御モジュール１４２は、送信用バッファ制御モジュール１４１に、動画像データの送信の停止を指示する。送信用バッファ制御モジュール１４１は、通信部１２５に動画像データの送信の停止を指示するので、通信部１２５は、動画像データの送信を停止する。
【０３２０】
ステップＳ２５３において、ストレージ制御モジュール１４２は、RAM１２３およびデータ送信用バッファ１２４をクリアして、処理は終了する。
【０３２１】
次に、動画像データの再生中に、使用者から早送りが指示された場合の処理について説明する。図４５は、クライアント１０２の早送りの処理を説明するフローチャートである。ステップＳ２７１において、クライアント１０２は、動画像データの再生の一時停止の処理を実行する。ステップＳ２７２において、クライアント１０２は、ネットワーク１０３を介して、サーバ１０１から早送り用のデータを読み出す。
【０３２２】
ステップＳ２７３において、クライアント１０２は、早送り再生を開始して、処理は終了する。
【０３２３】
図４６は、ステップＳ２７１に対応する、動画像データの再生の一時停止の処理を説明するフローチャートである。ステップＳ２９１において、フロー制御モジュール１８４は、デコーダ制御モジュール１８３に、デコードの一時停止を指示する。
【０３２４】
ステップＳ２９２において、フロー制御モジュール１８４は、読み出し制御モジュール１８２に、読み出しの停止を指示する。
【０３２５】
ステップＳ２９３において、読み出し制御モジュール１８２は、サーバ１０１の読み出し変換モジュール１４３に読み出しの停止を指示する。すなわち、ステップＳ２９３において、読み出し制御モジュール１８２は、通信部１６２に、読み出し変換モジュール１４３への、動画像データの読み出しの停止の指示の送信を要求する。すると、通信部１６２は、ネットワーク１０３を介して、読み出し変換モジュール１４３に、動画像データの読み出しの停止の指示を送信する。
【０３２６】
ステップＳ２９４において、読み出し制御モジュール１８２は、受信用バッファ制御モジュール１８１に、動画像データの受信の停止を指示する。これにより、受信用バッファ制御モジュール１８１は、通信部１６２において受信した動画像データの記憶を停止し、通信部１６２は、サーバ１０１から送信されてきた動画像データの受信を停止する。
【０３２７】
ステップＳ２９５において、読み出し制御モジュール１８２は、RAM１６７、データ受信用バッファ１６３、再生アプリケーション用バッファ１６４、およびデコーダ用バッファ１６５をクリアして、リターンする。なお、フロー制御モジュール１８４が、RAM１６７および再生アプリケーション用バッファ１６４をクリアし、デコーダ制御モジュール１８３が、デコーダ用バッファ１６５をクリアするようにしてもよい。
【０３２８】
図４７は、一時停止が指示された場合のサーバ１０１の処理を説明するフローチャートである。ステップＳ２９３により、読み出し制御モジュール１８２から、読み出し変換モジュール１４３に読み出しの停止が指示されると、ステップＳ３１１において、読み出し変換モジュール１４３は、ストレージ制御モジュール１４２に、動画像データの読み出しの停止を指示する。ストレージ制御モジュール１４２は、ストレージデバイス１２２に動画像データの読み出しの停止を指示するので、ストレージデバイス１２２は、動画像データの読み出しを停止する。
【０３２９】
ステップＳ３１２において、ストレージ制御モジュール１４２は、送信用バッファ制御モジュール１４１に、動画像データの送信の停止を指示する。送信用バッファ制御モジュール１４１は、通信部１２５に動画像データの送信の停止を指示するので、通信部１２５は、動画像データの送信を停止する。
【０３３０】
ステップＳ３１３において、ストレージ制御モジュール１４２は、RAM１２３およびデータ送信用バッファ１２４をクリアして、処理は終了する。
【０３３１】
図４８は、クライアント１０２における、早送り再生の処理の詳細を説明するフローチャートである。ステップＳ３３１において、ナビゲーション解析モジュール１８５は、現在の再生位置からn秒先の動画像データを再生するのに必要なVOBUの先頭アドレスを特定する。
【０３３２】
より具体的には、ナビゲーション・パックのデータ・サーチ情報（DSI）に含まれるVOBUサーチ情報（VOBU_SRI）に、そのナビゲーション・パックが含まれているVOBUからn秒後に再生されるVOBUのアドレスが記述されているので、これを参照することで、図４９に示されるように、ナビゲーション解析モジュール１８５は、現在の再生位置からn秒先の動画像データを再生するのに必要なVOBUの先頭アドレスStart LBNを特定する。
【０３３３】
ステップＳ３３２において、ナビゲーション解析モジュール１８５は、ネットワーク１０３を介して、サーバ１０１から、先頭アドレスが特定されたVOBUのナビゲーション・パックを読み出す。なお、ステップＳ３３２において、サーバ１０１のデータ送信用バッファ１２４がクリアしないモードによるナビゲーション・パックの読み出しが要求される。
【０３３４】
具体的には、ナビゲーション解析モジュール１８５は、フロー制御モジュール１８４を介して、読み出し制御モジュール１８２に、先頭アドレスが特定されたVOBUのナビゲーション・パックの読み出しを指示する。すると、読み出し制御モジュール１８２は、通信部１６２に、先頭アドレスが特定されたVOBUのナビゲーション・パックの読み出しの要求の送信を指示する。
【０３３５】
通信部１６２は、ネットワーク１０３を介して、サーバ１０１に、先頭アドレスが特定されたVOBUのナビゲーション・パックの読み出しの要求を送信する。サーバ１０１は、要求に応じて、先頭アドレスが特定されたVOBUのナビゲーション・パックを読み出して、ネットワーク１０３を介して、ナビゲーション・パックを送信してくるので、読み出し制御モジュール１８２は、ネットワーク１０３を介して、サーバ１０１から送信されてきたナビゲーション・パックを通信部１６２に受信させる。
【０３３６】
読み出し制御モジュール１８２は、通信部１６２において受信されたナビゲーション・パックを取得して、取得したナビゲーション・パックをフロー制御モジュール１８４に供給する。
【０３３７】
ステップＳ３３３において、フロー制御モジュール１８４は、サーバ１０１から読み出したナビゲーション・パックから、早送りに必要なVOBUのデータの最終アドレスEnd LBNを特定する。
【０３３８】
ステップＳ３３２により、VOBU_SRIで、特定したVOBUのナビゲーション・パックを読み出すことで、読み出されたナビゲーション・パックに含まれるデータ・サーチ情報（DSI）のDSI一般情報（DSI_GI）に配置されている、VOBU_3RDREF_EAから早送りに必要な動画像データの範囲を特定することができる。
【０３３９】
VOBU_3RDREF_EAは、例えば、図５０で示されるように、第３リファレンスピクチャーの最終データが記録されているアドレス（LBN）を示す。図５０において、斜線を付した四角は、早送り再生に必要な動画像データの範囲を示す。
【０３４０】
すなわち、最終アドレスEnd LBNに、VOBU_3RDREF_EAで示されるアドレスが設定される。
【０３４１】
フロー制御モジュール１８４は、現在の再生位置からn秒先の動画像データを再生するのに必要なVOBUの先頭アドレスStart LBN、および早送りに必要なVOBUのデータの最終アドレスEnd LBNにより、Logical Block単位で再生範囲を、読み出し制御モジュール１８２に指定する。
【０３４２】
ステップＳ３３４において、読み出し制御モジュール１８２は、ネットワーク１０３を介して、サーバ１０１から、Start LBN+1からEnd LBNまでの範囲の動画像データを読み出す。なお、ステップＳ３３４において、サーバ１０１のデータ送信用バッファ１２４がクリアしないモードによる動画像データの読み出しが要求される。
【０３４３】
すなわち、読み出し制御モジュール１８２は、先頭アドレスStart LBNを１だけインクリメントして得られるStart LBN+1と、最終アドレスEnd LBNとにより示される、Logical Block単位の動画像データの読み出しをサーバ１０１に要求する。サーバ１０１は、要求された範囲の動画像データを読み出して、ネットワーク１０３を介して、Start LBN+1からEnd LBNまでの範囲の、早送り再生に必要な動画像データを送信してくるので、クライアント１０２はこれを受信する。
【０３４４】
ステップＳ３３５において、デコーダ制御モジュール１８３は、早送り再生中（デコード中）であるか否かを判定し、早送り再生中でないと判定された場合、ステップＳ３３６に進み、デコーダ用バッファ１６５に所定の量の動画像データが記憶されたか否か、すなわちデコーダ用バッファ１６５に所定の量の動画像データが送られたか否かを判定する。
【０３４５】
ステップＳ３３６において、デコーダ用バッファ１６５に所定の量の動画像データが送られたと判定された場合、ステップＳ３３７に進み、フロー制御モジュール１８４は、デコーダ制御モジュール１８３に早送り再生（デコード）の開始を指示して、ステップＳ３３８に進む。デコーダ制御モジュール１８３は、フロー制御モジュール１８４から早送り再生（デコード）の開始が指示されると、デコーダ１６６に、デコーダ用バッファ１６５に記憶されている動画像データの復号の開始を指示する。デコーダ１６６は、デコーダ用バッファ１６５に記憶されている動画像データの復号を開始する。
【０３４６】
ステップＳ３３６において、デコーダ用バッファ１６５に所定の量の動画像データが送られていないと判定された場合、ステップＳ３３７はスキップされて、手続きは、ステップＳ３３８に進む。
【０３４７】
ステップＳ３３８において、デコーダ制御モジュール１８３は、早送りのキャンセルの要求を受けたか否かを判定し、早送りのキャンセルの要求を受けていないと判定された場合、ステップＳ３３１に戻り、上述した処理を繰り返す。
【０３４８】
ステップＳ３３８において、早送りのキャンセルの要求を受けたと判定された場合、処理は終了する。
【０３４９】
ステップＳ３３５において、早送り再生中であると判定された場合、ステップＳ３３６およびステップＳ３３７はスキップされて、手続きは、ステップＳ３３８に進む。
【０３５０】
このように、より簡単に、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供し、動画像データを再生することができるようになる。
【０３５１】
例えば、DVDビデオフォーマットで記録されたコンテンツのネットワーク再生システムを、既存のDVDプレーヤの機能を流用して構築することが可能となる。
【０３５２】
現在のパーソナルコンピュータの処理能力から推察すると、パーソナルコンピュータをベースにしたネットワーク環境でもDVDビデオフォーマットの動画像データのネットワーク再生は可能と思われる。現在、DVDプレーヤの価格は１万円以下ということも珍しくはない。それに比較してパーソナルコンピュータの場合、そこまで安くは無い。
【０３５３】
本発明では、クライアントのシステムを既存のDVDプレーヤの機能を利用して構成する事が可能であり、故に、DVDビデオフォーマットの動画像データのネットワーク再生システムを低価格で供給する事が可能となる。
【０３５４】
また、サーバで一旦デコードし、例えばMPEG-TSに再エンコードしてクライアントに送信するようなネットワーク再生システムと比較しても、対応できるクライアントの数の上限が、サーバに設けられたデコードおよびエンコードシステムの数によらないので、より拡張性が高いネットワークシステムをユーザに提供できる。
【０３５５】
なお、ストレージデバイス１２２に記録される動画像データは、DVDビデオフォーマットの動画像データのイメージデータに限らず、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データであればよい。例えば、Blu-ray Disc（商標）またはHD（High Definition） DVDなどに記録される動画像データであってもよい。
【０３５６】
このように、動画像データを送信し、動画像データを受信するようにした場合には、動画像データを再生することができる。また、提供装置から提供された動画像データから、動画像データにおけるフォーマットの単位のつながりと配置とを記述する単位情報を抽出し、抽出された単位情報から、再生しようとする範囲の動画像データを記録している論理ブロックを特定し、特定された論理ブロックに記録されている動画像データの提供を、ネットワークを介して提供装置に要求し、論理ブロックを単位として動画像データを記録し、ネットワークを介して情報処理装置から要求された動画像データの論理ブロックからの読み出しを制御し、論理ブロックから読み出された動画像データをネットワークを介して情報処理装置に提供するようにした場合には、より簡単に、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供し、動画像データを再生することができる。
【０３５７】
また、提供装置から提供された動画像データから、動画像データにおけるフォーマットの単位のつながりと配置とを記述する単位情報を抽出し、抽出された単位情報から、再生しようとする範囲の動画像データを記録している論理ブロックを特定し、特定された論理ブロックに記録されている動画像データの提供を、ネットワークを介して提供装置に要求するようにした場合には、より簡単に、ネットワークを介して提供される、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データを再生することができる。
【０３５８】
このように、動画像データを記録し、動画像データを送信するようにした場合には、動画像データを提供することができる。また、提供された動画像データを再生する情報処理装置であって、提供した動画像データに含まれる、動画像データにおけるフォーマットの単位のつながりと配置とを記述する単位情報から、再生しようとする範囲の動画像データが記録されている論理ブロックを特定し、特定された論理ブロックに記録されている動画像データの提供をネットワークを介して要求してきた情報処理装置からのその要求に応じて、論理ブロックを単位として記録手段に記録されている動画像データの論理ブロックからの読み出しを制御し、論理ブロックから読み出された動画像データをネットワークを介して情報処理装置に提供するようにした場合には、より簡単に、論理ブロックを単位として記録媒体に記録されるデータであって、連続して再生される範囲のデータを単位とするフォーマットの動画像のデータである動画像データをネットワークを介して提供することができる。
【０３５９】
図５１は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU（Central Processing Unit）３０１は、ROM（Read Only Memory）３０２、または記憶部３０８に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）３０３には、CPU３０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU３０１、ROM３０２、およびRAM３０３は、バス３０４により相互に接続されている。
【０３６０】
CPU３０１にはまた、バス３０４を介して入出力インタフェース３０５が接続されている。入出力インタフェース３０５には、キーボード、マウス、マイクロホンなどよりなる入力部３０６、ディスプレイ、スピーカなどよりなる出力部３０７が接続されている。CPU３０１は、入力部３０６から入力される指令に対応して各種の処理を実行する。そして、CPU３０１は、処理の結果を出力部３０７に出力する。
【０３６１】
入出力インタフェース３０５に接続されている記憶部３０８は、例えばハードディスクからなり、CPU３０１が実行するプログラムや各種のデータを記憶する。通信部３０９は、インターネットやローカルエリアネットワークなどのネットワークを介して外部の装置と通信する。
【０３６２】
また、通信部３０９を介してプログラムを取得し、記憶部３０８に記憶してもよい。
【０３６３】
入出力インタフェース３０５に接続されているドライブ３１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア３１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部３０８に転送され、記憶される。
【０３６４】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０３６５】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図５１に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスクを含む）、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア３１１、または、プログラムが一時的もしくは永続的に格納されるROM３０２や、記憶部３０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部３０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０３６６】
なお、本明細書において、プログラム記録媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３６７】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０３６８】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０３６９】
【図１】従来の再生システムの構成を示すブロック図である。
【図２】シームレスに再生できる範囲の例を示す図である。
【図３】タイトルの構成の例を示す図である。
【図４】PGC#1とLogical Blockとの関係を示す図である。
【図５】Angle機能に対応したデータの配置の例を示す図である。
【図６】ILVUの構成の詳細の例を示す図である。
【図７】Angle機能に対応したデータの再生を説明する図である。
【図８】Angle機能に対応したデータの再生を説明する図である。
【図９】Angle機能に対応したデータの再生を説明する図である。
【図１０】本発明の一実施の形態の再生システムの構成を示すブロック図である。
【図１１】ストレージデバイスに記録されている動画像データの例を示す図である。
【図１２】ストレージデバイスに記録されている動画像データの例を示す図である。
【図１３】イメージデータのオフセットおよびサイズの例を示す図である。
【図１４】ストレージデバイスに記録されている動画像データの例を示す図である。
【図１５】DVDビデオフォーマットを説明する図である。
【図１６】DVDビデオフォーマットを説明する図である。
【図１７】DVDビデオフォーマットを説明する図である。
【図１８】DVDビデオフォーマットを説明する図である。
【図１９】DVDビデオフォーマットを説明する図である。
【図２０】DVDビデオフォーマットを説明する図である。
【図２１】DVDビデオフォーマットを説明する図である。
【図２２】DVDビデオフォーマットを説明する図である。
【図２３】DVDビデオフォーマットを説明する図である。
【図２４】DVDビデオフォーマットを説明する図である。
【図２５】DVDビデオフォーマットを説明する図である。
【図２６】DVDビデオフォーマットを説明する図である。
【図２７】DVDビデオフォーマットを説明する図である。
【図２８】DVDビデオフォーマットを説明する図である。
【図２９】DVDビデオフォーマットを説明する図である。
【図３０】読み出し変換モジュールの処理を説明するフローチャートである。
【図３１】ストレージ制御モジュールの処理を説明するフローチャートである。
【図３２】送信用バッファ制御モジュールの処理を説明する。
【図３３】Seamless Angle Blockがない場合のクライアントの処理を説明するフローチャートである。
【図３４】Seamless Angle Blockがある場合のクライアントの処理を説明するフローチャートである。
【図３５】Seamless Angle Blockの例を説明する図である。
【図３６】Seamless Angle Blockより手前の動画像データの読み出しの処理を説明するフローチャートである。
【図３７】C_FILVU_EAで示される位置の例を説明する図である。
【図３８】Seamless Angle Blockの読み出しの処理を説明するフローチャートである。
【図３９】Seamless Angle Blockの例を説明する図である。
【図４０】再生アプリケーション用バッファによる処理を説明するフローチャートである。
【図４１】Seamless Angle Blockより後の動画像データの読み出しの処理を説明するフローチャートである。
【図４２】Seamless Angle Blockより後のCellの例を説明する図である。
【図４３】停止が指示された場合のクライアントの処理を説明するフローチャートである。
【図４４】停止が指示された場合のサーバの処理を説明するフローチャートである。
【図４５】クライアントの早送りの処理を説明するフローチャートである。
【図４６】動画像データの再生の一時停止の処理を説明するフローチャートである。
【図４７】一時停止が指示された場合のサーバの処理を説明するフローチャートである。
【図４８】早送り再生の処理の詳細を説明するフローチャートである。
【図４９】早送り再生における先頭アドレスStart LBNの例を説明する図である。
【図５０】早送り再生における最終アドレスEnd LBNの例を説明する図である。
【図５１】パーソナルコンピュータの構成の例を示すブロック図である。
【符号の説明】
【０３７０】
１０１  サーバ，  １０２  クライアント，  １０３  ネットワーク，  １２１  ホストCPU，  １２２  ストレージデバイス１２２，  １２３  RAM，  １２４  データ送信用バッファ１２４，  １２５  通信部，  １４１  送信用バッファ制御モジュール，  １４２  ストレージ制御モジュール，  １４３  読み出し変換モジュール，  １４４  再送通知モジュール，  １４５  リスト管理モジュール，  １６１  ホストCPU，  １６２  通信部，  １６３  データ受信用バッファ，  １６４  再生アプリケーション用バッファ，  １６５  デコーダ用バッファ，  １６６  デコーダ，  １６７  RAM，  １８１  受信用バッファ制御モジュール，  １８２  読み出し制御モジュール，  １８３  デコーダ制御モジュール，  １８４  フロー制御モジュール，  １８５  ナビゲーション解析モジュール，  １８６  リスト表示モジュール，  ２０１  イメージデータ，  ３０１  ＣＰＵ，  ３０２  ＲＯＭ，  ３０３  ＲＡＭ，  ３０８  記憶部，  ３１１  リムーバブルメディア
【図１】
2007317264.tif 000003
【図２】
2007317264.tif 000004
【図３】
2007317264.tif 000005
【図４】
2007317264.tif 000006
【図５】
2007317264.tif 000007
【図６】
2007317264.tif 000008
【図７】
2007317264.tif 000009
【図８】
2007317264.tif 000010
【図９】
2007317264.tif 000011
【図１０】
2007317264.tif 000012
【図１１】
2007317264.tif 000013
【図１２】
2007317264.tif 000014
【図１３】
2007317264.tif 000015
【図１４】
2007317264.tif 000016
【図１５】
2007317264.tif 000017
【図１６】
2007317264.tif 000018
【図１７】
2007317264.tif 000019
【図１８】
2007317264.tif 000020
【図１９】
2007317264.tif 000021
【図２０】
2007317264.tif 000022
【図２１】
2007317264.tif 000023
【図２２】
2007317264.tif 000024
【図２３】
2007317264.tif 000025
【図２４】
2007317264.tif 000026
【図２５】
2007317264.tif 000027
【図２６】
2007317264.tif 000028
【図２７】
2007317264.tif 000029
【図２８】
2007317264.tif 000030
【図２９】
2007317264.tif 000031
【図３０】
2007317264.tif 000032
【図３１】
2007317264.tif 000033
【図３２】
2007317264.tif 000034
【図３３】
2007317264.tif 000035
【図３４】
2007317264.tif 000036
【図３５】
2007317264.tif 000037
【図３６】
2007317264.tif 000038
【図３７】
2007317264.tif 000039
【図３８】
2007317264.tif 000040
【図３９】
2007317264.tif 000041
【図４０】
2007317264.tif 000042
【図４１】
2007317264.tif 000043
【図４２】
2007317264.tif 000044
【図４３】
2007317264.tif 000045
【図４４】
2007317264.tif 000046
【図４５】
2007317264.tif 000047
【図４６】
2007317264.tif 000048
【図４７】
2007317264.tif 000049
【図４８】
2007317264.tif 000050
【図４９】
2007317264.tif 000051
【図５０】
2007317264.tif 000052
【図５１】
2007317264.tif 000053