以下、本発明の一実施形態について具体的に説明する。なお、本実施形態では分散ハッシュテーブルを用いたP2P型の情報配信システムを例にとり説明するが、P2P型の情報配信システムであればよく、これに限られない。
[1.第1実施形態]
[1.1.情報配信システムSの構成等]
まず始めに、図1及び図2を参照して、本発明の第1実施形態における情報配信システムの概要について説明する。図1は、第1実施形態における情報配信システムの各端末装置及びセンタサーバの接続態様の一例を示す図、図2はID空間の説明図である。
図1の下部枠51内に示すように、IX(Internet eXchange)3、ISP(Internet Service Provider)4、DSL(Digital Subscriber Line)回線事業者(の装置)5、FTTH(Fiber To The Home)回線事業者(の装置)6、及び通信回線(例えば、電話回線や光ケーブル等)7等によって、インターネット等のネットワーク(現実世界のネットワーク)8が構築されている。
情報配信システムSは、図1の上部枠50内に示すように、ネットワーク8を介して相互に接続された複数の端末装置1a,1b,1c・・・1x,1y,1z・・・を備えて構成され、ピアツーピア(P2P)方式のオーバーレイネットワーク9が構築される。このオーバーレイネットワーク9は、既存のネットワーク8を用いて形成された仮想的なリンクを構成するネットワークを意味する。なお、以下の説明において、端末装置1a,1b,1c・・・1x,1y,1z・・・のうち何れかの端末装置又は全ての端末装置を示す場合には、便宜上、端末装置1という場合がある。
情報配信システムSに参加している各端末装置1の識別情報である端末識別番号(以下、「端末ID」と呼ぶ。)として、それぞれの端末装置1毎にユニークな番号(固有番号)を付与する。以下においては、IPアドレスを共通のハッシュ関数によりハッシュ化した値を端末IDとして説明する。なお、ハッシュ関数については公知であるので詳しい説明を省略する。
また、情報配信システムSに参加している複数の端末装置1には、一の端末装置1から他の端末装置1に配信される共用情報としてのコンテンツ情報(例えば、音楽データ、映画データ、文書データ等のデータ)が、分散して記憶(保持)されているが、当該コンテンツ情報にも、それぞれのコンテンツ情報毎の固有の識別番号であるコンテンツ識別情報(以下、「コンテンツID」と呼ぶ。)を付与する。
このように、各端末装置1に付与された端末ID及び各コンテンツ情報に付与されたコンテンツIDは、共通のハッシュ関数によって生成するため、図2に示すように、同一のリング状のID空間上にさほど偏ることなく、散らばって存在するものとして考えることができる。同図は8bitの4進数(「0000」〜「3333」)で端末ID及びコンテンツIDを付与し、図示したものである。図中丸点は端末IDを、四角形はコンテンツIDを示し、反時計回りでIDが増加するものとする。
ここで、情報配信システムS内で送受信するコンテンツ情報を保持する端末装置(以下、「コンテンツ保持端末装置」及ぶ。)の所在情報(ここでは、IPアドレス)を保持する端末装置(以下、「ルート端末装置」と呼ぶ。)を、当該コンテンツ情報のコンテンツIDと所定の関連を有する端末IDを有する端末装置とする。例えば、図2においては、端末IDaを有する端末装置1は、コンテンツIDaを有するコンテンツ情報が何れの端末装置1に保持されているかを知っているルート端末装置である。また、「コンテンツIDと所定の関連を有する端末ID」とは、コンテンツIDに近い端末IDであり、「近い」ことの定義は、当該コンテンツIDを超えず、コンテンツIDと端末IDとの差が一番少ないものとする。なお、上記「所定の関連」は一貫していればよく、必ずしも「近い」とする必要はない。
また、情報配信システムSには、図1に示すように、情報配信システムS内にコンテンツ情報を投入する機能、すなわち情報配信システムS内の端末装置1をコンテンツ保持端末装置とするためにコンテンツ情報を端末装置1へ配布する機能や、情報配信システムSにおいて端末装置1間でコンテンツ情報を送受信可能なコンテンツ情報のリスト(以下、「コンテンツカタログ」とする。)を生成して端末装置1へ提供する機能などを有するセンタサーバ10(サーバ装置の一例)を備えている。このコンテンツカタログには、各コンテンツ情報に付与されたコンテンツIDの情報などが含まれる。
本実施形態における情報配信システムSでは、端末装置1から他の端末装置1へアクセスするために、各端末装置1に保持されるルーティングテーブルが用いられる。このルーティングテーブルは、各端末装置1が情報配信システムSに参加するとき等に形成されるものである。
このルーティングテーブルは、図3に示すように、所定の規則に従い、情報配信システムSに含まれる端末装置1を複数のグループに分けて当該各グループをレベル1のグループとし、このレベル1のグループのうち自装置が属するグループをさらに複数のグループに分けて当該各グループをレベル2のグループとし、このレベル2のグループ分けと同様のグループ分けによりレベルn(nは3以上の自然数)までの各グループとして、各段階の各グループ(自端末装置1の属するグループは除く)に属する少なくとも一の端末装置1の所在情報をそれぞれ記憶するものである。
[1.2.コンテンツ情報の公開方法]
このような構成の情報配信システムSの中で、例えば、ある端末装置1が新しいコンテンツ情報を、情報配信システムS上の他の端末装置1から検索可能となるように公開する際の手法について述べる。図4はセンタサーバ10からコンテンツ情報が投入される様子を示す図、図5はコンテンツ保持端末装置のコンテンツ登録メッセージがDHTルーティングにより転送される様子を示す図である。ここでは、端末ID「1133」の端末装置1nに投入(配布)されたコンテンツ情報を公開する際の手順について説明する。なお、他のコンテンツ情報も同様の手順で公開されることになる。
図4に示すようにセンタサーバ10から新たなコンテンツ情報が端末装置1mに投入され、端末装置1mがコンテンツID「3020」のコンテンツ保持端末装置となったとき、端末装置1mは、図5に示すように、コンテンツID「3020」を宛先識別情報としたコンテンツ登録メッセージを生成し、このコンテンツ登録メッセージを自己が保持しているルーティングテーブルを参照して送信する。端末装置1mが、図3の例と同様のルーティングテーブルを持っていたとすると、コンテンツID「3020」は「3XXX」のエリアであるため、当該「3XXX」のエリアに属す端末装置1のうち、所在情報(IPアドレス)を知っている端末装置1a(端末ID「3213」)に対してコンテンツ登録メッセージを送信する。
次に、コンテンツ登録メッセージを受信した端末装置1aは、このコンテンツ登録メッセージが自端末装置1a宛のメッセージであるか否かを判定する。自端末装置1a宛のメッセージであるか否かは、ルーティングテーブルに基づき宛先識別情報が自端末装置1aの識別情報である端末IDと近いか否かが判定される。そして、自端末装置1aの端末IDよりも他の端末装置1の端末IDの方が、宛先識別情報に近いため、端末装置1aは、当該端末装置1a自身が保持しているルーティングテーブルのテーブルを参照して、「30XX」のエリアに属す端末装置1のうち、所在情報(IPアドレス)を知っている端末装置1b(端末ID「3031」)に対してコンテンツ登録メッセージを転送する。
このように、DHTルーティングにより、コンテンツIDの桁を上から順に適合していく要領でコンテンツ登録メッセージの転送が進み、最終的に当該コンテンツ情報を管理する端末装置1c、すなわちルート端末装置に辿り着くと、当該端末装置1c自身がそのコンテンツ情報のルート端末装置となるべきだと判断し、当該コンテンツ登録メッセージに含まれる当該コンテンツID及びコンテンツ保持端末装置の端末IDや所在情報(IPアドレス)等(以下、これらを「インデックス情報」と呼ぶ。)を図6に示すようなインデックステーブルに記憶する。
[1.3.コンテンツ情報の取得方法]
次に、図7を参照して、コンテンツ情報を保持している端末装置1の検索方法の一例について説明する。図7は、コンテンツ情報を保持している端末装置1がDHTルーティングにより検索される様子の一例を示す図である。ここでは、端末ID「1133」の端末装置1nがリクエスタとして、あるコンテンツ情報を再生するために、コンテンツID「3020」を有するコンテンツ情報を探す際の手順について説明する。なお、他のコンテンツ情報も同様の手順でコンテンツIDに基づいて探されることになる。
リクエスタ1nは、図7に示すように、コンテンツID「3020」と同じエリアの端末IDを持つ端末装置1の端末IDを宛先とし、コンテンツID「3020」を宛先識別情報として、コンテンツ保持端末装置情報(コンテンツ保持端末装置の所在情報であるIPアドレスを含む情報)の送信要求(以下、「コンテンツ検索メッセージ」と呼ぶ。)を送信する(図7(1)参照。)。そして、このコンテンツ検索メッセージも、上記コンテンツ登録メッセージと同様にルーティングテーブルに従って、次々と転送されていき(図7(2)参照。)、最終的に当該検索対象のコンテンツ情報を管理する端末装置1c(端末ID「3011」)、すなわちルート端末装置に辿り着くと、当該ルート端末装置1cは、コンテンツ検索メッセージに含まれるコンテンツID「3020」を、自身がインデックステーブルに管理しているインデックス情報の中から検索し、当該コンテンツ情報を所有しているコンテンツ保持端末装置(ここでは、端末装置1mとする。)のIPアドレス等をリクエスタ1nに返信する(図7(3)参照。)。
リクエスタ1nは、上記ルート端末装置1cから、コンテンツID「3020」のコンテンツ情報の所在情報、即ち、コンテンツID「3020」のコンテンツ情報を保持するコンテンツ保持端末装置1mのIPアドレスを受信して知ることになり、コンテンツID「3020」のコンテンツ保持端末装置1mに、コンテンツID「3020」のコンテンツ情報の送信要求を行なうことにより(図7(4)参照。)、当該コンテンツ保持端末装置1mから、コンテンツID「3020」のコンテンツ情報を取得することになる(図7(5)参照。)。
リクエスタ1nは、コンテンツ保持端末装置1mからコンテンツID「3020」のコンテンツ情報を取得すると、当該コンテンツ情報を再生手段によって再生する。このとき、リクエスタ1nは、取得したコンテンツ情報をコンテンツ記憶手段に記憶して、コンテンツID「3020」のコンテンツ情報のコンテンツ保持端末装置となり、コンテンツ登録メッセージをコンテンツID「3020」を宛先識別情報として送信し、ルート端末装置1cのインデックステーブルに自装置1nの所在情報(IPアドレス)等を登録する。
また、各端末装置1には、コンテンツ再生手段によって再生したコンテンツ情報の履歴(以下、「再生履歴」とする。)を記憶する再生履歴記憶手段を備えており、これにより各端末装置1の再生状況を把握することができ、さらに、後述するようにお勧めコンテンツ情報を表示することを可能としている。
なお、コンテンツ情報を取得する際には、当該コンテンツ情報のコンテンツIDが必要となるが、各端末装置1は、情報配信システムSに参加の際及び参加後は定期的に、センタサーバ10からコンテンツカタログを取得するようにしており、端末装置1がリクエスタとして機能するとき、このコンテンツカタログから取得対象のコンテンツ情報を選択し、当該選択したコンテンツ情報のコンテンツIDをコンテンツカタログから取得するようにしている。
[1.4.お勧めコンテンツ情報の取得方法]
次に、各端末装置1によるお勧めコンテンツ情報の取得方法について説明する。
上述したように、端末装置1の利用者にその嗜好に合ったコンテンツ情報に関する情報、すなわちお勧めコンテンツ情報を通知する場合、各端末装置1におけるコンテンツ情報の再生履歴(ログ)を各端末装置1からセンタサーバ10へ送信させ、センタサーバ10で集計して各端末装置1へ送信し表示させる方法が考えられる。
しかし、情報配信システムSに参加する端末装置1の数が多くなると、各端末装置1からセンタサーバ10へ送信する再生履歴の情報も増加し、ネットワーク8の負荷及びトラフィックの集中が発生してしまう。
そこで、本第1実施形態においては、あるコンテンツ情報を取得し再生した端末装置1の再生履歴を所定の端末装置1で収集して集計し、当該集計の結果からその上位のコンテンツ情報をお勧めコンテンツとし、このお勧めコンテンツに関する情報(お勧めコンテンツ情報)を端末装置1の表示手段で表示するようにしている。これにより、センタサーバ10が各端末装置1から再生履歴を収集することなく、お勧めコンテンツ情報を各端末装置1で表示することができるようにしている。
ここで、同じコンテンツ情報を再生した端末装置1は、少なからずその利用者に多少の嗜好性の共通点があると考えられる。そして、同じコンテンツ情報を再生した端末装置1の再生履歴のうち共通度が高いコンテンツ情報がよりその利用者の嗜好性が共通している可能性が高い。そこで、本第1実施形態においては、同じコンテンツ情報を再生した端末装置1の再生履歴のうち共通度が高いコンテンツ情報をお勧めコンテンツとしており、同じコンテンツ情報を再生した複数の端末装置1の再生履歴を収集し集計するようにしている。
以下、図8〜図10を参照して、お勧めコンテンツ情報の取得方法を具体的に説明する。図8及び図9は端末装置1によるお勧めコンテンツ情報の取得方法を説明するための図、図10は端末装置1によるお勧めコンテンツ情報の表示例を示す図である。
ここでは、端末ID「1232」の端末装置1pがお勧めコンテンツ情報を表示する際の手順について説明する。お勧めコンテンツ情報の表示は、例えば、端末装置1pがあるコンテンツ情報の再生を開始したときに行なうものであり、ここでは、コンテンツID「3020」の再生を開始したときの動作について説明する。
端末装置1pは、図8(a)に示すように、コンテンツID「3020」と同じエリアの端末IDを持つ端末装置1の端末IDを宛先とし、コンテンツID「3020」を宛先識別情報として、コンテンツID「3020」のコンテンツ情報に関連するコンテンツ情報の抽出・送信要求、換言すればお勧めコンテンツ情報の送信要求(以下、「お勧め検索メッセージ」と呼ぶ。)を送信する。そして、このお勧め検索メッセージも、上記コンテンツ登録メッセージやコンテンツ検索メッセージと同様にルーティングテーブルに従って、DHTルーティングにより、次々と転送されていき、最終的に当該コンテンツID「3020」のコンテンツ情報を管理する端末装置1c(端末ID「3011」)、すなわちコンテンツID「3020」のルート端末装置1cに辿り着く。
ルート端末装置1cは、お勧め検索メッセージに含まれるコンテンツID「3020」を、自身がインデックステーブルに管理しているインデックス情報の中から検索し、当該コンテンツID「3020」のコンテンツ情報を所有しているコンテンツ保持端末装置(ここでは、端末装置1j,1kとする。)の所在情報(IPアドレス)を取り出す。そして、図8(b)に示すように、当該取り出した所在情報を有するコンテンツ保持端末装置1j,1kに対して、再生履歴送信要求を行なう。コンテンツ保持端末装置1j,1kは、それぞれ自装置が再生したコンテンツ情報の履歴を自装置の再生履歴記憶手段に記憶しており、ルート端末装置1cから再生履歴送信要求を受信すると、その再生履歴をルート端末装置1cへ送信する。
ここで、端末装置1j,1kは、例えば、過去1週間の再生履歴を自装置の再生履歴記憶手段に記憶しており、当該再生履歴を再生履歴送信要求の送信元端末装置であるルート端末装置1cへ送信するようにしている。
コンテンツ保持端末装置1j,1kからそれぞれ再生履歴を受信したルート端末装置1cは、これらの再生履歴を集計し、当該集計の結果から上位のコンテンツ情報を抽出する。例えば、コンテンツ保持端末装置1jの再生履歴が図9(a)に示す再生履歴であり、コンテンツ保持端末装置1kの再生履歴が図9(b)に示す再生履歴であるとき、ルート端末装置1cによる集計結果は、図9(c)に示すようになる。なお、同図の左側がコンテンツ情報の名称であり、右側がその再生数の集計結果である。そして、集計結果が上位のコンテンツ情報(ここでは、例えば再生履歴が2つあるコンテンツ情報)をお勧めコンテンツとして抽出する。なお、本実施形態においては、説明を容易にするためにコンテンツ保持端末装置を2つの端末装置1j,1kとしているが、実際にはコンテンツ保持端末装置は2台よりも多数あることが多く、より多数の端末装置1の再生履歴を収集することにより、端末装置1pの利用者の嗜好により合致したお勧めコンテンツを抽出することができる。
その後、図8(c)に示すように、ルート端末装置1cは、抽出したお勧めコンテンツに関する情報(お勧めコンテンツ情報)を端末装置1pへ送信する。お勧めコンテンツ情報を受信した端末装置1pでは、図10に示すように、自装置の表示手段の表示領域のうち、再生しているコンテンツ情報の表示領域22に隣接した表示領域23にお勧めコンテンツ情報を一覧表示する。端末装置1pの利用者は、このように表示されているお勧めコンテンツのうち任意のお勧めコンテンツをマウス等の入力手段により選択し再生することができ、これにより、所望のお勧めコンテンツの再生を容易としている。
このように本第1実施形態の情報配信システムSでは、端末装置1が、所定のコンテンツ情報を保持する複数の端末装置1の再生履歴を取得し、当該取得した再生履歴を集計し、当該集計の結果から上位のコンテンツ情報を抽出し、さらに当該抽出されたコンテンツ情報を表示手段に表示するようにしている。その結果、別途サーバを用いることがなく各端末装置1でお勧めコンテンツ情報を表示することができ、ネットワーク8の負荷やトラフィックの集中を抑制することができる。
上述においては、1つのコンテンツ情報に関連するコンテンツ情報を収集し集計して、お勧めコンテンツ情報を抽出するようにしたが、複数のコンテンツ情報に共通に関連するコンテンツ情報を収集し集計してお勧めコンテンツ情報を抽出するようにしてもよい。
例えば、端末装置1pが他の端末装置1からコンテンツ情報を取得して再生する際、今回再生するコンテンツ情報と前回再生したコンテンツ情報の2つのコンテンツ情報のルート端末装置に対して、それぞれお勧めコンテンツ情報を要求する。そして、これらのルート端末装置からそれぞれ送信されるお勧めコンテンツ情報のうち、これらのルート端末装置から共通に送信されるお勧めコンテンツ情報を、お勧めコンテンツ情報として表示手段に表示する。これにより、より端末装置1の利用者の嗜好により適合するコンテンツ情報を、お勧めコンテンツ情報として表示することができる。
ここで、情報配信システムSにおける端末装置1の具体的構成及び動作の一例について図面を参照して説明する。
[1.5.端末装置1の具体的構成及び動作の説明]
以下、図面を参照して、上述した端末装置1の具体的構成及び動作の一例について説明する。
(端末装置1の構成について)
まず、端末装置1の構成について説明する。図11は、端末装置1の具体的構成を示す図である。
端末装置1は、専用のコンピュータの他、一般のパーソナルコンピュータを適用可能であり、図11に示すように、制御部101と、ルーティングテーブル、インデックステーブル及び再生履歴などを記憶する書き換え可能な第1記憶部102(ルーティング情報記憶手段、インデックス記憶手段及び再生履歴記憶手段の一例に相当)と、センタサーバ10や他の端末装置1から取得したコンテンツ情報を記憶する不揮発性メモリである第2記憶部103(コンテンツ記憶手段の一例に相当)と、ネットワーク8を介して取得したコンテンツ情報を一時的に記憶するバッファメモリ104と、このバッファメモリ104に記憶したコンテンツ情報を順次取り出してデコードするデコーダ部105と、このデコーダ部105によってデコードされたコンテンツ情報のうち映像情報を後述の表示部107で表示可能な情報に変換処理する映像処理部106と、この映像処理部106からの出力に基づいてコンテンツ情報の映像を表示する液晶表示装置(LCD)などの表示部107(表示手段の一例に相当)と、デコーダ部105によってデコードされたコンテンツ情報のうち音声情報を後述のスピーカ109で音波として出力可能な情報に変換処理する音声処理部108と、この音声処理部108からの出力に基づいてコンテンツ情報の音声を音波として出力するスピーカ109と、マウス及びキーボードなどからなる入力部110と、ネットワーク8を介して、センタサーバ10や他の端末装置1と通信するための通信部111とを備えている。なお、制御部101、第1記憶部102、第2記憶部103、バッファメモリ104、デコーダ部105、通信部111は、システムバス120を介して相互に接続されている。また、デコーダ部105、映像処理部106及び音声処理部108はコンテンツ再生手段の一例に相当する。
制御部101は、CPU(Central Processing Unit)、内部メモリから構成される。この内部メモリには、情報配信システムSに参加して、コンテンツ情報を送受信し、コンテンツ情報を再生するための情報処理プログラムが格納されており、CPUは内部メモリに記憶されている情報処理プログラムを読み出して実行することによって、コンテンツ取得手段、コンテンツ記憶処理手段、コンテンツ再生処理手段、コンテンツ送信手段、再生履歴取得手段、再生履歴記憶処理手段、提示情報抽出手段、表示処理手段、決定手段、関連情報要求手段、再生履歴要求手段、再生履歴送信手段等として機能する。
なお、この情報処理プログラムは、例えば、ネットワーク8に接続されたサーバ(例えば、センタサーバ10)から、通信部111を介して、制御部101の内部メモリにダウンロードされるようにしてもよく、又CD−ROM等の記録媒体に記録されてから図示しない記録媒体ドライブを介して、制御部101の内部メモリに読み込まれるようにしてもよい。
(端末装置1の動作について)
以上のように構成された端末装置1の動作を図面を参照して具体的に説明する。図12は端末装置1のメイン処理フローチャートである。なお、以下の各処理は、端末装置1の制御部101が上述した各手段等として機能することによって実行されるものである。ここでは、特徴的な部分の動作を主として説明しており、一部の動作内容(例えば、センタサーバ10からの受信動作)は省略している。
図12に示すように、端末装置1においてメイン電源スイッチ(図示せず)がONされたときやリセットスイッチ(図示せず)が操作されたとき、制御部101のCPUは、内部メモリの作業領域確保等の初期設定動作を実行し、内部メモリに記憶した情報処理プログラムを実行状態として、制御部101としての機能を動作状態とした後(ステップS1)、情報配信システムSへ参加してステップS2に処理を移行する。
ここで、情報配信システムSへ参加は、制御部101による処理によって次のように行われる。まず、制御部101は、自装置のIPアドレスを所定のハッシュ関数で演算することによって自端末装置1の端末IDを得る。制御部101は、この端末IDを宛先識別情報とし自装置の所在情報(IPアドレス)などを含む参加メッセージを通信部111及びネットワーク8を介して所定の端末装置1へ送信する。この参加メッセージはDHTルーティングにより転送される。そして、この参加メッセージを受信した他の端末装置1は、自装置のルーティングテーブルから参加メッセージの転送回数に応じたレベルのテーブルの情報を取り出して、参加メッセージを送信した端末装置1へその情報を送信する。制御部101は、このように参加メッセージを受信した端末装置1からルーティングテーブルの情報をネットワーク8及び通信部111を介して取得し、これらの情報に基づいてルーティングテーブルを生成し、情報配信システムSに参加する。
また、制御部101は、情報配信システムSへの参加時にセンタサーバ10からコンテンツカタログを取得し、表示部107にこのコンテンツカタログの内容を表示する。これにより、端末装置1の利用者は、情報配信システムSにおいて再生可能なコンテンツ情報を把握し、所定の操作を行ってコンテンツ情報を取得する。
ステップS2において、制御部101は、コンテンツ再生指示があるか否かを判定する。例えば、利用者による入力部110への操作によって、表示部107に表示されているコンテンツカタログの中からコンテンツ情報が選択されたときに、制御部101は、コンテンツ再生指示があったと判定する。
この処理において、コンテンツ再生指示があったと判定すると(ステップS2:Yes)、制御部101は、コンテンツ再生処理を起動する(ステップS3)。このコンテンツ再生処理は、図13におけるステップS20〜S28の処理であり、後で詳述する。
一方、コンテンツ再生指示がないと判定すると(ステップS2:No)、制御部101は、ネットワーク8及び通信部111を介してDHTメッセージ(例えば、コンテンツ登録メッセージ、コンテンツ検索メッセージ、お勧め検索メッセージなど)を受信したか否かを判定する(ステップS4)。この処理において、DHTメッセージを受信したと判定すると(ステップS4:Yes)、制御部101は、DHTメッセージ処理を行う(ステップS5)。このDHTメッセージ処理は、図14におけるステップS30〜S38の処理であり、後で詳述する。
ステップS4において、DHTメッセージを受信していないと判定すると(ステップS4:No)、制御部101は、ネットワーク8及び通信部111を介してコンテンツ送信要求を受信したか否かを判定する(ステップS6)。この処理において、コンテンツ送信要求を受信したと判定すると(ステップS6:Yes)、制御部101は、コンテンツ送信処理を行う(ステップS7)。コンテンツ送信処理は、コンテンツ送信要求に応じたコンテンツ情報を第1記憶部102から取り出し、このコンテンツ情報をコンテンツ送信要求を行なった他の端末装置1へ通信部111及びネットワーク8を介して送信することによって行なう。このように、制御部101は、他の端末装置1からの要求に応じてコンテンツ記憶手段である第2記憶部103に記憶したコンテンツ情報を通信部111及びネットワーク8を介して送信するコンテンツ送信手段として機能する。
ステップS6において、コンテンツ送信要求を受信していないと判定すると(ステップS6:No)、制御部101は、他の端末装置1からネットワーク8及び通信部111を介して再生履歴の送信要求を受信したか否かを判定する(ステップS8)。
この処理において、再生履歴の送信要求を受信したと判定すると(ステップS8:Yes)、制御部101は、再生履歴送信処理を行う(ステップS9)。この再生履歴送信処理は、制御部101が自装置の再生履歴を第1記憶部102から取り出し、この再生履歴を通信部111及びネットワーク8を介して、送信要求を行った端末装置1へ送信することによって行なわれる。このように制御部101は、他の端末装置1から再生履歴の送信要求があったとき、再生履歴記憶手段である第1記憶部102から再生履歴を取り出して、当該再生履歴の送信要求を行なった他の端末装置1へ送信する再生履歴送信手段として機能する。
ステップS8において再生履歴の送信要求を受信していないと判定したとき(ステップS8:No)、又はステップS3,S5,S7,S9の処理が終了したとき、制御部101は、終了指示を検知したか否かを判定する(ステップS10)。例えば、自装置1の電源がOFF状態へ移行したとき、制御部101は、終了指示を検知する。
ステップS10において、終了指示を検知したと判定すると(ステップS10:Yes)、制御部101は、メイン処理を終了し、一方、終了指示を検知していないと判定すると(ステップS10:No)、制御部101は、ステップS2からの処理を繰り返す。
次に、ステップS3で起動されるコンテンツ再生処理について図13のフローチャートを参照して具体的に説明する。図13は端末装置1におけるコンテンツ再生処理のフローチャートである。
図13に示すように、コンテンツ再生処理を開始すると、制御部101は、第1記憶部102に記憶したルーティングテーブルに基づいて、通信部111及びネットワーク8を介して、他の端末装置1へ検索メッセージを送信する(ステップS20)。この検索メッセージは、再生指示のあったコンテンツ情報を再生するために必要なコンテンツ情報毎に送信されるものであり、制御部101は、コンテンツカタログを参照し、再生指示のあったコンテンツ情報のコンテンツIDをコンテンツカタログから取り出し、このコンテンツIDを宛先識別情報として検索メッセージを生成して送信する。
次に、制御部101は、検索メッセージに対する応答、すなわち再生指示のあったコンテンツ情報を保持するコンテンツ保持端末装置の所在情報(IPアドレス)をネットワーク8及び通信部111を介して受信したか否かを判定する(ステップS21)。この処理において、制御部101は、検索メッセージに対する応答であるインデックス情報(コンテンツ保持端末装置の所在情報など)を受信するまで待ち(ステップS21:No)、当該インデックス情報を受信したと判定すると(ステップS21:Yes)、制御部101は、処理をステップS22に移行する。
ステップS22において、制御部101は、受信したインデックス情報に基づいて、再生指示のあったコンテンツ情報を保持するコンテンツ保持端末装置に対して通信部111及びネットワーク8を介してコンテンツ情報の送信要求を行なう。
その後、制御部101は、通信部111及びネットワーク8を介してコンテンツ保持端末装置からコンテンツ情報を受信したか否かを判定し(ステップS23)、コンテンツ情報を受信するまで待つ(ステップS23:No)。そして、制御部101は、コンテンツ情報を受信すると(ステップS23:Yes)、当該受信したコンテンツ情報をバッファメモリ104に順次記憶し、当該受信したコンテンツ情報の再生を開始する(ステップS24)。コンテンツ情報の再生は、上述したように、制御部101が、バッファメモリ104に記憶したコンテンツ情報を順次取り出してデコーダ部105に入力することによってデコードされたコンテンツ情報に応じた映像や音声を映像処理部106や音声処理部108を介して表示部107やスピーカ109から出力することによって行なう。また、受信したコンテンツ情報を保持するためにこのコンテンツ情報を第2記憶部103に順次記憶していく。このように、制御部101は、再生指示が行なわれたコンテンツ情報をネットワーク8及び通信部111を介して取得するコンテンツ取得手段、この取得したコンテンツ情報をコンテンツ記憶手段としての第2記憶部103に保持するコンテンツ記憶処理手段、この取得したコンテンツ情報をコンテンツ再生手段により再生させるコンテンツ再生処理手段として機能する。
さらに、制御部101は、再生を開始したコンテンツ情報の履歴を更新する。すなわち、制御部101は、再生を開始したコンテンツ情報のファイル名や再生時間などの情報を第1記憶部102に記憶した再生履歴情報に追加する。このように制御部101は、コンテンツ再生手段によるコンテンツ情報の再生履歴を再生履歴記憶手段としての第1記憶部102に記憶する再生履歴記憶処理手段として機能する。
コンテンツ受信の再生を開始したとき、制御部101は、ステップS24で再生を開始したコンテンツ情報を管理するルート端末装置に向けて、お勧め検索メッセージを送信する(ステップS25)。例えば、図8に示す端末装置1pの制御部101は、コンテンツID「3020」を宛先識別情報とし、自装置1pの所在情報(IPアドレス)を含むお勧め検索メッセージを生成し、第1記憶部102に記憶したルーティングテーブルに基づいて、当該生成したお勧め検索メッセージを通信部111及びネットワーク8を介してDHTルーティングにより他の端末装置1へ送信する。このように制御部101は、再生を開始したコンテンツ情報を所定のコンテンツ情報として決定する決定手段と、この決定手段により決定した所定のコンテンツ情報に関連するコンテンツ情報(お勧めコンテンツ)の抽出を他の端末装置1へ要求する関連情報要求手段として機能する。
このようにお勧め検索メッセージを送信した後、制御部101は、当該お勧め検索メッセージの宛先であるルート端末装置からお勧めコンテンツ情報が通信部111及びネットワーク8を介して受信されるのを待つ(ステップS26:No)。このお勧めコンテンツ情報が受信されたとき(ステップS26:Yes)、制御部101は、受信したお勧めコンテンツ情報を第1記憶部102に記憶する。そして、制御部101は、第1記憶部102に記憶したお勧めコンテンツ情報をデコーダ部105に入力することによってデコードされたお勧めコンテンツ情報に応じた映像(例えば、図10参照。)を映像処理部106を介して表示部107から出力する(ステップS27)。このように、制御部101は、お勧めコンテンツ情報を表示手段である表示部107に表示させる表示処理手段として機能する。
その後、制御部101は、ステップS24で開始したコンテンツ情報の再生が終了するまで待ち(ステップS28:No)、当該コンテンツ情報の再生が終了すると(ステップS28:Yes)、制御部101は、コンテンツ再生処理を終了する。
次に、ステップS5のDHTメッセージ処理について図14のフローチャートを参照して具体的に説明する。図14は端末装置1におけるDHTメッセージ処理のフローチャートである。
図14に示すように、DHTメッセージ処理を開始すると、制御部101は、ネットワーク8及び通信部111を介して受信したメッセージが自装置宛であるか否かを判定する(ステップS30)。受信したメッセージが自装置宛であるか否かは、このメッセージの宛先識別情報に自装置の端末IDが近いか否かによって判定する。なお、「近い」ことの定義は、例えば、DHTメッセージの宛先識別情報を超えず、この宛先識別情報と端末IDとの差が一番少ないものとするが、一貫していれば他の定義でもよい。
ステップS30の処理において、受信したメッセージが自装置宛でないと判定すると(ステップS30:No)、制御部101は、当該メッセージを第1記憶部102に記憶したルーティングテーブルに基づいてDHTルーティングにより転送する(ステップS31)。一方、受信したメッセージが自装置宛であると判定すると(ステップS30:Yes)、制御部101は、当該メッセージがコンテンツ登録メッセージであるか否かを判定する(ステップS32)。
ステップS32の処理において、受信したメッセージがコンテンツ登録メッセージであると判定すると(ステップS32:Yes)、制御部101は、当該コンテンツ登録メッセージに含まれるインデックス情報(コンテンツ保持端末装置の所在情報)を第1記憶部102に記憶したインデックステーブル(例えば、図6参照)に追加してインデックステーブルを更新する(ステップS33)。一方、受信したメッセージがコンテンツ登録メッセージではないと判定すると(ステップS32:No)、制御部101は、当該メッセージがコンテンツ検索メッセージであるか否かを判定する(ステップS34)。
ステップS34の処理において、受信したメッセージがコンテンツ検索メッセージであると判定すると(ステップS34:Yes)、制御部101は、当該コンテンツ検索メッセージで要求されているインデックス情報(コンテンツ保持端末装置の所在情報など)を第1記憶部102に記憶したインデックステーブル(例えば、図6参照)から取り出して、要求元の端末装置1へ送信する(ステップS35)。一方、受信したメッセージがコンテンツ検索メッセージではないと判定すると(ステップS34:No)、制御部101は、当該メッセージがお勧め検索メッセージであるか否かを判定する(ステップS36)。
ステップS36の処理において、受信したメッセージがお勧め検索メッセージであると判定すると(ステップS36:Yes)、制御部101は、お勧め検索処理を行なう(ステップS37)。このお勧め検索処理は、図15におけるステップS40〜S43の処理であり、後で詳述する。
一方、受信したメッセージがお勧め検索メッセージではないと判定すると(ステップS36:No)、制御部101は、当該メッセージに応じた処理を行なう(ステップS38)。
ステップS31,S33,S35,S37,S38の処理が終了したとき、制御部101は、DHTメッセージ処理を終了する。
ここで、お勧め検索処理は、制御部101により次のように実行される。図15は端末装置1におけるお勧め検索処理のフローチャートである。
図15に示すように、制御部101はお勧め検索処理を開始すると、まず、第1記憶部102に記憶しているインデックステーブルに基づいて再生履歴の送信要求を行なう(ステップS40)。具体的には、第1記憶部102に記憶しているインデックステーブルから、お勧め検索メッセージの検索対象となるコンテンツ情報(自装置がルート端末装置として管理するコンテンツ情報のうちお勧め検索メッセージで指定されたコンテンツ情報)を保持しているコンテンツ保持端末装置の所在情報(IPアドレス)を取り出し、これらの所在情報を有する他の端末装置1宛にそれぞれ再生履歴の送信要求を通信部111及びネットワーク8を介して行なう。このように、制御部101は、他の端末装置1からお勧めコンテンツ情報の抽出要求であるお勧め検索メッセージを受信したとき、当該お勧め検索メッセージの対象となるコンテンツ情報を保持する端末装置1の所在情報をインデックス記憶手段である第1記憶部102から取り出して、当該コンテンツ情報を保持する端末装置1に対して再生履歴の送信を要求する再生履歴要求手段として機能する。
その後、制御部101は、ステップS40で行なった再生履歴の送信要求に対して、当該要求にかかる端末装置1から全ての再生履歴を受信したか否かを判定する(ステップS41)。例えば、ステップS40で10台のコンテンツ保持端末装置に再生履歴の送信要求を行なった場合、これら10台のコンテンツ保持端末装置から再生履歴が送られてきたか否かを判定する。このように、制御部101は、再生履歴の送信要求を行なった所定のコンテンツ情報を保持する複数の端末装置1からそれぞれ再生履歴を取得する再生履歴取得手段として機能する。
制御部101は、再生履歴を全て受信するまで待ち(ステップS41:No)、全ての再生履歴を受信したと判定すると(ステップS41:Yes)、受信した再生履歴を集計する集計処理を行なう(ステップS42)。この集計処理は、コンテンツ保持端末装置から受信した再生履歴をコンテンツ情報毎にその再生数を集計することによって行なわれる。そして、複数のコンテンツ保持端末装置の中で再生されたコンテンツ情報のうち再生数が多いものから順に所定数分のコンテンツ情報をお勧めコンテンツとして抽出する。
例えば、図9(c)に示す例では、再生数が2回のコンテンツ情報(コンテンツABC〜コンテンツJKK)がお勧めコンテンツとして抽出される。このように、制御部101は、取得した再生履歴を集計し、当該集計の結果から上位のコンテンツ情報を抽出する提示情報抽出手段として機能する。なお、ステップS40において再生履歴の送信要求を行なった後、全てのコンテンツ保持端末装置から再生履歴が送信されるまでに所定期間(例えば、10秒)を超えたとき、処理をステップS42に移行する。これにより、コンテンツ保持端末装置が情報配信システムSから脱退したときでも、処理をステップS42に移行することができる。
そして、制御部101は、ステップS42で抽出したお勧めコンテンツ情報を、お勧め検索メッセージの送信元の末装置1へ通信部111及びネットワーク8を介して送信する(ステップS43)。
以上のように、本第1実施形態における端末装置1では、ルート端末装置がお勧めコンテンツを抽出し、当該抽出結果を要求元の端末装置1へ送信するようにしている。すなわち、所定のコンテンツ情報を再生した端末装置1の利用者の嗜好に沿ったお勧めコンテンツに関する情報を、所定のコンテンツ情報を再生した又は再生する端末装置1から当該所定のコンテンツ情報を管理するルート端末装置へ要求し、このルート端末装置は所定のコンテンツ情報を保持する端末装置1からそれぞれ再生履歴を取得して集計し、この集計結果から上位のコンテンツ情報を抽出して、この抽出結果を要求元の端末装置1へ送信する。従って、お勧めコンテンツ情報を収集して通知するためのサーバが不要となり、ネットワーク8への負荷やトラフィックの集中を抑制しつつ、各端末装置1でお勧めコンテンツ情報を表示することが可能となる。
なお、上述の実施形態においては、図13に示すように、端末装置1の制御部101がステップS25においてお勧め検索メッセージを送信して、ステップS26でお勧めコンテンツ情報を取得することとしたが、制御部101がステップS21においてルート端末装置1からインデックス情報を受信するときにこのルート端末装置1からお勧めコンテンツ情報を取得することで、お勧め検索メッセージを用いずに処理が可能となり、ステップS25,26,S36,S37等の処理を省くようにしてもよい。このとき、ルート端末装置の制御部101は、図15に示すステップS40〜S42の処理を定期的に行なってコンテンツ保持端末装置から再生履歴を取得しておきお勧めコンテンツ情報を送信できる準備をしておくようしておき、端末装置1からインデックス情報の要求があったときに、お勧めコンテンツ情報を送信する。
[2.第2実施形態]
次に、第2実施形態の情報通信システムについて説明する。第1実施形態における情報配信システムでは、ルート端末装置が再生履歴の収集及び集計を行なってお勧めコンテンツを抽出するようにしたが、第2実施形態における情報配信システムでは、お勧めコンテンツ情報を表示する端末装置1が再生履歴の収集及び集計を行なうものである。なお、以下においては、第1実施形態と異なる部分を中心として説明する。なお、制御部101による処理が異なる以外は、第1実施形態と同様であるため、符号等は第1実施形態と同一のものを用いて説明する。
[2.1.お勧めコンテンツ情報の取得方法]
以下、図16を参照して、お勧めコンテンツ情報の取得方法を具体的に説明する。図16は端末装置1によるお勧めコンテンツ情報の取得方法を説明するための図である。ここでは、第1実施形態と同様に、端末ID「1232」の端末装置1pがコンテンツID「3020」の再生を開始したときに、お勧めコンテンツ情報を表示する際の手順について説明する。
お勧めコンテンツ情報の表示を行なおうとする端末装置1pは、図16(a)に示すように、コンテンツID「3020」と同じエリアの端末IDを持つ端末装置1の端末IDを宛先とし、コンテンツID「3020」を宛先識別情報として、コンテンツID「3020」のコンテンツ情報を保持するコンテンツ保持端末装置の所在情報の送信要求(以下、「お勧め検索メッセージ」と呼ぶ。)を送信する。そして、このお勧め検索メッセージも、上記コンテンツ登録メッセージやコンテンツ検索メッセージと同様にルーティングテーブルに従って、次々と転送されていき、最終的に当該コンテンツID「3020」のコンテンツ情報を管理する端末装置1c(端末ID「3011」)、すなわちコンテンツID「3020」のルート端末装置1cに辿り着く。
ルート端末装置1cは、お勧め検索メッセージに含まれるコンテンツID「3020」を、自身がインデックステーブルに管理しているインデックス情報の中から検索し、該当するインデックス情報、すなわち当該コンテンツID「3020」のコンテンツ情報を所有しているコンテンツ保持端末装置(ここでは、端末装置1j,1kとする。)の所在情報(IPアドレス)を取り出す。そして、当該取り出したインデックス情報を要求元の端末装置1pへ送信する。
ルート端末装置1cからインデックス情報を受信した端末装置1pは、図16(b)に示すように、受信したインデックス情報で規定されているコンテンツ保持端末装置1j,1kに対して、通信部111及びネットワーク8を介して、再生履歴の送信要求を行なう。各コンテンツ保持端末装置1j,1kは、自装置が再生したコンテンツ情報の履歴を記憶しており、端末装置1pから再生履歴の送信要求を受信すると、自装置の再生履歴を端末装置1pへ送信する。
コンテンツ保持端末装置1j,1kからそれぞれ再生履歴を受信した端末装置1pは、これらの再生履歴を集計し、この集計結果から上位のコンテンツ情報を抽出する。この処理は、第1実施形態におけるルート端末装置1cの処理と同様の処理である。
その後、端末装置1pは、抽出したお勧めコンテンツ情報の一覧を表示手段である表示部107で表示する。端末装置1pの利用者は、このように表示されているお勧めコンテンツ情報の一覧から所望のコンテンツをマウス等の入力手段により選択し再生可能となり、これにより、所望のお勧めコンテンツの再生を容易に行なうことができる。
このように第2実施形態の情報配信システムSでは、お勧めコンテンツ情報を表示する端末装置1自身が、所定のコンテンツ情報を保持する複数の端末装置1の再生履歴を取得し、当該取得した再生履歴を集計し、この集計結果から上位のコンテンツ情報を抽出し、さらに抽出されたコンテンツ情報を表示手段に表示するようにしている。その結果、サーバを用いることがなく各端末装置1でお勧めコンテンツ情報を表示することができ、ネットワーク8の負荷やトラフィックの集中を抑制することができる。
上述においては、1つのコンテンツ情報に関連するコンテンツ情報を収集し集計して、お勧めコンテンツを抽出するようにしたが、複数のコンテンツ情報に共通に関連するコンテンツ情報を収集し集計してお勧めコンテンツとするようにしてもよい。
例えば、端末装置1pが他の端末装置1からコンテンツ情報を取得して再生する際、今回再生するコンテンツ情報と前回再生したコンテンツ情報の2つのコンテンツ情報のルート端末装置に対して、インデックス情報を要求する。そして、端末装置1pは、これら2つのコンテンツ情報を共に保持している端末装置1から履歴情報を収集し、集計処理を行なって上位のコンテンツ情報を抽出して勧めコンテンツ情報として表示手段に表示する。これにより、端末装置1の利用者の嗜好により適合したコンテンツ情報を、お勧めコンテンツ情報として表示することができる。
[2.2.端末装置の具体的動作の説明]
以下、図面を参照して、第2実施形態における端末装置1の具体的動作の一例について説明する。なお、第2実施形態の端末装置1は、第1実施形態の端末装置1に対してコンテンツ再生処理及びお勧め検索処理が異なり、その他の処理は同様の処理であることから、ここでは、コンテンツ再生処理及びお勧め検索処理について説明する。
まず、コンテンツ再生処理について図17を参照して説明する。図17は第2実施形態における端末装置1のコンテンツ再生処理のフローチャートである。この図17において、ステップS120〜S125,S131の処理は、第1実施形態における図13のステップS20〜S25,S28の処理と同様であるため説明を省略する。
制御部101は、コンテンツ情報の再生を開始し(ステップS124)、お勧め検索メッセージを送信した後(ステップS125)、お勧め検索メッセージの宛先であるルート端末装置からインデックス情報(コンテンツ保持端末装置の所在情報などを含む情報)を受信したか否かを判定する(ステップS126)。このお勧め検索メッセージは、ステップS124で再生処理を開始したコンテンツ情報を記憶する端末装置1の所在情報の送信要求である。このように、制御部101は、所定のコンテンツ情報を記憶する端末装置1の所在情報の送信要求を行なう所在情報要求手段として機能する。
この処理において、インデックス情報が受信されるまで待ち(ステップS126:No)、インデックス情報を受信したとき(ステップS126:Yes)、制御部101は、受信したインデックス情報に基づいて、再生履歴の送信要求を行なう(ステップS127)。ステップS126において、受信するインデックス情報は、ステップS126で再生を開始したコンテンツ情報を保持する全てのコンテンツ保持端末装置の所在情報(IPアドレス)であり、制御部101は、これらのコンテンツ保持端末装置に対して、通信部111及びネットワーク8を介して、再生履歴の送信要求を行なう。このように制御部101は、ルート端末装置から取得した所在情報を有する他の端末装置1に対して再生履歴の送信を要求する再生履歴要求手段として機能する。また、再生履歴の送信要求先の端末装置の制御部101は、他の端末装置1から再生履歴の送信要求があったとき、再生履歴記憶手段として機能する第1記憶部102から自装置の再生履歴を取り出し、再生履歴の送信要求を行なった端末装置1へ送信する再生履歴送信手段として機能することになる。
その後、制御部101は、ステップS127で行なった再生履歴の送信要求に対して、当該要求にかかる端末装置1から全ての再生履歴を受信したか否かを判定する(ステップS128)。
制御部101は、全てのコンテンツ保持端末装置から再生履歴を受信するまで待ち(ステップS128:No)、再生履歴を全て受信したと判定すると(ステップS128:Yes)、受信した再生履歴を集計する集計処理を行なう(ステップS129)。この集計処理は、コンテンツ保持端末装置から受信した再生履歴をコンテンツ情報毎にその再生数を集計することによって行なわれる。そして、複数のコンテンツ保持端末装置で再生されたコンテンツ情報のうち再生数が多いものから順に所定数分のコンテンツ情報をお勧めコンテンツとして抽出する。
そして、制御部101は、集計処理により抽出したお勧めコンテンツの情報を表示部107に表示する(ステップS130)。
このように、制御部101は、再生履歴の送信要求を行なった端末装置1から再生履歴を取得する再生履歴取得手段、及びこの再生履歴取得手段で取得した再生履歴を集計し、当該集計の結果から上位のコンテンツ情報を抽出する提示情報抽出手段として機能する。なお、ステップS127において再生履歴の送信要求を行なった後、全てのコンテンツ保持端末装置から再生履歴が送信されるまでに所定期間(例えば、10秒)を超えたとき、制御部101は、処理をステップS129に移行する。これにより、コンテンツ保持端末装置が情報配信システムSから脱退したときでも、処理をステップS129に移行することができる。
次に、お勧め検索処理について図18を参照して説明する。図18は第2実施形態における端末装置1のお勧め検索処理のフローチャートである。
図18に示すように、制御部101はお勧め検索処理を開始すると、第1記憶部102に記憶しているインデックステーブルから検索対象のインデックス情報を取り出し、お勧め検索メッセージを送信した端末装置1へ送信して(ステップS140)、お勧め検索処理を終了する。
具体的には、第1記憶部102に記憶しているインデックステーブルから、お勧め検索メッセージの検索対象となるコンテンツ情報を保持しているコンテンツ保持端末装置の所在情報(IPアドレス)を取り出し、これらの所在情報をお勧め検索メッセージを送信した端末装置へ通信部111及びネットワーク8を介して送信する。このように、制御部101は、他の端末装置1からコンテンツ保持端末装置の所在情報の送信要求があったとき、コンテンツ保持端末装置の所在情報を第1記憶部102から取り出して送信する所在情報送信手段として機能する。
以上のように、本第2実施形態における端末装置1では、お勧めコンテンツ情報を表示しようとする端末装置1がコンテンツ保持端末装置から再生履歴を収集して集計し、当該集計結果に基づいてお勧めコンテンツ情報を表示するようにしている。すなわち、端末装置1は、自装置で再生された所定のコンテンツ情報を保持するコンテンツ保持端末装置の所在情報(IPアドレス)を当該所定のコンテンツ情報を管理するルート端末装置から取得し、これらのコンテンツ保持端末装置からそれぞれの再生履歴を取得して集計する。そして、端末装置1は、この集計結果から上位のコンテンツ情報を抽出してお勧めコンテンツとし、このお勧めコンテンツに関する情報であるお勧めコンテンツ情報を表示手段で表示する。
従って、お勧めコンテンツ情報を通知するためのサーバが不要となり、ネットワーク8への負荷やトラフィックの集中を抑制しつつ、各端末装置1でお勧めコンテンツ情報を表示することが可能となる。しかも、お勧めコンテンツ情報を表示しようとする端末装置1が、再生履歴の収集及び集計処理を行なうようにしていることから、第1実施形態の情報配信システムに比べ、ルート端末装置での処理負担を軽減することができる。
なお、上述の実施形態においては、図17に示すように、端末装置1の制御部101がステップS125においてお勧め検索メッセージを送信して、ステップS126でインデックス情報を取得することとしたが、制御部101がステップS121においてルート端末装置1から取得したインデックス情報に基づいてステップS127と同様の処理を行なうようにすることで、お勧め検索メッセージを用いずに処理が可能となり、ステップS125,126,S140等の処理を省くことができる。
[3.第3実施形態]
次に、第3実施形態の情報通信システムについて説明する。第2実施形態における情報配信システムでは、お勧めコンテンツ情報を表示しようとする端末装置1が、ルート端末装置からコンテンツ保持端末装置の所在情報を取得し、コンテンツ保持端末装置に直接再生履歴を要求して、再生履歴の収集及び集計を行なうものであるが、第3実施形態における情報配信システムでは、お勧めコンテンツ情報を表示しようとする端末装置1が、ルート端末装置を介してコンテンツ保持端末装置に再生履歴を要求して、コンテンツ保持端末装置から再生履歴の収集及び集計を行なうものである。
なお、以下においては、第2実施形態と異なる部分を中心として説明する。なお、制御部101による処理が異なる以外は、第2実施形態と同様であるため、符号等は第2実施形態と同一のものを用いて説明する。
[3.1.お勧めコンテンツ情報の取得方法]
以下、図19を参照して、お勧めコンテンツ情報の取得方法を具体的に説明する。図19は端末装置1におけるお勧めコンテンツ情報の取得方法を説明するための図である。ここでは、第2実施形態と同様に、端末ID「1232」の端末装置1pがコンテンツID「3020」の再生を開始したときに、お勧めコンテンツ情報を表示する際の手順について説明する。
お勧めコンテンツ情報の表示を行なおうとする端末装置1pは、図19(a)に示すように、コンテンツID「3020」と同じエリアの端末IDを持つ端末装置1の端末IDを宛先とし、コンテンツID「3020」を宛先識別情報として、コンテンツID「3020」のコンテンツ情報を保持するコンテンツ保持端末装置の再生履歴の送信要求(以下、「お勧め検索メッセージ」と呼ぶ。)を送信する。そして、このお勧め検索メッセージも、上記コンテンツ登録メッセージやコンテンツ検索メッセージと同様にルーティングテーブルに従って、次々と転送されていき、最終的に当該コンテンツID「3020」のコンテンツ情報を管理する端末装置1c(端末ID「3011」)、すなわちコンテンツID「3020」のルート端末装置1cに辿り着く。
ルート端末装置1cは、お勧め検索メッセージに含まれるコンテンツID「3020」を、自身がインデックステーブルに管理しているインデックス情報の中から検索し、該当するインデックス情報、すなわち当該コンテンツID「3020」のコンテンツ情報を所有しているコンテンツ保持端末装置(ここでは、端末装置1j,1kとする。)の所在情報を取り出す。そして、ルート端末装置1cは、図19(b)に示すように、所在情報を取り出したコンテンツ保持端末装置1j,1kに対して、端末装置1pへ再生履歴を送信するように要求する。
ルート端末装置1cから再生履歴の送信要求を受けたコンテンツ保持端末装置1j,1kは、それぞれ自装置が再生したコンテンツ情報の履歴を記憶しており、図19(c)に示すように、ルート端末装置1cから再生履歴の送信要求を受信すると、それぞれ自装置の再生履歴を端末装置1pへ送信する。
コンテンツ保持端末装置1j,1kからそれぞれ再生履歴を受信した端末装置1pは、これらの再生履歴を集計し、当該集計結果から上位のコンテンツ情報を抽出する。この処理は、第2実施形態における端末装置1pの処理と同様の処理である。
その後、端末装置1pは、抽出したお勧めコンテンツ情報の一覧を表示手段である表示部107で表示する。端末装置1pの利用者は、このように表示されているお勧めコンテンツ情報の一覧から所望のコンテンツをマウス等の入力手段により選択し再生可能となり、これにより、所望のお勧めコンテンツの再生を容易に行なうことができる。
このように第3実施形態の情報配信システムSでは、お勧めコンテンツ情報を表示する端末装置1自身が、ルート端末装置を介して、所定のコンテンツ情報を保持する複数の端末装置1の再生履歴を取得し、当該取得した再生履歴を集計し、この集計の結果から上位のコンテンツ情報を抽出し、さらに抽出されたコンテンツ情報を表示手段に表示するようにしている。その結果、サーバを用いることがなく各端末装置1でお勧めコンテンツ情報を表示することができ、ネットワーク8の負荷やトラフィックの集中を抑制することができる。
上述においては、1つのコンテンツ情報に関連するコンテンツ情報を収集し集計して、お勧めコンテンツを抽出するようにしたが、第2実施形態と同様に、複数のコンテンツ情報に共通に関連するコンテンツ情報を収集し集計してお勧めコンテンツとするようにしてもよい。
[3.2.端末装置の具体的動作の説明]
以下、第3実施形態における端末装置1の具体的動作の一例について説明する。なお、第3実施形態の端末装置1は、第2実施形態の端末装置1に対してコンテンツ再生処理及びお勧め検索処理が異なり、その他の処理は同様の処理であることから、ここでは、コンテンツ再生処理及びお勧め検索処理について説明する。
まず、コンテンツ再生処理について図20を参照して説明する。図20は第3実施形態における端末装置1のコンテンツ再生処理のフローチャートである。この図20において、ステップS220〜S225,S227〜S229の処理は、第2実施形態における図17のステップS120〜S125,S129〜S131の処理と同様であるため説明を省略する。
制御部101は、コンテンツ情報の再生を開始し(ステップS224)、お勧め検索メッセージを送信した後(ステップS225)、このお勧め検索メッセージに対して、当該メッセージでの検索対象のコンテンツ保持端末装置から全ての再生履歴を受信したか否かを判定する(ステップS226)。全てのコンテンツ保持端末装置から再生履歴を受信するまで待ち(ステップS226:No)、再生履歴を全て受信したと判定すると(ステップS226:Yes)、受信した再生履歴を集計する集計処理を行なう(ステップS227)。なお、再生履歴を全て受信したか否かの判定は、お勧め検索メッセージを送信した後所定期間(例えば、10秒)を超えたか否かにより判定する。このように制御部101は、所定のコンテンツ情報のルート端末装置、すなわち所定のコンテンツ情報を記憶するコンテンツ保持端末装置の所在情報を記憶するルート端末装置に対して、所定のコンテンツ情報を記憶する端末装置1の再生履歴を要求する第1再生履歴要求手段、及び他の端末装置1が後述する第2再生履歴要求手段により再生履歴の送信要求を行なった端末装置1から再生履歴を取得する再生履歴取得手段として機能する。
次に、お勧め検索処理について図21を参照して説明する。図21は第3実施形態における端末装置1のお勧め検索処理のフローチャートである。
図21に示すように、制御部101はお勧め検索処理を開始すると、第1記憶部102に記憶しているインデックステーブルから検索対象のインデックス情報を取り出し、当該インデックス情報に対応するコンテンツ保持端末装置へ再生履歴の送信要求を行ない(ステップS240)、お勧め検索処理を終了する。
具体的には、第1記憶部102に記憶しているインデックステーブルから、お勧め検索メッセージの検索対象となるコンテンツ情報を保持しているコンテンツ保持端末装置の所在情報(IPアドレス)を取り出し、これらの所在情報を有するコンテンツ保持端末装置に対して通信部111及びネットワーク8を介して再生履歴の送信要求を行なう。この再生履歴の送信要求は、お勧め検索メッセージを送信した端末装置1へ再生履歴の送信を要求するものである。このように、制御部101は、他の端末装置1からインデックス記憶手段としての第1記憶部102に所在情報を記憶した端末装置1の再生履歴の送信要求があったとき、インデックス記憶手段としての第1記憶部102から端末装置1の所在情報を取り出して、当該コンテンツ情報を保持する端末装置1に対し、お勧め検索メッセージを送信することにより再生履歴の要求を行なった他の端末装置1へ再生履歴の送信を要求する第2再生履歴要求手段として機能する。
また、制御部101は、ルート端末装置から再生履歴の要求があると、指定された端末装置1へ再生履歴を送信する。例えば、図19に示すような場合、コンテンツ保持端末装置1j,1kは、お勧め検索メッセージを送信した端末装置1pへ再生履歴を送信する。このように制御部101は、他の端末装置1から第2再生履歴要求手段により再生履歴の送信要求があったとき、再生履歴記憶手段としての第1記憶部102から再生履歴を取り出して、第1再生履歴要求手段により再生履歴の要求を行なった端末装置1へ送信する再生履歴送信手段として機能する。
以上のように、本第3実施形態における端末装置1では、お勧めコンテンツ情報を表示しようとする端末装置1がルート端末装置を介してコンテンツ保持端末装置から再生履歴を収集して集計し、当該集計結果に基づいてお勧めコンテンツ情報を表示するようにしている。すなわち、所定のコンテンツ情報を再生した端末装置1は,所定のコンテンツ情報を保持するコンテンツ保持端末装置の所在情報(IPアドレス)を当該所定のコンテンツ情報を管理するルート端末装置を介してコンテンツ保持端末装置から再生履歴を取得して集計し、当該集計結果から上位のコンテンツ情報を抽出してお勧めコンテンツとし、このお勧めコンテンツに関する情報をお勧めコンテンツ情報として表示手段で表示する。
従って、お勧めコンテンツ情報を通知するためのサーバが不要となり、ネットワーク8への負荷やトラフィックの集中を抑制しつつ、各端末装置1でお勧めコンテンツ情報を表示することが可能となる。しかも、お勧めコンテンツ情報を表示しようとする端末装置1が、再生履歴の収集及び集計処理を行なうようにしていることから、第1実施形態の情報配信システムに比べ、ルート端末装置での処理負担を軽減することができる。
なお、上述の実施形態においては、図20に示すように、コンテンツ情報を再生する端末装置1の制御部101がステップS225においてお勧め検索メッセージをルート端末装置へ送信して、ステップS226でコンテンツ保持端末装置から再生履歴を取得するようにしたが、ステップS220でコンテンツ検索メッセージを受信したルート端末装置の制御部101がインデックス情報の送信処理と併せてステップS240と同様の処理を行なうようにすることで、お勧め検索メッセージを用いずに処理が可能となり、ステップS225等の処理を省くことができる。このとき、コンテンツ情報を再生する端末装置1の制御部101は、ステップS221において、ルート端末装置からインデックス情報を取得し、さらに、コンテンツ保持端末装置からその再生履歴を取得する。
[4.その他の実施形態]
上述の実施形態においては、お勧めコンテンツ情報を取得するためタイミングを、コンテンツ情報を再生開始したときとしたが、これに限られず、例えば、端末装置1が起動したタイミングや所定期間毎のタイミングをお勧めコンテンツ情報を取得するためタイミングとしてもよい。また、端末装置1の利用者の入力部110へ所定の操作が行なわれたときを、お勧めコンテンツ情報を取得するタイミングとしてもよい。
また、上述の実施形態においては、複数のコンテンツ保持端末装置の再生履歴を集計した結果から再生数が多い上位のコンテンツ情報をお勧めコンテンツとしたが、再生履歴にコンテンツ情報のジャンルや再生時間を含ませておき、お勧めコンテンツをジャンル毎や再生期間毎に抽出するようにして、当該お勧めコンテンツに関する情報を表示するようにしてもよい。
また、上述の実施形態においては、お勧めコンテンツ情報を一覧表示することとしたが、所定期間毎に順次お勧めコンテンツ情報を所定数毎に表示するようにしてもよい。例えば、コンテンツ情報の再生時間に応じて、お勧めコンテンツ情報を1つずつ順次表示手段に表示する。
また、上述の実施形態においては、お勧めコンテンツ情報の表示を再生しているコンテンツ情報に隣接させて表示するようにしたが、お勧めコンテンツの一部をコマーシャルとして、コンテンツ情報の再生インターバル期間で再生するようにしてもよい。
また、上述の実施形態においては、再生したコンテンツ情報を保持する全てのコンテンツ保持端末装置から再生履歴を取得するようにしたが、再生したコンテンツ情報を有するコンテンツ保持端末装置が多い場合には、これらのうち一部のコンテンツ保持端末装置から再生履歴を取得するようにしてもよい。
また、上述した第1実施形態においては、ルート端末装置の制御部101は、お勧め検索メッセージを受信したときにコンテンツ保持端末装置から再生履歴を取得するようにしたが、所定期間毎にインデックステーブルに基づいてコンテンツ保持端末装置から再生履歴を所定期間毎に取得し集計してお勧めコンテンツ情報を抽出し、このお勧めコンテンツ情報を第1記憶部102に記憶しておくようにしてもよい。そして、ルート端末装置の制御部101は、他の端末装置1からお勧め検索メッセージを受信したときに、第1記憶部102に記憶しているお勧めコンテンツ情報を要求元の端末装置1へ送信するようにしてもよい。
また、上述の実施形態としては、端末装置1の所在情報をIPアドレスとして説明したが、端末装置1のネットワーク8上の所在がわかる情報(他の端末装置1からネットワーク8を介してアクセスできる)であればよく、例えば、IPアドレスとポート番号とを所在情報としてもよい。
また、上述においては、お勧めコンテンツ情報を表示するためのタイミングを、コンテンツ情報を再生開始したときとしたが、これに限られず、例えば、端末装置1が起動したタイミングや所定期間毎のタイミングをお勧めコンテンツ情報を表示するためのタイミングとしてもよい。また、端末装置1の利用者の入力部110へ所定の操作が行なわれたときを、お勧めコンテンツ情報を表示するタイミングとしてもよい。
以上、本発明の実施の形態のいくつかを図面に基づいて詳細に説明したが、これらは例示であり、当業者の知識に基づいて種々の変形、改良を施した他の形態で本発明を実施することが可能である。