JP2007080148A - 表示制御装置および方法、並びにプログラム - Google Patents

表示制御装置および方法、並びにプログラム Download PDF

Info

Publication number
JP2007080148A
JP2007080148A JP2005269935A JP2005269935A JP2007080148A JP 2007080148 A JP2007080148 A JP 2007080148A JP 2005269935 A JP2005269935 A JP 2005269935A JP 2005269935 A JP2005269935 A JP 2005269935A JP 2007080148 A JP2007080148 A JP 2007080148A
Authority
JP
Japan
Prior art keywords
data
content
area
recording medium
recorded
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2005269935A
Other languages
English (en)
Inventor
Masashi Saito
応志 齊藤
Masaaki Isozaki
正明 五十崎
Masaaki Fukuda
昌昭 福田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sony Corp
Original Assignee
Sony Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sony Corp filed Critical Sony Corp
Priority to JP2005269935A priority Critical patent/JP2007080148A/ja
Publication of JP2007080148A publication Critical patent/JP2007080148A/ja
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Indexing, Searching, Synchronizing, And The Amount Of Synchronization Travel Of Record Carriers (AREA)
  • Management Or Editing Of Information On Record Carriers (AREA)

Abstract

【課題】リソースの占有を抑制して、迅速に要約を表示させる。
【解決手段】 光ディスクは、コンテンツの全体のデータを記録する。HDDは、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータと、部分のデータの属性に関するデータ属性情報とを記録する。決定部201は、HDDから取得したデータ属性情報によって、HDDにデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定する。取得部202、決定したコンテンツの部分のデータをHDDから取得する。本発明は、コンテンツを記録再生する記録再生システムに適用できる。
【選択図】図19

Description

