(57)【要約】サーバ装置１００は、レート出力手段１０２で算出されたメディアレートのメディアデータを、レート出力手段１０２で算出された送信レートでクライアント装置２００へ送信する。レート出力手段１０２では、メディアレートと送信レートとを変数とする目的関数であって、ユーザ体感品質と配信コストとの組み合わせを評価する評価値を上記変数と対応するように定める目的関数と、所定の制約条件とを用いて、評価値が最も高いメディアレートと送信レートとの組み合わせを算出する。クライアント装置２００は、サーバ装置１００から送られてきたメディアデータに基づいて、コンテンツを再生する。
2013094118.tif 000002
【特許請求の範囲】
【請求項１】
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムであって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段と、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段と、
を備えるコンテンツ配信システム。
【請求項２】
請求項１記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディアレートが高くなるほど、前記配信コストが高くなるように設定されたコンテンツ配信システム。
【請求項３】
請求項１または２記載のコンテンツ配信システムにおいて、
前記目的関数は、前記送信レートが低くなるほど、前記配信コストが低くなるように設定されたコンテンツ配信システム。
【請求項４】
請求項１乃至３の何れか１つに記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディア再生バッファに蓄積されている未再生のメディアデータによってコンテンツを再生可能な時間である残余再生時間が長いほど、前記配信コストが高くなるように設定されたコンテンツ配信システム。
【請求項５】
請求項１乃至４の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置の負荷が高いほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【請求項６】
請求項１乃至５の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置と前記クライアント装置を接続するネットワークの混雑度が高いほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【請求項７】
請求項１乃至６の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置と前記クライアント装置とを接続するネットワークの混雑度が高いと予測される時間帯ほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【請求項８】
クライアント装置と通信可能に構成されたサーバ装置であって、
コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段と、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段と、
を備えるサーバ装置。
【請求項９】
サーバ装置と通信可能に構成されたクライアント装置であって、
前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を該変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段を備えるクライアント装置。
【請求項１０】
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムに適用される配信方法であって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力し、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信する配信方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コンテンツを配信するコンテンツ配信システムに関し、特にユーザの体感品質および配信にかかるコストを考慮して最適なコンテンツ配信を可能とするコンテンツ配信システムに関する。
【背景技術】
【０００２】
ネットワークのブロードバンド化、携帯電話やＰＣなど情報端末の高性能化に伴い、ネットワークを介して大容量の映像や音楽などのコンテンツの配信サービスが増加している。【０００３】
映像配信サービスでは、例えばＳＤ（Ｓｔａｎｄａｒｄ  Ｄｅｆｉｎｉｔｉｏｎ）画質の映像を送信する場合、ＭＰＥＧ−２（Ｍｏｔｉｏｎ  Ｐｉｃｔｕｒｅ  Ｅｘｐｅｒｔ  Ｇｒｏｕｐ−２）で約６Ｍｂｐｓ（１秒間に６メガビットのデータ量）の大容量のデータ通信が必要となる。通信時にデータロスや通信遅延が発生すると、映像の乱れや映像到着遅延による映像再生の停止が発生するなど、ユーザの体感品質（ユーザ体感品質）が悪化する。このため、従来の映像配信サービスは、通信事業者がＱｏＳ（Ｑｕａｌｉｔｙ  ｏｆ  Ｓｅｒｖｉｃｅ）を保証するために大容量の帯域を確保し、途中でデータロスが発生しないようにして映像配信サービスを行っていた。【０００４】
しかし、近年のインターネットのブロードバンド化により、インターネットなどＱｏＳが保証されないネットワークを介した映像配信サービスが増加している。インターネットでは他のユーザの通信により利用できるネットワーク帯域が変動するという特性がある。さらに、ＬＴＥ（Ｌｏｎｇ  Ｔｅｒｍ  Ｅｖｏｌｕｔｉｏｎ）などによるモバイルネットワークの高速化やスマートフォンの普及による端末の高性能化が顕著であり、モバイルネットワークを利用した映像視聴へのニーズが高まってきている。モバイルネットワークでは他のユーザの通信に加え、ユーザの移動による基地局とユーザ端末間の電波強度の変動や、他の無線機器の影響により、より大きくネットワーク帯域が変動するという特性がある。【０００５】
このようなＱｏＳが保証されないネットワークを介してメディアデータ（コンテンツを表すデータ）を送信するための配信システムが、特許文献１に記載されている。【０００６】
ＱｏＳが保証されないネットワークを介してメディアデータを送信する場合、ネットワークの利用できる帯域（可用帯域）が小さくなると、メディアデータを送り切れないため、パケットロスによるメディアデータの乱れや、パケットの到着遅延によるメディアデータの再生停止などが発生する。メディアデータの乱れや、メディアデータの再生停止は、ユーザに不満を与え、ユーザ体感品質を低下させる。【０００７】
このような問題に対応するため、特許文献１に記載されている技術では、サーバ装置からクライアント装置へメディアデータを送信する際の送信レート及びメディアレートを変数とし、これらの変数とユーザ体感品質とを対応付ける目的関数と、所定の制約条件とに基づいてユーザ体感品質を最も高くする送信レートとメディアレートとの組を算出するようにしている。より具体的には、制約条件を満たすメディアレートと送信レートとの組のうちの、目的関数の値を最も小さくするメディアレートと送信レートとの組み合わせを算出するようにしている。そして、算出したメディアレートのメディアデータを、算出した送信レートでサーバ装置からクライアント装置へ送信するようにしている。ここで、送信レートは、単位時間あたりに送信するメディアデータのデータ量であり、メディアレートは、コンテンツを単位時間だけ等速再生するために必要になるメディアデータのデータ量である。【０００８】
上記した目的関数は、送信レートが低くなるほど、また、メディアレートが高くなるほど、値が小さくなる。また、上記した制約条件は、送信レートが可用帯域を超えないといった制限や、メディアレートは予め定められている複数のメディアレートの何れかにするといった条件などを含んでいる。【０００９】
送信レートが低くなるほど、目的関数の値が小さくなるようにすることにより、低い送信レートが優先的に選択され、ネットワークにおいて輻輳が発生する確率を低くすることができるので、パケットロスの発生を抑止できる。また、メディアレートが高くなるほど、目的関数の値が小さくなるようにすることにより、高いメディアレートが優先的に選択されるので、コンテンツの質を高めることができる。このように、特許文献１に記載されている技術によれば、ユーザ体感品質を高いものにすることができる。
【先行技術文献】
【特許文献】
【００１０】
【特許文献１】ＷＯ２０１１／０１８８６８
【発明の概要】
【発明が解決しようとする課題】
【００１１】
上述した特許文献１に記載されている技術によれば、ユーザ体感品質を高いものにすることができる。しかし、特許文献１に記載されている技術は、ユーザ体感品質を可能な限り高くすることができる送信レートとメディアレートとの組（制約条件を満たし、且つ、目的関数の値を最小にする送信レートとメディアレートとの組）を選択しているだけであるので、コンテンツを配信するためのコスト（配信コスト）を適切なものにすることができないという問題がある。【００１２】
例えば、ストリーミングによりコンテンツを再生する場合において、ネットワークのトラフィック等が変動してもコンテンツを途切れなく連続して再生するためには、所定時間分の未再生のメディアデータをクライアント装置に蓄積しておく必要がある。一方、クライアント装置のユーザは、自由にコンテンツの視聴をやめることができ、コンテンツの途中で視聴をやめた場合には、クライアント装置に蓄積されている未再生のメディアデータは破棄される。つまり、ユーザがコンテンツの途中で視聴をやめた場合は無駄なメディアデータを配信するために配信コストをかけたことになる。ここで、特許文献１に記載されている技術では、メディアレートが高いメディアデータを優先的にサーバ装置からクライアント装置へ送信しており、クライアント装置に蓄積される未再生のメディアデータのデータ量が多くなるので、ユーザがコンテンツの途中でその視聴をやめた場合、多くの無駄なメディアデータを配信するために多くの配信コストを使ってしまったことになる。【００１３】
[発明の目的]
そこで、本発明の目的は、ユーザ体感品質を高くすると、コンテンツを配信するための配信コストを適切なものにすることができないという課題を解決した配信システムを提供することにある。
【課題を解決するための手段】
【００１４】
本発明にかかるコンテンツ配信システムは、
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムであって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段と、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段と、
を備える。【００１５】
本発明にかかるサーバ装置は、
クライアント装置と通信可能に構成されたサーバ装置であって、
コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段と、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段と、
を備える。【００１６】
本発明に係るクライアント装置は、
サーバ装置と通信可能に構成されたクライアント装置であって、
前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段を備えるクライアント装置。【００１７】
本発明に係る配信方法は、
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムに適用される配信方法であって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力し、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信する。
【発明の効果】
【００１８】
本発明によれば、ユーザ体感品質を高め、且つ配信コストを抑えることができるという効果を得ることができる。
【図面の簡単な説明】
【００１９】
【図１】本発明の第１の実施の形態に係るコンテンツ配信システムの概略構成を示すブロック図である。
【図２】本発明の第１の実施の形態に係るコンテンツ配信システムの機能を示すブロック図である。
【図３】本発明の第１の実施の形態におけるレート出力手段１０２の処理例を示すフローチャートである。
【図４】本発明の第２の実施の形態に係るコンテンツ配信システムの機能を示すブロック図である。
【図５】本発明の第３の実施の形態に係るコンテンツ配信システムの概略構成を示すブロック図である。
【図６】本発明の第３の実施の形態に係るコンテンツ配信システムの機能を示すブロック図である。
【図７】本発明の第４の実施の形態に係るコンテンツ配信システムの機能を示すブロック図である。
【発明を実施するための形態】
【００２０】
以下、本発明の実施の形態について図面を参照して詳細に説明する。
【００２１】
[本発明の第１の実施の形態]
図１に示したように、本発明の第１の実施の形態に係るコンテンツ配信システムは、サーバ装置１００と、クライアント装置２００と、を含む。サーバ装置１００およびクライアント装置２００は、ネットワークＮＷ（例えばインターネットやキャリアネットワーク網、モバイル網など）を介して互いに通信可能に接続されている。
【００２２】
サーバ装置１００は、図示しない中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ
Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）及び記憶装置（メモリ及びハードディスク駆動装置（ＨＤＤ：Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ））を備える。サーバ装置１００は、記憶装置に記憶されているプログラムをＣＰＵが実行することにより、後述する機能を実現するように構成されている。
【００２３】
クライアント装置２００は、パーソナルコンピュータである。なお、クライアント装置２００は、携帯電話機、ＰＨＳ（Ｐｅｒｓｏｎａｌ  Ｈａｎｄｙｐｈｏｎｅ  Ｓｙｓｔｅｍ）、ＰＤＡ（Ｐｅｒｓｏｎａｌ  Ｄｉｇｉｔａｌ  Ａｓｓｉｓｔａｎｔ）、スマートフォン、タブレット端末、テレビ受像機、セット・トップ・ボックス、ゲーム機、または、カーナビゲーション装置等であってもよい。
【００２４】
クライアント装置２００は、図示しない中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）及び記憶装置（メモリ）、入力装置（例えば、キーボード、マウス、タッチパネル等）および出力装置（例えば、ディスプレイ及びスピーカ等）を備える。クライアント装置２００は、記憶装置に記憶されているプログラムをＣＰＵが実行することにより、後述する機能を実現するように構成されている。
【００２５】
図２は、上記のように構成された配信システムの機能を表すブロック図である。この機能は、サーバ装置１００のＣＰＵが後述する図３に示したフローチャートにより表されるプログラム等を実行するとともに、クライアント装置２００が所定のプログラムを実行することにより、実現される。
【００２６】
[サーバ装置１００の構成]
サーバ装置１００は、メディアデータ記憶手段１０１と、レート出力手段１０２と、メディアパケット生成手段１０３と、メディアデータ送信手段１０４とを含む。さらに、レート出力手段１０２は、最適レート算出手段１０２ａと、体感品質評価手段１０２ｂと、配信コスト評価手段１０２ｃとを含む。
【００２７】
サーバ装置１００が有する手段は、それぞれ次のように動作する。
【００２８】
メディアデータ記憶手段１０１は、１つまたは複数のメディアデータを記憶している。メディアデータは、コンテンツ（１つまたは複数の映像データ、音声データ、字幕データなどのメディアを含む）を符号化したものである。通常、それぞれのメディアは、データ量を圧縮するために映像圧縮手法や音声圧縮手法により圧縮され、符号化されている。本実施の形態では、１つのコンテンツに対して、メディアレートが異なる複数のメディアデータが記録されている。ここで、メディアレートとは、符号化されたコンテンツの単位時間あたりのデータ量（データサイズ、例えば、バイト数やビット数）である。別の言い方をすれば、メディアレートは、コンテンツを単位時間だけ等速再生（１倍速にて再生）するために必要になるメディアデータのデータ量である。
【００２９】
レート出力手段１０２は、サーバ装置１００の状態、クライアント装置２００の状態、および、サーバ装置１００とクライアント装置２００を結ぶネットワークＮＷの状態などに応じた送信レートおよびメディアレートを出力する。送信レートとは、サーバ装置１００が単位時間（例えば１秒）あたりにクライアント装置２００に対して送信するデータ量（データサイズ、例えばバイト数）である。なお、レート出力手段１０２の詳細は後述する。
【００３０】
メディアパケット生成手段１０３は、クライアント装置２００から配信要求されたコンテンツに対応するメディアデータであって、レート出力手段１０２から出力されたメディアレートで符号化されているメディアデータを取得する。そして、取得したメディアデータをクライアント装置２００へ送信するために、メディアパケットを生成する。
【００３１】
メディアデータ送信手段１０４は、単位時間あたりに送信するデータ量がレート出力手段１０２から出力された送信レートと一致するように、メディアパケット生成手段１０３で生成されたメディアパケットをクライアント装置２００に対して出力する。本実施の形態では、３ＧＰＰで規定されている３ＧＰファイル形式やＩＳＯ／ＩＥＣで規定されているＭＰ４ファイル形式、ＡＶＩ形式などのコンテンツファイルをパケットに分割し、ＨＴＴＰ（Ｈｙｐｅｒｔｅｘｔ  Ｔｒａｎｓｆｅｒ  Ｐｒｏｔｏｃｏｌ）やＴＣＰ／ＩＰを用いて送信することを想定している。しかし、これに限られるものではなく、メディアパケットをＲＴＰ（Ｒｅａｌ−Ｔｉｍｅ  Ｔｒａｎｓｐｏｒｔ  Ｐｒｏｔｏｃｏｌ）やＵＤＰ／ＩＰで送信するなど、他の方法やプロトコルで生成し、送信するように構成されていても良い。
【００３２】
[クライアント装置２００の構成]
クライアント装置２００は、メディアデータ受信手段２０１と、メディア再生バッファ２０２と、メディアデータ再生手段２０３と、受信情報取得手段２０４と、再生速度取得手段２０５と、残余再生時間取得手段２０６とを含む。
【００３３】
クライアント装置２００が有する手段は、それぞれ次のように動作する。
【００３４】
メディアデータ受信手段２０１は、サーバ装置１００から送信されたメディアパケットを受信し、それに含まれているメディアデータをメディア再生バッファ２０２に記録する。
【００３５】
メディアデータ再生手段２０３は、メディア再生バッファ２０２に記録されているメディアデータを読み出して再生し、図示を省略した出力装置を介してユーザに提示する。また、メディアデータ再生手段２０３は、図示を省略した入力装置を介して入力される等速再生、スロー再生、２倍速再生、巻き戻しなどの再生速度に関する指示入力従って、再生速度を変更することもできる。
【００３６】
即ち、クライアント装置２００は、メディアデータ受信手段２０１で受信されたサーバ装置１００からのメディアデータをメディア再生バッファ２０２に記録しながら、メディア再生バッファ２０２に記録されている未再生のメディアデータをメディアデータ再生手段２０３で再生するように構成されているので、メディアデータを全てダウンロードする前にメディアデータを再生することが可能である。即ち、クライアント装置２００は、ストリーミング、プログレッシブダウンロードによるメディアデータの再生が可能である。ストリーミングやプログレッシブダウンロードによりメディアデータを再生している最中に、メディア再生バッファ２０２に未再生のメディアデータ（これから再生しようとしているメディアデータ）がなくなった場合は、メディアデータ再生手段２０３によるメディアデータの再生が停止してしまう。メディアデータの再生が停止してしまうと、ユーザが不快に感じ、ユーザ体感品質が劣化する。
【００３７】
受信情報取得手段２０４は、メディアデータ受信手段２０１が連続的に受信したメディアデータのデータ量を、上記メディアデータの受信時間で除算した値を受信情報としてサーバ装置１００へ送信する。例えば、メディアデータ受信手段２０１が「０．５秒」の間に、「０．５メガバイト」のメディアデータを連続的に受信し、その後、任意の時間だけメディアデータを受信できなくなったとすると、受信情報は、０．５メガバイト÷０．５秒＝１（メガバイト／秒）となる。なお、上記した受信情報の算出処理は、所定時間毎に行う。メディアデータ受信手段２０１では、ＴＣＰ／ＩＰでメディアデータを受信することを想定しているが、ＵＤＰ／ＩＰを利用することもできる。ＵＤＰ／ＩＰを利用する場合は、サーバ装置１００から送信されたメディアパケットが消失してメディアデータ受信手段２０１でメディアパケットを受信できないことがある。この場合、メディアパケットのロス率（パケットロスが発生する割合）も取得し、サーバ装置１００へ送信する。例えば、ＲＴＰを利用している場合は、ＲＴＰヘッダに含まれるシーケンス番号を基にロスしたメディアパケットを特定してパケットロスの割合を算出する。
【００３８】
再生速度取得手段２０５は、メディアデータ再生手段２０３で再生されているメディアデータの再生速度を取得してサーバ装置１００に送信する。再生速度とは、メディアデータ再生手段２０３において単位時間あたりに再生されるメディアデータのデータ量を、等速再生において単位時間あたりに再生されるデータ量との比に換算したものである。別の言い方をすれば、再生速度とは、メディアデータ再生手段２０３において単位時間あたりに再生されるメディアデータのデータ量を、等速再生において単位時間あたりに再生されるメディアデータのデータ量で除算した値である。たとえば、メディアデータで１秒分のデータを１秒で再生している場合は再生速度が「１」となり、ユーザが早送り、スロー再生、巻き戻しなどをせず、等倍で再生している場合に相当する。２倍の再生速度で早送り再生している場合は「２」、半分の速度でスロー再生している場合は「０．５」、等速で逆再生している場合は「−１」となる。
【００３９】
残余再生時間取得手段２０６は、メディア再生バッファ２０２に記憶されているメディアデータのうちの、まだ再生していない部分（未再生データ）に基づいて、メディアデータ再生手段２０３によりコンテンツを等速再生可能な時間（残余再生時間）を取得し、サーバ装置１００へ送信する。例えば、メディア再生バッファ２０２に、メディアデータの先頭から３０秒分のデータが記憶されており、メディアデータ再生手段２０３で２０秒分のデータを再生済みの場合、残余再生時間は１０秒（＝３０秒−２０秒）となる。
【００４０】
本実施の形態では、受信情報取得手段２０４、再生速度取得手段２０５および残余再生時間取得手段２０６は、ＨＴＴＰを利用してクライアント装置２００からサーバ装置１００へデータを送信することを想定しているが、ＲＴＰを利用している場合はＲＴＣＰ（ＲＴＰ  Ｃｏｎｔｒｏｌ  Ｐｒｏｔｏｃｏｌ）を使って送信してもよいし、その他のプロトコルを利用してもよい。
【００４１】
[第１の実施の形態の動作の説明]
次に、本実施の形態の動作について、図２のブロック図および図３のフローチャートを参照して詳細に説明する。
【００４２】
クライアント装置２００にて、ユーザが視聴したいコンテンツを選択し、クライアント装置２００からサーバ装置１００に対してメディアデータの配信要求を行うことで、メディアデータの配信が開始される。メディアデータの配信開始時、サーバ装置１００は、予め定められているメディアレートのメディアデータを、予め定められている送信レートで送信する。
【００４３】
メディアデータの配信が開始されると、レート出力手段１０２は、サーバ装置１００の状態、クライアント装置２００の状態、およびネットワークＮＷの状態を取得する（図３のステップＳ００１）。
【００４４】
[クライアント装置２００の状態]
本実施の形態では、クライアント装置２００の状態は、再生速度取得手段２０５から送信されたメディアデータの再生速度と、残余再生時間取得手段２０６から送信されたメディア再生バッファ２０２の残余再生時間とを含む。また、クライアント装置２００で再生できるメディアの種別やプロトコルや、クライアント装置２００のＣＰＵ負荷やメモリの空き容量などを含んでも良い。
【００４５】
クライアント装置２００内の再生速度取得手段２０５や残余再生時間取得手段２０６から送信されたクライアント装置２００の状態は、ネットワークＮＷを介してサーバ装置１００内のレート出力手段１０２に入力される。
【００４６】
なお、本実施の形態では、再生速度取得手段２０５からサーバ装置１００に対して再生速度を送信するようにしたが、クライアント装置２００のユーザによって入力された再生に関する指示内容（等速再生、スロー再生、巻き戻しなど）を送信するようにしてもよい。レート出力手段１０２では、クライアント装置２００から送られてきた指示内容に基づいて、現在の再生速度を推定することができる。例えば、指示内容が「等速再生」であれば、再生速度「１」と推定し、指示内容が「スロー再生」であれば、再生速度「０．５」と推定する。また、クライアント装置における早送り、スロー再生、巻き戻しなどのトリックプレイを許可しないように制限することで、再生速度を「１」に固定しても良い。このような場合、再生速度取得手段２０５は必要ではない。
【００４７】
また、本実施の形態では、残余再生時間取得手段２０６からサーバ装置１００に対して残余再生時間を送信するようにしているが、以下のようにすることにより、残余再生時間取得手段２０６から残余再生時間を送信しなくても、レート出力手段１０２で残余再生時間を推測することができる。
【００４８】
通常、メディアデータの再生開始時、メディア再生バッファ２０２に一定量のメディアデータが蓄積されるまで、メディアデータの再生は開始されない。今、例えば、再生を開始するためにメディア再生バッファ２０２に蓄積されている必要があるメディアデータのデータ量（初期バッファ量）をＢｉ（秒）、時間ｔの間にサーバ装置１００から送信されたメディアデータのデータ量をｄＭ（ｔ）（バイト）、上記メディアデータのメディアレートをｒＭ（ｔ）（バイト／秒）、上記時間ｔの間のクライアント装置２００における再生速度をｐ（ｔ）とすると、残余再生時間ｂｒ（ｔ）（秒）は、次式（１）に示すものとなる。但し、メディア再生バッファ２０２に初期バッファ量Ｂｉのメディアデータが蓄積されるまでは、再生速度ｐ（ｔ）＝０である。
【００４９】
ｂｒ（ｔ）＝∫（ｄＭ（ｔ）／ｒＭ（ｔ）−ｐ（ｔ））ｄｔ    …（１）
【００５０】
今、例えば、初期バッファ量Ｂｉを５秒、クライアント装置２００における再生速度ｐ（ｔ）を１とし、サーバ装置１００からクライアント装置２００に対して、メディアレートｒＭ（ｔ）が１Ｍｂｐｓ（１秒間に１メガビット（＝１２５キロバイト））のメディアデータを１０秒間で２メガバイト送信したとする。
【００５１】
この場合、送信レートは、２メガバイト÷１０秒＝０．２（メガバイト／秒）となるので、初期バッファ量Ｂｉ＝５秒分のメディアデータをメディア再生バッファ２０２に蓄積するために要する時間は、０．１２５（メガバイト／秒）×５（秒）÷０．２（メガバイト／秒）＝３．１２５（秒）となる。従って、残余再生時間ｂｒ（１０）は、次式（２）に示すように、９．１２５（秒）と計算される。
【００５２】
br(10)＝２（メガバイト）÷0.125（メガバイト／秒）−（10秒−3.125秒）
＝16（秒）−6.875（秒）
＝9.125（秒）                                          ……  （２）
【００５３】
また、クライアント装置２００のユーザが、メディアデータの再生を開始してから４秒間は等速で視聴し、その後、２倍速で視聴した場合には、残余再生時間ｂｒ（１０）は、次式（３）に示すように、3.125（秒）となる。
【００５４】
br＝２（メガバイト）÷0.125（メガバイト／秒）
−｛４秒＋（６秒−3.125秒）×２｝
＝16（秒）−9.75（秒）
＝6.25（秒）                                  ……  （３）
【００５５】
ここで、サーバ装置１００からクライアント装置２００へ送信済みのメディアデータのデータ量およびメディアレートは、サーバ装置１００で計測できる。従って、クライアント装置２００における再生速度ｐ（ｔ）をサーバ装置１００で把握できれば、残余再生時間取得手段２０６がなくても、レート出力手段１０２で残余再生時間を計算できる。特に、クライアント装置２００での早送り、スロー再生、巻き戻しなどのトリックプレイを許可しないように制限する場合は、再生速度ｐ（ｔ）を「１」に固定して残余再生時間ｂｒ（ｔ）を計算することができる。
【００５６】
[サーバ装置１００の状態]
サーバ装置１００の状態は、サーバ装置１００で同時に配信しているクライアント装置２００の数、ＣＰＵ負荷、メモリの空き容量、サーバ装置１００から送信している全ての通信量、メディアデータ記憶手段１０１からのメディアデータの読み出しにかかっているデータ転送量などを含んでも良い。これらの情報は、周知の技術で取得することができる。
【００５７】
[ネットワークＮＷの状態]
ネットワークＮＷの状態は、サーバ装置１００からクライアント装置２００へのメディアデータ送信に利用できる可用帯域の帯域幅（単に可用帯域と記す場合もある）、ネットワークでパケットロスしたため、クライアント装置２００に届かなかったパケットの割合（パケットロス率）を含む。また、ネットワーク全体の混雑の割合などを含んでも良い。
【００５８】
本実施の形態では、受信情報取得手段２０４から送られてきた受信情報（メディアデータ受信手段２０１が連続的に受信したメディアデータのデータ量を、上記メディアデータの受信時間で除算した値）を可用帯域幅とすることを想定しているが、次のようにすることもできる。
【００５９】
パケットロス率が想定できる場合やパケットロスがないことが分かる場合は、サーバ装置１００のメディアデータ送信手段１０４で送出したデータ量からパケットロス分のデータ量を減算することで可用帯域を算出でき、受信情報取得手段２０４を不要とすることもできる。特にＴＣＰ／ＩＰを使ってメディアデータを送出する場合は、ＴＣＰ／ＩＰの特性によりロスしたパケットは再送され、パケットロスは発生しないため、送信データ量から可用帯域が容易に測定できる。このような場合は受信情報取得手段２０４からの通信は不要となる。
【００６０】
また、メディアデータと異なるプローブデータをクライアント装置２００へ送信することにより可用帯域幅を取得するように構成しても良い。このような方法として例えば、ＰａｔｈＬｏａｄ、ｐａｔｈＣｈｉｒｐなどのパケットトレイン推定法が知られており、受信情報取得手段２０４を用いず、パケットトレイン推定法により可用帯域を算出しても良い。
【００６１】
以上がステップＳ００１で行う処理である。
【００６２】
ステップＳ００１の処理が完了すると、レート出力手段１０２は、サーバ装置１００、クライアント装置２００およびネットワークＮＷの状態から、ユーザの体感品質および配信コストを評価し、次に配信するメディアデータの最適な送信レート及びメディアレートを算出する（図３のステップＳ００２）。
【００６３】
[ユーザ体感品質の評価]
ユーザ体感品質は、レート出力手段１０２の体感品質評価手段１０２ｂで評価する。コンテンツ視聴時のユーザ体感品質が下がる要因としては、次のような要因がある。
【００６４】
(a)パケットロス。パケットロスが発生すると、映像や音声の劣化が発生する。
(b)メディアレートの不足。メディアレートが不足すると、映像がぼやける、ブロックノイズと呼ばれる格子状のノイズが発生する、音質が悪くなるなどメディア品質が悪くなる。
(c)コンテンツ再生中に残余再生時間がなくなる。残余再生時間がなくなると、コンテンツの再生が停止してしまう。
(d)メディアレートの頻繁な変更。メディアレートが頻繁に変更されると、メディア品質が頻繁に変化してしまう。
【００６５】
また、これらの要因(a)〜(d)に対する対策としては、次のようなものがある。
【００６６】
(A)パケットロスを抑制するための対策は、送信レートを大きくしすぎないことである。送信レートが小さいほど、輻輳が発生する確率を低くすることができるので、パケットロスを抑制することができる。つまり、送信レートが小さいほど、ユーザ体感品質が高いと評価することができる。
(B)メディアレートの不足をなくすための対策は、メディアレートをできるだけ大きくすることである。メディアレートが大きいほど、コンテンツの質を高めることができる。つまり、メディアレートが大きいほど、ユーザ体感品質が高いと評価することができる。
(C)残余再生時間がなくならないようにするための対策は、メディアレートを送信レートより大きくしすぎないことである。メディアレートを送信レートより小さくするほど、残余再生時間がなくなるという事態が発生しにくくなり、その結果、コンテンツの再生が中断することを防止できる。つまり、メディアレートが送信レートより小さくなるほど、ユーザ体感品質が高いと評価することができる。
(D)メディアレートの頻繁な変更をなくすための対策は、メディアレートの変更頻度を少なくすることである。メディアレートの変更頻度を少なくするほど、コンテンツの鮮明さが変化する頻度を少なくすることができる。つまり、メディアレートの変更頻度が少なくなるほど、ユーザ体感品質が高いと評価することができる。
【００６７】
また、クライアント装置２００の状態により、クライアント装置２００で再生できないメディアデータは選択しないようにすることもできる。クライアント装置２００のＣＰＵやメモリ、使用しているネットワークに余裕がない場合は、クライアント装置２００で再生負荷がかからないようなメディアデータを選択することで、クライアント装置２００を操作しているユーザの体感品質を下げないようにすることもできる。
【００６８】
体感品質評価手段１０２ｂは、メディアレートと送信レートとを変数とし、ユーザ体感品質を上記変数と対応するように定める目的関数ｆＱを利用してユーザ体感品質を評価する。このユーザ体感品質評価用の目的関数ｆＱは、上記対策(A)〜(D)に関連する４つの項目ｚ１〜ｚ４から構築される。以下、目的関数ｆＱについて説明する。なお、目的関数ｆＱの値は、ユーザ体感品質が高いほど、小さくなる。
【００６９】
時刻ｔにおいて、サーバ装置１００からクライアント装置２００へ送信しているコンテンツのメディアレートおよび送信レートをそれぞれｂ（ｔ）、ｖ（ｔ）であるとし、クライアント装置２００における残余再生時間および再生速度をそれぞれＴ（ｔ）、ｐ（ｔ）とする。この場合、上記した対策(A)〜(D)に関連する項目ｚ１〜ｚ４は、それぞれ以下のように数式化できる。
【００７０】
対策(A)の「パケットロスを抑制するための対策は、送信レートｖ（ｔ）を大きくしすぎないことである。」に関連する項目ｚ１は、送信レートｖ（ｔ）が小さいときほど、目的関数ｆＱの値を小さくすることに相当するため、次式（４）により表される。
【００７１】
ｚ１＝ｖ（ｔ）2          ……  （４）
【００７２】
対策(B)の「メディアレートｂ（ｔ）の不足をなくすための対策は、メディアレートｂ（ｔ）をできるだけ大きくすることである。」に関連する項目ｚ２は、メディアレートｂ（ｔ）の逆数が小さくなるほど、目的関数ｆＱの値を小さくすることに相当するため、次式（５）により表される。
【００７３】
ｚ２＝１／ｂ（ｔ）2          ……  （５）
【００７４】
対策（C）の「残余再生時間Ｔ（ｔ）がなくならないようにするための対策は、メディアレートｂ（ｔ）を送信レートｖ（ｔ）より大きくしすぎないことである。」に関連する項目ｚ３は、メディアレートｂ（ｔ）を送信レートｖ（ｔ）で除算した値が小さいほど、目的関数ｆＱの値を小さくすることに相当するため、次式（６）により表される。
【００７５】
ｚ３＝｛ｐ（ｔ）／Ｔ（ｔ）｝・｛ｂ（ｔ）／ｖ（ｔ）｝2        ……  （６）
【００７６】
ここで、ｐ（ｔ）／Ｔ（ｔ）は、クライアント装置２００における再生速度ｐ（ｔ）が大きく、残余再生時間Ｔ（ｔ）が小さい場合には、項目ｚ３が目的関数ｆＱに及ぼす影響を大きくし、残余再生時間Ｔ（ｔ）が大きく、再生速度ｐ（ｔ）が小さい場合には項目ｚ３が目的関数ｆＱに及ぼす影響を小さくするための項である。
【００７７】
対策(D)の「メディアレートｂ（ｔ）の頻繁な変更をなくすための対策は、メディアレートｂ（ｔ）の変更を少なくすることである。」に関連する項目ｚ４は、メディアレートｂ（ｔ）の時間変化率（時間微分値）が小さいほど、目的関数ｆＱの値を小さくすることに相当するため、次式（７）により表される。
【００７８】
ｚ４＝｛ｄｂ（ｔ）／ｄ（ｔ）｝2            ……  （７）
【００７９】
本実施の形態では、各項目ｚ１〜ｚ４を重み付けして加算したものをユーザ体感品質評価用の目的関数ｆＱとする。この目的関数は次式（８）により表される。
【００８０】
ｆＱ＝ａ１・ｚ１＋ａ２・ｚ２＋ａ３・ｚ３＋ａ４・ｚ４      ……  （８）
【００８１】
なお、式（８）において、ａ１、ａ２、ａ３、ａ４はそれぞれ項目ｚ１、ｚ２、ｚ３、ｚ４に対する重みであり、サービスの種類やユーザ毎に変更可能なものである。
【００８２】
[配信コストの評価]
配信コストは、レート出力手段１０２の配信コスト評価手段１０２ｃで評価する。
【００８３】
クライアント装置２００のユーザは、自由にコンテンツの視聴をやめることができ、コンテンツの途中で視聴をやめた場合には、クライアント装置２００のメディア再生バッファ２０２に蓄積されている未再生のメディアデータは破棄される。つまり、ユーザがコンテンツの途中で視聴をやめた場合には、無駄なメディアデータを配信するために配信コストをかけたことになる。一方、クライアント装置２００のメディア再生バッファ２０２の残余再生時間Ｔ（ｔ）が同じ場合は、蓄積されている未再生のメディアデータのメディアレートｂ（ｔ）が大きいほど、蓄積されているメディアデータのデータ量が多くなる。つまり、メディアレートｂ（ｔ）が大きいほど、多くの無駄なメディアデータを配信するために配信コストをかけたことになる。従って、配信コスト評価手段１０２ｃは、メディアレートｂ（ｔ）が大きいほど、配信コストが大きいと評価する。より具体的には、次式（９）に示すように、メディアレートｂ（ｔ）を変数とする目的関数ｆＣであって、配信コストを上記変数に対応するように定める目的関数ｆＣを使用して配信コストを評価する。なお、式（９）において、ｗ１は重みである。また、目的関数ｆＣは、配信コストが小さいほど、その値が小さくなるものである。
【００８４】
ｆＣ＝ｗ１・ｂ（ｔ）2          ……  （９）
【００８５】
なお、上記した配信コスト評価用の目的関数ｆＣは一つの例であり、これに限られるものではない。例えば、配信コスト評価用の目的関数ｆＣとして次式（１０）に示すものを使用しても構わない。
【００８６】
ｆＣ＝ｗ１・ｂ（ｔ）2＋ｗ２・ｖ（ｔ）2        ……  （１０）
【００８７】
式（１０）の右辺第1項「ｗ１・ｂ（ｔ）2」は、式（９）の第１項と同じものである。また、式（１０）の右辺第２項「ｗ２・ｖ（ｔ）2」中のｗ２は重み、ｖ（ｔ）はサーバ装置１００からクライアント装置２００へメディアデータを送信する際の送信レートである。この右辺第２項「ｗ２・ｖ（ｔ）2」は、目的関数ｆＣにおいて次のような役割を果たす。クライアント装置２００のユーザは、自由にコンテンツの視聴をやめることができ、コンテンツの途中で視聴をやめた場合は、メディア再生バッファ２０２に蓄積されている未再生のメディアデータは破棄される。破棄される未再生のメディアデータのメディアレートｂ（ｔ）が同じであれば、残余再生時間Ｔ（ｔ）が長いほど、多くの無駄なメディアデータがサーバ装置１００からクライアント装置２００へ送信されたことになるので、残余再生時間Ｔ（ｔ）が長いほど、配信コストが高いと評価するができる。ここで、送信レートｖ（ｔ）を小さくするほど、残余再生時間Ｔ（ｔ）を少なくすることができるので、右辺第２項「ｗ２・ｖ（ｔ）2」は、残余再生時間Ｔ（ｔ）が短いほど、目的関数ｆＣの値を小さくするように作用する（配信コストを低くするように作用する）。
【００８８】
また、配信コスト評価用の目的関数ｆＣとして、次式（１１）に示すものを使用することもできる。なお、式（１１）の右辺第１項「ｗ２・ｖ（ｔ）2」は、式（１０）の右辺第２項と同じものである。
【００８９】
ｆＣ＝ｗ２・ｖ（ｔ）2        ……  （１１）
【００９０】
[最適なメディアレートと送信レートとの組み合わせ]
最適レート算出手段１０２ａは、コンテンツの配信対象にしているクライアント装置毎に、ユーザ体感品質と配信コストとの両方を考慮し、今後配信するメディアデータの最適なメディアレートｂ（ｔ）と送信レートｖ（ｔ）との組み合わせを算出する。より具体的には、最適レート算出手段１０２ａは、所定の制約条件を満たすメディアレートｂ（ｔ）と送信レートｖ（ｔ）との組み合わせの内、次式（１２）に示す目的関数ｆＴの値を最小化するメディアレートｂ（ｔ）と送信レートｖ（ｔ）との組み合わせ（配信コストをできるだけ抑えて、ユーザ体感品質をできるだけ高くすることができるメディアレートと送信レートとの組み合わせ）を算出する。
【００９１】
ｆＴ＝ｍｑ・ｆＱ＋ｍｃ・ｆＣ          ……  （１２）
【００９２】
式（１２）において、ｆＱは式（８）に示したユーザ体感品質評価用の目的関数、ｆＣは式（９）〜（１１）に示した配信コスト評価用の目的関数の内の何れかである。また、ｍｑ、ｍｃは、それぞれ目的関数ｆＱ、ｆＣの値に対する重みである。ここで、ユーザ体感品質評価用の目的関数ｆＱはメディアレートｂ（ｔ）と送信レートｖ（ｔ）とを変数とし、配信コスト評価用の目的関数ｆＣはメディアレートｂ（ｔ）と送信レートｖ（ｔ）との内の一方または両方を変数とするものである。従って、式（１２）に示した目的関数ｆＴは、メディアレートｂ（ｔ）と送信レートｖ（ｔ）とを変数とし、配信コストとユーザ体感品質との組み合わせを評価する評価値を、上記変数と対応するように定める関数であると言える。重みｍｑ、ｍｃはサーバ装置１００の管理者などが自由に設定できるものである。例えば、ユーザ体感品質を配信コストよりも重視して、最適なメディアレートｂ（ｔ）と送信レートｖ（ｔ）との組み合わせを算出する場合には、重みｍｑを重みｍｃに比較して大きくし、反対に配信コストをユーザ体感品質よりも重視して、最適なメディアレートｂ（ｔ）と送信レートｖ（ｔ）との組み合わせを算出する場合は、重みｍｃを重みｍｑに比較して大きくする。
【００９３】
次に、最適レート算出手段１０２ａで使用する制約条件について説明する。本実施の形態では、第１の制約条件と第２の制約条件とを使用する。
【００９４】
第１の制約条件は、「サーバ装置１００のメディアデータ送信手段１０４における送信レートｖ（ｔ）は、可用帯域幅Ｔｈ（ｔ）を超えない」という条件である。ここで、可用帯域幅Ｔｈ（t）は、クライアント装置２００の受信情報取得手段２０４から送られてきた受信情報によって示される可用帯域幅を用いる。この第１の制約条件を満たすことにより、可用帯域幅Ｔｈ（t）以下の送信レートを確実に選択することができる。従って、パケットロスを抑制することができる。なお、第１の制約条件は、クライアント装置から送られてくる受信情報によって示される可用帯域幅Ｔｈ（ｔ）を含んでいるので、クライアント装置固有のものとなる。例えば、クライアント装置Ｃ１のメディアレートおよび送信レートを求める際には、クライアント装置Ｃ１から送られてきた可用帯域幅を含んだ第１の制約条件を使用し、クライアント装置Ｃ２のメディアレートおよび送信レートを求める際には、クライアント装置Ｃ２から送られてきた可用帯域を含んだ第１の制約条件を使用する必要がある。
【００９５】
第２の制約条件は、「サーバ装置１００のメディアデータ送信手段１０４におけるメディアレートｂ（ｔ）は、予め定められているｎ種類のメディアレートｂ１、ｂ２、…、ｂｎの内の何れか１つである」という条件である。本実施の形態では、メディアデータ記憶手段１０１には、１つのコンテンツについて、上記ｎ種類のメディアレートｂ１、ｂ２、…、ｂｎで符号化したｎ個のメディアデータが記憶されている。
【００９６】
なお、制約条件は上記したものに限られるものではない。例えば、上記した第１或いは第２の制約条件だけを使用するようにしても構わない。
【００９７】
上述したように、最適レート算出手段１０２ａは、コンテンツの配信対象にしているクライアント装置毎に、第１の制約条件および第２の制約条件を満たし、かつ、目的関数ｆＴの値を最小化するメディアレートｂ（ｔ）と送信レートｖ（ｔ）との組み合わせを算出する。ここで、算出したメディアレートｂ（ｔ）および送信レートｖ（ｔ）をそのまま使用してメディアデータを送信するようにしているが、本実施の形態では、以下に述べるように、メディアレートｂ（ｔ）および送信レートｖ（ｔ）をサーバ装置１００やネットワークＮＷの状態に基づいて補正し、補正後のメディアレートｂｈ（ｔ）および送信レートｖｈ（ｔ）でメディアデータを送信する。なお、補正前のメディアレートｂ（ｔ）および送信レートｖ（ｔ）でクライアント装置へメディアデータを送信するようにした場合には、個々のユーザのユーザ体感品質をできるだけ高くし、且つ配信コストを抑えることができるという効果を得ることができる。
【００９８】
[メディアレートおよび送信レートの補正]
次に、メディアレートおよび送信レートの補正処理について説明する。最適レート算出手段１０２ａは、サーバ装置１００やネットワークＮＷの状態に基づいて、コンテンツの配信対象にしているクライアント装置毎に、メディアレーｂ（ｔ）および送信レートｖ（ｔ）を補正し、補正後のメディアレートｂｈ（ｔ）および送信レートｖｈ（ｔ）をそれぞれメディアパケット生成手段１０３およびメディアデータ送信手段１０４へ出力する。サーバ装置１００やネットワークＮＷの状態に基づいた補正とは、簡単に説明すると次のようなものである。最適レート算出手段１０２ａは、サーバ装置１００のＣＰＵ負荷やネットワークＮＷの帯域が逼迫している場合は、比較的余裕がある場合に比較して配信コストが高いと評価するというように、サーバ装置１００やネットワークＮＷの状態に基づいて配信コストを評価する。次に、最適レート算出手段１０２ａは、メディアレートｂ（ｔ）および送信レートｖ（ｔ）に対する重み（０≦重み≦１）を算出する。この重みは、配信コストが高いほど、小さな値になる。その後、最適レート算出手段１０２ａは、メディアレートｂ（ｔ）および送信レートｖ（ｔ）のそれぞれに上記重みを乗算することにより、補正後のメディアレートｂｈ（ｔ）および送信レートｖｈ（ｔ）を算出する。
【００９９】
今、例えば、サーバ装置１００がコンテンツを同時配信しているクライアント装置の台数をＮｃ[台]、サーバ装置１００のＣＰＵ負荷をＬｓ[％]、サーバ装置１００のメモリの空き容量をＭｓ[バイト]、サーバ装置１００から送信している全ての通信量をＴｓ[ビット／秒]、メディアデータ記憶手段１０１からのメディアデータの読み出しにかかるデータ転送量をＴｄ[バイト／秒]とすると、サーバ装置１００における配信コストＣｓは、次式（１３）に示すものとなる。
【０１００】
Ｃｓ＝ｋ１・Ｎｃ＋ｋ２・Ｌｓ＋ｋ３・Ｍｓ＋ｋ４・Ｔｓ＋ｋ５・Ｔｄ  …  （１３）
【０１０１】
ここで、ｋ１〜ｋ５は、各項目に対する重みであり、サービスの種別やユーザ毎に変更可能である。配信コストＣｓは、その値が大きいほど、配信コストが高いことを示している。
【０１０２】
上記した式（１３）は、サーバ装置１００で同時配信しているクライアント装置２００の数が多い場合は、同時配信しているクライアント装置２００の数が少ない場合に比べて、配信コストを高くなることを示している。また、式（１３）は、サーバ装置１００のＣＰＵ負荷が高く、ＣＰＵに余裕がないときや、メモリの空き容量が少ないときや、サーバ装置１００から送信している全ての通信量が多く、通信できる量に余裕がないときや、メディアデータの読み出しにかかるデータ転送量が多く、データ転送に余裕がないときなどは、余裕があるときに比べて配信コストが高くなることを示している。
【０１０３】
更に、最適レート算出手段１０２ａは、ネットワークＮＷ全体が混雑している場合（トラフィック量が多い場合）はネットワークが空いている場合に比較して、大きな配信コストを算出する関数を用意しておき、この関数を利用してネットワークＮＷにおける配信コストＣｎを算出する。そして、配信コストＣｓと配信コストＣｎとを加算することにより、サーバ装置１００とネットワークＮＷの状態に応じた配信コストＣｔ＝（Ｃｓ＋Ｃｎ）を算出する。なお、ネットワークＮＷ全体の混雑度が分からない場合は、時間帯によって異なる配信コストを算出する関数を用意しておき、この関数を用いて算出した配信コストをネットワークＮＷにおける配信コストＣｎとするようにしても良い。例えば、深夜は空いているので、小さな配信コストを算出し、夜の２１時から２２時頃は多くの人がネットワークＮＷを使うので、高い配信コストＣｎを算出する関数を用いてネットワークＮＷ全体の配信コストＣｎを算出するようにしても良い。さらに、ネットワーク全体の混雑度ではなく、パケットが通過するネットワークの場所に応じて配信コストを変化させてもよい。例えば、通信トラフィックが集中してボトルネックリンクになりやすいネットワークリンクを経由するクライアント装置２００に対する配信コストは、配信コストＣｔに「１」よりも大きな重みを乗算した値とすることもできる。
【０１０４】
更に、クライアント装置のユーザのサービスレベルに応じた重みを配信コストＣｔに乗算するようにしてもよい。例えば、無料会員の配信コストＣｔには有料会員の配信コストＣｔよりも大きな重みを乗算し、無料会員より有料会員の方が高品質のコンテンツを視聴できるようにしてもよい。また、サービスレベルが下位レベルのユーザの配信コストＣｔにはサービスレベルが上位レベルのユーザの配信コストＣｔよりも重みを乗算したり、サービス利用料金に反比例する重みを乗算したりしてもよい。
【０１０５】
最適レート算出手段１０２ａは、配信コストＣｔを算出すると、１から０まで単調減少する関数ｆＡＣ（Ｃｔ）を利用して、メディアレートｂ（ｔ）および送信レートｖ（ｔ）に対する重みＷを算出する。
【０１０６】
次いで、最適レート算出手段１０２ａは、次式（１４）、（１５）に示す演算を行うことにより、補正後のメディアレートｂｈ（ｔ）および送信レートｖｈ（ｔ）を算出する。
【０１０７】
ｂｈ（ｔ）＝Ｗ・ｂ（ｔ）          ……  （１４）
ｖｈ（ｔ）＝Ｗ・ｖ（ｔ）          ……  （１５）
【０１０８】
その後、最適レート算出手段１０２ａは、補正後のメディアレートｂｈ（ｔ）および送信レートｖｈ（ｔ）をそれぞれメディアパケット生成手段１０３およびメディアデータ送信手段１０４に渡す。最適レート算出手段１０２ａは、上述した処理をコンテンツの配信対象にしているクライアント装置毎に行う。以上がステップＳ００２で行う処理の詳細である。なお、上述した配信コストＣｔの算出方法や、関数ｆＡＣ（Ｃｔ）を用いた重みの算出方法は一つの例であり、これに限ったものではない。
【０１０９】
メディアパケット生成手段１０３は、最適レート算出手段１０２ａからメディアレートｂｈ（ｔ）が渡されると、異なるメディアレートで符号化された複数のメディアデータが格納されているメディアデータ記憶手段１０１から、上記メディアレートｂｈ（ｔ）で符号化されているメディアデータを入力する。そして、入力したメディアデータに基づいてメディアパケットを生成し、メディアデータ送信手段１０４に渡す。なお、メディアデータ記憶手段１０１から入力したメディアデータを、最適レート算出手段１０２ａから渡されたメディアレートのメディアデータに変換（トランスコード）するようにしてもよい。また、メディアデータ送信手段１０４は、メディアパケット生成手段１０３から渡されたメディアパケットを、最適レート算出手段１０２ａから渡された送信レートｖｈ（ｔ）で該当するクライアント装置（例えば、クライアント装置２００）へ送信する（ステップＳ００３）。
【０１１０】
算出された送信レートでのメディアデータの送出は、ＵＤＰ／ＩＰで送出している場合はメディアパケットを適切なタイミングで送出すれば良い。例えば、メディアデータを１５００バイトのパケットにして、３００ｋｂｐｓで送信する場合、１秒間あたり、
（３００×１０００）÷（１５００×８）＝２５パケット
送出できるため、４０ミリ秒ごとに一つのパケットを送出するように制御する。
【０１１１】
ＴＣＰ／ＩＰで送出している場合は、パケット送出時間を制御できないため、前に送出したパケットの送出にかかった時間から、次に送出するパケットの時間を制御する。１５００バイトのパケットを３００ｋｂｐｓで送出する場合を考えると、４０ミリ秒ごとに１５００バイト送出することになる。１５００バイトのパケット送出に３０ミリ秒かかった場合、次の１５００バイトのパケットは１０ミリ秒（＝４０ミリ秒−３０ミリ秒）待って送出するように制御すれば良い。
【０１１２】
以上の処理をメディアデータの終わりまで繰り返す（図３のステップＳ００４）。
【０１１３】
[第１の実施の形態の効果]
本実施の形態によれば、ユーザのユーザ体感品質をできるだけ高くし、且つ配信コストを抑えることができるという効果を得ることができる。その理由は、メディアデータのメディアレート及び送信レートを変数とし、ユーザ体感品質と配信コストとの組み合わせを評価する評価値を上記変数と対応付けるように定める目的関数を利用して、コンテンツを配信する際のメディアレート及び送信レートを算出するようにしているからである。
【０１１４】
また、本実施の形態によれば、コンテンツ配信システムを利用するユーザ全員のユーザ体感品質を均等に高くし、且つ配信コストを抑えることができる。その理由は、目的関数を使用して求めたメディアレート及び送信レートを、サーバ装置の負荷や、ネットワークの混雑が逼迫している場合ほど、その値が小さくなるように補正し、補正後のメディアレート及び送信レートを使用してメディアデータを配信するようにしているからである。つあり、特定のユーザによって多くのリソースが使用されることを防止できるからである。
【０１１５】
[本発明の第２の実施の形態]
次に、本発明の第２の実施の形態について図４を参照して詳細に説明する。
【０１１６】
本実施の形態は、上記第１の実施の形態に係るコンテンツ配信システムに対して、クライアント装置４００がレート出力手段４０７を持ち、クライアント装置４００においてメディアレートと送信レートとの最適な組み合わせを決定する点において異なっている。以下、相違点を中心に説明する。
【０１１７】
第２の実施の形態に係るコンテンツ配信システムは、サーバ装置３００と、クライアント装置４００とを含み、サーバ装置３００およびクライアント装置４００がネットワークを介して互いに通信可能に接続されている。
【０１１８】
サーバ装置３００は、メディアデータ記憶手段３０１と、メディアパケット生成手段３０２と、メディアデータ送信手段３０３とを含む。
【０１１９】
また、クライアント装置４００は、メディアデータ受信手段４０１と、メディア再生バッファ４０２と、メディアデータ再生手段４０３と、受信情報取得手段４０４と、再生速度取得手段４０５と、残余再生時間取得手段４０６と、レート出力手段４０７と、送信要求手段４０８とを含む。さらに、レート出力手段４０７は最適レート算出手段４０７ａと、体感品質評価手段４０７ｂと、配信コスト評価手段４０７ｃとを含む。
【０１２０】
サーバ装置３００が有するメディアデータ記憶手段３０１と、メディアパケット生成手段３０２と、メディアデータ送信手段３０３とは、それぞれ第１の実施の形態に係るメディアデータ記憶手段１０１と、メディアパケット生成手段１０３と、メディアデータ送信手段１０４と同様の機能を有する。
【０１２１】
クライアント装置４００が有する手段４０１〜４０８はそれぞれ次のように動作する。
【０１２２】
メディアデータ受信手段４０１、メディア再生バッファ４０２、メディアデータ再生手段４０３、受信情報取得手段４０４、再生速度取得手段４０５、残余再生時間取得手段４０６、レート出力手段４０７、最適レート算出手段４０７ａ、体感品質評価手段４０７ｂ、および、配信コスト評価手段４０７ｃは、それぞれ第１の実施の形態に係るメディアデータ受信手段２０１、メディア再生バッファ２０２、メディアデータ再生手段２０３、受信情報取得手段２０４、再生速度取得手段２０５、残余再生時間取得手段２０６、レート出力手段１０２、最適レート算出手段１０２ａ、体感品質評価手段１０２ｂ、および、配信コスト評価手段１０２ｃと同様の機能を有する。
【０１２３】
送信要求手段４０８は、レート出力手段４０７で算出されたメディアレートのメディアデータを、レート出力手段４０７で算出された送信レートで配信するようにサーバ装置３００に要求する。
【０１２４】
サーバ装置３００のメディアパケット生成手段３０２は、クライアント装置４００から要求されたメディアレートのメディアデータをメディアデータ記憶手段３０１から読み出すか、若しくはメディアデータ記憶手段３０１から読み出したメディアデータのメディアレートを要求されたメディアレートに変換する。そして、読み出し若しくは変換したメディアデータに基づいてメディアパケットを生成し、生成したメディアパケットをメディアデータ送信手段３０３に渡す。
【０１２５】
メディアデータ送信手段３０３は、メディアパケット生成手段３０２から渡されたメディアパケットを、クライアント装置４００から要求された送信レートでクライアント装置４００へ送信する。
【０１２６】
[第２の実施の形態の効果]
本実施の形態によれば、第１の実施の形態で得られる効果に加えて、サーバ装置３００の負荷を少なくすることができるという効果を得ることができる。その理由は、レート出力手段４０７をクライアント装置４００に配置するようにしたからである。
【０１２７】
[本発明の第３の実施の形態]
次に、本発明の第３の実施の形態について図面を参照して詳細に説明する。
【０１２８】
第３の実施の形態に係るコンテンツ配信システムは、上記第１の実施の形態に係るコンテンツ配信システムに対して、サーバ装置からクライアント装置へメディアデータを転送する中継装置が受信情報を取得し、取得した受信情報をサーバ装置へ送信する点において異なっている。
【０１２９】
図５に示した通り、本実施の形態のコンテンツ配信システムは、サーバ装置５００と、クライアント装置６００と、中継装置７００を含んでいる。そして、サーバ装置５００および中継装置７００が第１のネットワークＮＷ１を介して、また中継装置７００およびクライアント装置６００が第２のネットワークＮＷ２を介して互いに通信可能に接続されている。
【０１３０】
本実施の形態の一例は、クライアント装置６００は、携帯電話網に接続されている携帯電話機やスマートフォンやタブレットなどであり、中継装置７００は、基地局装置である。この場合、第１のネットワークＮＷ１は、インターネットやテレコムオペレータのコアネットワークであり、第２のネットワークＮＷ２は、携帯電話の無線ネットワークである。
【０１３１】
別の例では、クライアント装置６００は、家庭内に接続されているＰＣやテレビ受像機やセット・トップ・ボックス（ＳＴＢ）などであり、中継装置７００は、ホームゲートウェイやブロードバンドルータである。また、第１のネットワークＮＷ１は、インターネットやテレコムオペレータのアクセスネットワークやコアネットワークであり、第２のネットワークＮＷ２は、家庭内の有線または無線ネットワークである。これらの例は一例であり、これに限るものではない。
【０１３２】
中継装置７００は、図示しない中央処理装置（ＣＰＵ：Ｃｅｎｔｒａｌ
Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）及び記憶装置（メモリ及びハードディスク駆動装置（ＨＤＤ：Ｈａｒｄ Ｄｉｓｋ Ｄｒｉｖｅ））を備える。中継装置７００は、記憶装置に記憶されているプログラムをＣＰＵが実行することにより、後述する機能を実現するように構成されている。
【０１３３】
図６は、上記のように構成された配信システムの機能を表すブロック図である。上記第１の実施の形態に係るコンテンツ配信システムに対して、中継装置７００が追加されている点で異なっている。以下、相違点を中心に説明する。
【０１３４】
サーバ装置５００は、メディアデータ記憶手段５０１と、レート出力手段５０２、メディアパケット生成手段５０３と、メディアデータ送信手段５０４とを含む。さらに、レート出力手段５０２は、最適レート算出手段５０２ａと、体感品質評価手段５０２ｂと、配信コスト評価手段５０２ｃとを含む。
【０１３５】
サーバ装置５００が有するメディアデータ記憶手段５０１、レート出力手段５０２、メディアパケット生成手段５０３、メディアデータ送信手段５０４、最適レート算出手段５０２ａ、体感品質評価手段５０２ｂ、および配信コスト評価手段５０２ｃは、それぞれ第１の実施の形態に係るメディアデータ記憶手段１０１、レート出力手段１０２、メディアパケット生成手段１０３、メディアデータ送信手段１０４、最適レート算出手段１０２ａ、体感品質評価手段１０２ｂ、および配信コスト評価手段１０２ｃと同様の機能を有する。
【０１３６】
また、クライアント装置６００は、メディアデータ受信手段６０１と、メディア再生バッファ６０２と、メディアデータ再生手段６０３と、再生速度取得手段６０４と、残余再生時間取得手段６０５とを含む。
【０１３７】
クライアント装置６００が有するメディアデータ受信手段６０１、メディア再生バッファ６０２、メディアデータ再生手段６０３、再生速度取得手段６０４、および残余再生時間取得手段６０５は、それぞれ第１の実施の形態に係るメディアデータ受信手段２０１、メディア再生バッファ２０２、メディアデータ再生手段２０３、再生速度取得手段２０５、および残余再生時間取得手段２０６と同様の機能を有する。
【０１３８】
中継装置７００は、データ転送手段７０１と、受信情報取得手段７０２とを含む。
【０１３９】
中継装置７００が有する手段７０１、７０２は、それぞれ次のように動作する。
【０１４０】
データ転送手段７０１は、サーバ装置５００からクライアント装置６００宛に送信されたデータを、クライアント装置６００へ転送する。また、クライアント装置６００からサーバ装置５００宛に送信されたデータを、サーバ装置５００へ転送する。サーバ装置５００から送信され、クライアント装置６００に転送されるデータにはメディアデータが含まれる。また、クライアント装置６００から送信され、サーバ装置５００に転送されるデータには、再生速度や残余再生時間やその他クライアント状態のデータが含まれる。
【０１４１】
受信情報取得手段７０２は、データ転送手段７０１がサーバ装置５００からクライアント装置６００に対して連続的に送信したメディアデータのデータ量を、上記メディアデータの転送時間で除算した値を、クライアント装置６００の受信情報としてサーバ装置５００へ送信する。例えば、データ転送手段７０１が、「０．５秒」の間に「０．５メガバイト」のメディアデータをサーバ装置５００からクライアント装置６００へ連続して転送し、その後、任意の時間だけサーバ装置５００からメディアデータを受信できず、転送処理を実行できなかったとすると、受信情報は、０．５メガバイト÷０．５秒＝１（メガバイト／秒）となる。なお、受信情報の取得処理は、所定時間毎に行う。メディアデータの転送は、ＴＣＰ／ＩＰを利用することを想定しているが、ＴＣＰ／ＩＰではなく、ＵＤＰ／ＩＰを利用することもできる。ＵＤＰ／ＩＰを利用する場合は、サーバ装置５００から送信されたメディアパケットが消失してメディアデータ受信手段６０１まで届かないことがある。この場合、サーバ装置５００から中継装置７００の間でロスしたメディアパケットのロス率（パケットロスが発生する割合）、中継装置７００からクライアント装置６００の間でロスしたメディアパケットのロス率も取得する。例えば、ＲＴＰを利用している場合はＲＴＰヘッダに含まれるシーケンス番号を基にロスしたパケットを特定してパケットロスの割合を算出する。中継装置７００を接続するネットワークＮＷ２が携帯電話網であり、クライアント装置６００との間の電波状態まで測定できる場合は、クライアント装置６００との間の電波状態などの状態を取得しても良い。受信情報取得手段７０２は取得した受信情報をサーバ装置５００へ転送する。
【０１４２】
[第３の実施の形態の効果]
本実施の形態によれば、第１の実施の形態で得られる効果に加えて、クライアント装置の構成を簡単なものにすることができるという効果を得ることができる。その理由は、受信情報取得手段７０２を中継装置７００に設けるようにしたからである。
【０１４３】
[本発明の第４の実施の形態]
次に、本発明の第４の実施の形態について図面を参照して説明する。
【０１４４】
図７を参照すると、本実施の形態に係るコンテンツ配信システムは、互いに通信可能に構成されたサーバ装置８００及びクライアント装置９００を含む。サーバ装置８００は、コンテンツを符号化したメディアデータをクライアント装置９００へ送信可能に構成されている。また、クライアント装置９００は、サーバ装置８００より送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、上記メディア再生バッファから蓄積されたメディアデータを読み出して上記コンテンツを再生するように構成されている。
【０１４５】
更に、本実施の形態にかかるコンテンツ配信システムは、レート出力手段８０１と、メディアデータ送信手段８０２とを備えている。
【０１４６】
そして、レート出力手段８０１は、サーバ装置８００が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、上記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、クライアント装置９００のユーザが当該クライアント装置９００により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を上記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力する。
【０１４７】
また、メディアデータ送信手段８０２は、レート出力手段８０１から出力されたメディアレートにて符号化された上記メディアデータを、レート出力手段８０１から出力された送信レートにてサーバ装置８００からクライアント装置９００へ送信する。
【０１４８】
[第４の実施の形態の効果]
本実施の形態によれば、ユーザのユーザ体感品質をできるだけ高くし、且つ配信コストを抑えることができるという効果を得ることができる。その理由は、メディアデータのメディアレート及び送信レートを変数とし、ユーザ体感品質と配信コストとの組み合わせを評価する評価値を上記変数と対応するように定める目的関数を利用して、コンテンツを配信する際のメディアレート及び送信レートを算出するようにしているからである。
【０１４９】
上記の実施の形態の一部または全部は、以下の付記のようにも記載されうるが、以下には限定されない。
【０１５０】
（付記１）
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムであって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段と、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段と、
を備えるコンテンツ配信システム。
【０１５１】
（付記２）
付記１記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディアレートが高くなるほど、前記配信コストが高くなるように設定されたコンテンツ配信システム。
【０１５２】
（付記３）
付記１または２記載のコンテンツ配信システムにおいて、
前記目的関数は、前記送信レートが低くなるほど、前記配信コストが低くなるように設定されたコンテンツ配信システム。
【０１５３】
（付記４）
付記１乃至３の何れか１つに記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディア再生バッファに蓄積されている未再生のメディアデータによってコンテンツを再生可能な時間である残余再生時間が長いほど、前記配信コストが高くなるように設定されたコンテンツ配信システム。
【０１５４】
（付記５）
付記１乃至４の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置の負荷が高いほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【０１５５】
（付記６）
付記１乃至５の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置と前記クライアント装置を接続するネットワークの混雑度が高いほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【０１５６】
（付記７）
付記１乃至６の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置と前記クライアント装置とを接続するネットワークの混雑度が高いと予測される時間帯ほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【０１５７】
（付記８）
付記１乃至７の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記クライアント装置のユーザのサービスレベルが低いほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力することを特徴とするコンテンツ配信システム。
【０１５８】
（付記９）
付記１乃至８の何れか１つに記載のコンテンツ配信システムにおいて、
前記目的関数は、前記送信レートが低くなるほど、前記ユーザ体感品質が高くなるように設定されたコンテンツ配信システム。
【０１５９】
（付記１０）
付記１乃至９の何れか１つに記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディアレートが高いほど、前記ユーザ体感品質が高くなるように設定されたコンテンツ配信システム。
【０１６０】
（付記１１）
付記１乃至１０の何れか１つに記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディアレートの変更頻度が少ないほど、前記ユーザ体感品質が高くなるように設定されたコンテンツ配信システム。
【０１６１】
（付記１２）
付記１乃至１１の何れか１つに記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディア再生バッファに蓄積されている未再生のメディアデータによってコンテンツを再生可能な時間である残余再生時間が長いほど、前記ユーザ体感品質が高くなるように設定されたコンテンツ配信システム。
【０１６２】
（付記１３）
付記１ないし１２の何れか１項に記載のコンテンツ配信システムにおいて、
前記レート出力手段は、所定の制約条件を満たす前記送信レートと前記メディアレートとの組み合わせのうちの、前記目的関数によって対応付けられている評価値が最も高い送信レートとメディアレートとの組み合わせを出力するように構成されたコンテンツ配信システム。
【０１６３】
（付記１４）
クライアント装置と通信可能に構成されたサーバ装置であって、
コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段と、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段と、
を備えるサーバ装置。
【０１６４】
（付記１５）
付記１４記載のサーバ装置において、
前記目的関数は、前記メディアレートが高くなるほど、前記配信コストが高くなるように設定されたサーバ装置。
【０１６５】
（付記１６）
付記１４または１５記載のサーバ装置において、
前記目的関数は、前記送信レートが低くなるほど、前記配信コストが低くなるように設定されたサーバ装置。
【０１６６】
（付記１７）
サーバ装置と通信可能に構成されたクライアント装置であって、
前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を該変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段を備えるクライアント装置。
【０１６７】
（付記１８）
付記１７記載のクライアント装置において、
前記目的関数は、前記メディアレートが高くなるほど、前記配信コストが高くなるように設定されたクライアント装置。
【０１６８】
（付記１９）
付記１７または１８記載のクライアント装置において、
前記目的関数は、前記送信レートが低くなるほど、前記配信コストが低くなるように設定されたクライアント装置。
【０１６９】
（付記２０）
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムに適用される配信方法であって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力し、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信する配信方法。
【０１７０】
（付記２１）
付記２０記載の配信方法において、
前記目的関数は、前記メディアレートが高くなるほど、前記配信コストが高くなるように設定された配信方法。
【０１７１】
（付記２２）
付記２０または２１記載の配信方法において、
前記目的関数は、前記送信レートが低くなるほど、前記配信コストが低くなるように設定された配信方法。
【０１７２】
（付記２３）
コンピュータをサーバ装置として機能させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体であって、
前記コンピュータを、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段として機能させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体。
【０１７３】
（付記２４）
コンピュータをクライアント装置として機能させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体であって、
前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生する再生手段、
前記サーバ装置が単位時間あたりに送信するメディアデータのデータ量を表す送信レートと、前記メディアデータの単位時間あたりのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する評価値を前記変数と対応するように定める目的関数に基づいて、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段として機能させるためのプログラムを記録した、コンピュータが読み取り可能な記録媒体。
【０１７４】
以上、上記各実施の形態を参照して本願発明を説明したが、本願発明は、上述した実施の形態に限定されるものではない。本願発明の構成及び詳細に、本願発明の範囲内において当業者が理解し得る様々な変更をすることができる。
【０１７５】
また、上記各実施の形態におけるプログラムは、記憶装置に記憶されていたが、コンピュータが読み取り可能な記録媒体に記録されていてもよい。例えば、記録媒体は、フレキシブルディスク、光ディスク、光磁気ディスク、及び、半導体メモリ等の可搬性を有する媒体である。
【０１７６】
なお、本発明は、日本国にて２０１１年１２月２１日に出願された特願２０１１−２７９２１３の特許出願に基づく優先権主張の利益を享受するものであり、当該特許出願にて開示された内容の全てが本明細書に含まれるものとする。
【産業上の利用可能性】
【０１７７】
本発明は、コンテンツを表すメディアデータを送信するサーバ装置と、メディアデータをサーバ装置から受信して再生するクライアント装置とを含むコンテンツ配信システム等に適用可能である。
【符号の説明】
【０１７８】
１００  サーバ装置
１０１  メディアデータ記憶手段
１０２  レート出力手段
１０２ａ  最適レート算出手段
１０２ｂ  体感品質評価手段
１０２ｃ  配信コスト評価手段
１０３  メディアパケット生成手段
１０４  メディアデータ送信手段
２００  クライアント装置
２０１  メディアデータ受信手段
２０２  メディア再生バッファ
２０３  メディアデータ再生手段
２０４  受信情報取得手段
２０５  再生速度取得手段
２０６  残余再生時間取得手段
３００  サーバ装置
３０１  メディアデータ記憶手段
３０２  メディアパケット生成手段
３０３  メディアデータ送信手段
４００  クライアント装置
４０１  メディアデータ受信手段
４０２  メディア再生バッファ
４０３  メディアデータ再生手段
４０４  受信情報取得手段
４０５  再生速度取得手段
４０６  残余再生時間取得手段
４０７  レート出力手段
４０７ａ  最適レート算出手段
４０７ｂ  体感品質評価手段
４０７ｃ  配信コスト評価手段
４０８  送信要求手段
５００  サーバ装置
５０１  メディアデータ記憶手段
５０２  レート出力手段
５０２ａ  最適レート算出手段
５０２ｂ  体感品質評価手段
５０２ｃ  配信コスト評価手段
５０３  メディアパケット生成手段
５０４  メディアデータ送信手段
６００  クライアント装置
６０１  メディアデータ受信手段
６０２  メディア再生バッファ
６０３  メディアデータ再生手段
６０４  再生速度取得手段
６０５  残余再生時間取得手段
７００  中継装置
７０１  データ転送手段
７０２  受信情報取得手段
８００  サーバ装置
８０１  レート出力手段
８０２  メディアデータ送信手段
９００  サーバ装置
【図１】
2013094118.tif 000003
【図２】
2013094118.tif 000004
【図３】
2013094118.tif 000005
【図４】
2013094118.tif 000006
【図５】
2013094118.tif 000007
【図６】
2013094118.tif 000008
【図７】
2013094118.tif 000009
【手続補正書】
【提出日】平成25年6月12日(2013.6.12)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムであって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置または前記クライアント装置は、単位時間あたりに前記サーバ装置が送信するメディアデータのデータ量を表す送信レートと、コンテンツを単位時間だけ等速再生するために必要になる前記メディアデータのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する目的関数の値を最小にする、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段を備え、
前記サーバ装置は、前記レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段、
を備えるコンテンツ配信システム。
【請求項２】
請求項１記載のコンテンツ配信システムにおいて、
前記目的関数は、前記メディアレートが高くなるほど、前記配信コストが高くなるように設定されたコンテンツ配信システム。
【請求項３】
請求項１または２記載のコンテンツ配信システムにおいて、
前記目的関数は、前記送信レートが低くなるほど、前記配信コストが低くなるように設定されたコンテンツ配信システム。
【請求項４】
請求項１乃至３の何れか１つに記載のコンテンツ配信システムにおいて、
前記クライアント装置は、前記メディア再生バッファに蓄積されている未再生のメディアデータによってコンテンツを再生可能な時間である残余再生時間を求め、前記レート出力手段に送信する残余再生時間取得手段を備え、
前記目的関数は、前記残余再生時間取得手段が求めた残余再生時間が長いほど、前記配信コストが高くなるように設定されたコンテンツ配信システム。
【請求項５】
請求項１乃至４の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置の負荷が高いほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【請求項６】
請求項１乃至５の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置と前記クライアント装置を接続するネットワークの混雑度が高いほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【請求項７】
請求項１乃至６の何れか１つに記載のコンテンツ配信システムにおいて、
前記レート出力手段は、前記サーバ装置と前記クライアント装置とを接続するネットワークの混雑度が高いと予測される時間帯ほど、その値が小さくなるように前記算出した送信レートおよびメディアレートを補正し、補正後の送信レートおよびメディアレートを出力するコンテンツ配信システム。
【請求項８】
クライアント装置と通信可能に構成されたサーバ装置であって、
コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、且つ、
単位時間あたりに前記サーバ装置が送信するメディアデータのデータ量を表す送信レートと、コンテンツを単位時間だけ等速再生するために必要になる前記メディアデータのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する目的関数の値を最小にする、送信レートとメディアレートとの組み合わせを算出して出力するレート出力手段と、
該レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信するメディアデータ送信手段と、
を備えるサーバ装置。
【請求項９】
クライアント装置と、該クライアント装置から送られてきたメディアレートにて符号化されたメディアデータを、前記クライアント装置から送られてきた送信レートにて前記クライアント装置へ送信するメディアデータ送信手段を備えたサーバ装置とから構成されるコンテンツ配信システムの構成要素であるクライアント装置であって、
前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
単位時間あたりに前記サーバ装置が送信するメディアデータのデータ量を表す送信レートと、コンテンツを単位時間だけ等速再生するために必要になる前記メディアデータのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する目的関数の値を最小にする、送信レートとメディアレートとの組み合わせを算出し、前記メディアデータ送信手段に対して送信するレート出力手段を備えるクライアント装置。
【請求項１０】
互いに通信可能に構成されたサーバ装置及びクライアント装置を含むコンテンツ配信システムに適用される配信方法であって、
前記サーバ装置は、コンテンツを符号化したメディアデータを前記クライアント装置へ送信可能に構成され、
前記クライアント装置は、前記サーバ装置により送信されたメディアデータを受信しながら、当該メディアデータのうちの受信されたデータをメディア再生バッファに記憶させると共に、前記メディア再生バッファから蓄積されたメディアデータを読み出して前記コンテンツを再生するように構成され、且つ、
前記サーバ装置または前記クライアント装置が備えるレート出力手段が、単位時間あたりに前記サーバ装置が送信するメディアデータのデータ量を表す送信レートと、コンテンツを単位時間だけ等速再生するために必要になる前記メディアデータのデータ量を表すメディアレートとを変数とする目的関数であって、前記クライアント装置のユーザが当該クライアント装置により再生されるコンテンツを視聴する際に感じるサービス品質であるユーザ体感品質と、メディアデータを配信する際にかかるコストを表す配信コストとの組み合わせを評価する目的関数の値を最小にする、送信レートとメディアレートとの組み合わせを算出して前記サーバ装置が備えているメディアデータ送信手段に対して出力し、
前記メディアデータ送信手段が、前記レート出力手段から出力されたメディアレートにて符号化された前記メディアデータを、前記レート出力手段から出力された送信レートにて前記サーバ装置から前記クライアント装置へ送信する配信方法。
【国際調査報告】
2013094118.tif 000010
2013094118.tif 000011