本実施例の情報処理システムは、ゲームの実行やムービーの再生など、記憶装置に蓄積したコンテンツを処理するメインシステム、メインシステムに蓄積したコンテンツのアイコンなどを保持するサブシステム、メインシステムおよびサブシステムに対してユーザが操作入力を送信する入力インタフェース装置とを備える。たとえばメインシステムは、ユーザがゲームをしたり、またはムービーを視聴する際に利用される大型ディスプレイを有し、一方、サブシステムは、コンテンツアイコンを表示させる小型ディスプレイを有する。なおサブシステムは、コンテンツアイコンなどを保持していればよく、小型ディスプレイは、入力インタフェース装置に設けられてもよい。なおディスプレイの大小は相対的なものであってよい。
情報処理システムにおいて、メインシステムに設けられる大型ディスプレイは、ゲーム実行時やムービー再生時など、必要なときに起動(電源オン)され、一方、サブシステムまたは入力インタフェース装置に設けられる小型ディスプレイは、大型ディスプレイに比して消費電力が少ないため、常時電源オンされて、ユーザにコンテンツアイコンなどの情報を提示できるようにしてもよい。もちろん、深夜などユーザがコンテンツ情報を見る機会がない時間帯は、タイマ設定でサブシステムの電源が自動的にオフにされてもよい。
コンテンツ処理やダウンロード処理を実行しないとき、メインシステムは省電力モードにあり、無用な電力消費を回避する。本実施例では、サブシステムが常時電源オンされているため、ユーザは小型ディスプレイに表示されるコンテンツアイコンを利用して、コンテンツのダウンロード要求やコンテンツの利用要求などをサブシステムに送ることができる。このときサブシステムは、メインシステムの情報処理装置を起動して、ユーザからの要求をメインシステムの情報処理装置に転送する。なおダウンロード処理の実行中、メインシステムの大型ディスプレイは必ずしも起動される必要はない。メインシステムが省電力モードにあっても、ユーザはサブシステムの小型ディスプレイでコンテンツのダウンロード状況などを常時確認できることで、電力消費を低減しつつ、ユーザにとって利便性の高い情報処理システムを提供できる。
図1は、本発明の実施例にかかるコンテンツ配信システム1を示す。コンテンツ配信システム1は、ユーザが利用する情報処理システム100、別のユーザが利用する複数の端末装置14、およびコンテンツを管理するサーバシステム10を備える。情報処理システム100、端末装置14およびサーバシステム10は、ネットワーク12により通信可能に接続されている。図1に示すコンテンツ配信システム1では、説明の便宜上、別のユーザが端末装置14を利用するとしているが、全ユーザが、情報処理システム100と同じシステムを利用してもよい。
サーバシステム10は、コンテンツ提供会社などにより運営され、情報処理システム100からダウンロード要求を受けると、情報処理システム100に対して暗号化されたコンテンツを提供する。サーバシステム10は、ゲームコンテンツやビデオコンテンツなど、様々な種類のコンテンツを情報処理システム100に提供する。サーバシステム10は、ゲームコンテンツを提供するサーバ、ビデオコンテンツを提供するサーバ、音楽コンテンツを提供するサーバなど、複数のコンテンツサーバを含んで構成されてもよく、複数のコンテンツ提供会社により運営されてもよい。なおサーバシステム10は、複数のコンテンツサーバから構成される場合であっても、情報処理システム100のダウンロード状況などを統括的に管理するサーバを有することが好ましい。
本実施例の情報処理システム100は、3種類のモードのダウンロードを可能とする。本実施例ではダウンロード種類を区別するために、それぞれを「即時ダウンロード」、「保留ダウンロード」、「投機ダウンロード」と呼ぶ。これらの呼び名は、単にダウンロード方法を区別するためのものであって、呼び名の意味によって、ダウンロード手法を制限的に解釈されるものではない。ここで「即時ダウンロード」および「保留ダウンロード」は、ユーザが選択したコンテンツをダウンロードする手法であり、「即時ダウンロード」および「保留ダウンロード」のいずれを採用するかは、ユーザにより決定される。「投機ダウンロード」は、サーバにより任意に選択されたコンテンツを投機的にダウンロードする手法であり、ユーザによる選択とは関係のないコンテンツが送信される。なお情報処理システム100は、他のモードのダウンロードも実行可能である。
「即時ダウンロード」モードでは、ユーザが利用を希望するコンテンツが、サーバシステム10から、ダウンロード要求に応じて即時にダウンロードされる。即時ダウンロードモードは、ユーザがすぐにコンテンツを利用したい場合に選択され、情報処理システム100は、ユーザからコンテンツの即時ダウンロード要求を受けると、すぐにネットワーク接続されているサーバシステム10からコンテンツをダウンロードする。
「保留ダウンロード」モードでは、ユーザによりダウンロード要求が生成された後、しばらく時間をおいたタイミングで、サーバシステム10、またはネットワーク12で接続された別ユーザの端末装置14から、ユーザが利用を希望するコンテンツがダウンロードされる。別ユーザの端末装置14は、いわゆるピアトゥーピア(P2P)通信でコンテンツを情報処理システム100に提供する。保留ダウンロードは、ユーザがダウンロード要求を生成した時点ではコンテンツを利用する予定がなく、たとえばその翌日以降にコンテンツを利用したい場合に選択される。保留ダウンロードは、深夜など、サーバシステム10や別ユーザの端末装置14の負荷が比較的軽い時間帯に実行されることが好ましい。なお即時ダウンロードと比較すると、ネットワーク資源の負荷を分散できるため、保留ダウンロードモードを選択したユーザには、たとえばコンテンツ購入時に使えるポイント付与などの特典を与えるようにしてもよい。
「投機ダウンロード」モードでは、サーバシステム10、またはネットワーク12で接続された別ユーザの端末装置14から、サーバで選択されたコンテンツがダウンロードされる。サーバシステム10は、ユーザの嗜好などをもとに投機ダウンロードの対象となるコンテンツを選択し、そのコンテンツ情報(たとえばコンテンツを識別する情報)を情報処理システム100に送信しておく。投機ダウンロードは、保留ダウンロードと同様に、サーバシステム10や別ユーザの端末装置14の負荷が比較的軽い時間帯に実行されることが好ましい。投機ダウンロードの対象となるコンテンツは、ユーザにより要求されたものではないため、投機ダウンロードよりも保留ダウンロードが優先して実行されることが好ましい。
投機ダウンロードモードにおいては、コンテンツのダウンロード時にはコンテンツ料金は発生せず、暗号化されたコンテンツをアクティベートしたとき、すなわち復号して利用可能な状態としたときに課金される仕組みを構築する。この仕組みにより、ユーザは、投機ダウンロードされたコンテンツを、単にアクティベート処理するだけで利用でき、またコンテンツを投機ダウンロードしたことによっては課金されないため、無駄な費用も発生しない。このような投機ダウンロードモードを採用することで、ユーザに利便性の高いコンテンツ配信システム1が実現される。なお、投機ダウンロードしたコンテンツには有効期限が設定され、情報処理システム100は、有効期限内にアクティベート処理されなかったコンテンツを削除することで、記憶装置の容量が圧迫される事態を回避できる。
図2は、情報処理システム100を示す。情報処理システム100は、メインシステム200、サブシステム400、および操作入力装置120を備える。操作入力装置120は、ユーザにメインシステム200またはサブシステム400への操作入力を行わせる入力インタフェース装置である。なお図2に示す操作入力装置120は、通信部を有し、無線により操作入力を送信するものであるが、ケーブルでメインシステム200およびサブシステム400に接続される入力インタフェース装置が用いられてもよい。本実施例の操作入力装置120は、Bluetooth(ブルートゥース)(登録商標)プロトコルを用いて、メインシステム200またはサブシステム400と無線接続する機能をもつ。なお操作入力装置120は常にスレーブとして機能するため、メインシステム200およびサブシステム400の双方と同時に通信することはできない。
メインシステム200は、コンテンツを処理するメイン装置220と、メイン装置220による処理結果を出力する出力装置210とを備える。出力装置210は、画像を出力するディスプレイと、音声を出力するスピーカを有するテレビであってよい。出力装置210は、メイン装置220に有線ケーブルで接続されてよく、また無線LAN(Local Area Network)などにより無線接続されてもよい。メイン装置220は、ルータを介して、ネットワーク12に接続するサーバシステム10および端末装置14と通信可能に接続されている。
サブシステム400は、メイン装置220に保持されているコンテンツに関する情報(たとえば画像またはテキスト)を保持するサブ装置420と、サブ装置420による処理結果を出力する出力装置410とを備える。出力装置410は、画像やテキストを出力するディスプレイであり、音声出力機能を有してもよい。出力装置410は、サブ装置420に有線ケーブルで接続されてよく、また無線LAN(Local Area Network)などにより無線接続されてもよい。本実施例において、出力装置410は、常時電源オンされても消費電力の少ないディスプレイであり、たとえば7〜12インチ程度の小型ディスプレイであることが好ましい。サブ装置420は、出力装置410に、メイン装置220にて蓄積されているコンテンツのアイコンを表示させ、さらに投機ダウンロードしたコンテンツについては、その利用を勧める広告を表示させてもよい。
メイン装置220およびサブ装置420は、操作入力装置120との間でブルートゥースプロトコルを用いて無線接続する機能をもつ。メイン装置220およびサブ装置420は互いに通信可能であり、ブルートゥースプロトコルを用いて無線接続してもよいし、またケーブルで有線接続してもよい。
メイン装置220は、ゲームアプリケーションを実行するゲーム装置であって、ビデオや音楽を再生する機能を有するものであってよい。この場合、操作入力装置120は、ゲームの操作情報を入力するゲームコントローラであり、ビデオや音楽を再生する際には、ユーザがゲームコントローラを用いて再生処理を操作する。なおメイン装置220は、ゲームに限らず、他のコンテンツを処理可能な情報処理装置であってよい。
また図2に示す情報処理システム100では、小型ディスプレイである出力装置410がサブシステム400に備えられているが、小型ディスプレイは、操作入力装置120に設けられてもよい。たとえば操作入力装置120は、タッチパネル型の入力インタフェース装置として構成され、サブ装置420からコンテンツアイコンを送信されて、ディスプレイにコンテンツアイコンを表示させてもよい。また操作入力装置120がゲームコントローラである場合、小型ディスプレイは、コントローラ筐体表面の一部に設けられてもよい。
図3は、メイン装置220のハードウェア構成を示す。メイン装置220は、電源ボタン222、LED224、システムコントローラ226、デバイスコントローラ228、メディアドライブ230、ハードディスクドライブ232、スイッチ234、無線インタフェース236、メインコントローラ240、メインメモリ242および出力処理部244を有して構成される。
電源ボタン222は、ユーザによりメイン装置220への電源供給をオンまたはオフするために操作される。LED224は、電源のオンまたはオフの状態を点灯表示する。システムコントローラ226は、電源ボタン222の押下状態または非押下状態を検出し、電源オフの状態から押下状態への状態遷移を検出すると、メインコントローラ240を起動して、オペレーティングシステムのブートシーケンスを立ち上げるとともに、LED224を点灯制御する。なお本実施例においてメイン装置220の電源は、ユーザによる電源ボタン222の押下操作以外にも、サブ装置420からの起動(電源オン)指示によりオンされる。システムコントローラ226は、サブ装置420から起動指示を受けると、電源ボタン222の押下操作があった場合と同様に、メインコントローラ240を起動する。メイン装置220に電源ケーブルが差し込まれている場合、システムコントローラ226は、電源オフの状態であってもスタンバイモードを維持して、電源ボタン222の押下操作、およびサブ装置420からの起動指示の到来を監視する。
デバイスコントローラ228は、サウスブリッジのようにデバイス間の情報の受け渡しを実行するLSI(Large-Scale Integrated Circuit)として構成される。図示のように、デバイスコントローラ228には、システムコントローラ226、メディアドライブ230、ハードディスクドライブ232、スイッチ234およびメインコントローラ240などのデバイスが接続される。デバイスコントローラ228は、それぞれのデバイスの電気特性の違いやデータ転送速度の差を吸収し、データ転送のタイミングを制御する。ハードディスクドライブ232は、内蔵ハードディスクを駆動して、データの書込/読出を行う。ハードディスクドライブ232は、データを記憶する記憶装置として機能するが、ハードディスク以外の他の大容量記憶装置が利用されてもよい。メディアドライブ230は、記録媒体50が装着されると、記録媒体50を駆動して認識し、記録媒体50から必要なデータを読み出す。記録媒体50は、光ディスクや光磁気ディスクなどのメディアであってよい。
スイッチ234は、イーサネットスイッチ(イーサネットは登録商標)であって、外部の機器と有線または無線で接続して、データの送受信を行うデバイスである。スイッチ234は、ネットワーク12を介して、サーバシステム10および/または端末装置14から、コンテンツデータを受信する。またスイッチ234は無線インタフェース236に接続し、無線インタフェース236は、ブルートゥースプロトコルでサブ装置420および操作入力装置120などの機器と接続する。基本的に、これらの機器からの情報は、無線インタフェース236、スイッチ234、デバイスコントローラ228を通じてメインコントローラ240に供給される。
メインコントローラ240は電源供給されると、装置全体を統括的に制御するオペレーティングシステム(以下、単に「OS(Operating System)」と呼ぶ)を実行する。OS環境下において、メインコントローラ240は、操作入力装置120から供給されるユーザの操作入力に応じたコンテンツ処理などを実行する。メインコントローラ240は、メインメモリ242に接続するメモリコントローラを備える。メインメモリ242は、RAM(ランダムアクセスメモリ)として構成される。
出力処理部244は、出力装置210に接続されて、コンテンツの処理結果である映像信号および音声信号を出力する。出力処理部244は、画像処理機能を実現するGPU(Graphics Processing Unit)を備える。GPUは、HDMI(High Definition Multimedia Interface)を採用してもよい。
本実施例のメイン装置220において、ハードディスクドライブ232には、ゲームコンテンツ、ビデオコンテンツ、音楽コンテンツなど、様々なコンテンツが格納される。これらのコンテンツは、サーバシステム10からダウンロードしたものであってもよく、また記録媒体50から取得したものであってもよい。
以下に、メイン装置220およびサブ装置420の機能ブロックを示し、メイン装置220およびサブ装置420の動作を説明する。
図4は、メイン装置220の機能ブロックを示す。メイン装置220は、受信部300、送信部302、受付部310、取得部330、通信制御部340、コンテンツ処理部342、コンテンツ管理部350、利用要求処理部360、認証情報通知部370、ダウンロード(DL)処理部372、転送処理部374、表示情報通知部376、利用許可通知部378および記憶装置380を備える。受信部300および送信部302は、通信部を構成する。受付部310は、操作情報受付部312、利用要求受付部314、アクティベート情報受付部316、転送要求受付部318、DL要求受付部320、削除要求受付部322および投機DLコンテンツ情報受付部324を有する。コンテンツ管理部350は、リスト生成部352、コンテンツ削除部354およびポイント算出部356を有する。利用要求処理部360は、確認部362およびデコード部364を有する。コンテンツの処理やダウンロード処理を行わないとき、メイン装置220は省電力モードにあるが、サブ装置420から送信される起動指示の到来を監視する。
メイン装置220の機能は、図3に示すシステムコントローラ226、スイッチ234、無線インタフェース236、メインコントローラ240、出力処理部244、メインメモリ242、メインメモリ242にロードされたプログラムなどによって実現され、ここではそれらの連携によって実現される機能ブロックを描いている。これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者に理解されるところである。
図5は、サブ装置420の機能ブロックを示す。サブ装置420は、受信部422、送信部424、受付部430、表示情報取得部440、通信制御部450、転送部460、表示処理部470および記憶装置480を備える。受信部422および送信部424は、通信部を構成する。受付部430は、利用要求受付部432、DL要求受付部434、利用許可受付部436および削除要求受付部438を有する。
図5に示すサブ装置420の機能は、CPU、メモリ、メモリにロードされたプログラムなどによって実現され、ここではそれらの連携によって実現される機能ブロックを描いている。これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者に理解されるところである。
本実施例の情報処理システム100において、サブシステム400における出力装置410およびサブ装置420は、常時電源オンされた状態にある。出力装置410は、メイン装置220において蓄積されているコンテンツに関する画像またはテキストなどのコンテンツ特定情報を表示する。
図6は、出力装置410の小型ディスプレイに表示されるコンテンツリストの画面構成例を示す。コンテンツリスト表示画面には、蓄積済みのゲームリストを表示するゲームリスト表示領域500、蓄積済みのムービーリストを表示するムービーリスト表示領域520、蓄積済みの音楽リストを表示する音楽リスト表示領域530が形成される。たとえばゲームリスト表示領域500には、蓄積済みのゲームアイコン502、503、504が表示され、蓄積済みのゲームアイコンをスクロールするための矢印キー501、505が設けられる。コンテンツリスト表示画面には、操作入力装置120により操作可能なカーソルが用意され、ユーザは操作入力装置120を操作して、カーソルを所望のアイコンに配置し、所定の操作(たとえば操作入力装置120の所定ボタンの押下操作)をすることで、アイコンに対応付けられたコンテンツを利用できる。後述するが、サブ装置420は、ユーザによる利用要求を受け付けると、メイン装置220に対して起動指示を送信してメイン装置220を起動させた後、利用要求をメイン装置220に送信する。
表示領域510には、現在、メイン装置220において処理しているコンテンツに関する画像が表示される。たとえば、表示画像は、コンテンツのアイコンであってもよく、またコンテンツのパッケージ画像であってもよい。ポイント領域511には、ユーザが獲得したポイントが表示される。本実施例では、保留ダウンロードを選択したときに、サーバシステム10からポイントが付与される。コンテンツ配信システム1において、別の場面においてもユーザにポイントが付与されてよく、後述するコンテンツのリサイクル時にポイントが付与されてもよい。ポイント領域511には、累積ポイント数が表示される。
「+」で示されるアイコン506にカーソルを配置して操作入力装置120で所定の操作入力をすると、未蓄積のゲームコンテンツのリストが表示される。出力装置410は小型ディスプレイであり、一方、未蓄積のゲームコンテンツは膨大な数であるため、たとえばゲームジャンルごとに分類されたリストが表示されることが好ましい。ユーザは、リストの中で、ダウンロードを希望するコンテンツを選択することで、ダウンロード要求が生成される。なお、ムービーリスト表示領域520の「+」アイコンを指定すると、未蓄積のムービーコンテンツのリストが表示され、音楽リスト表示領域530の「+」アイコンを指定すると、未蓄積の音楽コンテンツのリストが表示される。
図7は、ユーザが未蓄積コンテンツを選択したときに出力装置410に表示されるダウンロードモード選択画面の一例を示す。この例では、ユーザが、未蓄積コンテンツであるゲームXYZのダウンロードを要求し、サブ装置420が、ダウンロードモードとして、即時ダウンロードまたは保留ダウンロードのいずれかを選択させる画面を出力装置410に表示させる。図7において、「すぐにダウンロードする」は、即時ダウンロードに対応し、「後でダウンロードする」は、保留ダウンロードに対応する。ユーザは、2つのチェックボックスのいずれかを選択することで、ダウンロードモードを決定する。
以上の前提として、操作入力装置120とサブ装置420とは、ブルートゥースプロトコルにより無線接続している。サブ装置420は、親機すなわちマスタとして機能し、操作入力装置120は、子機すなわちスレーブとして機能する。なお後述するように、このときサブ装置420は、メイン装置220とブルートゥースプロトコルを用いて無線接続する。サブ装置420は、メイン装置220に対してマスタとして機能し、メイン装置220は、スレーブとして機能する。以下、ブルートゥースプロトコルによる通信方式について説明する。
図8は、ブルートゥースの状態遷移図を示す。図示のように、ブルートゥース端末の状態は、待ち受けフェーズ、同期確立フェーズ、通信接続フェーズ、低消費電力モードに分けることができる。
操作入力装置120の電源投入直後や通信リンクを切断した場合、操作入力装置120は「待ち受け」状態に入る。またメイン装置220の通信リンクを切断した場合、メイン装置220は、「待ち受け」状態に入る。「待ち受け」状態では、データの送受信は行われない。以下、サブ装置420と操作入力装置120との間の状態遷移について説明するが、サブ装置420とメイン装置220との間の状態遷移も同じであり、説明を省略する。
同期確立フェーズにおいては、サブ装置420が、周辺の操作入力装置120を含む端末機器に対して接続照会すなわち「問い合わせ」を行う状態と、サブ装置420が操作入力装置120を認識して「呼び出し」を行う状態とがある。「問い合わせ」状態では、サブ装置420が、近くにいる端末機器に対してIQ(問い合わせ)パケットをブロードキャストする。IQパケットを受信した操作入力装置120は、Bluetoothアドレスとクロック情報を含むFHS(Frequency Hop Synchronization)パケットをサブ装置420に返信する。FHSパケット中、LAP(Lower Address Part)、UAP(Upper Address Part)、NAP(Non-significant Address Part)が、ブルートゥース端末固有のアドレスであるBluetooth_ADDRを構成する。この時点における送受信では、周波数ホッピングパターンに関する同意がサブ装置420と操作入力装置120との間で確立していないので、問い合わせ専用に定義された固定ホッピングパターンが用いられる。
「呼び出し」状態では、サブ装置420が操作入力装置120からFHSパケットを受け取り、存在を把握した後、操作入力装置120に対してIDパケットを送信する。操作入力装置120からIDパケットに対する応答が返ると、サブ装置420はFHSパケットを操作入力装置120に送信し、自分のアドレスとクロックを操作入力装置120に知らせる。これにより、サブ装置420と操作入力装置120は、同一のホッピングパターンを共有できるようになる。
「呼び出し」を行うと、サブ装置420と操作入力装置120との間にピコネットが形成され、「接続」状態に入る。ピコネットとは、ブルートゥース端末同士を近づけたときに、端末の間で一時的に形成されるネットワークを意味する。1つのピコネットにおいて、サブ装置420は親機として機能する。「接続」状態になると、通信リンク設定のための制御パケットが送受信され、これにより「データ転送」が可能となる。データ転送が完了して通信リンクが切断されると、操作入力装置120は待ち受け状態に戻る。
スレーブである操作入力装置120は、接続状態から「パークモード」、「ホールドモード」および「スニフモード」の3種類の低消費電力モードに移行することが可能である。またマスタであるサブ装置420は、接続状態から「ホールドモード」に移行することが可能である。
「パークモード」の操作入力装置120は、ピコネットへの同期、つまりホッピングパターンとマスタクロックへの同期を保持している。ただし、サブ装置420とパケットを交換することはできない。この状態にある操作入力装置120は、一定時間間隔(ビーコン周期)でサブ装置420からのデータを受信しており、必要があればすぐにピコネットへ参加できる。パークモードでは、サブ装置420から割り振られたスレーブ識別子、つまり接続中のブルートゥース端末に与えられる3ビットのアドレス(1〜7)をいったんサブ装置420に返却する。したがって、操作入力装置120がピコネットへの再参加を希望しても、スレーブ識別子に空きがなければ、すぐに加わることができない。逆に、サブ装置420は、パークモードに入るブルートゥース端末に、8ビットのパークスレーブ識別子を与える。サブ装置420は、必要なブルートゥース端末だけを随時ピコネットに参加させることが可能である。
「ホールドモード」の操作入力装置120およびサブ装置420は、ピコネットに同期したまま、設定された一定時間(ホールド時間)中は送受信を行わず、ホールド時間後に通信を再開する。
「スニフモード」の操作入力装置120は、一定時間間隔(スニフ間隔)で送受信を行い、そのほかの時間は電力消費を抑えることができる。
本実施例においては、一度通信が終わった後、待ち受け状態に入った操作入力装置120が再度通信するときは、問い合わせを飛ばして呼び出し状態に遷移することができる。サブ装置420はすでに操作入力装置120の存在を知っているため、呼び出しにより操作入力装置120に対して1対1で話しかけ、ピコネット内同期を確立させる。一度ピコネット内同期が確立してしまえば、通信が終わって操作入力装置120が待ち受け状態にあっても、通信再開時にブロードキャストを実行する必要がない。ブロードキャストを実行すると、例えば10秒以上かかってしまうことがあるため、本実施例では問い合わせを省略し、接続確立にかかる時間を短縮する。なお「ピコネット内同期を確立する」とは、Bluetoothアドレスとクロック情報をサブ装置420とブルートゥース端末間で交換し、ホッピングパターンを同期させるということである。
サブ装置420は、接続確立時に取得した操作入力装置120の識別情報を記録する。操作入力装置120の識別情報は、接続確立にかかる時間を短縮するべく、次回以降の接続確立時に利用される。
本実施例では、マスタとなるサブ装置420が、周辺に存在する操作入力装置120およびメイン装置220の識別情報を記録することで、必要なときに呼び出すことができる。また、スレーブとなる操作入力装置120およびメイン装置220は、接続状態の終了後は、たとえば「パークモード」に遷移して、必要なときにサブ装置420に接続できるようにしてもよい。
なお、以上はサブ装置420がマスタとして機能する場合の通信接続について説明したが、後述するように、本実施例の情報処理システム100においては、メイン装置220がマスタとして機能する場合もある。したがってメイン装置220も、予め上記したサブ装置420と同じ無線接続確立処理を行って、周辺に存在するブルートゥース端末、すなわち操作入力装置120およびサブ装置420の識別情報を記録しておく。これにより、メイン装置220がマスタとして機能する場合に、周辺に存在する操作入力装置120およびサブ装置420と早期に接続を確立することが可能となる。
以下、図4および図5を参照して、ユーザの要求によりコンテンツをダウンロードする処理について説明する。
<ユーザ要求によるコンテンツダウンロード>
サブ装置420において、通信制御部450がマスタとして操作入力装置120およびメイン装置220との間の通信を制御する。ユーザが操作入力装置120を操作すると、受信部422が操作情報を受信し、表示処理部470が、コンテンツリスト表示画面上のカーソルを操作情報に応じて動かす。カーソルがアイコン506に配置されているときに、受信部422が所定の操作情報(選択入力)を受信すると、表示処理部470が、未蓄積のコンテンツリストを出力装置410に表示させる。未蓄積のコンテンツリストは、記憶装置480に格納された表示情報482に含まれている。表示されるコンテンツリストは、コンテンツのアイコンを表示するものであってもよく、またコンテンツのタイトルを表示するものであってもよい。受信部422が特定のコンテンツに対する選択入力を受信すると、DL要求受付部434は、そのコンテンツに対するダウンロード(DL)要求を受け付ける。
このとき表示処理部470は、図7に示すダウンロードモード選択画面を出力装置410に表示させる。操作入力装置120から、いずれかのモードを選択した選択入力が送信されると、DL要求受付部434は、選択されたモードを受け付ける。これにより、ダウンロードするコンテンツと、ダウンロードモードとが特定される。転送部460は、コンテンツを特定するコンテンツ識別情報と、ダウンロードモードとを組み合わせたダウンロード要求を生成し、送信部424に供給する。
通信制御部450は、省電力モードにあるメイン装置220を起動するための起動指示信号を生成し、送信部424からダウンロード要求を送信させる前に、起動指示信号を送信させる。メイン装置220は、起動指示信号を受信すると、メインコントローラ240などに電源を供給して省電力モードから通常電力モードに遷移する。なお、大型ディスプレイである出力装置210は起動されなくてよい。メイン装置220の起動後、通信制御部450は、送信部424からダウンロード要求を送信させる。たとえば通信制御部450は、起動指示信号を送信してから数秒後にダウンロード要求を送信させてもよい。
メイン装置220において、通信制御部340がスレーブとしてサブ装置420との間の通信を制御する。受信部300がダウンロード要求を受信し、DL要求受付部320がダウンロード要求を受け付ける。ダウンロード要求はコンテンツ管理部350に供給され、リスト生成部352が、ダウンロード要求にしたがってダウンロードリストを生成する。
記憶装置380は、ダウンロードリストとして、リスト生成部352により生成された投機DLリスト388、即時DLリスト390および保留DLリスト392を保持する。投機DLリスト388は、投機ダウンロードの対象となるコンテンツリストであり、即時DLリスト390は、即時ダウンロードの対象となるコンテンツリストであり、保留DLリスト392は、保留ダウンロードの対象となるコンテンツリストである。メイン装置220において、DL処理部372は、これらのダウンロードリストをもとに、ダウンロード処理を実行する。
具体的にリスト生成部352は、ダウンロード要求に含まれるダウンロードモードを参照して、対応するダウンロードリストにコンテンツ識別情報を追加する。この場合は、ダウンロードモードが、即時ダウンロードまたは保留ダウンロードモードのいずれかであり、リスト生成部352は、ダウンロードモードに応じたダウンロードリストを記憶装置380から読み出し、ダウンロード要求に含まれるコンテンツ識別情報をダウンロードリストに登録する。
リスト生成部352は、ダウンロードリストを更新すると、その旨をDL処理部372に通知する。DL処理部372は、ダウンロードリストが更新されると、ダウンロード処理のスケジューリングを行う。なおDL処理部372は、定期的にダウンロードリストをチェックして、更新されたか否かを確認してもよい。
具体的にDL処理部372は、即時DLリスト390にコンテンツ識別情報が登録されると、そのコンテンツのダウンロード処理を即時に実行する。DL処理部372は、ダウンロード要求を生成し、送信部302がサーバシステム10にダウンロード要求を送信する。
DL処理部372は、保留DLリスト392にコンテンツ識別情報が登録されると、そのコンテンツのダウンロード処理を開始する時刻を設定する。たとえば開始時刻は、コンテンツ処理部342がコンテンツ処理を実行しておらず、且つ午前0時〜午前5時までの時間帯に設定されてよい。DL処理部372は、保留ダウンロードであることを示す情報を含めたダウンロード要求を生成し、送信部302が、スケジューリングされた時刻にダウンロード要求をサーバシステム10に送信する。サーバシステム10は、保留ダウンロードであることを示す情報を受け取ると、メイン装置220にコンテンツを送信するとともに、そのユーザに対して所定のポイントを付与する。サーバシステム10は、付与したポイントを累積し、管理する。
なお、保留ダウンロードモードにおいて、送信部302は、ダウンロード要求を他の端末装置14に送信してもよい。他の端末装置14に送信する場合には、P2P通信により、コンテンツのダウンロードが行われる。なお、P2P通信によりコンテンツのダウンロードを行う場合、送信部302は、ポイント獲得のために、サーバシステム10に対して、保留ダウンロードを実行したことを示す情報を通知する。これによりサーバシステム10は、ユーザに対してポイントを付与できる。なおポイント付与のタイミングは、メイン装置220からP2P通信によるダウンロードが完了したことを通知されたときであってよい。
サーバシステム10または端末装置14がコンテンツデータを送信すると、受信部300が受信して、取得部330がコンテンツデータを取得し、コンテンツデータ382として記憶装置380に格納する。図4において取得部330とDL処理部372とを別の機能ブロックで示しているが、両者は協働してDL処理部を構成してもよい。リスト生成部352は、ダウンロードが完了したことを判定して、対応するダウンロードリストから、ダウンロードしたコンテンツの識別情報を削除する。また取得部330は、コンテンツとともに、コンテンツのインデックス情報386も取得し、記憶装置380に格納する。インデックス情報386には、コンテンツ名やアイコンデータなどが含まれる。コンテンツ名やアイコンデータは、メイン装置220がコンテンツのメニュー画面などの生成に利用するとともに、サブ装置420がコンテンツリスト表示画面を生成する際にも利用される。
たとえばインデックス情報には、以下のデータが含まれる。
(1)コンテンツID
コンテンツを識別する番号である。
(2)コンテンツ名
コンテンツの名称である。
(3)カテゴリ
コンテンツの種別を示す情報であり、たとえばゲーム、ムービー、音楽のカテゴリが設定される。
(4)アイコンデータ
コンテンツのサムネイル画像や動画像である。
(5)テキストオプション
コンテンツリスト表示画面に付加されるポップアップメッセージである。
(6)ダウンロード開始日時
ダウンロードを開始した日時である。
(7)ダウンロード終了日時
ダウンロードを終了した日時であり、蓄積を開始した日時でもある。
(8)有効期限
投機ダウンロードしたコンテンツデータの蓄積期限である。なお即時ダウンロードまたは保留ダウンロードしたコンテンツデータには、有効期限は設定されない。
(9)リサイクル期限
投機ダウンロードしたコンテンツデータのリサイクル期限であり、有効期限よりも長い期間が設定されている。なお即時ダウンロードまたは保留ダウンロードしたコンテンツデータには、リサイクル期限は設定されない。
(10)アクティベート確認フラグ
アクティベート処理済みであるか否かを示すフラグである。
サーバシステム10は、情報処理システム100との間で、インデックス情報386を同期して保持している。これによりサーバシステム10は、メイン装置220が保持するコンテンツを常時監視し、把握している。表示情報通知部376は、インデックス情報386のうち、サブ装置420においてコンテンツリスト表示画面の生成に利用する表示情報を、送信部302からサブ装置420に送信させる。表示情報通知部376は、インデックス情報386に変更、追加、削除などの変化がある度に、表示情報をサブ装置420に通知することが好ましい。
コンテンツを保留ダウンロードした場合には、取得部330が所定のポイントを取得する。記憶装置380は、過去のポイントを累積したポイント累積情報394を格納しており、取得部330がポイントを取得すると、ポイント算出部356がポイント累積情報394を読み出し、新たに獲得したポイントを加算して、加算値をポイント累積情報394として登録する。表示情報通知部376は、ポイント累積情報394が更新された場合には、ポイント累積情報394を、サブシステム400における表示情報として、送信部302からサブ装置420に送信させる。なお累積ポイントはサーバシステム10によっても管理されており、取得部330はサーバシステム10から累積ポイントを取得して、ポイント累積情報394として記憶装置380に保存してもよい。
サブ装置420において、受信部422が、メイン装置220から送信される表示情報を受信し、表示情報取得部440が表示情報を取得して、記憶装置480に格納する。表示情報482は、上記したように、蓄積済みコンテンツのアイコンデータやコンテンツ名であり、またポイント累積情報394も含む。表示処理部470は、更新された表示情報482を用いて、図6に示すコンテンツリスト表示画面を形成する。
メイン装置220は、サーバシステム10から未蓄積コンテンツリスト398を取得して、サブ装置420に、表示情報として送信する。未蓄積コンテンツリスト398は、メイン装置220がコンテンツをダウンロードし、または新たなコンテンツが入手可能となる度に更新される。これにより、図6に示すアイコン506を選択すると、出力装置410に未蓄積コンテンツリストを表示できるようになる。
図9は、ユーザ要求によるダウンロード処理を示す。DL要求受付部320がサブ装置420からダウンロード要求を受け付けると(S10のY)、リスト生成部352は、ダウンロード要求に含まれるモードを判定する(S12)。なおダウンロード要求を受け付けなければ(S10のN)、この処理は終了する。即時ダウンロードモードである場合(S12のY)、リスト生成部352は、即時DLリスト390に、ダウンロード要求に含まれるコンテンツ識別情報を登録する(S14)。DL処理部372は、即時DLリスト390に登録されたコンテンツ識別情報を含むダウンロード要求を生成し、サーバシステム10にダウンロード要求を送信する。DL処理部372は、即時DLリスト390にコンテンツ識別情報が登録されると、送信部302から即時にダウンロード要求をサーバシステム10に送信させることで、即時ダウンロード処理を実行する(S16)。取得部330は、コンテンツおよびインデックス情報を取得し、ダウンロード処理が完了すると、リスト生成部352が、即時DLリスト390から、対応するコンテンツ識別情報を削除して、即時DLリスト390を更新する(S18)。表示情報通知部376は、サブシステム400においてコンテンツリスト表示画面の生成に利用される表示情報をサブ装置420に通知する(S26)。
一方、即時ダウンロードモードでない場合(S12のN)、リスト生成部352は、保留DLリスト392に、ダウンロード要求に含まれるコンテンツ識別情報を登録する(S20)。DL処理部372は、保留DLリスト392にコンテンツ識別情報が登録されると、そのコンテンツのダウンロード処理を開始する時刻を決定する。DL処理部372は、保留DLリスト392に登録されたコンテンツ識別情報および保留ダウンロードであることを示す情報を含めたダウンロード要求を生成し、送信部302から、スケジューリングされた時刻にダウンロード要求をサーバシステム10または端末装置14に送信させることで、保留ダウンロード処理を実行する(S22)。取得部330は、コンテンツ、インデックス情報およびポイントを取得し、ダウンロード処理が完了すると、リスト生成部352が、保留DLリスト392から、対応するコンテンツ識別情報を削除して、保留DLリスト392を更新する(S24)。表示情報通知部376は、サブシステム400においてコンテンツリスト表示画面の生成に利用される表示情報をサブ装置420に通知する(S26)。
次に、サーバシステム10がユーザの嗜好などに応じて選択したコンテンツを投機ダウンロードする処理について説明する。
<ユーザ要求によらないコンテンツダウンロード>
投機ダウンロードモードでは、サーバシステム10が、ユーザにダウンロードさせるお勧めコンテンツをピックアップし、情報処理システム100に通知する。情報処理システム100では、適当なタイミングでお勧めコンテンツをダウンロードする。サーバシステム10は、情報処理システム100との間で同期して保持するユーザ情報から、たとえばシリーズ物のゲームの購入履歴を検出すると、最新バージョンのゲームが発売開始となったときに、お勧めコンテンツとしてピックアップする。また、過去に購入しているムービーの続編がでたときに、お勧めコンテンツとしてピックアップしてもよい。
投機ダウンロードモードでは、ユーザからの要求によらずに、様々なコンテンツがダウンロードされるため、ユーザは、そのコンテンツを利用したい場合に、改めてダウンロード処理を実行する必要なく、すぐに利用できるという利点がある。コンテンツ料金は、ダウンロード時に発生させるのではなく、利用時に発生させることで、ユーザに不利益を与えることなく、好適なコンテンツの利用環境を実現できる。
図10は、サーバシステム10におけるお勧めコンテンツの抽出処理を示す。サーバシステム10は、情報処理システム100との間で、定期的にユーザ情報の同期処理を行う(S30)。たとえばユーザ情報には、以下のデータが含まれる。
(1)ユーザID
ユーザを識別する番号である。
(2)投機ダウンロード許可フラグ
ユーザにより設定され、投機ダウンロードを許可するか否かの情報を示す。
(3)リサイクル許可フラグ
ユーザにより設定され、コンテンツのリサイクルを許可するか否かの情報を示す。
(4)コンテンツ情報
過去に購入したコンテンツや、投機ダウンロードしたコンテンツなどの情報を示す。
(5)ユーザ嗜好情報
ユーザが好きなコンテンツジャンルやカテゴリの情報を示す。ユーザにより設定されてもよく、またサーバシステム10により設定されてもよい。
サーバシステム10は、ユーザ情報に含まれる投機ダウンロード許可フラグ値を参照して、投機ダウンロードが許可されているか判定する(S32)。許可されていなければ(S32のN)、お勧めコンテンツの抽出処理は実行されない。許可されている場合(S32のY)、サーバシステム10は、ユーザの嗜好情報や、過去の購入履歴などから、お勧めコンテンツを抽出する(S34)。なお、この抽出処理においては、たとえば人気のコンテンツや、コンテンツ配信サーバの運営主体の一押しコンテンツなどが抽出されてもよい。サーバシステム10は、投機ダウンロード候補として抽出したコンテンツの情報を、ユーザ情報のコンテンツ情報に追加する(S36)。サーバシステム10は、抽出したコンテンツの情報(たとえば識別情報)を情報処理システム100に通知する(S38)。
メイン装置220において、受信部300が、投機ダウンロードコンテンツの識別情報を受信して、投機DLコンテンツ情報受付部324が受け付けると、リスト生成部352が、投機DLリスト388を記憶装置380から読み出し、コンテンツ識別情報を追加して更新する。
リスト生成部352は、投機DLリスト388を更新すると、その旨をDL処理部372に通知する。DL処理部372は、投機DLリスト388が更新されると、ダウンロード処理のスケジューリングを行う。なおDL処理部372は、定期的に投機DLリスト388をチェックして、更新されたか否かを確認してもよい。
DL処理部372は、投機DLリスト388にコンテンツ識別情報が登録されると、そのコンテンツのダウンロード処理を開始する時刻を設定する。このときDL処理部372は、保留DLリスト392を参照して、保留ダウンロードするコンテンツが存在する場合には、保留ダウンロードを優先的に実行するようにスケジューリングする。投機ダウンロード処理は、ユーザの要求とは無関係に実行されるものであり、ユーザの要求にしたがった保留ダウンロード処理を先に実行することが好ましいためである。
図11は、保留ダウンロード処理および投機ダウンロード処理を示す。DL処理部372は、保留DLリスト392および投機DLリスト388を参照して、ダウンロードが完了していないコンテンツが存在するか判定する(S50)。たとえば、この判定処理は、定期的に実行されてもよく、保留DLリスト392または投機DLリスト388のいずれかに更新があった場合に実行されてもよい。保留DLリスト392および投機DLリスト388にコンテンツ識別情報が登録されていなければ、DL処理部372は、ダウンロード待ちのコンテンツは存在しないことを判定し(S50のN)、本処理を終了する。
ダウンロード待ちのコンテンツが存在する場合(S50のY)、DL処理部372は、ダウンロード順序を決定する(S52)。ここで、保留ダウンロード処理を投機ダウンロード処理よりも優先的に行う方針のもとで、DL処理部372は、保留DLリスト392に含まれるコンテンツ識別情報に対応するコンテンツのダウンロード順序を、投機DLリスト388に含まれるコンテンツ識別情報に対応するコンテンツのダウンロード順序よりも先に設定する。なお、保留ダウンロード対象となるコンテンツが複数存在する場合には、ユーザからのダウンロード要求が生成された順で、ダウンロード順序を設定する。同様に、投機ダウンロード対象となるコンテンツが複数存在する場合には、サーバシステム10によりお勧めコンテンツとして抽出された順で、ダウンロード順序を設定する。
保留ダウンロード処理を実行する場合、DL処理部372は、保留ダウンロードであることを示す情報を含めたダウンロード要求を生成し、送信部302から、スケジューリングされた時刻にダウンロード要求をサーバシステム10または端末装置14に送信させることで、保留ダウンロード処理を実行する(S54)。また投機ダウンロード処理を実行する場合、DL処理部372は、投機ダウンロードであることを示す情報を含めたダウンロード要求を生成し、送信部302から、スケジューリングされた時刻にダウンロード要求をサーバシステム10または端末装置14に送信させることで、投機ダウンロード処理を実行する(S54)。取得部330は、コンテンツデータとともに、コンテンツのインデックス情報も取得し、記憶装置380に格納する。なおポイントが付与される場合には、ポイント算出部356が、算出したポイントをポイント累積情報394として記憶装置380に格納する。
即時ダウンロードモードおよび保留ダウンロードモードでは、ダウンロード時に課金処理が行われるため、投機ダウンロードモードにおいて、投機ダウンロードであることを示す情報をダウンロード要求に含めることで、ダウンロード時に課金処理が行われないようにする。サーバシステム10は、投機ダウンロード要求であることを判定すると、課金処理を行わない。このように、投機ダウンロード処理は、他のモードと比べてユーザの要求に基づかないため、コンテンツのアクティベート時に課金処理が行われるようにすることが好ましい。なお、コンテンツ配信システム1において、ダウンロードモードによらず、全てのコンテンツの課金処理を、そのアクティベート時に行うようにすることも可能である。
ダウンロード処理が完了すると、リスト生成部352が、対応するダウンロードリストから、ダウンロードしたコンテンツの識別情報を削除して、ダウンロードリストを更新する(S56)。表示情報通知部376は、サブシステム400においてコンテンツリスト表示画面の生成に利用される表示情報をサブ装置420に通知する(S58)。
S52〜S58のステップは、保留DLリスト392および投機DLリスト388に含まれる全てのコンテンツのダウンロード処理が完了するまで行われる。なお、S52の順序決定ステップは、初回に設定した順序を使用することで省略できる。保留ダウンロード処理については図9に関連して既に説明したため、以下、投機ダウンロード処理の詳細について説明する。
サーバシステム10または端末装置14がコンテンツを送信すると、受信部300がコンテンツを受信して、取得部330がコンテンツを取得し、コンテンツデータ382として記憶装置380に格納する。このときリスト生成部352は、ダウンロードが完了したことを判定して、投機DLリスト388から、ダウンロードしたコンテンツの識別情報を削除する。また取得部330は、コンテンツとともに、コンテンツのインデックス情報386も取得し、記憶装置380に格納する。インデックス情報386には、コンテンツ名やアイコンデータなどに加えて、コンテンツの有効期限が含まれる。
有効期限は、その期日までにアクティベートしなければ、コンテンツデータを削除する期日を示す情報である。コンテンツ名やアイコンデータは、メイン装置220がコンテンツのメニュー画面などの生成に利用するとともに、サブ装置420がコンテンツリスト表示画面を生成する際にも利用される。表示情報通知部376は、インデックス情報386のうち、サブ装置420においてコンテンツリスト画面の生成に利用する表示情報を、送信部302からサブ装置420に送信させる。
サブ装置420において、受信部422が、メイン装置220から送信される表示情報を受信し、表示情報取得部440が表示情報を取得して、記憶装置480に格納する。表示情報482は、上記したように、蓄積済みコンテンツのアイコンデータやコンテンツ名であり、またテキストオプションを含んでもよい。表示処理部470は、更新された表示情報482を用いて、図6に示すコンテンツリスト表示画面を形成する。
図12は、図6に示すコンテンツリスト表示画面におけるゲームリスト表示領域500の変形例を示す。ゲームアイコン503は、即時または保留ダウンロードされたゲームコンテンツを示し、ゲームアイコン502、504は、投機ダウンロードされたゲームコンテンツを示す。ゲームアイコン502には、ポップアップメッセージとして「本日半額」の説明情報507が付加される。これは、この日にゲームAを利用可能となるようにアクティベート処理すると、通常の半額の値段で購入できることを示す。またゲームアイコン504には、ポップアップメッセージとして「11/19蓄積終了」の説明情報508が付加される。投機ダウンロードされたコンテンツには有効期限が設定されており、11/19までにアクティベート処理しなければ、ゲームBが自動的に記憶装置380から削除されることを示す。
このように、投機ダウンロードされたコンテンツには、ユーザの関心を引くような説明情報が付加されることが好ましい。この説明情報は、インデックス情報のテキストオプションとして設定されたメッセージである。本実施例の情報処理システム100において、サブシステム400は、常時電源オンの状態にあるため、ユーザは、メインシステム200を起動しなくても、コンテンツ配信者からのメッセージ(説明情報)に気づくことができ、コンテンツ配信者およびユーザの双方にメリットのあるコンテンツ配信システム1を構築できる。
<コンテンツ利用処理>
以下に、蓄積済みコンテンツを利用する処理について説明する。
サブ装置420において、通信制御部450がマスタとして操作入力装置120およびメイン装置220との間の通信を制御している。ユーザが操作入力装置120を操作すると、受信部422が操作情報を受信して、表示処理部470が、コンテンツリスト表示画面上のカーソルを操作情報に応じて動かす。カーソルがたとえばゲームアイコン502、503、504(図12参照)のいずれかに配置されているときに、受信部422が所定の操作情報(選択入力)を受信すると、利用要求受付部432は、そのコンテンツに対する利用要求を受け付ける。転送部460は、コンテンツを特定するコンテンツ識別情報を含む利用要求を、送信部424に供給する。
通信制御部450は、省電力モードにあるメイン装置220を起動するための起動指示信号を生成し、送信部424から利用要求を送信させる前に、起動指示信号を送信させる。なお、メイン装置220が既に通常電力モードにあるときは、起動指示信号を送信しなくてもよい。メイン装置220は、起動指示信号を受信すると、メインコントローラ240などに電源を供給して起動する。メイン装置220の起動後、通信制御部450は、送信部424から利用要求を送信させる。たとえば通信制御部450は、起動指示信号を送信してから数秒後に利用要求を送信させてもよい。
メイン装置220において、通信制御部340がスレーブとしてサブ装置420との間の通信を制御する。受信部300が利用要求を受信し、利用要求受付部314が利用要求を受け付ける。受信部300が利用要求を受信すると、メイン装置220は、出力装置210を自動的に起動することが好ましいが、出力装置210は、ユーザが電源スイッチを押すことで起動されてもよい。利用要求は利用要求処理部360に供給され、確認部362が、利用要求に含まれるコンテンツがアクティベート処理済みであるか確認する。確認部362は、インデックス情報386に含まれるアクティベート確認フラグ値を参照してもよい。なおアクティベート処理とは、暗号化されたコンテンツデータ382をデコード(復号)して、コンテンツ処理部342で実行可能とする処理をいう。
確認部362が、コンテンツデータが既にアクティベート処理されていることを確認すると、利用許可通知部378が、コンテンツの利用を許可する旨の通知を送信部302からサブ装置420に送信させる。また確認部362は、コンテンツの実行指示をコンテンツ処理部342に供給する。これによりコンテンツ処理部342は、復号されたコンテンツデータを記憶装置380から読み出して、コンテンツデータを実行する。
サブ装置420において、受信部422が利用許可通知を受信すると、利用許可受付部436が受け付け、通信制御部450に供給する。通信制御部450は、利用許可通知を受けると、メイン装置220においてコンテンツの実行処理が可能であることを確認し、サブ装置420がマスタとなっている現在の通信環境を、メイン装置220がマスタとなる通信環境に切り替える処理を行う。この処理を、機能切替処理と呼んでもよい。通信制御部450は、メイン装置220に対するマスタ切替指示を生成して、送信部424からメイン装置220に送信させるとともに、メイン装置220および操作入力装置120との間の接続を切断する。
メイン装置220において、受信部300がマスタ切替指示を受信すると、通信制御部340は、マスタとしての通信制御を開始する。なお、マスタ切替指示を受信したときに、まだメイン装置220との間の接続が継続されている場合には、通信制御部340は、サブ装置420との間の接続を切断する。ブルートゥースプロトコルの通信制御に関して説明したように、ブルートゥース端末は、通信リンクを切断すると、「待ち受け」状態に入る。前記したように、通信制御部340は、前もって操作入力装置120およびサブ装置420の識別情報を獲得しており、したがって、周辺の端末機器に対する「問い合わせ」を行う必要なく、直接「呼び出し」を行って、操作入力装置120およびサブ装置420と早期にブルートゥース接続を確立できる。
メイン装置220がマスタとして機能することで、ユーザは、操作入力装置120を操作して、ゲームやムービーなどのコンテンツ処理に対する操作情報をメイン装置220に直接送信できる。ゲームコンテンツを実行する場合、ユーザによる操作情報は、ゲームキャラクタの動きを制御する情報であり、リアルタイム性を要求されることが多い。操作情報がサブ装置420を経由してメイン装置220に伝送されると、それだけで伝送遅延が生じるため好ましくない。メイン装置220がマスタとして機能することで、受信部300は、操作入力装置120から操作情報を直接受信でき、操作情報受付部312が操作情報を受け付けて、少ない伝送遅延でコンテンツ処理部342に供給できる。コンテンツ処理部342は、操作情報をもとにコンテンツデータを実行処理する。特にゲームなどリアルタイム性の要求されるコンテンツの実行に際して、伝送遅延が少ないことは好適である。
図13は、マスタ−スレーブの機能切替処理を示す。前提として、サブ装置420がブルートゥースプロトコルにおけるマスタとして機能しており、メイン装置220および操作入力装置120がスレーブとして機能している。
操作入力装置120が、利用するコンテンツの選択入力を生成し(S70)、サブ装置420に送信する(S72)。サブ装置420は、コンテンツの選択入力を、コンテンツの利用要求として受け付け(S74)、メイン装置220に送信する(S76)。メイン装置220は、利用要求を受信すると、利用を要求されたコンテンツがアクティベート処理済みであるか確認する(S78)。なお、アクティベート処理が済んでいない場合については、後述する。アクティベート処理済みであることを確認すると、メイン装置220は、コンテンツの利用を許可する旨の通知をサブ装置420に送信する(S80)。
サブ装置420は利用許可通知を受信すると、メイン装置220においてコンテンツの実行処理が可能であることを認識し、メイン装置220に対するマスタ切替指示を生成して(S82)、メイン装置220に送信する(S84)。またサブ装置420は、メイン装置220および操作入力装置120との通信リンクを切断する(S86)。このときサブ装置420は、通信リンクの切断指示をメイン装置220および操作入力装置120に送信して(S88、S90)、メイン装置220および操作入力装置120において、自発的に通信リンクの切断処理がなされるようにしてもよい。これにより、早期に無線接続を切断できる。以上により、メイン装置220および操作入力装置120が、サブ装置420のスレーブとして機能していた通信が終了する(S92、S94)。
続いてメイン装置220が、マスタ切替指示をもとに、マスタとしての通信制御を開始する(S96)。メイン装置220は、サブ装置420および操作入力装置120の識別情報を前もって保持しているため、問い合わせ手続を行うことなく、呼び出し手続を実行する。具体的にメイン装置220は、サブ装置420および操作入力装置120にIDパケットを送信し(S98、S100)、サブ装置420および操作入力装置120は、IDパケットに対する応答を返信する(S102、S104)。これらの応答を受信して、メイン装置220は、サブ装置420および操作入力装置120にFHSパケットを送信する(S106、S108)。以上により、サブ装置420および操作入力装置120は、メイン装置220との間で無線接続を確立し、それぞれメイン装置220のスレーブとして通信可能となる(S110,S112)。
図14は、マスタ−スレーブの機能切替処理の別の例を示す。前提として、たとえばゲームコンテンツの実行中であって、メイン装置220がブルートゥースプロトコルにおけるマスタとして機能しており、サブ装置420および操作入力装置120がスレーブとして機能している。
たとえばユーザがゲームプレイを終了し、操作入力装置120が、通信リンクの切断指示をメイン装置220に送信する(S200)。この切断指示は、たとえばメイン装置220の電源オフを指示するものであってもよい。メイン装置220は、操作入力装置120との通信リンクを切断する(S202)。メイン装置220は、操作入力装置120との通信リンクを切断した後、サブ装置420との通信リンクを切断する(S204)。なお、メイン装置220は、切断指示を受け取ると、操作入力装置120およびサブ装置420との通信リンクを同時に切断してもよい。これにより、メイン装置220をマスタとする通信が終了する。
サブ装置420は、メイン装置220との通信リンクが切断されてから所定時間が経過すると、マスタとしての通信制御を開始する(S206)。サブ装置420は、メイン装置220および操作入力装置120の識別情報を前もって保持しているため、問い合わせ手続を行うことなく、呼び出し手続を実行する。具体的にサブ装置420は、メイン装置220および操作入力装置120にIDパケットを送信し(S208、S210)、メイン装置220および操作入力装置120は、IDパケットに対する応答を返信する(S212、S214)。これらの応答を受信して、サブ装置420は、メイン装置220および操作入力装置120にFHSパケットを送信する(S216、S218)。以上により、メイン装置220および操作入力装置120は、サブ装置420との間で無線接続を確立し、それぞれサブ装置420のスレーブとして通信可能となる(S220,S222)。
なお図13に示すフローチャートにおいて、蓄積済みコンテンツを利用する際に、利用するコンテンツデータが既にアクティベート処理されていることを前提とした。以下では、コンテンツデータがまだアクティベート処理されていない場合について説明する。
メイン装置220において、受信部300が、サブ装置420から利用要求を受信すると、利用要求受付部314が利用要求を受け付けて、利用要求処理部360に供給する。確認部362は、利用要求に含まれるコンテンツがアクティベート処理済みであるか確認する。このとき確認部362が、コンテンツデータがアクティベート処理されていないことを確認すると、そのコンテンツデータが投機ダウンロードされたものであるか判定する。
本実施例のコンテンツ配信システム1では、即時ダウンロードおよび保留ダウンロードされたコンテンツは、ダウンロード時に課金処理が行われる。一方、投機ダウンロードされたコンテンツデータは、もともとユーザの要求によりダウンロードされたものではないため、ダウンロード時に課金処理は行われていない。そこで、メイン装置220は、利用要求を受けたコンテンツデータがアクティベート処理されていない場合に、そのコンテンツデータが投機ダウンロードにより取得されたものであれば、サーバシステム10における課金処理のための手続を行う。なお、利用要求を受けたコンテンツデータがアクティベート処理されていない場合に、そのコンテンツデータが投機ダウンロード以外のダウンロードにより取得されたものであれば、デコード部364がコンテンツデータをデコードする。
コンテンツデータが投機ダウンロードにより取得されている場合、認証情報通知部370が、コンテンツの識別情報を含めたユーザの認証情報を生成して、送信部302がサーバシステム10に送信する。認証情報は、ユーザ情報384をもとに生成される。サーバシステム10は、メイン装置220が保持するインデックス情報386を同期して保持しており、したがって、ユーザの認証情報に含まれるコンテンツの識別情報を受け取ると、そのコンテンツが投機ダウンロードされたものであることを確認できる。サーバシステム10は、そのコンテンツについて課金処理を行うとともに、デコードするための復号キーを含んだアクティベート情報をメイン装置220に送信する。
メイン装置220において、受信部300がアクティベート情報を受信すると、アクティベート情報受付部316がそれを受け付け、利用要求処理部360に供給する。デコード部364は、アクティベート情報に含まれる復号キーを用いて、暗号化されたコンテンツデータをデコード処理する。これにより、投機ダウンロードされたコンテンツデータが利用可能な状態となる。デコード部364がデコード処理を完了すると、確認部362は、利用要求に含まれていたコンテンツがアクティベート処理済みになったことを確認し、図13に示した処理により、メイン装置220をマスタに、サブ装置420をスレーブにする機能切替処理が実行される。
図15は、利用要求を受けてからコンテンツを利用するまでの処理を示す。メイン装置220において、利用要求受付部314が、コンテンツの利用要求を受け付ける(S120)。確認部362は、利用を要求されたコンテンツがアクティベート処理済みであるか確認する(S122)。アクティベート処理済みのコンテンツである場合(S122のY)、コンテンツは利用可能な状態にあり、コンテンツ処理部342がコンテンツを実行処理する(S132)。
一方、利用を要求されたコンテンツがアクティベート処理されていない場合(S122のN)、確認部362は、コンテンツデータが投機ダウンロードされたものであるか判定する(S124)。コンテンツデータが即時ダウンロードまたは保留ダウンロードされたものであれば(S124のN)、デコード部364はコンテンツデータをアクティベート処理し(S130)、コンテンツ処理部342がコンテンツを実行処理する(S132)。
コンテンツデータが投機ダウンロードされたものであれば(S124のY)、利用許可通知部378が、コンテンツの識別情報を含めた認証情報をサーバシステム10に通知する(S126)。サーバシステム10は、認証情報をもとに、ユーザが適正なユーザであるか、またコンテンツが投機ダウンロードされたものであるか認証し、認証に成功すると、アクティベート情報をメイン装置220に送信する。アクティベート情報受付部316がアクティベート情報を受け付けると(S128)、デコード部364は、アクティベート情報を用いてコンテンツデータをアクティベート処理し(S130)、コンテンツ処理部342がコンテンツを実行処理する(S132)。
<コンテンツリサイクル処理>
情報処理システム100において、投機ダウンロードされたコンテンツにはアクティベート処理するまでの有効期限が設定されており、有効期限が到来すると、コンテンツデータは不要コンテンツリスト396に登録される。またユーザは、有効期限が到来する前にも、利用しないコンテンツデータを削除でき、削除されたコンテンツデータは不要コンテンツリスト396に登録される。本実施例のコンテンツ配信システム1では、利用されなかったコンテンツデータを別のユーザにリサイクルする仕組みが構築される。
メイン装置220において、リスト生成部352は、インデックス情報386を参照して、有効期限の到来したコンテンツを定期的に探索する。リスト生成部352は、有効期限の到来したコンテンツを検出すると、ユーザ情報384のリサイクル許可フラグを参照して、ユーザがコンテンツのリサイクルを許可しているか確認する。ユーザがコンテンツのリサイクルを許可していなければ、コンテンツ削除部354が、コンテンツデータ382を記憶装置380から削除するとともに、リスト生成部352が、投機DLリスト388から、コンテンツの識別情報を削除する。一方、ユーザがコンテンツのリサイクルを許可していれば、リスト生成部352が、投機DLリスト388から、コンテンツの識別情報を削除し、同時に不要コンテンツリスト396に、当該コンテンツの識別情報を登録する。
またユーザは、操作入力装置120を操作して、投機ダウンロードしたコンテンツの削除要求をサブ装置420に送信できる。サブ装置420において、受信部422がコンテンツの削除要求を受信すると、削除要求受付部438がそれを受け付けて、転送部460が削除要求を送信部424からメイン装置220に送信させる。メイン装置220において、受信部300が削除要求を受信すると、削除要求受付部322が削除要求を受け付け、コンテンツ管理部350に供給する。リスト生成部352は、ユーザ情報384のリサイクル許可フラグを参照して、ユーザがコンテンツのリサイクルを許可しているか確認する。ユーザがコンテンツのリサイクルを許可していなければ、コンテンツ削除部354が、コンテンツデータ382を記憶装置380から削除するとともに、リスト生成部352が、投機DLリスト388から、コンテンツの識別情報を削除する。一方、ユーザがコンテンツのリサイクルを許可していれば、リスト生成部352が、投機DLリスト388から、コンテンツの識別情報を削除し、同時に不要コンテンツリスト396に、当該コンテンツの識別情報を登録する。
不要コンテンツリスト396に登録されたコンテンツは、別のユーザから転送(ダウンロード)要求があった場合に、P2P通信により別のユーザに送信される。具体的には転送要求受付部318が別のユーザから、不要コンテンツリスト396に含まれるコンテンツの転送要求を受け付けた場合に、転送処理部374が、そのユーザにP2P通信によりコンテンツデータを転送する。これにより、本来は削除される予定であったコンテンツデータを有効にリサイクルすることができ、またサーバシステム10における配信サーバの負荷を低減できる。たとえば、コンテンツデータ382をリサイクルしたユーザに対してサーバシステム10が、所定のポイントを付与するようにしてもよい。
なお、転送処理部374は、コンテンツデータの一部を転送し、転送を要求したユーザの端末装置には、複数のユーザから、それぞれコンテンツデータの一部ずつが集まるようにして、最終的に全部のデータが収集されるようにしてもよい。転送要求受付部318は、たとえば特定のグループ内のメンバからの転送要求のみを受け付けるように制限してもよく、またユーザ制限をかけることなく、全てのユーザからの転送要求を受け付けるようにしてもよい。
リスト生成部352は、インデックス情報386を参照して、リサイクル期限の到来したコンテンツを定期的に探索する。リスト生成部352は、リサイクル期限の到来したコンテンツを検出すると、不要コンテンツリスト396から、コンテンツの識別情報を削除するとともに、コンテンツ削除部354が、コンテンツデータ382を記憶装置380から削除する。これにより、記憶装置380の空き容量を増やすことができる。
以上、本発明を実施例をもとに説明した。この実施例は例示であり、それらの各構成要素や各処理プロセスの組合せにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。実施例において、操作入力装置120は常にスレーブとして機能することを説明したが、情報処理システム100において操作入力装置120は、マスタとして機能するように構成されてもよい。
本実施例のコンテンツ配信システム1においては、投機ダウンロードされたコンテンツに有効期限(蓄積期限)が設定され、ユーザがリサイクルを許可しない場合には、有効期限が到来したときに、コンテンツ削除部354が記憶装置380からコンテンツデータを削除している。コンテンツ削除部354は、有効期限の到来前であっても、たとえば記憶装置380の空き容量が所定容量以下となった場合に、有効期限の到来が近いものから順に、コンテンツデータを削除するようにしてもよい。これにより、記憶装置380の適切な空き容量を確保することが可能となる。
またコンテンツの投機ダウンロード中に、ユーザから利用要求があった場合、既に投機ダウンロード済みのコンテンツデータを削除せず、転送処理部374は、不足するデータを即時ダウンロードまたは保留ダウンロードにより補うようにしてもよい。
図16は、情報処理システム100の変形例を示す。この変形例において、サブシステム400は、図2における出力装置410およびサブ装置420が一体となったタブレット端末の形態を有する。出力装置210およびメイン装置220は、メインシステム200を構成し、メイン装置220は、クレードル部を有する。図16には、サブシステム400がメイン装置220のクレードル部に収容されている様子を示しており、サブシステム400は、クレードル部に収容されると、メイン装置220から供給される電源により充電される。
サブシステム400は、クレードル部に収容される間、クレードル部に設けられた接続ピンに接続して、接続ピンを介してメイン装置220と情報の伝達を行い、一方でクレードル部から取り外されている場合には、メイン装置220と無線接続して情報の伝達を行う。