(57)【要約】【課題】DVD再生において、任意の部分を読み出そうとする場合の、待ち時間の発生をより少なくするようにする。【解決手段】HDD１１６は、DVD１１９のコンテンツのリジューム停止位置またはブックマークされた位置から所定期間の部分のデータをスタブデータとして記録する。ストレージマネージャ１１４は、その位置から再生をするとき、その位置からのスタブデータをHDD１１６から読み出し、スタブデータに続くデータをDVD１１９から読み出すように、データの読み出しを制御する。本発明は、コンテンツを記録し再生する記録再生システムに適用できる。【選択図】図６
2007193864.tif 000002
【特許請求の範囲】
【請求項１】
DVDまたは記憶媒体からデータを読み出す読み出し装置において、
コンテンツの所定の位置を指定する指定手段と、
コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記指定手段により指定された位置からの所定の部分を示す情報を生成する生成手段と、
前記生成手段により生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶手段と、
前記コンテンツの前記指定手段により指定された位置からの読み出しが要求された場合、前記記憶媒体に記憶されている、前記指定手段により指定された位置からの前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記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または記憶媒体からデータを読み出す読み出し装置の読み出し方法において、またはDVDまたは記憶媒体からデータを読み出す読み出し処理をコンピュータに実行させるプログラムにおいて、コンテンツの所定の位置を指定する指定ステップと、コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記指定ステップにより指定された位置からの所定の部分を示す情報を生成する生成ステップと、前記生成ステップの処理で生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶ステップと、前記コンテンツの前記指定ステップの処理で指定された位置からの読み出しが要求された場合、前記記憶媒体に記憶されている、前記指定ステップの処理で指定された位置からの前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御ステップとを含む。
【発明の効果】
【００２５】
以上のように、本発明の一側面によれば、DVD再生において、指定された部分を読み出そうとする場合の、待ち時間の発生をより少なくすることができる。
【発明を実施するための最良の形態】
【００２６】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２７】
本発明の一側面の読み出し装置は（例えば、図４の記録再生システム１０１）は、
DVDまたは記憶媒体からデータを読み出す読み出し装置において、
コンテンツの所定の位置を指定する指定手段（例えば、図４のアプリケーションプログラム１４１）と、
コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記指定手段により指定された位置からの所定の部分を示す情報を生成する生成手段（例えば、図４のマイグレーションファイルシステム１６４）と、
前記生成手段により生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶手段（例えば、図４のストレージマネージャ１１４）と、
前記コンテンツの前記指定手段により指定された位置からの読み出しが要求された場合、前記記憶媒体に記憶されている、前記指定手段により指定された位置からの前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御手段（例えば、図４のストレージマネージャ１１４）と
を備える。
【００２８】
前記指定手段により指定された位置からの所定の部分は、前記DVDからコンテンツのデータを読み出すまでに必要な時間より長い期間（例えば、時間T）の部分であるようにすることができる。
【００２９】
前記指定手段は、リジューム停止された位置、またはブックマークされた位置を、前記所定の位置（例えば、図７Ｂの位置Ｐ11、図７Ｃの位置Ｐ21，Ｐ22）として指定することができる。
【００３０】
本発明の一側面の読み出し方法、またはプログラムは、
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１１９が装着されたドライブ１１８から、その位置から所定期間の部分のデータが読み出され、バッファ１１７を介してHDD１１６に供給され、キャッシュファイルとしてHDD１１６（のキャッシュ領域）に書き込まされる。
【００７８】
なおリジューム再生機能は、次の再生時に、前回再生を停止（リジューム停止）した位置から再生を開始する機能である。ブックマーク機能とは、お気に入りのシーンを指定しておくことで、後からそのシーンを指定して再生（頭だし再生）することができる機能である。
【００７９】
図７Ｂは、図７Ａに示すコンテンツが記録されているDVD１１９に対するリジューム停止操作によって生成されるHDD１１６のキャッシュファイルの状態を示している。
【００８０】
図７Ｂの例では、コンテンツの開始から２３分２６秒経過時の位置Ｐ11でリジューム停止がされ、その位置から所定の期間の部分のデータが、キャッシュファイルとしてHDD１１６に格納される。
【００８１】
図７Ｃは、図７Ａに示すコンテンツが記録されているDVD１１９に対するブックマーク操作によって生成されるHDD１１６のキャッシュファイルの状態を示している。
【００８２】
図７Ｃの例では、コンテンツの開始から３８分４５秒経過時の位置Ｐ21、および４３分５９秒経過時の位置Ｐ22がブックマークがされ、それらの位置から所定の期間の部分のデータが、キャッシュファイルとしてHDD１１６に格納される。
【００８３】
ここで、キャッシュファイルとして、HDD１１６のキャッシュ領域に記憶されているデータに対応するコンテンツの部分をスタブと称し、スタブデータがHDD１１６に記憶されているコンテンツ上の領域を、スタブ領域と称する。またスタブデータがHDD１１６に記憶されていないコンテンツ上の領域を、ホール領域と称する。スタブ領域およびホール領域を区別しない場合、単に領域と称する。
【００８４】
すなわち図７Ｂの例では、コンテンツの１で示されるスタブ領域である領域のデータ（スタブデータ）は、HDD１１６にキャッシュファイルとして記憶され、０および２で示されるホール領域である領域のデータは、HDD１１６に記憶されていない。
【００８５】
また図７Ｃの例では、コンテンツの１および３で示されるスタブ領域である領域のデータ（スタブデータ）は、HDD１１６にキャッシュファイルとして記憶され、０、２、および４で示されるホール領域である領域のデータは、HDD１１６に記憶されていない。
【００８６】
このようにリジューム停止操作やブックブックマーク操作がなされたとき、その操作がなされた位置から所定期間の部分のデータが、キャッシュファイルとしてHDD１１６（のキャッシュ領域）に書き込まれる。
【００８７】
キャッシュファイルとしてHDD１１６に記憶されているDVD１１９のデータは、図８中、白抜きの矢印で示されるように、HDD１１６からバッファ１１５を介してアプリケーションプログラム１４１によって読み出される。一方、HDD１１６に記憶されていないDVD１１９のデータは、図８中、黒色の矢印で示されるように、DVD１１９が装着されたドライブ１１８から読み出される。そしてドライブ１１８から読み出されたデータは、例えばバッファ１１７を介してHDD１１６に供給されて、キャッシュファイルとして記憶され、バッファ１１５を介してアプリケーションプログラム１４１によって読み出される。
【００８８】
そこで本発明では、リジューム停止またはブックマークされた位置からの再生を行う際、図８中、白抜きの矢印が示すように、はじめに、HDD１１６に予め格納されたキャッシュファイルから指定された位置の部分のデータが読み出されて、バッファ１１５を介してアプリケーション１４１に供給される。そしてその部分のデータが読み出されている間であって、予めキャッシュファイルに格納されていないそれに続くデータの読み出しが実行される前に、図８中、黒色の矢印が示すように、DVD１１９が装着されたドライブ１１８からホール領域のデータが読み出されて、キャッシュファイルとして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のセルの再生時間が２秒である場合、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独自の機能を実現したり、早送り、巻き戻しなどの特殊再生をサポートするための情報であるナビゲーション情報を取得し、ストレージマネージャ１１４を介してHSM１１３に供給する。アプリケーションプログラム１４１はまた、リジューム停止またはブックマークされた位置（コンテンツの先頭からの再生時刻（以下、指定時刻と称する））をHSM１１３に供給する。
【０１５６】
ステップＳ２において、HSM１１３のマイグレーションファイルシステム１６４は、供給されたナビゲーション情報に基づいて、指定時刻に対応するヒント情報を生成する。
【０１５７】
ステップＳ３において、ストレージマネージャ１１４は、生成されたヒント情報に基づいて、キャッシュファイルを生成する。
【０１５８】
次にステップＳ２およびステップＳ３の処理の詳細を説明する。はじめにステップＳ２におけるヒント情報生成処理の詳細について、図１８のフローチャートを参照して説明する。
【０１５９】
ステップＳ１１において、マイグレーションファイルシステム１６４は、指定時刻（リジューム停止またはブロックマークされた位置のコンテンツの先頭からの再生時刻）の中の１つ選択する。例えば図７Ｃに示したように２箇所がブックマークとして指定された場合、その中の１つの指定時刻が選択される。
【０１６０】
ステップＳ１２において、マイグレーションファイルシステム１６４は、ステップＳ１１で選択した指定時刻に対応する、キャッシュファイルとしてHDD１１６に記憶されるコンテンツのデータの開始位置を検出する。この処理の詳細は、図１９に示すフローチャートに示されている。
【０１６１】
ステップＳ２１において、マイグレーションファイルシステム１６４は、ナビゲーション情報として取得されたVTSIのVTS_PGCITの各PGCIのPGC_GI（図１３）からPGC内のcellの総数C_Nsを読み取る。なおPGC_GI(PGC General Information)には、PGC内のプログラム(PG)総数、セル総数、PGC再生時間、及びPGCに関する各種テーブルの開始アドレスなどのPGCに関する全般的な情報が記述されている。
【０１６２】
ステップＳ２２において、マイグレーションファイルシステム１６４は、セルの数をカウントするカウンタCNに１を設定し、セルの再生時間の積算時間をカウントするカウンタPBTMの値を０に初期設定する。
【０１６３】
ステップＳ２３において、マイグレーションファイルシステム１６４は、PGCI内でカウンタCNに設定された値の順番に再生されるセルに対応したC_PBIのC_PBTM（C_PBTM［CN］）（図１３）を参照し、そのセルの再生時間を取得し、カウンタPBTMに加算する。なお上述したように、C_PBI は、PGC内のセルの再生順序を定義し、C_PBTMには、セル再生時間が記述されている。
【０１６４】
ステップＳ２４において、マイグレーションファイルシステム１６４は、カウンタPBTMの値（コンテンツの先頭からの再生時刻）が、ステップＳ１１で取得した指定時刻ｔmsより小さいか否かを判定し、小さいと判定した場合、ステップＳ２５に進み、カウンタCNの値を１だけインクリメントする。
【０１６５】
次にステップＳ２６において、マイグレーションファイルシステム１６４は、カウンタCNの値がセル総数C_Nsより大きいか否かを判定し、大きくないと判定した場合、ステップＳ２３に戻り、それ以降の処理を同様に実行する。
【０１６６】
ステップＳ２４で、カウンタPBTMの値が、指定時刻ｔmsより小さくないと判定された場合、すなわち最後に積算されたセルにキャッシュファイルの開始位置としてのVOBUが存在する場合、ステップＳ２７に進み、マイグレーションファイルシステム１６４は、いまのカウンタPBTMの値から、いまのカウンタCNの値の順番に再生されるセルの再生時間（C_PBTM［CN］）を減算する。
【０１６７】
Cell#1乃至cell#5のセルの再生時間が、図２０に示すような場合であって、指定時刻が11:00である場合、cell#1、cell#2、およびcell#3のC_PBTMが積算されたときのカウンタPBTM（15:00=5:00+3:00+7:00）＞11:00となるので、ステップＳ２７に進み、カウンタPBTMの値は8:00（=15:00-7:00）とされる。
【０１６８】
次にステップＳ２８において、マイグレーションファイルシステム１６４は、C_PBITの、カウンタCNの値の順番に再生されるセルに対応するC_PBIのC_FVOBU_SAを参照し、そのセルの先頭VOBUの先頭アドレスを取得する。なおC_PBITは、PGC内のセルの再生順序を定義し、そのC_PBIのC_FVOBU_SA には、セルの先頭VOBUの先頭アドレスが記述されている。
【０１６９】
図２０の例では、cell#3のセルのC_PBIのC_FVOBU_SAが参照され、cell#3のセルの先頭VOBUの先頭アドレスが取得される。
【０１７０】
ステップＳ２９において、マイグレーションファイルシステム１６４は、ステップＳ２８で取得したアドレスに基づいて、その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の先頭アドレスを示している。
【０１７１】
ステップＳ３０において、マイグレーションファイルシステム１６４は、カウンタVNに１を初期設定する。
【０１７２】
ステップＳ３１において、マイグレーションファイルシステム１６４は、カウンタCNの値の順番に再生されるセルにおいて、カウンタVNの値が示す順番で再生されるVOBU（例えば、NV＝１である場合、そのセルにおいて１番目に再生されるVOBU）のNV_PCKのPCI_GIのC_ELTM（図１６）を参照し、そのVOBUのセル内での経過時間を取得し、カウンタPBTMに加算する。なおVOBUのNV_PCKのPCIのC_ELTMは、セル内経過時間が記述されている。
【０１７３】
ステップＳ３２において、マイグレーションファイルシステム１６４は、カウンタPBTMの値が、指定時刻ｔmsより小さいか否かを判定し、小さいと判定した場合、ステップＳ３３に進み、カウンタPBTMから、カウンタVNの値が示す順番で再生されるVOBUのセル内での経過時間を減算する（すなわちカウンタPBTMの値を元に戻す）。
【０１７４】
その後、ステップＳ３４において、マイグレーションファイルシステム１６４は、カウンタVNの値を１だけインクリメントし、ステップＳ３１に戻り、それ以降の処理を実行する。すなわち１だけインクリメントされたカウンタVNの値が示す順番に再生されるVOBUまでの経過時間が、カウンタPBTMに加算され、その結果得られたコンテンツの先頭からのそのVOBUまでの再生時刻が、指定時刻ｔmより小さいかが判定される。
【０１７５】
ステップＳ３２で、カウンタPBTMの値が、指定時刻ｔmより小さくないと判定された場合、ステップＳ３５に進む。
【０１７６】
図２０の例におけるcell#3のセルが図２１に示すようなVOBUで構成されている場合、C_ELTMが加算される前のカウンタPBTMの値は8:00（=5:00+3:00）であるので、VOBU#mのVOBUのC_ELTM（=3:00）が加算されたとき、カウンタPBTMの値は11:00となり、指定時刻ｔms（=11:00）より小さくなくなるので、ステップＳ３５に進む。
【０１７７】
ステップＳ３５において、マイグレーションファイルシステム１６４は、ステップＳ２９で取得したインデックス番号に、カウンタVNの値から１だけ減算した結果得られた値を加算し、ステップＳ３６において、その結果得られた値を、ｎの値とするVTS_VOBU_AD #n（VTS_VOBU_ADMAP内のｎ番目のVOBUの先頭アドレス）を、キャッシュファイルの先頭位置として取得する。
【０１７８】
図２１の例の場合、cell#3のセルのVOBU#1のインデックス番号に、ｍ−１が加算された値をｎの値とするVTS_VOBU_AD #n（VTS_VOBU_ADMAP内のｎ番目のVOBUの先頭アドレス）が、キャッシュファイルの先頭位置として取得される。
【０１７９】
以上のようにして指定時刻ｔmsに対応するキャッシュファイルの先頭位置が検出されると、図１８のステップＳ１３に進む。
【０１８０】
なおステップＳ２６において、カウンタCNの値がセル総数C_Nsより大きいと判定された場合、指定時刻違反として、処理が終了される。
【０１８１】
ステップＳ１３において、ステップＳ１１で選択された指定時刻に対応する、キャッシュファイルとしてHDD１１６に記憶されるデータの終了位置が検出される。この処理の詳細は、図２２のフローチャートに示されている。この例の場合、
ステップＳ１１で選択された指定時刻から時間T秒経過した時刻直後に再生されるVOBUの開始アドレスがキャッシュファイルの終了位置として求められる。
【０１８２】
ステップＳ４１において、マイグレーションファイルシステム１６４は、ナビゲーション情報として取得されたVTSIのVTS_PGCITの各PGCIのPGC_GI（図１３）からPGC内のcellの総数C_Nsを読み取る。
【０１８３】
ステップＳ４２において、マイグレーションファイルシステム１６４は、セルの数をカウントするカウンタCNに１を設定し、セルの再生時間の積算時間をカウントするカウンタPBTMの値を０に初期設定する。
【０１８４】
ステップＳ４３において、マイグレーションファイルシステム１６４は、PGCI内でカウンタCNに設定された値の順番に再生されるセルに対応したC_PBIのC_PBTM（C_PBTM［CN］）（図１３）を参照し、そのセルの再生時間を取得し、カウンタPBTMに加算する。なお上述したように、C_PBI は、PGC内のセルの再生順序を定義し、C_PBTMには、セル再生時間が記述されている。
【０１８５】
ステップＳ４４において、マイグレーションファイルシステム１６４は、カウンタPBTMの値（コンテンツの先頭からの時刻）が、ステップＳ１１で取得した指定時刻ｔmsから所定の時間T経過後の時刻ｔmeより小さいか否かを判定し、小さいと判定した場合、ステップＳ４５に進み、カウンタCNの値を１だけインクリメントする。
【０１８６】
次にステップＳ４６において、マイグレーションファイルシステム１６４は、カウンタCNの値がセル総数C_Nsより大きいか否かを判定し、大きくないと判定した場合、ステップＳ４３に戻り、それ以降の処理を同様に実行する。
【０１８７】
ステップＳ４４で、カウンタPBTMの値が、指定時刻ｔmeより小さくないと判定された場合、すなわち最後に積算されたセルにキャッシュファイルの終了位置としてのVOBUが存在する場合、ステップＳ４７に進み、マイグレーションファイルシステム１６４は、いまのカウンタPBTMの値から、いまのカウンタCNの値の順番に再生されるセルの再生時間（C_PBTM［CN］）を減算する。
【０１８８】
次にステップＳ４８において、マイグレーションファイルシステム１６４は、C_PBITの、カウンタCNの値の順番に再生されるセルに対応するC_PBIのC_FVOBU_SAを参照し、そのセルの先頭VOBUの先頭アドレスを取得する。なおC_PBITは、PGC内のセルの再生順序を定義し、そのC_PBIのC_FVOBU_SA には、セルの先頭VOBUの先頭アドレスが記述されている。
【０１８９】
ステップＳ４９において、マイグレーションファイルシステム１６４は、ステップＳ４８で取得したアドレスに基づいて、その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の先頭アドレスを示している。
【０１９０】
ステップＳ５０において、マイグレーションファイルシステム１６４は、カウンタVNに１を初期設定する。
【０１９１】
ステップＳ５１において、マイグレーションファイルシステム１６４は、カウンタCNの値の順番に再生されるセルにおいて、カウンタVNの値が示す順番で再生されるVOBU（例えば、NV＝１である場合、そのセルにおいて１番目に再生されるVOBU）のNV_PCKのPCI_GIのC_ELTM（図１６）を参照し、そのVOBUのセル内での経過時間を取得し、カウンタPBTMに加算する。なおVOBUのNV_PCKのPCIのC_ELTMは、セル内経過時間が記述されている。
【０１９２】
ステップＳ５２において、マイグレーションファイルシステム１６４は、カウンタPBTMの値が、指定時刻ｔmeより小さいか否かを判定し、小さいと判定した場合、ステップＳ５３に進み、カウンタPBTMから、カウンタVNの値が示す順番で再生されるVOBUのセル内での経過時間を減算する（すなわちカウンタPBTMの値を元に戻す）。
【０１９３】
その後、ステップＳ５４において、マイグレーションファイルシステム１６４は、カウンタVNの値を１だけインクリメントし、ステップＳ５１に戻り、それ以降の処理を実行する。すなわち１だけインクリメントされたカウンタVNの値が示す順番に再生されるVOBUまでの経過時間が、カウンタPBTMに加算され、その結果得られたコンテンツの先頭からの再生時刻が、指定時刻ｔmeより小さいかが判定される。
【０１９４】
ステップＳ５２で、カウンタPBTMの値が、指定時刻ｔmeより小さくないと判定された場合、ステップＳ５５に進む。
【０１９５】
ステップＳ５５において、マイグレーションファイルシステム１６４は、ステップＳ４９で取得したインデックス番号に、カウンタVNの値から１だけ減算した結果得られた値を加算し、ステップＳ５６において、その結果得られた値を、ｎの値とするVTS_VOBU_AD #n（VTS_VOBU_ADMAP内のｎ番目のVOBUの先頭アドレス）を、キャッシュファイルの終了位置として取得する。
【０１９６】
ステップＳ４６で、カウンタCNの値がセル総数C_Nsより大きいと判定された場合、ステップＳ４７に進み、最後のセルのC_FVOBU_EAのアドレスが、キャッシュファイルの終了位置として取得される。
【０１９７】
以上のようにしてステップＳ１１で指定された指定時刻ｔmsに対応するキャッシュファイルの終了位置が検出されると、図１８のステップＳ１４に進む。
【０１９８】
ステップＳ１４において、マイグレーションファイルシステム１６４は、指定時刻をすべて選択したか否かを判定し、まだ選択していない指定時刻が残っている場合、ステップＳ１１に戻り、次の指定時刻を選択し、上述したように、その指定時刻に応じたキャッシュファイルの開始位置および終了位置を検出する。
【０１９９】
ステップＳ１４で、すべての指定時刻を選択したと判定された場合、ステップＳ１５に進み、マイグレーションファイルシステム１６４は、検出したキャッシュファイルとして格納されるデータ（以下、ヒントセクションと称する）の開始位置および終了位置からヒント情報を生成する。
【０２００】
具体的には、マイグレーションファイルシステム１６４は、コンテンツのデータの先頭から、ステップＳ１２で検出した開始位置までのデータ量を、ヒントオフセットとする。すなわちヒントオフセットは、それぞれのヒントセクションの開始位置を、コンテンツのデータの先頭からのオフセットで示す。例えば、ヒントオフセットの単位は、データ量（バイトなど）とされる。
【０２０１】
なお図２３に示すようなDVDビデオ規格上と同様のファイル構成がHDD１１６上に記憶されている場合、検出されたヒントセクションの開始位置および終了位置がそれぞれDVDディスク上のどのファイルに属しているかを解析し、開始アドレスおよび終了アドレスの値を該当するファイル先頭からのオフセット値に変換する必要がある。
【０２０２】
また図２４に示すように、DVDディスク上のデータを、ISOイメージとしてHDD１１６上に置く場合、ISOイメージの開始論理アドレスは０であるので、開始アドレスおよび終了アドレスが属するVTSのVTS_VOBの先頭論理ブロックアドレスをファイルシステムから取得し、ステップＳ１１およびステップＳ１２で取得した開始アドレスおよび終了アドレスに加算することでISOイメージファイルの先頭からのオフセットを取得する必要がある。
【０２０３】
またマイグレーションファイルシステム１６４は、時間Tに再生されるコンテンツのデータ量を、ヒントサイズとする。すなわちヒントサイズは、ヒントセクションのデータ量を示す。ヒントサイズの単位は、例えば、バイトとされる。
【０２０４】
このようにヒント情報が生成されると、ステップＳ１６に進み、マイグレーションファイルシステム１６４は、生成したヒント情報を、DVD１１９のコンテンツの拡張属性として記憶する（図５）。
【０２０５】
なお、ヒント情報には、使用者からの操作に応じた値が直接設定されるようにしてもよく、また、アプリケーションプログラム１４１に限らず、オペレーティングシステムなどの他のプログラムによって書き込まれるようにしてもよい。
【０２０６】
その後処理は、終了する。
【０２０７】
次に、図１７のステップＳ３におけるキャッシュファイル生成処理の詳細を、図２５のフローチャートを参照して説明する。
【０２０８】
ステップＳ５１において、ストレージマネージャ１１４は、マイグレーションファイルシステム１６４からコンテンツの拡張属性を読み出して、読み出したコンテンツの拡張属性からヒント情報を抽出する。
【０２０９】
ステップＳ５２において、ストレージマネージャ１１４は、ヒント情報のうちの、全てのヒントセクションのデータ量の合計であるヒントセクションレングスを取得し、ステップＳ５３において、１つのヒントセクションのデータ量で割り算することによりヒントセクションの数を算出する。
【０２１０】
ストレージマネージャ１１４は、ステップＳ５４乃至ステップＳ５８において、それぞれのヒントセクションについてステップＳ５５乃至ステップＳ５７の処理を実行し、ステップＳ５４乃至ステップＳ５８の処理をヒントセクションの数だけ繰り返すようにループ制御の処理を実行する。
【０２１１】
ステップＳ５５において、ストレージマネージャ１１４は、ヒント情報から、所定のヒントセクションの開始位置を示すヒントオフセットを取得する。
【０２１２】
ステップＳ５６において、ストレージマネージャ１１４は、ヒント情報から、そのヒントセクションのデータ量を示すヒントサイズを取得する。
【０２１３】
ステップＳ５７において、ストレージマネージャ１１４は、取得したヒントオフセットおよびヒントサイズに基づいて、コンテンツの、ヒントセクションをスタブ領域（キャッシュする領域）に設定し、ヒント情報が設定されていない領域をホール領域に設定する。
【０２１４】
ステップＳ５４乃至ステップＳ５８の処理がヒントセクションの数だけ繰り返され、スタブ領域およびホール領域が設定されると、処理は、ステップＳ５９に進む。
【０２１５】
ステップＳ５９において、ストレージマネージャ１１４は、HSM１１３に、スタブ領域のデータをキャッシュファイルに記憶させる。HSM１１３は、スタブ領域を、DVD１１９が装着されたドライブ１１８から読み出し、HDD１１６のキャッシュファイルに記憶する。なおDVD１１９から、コンテンツのデータを読み出して、HDD１１６に記憶することを、適宜、リロードと称する。
【０２１６】
次にステップＳ６０において、ストレージマネージャ１１４は、HSM１１３のマイグレーションファイルシステム１６４に、キャッシュファイルへのデータのリロードの結果に対応するように、コンテンツの拡張属性の領域情報を書き換えらせて、処理は終了する。
【０２１７】
以上のように、HSM処理が実行されて（図１７）、スタブファイル状態のキャッシュファイル（例えば、図７）が生成される。
【０２１８】
次に、このように生成された、スタブファイル状態のキャッシュファイルを用いた、コンテンツのデータの読み出しの処理（再生処理）を、図２６のフローチャートを参照して説明する。
【０２１９】
ステップＳ７１において、ストレージマネージャ１１４のファイルＩ／Ｏマネージャ１６３は、データの読み出しを開始する位置の選択を受け付ける。この例の場合、アプリケーションプログラム１４１は、使用者の操作に応じた、例えば、リジューム停止またはブックマークされた位置の選択を受け付ける。
【０２２０】
アプリケーションプログラム１４１は、再生を開始するコンテンツの位置を指定するデータをファイルＩ／Ｏマネージャ１６３に供給する。ファイルＩ／Ｏマネージャ１６３は、アプリケーションプログラム１４１からのデータを取得することにより、データの読み出しを開始する再生位置を受け付ける。ストレージマネージャ１１４は、その位置からの再生をHSM１１３に指示する。
【０２２１】
ステップＳ７２において、ストレージマネージャ１１４は、HSM１１３に、その位置からコンテンツのデータの読み出しを指示する。HSM１１３は、HDD１１６に、HDD１１６のキャッシュファイルに対応するスタブ領域の先頭位置からデータの読み出しを開始させる。
【０２２２】
ステップＳ７３において、リロードの処理が実行される。
【０２２３】
ステップＳ７４において、ストレージマネージャ１１４は、キャッシュファイルの最後までデータを読み出したか否かを判定し、キャッシュファイルの最後までデータを読み出していないと判定された場合、ステップＳ７４に戻り、判定の処理を繰り返す。
【０２２４】
ステップＳ７４で、キャッシュファイルの最後までデータを読み出したと判定された場合、再生処理は終了する。
【０２２５】
次に、ステップＳ７３におけるリロード処理の詳細を、図２７のフローチャートを参照して説明する。
【０２２６】
ステップＳ８１において、ストレージマネージャ１１４は、HSM１１３に、所定の位置を指定して、リロードの開始を指示する。HSM１１３のマイグレーションファイルシステム１６４は、リロードの開始位置を、現在、図２６のステップＳ７２でHDD１１６から読み出されているデータの位置の後の領域であって、最も近い領域の先頭とする。
【０２２７】
ステップＳ８２において、HSM１１３のストレージサーバ１６５は、リロードを開始する。すなわち、ストレージサーバ１６５は、リロードの開始位置におけるデータを、DVD１１９が装着されたドライブ１１８から読み出させ、読み出したデータをキャッシュファイルの所定の領域に格納させるように、HDD１１６に記憶させる。
【０２２８】
ステップＳ８３において、マイグレーションファイルシステム１６４は、その領域がストアされているか否かを判定し、その領域がストアされていると判定した場合、ステップＳ８４において、リロードの開始位置を、その領域の後のホール領域であって、最も近いホール領域の先頭に移動する。ステップＳ８３において、その領域がストアされていないと判定された場合、ステップＳ８４の処理はスキップされる。
【０２２９】
ステップＳ８５において、HSM１１３のストレージサーバ１６５は、リロードを開始する。
【０２３０】
ステップＳ８６において、マイグレーションファイルシステム１６４は、その領域のリロードが完了したか否かを判定し、その領域のリロードが完了していないと判定された場合、ステップＳ８６に戻り、判定の処理を繰り返す。
【０２３１】
ステップＳ８６において、その領域のリロードが完了したと判定された場合、ステップＳ８７に進み、マイグレーションファイルシステム１６４は、リロードを完了した領域と隣接するスタブ領域とを結合させるように拡張属性を書き換える。
【０２３２】
ステップＳ８８において、マイグレーションファイルシステム１６４は、キャッシュファイルの最後までリロードが完了したか否かを判定する。ステップＳ８８で、キャッシュファイルの最後までリロードが完了したと判定された場合、ステップＳ８９に進み、マイグレーションファイルシステム１６４は、コンテンツの全てのデータがHDD１１６に記憶されたか、すなわち、コンテンツの全てのデータがストアされたか否かを判定する。
【０２３３】
ステップＳ８９において、コンテンツの全てのデータがストアされていないと判定された場合、ステップＳ９０に進み、マイグレーションファイルシステム１６４は、オートリロードモードであるか否かを判定する。ステップＳ９０において、オートリロードモードであると判定された場合、ステップＳ９１に進み、マイグレーションファイルシステム１６４は、リロードの開始位置を、キャッシュファイルの先頭に移動して、ステップＳ８２に戻り、上述した処理を繰り返す。
【０２３４】
ステップＳ８８において、キャッシュファイルの最後までリロードが完了していないと判定された場合、ステップＳ８２に戻り、上述した処理を繰り返す。
【０２３５】
ステップＳ８９において、コンテンツの全てのデータがストアされたと判定された場合、または、ステップＳ９０において、オートリロードモードでないと判定された場合、処理は終了する。
【０２３６】
次に図２８および図２９を参照して、リロードの処理の具体例を説明する。図２８および図２９の例では、３つの、リジューム停止またはブックマークされた位置Ｐ31乃至位置Ｐ33のそれぞれに対応するスタブデータがキャッシュファイルに記憶されている場合において、最初に、位置Ｐ33からの再生が要求され、その再生の途中で、位置Ｐ32からの再生が要求され、そのまま、コンテンツの最後まで再生される。
【０２３７】
使用者の操作により位置Ｐ33からの再生が選択されると、アプリケーションプログラム１４１は、位置Ｐ31からの再生の選択を受け付ける。第１に、ストレージマネージャ１１４の制御の基に、HSM１１３は、HDD１１６に、HDD１１６の位置Ｐ33のキャッシュファイルに対応する、スタブ領域（４である領域番号の領域）の先頭位置からデータの読み出しを開始させ、位置Ｐ33からの再生が開始される。
【０２３８】
図２９で示されるように、位置Ｐ31、位置Ｐ32、および位置Ｐ33について、コンテンツの先頭の部分の６５０キロバイトのスタブデータ、コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータ、およびコンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータがキャッシュファイルに記憶されている。各プログラムの他の部分のデータは、キャッシュファイルに記憶されていない。
【０２３９】
位置Ｐ33のスタブ領域、すなわち、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのタブデータがHDD１１６から読み出されて、位置Ｐ33からの再生が即座に開始される。
【０２４０】
これに並行して、第２に、ストレージマネージャ１１４は、HSM１１３に、位置Ｐ33からのスタブ領域の後ろのホール領域のデータを、DVD１１９からHDD１１６に読み出して、HDD１１６に記憶させる要求を示すリロードコマンドを発行する。すると、第３に、ドライブ１１８に装着されたDVD１１９から、位置Ｐ33からのスタブ領域の後ろのホール領域（５である領域番号の領域）のデータに対応するコンテンツのデータが読み出されて、読み出されたデータがHDD１１６のキャッシュファイルの、位置Ｐ33からのスタブ領域の後ろのホール領域に格納されるように（位置Ｐ33からのスタブ領域の後ろに続いて格納されるように）、コンテンツのデータのリロードが開始される。
【０２４１】
この場合、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出されたデータが、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くように、ホール領域にリロードされる。従って、５である領域番号の領域の先頭から順にデータがストアされる。マイグレーションファイルシステム１６４は、データのストアに応じて、そのストアされた部分を４である領域番号の領域に結合させるように、拡張属性を更新する。
【０２４２】
従って、リロードの処理が進むにつれて、リロードの処理の対象となるホール状態の領域のオフセット位置はコンテンツの後ろ側にずれていき（オフセットがより大きくなり）、その領域のサイズは小さくなっていく。
【０２４３】
ここで、再生を開始する位置として、位置Ｐ32が選択されると、第４に、アプリケーションプログラム１４１は、位置Ｐ32にジャンプする。第５に、ストレージマネージャ１１４の制御の基に、HSM１１３は、HDD１１６に、HDD１１６の位置Ｐ32のキャッシュファイルのスタブ領域の先頭位置からデータの読み出しを開始させ、位置Ｐ32からの再生が即座に開始される。
【０２４４】
アプリケーションプログラム１４１によってデータの読み出しの位置がプログラムを単位として変更された場合、読み出しされる位置の後方のホール状態の領域（ホール領域）のうち、読み出される位置に最も近いホール領域の先頭からリロードが行われる。そのため、現在実行されているリロードの処理が中断されて、これから読み出しされる位置に最も近いホール領域の先頭からリロードが再開される。なお、データの読み出しの位置が変更されても、現在リロードしている位置が、変更された読み出しされる位置の後方のホール状態の領域（ホール領域）のうち、読み出しされる位置に最も近いホール領域の先頭である場合には、リロードの処理がそのまま継続される。
【０２４５】
例えば、位置Ｐ32からの再生が開始されたので、第６に、位置Ｐ33のスタブ領域の後ろのホール領域のデータのリロードの処理は中断される。
【０２４６】
例えば、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続く９７５０キロバイトのデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出された９７５０キロバイトのデータが、コンテンツの先頭から３９０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くように、ホール領域にリロードされる。その結果、コンテンツの先頭から３９０００キロバイト離れた位置のスタブ領域のデータ量は、１０４００キロバイト（６５０＋９７５０）となる。マイグレーションファイルシステム１６４は、ファイルの拡張属性の領域情報に含まれる、４である領域番号で示される領域のサイズを１０４００とする。
【０２４７】
第７に、ドライブ１１８に装着されたDVD１１９から、位置Ｐ32からのスタブ領域の後ろのホール領域のデータに対応するコンテンツのデータが読み出されて、読み出されたデータがHDD１１６のキャッシュファイルの、位置Ｐ32からのスタブ領域の後ろのホール領域に格納されるように、コンテンツのデータのリロードが開始される。
【０２４８】
第８に、位置Ｐ32のスタブ領域の後ろのホール領域のリロードが完了すると、既にストアされている領域はスキップされて、第９に、第６の処理でリロードの処理が中断された位置、すなわち、位置Ｐ33からのスタブ領域の後ろのホール領域のデータのリロードが行われるように、リロードの処理が継続される。
【０２４９】
コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータに続く２５３５０キロバイトのデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出された２５３５０キロバイトのデータが、コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータに続くように、ホール領域にリロードされる。
【０２５０】
その結果、コンテンツの先頭から１３０００キロバイト離れた位置の６５０キロバイトのスタブデータが格納されているスタブ領域の次のホール領域のリロードが完了するので、コンテンツの先頭から１３０００キロバイト離れた位置から、コンテンツの先頭から４９４００キロバイト離れた位置までのデータがキャッシュファイルにストアされる。これにより、隣接する、これまで、２である領域番号のスタブ領域と、３である領域番号のホール領域と、４である領域番号のスタブ領域が、１つのスタブ領域に結合される。
【０２５１】
各領域の領域番号は、先頭の領域を０とする、連続する値にふりなおされる。その結果、結合されたスタブ領域の領域番号は、２とされ、領域の結合前まで、５である領域番号のホール領域の領域番号は、３とされる。
【０２５２】
領域の結合により、２である領域番号のスタブ領域のデータ量は、３６４００（６５０＋２５３５０＋１０４００）となる。マイグレーションファイルシステム１６４は、ファイルの拡張属性の領域情報に含まれる、２である領域番号の領域のサイズを３６４０００とし、３である領域番号の領域についての、オフセットを４９４０００とし、サイズを９１００とし、フラグを０とする。
【０２５３】
位置Ｐ33からのスタブ領域の後ろのホール領域、すなわち、領域の結合により、３である領域番号となった領域のデータのリロードが行われる。コンテンツのデータが最後までリロードされると、２である領域番号の領域と、３である領域番号の領域とが結合される。
【０２５４】
そして、オートリロードモードにおいては、コンテンツのデータの最後までリロードした場合、先頭から残りのリロードされていないデータをキャッシュファイルにリロードして終了するので、リロードの位置をキャッシュファイルの先頭に移動させる。第１０に、コンテンツの先頭のストアされている領域はスキップされて、第１１に、コンテンツの先頭の位置Ｐ31からのスタブ領域の後ろのホール領域のデータのリロードが行われるように、リロードの処理が継続される。
【０２５５】
図２９で示されるように、コンテンツの先頭の６５０キロバイトのスタブデータに続くデータが、ドライブ１１８に装着されたDVD１１９から読み出され、読み出されたデータが、コンテンツの先頭のスタブデータの次のホール領域にリロードされる。
【０２５６】
第１２に、位置Ｐ32からのスタブ領域の直前までデータがキャッシュファイルに格納されると、コンテンツの全体のデータがキャッシュファイルに格納されたので、リロードは終了する。この場合、全ての領域が結合されて、１つの領域となる。
【０２５７】
第１３に、DVD１１９がドライブ１１８にアンマウントされ、ディスクスロット１２１に戻される。
【０２５８】
このように、スタブファイル状態のキャッシュファイルがHDD１１６に記憶されているコンテンツの読み出しが要求されると、DVD１１９からデータが読み出されて、読み出されたデータがキャッシュファイルに格納される。そして、キャッシュファイルに格納されているデータが読み出されて、コンテンツが再生される。
【０２５９】
以上のように、任意の部分を読み出そうとする場合の、待ち時間の発生をより少なくすることができる。
【０２６０】
なおキャッシュファイルに記憶されていないデータを、DVD１１９から読み出して、DVD１１９から読み出したデータから直接コンテンツを再生するようにしてもよい。
【０２６１】
また、DVD１１９からコンテンツのデータを先読みして、HDD１１６に記憶させるので、DVD１１９から読み出したデータを直接再生に用いる場合に比較して、ドライブ１１８をより早く開放することができる。すなわち、DVD１１９の高速読み出しなど、ドライブ１１８の能力をより十分に発揮させることができ、ドライブ１１８をより効率的に使用できるようになる。
【０２６２】
また、以上においては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処理を説明するフローチャートである。
【図１８】図１７のステップＳ２のヒント情報生成処理を説明するフローチャートである。
【図１９】図１８のステップＳ１１の開始位置検出処理を説明するフローチャートである。
【図２０】セルの他の構成を説明する図である。
【図２１】VOBUの構成を説明する図である。
【図２２】図１８のステップＳ１３の終了位置検出処理を説明するフローチャートである。
【図２３】ファイル構造を示す図である。
【図２４】他のファイル構造を示す図である。
【図２５】図１７のステップＳ３のキャッシュファイル生成処理を説明するフローチャートである。
【図２６】再生処理を説明するフローチャートである。
【図２７】図２６のステップＳ６３のリロード処理を説明するフローチャートである。
【図２８】リロード処理の具体例を示す図である。
【図２９】リロード処理の具体例を示す他の図である。
【図３０】パーソナルコンピュータの構成例を示すブロック図である。
【符号の説明】
【０２７６】
１０１  記録再生システム，  １１３  HSM，  １１４  ストレージマネージャ，  １１６  HDD，  １１８  ドライブ，  １１９  DVD，  １４１  アプリケーションプログラム，  １６２  システムマネージャ，  １６３  ファイルＩ／Ｏマネージャ，  １６４  マイグレーションファイルシステム，  １６５  ストレージサーバ，  １６７  メディアサーバ，  ４０１  ＣＰＵ，  ４０２  ＲＯＭ，  ４０３  ＲＡＭ，  ４０８  記録部，  ４０９  記録部
【図１】
2007193864.tif 000003
【図２】
2007193864.tif 000004
【図３】
2007193864.tif 000005
【図４】
2007193864.tif 000006
【図５】
2007193864.tif 000007
【図６】
2007193864.tif 000008
【図７】
2007193864.tif 000009
【図８】
2007193864.tif 000010
【図９】
2007193864.tif 000011
【図１０】
2007193864.tif 000012
【図１１】
2007193864.tif 000013
【図１２】
2007193864.tif 000014
【図１３】
2007193864.tif 000015
【図１４】
2007193864.tif 000016
【図１５】
2007193864.tif 000017
【図１６】
2007193864.tif 000018
【図１７】
2007193864.tif 000019
【図１８】
2007193864.tif 000020
【図１９】
2007193864.tif 000021
【図２０】
2007193864.tif 000022
【図２１】
2007193864.tif 000023
【図２２】
2007193864.tif 000024
【図２３】
2007193864.tif 000025
【図２４】
2007193864.tif 000026
【図２５】
2007193864.tif 000027
【図２６】
2007193864.tif 000028
【図２７】
2007193864.tif 000029
【図２８】
2007193864.tif 000030
【図２９】
2007193864.tif 000031
【図３０】
2007193864.tif 000032
【手続補正書】
【提出日】平成19年1月30日(2007.1.30)
【手続補正１】
【補正対象書類名】明細書
【補正対象項目名】００３０
【補正方法】変更
【補正の内容】
【００３０】
本発明の一側面の読み出し方法、またはプログラムは、
DVDまたは記憶媒体からデータを読み出す読み出し装置の読み出し方法において、またはDVDまたは記憶媒体からデータを読み出す読み出し処理をコンピュータに実行させるプログラムにおいて、
コンテンツの所定の位置を指定する指定ステップ（例えば、図１７のステップＳ１）と、
コンテンツが記録されている前記DVDのナビゲーション情報に基づいて、前記記憶媒体に予め記憶させる、前記指定ステップにより指定された位置からの所定の部分を示す情報を生成する生成ステップ（例えば、図１７のステップＳ２）と、
前記生成ステップの処理で生成された前記情報に基づいて、前記DVDから、前記所定の部分を読み出して、前記記憶媒体に予め記憶させる記憶ステップ（例えば、図１７のステップＳ３）と、
前記コンテンツの前記指定ステップの処理で指定された位置からの読み出しが要求された場合、前記記憶媒体に記憶されている、前記指定ステップの処理で指定された位置からの前記所定の部分のデータを読み出し、前記記憶媒体から読み出すデータに続くデータを前記DVDから読み出すように、前記記憶媒体および前記DVDからのデータの読み出しを制御する読み出し制御ステップ（例えば、図２６のステップＳ７２およびステップＳ７３）と
を含む。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】０１７４
【補正方法】変更
【補正の内容】
【０１７４】
その後、ステップＳ３４において、マイグレーションファイルシステム１６４は、カウンタVNの値を１だけインクリメントし、ステップＳ３１に戻り、それ以降の処理を実行する。すなわち１だけインクリメントされたカウンタVNの値が示す順番に再生されるVOBUまでの経過時間が、カウンタPBTMに加算され、その結果得られたコンテンツの先頭からのそのVOBUまでの再生時刻が、指定時刻ｔmsより小さいかが判定される。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】０１７５
【補正方法】変更
【補正の内容】
【０１７５】
ステップＳ３２で、カウンタPBTMの値が、指定時刻ｔmsより小さくないと判定された場合、ステップＳ３５に進む。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】０２０２
【補正方法】変更
【補正の内容】
【０２０２】
また図２４に示すように、DVDディスク上のデータを、ISOイメージとしてHDD１１６上に置く場合、ISOイメージの開始論理アドレスは０であるので、開始アドレスおよび終了アドレスが属するVTSのVTS_VOBの先頭論理ブロックアドレスをファイルシステムから取得し、ステップＳ１２およびステップＳ１３で取得した開始アドレスおよび終了アドレスに加算することでISOイメージファイルの先頭からのオフセットを取得する必要がある。