(57)【要約】【課題】コンテンツの途切れが生じにくいサーバの負荷レベルを精度よく設定できるネットワークＡＶシステムを提供する。【解決手段】  コントロールポイントＣＰは、複数のテスト指示をサーバＳＶ１に送信する。サーバＳＶ１は、テスト指示ごとに異なる負荷を自身にかけ、各テスト指示での負荷情報をコントロールポイントＣＰに通知する。サーバＳＶ１はさらに、テスト指示により自身に所定の負荷をかけた後、テスト音声ファイルをデコードしてレンダラＲＥにストリーミング配信する。レンダラＲＥは、テスト音声ファイルを再生する。コントロールポイントＣＰは、再生されたテスト音声ファイルの出力波形情報を取得し、テスト指示に応じた負荷情報と出力波形情報とに基づいて、コンテンツが途切れにくいサーバの許容負荷レベルを設定する。【選択図】図１
2009230199.tif 000002
【特許請求の範囲】
【請求項１】
通常音声ファイル及びテスト音声ファイルを配信するサーバと、配信された通常音声ファイル及びテスト音声ファイルを再生するクライアントと、前記サーバ及びクライアントを制御するコントローラとを備えるネットワークＡＶシステムであって、
前記サーバは、
前記コントローラからテスト指示を受けるごとに、受けたテスト指示に応じた動作を実行して、前記テスト指示ごとに異なる負荷を自身にかけるテスト実行手段と、
前記各テスト指示で自身にかかった負荷に関するテスト負荷情報を前記コントローラに送信する送信手段と、
前記テスト指示に応じた負荷がかかった後、テスト音声ファイルをデコードして前記クライアントにストリーミング配信する配信手段とを備え、
前記クライアントは、
前記配信されたテスト音声ファイルを再生する再生手段と、
再生された前記テスト音声ファイルの出力波形に関する出力波形情報を前記コントローラに送信する出力波形送信手段とを備え、
前記コントローラは、
複数の前記テスト指示を送信する指示手段と、
前記テスト指示のテスト負荷情報と、前記出力波形情報とを対応付けて記憶する記憶手段と、
前記テスト負荷情報と前記出力波形情報とに基づいて、前記サーバが通常音声ファイルをストリーミング配信可能な許容負荷レベルを設定する許容負荷レベル設定手段とを備えることを特徴とするネットワークＡＶシステム。
【請求項２】
請求項１に記載のネットワークＡＶシステムであって、
前記許容負荷レベル設定手段は、
前記出力波形内の無音区間の数を前記出力波形情報ごとにカウントする無音区間カウント手段と、
前記記憶手段に記憶されたテスト負荷情報及び出力波形情報に基づいて、前記無音区間数が、予め設定された基準数に最も近い出力波形に対応する負荷を特定する第１の特定手段と、
第１の特定手段により特定された負荷を前記許容負荷レベルに決定する決定手段とを備えることを特徴とするネットワークＡＶシステム。
【請求項３】
請求項２に記載のネットワークＡＶシステムであって、
前記許容負荷レベル設定手段はさらに、
前記出力波形内の無音区間の総時間を前記出力波形情報ごとに求める無音時間算定手段と、
前記記憶手段に記憶されたテスト負荷情報及び出力波形情報に基づいて、前記無音区間の総時間が、予め設定された基準時間に最も近い出力波形に対応する負荷を特定する第２の特定手段とを備え、
前記決定手段は、前記第１及び第２の特定手段により特定された負荷のうち、小さい方の負荷を前記許容負荷レベルに決定することを特徴とするネットワークＡＶシステム。
【請求項４】
請求項３に記載のネットワークＡＶシステムであってさらに、
前記サーバはさらに、
自身にかかっている負荷に関する通常負荷情報を時系列に前記コントローラに送信する手段を備え、
前記コントローラはさらに、
前記サーバから、前記通常負荷情報を取得する手段と、
所定の通常音声ファイルの再生指示を受け付ける受付手段と、
前記再生指示を受け付けたとき、前記通常負荷情報と、前記設定された許容負荷レベルとに基づいて、前記サーバに前記通常音声ファイルをデコード及びストリーミング配信させるか否かを判断する判断手段とを備えることを特徴とするネットワークＡＶシステム。
【請求項５】
通常音声ファイル及びテスト音声ファイルを配信するサーバと、配信された通常音声ファイル及びテスト音声ファイルを再生するクライアントと、前記サーバ及びクライアントを制御するコントローラとを備えるネットワークＡＶシステムにおける前記コントローラであって、
前記サーバに所定の動作を実行させて負荷をかける複数のテスト指示を送信する指示手段と、
各テスト指示でサーバにかかった負荷に関するテスト負荷情報を取得する手段と、
前記テスト指示に応じた負荷がかかった状態の前記サーバからストリーミング配信されたテスト音声ファイルを前記クライアントが再生したときの出力波形に関する出力波形情報を取得する手段と、
前記テスト指示のテスト負荷情報と、前記出力波形情報とを対応付けて記憶する記憶手段と、
前記テスト負荷情報と前記出力波形情報とに基づいて、前記サーバが通常音声ファイルを配信可能な許容負荷レベルを設定する許容負荷レベル設定手段とを備えることを特徴とするコントローラ。
【請求項６】
請求項５に記載のコントローラであって、
前記許容負荷レベル設定手段は、
前記出力波形内の無音区間の数を前記出力波形情報ごとにカウントする無音区間カウント手段と、
前記記憶手段に記憶されたテスト負荷情報及び出力波形情報に基づいて、前記無音区間数が、予め設定された基準数に最も近い出力波形に対応する負荷を特定する第１の特定手段と、
第１の特定手段により特定された負荷を前記許容負荷レベルに決定する決定手段とを備えることを特徴とするコントローラ。
【請求項７】
請求項６に記載のコントローラであって、
前記許容負荷レベル設定手段はさらに、
前記出力波形内の無音区間の総時間を前記出力波形情報ごとに求める無音時間算定手段と、
前記記憶手段に記憶されたテスト負荷情報及び出力波形情報に基づいて、前記無音区間の総時間が、予め設定された基準時間に最も近い出力波形に対応する負荷を特定する第２の特定手段とを備え、
前記決定手段は、前記第１及び第２の特定手段により特定された負荷のうち、小さい方の負荷を前記許容負荷レベルに決定することを特徴とするコントローラ。
【請求項８】
請求項７に記載のコントローラであってさらに、
前記サーバにかかる負荷に関する通常負荷情報を時系列に取得する手段と、
ユーザ操作に応じて所定の通常音声ファイルの再生指示を受け付ける受付手段と、
前記再生指示を受け付けたとき、前記通常負荷情報と、前記設定された許容負荷レベルとに基づいて、前記サーバに前記通常音声ファイルをデコード及びストリーミング配信させるか否かを判断する判断手段とを備えることを特徴とするコントローラ。
【請求項９】
通常音声ファイル及びテスト音声ファイルを配信するサーバと、配信された通常音声ファイル及びテスト音声ファイルを再生するクライアントと、前記サーバ及びクライアントを制御するコントローラとを備えるネットワークＡＶシステムにおける前記コントローラに、
前記サーバに所定の動作を実行させて負荷をかける複数のテスト指示を送信するステップと、
各テスト指示でサーバにかかった負荷に関するテスト負荷情報を取得するステップと、
前記テスト指示に応じた負荷がかかった状態の前記サーバからストリーミング配信されたテストファイルを前記クライアントが再生したときの出力波形に関する出力波形情報を取得するステップと、
前記テスト指示のテスト負荷情報と、前記出力波形情報とを対応付けて記憶するステップと、
前記テスト負荷情報と前記出力波形情報とに基づいて、前記サーバが通常音声ファイルを配信可能な許容負荷レベルを設定するステップとを実行させることを特徴とする許容負荷レベル設定プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークＡＶシステム、コントローラ及び許容負荷レベル設定プログラムに関し、さらに詳しくは、通常音声ファイル及びテスト音声ファイルをデコードしてストリーミング配信するサーバと、サーバから配信される通常及びテスト音声ファイルを再生するクライアントと、サーバ及びクライアントを制御するコントローラとを備えるネットワークＡＶシステム、コントローラ及びコントローラに実行させる許容負荷レベル設定プログラムに関する。
【背景技術】
【０００２】
最近、家庭内のパーソナルコンピュータとＡＶ（Audio Visual）機器とを相互に接続したホームネットワークが登場している。たとえば、ＤＬＮＡ（Digital Living Network Alliance）ガイドラインに基づくホームネットワークでは、コントロールポイントと呼ばれるコントローラが、映像や音楽（音声）といったコンテンツを圧縮ファイルとして蓄積するサーバと、コンテンツを再生するレンダラとを制御する。このようなＤＬＮＡガイドラインに基づくホームネットワークでは、サーバは、圧縮ファイルをデコードし、デコードされたコンテンツを、クライアントであるレンダラにストリーミング配信する。
【０００３】
しかしながら、サーバに高い負荷がかかっているときに、ストリーミング配信が実行されれば、コンテンツの配信速度がレンダラの再生速度に追いつかず、再生中の映像や音声が途切れる場合がある。
【０００４】
上述のようなサーバにかかる負荷（以下、サーバ負荷という）に起因したコンテンツの途切れを抑制するためには、高負荷状態のサーバにコンテンツをストリーミング配信させなければよい。このような対策を行うためには、サーバ負荷がどの程度までであれば、スムーズにストリーミング配信が可能であるか、つまり、コンテンツの途切れが生じにくい許容負荷レベルを予め設定しておくのが好ましい。
【特許文献１】特開２００１−１０１１３４号公報
【特許文献２】特開２００１−２３６２９４号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
本発明の目的は、コンテンツの途切れが生じにくい負荷レベルを精度よく設定できる、ネットワークＡＶシステムを提供することである。
【課題を解決するための手段及び発明の効果】
【０００６】
本発明によるネットワークＡＶシステムは、サーバと、クライアントと、コントローラとを備える。サーバは、通常音声ファイル及びテスト音声ファイルを配信する。クライアントは、配信された通常音声ファイル及びテスト音声ファイルを再生する。コントローラは、サーバ及びクライアントを制御する。サーバは、テスト実行手段と、送信手段と、配信手段とを備える。テスト実行手段は、コントローラからテスト指示を受けるごとに、受けたテスト指示に応じた動作を実行して、テスト指示ごとに異なる負荷を自身にかける。送信手段は、各テスト指示で自身にかかった負荷に関するテスト負荷情報をコントローラに送信する。配信手段は、テスト指示に応じた負荷がかかった後、テスト音声ファイルをデコードしてクライアントにストリーミング配信する。クライアントは、再生手段と、出力波形送信手段とを備える。再生手段は、配信されたテスト音声ファイルを再生する。出力波形送信手段は、再生されたテスト音声ファイルの出力波形に関する出力波形情報をコントローラに送信する。コントローラは、指示手段と、記憶手段と、許容負荷レベル設定手段とを備える。指示手段は、複数のテスト指示を送信する。記憶手段は、各テスト指示のテスト負荷情報と、出力波形情報とを対応付けて記憶する。許容負荷レベル設定手段は、テスト負荷情報と出力波形情報とに基づいて、サーバが通常音声ファイルをストリーミング配信可能な許容負荷レベルを設定する。
【０００７】
本発明によるネットワークＡＶシステムでは、コントローラがテスト指示によりサーバの負荷を制御した上で、制御された負荷で得られたテスト音声ファイルの出力波形情報をクライアントから取得する。そして、制御された負荷と出力波形情報とに基づいて許容負荷レベルを設定する。サーバにかかる負荷と出力波形とに基づいて許容負荷レベルを設定できるため、許容負荷レベルを精度よく設定できる。
【０００８】
好ましくは、許容負荷レベル設定手段は、無音区間カウント手段と、第１の特定手段と、決定手段とを備える。無音区間カウント手段は、出力波形内の無音区間の数を出力波形情報ごとにカウントする。第１の特定手段は、記憶手段に記憶されたテスト負荷情報及び出力波形情報に基づいて、無音区間数が、予め設定された基準数に最も近い出力波形に対応する負荷を特定する。決定手段は、第１の特定手段により特定された負荷を許容負荷レベルに決定する。
【０００９】
好ましくは、許容負荷レベル設定手段はさらに、無音時間算定手段と、第２の特定手段とを備える。無音時間算定手段は、出力波形内の無音区間の総時間を出力波形情報ごとに求める。第２の特定手段は、記憶手段に記憶されたテスト負荷情報及び出力波形情報に基づいて、無音区間の総時間が、予め設定された基準時間に最も近い出力波形に対応する負荷を特定する。決定手段は、第１及び第２の特定手段により特定された負荷のうち、小さい方の負荷を許容負荷レベルに決定する。
【００１０】
この場合、許容負荷レベルをより精度よく設定できる。
【００１１】
好ましくは、サーバはさらに、自身に掛かっている負荷に関する通常負荷情報を時系列にコントローラに送信する手段を備える。コントローラはさらに、サーバから、通常負荷情報を取得する手段と、受付手段と、判断手段とを備える。受付手段は、  所定の通常音声ファイルの再生指示を受け付ける。判断手段は、再生指示を受け付けたとき、通常負荷情報と、設定された許容負荷レベルとに基づいて、サーバに通常音声ファイルをデコード及びストリーミング配信させるか否かを判断する。
【００１２】
この場合、許容負荷レベルを用いることにより、通常音声ファイルをサーバに配信させるか否かを判断できる。そのため、たとえば、サーバの負荷が許容負荷レベルを超えている場合に、サーバに配信させないこともでき、この場合、再生中の音声が途切れるのを抑制できる。
【００１３】
本発明によるコントローラは、上述のネットワークＡＶシステムに利用される。また、本発明による許容負荷レベル設定プログラムは、コントローラ内のコンピュータで実行される。
【発明を実施するための最良の形態】
【００１４】
以下、図面を参照し、本発明の実施の形態を詳しく説明する。図中同一又は相当部分には同一符号を付してその説明は繰り返さない。
【００１５】
［全体構成］
図１を参照して、本発明の実施の形態によるネットワークＡＶシステム１は、コントロールポイントＣＰと、複数のサーバＳＶ１〜ＳＶ３（これらを総称してサーバＳＶともいう）と、クライアントであるレンダラＲＥとを備える。これらは、ＤＬＮＡガイドラインに対応しており、ＵＰｎＰプロトコルに基づいて相互に接続される。図１に示されるレンダラＲＥは１つだが、２以上あってもよい。また、図１中のサーバＳＶは３つであるが、サーバＳＶの数は２つでもよいし、４以上あってもよい。
【００１６】
コントロールポイントＣＰは、サーバＳＶ１〜ＳＶ３及びレンダラＲＥを制御する。コントロールポイントＣＰは、サーバＳＶ１〜ＳＶ３に蓄積された複数の通常音声ファイル（以下、曲ファイルという）のうち、ユーザ操作により選択された曲ファイルの再生指示を受け付ける。再生指示を受け付けたとき、選択された曲ファイルを再生するようレンダラＲＥに指示する。レンダラＲＥは、コントロールポイントＣＰからの指示に応じて、選択された曲ファイルを蓄積するサーバＳＶに曲ファイルの配信を要求する。
【００１７】
サーバＳＶ１〜ＳＶ３は、複数の曲ファイルを蓄積する。蓄積された曲ファイルは、所定の圧縮形式（たとえば、ＭＰ３、ＡＡＣ、ＷＭＡ等）で圧縮されている。各サーバＳＶは、レンダラＲＥからの要求に応じて、選択された曲ファイルをデコードし、デコードされた曲ファイルをレンダラＲＥにストリーミング配信する。レンダラＲＥはストリーミング配信された曲ファイルを受け、曲を再生する。
【００１８】
以下、コントロールポイントＣＰ、サーバＳＶ及びレンダラＲＥの構成をそれぞれ説明する。
【００１９】
［コントロールポイント］
図２を参照して、コントロールポイントＣＰは、ＣＰＵ（Central Processing Unit）１１と、メモリ１２と、サーバＳＶ１〜３及びレンダラＲＥと通信するための通信部１３と、ハードディスクドライブ（以下、ＨＤＤという）１４と、ディスプレイ１５とを備える。
【００２０】
ＨＤＤ１４は、通常負荷情報データベース１４１を記憶する。通常負荷情報データベース１４１には、図３に示すとおり、通常モード時に、サーバＳＶ１〜ＳＶ３の各々にかかる負荷に関する情報（以下、通常負荷情報という）が登録される。ここで、通常負荷情報は、各サーバＳＶ１〜ＳＶ３にかかる時系列の負荷データから構成される。本実施の形態では、負荷データは、各サーバＳＶ１〜ＳＶ３のＣＰＵ使用率とする。たとえば、図３において、時刻ｔ０１におけるサーバＳＶ１の負荷データ（ＣＰＵ使用率）は１０％である。負荷データは、所定時間ごとに各サーバＳＶからコントロールポイントＣＰに送信される。要するに、コントロールポイントＣＰは、通常モード時に各サーバＳＶにかかっている負荷を監視する。
【００２１】
ＨＤＤ１４はさらに、ベンチマークプログラム１４２と、テスト音声ファイル１４３と、テスト負荷情報データベース１４４と、再生テスト結果データベース１４５と、許容負荷レベルデータベース１４６とを記憶する。
【００２２】
コントロールポイントＣＰは、テストモード時、ＨＤＤ１４に記憶されたベンチマークプログラム１４２を各サーバＳＶに送信する。テスト動作時、各サーバＳＶではベンチマークプログラム１４２を用いて負荷テストが実行される。ベンチマークプログラム１４２は、コントロールポイントＣＰのテスト指示に応じて種々の動作を各サーバＳＶに実行させ、各サーバＳＶにかかる負荷をテスト指示ごとに変更する。テスト負荷情報データベース１４４には、各テスト指示に対応したサーバＳＶの負荷データ（以下、テスト負荷情報ともいう）が登録される。
【００２３】
コントロールポイントＣＰはさらに、テストモード時、複数のテスト音声ファイル１４３を各サーバＳＶに送信する。複数のテスト音声ファイル１４３は、非圧縮状態の同一内容の音声ファイルを種々の圧縮形式で圧縮されたファイルである。本実施の形態では、複数のテスト音声ファイルは、出力波形が正弦波となる音声ファイルを種々の圧縮形式で圧縮されたファイルとし、たとえば、ＭＰ３形式で圧縮されたテスト音声ファイルＴＦｍｐ３や、ＡＡＣ形式で圧縮されたテスト音声ファイルＴＦａａｃや、ＷＭＡ形式で圧縮されたテスト音声ファイルＴＦｗｍａである。なお、テスト音声ファイルの出力波形は正弦波に限られない。
【００２４】
許容負荷レベルデータベース１４６には、テストモード時に設定された各サーバの許容負荷レベルが登録される。
【００２５】
ＨＤＤ１４はさらに、許容負荷レベル設定プログラム１４７を記憶する。許容負荷レベル設定プログラム１４７がメモリ１２にロードされ、ＣＰＵ１１で実行されることで、コントロールポイントＣＰは、以降に説明するように、各サーバＳＶの許容負荷レベルを設定する。
【００２６】
なお、図示していないが、ＨＤＤ１４には、各サーバＳＶに蓄積された複数の曲ファイルの詳細及び所在に関する情報（以下、コンテンツ情報という）が登録される。具体的には、コンテンツ情報は、各曲ファイルを特定するための曲ＩＤ、曲のタイトルや歌手名といった曲の詳細情報、及び曲ファイルの所在情報であるＵＲＩ（Uniform Resource Identifier）を含む。コンテンツ情報は、各サーバＳＶに蓄積された曲ファイルが更新されるごとに各サーバＳＶからコントロールポイントＣＰに送信される。
【００２７】
ディスプレイ１５は、各サーバＳＶが蓄積する曲を列挙したプレイリストを表示したり、レンダラＲＥの動作状況（曲再生中、停止中等）を表示したりする。なお、プレイリストはコンテンツ情報に基づいて作成され、ディスプレイ１５に表示される。ユーザは、ディスプレイ１５に表示されたプレイリストを参照し、所望の曲ファイルを選択する。
【００２８】
［サーバ］
図４を参照して、各サーバＳＶは、ＣＰＵ２１と、メモリ２２と、コントロールポイントＣＰやレンダラＲＥ等と通信するための通信部２３と、ＨＤＤ２４とを備える。
【００２９】
ＨＤＤ２４は、曲データベース２４１を記憶する。曲データベース２４１には、複数の曲ファイルが登録される。曲データベース２４１にはさらに、登録された複数の曲ファイルに対応したコンテンツ情報が登録される。サーバＳＶは曲データベース２４１内に新たな曲ファイルが追加されたり、曲ファイルを削除した場合、つまり、曲データベース２４１が更新された場合、コンテンツ情報を更新し、コントロールポイントＣＰに送信する。
【００３０】
ＨＤＤ２４はさらに、サーバプログラム２４２を記憶する。サーバプログラム２４２がメモリ２２にロードされ、ＣＰＵ２１がメモリ２２にロードされたサーバプログラム２４２を実行することにより、サーバＳＶは後述の動作を実行する。
【００３１】
［レンダラ］
図５を参照して、レンダラＲＥは、ＣＰＵ３１と、レンダラプログラムを格納するメモリ３２と、外部と通信するための通信部３３と、サーバＳＶからストリーミング配信された曲ファイルを再生するための再生部３４とを備える。ＣＰＵ３１がメモリ３２に格納されたレンダラプログラムを実行することにより、レンダラＲＥは後述の動作を実行する。
【００３２】
［動作概要］
上述の構成を有するネットワークＡＶシステム１の動作について説明する。コントロールポイントＣＰは、曲ファイルの再生等を指示する通常モードと、各サーバＳＶの許容負荷レベルを設定するテストモードとを有する。
【００３３】
［通常モード］
通常モード時、コントロールポイントＣＰは、ユーザ操作により選択された曲の再生指示を受け付ける。そして、再生指示を受けたとき、選択された曲ファイルを蓄積するサーバＳＶを特定し、レンダラＲＥに対して選択された曲ファイルの再生指示を送信する。再生指示には、曲ファイルを蓄積するサーバの所在情報が含まれる。レンダラＲＥは、再生指示を受け、選択された曲ファイルを蓄積するサーバＳＶに曲ファイルを要求する。サーバＳＶは、レンダラＲＥからの要求を受けたとき、選択された曲ファイルをデコードしてストリーミング配信する。以上の動作により、レンダラＲＥは曲ファイルを再生する。
【００３４】
［テストモード］
一方、テストモード時、コントロールポイントＣＰは、サーバＳＶに対して、負荷テストと、再生テストとを実行する。コントロールポイントＣＰは、負荷テストを実行することにより、各サーバＳＶに与える負荷を制御できる。また、再生テストにより、各サーバＳＶの許容負荷レベルを設定できる。なお、コントロールポイントＣＰは、各サーバＳＶごとに、負荷テスト及び再生テストを実行する。
【００３５】
［負荷テスト］
負荷テストでは、ベンチマークプログラム１４２により、サーバＳＶが自身に負荷をかける。ベンチマークプログラム１４２は、コントロールポイントＣＰから送信されるテスト指示により実行される。ベンチマークプログラム１４２は、テスト指示に含まれる負荷パラメータＬＰの値に応じて、各サーバＳＶのＣＰＵ２１に実行させる動作の種類を変更したり、ＣＰＵ２１に実行させる動作数を増減する。つまり、ベンチマークプログラム１４２は、テスト指示内の負荷パラメータＬＰに応じて、各サーバＳＶにかける負荷を増減できる。本実施の形態では、ベンチマークプログラム１４２は、負荷パラメータＬＰの数値が大きくなる程、各サーバＳＶにかける負荷を増大する。
【００３６】
コントロールポイントＣＰは、各サーバＳＶにベンチマークプログラム１４２を送信する。そして、各サーバＳＶに格納されたベンチマークプログラム１４２に対して、テスト指示を送信する。テスト指示には、上述のとおり、負荷パラメータＬＰが含まれる。コントロールポイントＣＰは、異なる負荷パラメータＬＰを含む複数のテスト指示を時系列にサーバＳＶに送信し、テスト指示（負荷パラメータＬＰ）ごとにサーバＳＶにかかった負荷データ（ここでは、ＣＰＵ使用率とする）を取得する。図６に示すように、取得された負荷データは、負荷パラメータＬＰを対応付けてテスト負荷情報データベース１４４に登録される。
【００３７】
コントロールポイントＣＰは、各サーバＳＶで負荷テストを実施し、負荷データを取得する。そのため、コントロールポイントＣＰは、負荷テストを実施した後、テスト負荷情報データベース１４４に基づいて、各サーバＳＶに所望の負荷を与えることができる。要するに、負荷テストを実施することにより、コントロールポイントＣＰは、各サーバＳＶに与える負荷を制御可能となる。
【００３８】
［再生テスト］
負荷テストによりコントロールポイントＣＰが各サーバＳＶの負荷を制御可能とした後、再生テストが実行される。
【００３９】
再生テストでは、コントロールポイントＣＰは、サーバＳＶに所定の負荷Ｌｎを与えた後、テスト音声ファイル１４３の再生指示をレンダラＲＥに送信する。レンダラＲＥは再生指示に基づいて、サーバＳＶにテスト音声ファイル１４３を要求する。サーバＳＶは、コントロールポイントＣＰからのテスト指示により所定の負荷Ｌｎがかかった状態となった後、レンダラＲＥからの要求に応じてテスト音声ファイル１４３をデコードし、レンダラＲＥにストリーミング配信する。レンダラＲＥは、ストリーミング配信されたテスト音声ファイルを順次再生する。このとき、レンダラＲＥはテスト音声ファイル１４３の出力波形を記録し、再生完了後に、再生中のテスト音声ファイルの出力波形に関する情報（以下、出力波形情報という）をコントロールポイントＣＰに送信する。
【００４０】
コントロールポイントＣＰは、出力波形情報に基づいて、テスト音声ファイルを再生したときの音切れの発生具合を分析する。コントロールポイントＣＰは、サーバにかける負荷Ｌｎを順次増加しながら、各負荷Ｌｎでの出力波形情報を取得する。そして、取得された出力波形情報に基づいて、音切れを抑制可能な負荷Ｌｎの最大値を許容負荷レベルに設定する。
【００４１】
以上の動作により、コントロールポイントＣＰは、各サーバＳＶの許容負荷レベルを設定する。許容負荷レベルを用いれば、レンダラＲＥから出力される音声の音切れを抑制できる。たとえば、ユーザがコントロールポイントＣＰに曲の再生指示を入力したとき、コントロールポイントＣＰは、各サーバＳＶにかかる通常負荷情報と許容負荷レベルとに基づいて、サーバＳＶに曲のデコード及びストリーミング配信させるか否かを判断できる。より具体的には、通常負荷情報と各サーバＳＶの許容負荷レベルとを比較して、音切れの発生しにくいサーバＳＶを選択して曲ファイルを再生させたり、音切れの発生しにくいサーバＳＶが存在しない場合は、再生を拒否することができる。
【００４２】
また、許容負荷レベルを各サーバＳＶに与えれば、各サーバＳＶが、自身の現在の負荷と許容負荷レベルとを比較して、現在の負荷が許容負荷レベルよりも低ければ、曲ファイルをデコードし、許容負荷レベルよりも高ければ、曲ファイルのデコードを開始しないこともできる。
【００４３】
なお、負荷テスト及び再生テストは、各サーバＳＶがネットワークＡＶシステム１に最初に接続されたときに実行され、２回目以降の接続時には実行される必要はない。以下、上述の負荷テスト及び再生テストの詳細を説明する。なお、以降の説明では、負荷テスト及び再生テストの対象となるサーバＳＶをサーバＳＶ１として説明するが、サーバＳＶ２及びＳＶ３に対しても同様のテストが実行される。
【００４４】
［負荷テスト時の動作処理］
コントロールポイントＣＰは、テストモード時に負荷テスト及び再生テストを実施する。このとき、コントロールポイントＣＰは初めに、サーバＳＶ１に、現在実行している動作処理を停止するよう処理中断指示を送信する。処理中断指示を受けたサーバＳＶ１は、実行中の動作処理を停止し、自身にかかる負荷（ＣＰＵ使用率）を所定の下限値（たとえば１％）以下とする。サーバＳＶ１は、自身にかかる負荷が所定の下限値以下となったとき、コントロールポイントにその旨を通知する。
【００４５】
図７を参照して、コントロールポイントＣＰは、上述の通知を受けた後、負荷テストの対象となるサーバＳＶ１にベンチマークプログラム１４２を送信する（Ｓ１）。サーバＳＶ１はベンチマークプログラム１４２を受信し、ＨＤＤ２４に保存する（Ｓ２）。保存後、サーバＳＶ１はベンチマークプログラム１４２の受理通知をコントロールポイントＣＰに送信する（Ｓ３）。
【００４６】
コントロールポイントＣＰは、受理通知を受信した後（Ｓ４）、ベンチマークプログラム１４２に送信するテスト指示に含む負荷パラメータＬＰを「α」に設定する（Ｓ５）。ここで、αは自然数とし、本実施の形態では「５」とする。上述のとおり、ベンチマークプログラム１４２は、負荷パラメータＬＰが大きいほど、サーバＳＶに与える負荷を増加する。
【００４７】
負荷パラメータＬＰを設定した後、コントロールポイントＣＰは、サーバＳＶ１に対して、テスト指示を送信する（Ｓ６）。テスト指示は、ステップＳ５で設定された負荷パラメータＬＰ（ここでは５）を含む。
【００４８】
サーバＳＶ１は、テスト指示を受け、ベンチマークプログラム１４２を実行する。ベンチマークプログラム１４２は、テスト指示内の負荷パラメータＬＰに応じた動作をＣＰＵ２１に実行させ、これにより、サーバＳＶ１に負荷がかかる（Ｓ７）。
【００４９】
サーバＳＶ１は、ベンチマークプログラム１４２の実行を開始した後、自身にかかる負荷（ここではＣＰＵ使用率）を監視する（Ｓ８）。そして、図８に示すように、負荷が定常状態になったとき（Ｓ８でＹＥＳ）、定常状態時の負荷Ｌｎを求め、負荷ＬｎをコントロールポイントＣＰに送信する（Ｓ９）。ステップＳ８の判断は、たとえば、以下のとおりに行われる。サーバＳＶは所定期間ΔｔごとにＣＰＵ２１にかかる負荷を求める。そして、求めた負荷と前回求めた負荷との差分ΔＬが所定の値以下となったとき、サーバＳＶは負荷が定常状態になったと判断する。定常状態になってから所定の期間（Δｔよりも長い時間）が経過した後、サーバは、定常状態になった後に所定時間Δｔごとに求めた負荷の平均を算出し、算出された負荷を負荷Ｌｎと定義する。ステップＳ９で、サーバＳＶは、負荷Ｌｎとともに、自身の識別ＩＤ（以下、サーバＩＤという）も送信する。
【００５０】
コントロールポイントＣＰは、負荷Ｌｎを受けたとき（Ｓ１０）、テスト負荷情報データベース１４４を参照する。そして、負荷Ｌｎを送信したサーバＳＶ１のテスト負荷情報が、テスト負荷情報データベース１４４に登録されているか否かを判断する（Ｓ１１）。図６に示すように、テスト負荷情報データベース１４４には、サーバＳＶごとのテスト負荷情報が登録される。具体的には、テスト負荷情報データベース１４４には、サーバＩＤと、負荷パラメータＰＬと、負荷パラメータＰＬに対応した負荷データ（サーバ負荷）とが登録される。
【００５１】
コントロールポイントＣＰは、ステップＳ９で受けたサーバＩＤ＝ＳＶ１のサーバ負荷Ｌｎが、テスト負荷情報データベース１４４に既に登録されているか否かを判断する。コントロールポイントＣＰは、今回初めてサーバＳＶ１から負荷データＬｎを受信したため、テスト負荷情報データベース１４４には、サーバＩＤ＝ＳＶ１の負荷データは登録されていない（Ｓ１１でＮＯ）。
【００５２】
そこで、コントロールポイントＣＰは、負荷データＬｎが基準負荷Ｌｒｅｆよりも大きいか否かを判断する（Ｓ１２）。基準負荷Ｌｒｅｆは予め設定されている基準値であり、たとえば、基準負荷Ｌｒｅｆは５％とする。
【００５３】
コントロールポイントＣＰは、後述の再生テスト時に、テスト負荷情報データベース１４４に基づいてサーバＳＶ１に所望の負荷を与える。そのため、テスト負荷情報データベースには、サーバＳＶ１の負荷Ｌｎを低く設定できる負荷パラメータＬＰを登録しておく必要がある。そのため、基準負荷Ｌｒｅｆ以下の負荷Ｌｎが取得されるように、ステップＳ１２が設けられている。
【００５４】
ステップＳ１２で判断の結果、負荷Ｌｎが基準値Ｌｒｅｆよりも大きいとき、たとえば、負荷Ｌｎが７％である場合（Ｓ１２でＹＥＳ）、コントロールポイントＣＰは、負荷パラメータＰＬをデクリメントしてＰＬ＝４とし（Ｓ１３）、ステップＳ６に戻る。要するにこの場合、ベンチマークプログラム１４２は、サーバＳＶに与える負荷を前回より下げる。
【００５５】
一方、ステップＳ１２で判断の結果、負荷Ｌｎが基準値Ｌｒｅｆ以下であったとき（Ｓ１２でＮＯ）、コントロールポイントＣＰは、負荷ＬｎをステップＳ５で設定された負荷パラメータＬＰとともに、テスト負荷情報データベース１４４に登録する（Ｓ１４）。そして、登録された負荷Ｌｎが１００％でない場合（Ｓ１５でＮＯ）、負荷パラメータＬＰをインクリメントしてＬＰ＝６とし（Ｓ１６）、ステップＳ６に戻る。要するに、コントロールポイントＣＰは、負荷パラメータＬＰを順次インクリメントして、順次テスト指示をサーバＳＶ１に送信する。そして、テスト指示ごとに、ベンチマークプログラム１４２がサーバＳＶに与える負荷を増加させ、テスト指示（負荷パラメータＬＰ）ごとの負荷データＬｎをテスト負荷情報データベース１４４に順次登録する（Ｓ１４）。登録された負荷Ｌｎが１００％となったとき（Ｓ１５でＹＥＳ）、コントロールポイントＣＰは負荷テストを終了する。
【００５６】
以上の負荷テストにより作成されたサーバＳＶ１のテスト負荷情報データベース１４４の一例は図６に示すとおりである。コントロールポイントＣＰは、ネットワークＡＶシステム１上の全てのサーバＳＶ１〜ＳＶ３について、負荷テストを実施し、図６に示すようなテスト負荷情報データベース１４４を作成する。
【００５７】
負荷テストを実行してサーバＳＶ１のテスト負荷情報を取得した結果、コントロールポイントＣＰは、サーバＳＶ１に所望の負荷を与えることができる。たとえば、コントロールポイントＣＰが、サーバＳＶ１の負荷を１５％にしたい場合、コントロールポイントＣＰは、負荷パラメータＬＰ＝７としたテスト指示をサーバＳＶ１に送信すればよい。テスト指示を受けたサーバＳＶ１内のベンチマークプログラム１４２は、負荷パラメータＬＰ（＝７）に基づいて、サーバＳＶ１に負荷を与える。その結果、サーバＳＶ１の負荷が１５％となる。
【００５８】
［再生テスト時の動作処理］
負荷テストを実施した後、コントロールポイントＣＰは、サーバＳＶ１に対して再生テストを実行する。再生テスト時、コントロールポイントＣＰはまず、レンダラＲＥにテスト音声ファイル１４３を再生させ、出力波形情報を取得する（波形取得処理）。そして、取得した出力波形情報に基づいて、許容負荷レベルを設定する（レベル設定処理）。
【００５９】
［波形取得処理］
図９を参照して、コントロールポイントＣＰはまず、サーバＳＶ１に圧縮形式の異なる複数のテスト音声ファイル１４３を送信する（Ｓ１０１）。コントロールポイントＣＰは、波形取得処理を実行する前に、サーバＳＶ１がデコード可能な圧縮形式に関する情報（圧縮形式情報）を、サーバＳＶ１から取得する。コントロールポイントＣＰは、取得された圧縮形式情報に基づいて、サーバＳＶ１が対応可能な圧縮形式のテスト音声ファイル１４３を全て送信する。たとえば、サーバＳＶ１が、ＭＰ３形式、ＡＡＣ形式及びＷＭＡ形式のファイルをデコードできる場合、コントロールポイントＣＰは、ＭＰ３形式のテスト音声ファイルＴＦｍｐ３と、ＡＡＣ形式のテスト音声ファイルＴＦａａｃと、ＷＭＡ形式のテスト音声ファイルＴＦｗｍａとをサーバＳＶ１に送信する。なお、これらのテスト音声ファイルＴＦｍｐ３、ＴＦａａｃ、ＴＦｗｍａの圧縮前のデータは、全て同じ音声ファイルである。本実施の形態では、テスト音声ファイルは、デコード後の出力波形が正弦波となる音声ファイルとする。
【００６０】
サーバＳＶ１は、複数のテスト音声ファイルＴＦｍｐ３、ＴＦａａｃ及びＴＦｗｍａを受信し、メモリ２２に格納する（Ｓ１０２）。そして、複数のテスト音声ファイル１４３の受理通知をコントロールポイントＣＰに送信する（Ｓ１０３）。
【００６１】
コントロールポイントＣＰは、受理通知を受けた後、送信した複数のテスト音声ファイル１４３（ＴＦｍｐ３、ＴＦａａｃ、ＴＦｗｍａ）の中から、調査対象とするテスト音声ファイルを選択する（Ｓ１０４）。ここでは、対象テスト音声ファイルとしてＴＦｍｐ３を選択した仮定して説明を続ける。
【００６２】
テスト音声ファイルＴＦｍｐ３を選択後、コントロールポイントＣＰは、テスト負荷情報データベース１４４から、サーバＳＶ１のテスト負荷情報を読み出す（Ｓ１０５）。そして、テスト負荷情報内の負荷パラメータのうち、最小の負荷パラメータＰＬｍｉｎを指定負荷パラメータとし（Ｓ１０６）、指定負荷パラメータＰＬｍｉｎを含むテスト指示をサーバＳＶ１に送信する。ここでは、図６に示すとおり、指定負荷パラメータＰＬを「５」に設定する。
【００６３】
テスト指示を受けたサーバＳＶ１は、ベンチマークプログラム１４２を実行する（Ｓ１０８）。そして、自身にかかる負荷が定常状態になったとき（Ｓ１０９でＹＥＳ）、コントロールポイントＣＰにその旨を通知し（Ｓ１１０）、コントロールポイントＣＰはその通知を受ける（Ｓ１１１）。これにより、サーバＳＶ１は、５％の負荷がかかった状態となる。なお、ステップＳ１１０でサーバＳＶ１から負荷データ（５％）が通知されてもよい。
【００６４】
サーバＳＶ１に５％の負荷がかかった状態で、コントロールポイントＣＰは、テスト音声ファイルＴＦｍｐ３の再生指示をレンダラＲＥに送信する（Ｓ１１２）。再生指示は、再生するファイルに関する情報（ここではテスト音声ファイルＴＦｍｐ３に関する情報）と、配信元となるサーバＳＶ１に関する情報とを含む。レンダラＲＥは、再生指示を受け（Ｓ１１３）、再生指示に基づいて、サーバＳＶ１に対して、テスト音声ファイルＴＦｍｐ３の配信要求を送信する（Ｓ１１４）。
【００６５】
サーバＳＶ１は、テスト音声ファイルＴＦｍｐ３の配信要求を受けたとき（Ｓ１１５）、メモリ２２に格納されたテスト音声ファイルＴＦｍｐ３をデコードし、レンダラＲＥにストリーミング配信する（Ｓ１１６）。つまり、サーバＳＶ１は、５％の負荷がかかった状態からさらに、デコード処理及びストリーミング配信処理を実行する。
【００６６】
レンダラＲＥはストリーミング配信されたデータを受信し、再生を開始する（Ｓ１１７）。このとき、レンダラＲＥは、再生されたデータの出力波形を時系列にメモリ３２に記録していく（Ｓ１１８）。そして、テスト音声ファイルＴＦｍｐ３の再生が完了した後（Ｓ１１９でＹＥＳ）、保存された出力波形を示す出力波形情報ＯＷ１をコントロールポイントＣＰに送信する（Ｓ１２０）。出力波形情報ＯＷ１は、図１０に示すような出力波形図に関する情報である。出力波形図の縦軸は、テスト音声ファイルから生成された信号の振幅を示し、横軸は、時間を示す。
【００６７】
コントロールポイントＣＰは、出力波形情報ＯＷ１を受信し、再生テスト結果データベース１４５に登録する（Ｓ１２１）。再生テスト結果データベース１４５の一例を図１１に示す。再生テスト結果データベース１４５には、サーバＩＤと、再生を実行したテスト音声ファイル１４３の識別情報と、ステップＳ１０７でテスト指示に含めた負荷パラメータＰＬ値と、そのテスト指示でベンチマークプログラム１４２が実行されたときにサーバＳＶ１にかかる負荷と、ステップＳ１２０で送信された出力波形情報とが登録される。
【００６８】
続いて、コントロールポイントＣＰは、ステップＳ１０７で送信されたテスト指示中の指定負荷パラメータＰＬが最大値か否かを判断する（Ｓ１２２）。具体的には、コントロールポイントＣＰは、テスト負荷情報データベース１４４内のサーバＳＶ１のテスト負荷情報を参照し、ステップＳ１０７で送信された指定負荷パラメータＰＬが、テスト負荷情報内の負荷パラメータＰＬの最大値か否かを判断する。最大値でない場合（Ｓ１２２でＮＯ）、コントロールポイントＣＰは、指定負荷パラメータＰＬをインクリメントして「６」とし（Ｓ１２３）、ステップＳ１０７に戻る。要するに、コントロールポイントＣＰは、テスト負荷情報に含まれる全ての負荷パラメータＰＬに対して、出力波形情報ＯＷを取得する。
【００６９】
テスト負荷情報に含まれる全ての負荷パラメータＰＬに対して、出力波形情報ＯＷを取得したとき（Ｓ１２２でＹＥＳ）、コントロールポイントＣＰは、Ｓ１０１で送信された全てのテスト音声ファイル１４３に対して出力波形情報ＯＷを取得したか否かを判断する（Ｓ１２４）。そして、出力波形情報ＯＷを取得していないテスト音声ファイルＴＦが存在する場合は（Ｓ１２４でＮＯ）、ステップＳ１０４に戻る。一方、全てのテスト音声ファイル１４３に対して出力波形情報ＯＷを取得している場合（Ｓ１２４でＹＥＳ）、波形取得処理を終了する。
【００７０】
以上の動作により、コントロールポイントＣＰは、再生テスト結果データベース１４５に、各テスト音声ファイル１４３の出力波形情報ＯＷを登録する。波形取得処理が完了した後の再生テスト結果データベース１４５の一例を図１２に示す。
【００７１】
［レベル設定処理］
レベル設定処理では、コントロールポイントＣＰは、波形取得処理により作成された再生テスト結果データベース１４５に基づいて、サーバＳＶ１の許容負荷レベルを設定する。ここで、コントロールポイントＣＰは、各テスト音声ファイル１４３ごとに許容負荷レベルを設定する。
【００７２】
初めに、レベル設定処理の概要を説明する。図１３（ａ）〜（ｅ）を参照して、コントロールポイントＣＰは、所定のテスト音声ファイル１４３（たとえばＴＦｍｐ３）で得られた、負荷パラメータごとの出力波形情報を読み出す。そして、各出力波形情報で示される出力波形で発生した音切れの数をカウントする。図１３（ｂ）に示すように、音切れが発生するとき、出力波形の振幅は「０」になる。そのため、出力波形に無音区間ｓｔ１が発生する。そこで、コントロールポイントＣＰは、各出力波形で、無音区間（振幅が「０」となる区間）の発生回数をカウントする。
【００７３】
各出力波形の無音区間の数をカウントした後、コントロールポイントＣＰは、許容負荷レベルを決定する。具体的には、コントロールポイントＣＰは、予め設定された基準数ＳＮｒｅｆ以下であり、かつ、基準数ＳＮｒｅｆに最も近い無音区間数を有する出力波形を特定する。たとえば、ＳＮｒｅｆ＝３である場合、コントロールポイントＣＰは、負荷パラメータＰＬ＝２０の出力波形（図１３（ｃ））を特定する。そして、特定された出力波形の負荷パラメータＰＬ＝２０に対応するサーバＳＶ１の負荷Ｌｎ＝８９％を、サーバＳＶ１におけるｍｐ３形式の曲ファイルの許容負荷レベルに決定する。
【００７４】
以上のとおり、コントロールポイントＣＰは、出力波形情報に基づいて、許容負荷レベルを各サーバＳＶの圧縮形式ごとに設定する。なお、上述では、出力波形に現れる無音区間数に基づいて許容負荷レベルを設定したが、次に説明するとおり、無音区間数及び無音区間の総時間に基づいて、許容負荷レベルを設定することもできる。以下、レベル設定処理を詳述する。
【００７５】
図１４を参照して、コントロールポイントＣＰは、サーバＳＶ１がデコード可能な圧縮形式ごとに、許容負荷レベルを設定する。コントロールポイントＣＰはまず、設定対象となるテスト音声ファイル１４３を選択する（Ｓ２０１）。具体的には、コントロールポイントＣＰは、図１２に示した再生テスト結果データベース１４５を参照し、設定対象となるテスト音声ファイルを「ＴＦｍｐ３」とする。つまり、コントロールポイントＣＰは、以降の動作により、サーバＳＶ１の圧縮形式「ｍｐ３」について、許容負荷レベルを設定する。
【００７６】
コントロールポイントＣＰは、指定負荷パラメータＰＬを、再生テスト結果データベース１４５のうち、最小の値（ここではＰＬ＝５）に設定する（Ｓ２０２）。そして、指定負荷パラメータＰＬに対応した出力波形情報ＯＷ１を読み出す（Ｓ２０３）。
【００７７】
コントロールポイントＣＰは、読み出された出力波形情報ＯＷ１について、無音区間数ＳＮをカウントする（Ｓ２０４）。たとえば、読み出された出力波形が図１３（ｃ）である場合、無音区間ｓｔ２〜ｓｔ４が出力波形上に存在するため、無音区間数は３となる。コントロールポイントＣＰはさらに、無音区間の総時間（以下、無音時間という）ＳＴも算出する（Ｓ２０５）。たとえば、読み出された出力波形が図１３（ｃ）である場合、無音時間ＳＴは、各無音区間の合計時間（ｓｔ２＋ｓｔ３＋ｓｔ４）となる。無音区間数ＳＮ及び無音時間ＳＴは、指定負荷パラメータＰＬと対応付けてメモリ１２に格納される（Ｓ２０６）。なお、読み出された出力波形が図１３（ｄ）である場合、無音区間数ＳＮは５であり、無音時間ＳＴはｓｔ５〜ｓｔ９の総計である。また、読み出された出力波形が図１３（ｅ）である場合、無音区間数ＳＮは７であり、無音時間ｓｔ１０〜ｓｔ１６の総計である。
【００７８】
無音区間数ＳＮ及び無音時間ＳＴを決定した後、コントロールポイントＣＰは、指定負荷パラメータが最大値（ここではＰＬ＝２５）であるか否かを判断する（Ｓ２０７）。指定負荷パラメータが最大値でない場合（Ｓ２０７でＮＯ）、指定負荷パラメータをインクリメントし（Ｓ２０８）、ステップＳ２０３に戻る。要するに、コントロールポイントＣＰは、再生テスト結果データベース１４５内の全ての負荷パラメータＰＬについて、無音区間数ＳＮ及び無音時間ＳＴを求める。
【００７９】
全ての負荷パラメータＰＬについて無音区間数ＳＮ及び無音時間ＳＴを求めたとき（Ｓ２０７でＹＥＳ）、コントロールポイントＣＰは、サーバＳＶ１のＭＰ３形式の曲ファイルに対する許容負荷レベルを設定する。コントロールポイントＣＰはまず、メモリ１２に格納された無音区間数ＳＮのうち、予め設定されている基準数ＳＮｒｅｆ以下であり、かつ、基準数ＳＮｒｅｆに最も近い無音区間数ＳＮを検索する。そして、検索により見つかった無音区間数に対応する負荷パラメータＰＬを特定する。コントロールポイントＣＰは、再生テスト結果データベース１４５に基づいて、特定された負荷パラメータＰＬに対応したサーバ負荷ＬＯ１を特定する（Ｓ２０９）。このステップにより、コントロールポイントＣＰは、無音区間数に基づく許容負荷レベルＬＯ１を特定する。
【００８０】
続いて、コントロールポイントＣＰは、メモリ１２に格納されている複数の無音時間ＳＴのうち、予め設定されている基準時間ＳＴｒｅｆ以下であり、かつ、基準時間ＳＴｒｅｆに最も近い無音時間ＳＴを検索する。そして、検索により見つかった無音時間ＳＴに対応する負荷パラメータＰＬを特定する。さらに、再生テスト結果データベース１４５に基づいて、特定された負荷パラメータに対応するサーバ負荷ＬＯ２を特定する（Ｓ２１０）。このステップにより、コントロールポイントＣＰは、無音時間に基づく許容負荷レベルＬＯ２を特定する。
【００８１】
続いて、コントロールポイントＣＰは、無音区間数ＳＮのみで許容負荷レベルを設定するか否かを判断する（Ｓ２１１）。許容負荷レベルを無音区間数ＳＮのみで設定するか否かは、たとえば、ユーザにより選択される。選択された結果は、メモリ１２に格納されている。コントロールポイントＣＰは、メモリ１２に格納された選択結果を読み出して、ステップＳ２１１の判断を行う。
【００８２】
ステップＳ２１１の判断の結果、無音区間数ＳＮのみで許容負荷レベルを決定する場合（Ｓ２１１でＹＥＳ）、コントロールポイントＣＰは、負荷ＬＯ１を、サーバＳＶ１のＭＰ３形式の曲ファイルに対する許容負荷レベルとして設定する（Ｓ２１３）。このとき、コントロールポイントＣＰは、図１５に示す許容負荷レベルデータベース１４６に、負荷ＬＯ１を登録する。許容負荷レベルデータベース１４６は、サーバＩＤと、ファイルの圧縮形式と、許容負荷レベルとを対応づけて登録する。
【００８３】
一方、ステップＳ２１１で判断の結果、無音区間数ＳＮのみで許容負荷レベルを決定しない場合（Ｓ２１１でＮＯ）、コントロールポイントＣＰは、ステップＳ２０９で決定された負荷ＬＯ１と、ステップＳ２１０で決定された負荷ＬＯ２とを比較する（Ｓ２１２）。そして、値の低い方を許容負荷レベルに設定する（Ｓ２１２〜Ｓ２１４）。たとえば、負荷ＬＯ１が負荷ＬＯ２以下である場合（Ｓ２１２でＹＥＳ）、コントロールポイントＣＰは、負荷ＬＯ１を許容負荷レベルに決定し、許容負荷レベルデータベース１４６に登録する（Ｓ２１３）。一方、負荷ＬＯ２が負荷ＬＯ１よりも低い場合（Ｓ２１２でＮＯ）、負荷ＬＯ２を許容負荷レベルに決定し、許容負荷レベルデータベース１４６に登録する（Ｓ２１４）。
【００８４】
登録後、コントロールポイントＣＰは、再生テスト結果データベース１４５に、他の圧縮形式のテスト音声ファイルが登録されているか否か判断し（Ｓ２１５）、登録されていれば、ステップＳ２０１に戻り、他のテスト音声ファイルについても許容負荷レベルを設定する。
【００８５】
以上の動作により、コントロールポイントＣＰは、サーバＳＶ１がデコード可能な圧縮形式ごとに、許容負荷レベルを設定する。レベル設定処理が完了したときの許容負荷レベルデータベース１４６の一例を図１６に示す。
【００８６】
なお、上述の説明では、圧縮形式ごとに許容負荷レベルを設定したが、各圧縮形式での異なるビットレートごとに、許容負荷レベルを設定してもよい。圧縮形式及びビットレートごとの許容負荷レベルを設定した場合、許容負荷レベルデータベース１４６はたとえば図１７のようになる。
【００８７】
以上のとおり、コントロールポイントＣＰは、テスト音声ファイルを再生することにより得られた出力波形情報を利用して、各サーバＳＶのデコード可能な圧縮形式ごとに、許容負荷レベルを設定する。
【００８８】
コントロールポイントＣＰ及びサーバＳＶは、設定された許容負荷レベルを利用することで、曲の再生中の音切れを抑制できる。たとえば、通常モード時に、コントロールポイントＣＰがＵＰｎＰプロトコルに基づいて各サーバＳＶを監視し、各サーバＳＶから定期的に通常負荷情報を取得する。ユーザから所定の曲ファイルの再生指示を受けたとき、コントロールポイントＣＰは、各サーバの通常負荷情報と、各サーバＳＶの許容負荷レベルとに基づいて、対象となるサーバが、音切れを抑制しつつストリーミング配信できるか否かを判断できる。
【００８９】
また、コントロールポイントＣＰが、設定された許容負荷レベルを各サーバＳＶ１に送信すれば、各サーバＳＶ自身が、要求された曲ファイルを、音切れを起こすことなくストリーミング配信できるか否かを判断できる。
【００９０】
一例として、曲ファイルを再生する場合のネットワークＡＶシステム１の動作を説明する。
【００９１】
図１８を参照して、コントロールポイントＣＰは、各サーバＳＶ１〜ＳＶ３から所定期間ごとに、各サーバＳＶにかかっている負荷に関する通常負荷データを取得する（Ｓ３０１）。取得された通常負荷データは、通常負荷情報データベース１４１に登録される。
【００９２】
コントロールポイントＣＰがユーザから所定の曲ファイルＭ１の再生指示を受けたとき（Ｓ３０２でＹＥＳ）、コントロールポイントＣＰは、ＨＤＤ１４に格納されたコンテンツ情報に基づいて、曲ファイルＭ１を蓄積するサーバＳＶを特定する（Ｓ３０３）。続いて、コントロールポイントＣＰは、特定されたサーバＳＶの通常負荷情報を通常負荷情報データベース１４１から読み出し、かつ、特定されたサーバＳＶの、曲ファイルＭ１の圧縮形式における許容負荷レベルを許容負荷レベルデータベース１４６から読み出す。そして、通常負荷情報及び許容負荷レベルに基づいて、サーバＳＶに曲ファイルＭ１を配信させるか否かを判断する（Ｓ３０４）。ここで、コントロールポイントＣＰは、最新の通常負荷データ、つまり、サーバＳＶにかかる直近の負荷と許容負荷レベルとを比較してもよいし、通常負荷情報に基づいて将来サーバＳＶにかかる負荷を予想した上で、予想された負荷と許容負荷レベルとを比較してもよい。
【００９３】
ステップＳ３０４での判断の結果、通常負荷情報に基づく負荷が許容負荷レベルよりも小さいサーバＳＶ（以下、対応可能サーバＳＶ０という）が存在するとき（Ｓ３０５でＹＥＳ）、コントロールポイントＣＰは、レンダラＲＥに対して、対応可能サーバＳＶ０から曲Ｍ１を受信して再生するよう再生指示コマンドを送信する（Ｓ３０６）。対応可能サーバＳＶ０が複数存在する場合、コントロールポイントＣＰは、現在の負荷と許容負荷レベルとの差が最も大きいサーバから曲Ｍ１を受信するようレンダラＲＥに指示する。
【００９４】
一方、ステップＳ３０５の判断の結果、現在の負荷が許容負荷レベル以下であるサーバが存在しない場合、コントロールポイントＣＰは、ディスプレイ１５に、現在再生を開始すれば音切れが発生する可能性がある旨を表示する（Ｓ３０７）。
【００９５】
以上のとおり、ネットワークＡＶシステム１では、音切れの発生を抑制するために、音切れを抑えるしきい値である許容負荷レベルを設定する。このとき、ベンチマークプログラムを用いることで、コントロールポイントＣＰがサーバにかかる負荷を制御可能とし、かつ、テスト音声ファイルを用いることで、精度の高い許容負荷レベルを容易に設定できる。
【００９６】
なお、本実施の形態では、負荷テストにより負荷パラメータとサーバＳＶの負荷とを対応付けたが、波形取得処理のＳ１１０でサーバＳＶにテスト負荷データを送信させることで、負荷テスト処理を省略することもできる。この場合、ステップＳ１１０で送信されたテスト負荷データが１００％となるまで、波形取得処理は継続される。
【００９７】
また、本実施の形態では、コントロールポイントＣＰがサーバＳＶやレンダラＲＥと別個の装置としたが、コントロールポイントＣＰとサーバＳＶとが１つの装置に含まれてもよいし、コントロールポイントＣＰとレンダラＲＥとが１つの装置に含まれていてもよい。
【００９８】
以上、本発明の実施の形態を説明したが、上述した実施の形態は本発明を実施するための例示に過ぎない。よって、本発明は上述した実施の形態に限定されることなく、その趣旨を逸脱しない範囲内で上述した実施の形態を適宜変形して実施することが可能である。
【図面の簡単な説明】
【００９９】
【図１】本発明の実施の形態によるネットワークＡＶシステムの構成を示す機能ブロック図である。
【図２】図１中のコントロールポイントの構成を示す機能ブロック図である。
【図３】図２中の通常負荷情報データベースのデータ構造を示す図である。
【図４】図１中のサーバの構成を示す機能ブロック図である。
【図５】図１中のレンダラの構成を示す機能ブロック図である。
【図６】図２中のテスト負荷情報データベースのデータ構造を示す図である。
【図７】図１に示すネットワークＡＶシステムの負荷テスト処理の詳細を示すフロー図である。
【図８】図７の負荷テスト処理中にサーバにかかる負荷を時系列に示した図である。
【図９】図１に示すネットワークＡＶシステムの波形取得処理の詳細を示すフロー図である。
【図１０】図９の波形取得処理で取得されるテスト音声ファイルの出力波形を示す図である。
【図１１】図９の波形取得処理で作成される再生テスト結果データベースのデータ構造を示す図である。
【図１２】図１１と異なる、再生テスト結果データベースのデータ構造の他の例を示す図である。
【図１３】図１に示すネットワークＡＶシステムのレベル設定処理の概要を説明するための図である。
【図１４】図１に示すネットワークＡＶシステムのレベル設定処理の詳細を示すフロー図である。
【図１５】図１４のレベル設定処理で作成される許容負荷レベルデータベースのデータ構造を示す図である。
【図１６】図１５と異なる、許容負荷レベルデータベースの他のデータ構造を示す図である。
【図１７】図１５及び図１６と異なる、許容負荷レベルデータベースの他のデータ構造を示す図である。
【図１８】図１中のコントロールポイントの曲ファイルの再生時の動作の詳細を示すフロー図である。
【符号の説明】
【０１００】
１  ネットワークＡＶシステム
１４１  通常負荷情報データベース
１４２  ベンチマークプログラム
１４３  テスト音声ファイル
１４４  テスト負荷情報データベース
１４５  再生テスト結果データベース
１４６  許容負荷レベルデータベース
１４７  許容負荷レベル設定プログラム
２４１    曲データベース
２４１    曲ベース
ＣＰ  コントロールポイント
ＲＥ  レンダラ
ＳＶ  サーバ
【図１】
2009230199.tif 000003
【図２】
2009230199.tif 000004
【図３】
2009230199.tif 000005
【図４】
2009230199.tif 000006
【図５】
2009230199.tif 000007
【図６】
2009230199.tif 000008
【図７】
2009230199.tif 000009
【図８】
2009230199.tif 000010
【図９】
2009230199.tif 000011
【図１０】
2009230199.tif 000012
【図１１】
2009230199.tif 000013
【図１２】
2009230199.tif 000014
【図１３】
2009230199.tif 000015
【図１４】
2009230199.tif 000016
【図１５】
2009230199.tif 000017
【図１６】
2009230199.tif 000018
【図１７】
2009230199.tif 000019
【図１８】
2009230199.tif 000020