(57)【要約】 【課題】本発明の目的は、ノード装置が所定のコンテンツを出力すると共に、話速変換処理を実行する場合であっても、通常通りコンテンツを出力することが可能な情報通信システム、ノード装置、情報通信方法を提供することである。【解決手段】  本実施形態では、ノード装置Ｎｎの性能が高い場合、ノード装置Ｎｎは話速変換処理を実行しながらコンテンツの再生を行う。一方、ノード装置Ｎｎの性能が低い場合、ノード装置Ｎｎは、話変換処理の実行を行わす、上述したＰ２Ｐネットワーク９から該当する話速変換処理コンテンツを取得する。また、性能が高いノード装置Ｎｎにより生成された話速変換コンテンツについては、Ｐ２Ｐネットワーク９で取得可能なようにパブリッシュされる。【選択図】図６
2011076183.tif 000002
【特許請求の範囲】
【請求項１】
所定のコンテンツを要求する要求部と、
前記要求部によりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得部と、
前記要求部により所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定部と、
前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索部と、
前記検索部により検索された前記話速変換コンテンツを取得する第２取得部と、
を備えることを特徴とする情報通信システム。
【請求項２】
前記情報通信システムは、複数のコンテンツが複数のノード装置間で送受信され、オーバーレイネットワークにより前記複数のコンテンツが前記複数のノード装置に分散して保存され、
前記検索部は、前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、前記オーバーレイネットワーク上に存在するか否かを検索し、
前記第２取得部は、前記検索部により検索された前記話速変換コンテンツを取得することを特徴とする請求項１に記載の情報通信システム。
【請求項３】
所定のコンテンツを要求する要求部と、
前記要求部によりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得部と、
前記要求部により所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定部と、
前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索部と、
前記検索部により検索された前記話速変換コンテンツを取得する第２取得部と、
を備えることを特徴とするノード装置。
【請求項４】
前記ノード装置は、
複数のコンテンツが複数の前記ノード装置間で送受信され、オーバーレイネットワークにより前記複数のコンテンツが前記複数のノード装置に分散して保存される情報通信システムのノード装置であり、
前記検索部は、前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、前記オーバーレイネットワーク上に存在するか否かを検索し、
前記第２取得部は、前記検索部により検索された前記話速変換コンテンツを取得することを特徴とする請求項３に記載のノード装置。
【請求項５】
前記要求部により要求されたコンテンツを取得する第３取得部と、
前記第３取得部により取得されたコンテンツに話速変換処理を実行する処理部と、
を備え、
前記要求部により所定のコンテンツが要求されるとき、前記判定部は、前記性能情報が所定の性能より低いか高いかを判定し、
前記判定部により、前記性能情報が所定の性能より高いと判定されたとき、前記処理部は、前記第３取得部により取得されたコンテンツを出力するときに、前記話速変換処理を実行することを特徴とする請求項３または請求項４に記載のノード装置。
【請求項６】
前記第１取得部は、前記性能情報と、前記コンテンツを要求したノード装置の演算付加を示す負荷情報とを取得し、
前記コンテンツデータは、前記コンテンツデータが複数に分割された複数のコンテンツチャンクから構成され、
前記要求部により要求されたコンテンツが出力される際、出力されるコンテンツの出力位置に対応した前記コンテンツチャンクを取得する第４取得部と、
前記負荷情報が示す演算負荷が所定の負荷より低いか否かを判定する第２判定部を備え、
前記第２判定部により、前記負荷情報が所定の負荷より低いと判定されたとき、前記第４取得部は、前記出力位置に対応した前記コンテンツチャンクと、前記出力位置の少なくとも次の出力位置に対応する前記コンテンツチャンクとを取得し、
前記処理部は、前記第４取得部により取得された前記コンテンツチャンクに話速変換処理を実行することを特徴とする請求項３から請求項５のいずれかに記載のノード装置。
【請求項７】
前記ノード装置は、
複数のコンテンツが複数の前記ノード装置間で送受信され、オーバーレイネットワークにより前記複数のコンテンツが前記複数のノード装置に分散して保存される情報通信システムのノード装置であり、
前記処理部により前記話速変換処理が実行されたコンテンツを、前記話速変換処理コンテンツとして前記オーバーレイネットワークで取得させるメッセージを前記複数のノード装置の少なくとも一部に送信する送信部を備えることを特徴とする請求項３から請求項６のいずれかに記載のノード装置。
【請求項８】
所定のコンテンツを要求する要求ステップと、
前記要求ステップによりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得ステップと、
前記要求ステップにより所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定ステップと、
前記第１判定ステップにより、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索ステップと、
前記検索ステップにより検索された前記話速変換コンテンツを取得する第２取得ステップと、
を含むコンテンツ取得方法。
【請求項９】
所定のコンテンツを要求する要求ステップと、
前記要求ステップによりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得ステップと、
前記要求ステップにより所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定ステップと、
前記第１判定ステップにより、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索ステップと、
前記検索ステップにより検索された前記話速変換コンテンツを取得する第２取得ステップと、
をノード装置のコンピュータに実行させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、インターネットを介してコンテンツを取得し、出力する情報通信システムに関する。具体的には、ネットワークを介して互いに通信可能な複数のノード装置を備えたピアツーピア（Peer to Peer（P2P））方式の通信システムの技術分野に関する。
【０００２】
近年、特許文献１に開示されているようなピアツーピア方式の通信システムが注目されている。ピアツーピア方式の通信システムは、現在のコンテンツ配信における主流形態であるサーバクライアント方式に代わる新しい形態として注目されている。このピアツーピア方式の通信システムでは、センターのサーバ装置に対するコンテンツの要求が集中しない。そのため、サーバクライアント方式と比べて、短時間でコンテンツを取得することが可能となる。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２００６−１９７４００号公報
【発明の概要】
【発明が解決しようとする課題】
【０００４】
ピアツーピア方式により取得されたコンテンツを出力する場合、話速変換処理が実行される場合がある。一般的に話速変換処理は、音声のピッチ、いわゆる声の高さを維持したまま、音声の早送り、または、遅送りを可能にする技術である。ノード装置により所定のコンテンツが出力される際、話速変換処理が実行されながら、動画等のコンテンツが出力されるのが一般的である。しかしながら、ピアツーピア方式に接続するノード装置には、高スペックのコンピュータと、低スペックのコンピュータとがある。そのため、低スペックのコンピュータを含むノード装置の場合、話速変換処理を実行しようとしても、コンピュータのスペックが低いためコンテンツが出力されない、または、コンテンツの出力が遅れてしまうという課題があった。
【０００５】
本発明は、上述した問題点を解決するためになされたものである。本発明の目的は、ノード装置のスペックが低いため、コンテンツを出力しながら話速変換処理が実行できない場合であっても、話速変換処理されたコンテンツを取得して、通常通りコンテンツを出力することが可能な情報通信システム、ノード装置、コンテンツ取得方法を提供することである。
【課題を解決するための手段】
【０００６】
請求項１に記載の発明によれば、所定のコンテンツを要求する要求部と、前記要求部によりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得部と、前記要求部により所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定部と、前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索部と、前記検索部により検索された前記話速変換コンテンツを取得する第２取得部と、を備えることを特徴とする情報通信システムである。
【０００７】
請求項２に記載の発明によれば、前記情報通信システムは、複数のコンテンツが複数のノード装置間で送受信され、オーバーレイネットワークにより前記複数のコンテンツが前記複数のノード装置に分散して保存され、前記検索部は、前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、前記オーバーレイネットワーク上に存在するか否かを検索し、前記第２取得部は、前記検索部により検索された前記話速変換コンテンツを取得することを特徴とする。
【０００８】
請求項３に記載の発明によれば、所定のコンテンツを要求する要求部と、前記要求部によりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得部と、前記要求部により所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定部と、前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索部と、前記検索部により検索された前記話速変換コンテンツを取得する第２取得部と、を備えることを特徴とするノード装置である。
【０００９】
請求項４に記載の発明によれば、前記ノード装置は、複数のコンテンツが複数の前記ノード装置間で送受信され、オーバーレイネットワークにより前記複数のコンテンツが前記複数のノード装置に分散して保存される情報通信システムのノード装置であり、前記検索部は、前記第１判定部により、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、前記オーバーレイネットワーク上に存在するか否かを検索し、前記第２取得部は、前記検索部により検索された前記話速変換コンテンツを取得することを特徴とするノード装置である。
【００１０】
請求項５に記載の発明によれば、前記要求部により要求されたコンテンツを取得する第３取得部と、前記第３取得部により取得されたコンテンツに話速変換処理を実行する処理部と、を備え、前記要求部により所定のコンテンツが要求されるとき、前記判定部は、前記性能情報が所定の性能より低いか高いかを判定し、前記判定部により、前記性能情報が所定の性能より高いと判定されたとき、前記処理部は、前記第３取得部により取得されたコンテンツを出力するときに、前記話速変換処理を実行することを特徴とするノード装置である。
【００１１】
請求項６に記載の発明によれば、前記第１取得部は、前記性能情報と、前記コンテンツを要求したノード装置の演算付加を示す負荷情報とを取得し、前記コンテンツデータは、前記コンテンツデータが複数に分割された複数のコンテンツチャンクから構成され、前記要求部により要求されたコンテンツが出力される際、出力されるコンテンツの出力位置に対応した前記コンテンツチャンクを取得する第４取得部と、前記負荷情報が示す演算負荷が所定の負荷より低いか否かを判定する第２判定部を備え、前記第２判定部により、前記負荷情報が所定の負荷より低いと判定されたとき、前記第４取得部は、前記出力位置に対応した前記コンテンツチャンクと、前記出力位置の少なくとも次の出力位置に対応する前記コンテンツチャンクとを取得し、前記処理部は、前記第４取得部により取得された前記コンテンツチャンクに話速変換処理を実行することを特徴とするノード装置である。
【００１２】
請求項７に記載の発明によれば、前記ノード装置は、複数のコンテンツが複数の前記ノード装置間で送受信され、オーバーレイネットワークにより前記複数のコンテンツが前記複数のノード装置に分散して保存される情報通信システムのノード装置であり、前記処理部により前記話速変換処理が実行されたコンテンツを、前記話速変換処理コンテンツとして前記オーバーレイネットワークで取得させるメッセージを前記複数のノード装置の少なくとも一部に送信する送信部を備えることを特徴とするノード装置である。
【００１３】
請求項８に記載の発明によれば、所定のコンテンツを要求する要求ステップと、前記要求ステップによりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得ステップと、前記要求ステップにより所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定ステップと、前記第１判定ステップにより、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索ステップと、前記検索ステップにより検索された前記話速変換コンテンツを取得する第２取得ステップと、を含むコンテンツ取得方法である。
【００１４】
請求項９に記載の発明によれば、所定のコンテンツを要求する要求ステップと、前記要求ステップによりコンテンツを要求したノード装置の性能を示す性能情報を取得する第１取得ステップと、前記要求ステップにより所定のコンテンツが要求されるとき、前記性能情報が所定の性能より低いか否かを判定する第１判定ステップと、前記第１判定ステップにより、前記性能情報が所定の性能より低いと判定されたとき、前記要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する検索ステップと、前記検索ステップにより検索された前記話速変換コンテンツを取得する第２取得ステップと、をノード装置のコンピュータに実行させるプログラムである。
【発明の効果】
【００１５】
請求項１に記載の発明によれば、検索部は、第１判定部により、性能情報が所定の性能より低いと判定されたとき、要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する。第２取得部は、検索部により検索された話速変換コンテンツを取得する。この結果、ノード装置のスペックが低いため、コンテンツを出力しながら話速変換処理が実行できない場合であっても、話速変換コンテンツを取得して、通常通りコンテンツを出力することができる。
【００１６】
請求項２に記載の発明によれば、検索部は、第１判定部により、性能情報が所定の性能より低いと判定されたとき、要求部により要求されたコンテンツに対応し、且つ、話速変換処理がされた話速変換コンテンツが、オーバーレイネットワーク上に存在するか否かを検索する。従って、話速変換コンテンツがオーバーレイネットワーク上に存在するかを検索することができる。この結果、ノード装置のスペックが低いため、コンテンツを出力しながら話速変換処理が実行できない場合であっても、話速変換コンテンツをオーバーレイネットワークから取得して、通常通りコンテンツを出力することができる。
【００１７】
請求項３に記載の発明によれば、検索部は、第１判定部により、性能情報が所定の性能より低いと判定されたとき、要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する。第２取得部は、検索部により検索された話速変換コンテンツを取得する。この結果、ノード装置のスペックが低いため、コンテンツを出力しながら話速変換処理が実行できない場合であっても、話速変換コンテンツを取得して、通常通りコンテンツを出力することができる。
【００１８】
請求項４に記載の発明によれば、検索部は、第１判定部により、性能情報が所定の性能より低いと判定されたとき、要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、前記オーバーレイネットワーク上に存在するか否かを検索する。従って、話速変換コンテンツがオーバーレイネットワーク上に存在するかを検索することができる。この結果、ノード装置のスペックが低いため、コンテンツを出力しながら話速変換処理が実行できない場合であっても、話速変換コンテンツをオーバーレイネットワークから取得して、通常通りコンテンツを出力することができる。
【００１９】
請求項５に記載の発明によれば、判定部により、性能情報が所定の性能より高いと判定されたとき、処理部は、第３取得部により取得されたコンテンツを出力するときに、話速変換処理を実行する。従って、ノード装置のスペックが高いときは、話速変換コンテンツを検索する必要がない。この結果、ノード装置のスペックが低いときは、ネットワークから話速変換コンテンツを取得して、通常通りコンテンツを出力することができるとともに、ノード装置のスペックが高いときは、コンテンツの検索処理が必要なく、ノード装置自らが話速変換処理を実行し、出力することができる。
【００２０】
請求項６に記載の発明によれば、第２判定部により、負荷情報が所定の負荷より低いと判定されたとき、第４取得部は、出力位置に対応したコンテンツチャンクと、出力位置の少なくとも次の出力位置に対応するコンテンツチャンクとを取得する。処理部は、第４取得部により取得されたコンテンツチャンクに話速変換処理を実行する。従って、ノード装置の負荷が低いときに、少なくとも次に出力されるコンテンツチャンクに話速変換処理が実行される。この結果、ノード装置のスペックが低いため、コンテンツを出力しながら話速変換処理が実行できない場合であっても、ノード装置の負荷が低いときに話速変換処理されたコンテンツを出力することができる。そのため、通常通りコンテンツを出力することができる。
【００２１】
請求項７に記載の発明によれば、送信部は、処理部により話速変換処理が実行されたコンテンツを、話速変換処理コンテンツとしてオーバーレイネットワークで取得させるメッセージを前記複数のノード装置の少なくとも一部に送信する。この結果、処理部により生成された話速変換コンテンツが、オーバーレイネットワークにより、他のノード装置により取得することができる。
【００２２】
請求項８及び請求項９の発明によれば、検索ステップは、第１判定ステップにより、性能情報が所定の性能より低いと判定されたとき、要求部により要求されたコンテンツに対応するコンテンツであり、且つ、話速変換処理がされた話速変換コンテンツが、ネットワーク上に存在するか否かを検索する。第２取得ステップは、検索ステップにより検索された話速変換コンテンツを取得する。この結果、ノード装置のスペックが低いため、コンテンツを出力しながら話速変換処理が実行できない場合であっても、話速変換コンテンツを取得して、通常通りコンテンツを出力することができる。
【図面の簡単な説明】
【００２３】
【図１】本実施形態の分散保存システムＳにおける各ノード装置Ｎｎの接続態様示す概念図である。
【図２】本実施形態のノード装置Ｎｎの電気的構成を示す概念図である。
【図３】本実施形態のメイン動作処理の処理手順を示すフローチャートである。
【図４】本実施形態の通常出力処理の処理手順を示すフローチャートである。
【図５】本実施形態のトリックプレイ出力処理の処理手順を示すフローチャートである。
【図６】本実施形態のトリックプレイ制御処理の処理手順を示すフローチャートである。
【図７】本実施形態のコンテンツ投入サーバＣＳにおけるメイン動作処理の処理手順を示すフローチャートである。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の最良の実施形態を図面に基づいて説明する。
【００２５】
［分散保存システムの構成］
図１は、本実施形態の分散保存システムＳの概念図を示す。図１は、分散保存システムＳの具体的構成図１０１と、概念的構成図１００とから構成される。分散保存システムＳの具体的構成図１０１が示すように、分散保存システムＳは、多数ノード装置Ｎｎ（ｎ＝１，２，３・・・の何れか）から構成される。
【００２６】
図１の下部枠の具体的構成図１０１内に示すように、一般的なインターネット等のネットワーク８は、ＩＸ（Internet eXchange）３、ＩＳＰ（Internet Service Provider）４ａ及び４ｂ、ＤＳＬ（Digital Subscriber Line）回線事業者の装置５ａ及び５ｂ、ＦＴＴＨ（Fiber To The Home）回線事業者６の装置、通信回線７等によって構築されている。例えば、通信回線７は、電話回線や光ケーブル等である。図１に示す通信回線７の太さは、夫々、各通信回線により通信可能な帯域を示す。なお、図１の例におけるネットワーク８には、データ（パケット）を転送するためのルータが、適宜挿入されているが図示を省略している。
【００２７】
多数のノード装置Ｎｎは、ルータ等を介してインターネットで接続されている。また、概念的構成図１００が示す各ノード装置Ｎｎには、固有の製造番号およびＩＰ（Internet Protocol）アドレスが割り当てられている。本実施形態の分散保存システムＳは、ピアツーピア方式のネットワークシステムである。図１の上部枠の概念的構成図１００内に示すように、ピアツーピア方式のネットワークシステムは、これらのノード装置Ｎｎのうち、何れか複数のノード装置Ｎｎの参加により形成される。本実施形態における参加とは、ノード装置Ｎｎが分散保存システムＳと接続し、コンテンツデータの送受信をすることを意味している。上述した多数のノード装置Ｎｎの中には、性能が高いコンピュータを含むノード装置Ｎｎと、性能が低いコンピュータを含むノード装置Ｎｎとが存在する。コンピュータの性能は、たとえば、ＣＰＵの処理能力である。コンピュータの性能として、上記に加え、ＲＡＭ等の記憶容量を含めた能力をＣＰＵの処理能力としても良い。
【００２８】
なお、図１の上部枠の概念的構成図１００内に示すＰ２Ｐネットワーク９は、既存のネットワーク８を用いて形成されたＰ２Ｐネットワークである。Ｐ２Ｐネットワーク９は、図１の上部枠の概念的構成図１００内の複数のノード装置を仮想的にリンクさせることで構築される。Ｐ２Ｐネットワーク９は、オーバーレイネットワーク、または、論理的なネットワークである。Ｐ２Ｐネットワーク９は、特定のアルゴリズム、により構築される。例えば、特許文献１の特開２００６−１９７４００に記載されたＤＨＴを利用したアルゴリズムにより、Ｐ２Ｐネットワーク９は構築される。
【００２９】
そして、Ｐ２Ｐネットワーク９を構成している各ノード装置Ｎｎには、ノードＩＤが割り当てられている。ノードＩＤは、所定桁数からなる固有の識別情報である。また、具体的には、各ノード装置Ｎｎに個別に割り当てられたＩＰアドレス或いは製造番号を基に、ノードＩＤは生成される。ノードＩＤは、上述のＩＰアドレス或いは製造番号を共通のハッシュ関数によりハッシュ化した値である。例えば、ＳＨＡ−１等のハッシュ関数により、ｂｉｔ長が１６０ｂｉｔのハッシュ値が生成される。各ノードＩＤは、ある一つのＩＤ空間に偏りなく分散して配置されることになる。
【００３０】
図１に示すように、分散保存システムＳは、コンテンツ投入サーバＣＳを備える。コンテンツ投入サーバＣＳは、新しいコンテンツデータを分散保存システムＳ内に投入するためのサーバである。コンテンツ投入サーバＣＳは、コンテンツデータを複製したデータを、分散保存システムＳに投入する。また、コンテンツ投入サーバＣＳは、投入されたコンテンツデータのオリジナルを記憶する。つまり、コンテンツ投入サーバＣＳは、分散保存システムＳに投入される全てのコンテンツデータが記憶される。図１には、コンテンツ投入サーバＣＳが一台図示されているが、一台に限定されない。分散保存システムＳ内に、コンテンツ投入サーバＣＳが複数台設けられても良い。
【００３１】
なお、分散保存システムＳへの参加は、分散保存システムＳへ参加していないノード装置Ｎｎが、参加している任意のノード装置Ｎｎに対して参加メッセージを送信することによって行われる。参加メッセージは、分散保存システムＳへの参加要求を示すメッセージである。分散保存システムＳへの参加とは、ノード装置Ｎｎが分散保存システムＳに接続され、分散保存システムＳからコンテンツデータを取得可能になることである。任意のノード装置Ｎｎは、例えば、システムＳに常時接続しているコンタクトノードである。
【００３２】
また、各ノード装置Ｎｎは、夫々、ＤＨＴを用いたルーティングテーブルを保持している。このルーティングテーブルは、分散保存システムＳ上における各種メッセージの転送先を規定している。具体的に、このルーティングテーブルには、ＩＤ空間内で適度に離れたノード装置ＮｎのノードＩＤ、ＩＰアドレス及びポート番号を含むノード情報が複数登録されている。
【００３３】
分散保存システムＳに接続している１台のノード装置は、必要最低限のノード装置Ｎｎのノード情報をルーティングテーブルとして記憶している。各ノード装置Ｎｎ間で互いに各種メッセージが転送されることで、ノード情報を記憶していないノード装置Ｎｎについてのノード情報が取得される。
【００３４】
このようなＤＨＴを用いたルーティングテーブルについては、特開２００６−１９７４００号公報等で公知であるので、詳しい説明を省略する。
【００３５】
分散保存システムＳは、内容の異なる様々なコンテンツデータの複製を所定のファイル形式で複数のノード装置Ｎｎに分散して保存する。以下、この複製のことをレプリカと言う。また、コンテンツデータは、「コンテンツ」という。そして、各ノード装置Ｎｎ間でレプリカが利用可能になっている。各コンテンツのオリジナルはコンテンツ投入サーバＣＳに保存されている。例えば、ノード装置Ｎ５には、タイトルがＸＸＸの映画のコンテンツのレプリカが保存されている。一方、ノード装置Ｎ３には、タイトルがＹＹＹの映画のコンテンツのレプリカが保存される。このように、レプリカは複数のノード装置Ｎｎに分散されて保存されている。以下、コンテンツのレプリカが保存されるノード装置Ｎは、「コンテンツ保持ノード」という。
【００３６】
上述のコンテンツのレプリカには、コンテンツＩＤ等の情報が付加されている。コンテンツＩＤは、夫々、コンテンツ名及びコンテンツ毎に固有の識別情報である。このコンテンツＩＤは、例えば、コンテンツ名＋任意の数値が、上記ノードＩＤを得るときと共通のハッシュ関数によりハッシュ化されて生成される。或いは、システム管理者が、コンテンツ毎に一意のＩＤ値を付与しても良い。
【００３７】
分散保存されているコンテンツのレプリカの所在は、インデックス情報として、コンテンツのレプリカの所在を管理（記憶）しているノード装置Ｎｎ等により記憶される。以下、レプリカの所在を管理（記憶）しているノード装置Ｎｎは、「ルートノード」という。インデックス情報は、レプリカを保存したノード装置Ｎｎのノード情報と、コンテンツのコンテンツＩＤと等の組を含む。このようなルートノードは、例えば、コンテンツＩＤと最も近いノードＩＤを有するノード装置Ｎｎであるように定められる。コンテンツＩＤと最も近いノードＩＤとは、例えば、ＩＤの上位桁が最も多く一致するノードＩＤである。
【００３８】
例えば、タイトルがＸＸＸの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツのルートノードであるノード装置Ｎ４により管理される。また、例えば、タイトルがＹＹＹの映画のコンテンツのレプリカについてのインデックス情報は、そのコンテンツのルートノードであるノード装置Ｎ７により管理される。
【００３９】
そして、あるノード装置Ｎｎのユーザが、所望するコンテンツのレプリカを取得したい場合、このレプリカの取得を望むノード装置Ｎｎは、メッセージを生成する。以下、ユーザによりレプリカの取得を望むノード装置Ｎｎは、「ユーザノード」という。このメッセージは、取得を望むコンテンツのコンテンツＩＤ及びユーザノードのＩＰアドレス等を含むコンテンツ所在問合せメッセージである。コンテンツ所在問合せメッセージは、コンテンツ保持ノードを検索するためのメッセージでもある。上述のコンテンツ所在問合せメッセージが、ユーザノードが取得するＤＨＴのルーティングテーブルに従って、他のノード装置Ｎｎに対して送出される。つまり、ユーザノードは、コンテンツ所在問合せメッセージを、ルートノードに向けて送出する。コンテンツ所在メッセージは、問い合わせを行うコンテンツＩＤと、コンテンツの送信元であるユーザノードのＩＰアドレスとを含む。これにより、コンテンツ所在問合せメッセージは、コンテンツＩＤをキーとするＤＨＴルーティングによって最終的にルートノードに到着することになる。
【００４０】
各ノード装置Ｎｎにおいて、コンテンツのコンテンツ名及びコンテンツＩＤ等の属性情報は、コンテンツカタログリストに記述されている。コンテンツカタログリストは、コンテンツ投入サーバＣＳにより作成されて、全てのノード装置Ｎｎに配信される。コンテンツカタログリストは、コンテンツの属性情報を一覧として管理するための情報である。また、コンテンツカタログリストは、検索キーから一意にコンテンツを特定することができる情報である。コンテンツを特定することができるとは、コンテンツのレコードを探し出すことができることを意味する。この属性情報の内容はレコードに格納される。検索キーとしては、例えば、対応するレコードやコンテンツ名を共通のハッシュ関数によりハッシュ化した値が用いられる。或いは、検索キーは、コンテンツＩＤやコンテンツ名等であっても良い。
【００４１】
また、上記コンテンツ所在問合せメッセージに含まれるコンテンツＩＤは、ユーザノードによって、コンテンツ名が上記共通のハッシュ関数によりハッシュ化されて生成されるようにしても良い。
【００４２】
上記コンテンツ所在問合せメッセージを受信したルートノードは、これに含まれるコンテンツＩＤに対応するインデックス情報をインデックス情報キャッシュから取得する。取得されたインデックス情報は、コンテンツ所在問合せメッセージの送信元であるユーザノードに対して返信される。こうしてインデックス情報を取得したユーザノードは、インデックス情報に基づいてコンテンツのレプリカをダウンロード（取得）することができる。インデックス情報に含まれるコンテンツ保持ノードのＩＰアドレス等に基づいて、ユーザノードはコンテンツ保持ノードにアクセスする。アクセスしたコンテンツ保持ノードから、コンテンツのレプリカをダウンロードすることが可能になる。この場合、ユーザノードは、この複数のコンテンツ保持ノードのうち一つのコンテンツ保持ノードを選択する。そして、ユーザノードは、選択したコンテンツ保持ノードに接続してコンテンツのレプリカをダウンロードすることができる。
【００４３】
なお、ルートノードは、このインデックス情報に含まれるＩＰアドレス等に示されたコンテンツ保持ノードに対してコンテンツ送信要求メッセージを送信する。これにより、ユーザノードは、上記コンテンツ保持ノードからそのレプリカをダウンロードすることもできる。また、コンテンツ所在問合せメッセージがルートノードに辿り着くまでの間に、このルートノードと同じインデックス情報をキャッシュしているキャッシュノードから、上記ユーザノードは、このインデックス情報を取得することもできる。
【００４４】
また、ユーザノードは、コンテンツ保持ノードからコンテンツのレプリカを取得して保存したとき、保存したユーザノードは、パブリッシュメッセージを生成する。パブリッシュメッセージは、レプリカを保存したことをルートノードへ知らせるためのメッセージである。パブリッシュメッセージは、レプリカのコンテンツＩＤ及びレプリカを保存したノード装置のノード情報を含む。パブリッシュメッセージは、ルートノードに向けて送出される。これにより、パブリッシュメッセージは、コンテンツ所在問合せメッセージと同じように、コンテンツＩＤをキーとするＤＨＴルーティングによってルートノードに到着することになる。そして、ルートノードは、パブリッシュメッセージを受信する。ルートノードは、パブリッシュメッセージに含まれるノード情報及びコンテンツＩＤの組を含むインデックス情報をインデックス情報キャッシュ領域に記憶する。こうして、上記ユーザノードは、新たに、上記コンテンツのレプリカを保持するコンテンツ保持ノードとなる。ノード情報は、メッセージ送信元のノードＩＤとＩＰアドレス及びポート番号とを含む。
【００４５】
［話速変換処理コンテンツについて］
話速変換処理は、トリックプレイである。具体的にトリックプレイは、コンテンツデータが含む音声を早送り再生、巻戻し再生、スロー再生等を行うことである。一般的には、音声がトリックプレイされると、音声のピッチが変化する。音声のピッチの変化とは、ピッチが高くなる、または、ピッチが低くなることを示す。音声がトリックプレイされると音声のピッチが変化するため、音声が聞き取り難くなる問題がある。それを解決するために、本実施形態ではトリックプレイが行われる際、コンテンツデータが含む音声情報に話速変換処理が適用される。話速変換処理は、コンテンツデータの音声がトリックプレイにより早送り、または、スロー再生される場合であっても、通常の音声のピッチで音声を再生させる技術である。話速変換処理は公知の技術である。例えば、特表２００６−０７０７６８号公報に記載されている公知の技術である。本実施例では、上述した話速変換処理技術が適用されたコンテンツを、話速変換処理コンテンツとする。
【００４６】
話速変換処理は、ノード装置Ｎｎが含むコンピュータのＣＰＵの能力が一定水準以上でないと好適に機能することができない。例えば、性能が低いコンピュータを用いると、ＣＰＵ使用率で７〜８割以上消費する場合がある。最近では、インターネットサイトの閲覧やメール処理を主とするコンピュータもあり、話速変換処理を行うと、コンテンツが滑らかに出力できないといった問題もある。
【００４７】
本実施形態では、ノード装置Ｎｎのコンピュータの性能が高い場合、ノード装置Ｎｎは話速変換処理を実行しながらコンテンツの再生を行う。一方、ノード装置Ｎｎのコンピュータの性能が低い場合、ノード装置Ｎｎは、話変換処理の実行を行わす、上述したＰ２Ｐネットワーク９から該当する話速変換処理コンテンツを取得する。また、性能が高いコンピュータを含むノード装置Ｎｎにより生成された話速変換コンテンツは、Ｐ２Ｐネットワーク９で取得可能なようにパブリッシュされる。パブリッシュとは、パブリッシュメッセージが、ノード装置Ｎｎにより送信されることである。パブリッシュメッセージが送信されることで、Ｐ２Ｐネットワーク９によりコンテンツが取得可能になる。
【００４８】
[ノード装置Ｎｎの電気的構成]
次に、図２を参照して、ノード装置Ｎｎの電気的構成ついて説明する。
【００４９】
図２は、本実施形態のノード装置Ｎｎの電気的構成を示すブロック図である。図２に示すように、本実施形態のノード装置Ｎｎには、ノード装置Ｎｎを制御するＣＰＵ１１が備えられている。ＣＰＵ１１には、ＲＡＭ１２とＨＤＤ１３とデコーダ部１４と通信部１９と入力部２０とがそれぞれ電気的に接続されている。ＲＡＭ１２、ＨＤＤ１３などの記憶手段とＣＰＵ１１とは、ノード装置Ｎｎのコンピュータを構成している。そのコンピュータは、ノード装置Ｎｎの動作を制御処理する。ＣＰＵ１１は、タイマー１１１を備える。タイマー１１１は、計時動作を行う。
【００５０】
ＲＡＭ１２は、各種メッセージ一時記憶領域１２１と、出力対象情報一時記憶領域１２２と、コンテンツチャンク一時記憶領域１２３とを含む。
【００５１】
各種メッセージ一時記憶領域１２１は、ノード装置Ｎｎが受信した各種メッセージを一時記憶する。例えば、参加メッセージやコンテンツ所在問い合わせメッセージやパブリッシュメッセージ等である。
【００５２】
出力対象情報一時記憶領域１２２は、出力対象情報を一時記憶する。本実施形態のコンテンツは、複数のコンテンツチャンクに分割されている。言い換えれば、複数のコンテンツチャンクにより一つのコンテンツが構成されている。本実施形態では、各コンテンツチャンクに上述したコンテンツＩＤが割当てられる。出力対象情報は、コンテンツを構成する何番目のコンテンツチャンクが出力対象であるかを示す情報である。現在出力対象であるコンテンツチャンクの番号が、出力対象情報一時記憶領域１２２に記憶される。
【００５３】
コンテンツチャンク一時記憶領域１２３は、現在出力対象とされているコンテンツチャンクが一時記憶される。出力対象情報に対応するコンテンツチャンクが、コンテンツチャンク一時記憶領域１２３に記憶される。
【００５４】
ＨＤＤ１３は、プログラム記憶領域１３１と、コンテンツデータ記憶領域１３４と、インデックスキャッシュ記憶領域１３５と、ルーティングテーブル記憶領域１３６と、コンテンツカタログリスト記憶領域１３７と、性能情報記憶領域１３８とトリックプレイデータ記憶領域１３９とを含む。
【００５５】
プログラム記憶領域１３１は、メイン動作プログラム記憶領域１３２を含む。メイン動作プログラム記憶領域１３２は、ノード装置Ｎｎを制御するためのメイン動作プログラム情報を記憶する。
【００５６】
メイン動作プログラム記憶領域１３２は、通常出力プログラム記憶領域１４１とトリックプレイ出力プログラム記憶領域１４２とトリックプレイ制御プログラム記憶領域１４３とを含む。通常出力プログラム記憶領域１４１は、通常出力プログラムを記憶する。トリックプレイ出力プログラム記憶領域１４２は、トリックプレイ出力プログラムを記憶する。トリックプレイ出力プログラムは、コンテンツデータをトリックプレイ出力するプログラムである。トリックプレイ制御プログラム記憶領域１４３は、トリックプレイ制御プログラムを記憶する。トリックプレイ制御プログラムは、音声情報に話速変換処理を実行するためのプログラムである。
【００５７】
コンテンツデータ記憶領域１３４は、ユーザノードが取得したコンテンツデータを記憶する。ユーザノードが取得するコンテンツデータは、ユーザノードがコンテンツ保持ノードとして記憶するコンテンツデータである。また、ユーザノードが取得するコンテンツデータは、ユーザノードが要求して他のノード装置Ｎｎから取得したコンテンツデータである。
【００５８】
インデックスキャッシュ記憶領域１３５は、上述したインデックス情報を記憶する。ルーティングテーブル記憶領域１３６は、上述したルーティングテーブルを記憶する。コンテンツカタログリスト記憶領域１３７は、上述したコンテンツカタログリストを記憶する。
【００５９】
性能情報記憶領域１３８は、各ノード装置Ｎｎの性能情報を記憶する。性能情報は、例えば、ＣＰＵ１１の処理能力である。また、性能情報として、ＣＰＵ１１とＲＡＭ１２とを含んだコンピュータの処理能力が、ノード装置Ｎｎの性能情報として用いられても良い。本実施形態の性能情報記憶領域１３８は、本発明の第１取得部の一例である。本実施形態の性能情報は、性能情報を管理する他の情報処理装置からネットワークを介して取得されても良い。取得された性能情報は、性能情報記憶領域１３８に記憶される。
【００６０】
トリックプレイデータ記憶領域１３９は、話速変換処理が適用されたコンテンツデータのトリックプレイデータが記憶される。トリックプレイデータ記憶領域１３９に記憶される情報は、ノード装置Ｎｎにより生成されたトリックプレイデータである。また、トリックプレイデータ記憶領域１３９に記憶される情報は、Ｐ２Ｐネットワーク９から取得された情報であっても良い。
【００６１】
デコーダ部１４は、映像情報と音声情報とをデコードする。本実施形態のデコードは、エンコード化された映像情報と音声情報とを、データ伸張または復号化することである。映像情報と音声情報とは、コンテンツデータのレプリカに含まれる。
【００６２】
映像処理部１５は、デコードされた映像情報に所定の描画処理を施して映像信号を出力する。
【００６３】
ディスプレイ１６は、映像処理部１５から出力された映像信号に基づいて映像表示する。ディスプレイ１６は、ＣＲＴディスプレイ、または、液晶ディスプレイにより構成される。
【００６４】
音声処理部１７は、上記デコードされた音声情報をアナログオーディオ信号にＤ（Digital）／Ａ（Analog）変換する。スピーカ１８は、変化されたアナログオーディオ信号を、アンプにより増幅して出力する。
【００６５】
通信部１９は、ノード装置Ｎｎをインターネットと接続する。通信部１９は、ネットワーク８を介して他のノード装置Ｎｎまたはコンテンツ投入サーバＣＳと情報の送受信を行う。
【００６６】
入力部２０は、ユーザからの指示を受け付ける。入力部２０は、キーボード、マウス、或いは、操作パネル等から構成される。なお、ノード装置Ｎｎとしては、パーソナルコンピュータ、ＳＴＢ（Ｓｅｔ  Ｔｏｐ  Ｂｏｘ）、或いは、ＴＶ受信機等を適用可能である。
【００６７】
また、分散保存システムＳが、分散保存システムＳに参加する際のアクセス先となるコンタクトノードを備えている場合、各ノード装置ＮｎのＨＤＤ１３にはコンタクトノードのＩＰアドレスまたはポート番号等が記憶されている。なお、ＨＤＤ１３に記憶されるプログラムは、例えば、ネットワーク８上の所定のサーバからダウンロードされるようにしてもよい。また、ＣＤ−ＲＯＭ等の記録媒体に記録されて当該記録媒体のドライブを介して読み込まれるようにしても良い。
【００６８】
[コンテンツ投入サーバＣＳの電気的構成]
コンテンツ投入サーバＣＳの電気的構成は、図２に示すノード装置Ｎｎの電気的構成と基本的に同じである。そのため、異なる点についてのみ記述する。コンテンツ投入サーバＣＳには、ディスプレイ１６及びスピーカ１８は、特に必須の構成ではない。また、コンテンツ投入サーバＣＳは、Ｐ２Ｐネットワーク９により管理されるコンテンツデータの全てを記憶している。コンテンツ投入サーバＣＳは、ノード装置Ｎｎを含む他の装置からの要求に基づいて、トリックプレイデータを生成する。そのため、コンテンツ投入サーバＣＳは、トリックプレイデータを生成するためのプログラムをＨＤＤに記憶している。
【００６９】
［ノード装置Ｎｎのメイン処理動作］
以上説明した構成からなる本実施形態のノード装置Ｎｎの動作及び作用について、添付図面を参照して説明する。図３は、ノード装置Ｎｎにおけるメイン動作の処理手順を示すフローチャートである。メイン動作処理は、メイン動作プログラムに従って実行される。ノード装置Ｎｎにより上述したＰ２Ｐネットワーク９への参加処理の要求が行われたとき、ノード装置Ｎｎのメイン動作処理が実行される。ＣＰＵ１１がメイン動作プログラムを実行することにより、遂行される。以下に示す処理は、ＣＰＵ１１により処理される。
【００７０】
ステップＳ１０１では、ノード装置Ｎｎのユーザからコンテンツの通常出力要求があったか否かが判定される。コンテンツの通常出力は、トリックプレイ等を行わず、コンテンツが通常速度で出力されることを示す。ユーザから通常出力が要求されたと判定されたとき、ステップＳ１０２が実行される。通常出力が要求されたと判定されなかったとき、ステップＳ１０３が実行される。本実施形態のコンピュータとステップＳ１０１とは、本発明の要求部の一例である。
【００７１】
ステップＳ１０２では、通常出力処理が実行される。通常出力処理の詳細については、後述する。
【００７２】
ステップＳ１０３では、他のノード装置Ｎｎからコンテンツの検索要求を受信したか否かが判定される。具体的には、コンテンツの所在を問い合わせるコンテンツ所在問い合わせメッセージが受信されたか否かが判定される。所在問い合わせメッセージが受信されたと判定されたとき、ステップＳ１０４が実行される。所在問い合わせメッセージが受信されたと判定されなかったとき、ステップＳ１０７が実行される。
【００７３】
ステップＳ１０４では、所在問い合わせメッセージを受信したノード装置Ｎｎが、問い合わせされたコンテンツの所在を知るルートノードであるか否かが判定される。所在問い合わせメッセージに含まれるコンテンツＩＤに基づいて、ルートノードであるか否かが判定される。ルートノードであると判定されたとき、ステップＳ１０５が実行される。ルートノードであると判定されなかったとき、ステップＳ１０６が実行される。
【００７４】
ステップＳ１０５では、ルートノードが保持するコンテンツ保持ノードのノード情報が、所在問い合わせメッセージの送信元のノード装置Ｎｎへ送信される。送信されるノード情報は、コンテンツ保持ノードのＩＰアドレスと、ポート番号とを含む。
【００７５】
ステップＳ１０６では、ルーティングテーブル記憶領域１３６に記憶されたＤＨＴのルーティングテーブルに基づいて、ステップＳ１０３で受信した所在問い合わせメッセージが他のノード装置Ｎｎへ転送される。
【００７６】
ステップＳ１０７では、他のノード装置Ｎｎから送信されたパブリッシュメッセージが受信されたか否かが判定される。他のノード装置Ｎｎからパブリッシュメッセージが受信されたと判定されたとき、ステップＳ１０８が実行される。パブリッシュメッセージが受信されなかったと判定されたとき、ステップＳ１１１が実行される。
【００７７】
ステップＳ１０８では、パブリッシュメッセージを受信したノード装置が、パブリッシュメッセージに含まれるコンテンツＩＤのルートノードであるか否かが判定される。ステップＳ１０８において、ルートノードであるか否かは、パブリッシュメッセージが含むコンテンツＩＤに基づいて判定される。ルートノードであると判定されたとき、ステップＳ１０９が実行される。ルートノードであると判定されなかったとき、ステップＳ１１０が実行される。
【００７８】
ステップＳ１０９では、ステップＳ１０７で受信されたパブリッシュメッセージに含まれるノード情報が、パブリッシュメッセージを受信したノード装置のインデックスキャッシュ記憶領域１３５に記憶される。
【００７９】
ステップＳ１１０では、ルーティングテーブル記憶領域１３６に記憶されたルーティングテーブルに基づいて、ステップＳ１０７で受信したパブリッシュメッセージが他のノード装置Ｎｎへ転送される。
【００８０】
ステップＳ１１１では、ノード装置Ｎｎのユーザからコンテンツのトリックプレイ再生要求があったか否かが判定される。コンテンツのトリックプレイ再生は、コンテンツが含む音声情報の早送り又は遅送り（スロー再生）等である。具体的には、本実施形態では早送りとして、２倍早送りと、４倍早送りとが設定可能である。また、本実施形態ではスロー再生として、１／２倍スロー再生が設定可能である。設定可能なトリックプレイが、実行される。ユーザからトリックプレイ再生が要求されたと判定されたとき、ステップＳ１１２が実行される。トリックプレイ再生が要求されたと判定されなかったとき、ステップＳ１１３が実行される。本実施形態のコンピュータとステップＳ１０１とは、本発明の要求部の一例である。
【００８１】
ステップＳ１１２では、トリックプレイ出力処理が実行される。トリックプレイ出力処理の詳細については、後述する。
【００８２】
ステップＳ１１３では、ユーザノードの電源がオフにされたか否かが判定される。ユーザノードの電源がオフにされたと判定されたとき、メイン動作処理は終了される。ユーザノードの電源がオフにされたと判定されなかったとき、ステップＳ１０１が再度実行される。
【００８３】
（通常出力処理）
図４は、ユーザノードにおける通常出力処理の手順を示すフローチャートである。通常出力処理は、通常出力処理プログラムに従って実行される。ステップＳ２０１では、コンテンツチャンクの出力対象情報がセットされる。ステップＳ２０１では、最初のコンテンツチャンクを示す「１」が出力対象情報としてセットされる。セットされた出力対象情報は、ＲＡＭ１２の出力対象情報一時記憶領域１２２に一時記憶される。
【００８４】
ステップＳ２０２では、コンテンツデータ記憶領域１３４に、出力対象情報に対応するコンテンツチャンクが記憶されているかが判定される。出力対象情報は、出力対象情報一時記憶領域１２２に記憶されている情報である。出力対象情報一時記憶領域１２２に記憶されている出力対象情報に対応するコンテンツチャンクが記憶されているか否かが、ステップＳ２０２で判定される。記憶されていると判定されたとき、コンテンツデータ記憶領域１３４からコンテンツチャンクが読み出されて、ステップＳ２０５が実行される。記憶されていないと判定されたとき、ステップＳ２０３が実行される。
【００８５】
ステップＳ２０３では、コンテンツカタログリストを用いてコンテンツチャンクが検索される。検索されるコンテンツチャンクは、出力対象情報一時記憶領域１２２に記憶された出力対象情報に対応するコンテンツチャンクである。コンテンツチャンクに対応するコンテンツＩＤに基づいて、ノード装置Ｎｎは、Ｐ２Ｐネットワーク９に存在するコンテンツチャンクを検索する。
【００８６】
ステップＳ２０４では、検索された結果に基づいて、該当するコンテンツチャンクが取得される。該当するコンテンツチャンクが、検索結果に存在する場合、該当するコンテンツチャンクがＰ２Ｐネットワーク９を介して取得される。該当するコンテンツチャンクが、検索結果に存在しない場合、該当するコンテンツチャンクがコンテンツ投入サーバＣＳから取得される。取得されたコンテンツチャンクは、コンテンツデータ記憶領域１３４に記憶される。本実施形態のコンピュータとステップＳ２０４とは、本発明の第３取得部と第４取得部との一例である。
【００８７】
ステップＳ２０５では、出力対象情報一時記憶領域１２２に記憶された出力対象情報に対応するコンテンツチャンクが出力される。具体的には、コンテンツデータ記憶領域１３４から、出力対象情報に対応するコンテンツチャンクが読み出される。読み出されたコンテンツチャンクがディスプレイ１６とスピーカ１８とにより出力可能な映像信号及び音声信号が生成される。生成された映像信号がディスプレイ１６に供給される。また、生成された音声信号がスピーカ１８に供給される。
【００８８】
ステップＳ２０６では、ノード装置Ｎｎのユーザによりトリックプレイの要求があったか否かが判定される。ステップＳ２０６で要求されるトリックプレイは、例えば、コンテンツデータの早送りまたはスロー再生である。本実施形態では早送りとして、２倍早送りと、４倍早送りとが設定可能である。また、本実施形態ではスロー再生として、１／２倍スロー再生が設定可能である。トリックプレイの要求があったと判定されたとき、ステップＳ２０７が実行される。トリックプレイの要求がないと判定されたとき、ステップＳ２０８が実行される。
【００８９】
ステップＳ２０７では、トリックプレイ制御が実行される。トリックプレイ制御の詳細は、後述する。
【００９０】
ステップＳ２０８では、ステップＳ１０１で通常再生要求されたコンテンツの最後まで出力が終了したか否かが判定される。具体的には、ＲＡＭ１２の所定の記憶領域に、通常再生要求されたコンテンツの出力終了時間、または、通常再生要求されたコンテンツを構成するコンテンツチャンクの総数が記憶される。上述の所定の記憶領域に記憶された出力終了時間が経過したか否かが判定される。また、上述の所定の記憶領域に記憶された総数より、出力対象情報一時記憶領域１２２に記憶された値が大きくなったか否かが判定される。上述した判定処理が「Ｙｅｓ」のとき、コンテンツの最後まで出力が終了したと判定される。また、上述した判定処理が「Ｎｏ」のとき、コンテンツの最後まで出力が終了しなかったと判定される。コンテンツの最後まで出力が終了したと判定されたとき、通常出力処理は終了される。コンテンツの最後まで出力が終了したと判定されなかったとき、ステップＳ２０９が実行される。
【００９１】
ステップＳ２０９では、出力対象情報一時記憶領域１２２に記憶された値に「１」が加算される。「１」加算された値が、出力対象情報一時記憶領域１２２に再度一時記憶される。
【００９２】
（トリックプレイ出力処理）
図５は、ユーザノードにおけるトリックプレイ出力処理の手順を示すフローチャートである。トリックプレイ出力処理は、トリックプレイ出力処理プログラムに従って実行される。ステップＳ３０１では、コンテンツチャンクの出力対象情報がセットされる。本実施形態のコンテンツは、コンテンツが複数のコンテンツチャンクに分割されている。言い換えれば、複数のコンテンツチャンクにより一つのコンテンツが構成されている。本実施形態では、各コンテンツチャンクに上述したコンテンツＩＤが割当てられる。コンテンツチャンクの出力対象情報は、コンテンツを構成する何番目のコンテンツチャンクが出力対象であるかを示す。ステップＳ３０１では、最初のコンテンツチャンクを示す「１」が出力対象情報としてセットされる。セットされた出力対象情報は、ＲＡＭ１２の出力対象情報一時記憶領域１２２に一時記憶される。
【００９３】
ステップＳ３０２では、コンテンツデータ記憶領域１３４に、出力対象情報に対応するコンテンツチャンクが記憶されているかが判定される。出力対象情報は、出力対象情報一時記憶領域１２２に記憶されている情報である。出力対象情報一時記憶領域１２２に記憶されている出力対象情報に対応するコンテンツチャンクが記憶されているか否かが、ステップＳ３０２で判定される。記憶されていると判定されたとき、ステップＳ３０５が実行される。記憶されていないと判定されたとき、ステップＳ３０３が実行される。
【００９４】
ステップＳ３０３では、コンテンツカタログリストを用いてコンテンツチャンクが検索される。検索されるコンテンツチャンクは、出力対象情報一時記憶領域１２２に記憶された出力対象情報に対応するコンテンツチャンクである。コンテンツチャンクに対応するコンテンツＩＤに基づいて、ノード装置Ｎｎは、Ｐ２Ｐネットワーク９に存在するコンテンツチャンクを検索する。
【００９５】
ステップＳ３０４では、検索された結果に基づいて、該当するコンテンツチャンクが取得される。該当するコンテンツチャンクが、検索結果に存在する場合、該当するコンテンツチャンクがＰ２Ｐネットワーク９を介して取得される。該当するコンテンツチャンクが、検索結果に存在しない場合、該当するコンテンツチャンクがコンテンツ投入サーバＣＳから取得される。取得されたコンテンツチャンクは、コンテンツデータ記憶領域１３４に記憶される。本実施形態のコンピュータとステップＳ３０４とは、本発明の第３取得部と第４取得部との一例である。
【００９６】
ステップＳ３０５では、トリックプレイ制御が実行される。トリックプレイ制御の詳細は、後述する。
【００９７】
ステップＳ３０６では、トリックプレイデータ記憶領域１３９に記憶されたトリックプレイデータと、出力対象のコンテンツチャンクとが再生される。具体的には、コンテンツチャンクが含む映像情報が、ステップＳ１１１で指定されたトリックプレイで出力されるとともに、トリックプレイデータ記憶領域１３９に記憶されたトリックプレイデータが出力される。上述のコンテンツチャンクが、ディスプレイ１６により出力可能な映像信号が生成される。また、上述のトリックプレイデータが、スピーカ１８により出力可能な音声信号が生成される。生成された映像信号がディスプレイ１６に供給される。また、生成された音声信号がスピーカ１８に供給される。
【００９８】
ステップＳ３０７では、ステップＳ１１１でトリックプレイ再生要求されたコンテンツの最後まで出力が終了したか否かが判定される。具体的には、ＲＡＭ１２の所定の記憶領域に、トリックプレイ再生が要求されたコンテンツの出力終了時間、または、通常再生要求されたコンテンツを構成するコンテンツチャンクの総数が記憶される。上述の所定の記憶領域に記憶された出力終了時間が経過したか否かが判定される。また、上述の所定の記憶領域に記憶された総数より、出力対象情報一時記憶領域１２２に記憶された値が大きくなったか否かが判定される。上述した判定処理が「Ｙｅｓ」のとき、コンテンツの最後まで出力が終了したと判定される。また、上述した判定処理が「Ｎｏ」のとき、コンテンツの最後まで出力が終了しなかったと判定される。コンテンツの最後まで出力が終了したと判定されたとき、トリックプレイ出力処理は終了される。コンテンツの最後まで出力が終了したと判定されなかったとき、ステップＳ３０８が実行される。
【００９９】
ステップＳ３０８では、インデックス情報一時記憶領域１２２に記憶された値に「１」が加算される。「１」加算された値が、インデックス情報一時記憶領域１２２に再度一時記憶される。
【０１００】
（トリックプレイ制御）
図６は、ユーザノードにおけるトリックプレイ制御の手順を示すフローチャートである。トリックプレイ制御は、トリックプレイ制御プログラムに従って実行される。ステップＳ４０１では、ユーザノードが含むコンピュータの性能が所定値以下であるか否かが判定される。具体的には、性能情報記憶領域１３８に記憶された性能情報が、所定値以下であるか否かが判定される。所定値以下であると判定されたとき、ステップＳ４０２が実行される。所定値以下であると判定されなかったとき、ステップＳ４１３が実行される。本実施形態のコンピュータとステップＳ４０１とは、本発明の第１判定部の一例である。また、本発明のステップＳ４０１は、本実施形態の第１判定ステップの一例である。尚、ステップＳ４０１が実行されるとき、性能情報記憶領域１３８から性能情報を読み出す処理は、第１取得ステップの一例である。
【０１０１】
ステップ４０２では、ユーザノードのＣＰＵ１１に余力があるか否かが判定される。具体的には、ＣＰＵ稼動率が所定の値以下であるか否かが判定される。ＣＰＵ稼動率は、例えば、一般的に使用されているコンピュータに付随されている公知のソフトウェア等により決定される値である。ＣＰＵ１１の余力があると判定されたとき、ステップＳ４０３が実行される。ＣＰＵ１１の余力があると判定されなかったとき、ステップＳ４０６が実行される。本実施形態のコンピュータとステップＳ４０２とは、本発明の第２判定部の一例である。
【０１０２】
ステップＳ４０３では、現在の出力対象から、３個先までのコンテンツチャンクが検索される。現在の出力対象は、出力対象情報として出力対象情報一時記憶領域１２２に記憶された値である。出力対象情報一時記憶領域１２２に記憶された値から、その値に「３」を加算した値までの出力対象に対応するコンテンツチャンクが検索される。ステップＳ４０３では、所定の個数先までのコンテンツチャンクが検索されれば良い。上述したコンテンツチャンクは、コンテンツカタログリストに基づいて検索される。検索されたコンテンツチャンクは、コンテンツチャンク一時記憶領域１２３に一時記憶される。本実施形態のコンピュータとステップＳ４０３とは、本発明の検索部の一例である。また、本実施形態のステップＳ４０３は、本発明の検索ステップの一例である。
【０１０３】
ステップＳ４０４では、ステップＳ４０３で検索されたコンテンツチャンクの検索が成功したか否かが判定される。具体的には、ステップＳ４０３で検索されたコンテンツが、コンテンツチャンク一時記憶領域１２３に記憶されているか否かにより判定される。コンテンツチャンクの検索が成功したと判定されたとき、ステップＳ４０５が実行される。コンテンツチャンクの検索が成功したと判定されなかったとき、ステップＳ４０６が実行される。
【０１０４】
ステップＳ４０５では、ステップＳ４０４で検索が成功したコンテンツチャンクのトリックプレイデータが生成される。具体的には、ステップＳ１１１またはステップＳ２０６で指定された倍率に対応するトリックプレイデータが生成される。生成されたトリックプレイデータは、トリックプレイデータ記憶領域１３９に記憶される。
【０１０５】
ステップＳ４０６では、現在の出力対象と、次の出力対象とに対応するコンテンツチャンクのトリックプレイデータが検索される。次の出力対象は、現在の出力対象の次に出力されるコンテンツチャンクを示す。現在の出力対象は、出力対象情報として出力対象情報一時記憶領域１２２に記憶された値である。出力対象情報一時記憶領域１２２に記憶された値に「１」を加算した値に対応するコンテンツチャンクのトリックプレイデータが、次の出力対象として検索される。上述したコンテンツチャンクは、コンテンツカタログリストに基づいて検索される。検索されたコンテンツチャンクは、コンテンツチャンク一時記憶領域１２３に一時記憶される。
【０１０６】
ステップＳ４０７では、ステップＳ４０６で検索されたトリックプレイデータのコンテンツチャンクの検索が成功したか否かが判定される。具体的には、ルートノードから、コンテンツ保持ノードのＩＰアドレスが取得されたか否かにより判定される。例えば、Ｐ２Ｐネットワーク９上に検索したトリックプレイデータが存在しない場合、検索されたトリックプレイデータのコンテンツチャンクを取得することができない。トリックプレイデータの検索が成功したと判定されたとき、ステップＳ４０８が実行される。トリックプレイデータの取得が成功したと判定されなかったとき、ステップＳ４０９が実行される。トリックプレイデータのコンテンツチャンクの検索が成功したとき、トリックプレイデータのコンテンツチャンクのルートノードからコンテンツ保持ノードのＩＰアドレスが取得される。
【０１０７】
ステップＳ４０８では、コンテンツ保持ノードからトリックプレイデータのコンテンツチャンクが取得される。ステップＳ４０７で取得されたＩＰアドレスに基づいて、コンテンツ保持ノードからトリックプレイデータのコンテンツチャンクが取得される。取得されたトリックプレイデータのコンテンツチャンクは、トリックプレイデータ記憶領域１３９に記憶される。本実施形態のコンピュータとステップＳ４０８とは、本発明の第２取得部の一例である。また、本実施形態のステップＳ４０８は、本発明の第２取得ステップの一例である。
【０１０８】
ステップＳ４０９では、ステップＳ４０６で検索されたトリックプレイデータのコンテンツチャンクが、コンテンツ投入サーバＣＳに記憶されているか否かが判定される。記憶されていると判定されたとき、ステップＳ４１０が実行される。記憶されていないと判定されたとき、ステップＳ４１１が実行される。
【０１０９】
ステップＳ４１０では、ステップＳ４０６で検索されたトリックプレイデータのコンテンツチャンクが、コンテンツ投入サーバＣＳから取得される。取得されたトリックプレイデータのコンテンツチャンクは、トリックプレイデータ記憶領域１３９に記憶される。
【０１１０】
ステップＳ４１１では、ステップＳ４０６で検索されたコンテンツチャンクのトリックプレイデータが要求される。ステップＳ４１１では、ノード装置Ｎｎからコンテンツ投入サーバＣＳへトリックプレイデータの生成要求が送信される。生成されたトリックプレイデータのコンテンツチャックは、トリックプレイデータ記憶領域１３９に記憶される。
【０１１１】
ステップＳ４１２では、ステップＳ４１１で生成を要求したトリックプレイデータが、コンテンツ投入サーバＣＳから取得される。具体的には、コンテンツ投入サーバＣＳから送信されたトリックプレイデータのコンテンツチャンクが、受信される。受信されたトリックプレイデータのコンテンツチャンクは、トリックプレイデータ記憶領域１３９に記憶される。
【０１１２】
ステップＳ４１３では、コンテンツが出力されながら、トリックプレイデータが生成される。生成されたトリックプレイデータは、トリックプレイデータ記憶領域１３９に記憶される。具体的には、コンテンツチャンクが含む映像情報がコンテンツチャンク一時記憶領域１２３から読み出されて、ステップＳ１１１またはステップＳ２０６で指定されたトリックプレイで出力されるとともに、トリックプレイデータ記憶領域１３９に記憶されたトリックプレイデータが出力される。上述のコンテンツチャンクが、ディスプレイ１６により出力可能な映像信号が生成される。また、上述のトリックプレイデータが、スピーカ１８により出力可能な音声信号が生成される。生成された映像信号がディスプレイ１６に供給される。また、生成された音声信号がスピーカ１８に供給される。本実施形態のコンピュータとステップＳ４１３とは、本発明の処理部の一例である。
【０１１３】
ステップＳ４１４では、ステップＳ４１３で生成されたトリックプレイデータがパブリッシュされる。トリックプレイデータを保持しているノード装置ＮｎのＩＰアドレスとコンテンツＩＤとを含むパブリッシュメッセージが、トリックプレイデータのルートノード宛に送信される。
【０１１４】
[コンテンツ投入サーバＣＳのメイン処理動作]
以上説明した構成からなる本実施形態のコンテンツ投入サーバＣＳの動作及び作用について、添付図面を参照して説明する。図７は、コンテンツ投入サーバＣＳにおけるメイン動作の処理手順を示すフローチャートである。図示しないコンテンツ投入サーバＣＳのＣＰＵが、メイン動作プログラムを実行することにより遂行される。以下に示す処理は、上記のＣＰＵにより実行される。ステップＳ５０１では、ノード装置Ｎｎを含む他の装置から、コンテンツチャンクの取得要求を受信したか否かが判定される。コンテンツチャンクの取得要求は、コンテンツＩＤと送信元のＩＰアドレスとを含む。コンテンツＩＤは、要求されたコンテンツチャンクのコンテンツＩＤである。送信元のＩＰアドレスは、取得要求を送信したノード装置Ｎｎを含む他の装置のＩＰアドレスである。取得要求が受信されたと判定されたとき、ステップＳ５０２が実行される。取得要求が受信されたと判定されなかったとき、ステップＳ５０３が実行される。
【０１１５】
ステップＳ５０２では、ステップＳ５０１で受信したコンテンツＩＤに対応するコンテンツチャンクが送信される。ステップＳ５０２では、ステップＳ５０１で受信した送信元のＩＰアドレスに基づいて、コンテンツチャンクが送信される。
【０１１６】
ステップＳ５０３では、ノード装置Ｎｎを含む他の装置から、トリックプレイデータの取得要求を受信したか否かが判定される。トリックプレイデータの取得要求は、トリックプレイデータの種別と、コンテンツＩＤと、送信元のＩＰアドレスとを含む。トリックプレイデータの種別は、ステップＳ１１１またはステップＳ２０６で指定された倍率である。コンテンツＩＤは、要求されたコンテンツチャンクのコンテンツＩＤである。送信元のＩＰアドレスは、取得要求を送信したノード装置Ｎｎを含む他の装置のＩＰアドレスである。トリックプレイデータの取得要求が受信されたと判定されたとき、ステップＳ５０４が実行される。トリックプレイデータの取得要求が受信されたと判定されなかったとき、ステップＳ５０６が実行される。
【０１１７】
ステップＳ５０４では、コンテンツ投入サーバＣＳが記憶するコンテンツデータに基づいて、トリックプレイデータのコンテンツチャンクが生成される。具体的には、コンテンツ投入サーバＣＳが記憶するコンテンツの中から、ステップＳ５０３で受信したコンテンツＩＤのコンテンツデータが決定される。ステップＳ５０３で受信したトリックプレイデータ種別に基づいて、決定されたコンテンツデータは所定の倍速のトリックプレイデータに変換される。
【０１１８】
ステップＳ５０５では、ステップＳ５０４で生成されたトリックプレイデータのコンテンツチャンクが送信される。ステップＳ５０５では、ステップＳ５０３で受信した送信元のＩＰアドレスに基づいて、トリックプレイデータのコンテンツチャンクが送信される。
【０１１９】
ステップＳ５０６では、その他の処理が実行される。その他の処理は、Ｐ２Ｐネットワーク９に新規のコンテンツデータを投入する投入処理等である。
【０１２０】
ステップＳ５０７では、コンテンツ投入サーバＣＳの電源がオフにされたか否かが判定される。オフにされたと判定されたとき、コンテンツ投入サーバＣＳのメイン処理動作は終了される。電源オフにされたと判定されなかったとき、ステップＳ５０１が再度実行される。
【０１２１】
本実施形態では、コンテンツ投入サーバＣＳが、Ｐ２Ｐネットワーク９にコンテンツデータを投入する機能、及び、コンテンツデータのオリジナルを保存する機能の両方を有する。コンテンツデータを投入する機能を備えたサーバと、コンテンツデータのオリジナルを保存する機能を備えたサーバとが、夫々設置されても良い。
【０１２２】
本実施形態では、ＤＨＴを用いたルーティングテーブルが用いられているが、ＤＨＴに限定されるものではない。ＤＨＴを利用しないピアツーピアシステムとしては、例えば、ハイブリッド型のピアツーピアシステムがある。ハイブリッド型のピアツーピアシステムにも、本発明は適用可能である。
【０１２３】
本実施形態では、Ｐ２Ｐネットワーク９に保存するトリックプレイデータとして、音声情報のトリックプレイデータを保存したが、これに限定されるものではない。
Ｐ２Ｐネットワーク９に保存するトリックプレイデータとして、音声情報と映像情報とを含むトリックプレイデータが保存されても良い。
【０１２４】
本実施形態のステップＳ４０６では、現在の出力対象と、次の出力対象とに対応するコンテンツチャンクのトリックプレイデータが検索される。その後、検索されたトリックプレイデータが出力される。ステップＳ４０６の変形例として、次の対象となるコンテンツチャンクのトリックプレイデータだけが検索されて、取得されて良い。ステップＳ４０２で、ＣＰＵの余力がないと判定されたとき、現在の出力対象であるコンテンツチャンクのトリックプレイデータはノード自身が生成し、次の出力対象であるコンテンツチャンクのトリックプレイデータがステップＳ４０６で検索されて、取得されても良い。
【符号の説明】
【０１２５】
３  ＩＸ
４ａ、４ｂ  ＩＳＰ
５ａ、５ｂ  ＤＳＬ回線事業者
６  ＦＴＴＨ回線事業者
７  通信回線
８  ネットワーク
９  Ｐ２Ｐネットワーク
１１  ＣＰＵ
１２  ＨＤＤ
１３  ＲＡＭ
１４  通信部
１５  映像処理部
１６  ディスプレイ
１７  音声処理部
１８  スピーカ
２０  入力部
１００  概念的構成図
１０１  具体的構成図
１１１  タイマー
１２１  各種メッセージ一時記憶領域
１２２  出力対象情報一時記憶領域
１２３  コンテンツチャンク一時記憶領域
１３１  プログラム記憶領域
１３２  メイン処理動作プログラム記憶領域
１３４  コンテンツデータ記憶領域
１３５  インデックスキャッシュ記憶領域
１３６  ルーティングテーブル記憶領域
１３７  コンテンツカタログリスト記憶領域
１３８  性能情報記憶領域
１３９  トリックプレイデータ記憶領域
Ｓ  分散保存システム
ＣＳ  コンテンツ投入サーバ
Ｎｎ  ノード装置
【図１】
2011076183.tif 000003
【図２】
2011076183.tif 000004
【図３】
2011076183.tif 000005
【図４】
2011076183.tif 000006
【図５】
2011076183.tif 000007
【図６】
2011076183.tif 000008
【図７】
2011076183.tif 000009