図1は、本発明の実施例にかかるコンテンツ購入システムを示す。コンテンツ購入システム1は、リモートコントローラ40と、コンテンツを処理する情報処理装置10と、情報処理装置10による処理結果を出力する出力装置12とを備える。リモートコントローラ40は、ユーザに情報処理装置10への操作入力を行わせる入力インタフェース装置である。なおリモートコントローラ40は、無線により操作入力を送信するものであるが、ケーブルで情報処理装置10に接続される入力インタフェース装置が用いられてもよい。出力装置12は、画像を出力するディスプレイと、音声を出力するスピーカを有するテレビであってよい。出力装置12は、情報処理装置10に有線ケーブルで接続されてよく、また無線LAN(Local Area Network)などにより無線接続されてもよい。情報処理装置10はルータ15を介して、ネットワーク16に接続するコンテンツ配信サーバ18と通信可能に接続されており、所望のコンテンツをダウンロードすることができる。
コンテンツ配信サーバ18は、ビデオ配信会社などにより運営されて、情報処理装置10に対して、暗号化されたビデオコンテンツファイル、コンテンツ視聴を許諾するライセンスファイル、およびコンテンツファイルをデコードするための鍵ファイルを提供する。なおコンテンツ配信サーバ18は、コンテンツファイルとして、ビデオコンテンツファイルだけでなく、音楽コンテンツファイルや、ゲームソフトウェアファイルなどを情報処理装置10に提供してもよい。以下では、コンテンツ配信サーバ18が、ビデオコンテンツに関するファイルを提供する例について説明する。
コンテンツ購入システム1では、情報処理装置10が、リモートコントローラ40から送信されるユーザの指示により所望のビデオコンテンツを購入して、コンテンツ配信サーバ18よりダウンロードする。購入の形態として、ビデオコンテンツを買い取る形態と、レンタルされる形態とがある。ユーザが買い取る形態では、ユーザがビデオコンテンツをいつでも視聴できる。一方、レンタルされる形態では、ユーザは有効期限までにビデオコンテンツを視聴する必要があり、有効期限が過ぎると、ユーザはビデオコンテンツを視聴できなくなる。レンタルされたビデオコンテンツの管理は、情報処理装置10により行われる。
なお情報処理装置10は、ビデオコンテンツの再生処理機能だけでなく、音楽コンテンツの再生機能を有してもよい。また情報処理装置10は、ゲームソフトウェアの処理機能を有してもよく、さらに他のコンテンツの処理機能を有して構成されてよい。したがって本実施例におけるレンタルコンテンツは、ビデオコンテンツに限らず、音楽コンテンツ、ゲームコンテンツなど、様々な種類のコンテンツを含む。
図2は、情報処理装置10の機能ブロック図を示す。情報処理装置10は、電源ボタン20、LED22、システムコントローラ24、デバイスコントローラ30、メディアドライブ32、ハードディスクドライブ34、スイッチ36、無線インタフェース38、メインコントローラ100、メインメモリ102および出力処理部104を有して構成される。
電源ボタン20は、ユーザからの操作入力が行われる入力部であって、情報処理装置10への電源供給をオンまたはオフするために操作される。LED22は、電源のオンまたはオフの状態を点灯表示する。システムコントローラ24は、電源ボタン20の押下状態または非押下状態を検出し、電源オフの状態から押下状態への状態遷移を検出すると、メインコントローラ100を起動して、オペレーティングシステムのブートシーケンスを立ち上げるとともに、LED22を点灯制御する。情報処理装置10に電源ケーブルが差し込まれている場合、システムコントローラ24は、電源オフの状態であってもスタンバイモードを維持して、電源ボタン20の押下を監視する。
デバイスコントローラ30は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ30には、システムコントローラ24、メディアドライブ32、ハードディスクドライブ34、スイッチ36およびメインコントローラ100などのデバイスが接続される。デバイスコントローラ30は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。ハードディスクドライブ34は、内蔵ハードディスクを駆動して、データの書込/読出を行う。内蔵ハードディスクは、データを記憶する記憶装置として機能する。メディアドライブ32は、読出専用の記録媒体50が装着されると、記録媒体50を駆動して認識し、記録媒体50から必要なデータを読み出すドライブ装置である。記録媒体50は、光ディスクや光磁気ディスクなどのメディアであってよい。
スイッチ36は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、データの送受信を行うデバイスである。スイッチ36は、ネットワーク16を介して、コンテンツ配信サーバ18からコンテンツファイル、ライセンスファイルおよび鍵ファイルを受信する。またスイッチ36は無線インタフェース38に接続し、無線インタフェース38は、Bluetooth(登録商標)プロトコルやIEEE802.11プロトコルなどの無線通信プロトコルでリモートコントローラ40と接続する。リモートコントローラ40に入力されたユーザの操作情報は、無線インタフェース38、スイッチ36、デバイスコントローラ30を通じてメインコントローラ100に供給される。
メインコントローラ100は、マルチコアCPUを備え、1つのCPUの中に1つの汎用的なプロセッサコアと、複数のシンプルなプロセッサコアを有する。汎用プロセッサコアはPPU(Power Processing Unit)と呼ばれ、残りのプロセッサコアはSPU(Synergistic-Processing Unit)と呼ばれる。メインコントローラ100では、情報処理装置10を効率よく使用するための機能、環境を提供し、装置全体を統括的に制御するオペレーティングシステム(以下、単に「OS(Operating System)」と呼ぶ)が実行される。本実施例における情報処理装置10のOS階層は、上位から、ユーザ層、カーネル(Kernel)層、ハイパーバイザ(Hypervisor)層の3階層をとり、ユーザ層、カーネル層とハイパーバイザ層のソフトウェアが一体となって、情報処理装置10の「OS」として機能する。
電源ボタン20により電源投入されると、システムコントローラ24は、デバイスコントローラ30を経由して、メインコントローラ100および出力処理部104に電源を供給する。メインコントローラ100に電源が供給されると、PPUは、まずOSのブートローダを実行して、ハイパーバイザ層を起動する。つづいて、PPUは、OSのカーネル層を起動し、さらにユーザ層を起動して、ハードディスクドライブ34または記録媒体50から供給されるデータの受入態勢を整える。
メインコントローラ100は、メインメモリ102に接続するメモリコントローラを備える。PPUはレジスタを有し、演算実行主体としてメインプロセッサを備えて、実行するアプリケーションにおける基本処理単位としてのタスクを各SPUに効率的に割り当てる。なお、PPU自身がタスクを実行してもよい。SPUはレジスタを有し、演算実行主体としてのサブプロセッサとローカルな記憶領域としてのローカルメモリを備える。メインメモリ102およびローカルメモリは、RAM(ランダムアクセスメモリ)として構成される。SPUは制御ユニットとして専用のDMA(Direct Memory Access)コントローラをもち、メインメモリ102とローカルメモリの間のデータ転送を行うことで、データを高速にストリーム処理でき、また出力処理部104に内蔵されるフレームメモリとローカルメモリの間で高速なデータ転送を実現できる。
出力処理部104は、出力装置12に接続されて、アプリケーションの処理結果である映像信号および音声信号を出力する。出力処理部104は、画像処理機能を実現するGPU(Graphics Processing Unit)を備える。GPUは、HDMI(High Definition Multimedia Interface)を採用してもよい。
本実施例の情報処理装置10において、ハードディスクドライブ34には、ビデオコンテンツ、音楽コンテンツ、ゲームコンテンツなど、様々なコンテンツが格納される。これらのコンテンツは、コンテンツ配信サーバ18からダウンロードしたものであってもよく、また記録媒体50からインストールしたものであってもよい。これらのコンテンツファイルは、ハードディスクドライブ34においてフォルダにより分類される。
図3(a)は、ハードディスクに形成されたビデオコンテンツを格納するフォルダ構造の一例を示す。ビデオコンテンツファイル(XYZ.VDO)は、VIDEOフォルダに格納される。
図3(b)は、ハードディスクに形成されたビデオコンテンツを格納するフォルダ構造の別の例を示す。このフォルダ構造は、階層構造をとる。ビデオコンテンツファイル(XYZ.VDO)は、VIDEOフォルダ内に形成されたAAフォルダに格納される。
既述したようにレンタルコンテンツには、利用可能な有効期限が定められている。そこで本実施例の情報処理装置10は、ユーザに対してレンタルコンテンツの存在を効果的に提示し、またその有効期間についても効果的に提示できるGUI(グラフィカルユーザインタフェース)を提供する。これにより、ユーザはレンタルコンテンツを取得したことを忘れることなく視聴できるようになる。
図4は、ハードディスクに形成されたライセンスファイルを格納するフォルダ構造の一例を示す。ライセンスファイル(ABC.LCN)は、LICENSEフォルダ内に形成された(USER_ID)フォルダに格納される。なお(USER_ID)は、情報処理装置10の登録ユーザの識別番号であり、したがってライセンスファイルは、ユーザごとのフォルダに格納される。なお(USER_ID)は、ユーザの識別番号そのものであってもよく、またユーザ識別番号から導出される文字列であってもよい。ライセンスファイルは、コンテンツの購入形態情報、有効期間の開始時刻および終了時刻などのライセンス情報を含んで構成される。情報処理装置10は、ライセンスファイルを取得して保持することで、レンタルコンテンツの再生に対するライセンスを受けていることを認識する。ライセンスが有効か否かは、ライセンス情報およびその他の条件をもとに判定され、具体的には現在時刻が有効期限前であればライセンスが有効であり、有効期限を過ぎていればライセンスが無効となる。
コンテンツ購入システム1において、コンテンツの再生有効期間は、所定日数、たとえば14日に設定される。なお有効期間は、コンテンツ毎に設定されていてもよい。有効期間の開始時刻には、ダウンロードした日時が設定されてもよく、またダウンロード後の所定の日時が設定されてもよい。なお、コンテンツは一度再生されると、情報処理装置10が、有効期間の終了時刻を、初回再生時刻の24時間後に再設定する。
本実施例の情報処理装置10は複数のユーザで共用可能であるが、原則として各ユーザのデータは、ハードディスクドライブ34の異なるフォルダにて保持されている。フォルダ名はユーザごとにユーザID(識別情報)に紐付けられて形成され、情報処理装置10のOSは、ログイン時に入力されたユーザIDをもとに、他のユーザのフォルダへのアクセスを禁止する。これによりユーザが、異なるユーザのデータを勝手に使用することはできず、個人データのセキュリティが保たれる。
一方で、ビデオコンテンツは個人データではないため、ダウンロードしたユーザ以外のユーザも視聴できるようにすることが好ましい。たとえば家族で情報処理装置10を共用しているのであれば、ダウンロードしたビデオコンテンツを、家族全員が見られるようにしてもよい。従来より、ビデオショップからビデオカセットやDVDをレンタルするような場合も、家族で見回すことができており、本実施例の情報処理装置10は、この事情をふまえて、ビデオコンテンツを、登録した複数のユーザが利用可能とする。
図5は、メインコントローラ100の内部構成を主として示す。メインコントローラ100は、指示生成部200、有効期間処理部220、ライセンス情報処理部240、レンタルマーク処理部260、再生制御部280、デコード部310、再生時刻書込部320および表示処理部340を備える。記憶装置300は、ハードディスクドライブ34であり、複数のコンテンツファイル302a〜302b、複数のライセンスファイル304a〜304d、複数の鍵ファイル306a〜306dを格納する。鍵ファイル306は、暗号化されたコンテンツファイル302をデコードするための鍵情報を含む。ダウンロードしたコンテンツファイル302が他の情報処理装置でも再生できることを防止するために、鍵情報は、コンテンツ配信サーバ18経由で取得され、情報処理装置10の装置IDを用いて暗号化されて格納されている。
ライセンスファイル304および鍵ファイル306は、コンテンツファイル302をダウンロードしたユーザに対してコンテンツ配信サーバ18より付与される。異なるユーザにより同じコンテンツファイル302が複数回ダウンロードされると、記憶装置300において、コンテンツファイルは上書きされて格納される。一方で、ライセンスファイル304および鍵ファイル306は、コンテンツファイル302をダウンロードしたユーザに対して付与される。この場合、1つのコンテンツファイル302に対して、複数ユーザのライセンスファイル304および鍵ファイル306が記憶装置300に格納されることになる。
指示生成部200は、メニュー画面生成指示部202、詳細情報画面生成指示部204および再生指示部206を有する。指示生成部200は、ユーザによるリモートコントローラ40からの操作入力または電源投入情報を受け付けると、有効期間処理部220、ライセンス情報処理部240、レンタルマーク処理部260、再生制御部280、デコード部310、表示処理部340のうちの必要な機能ブロックに対して所定の指示を発行する。
メニュー画面生成指示部202は、コンテンツを選択するためのメニュー画面を生成させる指示情報を必要な機能ブロックに対して発行する。この指示情報は、たとえば電源ボタン20が押下されたとき、また詳細情報画面からメニュー画面に戻るとき、またメニュー画面が操作されたときなどに生成される。詳細情報画面生成指示部204は、リモートコントローラ40より、メニュー画面からコンテンツの詳細情報画面に移行させる指示情報を必要な機能ブロックに対して発行する。この指示情報は、たとえばメニュー画面からコンテンツの詳細情報画面に移行する操作入力をリモートコントローラ40から受け付けたときに生成される。再生指示部206は、コンテンツを再生させる指示情報を必要な機能ブロックに対して発行する。この指示情報は、メニュー画面においてコンテンツに対する再生指示がなされたときに生成される。
有効期間処理部220は、再生時刻情報取得部222、開始時刻導出部224、終了時刻導出部226および残り時間導出部228を有する。有効期間処理部220は、ライセンス情報ごとに、コンテンツ利用が可能な有効期間を求める処理を行う。
再生時刻情報取得部222は、ライセンスを利用してコンテンツが最初に再生された時刻情報を、記憶装置300から取得する。この初回再生時刻情報は、ライセンスファイル304に対応付けられる鍵ファイル306に書き込まれており、再生時刻情報取得部222は、鍵ファイル306より初回再生時刻情報を取得する。なお、そのライセンスを利用してコンテンツが再生されていない場合には、初回再生時刻情報は鍵ファイル306に含まれていない。開始時刻導出部224は、コンテンツの有効期間の開始時刻を導出する。終了時刻導出部226は、コンテンツの有効期間の終了時刻を導出する。有効期間の終了時刻は、本明細書において、有効期限と呼ぶこともある。残り時間導出部228は、有効期限までの残り時間を導出する。
ライセンス情報処理部240は、ライセンス情報取得部242、購入形態判定部244および有効期間抽出部246を有する。ライセンス情報処理部240は、ライセンス情報についての処理を行う。
ライセンス情報取得部242は、記憶装置300に格納されたライセンスファイル304からライセンス情報を取得する。ライセンス情報取得部242は、ライセンスファイル304が存在していることをもって、対応付けられたコンテンツのライセンスを受けていることを認識する。購入形態判定部244は、ライセンス情報に含まれる購入形態情報から、コンテンツの購入形態を判定する。既述したように、コンテンツの購入形態には、買い取りと、レンタルとがある。有効期間抽出部246は、コンテンツの購入形態がレンタルである場合に、ライセンス情報に含まれる有効期間の開始時刻および終了時刻を抽出する。
レンタルマーク処理部260は、メニュー画面において、レンタルコンテンツのアイコン画像の近傍またはアイコン画像に重ねて配置するレンタルマークについての処理を行う。レンタルマークは、コンテンツがレンタルコンテンツであることをユーザに提示するためのマークである。
有効期限判定部262は、有効期限が既に到来したか否かを判定する。レンタルマーク決定部264は、複数種類のレンタルマークの中から、コンテンツのアイコン画像の近傍またはアイコン画像に重ねて配置するレンタルマークを決定する。
再生制御部280は、再生指示を受けて、コンテンツの再生を制御する処理を行う。利用ライセンス特定部282は、コンテンツを再生するのに利用するライセンスを特定する。デコード指示部284は、特定したライセンスを利用したコンテンツのデコード処理をデコード部310に指示する。
デコード部310は、特定したライセンスを利用して、コンテンツのデコード処理を行う。再生時刻書込部320は、そのライセンスを利用したデコード処理が初めての場合に、初回再生時刻情報を、対応する鍵ファイル306に書き込む。
表示処理部340は、メニュー画面生成部350、確認画面生成部360、詳細情報画面生成部370および購入画面生成部380を有する。表示処理部340は、出力装置12における表示画面を生成する処理を行う。
メニュー画面生成部350は、アイコン画像処理部352、フォルダ画像処理部354、レンタルマーク配置部356および時間情報配置部358を有する。メニュー画面生成部350は、メニュー画面生成指示部202からのメニュー画面生成指示を受けて、コンテンツを選択するためのメニュー画面を生成する。
アイコン画像処理部352は、コンテンツのアイコン画像をメニュー画面中に配置する。なおユーザがアイコン画像に対して再生指示を行うと、再生指示部206が、そのアイコン画像に対応付けられたコンテンツの再生指示を生成する。フォルダ画像処理部354は、フォルダ画像をメニュー画面中に配置する。レンタルマーク配置部356は、レンタルマークを、レンタルコンテンツのアイコン画像の近傍またはアイコン画像に重ねて配置する。またレンタルマーク配置部356は、レンタルコンテンツを含むフォルダ画像、およびフォルダ階層構造においてレンタルコンテンツを含むフォルダの上位に配置されるフォルダ画像の近傍またはフォルダ画像に重ねて、レンタルマークを配置する。時間情報配置部358は、レンタルコンテンツのアイコン画像に関連づけて、有効期間の終了時刻(有効期限)の情報を配置する。
確認画面生成部360は、ユーザに対してコンテンツの再生を開始してよいか確認するための確認画面を生成する。
詳細情報画面生成部370は、サムネイル画像表示部372、所有者情報配置部374、コンテンツ情報配置部376および時間情報配置部378を有する。詳細情報画面生成部370は、コンテンツおよび有効期間などについての情報を示す詳細情報画面を生成する。
サムネイル画像表示部372は、コンテンツを特定するサムネイル画像を詳細情報画面中の所定位置に配置する。所有者情報配置部374は、ライセンスの所有者情報を、詳細情報画面中に配置する。コンテンツ情報配置部376は、コンテンツに関する情報を、詳細情報画面中に配置する。時間情報配置部378は、有効期間に関する時間情報を、詳細情報画面中に配置する。
図5において、さまざまな処理を行う機能ブロックとして記載される各要素は、ハードウェア的には、CPU(Central Processing Unit)、メモリ、その他のLSIで構成することができ、ソフトウェア的には、メモリにロードされたプログラムなどによって実現される。既述したように、メインコントローラ100には1つのPPUと複数のSPUとが設けられており、PPUおよびSPUがそれぞれ単独または協同して、各機能ブロックを構成できる。したがって、これらの機能ブロックがハードウェアのみ、ソフトウェアのみ、またはそれらの組合せによっていろいろな形で実現できることは当業者には理解されるところであり、いずれかに限定されるものではない。
図6は、出力装置12に表示されるメニュー画面400aの一例を示す。このメニュー画面400aでは、複数のフォルダ画像402a〜402eが横方向に配列される。このうち、フォルダ画像402bは、音楽コンテンツのフォルダを示し、フォルダ画像402cは、ビデオコンテンツのフォルダを示し、フォルダ画像402dは、ゲームコンテンツのフォルダを示す。縦方向には、アイコン画像404a〜404dが配列される。ユーザは、リモートコントローラ40を操作して所望のアイコンをフォーカス領域の位置までスクロールさせて動かすことで、そのアイコンに対応付けられている処理を実行させることができる。図示の例では、ビデオコンテンツのアイコン画像404aがフォーカス領域に配置され、ユーザがリモートコントローラ40の所定のボタンを押下すると再生指示が発行され、タイトル「AirplaneAAA」のビデオコンテンツが再生される。以下、図5を参照して、メニュー画面400aの生成処理を説明する。
メニュー画面生成指示部202がメニュー画面の生成指示を発行すると、メニュー画面生成部350が、コンテンツを選択するためのメニュー画面を生成する。具体的にフォルダ画像処理部354が、最上位のフォルダ画像402a〜402eの表示位置を定め、メニュー画面中に配置する。またアイコン画像処理部352が、ビデオコンテンツをハードディスクドライブ34のVIDEOフォルダを参照して探し出し、表示対象とするアイコン画像404を特定する。アイコン画像処理部352は、特定したビデオコンテンツのアイコン画像404の表示位置を定め、メニュー画面中に配置する。アイコン画像404は、たとえばコンテンツファイル302に含まれており、アイコン画像処理部352は、図3(a)または図3(b)に示すコンテンツファイルから、アイコン画像を取得する。なおメニュー画面400aにおいて、音楽コンテンツのフォルダであるフォルダ画像402bがフォルダ画像402cの位置に存在すれば、アイコン画像処理部352が、音楽コンテンツをハードディスクドライブ34のMUSICフォルダを参照して探し出し、表示対象とするアイコン画像を特定することになる。
このときライセンス情報処理部240において、ライセンス情報取得部242が、ログインしているユーザのライセンス情報をライセンスファイル304から取得する。図4に示すように、ライセンス情報は、ユーザIDで特定されるフォルダに保持されており、ライセンス情報取得部242は、ユーザIDをもとに、そのユーザが所持しているライセンス情報を取得する。なおライセンスファイル304のファイル名を、コンテンツIDを用いて生成しておくことで、コンテンツに対応付けられたライセンスファイル304を読み出すことが容易となる。購入形態判定部244は、ライセンス情報に含まれる購入形態情報から、コンテンツが、その利用に有効期限のあるレンタルコンテンツであるか否かを判定する。購入形態情報は、買い取り、またはレンタルのいずれかを表現する情報であり、たとえば0または1のフラグ値として設定されていてもよい。本実施例のコンテンツ購入システム1においては、ライセンス情報取得部242が、ユーザIDをもとに、メニュー画面400aにおいて表示対象となるビデオコンテンツのアイコン画像404のライセンスファイル304の有無を確認し、ライセンスファイル304が存在する場合には、そのビデオコンテンツがレンタルコンテンツであるかが確認される。コンテンツがレンタルコンテンツであることが判定されると、有効期間抽出部246が、ライセンス情報から、有効期間の開始時刻および有効期間の終了時刻を示す有効期間情報を取得して、その有効期間情報を有効期間処理部220に供給する。
図6に示すメニュー画面400aにおいては、アイコン画像404に関連づけて、有効期限情報406が表示される。したがってメニュー画面400aの生成処理においては、有効期間の終了時刻(有効期限)と、場合によっては有効期間の残り時間が導出できればよい。一方、図9に関連して後述する詳細情報画面420においては、有効期間の終了時刻に加えて、有効期間の開始時刻、および有効期間の残り時間が表示される。これらの時間情報の導出処理は、有効期間処理部220において実行されるため、本明細書における重複説明を省略するべく、以下では、有効期間処理部220が開始時刻、終了時刻、残り時間を導出する処理について説明する。
有効期間処理部220において、コンテンツの未再生時、開始時刻導出部224が、供給された有効期間情報から、コンテンツの有効期間の開始時刻を導出する。また終了時刻導出部226が、供給された有効期間情報から、コンテンツの有効期間の終了時刻を導出する。ここで導出される開始時刻および終了時刻は、有効期間情報に含まれる開始時刻および終了時刻と一致する。残り時間導出部228は、原則として現在時刻から終了時刻までの残り時間を算出する。
コンテンツ購入システム1では、既述したように、コンテンツが一度再生されると、そのコンテンツの有効期間の終了時刻は、再生時刻の24時間後に再設定される。すなわち、コンテンツが再生された後は、初回再生時刻が有効期間の開始時刻となり、その24時間後が有効期間の終了時刻となる。以下、有効期間の導出処理について図7を参照しながら説明する。
図7は、有効期間の導出処理を説明するためのタイムチャートである。図7(a)〜図7(e)において、NOWは、有効期間の導出時点(以下、現在時刻とよぶ)を示す。有効期間の導出処理は、時刻情報を表示する表示画面が切り替わるたびに行われる。なお有効期間情報に含まれる開始時刻が6月3日1:30PMであり、終了時刻が6月17日1:30PMであるとする。
図7(a)は、現在時刻が、有効期間情報に含まれる開始時刻よりも前である状態を示す。このとき、ユーザはコンテンツを視聴できない。開始時刻導出部224は、有効期間情報に含まれる開始時刻を有効期間の開始時刻として設定し、終了時刻導出部226は、有効期間情報に含まれる終了時刻を有効期間の終了時刻として設定する。残り時間導出部228は、終了時刻から開始時刻までの時間を、残り時間として設定する。
開始時刻 6月3日1:30PM
終了時刻 6月17日1:30PM
残り時間 14日
図7(b)は、現在時刻が、有効期間情報に含まれる開始時刻よりも後であり、コンテンツが未再生の状態を示す。コンテンツが未再生であるため、開始時刻導出部224は、有効期間情報に含まれる開始時刻を有効期間の開始時刻として設定し、終了時刻導出部226は、有効期間情報に含まれる終了時刻を有効期間の終了時刻として設定する。残り時間導出部228は、終了時刻から現在時刻までの時間を、残り時間として設定する。
開始時刻 6月3日1:30PM
終了時刻 6月17日1:30PM
残り時間 11日
図7(c)は、初回再生が行われ、現在時刻が初回再生後24時間以内である状態を示す。図5を参照して、デコード部310が、ライセンスを利用してコンテンツをデコードして再生すると、再生時刻書込部320が、初回再生時刻情報を鍵ファイル306に書き込む。現在時刻において有効期間処理部220が起動されると、再生時刻情報取得部222は、ライセンスに対応する鍵ファイル306から初回再生時刻情報を取得し、開始時刻導出部224および終了時刻導出部226に供給する。開始時刻導出部224は、初回再生時刻情報を受け取ると、その時刻を、有効期間の開始時刻として設定する。終了時刻導出部226は、初回再生時刻情報を受け取ると、その時刻から所定時間後、ここでは24時間後の時刻を、有効期間の終了時刻として設定する。なお、初回再生時刻の24時間後の時刻が、有効期間情報に含まれる終了時刻を超えていれば、終了時刻は、ライセンス情報に含まれる終了時刻に設定される。残り時間導出部228は、終了時刻から現在時刻までの時間を、残り時間として設定する。
開始時刻 6月9日3:00PM
終了時刻 6月10日3:00PM
残り時間 17時間30分
図7(d)は、初回再生が行われ、現在時刻が終了時刻よりも後である状態を示す。開始時刻導出部224は、初回再生時刻を有効期間の開始時刻として設定し、終了時刻導出部226は、初回再生時刻の24時間後を、有効期間の終了時刻として設定する。残り時間導出部228は、現在時刻が終了時刻よりも後であるため、「期限切れ」であることを判定する。
開始時刻 6月9日3:00PM
終了時刻 6月10日3:00PM
残り時間 期限切れ
図7(e)は、一度も再生せずに終了時刻が過ぎた状態を示す。残り時間導出部228は、現在時刻が終了時刻よりも後であるため、「期限切れ」であることを判定する。
開始時刻 6月3日1:30PM
終了時刻 6月17日1:30PM
残り時間 期限切れ
図5に戻って、以上のように有効期間処理部220は、有効期間に関する処理を行う。なお前述したように、メニュー画面400aの生成処理においては、有効期間の開始時刻は必要でないため、開始時刻導出部224は機能しなくてよい。終了時刻導出部226が導出した終了時刻および残り時間導出部228が導出した残り時間は、レンタルマーク処理部260に供給され、また終了時刻は、表示処理部340にも供給される。
レンタルマーク処理部260において、有効期限判定部262は、終了時刻を受けて、現在時刻で既に終了時刻(有効期限)が過ぎているか否か判定する。この判定は、残り時間から行われてもよい。
有効期限判定部262による判定結果を受けて、レンタルマーク決定部264は、レンタルコンテンツに割り当てるレンタルマークを決定する。具体的にレンタルマーク決定部264は、有効期限が到来していないレンタルコンテンツに第1レンタルマークを割り当て、有効期限が過ぎたレンタルコンテンツに第2レンタルマークを割り当てる。図6に示すメニュー画面400aにおいては、有効期限が到来してないタイトル「AirplaneAAA」のレンタルコンテンツには、レンタルマーク410aが割り当てられ、有効期限が過ぎたタイトル「BirthdayDDD」のレンタルコンテンツには、レンタルマーク410bが割り当てられている。割り当てられたレンタルマークはレンタルマーク配置部356に供給されて、レンタルマーク配置部356は、それぞれのアイコン画像404の近傍またはアイコン画像に重ねて、レンタルマーク410を配置する。メニュー画面400aにおいては、レンタルマーク配置部356が、アイコン画像404の左縁に沿ってレンタルマーク410を配置している。
レンタルマーク配置部356が、有効期限の到来していないレンタルコンテンツのアイコン画像404aに対してレンタルマーク410aを付加することで、ユーザは、視聴可能なレンタルコンテンツの存在を容易に確認することができ、コンテンツ視聴のインセンティブを得ることができる。
またレンタルマーク配置部356が、有効期限の過ぎたレンタルコンテンツのアイコン画像404bに対してレンタルマーク410bを付加することで、ユーザは、視聴不能なレンタルコンテンツの存在を容易に確認することができる。これにより、コンテンツファイルを削除するなど、記憶装置300の空き容量を増やす契機を与えることができる。
なおレンタルマーク決定部264は、有効期限まで所定時間以上残っているレンタルコンテンツと、有効期限まで所定時間未満となったレンタルコンテンツとで異なるレンタルマークを割り当ててもよい。たとえば、有効期限まで24時間をきったレンタルコンテンツの存在は、ユーザに緊急に知らせることが好ましい。そのため、有効期限まで24時間以上残っているレンタルコンテンツについては、静止画のレンタルマークを割り当て、一方で24時間をきったレンタルコンテンツについては、動画のレンタルマークを割り当ててもよい。たとえば点滅するレンタルマークを割り当てることで、ユーザの注意を喚起することができる。また、発光色など目立ちやすいレンタルマークを割り当てることでも、ユーザの注意を喚起することが可能である。
時間情報配置部358は、終了時刻導出部226から終了時刻を受け取ると、アイコン画像404に関連づけて終了時刻(有効期限)情報406をメニュー画面400aに配置する。たとえばアイコン画像404と同じ高さに有効期限情報406を配置することで、アイコン画像404に関連のある情報であることが明確となる。メニュー画面400においては、既に過ぎた有効期限情報406b、およびまだ到来していない有効期限情報406aが、アイコン画像404bおよびアイコン画像404aのそれぞれに関連づけて配置される。
図8は、出力装置12に表示されるメニュー画面400bの別の例を示す。この例ではフォルダ構造が階層構造をとっている。メニュー画面400bでは、レンタルコンテンツが最上位フォルダの下層にあるフォルダ内に含まれている。具体的にはフォルダ画像408aに対応するフォルダにレンタルコンテンツが格納されている。レンタルマーク決定部264は、レンタルコンテンツを含むフォルダにレンタルマークを割り当て、レンタルマーク配置部356が、フォルダ画像408aの近傍またはフォルダ画像408aに重ねて、レンタルマーク410cを配置する。またレンタルマーク決定部264は、階層構造においてレンタルコンテンツを含むフォルダの最上位に位置するフォルダにもレンタルマークを割り当てる。レンタルマーク配置部356は、割り当てられたレンタルマーク410dを、フォルダ画像402cの近傍またはフォルダ画像402cに重ねて配置する。
レンタルコンテンツが、階層構造をとるフォルダの下層に含まれる場合、ユーザは、階層構造のフォルダを順に開いていかなければ、レンタルコンテンツを確認することができない。そこで、階層構造を構成する各段のフォルダ画像にもレンタルマーク410を付加することで、ユーザは、レンタルコンテンツの存在を容易に確認することができる。
図9は、出力装置12に表示される詳細情報画面420の一例を示す。メニュー画面400aにおいて、ユーザによりリモートコントローラ40が所定の操作をされると、詳細情報画面生成指示部204が、詳細情報画面の生成指示を発行し、詳細情報画面生成部370が、コンテンツ情報や有効期間情報を含む詳細情報画面420を生成する。有効期間処理部220は、詳細情報画面の生成指示を受けると、有効期間の処理を行い、開始時刻、終了時刻および残り時間を導出して、詳細情報画面生成部370に供給する。
サムネイル画像表示部372は、コンテンツのサムネイル画像412を生成して、詳細情報画面420の所定位置に配置する。たとえばサムネイル画像表示部372は、メニュー画面400aから、アイコン画像404aおよびレンタルマーク410aを取得して、サムネイル画像412を生成してもよい。またサムネイル画像表示部372は、コンテンツファイル302から、所定の画像を取得して、サムネイル画像412を生成してもよい。この取得する画像は、静止画であってもよく、また動画であってもよい。またサムネイル画像表示部372は、アイコン画像処理部352と同様に、ビデオコンテンツをハードディスクドライブ34のVIDEOフォルダを参照して探し出し、表示対象とするアイコン画像をサムネイル画像として抽出してもよい。このときは、レンタルマーク配置部356が、サムネイル画像412に対してレンタルマークを付加する。
所有者情報配置部374は、所有者情報414をサムネイル画像412に関連づけて詳細情報画面420中に配置する。所有者情報配置部374は、ユーザIDを所有者情報414として取得する。コンテンツ情報配置部376は、コンテンツ情報418をサムネイル画像412に関連づけて詳細情報画面420中に配置する。コンテンツ情報配置部376は、コンテンツ情報418をコンテンツファイル302から取得する。時間情報配置部378は、有効期間処理部220から供給される開始時刻、終了時刻および残り時間をサムネイル画像412に関連づけて詳細情報画面420中に配置する。なお時間情報配置部378は、再生回数を詳細情報画面420中に配置してもよい。なお、サムネイル画像412は中央上部に配置され、所有者情報414、時間情報416、コンテンツ情報418は、サムネイル画像412の下に配置される。
時間情報配置部378は、残り時間が所定時間未満、たとえば48時間未満となった場合に、残り時間の表示形式を日単位から時間単位に切り替えてもよい。残り時間が少ない場合には、時間単位での表示とすることで、そのコンテンツを視聴することに対するインセンティブを高めることができる。また、時間情報配置部378は、残り時間が所定時間未満となった場合に、残り時間の表示に、他の表示と異なる配色を施して目立たせるようにしてもよく、また表示のフォントを他の表示と異ならせて目立たせるようにしてもよい。
ユーザは詳細情報画面420を見ることで、有効期間の開始時刻および有効期間の残り時間を確認することができる。メニュー画面400a、400bにおいては有効期限は示されるものの、開始時刻および残り時間は提示されていない。ユーザは開始時刻をみることで、コンテンツが既に再生されたものであるか確認できる。特に、未再生のコンテンツに対するレンタルマークと再生済みのコンテンツに対するレンタルマークとを同じにする場合には、開始時刻を提示することで、たとえば自分以外のユーザが視聴したことを知ることができる。またユーザは残り時間をみることで、コンテンツを早く視聴すべきであることを確認できる。特に、残り時間に応じてレンタルマークを変更しない場合には、残り時間を提示することで、コンテンツ視聴に対するインセンティブを高めることができる。
同一コンテンツについて、複数ユーザのライセンス情報が存在している場合、時間情報配置部378は、各ライセンス所有者の時間情報416を詳細情報画面420に配置する。既述したとおり、ライセンスファイル304のファイル名がコンテンツIDを用いて作成されているため、時間情報配置部378は、図4に示すLICENSEフォルダに含まれる各ユーザIDで特定されるフォルダを参照して、同一コンテンツについてのライセンスファイル304を探索する。これにより、時間情報配置部378は、ログインユーザ以外の他のユーザが保有する同一コンテンツのライセンスファイル304を取得できる。
このとき開始時刻導出部224は、各ライセンス所有者のライセンス情報に含まれる有効期間情報、またはコンテンツが最初に再生された初回処理時刻にしたがって、ライセンス所有者ごとに有効期間の開始時刻を導出し、終了時刻導出部226は、ライセンス情報に含まれる有効期間情報、またはコンテンツが最初に再生された初回処理時刻にしたがって、ライセンス所有者ごとに有効期間の終了時刻を導出する。これにより、詳細情報画面420には、複数のライセンス所有者の時間情報416が並べられる。また所有者情報配置部374は、ライセンスファイル304が格納されているUSER_IDフォルダ名をもとにライセンス所有者名を特定し、所有者情報414として時間情報416の上に配置する。これにより、所有者情報414および時間情報416のセットは、ログインユーザの情報を先頭として、その下方に、他の複数のライセンス所有者の情報のセットが並べられる。これによりログインユーザは、1つのコンテンツに対して複数のライセンス情報が存在していることを認識できるとともに、そのコンテンツが視聴可能か確認することが可能となる。
メニュー画面400aまたは400bにおいてユーザがアイコン画像404に対して再生指示を行うと、再生指示部206が、アイコン画像404aに対応するコンテンツの再生指示を発行する。再生制御部280は、再生指示を受けると、コンテンツの再生処理を制御する。
利用ライセンス特定部282は、アイコン画像404に再生を指示したユーザのライセンスが有効であるか判定し、有効でない場合には、有効な他のユーザのライセンスを、利用するライセンスとして特定する。有効なライセンスであるか否かは、有効期限が既に到来しているか否かで判定する。たとえばアイコン画像404bをフォーカス領域まで移動して再生を指示した場合、アイコン画像404bに対応するコンテンツの有効期限は既に経過しているため、タイトル「BirthdayDDD」のビデオコンテンツのライセンスは有効でないことが判定される。なお、同一コンテンツに対応する他のユーザのライセンス情報が存在しなければ、すなわち、このコンテンツをダウンロードしたユーザが他にいなければ、利用ライセンス特定部282は、再生不能であることを判定する。
終了時刻導出部226は再生指示を受けると、有効期限を導出し、利用ライセンス特定部282に供給する。利用ライセンス特定部282は、導出された有効期限と現在時刻とを比較して、ライセンスが有効であるか判定する。コンテンツ購入システム1においては、他のユーザがダウンロードしたコンテンツを再生することを可能としているため、仮に自身のライセンスが有効でなかったとしても、他人のライセンスが有効であれば、コンテンツを視聴することが可能である。デコード指示部284は、利用ライセンス特定部282が特定したライセンスを利用して、デコード部310にコンテンツのデコード処理を指示する。デコード部310は、コンテンツファイル302を読み出し、また鍵ファイル306から鍵情報を取得してコンテンツファイルをデコードする。
なお利用ライセンス特定部282は、有効な他のライセンスのうち、最も早く有効期限が到来するライセンスを、利用するライセンスとして特定してもよい。これにより、装置全体としての有効期限の到来を早めることなく、情報処理装置10を共用するユーザにとって、利便性の高いレンタルサービスを実現することが可能となる。
なお利用ライセンス特定部282が他のユーザのライセンスを、利用するライセンスとして特定した場合、確認画面生成部360が、ユーザに対して、コンテンツの処理を開始してよいか確認するための確認画面を生成してもよい。
図10は、確認画面430の一例を示す。ユーザはアイコン画像404bに再生指示を行うと、他のユーザのライセンスを利用してタイトル「BirthdayDDD」のビデオコンテンツを再生できるが、このときユーザは、他人のライセンスを利用していることを認識していないことも考えられる。したがって確認画面430を提示することで、ユーザは、誤って他人のライセンスを利用する事態を回避できる。
なお利用ライセンス特定部282は、ログインユーザのライセンスであるか、他のユーザのライセンスであるかに関係なく、有効期限が最も早く有効期限が到来するライセンスを、利用するライセンスとして特定してもよい。これにより、装置全体としての有効期限の到来を早めることなく、情報処理装置10を共用するユーザにとって、利便性の高いレンタルサービスを実現することが可能となる。
なお、有効期限の過ぎたレンタルコンテンツのアイコン画像404bが再生を指示されたときに、他のユーザの有効なライセンスも存在しない場合には、購入画面生成部380が、そのコンテンツの購入画面を生成してもよい。これにより、コンテンツを視聴したいユーザが容易にコンテンツを再購入できる。利用ライセンス特定部282が、再生指示されたコンテンツに対して利用可能なライセンスが存在しないことを判定すると、購入指示部(図示せず)が、コンテンツ配信サーバ18に対して、「BirthdayDDD」のビデオコンテンツのライセンスファイル304の取得要求を送信する。この取得要求には、「BirthdayDDD」を識別するための情報が含まれる。コンテンツ配信サーバ18は、「BirthdayDDD」のコンテンツのライセンスファイル304の取得要求を受けると、コンテンツ購入画面の構成データを生成して、情報処理装置10に送信する。購入画面生成部380は、この構成データを受け取り、コンテンツの購入画面を生成する。ユーザは、この購入画面において、所定のボタン(たとえば購入ボタン)を押下することで、ライセンスファイル304をダウンロードできる。なお、このときコンテンツファイル302も一緒にダウンロードしてもよい。以上により、ユーザは、有効期限の過ぎたレンタルコンテンツへの再生指示を行うと、コンテンツを容易な手順で再購入することができる。なおこのとき、購入形式が買い取りであるか、またはレンタルであるかは、ユーザが選択できるようにしてもよい。
図11は、メニュー画面表示処理のフローチャートを示す。以下では、図6に示すメニュー画面400aを表示する処理を説明する。メニュー画面生成指示部202がメニュー画面の生成指示を発行すると、アイコン画像処理部352が、ビデオコンテンツをハードディスクドライブ34のVIDEOフォルダを参照して探し出し、表示対象とするアイコン画像404を特定する(S10)。このときライセンス情報処理部240において、ライセンス情報取得部242が、メニュー画面400aにおいて表示対象となるビデオコンテンツのアイコン画像404のライセンスファイル304の有無を確認する(S12)。ライセンスファイル304が存在する場合、購入形態判定部244は、ライセンス情報に含まれる購入形態情報から、コンテンツが、その利用に有効期限のあるレンタルコンテンツであるか否かを判定する(S14)。レンタルコンテンツでなければ(S14のN)、アイコン画像処理部352が、コンテンツの存在を示すアイコン画像404を決定する(S20)。一方、レンタルコンテンツである場合(S14のY)、有効期間処理部220が、そのレンタルコンテンツの有効期限を導出する(S16)。レンタルマーク決定部264は、有効期限と現在時刻との関係から、表示させるレンタルマーク410を決定する(S18)。続いてアイコン画像処理部352が、レンタルコンテンツのアイコン画像を決定する(S20)。なお、レンタルマークの決定処理とアイコン画像の決定処理の順序は入れ替わっていてもよく、また並列に行われてもよい。S16〜S20の処理は、全表示対象について実行され(S22のN)、全表示対象について実行されると(S22のY)、アイコン画像処理部352がメニュー画面を表示する(S24)。このとき、レンタルマーク配置部356は、レンタルコンテンツのアイコン画像404の近傍またはアイコン画像404に重ねて、レンタルマーク410を配置する。
図12は、時間情報の導出処理のフローチャートを示す。ライセンス情報処理部240において、コンテンツがレンタルコンテンツであることが判定されると、有効期間抽出部246が、ライセンス情報から、有効期間の開始時刻および有効期間の終了時刻を示す有効期間情報を取得して、その有効期間情報を有効期間処理部220に供給する。有効期間処理部220は、有効期間情報を取得する(S30)。再生時刻情報取得部222は、ライセンスに対応する鍵ファイル306から初回再生時刻情報が存在するか確認し(S32)、初回再生時刻情報があれば(S32のY)、取得して(S34)、開始時刻導出部224および終了時刻導出部226に供給する。開始時刻導出部224および終了時刻導出部226は、初回再生時刻情報がなければ(S32のN)、有効期間情報をもとに、コンテンツの有効期間の開始時刻および終了時刻をそれぞれ導出する(S36)。一方、初回再生時刻情報が取得された場合には、開始時刻導出部224および終了時刻導出部226は、初回再生時刻情報および有効期間情報をもとに、コンテンツの有効期間の開始時刻および終了時刻をそれぞれ導出する(S36)。このとき残り時間導出部228が、有効期間の残り時間を導出してもよい。
図13は、利用ライセンス特定処理のフローチャートを示す。メニュー画面400においてユーザがアイコン画像404に対して再生指示を行うと、再生指示部206が、アイコン画像404に対応するコンテンツの再生指示を発行する(S50)。これを受けて、利用ライセンス特定部282は、アイコン画像404に再生を指示したユーザのライセンスが有効であるか判定し(S52)、有効でない場合には(S52のN)、有効な他のユーザのライセンスが存在しているか判定する(S54)。なお、再生を指示したユーザのライセンスが有効であれば(S52のY)、そのユーザのライセンスを、再生に利用するライセンスとして特定する(S56)。
他のユーザも有効なライセンスを有していなければ(S54のN)、再生を指示されたコンテンツに対して、有効なライセンスが存在していないことが判定される。このときは、コンテンツの購入画面が表示されるようにしてもよい。一方、他のユーザが有効なライセンスを有していれば(S54のY)、利用ライセンス特定部282が、そのライセンスを、再生に利用するライセンスとして特定する(S56)。なお利用ライセンス特定部282は、有効な他のライセンス所有者のライセンスのうち、最も早く有効期限が到来するライセンスを、利用するライセンスとして特定してもよい。
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
フォーカス領域にあるアイコン画像404が再生を指示されたとき、再生制御部280が再生処理を開始する前に、確認画面生成部360が、再生してもよいか問い合わせる確認画面を生成してもよい。コンテンツ購入システム1では、再生が開始されると、有効期限が24時間後に設定される。そのためアイコン画像404に対する再生指示によりただちにコンテンツが再生されると、それがユーザの誤操作であった場合に好ましくない。そこで確認画面を提示して、ユーザの了解を得た後に、デコード部310にデコード処理を開始させるようにしてもよい。
同一コンテンツについて複数のライセンス情報が存在する場合に、終了時刻導出部226は、最も遅く到来する終了時刻を導出してもよい。なお、終了時刻導出部226は、複数のライセンス情報により特定される有効期間が互いに重なっている場合に、最も遅く到来する終了時刻を導出してもよい。コンテンツ購入システム1では、コンテンツの所有者か否かにかかわらず、コンテンツの視聴を可能としているため、最も遅く到来する終了時刻を導出し、たとえば時間情報配置部358がアイコン画像(サムネイル画像)に関連づけて、導出した終了時刻をメニュー画面に含めることで、ユーザは、時間のないときに無理にコンテンツを視聴しなくても、まだ時間的に余裕があることを判断できる。また時間情報配置部378が、サムネイル画像に関連づけて、導出した有効期間に関する時間情報を詳細情報画面に含めることで、ユーザは、自分を含めたライセンス所有者のライセンス状況を瞬時に把握することが可能となる。たとえば、詳細情報画面420において、サムネイル画像412の直下に、複数のライセンスによる有効期間をまとめた時間情報を表示させることで、ユーザは、複数のライセンスから導出される有効期間を容易に把握できるようになる。
たとえば、ユーザAのライセンス有効期間が6/1〜6/14、ユーザBのライセンス有効期間が6/7〜6/21、ユーザCのライセンス有効期間が7/1〜7/14であるとする。これらの有効期間のうち、ユーザAとユーザBの有効期間は互いに重なっており、ユーザCの有効期間は、いずれとも重なっていない。このとき有効期間処理部220は、2つの有効期間を導出してもよい。
すなわち1つめの有効期間として、開始時刻導出部224は、6/1を有効期間の開始時刻として導出し、終了時刻導出部226は、6/21を有効期間の終了時刻として導出する。また2つめの有効期間として、開始時刻導出部224は、7/1を有効期間の開始時刻として導出し、終了時刻導出部226は、7/14を有効期間の終了時刻として導出する。この2つの有効期間に関する時間情報は、詳細情報画面420において、サムネイル画像412の直下の領域において、1つめの有効期間を上段、2つめの有効期間を下段に並べて表示されてもよい。この時間情報の配置は、有効期限が早く到来するものが上段となるようにするのが好ましい。なお、これらの時間情報は、メニュー画面に表示されてもよい。
また終了時刻導出部226は、コンテンツの再生にかかる時間を加味して、見かけ上の有効期限を導出してもよい。同様に残り時間導出部228は、コンテンツの再生にかかる時間を加味して、見かけ上の残り時間を導出してもよい。具体的に終了時刻導出部226は、実施例において説明した終了時刻からコンテンツ再生時間を差し引いた時刻を、終了時刻として導出する。同様に残り時間導出部228は、実施例において説明した残り時間からコンテンツ再生時間を差し引いた時刻を、残り時間として導出する。これにより、コンテンツを完全に再生できる時刻をユーザに提示することができ、ユーザは、その時刻を目安として、コンテンツの視聴を開始することができる。