本発明は表示制御装置および方法、並びにプログラムに関し、特に、コンテンツの要約の表示を制御する表示制御装置および方法、並びにプログラムに関する。
複数の記録媒体に、コンテンツのデータを記録し、記録媒体のドライブへの装着を自動化することで、多量のコンテンツを簡単に取り扱えるようにした記録再生システムがある。
記録媒体のドライブへの装着には一定の時間がかかり、その時間だけ、記録媒体からの読み出しが待たされることになる。
これに対応するために、HSM(Hierarchical Storage Management:階層型記憶域管理)ソフトウェアの使用が考えられる。HSMソフトウェアは、ハードディスクなどの高速な補助記録装置に保存されているファイルを、より低速で安価な記録媒体に自動的に移動する管理を行う(例えば、特許文献1参照)。
HSMにおいては、コンピュータのハードディスク上に存在するファイルが、より経済的なリムーバブルメディア(例えば、DTF(Digital Tape Format)の磁気テープなどの記録媒体)に移動され、ハードディスクの見かけの記録容量が大きくされる。リムーバブルメディアに移動されたファイルを利用する必要が生じた場合、リムーバブルメディアに移動されたファイルが再びハードディスクに戻される。
ここで、ハードディスク上のファイルをリムーバブルメディアにコピーして、ハードディスク上にある元のファイルを縮小することは、マイグレーション(Migration)と称され、マイグレーションされたファイルをハードディスク上に復元することは、リロードと称される。
特開2003−296151号公報
HSMを含めたキャッシュシステムにおいて、キャッシュミスしたアクセスがあった場合、キャッシュ元の記録媒体から、キャッシュ先の記録媒体へのデータの複写が実行されるが、このデータの複写に時間がかかり、また複写に、リソースの多くが消費されてしまう。
キャッシュ先となるハードディスク上に、存在しないファイルまたはファイルの一部に対して読み出しアクセスがあった場合、キャッシュ元となるリムーバブルメディアから、ファイルがリロードされる。このリロードの処理では、特定のリムーバブルメディアを選択し、選択したリムーバブルメディアをドライブにセットするのに必要な時間や、低速なリムーバブルメディアからの読み出しに必要な時間などといったタイムロスが発生する。
ビデオサーバを想定すると、クライアントにおいて、コンテンツの一覧のマルチ画面を表示する場合、複数のファイルに対して、読み出しアクセスの処理が生じてしまい、それらのファイルに対してリロードの処理が実行されてしまうと、ハードウェアリソースであるドライブが長時間占有されてしまうことになる。さらに、マルチ画面の作成においても、リロードの待ち時間が生じてしまうことになる。この場合、マルチ画面の表示中に、別のクライアントからの再生要求する受け付けることができなくなることがある。
マルチ画面を表示する目的は、複数のコンテンツのそれぞれの内容をより速く使用者に認識させることにあり、これにより、所望のコンテンツを迅速に選択できるようにするものである。このマルチ画面の表示において、動画ファイルの本編の全てを読み出す必要はない。また、キャッシュミスした場合に、ハードウェアリソースであるドライブを長時間占有し、リロードに要する時間だけ待つよりも、ハードディスクに既に存在しているデータだけを用いて繰り返しマルチ画面を再生し表示させる方が効率的であると言える。
本発明は、このような状況に鑑みてなされたものであり、リソースの占有を抑制して、迅速に要約を表示させることができるようにするものである。
本発明の一側面の表示制御装置は、第1の記録媒体に全体のデータが記録されるとともに、第2の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御装置であって、前記第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定する決定手段と、決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得する取得手段とを備える。
前記決定手段は、再生時間が予め定めた最大時間より長い場合、前記最大時間以下の再生時間となるように前記要約を構成する前記コンテンツの部分の範囲を決定するようにすることができる。
前記決定手段は、前記第2の記録媒体にデータが記録されている前記コンテンツの部分のそれぞれから、予め定めた長さの時間の前記範囲を決定するようにすることができる。
前記決定手段は、復号に必要なデータ量より少ないデータ量の前記コンテンツの部分が前記要約を構成しないように、前記要約を構成する前記コンテンツの部分を決定するようにすることができる。
前記第1の記録媒体または前記第2の記録媒体から、前記コンテンツのデータまたは前記データ属性情報を読み出す読み出し手段をさらに設けることができる。
前記第1の記録媒体および前記第2の記録媒体を備えるサーバに、ネットワークを介して、前記データ属性情報または前記コンテンツのデータの要求を送信する送信手段をさらに設け、前記取得手段は、前記ネットワークを介して前記サーバから送信されてくる前記データ属性情報または前記コンテンツのデータを受信することで、前記データ属性情報または前記コンテンツのデータを取得するようにすることができる。
本発明の一側面の表示制御方法は、第1の記録媒体に全体のデータが記録されるとともに、第2の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御方法であって、前記第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得するステップを含む。
本発明の一側面のプログラムは、第1の記録媒体に全体のデータが記録されるとともに、第2の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御処理を、コンピュータに行わせるプログラムにであって、前記第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得するステップを含む。
本発明の一側面においては、第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分が決定され、決定した前記コンテンツの部分のデータが前記第2の記録媒体から取得される。
以上のように、本発明の一側面によれば、要約を表示させることができる。
また、本発明の一側面によれば、リソースの占有を抑制して、迅速に要約を表示させることができる。
以下に本発明の実施の形態を説明するが、本発明の構成要件と、発明の詳細な説明に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、発明の詳細な説明に記載されていることを確認するためのものである。従って、発明の詳細な説明中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が構成要件に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外の構成要件には対応しないものであることを意味するものでもない。
本発明の一側面の表示制御装置は、第1の記録媒体(例えば、図2の光ディスク36)に全体のデータが記録されるとともに、第2の記録媒体(例えば、図2のHDD34)に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御装置であって、前記第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定する決定手段(例えば、図19の決定部201)と、決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得する取得手段(例えば、図19の取得部202)とを備える。
前記第1の記録媒体または前記第2の記録媒体から、前記コンテンツのデータまたは前記データ属性情報を読み出す読み出し手段(例えば、図2のストレージマネージャ12)をさらに設けることができる。
前記第1の記録媒体および前記第2の記録媒体を備えるサーバ(例えば、図19のサーバ301)に、ネットワークを介して、前記データ属性情報または前記コンテンツのデータの要求を送信する送信手段(例えば、図20の送信制御部342)をさらに設け、前記取得手段(例えば、図20の受信制御部343)は、前記ネットワークを介して前記サーバから送信されてくる前記データ属性情報または前記コンテンツのデータを受信することで、前記データ属性情報または前記コンテンツのデータを取得するようにすることができる。
本発明の一側面の表示制御方法またはプログラムは、第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し(例えば、図23のステップS54乃至ステップS61)、決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得する(例えば、図23のステップS64またはステップS70)ステップを含む。
例えば、マルチ画面などのダイジェスト画像を作成するアプリケーションにおいては、ハードディスクに存在しない部分にアクセスさせないようにするため、予めその部分を通知する仕組みを提供し、さらにアプリケーションがハードディスクに存在しない部分にアクセスしたとしても、キャッシュ元からの複写を行わないようにしたものである。
図1は、本発明の一実施の形態の記録再生システム1の構成を示すブロック図である。記録再生システム1は、ビデオプレーヤ11、ストレージマネージャ12、およびHSM13を含むように構成されている。
ビデオプレーヤ11は、ストレージマネージャ12を介して、HSM13から供給されたストリーム(コンテンツのデータ)を基に、コンテンツを再生する。例えば、コンテンツは、画像または音声である。例えば、コンテンツのデータは、MPEG(Moving Pictures Experts Group)方式で符号化されている。
また、ビデオプレーヤ11は、使用者とのインターフェースの機能を有し、使用者からの指示を取得するか、使用者に記録再生システム1に関する各種の情報を通知する。
ストレージマネージャ12は、HSM13によって管理されているコンテンツをビデオプレーヤ11に提供する。ストレージマネージャ12は、ビデオプレーヤ11からの要求を基に、HSM13からのコンテンツのデータの読み出しを制御する。
HSM13は、記録媒体へのコンテンツのデータの階層的な記録を管理する(階層構造の記録媒体へのコンテンツのデータの記録を管理するとも言える)。HSM13は、ストレージマネージャ12の制御の基に、記録媒体に記録しているデータをストリームデータとして、ストレージマネージャ12に供給する。
ビデオプレーヤ11は、再生プログラム31およびビデオアウトインターフェース32を含む。再生プログラム31は、ストレージマネージャ12に、リードコマンドを発行するか、ステータスを要求する。ここで、ステータスとは、コンテンツの部分の記録の状態を言う。また、再生プログラム31は、ストレージマネージャ12を介して、HSM13から供給された、ステータスを示すファイルステータス情報を基に、ストレージマネージャ12にストリームを要求する。ファイルステータス情報の詳細は後述する。
再生プログラム31は、ストレージマネージャ12を介して、HSM13から供給されたストリームデータまたはダミーデータを基に、コンテンツを再生し、ビデオアウトインターフェース32を介して、接続されている機器にコンテンツを表示させる。
再生プログラム31は、デコーダ51、ダイジェスト画面生成アプリケーションプログラム52、および動画再生アプリケーションプログラム53を含む。デコーダ51は、ストレージマネージャ12を介して、HSM13から供給されたストリームデータを復号する。ダイジェスト画面生成アプリケーションプログラム52は、複数のコンテンツのそれぞれについて、ダイジェストの画像を表示させる。例えば、ダイジェスト画面生成アプリケーションプログラム52は、複数のコンテンツのそれぞれについて、マルチ画面で、ダイジェスト用の短いシーン(動画)からなるコンテンツ一覧を表示させる。より詳しく説明すれば、例えば、ダイジェスト画面生成アプリケーションプログラム52は、ストレージマネージャ12を介して、HSM13から供給されたストリームデータまたはダミーデータを基に、コンテンツの一覧を生成して、ビデオアウトインターフェース32を介して、接続されている機器にコンテンツの一覧を表示させる。
動画再生アプリケーションプログラム53は、コンテンツである動画像を再生する。動画再生アプリケーションプログラム53は、ストレージマネージャ12を介して、HSM13から供給されたストリームデータを基に、コンテンツを再生して、ビデオアウトインターフェース32を介して、接続されている機器にコンテンツを表示させる。
HSM13は、マイグレーションファイルシステム33、HDD34、ドライブ35、光ディスク36−1乃至光ディスク36−N、セレクタ37、キャッシュテーブル38、ボリウムテーブル39を含む。
マイグレーションファイルシステム33は、HDD34または光ディスク36−1乃至光ディスク36−Nのいずれかからデータまたは各種の情報を読み出す処理を制御する。マイグレーションファイルシステム33は、光ディスク36−1乃至光ディスク36−NのいずれかからHDD34にデータを読み出す(リロードする)処理を制御し、HDD34から光ディスク36−1乃至光ディスク36−Nのいずれかにデータを書き込む処理を制御する。
HDD34は、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータまたはコンテンツに関係する情報を記録している記録媒体の一例である。HSM13は、HDD34に記録されているデータをストリームデータとして読み出すか、また、HDD34に記録されているコンテンツに関係する情報を読み出す。HDD34から読み出されたストリームデータまたはコンテンツに関係する情報は、セレクタ37を介して、マイグレーションファイルシステム33に供給される。
ドライブ35は、光ディスク36−1乃至光ディスク36−Nのいずれかを装着し、装着されている光ディスク36−1乃至光ディスク36−Nのいずれかに記録されているデータをストリームデータとして読み出す。ドライブ35によって読み出されたストリームデータは、HDD34にリロードされるか、セレクタ37を介して、マイグレーションファイルシステム33に供給される。
光ディスク36−1乃至光ディスク36−Nは、コンテンツの全体のデータを記録している記録媒体の一例であり、例えば、MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)、またはCD(Compact Disc)などである。
以下、光ディスク36−1乃至光ディスク36−Nを個々に区別する必要がない場合、単に、光ディスク36と称する。
セレクタ37は、HDD34から読み出されたストリームデータ若しくはコンテンツに関係する情報をマイグレーションファイルシステム33に供給させるか、またはドライブ35によって光ディスク36−1乃至光ディスク36−Nのいずれかから読み出されたストリームデータをHDD34に供給させるかいずれか一方を選択する。
または、セレクタ37は、HDD34から読み出されたストリームデータ若しくはコンテンツに関係する情報、またはドライブ35によって光ディスク36−1乃至光ディスク36−Nのいずれかから読み出されたストリームデータのいずれか一方を選択するようにしてもよい。この場合、HDD34から読み出されたストリームデータ若しくはコンテンツに関係する情報、またはドライブ35によって光ディスク36−1乃至光ディスク36−Nのいずれかから読み出されたストリームデータの選択されたいずれか一方は、マイグレーションファイルシステム33に供給される。
HSM13は、ファイルへのアクセスを監視し、アクセス(要求)に応じて、光ディスク36−1乃至光ディスク36−Nのいずれかを選択する。HSM13は、選択した光ディスク36−1乃至光ディスク36−Nのいずれかをドライブ35に装着させて、光ディスク36−1乃至光ディスク36−Nのいずれかに記録されているコンテンツのデータをHDD34にリロードさせる。
キャッシュテーブル38は、コンテンツに関係する情報を記録する。キャッシュテーブル38は、ストレージマネージャ12からの要求に応じて、コンテンツに関係する情報を、ステータスとして、ストレージマネージャ12に供給する。
ボリウムテーブル39は、光ディスク36−1乃至光ディスク36−Nを管理するための情報を格納する。
実際には、キャッシュテーブル38およびボリウムテーブル39は、HDD34に構築される。
図2は、記録再生システム1のより詳細な構成を示すブロック図である。記録再生システム1は、ビデオプレーヤ11、ストレージマネージャ12、HSM13、コンテンツマネージャ101、チェンジャドライバ102、ジュークボックス制御部103、およびジュークボックス104から構成される。
ビデオプレーヤ11は、ストリームまたはダミーデータの復号により得られた出力画像信号および音声信号(図示せず)をモニタ71に供給する。モニタ71は、出力画像信号を基にして、画像を表示すると共に、供給された音声信号を基にして、音声を出力する。
コンテンツマネージャ101は、記録再生システム1に記録されているコンテンツの内容を管理し、コンテンツの内容を検索する。コンテンツマネージャ101は、コンテンツに関する各種の情報の記録しているコンテンツデータベース(DB)121からのコンテンツに関する情報の読み出しを制御する。
図3で示されるように、コンテンツデータベース121には、コンテンツに関する情報として、コンテンツに関連するファイルの情報(例えば、ファイル名、パス名など)、コンテンツの内容および付加情報(例えば、コンテンツの名前、コンテンツのジャンルなど)、コンテンツの圧縮形式(方式)、再生時間、およびインデックス情報(例えば、コンテンツにおけるインデックスの位置など)、並びにアクセス可能なユーザ(使用者)のユーザ情報(例えば、使用者の名前、パスワードなど)などが記録される。
ストレージマネージャ12は、HSM13を上位から制御する。すなわち、ストレージマネージャ12は、ビデオプレーヤ11からの要求に基づいて、HSM13を制御する。ストレージマネージャ12には、システムマネージャ122およびファイルI/Oマネージャ123が設けられている。
システムマネージャ122は、ストレージ制御関連のシステムを設定し、システムログを記録し、エラーログを管理し、メンテナンス処理を実行する。ファイルI/Oマネージャ123は、ビデオプレーヤ11からのファイルの読み出しの要求を受け付ける。ファイルI/Oマネージャ123は、HDD34に記録されているコンテンツのファイルの、例えば、画像コンテンツまたは音楽コンテンツの一部分である、指定された一部分のデータをスタブデータとして保持するスタブファイル(状態)への変換を指示する。ファイルI/Oマネージャ123は、光ディスク36からHDD34へのデータの読み出し(リロード)の処理の中断または再開を指示する。さらに、ファイルI/Oマネージャ123は、HDD34から光ディスク36へのデータの書き込みの処理の中断または再開を指示する。
HSM13は、HDD34、ドライブ35、光ディスク36、ジュークシステム128、ディスクスロット130、およびピッカー131を仮想ストレージ化し、HDD34および光ディスク36によるコンテンツのデータの階層的な記録を制御する。HSM13は、マイグレーションファイルシステム33、ストレージサーバ124、ストアデータベース(DB)125、メディアサーバ126、およびボリウムデータベース(DB)127を含むように構成される。
マイグレーションファイルシステム33は、HSM13のキャッシュテーブル38に管理されているファイルの拡張属性を管理し、拡張属性を書き換える。マイグレーションファイルシステム33は、HSM13に管理されているファイルに対するアクセスイベントを管理する。マイグレーションファイルシステム33は、光ディスク36からHDD34にデータを読み出す処理を制御し、HDD34から光ディスク36にデータを書き込む処理を制御する。
ストレージサーバ124は、光ディスク36からHDD34にデータに読み出すか、または、HDD34から光ディスク36にデータを書き込む。また、ストレージサーバ124は、HDD34に記録されている、コンテンツのデータを格納するキャッシュファイルに関する情報のストアデータベース125への記録およびキャッシュファイルに関する情報のストアデータベース125からの読み出しを管理する。また、ストレージサーバ124は、コンテンツのデータの全体と、そのデータが記録されている光ディスク36とのリンク情報を管理する。
ストアデータベース125は、コンテンツのデータを格納するキャッシュファイルであって、HDD34に記録されているキャッシュファイルに関する情報を記録する。
図3で示されるように、ストアデータベース125には、HDD34に記録されているキャッシュファイル名と、キャッシュファイルを特定するための値であるキャッシュファイルIDとの関連付けが格納される。また、ストアデータベース125には、キャッシュファイルが書き込まれた時間またはキャッシュファイルが最後にアクセスされた時間を示すキャッシュファイルデート情報、並びに全体のデータが保存されている光ディスク36を特定するボリウムIDが記録されている。さらに、ストアデータベース125には、ジュークボックス104内の各光ディスク36の空き容量が記録される。
メディアサーバ126は、それぞれのディスクスロット130に格納されている光ディスク36を管理する。メディアサーバ126は、チェンジャドライバ102に対し、指定された光ディスク36のドライブ35への装着(マウント)を要求する。また、メディアサーバ126は、チェンジャドライバ102に対し、ドライブ35に装着されている光ディスク36のディスクスロット130への格納(アンマウント)を要求する。
メディアサーバ126に設けられているボリウムデータベース127は、光ディスク36に関係する情報を格納する。なお、ボリウムデータベース127は、図1のボリウムテーブル39に対応する。
図3で示されるように、ボリウムデータベース127には、各光ディスク36の生ディスク状態での記録容量、並びに各光ディスク36のメディアとしての種類(MO(Magneto-Optical disk)、DVD(Digital Versatile Disc)+R、またはDVD+RWなど)と書き込み専用または読み書き可能などの属性が記録される。また、ボリウムデータベース127には、ジュークボックス104内の各ディスクスロット130に格納されている光ディスク36のボリウムID、およびジュークボックス104に搭載されているドライブ35の使用状況が記録される。
チェンジャドライバ102は、ドライブ35を制御し、ジュークボックス制御部103とHSM13とのインターフェースの機能を有する。
ジュークボックス制御部103は、ジュークシステム128およびジュークサーボ169を含む。ジュークシステム128は、ドライブ35、光ディスク36、ディスクスロット130、およびピッカー131からなるジュークボックス104を制御する。ジュークサーボ169は、ジュークボックス104を駆動する。
ジュークシステム128は、ドライブ35への光ディスク36の着脱を制御する。ジュークシステム128は、複数の光ディスク36のそれぞれを格納するディスクスロット130からいずれかの光ディスク36をピッカー131に選択させる。ピッカー131は、ジュークシステム128の制御の基に、選択した光ディスク36を搬送し、ドライブ35に装着させる。また、ピッカー131は、ジュークシステム128の制御の基に、ドライブ35から取り出された光ディスク36を搬送して、いずれかのディスクスロット130に格納させる。
なお、コンテンツデータベース121、ストアデータベース125、およびボリウムデータベース127のそれぞれに記録されているデータを、1つのデータベースに記録するようにしてもよい。
また、図3で示されるように、コンテンツの拡張属性として、キャッシュファイルにおけるコンテンツの部分についての領域情報、コンテンツのどの部分をキャッシュファイルとしてHDD34に記録するかのヒントを示すヒント情報、およびキャッシュファイルIDがマイグレーションファイルシステム33のキャッシュテーブル38に記録される。
より詳細には、領域情報は、キャッシュファイルにおけるコンテンツの部分についての、コンテンツのデータの先頭からその部分の先頭までのオフセット値(バイト)を示すオフセット、コンテンツの部分のデータ量を示すサイズ、および、詳細は後述するが、コンテンツの部分がストア済みであるかまたはホール状態であるかを示すフラグを含む。また、ヒント情報は、コンテンツのどの部分をキャッシュファイルとしてHDD34に記録するかを示し、コンテンツのデータの先頭からその部分の先頭までのオフセット値(バイト)を示すヒントオフセット、コンテンツの部分のデータ量を示すヒントサイズ、詳細は後述するが、部分の属性を示すリージョンフラッグス、および、この部分をマイグレーションする場合の優先順位を示すヒントプライオリティなどからなる。
さらに、図3で示されるように、コンテンツを格納するファイルの属性として、読み出し専用(リードオンリ)または読み書き(リードライト)可能であるかを示す情報がファイルシステムによって記録される。
なお、コンテンツデータベース121、ストアデータベース125、およびボリウムデータベース127は、HDD34に構築され、図3で示される情報は、HDD34に記録される。
次に、図4乃至図6を参照して、HDD34に記録されるキャッシュファイルおよびキャッシュファイルを用いたコンテンツのデータの読み出しについて説明する。
図4は、HDD34に記録されるキャッシュファイルの状態を説明する図である。コンテンツは、キャッシュファイルとしてHDD34(のキャッシュ領域)に書き込まれる。図4で示されるように、入力されたストリーム(コンテンツ)の全体のデータが記録されたキャッシュファイルの状態を、レギュラー状態と称する。
ジュークボックス104の空き時間において実行される、HDD34に記録されているレギュラー状態のキャッシュファイルを光ディスク36に書き込むシャドウド化によって、コンテンツの全体は、HDD34に記録されると共に、光ディスク36にも記録される。コンテンツの全体のデータがHDD34に記録されると共に光ディスク36に記録されている場合の、キャッシュファイルの状態をビットファイル状態と称する。
キャッシュファイルがレギュラー状態またはビットファイル状態である場合、言い換えれば、ストリームの全体、すなわち、コンテンツのデータの全体がHDD34に記録されている場合、コンテンツのデータの全体は、HDD34から読み出されるので、高速に、コンテンツのデータを読み出すことができる。しかし、キャッシュファイルがレギュラー状態またはビットファイル状態である場合、キャッシュファイルのデータ量が多いので、多数のコンテンツについて、レギュラー状態またはビットファイル状態のキャッシュファイルをHDD34に記録していると、HDD34の記録領域の消費量が大きくなり、HDD34がすぐに一杯になってしまう(HDD34の全ての記録領域にデータが記録された状態になってしまう)。
そこで、例えば、キャッシュファイルがHDD34に記録されてからの経過時間を参照して、古いキャッシュファイルから順に、コンテンツの全体のデータを光ディスク36に記録させて、HDD34に記録しているキャッシュファイルのデータ量を小さくすることで、HDD34に記録されるキャッシュファイルのデータ量の総量を一定の範囲内に納めることができる。
図4で示されるように、コンテンツの全体のデータが記録されていないが、コンテンツのデータの所定の部分が記録されたキャッシュファイルの状態を、スタブファイル状態と称する。特に、コンテンツのデータの所定の部分であって、複数の部分が記録されたキャッシュファイルの状態を、マルチスタブ状態と称する。キャッシュファイルからコンテンツのデータの全てを無くし、コンテンツの拡張属性およびキャッシュファイルIDだけをHDD34に記録している状態を、例外的に、ゼロスタブ状態と称する。
ここで、スタブとは、キャッシュファイルとして、HDD34のキャッシュ領域に記録されているデータに対応するコンテンツの部分をいう。スタブ領域とは、スタブデータがHDD34に記録されているコンテンツ上の領域、すなわち、スタブの領域をいう。ホール領域とは、スタブデータがHDD34に記録されていないコンテンツ上の領域をいう。
スタブ領域およびホール領域を区別しない場合、単に領域と称する。
図2を参照して、領域および拡張属性における領域情報について説明する。図5で示す例において、コンテンツのデータの先頭に、スタブ領域が配置され、そのスタブ領域に続いて、ホール領域が配置されている。また、そのホール領域に続いて、スタブ領域が配置され、さらに、そのスタブ領域に続いて、ホール領域が配置されている。言い換えれば、コンテンツの先頭の部分のデータであるスタブデータは、HDD34のキャッシュファイルに記録され(ストア済みとされ)、コンテンツの先頭のその部分に続く領域であって、所定の長さの領域のデータは、HDD34のキャッシュファイルに記録されていない(ホール状態とされる)。また、そのホール状態の領域に続く、コンテンツの所定の部分のデータであるスタブデータは、HDD34のキャッシュファイルに記録され(ストア済みとされ)、その部分に続く領域であって、所定の長さの領域のデータは、HDD34のキャッシュファイルに記録されていない(ホール状態とされる)。すなわち、コンテンツの部分のデータがHDD34のキャッシュファイルに記録されている領域と、記録されていない領域とが交互に配置される。
領域情報は、領域それぞれの、領域番号、オフセット、サイズ、およびフラグを含む。領域番号は、ファイルの先頭から0乃至N(整数)の連続した値をとる。すなわち、領域番号は、0を初期値として、コンテンツのデータの先頭から順に、領域のそれぞれに付加される整数の通し番号である。オフセットは、ファイルの先頭(コンテンツのデータの先頭)からその領域の先頭までのオフセット値を示す。オフセットは、例えば、バイトを単位とする。サイズは、その領域のデータのデータ量を示す。サイズは、例えば、バイトを単位とする。フラグは、スタブ領域(ストア済み)であるかまたはホール領域(ホール状態)であるかを示す。例えば、1であるフラグは、スタブ領域(ストア済み)であることを示し、0であるフラグは、ホール領域(ホール状態)であることを示す。
例えば、コンテンツのデータの先頭のスタブ領域は、コンテンツのデータの先頭に位置し、この領域のデータ量が150バイトであり、スタブ領域(ストア済み)なので、コンテンツのデータの先頭のスタブ領域には、0である領域番号、0であるオフセット、150であるサイズ、および1であるフラグが付加される。コンテンツのデータにおける先頭から2番目の領域は、この領域の本来のデータ量が800バイトであり、ホール領域(ホール状態)なので、この領域には、1である領域番号、150であるオフセット、800であるサイズ、および0であるフラグが付加される。
同様に、コンテンツのデータにおける先頭から3番目の領域は、この領域のデータ量が150バイトであり、スタブ領域(ストア済み)なので、この領域には、2である領域番号、950(150+800)であるオフセット、150であるサイズ、および1であるフラグが付加される。コンテンツのデータにおける先頭から4番目の領域は、この領域の本来のデータ量が1400バイトであり、ホール領域(ホール状態)なので、この領域には、3である領域番号、1100(950+150)であるオフセット、1400であるサイズ、および0であるフラグが付加される。
このように、コンテンツの拡張属性における領域情報は、キャッシュファイルにおける各領域の状態を示す。領域情報を参照することにより、キャッシュファイルにおける領域の状態を知ることができる。
図6は、スタブ領域のスタブデータの構成の例を示す図である。図6で示されるように、HDD34に記録されているスタブデータは、シーケンスヘッダおよびGOP(Group of Pictures)とからなる。GOPには、所定の数(N枚)のピクチャが含まれる。
スタブデータが、コンテンツのデータの一部であっても、十分な数のシーケンスヘッダおよびGOPとからなっていれば、デコーダ51は、スタブデータを短い動画像または静止画像として復号し、ダイジェスト画面生成アプリケーションプログラム52は、復号された短い動画像または静止画像をモニタ71に表示させることができる。
次に、図7のフローチャートを参照して、複数のコンテンツのそれぞれの動画のシーンをマルチ画面で表示する、コンテンツの一覧の表示の処理を説明する。ステップS101において、再生プログラム31は、使用者に操作された図示せぬスイッチまたはリモートコントローラなどからの信号を基に、使用者からの指示を取得する。使用者からのダイジェスト画面を表示させる旨の指示を取得すると、ステップS102において、ダイジェスト画面生成アプリケーションプログラム52は、ストレージマネージャ12に、所定のコマンドを送信することによって、コンテンツを格納する記録領域のうちのルートフォルダ(以下、コンテンツのルートフォルダと称する)の情報を要求する。ステップS201において、ストレージマネージャ12は、ダイジェスト画面生成アプリケーションプログラム52からの、コンテンツのルートフォルダの情報の要求を受信する。すなわち、ストレージマネージャ12は、ダイジェスト画面生成アプリケーションプログラム52から送信されてきたコマンドを受信する。
ステップS202において、ストレージマネージャ12は、コンテンツのルートフォルダの情報をビデオプレーヤ11に送信する。例えば、ステップS202において、ストレージマネージャ12は、コンテンツマネージャ101から、ルートフォルダのコンテンツに関する情報を読み出して、そのルートフォルダのコンテンツに関する情報をビデオプレーヤ11に送信する。
ステップS103において、ビデオプレーヤ11のダイジェスト画面生成アプリケーションプログラム52は、ストレージマネージャ12から送信されてきた、コンテンツのルートフォルダの情報を受信する。
ステップS104において、ダイジェスト画面生成アプリケーションプログラム52は、ビデオアウトインターフェース32を介してモニタ71に、コンテンツのルートフォルダの情報に応じた出力画像信号を供給することにより、モニタ71にコンテンツのルートフォルダの情報を表示させる。
使用者は、モニタ71に表示されたコンテンツのルートフォルダの情報を見て、図示せぬスイッチまたはリモートコントローラなどを操作することで、フォルダを選択するので、ステップS105において、再生プログラム31は、使用者に操作された図示せぬスイッチまたはリモートコントローラなどからの信号を基に、使用者からのフォルダの選択の指示を取得する。フォルダの選択の指示を取得すると、ステップS106において、ダイジェスト画面生成アプリケーションプログラム52は、ストレージマネージャ12に、所定のコマンドを送信することによって、選択されたフォルダ内のファイルの一覧を要求する。
ステップS203において、ストレージマネージャ12は、ダイジェスト画面生成アプリケーションプログラム52からの、選択されたフォルダ内のファイルの一覧の要求を受信する。すなわち、ストレージマネージャ12は、ダイジェスト画面生成アプリケーションプログラム52から送信されてきたコマンドを受信する。
ステップS204において、ストレージマネージャ12は、選択されたフォルダ内のファイルの一覧を送信する。例えば、ステップS204において、ストレージマネージャ12は、コンテンツマネージャ101から、選択されたフォルダ内のファイルに格納されているコンテンツに関連するファイル情報を読み出して、そのコンテンツに関する情報を、ファイルの一覧としてビデオプレーヤ11に送信する。
ステップS107において、ダイジェスト画面生成アプリケーションプログラム52は、ストレージマネージャ12から送信されてきた、選択されたフォルダ内のファイルの一覧を受信する。
ステップS108において、ダイジェスト画面生成アプリケーションプログラム52は、フォルダ内のファイルの一覧を基に、フォルダ内のファイルのそれぞれのステータスをストレージマネージャ12に要求する。
例えば、ステップS108において、ダイジェスト画面生成アプリケーションプログラム52は、ファイルの一覧としてストレージマネージャ12から送信されてきたコンテンツに関連するファイル情報に含まれているファイル名を含むコマンドをストレージマネージャ12に送信することにより、ファイルのステータスをストレージマネージャ12に要求する。
図8は、ファイルのステータスを要求するコマンドの一例を示す図である。図8で示されるコマンドの1行目には、XML(eXtensible Mark-up Language)方式であることを示す<?xml version="1.0"?>タグが配置されている。
コマンドの本文に配置されている<Filename>タグおよび</Filename>タグの間に配置されている/fs0/VIDEO_1/biwako.mpgは、パス名を含んでいるファイル名であって、ステータスを要求するファイルのファイル名(キャッシュファイル名)である。
例えば、1つのコマンドで複数のファイルのステータスを要求する場合、コマンドの本文に複数の<Filename>タグおよび</Filename>タグが配置され、それぞれの間に、個々のファイルのファイル名が配置される。
ステップS205において、ストレージマネージャ12は、ビデオプレーヤ11から送信されてきた、フォルダ内のファイルのそれぞれのステータスの要求を受信する。例えば、ステップS205において、ストレージマネージャ12は、ビデオプレーヤ11から送信されてきたコマンドを受信する。
ステップS206において、ストレージマネージャ12は、ファイルのそれぞれについて、拡張属性を参照して、領域のステータスを取得する。例えば、ステップS206において、ストレージマネージャ12は、ファイルのそれぞれについて、HSM13のストアデータベース125から、ファイル名に関連付けて格納されている、キャッシュファイルを特定するための値であるキャッシュファイルIDを読み出す。そして、ストレージマネージャ12は、ファイルのそれぞれについて、HSM13のキャッシュテーブル38から、拡張属性を参照して、キャッシュファイルIDに対応して記録されている領域情報を読み出すことによって、領域のステータスを取得する。
ステップS207において、ストレージマネージャ12は、領域のステータスを示すファイルステータス情報を生成する。
図9は、ファイルステータス情報の一例を示す図である。図9で示されるファイルステータス情報の1行目には、XML方式であることを示す<?xml version="1.0"?>タグが配置されている。
図9で示されるファイルステータス情報の2行目に配置されている<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バイトであることを示す。ブロックの大きさは、HDD34または光ディスク36の記録単位(クラスタなど)によって定まる。
<blocknum>タグおよび</blocknum>タグの間に配置されている30728は、ファイル(コンテンツのデータ)が30728のブロックに記録されていることを示す。
<regionInfo>タグおよび</regionInfo>タグの間には、領域の情報を示すタグが配置される。<totalRegion>タグおよび</totalRegion>タグの間に配置されている2は、このファイル(コンテンツ)には2つの領域が存在することを示す。
<region id="0">タグおよび</region>タグの間には、領域番号が0である領域についての情報を示すタグが配置される。<region id="0">タグおよび</region>タグの間の、<rg_offset>タグおよび</rg_offset>タグの間に配置されている0は、コンテンツのデータの先頭から領域番号が0である領域の先頭までのオフセットが0バイトであることを示す。
<region id="0">タグおよび</region>タグの間の、<rg_size>タグおよび</rg_size>タグの間に配置されている15728640は、0である領域番号の領域のサイズ(データ量)が15728640バイトであることを示す。<region id="0">タグおよび</region>タグの間の、<rg_flags>タグおよび</rg_flags>タグの間に配置されているCACHEDは、0である領域番号の領域がスタブ領域であること、すなわち、0である領域番号の領域に対応するデータがHDD34に記録されていることを示す。
<region id="1">タグおよび</region>タグの間には、領域番号が1である領域についての情報を示すタグが配置される。<region id="1">タグおよび</region>タグの間の、<rg_offset>タグおよび</rg_offset>タグの間に配置されている15728640は、コンテンツのデータの先頭から領域番号が1である領域の先頭までのオフセットが15728640バイトであることを示す。
<region id="1">タグおよび</region>タグの間の、<rg_size>タグおよび</rg_size>タグの間に配置されている511191040は、1である領域番号の領域のサイズ(データ量)が511191040バイトであることを示す。<region id="1">タグおよび</region>タグの間の、<rg_flags>タグおよび</rg_flags>タグの間に配置されているNON_CACHEDは、1である領域番号の領域がホール領域であること、すなわち、1である領域番号の領域に対応するデータがHDD34に記録されていないことを示す。
ステップS208において、ストレージマネージャ12は、領域のステータスを示すファイルステータス情報をビデオプレーヤ11に送信する。
ステップS109において、ビデオプレーヤ11のダイジェスト画面生成アプリケーションプログラム52は、ストレージマネージャ12から送信されてきたファイルステータス情報を受信する。ステップS110において、ダイジェスト画面生成アプリケーションプログラム52は、ファイルのそれぞれについて、ファイルステータス情報を基に、ストアされている領域(スタブ領域)のデータの読み出しをストレージマネージャ12に要求する。
例えば、ステップS110において、ダイジェスト画面生成アプリケーションプログラム52は、ファイルのそれぞれについて、ファイルステータス情報を基に、スタブ領域のオフセットおよびサイズを指定することにより、スタブ領域のデータだけの読み出しをストレージマネージャ12に要求する。すなわち、例えば、ダイジェスト画面生成アプリケーションプログラム52は、図9で示されるファイルステータス情報を基に、/fs0/VIDEO_1/biwako.mpgであるファイル名のファイルについて、コンテンツのデータの先頭から15728640バイトまでのデータの読み出しをストレージマネージャ12に要求する。
スタブ領域のオフセットおよびサイズを指定した場合、光ディスク36からデータを読み出すことなく、HDD34だけから要求されたデータを読み出すことができる。
また、例えば、ステップS110において、ダイジェスト画面生成アプリケーションプログラム52は、ファイルのそれぞれについて、光ディスク36からのデータの読み出しを抑制するとともに、HDD34からデータの読み出しを指令するコマンドをストレージマネージャ12に送信することにより、ストアされている領域(ホール領域)のデータの読み出しをストレージマネージャ12に要求する。
図10は、光ディスク36からのデータの読み出しを抑制するとともに、HDD34からデータの読み出しを指令するコマンドの一例を示す図である。図10で示されるコマンドの1行目のGET /fs0/VIDEO_1/biwako.mpg HTTP/1.1は、読み出すデータが格納されているファイルのファイル名が/fs0/VIDEO_1/biwako.mpgであること、およびHTTP(Hyper Text Transfer Protocol)の手順に基づいてデータを転送することを示す。
図10で示されるコマンドの2行目のHost:localhostは、ストレージマネージャ12の名称がlocalhostであることを示す。コマンドの3行目のRange:bytes=1970176-は、コンテンツのデータの先頭から1970176バイトの位置からのデータを要求していることを示す。
コマンドの4行目のEscape-Reload-Mode:1は、光ディスク36からのデータの読み出しを抑制するとともに、HDD34からデータの読み出しを要求するエスケープリロードモードのデータの要求であることを示す。エスケープリロードモードは、リロードを実行しないモードである。
コマンドの5行目のUser-Agent:HSS Player/0.01は、ダイジェスト画面生成アプリケーションプログラム52の名称がHSS Player/0.01であることを示す。
エスケープリロードモードでのデータの読み出しを要求することで、ステップS109において受信したファイルステータス情報で示される状態から、記録されているデータの状態が変更された場合であっても、リロードが実行されない。
なお、4行目をEscape-Reload-Mode:0としたコマンドは、光ディスク36またはHDD34からデータを読み出す通常モードでのデータの読み出しを指令する。
ステップS209において、ストレージマネージャ12は、ダイジェスト画面生成アプリケーションプログラム52からの、ストアされている領域(ホール領域)のデータの読み出しの要求を受信する。ステップS210において、リードアクセスの処理が実行される。リードアクセスの処理の詳細は、図14のフローチャートを参照して後述する。ステップS210のリードアクセスの処理により、ファイルのそれぞれについて、ストアされている領域のデータがストレージマネージャ12からビデオプレーヤ11に送信される。
ステップS111において、ビデオプレーヤ11のダイジェスト画面生成アプリケーションプログラム52は、ストレージマネージャ12から送信されてくる、ファイルのそれぞれについて、ストアされている領域のデータを受信する。ステップS112において、ビデオプレーヤ11のダイジェスト画面生成アプリケーションプログラム52は、コンテンツリスト上にダイジェストを表示させて、処理は終了する。
例えば、ステップS210のリードアクセスの処理により、ストレージマネージャ12は、図6で示されるように、シーケンスヘッダとGOPとの繰り返しで構成されるデータを送信してくるので、ステップS111において、ダイジェスト画面生成アプリケーションプログラム52は、シーケンスヘッダとGOPとの繰り返しで構成されるデータを受信する。
例えば、ステップS112において、ダイジェスト画面生成アプリケーションプログラム52は、ファイルステータス情報を基に、1または複数のスタブ領域のうち、一部分または全部のスタブ領域を選択して、選択したスタブ領域のデータをデコーダ51に復号させる。なお、スタブ領域がない場合には、ダイジェスト画面生成アプリケーションプログラム52は、デコーダ51に復号を指示しない。
デコーダ51は、ファイルステータス情報のオフセットで示される位置を、復号を開始する位置として、その位置の後ろであって最初に見つけられたシーケンスヘッダからデータのデコードを開始する。デコーダ51は、送信されてきたデータが後述するダミーデータ(コンテンツのデータに代わる復号できないデータ)である場合には、そのデータを復号しない。
このように、ファイルステータス情報およびシーケンスヘッダが参照されて、実データだけが復号されることになる。
その結果、ダイジェスト画面生成アプリケーションプログラム52は、図11で示されるように、モニタ71に、複数のコンテンツのそれぞれについて、マルチ画面で、ダイジェスト用の短いシーン(動画)からなるコンテンツ一覧を表示させる。図11で示す例において、title#1乃至title#5の何れかのコンテンツの名前が付されたコンテンツ、またはtitle#8乃至title#12の何れかのコンテンツの名前が付されたコンテンツには、ストアされている領域があるので、モニタ71に、ストアされている領域のデータを基にしたダイジェスト用の短いシーンが表示される。これに対して、title#6またはtitle#7のコンテンツの名前が付されたコンテンツには、ストアされている領域がないので、モニタ71に、ダイジェスト用のシーンは表示されない。
なお、選択したスタブ領域について、ダミーデータが送信されてきた場合には、ダイジェスト画面生成アプリケーションプログラム52は、デコーダ51に、シーケンスヘッダを見つけられるまでデータを走査させる。これにより、より迅速にデータを復号することができる。また、デコーダ51は、復号しているGOPの途中でダミーデータを検知した場合には、デコードが失敗するので、その直前のGOPを復号して得られたデータを出力し、ダミーデータを検出したGOPを復号して得られたデータを出力しない。
また、ダイジェスト画面生成アプリケーションプログラム52またはデコーダ51は、一定サイズ以上のダミーデータを受け取った場合には、ダミーデータを含むデータのデコードを終了して、黒画面または予め定めたビデオを示すアイコンを表示させるようにしてもよい。
以上のように、キャッシュされているか否かを示す情報をアプリケーション側であるビデオプレーヤ11に通知することで、ビデオプレーヤ11は、キャッシュされているか否かを示す情報を基に、ダイジェスト画像を作る区間(データの部分)の選別をすることができるようになり、その結果、キャッシュされていない領域にアクセスしないで、迅速にダイジェスト画像を作成できるようになる。
次に、図12のフローチャートを参照して、コンテンツを再生する処理を説明する。
使用者は、モニタ71に表示されたダイジェストからなるコンテンツリストを見て、図示せぬスイッチまたはリモートコントローラなどを操作することで、再生するコンテンツを選択するので、ステップS131において、ビデオプレーヤ11の動画再生アプリケーションプログラム53は、使用者に操作された図示せぬスイッチまたはリモートコントローラなどからの信号を基に、使用者からのコンテンツの選択の指示を取得する。例えば、動画再生アプリケーションプログラム53は、図7のフローチャートを参照して説明した処理で表示されているダイジェストを基にした、使用者からのコンテンツの選択の指示を取得する。
ステップS132において、動画再生アプリケーションプログラム53は、選択されたコンテンツのデータをストレージマネージャに要求する。例えば、ステップS132において、動画再生アプリケーションプログラム53は、光ディスク36およびHDD34からデータの読み出しを指令するコマンドをストレージマネージャ12に送信することにより、選択されたコンテンツのデータをストレージマネージャに要求する。
図13は、ディスク36およびHDD34からデータの読み出しを指令するコマンドの一例を示す図である。図13で示されるコマンドの1行目のGET /fs0/VIDEO_1/biwako.mpg HTTP/1.1は、読み出すデータが格納されているファイルのファイル名が/fs0/VIDEO_1/biwako.mpgであること、およびHTTP(Hyper Text Transfer Protocol)の手順に基づいてデータを転送することを示す。
図13で示されるコマンドの2行目のHost:localhostは、ストレージマネージャ12の名称がlocalhostであることを示す。コマンドの3行目のRange:bytes=1970176-は、コンテンツのデータの先頭から1970176バイトの位置からのデータを要求していることを示す。
コマンドの4行目のUser-Agent:HSS Player/0.01は、動画再生アプリケーションプログラム53の名称がHSS Player/0.01であることを示す。
なお、動画再生アプリケーションプログラム53は、図10で示されるコマンドであって、4行目をEscape-Reload-Mode:0としたコマンドをストレージマネージャ12に送信することにより、選択されたコンテンツのデータをストレージマネージャに要求するようにしてもよい。
ステップS231において、ストレージマネージャ12は、動画再生アプリケーションプログラム53からの、選択されたコンテンツのデータの要求を受信する。ステップS232において、リードアクセスの処理が実行される。ステップS232のリードアクセスの処理により、選択されたコンテンツのデータがストレージマネージャ12からビデオプレーヤ11に送信される。
ステップS133において、ビデオプレーヤ11の動画再生アプリケーションプログラム53は、ストレージマネージャ12から送信されてくる、選択されたコンテンツのデータを受信する。ステップS134において、動画再生アプリケーションプログラム53は、受信したコンテンツのデータをデコーダ51に復号させて、コンテンツを再生する。ステップS135において、動画再生アプリケーションプログラム53は、コンテンツをモニタ71に表示させて、処理は終了する。
図14は、ステップS210またはステップS232のリードアクセスの処理の詳細を説明するフローチャートである。ステップS11において、ストレージマネージャ12は、送信するデータまたは情報などを一時的に記憶するセンドバッファ(SendBuffer)を初期化する。ステップS12において、ストレージマネージャ12は、ビデオプレーヤ11から送信されてきたコマンドを基に、ビデオプレーヤ11からの要求がエスケープリロードモードの要求であるか否かを判定する。
ステップS12において、エスケープリロードモードの要求でないと判定された場合、通常モードの要求なので、ステップS13に進み、ストレージマネージャ12は、変数であるflagに"Normal Read"を設定し、手続きは、ステップS15に進む。
一方、ステップS12において、エスケープリロードモードの要求であると判定された場合、ステップS13に進み、ストレージマネージャ12は、変数であるflagに"Escape Reload"を設定し、手続きは、ステップS15に進む。
ステップS15において、ストレージマネージャ12は、ファイルポインタjに、データの読み出しの開始位置を示すstart_offsetである初期値を設定する。ステップS16において、ストレージマネージャ12は、ファイルポインタjが、data_lengthであるファイルの最終位置より小さいか否かを判定し、ファイルポインタjが、data_lengthであるファイルの最終位置より小さいと判定された場合、ファイルの最終位置まで読み出していないので、ステップS17に進み、1ブロックを単位としてデータを読み込むReadA1Block(flag,j,SendBuffer)の関数、すなわちflag,j、およびSendBufferを引数とするReadA1Block(flag,offset,*buf)の関数を実行する。ReadA1Block(flag,offset,*buf)の関数の処理の詳細は後述する。
ステップS18において、ストレージマネージャ12は、センドバッファに格納されているデータのうち、ファイルポインタjで示される位置から、Buffer_Lengthのデータ量のデータをビデオプレーヤ11に送信するSend(SendBuffer,Buffer_Length)の処理を実行する。
ステップS19において、ストレージマネージャ12は、ファイルポインタjに、Buffer_Lengthを加算することで、ファイルポインタjを更新して、ステップS16に戻り、上述した処理を繰り返す。
ステップS16において、ファイルポインタjが、data_lengthであるファイルの最終位置より小さくないと判定された場合、ファイルの最終位置までデータが送信されたので、処理は終了する。
次に、図15のフローチャートを参照して、図14のステップS17のReadA1Block(flag,j,SendBuffer)の関数として実行されるReadA1Block(flag,offset,*buf)の関数の処理の詳細を説明する。ステップS31において、ストレージマネージャ12は、変数であるflagに"Escape Reload"が設定されているか否かを判定し、変数であるflagに"Escape Reload"が設定されていないと判定された場合、ステップS32に進み、読み出そうとする領域のデータがストアされているか否かを判定する。
ステップS32において、読み出そうとする領域のデータがストアされていると判定された場合、読み出そうとする領域はスタブ領域であり、読み出そうとするスタブデータがHDD34に記録されているので、ステップS33に進み、ストレージマネージャ12は、HDD34上のスタブデータを1つのブロックの分だけSendBufferに対応するバッファbufに読み込み、処理は終了する。
ステップS32において、読み出そうとする領域のデータがストアされていないと判定された場合、読み出そうとする領域はホール領域であり、読み出そうとするデータがHDD34に記録されていないので、ステップS34に進み、ストレージマネージャ12は、HSM13にリロード実行コマンドを発行して、HSM13に、読み出そうとするデータをリロードさせる。
ここで、リロードの処理を説明すると次のようになる。
まず、読み出そうとするコンテンツのデータが記録されていない光ディスク36がドライブ35に装着されている場合には、HSM13は、ドライブ35に装着されている光ディスク36をディスクスロット130に戻す。すなわち、ジュークシステム128の制御の基に、ジュークボックス104のピッカー131は、ドライブ35から排出された光ディスク36を搬送して、所定のディスクスロット130に格納させる。
ドライブ35から光ディスク36が排出されたか、または、リロードの処理を開始した時点でドライブ35に光ディスク36が装着されていない場合には、HSM13は、読み出そうとするコンテンツのデータが記録されている光ディスク36をドライブ35に装着させる。
これをより詳細に説明すると、HSM13は、ストアデータベース125から、キャッシュファイル名に関連付けられているキャッシュファイルIDを参照して、参照されたキャッシュファイルIDに対応するボリウムIDを参照する。ストレージサーバ124は、ボリウムデータベース127を基に、ボリウムIDで特定される光ディスク36が格納されているディスクスロット130を特定する。すなわち、ストレージサーバ124は、メディアサーバ126に、ボリウムIDで特定される光ディスク36が格納されているディスクスロット130の特定を要求する。
メディアサーバ126は、ボリウムデータベース127に、ジュークボックス104の各ディスクスロット130に格納されている光ディスク36を特定するボリウムIDのうち、ストレージサーバ124からの要求に含まれているボリウムIDと一致するボリウムIDを検索させる。ボリウムデータベース127が、ストレージサーバ124からの要求に含まれているボリウムIDで特定される光ディスク36が格納されているディスクスロット130を示す情報を出力してくるので、メディアサーバ126は、ディスクスロット130を示す情報をストレージサーバ124に供給する。これにより、ストレージサーバ124は、ボリウムIDで特定される光ディスク36が格納されているディスクスロット130を特定する。
そして、ストレージサーバ124は、メディアサーバ126に、特定されたディスクスロット130に格納されている光ディスク36のドライブ35への装着を指示する。メディアサーバ126は、チェンジャドライバ102を介して、ジュークシステム128に、特定されたディスクスロット130に格納されている光ディスク36をドライブ35に装着させる。すなわち、ジュークシステム128の制御の基に、ジュークボックス104のピッカー131は、特定されたディスクスロット130から、光ディスク36を取り出して、搬送し、その光ディスク36をドライブ35に装着(マウント)させる。
さらに、その光ディスク36がドライブ35に装着された場合、または、読み出そうとするコンテンツのデータが記録されている光ディスク36がドライブ35に装着されている場合、HSM13は、ドライブ35に装着されている光ディスク36からデータを読み出して、読み出したデータをHDD34に記録させる。
すなわち、HSM13のマイグレーションファイルシステム33は、リロードの開始位置を、現在、HDD34から読み出されているデータの位置の後の領域であって、もっと近い領域の先頭とし、HSM13のストレージサーバ124は、リロードの開始位置におけるデータを、光ディスク36が装着されたドライブ35から読み出させ、読み出したデータをキャッシュファイルの所定の領域に格納させるように、HDD34に記録させる。
そして、マイグレーションファイルシステム33は、順に、それぞれの領域について、光ディスク36が装着されたドライブ35からデータを読み出させ、読み出したデータをキャッシュファイルのその領域に格納させるように、HDD34に記録させる。
なお、スタブ領域について、光ディスク36からデータを読み出し、HDD34に記録させる処理はスキップされ、ホール領域について、光ディスク36からデータを読み出し、HDD34に記録させる処理が実行される。
その領域のリロードが完了した場合、マイグレーションファイルシステム33は、リロードを完了した領域と隣接するスタブ領域とを結合させるように拡張属性を書き換える。
このようにして、HSM13のマイグレーションファイルシステム33は、キャッシュファイルの最後まで、光ディスク36からデータを読み出し、HDD34に記録させる。
ステップS35において、ストレージマネージャ12は、HDD34にリロードされたデータを1つのブロックの分だけSendBufferに対応するバッファbufに読み込み、処理は終了する。
なお、ステップS34およびステップS35の処理は並列に実行される。
ステップS31において、変数であるflagに"Escape Reload"が設定されていると判定された場合、ステップS36に進み、ストレージマネージャ12は、読み出そうとする領域のデータがストアされているか否かを判定する。
ステップS36において、読み出そうとする領域のデータがストアされていると判定された場合、ステップS33に進み、上述したように、ストレージマネージャ12は、HDD34上のスタブデータを1つのブロックの分だけSendBufferに対応するバッファbufに読み込み、処理は終了する。
ステップS36において、読み出そうとする領域のデータがストアされていないと判定された場合、ステップS37に進み、ストレージマネージャ12は、リロードを実行させないで、SendBufferに対応するバッファbufに、デコーダ51において復号できない(復号させない)ダミーデータを入れて、処理は終了する。例えば、ストレージマネージャ12は、バッファbufに、全て0であるダミーデータを入れる。
このように、変数であるflagに"Escape Reload"が設定されている場合には、光ディスク36からのデータの読み出しが抑制されるとともに、HDD34からデータが読み出される。
以上のように、ストレージマネージャ12は、ファイルのステータスが要求された場合、光ディスク36からの読み出しを抑制すると共に、HDD34から、領域のステータスを読み出す。
また、ストレージマネージャ12は、ストアされている領域(ホール領域)のデータの読み出しが要求された場合、光ディスク36からの読み出しを抑制すると共に、HDD34から、ホール領域のデータを読み出す。
ストレージマネージャ12は、コンテンツのデータが要求された場合、光ディスク36およびHDD34からデータを読み出す。
このように、ストレージマネージャ12は、ファイルの読み出しアクセスのために、リロードを行う通常モードと、リロードしないエスケープリロードモードの2つのモードの何れかで、データまたは情報をHDD34または光ディスク36から読み出す。エスケープリロードモードでの読み出しが要求された場合、ストレージマネージャ12は、キャッシュ済み(HDD34に記録されている)データをそのまま読み出して、送信し、キャッシュされていないデータ(HDD34に記録されていないデータ)を要求された場合には、ファイルからデータを読み出さないで、代替のデータであるダミーデータを送信する。
再生プログラム31は、目的に応じて、通常モードまたはリロードエスケープモードのいずれかで、ストレージマネージャ12にデータまたは情報の読み出しを要求する。
エスケープリロードモードにおいて、リロードが実行されず、キャッシュされていないデータに代えてダミーデータが送信されるので、ビデオプレーヤ11は、ファイルステータス情報の取得およびファイルステータス情報で示されるスタブ領域のスタブデータのみを選択的に復号する処理を省略し、ストレージマネージャ12から送信されてきたデータの全てを復号したとしても、ホール領域のデータについてデコードを実行しない。すなわち、ビデオプレーヤ11は、エスケープリロードモードでのデータの読み出しを要求することで、ファイルステータス情報の取得および復号できるデータを選別する処理を実行する必要がなくなり、また、不要なデコードの処理も実行されないので、ビデオプレーヤ11の負荷をより少なくすることができる。
以上のように、HDD34に記録されていない領域への読み出しの要求によるリロードを抑制することで、高速に読み出しができる箇所のみに絞ったデータの読み出しができるようになる。
HSM13において、不要なリロードを発生させないので、リロードで使用するドライブ35であるリソースを有効に使うことができる。
キャッシュされていない領域にアクセスしても、エスケープリロードモードとすることで、受信したファイルステータス情報で示される状態から、記録されているデータの状態が変更された場合であっても、不要なリロードを実行しないようにすることができる。
ファイルステータス情報を用いない場合であっても、エスケープリロードモードでアクセスすれば、リロードを実行しないようにすることができる。従って、アプリケーション側の変更を最小限として、エスケープリロードモードを利用できる。
エスケープリロードモードを用いた場合、ダミーデータが配置されている部分は、アプリケーション側で無視するようにできる。例えば、デコーダ51が、MPEGデコーダである場合、デコーダ51は、ダミーデータを受け取ったとき、ダミーデータを復号せず、その後に、スタブ領域が配置されているときには、データを順に走査して、シーケンスヘッダを見つけたところから復号を開始することができる。
動画再生アプリケーションプログラム53のような通常のアクセスをする必要のあるアプリケーションプログラムは、通常モードでデータの読み出しを行えば、HSM13によるリロードの処理を利用して、キャッシュされている領域(スタブ領域)とキャッシュされていない領域(ホール領域)とを意識することなく、コンテンツのデータを読み出すことができる。
なお、光ディスク36からのデータの読み出しを抑制するとともに、HDD34からデータを読み出す要求と、光ディスク36およびHDD34からデータを読み出す要求とを、コマンドによって区別すると説明したが、ストレージマネージャ12のポートにより区別するようにしてもよい。ここでポートとは、複数の相手と同時に通信するための補助アドレスである。
この場合、第1のポートを介して読み出しが要求されたとき、ストレージマネージャ12は、エスケープリロードモードでデータを読み出し、光ディスク36からのデータの読み出しを抑制するとともに、HDD34からデータまたは情報を読み出す。第2のポートを介して読み出しが要求されたとき、ストレージマネージャ12は、通常モードでデータを読み出し、光ディスク36またはHDD34からデータまたは情報を読み出す。
次に、ダイジェスト画面生成アプリケーションプログラム52による、復号された短い動画像であるダイジェスト(要約)の表示の詳細について説明する。
図16は、ダイジェスト画面生成アプリケーションプログラム52の構成の例を示すブロック図である。ダイジェスト画面生成アプリケーションプログラム52は、決定部201および取得部202を備える。
決定部201は、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータと拡張属性とが記録されているHDD34から取得したファイルステータス情報によって、HDD34にデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定する。
拡張属性およびファイルステータス情報は、コンテンツの部分のデータの属性に関するデータ属性情報の一例である。HDD34は、第2の記録媒体の一例である。
決定部201は、範囲決定部211を備える。範囲決定部211は、再生時間が予め定めた最大時間より長い場合、最大時間以下の再生時間となるように要約を構成するコンテンツの部分の範囲を決定する。例えば、範囲決定部211は、HDD34にデータが記録されているコンテンツの部分のそれぞれから、予め定めた長さの時間の範囲を決定する。
取得部202は、決定したコンテンツの部分のデータをHDD34から取得する。
図17は、ダイジェスト画面生成アプリケーションプログラム52によるダイジェストの表示の処理の詳細を説明するフローチャートである。
ステップS51において、ダイジェスト画面生成アプリケーションプログラム52の取得部202は、ストレージマネージャ12から、ダイジェストを表示しようとするコンテンツのデータについてのファイルステータス情報を取得する。
例えば、ステップS51において、ダイジェスト画面生成アプリケーションプログラム52の取得部202は、ダイジェストを表示しようとするコンテンツのファイルのステータスをストレージマネージャ12に要求する。
より具体的には、例えば、ステップS51において、取得部202は、ダイジェストを表示しようとするコンテンツのファイル名を含むコマンド(例えば、図8のコマンド)をストレージマネージャ12に送信することにより、ファイルのステータスをストレージマネージャ12に要求する。
ストレージマネージャ12は、取得部202から送信されてきた、ファイルのステータスの要求を受信する。例えば、ストレージマネージャ12は、取得部202から送信されてきたコマンドを受信する。
すると、ストレージマネージャ12は、ファイルについて、拡張属性を参照して、領域のステータスを取得する。例えば、ストレージマネージャ12は、ファイルについて、HSM13のストアデータベース125から、ファイル名に関連付けて格納されている、キャッシュファイルを特定するための値であるキャッシュファイルIDを読み出す。そして、ストレージマネージャ12は、ファイルについて、HSM13のキャッシュテーブル38から、拡張属性を参照して、キャッシュファイルIDに対応して記録されている領域情報を読み出すことによって、領域のステータスを取得する。
さらに、ストレージマネージャ12は、領域のステータスを示すファイルステータス情報(例えば、図9のファイルステータス情報)を生成する。ストレージマネージャ12は、領域のステータスを示すファイルステータス情報をダイジェスト画面生成アプリケーションプログラム52に送信する。
ダイジェスト画面生成アプリケーションプログラム52の取得部202は、ストレージマネージャ12から送信されてきたファイルステータス情報を受信することで、ファイルステータス情報を取得する。
ステップS52において、ダイジェスト画面生成アプリケーションプログラム52の決定部201は、変数Nに初期値である0を設定する。変数Nは、領域を特定するために用いられる。
ステップS53において、決定部201は、取得したファイルステータス情報を基に、領域Nがあるか否かを判定する。
例えば、図9で例示されるファイルステータス情報を取得した場合、このファイルステータス情報には、領域0と領域1の情報が含まれているので、決定部201は、領域0があると判定する。同様に、図9で例示されるファイルステータス情報を取得した場合、変数Nが1とされる2回目のステップS53において、決定部201は、領域1があると判定する。しかし、図9で例示されるファイルステータス情報には、領域2の情報は含まれていないので、変数Nが2とされる3回目のステップS53において、決定部201は、領域2はないと判定する。
ステップS53において、領域Nがあると判定された場合、ステップS54に進み、決定部201は、ファイルステータス情報から領域Nの情報を抽出する。ステップS54において抽出される領域Nの情報には、コンテンツのデータの先頭から領域Nの先頭までのオフセット値(バイト)を示すオフセット、領域Nのデータ量を示すサイズ、および領域Nがストア済みであるかまたはホール状態であるかを示すフラグが含まれる。
ステップS55において、決定部201は、抽出した領域Nの情報に含まれるフラグに基づいて、領域Nがストアされているか否かを判定する。
ステップS55において、領域Nがストアされていると判定された場合、ステップS56に進み、決定部201は、抽出した領域Nの情報に含まれるサイズに基づいて、領域Nのサイズは、デコードに十分な大きさであるか否かを判定する。例えば、ステップS56において、決定部201は、領域Nのサイズと、デコードに必要なデータ量を示す閾値とを比較することにより、領域Nのサイズが、デコードに十分な大きさであるか否かを判定する。
ステップS56において、領域Nのサイズが、デコードに十分な大きさであると判定された場合、ステップS57に進み、決定部201は、領域Nをデコード候補に設定し、手続きは、ステップS58に進む。
ステップS55において、領域Nがストアされていない、すなわち、ホール領域であると判定された場合、またはステップS56において、領域Nのサイズが、デコードに十分な大きさでないと判定された場合、ステップS57の処理はスキップされ、その領域Nはデコード候補とされず、手続きは、ステップS58に進む。
このように、HDD34にデータがストアされている領域であって、デコードに十分なデータ量の領域がデコード候補とされる。デコードに十分な大きさでないサイズの領域がデコード候補とされないようにすることで、データを安定して復号することができ、その結果、例えば、表示されるダイジェストの画像が乱れてしまうことが防止される。
ステップS58において、決定部201は、変数Nを1だけインクリメントして、次の領域Nについて、ステップS53乃至ステップS58の処理を繰り返す。
ステップS53において、領域Nがないと判定された場合、対象としているファイルの領域の全てのうち、HDD34にデータがストアされている領域であって、デコードに十分なデータ量の領域をデコード候補としたので、ステップS59に進み、決定部201は、デコード候補の領域のデータで再生される時間(コンテンツの再生の時間)の総和を計算する。
例えば、決定部201は、デコード候補の領域のデータのデータ量の総和を計算して、計算された総和を再生のビットレートの平均値で割り算することにより、再生される時間(コンテンツの再生の時間)の総和を計算する。
なお、領域情報に、その領域の再生の時間を含め、これから、再生される時間の総和を計算するようにしてもよい。
ステップS60において、決定部201は、計算された時間の総和が、予め定めた最大時間より長いか否かを判定する。最大時間は、任意に決めることができるが、例えば、1分とすることができる。
ステップS60において、計算された時間の総和が、予め定めた最大時間より長いと判定された場合、ステップS61に進み、決定部201の範囲決定部211は、最大時間に収まるように、デコード候補の領域の範囲を減らし、手続きは、ステップS62に進む。
ステップS60において、計算された時間の総和が、予め定めた最大時間より長くないと判定された場合、ステップS61はスキップされ、手続きは、ステップS62に進む。この場合、デコード候補の領域の全体が、ダイジェストとして再生される範囲とされる。
図18は、範囲決定部211により、最大時間に収まるように範囲を減らされた、デコード候補の領域の例を示す図である。
図18の最も上および上から2番目に示される横長の四角は、コンテンツの全体のデータを示す。図18において、横方向は、コンテンツにおける再生の時間を示す。コンテンツのデータの全体を示す横長の四角に含まれる、白抜きの四角および斜線が付された四角は、コンテンツの部分のデータを示す。
最も上の横長の四角における、白抜きの四角は、ホール状態とされている領域(HDD34に記録されていないデータの領域)を示し、右下がりの斜線が付された四角は、ストアされている領域(HDD34に記録されているデータの領域)を示す。
ステップS55およびステップS56において、HDD34にデータがストアされている領域であって、デコードに十分なデータ量の領域がデコード候補とされる。
図18の上から2番目の横長の四角に付された丸は、丸を付された領域がデコード候補とされたことを示し、バツは、バツを付された領域がデコード候補とされていないことを示す。
例えば、コンテンツの先頭から2番目の領域は、HDD34にデータがストアされている領域であるが、デコードに十分なデータ量がないので、デコード候補とされていない。コンテンツの先頭から4番目の領域は、HDD34にデータがストアされている領域であり、デコードに十分なデータ量があるので、デコード候補とされている。
例えば、ステップS59において、決定部59は、図18の丸が付されたデコード候補の領域について、再生される時間(コンテンツの再生の時間)の総和を計算する。
例えば、計算された時間の総和が、予め定めた最大時間より長いと判定された場合、ステップS61において、範囲決定部211は、最大時間に収まるように、デコード候補の領域の範囲を減らす。
より具体的には、例えば、まず、範囲決定部211は、最大時間をデコード候補の数で割り算して、1つの領域当たりの時間を求める。
そして、例えば、範囲決定部211は、図18の丸が付されたデコード候補の領域のそれぞれについて、デコード候補の領域の範囲を、それぞれの領域の先頭から1つの領域当たりの時間に対応する位置までと決めることで、デコード候補の領域の範囲を減らす。
図18の上から2番目の横長の四角の中の、左下がりの斜線が付された四角の領域は、このように、範囲決定部211によって定められた、それぞれのデコード候補の領域の範囲を示す。
図18に示す例においては、コンテンツの先頭から4番目の領域、コンテンツの先頭から8番目の領域、およびコンテンツの先頭から10番目の領域のそれぞれについて、領域の先頭から1つの領域当たりの時間に対応する位置までの範囲が、デコード候補の領域の範囲とされる。
ストアされている領域のそれぞれを合わせた全体について、その先頭から最大時間に対応する位置まで連続するようにデコード候補の領域の範囲を決めてしまうと、ダイジェストがコンテンツの一部分の要約となってしまう。これに対して、デコード候補の領域のそれぞれから、所定の長さの範囲を抽出して、それを合わせてデコード候補の領域の範囲とするように、時間軸で均等となるように領域内でデータを間引くようにしたので、ダイジェストを、コンテンツの全体の要約とすることができる。
図17に戻り、ステップS62において、取得部202は、ストレージマネージャ12に、最初のデコード候補の領域の範囲のデータを要求する。
例えば、ステップS62において、取得部202は、最初のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図10または図13に例示される方式のコマンドをストレージマネージャ12に供給することにより、最初のデコード候補の領域の範囲のデータの読み出しをストレージマネージャ12に要求する。
ストレージマネージャ12が、ダイジェスト画面生成アプリケーションプログラム52からの、最初のデコード候補の領域の範囲のデータの読み出しの要求を受信すると、ステップS63において、リードアクセスの処理が実行される。リードアクセスの処理は、図14で説明した処理と同様なのでその説明は省略する。
リードアクセスの処理により、最初のデコード候補の領域の範囲のデータがストレージマネージャ12からダイジェスト画面生成アプリケーションプログラム52に送信される。
ステップS64において、ダイジェスト画面生成アプリケーションプログラム52の取得部202は、ストレージマネージャ12から送信されてくる、最初のデコード候補の領域の範囲のデータを受信することで、最初のデコード候補の領域の範囲のデータを取得する。ステップS65において、ダイジェスト画面生成アプリケーションプログラム52は、デコーダ51に、取得したデータのデコードを開始させる。ステップS66において、ダイジェスト画面生成アプリケーションプログラム52は、デコーダ51に、ビデオアウトインターフェース32を介して復号された信号を出力させることで、ビデオアウトインターフェース32に接続されている機器にダイジェストの表示を開始させる。
ステップS67において、ダイジェスト画面生成アプリケーションプログラム52は、ダイジェストの表示の停止を指令する停止指令が入ったか否かを判定し、停止指令が入っていないと判定された場合、ステップS68に進む。例えば、ダイジェスト画面生成アプリケーションプログラム52は、コンテンツの再生の指令を受け取ったり、または、他の処理の実行が指令されたりなどした場合、ダイジェストの表示の停止を指令する停止指令が入ったと判定する。
ステップS68において、取得部202は、ストレージマネージャ12に、次のデコード候補の領域の範囲のデータを要求する。例えば、ステップS68において、取得部202は、次のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図10または図13に例示される方式のコマンドをストレージマネージャ12に供給することにより、次のデコード候補の領域の範囲のデータの読み出しをストレージマネージャ12に要求する。
ストレージマネージャ12が、ダイジェスト画面生成アプリケーションプログラム52からの、次のデコード候補の領域の範囲のデータの読み出しの要求を受信すると、ステップS69において、リードアクセスの処理が実行される。リードアクセスの処理は、図14で説明した処理と同様なのでその説明は省略する。
リードアクセスの処理により、次のデコード候補の領域の範囲のデータがストレージマネージャ12からダイジェスト画面生成アプリケーションプログラム52に送信される。
ステップS70において、ダイジェスト画面生成アプリケーションプログラム52の取得部202は、ストレージマネージャ12から送信されてくる、次のデコード候補の領域の範囲のデータを受信することで、次のデコード候補の領域の範囲のデータを取得して、ステップS67に戻り、上述した処理を繰り返す。
このように、ステップS62乃至ステップS64、およびステップS68乃至ステップS70の処理が実行されることにより、図18の上から3番目の横長の四角で表される、デコード候補の領域の範囲のデータだけがダイジェスト画面生成アプリケーションプログラム52に取得され、デコード候補の領域の範囲のコンテンツがダイジェストとして表示されることになる。
ステップS67において、停止指令が入ったと判定された場合、ステップS71に進み、ダイジェスト画面生成アプリケーションプログラム52は、デコーダ51に、デコードを停止させる。ステップS72において、ダイジェスト画面生成アプリケーションプログラム52は、デコーダ51に、復号された信号の出力を停止させることで、ダイジェストの表示を停止させて、処理は終了する。
このように、HDD34に記録されているデータだけで、ダイジェスト(要約)が表示される。光ディスク36からのデータの読み出しを抑制するようにしたので、リソースの占有を抑制して、迅速に要約を表示させることができるようになる。
使用者は、表示されたコンテンツの要約を鑑賞することができる。
なお、最後のストレージ候補の領域の範囲のデータを取得した後、ステップS62に戻って処理を繰り返すようにすれば、図18の最も下の横長の四角で表されるように、デコード候補の領域の範囲のデータが繰り返し取得されて、デコード候補の領域の範囲のコンテンツがダイジェストとして繰り返し表示されることになる。
また、ダイジェスト画面生成アプリケーションプログラム52は、取得したデコード候補の領域の範囲のデータを記憶して、記憶したデータに基づいて、ダイジェストを繰り返し表示させるようにしてもよい。このようにすれば、同じデータを繰り返し読み出して供給する必要がなくなる。
さらに、コンテンツのデータまたはファイルステータス情報をネットワークを介して送信するようにすることもできる。
図19は、本発明の一実施の形態の記録再生システムの他の構成を示すブロック図である。
図19で構成を示す記録再生システムは、サーバ301と、サーバ301にネットワーク302を介して接続されるクライアント303とからなる。サーバ301は、サーバプログラム321、ストレージマネージャ12、HSM13、コンテンツマネージャ101、チェンジャドライバ102、ジュークボックス制御部103、およびジュークボックス104から構成される。
クライアント303は、再生プログラム31およびビデオアウトインターフェース32から構成される。
ネットワーク302は、無線または有線を伝送媒体とする、ホームネットワークなどのLAN(Local Area Network)、インターネット、公衆回線、または専用回線などからなり、各種のデータ(ストリームを含む)を伝送する。
サーバプログラム321は、ネットワーク302を介して送信されてくる、クライアント303からの要求を受信して、受信した要求をストレージマネージャ12に供給する。また、サーバプログラム321は、ストレージマネージャ12から供給されるコンテンツのデータまたはファイルステータス情報を、ネットワーク302を介してクライアント303に送信する。
図19の再生プログラム31は、デコーダ51、ダイジェスト画面生成アプリケーションプログラム322、および動画再生アプリケーションプログラム53を含む。
ダイジェスト画面生成アプリケーションプログラム322は、ファイルステータス情報またはコンテンツのデータの送信の要求を、ネットワーク302を介してサーバ301に送信する。また、ダイジェスト画面生成アプリケーションプログラム322は、ネットワーク302を介してサーバ301から送信されてくる、コンテンツのデータまたはファイルステータス情報を受信することで、コンテンツのデータまたはファイルステータス情報を取得する。
ダイジェスト画面生成アプリケーションプログラム322は、モニタ71に、ダイジェストの画像を表示させる。
図19で構成を示す記録再生システムによるコンテンツの一覧の表示の処理は、サーバプログラム321および再生プログラム31がデータまたは情報(要求を含む)を送信または受信する点で図7のフローチャートを参照して説明した処理と異なるが、その他の点は、図7のフローチャートを参照して説明した処理と同様である。
図19で構成を示す記録再生システムによるコンテンツを再生する処理は、サーバプログラム321および再生プログラム31がデータまたは情報(要求を含む)を送信または受信する点で図12のフローチャートを参照して説明した処理と異なるが、その他の点で、図12のフローチャートを参照して説明した処理と同様なのでその説明は省略する。
この場合、コンテンツのデータまたはファイルステータス情報をネットワークを介して送信することができる。
ファイルのステータスを要求するコマンドによりファイルのステータスが要求された場合、ストレージマネージャ12は、光ディスク36にアクセスしないで、HDD34から拡張属性を読み出して、読み出した拡張属性に含まれる領域情報を基に、ファイルステータス情報を生成して、送信する。
ファイルのそれぞれについて、光ディスク36からのデータの読み出しを抑制するとともに、HDD34からデータの読み出しを指令するコマンドによりデータの読み出しが要求された場合、ストレージマネージャ12は、光ディスク36からのデータの読み出しを抑制するとともに、HDD34からスタブデータを読み出して、送信する。
光ディスク36およびHDD34からデータの読み出しを指令するコマンドによりデータの読み出しが要求された場合、ストレージマネージャ12は、光ディスク36およびHDD34からデータを読み出して、送信する。
HDD34に記録されていない領域への読み出しの要求によるリロードを抑制することで、高速に読み出しができる箇所のみに絞ったデータの読み出しができるようになる。HSM13において、不要なリロードを発生させないので、リロードで使用するドライブ35であるリソースを有効に使うことができる。
図20は、ダイジェスト画面生成アプリケーションプログラム322の構成の例を示すブロック図である。ダイジェスト画面生成アプリケーションプログラム322は、決定部341、送信制御部342、および受信制御部343を備える。
決定部341は、コンテンツの全体が分割されてなる複数の部分のうちの所定の部分のデータと拡張属性とが記録されているHDD34から取得したファイルステータス情報によって、HDD34にデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定する。
決定部341は、範囲決定部351を備える。範囲決定部351は、再生時間が予め定めた最大時間より長い場合、最大時間以下の再生時間となるように要約を構成するコンテンツの部分の範囲を決定する。例えば、範囲決定部351は、HDD34にデータが記録されているコンテンツの部分のそれぞれから、予め定めた長さの時間の範囲を決定する。
送信制御部342は、HDD34および光ディスク36を備えるサーバ301への、ネットワーク302を介した、ファイルステータス情報またはコンテンツのデータの要求の送信を制御する。
受信制御部343は、ネットワーク302を介してサーバ301から送信されてくるファイルステータス情報またはコンテンツのデータの受信を制御する。受信制御部343は、ファイルステータス情報またはコンテンツのデータを受信することによって、ファイルステータス情報またはコンテンツのデータを取得する。
次に、図21および図22のフローチャートを参照して、図19で構成を示す記録再生システムによるダイジェストの表示の処理の詳細を説明する。
ステップS301において、ダイジェスト画面生成アプリケーションプログラム322の送信制御部342は、ダイジェストを表示しようとするコンテンツのファイルのステータスをサーバ301に要求する。
より具体的には、例えば、ステップS301において、送信制御部342は、後述する通信部410(図23)に、ダイジェストを表示しようとするコンテンツのファイル名を含むコマンド(例えば、図8のコマンド)をネットワーク302を介してサーバ301宛てに送信させることにより、ファイルのステータスをサーバ301に要求する。
ステップS401において、サーバ301は、クライアント303から送信されてきた、ファイルのステータスの要求を受信する。例えば、サーバ301のサーバプログラム321は、クライアント303から送信されてきたコマンドを受信させて、受信したコマンドをストレージマネージャ12に供給する。
ステップS402において、サーバ301のストレージマネージャ12は、ファイルについて、拡張属性を参照して、領域のステータスを取得する。例えば、サーバ301のストレージマネージャ12は、ファイルについて、HSM13のストアデータベース125から、ファイル名に関連付けて格納されている、キャッシュファイルを特定するための値であるキャッシュファイルIDを読み出す。そして、ストレージマネージャ12は、ファイルについて、HSM13のキャッシュテーブル38から、拡張属性を参照して、キャッシュファイルIDに対応して記録されている領域情報を読み出すことによって、領域のステータスを取得する。
ステップS403において、サーバ301のストレージマネージャ12は、領域のステータスを示すファイルステータス情報(例えば、図9のファイルステータス情報)を生成する。ステップS404におて、サーバプログラム321は、ネットワーク302を介して、領域のステータスを示すファイルステータス情報をクライアント303に送信する。
ステップS302において、ダイジェスト画面生成アプリケーションプログラム322の受信制御部343は、ネットワーク302を介してサーバ301から送信されてきたファイルステータス情報の受信を制御する。すなわち、受信制御部343は、後述する通信部410に、ネットワーク302を介してサーバ301から送信されてきたファイルステータス情報を受信させて、ファイルステータス情報を取得する。
ステップS303において、ダイジェスト画面生成アプリケーションプログラム322の決定部341は、変数Nに初期値である0を設定する。変数Nは、領域を特定するために用いられる。
ステップS304において、決定部341は、取得したファイルステータス情報を基に、領域Nがあるか否かを判定する。
ステップS304において、領域Nがあると判定された場合、ステップS305に進み、決定部341は、ファイルステータス情報から領域Nの情報を抽出する。ステップS305において抽出される領域Nの情報には、コンテンツのデータの先頭から領域Nの先頭までのオフセット値(バイト)を示すオフセット、領域Nのデータ量を示すサイズ、および領域Nがストア済みであるかまたはホール状態であるかを示すフラグが含まれる。
ステップS306において、決定部341は、抽出した領域Nの情報に含まれるフラグに基づいて、領域Nがストアされているか否かを判定する。
ステップS306において、領域Nがストアされていると判定された場合、ステップS307に進み、決定部341は、抽出した領域Nの情報に含まれるサイズに基づいて、領域Nのサイズは、デコードに十分な大きさであるか否かを判定する。例えば、ステップS307において、決定部341は、領域Nのサイズと、デコードに必要なデータ量を示す閾値とを比較することにより、領域Nのサイズが、デコードに十分な大きさであるか否かを判定する。
ステップS307において、領域Nのサイズが、デコードに十分な大きさであると判定された場合、ステップS308に進み、決定部341は、領域Nをデコード候補に設定し、手続きは、ステップS309に進む。
ステップS306において、領域Nがストアされていない、すなわち、ホール領域であると判定された場合、またはステップS307において、領域Nのサイズが、デコードに十分な大きさでないと判定された場合、ステップS308の処理はスキップされ、その領域Nはデコード候補とされず、手続きは、ステップS309に進む。
このように、HDD34にデータがストアされている領域であって、デコードに十分なデータ量の領域がデコード候補とされる。デコードに十分な大きさでないサイズの領域がデコード候補とされないようにすることで、データを安定して復号することができ、その結果、例えば、表示されるダイジェストの画像が乱れてしまうことが防止される。
ステップS309において、決定部341は、変数Nを1だけインクリメントして、次の領域Nについて、ステップS304乃至ステップS309の処理を繰り返す。
ステップS304において、領域Nがないと判定された場合、対象としているファイルの領域の全てのうち、HDD34にデータがストアされている領域であって、デコードに十分なデータ量の領域をデコード候補としたので、ステップS310に進み、決定部341は、デコード候補の領域のデータで再生される時間(コンテンツの再生の時間)の総和を計算する。
例えば、決定部341は、デコード候補の領域のデータのデータ量の総和を計算して、計算された総和を再生のビットレートの平均値で割り算することにより、再生される時間(コンテンツの再生の時間)の総和を計算する。
なお、領域情報に、その領域の再生の時間を含め、これから、再生される時間の総和を計算するようにしてもよい。
ステップS311において、決定部341は、計算された時間の総和が、予め定めた最大時間より長いか否かを判定する。最大時間は、任意に決めることができるが、例えば、1分とすることができる。
ステップS311において、計算された時間の総和が、予め定めた最大時間より長いと判定された場合、ステップS312に進み、決定部341の範囲決定部351は、ステップS61と同様の処理で、最大時間に収まるように、デコード候補の領域の範囲を減らし、手続きは、ステップS313に進む。
ステップS311において、計算された時間の総和が、予め定めた最大時間より長くないと判定された場合、ステップS312はスキップされ、手続きは、ステップS313に進む。この場合、デコード候補の領域の全体が、ダイジェストとして再生される範囲とされる。
ステップS313において、ダイジェスト画面生成アプリケーションプログラム322の送信制御部342は、ネットワーク302を介して、サーバ301に、最初のデコード候補の領域の範囲のデータを要求する。
例えば、ステップS313において、送信制御部342は、最初のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図10または図13に例示される方式のコマンドを、後述する通信部410に、ネットワーク302を介してサーバ301宛てに送信させることにより、最初のデコード候補の領域の範囲のデータの提供をサーバ301に要求する。
ステップS405において、サーバ301は、クライアント303からの、最初のデコード候補の領域の範囲のデータの提供の要求を受信する。ステップS406において、サーバ301は、リードアクセスの処理を実行する。リードアクセスの処理は、図14で説明した処理と同様なのでその説明は省略する。
ステップS407において、サーバ301は、リードアクセスの処理により読み出された、最初のデコード候補の領域の範囲のデータを、ネットワーク302を介して、クライアント303に送信する。
ステップS314において、ダイジェスト画面生成アプリケーションプログラム322の受信制御部343は、ネットワーク302を介してサーバ301から送信されてくる、最初のデコード候補の領域の範囲のデータの受信を制御する。受信制御部343は、後述する通信部410に、最初のデコード候補の領域の範囲のデータを受信させて、最初のデコード候補の領域の範囲のデータを取得する。ステップS315において、ダイジェスト画面生成アプリケーションプログラム322は、デコーダ51に、取得したデータのデコードを開始させる。ステップS316において、ダイジェスト画面生成アプリケーションプログラム322は、デコーダ51に、ビデオアウトインターフェース32を介して復号された信号を出力させることで、ビデオアウトインターフェース32に接続されている機器にダイジェストの表示を開始させる。
ステップS317において、ダイジェスト画面生成アプリケーションプログラム322は、ダイジェストの表示の停止を指令する停止指令が入ったか否かを判定し、停止指令が入っていないと判定された場合、ステップS318に進む。例えば、ダイジェスト画面生成アプリケーションプログラム322は、コンテンツの再生の指令を受け取ったり、または、他の処理の実行が指令されたりなどした場合、ダイジェストの表示の停止を指令する停止指令が入ったと判定する。
ステップS318において、ダイジェスト画面生成アプリケーションプログラム322の送信制御部342は、ネットワーク302を介して、サーバ301に、次のデコード候補の領域の範囲のデータを要求する。
例えば、ステップS318において、送信制御部342は、後述する通信部410に、次のデコード候補である領域のオフセットおよび範囲のサイズを指定する、図10または図13に例示される方式のコマンドを、ネットワーク302を介してサーバ301宛てに送信させることにより、次のデコード候補の領域の範囲のデータの提供をサーバ301に要求する。
ステップS408において、サーバ301は、クライアント303からの、次のデコード候補の領域の範囲のデータの提供の要求を受信する。ステップS409において、サーバ301は、リードアクセスの処理を実行する。リードアクセスの処理は、図14で説明した処理と同様なのでその説明は省略する。
ステップS410において、サーバ301は、リードアクセスの処理により読み出された、次のデコード候補の領域の範囲のデータを、ネットワーク302を介して、クライアント303に送信する。
ステップS319において、ダイジェスト画面生成アプリケーションプログラム322の受信制御部343は、ネットワーク302を介してサーバ301から送信されてくる、次のデコード候補の領域の範囲のデータの受信を制御する。受信制御部343は、後述する通信部410に、次のデコード候補の領域の範囲のデータを受信させることで、次のデコード候補の領域の範囲のデータを取得する。そして、手続きは、ステップS317に戻り、上述した処理を繰り返す。
このように、ステップS313乃至ステップS314、およびステップS318乃至ステップS319の処理が実行されることにより、デコード候補の領域の範囲のデータだけがダイジェスト画面生成アプリケーションプログラム322に取得され、デコード候補の領域の範囲のコンテンツがダイジェストとして表示されることになる。
ステップS317において、停止指令が入ったと判定された場合、ステップS320に進み、ダイジェスト画面生成アプリケーションプログラム322は、デコーダ51に、デコードを停止させる。ステップS321において、ダイジェスト画面生成アプリケーションプログラム322は、デコーダ51に、復号された信号の出力を停止させることで、ダイジェストの表示を停止させて、処理は終了する。
以上のように、HDD34に記録されているデータだけが、ネットワーク302を介してサーバ301からクライアント303に送信されて、クライアント303は送信されてきたデータによってダイジェスト(要約)を表示する。サーバ301において光ディスク36からのデータの読み出しを抑制するようにしたので、リソースの占有を抑制して、迅速に要約を表示させることができるようになる。
使用者は、表示されたコンテンツの要約を鑑賞することができる。
なお、最後のストレージ候補の領域の範囲のデータを取得した後、ステップS313に戻って処理を繰り返すようにすれば、図18の最も下の横長の四角で表されるように、デコード候補の領域の範囲のデータが繰り返し取得されて、デコード候補の領域の範囲のコンテンツがダイジェストとして繰り返し表示されることになる。
また、ダイジェスト画面生成アプリケーションプログラム322は、取得した(受信した)デコード候補の領域の範囲のデータを記憶して、記憶したデータに基づいて、ダイジェストを繰り返し表示させるようにしてもよい。このようにすれば、同じデータを繰り返し送信し、受信する必要がなくなる。
なお、HDD34に代えて、半導体メモリなどの他の高速な記録媒体を用いるようにしてもよく、また、光ディスク36に代えて、磁気ディスクまたは磁気テープなどの記録容量当たりの価格がより安い他の記録媒体を用いるようにしてもよい。
また、コンテンツは、画像または音声に限られるものではなく、時間的に連続的に使用される使用者にとって有意なデータであればよく、例えば、ゲームに用いるデータ、時間の経過に対応して計測されたデータ、または時間の経過に対応して計算されたシミュレーションの結果のデータなどであってもよい。
なお、アプリケーションプログラムのそれぞれに通常モードまたはエスケープリロードモードのいずれか一方を対応付けるようにしてもよい。この場合、例えば、キャッシュテーブル38に、アプリケーションプログラムIDと通常モードまたはエスケープリロードモードの何れか一方を示すフラグとを対応付けて格納し、ストレージマネージャ12は、アプリケーションプログラムからの要求に含まれるアプリケーションプログラムIDに対応付けられたフラグを参照して、通常モードまたはエスケープリロードモードのいずれかでコンテンツのデータを読み出す。
また、コンテンツのそれぞれに通常モードまたはエスケープリロードモードのいずれか一方を対応付けるようにしてもよい。この場合、キャッシュテーブル38に、キャッシュファイルIDと通常モードまたはエスケープリロードモードの何れか一方を示すフラグとを対応付けて格納し、ストレージマネージャ12は、通常モードまたはエスケープリロードモードの何れか一方を示すフラグを参照して、通常モードまたはエスケープリロードモードのいずれかでコンテンツのデータを読み出す。
このように、コンテンツの部分のデータを取得するようにした場合には、要約を表示させることができる。また、前記第2の記録媒体から取得した前記データ属性情報によって、第2の記録媒体にデータが記録されているコンテンツの部分の中から、要約を構成するコンテンツの部分を決定し、決定したコンテンツの部分のデータを第2の記録媒体から取得するようにした場合には、リソースの占有を抑制して、迅速に要約を表示させることができる。
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、記録媒体からインストールされる。
図23は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成の例を示すブロック図である。CPU(Central Processing Unit)401は、ROM(Read Only Memory)402、記憶部408、または記憶部409に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)403には、CPU401が実行するプログラムやデータなどが適宜記憶される。これらのCPU401、ROM402、およびRAM403は、バス404により相互に接続されている。
なお、CPU401として、”Cell誕生”、日経エレクトロニクス、日経BP社、2005年2月28日、89頁乃至117頁に記載されているCellを採用することができる。
CPU401にはまた、バス404を介して入出力インターフェース405が接続されている。入出力インターフェース405には、キーボード、マウス、マイクロホンなどよりなる入力部406、ディスプレイ、スピーカなどよりなる出力部407が接続されている。CPU401は、入力部406から入力される指令に対応して各種の処理を実行する。そして、CPU401は、処理の結果を出力部407に出力する。
入出力インターフェース405に接続されている記憶部408は、例えば、ハードディスクからなり、CPU401が実行するプログラムや各種のデータを記録する。記憶部409は、例えば光ディスクを駆動するドライブなどからなり、各種のデータやCPU401が実行するプログラムを記録する。通信部410は、インターネットやLANなどのネットワークを介して外部の装置と通信する。
また、通信部410を介してプログラムを取得し、記憶部408または記憶部409に記憶してもよい。
例えば、記録再生システム1としてのパーソナルコンピュータにおける、記憶部408は、例えばHDD34に対応し、記憶部409は、例えばジュークボックス104に対応する。
例えば、サーバ301としてのパーソナルコンピュータにおける、記憶部408は、例えばHDD34に対応し、記憶部409は、例えばジュークボックス104に対応する。通信部410は、インターネットやLANなどのネットワーク302を介してクライアント303などの外部の装置と通信する。
例えば、クライアント303としてのパーソナルコンピュータにおいて、記憶部409は、省略することができる。
入出力インターフェース405に接続されているドライブ411は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア412が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部408または記憶部409に転送され、記録される。
上述した一連の処理は、ハードウェアにより実行させることもできるし、ソフトウェアにより実行させることもできる。一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム格納媒体からインストールされる。
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム格納媒体は、図23に示すように、磁気ディスク(フレキシブルディスクを含む)、光ディスク(CD-ROM(Compact Disc-Read Only Memory),DVD(Digital Versatile Disc)を含む)、光磁気ディスク(MD(Mini-Disc)を含む)、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア412、または、プログラムが一時的もしくは永続的に格納されるROM402や、記憶部408を構成するハードディスクなどにより構成される。プログラム格納媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインターフェースである通信部410を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
なお、本明細書において、プログラム格納媒体に格納されるプログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
なお、本発明の実施の形態は、上述した実施の形態に限定されるものではなく、本発明の要旨を逸脱しない範囲において種々の変更が可能である。
本発明の一実施の形態の記録再生システムの構成を示すブロック図である。 記録再生システムのより詳細な構成を示すブロック図である。 記録再生システムにおいて用いる情報を説明する図である。 HDDに記録されるキャッシュファイルを説明する図である。 領域および拡張属性における領域情報について説明する図である。 スタブ領域のスタブデータの構成を示す図である。 コンテンツの一覧の表示の処理を説明するフローチャートである。 ファイルのステータスを要求するコマンドの一例を示す図である。 ファイルステータス情報の一例を示す図である。 光ディスクからのデータの読み出しを抑制するとともに、HDDからデータの読み出しを指令するコマンドの一例を示す図である。 コンテンツ一覧の例を示す図である。 コンテンツを再生する処理を説明するフローチャートである。 ディスクおよびHDDからデータの読み出しを指令するコマンドの一例を示す図である。 リードアクセスの処理の詳細を説明するフローチャートである。 ReadA1Block(flag,offset,*buf)の処理の詳細を説明するフローチャートである。 ダイジェスト画面生成アプリケーションプログラムの構成の例を示すブロック図である。 ダイジェストの表示の処理を説明するフローチャートである。 デコード候補の領域の例を示す図である。 本発明の一実施の形態の記録再生システムの他の構成を示すブロック図である。 ダイジェスト画面生成アプリケーションプログラムの構成の例を示すブロック図である。 ダイジェストの表示の処理を説明するフローチャートである。 ダイジェストの表示の処理を説明するフローチャートである。 パーソナルコンピュータの構成の例を示すブロック図である。
符号の説明
1 記録再生システム, 11 ビデオプレーヤ, 12 ストレージマネージャ, 13 HSM, 31 再生プログラム, 33 マイグレーションファイルシステム, 34 HDD , 35 ドライブ, 36−1乃至36−Nまたは36 光ディスク, 38 キャッシュテーブル, 39 ボリウムテーブル, 51 デコーダ, 52 ダイジェスト画面生成アプリケーションプログラム, 53 動画再生アプリケーションプログラム, 201 決定部, 202 取得部, 211 範囲決定部, 301 サーバ, 302 ネットワーク, 303 クライアント, 322 ダイジェスト画面生成アプリケーションプログラム, 341 決定部, 342 送信制御部, 343 受信制御部, 351 範囲決定部, 401 CPU, 402 ROM, 403 RAM, 408 記憶部, 409 記憶部, 412 リムーバブルメディア

