(57)【要約】【課題】リソースの占有を抑制して、迅速に要約を表示させる。【解決手段】  光ディスクは、コンテンツの全体のデータを記録する。HDDは、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータと、部分のデータの属性に関するデータ属性情報とを記録する。決定部２０１は、HDDから取得したデータ属性情報によって、HDDにデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定する。取得部２０２、決定したコンテンツの部分のデータをHDDから取得する。本発明は、コンテンツを記録再生する記録再生システムに適用できる。【選択図】図１９
2007080148.tif 000002
【特許請求の範囲】
【請求項１】
第１の記録媒体に全体のデータが記録されるとともに、第２の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御装置において、
前記第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定する決定手段と、
決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得する取得手段と
を備える表示制御装置。
【請求項２】
前記決定手段は、再生時間が予め定めた最大時間より長い場合、前記最大時間以下の再生時間となるように前記要約を構成する前記コンテンツの部分の範囲を決定する
請求項１に記載の表示制御装置。
【請求項３】
前記決定手段は、前記第２の記録媒体にデータが記録されている前記コンテンツの部分のそれぞれから、予め定めた長さの時間の前記範囲を決定する
請求項２に記載の表示制御装置。
【請求項４】
前記決定手段は、復号に必要なデータ量より少ないデータ量の前記コンテンツの部分が前記要約を構成しないように、前記要約を構成する前記コンテンツの部分を決定する
請求項１に記載の表示制御装置。
【請求項５】
前記第１の記録媒体または前記第２の記録媒体から、前記コンテンツのデータまたは前記データ属性情報を読み出す読み出し手段をさらに備える
請求項１に記載の表示制御装置。
【請求項６】
前記第１の記録媒体および前記第２の記録媒体を備えるサーバに、ネットワークを介して、前記データ属性情報または前記コンテンツのデータの要求を送信する送信手段をさらに備え、
前記取得手段は、前記ネットワークを介して前記サーバから送信されてくる前記データ属性情報または前記コンテンツのデータを受信することで、前記データ属性情報または前記コンテンツのデータを取得する
請求項１に記載の表示制御装置。
【請求項７】
第１の記録媒体に全体のデータが記録されるとともに、第２の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御方法において、
前記第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、
決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得する
ステップを含む表示制御方法。
【請求項８】
第１の記録媒体に全体のデータが記録されるとともに、第２の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御処理を、コンピュータに行わせるプログラムにおいて、
前記第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、
決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得する
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は表示制御装置および方法、並びにプログラムに関し、特に、コンテンツの要約の表示を制御する表示制御装置および方法、並びにプログラムに関する。
【背景技術】
【０００２】
複数の記録媒体に、コンテンツのデータを記録し、記録媒体のドライブへの装着を自動化することで、多量のコンテンツを簡単に取り扱えるようにした記録再生システムがある。
【０００３】
記録媒体のドライブへの装着には一定の時間がかかり、その時間だけ、記録媒体からの読み出しが待たされることになる。
【０００４】
これに対応するために、HSM（Hierarchical Storage Management：階層型記憶域管理）ソフトウェアの使用が考えられる。HSMソフトウェアは、ハードディスクなどの高速な補助記録装置に保存されているファイルを、より低速で安価な記録媒体に自動的に移動する管理を行う（例えば、特許文献１参照）。
【０００５】
HSMにおいては、コンピュータのハードディスク上に存在するファイルが、より経済的なリムーバブルメディア（例えば、DTF（Digital Tape Format）の磁気テープなどの記録媒体）に移動され、ハードディスクの見かけの記録容量が大きくされる。リムーバブルメディアに移動されたファイルを利用する必要が生じた場合、リムーバブルメディアに移動されたファイルが再びハードディスクに戻される。
【０００６】
ここで、ハードディスク上のファイルをリムーバブルメディアにコピーして、ハードディスク上にある元のファイルを縮小することは、マイグレーション（Migration）と称され、マイグレーションされたファイルをハードディスク上に復元することは、リロードと称される。
【０００７】
【特許文献１】特開２００３−２９６１５１号公報
【発明の開示】
【発明が解決しようとする課題】
【０００８】
HSMを含めたキャッシュシステムにおいて、キャッシュミスしたアクセスがあった場合、キャッシュ元の記録媒体から、キャッシュ先の記録媒体へのデータの複写が実行されるが、このデータの複写に時間がかかり、また複写に、リソースの多くが消費されてしまう。
【０００９】
キャッシュ先となるハードディスク上に、存在しないファイルまたはファイルの一部に対して読み出しアクセスがあった場合、キャッシュ元となるリムーバブルメディアから、ファイルがリロードされる。このリロードの処理では、特定のリムーバブルメディアを選択し、選択したリムーバブルメディアをドライブにセットするのに必要な時間や、低速なリムーバブルメディアからの読み出しに必要な時間などといったタイムロスが発生する。
【００１０】
ビデオサーバを想定すると、クライアントにおいて、コンテンツの一覧のマルチ画面を表示する場合、複数のファイルに対して、読み出しアクセスの処理が生じてしまい、それらのファイルに対してリロードの処理が実行されてしまうと、ハードウェアリソースであるドライブが長時間占有されてしまうことになる。さらに、マルチ画面の作成においても、リロードの待ち時間が生じてしまうことになる。この場合、マルチ画面の表示中に、別のクライアントからの再生要求する受け付けることができなくなることがある。
【００１１】
マルチ画面を表示する目的は、複数のコンテンツのそれぞれの内容をより速く使用者に認識させることにあり、これにより、所望のコンテンツを迅速に選択できるようにするものである。このマルチ画面の表示において、動画ファイルの本編の全てを読み出す必要はない。また、キャッシュミスした場合に、ハードウェアリソースであるドライブを長時間占有し、リロードに要する時間だけ待つよりも、ハードディスクに既に存在しているデータだけを用いて繰り返しマルチ画面を再生し表示させる方が効率的であると言える。
【００１２】
本発明は、このような状況に鑑みてなされたものであり、リソースの占有を抑制して、迅速に要約を表示させることができるようにするものである。
【課題を解決するための手段】
【００１３】
本発明の一側面の表示制御装置は、第１の記録媒体に全体のデータが記録されるとともに、第２の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御装置であって、前記第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定する決定手段と、決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得する取得手段とを備える。
【００１４】
前記決定手段は、再生時間が予め定めた最大時間より長い場合、前記最大時間以下の再生時間となるように前記要約を構成する前記コンテンツの部分の範囲を決定するようにすることができる。
【００１５】
前記決定手段は、前記第２の記録媒体にデータが記録されている前記コンテンツの部分のそれぞれから、予め定めた長さの時間の前記範囲を決定するようにすることができる。
【００１６】
前記決定手段は、復号に必要なデータ量より少ないデータ量の前記コンテンツの部分が前記要約を構成しないように、前記要約を構成する前記コンテンツの部分を決定するようにすることができる。
【００１７】
前記第１の記録媒体または前記第２の記録媒体から、前記コンテンツのデータまたは前記データ属性情報を読み出す読み出し手段をさらに設けることができる。
【００１８】
前記第１の記録媒体および前記第２の記録媒体を備えるサーバに、ネットワークを介して、前記データ属性情報または前記コンテンツのデータの要求を送信する送信手段をさらに設け、前記取得手段は、前記ネットワークを介して前記サーバから送信されてくる前記データ属性情報または前記コンテンツのデータを受信することで、前記データ属性情報または前記コンテンツのデータを取得するようにすることができる。
【００１９】
本発明の一側面の表示制御方法は、第１の記録媒体に全体のデータが記録されるとともに、第２の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御方法であって、前記第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得するステップを含む。
【００２０】
本発明の一側面のプログラムは、第１の記録媒体に全体のデータが記録されるとともに、第２の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御処理を、コンピュータに行わせるプログラムにであって、前記第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得するステップを含む。
【００２１】
本発明の一側面においては、第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分が決定され、決定した前記コンテンツの部分のデータが前記第２の記録媒体から取得される。
【発明の効果】
【００２２】
以上のように、本発明の一側面によれば、要約を表示させることができる。
【００２３】
また、本発明の一側面によれば、リソースの占有を抑制して、迅速に要約を表示させることができる。
【発明を実施するための最良の形態】
【００２４】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
【００２５】
本発明の一側面の表示制御装置は、第１の記録媒体（例えば、図２の光ディスク３６）に全体のデータが記録されるとともに、第２の記録媒体（例えば、図２のHDD３４）に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御装置であって、前記第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定する決定手段（例えば、図１９の決定部２０１）と、決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得する取得手段（例えば、図１９の取得部２０２）とを備える。
【００２６】
前記第１の記録媒体または前記第２の記録媒体から、前記コンテンツのデータまたは前記データ属性情報を読み出す読み出し手段（例えば、図２のストレージマネージャ１２）をさらに設けることができる。
【００２７】
前記第１の記録媒体および前記第２の記録媒体を備えるサーバ（例えば、図１９のサーバ３０１）に、ネットワークを介して、前記データ属性情報または前記コンテンツのデータの要求を送信する送信手段（例えば、図２０の送信制御部３４２）をさらに設け、前記取得手段（例えば、図２０の受信制御部３４３）は、前記ネットワークを介して前記サーバから送信されてくる前記データ属性情報または前記コンテンツのデータを受信することで、前記データ属性情報または前記コンテンツのデータを取得するようにすることができる。
【００２８】
本発明の一側面の表示制御方法またはプログラムは、第２の記録媒体から取得した前記データ属性情報によって、前記第２の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し（例えば、図２３のステップＳ５４乃至ステップＳ６１）、決定した前記コンテンツの部分のデータを前記第２の記録媒体から取得する（例えば、図２３のステップＳ６４またはステップＳ７０）ステップを含む。
【００２９】
例えば、マルチ画面などのダイジェスト画像を作成するアプリケーションにおいては、ハードディスクに存在しない部分にアクセスさせないようにするため、予めその部分を通知する仕組みを提供し、さらにアプリケーションがハードディスクに存在しない部分にアクセスしたとしても、キャッシュ元からの複写を行わないようにしたものである。
【００３０】
図１は、本発明の一実施の形態の記録再生システム１の構成を示すブロック図である。記録再生システム１は、ビデオプレーヤ１１、ストレージマネージャ１２、およびHSM１３を含むように構成されている。
【００３１】
ビデオプレーヤ１１は、ストレージマネージャ１２を介して、HSM１３から供給されたストリーム（コンテンツのデータ）を基に、コンテンツを再生する。例えば、コンテンツは、画像または音声である。例えば、コンテンツのデータは、MPEG（Moving Pictures Experts Group）方式で符号化されている。
【００３２】
また、ビデオプレーヤ１１は、使用者とのインターフェースの機能を有し、使用者からの指示を取得するか、使用者に記録再生システム１に関する各種の情報を通知する。
【００３３】
ストレージマネージャ１２は、HSM１３によって管理されているコンテンツをビデオプレーヤ１１に提供する。ストレージマネージャ１２は、ビデオプレーヤ１１からの要求を基に、HSM１３からのコンテンツのデータの読み出しを制御する。
【００３４】
HSM１３は、記録媒体へのコンテンツのデータの階層的な記録を管理する（階層構造の記録媒体へのコンテンツのデータの記録を管理するとも言える）。HSM１３は、ストレージマネージャ１２の制御の基に、記録媒体に記録しているデータをストリームデータとして、ストレージマネージャ１２に供給する。
【００３５】
ビデオプレーヤ１１は、再生プログラム３１およびビデオアウトインターフェース３２を含む。再生プログラム３１は、ストレージマネージャ１２に、リードコマンドを発行するか、ステータスを要求する。ここで、ステータスとは、コンテンツの部分の記録の状態を言う。また、再生プログラム３１は、ストレージマネージャ１２を介して、HSM１３から供給された、ステータスを示すファイルステータス情報を基に、ストレージマネージャ１２にストリームを要求する。ファイルステータス情報の詳細は後述する。
【００３６】
再生プログラム３１は、ストレージマネージャ１２を介して、HSM１３から供給されたストリームデータまたはダミーデータを基に、コンテンツを再生し、ビデオアウトインターフェース３２を介して、接続されている機器にコンテンツを表示させる。
【００３７】
再生プログラム３１は、デコーダ５１、ダイジェスト画面生成アプリケーションプログラム５２、および動画再生アプリケーションプログラム５３を含む。デコーダ５１は、ストレージマネージャ１２を介して、HSM１３から供給されたストリームデータを復号する。ダイジェスト画面生成アプリケーションプログラム５２は、複数のコンテンツのそれぞれについて、ダイジェストの画像を表示させる。例えば、ダイジェスト画面生成アプリケーションプログラム５２は、複数のコンテンツのそれぞれについて、マルチ画面で、ダイジェスト用の短いシーン（動画）からなるコンテンツ一覧を表示させる。より詳しく説明すれば、例えば、ダイジェスト画面生成アプリケーションプログラム５２は、ストレージマネージャ１２を介して、HSM１３から供給されたストリームデータまたはダミーデータを基に、コンテンツの一覧を生成して、ビデオアウトインターフェース３２を介して、接続されている機器にコンテンツの一覧を表示させる。
【００３８】
動画再生アプリケーションプログラム５３は、コンテンツである動画像を再生する。動画再生アプリケーションプログラム５３は、ストレージマネージャ１２を介して、HSM１３から供給されたストリームデータを基に、コンテンツを再生して、ビデオアウトインターフェース３２を介して、接続されている機器にコンテンツを表示させる。
【００３９】
HSM１３は、マイグレーションファイルシステム３３、HDD３４、ドライブ３５、光ディスク３６−１乃至光ディスク３６−Ｎ、セレクタ３７、キャッシュテーブル３８、ボリウムテーブル３９を含む。
【００４０】
マイグレーションファイルシステム３３は、HDD３４または光ディスク３６−１乃至光ディスク３６−Ｎのいずれかからデータまたは各種の情報を読み出す処理を制御する。マイグレーションファイルシステム３３は、光ディスク３６−１乃至光ディスク３６−ＮのいずれかからHDD３４にデータを読み出す（リロードする）処理を制御し、HDD３４から光ディスク３６−１乃至光ディスク３６−Ｎのいずれかにデータを書き込む処理を制御する。
【００４１】
HDD３４は、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータまたはコンテンツに関係する情報を記録している記録媒体の一例である。HSM１３は、HDD３４に記録されているデータをストリームデータとして読み出すか、また、HDD３４に記録されているコンテンツに関係する情報を読み出す。HDD３４から読み出されたストリームデータまたはコンテンツに関係する情報は、セレクタ３７を介して、マイグレーションファイルシステム３３に供給される。
【００４２】
ドライブ３５は、光ディスク３６−１乃至光ディスク３６−Ｎのいずれかを装着し、装着されている光ディスク３６−１乃至光ディスク３６−Ｎのいずれかに記録されているデータをストリームデータとして読み出す。ドライブ３５によって読み出されたストリームデータは、HDD３４にリロードされるか、セレクタ３７を介して、マイグレーションファイルシステム３３に供給される。
【００４３】
光ディスク３６−１乃至光ディスク３６−Ｎは、コンテンツの全体のデータを記録している記録媒体の一例であり、例えば、MO（Magneto-Optical disk）、DVD(Digital Versatile Disc)、またはCD(Compact Disc)などである。
【００４４】
以下、光ディスク３６−１乃至光ディスク３６−Ｎを個々に区別する必要がない場合、単に、光ディスク３６と称する。
【００４５】
セレクタ３７は、HDD３４から読み出されたストリームデータ若しくはコンテンツに関係する情報をマイグレーションファイルシステム３３に供給させるか、またはドライブ３５によって光ディスク３６−１乃至光ディスク３６−Ｎのいずれかから読み出されたストリームデータをHDD３４に供給させるかいずれか一方を選択する。
【００４６】
または、セレクタ３７は、HDD３４から読み出されたストリームデータ若しくはコンテンツに関係する情報、またはドライブ３５によって光ディスク３６−１乃至光ディスク３６−Ｎのいずれかから読み出されたストリームデータのいずれか一方を選択するようにしてもよい。この場合、HDD３４から読み出されたストリームデータ若しくはコンテンツに関係する情報、またはドライブ３５によって光ディスク３６−１乃至光ディスク３６−Ｎのいずれかから読み出されたストリームデータの選択されたいずれか一方は、マイグレーションファイルシステム３３に供給される。
【００４７】
HSM１３は、ファイルへのアクセスを監視し、アクセス（要求）に応じて、光ディスク３６−１乃至光ディスク３６−Ｎのいずれかを選択する。HSM１３は、選択した光ディスク３６−１乃至光ディスク３６−Ｎのいずれかをドライブ３５に装着させて、光ディスク３６−１乃至光ディスク３６−Ｎのいずれかに記録されているコンテンツのデータをHDD３４にリロードさせる。
【００４８】
キャッシュテーブル３８は、コンテンツに関係する情報を記録する。キャッシュテーブル３８は、ストレージマネージャ１２からの要求に応じて、コンテンツに関係する情報を、ステータスとして、ストレージマネージャ１２に供給する。
【００４９】
ボリウムテーブル３９は、光ディスク３６−１乃至光ディスク３６−Ｎを管理するための情報を格納する。
【００５０】
実際には、キャッシュテーブル３８およびボリウムテーブル３９は、HDD３４に構築される。
【００５１】
図２は、記録再生システム１のより詳細な構成を示すブロック図である。記録再生システム１は、ビデオプレーヤ１１、ストレージマネージャ１２、HSM１３、コンテンツマネージャ１０１、チェンジャドライバ１０２、ジュークボックス制御部１０３、およびジュークボックス１０４から構成される。
【００５２】
ビデオプレーヤ１１は、ストリームまたはダミーデータの復号により得られた出力画像信号および音声信号（図示せず）をモニタ７１に供給する。モニタ７１は、出力画像信号を基にして、画像を表示すると共に、供給された音声信号を基にして、音声を出力する。
【００５３】
コンテンツマネージャ１０１は、記録再生システム１に記録されているコンテンツの内容を管理し、コンテンツの内容を検索する。コンテンツマネージャ１０１は、コンテンツに関する各種の情報の記録しているコンテンツデータベース（ＤＢ）１２１からのコンテンツに関する情報の読み出しを制御する。
【００５４】
図３で示されるように、コンテンツデータベース１２１には、コンテンツに関する情報として、コンテンツに関連するファイルの情報（例えば、ファイル名、パス名など）、コンテンツの内容および付加情報（例えば、コンテンツの名前、コンテンツのジャンルなど）、コンテンツの圧縮形式（方式）、再生時間、およびインデックス情報（例えば、コンテンツにおけるインデックスの位置など）、並びにアクセス可能なユーザ（使用者）のユーザ情報（例えば、使用者の名前、パスワードなど）などが記録される。
【００５５】
ストレージマネージャ１２は、HSM１３を上位から制御する。すなわち、ストレージマネージャ１２は、ビデオプレーヤ１１からの要求に基づいて、HSM１３を制御する。ストレージマネージャ１２には、システムマネージャ１２２およびファイルＩ／Ｏマネージャ１２３が設けられている。
【００５６】
システムマネージャ１２２は、ストレージ制御関連のシステムを設定し、システムログを記録し、エラーログを管理し、メンテナンス処理を実行する。ファイルＩ／Ｏマネージャ１２３は、ビデオプレーヤ１１からのファイルの読み出しの要求を受け付ける。ファイルＩ／Ｏマネージャ１２３は、HDD３４に記録されているコンテンツのファイルの、例えば、画像コンテンツまたは音楽コンテンツの一部分である、指定された一部分のデータをスタブデータとして保持するスタブファイル（状態）への変換を指示する。ファイルＩ／Ｏマネージャ１２３は、光ディスク３６からHDD３４へのデータの読み出し（リロード）の処理の中断または再開を指示する。さらに、ファイルＩ／Ｏマネージャ１２３は、HDD３４から光ディスク３６へのデータの書き込みの処理の中断または再開を指示する。
【００５７】
HSM１３は、HDD３４、ドライブ３５、光ディスク３６、ジュークシステム１２８、ディスクスロット１３０、およびピッカー１３１を仮想ストレージ化し、HDD３４および光ディスク３６によるコンテンツのデータの階層的な記録を制御する。HSM１３は、マイグレーションファイルシステム３３、ストレージサーバ１２４、ストアデータベース（ＤＢ）１２５、メディアサーバ１２６、およびボリウムデータベース（ＤＢ）１２７を含むように構成される。
【００５８】
マイグレーションファイルシステム３３は、HSM１３のキャッシュテーブル３８に管理されているファイルの拡張属性を管理し、拡張属性を書き換える。マイグレーションファイルシステム３３は、HSM１３に管理されているファイルに対するアクセスイベントを管理する。マイグレーションファイルシステム３３は、光ディスク３６からHDD３４にデータを読み出す処理を制御し、HDD３４から光ディスク３６にデータを書き込む処理を制御する。
【００５９】
ストレージサーバ１２４は、光ディスク３６からHDD３４にデータに読み出すか、または、HDD３４から光ディスク３６にデータを書き込む。また、ストレージサーバ１２４は、HDD３４に記録されている、コンテンツのデータを格納するキャッシュファイルに関する情報のストアデータベース１２５への記録およびキャッシュファイルに関する情報のストアデータベース１２５からの読み出しを管理する。また、ストレージサーバ１２４は、コンテンツのデータの全体と、そのデータが記録されている光ディスク３６とのリンク情報を管理する。
【００６０】
ストアデータベース１２５は、コンテンツのデータを格納するキャッシュファイルであって、HDD３４に記録されているキャッシュファイルに関する情報を記録する。
【００６１】
図３で示されるように、ストアデータベース１２５には、HDD３４に記録されているキャッシュファイル名と、キャッシュファイルを特定するための値であるキャッシュファイルＩＤとの関連付けが格納される。また、ストアデータベース１２５には、キャッシュファイルが書き込まれた時間またはキャッシュファイルが最後にアクセスされた時間を示すキャッシュファイルデート情報、並びに全体のデータが保存されている光ディスク３６を特定するボリウムIDが記録されている。さらに、ストアデータベース１２５には、ジュークボックス１０４内の各光ディスク３６の空き容量が記録される。
【００６２】
メディアサーバ１２６は、それぞれのディスクスロット１３０に格納されている光ディスク３６を管理する。メディアサーバ１２６は、チェンジャドライバ１０２に対し、指定された光ディスク３６のドライブ３５への装着（マウント）を要求する。また、メディアサーバ１２６は、チェンジャドライバ１０２に対し、ドライブ３５に装着されている光ディスク３６のディスクスロット１３０への格納（アンマウント）を要求する。
【００６３】
メディアサーバ１２６に設けられているボリウムデータベース１２７は、光ディスク３６に関係する情報を格納する。なお、ボリウムデータベース１２７は、図１のボリウムテーブル３９に対応する。
【００６４】
図３で示されるように、ボリウムデータベース１２７には、各光ディスク３６の生ディスク状態での記録容量、並びに各光ディスク３６のメディアとしての種類（MO（Magneto-Optical disk）、DVD（Digital Versatile Disc）＋Ｒ、またはDVD＋RWなど）と書き込み専用または読み書き可能などの属性が記録される。また、ボリウムデータベース１２７には、ジュークボックス１０４内の各ディスクスロット１３０に格納されている光ディスク３６のボリウムID、およびジュークボックス１０４に搭載されているドライブ３５の使用状況が記録される。
【００６５】
チェンジャドライバ１０２は、ドライブ３５を制御し、ジュークボックス制御部１０３とHSM１３とのインターフェースの機能を有する。
【００６６】
ジュークボックス制御部１０３は、ジュークシステム１２８およびジュークサーボ１６９を含む。ジュークシステム１２８は、ドライブ３５、光ディスク３６、ディスクスロット１３０、およびピッカー１３１からなるジュークボックス１０４を制御する。ジュークサーボ１６９は、ジュークボックス１０４を駆動する。
【００６７】
ジュークシステム１２８は、ドライブ３５への光ディスク３６の着脱を制御する。ジュークシステム１２８は、複数の光ディスク３６のそれぞれを格納するディスクスロット１３０からいずれかの光ディスク３６をピッカー１３１に選択させる。ピッカー１３１は、ジュークシステム１２８の制御の基に、選択した光ディスク３６を搬送し、ドライブ３５に装着させる。また、ピッカー１３１は、ジュークシステム１２８の制御の基に、ドライブ３５から取り出された光ディスク３６を搬送して、いずれかのディスクスロット１３０に格納させる。
【００６８】
なお、コンテンツデータベース１２１、ストアデータベース１２５、およびボリウムデータベース１２７のそれぞれに記録されているデータを、１つのデータベースに記録するようにしてもよい。
【００６９】
また、図３で示されるように、コンテンツの拡張属性として、キャッシュファイルにおけるコンテンツの部分についての領域情報、コンテンツのどの部分をキャッシュファイルとしてHDD３４に記録するかのヒントを示すヒント情報、およびキャッシュファイルIDがマイグレーションファイルシステム３３のキャッシュテーブル３８に記録される。
【００７０】
より詳細には、領域情報は、キャッシュファイルにおけるコンテンツの部分についての、コンテンツのデータの先頭からその部分の先頭までのオフセット値（バイト）を示すオフセット、コンテンツの部分のデータ量を示すサイズ、および、詳細は後述するが、コンテンツの部分がストア済みであるかまたはホール状態であるかを示すフラグを含む。また、ヒント情報は、コンテンツのどの部分をキャッシュファイルとしてHDD３４に記録するかを示し、コンテンツのデータの先頭からその部分の先頭までのオフセット値（バイト）を示すヒントオフセット、コンテンツの部分のデータ量を示すヒントサイズ、詳細は後述するが、部分の属性を示すリージョンフラッグス、および、この部分をマイグレーションする場合の優先順位を示すヒントプライオリティなどからなる。
【００７１】
さらに、図３で示されるように、コンテンツを格納するファイルの属性として、読み出し専用（リードオンリ）または読み書き（リードライト）可能であるかを示す情報がファイルシステムによって記録される。
【００７２】
なお、コンテンツデータベース１２１、ストアデータベース１２５、およびボリウムデータベース１２７は、HDD３４に構築され、図３で示される情報は、HDD３４に記録される。
【００７３】
次に、図４乃至図６を参照して、HDD３４に記録されるキャッシュファイルおよびキャッシュファイルを用いたコンテンツのデータの読み出しについて説明する。
【００７４】
図４は、HDD３４に記録されるキャッシュファイルの状態を説明する図である。コンテンツは、キャッシュファイルとしてHDD３４（のキャッシュ領域）に書き込まれる。図４で示されるように、入力されたストリーム（コンテンツ）の全体のデータが記録されたキャッシュファイルの状態を、レギュラー状態と称する。
【００７５】
ジュークボックス１０４の空き時間において実行される、HDD３４に記録されているレギュラー状態のキャッシュファイルを光ディスク３６に書き込むシャドウド化によって、コンテンツの全体は、HDD３４に記録されると共に、光ディスク３６にも記録される。コンテンツの全体のデータがHDD３４に記録されると共に光ディスク３６に記録されている場合の、キャッシュファイルの状態をビットファイル状態と称する。
【００７６】
キャッシュファイルがレギュラー状態またはビットファイル状態である場合、言い換えれば、ストリームの全体、すなわち、コンテンツのデータの全体がHDD３４に記録されている場合、コンテンツのデータの全体は、HDD３４から読み出されるので、高速に、コンテンツのデータを読み出すことができる。しかし、キャッシュファイルがレギュラー状態またはビットファイル状態である場合、キャッシュファイルのデータ量が多いので、多数のコンテンツについて、レギュラー状態またはビットファイル状態のキャッシュファイルをHDD３４に記録していると、HDD３４の記録領域の消費量が大きくなり、HDD３４がすぐに一杯になってしまう（HDD３４の全ての記録領域にデータが記録された状態になってしまう）。
【００７７】
そこで、例えば、キャッシュファイルがHDD３４に記録されてからの経過時間を参照して、古いキャッシュファイルから順に、コンテンツの全体のデータを光ディスク３６に記録させて、HDD３４に記録しているキャッシュファイルのデータ量を小さくすることで、HDD３４に記録されるキャッシュファイルのデータ量の総量を一定の範囲内に納めることができる。
【００７８】
図４で示されるように、コンテンツの全体のデータが記録されていないが、コンテンツのデータの所定の部分が記録されたキャッシュファイルの状態を、スタブファイル状態と称する。特に、コンテンツのデータの所定の部分であって、複数の部分が記録されたキャッシュファイルの状態を、マルチスタブ状態と称する。キャッシュファイルからコンテンツのデータの全てを無くし、コンテンツの拡張属性およびキャッシュファイルIDだけをHDD３４に記録している状態を、例外的に、ゼロスタブ状態と称する。
【００７９】
ここで、スタブとは、キャッシュファイルとして、HDD３４のキャッシュ領域に記録されているデータに対応するコンテンツの部分をいう。スタブ領域とは、スタブデータがHDD３４に記録されているコンテンツ上の領域、すなわち、スタブの領域をいう。ホール領域とは、スタブデータがHDD３４に記録されていないコンテンツ上の領域をいう。
【００８０】
スタブ領域およびホール領域を区別しない場合、単に領域と称する。
【００８１】
図２を参照して、領域および拡張属性における領域情報について説明する。図５で示す例において、コンテンツのデータの先頭に、スタブ領域が配置され、そのスタブ領域に続いて、ホール領域が配置されている。また、そのホール領域に続いて、スタブ領域が配置され、さらに、そのスタブ領域に続いて、ホール領域が配置されている。言い換えれば、コンテンツの先頭の部分のデータであるスタブデータは、HDD３４のキャッシュファイルに記録され（ストア済みとされ）、コンテンツの先頭のその部分に続く領域であって、所定の長さの領域のデータは、HDD３４のキャッシュファイルに記録されていない（ホール状態とされる）。また、そのホール状態の領域に続く、コンテンツの所定の部分のデータであるスタブデータは、HDD３４のキャッシュファイルに記録され（ストア済みとされ）、その部分に続く領域であって、所定の長さの領域のデータは、HDD３４のキャッシュファイルに記録されていない（ホール状態とされる）。すなわち、コンテンツの部分のデータがHDD３４のキャッシュファイルに記録されている領域と、記録されていない領域とが交互に配置される。
【００８２】
領域情報は、領域それぞれの、領域番号、オフセット、サイズ、およびフラグを含む。領域番号は、ファイルの先頭から０乃至Ｎ（整数）の連続した値をとる。すなわち、領域番号は、０を初期値として、コンテンツのデータの先頭から順に、領域のそれぞれに付加される整数の通し番号である。オフセットは、ファイルの先頭（コンテンツのデータの先頭）からその領域の先頭までのオフセット値を示す。オフセットは、例えば、バイトを単位とする。サイズは、その領域のデータのデータ量を示す。サイズは、例えば、バイトを単位とする。フラグは、スタブ領域（ストア済み）であるかまたはホール領域（ホール状態）であるかを示す。例えば、１であるフラグは、スタブ領域（ストア済み）であることを示し、０であるフラグは、ホール領域（ホール状態）であることを示す。
【００８３】
例えば、コンテンツのデータの先頭のスタブ領域は、コンテンツのデータの先頭に位置し、この領域のデータ量が１５０バイトであり、スタブ領域（ストア済み）なので、コンテンツのデータの先頭のスタブ領域には、０である領域番号、０であるオフセット、１５０であるサイズ、および１であるフラグが付加される。コンテンツのデータにおける先頭から２番目の領域は、この領域の本来のデータ量が８００バイトであり、ホール領域（ホール状態）なので、この領域には、１である領域番号、１５０であるオフセット、８００であるサイズ、および０であるフラグが付加される。
【００８４】
同様に、コンテンツのデータにおける先頭から３番目の領域は、この領域のデータ量が１５０バイトであり、スタブ領域（ストア済み）なので、この領域には、２である領域番号、９５０（１５０＋８００）であるオフセット、１５０であるサイズ、および１であるフラグが付加される。コンテンツのデータにおける先頭から４番目の領域は、この領域の本来のデータ量が１４００バイトであり、ホール領域（ホール状態）なので、この領域には、３である領域番号、１１００（９５０＋１５０）であるオフセット、１４００であるサイズ、および０であるフラグが付加される。
【００８５】
このように、コンテンツの拡張属性における領域情報は、キャッシュファイルにおける各領域の状態を示す。領域情報を参照することにより、キャッシュファイルにおける領域の状態を知ることができる。
【００８６】
図６は、スタブ領域のスタブデータの構成の例を示す図である。図６で示されるように、HDD３４に記録されているスタブデータは、シーケンスヘッダおよびGOP（Group of Pictures）とからなる。GOPには、所定の数（Ｎ枚）のピクチャが含まれる。
【００８７】
スタブデータが、コンテンツのデータの一部であっても、十分な数のシーケンスヘッダおよびGOPとからなっていれば、デコーダ５１は、スタブデータを短い動画像または静止画像として復号し、ダイジェスト画面生成アプリケーションプログラム５２は、復号された短い動画像または静止画像をモニタ７１に表示させることができる。
【００８８】
次に、図７のフローチャートを参照して、複数のコンテンツのそれぞれの動画のシーンをマルチ画面で表示する、コンテンツの一覧の表示の処理を説明する。ステップＳ１０１において、再生プログラム３１は、使用者に操作された図示せぬスイッチまたはリモートコントローラなどからの信号を基に、使用者からの指示を取得する。使用者からのダイジェスト画面を表示させる旨の指示を取得すると、ステップＳ１０２において、ダイジェスト画面生成アプリケーションプログラム５２は、ストレージマネージャ１２に、所定のコマンドを送信することによって、コンテンツを格納する記録領域のうちのルートフォルダ（以下、コンテンツのルートフォルダと称する）の情報を要求する。ステップＳ２０１において、ストレージマネージャ１２は、ダイジェスト画面生成アプリケーションプログラム５２からの、コンテンツのルートフォルダの情報の要求を受信する。すなわち、ストレージマネージャ１２は、ダイジェスト画面生成アプリケーションプログラム５２から送信されてきたコマンドを受信する。
【００８９】
ステップＳ２０２において、ストレージマネージャ１２は、コンテンツのルートフォルダの情報をビデオプレーヤ１１に送信する。例えば、ステップＳ２０２において、ストレージマネージャ１２は、コンテンツマネージャ１０１から、ルートフォルダのコンテンツに関する情報を読み出して、そのルートフォルダのコンテンツに関する情報をビデオプレーヤ１１に送信する。
【００９０】
ステップＳ１０３において、ビデオプレーヤ１１のダイジェスト画面生成アプリケーションプログラム５２は、ストレージマネージャ１２から送信されてきた、コンテンツのルートフォルダの情報を受信する。
【００９１】
ステップＳ１０４において、ダイジェスト画面生成アプリケーションプログラム５２は、ビデオアウトインターフェース３２を介してモニタ７１に、コンテンツのルートフォルダの情報に応じた出力画像信号を供給することにより、モニタ７１にコンテンツのルートフォルダの情報を表示させる。
【００９２】
使用者は、モニタ７１に表示されたコンテンツのルートフォルダの情報を見て、図示せぬスイッチまたはリモートコントローラなどを操作することで、フォルダを選択するので、ステップＳ１０５において、再生プログラム３１は、使用者に操作された図示せぬスイッチまたはリモートコントローラなどからの信号を基に、使用者からのフォルダの選択の指示を取得する。フォルダの選択の指示を取得すると、ステップＳ１０６において、ダイジェスト画面生成アプリケーションプログラム５２は、ストレージマネージャ１２に、所定のコマンドを送信することによって、選択されたフォルダ内のファイルの一覧を要求する。
【００９３】
ステップＳ２０３において、ストレージマネージャ１２は、ダイジェスト画面生成アプリケーションプログラム５２からの、選択されたフォルダ内のファイルの一覧の要求を受信する。すなわち、ストレージマネージャ１２は、ダイジェスト画面生成アプリケーションプログラム５２から送信されてきたコマンドを受信する。
【００９４】
ステップＳ２０４において、ストレージマネージャ１２は、選択されたフォルダ内のファイルの一覧を送信する。例えば、ステップＳ２０４において、ストレージマネージャ１２は、コンテンツマネージャ１０１から、選択されたフォルダ内のファイルに格納されているコンテンツに関連するファイル情報を読み出して、そのコンテンツに関する情報を、ファイルの一覧としてビデオプレーヤ１１に送信する。
【００９５】
ステップＳ１０７において、ダイジェスト画面生成アプリケーションプログラム５２は、ストレージマネージャ１２から送信されてきた、選択されたフォルダ内のファイルの一覧を受信する。
【００９６】
ステップＳ１０８において、ダイジェスト画面生成アプリケーションプログラム５２は、フォルダ内のファイルの一覧を基に、フォルダ内のファイルのそれぞれのステータスをストレージマネージャ１２に要求する。
【００９７】
例えば、ステップＳ１０８において、ダイジェスト画面生成アプリケーションプログラム５２は、ファイルの一覧としてストレージマネージャ１２から送信されてきたコンテンツに関連するファイル情報に含まれているファイル名を含むコマンドをストレージマネージャ１２に送信することにより、ファイルのステータスをストレージマネージャ１２に要求する。
【００９８】
図８は、ファイルのステータスを要求するコマンドの一例を示す図である。図８で示されるコマンドの１行目には、XML（eXtensible Mark-up Language）方式であることを示す<?xml version="1.0"?>タグが配置されている。
【００９９】
コマンドの本文に配置されている<Filename>タグおよび</Filename>タグの間に配置されている/fs0/VIDEO_1/biwako.mpgは、パス名を含んでいるファイル名であって、ステータスを要求するファイルのファイル名（キャッシュファイル名）である。
【０１００】
例えば、１つのコマンドで複数のファイルのステータスを要求する場合、コマンドの本文に複数の<Filename>タグおよび</Filename>タグが配置され、それぞれの間に、個々のファイルのファイル名が配置される。
【０１０１】
ステップＳ２０５において、ストレージマネージャ１２は、ビデオプレーヤ１１から送信されてきた、フォルダ内のファイルのそれぞれのステータスの要求を受信する。例えば、ステップＳ２０５において、ストレージマネージャ１２は、ビデオプレーヤ１１から送信されてきたコマンドを受信する。
【０１０２】
ステップＳ２０６において、ストレージマネージャ１２は、ファイルのそれぞれについて、拡張属性を参照して、領域のステータスを取得する。例えば、ステップＳ２０６において、ストレージマネージャ１２は、ファイルのそれぞれについて、HSM１３のストアデータベース１２５から、ファイル名に関連付けて格納されている、キャッシュファイルを特定するための値であるキャッシュファイルIDを読み出す。そして、ストレージマネージャ１２は、ファイルのそれぞれについて、HSM１３のキャッシュテーブル３８から、拡張属性を参照して、キャッシュファイルIDに対応して記録されている領域情報を読み出すことによって、領域のステータスを取得する。
【０１０３】
ステップＳ２０７において、ストレージマネージャ１２は、領域のステータスを示すファイルステータス情報を生成する。
【０１０４】
図９は、ファイルステータス情報の一例を示す図である。図９で示されるファイルステータス情報の１行目には、XML方式であることを示す<?xml version="1.0"?>タグが配置されている。
【０１０５】
図９で示されるファイルステータス情報の２行目に配置されている<item filename="/fs0/VIDEO_1/biwako.mpg">は、このファイルステータス情報が/fs0/VIDEO_1/biwako.mpgであるファイル名のファイルのステータスを示していることを表す。<filesize>タグおよび</filesize>タグの間に配置されている526919680は、/fs0/VIDEO_1/biwako.mpgであるファイル名のファイルのファイルサイズ（データ量）が526919680バイトであることを示す。<blocksize>タグおよび</blocksize>タグの間に配置されている65536は、データの取り扱いの単位であるブロックが65536バイトであることを示す。ブロックの大きさは、HDD３４または光ディスク３６の記録単位（クラスタなど）によって定まる。
【０１０６】
<blocknum>タグおよび</blocknum>タグの間に配置されている30728は、ファイル（コンテンツのデータ）が30728のブロックに記録されていることを示す。
【０１０７】
<regionInfo>タグおよび</regionInfo>タグの間には、領域の情報を示すタグが配置される。<totalRegion>タグおよび</totalRegion>タグの間に配置されている2は、このファイル（コンテンツ）には２つの領域が存在することを示す。
【０１０８】
<region id="0">タグおよび</region>タグの間には、領域番号が０である領域についての情報を示すタグが配置される。<region id="0">タグおよび</region>タグの間の、<rg_offset>タグおよび</rg_offset>タグの間に配置されている0は、コンテンツのデータの先頭から領域番号が０である領域の先頭までのオフセットが０バイトであることを示す。
【０１０９】
<region id="0">タグおよび</region>タグの間の、<rg_size>タグおよび</rg_size>タグの間に配置されている15728640は、０である領域番号の領域のサイズ（データ量）が15728640バイトであることを示す。<region id="0">タグおよび</region>タグの間の、<rg_flags>タグおよび</rg_flags>タグの間に配置されているCACHEDは、０である領域番号の領域がスタブ領域であること、すなわち、０である領域番号の領域に対応するデータがHDD３４に記録されていることを示す。
【０１１０】
<region id="1">タグおよび</region>タグの間には、領域番号が１である領域についての情報を示すタグが配置される。<region id="1">タグおよび</region>タグの間の、<rg_offset>タグおよび</rg_offset>タグの間に配置されている15728640は、コンテンツのデータの先頭から領域番号が１である領域の先頭までのオフセットが15728640バイトであることを示す。
【０１１１】
<region id="1">タグおよび</region>タグの間の、<rg_size>タグおよび</rg_size>タグの間に配置されている511191040は、１である領域番号の領域のサイズ（データ量）が511191040バイトであることを示す。<region id="1">タグおよび</region>タグの間の、<rg_flags>タグおよび</rg_flags>タグの間に配置されているNON_CACHEDは、１である領域番号の領域がホール領域であること、すなわち、１である領域番号の領域に対応するデータがHDD３４に記録されていないことを示す。
【０１１２】
ステップＳ２０８において、ストレージマネージャ１２は、領域のステータスを示すファイルステータス情報をビデオプレーヤ１１に送信する。
【０１１３】
ステップＳ１０９において、ビデオプレーヤ１１のダイジェスト画面生成アプリケーションプログラム５２は、ストレージマネージャ１２から送信されてきたファイルステータス情報を受信する。ステップＳ１１０において、ダイジェスト画面生成アプリケーションプログラム５２は、ファイルのそれぞれについて、ファイルステータス情報を基に、ストアされている領域（スタブ領域）のデータの読み出しをストレージマネージャ１２に要求する。
【０１１４】
例えば、ステップＳ１１０において、ダイジェスト画面生成アプリケーションプログラム５２は、ファイルのそれぞれについて、ファイルステータス情報を基に、スタブ領域のオフセットおよびサイズを指定することにより、スタブ領域のデータだけの読み出しをストレージマネージャ１２に要求する。すなわち、例えば、ダイジェスト画面生成アプリケーションプログラム５２は、図９で示されるファイルステータス情報を基に、/fs0/VIDEO_1/biwako.mpgであるファイル名のファイルについて、コンテンツのデータの先頭から15728640バイトまでのデータの読み出しをストレージマネージャ１２に要求する。
【０１１５】
スタブ領域のオフセットおよびサイズを指定した場合、光ディスク３６からデータを読み出すことなく、HDD３４だけから要求されたデータを読み出すことができる。
【０１１６】
また、例えば、ステップＳ１１０において、ダイジェスト画面生成アプリケーションプログラム５２は、ファイルのそれぞれについて、光ディスク３６からのデータの読み出しを抑制するとともに、HDD３４からデータの読み出しを指令するコマンドをストレージマネージャ１２に送信することにより、ストアされている領域（ホール領域）のデータの読み出しをストレージマネージャ１２に要求する。
【０１１７】
図１０は、光ディスク３６からのデータの読み出しを抑制するとともに、HDD３４からデータの読み出しを指令するコマンドの一例を示す図である。図１０で示されるコマンドの１行目のGET /fs0/VIDEO_1/biwako.mpg HTTP/1.1は、読み出すデータが格納されているファイルのファイル名が/fs0/VIDEO_1/biwako.mpgであること、およびHTTP（Hyper Text Transfer Protocol）の手順に基づいてデータを転送することを示す。
【０１１８】
図１０で示されるコマンドの２行目のHost:localhostは、ストレージマネージャ１２の名称がlocalhostであることを示す。コマンドの３行目のRange:bytes=1970176-は、コンテンツのデータの先頭から1970176バイトの位置からのデータを要求していることを示す。
【０１１９】
コマンドの４行目のEscape-Reload-Mode:1は、光ディスク３６からのデータの読み出しを抑制するとともに、HDD３４からデータの読み出しを要求するエスケープリロードモードのデータの要求であることを示す。エスケープリロードモードは、リロードを実行しないモードである。
【０１２０】
コマンドの５行目のUser-Agent:HSS Player/0.01は、ダイジェスト画面生成アプリケーションプログラム５２の名称がHSS Player/0.01であることを示す。
【０１２１】
エスケープリロードモードでのデータの読み出しを要求することで、ステップＳ１０９において受信したファイルステータス情報で示される状態から、記録されているデータの状態が変更された場合であっても、リロードが実行されない。
【０１２２】
なお、４行目をEscape-Reload-Mode:0としたコマンドは、光ディスク３６またはHDD３４からデータを読み出す通常モードでのデータの読み出しを指令する。
【０１２３】
ステップＳ２０９において、ストレージマネージャ１２は、ダイジェスト画面生成アプリケーションプログラム５２からの、ストアされている領域（ホール領域）のデータの読み出しの要求を受信する。ステップＳ２１０において、リードアクセスの処理が実行される。リードアクセスの処理の詳細は、図１４のフローチャートを参照して後述する。ステップＳ２１０のリードアクセスの処理により、ファイルのそれぞれについて、ストアされている領域のデータがストレージマネージャ１２からビデオプレーヤ１１に送信される。
【０１２４】
ステップＳ１１１において、ビデオプレーヤ１１のダイジェスト画面生成アプリケーションプログラム５２は、ストレージマネージャ１２から送信されてくる、ファイルのそれぞれについて、ストアされている領域のデータを受信する。ステップＳ１１２において、ビデオプレーヤ１１のダイジェスト画面生成アプリケーションプログラム５２は、コンテンツリスト上にダイジェストを表示させて、処理は終了する。
【０１２５】
例えば、ステップＳ２１０のリードアクセスの処理により、ストレージマネージャ１２は、図６で示されるように、シーケンスヘッダとGOPとの繰り返しで構成されるデータを送信してくるので、ステップＳ１１１において、ダイジェスト画面生成アプリケーションプログラム５２は、シーケンスヘッダとGOPとの繰り返しで構成されるデータを受信する。
【０１２６】
例えば、ステップＳ１１２において、ダイジェスト画面生成アプリケーションプログラム５２は、ファイルステータス情報を基に、１または複数のスタブ領域のうち、一部分または全部のスタブ領域を選択して、選択したスタブ領域のデータをデコーダ５１に復号させる。なお、スタブ領域がない場合には、ダイジェスト画面生成アプリケーションプログラム５２は、デコーダ５１に復号を指示しない。
【０１２７】
デコーダ５１は、ファイルステータス情報のオフセットで示される位置を、復号を開始する位置として、その位置の後ろであって最初に見つけられたシーケンスヘッダからデータのデコードを開始する。デコーダ５１は、送信されてきたデータが後述するダミーデータ（コンテンツのデータに代わる復号できないデータ）である場合には、そのデータを復号しない。
【０１２８】
このように、ファイルステータス情報およびシーケンスヘッダが参照されて、実データだけが復号されることになる。
【０１２９】
その結果、ダイジェスト画面生成アプリケーションプログラム５２は、図１１で示されるように、モニタ７１に、複数のコンテンツのそれぞれについて、マルチ画面で、ダイジェスト用の短いシーン（動画）からなるコンテンツ一覧を表示させる。図１１で示す例において、title#1乃至title#5の何れかのコンテンツの名前が付されたコンテンツ、またはtitle#8乃至title#12の何れかのコンテンツの名前が付されたコンテンツには、ストアされている領域があるので、モニタ７１に、ストアされている領域のデータを基にしたダイジェスト用の短いシーンが表示される。これに対して、title#6またはtitle#7のコンテンツの名前が付されたコンテンツには、ストアされている領域がないので、モニタ７１に、ダイジェスト用のシーンは表示されない。
【０１３０】
なお、選択したスタブ領域について、ダミーデータが送信されてきた場合には、ダイジェスト画面生成アプリケーションプログラム５２は、デコーダ５１に、シーケンスヘッダを見つけられるまでデータを走査させる。これにより、より迅速にデータを復号することができる。また、デコーダ５１は、復号しているGOPの途中でダミーデータを検知した場合には、デコードが失敗するので、その直前のGOPを復号して得られたデータを出力し、ダミーデータを検出したGOPを復号して得られたデータを出力しない。
【０１３１】
また、ダイジェスト画面生成アプリケーションプログラム５２またはデコーダ５１は、一定サイズ以上のダミーデータを受け取った場合には、ダミーデータを含むデータのデコードを終了して、黒画面または予め定めたビデオを示すアイコンを表示させるようにしてもよい。
【０１３２】
以上のように、キャッシュされているか否かを示す情報をアプリケーション側であるビデオプレーヤ１１に通知することで、ビデオプレーヤ１１は、キャッシュされているか否かを示す情報を基に、ダイジェスト画像を作る区間（データの部分）の選別をすることができるようになり、その結果、キャッシュされていない領域にアクセスしないで、迅速にダイジェスト画像を作成できるようになる。
【０１３３】
次に、図１２のフローチャートを参照して、コンテンツを再生する処理を説明する。
【０１３４】
使用者は、モニタ７１に表示されたダイジェストからなるコンテンツリストを見て、図示せぬスイッチまたはリモートコントローラなどを操作することで、再生するコンテンツを選択するので、ステップＳ１３１において、ビデオプレーヤ１１の動画再生アプリケーションプログラム５３は、使用者に操作された図示せぬスイッチまたはリモートコントローラなどからの信号を基に、使用者からのコンテンツの選択の指示を取得する。例えば、動画再生アプリケーションプログラム５３は、図７のフローチャートを参照して説明した処理で表示されているダイジェストを基にした、使用者からのコンテンツの選択の指示を取得する。
【０１３５】
ステップＳ１３２において、動画再生アプリケーションプログラム５３は、選択されたコンテンツのデータをストレージマネージャに要求する。例えば、ステップＳ１３２において、動画再生アプリケーションプログラム５３は、光ディスク３６およびHDD３４からデータの読み出しを指令するコマンドをストレージマネージャ１２に送信することにより、選択されたコンテンツのデータをストレージマネージャに要求する。
【０１３６】
図１３は、ディスク３６およびHDD３４からデータの読み出しを指令するコマンドの一例を示す図である。図１３で示されるコマンドの１行目のGET /fs0/VIDEO_1/biwako.mpg HTTP/1.1は、読み出すデータが格納されているファイルのファイル名が/fs0/VIDEO_1/biwako.mpgであること、およびHTTP（Hyper Text Transfer Protocol）の手順に基づいてデータを転送することを示す。
【０１３７】
図１３で示されるコマンドの２行目のHost:localhostは、ストレージマネージャ１２の名称がlocalhostであることを示す。コマンドの３行目のRange:bytes=1970176-は、コンテンツのデータの先頭から1970176バイトの位置からのデータを要求していることを示す。
【０１３８】
コマンドの４行目のUser-Agent:HSS Player/0.01は、動画再生アプリケーションプログラム５３の名称がHSS Player/0.01であることを示す。
【０１３９】
なお、動画再生アプリケーションプログラム５３は、図１０で示されるコマンドであって、４行目をEscape-Reload-Mode:0としたコマンドをストレージマネージャ１２に送信することにより、選択されたコンテンツのデータをストレージマネージャに要求するようにしてもよい。
【０１４０】
ステップＳ２３１において、ストレージマネージャ１２は、動画再生アプリケーションプログラム５３からの、選択されたコンテンツのデータの要求を受信する。ステップＳ２３２において、リードアクセスの処理が実行される。ステップＳ２３２のリードアクセスの処理により、選択されたコンテンツのデータがストレージマネージャ１２からビデオプレーヤ１１に送信される。
【０１４１】
ステップＳ１３３において、ビデオプレーヤ１１の動画再生アプリケーションプログラム５３は、ストレージマネージャ１２から送信されてくる、選択されたコンテンツのデータを受信する。ステップＳ１３４において、動画再生アプリケーションプログラム５３は、受信したコンテンツのデータをデコーダ５１に復号させて、コンテンツを再生する。ステップＳ１３５において、動画再生アプリケーションプログラム５３は、コンテンツをモニタ７１に表示させて、処理は終了する。
【０１４２】
図１４は、ステップＳ２１０またはステップＳ２３２のリードアクセスの処理の詳細を説明するフローチャートである。ステップＳ１１において、ストレージマネージャ１２は、送信するデータまたは情報などを一時的に記憶するセンドバッファ（SendBuffer）を初期化する。ステップＳ１２において、ストレージマネージャ１２は、ビデオプレーヤ１１から送信されてきたコマンドを基に、ビデオプレーヤ１１からの要求がエスケープリロードモードの要求であるか否かを判定する。
【０１４３】
ステップＳ１２において、エスケープリロードモードの要求でないと判定された場合、通常モードの要求なので、ステップＳ１３に進み、ストレージマネージャ１２は、変数であるflagに"Normal Read"を設定し、手続きは、ステップＳ１５に進む。
【０１４４】
一方、ステップＳ１２において、エスケープリロードモードの要求であると判定された場合、ステップＳ１３に進み、ストレージマネージャ１２は、変数であるflagに"Escape Reload"を設定し、手続きは、ステップＳ１５に進む。
【０１４５】
ステップＳ１５において、ストレージマネージャ１２は、ファイルポインタjに、データの読み出しの開始位置を示すstart_offsetである初期値を設定する。ステップＳ１６において、ストレージマネージャ１２は、ファイルポインタjが、data_lengthであるファイルの最終位置より小さいか否かを判定し、ファイルポインタjが、data_lengthであるファイルの最終位置より小さいと判定された場合、ファイルの最終位置まで読み出していないので、ステップＳ１７に進み、１ブロックを単位としてデータを読み込むReadA1Block(flag,j,SendBuffer)の関数、すなわちflag,j、およびSendBufferを引数とするReadA1Block(flag,offset,*buf)の関数を実行する。ReadA1Block(flag,offset,*buf)の関数の処理の詳細は後述する。
【０１４６】
ステップＳ１８において、ストレージマネージャ１２は、センドバッファに格納されているデータのうち、ファイルポインタjで示される位置から、Buffer_Lengthのデータ量のデータをビデオプレーヤ１１に送信するSend(SendBuffer,Buffer_Length)の処理を実行する。
【０１４７】
ステップＳ１９において、ストレージマネージャ１２は、ファイルポインタjに、Buffer_Lengthを加算することで、ファイルポインタjを更新して、ステップＳ１６に戻り、上述した処理を繰り返す。
【０１４８】
ステップＳ１６において、ファイルポインタjが、data_lengthであるファイルの最終位置より小さくないと判定された場合、ファイルの最終位置までデータが送信されたので、処理は終了する。
【０１４９】
次に、図１５のフローチャートを参照して、図１４のステップＳ１７のReadA1Block(flag,j,SendBuffer)の関数として実行されるReadA1Block(flag,offset,*buf)の関数の処理の詳細を説明する。ステップＳ３１において、ストレージマネージャ１２は、変数であるflagに"Escape Reload"が設定されているか否かを判定し、変数であるflagに"Escape Reload"が設定されていないと判定された場合、ステップＳ３２に進み、読み出そうとする領域のデータがストアされているか否かを判定する。
【０１５０】
ステップＳ３２において、読み出そうとする領域のデータがストアされていると判定された場合、読み出そうとする領域はスタブ領域であり、読み出そうとするスタブデータがHDD３４に記録されているので、ステップＳ３３に進み、ストレージマネージャ１２は、HDD３４上のスタブデータを１つのブロックの分だけSendBufferに対応するバッファbufに読み込み、処理は終了する。
【０１５１】
ステップＳ３２において、読み出そうとする領域のデータがストアされていないと判定された場合、読み出そうとする領域はホール領域であり、読み出そうとするデータがHDD３４に記録されていないので、ステップＳ３４に進み、ストレージマネージャ１２は、HSM１３にリロード実行コマンドを発行して、HSM１３に、読み出そうとするデータをリロードさせる。
【０１５２】
ここで、リロードの処理を説明すると次のようになる。
【０１５３】
まず、読み出そうとするコンテンツのデータが記録されていない光ディスク３６がドライブ３５に装着されている場合には、HSM１３は、ドライブ３５に装着されている光ディスク３６をディスクスロット１３０に戻す。すなわち、ジュークシステム１２８の制御の基に、ジュークボックス１０４のピッカー１３１は、ドライブ３５から排出された光ディスク３６を搬送して、所定のディスクスロット１３０に格納させる。
【０１５４】
ドライブ３５から光ディスク３６が排出されたか、または、リロードの処理を開始した時点でドライブ３５に光ディスク３６が装着されていない場合には、HSM１３は、読み出そうとするコンテンツのデータが記録されている光ディスク３６をドライブ３５に装着させる。
【０１５５】
これをより詳細に説明すると、HSM１３は、ストアデータベース１２５から、キャッシュファイル名に関連付けられているキャッシュファイルIDを参照して、参照されたキャッシュファイルIDに対応するボリウムIDを参照する。ストレージサーバ１２４は、ボリウムデータベース１２７を基に、ボリウムIDで特定される光ディスク３６が格納されているディスクスロット１３０を特定する。すなわち、ストレージサーバ１２４は、メディアサーバ１２６に、ボリウムIDで特定される光ディスク３６が格納されているディスクスロット１３０の特定を要求する。
【０１５６】
メディアサーバ１２６は、ボリウムデータベース１２７に、ジュークボックス１０４の各ディスクスロット１３０に格納されている光ディスク３６を特定するボリウムIDのうち、ストレージサーバ１２４からの要求に含まれているボリウムIDと一致するボリウムIDを検索させる。ボリウムデータベース１２７が、ストレージサーバ１２４からの要求に含まれているボリウムIDで特定される光ディスク３６が格納されているディスクスロット１３０を示す情報を出力してくるので、メディアサーバ１２６は、ディスクスロット１３０を示す情報をストレージサーバ１２４に供給する。これにより、ストレージサーバ１２４は、ボリウムIDで特定される光ディスク３６が格納されているディスクスロット１３０を特定する。
【０１５７】
そして、ストレージサーバ１２４は、メディアサーバ１２６に、特定されたディスクスロット１３０に格納されている光ディスク３６のドライブ３５への装着を指示する。メディアサーバ１２６は、チェンジャドライバ１０２を介して、ジュークシステム１２８に、特定されたディスクスロット１３０に格納されている光ディスク３６をドライブ３５に装着させる。すなわち、ジュークシステム１２８の制御の基に、ジュークボックス１０４のピッカー１３１は、特定されたディスクスロット１３０から、光ディスク３６を取り出して、搬送し、その光ディスク３６をドライブ３５に装着（マウント）させる。
【０１５８】
さらに、その光ディスク３６がドライブ３５に装着された場合、または、読み出そうとするコンテンツのデータが記録されている光ディスク３６がドライブ３５に装着されている場合、HSM１３は、ドライブ３５に装着されている光ディスク３６からデータを読み出して、読み出したデータをHDD３４に記録させる。
【０１５９】
すなわち、HSM１３のマイグレーションファイルシステム３３は、リロードの開始位置を、現在、HDD３４から読み出されているデータの位置の後の領域であって、もっと近い領域の先頭とし、HSM１３のストレージサーバ１２４は、リロードの開始位置におけるデータを、光ディスク３６が装着されたドライブ３５から読み出させ、読み出したデータをキャッシュファイルの所定の領域に格納させるように、HDD３４に記録させる。
【０１６０】
そして、マイグレーションファイルシステム３３は、順に、それぞれの領域について、光ディスク３６が装着されたドライブ３５からデータを読み出させ、読み出したデータをキャッシュファイルのその領域に格納させるように、HDD３４に記録させる。
【０１６１】
なお、スタブ領域について、光ディスク３６からデータを読み出し、HDD３４に記録させる処理はスキップされ、ホール領域について、光ディスク３６からデータを読み出し、HDD３４に記録させる処理が実行される。
【０１６２】
その領域のリロードが完了した場合、マイグレーションファイルシステム３３は、リロードを完了した領域と隣接するスタブ領域とを結合させるように拡張属性を書き換える。
【０１６３】
このようにして、HSM１３のマイグレーションファイルシステム３３は、キャッシュファイルの最後まで、光ディスク３６からデータを読み出し、HDD３４に記録させる。
【０１６４】
ステップＳ３５において、ストレージマネージャ１２は、HDD３４にリロードされたデータを１つのブロックの分だけSendBufferに対応するバッファbufに読み込み、処理は終了する。
【０１６５】
なお、ステップＳ３４およびステップＳ３５の処理は並列に実行される。
【０１６６】
ステップＳ３１において、変数であるflagに"Escape Reload"が設定されていると判定された場合、ステップＳ３６に進み、ストレージマネージャ１２は、読み出そうとする領域のデータがストアされているか否かを判定する。
【０１６７】
ステップＳ３６において、読み出そうとする領域のデータがストアされていると判定された場合、ステップＳ３３に進み、上述したように、ストレージマネージャ１２は、HDD３４上のスタブデータを１つのブロックの分だけSendBufferに対応するバッファbufに読み込み、処理は終了する。
【０１６８】
ステップＳ３６において、読み出そうとする領域のデータがストアされていないと判定された場合、ステップＳ３７に進み、ストレージマネージャ１２は、リロードを実行させないで、SendBufferに対応するバッファbufに、デコーダ５１において復号できない（復号させない）ダミーデータを入れて、処理は終了する。例えば、ストレージマネージャ１２は、バッファbufに、全て０であるダミーデータを入れる。
【０１６９】
このように、変数であるflagに"Escape Reload"が設定されている場合には、光ディスク３６からのデータの読み出しが抑制されるとともに、HDD３４からデータが読み出される。
【０１７０】
以上のように、ストレージマネージャ１２は、ファイルのステータスが要求された場合、光ディスク３６からの読み出しを抑制すると共に、HDD３４から、領域のステータスを読み出す。
【０１７１】
また、ストレージマネージャ１２は、ストアされている領域（ホール領域）のデータの読み出しが要求された場合、光ディスク３６からの読み出しを抑制すると共に、HDD３４から、ホール領域のデータを読み出す。
【０１７２】
ストレージマネージャ１２は、コンテンツのデータが要求された場合、光ディスク３６およびHDD３４からデータを読み出す。
【０１７３】
このように、ストレージマネージャ１２は、ファイルの読み出しアクセスのために、リロードを行う通常モードと、リロードしないエスケープリロードモードの２つのモードの何れかで、データまたは情報をHDD３４または光ディスク３６から読み出す。エスケープリロードモードでの読み出しが要求された場合、ストレージマネージャ１２は、キャッシュ済み（HDD３４に記録されている）データをそのまま読み出して、送信し、キャッシュされていないデータ（HDD３４に記録されていないデータ）を要求された場合には、ファイルからデータを読み出さないで、代替のデータであるダミーデータを送信する。
【０１７４】
再生プログラム３１は、目的に応じて、通常モードまたはリロードエスケープモードのいずれかで、ストレージマネージャ１２にデータまたは情報の読み出しを要求する。
【０１７５】
エスケープリロードモードにおいて、リロードが実行されず、キャッシュされていないデータに代えてダミーデータが送信されるので、ビデオプレーヤ１１は、ファイルステータス情報の取得およびファイルステータス情報で示されるスタブ領域のスタブデータのみを選択的に復号する処理を省略し、ストレージマネージャ１２から送信されてきたデータの全てを復号したとしても、ホール領域のデータについてデコードを実行しない。すなわち、ビデオプレーヤ１１は、エスケープリロードモードでのデータの読み出しを要求することで、ファイルステータス情報の取得および復号できるデータを選別する処理を実行する必要がなくなり、また、不要なデコードの処理も実行されないので、ビデオプレーヤ１１の負荷をより少なくすることができる。
【０１７６】
以上のように、HDD３４に記録されていない領域への読み出しの要求によるリロードを抑制することで、高速に読み出しができる箇所のみに絞ったデータの読み出しができるようになる。
【０１７７】
HSM１３において、不要なリロードを発生させないので、リロードで使用するドライブ３５であるリソースを有効に使うことができる。
【０１７８】
キャッシュされていない領域にアクセスしても、エスケープリロードモードとすることで、受信したファイルステータス情報で示される状態から、記録されているデータの状態が変更された場合であっても、不要なリロードを実行しないようにすることができる。
【０１７９】
ファイルステータス情報を用いない場合であっても、エスケープリロードモードでアクセスすれば、リロードを実行しないようにすることができる。従って、アプリケーション側の変更を最小限として、エスケープリロードモードを利用できる。
【０１８０】
エスケープリロードモードを用いた場合、ダミーデータが配置されている部分は、アプリケーション側で無視するようにできる。例えば、デコーダ５１が、MPEGデコーダである場合、デコーダ５１は、ダミーデータを受け取ったとき、ダミーデータを復号せず、その後に、スタブ領域が配置されているときには、データを順に走査して、シーケンスヘッダを見つけたところから復号を開始することができる。
【０１８１】
動画再生アプリケーションプログラム５３のような通常のアクセスをする必要のあるアプリケーションプログラムは、通常モードでデータの読み出しを行えば、HSM１３によるリロードの処理を利用して、キャッシュされている領域（スタブ領域）とキャッシュされていない領域（ホール領域）とを意識することなく、コンテンツのデータを読み出すことができる。
【０１８２】
なお、光ディスク３６からのデータの読み出しを抑制するとともに、HDD３４からデータを読み出す要求と、光ディスク３６およびHDD３４からデータを読み出す要求とを、コマンドによって区別すると説明したが、ストレージマネージャ１２のポートにより区別するようにしてもよい。ここでポートとは、複数の相手と同時に通信するための補助アドレスである。
【０１８３】
この場合、第１のポートを介して読み出しが要求されたとき、ストレージマネージャ１２は、エスケープリロードモードでデータを読み出し、光ディスク３６からのデータの読み出しを抑制するとともに、HDD３４からデータまたは情報を読み出す。第２のポートを介して読み出しが要求されたとき、ストレージマネージャ１２は、通常モードでデータを読み出し、光ディスク３６またはHDD３４からデータまたは情報を読み出す。
【０１８４】
次に、ダイジェスト画面生成アプリケーションプログラム５２による、復号された短い動画像であるダイジェスト（要約）の表示の詳細について説明する。
【０１８５】
図１６は、ダイジェスト画面生成アプリケーションプログラム５２の構成の例を示すブロック図である。ダイジェスト画面生成アプリケーションプログラム５２は、決定部２０１および取得部２０２を備える。
【０１８６】
決定部２０１は、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータと拡張属性とが記録されているHDD３４から取得したファイルステータス情報によって、HDD３４にデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定する。
【０１８７】
拡張属性およびファイルステータス情報は、コンテンツの部分のデータの属性に関するデータ属性情報の一例である。HDD３４は、第２の記録媒体の一例である。
【０１８８】
決定部２０１は、範囲決定部２１１を備える。範囲決定部２１１は、再生時間が予め定めた最大時間より長い場合、最大時間以下の再生時間となるように要約を構成するコンテンツの部分の範囲を決定する。例えば、範囲決定部２１１は、HDD３４にデータが記録されているコンテンツの部分のそれぞれから、予め定めた長さの時間の範囲を決定する。
【０１８９】
取得部２０２は、決定したコンテンツの部分のデータをHDD３４から取得する。
【０１９０】
図１７は、ダイジェスト画面生成アプリケーションプログラム５２によるダイジェストの表示の処理の詳細を説明するフローチャートである。
【０１９１】
ステップＳ５１において、ダイジェスト画面生成アプリケーションプログラム５２の取得部２０２は、ストレージマネージャ１２から、ダイジェストを表示しようとするコンテンツのデータについてのファイルステータス情報を取得する。
【０１９２】
例えば、ステップＳ５１において、ダイジェスト画面生成アプリケーションプログラム５２の取得部２０２は、ダイジェストを表示しようとするコンテンツのファイルのステータスをストレージマネージャ１２に要求する。
【０１９３】
より具体的には、例えば、ステップＳ５１において、取得部２０２は、ダイジェストを表示しようとするコンテンツのファイル名を含むコマンド（例えば、図８のコマンド）をストレージマネージャ１２に送信することにより、ファイルのステータスをストレージマネージャ１２に要求する。
【０１９４】
ストレージマネージャ１２は、取得部２０２から送信されてきた、ファイルのステータスの要求を受信する。例えば、ストレージマネージャ１２は、取得部２０２から送信されてきたコマンドを受信する。
【０１９５】
すると、ストレージマネージャ１２は、ファイルについて、拡張属性を参照して、領域のステータスを取得する。例えば、ストレージマネージャ１２は、ファイルについて、HSM１３のストアデータベース１２５から、ファイル名に関連付けて格納されている、キャッシュファイルを特定するための値であるキャッシュファイルIDを読み出す。そして、ストレージマネージャ１２は、ファイルについて、HSM１３のキャッシュテーブル３８から、拡張属性を参照して、キャッシュファイルIDに対応して記録されている領域情報を読み出すことによって、領域のステータスを取得する。
【０１９６】
さらに、ストレージマネージャ１２は、領域のステータスを示すファイルステータス情報（例えば、図９のファイルステータス情報）を生成する。ストレージマネージャ１２は、領域のステータスを示すファイルステータス情報をダイジェスト画面生成アプリケーションプログラム５２に送信する。
【０１９７】
ダイジェスト画面生成アプリケーションプログラム５２の取得部２０２は、ストレージマネージャ１２から送信されてきたファイルステータス情報を受信することで、ファイルステータス情報を取得する。
【０１９８】
ステップＳ５２において、ダイジェスト画面生成アプリケーションプログラム５２の決定部２０１は、変数Ｎに初期値である０を設定する。変数Ｎは、領域を特定するために用いられる。
【０１９９】
ステップＳ５３において、決定部２０１は、取得したファイルステータス情報を基に、領域Ｎがあるか否かを判定する。
【０２００】
例えば、図９で例示されるファイルステータス情報を取得した場合、このファイルステータス情報には、領域０と領域１の情報が含まれているので、決定部２０１は、領域０があると判定する。同様に、図９で例示されるファイルステータス情報を取得した場合、変数Ｎが１とされる２回目のステップＳ５３において、決定部２０１は、領域１があると判定する。しかし、図９で例示されるファイルステータス情報には、領域２の情報は含まれていないので、変数Ｎが２とされる３回目のステップＳ５３において、決定部２０１は、領域２はないと判定する。
【０２０１】
ステップＳ５３において、領域Ｎがあると判定された場合、ステップＳ５４に進み、決定部２０１は、ファイルステータス情報から領域Ｎの情報を抽出する。ステップＳ５４において抽出される領域Ｎの情報には、コンテンツのデータの先頭から領域Ｎの先頭までのオフセット値（バイト）を示すオフセット、領域Ｎのデータ量を示すサイズ、および領域Ｎがストア済みであるかまたはホール状態であるかを示すフラグが含まれる。
【０２０２】
ステップＳ５５において、決定部２０１は、抽出した領域Ｎの情報に含まれるフラグに基づいて、領域Ｎがストアされているか否かを判定する。
【０２０３】
ステップＳ５５において、領域Ｎがストアされていると判定された場合、ステップＳ５６に進み、決定部２０１は、抽出した領域Ｎの情報に含まれるサイズに基づいて、領域Ｎのサイズは、デコードに十分な大きさであるか否かを判定する。例えば、ステップＳ５６において、決定部２０１は、領域Ｎのサイズと、デコードに必要なデータ量を示す閾値とを比較することにより、領域Ｎのサイズが、デコードに十分な大きさであるか否かを判定する。
【０２０４】
ステップＳ５６において、領域Ｎのサイズが、デコードに十分な大きさであると判定された場合、ステップＳ５７に進み、決定部２０１は、領域Ｎをデコード候補に設定し、手続きは、ステップＳ５８に進む。
【０２０５】
ステップＳ５５において、領域Ｎがストアされていない、すなわち、ホール領域であると判定された場合、またはステップＳ５６において、領域Ｎのサイズが、デコードに十分な大きさでないと判定された場合、ステップＳ５７の処理はスキップされ、その領域Ｎはデコード候補とされず、手続きは、ステップＳ５８に進む。
【０２０６】
このように、HDD３４にデータがストアされている領域であって、デコードに十分なデータ量の領域がデコード候補とされる。デコードに十分な大きさでないサイズの領域がデコード候補とされないようにすることで、データを安定して復号することができ、その結果、例えば、表示されるダイジェストの画像が乱れてしまうことが防止される。
【０２０７】
ステップＳ５８において、決定部２０１は、変数Ｎを１だけインクリメントして、次の領域Ｎについて、ステップＳ５３乃至ステップＳ５８の処理を繰り返す。
【０２０８】
ステップＳ５３において、領域Ｎがないと判定された場合、対象としているファイルの領域の全てのうち、HDD３４にデータがストアされている領域であって、デコードに十分なデータ量の領域をデコード候補としたので、ステップＳ５９に進み、決定部２０１は、デコード候補の領域のデータで再生される時間（コンテンツの再生の時間）の総和を計算する。
【０２０９】
例えば、決定部２０１は、デコード候補の領域のデータのデータ量の総和を計算して、計算された総和を再生のビットレートの平均値で割り算することにより、再生される時間（コンテンツの再生の時間）の総和を計算する。
【０２１０】
なお、領域情報に、その領域の再生の時間を含め、これから、再生される時間の総和を計算するようにしてもよい。
【０２１１】
ステップＳ６０において、決定部２０１は、計算された時間の総和が、予め定めた最大時間より長いか否かを判定する。最大時間は、任意に決めることができるが、例えば、１分とすることができる。
【０２１２】
ステップＳ６０において、計算された時間の総和が、予め定めた最大時間より長いと判定された場合、ステップＳ６１に進み、決定部２０１の範囲決定部２１１は、最大時間に収まるように、デコード候補の領域の範囲を減らし、手続きは、ステップＳ６２に進む。
【０２１３】
ステップＳ６０において、計算された時間の総和が、予め定めた最大時間より長くないと判定された場合、ステップＳ６１はスキップされ、手続きは、ステップＳ６２に進む。この場合、デコード候補の領域の全体が、ダイジェストとして再生される範囲とされる。
【０２１４】
図１８は、範囲決定部２１１により、最大時間に収まるように範囲を減らされた、デコード候補の領域の例を示す図である。
【０２１５】
図１８の最も上および上から２番目に示される横長の四角は、コンテンツの全体のデータを示す。図１８において、横方向は、コンテンツにおける再生の時間を示す。コンテンツのデータの全体を示す横長の四角に含まれる、白抜きの四角および斜線が付された四角は、コンテンツの部分のデータを示す。
【０２１６】
最も上の横長の四角における、白抜きの四角は、ホール状態とされている領域（HDD３４に記録されていないデータの領域）を示し、右下がりの斜線が付された四角は、ストアされている領域（HDD３４に記録されているデータの領域）を示す。
【０２１７】
ステップＳ５５およびステップＳ５６において、HDD３４にデータがストアされている領域であって、デコードに十分なデータ量の領域がデコード候補とされる。
【０２１８】
図１８の上から２番目の横長の四角に付された丸は、丸を付された領域がデコード候補とされたことを示し、バツは、バツを付された領域がデコード候補とされていないことを示す。
【０２１９】
例えば、コンテンツの先頭から２番目の領域は、HDD３４にデータがストアされている領域であるが、デコードに十分なデータ量がないので、デコード候補とされていない。コンテンツの先頭から４番目の領域は、HDD３４にデータがストアされている領域であり、デコードに十分なデータ量があるので、デコード候補とされている。
【０２２０】
例えば、ステップＳ５９において、決定部５９は、図１８の丸が付されたデコード候補の領域について、再生される時間（コンテンツの再生の時間）の総和を計算する。
【０２２１】
例えば、計算された時間の総和が、予め定めた最大時間より長いと判定された場合、ステップＳ６１において、範囲決定部２１１は、最大時間に収まるように、デコード候補の領域の範囲を減らす。
【０２２２】
より具体的には、例えば、まず、範囲決定部２１１は、最大時間をデコード候補の数で割り算して、１つの領域当たりの時間を求める。
【０２２３】
そして、例えば、範囲決定部２１１は、図１８の丸が付されたデコード候補の領域のそれぞれについて、デコード候補の領域の範囲を、それぞれの領域の先頭から１つの領域当たりの時間に対応する位置までと決めることで、デコード候補の領域の範囲を減らす。
【０２２４】
図１８の上から２番目の横長の四角の中の、左下がりの斜線が付された四角の領域は、このように、範囲決定部２１１によって定められた、それぞれのデコード候補の領域の範囲を示す。
【０２２５】
図１８に示す例においては、コンテンツの先頭から４番目の領域、コンテンツの先頭から８番目の領域、およびコンテンツの先頭から１０番目の領域のそれぞれについて、領域の先頭から１つの領域当たりの時間に対応する位置までの範囲が、デコード候補の領域の範囲とされる。
【０２２６】
ストアされている領域のそれぞれを合わせた全体について、その先頭から最大時間に対応する位置まで連続するようにデコード候補の領域の範囲を決めてしまうと、ダイジェストがコンテンツの一部分の要約となってしまう。これに対して、デコード候補の領域のそれぞれから、所定の長さの範囲を抽出して、それを合わせてデコード候補の領域の範囲とするように、時間軸で均等となるように領域内でデータを間引くようにしたので、ダイジェストを、コンテンツの全体の要約とすることができる。
【０２２７】
図１７に戻り、ステップＳ６２において、取得部２０２は、ストレージマネージャ１２に、最初のデコード候補の領域の範囲のデータを要求する。
【０２２８】
例えば、ステップＳ６２において、取得部２０２は、最初のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図１０または図１３に例示される方式のコマンドをストレージマネージャ１２に供給することにより、最初のデコード候補の領域の範囲のデータの読み出しをストレージマネージャ１２に要求する。
【０２２９】
ストレージマネージャ１２が、ダイジェスト画面生成アプリケーションプログラム５２からの、最初のデコード候補の領域の範囲のデータの読み出しの要求を受信すると、ステップＳ６３において、リードアクセスの処理が実行される。リードアクセスの処理は、図１４で説明した処理と同様なのでその説明は省略する。
【０２３０】
リードアクセスの処理により、最初のデコード候補の領域の範囲のデータがストレージマネージャ１２からダイジェスト画面生成アプリケーションプログラム５２に送信される。
【０２３１】
ステップＳ６４において、ダイジェスト画面生成アプリケーションプログラム５２の取得部２０２は、ストレージマネージャ１２から送信されてくる、最初のデコード候補の領域の範囲のデータを受信することで、最初のデコード候補の領域の範囲のデータを取得する。ステップＳ６５において、ダイジェスト画面生成アプリケーションプログラム５２は、デコーダ５１に、取得したデータのデコードを開始させる。ステップＳ６６において、ダイジェスト画面生成アプリケーションプログラム５２は、デコーダ５１に、ビデオアウトインターフェース３２を介して復号された信号を出力させることで、ビデオアウトインターフェース３２に接続されている機器にダイジェストの表示を開始させる。
【０２３２】
ステップＳ６７において、ダイジェスト画面生成アプリケーションプログラム５２は、ダイジェストの表示の停止を指令する停止指令が入ったか否かを判定し、停止指令が入っていないと判定された場合、ステップＳ６８に進む。例えば、ダイジェスト画面生成アプリケーションプログラム５２は、コンテンツの再生の指令を受け取ったり、または、他の処理の実行が指令されたりなどした場合、ダイジェストの表示の停止を指令する停止指令が入ったと判定する。
【０２３３】
ステップＳ６８において、取得部２０２は、ストレージマネージャ１２に、次のデコード候補の領域の範囲のデータを要求する。例えば、ステップＳ６８において、取得部２０２は、次のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図１０または図１３に例示される方式のコマンドをストレージマネージャ１２に供給することにより、次のデコード候補の領域の範囲のデータの読み出しをストレージマネージャ１２に要求する。
【０２３４】
ストレージマネージャ１２が、ダイジェスト画面生成アプリケーションプログラム５２からの、次のデコード候補の領域の範囲のデータの読み出しの要求を受信すると、ステップＳ６９において、リードアクセスの処理が実行される。リードアクセスの処理は、図１４で説明した処理と同様なのでその説明は省略する。
【０２３５】
リードアクセスの処理により、次のデコード候補の領域の範囲のデータがストレージマネージャ１２からダイジェスト画面生成アプリケーションプログラム５２に送信される。
【０２３６】
ステップＳ７０において、ダイジェスト画面生成アプリケーションプログラム５２の取得部２０２は、ストレージマネージャ１２から送信されてくる、次のデコード候補の領域の範囲のデータを受信することで、次のデコード候補の領域の範囲のデータを取得して、ステップＳ６７に戻り、上述した処理を繰り返す。
【０２３７】
このように、ステップＳ６２乃至ステップＳ６４、およびステップＳ６８乃至ステップＳ７０の処理が実行されることにより、図１８の上から３番目の横長の四角で表される、デコード候補の領域の範囲のデータだけがダイジェスト画面生成アプリケーションプログラム５２に取得され、デコード候補の領域の範囲のコンテンツがダイジェストとして表示されることになる。
【０２３８】
ステップＳ６７において、停止指令が入ったと判定された場合、ステップＳ７１に進み、ダイジェスト画面生成アプリケーションプログラム５２は、デコーダ５１に、デコードを停止させる。ステップＳ７２において、ダイジェスト画面生成アプリケーションプログラム５２は、デコーダ５１に、復号された信号の出力を停止させることで、ダイジェストの表示を停止させて、処理は終了する。
【０２３９】
このように、HDD３４に記録されているデータだけで、ダイジェスト（要約）が表示される。光ディスク３６からのデータの読み出しを抑制するようにしたので、リソースの占有を抑制して、迅速に要約を表示させることができるようになる。
【０２４０】
使用者は、表示されたコンテンツの要約を鑑賞することができる。
【０２４１】
なお、最後のストレージ候補の領域の範囲のデータを取得した後、ステップＳ６２に戻って処理を繰り返すようにすれば、図１８の最も下の横長の四角で表されるように、デコード候補の領域の範囲のデータが繰り返し取得されて、デコード候補の領域の範囲のコンテンツがダイジェストとして繰り返し表示されることになる。
【０２４２】
また、ダイジェスト画面生成アプリケーションプログラム５２は、取得したデコード候補の領域の範囲のデータを記憶して、記憶したデータに基づいて、ダイジェストを繰り返し表示させるようにしてもよい。このようにすれば、同じデータを繰り返し読み出して供給する必要がなくなる。
【０２４３】
さらに、コンテンツのデータまたはファイルステータス情報をネットワークを介して送信するようにすることもできる。
【０２４４】
図１９は、本発明の一実施の形態の記録再生システムの他の構成を示すブロック図である。
【０２４５】
図１９で構成を示す記録再生システムは、サーバ３０１と、サーバ３０１にネットワーク３０２を介して接続されるクライアント３０３とからなる。サーバ３０１は、サーバプログラム３２１、ストレージマネージャ１２、HSM１３、コンテンツマネージャ１０１、チェンジャドライバ１０２、ジュークボックス制御部１０３、およびジュークボックス１０４から構成される。
【０２４６】
クライアント３０３は、再生プログラム３１およびビデオアウトインターフェース３２から構成される。
【０２４７】
ネットワーク３０２は、無線または有線を伝送媒体とする、ホームネットワークなどのLAN（Local Area Network）、インターネット、公衆回線、または専用回線などからなり、各種のデータ（ストリームを含む）を伝送する。
【０２４８】
サーバプログラム３２１は、ネットワーク３０２を介して送信されてくる、クライアント３０３からの要求を受信して、受信した要求をストレージマネージャ１２に供給する。また、サーバプログラム３２１は、ストレージマネージャ１２から供給されるコンテンツのデータまたはファイルステータス情報を、ネットワーク３０２を介してクライアント３０３に送信する。
【０２４９】
図１９の再生プログラム３１は、デコーダ５１、ダイジェスト画面生成アプリケーションプログラム３２２、および動画再生アプリケーションプログラム５３を含む。
【０２５０】
ダイジェスト画面生成アプリケーションプログラム３２２は、ファイルステータス情報またはコンテンツのデータの送信の要求を、ネットワーク３０２を介してサーバ３０１に送信する。また、ダイジェスト画面生成アプリケーションプログラム３２２は、ネットワーク３０２を介してサーバ３０１から送信されてくる、コンテンツのデータまたはファイルステータス情報を受信することで、コンテンツのデータまたはファイルステータス情報を取得する。
【０２５１】
ダイジェスト画面生成アプリケーションプログラム３２２は、モニタ７１に、ダイジェストの画像を表示させる。
【０２５２】
図１９で構成を示す記録再生システムによるコンテンツの一覧の表示の処理は、サーバプログラム３２１および再生プログラム３１がデータまたは情報（要求を含む）を送信または受信する点で図７のフローチャートを参照して説明した処理と異なるが、その他の点は、図７のフローチャートを参照して説明した処理と同様である。
【０２５３】
図１９で構成を示す記録再生システムによるコンテンツを再生する処理は、サーバプログラム３２１および再生プログラム３１がデータまたは情報（要求を含む）を送信または受信する点で図１２のフローチャートを参照して説明した処理と異なるが、その他の点で、図１２のフローチャートを参照して説明した処理と同様なのでその説明は省略する。
【０２５４】
この場合、コンテンツのデータまたはファイルステータス情報をネットワークを介して送信することができる。
【０２５５】
ファイルのステータスを要求するコマンドによりファイルのステータスが要求された場合、ストレージマネージャ１２は、光ディスク３６にアクセスしないで、HDD３４から拡張属性を読み出して、読み出した拡張属性に含まれる領域情報を基に、ファイルステータス情報を生成して、送信する。
【０２５６】
ファイルのそれぞれについて、光ディスク３６からのデータの読み出しを抑制するとともに、HDD３４からデータの読み出しを指令するコマンドによりデータの読み出しが要求された場合、ストレージマネージャ１２は、光ディスク３６からのデータの読み出しを抑制するとともに、HDD３４からスタブデータを読み出して、送信する。
【０２５７】
光ディスク３６およびHDD３４からデータの読み出しを指令するコマンドによりデータの読み出しが要求された場合、ストレージマネージャ１２は、光ディスク３６およびHDD３４からデータを読み出して、送信する。
【０２５８】
HDD３４に記録されていない領域への読み出しの要求によるリロードを抑制することで、高速に読み出しができる箇所のみに絞ったデータの読み出しができるようになる。HSM１３において、不要なリロードを発生させないので、リロードで使用するドライブ３５であるリソースを有効に使うことができる。
【０２５９】
図２０は、ダイジェスト画面生成アプリケーションプログラム３２２の構成の例を示すブロック図である。ダイジェスト画面生成アプリケーションプログラム３２２は、決定部３４１、送信制御部３４２、および受信制御部３４３を備える。
【０２６０】
決定部３４１は、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータと拡張属性とが記録されているHDD３４から取得したファイルステータス情報によって、HDD３４にデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定する。
【０２６１】
決定部３４１は、範囲決定部３５１を備える。範囲決定部３５１は、再生時間が予め定めた最大時間より長い場合、最大時間以下の再生時間となるように要約を構成するコンテンツの部分の範囲を決定する。例えば、範囲決定部３５１は、HDD３４にデータが記録されているコンテンツの部分のそれぞれから、予め定めた長さの時間の範囲を決定する。
【０２６２】
送信制御部３４２は、HDD３４および光ディスク３６を備えるサーバ３０１への、ネットワーク３０２を介した、ファイルステータス情報またはコンテンツのデータの要求の送信を制御する。
【０２６３】
受信制御部３４３は、ネットワーク３０２を介してサーバ３０１から送信されてくるファイルステータス情報またはコンテンツのデータの受信を制御する。受信制御部３４３は、ファイルステータス情報またはコンテンツのデータを受信することによって、ファイルステータス情報またはコンテンツのデータを取得する。
【０２６４】
次に、図２１および図２２のフローチャートを参照して、図１９で構成を示す記録再生システムによるダイジェストの表示の処理の詳細を説明する。
【０２６５】
ステップＳ３０１において、ダイジェスト画面生成アプリケーションプログラム３２２の送信制御部３４２は、ダイジェストを表示しようとするコンテンツのファイルのステータスをサーバ３０１に要求する。
【０２６６】
より具体的には、例えば、ステップＳ３０１において、送信制御部３４２は、後述する通信部４１０（図２３）に、ダイジェストを表示しようとするコンテンツのファイル名を含むコマンド（例えば、図８のコマンド）をネットワーク３０２を介してサーバ３０１宛てに送信させることにより、ファイルのステータスをサーバ３０１に要求する。
【０２６７】
ステップＳ４０１において、サーバ３０１は、クライアント３０３から送信されてきた、ファイルのステータスの要求を受信する。例えば、サーバ３０１のサーバプログラム３２１は、クライアント３０３から送信されてきたコマンドを受信させて、受信したコマンドをストレージマネージャ１２に供給する。
【０２６８】
ステップＳ４０２において、サーバ３０１のストレージマネージャ１２は、ファイルについて、拡張属性を参照して、領域のステータスを取得する。例えば、サーバ３０１のストレージマネージャ１２は、ファイルについて、HSM１３のストアデータベース１２５から、ファイル名に関連付けて格納されている、キャッシュファイルを特定するための値であるキャッシュファイルIDを読み出す。そして、ストレージマネージャ１２は、ファイルについて、HSM１３のキャッシュテーブル３８から、拡張属性を参照して、キャッシュファイルIDに対応して記録されている領域情報を読み出すことによって、領域のステータスを取得する。
【０２６９】
ステップＳ４０３において、サーバ３０１のストレージマネージャ１２は、領域のステータスを示すファイルステータス情報（例えば、図９のファイルステータス情報）を生成する。ステップＳ４０４におて、サーバプログラム３２１は、ネットワーク３０２を介して、領域のステータスを示すファイルステータス情報をクライアント３０３に送信する。
【０２７０】
ステップＳ３０２において、ダイジェスト画面生成アプリケーションプログラム３２２の受信制御部３４３は、ネットワーク３０２を介してサーバ３０１から送信されてきたファイルステータス情報の受信を制御する。すなわち、受信制御部３４３は、後述する通信部４１０に、ネットワーク３０２を介してサーバ３０１から送信されてきたファイルステータス情報を受信させて、ファイルステータス情報を取得する。
【０２７１】
ステップＳ３０３において、ダイジェスト画面生成アプリケーションプログラム３２２の決定部３４１は、変数Ｎに初期値である０を設定する。変数Ｎは、領域を特定するために用いられる。
【０２７２】
ステップＳ３０４において、決定部３４１は、取得したファイルステータス情報を基に、領域Ｎがあるか否かを判定する。
【０２７３】
ステップＳ３０４において、領域Ｎがあると判定された場合、ステップＳ３０５に進み、決定部３４１は、ファイルステータス情報から領域Ｎの情報を抽出する。ステップＳ３０５において抽出される領域Ｎの情報には、コンテンツのデータの先頭から領域Ｎの先頭までのオフセット値（バイト）を示すオフセット、領域Ｎのデータ量を示すサイズ、および領域Ｎがストア済みであるかまたはホール状態であるかを示すフラグが含まれる。
【０２７４】
ステップＳ３０６において、決定部３４１は、抽出した領域Ｎの情報に含まれるフラグに基づいて、領域Ｎがストアされているか否かを判定する。
【０２７５】
ステップＳ３０６において、領域Ｎがストアされていると判定された場合、ステップＳ３０７に進み、決定部３４１は、抽出した領域Ｎの情報に含まれるサイズに基づいて、領域Ｎのサイズは、デコードに十分な大きさであるか否かを判定する。例えば、ステップＳ３０７において、決定部３４１は、領域Ｎのサイズと、デコードに必要なデータ量を示す閾値とを比較することにより、領域Ｎのサイズが、デコードに十分な大きさであるか否かを判定する。
【０２７６】
ステップＳ３０７において、領域Ｎのサイズが、デコードに十分な大きさであると判定された場合、ステップＳ３０８に進み、決定部３４１は、領域Ｎをデコード候補に設定し、手続きは、ステップＳ３０９に進む。
【０２７７】
ステップＳ３０６において、領域Ｎがストアされていない、すなわち、ホール領域であると判定された場合、またはステップＳ３０７において、領域Ｎのサイズが、デコードに十分な大きさでないと判定された場合、ステップＳ３０８の処理はスキップされ、その領域Ｎはデコード候補とされず、手続きは、ステップＳ３０９に進む。
【０２７８】
このように、HDD３４にデータがストアされている領域であって、デコードに十分なデータ量の領域がデコード候補とされる。デコードに十分な大きさでないサイズの領域がデコード候補とされないようにすることで、データを安定して復号することができ、その結果、例えば、表示されるダイジェストの画像が乱れてしまうことが防止される。
【０２７９】
ステップＳ３０９において、決定部３４１は、変数Ｎを１だけインクリメントして、次の領域Ｎについて、ステップＳ３０４乃至ステップＳ３０９の処理を繰り返す。
【０２８０】
ステップＳ３０４において、領域Ｎがないと判定された場合、対象としているファイルの領域の全てのうち、HDD３４にデータがストアされている領域であって、デコードに十分なデータ量の領域をデコード候補としたので、ステップＳ３１０に進み、決定部３４１は、デコード候補の領域のデータで再生される時間（コンテンツの再生の時間）の総和を計算する。
【０２８１】
例えば、決定部３４１は、デコード候補の領域のデータのデータ量の総和を計算して、計算された総和を再生のビットレートの平均値で割り算することにより、再生される時間（コンテンツの再生の時間）の総和を計算する。
【０２８２】
なお、領域情報に、その領域の再生の時間を含め、これから、再生される時間の総和を計算するようにしてもよい。
【０２８３】
ステップＳ３１１において、決定部３４１は、計算された時間の総和が、予め定めた最大時間より長いか否かを判定する。最大時間は、任意に決めることができるが、例えば、１分とすることができる。
【０２８４】
ステップＳ３１１において、計算された時間の総和が、予め定めた最大時間より長いと判定された場合、ステップＳ３１２に進み、決定部３４１の範囲決定部３５１は、ステップＳ６１と同様の処理で、最大時間に収まるように、デコード候補の領域の範囲を減らし、手続きは、ステップＳ３１３に進む。
【０２８５】
ステップＳ３１１において、計算された時間の総和が、予め定めた最大時間より長くないと判定された場合、ステップＳ３１２はスキップされ、手続きは、ステップＳ３１３に進む。この場合、デコード候補の領域の全体が、ダイジェストとして再生される範囲とされる。
【０２８６】
ステップＳ３１３において、ダイジェスト画面生成アプリケーションプログラム３２２の送信制御部３４２は、ネットワーク３０２を介して、サーバ３０１に、最初のデコード候補の領域の範囲のデータを要求する。
【０２８７】
例えば、ステップＳ３１３において、送信制御部３４２は、最初のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図１０または図１３に例示される方式のコマンドを、後述する通信部４１０に、ネットワーク３０２を介してサーバ３０１宛てに送信させることにより、最初のデコード候補の領域の範囲のデータの提供をサーバ３０１に要求する。
【０２８８】
ステップＳ４０５において、サーバ３０１は、クライアント３０３からの、最初のデコード候補の領域の範囲のデータの提供の要求を受信する。ステップＳ４０６において、サーバ３０１は、リードアクセスの処理を実行する。リードアクセスの処理は、図１４で説明した処理と同様なのでその説明は省略する。
【０２８９】
ステップＳ４０７において、サーバ３０１は、リードアクセスの処理により読み出された、最初のデコード候補の領域の範囲のデータを、ネットワーク３０２を介して、クライアント３０３に送信する。
【０２９０】
ステップＳ３１４において、ダイジェスト画面生成アプリケーションプログラム３２２の受信制御部３４３は、ネットワーク３０２を介してサーバ３０１から送信されてくる、最初のデコード候補の領域の範囲のデータの受信を制御する。受信制御部３４３は、後述する通信部４１０に、最初のデコード候補の領域の範囲のデータを受信させて、最初のデコード候補の領域の範囲のデータを取得する。ステップＳ３１５において、ダイジェスト画面生成アプリケーションプログラム３２２は、デコーダ５１に、取得したデータのデコードを開始させる。ステップＳ３１６において、ダイジェスト画面生成アプリケーションプログラム３２２は、デコーダ５１に、ビデオアウトインターフェース３２を介して復号された信号を出力させることで、ビデオアウトインターフェース３２に接続されている機器にダイジェストの表示を開始させる。
【０２９１】
ステップＳ３１７において、ダイジェスト画面生成アプリケーションプログラム３２２は、ダイジェストの表示の停止を指令する停止指令が入ったか否かを判定し、停止指令が入っていないと判定された場合、ステップＳ３１８に進む。例えば、ダイジェスト画面生成アプリケーションプログラム３２２は、コンテンツの再生の指令を受け取ったり、または、他の処理の実行が指令されたりなどした場合、ダイジェストの表示の停止を指令する停止指令が入ったと判定する。
【０２９２】
ステップＳ３１８において、ダイジェスト画面生成アプリケーションプログラム３２２の送信制御部３４２は、ネットワーク３０２を介して、サーバ３０１に、次のデコード候補の領域の範囲のデータを要求する。
【０２９３】
例えば、ステップＳ３１８において、送信制御部３４２は、後述する通信部４１０に、次のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図１０または図１３に例示される方式のコマンドを、ネットワーク３０２を介してサーバ３０１宛てに送信させることにより、次のデコード候補の領域の範囲のデータの提供をサーバ３０１に要求する。
【０２９４】
ステップＳ４０８において、サーバ３０１は、クライアント３０３からの、次のデコード候補の領域の範囲のデータの提供の要求を受信する。ステップＳ４０９において、サーバ３０１は、リードアクセスの処理を実行する。リードアクセスの処理は、図１４で説明した処理と同様なのでその説明は省略する。
【０２９５】
ステップＳ４１０において、サーバ３０１は、リードアクセスの処理により読み出された、次のデコード候補の領域の範囲のデータを、ネットワーク３０２を介して、クライアント３０３に送信する。
【０２９６】
ステップＳ３１９において、ダイジェスト画面生成アプリケーションプログラム３２２の受信制御部３４３は、ネットワーク３０２を介してサーバ３０１から送信されてくる、次のデコード候補の領域の範囲のデータの受信を制御する。受信制御部３４３は、後述する通信部４１０に、次のデコード候補の領域の範囲のデータを受信させることで、次のデコード候補の領域の範囲のデータを取得する。そして、手続きは、ステップＳ３１７に戻り、上述した処理を繰り返す。
【０２９７】
このように、ステップＳ３１３乃至ステップＳ３１４、およびステップＳ３１８乃至ステップＳ３１９の処理が実行されることにより、デコード候補の領域の範囲のデータだけがダイジェスト画面生成アプリケーションプログラム３２２に取得され、デコード候補の領域の範囲のコンテンツがダイジェストとして表示されることになる。
【０２９８】
ステップＳ３１７において、停止指令が入ったと判定された場合、ステップＳ３２０に進み、ダイジェスト画面生成アプリケーションプログラム３２２は、デコーダ５１に、デコードを停止させる。ステップＳ３２１において、ダイジェスト画面生成アプリケーションプログラム３２２は、デコーダ５１に、復号された信号の出力を停止させることで、ダイジェストの表示を停止させて、処理は終了する。
【０２９９】
以上のように、HDD３４に記録されているデータだけが、ネットワーク３０２を介してサーバ３０１からクライアント３０３に送信されて、クライアント３０３は送信されてきたデータによってダイジェスト（要約）を表示する。サーバ３０１において光ディスク３６からのデータの読み出しを抑制するようにしたので、リソースの占有を抑制して、迅速に要約を表示させることができるようになる。
【０３００】
使用者は、表示されたコンテンツの要約を鑑賞することができる。
【０３０１】
なお、最後のストレージ候補の領域の範囲のデータを取得した後、ステップＳ３１３に戻って処理を繰り返すようにすれば、図１８の最も下の横長の四角で表されるように、デコード候補の領域の範囲のデータが繰り返し取得されて、デコード候補の領域の範囲のコンテンツがダイジェストとして繰り返し表示されることになる。
【０３０２】
また、ダイジェスト画面生成アプリケーションプログラム３２２は、取得した（受信した）デコード候補の領域の範囲のデータを記憶して、記憶したデータに基づいて、ダイジェストを繰り返し表示させるようにしてもよい。このようにすれば、同じデータを繰り返し送信し、受信する必要がなくなる。
【０３０３】
なお、HDD３４に代えて、半導体メモリなどの他の高速な記録媒体を用いるようにしてもよく、また、光ディスク３６に代えて、磁気ディスクまたは磁気テープなどの記録容量当たりの価格がより安い他の記録媒体を用いるようにしてもよい。
【０３０４】
また、コンテンツは、画像または音声に限られるものではなく、時間的に連続的に使用される使用者にとって有意なデータであればよく、例えば、ゲームに用いるデータ、時間の経過に対応して計測されたデータ、または時間の経過に対応して計算されたシミュレーションの結果のデータなどであってもよい。
【０３０５】
なお、アプリケーションプログラムのそれぞれに通常モードまたはエスケープリロードモードのいずれか一方を対応付けるようにしてもよい。この場合、例えば、キャッシュテーブル３８に、アプリケーションプログラムIDと通常モードまたはエスケープリロードモードの何れか一方を示すフラグとを対応付けて格納し、ストレージマネージャ１２は、アプリケーションプログラムからの要求に含まれるアプリケーションプログラムIDに対応付けられたフラグを参照して、通常モードまたはエスケープリロードモードのいずれかでコンテンツのデータを読み出す。
【０３０６】
また、コンテンツのそれぞれに通常モードまたはエスケープリロードモードのいずれか一方を対応付けるようにしてもよい。この場合、キャッシュテーブル３８に、キャッシュファイルIDと通常モードまたはエスケープリロードモードの何れか一方を示すフラグとを対応付けて格納し、ストレージマネージャ１２は、通常モードまたはエスケープリロードモードの何れか一方を示すフラグを参照して、通常モードまたはエスケープリロードモードのいずれかでコンテンツのデータを読み出す。
【０３０７】
このように、コンテンツの部分のデータを取得するようにした場合には、要約を表示させることができる。また、前記第２の記録媒体から取得した前記データ属性情報によって、第２の記録媒体にデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定し、決定したコンテンツの部分のデータを第２の記録媒体から取得するようにした場合には、リソースの占有を抑制して、迅速に要約を表示させることができる。
【０３０８】
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
【０３０９】
図２３は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU（Central Processing Unit）４０１は、ROM（Read Only Memory）４０２、記憶部４０８、または記憶部４０９に記憶されているプログラムに従って各種の処理を実行する。RAM（Random Access Memory）４０３には、CPU４０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU４０１、ROM４０２、およびRAM４０３は、バス４０４により相互に接続されている。
【０３１０】
なお、CPU４０１として、”Ｃｅｌｌ誕生”、日経エレクトロニクス、日経BP社、２００５年２月２８日、８９頁乃至１１７頁に記載されているＣｅｌｌを採用することができる。
【０３１１】
CPU４０１にはまた、バス４０４を介して入出力インターフェース４０５が接続されている。入出力インターフェース４０５には、キーボード、マウス、マイクロホンなどよりなる入力部４０６、ディスプレイ、スピーカなどよりなる出力部４０７が接続されている。CPU４０１は、入力部４０６から入力される指令に対応して各種の処理を実行する。そして、CPU４０１は、処理の結果を出力部４０７に出力する。
【０３１２】
入出力インターフェース４０５に接続されている記憶部４０８は、例えば、ハードディスクからなり、CPU４０１が実行するプログラムや各種のデータを記録する。記憶部４０９は、例えば光ディスクを駆動するドライブなどからなり、各種のデータやCPU４０１が実行するプログラムを記録する。通信部４１０は、インターネットやLANなどのネットワークを介して外部の装置と通信する。
【０３１３】
また、通信部４１０を介してプログラムを取得し、記憶部４０８または記憶部４０９に記憶してもよい。
【０３１４】
例えば、記録再生システム１としてのパーソナルコンピュータにおける、記憶部４０８は、例えばHDD３４に対応し、記憶部４０９は、例えばジュークボックス１０４に対応する。
【０３１５】
例えば、サーバ３０１としてのパーソナルコンピュータにおける、記憶部４０８は、例えばHDD３４に対応し、記憶部４０９は、例えばジュークボックス１０４に対応する。通信部４１０は、インターネットやLANなどのネットワーク３０２を介してクライアント３０３などの外部の装置と通信する。
【０３１６】
例えば、クライアント３０３としてのパーソナルコンピュータにおいて、記憶部４０９は、省略することができる。
【０３１７】
入出力インターフェース４０５に接続されているドライブ４１１は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア４１２が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部４０８または記憶部４０９に転送され、記録される。
【０３１８】
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
【０３１９】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図２３に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む）、光磁気ディスク（ＭＤ（Mini-Disc）を含む）、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア４１２、または、プログラムが一時的もしくは永続的に格納されるROM４０２や、記憶部４０８を構成するハードディスクなどにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部４１０を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０３２０】
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０３２１】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【０３２２】
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
【図面の簡単な説明】
【０３２３】
【図１】本発明の一実施の形態の記録再生システムの構成を示すブロック図である。
【図２】記録再生システムのより詳細な構成を示すブロック図である。
【図３】記録再生システムにおいて用いる情報を説明する図である。
【図４】HDDに記録されるキャッシュファイルを説明する図である。
【図５】領域および拡張属性における領域情報について説明する図である。
【図６】スタブ領域のスタブデータの構成を示す図である。
【図７】コンテンツの一覧の表示の処理を説明するフローチャートである。
【図８】ファイルのステータスを要求するコマンドの一例を示す図である。
【図９】ファイルステータス情報の一例を示す図である。
【図１０】光ディスクからのデータの読み出しを抑制するとともに、HDDからデータの読み出しを指令するコマンドの一例を示す図である。
【図１１】コンテンツ一覧の例を示す図である。
【図１２】コンテンツを再生する処理を説明するフローチャートである。
【図１３】ディスクおよびHDDからデータの読み出しを指令するコマンドの一例を示す図である。
【図１４】リードアクセスの処理の詳細を説明するフローチャートである。
【図１５】ReadA1Block(flag,offset,*buf)の処理の詳細を説明するフローチャートである。
【図１６】ダイジェスト画面生成アプリケーションプログラムの構成の例を示すブロック図である。
【図１７】ダイジェストの表示の処理を説明するフローチャートである。
【図１８】デコード候補の領域の例を示す図である。
【図１９】本発明の一実施の形態の記録再生システムの他の構成を示すブロック図である。
【図２０】ダイジェスト画面生成アプリケーションプログラムの構成の例を示すブロック図である。
【図２１】ダイジェストの表示の処理を説明するフローチャートである。
【図２２】ダイジェストの表示の処理を説明するフローチャートである。
【図２３】パーソナルコンピュータの構成の例を示すブロック図である。
【符号の説明】
【０３２４】
１  記録再生システム，  １１  ビデオプレーヤ，  １２  ストレージマネージャ，  １３  HSM，  ３１  再生プログラム，  ３３  マイグレーションファイルシステム，  ３４  HDD  ，  ３５  ドライブ，  ３６−１乃至３６−Ｎまたは３６  光ディスク，  ３８  キャッシュテーブル，  ３９  ボリウムテーブル，  ５１  デコーダ，  ５２  ダイジェスト画面生成アプリケーションプログラム，  ５３  動画再生アプリケーションプログラム，  ２０１  決定部，  ２０２  取得部，  ２１１  範囲決定部，  ３０１  サーバ，  ３０２  ネットワーク，  ３０３  クライアント，  ３２２  ダイジェスト画面生成アプリケーションプログラム，  ３４１  決定部，  ３４２  送信制御部，  ３４３  受信制御部，  ３５１  範囲決定部，  ４０１  ＣＰＵ，  ４０２  ＲＯＭ，  ４０３  ＲＡＭ，  ４０８  記憶部，  ４０９  記憶部，  ４１２  リムーバブルメディア
【図１】
2007080148.tif 000003
【図２】
2007080148.tif 000004
【図３】
2007080148.tif 000005
【図４】
2007080148.tif 000006
【図５】
2007080148.tif 000007
【図６】
2007080148.tif 000008
【図７】
2007080148.tif 000009
【図８】
2007080148.tif 000010
【図９】
2007080148.tif 000011
【図１０】
2007080148.tif 000012
【図１１】
2007080148.tif 000013
【図１２】
2007080148.tif 000014
【図１３】
2007080148.tif 000015
【図１４】
2007080148.tif 000016
【図１５】
2007080148.tif 000017
【図１６】
2007080148.tif 000018
【図１７】
2007080148.tif 000019
【図１８】
2007080148.tif 000020
【図１９】
2007080148.tif 000021
【図２０】
2007080148.tif 000022
【図２１】
2007080148.tif 000023
【図２２】
2007080148.tif 000024
【図２３】
2007080148.tif 000025