(57)【要約】【課題】エンコーディング処理を高速に行いつつ、映像データを配信するマシンにかかる負荷を軽減する新しいデータ配信システム等を提供する。【解決手段】光ディスク再生装置１０Ａと、コンテンツデータを分割した分割データを受信した場合、該受信した分割データをエンコーディング処理及びマルチプレックス処理をして、該マルチプレックスされた分割データを配信する複数の一次配信サーバ３２と、マルチプレックスされた分割データをそれぞれ保持する相手先ピアの情報を問い合わせした光ディスク再生装置１０Ａに通知する制御サーバ４０と、を含み、光ディスク再生装置１０Ａは、制御サーバ４０より通知された相手先ピアの情報に基づいて、相手先ピアとピアツーピア通信により該相手先ピアが保持するマルチプレックスされた分割データを受信するデータ配信システム。【選択図】図１
2012023457.tif 000002
【特許請求の範囲】
【請求項１】
コンテンツデータを分割した分割データをピアツーピア通信により取得し、再生可能な光ディスク再生装置と、
コンテンツデータを分割した分割データを受信した場合、該受信した分割データをエンコーディングし、該エンコーディングされた分割データを前記光ディスク再生装置で前記分割データごとに再生可能なデータ形式にマルチプレックスして、該マルチプレックスされた分割データを前記光ディスク再生装置とピアツーピア通信により配信する複数の一次配信サーバと、
前記光ディスク再生装置及び前記複数の一次配信サーバと接続されており、前記光ディスク再生装置から取得対象のコンテンツデータを構成する分割データの問い合わせを受け付けて、該当する前記マルチプレックスされた分割データをそれぞれ保持する相手先ピアの情報を前記問い合わせした光ディスク再生装置に通知する制御サーバと、を含み、
前記光ディスク再生装置は、前記制御サーバより通知された前記相手先ピアの情報に基づいて、前記相手先ピアとピアツーピア通信により該相手先ピアが保持する前記マルチプレックスされた分割データを取得する、データ配信システム。
【請求項２】
前記分割データを取得し、前記分割データに含まれる映像部分のデータと音声部分のデータのうち、前記音声部分のデータを前記映像部分のデータより先に各前記一次配信サーバに送信する分散エンコーディングマルチプレックスコントローラを更に含む、請求項１に記載のデータ配信システム。
【請求項３】
前記制御サーバは、前記複数の一次配信サーバ、及び前記制御サーバと接続された他の光ディスク再生装置のいずれかを前記相手先ピアとして選出し、該選出した相手先ピアの情報を前記問い合わせした光ディスク再生装置に通知する、請求項１又は請求項２に記載のデータ配信システム。
【請求項４】
前記制御サーバは、前記該当するマルチプレックスされた分割データを保持している前記他の光ディスク再生装置が少なくとも２つ以上ある場合、該他の光ディスク再生装置それぞれの前記制御サーバとの応答速度に基づいて前記相手先ピアとして選出し、該選出した相手先ピアの情報を前記問い合わせした光ディスク再生装置に通知する、請求項１〜請求項３のいずれか１項に記載のデータ配信システム。
【請求項５】
前記一次配信サーバは、前記マルチプレックスされた分割データを複製し、該複製した分割データを他の一次配信サーバに送信する、請求項１〜請求項４のいずれか１項に記載のデータ配信システム。
【請求項６】
前記光ディスク再生装置は、
取得対象のコンテンツデータを構成する分割データを示す分割データ識別子に基づいて、前記制御サーバに対して前記分割データの問い合わせを行う、請求項１〜請求項５のいずれか１項に記載のデータ配信システム。
【請求項７】
前記分散エンコーディングマルチプレックスコントローラは、前記コンテンツデータを構成する映像部分のデータ部と音声部分のデータ部とを、前記映像部分のデータ部の映像情報単位で区切られた各映像フレームの再生開始時間と前記音声部分のデータ部の音声情報単位で区切られた各音声フレームの再生開始時間とが一致する境界を検出し、該検出した境界ごとに前記コンテンツデータを分割して分割データを作成する、請求項２に記載のデータ配信システム。
【請求項８】
コンテンツデータを分割した分割データをピアツーピア通信により取得し、再生可能な光ディスク再生装置と、コンテンツデータを分割した分割データを配信する複数の一次配信サーバと、前記光ディスク再生装置及び前記一次配信サーバと接続されており、前記光ディスク再生装置に対して前記分割データの配信を制御する制御サーバとを含む配信システムにおけるデータ配信方法であって、
前記一次配信サーバが、前記コンテンツデータを分割した分割データをエンコーディングし、該エンコーディングされた分割データを前記光ディスク再生装置で前記分割データごとに再生可能なデータ形式にマルチプレックスする段階と、
前記光ディスク再生装置が、前記制御サーバに対して前記コンテンツデータを構成する分割データの問い合わせを行う段階と、
前記制御サーバが、前記光ディスク再生装置より前記問い合わせを受け付けて、該当する前記マルチプレックスされた分割データを保持する相手先ピアの情報を前記問い合わせした光ディスク再生装置に通知する段階と、
前記光ディスク再生装置が、前記制御サーバより通知された前記相手先ピアの情報に基づいて、前記相手先ピアとピアツーピア通信により該相手先ピアが保持する前記マルチプレックスされた分割データを取得する段階と、
を含むデータ配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データ配信システム、及びデータ配信方法に関する。
【背景技術】
【０００２】
一般家庭におけるハイビジョン映像を視聴するメディアとしてブルーレイディスク（Ｂｌｕ−ｒａｙ  Ｄｉｓｃ：ＢＤ）が普及してきており、今後さらにその普及率が上がることが予想される。そして、このＢＤを再生するブルーレイディスクプレイヤ（ＢＤプレイヤ）は、メディアからの映像データを再生する機能に加えて、ネットワーク経由で配信される映像データをダウンロードして再生する機能を備えることもでき、今後、このＢＤプレイヤを使用したダウンロード再生を行う需要が増えるものと予想される。
【０００３】
ネットワーク経由で配信された映像データをＢＤプレイヤで視聴するためには、映像素材を配信可能な形式（例えば、Ｈ．２６４，ＶＣ１，Ｍｐｅｇ２など）に変換（エンコーディング）し、さらにそれをＢＤプレイヤで再生可能なデータ形式（ＢＤ−Ｖｉｄｅｏ形式）に変換（マルチプレックス）する必要がある。なお、エンコーディング処理において、映像データに含まれる映像部分のデータと音声部分のデータとを分けてエンコーディングすることが一般的である。
【０００４】
しかし、近年、映像の高精細化に伴い、映像データのサイズも著しく大容量になっており、現行のエンコーディング、マルチプレックスの方法では、その所要時間を多く要してしまっている。
【０００５】
そのため、映像データを配信可能な形式にエンコーディングする際、まず映像データの映像部分のデータ部を分割し、該分割されたそれぞれの映像部分のデータを複数のエンコーダに分散させてエンコーディング処理を行うことにより（分散エンコーディング）、該処理を高速に行う方法が知られている。
【発明の概要】
【発明が解決しようとする課題】
【０００６】
ところが、上述の分散エンコーディングする方法は、それぞれエンコーディング済みの各映像部分のデータと、エンコーディング済みの音声部分のデータとをマルチプレックスしてコンテンツ全体をまとめて配信するものであり、そのため、データ取得が１つの配信パスを通じてシーケンシャルに行われる結果、データ配信にかかる時間を依然として要してしまっていた。特に、映像データを配信するマシンに対してアクセスが集中した場合は、このマシンの負荷も高くなりボトルネックの原因ともなる。これに対応するために配信用のマシン台数を増やす必要が出てくるなどコスト面での負担も増える傾向がある。
【０００７】
そこで、本発明は、上記事項に鑑みて、エンコーディング処理を高速に行いつつ、映像データを配信するマシンにかかる負荷を軽減することができる新しいデータ配信システム及びデータ配信方法を提供することを目的とする。
【課題を解決するための手段】
【０００８】
本発明によるデータ配信システムは、コンテンツデータを分割した分割データをピアツーピア通信により取得し、再生可能な光ディスク再生装置と、コンテンツデータを分割した分割データを受信した場合、該受信した分割データをエンコーディングし、該エンコーディングされた分割データを光ディスク再生装置で前記分割データごとに再生可能なデータ形式にマルチプレックスして、該マルチプレックスされた分割データを光ディスク再生装置とピアツーピア通信により配信する複数の一次配信サーバと、光ディスク再生装置及び複数の一次配信サーバと接続されており、光ディスク再生装置から取得対象のコンテンツデータを構成する分割データの問い合わせを受け付けて、該当するマルチプレックスされた分割データをそれぞれ保持する相手先ピアの情報を問い合わせした光ディスク再生装置に通知する制御サーバと、を含み、光ディスク再生装置は、制御サーバより通知された相手先ピアの情報に基づいて、相手先ピアとピアツーピア通信により該相手先ピアが保持するマルチプレックスされた分割データを取得することを特徴とする。
【０００９】
また、本発明によるデータ配信システムは、分割データを取得し、分割データに含まれる映像部分のデータと音声部分のデータのうち、音声部分のデータを映像部分のデータより先に各前記一次配信サーバに送信するように制御する分散エンコーディングマルチプレックスコントローラを更に含むことができる。
【００１０】
さらに、本発明によるデータ配信システムは、制御サーバが、複数の一次配信サーバ、及び制御サーバと接続された他の光ディスク再生装置のいずれかを相手先ピアとして選出し、該選出した相手先ピアの情報を問い合わせした光ディスク再生装置に通知する。
【００１１】
さらに、本発明によるデータ配信システムは、制御サーバは、該当するマルチプレックスされた分割データを保持している他の光ディスク再生装置が少なくとも２つ以上ある場合、該他の光ディスク再生装置それぞれの制御サーバとの応答速度に基づいて前記相手先ピアを選出し、該選出した相手先ピアの情報を問い合わせした光ディスク再生装置に通知する。
【００１２】
さらに、本発明によるデータ配信システムは、一次配信サーバが、マルチプレックスされた分割データを複製し、該複製した分割データを他の一次配信サーバに送信するようにすることもできる。
【００１３】
さらに、本発明によるデータ配信システムは、光ディスク再生装置は、取得対象のコンテンツデータを構成する分割データを示す分割データ識別子に基づいて、制御サーバに対して分割データの問い合わせを行うこともできる。
【００１４】
さらに、本発明によるデータ配信システムは、分散エンコーディングマルチプレックスコントローラが、コンテンツデータを構成する映像部分のデータ部と音声部分のデータ部とを、映像部分のデータ部の映像情報単位で区切られた各映像フレームの再生開始時間と音声部分のデータ部の音声情報単位で区切られた各音声フレームの再生開始時間とが一致する境界を検出し、該検出した境界ごとにコンテンツデータを分割して分割データを作成することもできる。
【００１５】
本発明によるデータ配信方法は、コンテンツデータを分割した分割データをピアツーピア通信により取得し、再生可能な光ディスク再生装置と、コンテンツデータを分割した分割データを配信する複数の一次配信サーバと、光ディスク再生装置及び一次配信サーバと接続されており、光ディスク再生装置に対して分割データの配信を制御する制御サーバとを含む配信システムにおけるデータ配信方法であって、一次配信サーバが、コンテンツデータを分割した分割データをエンコーディングし、該エンコーディングされた分割データを光ディスク再生装置で前記分割データごとに再生可能なデータ形式にマルチプレックスする段階と、光ディスク再生装置が、制御サーバに対してコンテンツデータを構成する分割データの問い合わせを行う段階と、制御サーバが、光ディスク再生装置より問い合わせを受け付けて、該当するマルチプレックスされた分割データを保持する相手先ピアの情報を問い合わせした光ディスク再生装置に通知する段階と、光ディスク再生装置が、制御サーバより通知された相手先ピアの情報に基づいて、相手先ピアとピアツーピア通信により該相手先ピアが保持するマルチプレックスされた分割データを取得する段階と、を含む。
【発明の効果】
【００１６】
以上のように構成された本発明によれば、映像データを分割した分割データを複数の一次配信サーバでエンコーディングすることで、エンコーディング処理を高速に行うことができ、かつ、エンコーディングされた分割データをマルチプレックスしたマシンがそのままピアツーピア通信のピアになることにより、エンコーディングしマルチプレックスした分割データを１つに集約させることなくネットワークへの送出が可能となる。また、分割データをそれぞれ保持する各ピアから、マルチプレックスされた分割データを取得することができるので、分割データ（映像データ）を配信する個々のマシンにかかる負荷を分散させることができる。
【図面の簡単な説明】
【００１７】
【図１】本実施形態のデータ配信システムの概略構成を例示する図である。
【図２】本実施形態のプレイヤの機能構成を概略的に例示する図である。
【図３】本実施形態のデータ配信システムの処理内容を示すフローチャートである。
【図４】本実施形態のデータ配信システムの処理内容を示すフローチャートである。
【図５】本実施形態のデータ配信システムの処理内容を示すフローチャートである。
【図６】本実施形態のデータ配信システムの処理内容を示すフローチャートである。
【図７】本実施形態のデータ配信システムの処理内容を示すフローチャートである。
【図８】本実施形態のデータ配信システムの処理内容を示すフローチャートである。
【発明を実施するための形態】
【００１８】
以下、本発明を実施するための好適な実施形態を、図面を参照しながら説明する。なお、各実施形態では、光ディスク再生装置としてブルーレイディスクプレイヤ（ＢＤプレイヤ）、メディアとしてブルーレイディスク（ＢＤ）、およびコンテンツデータとして映像データを例に挙げて説明する。また、本実施形態のシステムにおいて、ＢＤプレイヤが２つ存在する場合を例に挙げて説明するが、ＢＤプレイヤの数は２つに限られない。
【００１９】
図１は、本発明の実施形態のデータ配信システム１の概略構成を例示する図である。
【００２０】
データ配信システム１は、図１に示すとおり、ＢＤプレイヤ１０Ａ，１０Ｂと、ルータ２０Ａ，２０Ｂと、一次配信サーバ群３０と、制御サーバ４０と、外部ＩＰ通知サーバ（接続状態問い合わせサーバ）５０と、メタデータサーバ６０とを含んで構成され、それぞれ通信ネットワークを介して相互に通信可能に接続されている。なお、一次配信サーバ群３０を構成する各一次配信サーバ３２、制御サーバ４０、外部ＩＰ通知サーバ５０、及びメタデータサーバ６０は、ハードウェアとして、例えば、ＣＰＵ、ＣＰＵにバス結合されたＲＯＭ、ＲＡＭ、記憶装置、入力装置、表示装置、および入出力インタフェースなど、通常のコンピュータ装置と同様のハードウェアを備える。これら各サーバ（装置）は、物理的には、専用化したシステム、あるいは汎用の情報処理装置のいずれであってもよい。
【００２１】
ＢＤプレイヤ１０Ａ（１０Ｂ）は、ＢＤ方式の映像データを再生可能な装置であって、ＢＤ１１に記憶された各種プログラムを実行することにより、後述する一次配信サーバ３２及び他のＢＤプレイヤ１０Ｂ（１０Ａ）で保持される映像データを構成する各分割データをピアツーピア（Ｐｅｅｒ  ｔｏ  Ｐｅｅｒ：Ｐ２Ｐ）通信により取得する機能を有する。また、ＢＤプレイヤ１０Ａ（１０Ｂ）は、一旦、取得した分割データを保持することができ、該保持する分割データを、他のＢＤプレイヤ１０Ｂ（１０Ａ）に対してピアツーピア通信により送受信する機能を有する。
【００２２】
ＢＤプレイヤ１０Ａ（１０Ｂ）は、ハードウェアとしては、例えば、ＢＤ１１に格納されたデータの読取機構１２と、ＢＤ１１に格納されたプログラムを実行する制御装置１３と、データ配信サーバ３２または他のＢＤプレイヤから取得（ダウンロード）した映像データなど各種データを記憶するＨＤＤやメモリなどの記憶装置１４と、ユーザ操作の入力を受け付ける入力装置１５と、外部機器と通信するための通信インタフェース１６とを備え、プログラムの実行結果や映像データを表示するディスプレイなどの表示装置１７と接続される。
【００２３】
なお、本実施形態において、ＢＤ１１に格納されたプログラムおよび該プログラムの実行内容は従来のものと異なるが、ＢＤ１１、ＢＤドライバ読取機構１２、制御装置１３、記憶装置１４、入力装置１５、通信インタフェース１６、および表示装置１７自体は、従来のＢＤプレイヤに搭載されるものと共通とすることができる。なお、ＢＤ１１に格納されたプログラムおよび該プログラムの実行内容については後述する。
【００２４】
ルータ２０Ａ（２０Ｂ）は、ネットワーク間を相互接続する通信機器である。ルータ２０ＡはＢＤプレイヤ１０Ａが接続されてローカルネットワークを構築し、ルータ２０ＢはＢＤプレイヤ１０Ｂが接続されてローカルネットワークを構築しており、そして、ルータ２０Ａとルータ２０Ｂとはグローバルネットワークを介して相互接続される。ルータ２０Ａ（２０Ｂ）自身は、一般的な、ＢＤプレイヤに接続され得るルータと同様のものを用いることができる。
【００２５】
一次配信サーバ群３０は、分散エンコーディングマルチプレックスコントローラ３１と、複数の一次配信サーバ３２とを含む。
【００２６】
分散エンコーディングマルチプレックスコントローラ３１は、映像データを分割して分割データ（クリップデータ）を作成する。また、分散エンコーディングマルチプレックスコントローラ３１は、各分割データを、それぞれエンコーディングする一次配信サーバ３２に割り当てて送信する。ここで、分割データは、映像データに含まれる映像部分のデータ部及び音声部分のデータ部をそれぞれ分割した映像部分のデータ（映像部分データ）及び音声部分のデータ（音声部分データ）を含むように構成され、分散エンコーディングマルチプレックスコントローラ３１は、分割データに含まれる映像部分のデータと音声部分のデータのうち、音声部分のデータを映像部分のデータより先に各一次配信サーバに送信するように制御する。
【００２７】
なお、分割データの作成方法は、例えば、分散エンコーディングマルチプレックスコントローラ３１が、映像データを構成する映像部分のデータ部と音声部分のデータ部とを、映像部分のデータ部の映像情報単位ＧＯＰ（Ｇｒｏｕｐ  ｏｆ  Ｐｉｃｔｕｒｅｓ）で区切られた各映像フレームの再生開始時間と音声部分のデータ部の音声情報単位ＡＵ（Ａｃｃｅｓｓ  Ｕｎｉｔ）で区切られた各音声フレームの再生開始時間とが一致する境界を検出し、該検出した境界ごとに映像データを分割して分割データを作成する方法を用いることができる。このように映像と音声との一致する境界で映像データを分割して分割データを作成することで、ＢＤプレイヤ１０Ａが映像データを再生する際に、画像と音声の開始位置がずれることが無いように、ＢＤプレイヤ１０Ａにおいて分割データを取得し、映像コンテンツを再生することができる。また、映像部分のデータ部の入力形式はＹＵＶ形式であり、各映像フレームあたりのデータバイト数は固定となるので、一定間隔の分割が可能になる。そこで、分割した各映像フレーム（映像部分データ）に新たなヘッダを付加して独立したＹＵＶデータとして再構築することにより、一次配信サーバ３２へ送信することができる。
【００２８】
一次配信サーバ３２は、分散エンコーディングマルチプレックスコントローラ３１から送信される分割データを受信した場合、該受信した分割データをエンコーディングし、該エンコーディングした分割データをＢＤプレイヤ１０Ａ（１０Ｂ）で再生可能なデータ形式にマルチプレックス（Ｍｕｌｔｉｐｌｅｘ：映像と音声を多重化する処理）する機能（エンコーディング・マルチプレックス機能）を備える。また、一次配信サーバ３２は、該マルチプレックスされた分割データをＢＤプレイヤ１０Ａ（１０Ｂ）とピアツーピア通信により配信する機能（Ｐ２Ｐ機能）を備える。なお、一次配信サーバ３２は、エンコーディング・マルチプレックス機能と、Ｐ２Ｐ機能とを状況に応じて切り換えて実行することができ、このことにより、一次配信サーバ３２は、エンコーディングするデータが無い時、Ｐ２Ｐ機能に切り替えることで、エンコーディングしていないアイドル時間を効率的に使用することができ、システム全体の効率もアップすることができる。
【００２９】
また、一次配信サーバ３２は、該マルチプレックス処理された分割データを、ＢＤプレイヤ等に配信可能に記憶装置に保持する。ここで、「一次配信」とは、分割データをエンコーディングしてマルチプレックスしたマシンが分割データを配信することを指し、一次配信サーバ３２から、一旦、ＢＤプレイヤ等に配信され、ＢＤプレイヤから分割データが配信されることとを区別する概念である。
【００３０】
一次配信サーバ３２は、エンコーディングする際、例えば、まず音声部分データをメモリなどの高速Ｉ／Ｏが可能なストレージに格納し、音声データを格納し終えた後に音声部分データのエンコードを開始し、その後並行して映像部分データのエンコードも開始する。すなわち、分散エンコーディングマルチプレックスコントローラ３１より受信した分割データのデータ配列が、上述のように、音声部分データ、映像部分データの順となっていることで、データ量が少なくメモリ上に保持可能な音声部分データを一次配信サーバ３２のメモリ上に保持させ、データ量が多い映像部分データのファイルをＩ／Ｏしている間のＣＰＵパワーの空きを利用して音声部分データのエンコーディングを開始する。そのことにより、ＣＰＵパワーを有効に活用でき、エンコーディング処理の効率が大幅に良くなる。ただし、本実施形態の配信システム及び配信方法は、この音声部分データ、映像部分データの順に制限されず、必要に応じて適宜変更しても良い。
【００３１】
また、一次配信サーバ３２は、音声部分データと映像部分データのエンコード時に、タイムコードや各フレームあたりのバイト数など必要な情報を記録しておくことにより、マルチプレックス時の解析処理の負荷を軽減することもできる。
【００３２】
制御サーバ４０は、ＢＤプレイヤ１０Ａ（１０Ｂ）及び一次配信サーバ３２と接続されており、ＢＤプレイヤ１０Ａ（１０Ｂ）から取得対象の映像データを構成する分割データの問い合わせを受け付けて、該当するマルチプレックスされた分割データを保持する相手先ピアの情報を問い合わせしたＢＤプレイヤ１０Ａ（１０Ｂ）に通知する。相手先ピアは、複数の一次配信サーバ３２、及び制御サーバ４０と接続された他のＢＤプレイヤ１０Ｂ（１０Ａ）のいずれかとして選出される。なお、選出方法等は後述する。
【００３３】
外部ＩＰ通知サーバ（接続状態問い合わせサーバ）５０は、ネットワークを介して接続されたＢＤプレイヤ１０Ａ（１０Ｂ）に対して、これらのルータ２０Ａ（２０Ｂ）のグローバルネットワーク側のＩＰアドレス（外部ＩＰアドレス）及びの接続元ポートを通知する。具体的には、外部ＩＰ通知サーバ５０は、ＢＤプレイヤ１０Ａのローカルネットワーク内でのＩＰアドレス（内部ＩＰアドレス）をパラメータとして、接続状態問い合わせを受け付けると、該ＢＤプレイヤ１０Ａに対して、通信の際に経由したルータ２０Ａの外部ＩＰアドレスと接続元ポートの組を記録し、これら外部ＩＰアドレスと接続元ポートをＢＤプレイヤにレスポンスとして送信する。
【００３４】
メタデータサーバ６０は、視聴可能な映像（コンテンツ）のメタデータ、たとえば、各映像のリストデータを保持するとともに、各映像に関する分割データのメタデータの情報を保持する。メタデータサーバ６０は、ＢＤプレイヤ１０Ａ（１０Ｂ）からのリストデータの問い合わせを受け付けると、保持するリストデータをＢＤプレイヤ１０Ａ（１０Ｂ）に送信し、また、ＢＤプレイヤ１０Ａ（１０Ｂ）において選択された映像の分割データのメタデータの問い合わせを受け付けると、該当する分割データのメタデータをＢＤプレイヤ１０Ａ（１０Ｂ）に送信する。
【００３５】
ここで、リストデータは、例えば、各映像のタイトル名、権利者名、視聴期限、再生時間、金額、およびビットレートなどの付随情報を含むものである。また、分割データのメタデータは、例えば、映像データを分割した分割データ（クリップデータ）それぞれの、データサイズ（ｂｙｔｅ）、ＵＲＬ、再生時間（ｓ）、データ形式、ビットレート（ｂｐｓ）、および分割データの分割データ識別子を含む。この分割データ識別子は、分割データを識別するための情報であって、例えば、映像（コンテンツ）の各分割データに基づいて予め生成されるハッシュ値（分割データハッシュ値）である。分割データハッシュ値は、メタデータサーバ６０において、後述するＢＤプレイヤ１０Ａと同じように、ディスクＩＤと、タイトルＩＤと、分割データごとに付された分割ＩＤと、分割データ本体とを用いて生成される（分割データハッシュ値＝ハッシュ関数（グローバルＩＤ＋タイトルＩＤ＋分割ＩＤ＋分割データ本体））。なお、メタデータサーバ６０は、ＢＤプレイヤ１０Ａ，１０Ｂ及び一次配信サーバ３２と通信して、分割データハッシュ値を生成するためのディスクＩＤ等を適宜取得する機能を有するものとする。
【００３６】
ここで、ＢＤプレイヤ１０ＡがＢＤ１１に格納されたプログラムを実行した場合の各種処理機能について説明する。ＢＤプレイヤ１０Ａは、図２に示すように、接続設定把握手段１３１、ネットワーク通信制御手段（サーバ通信手段）１３２、映像データ取得手段１３３、及び画面表示手段１３４を含んで構成される。これらの各手段は、主に、制御装置１３が、ＢＤ１１に格納されるプログラムを実行し、各ハードウェアを制御することにより実現することができる。なお、ＢＤプレイヤ１０ＢがＢＤ１１を実行した場合も、ＢＤプレイヤ１０Ａと同様になる。
【００３７】
接続設定把握手段１３１は、外部ＩＰ通知サーバ５０と通信し、自ＢＤプレイヤ１０Ａのローカルネットワーク及びグローバルネットワークの接続状態を把握するものである。接続設定把握手段１３１は、ＢＤプレイヤ１０Ａのネットワークへの接続状態をチェックし、未接続状態であれば、画面表示手段１３４に対してメッセージを送り、ＢＤプレイヤ１０Ａに接続された表示装置１７の画面上にその旨を表示させる。また、接続設定把握手段１３１は、現在のＢＤプレイヤ１０Ａの内部ＩＰアドレスをチェックし、該内部ＩＰアドレスの値をパラメータとして、外部ＩＰ通知サーバ５０に接続する。
【００３８】
さらに、接続設定把握手段１３１は、外部ＩＰ通知サーバ５０よりルータ２０Ａを介して上記レスポンスを受信し、ＢＤプレイヤ識別子を生成する。このＢＤプレイヤ識別子は、制御サーバ４０において、ＢＤプレイヤ１０Ａを識別するための情報であって、例えば、ＢＤプレイヤのグローバルＩＰ等に基づいて生成されるハッシュ値（ＢＤプレイヤハッシュ値）である。ＢＤプレイヤハッシュ値は、レスポンスに含まれる外部ＩＰアドレスと接続元ポートの組と、内部ＩＰアドレスと、ランダム数値とを組み合わせた値から生成される（ＢＤプレイヤハッシュ値＝ハッシュ関数（グローバルＩＰ＋ポート＋ランダム数値＋ローカルＩＰ））。ここで、ランダム数値は、例えば、ＢＤプレイヤ１０Ａにドライブが２つあり、接続設定把握手段１３１が各ドライブで動く場合に区別するために用いられるものである。なお、ＢＤプレイヤハッシュ値は、上述の外部ＩＰアドレス等を組み合わせた値で生成される場合に制限されず、適宜組み合わせ対象を変更・削除したり、他の値を組み合わせたりしてもよい。
【００３９】
またさらに、接続設定把握手段１３１は、外部ＩＰ通知サーバ５０に対して接続要求を送信してから、該外部ＩＰ通知サーバ５０よりレスポンスを受信するまでの時刻を計測することができる。
【００４０】
ネットワーク通信制御手段１３２は、ＢＤプレイヤ１０Ａのネットワークを介した制御サーバ４０との通信を制御するものである。ネットワーク通信制御手段１３２は、制御サーバ４０に接続し、ＢＤプレイヤ１０Ａにおいて再生中のＢＤ１１のディスクＩＤ及びタイトルＩＤと、ＢＤプレイヤハッシュ値と、外部ＩＰアドレス及びポートの組と、接続設定把握手段１３１により計測された時刻の情報とをパラメータとして送信する。また、ネットワーク通信制御手段１３２は、制御サーバ４０との間の接続を切断する機能も有する。
【００４１】
さらに、ネットワーク通信制御手段１３２は、ＢＤプレイヤ１０Ａのローカルストレージ内に記憶している過去にダウンロードした映像（コンテンツ）の分割データを確認し、分割データごとに上記分割データ識別子（分割データハッシュ値）を生成する。
【００４２】
映像データ取得手段１３３は、一次配信サーバ３２及び他のＢＤプレイヤ１０Ｂと通信し、映像データの取得を制御するものである。映像データ取得手段１３３は、ＢＤプレイヤ１０Ａが制御サーバ４０との接続を維持した状態で、視聴可能な映像のリストデータをメタデータサーバ６０に問い合わせ、画面表示手段１３４にそのリストデータを表示させる機能を有する。すなわち、映像データ取得手段１３３は、ネットワーク通信を通じて、視聴可能な映像のリストデータの送信要求をメタデータサーバ６０に対して送信し、メタデータサーバ６０からリストデータをダウンロードして取得し、該リストデータを表示装置１７に表示させる。なお、送信要求には、例えば、ＢＤプレイヤ１０Ａが読み取るＢＤ１１のＩＤ情報を付加し、該ＩＤ情報に応じたリストデータをメタデータサーバからダウンロード可能にすることができる。視聴者（ユーザ）は、表示装置１７に表示されたリストデータのうち所望の映像コンテンツを入力装置１５によって選択することができる。
【００４３】
また、映像データ取得手段１３３は、上記ユーザの所望の映像の選択を受け付けると、ネットワーク通信を通じて、メタデータサーバ６０に対して、該当する映像のデータ（映像データ）の分割データのメタデータを取得する。
【００４４】
画面表示手段１３４は、映像データの取得状況や、各種通信状態を表示装置１７の画面に表示するものである。
【００４５】
以下、図３〜図７に示すフローチャートを参照して、データ配信システム１を用いて実施される本実施形態のデータ配信方法を説明する。なお、各図における各処理は、処理内容に矛盾を生じない範囲で任意に順番を変更して又は並列に実行することができる。
【００４６】
＜エンコーディング・マルチプレックスのフロー＞
図３は、一次配信サーバ群３０が、映像データを分割し、該分割した分割データそれぞれをエンコーディングし、かつ、マルチプレックスして配信するまでのフローチャートの一例を示す。
【００４７】
まず、分散エンコーディングマルチプレックスコントローラ３１は、映像データを分割して分割データを生成する（ステップＳ１００）。分割データは、映像データに含まれる映像部分のデータ部及び音声部分のデータ部をそれぞれ分割した映像部分のデータ（映像部分データ）及び音声部分のデータ（音声部分データ）を含むように構成して生成され、データ配列は、上述したように、音声部分データ、映像部分データの順とする。
【００４８】
次いで、分散エンコーディングマルチプレックスコントローラ３１は、各分割データを、それぞれエンコーディングする一次配信サーバ３２に割り当てて送信する（ステップＳ１０１）。分散エンコーディングマルチプレックスコントローラ３１は、音声部分データを映像部分データより先に各一次配信サーバ３２に対して送信する。なお、本実施形態において、上記の割り当て方法については特に制限されないが、例えば、各分割データのデータ量に応じて、処理速度の速い一次配信サーバ３２に優先して割り当てたり、ピアツーピア通信を行っていない一次配信サーバ３２を優先して割り当てたりすることができる。
【００４９】
次いで、分割データを受信した各一次配信サーバ３２は、受信した分割データのエンコーディング処理を行う（ステップＳ１０２）。エンコーディングする際、各一次配信サーバ３２は、例えば、まず音声部分データをメモリなどの高速Ｉ／Ｏが可能なストレージに格納し、音声データを格納し終えた後に音声部分データのエンコードを開始し、同時に映像部分データの格納とエンコードの開始をすることができる。
【００５０】
次いで、各一次配信サーバ３２は、エンコーディングした音声部分データと映像部分データとでマルチプレックス処理を行う（ステップＳ１０３）。一次配信サーバ３２は、該エンコーディングしてマルチプレックス処理された分割データを、ＢＤプレイヤ１０Ａ（１０Ｂ）等に配信可能に記憶装置に保持する。
【００５１】
＜接続ＩＰ確認のフロー＞
図４は、ＢＤプレイヤ１０Ａが、ＢＤ１１を読み込んで、外部ＩＰ通知サーバ５０と通信する場合のフローチャートの一例を示す。
【００５２】
まず、接続設定把握手段１３１は、ＢＤプレイヤ１０Ａのネットワークへの接続状態をチェックする（ステップＳ２００）。接続設定把握手段１３１は、ＢＤプレイヤ１０Ａのネットワークへの接続状態が未接続状態であれば、画面表示手段１３４に対してメッセージを送り、ＢＤプレイヤ１０Ａに接続された表示装置１７の画面上にその旨を表示させる。
【００５３】
ＢＤプレイヤ１０Ａのネットワークへの接続状態が接続されている状態であれば、次いで、接続設定把握手段１３１は、現在のＢＤプレイヤ１０Ａのローカルネットワーク内でのＩＰアドレス（内部ＩＰアドレス）をチェックし、該内部ＩＰアドレスの値をパラメータとして、外部ＩＰ通知サーバ５０に接続する（ステップＳ２０１）。例えば、ＢＤプレイヤ１０Ａの内部ＩＰアドレスは「１９２．１６８．１０．ＸＸＸ」である。
【００５４】
外部ＩＰ通知サーバ５０は、送信された上記パラメータと、通信の際に経由したルータ２０Ａのグローバルネットワーク側のＩＰアドレス（外部ＩＰアドレス）と接続元ポートの組を記録し、これら外部ＩＰアドレスと接続元ポートをＢＤプレイヤ１０Ａにレスポンスとして送信する（ステップＳ２０２）。例えば、内部ＩＰアドレスは「１９２．１６８．１０．ＸＸＸ＆」であり、外部ＩＰアドレスは「２１０．１１１．２２２．ＸＸＸ＆」であり、接続元ポートは「５５５５」である。
【００５５】
＜ＢＤプレイヤ情報通知のフロー＞
図５は、ＢＤプレイヤ１０Ａが、制御サーバ４０と通信し、接続を維持する場合のフローチャートの一例を示す。
【００５６】
接続設定把握手段１３１は、外部ＩＰ通知サーバ５０よりルータ２０Ａを介して上記レスポンスを受信して、上述のＢＤプレイヤハッシュ値を生成する（ステップＳ３００）。接続設定把握手段１３１は、生成したＢＤプレイヤハッシュ値（ハッシュ値Ａ）と、外部ＩＰアドレス及び接続元ボートの組とを合わせて記憶装置（ローカルストレージ）に登録する。
【００５７】
接続設定把握手段１３１は、外部ＩＰ通知サーバ５０に対して接続要求を送信してから、該外部ＩＰ通知サーバ５０よりレスポンスを受信するまでの時刻ｔ（ｓ）を計測する（ステップＳ３０１）。
【００５８】
次いで、ネットワーク通信制御手段１３２は、制御サーバ４０に接続し、ＢＤプレイヤ１０Ａにおいて再生中のＢＤ１１のディスクＩＤ及びタイトルＩＤと、ＢＤプレイヤハッシュ値と、外部ＩＰアドレス及びポートの組と、上記計測した時刻の情報とをパラメータとして送信する（ステップＳ３０２）。
【００５９】
制御サーバ４０は、送信されたパラメータのうちＢＤプレイヤハッシュ値が制御サーバ４０の記憶装置に登録されているかを確認し、未登録の場合には、外部ＩＰアドレスと計測結果とを合わせて記憶装置に登録する（ステップＳ３０３）。
【００６０】
制御サーバ４０は、ネットワーク通信制御手段１３２による切断指示が無い限り、ＢＤプレイヤ１０Ａとの接続を維持する（ステップＳ３０４）。この接続を維持することにより、制御サーバ４０とＢＤプレイヤ１０Ａとが相互に情報を送受信できる状態を保つことができる。
＜ハッシュ値リスト通知のフロー＞
図６は、ＢＤプレイヤ１０Ａが、制御サーバ４０と通信し、ＢＤプレイヤ１０Ａの記憶装置に保持する情報を制御サーバ４０に通知する場合のフローチャートの一例を示す。
【００６１】
ネットワーク通信制御手段１３２は、ＢＤプレイヤ１０Ａの記憶装置内に記憶している過去にダウンロードした映像（コンテンツ）の分割データを確認し、分割データごとに、上述の分割データハッシュ値を生成する（ステップＳ４００）。ネットワーク通信制御手段１３２は、この生成した各分割データハッシュ値（ハッシュ値Ｂ）をＢＤプレイヤ１０Ａ内の記憶装置に記憶する。
【００６２】
次いで、ネットワーク通信制御手段１３２は、生成した分割データハッシュ値のリストを、制御サーバ４０に送信する（ステップＳ４０１）。例えば、分割データ生成したハッシュ値のリストは、「０ｘ１２９３８１９９２９９９ａｆｂ９０３９９９９．．．」、「０ｘ１９４８３９０２９９９ａｆｂ９０３９９９９．．．」、「０ｘ２２８９３８１９９２９９９ａｆｂ９０３９９９９．．．」・・・からなるリストである。
【００６３】
制御サーバ４０は、送信された分割データハッシュ値のリストを、ＢＤプレイヤハッシュ値をキーとして記憶装置に登録する（ステップＳ４０２）。具体的には、ＢＤプレイヤ１０Ａから上記分割データハッシュ値のリストを受信したのであれば、ＢＤプレイヤ１０ＡのＢＤプレイヤハッシュ値に紐付けて、各分割データハッシュ値を登録する。このように登録しておくことで、制御サーバ４０は、分割データハッシュ値に対応する分割データがＢＤプレイヤ１０Ａに保持されていることを判断することができる。
【００６４】
なお、エンコーディング済みの分割データを保持する各一次配信サーバ３２も、ＢＤプレイヤ１０Ａと同様に、ステップＳ４００〜ステップＳ４０２の処理を行い、制御サーバ４０との間の接続状態が維持される。また、一次配信サーバ３２は、分割データの一次配信元として制御サーバ４０との間で常時接続を前提とする。本実施形態において、ＢＤプレイヤ１０Ａ，１０Ｂ及び一次配信サーバ３２は、制御サーバ４０との接続を維持している状態をもって「ピア」と呼称することとする。
【００６５】
＜ハッシュ値問い合わせのフロー＞
図７は、ＢＤプレイヤ１０Ａが、メタデータサーバ６０及び制御サーバ４０と通信し、所望の分割データを有する相手先ピアの情報を取得する場合のフローチャートの一例を示す。
【００６６】
ＢＤプレイヤ１０Ａが制御サーバ４０との接続を維持した状態で、映像データ取得手段１３３は、視聴可能な映像のリストデータをメタデータサーバ６０に問い合わせ、画面表示手段１３４にそのリストデータを表示装置１７に表示させる（ステップＳ５００）。すなわち、ＢＤプレイヤ１０Ａにおいて視聴可能な映像コンテンツのリストを、視聴者に対して選択可能に表示させる。
【００６７】
視聴者がリストのうちから１つの映像を選択すると、映像データ取得手段１３３は、更に、その選択された映像のメタデータを、メタデータサーバ６０に対して問い合わせる（ステップＳ５０１）。映像のメタデータは、上述したように、該映像に関する映像データを分割した分割データそれぞれの、データサイズ（ｂｙｔｅ）、ＵＲＬ、再生時間（ｓ）、データ形式、ビットレート（ｂｐｓ）、および分割データの分割データハッシュ値を含む。
【００６８】
映像データ取得手段１３３は、メタデータサーバ６０から取得した分割データの各分割データハッシュ値をパラメータとして、制御サーバ４０に問い合わせる（ステップＳ５０２）。
【００６９】
制御サーバ４０は、問い合わせのあった分割データハッシュ値に対応する相手先ピア候補を記憶装置から検出する（ステップＳ５０３）。
【００７０】
分割データハッシュ値を有する他のＢＤプレイヤがある場合（ステップＳ５０４：Ｙｅｓ）、制御サーバ４０は、該他のＢＤプレイヤを相手先ピアとして選出する（ステップＳ５０５）。例えば、ＢＤプレイヤ１０Ｂが、該当する分割データハッシュ値に対応する分割データを有している場合は、該ＢＤプレイヤ１０Ｂを相手先ピアとして選出する。なお、選出する際、応答速度の速いピアを選出することが望ましく、応答速度の速いピアの選出方法は、例えば、ステップＳ３０１の処理で算出した計測結果に基づいて行ってもよい。また、もし、選出されたピアが、後述するピア同士のデータ転送を行っている状態の場合、上記の応答速度の順に次のピアを選出することができる。また、選出方法は、上記の応答速度の順に制限されず、状況等に合わせて自由に設定することができる。
【００７１】
一方、分割データハッシュ値を有する他のＢＤプレイヤが無い場合（ステップＳ５０４：Ｎｏ）、制御サーバ４０は、該当する一次配信サーバ３２を相手先ピアとして選出する（ステップＳ５０６）。
【００７２】
次いで、制御サーバ４０は、ステップＳ５０５又はステップＳ５０６の処理で選出した相手先ピアの情報（外部ＩＰアドレスと接続元ポートの組の情報）を、問い合わせしてきたＢＤプレイヤ１０Ａに送信する（ステップＳ５０７）。例えば、相手先ピアとしてＢＤプレイヤ１０Ｂが選出された場合、該ＢＤプレイヤ１０Ｂの外部ＩＰアドレスと接続元ポートの組の情報をＢＤプレイヤ１０Ａに送信する。
【００７３】
また、制御サーバ４０は、選出した相手先ピアに対しても、問い合わせしてきたＢＤプレイヤ１０Ａの外部ＩＰアドレスと接続元ポートの組の情報を送信する（ステップＳ５０８）。例えば、相手先ピアとしてＢＤプレイヤ１０Ｂが選出された場合、該ＢＤプレイヤ１０Ｂに対しても、問い合わせしてきたＢＤプレイヤ１０Ａの外部ＩＰアドレスと接続元ポートの組の情報（外部ＩＰアドレスとポートの組の情報）を送信する。
【００７４】
＜ピア間通信のフロー＞
図８は、ＢＤプレイヤ１０Ａと相手先ピアであるＢＤプレイヤ１０Ｂとが、ピアツーピア通信する場合のフローチャートの一例を示す。なお、以下のステップＳ６００〜Ｓ６０５の処理は、従来のＵＤＰホールパンチング（ＵＤＰＨｏｌｅＰｕｎｃｈｉｎｇ）技術を用いることで、それぞれのローカルネットワーク内にあるＢＤプレイヤ１０ＡとＢＤプレイヤ１０Ｂ、及び制御サーバ４０によりＵＤＰ通信を行い、ＢＤプレイヤ１０ＡとＢＤプレイヤ１０Ｂとの間でデータの送受信が可能になる。
【００７５】
制御サーバ４０において選出された相手先ピア（例えば、ＢＤプレイヤ１０Ｂ）は、ＢＤプレイヤ１０Ａ側の外部ＩＰアドレスと接続元ポートに対して、ＵＤＰプロトコルを用いて通信する（ステップＳ６００）。
【００７６】
ＢＤプレイヤ１０Ｂは、ＢＤプレイヤ１０Ａ側にＵＤＰによる通信を試行した後、制御サーバ４０に対してＵＤＰ通信を行った旨を通知する（ステップＳ６０１）。
【００７７】
制御サーバ４０は、ＢＤプレイヤ１０Ｂからの通信があった旨を通知する（ステップＳ６０２）。
【００７８】
ＢＤプレイヤ１０Ａは、制御サーバ４０からＢＤプレイヤ１０ＢのＵＤＰ通信の通知を受け取った後、そのＢＤプレイヤ１０Ｂに対してＵＤＰ通信を試行する（ステップＳ６０３）。
【００７９】
ＢＤプレイヤ１０Ｂは、相互接続が可能になった後、ＢＤプレイヤ１０Ａに対して分割データを送信する（ステップＳ６０４）。
【００８０】
ＢＤプレイヤ１０Ａは、分割データを受信し、データの転送が終了したら制御サーバ４０に対してその旨を通知する（ステップＳ６０５）。
【００８１】
ステップＳ６００〜ステップＳ６０５の処理を分割データごとに行うことで、ＢＤプレイヤ１０Ａは、所望の映像データを構成するエンコーディングしてマルチプレックスされた分割データを全て取得することができる。なお、ＢＤプレイヤ１０Ａは、小分けにされたエンコーディングしてマルチプレックスされた分割データをシリアルに順次取得しても良いし、ある一定の数、並列に取得しても良い。
【００８２】
＜変形例＞
以上のように本発明の好適な実施形態について説明したが、本発明は、以上の実施形態に限定されるべきものではなく、特許請求の範囲に表現された思想および範囲を逸脱することなく、種々の変形、追加、および省略が当業者によって可能である。
【００８３】
例えば、上記実施形態では、各一次配信サーバ３２は自身でエンコーディング・マルチプレックス処理した分割データを配信するものを例に挙げて説明したが、本発明はこれに限られず、一次配信サーバ３２は、マルチプレックスされた分割データを複製し、該複製した分割データを他の一次配信サーバ３２に送信するようにしてもよい。この場合、複数の一次配信サーバ３２が同一の分割データを保持することができることにより、一つの分割データの配信源が増え、ネットワーク上において、複数のＢＤプレイヤからの同一の分割データの取得要求が集中してもその負荷を分散させることができる。また、ネットワーク上での分割データの発見確率や発見速度が高まり高速な配信もできる。
【００８４】
また、上記実施形態では、光ディスク再生装置としてＢＤプレイヤ、およびメディアとしてＢＤを例に挙げて説明したが、本発明はこれに限られず、例えば、ＤＶＤディスクプレイヤ、およびＤＶＤに対しても適用することができる。
【００８５】
さらに、上記実施形態では、ＢＤプレイヤが２つ存在する場合を例にとって説明したが、本発明は２つに限られず、少なくとも１つ以上あればよい。
【００８６】
さらに、上記実施形態では、ＢＤ１１には、用途に応じた各処理（各手段）を実行するプログラムが記憶されているが、これら各処理は、そのいくつかを一纏めにして構成されていてもよいし、一つの処理をさらに複数の処理に分割して構成されていてもよい。
【００８７】
さらに、ＢＤ１１ではなく、ＢＤプレイヤ１０Ａ（１０Ｂ）本体に各処理を規定したプログラムを予め記憶させておくこともできる。
【符号の説明】
【００８８】
１…データ配信システム、１０Ａ，１０Ｂ…ブルーレイディスクプレイヤ（ＢＤプレイヤ）、１１…ブルーレイディスク（ＢＤ）、１２…ＢＤドライバ読取機構、１３…制御装置、１４…記憶装置、１５…入力装置、１６…通信インタフェース、１７…表示装置、２０Ａ，２０Ｂ…ルータ、３０…一次配信サーバ群、３１…分散エンコーディングマルチプレックスコントローラ、３２…一次配信サーバ、４０…制御サーバ、５０…外部ＩＰ通知サーバ、６０…メタデータサーバ、１３１…接続設定把握手段、１３２…ネットワーク通信制御手段、１３３…映像データ取得手段、１３４…画面表示手段。
【図１】
2012023457.tif 000003
【図２】
2012023457.tif 000004
【図３】
2012023457.tif 000005
【図４】
2012023457.tif 000006
【図５】
2012023457.tif 000007
【図６】
2012023457.tif 000008
【図７】
2012023457.tif 000009
【図８】
2012023457.tif 000010