Claims (8)

  1. 第1の記録媒体に全体のデータが記録されるとともに、第2の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御装置において、
    前記第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定する決定手段と、
    決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得する取得手段と
    を備える表示制御装置。
  2. 前記決定手段は、再生時間が予め定めた最大時間より長い場合、前記最大時間以下の再生時間となるように前記要約を構成する前記コンテンツの部分の範囲を決定する
    請求項1に記載の表示制御装置。
  3. 前記決定手段は、前記第2の記録媒体にデータが記録されている前記コンテンツの部分のそれぞれから、予め定めた長さの時間の前記範囲を決定する
    請求項2に記載の表示制御装置。
  4. 前記決定手段は、復号に必要なデータ量より少ないデータ量の前記コンテンツの部分が前記要約を構成しないように、前記要約を構成する前記コンテンツの部分を決定する
    請求項1に記載の表示制御装置。
  5. 前記第1の記録媒体または前記第2の記録媒体から、前記コンテンツのデータまたは前記データ属性情報を読み出す読み出し手段をさらに備える
    請求項1に記載の表示制御装置。
  6. 前記第1の記録媒体および前記第2の記録媒体を備えるサーバに、ネットワークを介して、前記データ属性情報または前記コンテンツのデータの要求を送信する送信手段をさらに備え、
    前記取得手段は、前記ネットワークを介して前記サーバから送信されてくる前記データ属性情報または前記コンテンツのデータを受信することで、前記データ属性情報または前記コンテンツのデータを取得する
    請求項1に記載の表示制御装置。
  7. 第1の記録媒体に全体のデータが記録されるとともに、第2の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御方法において、
    前記第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、
    決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得する
    ステップを含む表示制御方法。
  8. 第1の記録媒体に全体のデータが記録されるとともに、第2の記録媒体に、全体が分割されてなる複数の部分のうちの所定の部分のデータと、前記部分のデータの属性に関するデータ属性情報とが記録されている、時間的に連続するコンテンツの要約の表示を制御する表示制御処理を、コンピュータに行わせるプログラムにおいて、
    前記第2の記録媒体から取得した前記データ属性情報によって、前記第2の記録媒体にデータが記録されている前記コンテンツの部分の中から、前記要約を構成する前記コンテンツの部分を決定し、
    決定した前記コンテンツの部分のデータを前記第2の記録媒体から取得する
    ステップを含むプログラム。
