(57)【要約】【課題】DVD再生において、任意の部分を読み出そうとする場合の、待ち時間の発生をより少なくするようにする。【解決手段】HDD１１６は、DVD１１９のコンテンツの各プログラムの開始位置から所定期間の部分のデータをスタブデータとして記録する。ストレージマネージャ１１４は、指定されたプログラムを再生するとき、そのプログラムのスタブデータをHDD１１６から読み出し、スタブデータに続くデータをDVD１１９から読み出すように、データの読み出しを制御する。本発明は、コンテンツを記録し再生する記録再生システムに適用できる。【選択図】図５
2007164835.tif 000002
【特許請求の範囲】
【請求項１】
DVDまたは記憶媒体からデータを読み出す読み出し装置において、
コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記コンテンツの所定の部分を示す情報を生成する生成手段と、
前記生成手段により生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶手段と、
前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御手段と
を備える読み出し装置。
【請求項２】
前記所定期間は、前記DVDからコンテンツのデータを読み出すまでに必要な時間より長い期間である
請求項１に記載の読み出し装置。
【請求項３】
前記所定の部分は、DVDビデオ規格におけるプログラムまたはPTTの開始位置から所定期間の部分である
請求項１に記載の読み出し装置。
【請求項４】
前記生成手段は、
前記プログラムまたはPTTの先頭セルの先頭VOBUの先頭アドレスを、前記所定の部分の開始位置とし、前記プログラムまたはPTTの先頭セルの先頭VOBUから前記所定期間後に再生されるVOBUの先頭アドレスを、前記所定の部分の終了位置として、前記情報を生成する
請求項３に記載の読み出し装置。
【請求項５】
コンテンツの読み出しの開始を受け付ける受付手段をさらに備え、
前記読み出し制御手段は、前記記憶媒体に記憶されている、前記受付手段により受け付けられた前記読み出しに対応する前記所定の部分のデータを読み出し、前記記憶媒体から読み出されるデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する
請求項１に記載の読み出し装置。
【請求項６】
DVDまたは記憶媒体からデータを読み出す読み出し装置の読み出し方法において、
コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記コンテンツの所定の部分を示す情報を生成する生成ステップと、
前記生成ステップの処理で生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶ステップと、
前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御ステップと
を含む読み出し方法。
【請求項７】
DVDまたは記憶媒体からデータを読み出す読み出し処理をコンピュータに実行させるプログラムにおいて、
前記コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記コンテンツの所定の部分を示す情報を生成する生成ステップと、
前記生成ステップの処理で生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶ステップと、
前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御ステップと
を含む読み出し処理をコンピュータに実行させることを特徴とするプログラム。
【請求項８】
請求項７に記載のプログラムが記録されているプログラム記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は読み出し装置および方法、プログラム並びにプログラム記録媒体に関し、特に、コンテンツを読み出す読み出し装置および方法、プログラム並びにプログラム記録媒体に関する。
【背景技術】
【０００２】
図１は、従来の記録再生システムの構成を示すブロック図である。
【０００３】
ビデオ／オーディオエンコーダ１１は、入力された入力画像信号に対応したベースバンドの画像データをMPEG（Moving Pictures Experts Group）方式で符号化する。また、ビデオ／オーディオエンコーダ１１は、入力された音声信号（図示せず）に対応したベースバンドの音声データをMPEG方式で符号化する。ビデオ／オーディオエンコーダ１１は、符号化により得られたデータをストリームエンコーダ１２に供給する。
【０００４】
ストリームエンコーダ１２は、ビデオ／オーディオエンコーダ１１から供給された、符号化されているデータを多重化して、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームに変換し、変換により得られたストリームをライトバッファ１３に供給する。
【０００５】
ライトバッファ１３は、ストリームエンコーダ１２から供給されたストリーム（データ）を一時的に記憶して、記憶しているストリーム（データ）をドライブ１４に供給する。
【０００６】
ドライブ１４は、装着されている光ディスク１５に、ライトバッファ１３から供給されたデータをファイルとして記録する。また、ドライブ１４は、装着されている光ディスク１５からファイルとして記録されているデータを読み出して、読み出したデータをリードバッファ１９に供給する。
【０００７】
ジュークシステム１６は、ドライブ１４への光ディスク１５の着脱を制御する。ジュークシステム１６は、複数の光ディスク１５のそれぞれを格納するディスクスロット１７からいずれかの光ディスク１５をピッカー１８に選択させる。
【０００８】
ピッカー１８は、ジュークシステム１６の制御の基に、選択した光ディスク１５を搬送し、ドライブ１４に装着させる。また、ピッカー１８は、ジュークシステム１６の制御の基に、ドライブ１４から取り出された光ディスク１５を搬送して、いずれかのディスクスロット１７に格納させる。すなわち、ジュークシステム１６は、ピッカー１８を制御する。
【０００９】
リードバッファ１９は、半導体メモリまたはハードディスクからなり、ドライブ１４から供給されたデータ（ストリーム）を一時的に記憶する。リードバッファ１９は、読み出しジッタを吸収し、データレートを一定となるように平坦化して、記憶しているデータ（ストリーム）をストリームデコーダ２０に供給する。
【００１０】
ストリームデコーダ２０は、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームを、画像データおよび音声データに分離して、分離した画像データおよび音声データをビデオ／オーディオデコーダ２１に供給する。
【００１１】
ビデオ／オーディオデコーダ２１は、符号化されている画像データおよび音声データを、いわゆるベースバンドの画像データおよび音声データに復号する。また、ビデオ／オーディオデコーダ２１は、復号により得られたベースバンドの画像データおよび音声データを基にした、出力画像信号および音声信号（図示せず）をモニタ２２に供給する。
【００１２】
モニタ２２は、出力画像信号を基にして、画像を表示すると共に、供給された音声信号を基にして、音声を出力する。
【００１３】
ここで、図２を参照して、記録再生システムの再生処理を説明する。時刻t0において、使用者から再生が要求されると、再生が要求されたコンテンツのデータを記録している光ディスク１５が、ピッカー１８によって、ディスクスロット１７からドライブ１４に搬送されて、時刻t1において、ドライブ１４に装着（マウント）される。
【００１４】
時刻t2において、ドライブ１４による、装着された光ディスク１５に記録されているデータの読み出しが開始され、リードバッファ１９に記憶される。そして、時刻t3において、リードバッファ１９に、所定のデータ量のデータが溜まった場合、リードバッファ１９に記憶されたデータがストリームデコーダ２０に読み出される。そして、ビデオ／オーディオデコーダ２１は、画像データおよび音声データを復号して、復号により得られた画像データおよび音声データに応じた出力画像信号および音声信号をモニタ２２に供給する。時刻t4において、モニタ２２は、出力画像信号および音声信号を基にして、画像を表示し、音声を出力する。
【００１５】
すなわち時刻t0において使用者から再生が要求されてから、時刻t4において、モニタ２２に画像が表示されるまで、ディスクスロット１７に格納されている光ディスク１５が、ドライブ１４に装着されて、装着された光ディスク１５から画像データが読み出されるに必要な時間に相当するタイムラグが発生する。このタイムラグは、記録再生システムの構成にもよるが、２０秒から３０秒程度である。
【００１６】
このタイムラグは、再生を要求するたびに毎回発生するので、使用者は、これにより、非常に大きなストレスを感じることになり、この点は、操作感という観点から大きな問題である。
【００１７】
そこで、従来、第１の記録媒体に映像及び又は音声信号を記録又は再生する記録再生手段と、第１の記録媒体に比してアクセス時間が短く、第１の記録媒体に所望の映像及び又は音声信号を記録又は再生する際、当該映像及び又は音声信号の開始部分から所定時間までの信号を記録又は再生する第２の記録媒体と、記録再生手段及び上記第２の記録媒体を制御する制御手段とを設けた映像記録再生装置が開発されている（例えば、特許文献１参照）。
【００１８】
【特許文献１】特開平９−１６１４６１号公報
【発明の開示】
【発明が解決しようとする課題】
【００１９】
しかしながら、コンテンツの再生をコンテンツの途中から開始する場合にも、同様のタイムラグが発生し、このタイムラグを短縮することができれば、操作性に優れた再生機能を提供することができる。特に、プログラムやチャプタという単位で、コンテンツの途中の位置からの再生が可能なDVD(Digital Versatile Disc)において、その効果は大きい。
【００２０】
本発明はこのような状況に鑑みてなされたものであり、DVDを再生する際に、指定された部分を読み出そうとする場合の、待ち時間の発生をより少なくすることができるようにするものである。
【課題を解決するための手段】
【００２１】
本発明の第１の側面の読み出し装置は、DVDまたは記憶媒体からデータを読み出す読み出し装置において、コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記コンテンツの所定の部分を示す情報を生成する生成手段と、前記生成手段により生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶手段と、前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御手段とを備える。
【００２２】
前記所定期間は、前記DVDからコンテンツのデータを読み出すまでに必要な時間より長い期間であるようにすることができる。
【００２３】
前記所定の部分は、DVDビデオ規格におけるプログラムまたはPTTの開始位置から所定期間の部分であるようにすることができる。
【００２４】
前記生成手段は、前記プログラムまたはPTTの先頭セルの先頭VOBUの先頭アドレスを、前記所定の部分の開始位置とし、前記プログラムまたはPTTの先頭セルの先頭VOBUから前記所定期間後に再生されるVOBUの先頭アドレスを、前記所定の部分の終了位置として、前記情報を生成することができる。
【００２５】
コンテンツの読み出しの開始を受け付ける受付手段をさらに設け、前記読み出し制御手段には、前記記憶媒体に記憶されている、前記受付手段により受け付けられた前記読み出しに対応する前記所定の部分のデータを読み出し、前記記憶媒体から読み出されるデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御させることができる。
【００２６】
本発明の第1の側面の読み出し方法は、またはプログラムは、DVDまたは記憶媒体からデータを読み出す読み出し装置の読み出し方法において、またはDVDまたは記憶媒体からデータを読み出す読み出し処理をコンピュータに実行させるプログラムにおいて、コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記コンテンツの所定の部分を示す情報を生成する生成ステップと、前記生成ステップの処理で生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶ステップと、前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御ステップとを含む。
【００２７】
本発明の第1の側面の読み出し装置、読み出し方法、またはプログラムにおいては、コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記コンテンツの所定の部分を示す情報が生成され、生成された前記情報に基づいて、前記DVDから、前記所定の部分が読み出されて、前記記憶媒体に予め記憶され、前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しが制御される。
【００２８】
なお、プログラムは、記録媒体に記録することができる。
【発明の効果】
【００２９】
以上のように、本発明の第１の側面によれば、DVD再生において、指定された部分を読み出そうとする場合の、待ち時間の発生をより少なくすることができる。
【発明を実施するための最良の形態】
【００３０】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００３１】
本発明の第1の側面の読み出し装置（例えば、図４の記録再生システム１０１）は、
DVDまたは記憶媒体からデータを読み出す読み出し装置において、
コンテンツが記録されている前記DVD（例えば、図４のDVD１１９）のナビゲーション情報に基づいて、前記記憶媒体（例えば、図４のHDD１１６）に予め記憶させる、前記コンテンツの所定の部分を示す情報（例えば、図５のヒント情報）を生成する生成手段(例えば、図４のマイグレーションファイルシステム１６４)と、
前記生成手段により生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶手段（例えば、図４のストレージマネージャ１１４）と、
前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御手段（例えば、図４のストレージマネージャ１１４）と
を備える。
【００３２】
前記所定期間は、前記DVDからコンテンツのデータを読み出すまでに必要な時間より長い期間（例えば、時間Ｔ）であるようにすることができる。
【００３３】
前記所定の部分は、DVDビデオ規格におけるプログラムまたはPTT（例えば、図９のPG、PTT）の開始位置から所定期間の部分であるようにすることができる。
【００３４】
前記生成手段は、
前記プログラムまたはPTTの先頭セルの先頭VOBUの先頭アドレスを、前記所定の部分の開始位置とし、前記プログラムまたはPTTの先頭セルの先頭VOBUから前記所定期間後に再生されるVOBUの先頭アドレスを、前記所定の部分の終了位置として、前記情報を生成することができる（例えば、図１７のステップＳ３）
【００３５】
コンテンツの読み出しの開始を受け付ける受付手段（例えば、図４のアプリケーションプログラム１４１）をさらに設け、前記読み出し制御手段には、前記記憶媒体に記憶されている、前記受付手段により受け付けられた前記読み出しに対応する前記所定の部分のデータを読み出し、前記記憶媒体から読み出されるデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御させることができる（例えば、図２４のステップＳ７３）
【００３６】
本発明の第1の読み出し方法、またはプログラムは、
DVDまたは記憶媒体からデータを読み出す読み出し装置の読み出し方法において、またはDVDまたは記憶媒体からデータを読み出す読み出し処理をコンピュータに実行させるプログラムにおいて、
コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記コンテンツの所定の部分を示す情報を生成する生成ステップ（例えば、図１７のステップＳ２）と、
前記生成ステップの処理で生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶ステップ（例えば、図１７のステップＳ３）と、
前記コンテンツのデータの読み出しが要求された場合、前記記憶媒体に記憶されている、前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御ステップ（例えば、図２４のステップＳ７２およびステップＳ７３）と
を含む。
【００３７】
図３は、本発明を適用した記録再生システム１０１の構成を示している。
【００３８】
ビデオ／オーディオエンコーダ１１１は、入力された入力画像信号に対応したベースバンドの画像データをMPEG方式で符号化する。また、ビデオ／オーディオエンコーダ１１１は、入力された音声信号（図示せず）に対応したベースバンドの音声データをMPEG方式で符号化する。ビデオ／オーディオエンコーダ１１１は、符号化により得られたデータをストリームエンコーダ１１２に供給する。
【００３９】
ストリームエンコーダ１１２は、ビデオ／オーディオエンコーダ１１１から供給された、符号化されているデータを多重化して、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームに変換し、変換により得られたストリームをHSM１１３に供給する。
【００４０】
HSM（Hierarchical Storage Management:階層型記憶管理）１１３は、記憶媒体へのコンテンツのデータの階層的な記憶を管理する（階層構造の記憶媒体へのコンテンツのデータの記憶を管理するとも言える）。
【００４１】
HSM１１３は、ストレージマネージャ１１４の制御の基に、ストリームエンコーダ１１２から供給されたストリームを、バッファ１１５を介してHDD（Hard Disk Drive）１１６に供給する。
【００４２】
HSM１１３は、光ディスク１１９から読み出され、HDD１１６に記憶されたデータ（ストリーム）を、HDD１１６からバッファ１１５を介して読み出して、読み出したデータ（ストリーム）をストリームデコーダ１２３に供給する。
【００４３】
HDD１１６は、高速な１次ストレージの一例であり、HSM１１３の制御の基に、バッファ１１５を介して、HSM１１３から供給されたストリーム（データ）を記憶する。また、HDD１１６は、記憶しているストリーム（データ）をバッファ１１５またはバッファ１１７に供給する。
【００４４】
バッファ１１５は、半導体メモリまたはHDD１１６の一部の記憶領域からなり、HSM１１３またはHDD１１６から供給されたストリーム（データ）を一時的に記憶して、記憶しているストリーム（データ）をHSM１１３またはHDD１１６に供給する。
【００４５】
バッファ１１７は、半導体メモリまたはHDD１１６の一部の記憶領域からなり、HDD１１６またはドライブ１１８から供給されたストリーム（データ）を一時的に記憶して、記憶しているストリーム（データ）をHDD１１６またはドライブ１１８に供給する。
【００４６】
バッファ１１５およびバッファ１１７は、読み出しジッタを吸収し、データレートを一定となるように平坦化する。
【００４７】
ドライブ１１８は、装着されている光ディスク１１９に、バッファ１１７から供給されたデータをファイルとして記録する。
【００４８】
ドライブ１１８は、装着されている光ディスク１１９からファイルとして記録されているデータを読み出して、読み出したデータをバッファ１１７に供給する。
【００４９】
ジュークシステム１２０は、ドライブ１１８への光ディスク１１９の着脱を制御する。また、ジュークシステム１２０は、複数の光ディスク１１９のそれぞれを格納するディスクスロット１２１からいずれかの光ディスク１１９をピッカー１２２に選択させる。
【００５０】
ピッカー１２２は、ジュークシステム１２０の制御の基に、選択した光ディスク１１９を搬送し、ドライブ１１８に装着させる。また、ピッカー１２２は、ジュークシステム１２０の制御の基に、ドライブ１１８から取り出された光ディスク１１９を搬送して、いずれかのディスクスロット１２１に格納させる。すなわち、ジュークシステム１２０は、ピッカー１２２を制御する。
【００５１】
ストリームデコーダ１２３は、MPEGトランスポートストリーム方式またはMPEGプログラムストリーム方式のストリームを、画像データおよび音声データに分離して、分離した画像データおよび音声データをビデオ／オーディオデコーダ１２４に供給する。
【００５２】
ビデオ／オーディオデコーダ１２４は、符号化されている画像データおよび音声データを、いわゆるベースバンドの画像データおよび音声データに復号する。また、ビデオ／オーディオデコーダ１２４は、復号により得られたベースバンドの画像データおよび音声データを基にした、出力画像信号および音声信号（図示せず）をモニタ１２５に供給する。
【００５３】
モニタ１２５は、出力画像信号を基にして、画像を表示すると共に、供給された音声信号を基にして、音声を出力する。
【００５４】
図４は、記録再生システム１０１の、本発明に係る部分のより詳細な構成を示すブロック図である。
【００５５】
アプリケーションプログラム１４１は、使用者とのインターフェースの機能を有し、使用者からの指示を取得するか、使用者に記録再生システム１０１に関する各種の情報を通知する。アプリケーションプログラム１４１は、記録再生システム１０１全体を制御する。
【００５６】
コンテンツマネージャ１４２は、記録再生システム１０１で記録されたコンテンツの内容を管理し、コンテンツの内容を検索する。
【００５７】
コンテンツマネージャ１４２は、コンテンツデータベース１６１へのコンテンツに関する各種の情報の記録を制御し、コンテンツデータベース１６１からのコンテンツに関する情報の読み出しを制御する。
【００５８】
コンテンツデータベース１６１に記録されているコンテンツに関する各種の情報は、例えば、以下の通りである。
・コンテンツに関連するファイルの情報（例えば、ファイル名、パス名など）
・コンテンツの内容および付加情報（例えば、コンテンツの名前、コンテンツのジャンルなど）、
・コンテンツの圧縮形式（方式）、再生時間、およびインデックス情報（例えば、コンテンツにおけるインデックスの位置など）
・アクセス可能なユーザ（使用者）のユーザ情報（例えば、使用者の名前、パスワードなど）
【００５９】
ストレージマネージャ１１４は、アプリケーションプログラム１４１からの要求に基づいて、HSM１１３を制御する。
【００６０】
ストレージマネージャ１１４には、システムマネージャ１６２およびファイルＩ／Ｏマネージャ１６３が設けられている。
【００６１】
システムマネージャ１６２は、ストレージ制御関連のシステムを設定し、システムログを記録し、エラーログを管理し、メンテナンス処理を実行する。
【００６２】
ファイルＩ／Ｏマネージャ１６３は、光ディスク１１９からHDD１１６へのデータの読み出し（後述するリロード）の処理、またはHDD１１６から光ディスク１１９へのデータの書き込みの処理を制御する。
【００６３】
HSM１１３は、HDD１１６、ドライブ１１８、光ディスク１１９、ジュークシステム１２０、ディスクスロット１２１、およびピッカー１２２を仮想ストレージ化し、HDD１１６によるコンテンツのデータの一時的な記憶を制御する。
【００６４】
HSM１１３は、マイグレーションファイルシステム１６４、ストレージサーバ１６５、ストアデータベース（ＤＢ）１６６、メディアサーバ１６７、およびボリウムデータベース（ＤＢ）１６８を含むように構成される。
【００６５】
マイグレーションファイルシステム１６４は、図５に示すように、キャッシュファイルとしてHDD１１６に記憶されているコンテンツの部分の領域情報、コンテンツのどの部分をキャッシュファイルとしてHDD１１６に記憶するかのヒントを示すヒント情報、およびキャッシュファイルID等の拡張属性を管理する。
【００６６】
領域情報は、キャッシュファイルとしてHDD１１６に記憶されているコンテンツの部分についての、コンテンツのデータの先頭からその部分の先頭までのオフセット値（バイト）を示すオフセット、その部分のデータ量を示すサイズ、および、その部分がストア済みであるかまたはホール状態であるかを示すフラグなどを含む。
【００６７】
ヒント情報は、キャッシュファイルとしてHDD１１６に記憶させる部分の、コンテンツのデータの先頭からその部分の先頭までのオフセット値（バイト）を示すヒントオフセット、その部分のデータ量を示すヒントサイズなどを含む。
【００６８】
なおHDD１１６に記憶させる部分の属性を示すリージョンフラッグスやその部分をマイグレーションする場合の優先順位を示すヒントプライオリティなどをヒント情報に含ませることもできる。
【００６９】
また、コンテンツの拡張属性は、オペレーティングシステムのファイルシステムにより記憶および読み出しをするようにしてもよく、また、コンテンツデータベース１６１に記憶するようにしてもよい。
【００７０】
図４に戻りマイグレーションファイルシステム１６４は、HSM１１３に管理されているファイルに対するアクセスイベントを管理する。
【００７１】
ストレージサーバ１６５は、光ディスク１１９からHDD１１６にデータに読み出すか、または、HDD１１６から光ディスク１１９にデータを書き込む。
【００７２】
また、ストレージサーバ１６５は、HDD１１６に記憶されている、コンテンツのデータを格納するキャッシュファイルに関する情報のストアデータベース１６６への記録を管理し、キャッシュファイルに関する情報のストアデータベース１６６からの読み出しを管理する。
【００７３】
ストアデータベースに記録されるキャッシュファイル１６６に関する情報とは、例えば、以下の通りである。
・HDD１１６に記憶されているキャッシュファイル名と、キャッシュファイルを特定するための値であるキャッシュファイルＩＤとを関連付ける情報
・キャッシュファイルが書き込まれた時刻またはキャッシュファイルが最後にアクセスされた時刻を示すキャッシュファイルデート情報
・全体のデータが保存されている光ディスク１１９を特定するボリウムID
・ジュークボックス１４５内の各光ディスク１１９の空き容量
【００７４】
メディアサーバ１６７は、それぞれのディスクスロット１２１に格納されている光ディスク１１９を管理する。
【００７５】
メディアサーバ１６７は、チェンジャドライバ１４３に対し、指定された光ディスク１１９のドライブ１１８への装着（マウント）を要求する。
【００７６】
また、メディアサーバ１６７は、チェンジャドライバ１４３に対し、ドライブ１１８に装着されている光ディスク１１９のディスクスロット１２１への格納（アンマウント）を要求する。
【００７７】
メディアサーバ１６７に設けられているボリウムデータベース１６８は、光ディスク１１９に関係する情報を格納する。
【００７８】
ボリウムデータベース１６８に格納されている光ディスク１１９に関する情報は、例えば、以下の通りである。
・各光ディスク１１９の生ディスク状態での記録容量
・各光ディスク１１９のメディアとしての種類（MO（Magneto-Optical disk）、DVD（Digital Versatile Disc）＋Ｒ、またはDVD＋RWなど）と書き込み専用または読み書き可能などの属性
・ジュークボックス１４５内の各ディスクスロット１２１に格納されている光ディスク１１９のボリウムID
・ジュークボックス１４５に搭載されているドライブ１１８の使用状況
【００７９】
チェンジャドライバ１４３は、ドライブ１１８を制御し、ジュークボックス制御部１４４とHSM１１３とのインターフェースの機能を有する。
【００８０】
ジュークボックス制御部１４４は、ジュークシステム１２０およびジュークサーボ１６９を含む。ジュークシステム１２０は、ドライブ１１８、光ディスク１１９、ジュークシステム１２０、ディスクスロット１２１、およびピッカー１２２からなるシステムを制御する。ジュークサーボ１６９は、ジュークボックス１４５を駆動する。
【００８１】
ジュークボックス１４５は、ドライブ１１８、光ディスク１１９、ディスクスロット１２１、およびピッカー１２２からなる。
【００８２】
次に、本発明の概略を説明する。本発明は、光ディスク１１９としてのDVDを再生する際に、指定された部分を読み出そうとする場合の、待ち時間の発生をより少なくするものである。
【００８３】
本発明では、DVD１１９がドライブ１１８に装着されると、ドライブ１１８によってDVD１１９から読み出されたDVDビデオ規格におけるナビゲーション情報に基づいて、例えばDVDビデオ規格における各プログラム（ランダム、シャッフル再生の単位やコマンドによるアクセスの単位）の先頭から所定期間の部分のデータを示すヒント情報（図５）が生成される。そしてそのヒント情報に基づいて、図６に示すように、DVD１１９が装着されたドライブ１１８から、各プログラムの先頭から所定期間の部分のデータが読み出され、バッファ１１７を介してHDD１１６に供給され、キャッシュファイルとしてHDD１１６（のキャッシュ領域）に予め書き込まれる。
【００８４】
図７Ｂは、図７Ａに示すコンテンツが記録されているDVD１１９がドライブ１１８に装着されたときに生成されるHDD１１６のキャッシュファイルの状態を示している。
【００８５】
図７Ｂの例では、コンテンツの先頭のプログラム１の開始位置から所定の期間の部分のデータ、コンテンツの開始から２３分２６秒経過後に再生されるプログラム２の開始位置から所定の期間の部分のデータ、コンテンツの開始から３８分４５秒経過後に再生されるプログラム３の開始位置から所定の期間の部分のデータ、およびコンテンツの開始から４３分５９秒経過後に再生されるプログラム４の開始位置から所定の期間の部分のデータが、キャッシュファイルとしてHDD１１６に格納される。
【００８６】
ここで、キャッシュファイルとして、HDD１１６のキャッシュ領域に記憶されているデータに対応するコンテンツの部分をスタブと称し、スタブデータがHDD１１６に記憶されているコンテンツ上の領域を、スタブ領域と称する。またスタブデータがHDD１１６に記憶されていないコンテンツ上の領域を、ホール領域と称する。スタブ領域およびホール領域を区別しない場合、単に領域と称する。
【００８７】
すなわち図７の例では、プログラム１の０で示されるスタブ領域である領域のデータ（スタブデータ）は、HDD１１６にキャッシュファイルとして記憶され、プログラム１の１で示されるホール領域である領域のデータは、HDD１１６に記憶されていない。
【００８８】
プログラム２の２で示されるスタブ領域である領域のデータ（スタブデータ）、プログラム３の４で示されるスタブ領域である領域のデータ（スタブデータ）、およびプログラム４の６で示されるスタブ領域である領域のデータ（スタブデータ）は、HDD１１６にキャッシュファイルとして記憶される。
【００８９】
また、プログラム２の３で示されるホール領域である領域のデータ、プログラム３の５で示されるホール領域である領域のデータ、およびプログラム４の７で示されるホール領域である領域のデータは、HDD１１６に記憶されていない。
【００９０】
このようにDVD１１９がドライブ１１８に装着されたとき、コンテンツの、例えば各プログラムの先頭から所定期間の部分のデータが、キャッシュファイルとしてHDD１１６（のキャッシュ領域）に予め書き込まれる。
【００９１】
キャッシュファイルとしてHDD１１６に記憶されているDVD１１９のデータは、図８中、白抜きの矢印で示されるように、HDD１１６からバッファ１１５を介してアプリケーションプログラム１４１によって読み出される。一方、HDD１１６に記憶されていないDVD１１９のデータは、図８中、黒色の矢印で示されるように、DVD１１９が装着されたドライブ１１８から読み出される。そしてドライブ１１８から読み出されたデータは、例えばバッファ１１７を介してHDD１１６に供給されて、キャッシュファイルとして記憶され、バッファ１１５を介してアプリケーションプログラム１４１によって読み出される。
【００９２】
そこで本発明では、DVD１１９を再生する際、図８中、白抜きの矢印が示すように、はじめに、HDD１１６に予め格納されたキャッシュファイルから指定されたプログラムの先頭部分のデータが読み出されて、バッファ１１５を介してアプリケーション１４１に供給される。そしてそのプログラムの先頭が読み出されている間であって、予めキャッシュファイルに格納されていないそれに続くデータの読み出しが実行される前に、図８中、黒色の矢印が示すように、DVD１１９が装着されたドライブ１１８からホール領域のデータが読み出されて、キャッシュファイルとしてHDD１１６に格納される。そしてそのキャッシュファイルからホール領域のデータが読み出されて、バッファ１１５を介してアプリケーション１４１に供給される。
【００９３】
すなわち本発明によれば、各プログラムの先頭から所定期間の部分のデータを、キャッシュファイルとしてHDD１１６に予め記憶し、その期間（そのデータの長さ）を、ドライブ１１８はコンテンツの再生に必要なデータの読み出し速度に比較して、より速い速度でDVD１１９からデータを読み出すことから、DVD１１９からコンテンツのデータを読み出すまでに必要な時間より長くすることで、HDD１１６のキャッシュファイルに格納されていなかったデータを、そのデータがコンテンツの再生のために読み出される前に、HDD１１６のキャッシュファイルに格納することができる。従って、コンテンツの再生のために必要なデータは、常に、HDD１１６のキャッシュファイルから読み出すことができるようになり、コンテンツのデータの読み出しが要求された場合、待ち時間をほとんど生じさせることなく、迅速にコンテンツのデータを読み出すことができる。例えば、音声または画像のコンテンツである場合、画像または音声が途切れることがなく、画像または音声を再生することができる。
【００９４】
次に、本発明の詳細について説明する。
【００９５】
はじめに、DVDビデオ規格について説明する。
【００９６】
図９は、DVDビデオ規格におけるデータ構造を示している。
【００９７】
PGC（Program Chain）は、セル（cell）の再生順を指定するものである。図中PGC#は、PGCの番号を示す。
【００９８】
PGC内で、1個以上の連続する番号のセルをまとめたものが、１個のプログラム（PG）として定義される。プログラムは、ランダム、シャッフル再生の単位やコマンドによるアクセスの単位として用いられる。図中PG#は、プログラムの番号を示す。
【００９９】
さらに、PGC内で１個以上の連続する番号のプログラムをまとめたものが、１個のPTTとして定義される。PTTは、チャプタに相当するものであり、ユーザによるアクセスの単位の一つとなる。図中PTT#は、PTTの番号である。
【０１００】
セル（cell）は、リアルタイム・データの再生単位であり、それには、１個のPGC内での再生順にセル番号（図中、Cell#1，Cell#2，・・・）が付与される。セルにはまた、図１０に示されるように、固有のＩＤ番号（図中、C-ID#1，C-ID#2，・・・）も付与される。
【０１０１】
セルは、複数の、ビデオ、オーディオ、サブピクチャなどのデータで構成されるビデオ・オブジェクトの集合であるVOBU（Video Object Unit）から構成されている。
【０１０２】
次に、DVDビデオ規格におけるファイル構造について説明する。
【０１０３】
DVDビデオ規格においては、単一のDVDビデオゾーンが設けられ、それは、図１１に示すように、１つのVMGと、少なくとも１個で、最大９９個のVTSで構成されている。
【０１０４】
VMG（Video Manager）は、VMGI、VMGM_VOBS、およびVMGI_BUPから構成されている。
【０１０５】
VMGI(Video Manager Information)は、DVDビデオデータ全体についての制御情報であり、VIDEO_TS.IFOという１個のファイルからなる。
【０１０６】
VMGM_VOBS(VMGメニュー用VOBS)は、タイトルメニューの映像、音声などのタイトル選択メニューのためのコンテンツであり、VIDEO_TS.VOBという１個のファイルからなる。
【０１０７】
VMGI_BUP(バックアップ用制御データ)は、VMGIのコピー（バックアップ）であり、VIDEO_TS.BUPという１個のファイルからなる。
【０１０８】
各VTS（Video Title Set）は、VTSI、VTSM_VOBS、VTS_TT_VOBS、およびVTSI_BUPから構成されている。
【０１０９】
VTSI(Video Title Set Information)は、１個以上のタイトルやVTSメニューの情報などのそのVTSに対する制御情報であり、VTS_##_0.IFOという1個のファイルからなる。##（図１１では、02）は、01から99までの整数を表している。
【０１１０】
VTSM_VOBS(VTSメニュー用VOBS)は、チャプタ画像や音声、字幕選択画像などのVTS内の各種メニューのためのコンテンツであり、VTS_##_0.VOBという１個のファイルからなる。
【０１１１】
VTS_TT_VOBS(VTS内タイトル用VOBS)は、タイトル再生のためのコンテンツであり、VTS_##_@.VOBという複数のファイルからなる。@は、１から９までの整数を表している。
【０１１２】
VTSI_BUP(バックアップ用制御データ)は、VTSIのコピー（バックアップ）であり、VTS_##_0.BUPという１個のファイルからなる。
【０１１３】
次に主なファイルの詳細について説明する。
【０１１４】
はじめにVMGのVMGI（VIDEO_TS.IFO）について説明する。
【０１１５】
VMGIは、図１２に示すように、VMGI_MAT、TT_SRPT、およびTXTDT_MGなどから構成されている。
【０１１６】
VMGI_MAT(Video Manager Information Management Table)には、例えば、VMGとVMGIのサイズ、VMG内の各情報(TT_SRPTなど)の先頭アドレス、VMGM用VOBの属性情報などが記述されている。
【０１１７】
TT_SRPT(Title Search Pointer Table)には、DVDビデオのコンテンツ内のタイトルのサーチ情報が記述されており、それは、TT_SRPTIと複数のTT_SRPから構成されている。
【０１１８】
TT_SRPTIには、例えば、TT_SRP（タイトル）の数、TT_SRPTの終了アドレスが記述されている。
【０１１９】
TT_SRPは、タイトル毎に設けられ、そこには、例えば下記に示すタイトルが所属するVTSの番号(VTSN)とそのVTS内でのタイトル番号(VTS_TTN)の他、アングル数、PTT数、およびVTSアドレス等が記述されている。
Title #1 : VTSN = 1  VTS_TTN = 1
Title #2 : VTSN = 2  VTS_TTN = 1
Title #3 : VTSN = 2  VTS_TTN = 2
Title #4 : VTSN = 3  VTS_TTN = 1
【０１２０】
TXTDT_MGには、DISCやtitleに与えられた名前などのテキスト情報が記述されている。
【０１２１】
次に、VTS のVTSI（VTS_##_0.IFO）について説明する。
【０１２２】
VTSIは、図１３に示すように、VTS_PTT_SRPT、VTS_PGCIT、およびVTS_VOBU_ADMAPなどから構成されている。
【０１２３】
VTS_PTT_SRPT（VTS PTT Search Pointer Table）は、各PTTがどのPGCのどのPGに対応するかを示すテーブルで、そこには、VTS_TTNを再生するのに必要なPGCIの番号が記述されている。
【０１２４】
VTS_PTT_SRPTは、PTT_SRPTIと複数のTTU_SRP、および複数のTTUから構成されている。
【０１２５】
PTT_SRPTIには、TTUの数、VTS_PTT_SRPTの終了アドレスが記述されている。
【０１２６】
各TTU_SRPには、TTUの先頭アドレスのVTS_PTT_SRPTの先頭からの相対バイト数が記述されている。
【０１２７】
TTUは、タイトルごとのPTT_SRPの集合であり、各タイトルがどのPTTで構成されているかを示す。
【０１２８】
VTS_PGCIT(VTS Program Chain Information Table)は、VTSに属する全PGCの情報を記述するためのテーブル群であって、複数のPGCIが含まれている。
【０１２９】
PGCI(Program Chain Information)は、PGCの再生を制御するためのナビゲーション・データの集合である。
【０１３０】
PGCIは、PGC_GI、PGC_PGMAP、およびC_PBITから構成されている。
【０１３１】
PGC_GI(PGC General Information)には、PGC内のプログラム(PG)総数、セル総数、PGC再生時間、及びPGCに関する各種テーブルの開始アドレスなどのPGCに関する全般的な情報が記述されている。
【０１３２】
PGC_PGMAP(PGC Program Map)は、PGC内のプログラムの構造を示すマップ・テーブルであって、それには、図１４に示すように、各プログラムに関して、最初に再生されるセル(以下、エントリセルと称する)のセル番号が記述されている。
【０１３３】
図１４は、図９に示すデータ構造に対応するもので、PG#1のプログラムはCell#1のセル、PG#2のプログラムはCell#3のセル、PG#3のプログラムはCell#4のセルから始まることを示している。
【０１３４】
図１３に戻りC_PBIT(Cell Playback Information Table)は、PGC内のセルの再生順序を定義するC_PBIを要素に持つテーブルである。
【０１３５】
C_PBI(Cell Playback Information）は、C_CAT 、C_PBTM 、C_FVOBU_SA 、C_FVOBU_EA 、C_LVOBU_SA 、およびC_LVOBU_EA から構成されている。
【０１３６】
C_CATには、セルのタイプ、シームレス再生フラグ、STC不連続フラグ、アクセス制限フラグ、スチル時間、セルコマンド番号などのセルのカテゴリが記述されている。
【０１３７】
C_PBTMには、セル再生時間が記述されている。
【０１３８】
C_FVOBU_SAには、セルの先頭VOBUの先頭アドレスが、C_FVOBU_EAには、セルの先頭VOBUの終了アドレスが記述されている。
【０１３９】
C_LVOBU_SAには、セルの最終VOBUの先頭アドレスが、C_LVOBU_EAには、セルの最終VOBUの終了アドレスが記述されている。
【０１４０】
VTS_VOBU_ADMAP(VTS VOBU Address Map）には、VTSIに関するVOBUのデータが記録されている場所を特定するアドレスが記述されている。具体的には、下記に示すように、このVTSIに属するVOBU(#1〜#m)の先頭アドレスがそのLBN(論理ブロック番号)の昇順で記述されている。なお1セクタ = 2048 byteである。
VOBU(VTS_VOBU_AD) #1 : アドレス 000 セクタ
VOBU(VTS_VOBU_AD) #2 : アドレス 100 セクタ
VOBU(VTS_VOBU_AD) #3 : アドレス 200 セクタ
VOBU(VTS_VOBU_AD) #4 : アドレス 400 セクタ
【０１４１】
すなわちVTS_VOBU_AD #n(VTS VOBU #n Address）は、VTS_VOBU_ADMAP内のｎ番目のVOBUの先頭アドレスを示している。
【０１４２】
以上のようにVTSI（VTS_##_0.IFO）は構成されているが、ここに記述されている情報を利用すれば、例えば図１５に示すデータ構造を有する場合、C_PBI #2のC_FVOBU_SAを参照すれば、Cell #2のセルで最初に再生されるVOBU#3の開始アドレスを知ることができる。またVOBU#3の開始アドレスを基にVTS_VOBU_ADMAPを参照すれば、VOBU#３のVOBUがVTSIに属するVOBUにおいて何番目のVOBUであるか知ることができる。
【０１４３】
次にVTSのVTSM_VOBS(VTS_##_0.VOB)（図１１）について説明する。VTSM_VOBSは、図１６に示すように、細分化されている。
【０１４４】
すなわち図９に示したデータ構造に対応して、PGC の番号（PGC#）、PTTの番号（PTT#）、プログラムの番号（PG#）、そしてセルの番号（cell#）等が階層的に記述されている。
【０１４５】
セルは１個以上のVOBUで構成されているが、１個のVOBUは0.4sec乃至1secの再生時間長を持ち、先頭には、図１６に示すように、必ずNV_PCKが置かれ、続いてGOP（Group Of Picture）整数個分のビデオデータ、オーディオデータ、サブピクチャデータなどがパック化されて時分割で挿入されている（Video_PCK、Audio_PCK）。
【０１４６】
NV_PCK( Navigation Pack)は、必ずVOBUに1個存在し、VOBUの先頭に配置される。NV_PCKは、PCI（Presentation Control Information）とDSI（Data Search Information）の２個のパケットを含む。
【０１４７】
PCIには、再生表示に関する制御情報が格納されている。
【０１４８】
PCIは、PCI_GI、NSML_AGLI、HLI、およびRECIから構成されている。
【０１４９】
PCI_GI(PCI一般情報)は、NV_PCK_LBN、VOBU_CAT、VOBU_UOP_CTL、VOBU_S_PTM、VOBU_E_PTM、VOBU_SE_PTM、およびC_ELTMから構成されている。
【０１５０】
NV_PCK_LBNは、ナビゲーション・パックのLBN(論理ブロック番号)であり、VOBU_CATは、VOBUのカテゴリ(アナログ・プロテクションの状態の記述)であり、VOBU_UOP_CTLは、VOBUのユーザ操作制御情報であり、VOBU_S_PTMは、VOBUの開始PTM(Presentation Time)であり、VOBU_E_PTMは、VOBUの終了PTMであり、VOBU_SE_PTMは、VOBU内のシーケンス・エンドの終了PTMである。
【０１５１】
C_ELTMは、セル内経過時間である。例えば、図１５におけVOBU #3 のVOBUの再生時間が0.5秒で、VOBU #4 のVOBUの再生時間が0.5秒で、VOBU #5 のVOBUの再生時間が0.5秒で、VOBU #6 のVOBUの再生時間 0.5秒で、その結果Cell #2のセルの再生時間が2秒である場合、VOBU #3のVOBUの C_ELTMは、0秒に、VOBU #4のVOBUのC_ELTMは、0.5秒に、VOBU #5のVOBUのC_ELTMは、1.0秒に、そしてVOBU #6のVOBUのC_ELTMは、1.5秒となる。
【０１５２】
なお実際のDVDビデオでは、例えば映画の場合、１個のセル再生時間は数分から十数分あり、1個のVOBUの再生時間は0.5〜1秒程である。
【０１５３】
図１６に戻りNSML_AGLI(非シームレス用アングル情報)は、アングル変更時の行き先アドレスに関する情報である。
【０１５４】
HLI(ハイライト情報)は、サブピクチャ表示領域内の一矩形領域をハイライトするための情報である。
【０１５５】
RECI(記録情報)は、本VOBUに記録されたビデオデータ、全オーディオデータ及びSPデータ用の情報である。
【０１５６】
DSI(データ・サーチ情報)は、DSI_GI、SML_PBI、SML_AGLI、VOBU_SRI、およびSYNCIから構成されている。
【０１５７】
DSI_GI(DSI一般情報)は、DSIに関する情報であり、SML_PBI(シームレス再生情報)は、シームレス再生を実行するために必要な情報であり、SML_AGLI(シームレス用アングル情報)は、アングル変更時の行き先アドレスに関する情報であり、VOBU_SRI(VOBUサーチ情報)は、本DSIが含まれるVOBUの再生開始時刻の前後0.5×n秒に再生されるVOBUの先頭アドレスであり、SYNCI(同期情報)は、本DSIが含まれるVOBUのビデオデータと同期して再生されるオーディオデータとサブピクチャデータのアドレス情報である。
【０１５８】
次に、DVD１１９がドライブ１１８に装着された場合の記録再生システム１０１の動作を、図１７のフローチャートを参照して説明する。
【０１５９】
DVD１１９がドライブ１１８に装着されると、ステップＳ１において、アプリケーションプログラム１４１は、DVD１１９が装着されたドライブ１１８から、マルチアングルやパレンタル再生、ランダム・シャッフル再生などのDVD独自の機能を実現したり、早送り、巻き戻しなどの特殊再生をサポートするための情報であるナビゲーション情報を取得する。
【０１６０】
ステップＳ２において、アプリケーションプログラム１４１は、取得したナビゲーション情報を、ストレージマネージャ１１４を介してHSM１１３に供給する。HSM１１３のマイグレーションファイルシステム１６４は、供給されたナビゲーション情報に基づいてヒント情報を生成する。
【０１６１】
ステップＳ３において、ストレージマネージャ１１４は、生成されたヒント情報に基づいて、キャッシュファイルを生成する。
【０１６２】
次にステップＳ２およびステップＳ３の処理の詳細を説明する。はじめにステップＳ２におけるヒント情報生成処理の詳細について、図１８のフローチャートを参照して説明する。
【０１６３】
ステップＳ１１において、マイグレーションファイルシステム１６４は、キャッシュファイルとしてHDD１１６に記憶されるコンテンツのデータの開始位置を検出する。この例の場合、DVD１１９に記録されているコンテンツの各プログラム（図９中のPG）の先頭から所定期間のデータが、予めキャッシュファイルとしてHDD１１６に記憶されるので、各プログラムの開始位置が検出される。この処理の詳細は、図１９に示すフローチャートに示されている。
【０１６４】
ステップＳ２１において、マイグレーションファイルシステム１６４は、ナビゲーション情報として取得されたVTSIのVTS_PGCITの各PGCIのPGC_PGMAP（図１３）から、プログラムのエントリセル番号を読み取る。なおPGC_PGMAPには、上述したように各プログラムに関して、最初に再生されるエントリセルのセル番号が記述されている。
【０１６５】
例えば図９の例では、セル番号cell＃1、cell#3、cell#4、cell#6、cell#8等のセルが、プログラム番号PG#1、PG#2、PG#3、PG#4、PG#5等のプログラムのエントリセルのセル番号として取得される。
【０１６６】
ステップＳ２２乃至ステップＳ２４において、マイグレーションファイルシステム１６４は、取得したそれぞれのエントリセルのセル番号に対して、ステップＳ２３の処理を実行し、ステップＳ２２乃至ステップＳ２４の処理を、そのセル番号の数だけ繰り返すようにループ制御の処理を実行する。
【０１６７】
ステップＳ２３において、プログラムのエントリセルの先頭VOBUの先頭アドレスが求められる。
【０１６８】
具体的には、マイグレーションファイルシステム１６４は、VTS_PGCITのPGCIのC_PBITから、エントリセルのセル番号を有するセル（エントリセル）に対応したC_PBIのC_FVOBU_SAを参照し、そのセルの先頭VOBUの先頭アドレスを取得する。なお上述したように、C_PBI は、PGC内のセルの再生順序を定義し、C_PBIの C_FVOBU_SAには、セルの先頭VOBUの先頭アドレスが記述されている。
【０１６９】
なおここで取得されるVOBUの先頭アドレスは、VOBS内の相対アドレスとして記述されている。またVOBSは最大９個のファイルに分割されるので、指定のアドレスがどのファイルに存在するかは、各ファイルのサイズを調べることで把握出来る。
【０１７０】
ステップＳ２２乃至ステップＳ２４の処理が、エントリセルのセル番号の数だけ繰り返され、各プログラムの先頭セルの先頭VOBUの先頭アドレスが得られると、処理は、図１８のステップＳ１２に進む。
【０１７１】
例えばステップＳ２１で検出されたcell#1とcell#3が図１５に示すように構成されている場合、VOBU#1の先頭アドレスとVOBU#７の先頭アドレス等が取得されると、ステップＳ１２に進む。
【０１７２】
ステップＳ１２において、キャッシュファイルとしてHDD１１６に記憶されるデータの終了位置が検出される。この処理の詳細は、図２０のフローチャートに示されている。この例の場合、
ステップＳ１１で検出された開始位置から時間T秒経過後の直後に再生されるVOBUの開始アドレスがキャッシュファイルの終了位置として求められる。
【０１７３】
ステップＳ３１において、マイグレーションファイルシステム１６４は、VTSIのVTS_PGCITの各PGCIのPGC_PGMAP（図１３）から、プログラムのエントリセルのセル番号を読み取る。
【０１７４】
例えば図９の例では、cell＃1、cell#3、cell#4、cell#6、cell#8等がPG#1、PG#2、PG#3、PG#4、PG#5等のプログラムのエントリセルのセル番号として取得される。
【０１７５】
ステップＳ３２乃至ステップＳ４８において、マイグレーションファイルシステム１６４は、取得したそれぞれのエントリセルのセル番号に対して、ステップＳ３３乃至ステップＳ４７の処理を実行し、ステップＳ３２乃至ステップＳ４８の処理を、エントリセルのセル番号の数だけ繰り返すようにループ制御の処理を実行する。
【０１７６】
ステップＳ３３において、マイグレーションファイルシステム１６４は、ステップＳ３１で取得した所定のエントリセルのセル番号をカウンタCNに設定し、ステップＳ３４において、セルの再生時間をカウントするカウンタPBTMの値を０に初期設定する。
【０１７７】
ステップＳ３５において、マイグレーションファイルシステム１６４は、VTS_PGCITのPGCIのC_PBITの、カウンタCNに設定されたセル番号を有するセルに対応したC_PBIのC_PBTM（C_PBTM［CN］）（図１３）を参照し、そのセルの再生時間を取得し、カウンタPBTMに加算する。なお上述したように、C_PBI は、PGC内のセルの再生順序を定義し、C_PBTMには、セル再生時間が記述されている。
【０１７８】
図９の例では、例えばcell#1のセルの再生時間（C_PBTM［1］）がカウンタPBTMに加算される。
【０１７９】
ステップＳ３６において、マイグレーションファイルシステム１６４は、カウンタPBTMの値が、時間Ｔより小さいか否かを判定し、小さいと判定した場合、ステップＳ３７に進み、マイグレーションファイルシステム１６４は、カウンタCNの値を１だけインクリメントし、ステップＳ３５に戻る。すなわち１だけインクリメントされたカウンタCNの値のセル番号を有するセル（次に再生されるセル）の再生時間が、カウンタPBTMに加算される。
【０１８０】
すなわちセルの総再生時間が、指定された時間Tより短ければ、次のセルのC_PBTMが参照され、プログラムのエントリセルからのC_PBTMが積算され、その時間が指定された時間Ｔより長くなるまで繰り返される。
【０１８１】
例えばcell#1の再生時間＜時間Ｔである場合、cell#2のセルの再生時間（C_PBTM［2］）がさらにカウンタPBTMに加算される。
【０１８２】
ステップＳ３６で、カウンタPBTMの値が、時間Ｔより小さくない（長い）と判定された場合、すなわち最後に積算されたセルにキャッシュファイルの終了位置としてのVOBUが存在する場合、ステップＳ３８に進み、マイグレーションファイルシステム１６４は、いまのカウンタPBTMの値から、いまのカウンタCNの値のセル番号を有するセルの再生時間（C_PBTM［CN］）を減算する。
【０１８３】
例えばcell#1とcell#2の総再生時間が時間Ｔより長い場合、カウンタPBTMから、cell#2の再生時間（C_PBTM［2］）が減算されて、カウンタPBTMの値は、cell#1の再生時間となる。
【０１８４】
なおプログラムの最後のセルまで積算しても、ステップＳ３６での条件を満足しなかった場合は、このプログラムの全範囲がキャッシュファイルの対象となる。
【０１８５】
すなわち例えばcell#1とcell#2の総再生時間が時間Ｔより短い場合、PG#1のプログラムの全範囲がキャッシュファイルの対象となる。
【０１８６】
次にステップＳ３９において、マイグレーションファイルシステム１６４は、C_PBITの、カウンタCNの値のセル番号を有するセルに対応するC_PBIのC_FVOBU_SAを参照し、そのセルの先頭VOBUの先頭アドレスを取得する。なおC_PBITは、PGC内のセルの再生順序を定義し、そのC_PBIのC_FVOBU_SA には、セルの先頭VOBUの先頭アドレスが記述されている。
【０１８７】
いまの場合、カウンタCN＝２なので、cell#2の先頭VOBUの先頭アドレスが取得される。なおcell#2が図１５に示すように構成されている場合、VOBU#3の先頭アドレスが取得される。
【０１８８】
ステップＳ４０において、マイグレーションファイルシステム１６４は、ステップＳ３９で取得したアドレスに基づいて、そのVOBUの、VTSIのVTS_VOBU_ADMAP（図１３）におけるC_FVOBUのIndex番号(VTS_VOBU_AD#nのｎの値)を取得する。なおVTS_VOBU_ADMAPは、VTSのタイトルに関する全VOBUの先頭アドレスが記述されるテーブルであり、全VOBUの先頭アドレスがそのLBNの昇順で記述されている。VTS_VOBU_AD #nは、VTS_VOBU_ADMAP内のｎ番目のVOBUの先頭アドレスを示している。
【０１８９】
すなわちキャッシュファイルの終了位置としてのVOBUが存在するセルの先頭VOBUが、VTS_VOBU_ADMAPで何番目(ｘ番目)のVOBUであるかが検出される。
【０１９０】
いまの場合、VOBU#3が、VTSのタイトルに関する全VOBUにおいて何番目であるかが検出される。
【０１９１】
ステップＳ４１において、マイグレーションファイルシステム１６４は、カウンタVNに２を初期設定する。
【０１９２】
ステップＳ４２において、マイグレーションファイルシステム１６４は、カウンタCNの値をセル番号とするセルにおいて、カウンタVNの値が示す順番で再生されるVOBU（例えば、NV＝２である場合、そのセルにおいて2番目に再生されるVOBU）のNV_PCKのPCI_GIのC_ELTM（図１６）を参照し、そのVOBUのセル内での経過時間を取得し、カウンタPBTMに加算する。なおVOBUのNV_PCKのPCIのC_ELTMは、セル内経過時間が記述されている。
【０１９３】
いまの場合、図１５を参照して上述したように、VOBU #3のVOBUの C_ELTMは、0秒に、VOBU #4のVOBUのC_ELTMは、0.5秒に、VOBU #5のVOBUのC_ELTMは、1.0秒に、そしてVOBU #6のVOBUのC_ELTMは、1.5秒であるので、cell#2で２番目に再生されるVOBU #4のVOBUのC_ELTMの0.5秒が、cell#1の再生時間を示すカウンタPBTMに加算される。
【０１９４】
ステップＳ４３において、マイグレーションファイルシステム１６４は、カウンタPBTMの値が、時間Ｔより小さいか否かを判定し、小さいと判定した場合、ステップＳ４４に進み、カウンタPBTMから、カウンタVNの値が示す順番で再生されるVOBUのセル内での経過時間を減算する（すなわちカウンタPBTMの値を元に戻す）。
【０１９５】
いまの場合において、例えばカウンタPBTMの値が時間Ｔより小さいと判定されたとき、カウンタPBTMから0.5秒が減算され、カウンタPBTM の値は、cell#1の再生時間に戻る。
【０１９６】
その後、ステップＳ４５において、マイグレーションファイルシステム１６４は、カウンタVNの値を１だけインクリメントし、ステップＳ４２に戻り、それ以降の処理を実行する。すなわち１だけインクリメントされたカウンタVNの値が示す順番に再生されるVOBUまでの経過時間が、カウンタPBTMに加算され、その結果得られた時間が、時間Ｔより小さいかが判定される。
【０１９７】
いまの場合において、例えばcell#1の再生時間＋VOBU#4までの経過時間（すなわちVOBU#3の再生時間）＜時間Ｔであるとき、カウンタVN＝３となり、cell#2のセルで３番目に再生されるVOBU#5のC_ELTMの1秒が、cell#1の再生時間を示すカウンタPBTMに加算される。
【０１９８】
ステップＳ４３で、カウンタPBTMの値が、時間Ｔより小さくない（長い）と判定された場合、ステップＳ４６に進む。
【０１９９】
いまの場合において、例えばcell#1の再生時間＋VOBU#5までの経過時間（すなわちVOBU#3の再生時間＋VOBU#4の再生時間）＞時間Ｔであるとき、ステップＳ４６に進む。
【０２００】
ステップＳ４６において、マイグレーションファイルシステム１６４は、ステップＳ４０で取得したインデックス番号に、カウンタVNの値から１だけ減算した結果得られた値を加算し、ステップＳ４７において、その結果得られた値を、ｎの値とするVTS_VOBU_AD #n（VTS_VOBU_ADMAP内のｎ番目のVOBUの先頭アドレス）を、キャッシュファイルの終了位置として取得する。
【０２０１】
すなわちキャッシュファイルの終了位置としてのVOBUがこのセルで何番目（ｙ番目）のVOBUであるかが検出される。
【０２０２】
いまの場合、カウンタVN＝３から１だけ減算された結果得られた２が、VOBU#３のVTSのタイトルに関する全VOBUにおいて順番に加算され、その順番のVOBU#5の先頭アドレスが、キャッシュファイルの終了位置として取得される。
【０２０３】
ステップＳ３２乃至ステップＳ４８の処理が、エントリセルのセル番号の数だけ繰り返され、各プログラムのキャッシュファイルの終了位置が検出されると、処理は、図１８のステップＳ１３に進む。
【０２０４】
ステップＳ１３において、マイグレーションファイルシステム１６４は、検出したキャッシュファイルとして格納されるデータ（以下、ヒントセクションと称する）の開始位置および終了位置からヒント情報を生成する。
【０２０５】
具体的には、マイグレーションファイルシステム１６４は、コンテンツのデータの先頭から、ステップＳ１１で検出したプログラムの開始位置までのデータ量を、ヒントオフセットとする。すなわちヒントオフセットは、それぞれのヒントセクションの開始位置を、コンテンツのデータの先頭からのオフセットで示す。例えば、ヒントオフセットの単位は、データ量（バイトなど）とされる。
【０２０６】
なお図２１に示すようなDVDビデオ規格上と同様のファイル構成がHDD１１６上に記憶されている場合、検出されたヒントセクションの開始位置および終了位置がそれぞれDVDディスク上のどのファイルに属しているかを解析し、開始アドレスおよび終了アドレスの値を該当するファイル先頭からのオフセット値に変換する必要がある。
【０２０７】
また図２２に示すように、DVDディスク上のデータを、ISOイメージとしてHDD１１６上に置く場合、ISOイメージの開始論理アドレスは０であるので、開始アドレスおよび終了アドレスが属するVTSのVTS_VOBの先頭論理ブロックアドレスをファイルシステムから取得し、ステップＳ１１およびステップＳ１２で取得した開始アドレスおよび終了アドレスに加算することでISOイメージファイルの先頭からのオフセットを取得する必要がある。
【０２０８】
またマイグレーションファイルシステム１６４は、時間Ｔに再生されるコンテンツのデータ量を、ヒントサイズとする。すなわちヒントサイズは、ヒントセクションのデータ量を示す。ヒントサイズの単位は、例えば、バイトとされる。
【０２０９】
このようにヒント情報が生成されると、ステップＳ１４に進み、マイグレーションファイルシステム１６４は、生成したヒント情報を、DVD１１９のコンテンツの拡張属性として記憶する（図５）。
【０２１０】
なお、ヒント情報には、使用者からの操作に応じた値が直接設定されるようにしてもよく、また、アプリケーションプログラム１４１に限らず、オペレーティングシステムなどの他のプログラムによって書き込まれるようにしてもよい。
【０２１１】
その後処理は、終了する。
【０２１２】
次に、図１７のステップＳ３におけるキャッシュファイル生成処理の詳細を、図２３のフローチャートを参照して説明する。
【０２１３】
ステップＳ５１において、ストレージマネージャ１１４は、マイグレーションファイルシステム１６４からコンテンツの拡張属性を読み出して、読み出したコンテンツの拡張属性からヒント情報を抽出する。
【０２１４】
ステップＳ５２において、ストレージマネージャ１１４は、ヒント情報のうちの、全てのヒントセクションのデータ量の合計であるヒントセクションレングスを取得し、１つのヒントセクションのデータ量で割り算することによりヒントセクションの数を算出する。
【０２１５】
ストレージマネージャ１１４は、ステップＳ５４乃至ステップＳ５８において、それぞれのヒントセクションについてステップＳ５５およびステップＳ５６の処理を実行し、ステップＳ５４乃至ステップＳ５８の処理をヒントセクションの数だけ繰り返すようにループ制御の処理を実行する。
【０２１６】
ステップＳ５５において、ストレージマネージャ１１４は、ヒント情報から、所定のヒントセクションの開始位置を示すヒントオフセットを取得する。
【０２１７】
ステップＳ５６において、ストレージマネージャ１１４は、ヒント情報から、そのヒントセクションのデータ量を示すヒントサイズを取得する。
【０２１８】
ステップＳ５７において、ストレージマネージャ１１４は、取得したヒントオフセットおよびヒントサイズに基づいて、プログラムの、ヒントセクションをスタブ領域（キャッシュする領域）に設定し、ヒント情報が設定されていない領域をホール領域に設定する。
【０２１９】
ステップＳ５４乃至ステップＳ５８の処理がヒントセクションの数だけ繰り返され、各プログラムについてスタブ領域およびホール領域が設定されると、処理は、ステップＳ５９に進む。
【０２２０】
ステップＳ５９において、ストレージマネージャ１１４は、HSM１１３に、スタブ領域のデータをキャッシュファイルに記憶させる。HSM１１３は、スタブ領域を、DVD１１９が装着されたドライブ１１８から読み出し、HDD１１６のキャッシュファイルに記憶する。なおDVD１１９から、コンテンツのデータを読み出して、HDD１１６に記憶することを、適宜、リロードと称する。
【０２２１】
次にステップＳ６０において、ストレージマネージャ１１４は、HSM１１３のマイグレーションファイルシステム１６４に、キャッシュファイルへのデータのリロードの結果に対応するように、コンテンツの拡張属性の領域情報を書き換えらせて、処理は終了する。
【０２２２】
以上のように、HSM処理が実行されて（図１７）、スタブファイル状態のキャッシュファイル（例えば、図７）が生成される。
【０２２３】
次に、このように生成された、スタブファイル状態のキャッシュファイルを用いた、コンテンツのデータの読み出しの処理（再生処理）を、図２４のフローチャートを参照して説明する。
【０２２４】
ステップＳ７１において、ストレージマネージャ１１４のファイルＩ／Ｏマネージャ１６３は、データの読み出しを開始するプログラムの指定を受け付ける。より詳細には、アプリケーションプログラム１４１は、使用者の操作に応じた、再生を開始するプログラムの選択を受け付ける。
【０２２５】
アプリケーションプログラム１４１は、再生を開始するプログラムを指定するデータをファイルＩ／Ｏマネージャ１６３に供給する。ファイルＩ／Ｏマネージャ１６３は、アプリケーションプログラム１４１からのデータを取得することにより、データの読み出しを開始するプログラムの指定を受け付ける。ストレージマネージャ１１４は、そのプログラムからの再生をHSM１１３に指示する。
【０２２６】
ステップＳ７２において、ストレージマネージャ１１４は、HSM１１３に、そのプログラムからコンテンツのデータの読み出しを指示する。HSM１１３は、HDD１１６に、HDD１１６のキャッシュファイルの指定されたプログラムに対応するスタブ領域の先頭位置からデータの読み出しを開始させる。
【０２２７】
ステップＳ７３において、リロードの処理が実行される。
【０２２８】
ステップＳ７４において、ストレージマネージャ１１４は、キャッシュファイルの最後までデータを読み出したか否かを判定し、キャッシュファイルの最後までデータを読み出していないと判定された場合、ステップＳ７４に戻り、判定の処理を繰り返す。
【０２２９】
ステップＳ７４で、キャッシュファイルの最後までデータを読み出したと判定された場合、再生処理は終了する。
【０２３０】
次に、ステップＳ７３におけるリロード処理の詳細を、図２５のフローチャートを参照して説明する。
【０２３１】
ステップＳ８１において、ストレージマネージャ１１４は、HSM１１３に、所定の位置を指定して、リロードの開始を指示する。HSM１１３のマイグレーションファイルシステム１６４は、リロードの開始位置を、現在、図２４のステップＳ７２でHDD１１６から読み出されているデータの位置の後の領域であって、最も近い領域の先頭とする。
【０２３２】
ステップＳ８２において、HSM１１３のストレージサーバ１６５は、リロードを開始する。すなわち、ストレージサーバ１６５は、リロードの開始位置におけるデータを、DVD１１９が装着されたドライブ１１８から読み出させ、読み出したデータをキャッシュファイルの所定の領域に格納させるように、HDD１１６に記憶させる。
【０２３３】
ステップＳ８３において、マイグレーションファイルシステム１６４は、その領域がストアされているか否かを判定し、その領域がストアされていると判定した場合、ステップＳ８４において、リロードの開始位置を、その領域の後のホール領域であって、最も近いホール領域の先頭に移動する。ステップＳ８３において、その領域がストアされていないと判定された場合、ステップＳ８４の処理はスキップされる。
【０２３４】
ステップＳ８５において、HSM１１３のストレージサーバ１６５は、リロードを開始する。
【０２３５】
ステップＳ８６において、マイグレーションファイルシステム１６４は、その領域のリロードが完了したか否かを判定し、その領域のリロードが完了していないと判定された場合、ステップＳ８６に戻り、判定の処理を繰り返す。
【０２３６】
ステップＳ８６において、その領域のリロードが完了したと判定された場合、ステップＳ８７に進み、マイグレーションファイルシステム１６４は、リロードを完了した領域と隣接するスタブ領域とを結合させるように拡張属性を書き換える。
【０２３７】
ステップＳ８８において、マイグレーションファイルシステム１６４は、キャッシュファイルの最後までリロードが完了したか否かを判定する。ステップＳ８８で、キャッシュファイルの最後までリロードが完了したと判定された場合、ステップＳ８９に進み、マイグレーションファイルシステム１６４は、コンテンツの全てのデータがHDD１１６に記憶されたか、すなわち、コンテンツの全てのデータがストアされたか否かを判定する。
【０２３８】
ステップＳ８９において、コンテンツの全てのデータがストアされていないと判定された場合、ステップＳ９０に進み、マイグレーションファイルシステム１６４は、オートリロードモードであるか否かを判定する。ステップＳ９０において、オートリロードモードであると判定された場合、ステップＳ９１に進み、マイグレーションファイルシステム１６４は、リロードの開始位置を、キャッシュファイルの先頭に移動して、ステップＳ８２に戻り、上述した処理を繰り返す。
【０２３９】
ステップＳ８８において、キャッシュファイルの最後までリロードが完了していないと判定された場合、ステップＳ８２に戻り、上述した処理を繰り返す。
【０２４０】
ステップＳ８９において、コンテンツの全てのデータがストアされたと判定された場合、または、ステップＳ９０において、オートリロードモードでないと判定された場合、処理は終了する。
【０２４１】
次に図２６および図２７を参照して、リロードの処理の具体例を説明する。図２６および図２７の例では、３つのプログラム１乃至プログラム３のそれぞれに対応するスタブデータがキャッシュファイルに記憶されている場合において、最初に、プログラム３からの再生が要求され、コンテンツの再生の途中で、プログラム２からの再生が要求され、そのまま、コンテンツの最後まで再生される。
【０２４２】
なおこの例における条件は以下の通りであるが、これに限定されるものではない。
・各プログラムは、4.7ギガバイトのDVDに5-6Mbpsのビットレートで記録されている（いわゆる、１枚のDVDに２時間記録できるモードで記録されている）
・１分間の再生に必要なデータサイズ＝1300キロバイト
・スタブサイズ＝650キロバイト（スタブ時間を30秒として）
・プログラム１の再生時間：10分
プログラム２の再生時間：20分
プログラム３の再生時間：15分
【０２４３】
使用者の操作によりプログラム３が選択されると、アプリケーションプログラム１４１は、プログラム３の選択を受け付ける。第１に、ストレージマネージャ１１４の制御の基に、HSM１１３は、HDD１１６に、HDD１１６のキャッシュファイルのプログラム３に対応する、スタブ領域（４である領域番号の領域）の先頭位置からデータの読み出しを開始させ、プログラム３からコンテンツの再生が開始される。
【０２４４】
図２７で示されるように、プログラム１、プログラム２、およびプログラム３について、コンテンツの先頭の部分の６５０キロバイトのスタブデータ、コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータ、およびコンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータがキャッシュファイルに記憶されている。各プログラムの他の部分のデータは、キャッシュファイルに記憶されていない。
【０２４５】
プログラム３のスタブ領域、すなわち、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのタブデータがHDD１１６から読み出されて、プログラム３の先頭からの再生が即座に開始される。
【０２４６】
これに並行して、第２に、ストレージマネージャ１１４は、HSM１１３に、プログラム３のスタブ領域の後ろのホール領域のデータを、DVD１１９からHDD１１６に読み出して、HDD１１６に記憶させる要求を示すリロードコマンドを発行する。すると、第３に、ドライブ１１８に装着されたDVD１１９から、プログラム３のスタブ領域の後ろのホール領域（５である領域番号の領域）のデータに対応するコンテンツのデータが読み出されて、読み出されたデータがHDD１１６のキャッシュファイルの、プログラム３のスタブ領域の後ろのホール領域に格納されるように（プログラム３のスタブ領域の後ろに続いて格納されるように）、コンテンツのデータのリロードが開始される。
【０２４７】
この場合、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出されたデータが、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くように、ホール領域にリロードされる。従って、５である領域番号の領域の先頭から順にデータがストアされる。マイグレーションファイルシステム１６４は、データのストアに応じて、そのストアされた部分を４である領域番号の領域に結合させるように、拡張属性を更新する。
【０２４８】
従って、リロードの処理が進むにつれて、リロードの処理の対象となるホール状態の領域のオフセット位置はコンテンツの後ろ側にずれていき（オフセットがより大きくなり）、その領域のサイズは小さくなっていく。
【０２４９】
ここで、再生を開始するプログラムとして、プログラム２が選択されると、第４に、アプリケーションプログラム１４１は、プログラム２にジャンプする。第５に、ストレージマネージャ１１４の制御の基に、HSM１１３は、HDD１１６に、HDD１１６のキャッシュファイルのプログラム２のスタブ領域の先頭位置からデータの読み出しを開始させ、プログラム２からコンテンツの再生が即座に開始される。
【０２５０】
アプリケーションプログラム１４１によってデータの読み出しの位置がプログラムを単位として変更された場合、読み出しされる位置の後方のホール状態の領域（ホール領域）のうち、読み出される位置に最も近いホール領域の先頭からリロードが行われる。そのため、現在実行されているリロードの処理が中断されて、これから読み出しされる位置に最も近いホール領域の先頭からリロードが再開される。なお、データの読み出しの位置が変更されても、現在リロードしている位置が、変更された読み出しされる位置の後方のホール状態の領域（ホール領域）のうち、読み出しされる位置に最も近いホール領域の先頭である場合には、リロードの処理がそのまま継続される。
【０２５１】
例えば、プログラム２からコンテンツの再生が開始されたので、第６に、インデックス３のスタブ領域の後ろのホール領域のデータのリロードの処理は中断される。
【０２５２】
例えば、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続く９７５０キロバイトのデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出された９７５０キロバイトのデータが、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くように、ホール領域にリロードされる。その結果、コンテンツの先頭から３９０００キロバイト離れた位置のスタブ領域のデータ量は、１０４００キロバイト（６５０＋９７５０）となる。マイグレーションファイルシステム１６４は、ファイルの拡張属性の領域情報に含まれる、４である領域番号で示される領域のサイズを１０４００とする。
【０２５３】
第７に、ドライブ１１８に装着されたDVD１１９から、プログラム２のスタブ領域の後ろのホール領域のデータに対応するコンテンツのデータが読み出されて、読み出されたデータがHDD１１６のキャッシュファイルの、プログラム２のスタブ領域の後ろのホール領域に格納されるように、コンテンツのデータのリロードが開始される。
【０２５４】
第８に、プログラム２のスタブ領域の後ろのホール領域のリロードが完了すると、既にストアされている領域はスキップされて、第９に、第６の処理でリロードの処理が中断された位置、すなわち、プログラム３のスタブ領域の後ろのホール領域のデータのリロードが行われるように、リロードの処理が継続される。
【０２５５】
コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータに続く２５３５０キロバイトのデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出された２５３５０キロバイトのデータが、コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くように、ホール領域にリロードされる。
【０２５６】
その結果、コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータが格納されているスタブ領域の次のホール領域のリロードが完了するので、コンテンツの先頭から１３０００キロバイト離れた位置から、コンテンツの先頭から４９４００キロバイト離れた位置までのデータがキャッシュファイルにストアされる。これにより、隣接する、これまで、２である領域番号のスタブ領域と、３である領域番号のホール領域と、４である領域番号のスタブ領域が、１つのスタブ領域に結合される。
【０２５７】
各領域の領域番号は、先頭の領域を０とする、連続する値にふりなおされる。その結果、結合されたスタブ領域の領域番号は、２とされ、領域の結合前まで、５である領域番号のホール領域の領域番号は、３とされる。
【０２５８】
領域の結合により、２である領域番号のスタブ領域のデータ量は、３６４００（６５０＋２５３５０＋１０４００）となる。マイグレーションファイルシステム１６４は、ファイルの拡張属性の領域情報に含まれる、２である領域番号の領域のサイズを３６４０００とし、３である領域番号の領域についての、オフセットを４９４０００とし、サイズを９１００とし、フラグを０とする。
【０２５９】
プログラム３のスタブ領域の後ろのホール領域、すなわち、領域の結合により、３である領域番号となった領域のデータのリロードが行われる。コンテンツのデータが最後までリロードされると、２である領域番号の領域と、３である領域番号の領域とが結合される。
【０２６０】
そして、オートリロードモードにおいては、コンテンツのデータの最後までリロードした場合、先頭から残りのリロードされていないデータをキャッシュファイルにリロードして終了するので、リロードの位置をキャッシュファイルの先頭に移動させる。第１０に、コンテンツの先頭のストアされている領域はスキップされて、第１１に、コンテンツの先頭のインデックス１のスタブ領域の後ろのホール領域のデータのリロードが行われるように、リロードの処理が継続される。
【０２６１】
図２７で示されるように、コンテンツの先頭の６５０キロバイトのスタブデータに続くデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出されたデータが、コンテンツの先頭のスタブデータの次のホール領域にリロードされる。
【０２６２】
第１２に、プログラム２のスタブ領域の直前までデータがキャッシュファイルに格納されると、コンテンツの全体のデータがキャッシュファイルに格納されたので、リロードは終了する。この場合、全ての領域が結合されて、１つの領域となる。
【０２６３】
第１３に、DVD１１９がドライブ１１８にアンマウントされ、ディスクスロット１２１に戻される。
【０２６４】
このように、スタブファイル状態のキャッシュファイルがHDD１１６に記憶されているコンテンツの読み出しが要求されると、DVD１１９からデータが読み出されて、読み出されたデータがキャッシュファイルに格納される。そして、キャッシュファイルに格納されているデータが読み出されて、コンテンツが再生される。
【０２６５】
以上のように、任意の部分を読み出そうとする場合の、待ち時間の発生をより少なくすることができる。
【０２６６】
なおキャッシュファイルに記憶されていないデータを、DVD１１９から読み出して、DVD１１９から読み出したデータから直接コンテンツを再生するようにしてもよい。
【０２６７】
また、DVD１１９からコンテンツのデータを先読みして、HDD１１６に記憶させるので、DVD１１９から読み出したデータを直接再生に用いる場合に比較して、ドライブ１１８をより早く開放することができる。すなわち、DVD１１９の高速読み出しなど、ドライブ１１８の能力をより十分に発揮させることができ、ドライブ１１８をより効率的に使用できるようになる。
【０２６８】
また、以上においては、プログラム毎にスタブデータをHDD１１６に記憶するようにしたが、PTT（チャプタ）毎にスタブデータをHDD１１６に記憶することもできる。
【０２６９】
また、以上においてはDVDビデオ規格に準じた場合を例として説明したが、それに限らず、ストリーム・データとストリーム・データの再生を制御するための再生制御情報を持ち、入力された時刻情報からその時刻に対応するストリーム内のアドレスを特定できるような各種フォーマット（例えば、DVD±VR、DVD-Audio、BDなど）であれば、アドレス解析部分を変更するだけで本発明を適用することができる。
【０２７０】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０２７１】
図２８は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU（Central Processing Unit）４０１は、ROM（Read Only Memory）４０２、記録部４０８、または記録部４０９に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）４０３には、CPU４０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU４０１、ROM４０２、およびRAM４０３は、バス４０４により相互に接続されている。
【０２７２】
なお、CPU４０１として、”Ｃｅｌｌ誕生”、日経エレクトロニクス、日経BP社、２００５年２月２８日、８９頁乃至１１７頁に記載されているＣｅｌｌを採用することができる。
【０２７３】
CPU４０１にはまた、バス４０４を介して入出力インターフェース４０５が接続されている。入出力インターフェース４０５には、キーボード、マウス、マイクロホンなどよりなる入力部４０６、ディスプレイ、スピーカなどよりなる出力部４０７が接続されている。CPU４０１は、入力部４０６から入力される指令に対応して各種の処理を実行する。そして、CPU４０１は、処理の結果を出力部４０７に出力する。
【０２７４】
入出力インターフェース４０５に接続されている記録部４０８は、例えばHDD１１６に対応し、CPU４０１が実行するプログラムや各種のデータを記録する。記録部４０９は、例えばジュークボックス１４５に対応し、各種のデータやCPU４０１が実行するプログラムを記録する。通信部４１０は、インターネットやLANなどのネットワークを介してクライアントなどの外部の装置と通信する。
【０２７５】
また、通信部４１０を介してプログラムを取得し、記録部４０８または記録部４０９に記憶してもよい。
【０２７６】
入出力インターフェース４０５に接続されているドライブ４１１は、磁気ディスク４２１、光ディスク４２２、光磁気ディスク４２３、或いは半導体メモリ４２４などのリムーバブルメディアが装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記録部４０８または記録部４０９に転送され、記録される。
【０２７７】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０２７８】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図２８に示すように、磁気ディスク（フレキシブルディスクを含む）４２１、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）４２２、光磁気ディスク（ＭＤ（Mini-Disc）を含む）４２３、もしくは半導体メモリ４２４などよりなるパッケージメディアであるリムーバブルメディア、または、プログラムが一時的もしくは永続的に格納されるROM４０２や、記録部４０８を構成するハードディスクなどにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部４１０を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０２７９】
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０２８０】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０２８１】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０２８２】
【図１】従来の記録再生システムの構成を示すブロック図である。
【図２】従来の記録の方式を説明する図である。
【図３】本発明を適用した記録再生システムの構成例を示すブロック図である。
【図４】記録再生システムのより詳細な構成を示すブロック図である。
【図５】拡張属性を示す図である。
【図６】HDDに記録されるキャッシュファイルを説明する図である。
【図７】HDDに記録されるキャッシュファイルを示す図である。
【図８】キャッシュファイルを用いたコンテンツのデータの読み出しを説明する図である。
【図９】DVDビデオ規格におけるデータ構造を示す図である。
【図１０】セルに付与される番号を説明する図である。
【図１１】DVDビデオ規格におけるファイル構造を示す図である。
【図１２】VMGIを説明する図である。
【図１３】VTSIを説明する図である。
【図１４】図１３のPGC_PGMAPを説明する図である。
【図１５】セルの構成を説明する図である。
【図１６】VTSM_VOBSを説明する図である。
【図１７】HSM処理を説明するフローチャートである。
【図１８】図１７のステップＳ２のヒント情報生成処理を説明するフローチャートである。
【図１９】図１８のステップＳ１１の開始位置検出処理を説明するフローチャートである。
【図２０】図１８のステップＳ１２の終了位置検出処理を説明するフローチャートである。
【図２１】ファイル構造を示す図である。
【図２２】他のファイル構造を示す図である。
【図２３】図１７のステップＳ３のキャッシュファイル生成処理を説明するフローチャートである。
【図２４】再生処理を説明するフローチャートである。
【図２５】図２４のステップＳ６３のリロード処理を説明するフローチャートである。
【図２６】リロード処理の具体例を示す図である。
【図２７】リロード処理の具体例を示す他の図である。
【図２８】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０２８３】
１０１  記録再生システム，  １１３  HSM，  １１４  ストレージマネージャ，  １１６  HDD，  １１８  ドライブ，  １１９  DVD，  １４１  アプリケーションプログラム，  １６２  システムマネージャ，  １６３  ファイルＩ／Ｏマネージャ，  １６４  マイグレーションファイルシステム，  １６５  ストレージサーバ，  １６７  メディアサーバ，  ４０１  ＣＰＵ，  ４０２  ＲＯＭ，  ４０３  ＲＡＭ，  ４０８  記録部，  ４０９  記録部
【図１】
2007164835.tif 000003
【図２】
2007164835.tif 000004
【図３】
2007164835.tif 000005
【図４】
2007164835.tif 000006
【図５】
2007164835.tif 000007
【図６】
2007164835.tif 000008
【図７】
2007164835.tif 000009
【図８】
2007164835.tif 000010
【図９】
2007164835.tif 000011
【図１０】
2007164835.tif 000012
【図１１】
2007164835.tif 000013
【図１２】
2007164835.tif 000014
【図１３】
2007164835.tif 000015
【図１４】
2007164835.tif 000016
【図１５】
2007164835.tif 000017
【図１６】
2007164835.tif 000018
【図１７】
2007164835.tif 000019
【図１８】
2007164835.tif 000020
【図１９】
2007164835.tif 000021
【図２０】
2007164835.tif 000022
【図２１】
2007164835.tif 000023
【図２２】
2007164835.tif 000024
【図２３】
2007164835.tif 000025
【図２４】
2007164835.tif 000026
【図２５】
2007164835.tif 000027
【図２６】
2007164835.tif 000028
【図２７】
2007164835.tif 000029
【図２８】
2007164835.tif 000030