図1は、本発明を適用したコンテンツ提供システムの構成例を示す図である。
ネットワーク1は、例えば、住居内に無線または有線で構築されたローカルなネットワーク(LAN(Local Area Network))である。ネットワーク1には、コンテンツを提供するストレージ機器であるDVD(Digital Versatile Disc)プレーヤ2、および、コンテンツを出力する表示機器であるTV(Television)4−1,TV4−2が接続されている。
ネットワーク1に接続される各機器は、ネットワーク1上にあるルータ(不図示)により割り当てられたIP(Internet Protocol)アドレスなどのネットワークアドレスによって特定され、例えば、TCP/IP(Transmission Control Protocol/Internet Protocol)により相互に通信を行うことが可能とされている。
例えば、DVDプレーヤ2の光ディスクドライブに挿入されたDVDディスク3に記録されているコンテンツが再生され、再生されたコンテンツが、TV4−1およびTV4−2のうちの、ユーザが操作する機器にネットワーク1を介して送信される。DVDプレーヤ2から送信されたコンテンツを受信した、例えば、TV4−1は、コンテンツの画像をその表示部に表示させる。
このように、DVDプレーヤ2によって再生されたコンテンツを、DVDプレーヤ2とネットワークを介して接続される、例えば、TV4−1によって利用することができることから、DVDプレーヤ2とTV4−1が離れた部屋にある場合であっても、ユーザは、DVDディスク3に記録されているコンテンツをTV4−1で視聴することができる。
なお、図1のコンテンツ提供システムにおいては、DVDプレーヤ2は、ユーザによりDVDディスク3が挿入されたとき、そのことを表すメッセージをネットワーク1に接続される全ての機器にブロードキャストし、それに応じてコンテンツの提供を要求してきた機器に対してのみ、DVDディスク3から読み出したコンテンツを提供する。
図2は、図1のコンテンツ提供システムにおいて、DVDプレーヤ2により読み出されたコンテンツを、ユーザが利用するTV4−1に表示させる動作のシーケンスを示している。
ユーザがDVDプレーヤ2の光ディスクドライブにメディア(例えば、DVDディスク3)を挿入し、メディアが挿入されたことをステップS1において検出したとき、DVDプレーヤ2は、ステップS2に進み、メディアが新たに挿入されたことを通知する挿入通知メッセージを、ネットワーク1に接続される全ての機器であるTV4−1およびTV4−2にブロードキャストする。
ブロードキャストされる挿入通知メッセージには、メディアが新たに挿入された機器であるDVDプレーヤ2自身のネットワークアドレス、および、挿入されたメディアを、DVDプレーヤ2が特定するためのリソースIDが含まれる。例えば、DVDディスク3が挿入されたDVDプレーヤ2のドライブ名、DVDディスク3に予め割り当てられているIDなどが、リソースIDとして挿入通知メッセージに含まれる。
DVDプレーヤ2から送信された挿入通知メッセージをステップS11で受信したTV4−1は、ステップS12に進み、新たなメディアを発見したことを通知するメッセージを画面に表示する。このメッセージは、例えば、ポップアップにより画面の所定の位置に自動的に表示されるため、ユーザは、テレビジョン番組を表示させている最中でも、ネットワーク1に接続される機器にメディアが挿入されたこと、すなわち、再生可能なコンテンツがあることを確認することができる。
また、挿入通知メッセージは、ネットワーク1上の全ての機器にブロードキャストされていることから、TV4−2においても、挿入通知メッセージがステップS21で受信され、ステップS22に進み、メディアを発見したことを通知するメッセージが画面に表示される。
なお、挿入通知メッセージに含まれるネットワークアドレスとリソースIDは、再生可能なコンテンツの位置を表す情報として、TV4−1およびTV4−2においてそれぞれ保存される。
例えば、TV4−1の近傍にいるユーザが、TV4−1のリモートコントローラを操作して、新たに発見されたものとして提示されたコンテンツ(DVDプレーヤ2に挿入されているメディアに記録されるコンテンツ)の再生を指示したとき、ステップS13において、TV4−1は、それを受け付ける。
また、ステップS14において、TV4−1は、保存しておいたネットワークアドレスとリソースIDを参照して、挿入通知メッセージを送信してきたDVDプレーヤ2に対して、コンテンツの再生を要求する再生要求メッセージを送信する。再生要求メッセージには、リソースIDが含まれており、このメッセージを受信したDVDプレーヤ2は、再生が要求されているコンテンツをリソースIDに基づいて特定することができる。
ステップS3において、DVDプレーヤ2は、TV4−1から送信された再生要求メッセージを受信し、再生要求メッセージに含まれるリソースIDで指定される、新たに挿入されたメディアに記録されているコンテンツを読み出し、読み出したコンテンツを含む再生応答メッセージを生成する。また、DVDプレーヤ2は、ステップS4に進み、再生要求メッセージの送信元であるTV4−1に対して、生成した再生応答メッセージを送信する。
TV4−1は、ステップS15において、再生応答メッセージを受信し、メッセージに含まれるコンテンツを出力する。
これにより、ユーザは、DVDプレーヤ2にメディアを挿入し、TV4−1で再生操作を行うだけで、メディアに記録されているコンテンツを、ネットワーク1を介してTV4−1で視聴することができる。すなわち、ユーザは、コンテンツを視聴するために、コンテンツを表示させるTVを選択する操作などをDVDプレーヤ2に対して行う必要がない。
また、DVDプレーヤ2や、コンテンツを再生可能なパーソナルコンピュータ(図示せず)などのストレージ機器と、TVなどの表示機器とが、ネットワーク1にそれぞれ複数接続されている場合であっても、ユーザは、メディアをストレージ機器に挿入し、続けて、表示機器(リモートコントローラ)で再生操作を行うだけで、ネットワークアドレスや機器名などを意識することなく、あるストレージ機器に直前に挿入したメディアに記録されているコンテンツを、表示機器において視聴することができる。各機器による処理の詳細については後述する。
次に、図1の各機器の構成について説明する。
図3は、DVDプレーヤ2の構成例を示すブロック図である。
CPU(Central Processing Unit)11は、図示せぬROM(Read Only Memory)や主記憶部12に記憶されている制御プログラムに従って、バス14を介して、DVDプレーヤ2全体の動作を制御する。例えば、CPU11により制御プログラムが実行されることで、メッセージ管理部21、リソースID取得部22、再生制御部23が実現される。
メッセージ管理部21は、ネットワーク1に接続される機器との間でのメッセージの送受信を管理する。リソースID取得部22は、挿入通知メッセージなどに含めるリソースIDを取得する。なお、上述したように、単に、ドライブ名やDVDディスク3のIDをリソースIDとするのではなく、リソースID取得部22が、ユニークなIDを所定の桁数の乱数などに基づいて自ら生成し、それをリソースIDとするようにしてもよい。再生制御部23は、光ディスクドライブ16に挿入されたディスクに記録されているコンテンツの再生(デコード)を制御する。
主記憶部12は、CPU11により実行される制御プログラムや、ユーザによる各種の設定情報などを記憶する。主記憶部12に形成されるユーザID記憶領域24には、DVDプレーヤ2をユーザが操作する前に、ユーザIDやパスワードなどによるログインが必要とされている場合、ログインにより入力されたユーザIDが記憶される。ユーザID記憶領域24に記憶されたユーザIDは、そのときプレーヤ2を使用しているユーザを識別するために、必要に応じて用いられる。
通信部13は、他の機器との間でネットワーク1を介して行われる通信を制御する。例えば、通信部13により受信されたメッセージは、バス14を介してCPU11に出力される。入力部15は、コンテンツの再生や停止などを指示するとき操作されるボタン、或いは、リモートコントローラからの赤外線を受光する受光部などから構成される。入力部15は、ユーザによる操作の内容を表す情報をCPU11に出力する。光ディスクドライブ16は、ユーザによりメディアが挿入されたとき、メディアを検出したことを表す情報をCPU11に出力する。光ディスクドライブ16には、所定のドライブ名が割り当てられており、そのドライブ名が、必要に応じて、リソースIDとして用いられる。
図4は、TV4−1の構成例を示すブロック図である。TV4−2も同様の構成を有している。
CPU31は、図示せぬROMや主記憶部32に記憶されている制御プログラムに従って、バス34を介してTV4−1全体の動作を制御する。例えば、CPU31により制御プログラムが実行されることで、メッセージ管理部41、コンテンツ出力制御部42、提示部43が実現される。
メッセージ管理部41は、ネットワーク1に接続される機器との間でのメッセージの送受信を管理する。コンテンツ出力制御部42は、DVDプレーヤ2などから提供されたコンテンツの出力(表示部36に対する画像の表示や、図示せぬスピーカからの音声の出力)を制御する。提示部43は、DVDプレーヤ2から送信された挿入通知メッセージが通信部33において受信され、それがバス34を介して供給されてきたとき、メディアが挿入されたことを通知するメッセージを、例えば、ポップアップにより表示部36の所定の位置に表示させる。
主記憶部32は、CPU31により実行される制御プログラムや、ユーザによる各種の設定情報などを記憶する。図4の例においては、主記憶部32にコンテンツ位置情報記憶領域44が形成されており、このコンテンツ位置情報記憶領域44には、再生可能なコンテンツの位置を表すコンテンツ位置情報が記憶される。このコンテンツ位置情報は、新たに発見されたものとして挿入通知メッセージにより通知されたコンテンツをTV4−1が取得するために用いられる。
図5は、コンテンツ位置情報記憶領域44に記憶されるコンテンツ位置情報の例を示す図である。
上述したように、DVDプレーヤ2から挿入通知メッセージが送信されてきた場合、それに含まれるネットワークアドレスとリソースIDがコンテンツ位置情報として記憶される。この例においては、DVDプレーヤ2のネットワークアドレス(IPアドレス)が「192.168.0.30」とされ、リソースID(DVDプレーヤ2のドライブ名)が「E:」とされている。TV4−1のCPU31は、このようなコンテンツ位置情報を参照することで、メディアが挿入されている機器と、その機器に挿入されているメディアの位置を特定することができる。
図4の説明に戻り、通信部33は、他の機器との間でネットワーク1を介して行われる通信を制御する。入力部35は、例えば、リモートコントローラからの赤外線を受光する受光部などにより構成され、ユーザによる操作の内容を表す情報をCPU31に出力する。表示部36は、LCD(Liquid Crystal Display)やCRT(Cathode Ray Tube)などからなり、コンテンツ出力制御部42による制御に従って、コンテンツの画像を表示する。
次に、図6および図7(図7A、図7B)のフローチャートを参照して、図1のコンテンツ提供システムにおける、DVDプレーヤ2の処理の詳細について説明する。
この処理は、例えば、DVDプレーヤ2がネットワーク1に接続されたとき、或いは、ネットワーク1に接続されるDVDプレーヤ2の電源がオンにされたときなどに開始される。
ステップS1において、DVDプレーヤ2のCPU11は、光ディスクドライブ16の状態を監視し、メディアが挿入されているか否かを判定する。
CPU11は、ステップS1において、メディアが挿入されていると判定した場合、ステップS5(図7A)に進む。ステップS5において、CPU11のメッセージ管理部21は、DVDプレーヤ2のネットワークアドレスと、リソースIDを含む挿入通知メッセージを生成し、生成した挿入通知メッセージを通信部13からブロードキャストする。なお、挿入通知メッセージに含まれるリソースIDは、リソースID取得部22により取得された、例えば、ドライブ名そのものや、所定の乱数に基づいて新たに生成されたIDなどである。
挿入通知メッセージは、ネットワーク1に接続される全ての機器(図1においてはTV4−1およびTV4−2)により受信される。挿入通知メッセージをブロードキャストした後、CPU11は、ステップS2(図6)以降の処理を行う。
一方、ステップS1において、メディアが挿入されていないと判定した場合、CPU11は、ステップS2に進み、イベントを取得できない場合は、取得できるまで待機し、イベントが生じた場合にはそれを取得する。DVDプレーヤ2においては、例えば、光ディスクドライブ16にメディアが挿入されたこと、および、再生要求メッセージが受信されたこと、がイベントとして取得される。
ステップS3において、CPU11は、メディアが新たに挿入されたか否か(ステップS2で取得したイベントが、メディアが新たに挿入されたことであるのか否か)を判定し、挿入されたと判定した場合、上述した、ステップS5以降の処理を行う。すなわち、CPU11は、挿入通知メッセージをブロードキャストした後、ステップS2以降の処理を行う。
一方、ステップS3において、メディアが新たに挿入されていないと判定した場合、ステップS4に進み、CPU11は、再生要求メッセージを受信したか否かを判定する。ステップS4において、再生要求メッセージを受信していないと判定された場合、ステップS2以降の処理が繰り返し実行される。
ステップS4において、再生要求メッセージを受信したと判定した場合、CPU11は、ステップS6(図7B)に進む。図2を参照して説明したように、メディアが挿入されたことがTV4−1などの画面に表示され、それに応じてユーザがコンテンツの再生を指示したとき、再生要求メッセージがTV4−1から送信されてくる。
ステップS6において、CPU11は、光ディスクドライブ16にメディアが挿入されているか否かを判定し、挿入されていると判定した場合、ステップS7に進む。
ステップS7において、CPU11のメッセージ管理部21は、光ディスクドライブ16に挿入されたメディアに記録されているコンテンツ、すなわち、ユーザが再生を指示するコンテンツを含む再生応答メッセージを生成し、生成した再生応答メッセージを、再生要求メッセージを送信してきた機器に対して通信部13から送信する。再生応答メッセージに含まれるコンテンツは、例えば、再生制御部23によりデコードされて得られたデータであってもよいし、コンテンツの提供を要求する機器がコンテンツをデコード可能な機器である場合、メディアに記録されているままの、デコード前のデータであってもよい。
再生応答メッセージを受信した機器においては、メッセージに含まれるコンテンツの再生が行われる。再生応答メッセージが送信された後、または、ステップS6において、メディアが挿入されていないと判定された場合、ステップS2以降の処理が繰り返される。
次に、図8および図9(図9A乃至図9C)のフローチャートを参照して、図1のコンテンツ提供システムにおける、TV4−1の処理の詳細について説明する。当然、TV4−2においても同様の処理が行われる。
ステップS21において、CPU31は、主記憶部32のコンテンツ位置情報記憶領域44を、コンテンツ位置情報が記憶されていない状態に初期化し、ステップS22に進み、イベントが生じた場合には、それを取得する。TV4−1においては、例えば、挿入通知メッセージが受信されたこと、ユーザによりコンテンツの再生が指示されたこと、または、再生応答メッセージが受信されたこと、がイベントとして取得される。
ステップS23において、CPU31は、挿入通知メッセージを受信したか否かを判定し、受信したと判定した場合、ステップS26(図9A)に進む。ステップS26において、CPU31は、挿入通知メッセージに含まれるネットワークアドレス、リソースIDをコンテンツ位置情報としてコンテンツ位置情報記憶領域44に記憶させる。
CPU31の提示部43は、ステップS27において、新しいメディアを発見したことを通知するメッセージが表示される画面を表示部36に表示させる。
図10は、表示部36に表示される画面の例を示す図である。
画面36Aは、挿入通知メッセージを受信する前の画面(例えば、テレビジョン番組の画面)の例を示す。そして、画面36Aが表示されている状態で挿入通知メッセージが受信されたとき(図8のステップS22)、画面36Aが、白抜き矢印A1の先に示される画面36Bに切り替わる。この例においては、画面36Bの右下にウインドウ61がポップアップにより表示され、そこに、「新しいメディアを発見しました」のメッセージが表示されている。また、ウインドウ61以外の部分では、テレビジョン番組の画像が表示され続けている。
これにより、ユーザは、テレビジョン番組を視聴している最中でも、ネットワーク1に接続される機器にメディアが挿入されたことを確認することができる。また、ユーザは、ウインドウ61が表示されているときにリモートコントローラを操作することで、白抜き矢印A2の先に示されるように、ウインドウ61で発見されたものとして提示されているコンテンツ、すなわち、DVDプレーヤ2に挿入したメディアに記録されているコンテンツを直接再生させ、TV4−1で視聴することができる。なお、ウインドウ61は、表示されてから、メッセージを確認したユーザがコンテンツの再生を指示することができる所定の時間が経過したとき、自動的に閉じる(表示が消える)。
図9Aの説明に戻り、このような画面を表示することで新しいメディアの発見が提示された後、処理はステップS22に戻り、それ以降の処理が行われる。
ステップS23において、挿入通知メッセージを受信していないと判定した場合、CPU31は、ステップS24に進み、入力部35からの出力に基づいて、ユーザからコンテンツの再生が指示されたか否かを判定する。CPU31は、ステップS24において、コンテンツの再生が指示されたと判定した場合、ステップS28(図9B)に進む。
ステップS28において、CPU31のメッセージ管理部41は、コンテンツ位置情報記憶領域44に記憶されているコンテンツ位置情報を参照して、コンテンツ位置情報に含まれるネットワークアドレスを送信先とする、リソースIDを含む再生要求メッセージを生成し、生成した再生要求メッセージを通信部33から送信する。ここで送信された再生要求メッセージを受信する、例えば、DVDプレーヤ2からは、リソースIDに基づいて特定されたコンテンツを含む再生応答メッセージが送信されてくる(図7BのステップS7)。その後、ステップS22に進み、それ以降の処理が行われる。
なお、ステップS28において、コンテンツ位置情報記憶領域44にコンテンツ位置情報が記憶されていない場合、CPU31は、再生可能なコンテンツがないことを通知するメッセージを表示するなどの所定のエラー処理を実行し、その後、ステップS22以降の処理を行う。
一方、ステップS24において、ユーザからコンテンツの再生が指示されていないと判定した場合、CPU31は、ステップS25に進み、再生応答メッセージを受信したか否かを判定する。CPU31は、ステップS25において、再生応答メッセージを受信していないと判定した場合、ステップS22に戻り、それ以降の処理を繰り返し実行し、一方、再生応答メッセージを受信したと判定した場合、ステップS29(図9C)に進む。
ステップS29において、コンテンツ出力制御部42は、再生応答メッセージに含まれるコンテンツを再生(出力)させる。その後、処理はステップS22に戻り、それ以降の処理が繰り返し実行される。
以上のように、メディアが発見されたことが画面に自動的に表示されるため、ユーザは、DVDプレーヤ2にメディアを挿入した後に、コンテンツの再生をTV4−1から指示するだけで、容易に、かつ迅速に、コンテンツを利用することができる。すなわち、再生可能なコンテンツがある機器をTV4−1を操作して選択したり、或いは、コンテンツを表示させる機器をDVDプレーヤ2を操作して選択したりするなどの、煩雑な操作をユーザは行う必要がない。
以上においては、再生可能なコンテンツがネットワーク1上に1つのみある場合について説明したが、DVDプレーヤ2のようなストレージ機器がネットワーク1に複数接続されている場合もある。
図11は、ネットワーク1に複数のストレージ機器が接続されている場合に、それらの複数のストレージ機器から送信された挿入通知メッセージに基づいて、複数のコンテンツ位置情報を管理可能なTV4−1の構成例を示すブロック図である。図4と同一の部分には同一の符号を付してあり、その詳細な説明は適宜省略する。
主記憶部32に形成されるコンテンツ一覧記憶領域71には、ネットワーク1上にある、再生可能なコンテンツのコンテンツ位置情報の一覧が記憶される。
図12は、コンテンツ一覧記憶領域71に記憶されるコンテンツ位置情報の一覧(コンテンツ一覧)の例を示す図である。
ネットワーク1に接続される機器から送信される挿入通知メッセージが受信される毎に、コンテンツ一覧にコンテンツ位置情報が登録される。コンテンツ一覧には、例えば、10個までなどの、所定の数のコンテンツ位置情報が登録可能とされる。
図12の例においては、ネットワークアドレス「192.168.0.30」とリソースID「E:」を含むコンテンツ位置情報#1と、ネットワークアドレス「192.168.0.50」とリソースID「C:」を含むコンテンツ位置情報#2がコンテンツ一覧に登録されている。
なお、図12のコンテンツ選択情報は、再生対象のコンテンツを指定(選択)する情報であり、ユーザによる操作に応じて選択対象が切り替えられる。例えば、図12に示されるように、コンテンツ位置情報#1がコンテンツ選択情報により選択されている状態でコンテンツの再生がユーザにより指示されたとき、コンテンツ位置情報#1で特定されるコンテンツ(ネットワークアドレス「192.168.0.30」の機器が有する、リソースID「E:」のコンテンツ)の再生が開始される。
次に、図13乃至図16のフローチャートを参照して、図1のコンテンツ提供システムにおける、図11のTV4−1による処理の詳細について説明する。
なお、TV4−1に対応してDVDプレーヤ2により実行される処理は、図6および図7を参照して説明した処理と同様である。すなわち、DVDプレーヤ2においては、メディアが挿入されることに応じて挿入通知メッセージがブロードキャストされる。また、TV4−1から送信された再生要求メッセージが受信されることに応じて、所定のコンテンツを含む再生応答メッセージがDVDプレーヤ2からTV4−1に送信される。
ステップS41において、CPU31は、主記憶部32のコンテンツ一覧記憶領域71を、いずれのコンテンツ位置情報も記憶されていない状態に初期化するとともに、コンテンツ選択情報を初期化する(いずれのコンテンツ位置情報をも選択していない状態にする)。
CPU31は、ステップS42において、イベントが生じた場合には、それを取得する。TV4−1においては、例えば、挿入通知メッセージが受信されたこと、コンテンツの選択操作が行われたこと、コンテンツの再生が指示されたこと、再生応答メッセージが受信されたこと、がイベントとして取得される。
ステップS43において、CPU31は、挿入通知メッセージを受信したか否かを判定し、挿入通知メッセージを受信したと判定した場合、ステップS47(図14)に進む。
CPU31は、ステップS47において、コンテンツ一覧に空きがあるか否か、すなわち、新たに受信された挿入通知メッセージに含まれるコンテンツ位置情報(ネットワークアドレスとリソースID)を追加して登録することが可能であるか否かを判定する。
例えば、10個のコンテンツ位置情報をコンテンツ一覧に登録することが可能とされており、10個のコンテンツ位置情報がコンテンツ一覧に既に登録されている場合、CPU31は、コンテンツ一覧に空きがないと判定し、ステップS48に進み、コンテンツ一覧に登録されているもののうちの、いずれか1つのコンテンツ位置情報を削除する。
例えば、図12のコンテンツ一覧において、最新のものが、既に登録されているコンテンツ位置情報の上に順次登録されるようになされている場合、最下欄に登録されている、最も古いコンテンツ位置情報から削除される。また、ストレージ機器毎のユーザの利用頻度などの情報が登録されている場合、その情報に基づいて、コンテンツの提供元として選択頻度の最も低いストレージ機器(最も利用しないストレージ機器)が有するコンテンツのコンテンツ位置情報から順に削除されるようにしてもよい。
ステップS47において、コンテンツ一覧に空きがあると判定された場合、ステップS48はスキップされる。
ステップS49において、CPU31は、新たに受信された挿入通知メッセージに含まれるネットワークアドレスとリソースIDを、例えば、コンテンツ一覧の先頭に登録する。
また、CPU31は、ステップS50において、ステップS49で登録された最新のコンテンツ位置情報が選択されるように、コンテンツ選択情報による選択対象を変更する。これにより、コンテンツの再生が指示されたとき、最新のコンテンツ位置情報で特定されるコンテンツが再生されることになる。
ステップS51において、CPU31の提示部43は、新しいメディアを発見したことをユーザに通知するメッセージを表示部36の所定の位置に表示させ、その後、ステップS42に進み、それ以降の処理を実行する。
一方、ステップS43において、挿入通知メッセージを受信していないと判定した場合、ステップS44に進み、CPU31は、続いて、コンテンツ一覧を画面に表示させ、その中から、再生するコンテンツを選択する操作がユーザにより行われたか否かを判定する。
ステップS44(図13)において、ユーザによるコンテンツの選択操作が行われたと判定した場合、ステップS52(図15A)に進む。例えば、TV4−1のリモートコントローラに用意されている選択ボタンが押下されたときにコンテンツ一覧が表示され、その中から、再生させるコンテンツを選択することが可能とされる。
ステップS52において、CPU31は、コンテンツ一覧にコンテンツ位置情報が1つ以上登録されているか否かを判定し、登録されていると判定した場合、ステップS53に進み、コンテンツ選択情報により選択されるコンテンツ位置情報を切り換えるとともに、表示部36に表示される画面を更新する。
図17は、表示部36に表示される画面の例を示す図である。
画面36Aおよび36Bは、図10の画面36Aおよび36Bとそれぞれ同じであり、挿入通知メッセージが受信されたとき、そのことをユーザに通知するメッセージがウインドウ61に表示される(図14のステップS51)。
また、画面36Bが表示されている状態で、コンテンツの選択操作が行われたとき(選択ボタンが1回押されたとき)、画面36Bが、白抜き矢印A3の先に示される画面36Cに切り替わる。この例においては、画面36Cには、ウインドウ61はそのままに、ウインドウ81が画面の左上に新たに表示されている。図17において、ウインドウ81に表示されている「DVDプレーヤ」、「チューナ」、「デジカメ」は、コンテンツ一覧に登録されているネットワークアドレスを有する機器、すなわち、再生可能なコンテンツを有している機器である。また、「DVDプレーヤ」、「チューナ」、「デジカメ」のうちの「DVDプレーヤ」が、再生対象のコンテンツを有する機器としてカーソル81Aにより選択されている(内部的にはコンテンツ選択情報により指定されている)。画面36Cが表示されている状態でコンテンツの再生が指示された場合、白抜き矢印A4の先に示すように、「DVDプレーヤ」が有しているコンテンツの再生が開始され、そのコンテンツの画面が表示部36に表示される。
また、画面36Cが表示されている状態で、続けて、選択ボタンが操作されたとき、内部的にはコンテンツ選択情報による選択対象が切り替えられ(ステップS53)、それに応じて、表示部36の表示は、白抜き矢印A5の先に示される画面36Dのように、カーソル81Aの位置が移動したものとなる。図17においては、「DVDプレーヤ」の直下に表示されている「チューナ」がカーソル81Aにより選択される状態に切り換えられている。この状態でコンテンツの再生が指示された場合、白抜き矢印A6の先に示すように、「チューナ」により選局されているコンテンツの再生が開始され、そのコンテンツの画面が表示部36に表示される。
図15Aの説明に戻り、画面表示が更新された後、および、ステップS52において、コンテンツ一覧にコンテンツ位置情報が登録されていないと判定された場合、ステップS42(図13)に進み、それ以降の処理が実行される。なお、コンテンツ一覧にコンテンツ位置情報が登録されていない場合、そのことをユーザに通知する画面が表示されるようにしてもよい。
ステップS44において、コンテンツの選択操作が行われていないと判定された場合、ステップS45に進み、CPU31は、コンテンツの再生がユーザから指示されたか否かを判定する。
ステップS45において、コンテンツの再生操作が行われたと判定した場合、ステップS54(図15B)に進み、CPU31は、コンテンツ一覧にコンテンツ位置情報が1つ以上登録されているか否かを判定する。
CPU31は、ステップS54において、コンテンツ位置情報が登録されていると判定した場合、ステップS55に進み、コンテンツ選択情報とコンテンツ一覧を参照し、コンテンツ選択情報により再生対象として選択されているコンテンツのネットワークアドレスとリソースIDを取得する。
CPU31のメッセージ管理部41は、ステップS56において、取得したネットワークアドレスを送信先とする、リソースIDを含む再生要求メッセージを生成し、生成した再生要求メッセージを通信部33から送信する。ここで送信される再生要求メッセージを受信した、例えば、DVDプレーヤ2からは、リソースIDに基づいて読み出されたコンテンツを含む再生応答メッセージが送信されてくる(図7BのステップS7)。
再生要求メッセージを送信した後、または、ステップS54において、コンテンツ一覧にコンテンツ位置情報が登録されていないと判定された後、ステップS42に進み、それ以降の処理が実行される。
ステップS45(図13)において、CPU31は、コンテンツの再生がユーザにより指示されていないと判定した場合、ステップS46に進み、再生応答メッセージを受信したか否かを判定する。ステップS46において、CPU31は、再生応答メッセージを受信していないと判定した場合、ステップS42に戻り、それ以降の処理を繰り返し実行し、一方、再生応答メッセージを受信したと判定した場合、ステップS57(図16)に進む。
ステップS57において、コンテンツ出力制御部42は、再生応答メッセージに含まれるコンテンツを出力させる。その後、処理はステップS42に戻り、それ以降の処理を実行する。
以上の処理により、ユーザは、一覧の中からコンテンツを選択し、その再生を指示するだけで、煩雑な操作を行うことなく、容易に、かつ迅速に、ネットワーク1を介してコンテンツを利用することができる。
図18は、本発明を適用したコンテンツ提供システムの他の構成例を示す図である。図1と同一の部分には同一の符号を付してある。
図18においては、図1のDVDプレーヤ2、TV4−1,TV4−2の他に、コンテンツ管理サーバ101とユーザ管理サーバ102がネットワーク1に接続されている。
コンテンツ管理サーバ101は、図19に示されるようなコンテンツデータベースを有しており、ネットワーク1に接続される機器に挿入されているコンテンツを管理する。例えば、ユーザがDVDプレーヤ2にメディアを挿入した場合、DVDプレーヤ2からコンテンツ管理サーバ101に対して、挿入されたコンテンツに関するコンテンツ情報の登録を要求するメッセージが送信され、そのメッセージに含まれるコンテンツ情報がコンテンツデータベースに登録される。
図19の例においては、コンテンツ管理サーバ101にコンテンツ情報を送信した機器(メディアが挿入されている機器)の機器名、コンテンツを有する機器においてコンテンツを特定するリソースID、および、コンテンツ情報の登録時刻が登録される。
コンテンツ管理サーバ101は、コンテンツデータベースに登録されているコンテンツ情報を、適宜、TV4−1やTV4−2などに提供する。
ユーザ管理サーバ102は、図20に示されるようなユーザデータベースを有しており、ネットワーク1に接続される機器にログインしているユーザに関するユーザ情報を管理する。例えば、ユーザがTV4−1にログインしたとき、ログインしたユーザに関するユーザ情報がTV4−1からユーザ管理サーバ102に送信され、それがユーザデータベースに登録される。ユーザ管理サーバ102は、ユーザ情報を、適宜、TV4−1やTV4−2などに提供する。
図20の例においては、ユーザ情報として、ユーザがログインした機器の機器名、および、ユーザのユーザIDが登録される。このユーザIDは、ログイン時に、ユーザにより手入力された所定の桁数のアルファベットや数字であってもよいし、ユーザの指紋のパターンなどに基づいて得られるものでもよい。
なお、図18においては、DVDプレーヤ2、TV4−1,TV4−2等の機器は、コンテンツ管理サーバ101とユーザ管理サーバ102のそれぞれのネットワークアドレスを予め知っているか、もしくは、コンテンツ管理サーバ101とユーザ管理サーバ102のネットワークアドレスをSLP(Service Location Protocol)やUPnPなどのサービス発見プロトコルで知ることができるものとする。
ここで、図21および図22のシーケンスを参照して、図18のコンテンツ提供システムの動作について説明する。なお、ここでは、ユーザがDVDプレーヤ2とTV4−1のみを利用する場合について説明する。従って、図18のTV4−2によってはいずれの処理も行われないことから、図21および図22においては、TV4−2の図示は省略している。後述する、図23、図24、および図41においても同様である。
ユーザによるログイン(ユーザIDの入力など)をステップS81において受け付けたDVDプレーヤ2は、ステップS82に進み、ユーザ情報の登録を要求するユーザ登録要求メッセージをユーザ管理サーバ102に送信する。ユーザ登録要求メッセージには、ログインしたユーザのユーザID、および、メッセージの送信元の機器であるDVDプレーヤ2のネットワークアドレスが含まれる。
ユーザ管理サーバ102は、ステップS101において、ユーザ登録要求メッセージを受信し、メッセージに含まれるユーザIDと、ネットワークアドレスに基づいて得られる機器名からなるユーザ情報をユーザデータベースに登録する。なお、このときユーザ登録要求メッセージを送信してきた機器から、その前に、ユーザ登録要求メッセージが既に送信されている場合、新たに送信されてきたユーザ登録要求メッセージに基づくユーザ情報が、既に登録されているユーザ情報に代えてユーザデータベースに登録される。従って、第1のユーザがDVDプレーヤ2に既にログインしており、その後、第2のユーザがDVDプレーヤ2にログインした場合、後からログインした第2のユーザ、すなわち、そのとき使用しているユーザに関するユーザ情報のみがユーザデータベースに登録される。
また、ユーザがDVDプレーヤ2にメディアを挿入した場合、DVDプレーヤ2は、ステップS83において、それを受け付け、ステップS84に進み、コンテンツの登録を要求するコンテンツ登録要求メッセージをコンテンツ管理サーバ101に送信する。コンテンツ登録要求メッセージには、挿入されたメディアをDVDプレーヤ2が特定するリソースID、DVDプレーヤ2のネットワークアドレスが含まれる。
コンテンツ登録要求メッセージを受信したコンテンツ管理サーバ101は、ステップS121において、コンテンツ登録要求メッセージに含まれるリソースID、メッセージの送信元の機器であるDVDプレーヤ2のネットワークアドレスから得られた機器名、および、メッセージを受信した時刻を含むコンテンツ情報をコンテンツデータベースに登録する。なお、このときコンテンツ登録要求メッセージを送信してきた機器から、その前に、同じ機器名とリソースIDを含むコンテンツ登録要求メッセージが既に送信されている場合、新たに受信されたコンテンツ登録要求メッセージに基づくコンテンツ情報が、既に登録されているコンテンツ情報に代えてコンテンツデータベースに登録される。
ステップS85において、DVDプレーヤ2は、DVDプレーヤ2にログインしているユーザがログインしている機器の一覧を要求する機器一覧要求メッセージをユーザ管理サーバ102に送信する。機器一覧要求メッセージには、DVDプレーヤ2にログインしているユーザのユーザIDが含まれる。
機器一覧要求メッセージをステップS102において受信したユーザ管理サーバ102は、機器一覧要求メッセージに含まれるユーザIDと同じユーザIDを含むユーザ情報をユーザデータベースから読み出す。ユーザ情報には、ユーザIDの他に、ユーザがログインしている機器の機器名も含まれていることから、ここで読み出されるユーザ情報の一覧は、DVDプレーヤ2にログインしているユーザがログインしている機器の一覧を示すものとなる。
ユーザ管理サーバ102は、ステップS103に進み、読み出したユーザ情報を含む機器一覧応答メッセージを、機器一覧要求メッセージの送信元であるDVDプレーヤ2に送信する。
機器一覧応答メッセージをステップS86において受信したDVDプレーヤ2は、メッセージに含まれる機器一覧に、DVDプレーヤ2以外の機器の機器名があるか否かを確認し、DVDプレーヤ2以外の機器の機器名がない場合(DVDプレーヤ2にログインしているユーザが、まだ他の機器にログインしていない場合)、DVDプレーヤ2は、他の機器からのメッセージがあるまで待機する。なお、機器一覧に、DVDプレーヤ2以外の機器の機器名がある場合の処理、すなわち、DVDプレーヤ2にログインしているユーザが、先に、例えば、TV4−1などの他の機器にもログインしている場合の処理については、図23および図24のシーケンスを参照して後述する。
ここで、ユーザがTV4−1にもログインした場合、TV4−1は、ステップS131において、ログインを受け付け、ステップS132に進み、ユーザ登録要求メッセージをユーザ管理サーバ102に送信する。ユーザ登録要求メッセージには、ログインしたユーザのユーザIDが含まれている。
TV4−1から送信されたユーザ登録要求メッセージをステップS104において受信したユーザ管理サーバ102は、メッセージに含まれるユーザIDと、メッセージの送信元の機器であるTV4−1の機器名を対応付けて登録する。
TV4−1は、ステップS133において、機器一覧要求メッセージをユーザ管理サーバ102に送信する。機器一覧要求メッセージには、TV4−1にログインしているユーザのユーザIDが含まれる。
ユーザ管理サーバ102は、ステップS105において、TV4−1から送信された機器一覧要求メッセージを受信し、ステップS106に進み、機器一覧要求メッセージの送信元であるTV4−1に対して、ユーザデータベースに登録されているユーザ情報を参照して、TV4−1にログインしたユーザがログインしている機器の一覧を含む機器一覧応答メッセージを送信する。従って、この例においては、この機器一覧応答メッセージにより、ユーザがDVDプレーヤ2に既にログインしていることがTV4−1に通知される。
機器一覧応答メッセージをステップS134において受信したTV4−1は、メッセージに含まれる機器一覧に、TV4−1以外の機器の機器名があるか否かを確認し、TV4−1以外の機器の機器名がある場合、コンテンツ一覧要求メッセージをコンテンツ管理サーバ101に対して送信する。コンテンツ一覧要求メッセージには、ユーザ管理サーバ102から送信されてきた機器一覧応答メッセージに含まれる全ての機器名が含まれる。
コンテンツ管理サーバ101は、ステップS122において、TV4−1から送信されてきたコンテンツ一覧要求メッセージを受信し、ステップS123に進み、コンテンツ一覧要求メッセージの送信元であるTV4−1にコンテンツ一覧応答メッセージを送信する。このコンテンツ一覧応答メッセージには、コンテンツ一覧要求メッセージに含まれる機器名と同じ機器名を含むコンテンツ情報のうちの最新のもの、すなわち、ユーザが直近にログインした機器により登録されたコンテンツ情報が含まれる。これにより、ユーザが直近にログインした機器の機器名と、リソースIDがTV4−1に通知される。なお、コンテンツ一覧要求メッセージに含まれる機器名と同じ機器名を含むコンテンツ情報がない場合、いずれのコンテンツ情報もコンテンツ一覧応答メッセージには含まれない。
ステップS136において、TV4−1は、コンテンツ管理サーバ101から送信されてきたコンテンツ一覧応答メッセージを受信し、ユーザが直近にログインした機器から登録されたコンテンツ情報がコンテンツ一覧応答メッセージに含まれている場合、そのコンテンツ情報に含まれる機器名とリソースIDをコンテンツ位置情報として保存する。すなわち、ここで保存されるコンテンツ位置情報は、TV4−1にログインしたユーザが直前にログインした、DVDプレーヤ2に挿入されているメディアの位置を示すものである。
また、TV4−1は、ステップS137に進み、最近挿入されたメディアを発見したことをユーザに通知するメッセージを表示する。なお、この例では、DVDプレーヤ2に挿入されたメディア(ステップS83で挿入されたメディア)が発見されたことが表示される。
例えば、TV4−1の近傍にいるユーザが、TV4−1のリモートコントローラを操作して、ポップアップなどで提示されたコンテンツの再生を指示したとき、ステップS138において、TV4−1は、それを受け付ける。また、TV4−1は、ステップS139に進み、保存しておいたコンテンツ位置情報(ネットワークアドレスとリソースID)を参照して、再生可能なメディアを有しているDVDプレーヤ2に対して、コンテンツの再生を要求する再生要求メッセージを送信する。再生要求メッセージにはリソースIDが含まれていることから、再生要求メッセージを受信したDVDプレーヤ2は、再生が要求されているコンテンツをリソースIDに基づいて特定することができる。
DVDプレーヤ2は、TV4−1からの再生要求メッセージをステップS87において受信すると、再生要求メッセージに含まれるリソースIDにより特定されるコンテンツを含む再生応答メッセージを生成し、ステップS88に進み、再生要求メッセージの送信元であるTV4−1に対して再生応答メッセージを送信する。
再生応答メッセージをステップS140において受信したTV4−1は、メッセージに含まれるコンテンツを再生する。
次に、図23および図24のシーケンスを参照して、図18のコンテンツ提供システムの他の動作について説明する。
図23および図24は、図21および図22により示されるものと異なり、ユーザが、DVDプレーヤ2よりも先にTV4−1にログインし、その後、DVDプレーヤ2にログインする場合の動作を示している。
ユーザがTV4−1にログインした場合、TV4−1は、ステップS201において、それを受け付け、ステップS202に進み、ユーザ管理サーバ102にユーザ登録要求メッセージを送信する。ユーザ登録要求メッセージには、ログインしたユーザのユーザIDが含まれている。
TV4−1から送信されたユーザ登録要求メッセージをステップS171において受信したユーザ管理サーバ102は、メッセージに含まれるユーザIDと、ログインしているTV4−1の機器名を対応付けてユーザデータベースに登録する。
TV4−1は、ステップS203において、機器一覧要求メッセージをユーザ管理サーバ102に送信する。機器一覧要求メッセージには、TV4−1にログインしているユーザのユーザIDが含まれる。
ユーザ管理サーバ102は、ステップS172において、TV4−1から送信された機器一覧要求メッセージを受信し、ステップS173に進み、機器一覧要求メッセージの送信元であるTV4−1に対して、ユーザデータベースに登録されている機器の一覧を含む機器一覧応答メッセージを送信する。
TV4−1は、ステップS204において、ユーザ管理サーバ102から送信される機器一覧応答メッセージを受信し、他の機器から、メディアが挿入されたことを通知する挿入通知メッセージが送信されてくるまで待機する(図24のステップS205まで待機する)。
一方、ユーザによるログインをステップS151において受け付けたDVDプレーヤ2は、ステップS152に進み、ユーザ登録要求メッセージをユーザ管理サーバ102に送信する。ユーザ登録要求メッセージには、ログインしたユーザのユーザIDが含まれる。
ユーザ管理サーバ102は、ステップS174において、ユーザ登録要求メッセージを受信し、メッセージに含まれるユーザIDと、ネットワークアドレスに基づいて得られる機器名を含むユーザ情報をユーザデータベースに登録する。従って、このとき、TV4−1のネットワークアドレス、および、TV4−1にログインしたユーザのユーザIDを含むユーザ情報と、DVDプレーヤ2のネットワークアドレス、および、DVDプレーヤ2にログインしたユーザのユーザIDを含むユーザ情報がユーザデータベースに登録された状態となる。
また、ステップS153において、ユーザがDVDプレーヤ2にメディアを挿入した場合、DVDプレーヤ2は、ステップS154に進み、コンテンツ登録要求メッセージをコンテンツ管理サーバ101に送信する。コンテンツ登録要求メッセージには、挿入されたメディアをDVDプレーヤ2が特定するリソースIDが含まれる。
コンテンツ登録要求メッセージを受信したコンテンツ管理サーバ101は、ステップS191において、コンテンツ登録要求メッセージに含まれるリソースID、メッセージの送信元であるDVDプレーヤ2の機器名、および、メッセージを受信した時刻を含むコンテンツ情報をコンテンツデータベースに登録する。なお、ここで登録されたコンテンツ情報は、ユーザがTV4−1、DVDプレーヤ2のログインに続けて、さらに、他の表示機器にログインした場合に用いられる。すなわち、ユーザがログインした他の表示機器においては、図21および図22を参照して説明したTV4−1の処理と同じ処理が行われ、そのステップS136の処理でコンテンツ情報が取得される。
ステップS155において、DVDプレーヤ2は、機器一覧要求メッセージをユーザ管理サーバ102に送信する。機器一覧要求メッセージには、DVDプレーヤ2にログインしているユーザのユーザIDが含まれる。
機器一覧要求メッセージをステップS175において受信したユーザ管理サーバ102は、機器一覧要求メッセージに含まれるユーザIDと同じユーザIDを含むユーザ情報をユーザデータベースから読み出す。また、ユーザ管理サーバ102は、ステップS176に進み、読み出したユーザ情報を含む機器一覧応答メッセージを、機器一覧要求メッセージの送信元であるDVDプレーヤ2に送信する。この例においては、DVDプレーヤ2にログインしているユーザは、既に、TV4−1にもログインしているため、機器一覧要求メッセージにより、TV4−1のネットワークアドレスがDVDプレーヤ2に通知される。
機器一覧応答メッセージをステップS156において受信したDVDプレーヤ2は、メッセージに含まれる機器一覧に、DVDプレーヤ2以外の機器があるか否かを確認する。この例においては、DVDプレーヤ2以外の機器であるTV4−1の機器名が機器一覧にあることから、DVDプレーヤ2は、メディアを発見したことを通知する挿入通知メッセージをTV4−1に送信する。挿入通知メッセージには、リソースIDや、DVDプレーヤ2のネットワークアドレスが含まれる。
ステップS205において、TV4−1は、DVDプレーヤ2から送信された挿入通知メッセージを受信し、挿入通知メッセージに含まれるリソースIDやネットワークアドレス等を保存した後、ステップS206に進み、新しいメディアをDVDプレーヤ2において発見したことを通知するメッセージを表示する。
例えば、ユーザが、TV4−1のリモートコントローラを操作して、ポップアップなどで発見したものとして提示されたコンテンツの再生を指示したとき、ステップS207において、TV4−1は、それを受け付け、ステップS208に進み、挿入通知メッセージを通知してきたDVDプレーヤ2に対して、コンテンツの再生を要求する再生要求メッセージを送信する。再生要求メッセージには、リソースIDが含まれていることから、再生要求メッセージを受信したDVDプレーヤ2は、再生が要求されているコンテンツを特定することができる。
DVDプレーヤ2は、TV4−1からの再生要求メッセージをステップS158において受信すると、再生要求メッセージに含まれるリソースIDにより特定されるコンテンツを含む再生応答メッセージを生成し、ステップS159に進み、TV4−1に対して再生応答メッセージを送信する。
再生応答メッセージをステップS209において受信したTV4−1は、メッセージに含まれるコンテンツを再生する。
このように、ログインしている機器をユーザ管理サーバ102により管理するとともに、挿入されたメディアに記録されているコンテンツをコンテンツ管理サーバ101により管理し、管理している情報に基づいて、あるユーザがログインしている表示機器から、そのユーザが用意しているコンテンツの再生を行うことができるようにしたため、コンテンツの出力先や提供元などに関する設定などを行うことなく、ユーザは、コンテンツを容易に利用することができる。
また、ストレージ機器と表示機器にログインする順序や、ネットワークアドレスや機器名などの記号的概念をユーザは意識する必要がない。さらに、ユーザIDなどの情報に基づいて、あるユーザが利用している表示機器には、そのユーザが用意したコンテンツの情報(メディアが発見されたことのメッセージ)のみが表示されるため、ユーザは、ネットワーク1上で他の機器を使用している他のユーザの存在を意識する必要がない。
ここで、以上のような動作を行う、図18のコンテンツ提供システムの各機器の構成について説明する。なお、図18のDVDプレーヤ2およびTV4−1,TV4−2の構成は、図3および図4に示したものとそれぞれ基本的に同様であるため、その説明は省略する。
図25は、図18のコンテンツ管理サーバ101の構成例を示すブロック図である。
CPU111は、図示せぬROMや主記憶部112に記憶されている制御プログラムに従って、バス114を介して、コンテンツ管理サーバ101の全体の動作を制御する。例えば、CPU111により制御プログラムが実行されることで、メッセージ管理部121、および、コンテンツデータベース管理部122が実現される。
CPU111のメッセージ管理部121は、ネットワーク1に接続される機器との間でのメッセージの送受信を管理する。コンテンツデータベース管理部122は、DVDプレーヤ2などから提供され、コンテンツデータベースに登録されるコンテンツ情報を管理する。
主記憶部112は、図19に示されるようなコンテンツデータベースの他、CPU111により実行される制御プログラムや、ユーザによる各種の設定情報などを記憶する。主記憶部112には、コンテンツデータベースが記憶されるコンテンツデータベース記憶領域123が形成されている。
通信部113は、他の機器との間でネットワーク1を介して行われる通信を制御する。計時部115は、CPU111からの要求に応じて、そのときの時刻を通知する。計時部115から得られた時刻情報は、コンテンツ情報に含められて、コンテンツのリソースIDなどとともにコンテンツデータベース記憶領域123に記憶される。
図26は、図18のユーザ管理サーバ102の構成例を示すブロック図である。
CPU131は、図示せぬROMや主記憶部132に記憶されている制御プログラムに従って、バス134を介して、ユーザ管理サーバ102全体の動作を制御する。例えば、CPU131により制御プログラムが実行されることで、メッセージ管理部141、および、ユーザデータベース管理部142が実現される。
メッセージ管理部141は、ネットワーク1に接続される機器との間でのメッセージの送受信を管理する。ユーザデータベース管理部142は、DVDプレーヤ2などから提供され、ユーザデータベースに登録されるユーザ情報を管理する。
主記憶部132は、図20に示されるようなユーザデータベースの他、CPU131により実行される制御プログラムや、ユーザによる各種の設定情報などを記憶する。主記憶部132には、ユーザデータベースが記憶されるユーザデータベース記憶領域143が形成されている。
通信部133は、他の機器との間でネットワーク1を介して行われる通信を制御する。
次に、図27乃至図30のフローチャートを参照して、図18のコンテンツ提供システムにおける、DVDプレーヤ2による処理の詳細について説明する。
この処理は、例えば、DVDプレーヤ2がネットワーク1に接続されたとき、或いは、ネットワーク1に接続されるDVDプレーヤ2の電源がオンにされたとき、などの所定のタイミングで行われる。
ステップS221において、CPU11は、例えば、ユーザID記憶領域24にデフォルトのユーザIDを記憶させて初期化する。また、CPU11は、イベントが生じた場合、ステップS222において、それを取得する。DVDプレーヤ2においては、例えば、ユーザがログインしたこと、メディアが光ディスクドライブ16に挿入されたこと、メディアが光ディスクドライブ16から排出されたこと、再生要求メッセージが受信されたこと、がイベントとして取得される。
ステップS223において、CPU11は、入力部15からの出力に基づいて、ユーザがログインしたか否かを判定する。ユーザによるログインは、例えば、ユーザがキーボードなどを操作してユーザIDとパスワードを入力することで行われる。
また、ユーザがDVDプレーヤ2の表面に設けられるリーダに非接触ICカードを近接させ、非接触ICカードに記憶されている識別情報を読み取らせることでログインが行われるようにしてもよい。当然、個々のユーザを識別することができればどのような方法でもよく、ユーザの指紋を読み取るなどの、いわゆるバイオメトリクスを用いてログインが行われるようにしてもよい。例えば、光ディスクドライブ16のトレイを出し入れするときに操作されるトレイボタンに指紋認証部が用意されている場合、ユーザは、ディスクを挿入するときに、ログインを容易に行うことができる。これらの各種のログインは、後述する、TV4−1などの表示機器においても行われる。
ステップS223において、ユーザがログインしたと判定した場合、ステップS227(図28)に進み、CPU11は、ログインしたユーザのユーザIDをユーザID記憶領域24に保存させる。
ステップS228において、CPU11のメッセージ管理部21は、ユーザID記憶領域24に保存させたユーザIDと、DVDプレーヤ2自身のネットワークアドレスを含むユーザ登録要求メッセージをユーザ管理サーバ102に送信する。
ステップS229において、CPU11は、光ディスクドライブ16にメディアが挿入されているか否かを判定し、挿入されていないと判定した場合、ステップS230,S231の処理をスキップし、ステップS222以降の処理を実行する。また、CPU11は、ステップS229において、メディアが挿入されていると判定した場合、ステップS230に進む。
ステップS230において、CPU11は、そのときログインしているユーザがログインする前に、既に挿入されていたメディアを排出する。これにより、新たにログインしたユーザは、視聴しようとするコンテンツが記録されているメディアを容易に入れ替えることができる。
CPU11のメッセージ管理部21は、ステップS231において、排出したメディアに記録されているコンテンツの登録を、コンテンツデータベースから抹消することを要求するコンテンツ抹消要求メッセージをコンテンツ管理サーバ101に送信する。コンテンツ抹消要求メッセージには、排出したメディアのリソースIDが含まれており、このメッセージを受信したコンテンツ管理サーバ101においては、コンテンツ情報の削除が行われる(後述する、図36BのステップS288)。従って、排出されたメディアに記録されているコンテンツが再生不可能なものとなる。コンテンツ抹消要求メッセージが送信された後、ステップS222以降の処理が行われる。
CPU11は、ステップS223(図27)において、ユーザがログインしていないと判定した場合、ステップS224に進み、メディアが新たに挿入されたか否かを判定する。
ステップS224において、CPU11は、メディアが新たに挿入されたと判定した場合、ステップS232(図29)に進む。ステップS232において、CPU11のメッセージ管理部21は、新たに挿入されたメディアに記録されているコンテンツの登録を要求するコンテンツ登録要求メッセージを作成し、それをコンテンツ管理サーバ101に送信する。コンテンツ登録要求メッセージには、DVDプレーヤ2のネットワークアドレスと、メディアのリソースIDが含まれており、これを受信したコンテンツ管理サーバ101においては、コンテンツ情報の登録が行われる(図36AのステップS287)。
ステップS233において、CPU11は、ログインが行われたときにユーザID記憶領域24に記憶させておいたユーザIDを読み出し、ステップS234に進み、読み出したユーザIDを含む機器一覧要求メッセージをコンテンツ管理サーバ101に送信する。機器一覧要求メッセージが受信されることに応じて、コンテンツ管理サーバ101においては、DVDプレーヤ2にログインしているユーザがログインしている機器が検索され、検索された機器の機器名の一覧を含む機器一覧応答メッセージの送信が行われる(図39のステップS309)。
ステップS235において、CPU11は、ユーザ管理サーバ102から送信される機器一覧応答メッセージを受信し、ステップS236に進む。
ステップS236において、CPU11は、機器一覧応答メッセージに含まれる機器一覧を参照し、自機器以外の機器名、すなわち、DVDプレーヤ2にログインしているユーザがログインしている、ネットワーク1に接続されている他の機器の機器名が機器一覧の中にあるか否かを判定する。
ステップS236において、CPU11は、機器一覧応答メッセージに含まれる機器一覧中に、自分自身以外の機器名があると判定した場合、ステップS237に進み、その、自分自身以外の機器に対して、メディアが挿入されたことを通知する挿入通知メッセージを送信する。例えば、DVDプレーヤ2にログインする前に、ユーザがTV4−1に既にログインしている場合、受信される機器一覧応答メッセージに含まれる機器一覧中には、DVDプレーヤ2以外の機器名であるTV4−1の機器名が含まれていることになり、CPU11は、挿入通知メッセージをTV4−1に対して送信する。
挿入通知メッセージの送信が行われた後、または、ステップS236において、機器一覧応答メッセージに含まれる機器一覧中に、自分自身以外の機器名がないと判定された場合、ステップS222以降の処理が行われる。
一方、CPU11は、ステップS224(図27)において、メディアが挿入されていないと判定した場合、ステップS225に進み、続いて、メディアが排出されたか否かを判定する。CPU11は、ステップS225において、メディアが排出されたと判定した場合、上述した、ステップS231(図28)以降の処理を行う。すなわち、CPU11は、コンテンツ抹消要求メッセージをコンテンツ管理サーバ101に送信し、それ以降の処理を行う。
ステップS225において、メディアが排出されていないと判定した場合、ステップS226に進み、CPU11は、再生要求メッセージを受信したか否かを判定する。ステップS226において、CPU11は、再生要求メッセージを受信していないと判定した場合、ステップS222に戻り、それ以降の処理を繰り返し実行し、一方、挿入通知メッセージを受信したと判定した場合、ステップS238(図30)に進む。上述したようにして挿入通知メッセージを送信した機器においては、メディアが発見されたことが画面に表示され、それに対してユーザがコンテンツの再生を指示したとき、リソースIDを含む再生要求メッセージが送信されてくる。
ステップS238において、CPU11は、再生要求メッセージに含まれるリソースIDに対応するメディアが挿入されているか否かを判定し、挿入されていると判定した場合、ステップS239に進む。
ステップS239において、CPU11のメッセージ管理部21は、光ディスクドライブ16に挿入されたメディアに記録されているコンテンツを含む再生応答メッセージを生成し、生成した再生応答メッセージを、再生要求メッセージの送信元の機器に送信する。
これにより、再生応答メッセージを受信した機器においては、メッセージに含まれるコンテンツの再生が行われる。再生応答メッセージの送信が行われた後、または、ステップS238において、再生要求メッセージに含まれるリソースIDに対応するメディアが挿入されていないと判定された場合、ステップS222以降の処理が行われる。
なお、例えば、再生要求メッセージに含まれるリソースIDに対応するメディアが挿入されていないと判定された場合、メディアが挿入されていないことがユーザに提示されるように、コンテンツ再生要求メッセージを送信してきたTV4−1に対して、所定のメッセージが送信されるようにしてもよい。
次に、図31乃至図34(図34Aおよび図34B)のフローチャートを参照して、図18のコンテンツ提供システムにおける、TV4−1による処理の詳細について説明する。
ステップS251において、CPU31は、コンテンツ位置情報記憶領域44を初期化し、ステップS252に進み、イベントが生じた場合には、それを取得する。TV4−1においては、例えば、ユーザによるログインが行われたこと、ユーザ管理サーバ102から送信される機器一覧応答メッセージが受信されたこと、コンテンツ管理サーバ101から送信されるコンテンツ一覧応答メッセージが受信されたこと、コンテンツの再生が指示されたこと、再生応答メッセージが受信されたこと、挿入通知メッセージが受信されたこと、がイベントとして取得される。
ステップS253において、CPU31は、入力部35からの出力に基づいて、ユーザがログインしたか否かを判定し、ログインしたと判定した場合、ステップS259(図32A)に進む。
ステップS259において、CPU31のメッセージ管理部41は、ログインしたユーザのユーザIDと、TV4−1のネットワークアドレスを含むユーザ登録要求メッセージをユーザ管理サーバ102に送信する。
また、CPU31のメッセージ管理部41は、ステップS260において、機器一覧要求メッセージをユーザ管理サーバ102に送信し、その後、ステップS252以降の処理を行う。機器一覧要求メッセージを受信したユーザ管理サーバ102においては、ユーザデータベースの検索が行われ、TV4−1にログインしているユーザがログインしている機器の一覧を含む機器一覧応答メッセージの送信が行われる(後述する、図39のステップS309)。
一方、ステップS253(図31)において、ユーザがログインしていないと判定した場合、CPU31は、ステップS254に進み、機器一覧応答メッセージを受信したか否かを判定する。
ステップS254において、機器一覧応答メッセージを受信したと判定した場合、ステップS261(図32B)に進み、CPU31は、機器一覧応答メッセージに含まれる機器一覧を参照し、自分自身以外の機器名があるか否か、すなわち、TV4−1にログインしているユーザが、他の機器にもログインしているか否かを判定する。
ステップS261において、CPU31は、機器一覧応答メッセージに含まれる機器一覧中に、自分自身以外の機器名があると判定した場合、ステップS262に進む。ステップS262において、CPU31のメッセージ管理部41は、コンテンツ一覧の送信を要求するコンテンツ一覧要求メッセージをコンテンツ管理サーバ101に送信し、その後、ステップS252以降の処理を行う。コンテンツ一覧要求メッセージを受信したコンテンツ管理サーバ101においては、TV4−1にログインしているユーザにより用意されたコンテンツの検索が行われ、直近に用意されたコンテンツのコンテンツ位置情報を含む機器一覧応答メッセージの送信が行われる(後述する、図37のステップS293)。
一方、ステップS254(図31)において、CPU31は、機器一覧応答メッセージを受信していないと判定した場合、ステップS255に進み、コンテンツ一覧応答メッセージを受信したか否かを判定する。
CPU31は、ステップS255において、コンテンツ一覧応答メッセージを受信したと判定した場合、ステップS263(図33A)に進み、受信したコンテンツ一覧応答メッセージにコンテンツ位置情報が含まれているか否かを判定する。
ステップS263において、コンテンツ位置情報がコンテンツ一覧応答メッセージに含まれていると判定した場合、ステップS264に進み、そのコンテンツ位置情報をコンテンツ位置情報記憶領域44に保存させる。
ステップS265において、CPU31の提示部43は、最近挿入されたメディアを発見したことを通知するメッセージを表示部36に表示させる。ここでは、例えば、図10を参照して説明したウインドウ61が表示部36に表示され、この表示に対して、ユーザは、コンテンツの再生を指示することが可能となる。その後、ステップS252に進み、それ以降の処理が行われる。
ステップS255(図31)において、コンテンツ一覧応答メッセージを受信していないと判定した場合、CPU31は、ステップS256に進み、ユーザからコンテンツの再生が指示されたか否かを判定する。
ステップS256において、CPU31は、コンテンツの再生が指示されたと判定した場合、ステップS266(図33B)に進む。ステップS266において、CPU31のメッセージ管理部41は、コンテンツ位置情報記憶領域44に記憶されているコンテンツ位置情報(ネットワークアドレス、リソースID)を参照して、記憶されているネットワークアドレスを送信先とする、リソースIDを含む再生要求メッセージを生成し、生成した再生要求メッセージを通信部33から送信する。再生要求メッセージを受信した、例えば、DVDプレーヤ2からは、リソースIDに基づいて読み出されたコンテンツを含む再生応答メッセージが送信されてくる(図30のステップS239)。その後、ステップS252以降の処理が行われる。
ステップS256(図31)において、ユーザからコンテンツの再生が指示されていないと判定した場合、ステップS257に進み、CPU31は、再生応答メッセージを受信したか否かを判定する。CPU31は、ステップS257において、再生応答メッセージを受信したと判定した場合、ステップS267(図34A)に進む。
ステップS267において、CPU31のコンテンツ出力制御部42は、再生応答メッセージに含まれるコンテンツの画像が表示部36に表示されるようにコンテンツの再生を行い、その後、ステップS252以降の処理を行う。これにより、ユーザは、例えば、DVDプレーヤ2に挿入したコンテンツを、複雑な設定などを行うことなく、ネットワーク1を介してTV4−1で容易に視聴することができる。
一方、ステップS257(図31)において、再生応答メッセージを受信していないと判定した場合、ステップS258に進む。ステップS258において、CPU31は、挿入通知メッセージを受信したか否かを判定し、受信していないと判定した場合、ステップS252に戻り、それ以降の処理を繰り返し実行する。
一方、CPU31は、ステップS258において、挿入通知メッセージを受信したと判定した場合、ステップS268(図34B)に進み、挿入通知メッセージに含まれるコンテンツ位置情報をコンテンツ位置情報記憶領域44に保存させる。
CPU31の提示部43は、ステップS269において、新しいメディアを発見したことをユーザに通知するメッセージを表示部36に表示させ、ステップS252に戻り、それ以降の処理を実行する。
次に、図35乃至図37のフローチャートを参照して、図18のコンテンツ提供システムにおける、コンテンツ管理サーバ101による処理の詳細について説明する。
ステップS281において、CPU111のコンテンツデータベース管理部122(図25)は、コンテンツデータベース記憶領域123に記憶されているコンテンツデータベースを初期化する。
CPU111は、ステップS282において、イベントが生じた場合には、それを取得する。コンテンツ管理サーバ101においては、例えば、コンテンツ登録要求メッセージが受信されたこと、コンテンツ登録抹消要求メッセージが受信されたこと、コンテンツ一覧要求メッセージが受信されたこと、がイベントとして取得される。
ステップS283において、CPU111は、コンテンツ登録要求メッセージを受信したか否かを判定し、受信したと判定した場合、ステップS286(図36A)に進む。例えば、DVDプレーヤ2にメディアが挿入されたとき、DVDプレーヤ2のネットワークアドレス、メディアのリソースIDを含むコンテンツ登録要求メッセージがDVDプレーヤ2から送信されてくる。
CPU111は、ステップS286において、計時部115から現在時刻を取得し、ステップS287に進む。ステップS287において、CPU111のコンテンツデータベース管理部122は、ステップS286で取得した現在時刻を、受信したコンテンツ登録要求メッセージに含まれるネットワークアドレスに基づいて取得された機器名、および、リソースIDとともにコンテンツ情報としてコンテンツデータベースに登録する。その後、ステップS282以降の処理が行われる。
一方、ステップS283において、コンテンツ登録要求メッセージを受信していないと判定した場合、CPU111は、ステップS284に進み、コンテンツ登録抹消要求メッセージを受信したか否かを判定する。例えば、DVDプレーヤ2に挿入されていたメディアが排出されたときなどには、DVDプレーヤ2からコンテンツ情報の登録の抹消を要求するコンテンツ登録抹消要求メッセージが送信されてくる(図28のステップS231)。
ステップS284において、CPU111のメッセージ管理部121は、コンテンツ登録抹消要求メッセージを受信したと判定した場合、ステップS288(図36B)に進み、コンテンツ登録抹消要求メッセージに含まれる機器名とリソースIDに基づいて、同じ機器名とリソースIDを含むコンテンツ情報をコンテンツデータベースから削除する。これにより、コンテンツデータベースに、同じ機器名とリソースIDを含むコンテンツ情報が複数登録されることはない。その後、ステップS282に進み、それ以降の処理が行われる。
ステップS284(図35)において、CPU111は、コンテンツ登録抹消要求メッセージを受信していないと判定した場合、ステップS285に進み、コンテンツ一覧要求メッセージを受信したか否かを判定する。ステップS285において、コンテンツ一覧要求メッセージを受信していないと判定した場合、ステップS282に戻り、それ以降の処理を繰り返し実行し、一方、コンテンツ一覧要求メッセージを受信したと判定した場合、ステップS289(図37)に進む。
例えば、TV4−1において、TV4−1にログインしているユーザがDVDプレーヤ2にもログインしていることが確認された場合、再生可能なコンテンツの一覧を要求するコンテンツ一覧要求メッセージが、TV4−1からコンテンツ管理サーバ101に対して送信されてくる(図32BのステップS262)。上述したように、コンテンツ一覧要求メッセージには、機器一覧応答メッセージに含めてTV4−1に対して通知された全ての機器名、すなわち、TV4−1にログインしているユーザがログインしている全ての機器の機器名が含まれている。
ステップS289において、CPU111のコンテンツデータベース管理部122は、コンテンツ一覧要求メッセージに含まれる機器名と同じ機器名を含むコンテンツ情報をコンテンツデータベースにおいて検索する。従って、例えば、TV4−1にログインしているユーザがDVDプレーヤ2にもログインしており、DVDプレーヤ2の機器名がコンテンツ一覧要求メッセージに含まれている場合、コンテンツデータベースからは、DVDプレーヤ2によって登録されたコンテンツ情報が、検索結果のコンテンツ情報として取得される。
ステップS290において、CPU111は、コンテンツ情報の検索結果として、コンテンツ一覧要求メッセージに含まれる機器名と同じ機器名を含むコンテンツ情報があるか否かを判定する。
CPU111は、ステップS290において、コンテンツ一覧要求メッセージに含まれる機器名と同じ機器名を含むコンテンツ情報がないと判定した場合、ステップS291に進む。ステップS291において、CPU111のメッセージ管理部121は、コンテンツ情報を含まないコンテンツ一覧応答メッセージを、コンテンツ一覧要求メッセージの送信元の機器に対して送信する。従って、この場合、コンテンツ一覧応答メッセージの送信先の機器であるTV4−1などにおいては、視聴できるコンテンツがないことになる。
一方、ステップS290において、コンテンツ一覧要求メッセージに含まれる機器名と同じ機器名を含むコンテンツ情報があると判定した場合、ステップS292に進み、CPU111は、コンテンツ情報に含まれている登録時刻に基づいて、最新のコンテンツ情報(直近に登録されたコンテンツ情報)を選択する。
CPU111のメッセージ管理部121は、ステップS293において、ステップS292で選択された、最新のコンテンツ情報を含むコンテンツ一覧応答メッセージを、コンテンツ一覧要求メッセージの送信元の機器に対して送信する。例えば、TV4−1においては、このメッセージが受信されることに応じてメディアが発見されたことが表示される。従って、ユーザは、その表示に対してコンテンツの再生を指示することで、直前に挿入したメディアの再生を容易に行うことができる。
ステップS291またはS293において、コンテンツ一覧応答メッセージが送信された後、ステップS282以降の処理が行われる。
次に、図38(図38Aおよび図38B)および図39のフローチャートを参照して、図18のコンテンツ提供システムにおける、ユーザ管理サーバ102による処理の詳細について説明する。
ステップS301において、CPU131のユーザデータベース管理部142は、ユーザデータベース記憶領域143に記憶されているユーザデータベースを初期化する。
CPU131は、ステップS302において、イベントが生じた場合には、それを取得する。ユーザ管理サーバ102においては、例えば、ユーザ登録要求メッセージが受信されたこと、機器一覧要求メッセージが受信されたこと、がイベントとして取得される。
ステップS303において、CPU131は、ユーザ登録要求メッセージを受信したか否かを判定し、受信したと判定した場合、ステップS305(図38B)に進む。ステップS305において、CPU131のユーザデータベース管理部142は、ユーザ登録要求メッセージに含まれるネットワークアドレスに基づいて、ユーザがログインした機器の機器名を取得し、取得した機器名とユーザIDをユーザ情報としてユーザデータベースに登録する。その後、ステップS302に進み、それ以降の処理が行われる。
一方、ステップS303において、ユーザ登録要求メッセージを受信していないと判定した場合、CPU131は、ステップS304に進み、機器一覧要求メッセージが送信されてきたか否かを判定する。機器一覧要求メッセージは、ユーザがログインしたTV4−1などから、同じユーザがログインする機器の一覧を要求するときに送信されてくる(図32AのステップS260)。
ステップS304において、CPU131は、機器一覧要求メッセージを受信していないと判定した場合、ステップS302に戻り、それ以降の処理を繰り返し実行し、一方、機器一覧要求メッセージを受信したと判定した場合、ステップS306(図39)に進む。
ステップS306において、CPU131は、機器一覧要求メッセージに含まれるユーザIDと同じユーザIDを含むユーザ情報をユーザデータベースにおいて検索する。
ステップS307において、CPU131は、ユーザ情報の検索結果として、機器一覧要求メッセージに含まれるユーザIDと同じユーザIDを含むユーザ情報があるか否かを判定する。
CPU131は、ステップS307において、機器一覧要求メッセージに含まれるユーザIDと同じユーザIDを含むユーザ情報がないと判定した場合、ステップS308に進み、ユーザ情報を含まない機器一覧応答メッセージを、機器一覧要求メッセージの送信元の機器に対して送信する。
一方、ステップS307において、CPU131は、機器一覧要求メッセージに含まれるユーザIDと同じユーザIDを含むユーザ情報があると判定した場合、ステップS309に進む。ステップS309において、CPU131のメッセージ管理部141は、検索により取得されたユーザ情報を含む機器一覧応答メッセージを機器一覧要求メッセージの送信元の機器に対して送信する。ステップS308またはS309においてコンテンツ一覧応答メッセージが送信された後、ステップS302以降の処理が行われる。
図18のコンテンツ提供システムにおいては、以上のような処理が各機器により行われるため、ユーザは、DVDプレーヤ2などの所定のストレージ機器にログインし、メディアを挿入した後、自分がコンテンツを視聴したいTV4−1などの表示機器からコンテンツの再生を指示するだけで、直前に用意したメディアに記録されているコンテンツを視聴することができる。
また、先に表示機器にログインし、その後、ストレージ機器にログインした場合でも、ユーザ情報やコンテンツ情報がそれぞれのサーバにおいて管理されていることから、ユーザは、ログインの順序などを気にすることなく、ストレージ機器に挿入したメディアに記録されているコンテンツを表示機器において利用することができる。
なお、以上においては、コンテンツ管理サーバ101とユーザ管理サーバ102は、それぞれ物理的に異なる装置により構成されるとしたが、それらの機能を併せ持つ1つのサーバによりコンテンツ情報とユーザ情報が管理され、図18のコンテンツ提供システムが実現されるようにしてもよい。
また、以上においては、発見されたコンテンツとしてユーザに提示されるコンテンツが、常に、最新のもの(例えば、直近に挿入されたメディアに記録されているコンテンツ)のみであるとしたが、あるユーザが複数の機器にログインしており、そのそれぞれにメディアを用意している場合、用意したメディアに記録されているコンテンツの一覧の中から、再生するコンテンツをユーザ自身が選択することができるようにしてもよい。
例えば、ユーザがログインし、あるストレージ機器に挿入したメディアに記録されているコンテンツのコンテンツ情報は、ユーザIDと対応付けて図18のコンテンツ管理サーバ101により管理される。そして、ユーザが、TV4−1のリモートコントローラを操作して、コンテンツの一覧の表示を指示したとき、TV4−1からコンテンツ管理サーバ101に対して、登録されているコンテンツの一覧が要求され、そのユーザが用意しているメディアに記録されているコンテンツの一覧がTV4−1の画面上に表示される。ユーザは、画面に表示されるコンテンツの一覧から、再生するコンテンツを選択することができる。
この場合、コンテンツ管理サーバ101においては、例えば、図40に示されるようなコンテンツデータベースが管理される。
図40の例においては、コンテンツ情報#1および#2が登録されている。コンテンツ情報#1は、機器名「ストレージ機器1」の機器に、ユーザID「AAAA」のユーザにより、リソースID「E:」、コンテンツ名「1234」で特定されるメディアが挿入されていることを表している。同様に、コンテンツ情報#2は、機器名「ストレージ機器2」の機器に、機器名「ストレージ機器1」の機器にメディアを挿入したユーザと同じユーザ(ユーザID「AAAA」)により、リソースID「D:」、コンテンツID「5678」で特定されるメディアが挿入されていることを表している。このコンテンツ名は、コンテンツに予め割り当てられているものであってもよいし、ストレージ機器が自ら生成したものや、メディアの挿入時にユーザにより入力されたものであってもよい。
図41は、このように、ユーザが、自ら挿入しているメディアに記録されているコンテンツの一覧を表示させ、その一覧から、再生するコンテンツを選択することができるコンテンツ提供システムによる動作のシーケンスを示している。なお、このコンテンツ提供システムにおいては、ユーザ管理サーバ102によってはいずれの処理も行われない。
ユーザによるログインをステップS331において受け付け、続けて、ユーザによるメディアの挿入をステップS332において受け付けたDVDプレーヤ2は、ステップS333に進み、コンテンツ登録要求メッセージをコンテンツ管理サーバ101に送信する。コンテンツ登録要求メッセージには、ユーザID、DVDプレーヤ2のネットワークアドレス、リソースID、コンテンツ名が含まれる。
コンテンツ管理サーバ101は、ステップS361において、コンテンツ登録要求メッセージを受信し、メッセージに含まれるユーザID、ネットワークアドレス、リソースID、コンテンツ名をコンテンツ情報としてコンテンツデータベースに登録する。
DVDプレーヤ2に挿入したメディアのコンテンツ情報が登録された状態で、ユーザがTV4−1にログインした場合、TV4−1は、それをステップS371において受け付け、ステップS372に進み、ログインしたユーザが他の機器に挿入しているメディアの一覧を要求するコンテンツ一覧要求メッセージをコンテンツ管理サーバ101に送信する。コンテンツ一覧要求メッセージには、ログインしたユーザのユーザIDが含まれる。
コンテンツ一覧要求メッセージをステップS362において受信したコンテンツ管理サーバ101は、ステップS363に進む。ステップS363において、コンテンツ管理サーバ101は、コンテンツ一覧要求メッセージに含まれるユーザIDに基づいて、そのユーザIDを含む全てのコンテンツ情報をコンテンツデータベースから取得し、取得したコンテンツ情報を含むコンテンツ一覧応答メッセージをTV4−1に送信する。
機器一覧応答メッセージをステップS373において受信したTV4−1は、ステップS374に進み、機器一覧応答メッセージに含まれるコンテンツ情報を一覧表示する。これにより、ユーザは、一覧表示されたものの中から、所定のコンテンツを選択し、その再生を指示することができる。
ユーザがカーソルを移動させるなどして、コンテンツの選択操作を行っている場合、TV4−1は、ステップS375において、その操作を受け付け、ステップS376に進み、ユーザの操作に応じて表示を切り替える。また、TV4−1は、コンテンツの一覧の中から、ユーザが所定のコンテンツの再生を指示したとき、ステップS377において、それを受け付ける。
ステップS378において、TV4−1は、ユーザにより再生が指示されたコンテンツを有するDVDプレーヤ2に、リソースIDを含む再生要求メッセージを送信する。
DVDプレーヤ2は、TV4−1からの再生要求メッセージをステップS334において受信すると、再生要求メッセージに含まれるリソースIDにより特定されるコンテンツを含む再生応答メッセージを生成し、ステップS335に進み、再生要求メッセージの送信元であるTV4−1に対して再生応答メッセージを送信する。
再生応答メッセージをステップS379において受信したTV4−1は、メッセージに含まれるコンテンツを再生する。
以上の処理により、ユーザは、複数のコンテンツの中から、再生させる1つのコンテンツを選択することができる。なお、例えば、コンテンツの一覧を表示させる一連の処理は、ユーザがリモートコントローラを操作して、一覧の表示を指示したときに行われる。従って、例えば、上述したようにしてポップアップにより提示されるコンテンツ(図10、図17のような画面により提示されるコンテンツ)とは異なるコンテンツを視聴したい場合、ユーザは、ポップアップにより提示されるコンテンツに拘わらず、コンテンツの一覧の中から好みのコンテンツを視聴することができる。
次に、図42乃至図44(図44Aおよび図44B)のフローチャートを参照して、再生させるコンテンツを一覧の中から選択可能なコンテンツ提供システムにおける、DVDプレーヤ2による処理の詳細について説明する。
CPU11は、ステップS391において、ユーザID記憶領域24にデフォルトのユーザIDを記憶させて初期化する。
CPU11は、イベントが生じた場合、ステップS392において、それを取得する。DVDプレーヤ2においては、例えば、ユーザがログインしたこと、光ディスクドライブ16にメディアが挿入されたこと、光ディスクドライブ16からメディアが排出されたこと、再生要求メッセージが受信されたこと、がイベントとして取得される。
ステップS393において、CPU11は、入力部15からの出力に基づいて、ユーザがログインしたか否かを判定し、ユーザがログインしたと判定した場合、ステップS397(図43)に進む。
CPU11は、ステップS397において、ログイン時に入力されたユーザIDをユーザID記憶領域24に保存させる。CPU11は、ステップS398において、光ディスクドライブ16にメディアが挿入されているか否かを判定し、挿入されていると判定した場合、ステップS399に進む。
ステップS399において、CPU11は、そのときログインしているユーザがログインする前に既に挿入されていたメディアを排出し、ステップS400に進む。ステップS400において、CPU11のメッセージ管理部21は、排出したメディアに関するコンテンツ情報の登録を、コンテンツデータベースから抹消することを要求するコンテンツ抹消要求メッセージをコンテンツ管理サーバ101に送信する。コンテンツ抹消要求メッセージには、排出したメディアに記録されているコンテンツのリソースIDが含まれており、このメッセージを受信したコンテンツ管理サーバ101においては、コンテンツ情報の削除が行われる(後述する、図46AのステップS426)。
コンテンツ抹消要求メッセージが送信された後、または、ステップS398において、メディアが挿入されていないと判定された後、ステップS392以降の処理が行われる。
一方、CPU11は、ステップS393(図42)において、ユーザがログインしていないと判定した場合、ステップS394に進み、メディアが新たに挿入されたか否かを判定する。
ステップS394において、CPU11は、メディアが新たに挿入されたと判定した場合、ステップS401(図44A)に進む。ステップS401において、CPU11は、ユーザID記憶領域24に保存されているユーザIDを読み出す。
ステップS402において、CPU11のメッセージ管理部21は、読み出したユーザIDを含むコンテンツ登録要求メッセージを作成し、それをコンテンツ管理サーバ101に送信する。コンテンツ登録要求メッセージには、ユーザIDの他、DVDプレーヤ2のネットワークアドレス、メディアのリソースID、および、コンテンツ名が含まれている。このコンテンツ登録要求メッセージを受信したコンテンツ管理サーバ101においては、コンテンツ情報の登録が行われる(図45BのステップS425)。
コンテンツ登録要求メッセージが送信された後、ステップS392以降の処理が行われる。
一方、CPU11は、ステップS394(図42)において、メディアが挿入されていないと判定した場合、ステップS395に進み、メディアが排出されたか否かを判定する。CPU11は、ステップS395において、メディアが排出されたと判定した場合、上述したステップS400以降の処理を行う。すなわち、CPU11のメッセージ管理部21は、コンテンツ抹消要求メッセージをコンテンツ管理サーバ101に送信し、それ以降の処理を行う。
ステップS395において、メディアが排出されていないと判定した場合、ステップS396に進み、CPU11は、再生要求メッセージを受信したか否かを判定する。ステップS396において、CPU11は、再生要求メッセージを受信していないと判定した場合、ステップS392に戻り、それ以降の処理を繰り返し実行し、一方、挿入通知メッセージを受信したと判定した場合、ステップS403(図44B)に進む。
ステップS403において、CPU11は、再生要求メッセージに含まれるリソースIDに対応するメディアが挿入されているか否かを判定し、挿入されていないと判定した場合、ステップS392に進み、それ以降の処理を行う。一方、ステップS403において、メディアが挿入されていると判定した場合、CPU11のメッセージ管理部21は、光ディスクドライブ16に挿入されたメディアに記録されているコンテンツを含む再生応答メッセージを生成し、生成した再生応答メッセージを、再生要求メッセージを送信してきた機器に送信する。
以上の処理が、ネットワーク1に接続される各ストレージ機器により行われ、そのそれぞれに挿入されているメディアに記録されているコンテンツがコンテンツ管理サーバ101により管理される。
次に、図45(図45A、図45B)および図46(図46A、図46B)のフローチャートを参照して、再生させるコンテンツを一覧の中から選択可能なコンテンツ提供システムにおける、コンテンツ管理サーバ101による処理の詳細について説明する。
ステップS421において、コンテンツ管理サーバ101のCPU111は、イベントが生じた場合に、それを取得する。コンテンツ管理サーバ101においては、例えば、コンテンツ登録要求メッセージが受信されたこと、コンテンツ登録抹消要求メッセージが受信されたこと、コンテンツ一覧要求メッセージが受信されたこと、がイベントとして取得される。
ステップS422において、CPU111は、コンテンツ登録要求メッセージを受信したか否かを判定し、受信したと判定した場合、ステップS425(図45B)に進む。例えば、DVDプレーヤ2にメディアが挿入されたとき、ユーザID、DVDプレーヤ2のネットワークアドレス、リソースID、コンテンツ名を含むコンテンツ登録要求メッセージがDVDプレーヤ2から送信されてくる。
CPU111のコンテンツデータベース管理部122は、ステップS425において、コンテンツ登録要求メッセージに含まれるネットワークアドレスに基づいて取得された機器名、リソースID、ユーザID、コンテンツ名をコンテンツ情報としてコンテンツデータベースに登録する。その後、ステップS421に進み、それ以降の処理が行われる。
一方、ステップS422において、コンテンツ登録要求メッセージを受信していないと判定した場合、CPU111は、ステップS423に進み、コンテンツ登録抹消要求メッセージを受信したか否かを判定する。例えば、DVDプレーヤ2に挿入されていたメディアが排出されたときなどに、DVDプレーヤ2からコンテンツ情報の登録の抹消を要求するメッセージが送信されてくる。
ステップS423において、CPU111は、コンテンツ登録抹消要求メッセージを受信したと判定した場合、ステップS426(図46A)に進む。ステップS426において、CPU111のコンテンツデータベース管理部122は、コンテンツ登録抹消要求メッセージに含まれる機器名、リソースIDと同じ機器名、リソースIDを含むコンテンツ情報をコンテンツデータベースから削除する。その後、ステップS421に戻り、それ以降の処理が行われる。
一方、ステップS423において、CPU111は、コンテンツ登録抹消要求メッセージを受信していないと判定した場合、ステップS424に進み、コンテンツ一覧要求メッセージを受信したか否かを判定する。ステップS424において、CPU111は、コンテンツ一覧要求メッセージを受信していないと判定した場合、ステップS421に戻り、それ以降の処理を繰り返し実行し、一方、コンテンツ一覧要求メッセージを受信したと判定した場合、ステップS427(図46B)に進む。例えば、表示機器であるTV4−1において、コンテンツの一覧の表示がユーザにより指示された場合、そのユーザによりログインされた機器に用意されたコンテンツの一覧を要求するコンテンツ一覧要求メッセージがTV4−1から送信されてくる。
ステップS427において、CPU111のコンテンツデータベース管理部122は、コンテンツ一覧要求メッセージに含まれるユーザIDと同じユーザIDを含むコンテンツ情報をコンテンツデータベースにおいて検索する。
ステップS427において、CPU111のメッセージ管理部121は、検索により得られた全てのコンテンツ情報を含むコンテンツ一覧応答メッセージを、コンテンツ一覧要求メッセージの送信元の機器に対して送信する。コンテンツ一覧応答メッセージを受信したTV4−1などにおいては、TV4−1にログインしているユーザが用意するコンテンツの一覧が画面上に表示されるため、ユーザは、その一覧の中から、再生させる所定のコンテンツを選択することができる。
コンテンツ一覧応答メッセージを送信した後、ステップS421に戻り、それ以降の処理が行われる。
次に、図47乃至図49(図49A、図49B)のフローチャートを参照して、再生させるコンテンツを一覧の中から選択可能なコンテンツ提供システムにおける、TV4−1による処理の詳細について説明する。
ステップS441において、CPU31は、コンテンツ一覧記憶領域71(図11)を、コンテンツ位置情報が記憶されていない状態に初期化するとともに、コンテンツ選択情報を初期化する。
また、CPU31は、ステップS442において、イベントが生じた場合には、それを取得する。TV4−1においては、例えば、ユーザによるログインが行われたこと、コンテンツ管理サーバ101から送信されるコンテンツ一覧応答メッセージが受信されたこと、ユーザによるコンテンツの選択操作が行われたこと、コンテンツの再生が指示されたこと、および、再生応答メッセージが受信されたこと、がイベントとして取得される。
ステップS443において、CPU31は、入力部35からの出力に基づいて、ユーザがログインしたか否かを判定し、ログインしたと判定した場合、ステップS448(図48A)に進む。
ステップS448において、CPU31のメッセージ管理部41は、ログインしたユーザのユーザIDを含むコンテンツ一覧要求メッセージをコンテンツ管理サーバ101に送信し、その後、ステップS422以降の処理を実行する。コンテンツ一覧要求メッセージを受信したコンテンツ管理サーバ101においては、TV4−1にログインしているユーザにより用意されているコンテンツの一覧を含む機器一覧応答メッセージの送信が行われる(図46のステップS428)。
一方、ステップS443(図47)において、ユーザがログインしていないと判定した場合、ステップS444に進み、CPU31は、コンテンツ一覧応答メッセージを受信したか否かを判定する。
ステップS444において、コンテンツ一覧応答メッセージを受信したと判定した場合、ステップS449(図48B)に進み、CPU31は、コンテンツ一覧応答メッセージに含まれるコンテンツ一覧をコンテンツ一覧記憶領域71に記憶させる。
また、CPU31は、ステップS450において、コンテンツ選択情報を初期化し、デフォルトのコンテンツがカーソルにより選択されている状態のコンテンツ一覧を画面に表示させる。例えば、コンテンツ一覧には、コンテンツ名の他、コンテンツを有している機器の機器名なども表示される。これにより、再生させる所定のコンテンツをユーザが選択できる状態となる。その後、処理はステップS442に進み、それ以降の処理が行われる。
一方、ステップS444において、コンテンツ一覧応答メッセージを受信していないと判定した場合、ステップS445に進み、CPU31は、例えば、カーソルの移動などの、ユーザによるコンテンツの選択操作が行われたか否かを判定する。
CPU31は、ステップS445において、コンテンツの選択操作が行われたと判定した場合、ステップS451(図48C)に進み、ユーザによる操作に応じて、コンテンツ選択情報により選択されるコンテンツを切り換え、それを、画面表示に反映させる。これにより、ユーザの操作に連動して、図17に示されるようなカーソルが移動して表示される。その後、処理はステップS442に戻り、それ以降の処理が行われる。
ステップS446において、CPU31は、コンテンツの再生が指示されたと判定した場合、ステップS452(図49A)に進む。ステップS452において、CPU31は、コンテンツ選択情報を参照し、ユーザにより再生が指示されたコンテンツを有している機器の機器名とリソースIDを、コンテンツ一覧記憶領域71に記憶されているコンテンツ情報から取得する。
CPU31のメッセージ管理部41は、ステップS453において、ステップS452で取得された情報に基づいて、ユーザにより再生が指示されたコンテンツを有している機器に再生要求メッセージを送信する。再生要求メッセージを受信した、例えば、DVDプレーヤ2からは、リソースIDに基づいて読み出されたコンテンツを含む再生応答メッセージが送信されてくる。その後、ステップS442に戻り、それ以降の処理が行われる。
ステップS446(図47)において、コンテンツの再生がユーザから指示されていないと判定した場合、ステップS447に進み、CPU31は、再生応答メッセージを受信したか否かを判定し、受信していないと判定した場合、ステップS442に戻り、それ以降の処理を繰り返し実行する。また、CPU31は、ステップS447において、再生応答メッセージを受信したと判定した場合、ステップS454(図49B)に進む。
ステップS454において、CPU31のコンテンツ出力制御部42は、再生応答メッセージに含まれるコンテンツを出力し、ステップS442に進み、それ以降の処理を繰り返し実行する。
以上の処理により、ユーザは、自分が用意した複数のコンテンツの一覧をいつでも表示させることができ、その中から、所定のコンテンツを選択し、視聴することができる。
以上においては、ユーザが利用するコンテンツが、TV4−1などの表示機器において利用可能な動画コンテンツである場合について主に説明したが、同様にして、音楽コンテンツが記録されたCD-ROM(Compact Disk-Read Only Memory)やMD(MiniDisk)(登録商標)などのリムーバブルメディアが他の機器において挿入されたことが、ユーザが利用する機器に自動的に表示され、その機器から、コンテンツの再生を指示することができるようにしてもよい。
また、ディジタルカメラがネットワーク1に接続されることに応じて、プリンタにおいて、印刷可能な静止画像が発見されたことが自動的に表示され、そのプリンタから、静止画像の印刷を指示することができるようにしてもよい。
さらに、以上においては、メディア(リムーバブルメディア)が挿入されたときに、再生可能なコンテンツが発見されたことがTVなどに表示されるとしたが、リムーバブルメディアに記録されているコンテンツに限らず、インターネットに接続される所定のサーバから、コンテンツのダウンロードが完了したことに応じて、再生可能なコンテンツが発見されたことが自動的に表示されるようにしてもよい。
上述した一連の処理は、ハードウェアにより実行させることもできるが、ソフトウェアにより実行させることもできる。
一連の処理をソフトウェアにより実行させる場合には、そのソフトウェアを構成するプログラムが、専用のハードウェアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば、汎用のパーソナルコンピュータなどに、ネットワークや記録媒体からインストールされる。
この記録媒体は、装置本体とは別に、ユーザにプログラムを提供するために配布されるDVDディスク3(図1)、フロッピディスク、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアにより構成されるだけでなく、装置本体に予め組み込まれた状態でユーザに提供される、プログラムが記録されているROMや、ハードディスクなどで構成される。
なお、本明細書において、記録媒体に記録されるプログラムを記述するステップは、記載された順序に従って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
また、本明細書において、システムとは、複数の装置により構成される装置全体を表わすものである。
1 ネットワーク, 2 DVDプレーヤ, 3 DVDディスク, 4−1,4−2 TV, 21 メッセージ管理部, 22 リソースID取得部, 23 再生制御部, 24 ユーザID記憶領域, 41 メッセージ管理部, 42 コンテンツ出力制御部, 43 提示部, 44 コンテンツ位置情報記憶領域, 101 コンテンツ管理サーバ, 102 ユーザ管理サーバ, 121 メッセージ管理部, 122 コンテンツデータベース管理部, 123 コンテンツデータベース記憶領域, 141 メッセージ管理部, 142 ユーザデータベース管理部, 143 ユーザデータベース記憶領域