JP2005269935A 2005-09-16 2005-09-16 表示制御装置および方法、並びにプログラム Pending JP2007080148A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2005269935A JP2007080148A (ja) 2005-09-16 2005-09-16 表示制御装置および方法、並びにプログラム

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2005269935A JP2007080148A (ja) 2005-09-16 2005-09-16 表示制御装置および方法、並びにプログラム

Publications (1)

Publication Number Publication Date
JP2007080148A true JP2007080148A (ja) 2007-03-29

Family

ID=37940368

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2005269935A Pending JP2007080148A (ja) 2005-09-16 2005-09-16 表示制御装置および方法、並びにプログラム

Country Status (1)

Country Link
JP (1) JP2007080148A (ja)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000124958A (ja) * 1998-10-20 2000-04-28 Mitsubishi Electric Corp 符号化データ切替装置
JP2000195239A (ja) * 1998-12-28 2000-07-14 Hitachi Ltd ディスク装置
JP2002304353A (ja) * 2001-04-05 2002-10-18 Sony Corp 情報提供装置、通信システムおよび通信方法
JP2005109566A (ja) * 2003-09-26 2005-04-21 Toshiba Corp 映像要約装置、説明文生成装置、映像要約方法、説明文生成方法及びプログラム
JP2005538469A (ja) * 2002-09-10 2005-12-15 イグザグリッド システムズ, インコーポレイテッド 階層型格納管理を用いるサーバシェア移送およびサーバ回復のための方法および装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000124958A (ja) * 1998-10-20 2000-04-28 Mitsubishi Electric Corp 符号化データ切替装置
JP2000195239A (ja) * 1998-12-28 2000-07-14 Hitachi Ltd ディスク装置
JP2002304353A (ja) * 2001-04-05 2002-10-18 Sony Corp 情報提供装置、通信システムおよび通信方法
JP2005538469A (ja) * 2002-09-10 2005-12-15 イグザグリッド システムズ, インコーポレイテッド 階層型格納管理を用いるサーバシェア移送およびサーバ回復のための方法および装置
JP2005109566A (ja) * 2003-09-26 2005-04-21 Toshiba Corp 映像要約装置、説明文生成装置、映像要約方法、説明文生成方法及びプログラム

Similar Documents

Publication Publication Date Title
US20120185861A1 (en) Media foundation media processor
WO2005111835A2 (en) Background transcoding
KR20050033427A (ko) 이벤트 발생 정보가 기록된 정보저장매체, 그 재생장치 및재생방법
US20070122105A1 (en) Recording device, method thereof, program product and program recording medium
WO2021020142A1 (ja) ファイル処理装置、ファイル処理方法、及び、プログラム
JP2006054898A (ja) スケジュール機能を備えたマルチメディアコンテンツディスプレイシステム及びそのコンテンツ再生方法
JP4508028B2 (ja) 情報処理装置,情報処理方法およびコンピュータプログラム
EP1811519A2 (en) Recording apparatus, recording method, program, encoding apparatus, and encoding method
US7882157B2 (en) Content data recording device and recording control method
WO2000058837A1 (fr) Gestion de fichiers, enregistrement/reproduction de donnees et dispositifs a cet effet
KR101257958B1 (ko) 판독 장치 및 방법, 프로그램 및 프로그램 기록 매체
US20070014198A1 (en) Recording device, recording method, recording program, and program recording medium
JP3999440B2 (ja) コンテンツ管理方法、コンテンツ管理システムおよび記憶媒体
WO2014065165A1 (ja) 情報処理装置、情報処理方法、およびプログラム、並びに情報処理システム
JP2007080148A (ja) 表示制御装置および方法、並びにプログラム
JP4186963B2 (ja) 記録装置および方法、読み出し装置および方法、並びにプログラム
JP2003046928A (ja) ネットワーク映像再生方法および圧縮映像データ復号再生装置
US7471872B2 (en) Reproducing apparatus for data stored in disk-shape storage media
WO2004084211A1 (en) Method of exchanging user messages among interactive disk players
JP2007080147A (ja) 読み出し装置および方法、情報処理装置および方法、並びにプログラム
US8763053B1 (en) File system for a file server of a video-on-demand system
JP2007102992A (ja) 素材管理システム
KR20050046174A (ko) 녹화물 복사방법 및 그 방법이 구현된 개인용 비디오 녹화기
KR20050033408A (ko) 프리로드 정보가 기록된 정보저장매체, 그 재생장치 및재생방법
JP3334514B2 (ja) マルチメディアデータ視聴システム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20080909

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20110502

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20110512

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20110913