このように、ネットワークを介した配信システムは、多種多様なコンテンツを柔軟に組み合わせることができる。ところが、利用者が告知又は宣伝したいコンテンツと、視聴者が取得したいコンテンツとは必ずしも一致しないため、前記多種多様なコンテンツをどのように組み合わせて配信するかが問題となる。この点、特許文献1([0005]〜[0012])や特許文献2([0003])には、前記問題について明示的な指摘がある。
特許文献1は、情報量調整モジュールにより情報量の単位期間取得情報量に調整している。ここで、単位期間取得情報量とは「単位期間あたりに取得される情報量(引用文献1[0033])」であり、前記情報量調整モジュールは多種多様なコンテンツの意味付けを無視し、単なる量的規制の意味しか有さない。また、こうした量的規制を受けたコンテンツは、情報提示タイミング調整モジュールである「(I)情報を単位期間内で分配するモジュール(特許文献1[0069])」に従って配信されるのみで、利用者側が告知又は宣伝した情報や、視聴者が取得したい情報を特に考慮していない。
ここで、情報提示タイミング調整モジュールには「(III)情報の内容等の属性と提示するときの状況が適合するように、タイミングを調整するモジュール(特許文献1[0069])」が含まれている。この(III)情報の内容等の属性と提示するときの状況が適合するように、タイミングを調整するモジュールは、提示する情報の内容やその他の属性と、行動監視モジュールから得られた状況が適合するように、情報を提示する。しかし、前記提示は、視聴者が取得したい情報に主眼をおいた処理であり、利用者側が告知又は宣伝した情報については考慮されていない。あくまで、利用者側が告知又は宣伝した情報と、視聴者が取得したい情報との調整を図ることが重要である。
これに対し、特許文献2では、コンテンツに設定した属性を利用した配信スケジュールを作成することで、利用者側が告知又は宣伝した情報と、視聴者が取得したい情報との調整を図っている。具体的には、利用者が設定する配信条件として「配信時間帯、配信回数、ターゲットとなる視聴者群を示す情報」、そして視聴者が設定する配信条件として「視聴者の嗜好にあった広告群を示す情報」を扱うことにより、全配信条件を加味した配信スケジュールは、結果として利用者側が告知又は宣伝した情報と、視聴者が取得したい情報との調整を図ることができる。しかし、視聴者側を考慮するため、視聴者からの配信条件の提示が必須となり、一方的にコンテンツを配信及び表示する配信システムでは、特許文献2のシステム構成は利用しがたい。
視聴者側から配信条件の提示を受けることなく、利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報とをうまく調整するには、利用者が告知又は宣伝したいコンテンツをもれなく配信しながら、優先順位に応じ、各コンテンツ毎に視聴者の目に留まる確率を考慮した再生順序を設定できるとよい。この点、特許文献3は、表示順又は表示時間又はそれら両方を含むスケジュールデータをコンテンツと共に配信し、利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報との調整を図っているように見える。しかし、具体的な再生順序の決定については触れていない。
そこで、ネットワークを介した配信システムにおいて、多種多様なコンテンツを柔軟に組み合わせて配信できる利点を活かしつつ、利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報との調整を図る手段として、配信又は表示するコンテンツの再生順序の設定を最適化するための具体的手段について、検討した。
検討結果開発したものが、ネットワークを介してサーバからクライアントへコンテンツを配信し、このクライアントでコンテンツを順次再生するに際し、サーバはクライアントで再生する優先順位P1〜Pn(nは2以上の自然数)を付したコンテンツと、優先順位P1〜Pn毎に設定したコンテンツの出現頻度である出現率A1〜Anに、優先順位P1〜Pn毎のコンテンツの数を掛け合わせて算出される数値を合計して得られる全コンテンツの必要再生総数Sallに同数の再生順序T1〜Tallのうち空いている最も早い再生順序Tj(j=1〜Sall中の自然数)から優先順位の低い各コンテンツを順に割り当てた再生スケジュールとを、ネットワークを介してクライアントへ配信し、各コンテンツを前記再生スケジュールに従って順に再生するコンテンツ配信方法(以下、配信方法と略する)である。
再生スケジュールは、再生される各コンテンツの繰り返し順を定義するのみで、再生スケジュールの一巡時間は、更に各コンテンツの再生時間の和となる。また、再生スケジュールは、この再生スケジュールに従って再生する全コンテンツと一体かつ事前にサーバからクライアントへ配信することを基本とする。しかし、事前に再生スケジュールのみをサーバからクライアントへ配信しておき、各コンテンツは再生する直前又は同時にサーバからクライアントへ逐次配信してもよい。例えば、後述する再生指定時間を付した指定コンテンツや、逐次再生要求を付した割込コンテンツは、サーバからクライアントへ逐次配信することになる。
ここで、優先順位P1〜Pnは、コンテンツの重要性を表す数値であり、優先順位P1〜Pn相互の重要性の程度の違いを表す数値であればよい。これに対し、出現率A1〜Anは、優先順位P1〜Pnに対応したコンテンツの再生頻度又は繰り返し頻度を意味し、優先順位P1〜Pnの序列を損ねない範囲で、出現率A1〜An相互で優先順位P1〜Pnと異なる大小関係を有する。例えば、優先順位P1〜Pnが一次関数的な比例関係を有する数値とし、出現率A1〜Anは二次関数又は指数関数的な比例関係を有する数値とする組み合わせが考えられる。
具体的には、数値が大きいほど優先順位又は出現率が高いとして、優先順位P1=1、P2=2、P3=3とした場合、優先順位P1に対応した出現率A1=1、優先順位P2に対応した出現率A2=1.5、優先順位P3に対応した出現率A3=2.25とする。このように、出現率A1〜Anは、予め各コンテンツに付された優先順位P1〜Pnを、実際的な各コンテンツの再生頻度又は繰り返し頻度に置換する働きを有する。また、優先順位P1〜Pn及び出現率A1〜Anの対応関係は、任意に決定してよいため、同じコンテンツを用いても、異なる再生スケジュールを生成して違ったコンテンツの配信形態を構築できる。
本発明は、配信者、作成者及び利用者の三者が携わる配信システムに対して適用される。配信者がサーバを管理し、利用者毎に最低1台のクライアントを割り当てる。各利用者が複数のクライアントを有する場合、各クライアント毎に個別のコンテンツ及び再生スケジュールを配信してもよいし、一定数のクライアント毎に同じコンテンツ及び再生スケジュールを配信してもよい。作成者は、配信者又は利用者と同じでも、別の第三者でもよく、サーバに対してコンテンツを供給すればよい。ネットワークは、インターネット又は専用線のいずれでもよいが、インターネットは外部に開放されており、コンテンツとしてURLを定義した第三者コンテンツを扱いやすいので好ましい。
本発明の配信方法は、多種多様なコンテンツを再生スケジュールに従って順に再生する点で、従来と似ている。しかし、本発明が課題とする「利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報との調整」を実現するため、コンテンツ毎に優先順位P1〜Pnを付し、この優先順位P1〜Pn毎にコンテンツの繰り返し頻度である出現率A1〜Anを設定し、前記出現率A1〜Anと優先順位P1〜Pn毎のコンテンツの数との掛け合わせから算出した再生順序T1〜Tallに、優先順位の低い各コンテンツから順に割り当てて再生スケジュールを生成している。すなわち、再生スケジュールは、各コンテンツの優先順位P1〜Pnに着目し、この優先順位P1〜Pnの違いを加味した各コンテンツの繰り返し回数を含めた全コンテンツの再生数(全コンテンツの必要再生総数Sall)を求めて生成している点に特徴がある。
具体的には、再生スケジュールは、優先順位P1〜Pn毎に応じた出現率A1〜Anを設定し、優先順位P1〜Pn毎のコンテンツの数を集計して順位別コンテンツ数R1〜Rnを算出し、各優先順位P1〜Pn毎の出現率A1〜Anを前記順位別コンテンツ数R1〜Rnに掛け合わせて順位別必要再生数S1(=A1×R1)〜Sn(=An×Rn)を算出し、各順位別必要再生数S1〜Snを合計して必要再生総数Sallを算出し、再生スケジュールは前記必要再生総数Sallに同数の再生順序T1〜Tallを並べた順列として構成し、最も低い優先順位P1を付したコンテンツから順に再生順序T1〜Tallのうち空いている最も早い再生順序Tj(j=1〜Sall中の自然数)から割り当てていくことにより生成する。
ここで、上述したように、出現率A1〜Anは、必ずしも自然数でなくてもよいため、各順位別必要再生数S1〜Snはそれぞれ自然数にならない。しかし、S1〜Snを合計して得られるSallは、各コンテンツを割り当てる序列、すなわち再生順序T1〜Tallを決定するため、必ず自然数でなくてはならない。このため、各S1〜Snを切り捨て、切り上げ又は四捨五入により個別に自然数に丸め込むか、S1〜Sallを合計した後、Sallについて切り捨て、切り上げ又は四捨五入により自然数に丸め込む。実際には、再生順序Tallが大きいほどコンテンツの分散が図られるため、好ましいので、S1〜Sallを個別に切り上げ又は四捨五入により自然数に丸め込むとよい。通常、順位別必要再生数S1〜Snは、各出現率A1〜Anをかけ合わせるため、順位別コンテンツ数R1〜Rnより多くなるが、この場合、各順位別必要再生数S1〜Snの範囲で各優先順位P1〜Pn毎のコンテンツを繰り返して再生することになる。
上記再生スケジュールの生成は、再生順序T1〜Tallの範囲に対し、優先順位の低いコンテンツを略均等に振り分ける働きと、優先順位の高いコンテンツの出現率を高める(繰り返し間隔を狭める)働きとを有する。すなわち、優先順位の低いコンテンツから優先的に再生スケジュールに割り当てることにより、優先順位の低いコンテンツを再生スケジュール全体に散りばめ、視聴者が取得したい情報を定期的かつ確実に再生できるようにする。また、各コンテンツは出現率A1〜Anに応じた繰り返し頻度が確保されるため、優先順位の高いコンテンツの再生数を相対的に高くして、利用者側が告知又は宣伝したい情報を、より高い頻度で視聴者に見せることができる。
より具体的な再生スケジュールの生成は、次のようになる。まず、最も低い優先順位P1を付したコンテンツは、必要再生総数Sallをこの優先順位P1の順位別必要再生数S1で割って得られる値を出現間隔Int1とし、再生順序T1からこの出現間隔Int1の間隔で割り当てていき、次に低い優先順位P2を付したコンテンツは、必要再生総数Sallから上記順位別必要再生数S1を減算した残余再生数Srest(=Sall−S1)をこの優先順位P2の順位別必要再生数S2で割って得られる値を出現間隔Int2とし、上記コンテンツCp1の割り当てていない再生順序T2からこの出現間隔Int2の間隔で割り当てていき、優先順位P3以上は上記優先順位P2を付したコンテンツの割り当てに準じて必要再生総数Sallが埋まるまで繰り返して割り当てて生成する。
出現間隔Int1は、上述のように、必要再生総数Sallを順位別必要再生数S1で割って得るが、実際にはSallがS1でうまく割り切れることはないため、SallをS1で割って得られる小数点より上のみを用い、小数点以下を切り捨てる。これは、優先順位P1の各コンテンツに等しい非再生順序Txを割り当て、切り捨てた小数点以下は再生スケジュールに割り当てる最後の優先順位P1のコンテンツに対する非再生順序Txを意味する。これから、例えば出現間隔Int1=5の場合、先の優先順位P1のコンテンツが再生順序T1に割り当てられると、次の優先順位P1のコンテンツは、出現間隔Int1だけ開けた再生順序T(1+Int1+1)=再生順序T7に割り当てられる。
上記配信方法を実現するシステム構成は、次のようになる。すなわち、ネットワークを介してサーバからクライアントへコンテンツを配信し、このクライアントでコンテンツを順次再生するコンテンツ配信システムにおいて、サーバはクライアントで再生する優先順位P1〜Pn(nは2以上の自然数)を付したコンテンツを記憶する配信側記憶手段と、優先順位P1〜Pn毎に設定したコンテンツの出現頻度である出現率A1〜Anに、優先順位P1〜Pn毎のコンテンツの数を掛け合わせて算出される数値を合計して得られる全コンテンツの必要再生総数Sallに同数の再生順序T1〜Tallのうち空いている最も早い再生順序Tj(j=1〜Sall中の自然数)から優先順位の低い各コンテンツを順に割り当てた再生スケジュールを生成するスケジュール生成手段と、コンテンツ及び再生スケジュールを、ネットワークを介してクライアントへ送る配信手段とを備え、クライアントはコンテンツ及び再生スケジュールを、ネットワークを介してサーバから受け取る受信手段と、受け取ったコンテンツ及び再生スケジュールを記憶する受信側記憶手段と、コンテンツを再生スケジュールに従って順に再生する再生手段とを備えたコンテンツ配信システム(以下、配信システムと略する)である。
サーバは、クライアントへ再生スケジュール及びコンテンツを配信する情報処理を担うコンピュータからなる。このサーバが備える配信側記憶手段は、従来公知の各種内部又は外部記憶装置を用いることができる。また、サーバが備える配信手段は、ネットワークを介してクライアントと通信する手段であり、従来公知の各種通信装置を用いることができる。これらに対し、スケジュール生成手段は、本発明の特徴である再生スケジュールを生成するための手段であり、具体的には配信側記憶手段に記憶させる各プログラムと、サーバが有する情報処理部とから構成される。
上記スケジュール生成手段は、優先順位P1〜Pn毎に応じた出現率A1〜Anを設定する出現率設定手段と、同じ優先順位P1〜Pn毎のコンテンツの数を集計して順位別コンテンツ数R1〜Rnを算出する順位別コンテンツ数集計手段と、各優先順位P1〜Pn毎の出現率A1〜Anを前記順位別コンテンツ数R1〜Rnに掛け合わせて順位別必要再生数S1(=A1×R1)〜Sn(=An×Rn)を算出する順位別必要再生数算出手段と、各順位別必要再生数S1〜Snを合計した必要再生総数Sallに同数の再生順序T1〜Tallを並べた順列(1次元マトリックス)を構成する再生スケジュール構成手段と、最も低い優先順位P1を付したコンテンツから順に再生順序T1〜Tallのうち空いている最も早い再生順序Tj(j=1〜Sall中の自然数)から割り当てていく再生スケジュール割当手段とからなる。
また、再生スケジュール割当手段は、必要再生総数Sallを優先順位P1の順位別必要再生数S1で割って得られる値を出現間隔Int1とし、再生順序T1からこの出現間隔Int1の間隔で最も低い優先順位P1を付したコンテンツを割り当てていく第1順割当手段と、必要再生総数Sallから上記順位別必要再生数S1を減算した残余再生数Srest(=Sall−S1)をこの優先順位P2の順位別必要再生数S2で割って得られる値を出現間隔Int2とし、コンテンツを割り当てていない再生順序に対してこの出現間隔Int2の間隔で次に低い優先順位P2を付したコンテンツを割り当てていき、この優先順位P2を付したコンテンツの割り当てに準じて必要再生総数Sallが埋まるまで優先順位P3以上のコンテンツを繰り返して割り当てていく繰返割当手段とからなる。
クライアントは、サーバから受け取った再生スケジュール及びコンテンツを一時的に記憶し、前記再生スケジュールに従ってコンテンツを順に再生する情報処理を担うコンピュータからなる。このクライアントが備える受信手段は、ネットワークを介してサーバと通信する手段であり、従来公知の各種通信装置を用いることができる。また、クライアントが備える受信側記憶手段は、従来公知の各種内部又は外部記憶装置を用いることができる。
再生手段は、再生スケジュールに従って順にコンテンツを再生する手段であり、クライアントが有する情報処理部により操作される従来公知の各種出力装置から構成するとよい。このように、クライアントの情報処理部を利用した再生手段を用いれば、再生スケジュールに従うコンテンツの再生を一時中断したり、コンテンツの割り込みをかけたりすることができる。このような特別の処理を要するコンテンツとしては、再生内容をネットワーク上の別のサーバ(第三者サーバ)から取り込む第三者コンテンツ、再生スケジュールと無関係に再生指定時間が付される指定コンテンツ、又は再生スケジュールと無関係に逐次再生要求を付される割込コンテンツがある。こうした再生手段は、具体的には受信側記憶手段に記憶させるコンテンツ再生プログラムと、クライアントが有する情報処理部と、ディスプレイ又はスピーカ等の出力装置とから構成され、再生されたコンテンツは前記ディスプレイ又はスピーカ等から視聴者に提示される。
再生内容をネットワーク上の別のサーバ(第三者サーバ)から取り込む第三者コンテンツについては、上記配信システムのクライアントに対して、第三者コンテンツ再生手段を追加する。すなわち、クライアントは、URLによりアクセス先が示される第三者コンテンツを、前記URLに従ってネットワークを介して第三者サーバから受け取り、該URLの内容を再生手段により再生させる第三者コンテンツ再生手段を備える。前記第三者コンテンツ再生手段は、出力装置を制御して第三者コンテンツを再生する機能を有すればよく、上述した再生手段の情報処理部に組み入れることができる。第三者コンテンツは、全体が第三者サーバから取り込まれる再生内容から構成してもよいし、再生内容の一部を第三者サーバから取り込む構成でもよい。
再生スケジュールと無関係に再生指定時間が付される指定コンテンツについては、上記配信システムのクライアントに対して、指定コンテンツ再生手段を追加する。すなわち、クライアントは、再生指定時間を付した指定コンテンツを、再生スケジュールに従って再生される優先順位P1〜Pnを付したコンテンツに割り込ませて、前記再生指定時間又は再生指定時間に間近い前後の時間に再生手段により再生させる指定コンテンツ再生手段を備える。指定コンテンツ再生手段は、再生手段を制御して指定コンテンツを再生する機能を有すればよく、上述した再生手段の情報処理部に組み入れることができる。
指定コンテンツは、再生スケジュールに対して割り込む形で再生されるが、本発明の再生スケジュールは再生される各コンテンツの繰り返し順を定義するのみであるから、このように指定コンテンツを割り込ませても、再生スケジュールに従って順に再生されるコンテンツに影響はない。この指定コンテンツは、後述の割込コンテンツと似ているが、再生スケジュールに対して割り込むタイミングが再生指定時間として決められており、再生スケジュール又はコンテンツの配信と同時に、指定コンテンツも配信できる点が相違している。
再生スケジュールと無関係に逐次再生要求を付される割込コンテンツについては、上記配信システムのクライアントに対して、割込コンテンツ再生手段を追加する。すなわち、クライアントは、逐次再生要求を付した割込コンテンツを受信手段により受信させる割込受信手段と、前記逐次再生要求を付した割込コンテンツを、再生スケジュールに従って再生される優先順位P1〜Pnを付したコンテンツに割り込ませて再生手段により再生させる割込コンテンツ再生手段を備える。割込受信手段は、受信手段を制御して適宜割込コンテンツを受信する機能を有すればよく、上述した受信手段に組み入れることができる。また、割込コンテンツ再生手段は、再生手段を制御して割込コンテンツを再生する機能を有すればよく、上述した再生手段の情報処理部に組み入れることができる。
割込コンテンツは、再生スケジュールに対して割り込む形で再生されるが、本発明の再生スケジュールは再生される各コンテンツの繰り返し順を定義するのみであるから、このように割込コンテンツを割り込ませても、再生スケジュールに従って順に再生されるコンテンツに影響はない。この割込コンテンツは、上述の指定コンテンツと似ており、例えば再生スケジュールに対して予め割り込むタイミングが分かっている場合は、指定コンテンツとして取り扱うこともできる。上記割込コンテンツ再生手段が必要となるのは、利用者等の要望により、特定のコンテンツを再生スケジュールに対して割り込ませたい場合であり、再生スケジュール又はコンテンツの配信とは別に、割込コンテンツがクライアントへ配信される。このため、指定コンテンツの取り扱いと異なり、いつでも割込コンテンツを受信できるように、割込受信手段を必要とする。
再生スケジュール及びコンテンツは、サーバから新しい再生スケジュール又はコンテンツをクライアントへ配信すれば更新される。しかし、クライアントでは、先に配信された再生スケジュール及びコンテンツに従って既にコンテンツが再生中であるため、こうしたコンテンツの再生に割り込むように再生スケジュール又はコンテンツを途中で置き換える更新は好ましくない。そこで、再生スケジュール又はコンテンツの更新をクライアント主体で実施するため、次のような更新手段をクライアントに追加するとよい。すなわち、クライアントは、定期的にコンテンツ又は再生スケジュールの更新をサーバに対して確認する更新確認手段と、コンテンツ又はスケジュールの更新が確認された場合、更新されたコンテンツ又は再生スケジュールをサーバの配信手段により配信させ、このコンテンツ又は再生スケジュールを受信手段により受信させる更新受信手段とを備える。
更新確認手段は、受信手段を制御してサーバと通信し、新しい再生スケジュール又はコンテンツが配信側記憶手段にあるか否かを確認できる機能を有すればよく、受信手段の機能に組み入れることができる。また、更新受信手段は、更新確認手段で確認された新しい再生スケジュール又はコンテンツを受け取るため、受信手段を制御して適宜新しい再生スケジュール又はコンテンツを受信する機能を有すればよく、受信手段の機能に組み入れることができる。こうした更新確認手段及び更新受信手段は、配信システムが稼働し、最初に再生スケジュール及びコンテンツが配信された後、すなわち2回目以降の再生スケジュール又はコンテンツの配信に際して働く。
本発明により、ネットワークを介した配信システムにおいて、多種多様なコンテンツを柔軟に組み合わせて配信しながら、利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報との調整をうまく図ることができる効果がある。しかも、こうした配信又は表示するコンテンツの再生順序の設定を最適化が、利用者の希望する優先順位に依拠して自動的に設定されるため、利用者に提供するサービスとして価値ある配信システムを提供できる効果がある。
本発明は、同じ優先順位のコンテンツを同列に扱い、生成した再生スケジュールに、サーバの記憶部に記憶された順に割り当てていく。コンテンツは、再生スケジュールに従って繰り返し再生されるため、厳密には順位別必要再生数に制限され、同じ優先順位のコンテンツでも再生スケジュール当たりで再生される回数が異なるものの、同じ優先順位のコンテンツは略等価とみなしてもよい。これは、再生スケジュールに含まれるコンテンツ数が多いほど、再生スケジュール当たりで再生される回数の絶対差が小さくなるため、当てはまる。再生スケジュールに含まれるコンテンツ数を増やすには、単純にコンテンツの数を増やすほか、出現率を高く設定すると順位別必要再生数が増え、見かけ上のコンテンツの数を増やすことができる。
しかし、再生スケジュールを繰り返していくと、再生スケジュール当たりで再生される回数の総和は、次第に絶対差が大きくなり、早い再生順序で再生されるコンテンツほど多く再生されることになる。これから、利用者又は配信者が設定する優先順位のほか、サーバの記憶部に記憶するコンテンツの順番も考慮すれば、利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報とをより緻密に調整できる。このように、本発明は従来考慮されなかったコンテンツの割り振りを最適化する手法を提供する効果を有する。
以下、本発明の実施形態について図を参照しながら説明する。図1は本発明を適用した配信システムの全体構成を表すネットワーク構成図、図2はサーバ100の機能構成を表すサーバ100の機能ブロック図であり、図3はクライアント200の機能構成を表すクライアント200の機能ブロック図である。本例では、説明の便宜上、クライアントが少数であるが、実際のサービス提供にあっては多数のクライアントがネットワークを介してサーバに接続する。
本例の配信システムは、図1〜図3に見られるように、情報処理部101を中核とするサーバ100と、同じく情報処理部201を中核とする複数のクライアント200とを、ネットワーク300で結んだ全体構成からなる。ネットワーク300は、通常外部に開放されたインターネットを基本とするが、外部に閉鎖されたイントラネットや、特定のサーバ及びクライアントのみを結ぶ専用ネットワークでもよい。サーバ100は、配信者が管理し、この配信者と契約した利用者に、1基又は複数基のクライアント200を割り当てる。すなわち、例示の3基のクライアント200は、同一又は個別の利用者に割り当てられている。
配信単位の再生スケジュール及びコンテンツは、各クライアント200毎に配信する。これから、利用者に複数基のクライアント200が割り当てられた場合でも、各クライアント200では、(a)同じコンテンツを同じ再生スケジュールで再生する場合、(b)同じコンテンツでありながら異なる再生スケジュールで再生する場合、(c)異なるコンテンツを異なる再生スケジュールで再生する場合があり得る。再生スケジュールはコンテンツに依存するため、コンテンツが異なれば必然的に再生スケジュールは異なる。
コンテンツは、利用者自身が配信者に提供するか、別途作成者が利用者の依頼に基づいて作成し、配信者に提供する。また、配信者自身が自らのコンテンツを作成する場合もある。これらクライアントは、音声又は音楽のみや、静止画又は動画からなる多種多様な内容を有するが、本発明ではこうした多種多様なコンテンツを混在させながら各コンテンツに付した優先度のみを各コンテンツを識別する個性とし、利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報との調整を図る再生スケジュールを、前記優先度及び各優先度毎のコンテンツ数を基礎として自動生成する。
サーバ100は汎用のコンピュータにより構成でき、このサーバのハード構成は、図2に見られるように、コンピュータの情報処理部101を中心に、記憶部102、送受信部103、出力部104及び入力部105からなる機能ブロックで表すことができる。記憶部102は、コンピュータの内部又は外部記憶装置であり、通常ハードディスク装置を用いる。送受信部103は、ネットワーク300に対してサーバ100からアクセスする送受信装置であり、例えばモデム又はルータを用いる。出力部104は、サーバ100で扱うデータや管理画面を外部に出力するインターフェースで、ディスプレイやプリンタを例示できる。入力部105は、サーバ100で扱うデータを外部から入力するインターフェースで、キーボード、マウス、スキャナや各種メモリリーダ等を例示できる。
上記サーバ100において、本発明の配信側記憶手段は配信管理プログラム(配信管理PR)401、情報処理部101及び記憶部102から、スケジュール生成手段はスケジュール生成プログラム(SC生成PR)402及び情報処理部101から、そして配信手段は配信プログラム(配信PR)403、情報処理部101及び送受信部103からそれぞれ構成される。このように、サーバ100として汎用のコンピュータを用いると、各種プログラムの変更又は追加によって機能を容易に変更又は追加できる利点がある。逆に機能の変更又は追加の必要がなければ、本発明のサーバ100は、コンテンツ及び再生スケジュールの記憶及び配信の機能のみを備えた専用装置として構成し、再生スケジュールを外部のコンピュータで生成するようにしてもよい。
サーバ100の記憶部102は、入力部105から取り込まれたコンテンツ(C)を随時追加的に記憶させるほか、前記コンテンツに付された優先度に従ってスケジュール生成プログラム402が生成した再生スケジュール(再生SC)を一時的に記憶させる。前記コンテンツ及び再生スケジュールは、サーバ100の情報処理部101により実行される配信管理プログラム401がデータベースとして管理する。こうして管理されたコンテンツ又は再生スケジュールは、後述するクライアント200の更新確認手段によるコンテンツ又は再生スケジュールの更新の有無を判断する基準となる。また、コンテンツ及び再生スケジュールは、記憶部102に記憶された配信プログラム(配信PR)403が情報処理部101によって実行させることにより、送受信部103を通じて配信単位毎にクライアント200へ配信される。
スケジュール生成プログラム402は、出現率設定プログラム(出現率設定PR)404、順位別コンテンツ数集計プログラム(順位別C数集計PR)405、順位別必要再生数算出プログラム(順位別必要再生数算出PR)406、再生スケジュール構成プログラム(再生SC構成PR)407、第1順割当プログラム(第1順割当PR)408、そして繰返割当プログラム(繰返割当PR)409から構成される。これらプログラムは、基本的に前記記載順に実行し、各コンテンツに付された優先順位P1〜Pnから再生スケジュールを生成する。
出現率設定手段は、出現率設定プログラム404と、サーバ100の情報処理部101、入力部105及び出力部104から構成される。出現率設定プログラム404は、利用者又は作成者が各コンテンツに付した優先順位P1〜Pnを、クライアント200で再生する頻度を調整する出現率A1〜Anを配信者に設定させるプログラムである。最も簡易な出現率設定プログラム404は、サーバ100の情報処理部101によりサーバ100の出力部104から配信者に出現率A1〜Anの入力を促す手順、サーバ100の情報処理部101によりサーバ100の入力部105から配信者に優先順位A1〜Anを入力させる手順、そしてサーバ100の情報処理部101によりサーバ100の記憶部102に前記入力された出現率A1〜Anを記憶させる手順からなる。
出現率A1〜Anは、優先順位P1〜Pnと特定の対応関係を有する数値でないため、上述のように、各出現率A1〜Anを配信者が個別に設定できる出現率設定プログラム404が好ましい。これは、配信するコンテンツの種類に合わせ、また利用者の要望に合わせて、出現率を細かく変更できることを意味する。コンテンツの種類や利用者の要望に関係なく、特定の優先順位P1〜P2に対応して一律に出現率を設定する場合、サーバの出力部から配信者に優先順位及び出現率の関係式の入力を促す手順、サーバの入力部から配信者に前記関係式を入力させる手順、サーバの情報処理部により前記関係式から個別の出現率A1〜Anを計算する手順、そしてサーバの記憶部に前記計算から得られた出現率A1〜Anを記憶させる手順からなる出現率設定プログラムを用いるとよい。
順位別コンテンツ数集計手段は、順位別コンテンツ数集計プログラム405と、サーバ100の情報処理部101から構成される。順位別コンテンツ数集計プログラム405は、配信単位毎に優先順位P1〜Pn別のコンテンツ数を集計するプログラムである。具体的な順位別コンテンツ数集計プログラム405は、サーバ100の情報処理部101によりサーバ100の記憶部102に記憶させた配信単位の全コンテンツを順に読み出す手順、サーバ100の情報処理部101により呼び出した前記コンテンツの優先順位P1〜Pnを判定する手順、サーバ100の情報処理部101により判定した優先順位P1〜Pnに対応した順位別コンテンツ数R1〜Rnを加算していく手順までを全コンテンツに対して繰り返し、そして最後にサーバ100の情報処理部101によりサーバ100の記憶部102に集計を終えた順位別コンテンツ数R1〜Rnを記憶させる手順からなる。サーバ100の記憶部102にコンテンツを記憶させる際に、併せてサーバ100の情報処理部101により順位別コンテンツ数集計プログラムを実行して随時順位別コンテンツ数R1〜Rnを加算していってもよい。
順位別必要再生数算出手段は、順位別必要再生数算出プログラム406と、サーバ100の情報処理部101から構成される。順位別必要再生数算出プログラム406は、先に算出した順位別コンテンツ数R1〜Rnにそれぞれ出現率A1〜Anを掛け合わせ、繰り返し単位となる再生スケジュールにおいて各優先順位P1〜Pnのコンテンツがそれぞれ何回再生できるかを決定するプログラムである。具体的な順位別必要再生数算出プログラム406は、サーバ100の情報処理部101によりサーバ100の記憶部102に記憶させた順位別コンテンツ数R1〜Rn及び出現率A1〜Anを順に読み出す手順、サーバ100の情報処理部101により呼び出した前記コンテンツの順位別コンテンツ数R1〜Rn及び出現率A1〜Anを掛け合わせて順位別必要再生数S1〜Snを得る手順、そしてサーバ100の情報処理部101によりサーバ100の記憶部102に前記掛け合わせにより得られた順位別必要再生数S1〜Snを記憶させる手順からなり、これらの手順を全優先順位P1〜Pnについて繰り返す。
再生スケジュール構成手段は、再生スケジュール構成プログラム407と、サーバ100の情報処理部101から構成される。順位別必要再生数算出プログラム407は、先に算出した順位別必要再生数S1〜Snの総和から必要再生総数Sallを算出し、この必要再生総数Sallに等しい数の再生順序T1〜Tallからなる1次元マトリックスを構成するプログラムである。具体的な再生スケジュール構成プログラム407は、サーバ100の情報処理部101によりサーバ100の記憶部102に記憶させた順位別必要再生数S1〜Snを読み出す手順、サーバ100の情報処理部101により呼び出した順位別必要再生数S1〜Snを集計して必要再生総数Sallを得る手順、サーバ100の情報処理部101により前記必要再生総数Sallに基づいて再生順序T1〜Tallからなる1次元マトリックスを設定する手順、そしてサーバ100の情報処理部101によりサーバの記憶部102に前記再生順序T1〜Tallからなる1次元マトリックスを記憶させる手順からなる。
第1順割当手段は、第1順割当プログラム408と、サーバ100の情報処理部101から構成される。第1順割当プログラム408は、先に設定した再生順序T1〜Tallからなる1次元マトリックスに対して優先順位P1のコンテンツを割り当てていくプログラムであり、サーバ100の情報処理部101により優先順位P1のコンテンツの再生スケジュールにおける出現間隔Int1を算出する手順と、サーバ100の情報処理部101により前記出現間隔Int1に従って具体的にコンテンツを割り当てていく手順とに分けることができる。
具体的な第1順割当プログラム408は、サーバ100の情報処理部101によりサーバ100の記憶部102に記憶させた必要再生総数Sall及び順位別必要再生数S1を読み出す手順、サーバ100の情報処理部101により必要再生総数Sallを順位別必要再生数S1で割り、剰余を除いた商である出現間隔Int1を算出する手順の前段と、サーバ100の情報処理部101により空いている最も早い再生順序Tj(j=1〜Sall中の自然数)に優先順位P1の最初のコンテンツを割り当てる手順、次にサーバ100の情報処理部101により出現間隔Int1だけ間隔を開けた次の再生順序Tj(j=1〜Sall中の自然数)に優先順位P1の次のコンテンツを割り当てる手順、サーバ100の情報処理部101により前記手順を順位別必要再生数S1−1回だけ繰り返す手順、そしてサーバ100の情報処理部101によりサーバ100の記憶部102に優先順位P1のコンテンツを割り当てた再生順序T1〜Tallからなる1次元マトリックスを記憶させる手順の後段とからなる。
再生順序T1〜Tallからなる1次元マトリックスのサーバ100の記憶部102への記憶は、後述の繰返割当プログラム409の実行後、すなわち全コンテンツの割り当てを終えた後でもよい。また、上記手順に対し、後述の繰返割当プログラム409で利用する残余再生数Srestを算出する手順を加えてもよい。前記残余再生数Srestを算出する手順は、サーバ100の情報処理部101によりサーバ100の記憶部102に記憶させた必要再生総数Sall及び順位別必要再生数S1をサーバ100の情報処理部101により読み出す手順、サーバ100の情報処理部101により必要再生総数Sallから順位別必要再生数S1を減算して残余再生数Srestを算出する手順、そしてサーバ100の情報処理部101によりサーバ100の記憶部102に残余再生数Srestを記憶させる手順からなる。
ここで、サーバ100の情報処理部101によりサーバ100の記憶部102に記憶させた必要再生総数Sall及び順位別必要再生数S1をサーバ100の情報処理部101により読み出す手順は、第1順割当プログラム408と併せて実行する場合、不要である。また、サーバ100の情報処理部101によりサーバ100の記憶部102に残余再生数Srestを記憶させる手順は、第1順割当プログラム408に続いて後述の繰返割当プログラム409を実行する場合、不要である。
繰返割当手段は、繰返割当プログラム409と、サーバ100の情報処理部101から構成される。繰返割当プログラム409は、既に下位の優先順位のコンテンツを割り当てた再生順序T1〜Tallからなる1次元マトリックスに対して上位の優先順位のコンテンツを割り当てていくプログラムであり、サーバ100の情報処理部101により各優先順位P2〜Pnのコンテンツの再生スケジュールにおける出現間隔Int2〜Intnを算出する手順と、サーバ100の情報処理部101により前記出現間隔Int2〜Intnに従って具体的にコンテンツを割り当てていく手順とに大きく分けることができる。また、上記第1割当プログラム408で残余再生数Srestを算出していない場合、サーバ100の情報処理部101により各優先順位P2〜Pnの各コンテンツを割り当てる前にそれぞれの残余再生数Srestを算出する手順が必要である。Srestは、常に下位の優先度の順位別必要回数を減算して利用する共通変数にするとよい。
具体的な繰返割当プログラム409は、優先順位P2について説明すれば次のようになる。まず、サーバ100の情報処理部101によりサーバ100の記憶部 102に記憶させた残余再生数Srest及び順位別必要再生数S2を読み出す手順、サーバ100の情報処理部101により残余再生数Srestを順位別必要再生数S2で割り、剰余を除いた商である出現間隔Int2を算出する手順の前段と、サーバ100の情報処理部101により空いている最も早い再生順序Tj(j=1〜Sall中の自然数)に優先順位P2の最初のコンテンツを割り当てる手順、次にサーバ100の情報処理部101により出現間隔Int1だけ間隔を開けた空いている再生順序Tj(j=1〜Sall中の自然数)に優先順位P2の次のコンテンツを割り当てる手順、サーバ100の情報処理部101により前記手順を順位別必要再生数S2−1回だけ繰り返す手順、そしてサーバ100の情報処理部101によりサーバ100の記憶部102に優先順位P1のコンテンツを割り当てた再生順序T1〜Tallからなる1次元マトリックスを記憶させる手順の後段とからなる。ここで、出現間隔Int1だけ間隔を開けた再生順序Tj(j=1〜Sall中の自然数)へ既に別のコンテンツが割り当てられている場合、次の再生順序Tj+1にコンテンツを割り当てるようにする。
上記繰返割当プログラム409は、優先順位P2以上について、同様に処理を繰り返して上位の優先順位を付した各コンテンツを、再生順序T1〜Tallからなる1次元マトリックスの空いた箇所へ割り当てていく。このため、各繰り返しの処理の間で、サーバ100の情報処理部101により次の繰り返しに必要な残余再生数Srestを算出する手順を実行する。再生順序T1〜Tallからなる1次元マトリックスのサーバ100の記憶部102への記憶は、全コンテンツの割り当てを終えた後でもよい。
クライアント200は汎用のコンピュータにより構成でき、このクライアント200の構成は、図3に見られるように、コンピュータの情報処理部201を中心に、記憶部202、送受信部203、出力部204からなる機能ブロックで表すことができる。クライアント200は、ネットワーク300を介してのみデータ(コンテンツ及び再生スケジュール)を入力することが原則であるため、通常入力部は必要ないが、メンテナンス等のために入力部205を設けてもよい。記憶部202は、コンピュータの内部又は外部記憶装置であり、通常ハードディスク装置を用いる。送受信部203は、ネットワーク300に対してクライアント200からアクセスする送受信装置であり、例えばモデム又はルータを用いる。出力部204は、クライアントで再生するコンテンツを外部に出力するインターフェースで、ディスプレイやスピーカを例示できる。入力部205は、クライアントをメンテナンスする際に直接データを入力するインターフェースで、キーボード、マウス、スキャナや各種メモリリーダ等を例示できる。
上記クライアント200において、本発明の受信側記憶手段は受信管理プログラム(受信管理PR)501、情報処理部201及び記憶部202から、コンテンツ再生手段はコンテンツ再生プログラム(C再生PR)502、情報処理部201及び出力部204から、そして受信手段は受信プログラム(受信PR)503、情報処理部201及び送受信部203からそれぞれ構成される。このように、クライアント200として汎用のコンピュータを用いると、各種プログラムの変更又は追加によって機能を容易に変更又は追加できる利点がある。逆に機能の変更又は追加の必要がなければ、クライアントは、再生スケジュールに従ってコンテンツを順次再生できる専用装置から構成してもよい。
クライアント200の記憶部202は、サーバ100より配信されてきたコンテンツ(C)及び再生スケジュール(再生SC)のほか、前記コンテンツ(C)及び再生スケジュール(再生SC)を受信処理する受信プログラム(受信PR)503と、前記コンテンツ(C)及び再生スケジュール(再生SC)を順次読み出して再生するコンテンツ再生プログラム(C再生PR)502とを記憶させる。前記コンテンツ及び再生スケジュールは、クライアント200の情報処理部201により実行される受信管理プログラム501がデータベースとして管理する。こうして管理されたコンテンツ又は再生スケジュールは、サーバ100で管理されているコンテンツ又は再生スケジュールと突き合わせて更新の有無が判断される。
本例の配信システムは、基本的なコンテンツ及び再生スケジュールを受信するのみでなく、割込コンテンツを随時受信したり、サーバ100に対してコンテンツ又は再生スケジュールの更新を確認し、更新があれば随時コンテンツ又は再生スケジュールを受信する。このため、受信プログラム503は、更に基本受信プログラム(基本受信PR)504、割込受信プログラム(割込受信PR)505、更新確認プログラム(更新確認PR)506及び更新受信プログラム(更新受信PR)507に細分化されている。これから、受信手段は基本受信プログラム504、クライアント200の情報処理部201及び送受信部203から、割込受信手段は割込受信プログラム505、クライアント200の情報処理部201及び送受信部203から、更新確認手段は更新確認プログラム506、クライアント200の情報処理部201及び送受信部203、そして更新受信手段は更新受信プログラム507、クライアント200の情報処理部201及び送受信部203からそれぞれ構成される。
基本受信プログラム504は、サーバ100から配信されてくるコンテンツ又は再生スケジュールを受け取り、クライアント200の記憶部202に前記コンテンツ又は再生スケジュールを記憶させる基本的な受信処理を担うプログラムである。具体的な基本受信プログラム504は、クライアント200の情報処理部201によりサーバ100からの配信要求をクライアント200の送受信部203で受信する手順、前記配信要求に基づき、クライアント200の情報処理部203により配信されてくるコンテンツ又は再生スケジュールをクライアント200の送受信部203で受信し、随時クライアント200の記憶部202に前記コンテンツ又は再生スケジュールを記憶させる手順からなる。クライアント200の記憶部202へ記憶させたコンテンツ又は再生スケジュールの管理は、随時受信管理プログラム501によるデータベースの処理に移される。
割込受信プログラム505は、利用者又は配信者の要望により、再生スケジュールに組み込まれない単独のコンテンツとしてクライアント200へ送られてくる割込コンテンツを受信し、クライアント200の記憶部202に記憶させるプログラムである。具体的な割込受信プログラム505は、クライアント200の情報処理部201によりサーバ100からの割込要求をクライアント200の送受信部203で受信する手順、前記割込要求に基づき、クライアント200の情報処理部201により配信されてくる割込コンテンツをクライアント200の送受信部203で受信し、随時クライアント200の記憶部202に前記割込コンテンツを記憶させる手順からなる。
割込受信プログラム505の処理は上記基本受信プログラム504に準じることから、割込受信プログラム505はサーバ100からの割込要求を処理する例外処理プログラムとして基本受信プログラム504を利用した構成にしてもよい。割込コンテンツは、基本的に受信後すぐに再生されることが望まれるが、既に再生スケジュールに従ってコンテンツが再生されていることが多いため、前記再生スケジュールに従ったコンテンツの再生を阻害しないように、まず記憶部202に記憶させることが望ましい。
更新確認プログラム506は、クライアント200の記憶部202に記憶させているコンテンツ又は再生スケジュールを、サーバ100の記憶部102に記憶させているコンテンツ又は再生スケジュールと付き合わせ、コンテンツ又は再生スケジュールの更新の有無を確認するプログラムである。コンテンツ又は再生スケジュールは、同時又は個別に更新確認してもよい。コンテンツは、それぞれの再生内容で比較することが最も確実に更新の有無を確認できるが、それでは取り扱うデータ量が増え、クライアント200の処理負担が増大する。これから、例えばコンテンツ毎にコンテンツID等を付し、このコンテンツIDの比較によって更新の有無を確認するとよい。この場合、再生スケジュールの更新の有無は、再生順序T1〜Tallに従った前記コンテンツIDの並び順によって判別できる。
具体的な更新確認プログラム506は、クライアント200の情報処理部201によりサーバ100の記憶部102が現在記憶しているコンテンツ又は再生スケジュールの情報(上記コンテンツID又はコンテンツIDの並び)を取得する手順、クライアント200の情報処理部201によりクライアント200の記憶部202から現在再生しているコンテンツ又は再生スケジュールの情報(上記コンテンツID又はコンテンツIDの並び)を読み出す手順、クライアント200の情報処理部201によりサーバ100及びクライアント200それぞれのコンテンツ又は再生スケジュールの情報を比較する手順、そしてクライアント200の情報処理部201により比較の結果両者が一致しなければ更新受信手段に更新実行を命じる手順からなる。
更新受信プログラム507は、更新確認手段がコンテンツ又は再生スケジュールの更新を確認したことを受けて、クライアント200からサーバ100へコンテンツ又は再生スケジュールの配信を要請し、更新されたコンテンツ又は再生スケジュールを配信させ、受信するプログラムである。通常、更新されたコンテンツ又は再生スケジュールを受信する段階は、既にコンテンツを再生スケジュールに従って順次再生している状態にあるから、この更新受信プログラム507は、こうしたコンテンツの再生を阻害せず、円滑にコンテンツ又は再生スケジュールを更新させるバッファ処理を担っている。
具体的な更新受信プログラム507は、クライアント200の情報処理部201によりサーバ100の記憶部102が現在記憶しているコンテンツ又は再生スケジュールの配信要求を送信する手順、クライアント200の情報処理部201により配信されてきた新たなコンテンツ又は再生スケジュールをクライアント200の記憶部202に記憶させる手順からなる。このほか、現在再生しているコンテンツの再生スケジュールが再生順序Tallに達した段階で、新たに取得したコンテンツ又は再生スケジュールに切り換える手順を設けておくと、上述したコンテンツ又は再生スケジュールの円滑な更新が可能となる。これから、更新されたコンテンツ又は再生スケジュールを受信した段階では、クライアント200は新旧のコンテンツ又は再生スケジュールをクライアント200の記憶部202に記憶している。古いコンテンツ又は再生スケジュールは、更新されたコンテンツ又は再生スケジュールに切り替わった後に削除するとよい。
このような更新確認手段及び更新受信手段は、各クライアント200が主体となって、各クライアント200自身が扱うコンテンツ及び再生スケジュールの更新をサーバ100に対して確認し、更新が認められた場合にクライアント200自ら更新されたコンテンツ及び再生スケジュールを取得させる働きを有している。これにより、サーバ100により各クライアント200の更新管理をしなくても済み、サーバ100の負荷軽減、ひいては配信者の管理負担の軽減を図ることができる。
また、本例の配信システムは、自身が完結した再生内容を有するコンテンツを再生スケジュールに従って順に再生することを基本としながら、再生内容をネットワーク300上の第三者サーバ301に有する第三者コンテンツや、予め再生指定時間が設定された指定コンテンツ、そして適宜配信されてくる割込コンテンツを再生する。このため、コンテンツ再生プログラム(C再生PR)502は、更に基本コンテンツ再生プログラム(基本C再生PR)508、第三者コンテンツ再生プログラム(第三者C再生PR)509、指定コンテンツ再生プログラム(指定C再生PR)510及び割込コンテンツ再生プログラム(割込C再生PR)511に細分化されている。
これから、再生手段はコンテンツ再生プログラム508又は第三者コンテンツ再生プログラム509、クライアント200の情報処理部201及び出力部204から、指定コンテンツ再生手段は指定コンテンツ再生プログラム510、クライアント200の情報処理部201及び出力部204から、そして割込コンテンツ再生手段は割込コンテンツ再生プログラム511、クライアント200の情報処理部201及び出力部204からそれぞれ構成される。
基本コンテンツ再生プログラム508は、クライアント200の記憶部202に記憶させたコンテンツを再生スケジュールに従って順に読み出し、コンテンツそれぞれの再生内容に従って再生し、それぞれ出力部204から外部に出力させるプログラムである。具体的な基本コンテンツ再生プログラム508は、クライアント200の情報処理部201によりクライアント200の記憶部202から再生スケジュールを読み出す手順、クライアント200の情報処理部201により前記再生スケジュールの再生順序T1から順に割り当てたコンテンツをクライアント200の記憶部202から順に読み出す手順、クライアント200の情報処理部201により読み出したコンテンツを各コンテンツの再生内容に従って再生する手順、そして再生されたコンテンツの再生内容をこの再生内容に応じた出力部204から出力させる手順からなる。コンテンツの再生内容が音声又は音楽の場合は出力部204にスピーカを用い、前記再生内容が静止画又は動画の場合は出力部204にディスプレイを用いる。
第三者コンテンツ再生プログラム509は、再生スケジュールに従って順次再生されるコンテンツ、割込コンテンツ又は指定コンテンツのうち、再生内容がクライアント200の接続するネットワーク300上の第三者サーバ301にある第三者コンテンツを再生するプログラムであり、クライアント200をネットブラウザとして利用する。このように、第三者コンテンツ再生プログラム509は、基本コンテンツ再生プログラム508、指定コンテンツ再生プログラム510又は割込コンテンツ再生プログラム511の例外処理プログラムであり、基本コンテンツ再生プログラム508、指定コンテンツ再生プログラム510又は割込コンテンツ再生プログラム511の各コンテンツを再生する手順において、再生内容としてURLを検出した場合に実行する。
具体的な第三者コンテンツ再生プログラム509は、クライアント200の情報処理部201により第三者コンテンツの再生内容として検出されたURLに従って送受信部203からネットワーク300上の第三者サーバ301にアクセスする手順、クライアント200の情報処理部201により前記第三者サーバ301から前記URLに掲載された再生内容を取り込む手順からなる。こうして取り込まれた再生内容は、基本コンテンツ再生プログラム508、指定コンテンツ再生プログラム510又は割込コンテンツ再生プログラム511の各コンテンツを再生する手順に従って再生される。すなわち、URLに掲載された再生内容は、取り込んでしまえば他のコンテンツの再生内容と同様に扱うことができる。
指定コンテンツ再生プログラム510は、再生スケジュールとは無関係に、再生指定時間に指定コンテンツを再生させるプログラムである。具体的な指定コンテンツ再生プログラム510は、クライアント200の情報処理部201によりクライアント200の記憶部202に記憶させた指定コンテンツを再生指定時間に読み出す手順、クライアント200の情報処理部201により読み出した指定コンテンツを再生指定時間経過後に再生を終えた通常のコンテンツに続いて再生する手順、そして再生された指定コンテンツの再生内容をこの再生内容に応じた出力部204から出力させる手順からなる。指定コンテンツは、再生指定間経過直後に再生スケジュールに割り込ませて再生するのみで、再生スケジュールの再生順序を変更させるものではない。このため、再生スケジュールに従ったコンテンツは、指定コンテンツ再生後、指定コンテンツを割り込ませた直前のコンテンツに続く次の再生順序のコンテンツを再生すればよい。
指定コンテンツは、再生スケジュールの繰り返しにより左右されない絶対時間=再生指定時間に再生できればよい。これから、指定コンテンツは、基本受信手段により通常のコンテンツと同時に受信したり、割込受信手段により割込コンテンツとして適宜受信することができる。再生指定時間は、一時的なものでもよいし、特定期間の中での繰り返し時間であってもよい。通常、指定コンテンツの受信から再生指定時間までは間があるため、受信後クライアント200の記憶部202に記憶させておくことになるから、再生指定時間が前記繰り返し時間である場合、その都度クライアント200の記憶部202から同じ指定コンテンツを読み出して再生することになる。
割込コンテンツ再生プログラム511は、割込受信手段によって受信した割込コンテンツを、再生スケジュールの再生順序T1〜Tallの間に割り込ませて再生するプログラムである。具体的な割込コンテンツ再生プログラム511は、クライアント200の情報処理部201によりクライアント200の記憶部202に記憶させた割込コンテンツを読み出す手順、クライアント200の情報処理部201により読み出した割込コンテンツを前記読み出し後に再生を終えた通常のコンテンツに続いて再生する手順、そして再生された割込コンテンツの再生内容をこの再生内容に応じた出力部204から出力させる手順からなる。割込コンテンツは、適宜再生スケジュールに割り込ませて再生するのみで、再生スケジュールの再生順序を変更させるものではない。このため、再生スケジュールに従ったコンテンツは、割込コンテンツ再生後、割込コンテンツを割り込ませた直前のコンテンツに続く次の再生順序のコンテンツを再生すればよい。
割込コンテンツは、利用者又は配信者の要望に応じて適宜サーバ100から配信されたり、利用者又は配信者のコンピュータ等から直接送信され、上述の割込コンテンツ受信手段により受信し、割込コンテンツ再生手段により受信後に再生できればよい。この割込コンテンツは、指定コンテンツのように再生指定時間は付されていないため、例えば割込コンテンツに優先順位を付し、再生スケジュールに従ったコンテンツの優先順位が高ければ、受信時よりあまり遅くない時間内で割込コンテンツの再生を遅らせることもできる。また、割込コンテンツは、指定コンテンツと異なり、基本的には一度再生すれば必要ないため、クライアント200の記憶部202に記憶させておく必要はない。しかし、例えば再生数を定めた割込コンテンツの場合、一時的にクライアント200の記憶部202に記憶させておき、前記再生数を満たすように、適宜再生スケジュールに割り込ませて割込コンテンツを繰り返し再生するようにしてもよい。
次に、本発明による配信システムの処理の流れを、主としてサーバ100における再生スケジュールの生成(図4〜図16)と、クライアント200におけるコンテンツの再生(図17〜図20b)とにより説明する。以下における符号は、図1〜図3を参照する。また、本例は、説明の便宜上、優先順位P1〜P5が5段階の合計27個のコンテンツC11〜C53を配信、再生する配信システムを想定している。しかし、再生スケジュールに含まれるコンテンツ数は多いほど、利用者側が告知又は宣伝したい情報と、視聴者が取得したい情報との調整をうまく図ることができる。
図4は配信システムによるコンテンツ配信の全体フロー図、図5は再生スケジュール生成を表した部分フロー図、図6は優先順位P1〜P5を付したコンテンツC11〜C53を表した概念図、図7は優先順位P1〜P5と出現率A1〜A5との対応関係を表した概念図、図8は再生順序T1〜Tallからなる1次元マトリックスを構成する再生スケジュール構成を表した部分フロー図、図9は各優先順位毎の順位別必要再生数の算出を表した概念図、図10は必要再生総数Sallから再生順序T1〜Tallからなる1次元マトリックスを構成した概念図、図11は再生順序T1〜Tallからなる1次元マトリックスに対して第1順割当及び繰返割当によりコンテンツを割り当てていく流れを表した部分フロー図、図12は優先順位P1の各コンテンツC11〜CR18を割り当てていく手順を表した概念図、図13は優先順位P2の各コンテンツC21〜CR25を割り当てていく手順を表した概念図、図14は優先順位P3の各コンテンツC31〜CR36を割り当てていく手順を表した概念図、図15は優先順位P4の各コンテンツC41〜CR45を割り当てていく手順を表した概念図であり、図16は優先順位P5の各コンテンツC51〜CR53を割り当てていく手順を表した概念図である。
本発明の配信システムでは、図4に見られるように、まず利用者、作成者又は配信者がコンテンツを作成するところから始まる。通常、利用者が配信したいコンテンツを用いるため、利用者又は利用者が作成を依頼した作成者が、それぞれのコンピュータ等を利用してコンテンツを作成する。コンテンツの種類に限定はなく、クライアント200で再生可能な再生内容を含むものであれば自由である。各コンテンツの再生時間は、再生内容に含まれる音声、音楽又は動画の再生時間か、テキスト又は静止画に対して設定した表示時間の長い方で決定される。これら配信するコンテンツは、このほか配信者が作成するものも含まれる。各クライアント200毎の配信単位は、利用者(又は利用者が作成を依頼した作成者)のコンテンツと、配信者のコンテンツとを組み合わせて構成する。
各コンテンツは、利用者又は配信者に優先順位P1〜P5を設定させる。各コンテンツに対する優先順位P1〜P5の設定は、利用者又は配信者がコンテンツを作成するコンピュータ上で予めコンテンツ毎に付するか、サーバ100の記憶部102に各コンテンツを記憶させる際に、別途利用者又は配信者が設定するとよい。この優先順位の段階数は自由であるが、段階数が少ないと本発明におけるコンテンツの分散させる作用が発揮できず、逆に段階数があまり多いとかえって優先順位を設定しにくい。これから、優先順位の段階数は最低3段階〜数10段階、現実的には本例の5段階〜10段階程度が好ましい。また、優先順位P1〜P5は、大小を区別する数字で表されるが、前記数字は等間隔の自然数が分かりやすくてよい。これから、本例の優先順位P1〜P5は、1〜5の自然数としている(後掲図6参照)。
各コンテンツは、適宜又はまとめてサーバ100の記憶部102に記憶される。利用者又は作成者から提供されるコンテンツは、各種記録メディアにより配信者へもたらされ、配信者によりサーバ100の記憶部102に記憶されたり、利用者又は作成者のコンピュータから直接ネットワーク300を介してサーバ100の記憶部102へ送信されてくる。また、配信者が作成するコンテンツは、配信者のコンピュータで作成され、各種記録メディア又はネットワーク300を介してサーバ100の記憶部102に記憶されたり、直接サーバ100上で作成され、サーバ100の記憶部102に記憶させる。各コンテンツは、サーバ100の記憶部102に記憶させる段階で個別のコンテンツIDを付すことにより、サーバ100又はクライアント200での管理及び更新確認を容易にする。
配信単位のコンテンツがサーバ100の記憶部102に記憶された段階で、配信単位のコンテンツに基づいて再生スケジュールを生成する。具体的な再生スケジュールの生成手順は、図5に見られる手順による。出現率A1〜A5は、配信者により、利用者の要望に合わせて出現率設定手段により設定し、サーバ100の記憶部102に記憶させておく。出現率A1〜A5の設定のタイミングは、配信単位のコンテンツが揃う前でもよいし、配信単位のコンテンツが揃った後でもよいが、いずれにしても再生スケジュールの生成の最初の段階で設定しておく必要がある。
再生スケジュールの生成の最初は、まず図6に見られるように、順位別コンテンツ数集計手段により、優先順位P1〜P5毎の順位別コンテンツ数R1〜R5が集計される。本例の場合、優先順位P1=1のコンテンツC11〜C18により順位別コンテンツ数R1=8、優先順位P2=2のコンテンツC21〜C25により順位別コンテンツ数R2=5、優先順位P3=3のコンテンツC31〜C36により順位別コンテンツ数R3=6、優先順位P4=4のコンテンツC41〜C45により順位別コンテンツ数R4=5、そして優先順位P5=5のコンテンツC51〜C53により順位別コンテンツ数R5=3となる。
各優先順位P1〜P5は、図7に見られるように、予め設定された出現率A1〜A5に対応付けられている。具体的には、優先順位P1=1は出現率A1=1.00、優先順位P2=2は出現率A2=1.75、優先順位P3=3は出現率A3=2.25、優先順位P4=4は出現率A4=2.50、そして優先順位P5=5は出現率A5=2.65となる。このように、出現率A1〜A5は、優先順位P1〜P5と異なり、前記記載順の大小関係さえ守られていれば、自然数でなくてもよい。これは、優先順位P1〜P5はあくまで利用者又は配信者が意図する優先度合いを表すものであるのに対し、出現率A1〜A5は再生スケジュールにおける各コンテンツの出現頻度を設定する目的で設定される目的の相違に基づく違いである。
こうして順位別コンテンツ数R1〜R5の算出、そして優先順位P1〜P5と出現率A1〜A5の対応付けを終えれば、続いて再生スケジュール構成手段により、図8に見られるように、再生順序T1〜Tallからなる1次元マトリックス(1次元MX)を作成する。図8中、Siは優先順位Piの順位別必要再生数、Riは優先順位Piの順位別コンテンツ数、そしてAiは優先順位Piの出現率をそれぞれ表し、iは優先順位の段階数nを上限とする変数である。具体的には、まず順位別コンテンツ数R1〜R5及び出現率A1〜A5を掛け合わせて順位別必要再生数S1〜S5を求め、次に前記順位別必要再生数S1〜S5の総和から求めた必要再生総数Sall=再生順序Tallとして、再生順序T1〜Tallからなる1次元マトリックスを作成する。
本例の場合、図9に見られるように、順位別必要再生数S1=順位別コンテンツ数R1×出現率A1=8×1.00=8、順位別必要再生数S2=順位別コンテンツ数R2×出現率A2=5×1.75=8.75≒9、順位別必要再生数S3=順位別コンテンツ数R3×出現率A3=6×2.25=13.5≒14、順位別必要再生数S4=順位別コンテンツ数R4×出現率A4=5×2.50=12.5≒13、そして順位別必要再生数S5=順位別コンテンツ数R5×出現率A5=3×2.65=7.95≒8となる。ここで、出現率A2〜A5は小数であるため、順位別必要再生数S2〜S5は小数となるが、四捨五入している。
必要再生総数Sallは、前記順位別必要再生数S1〜S5の総和であるから52となる。これから、再生順序Tall=必要再生総数Sall=52となり、図10に見られるように、再生順序T1〜Tallからなる1次元マトリックスが作成できる。図10中、前記1次元マトリックスは、マス目様の各再生順序Tj(j=1〜52)が並んだ構造として図示し、更に再生順序T10、再生順序T20、再生順序T30、再生順序T40及び再生順序T50のマス目を太枠で囲って、区切りを分かりやすくしている。
こうして作成を終えた再生順序T1〜Tallからなる1次元マトリックスに対し、優先順位P1のコンテンツC11〜C18から順に優先順位P5のコンテンツC51〜C53までを割り当てていき、再生スケジュールを生成する。具体的な手順は、図11に見られるように、まず第1順割当手段により、なんらコンテンツを割り当てていない1次元マトリックスに優先順位P1のコンテンツC11〜C18を割り当てていき、次いで繰返割り当て手段により、既にコンテンツが割り当てられた1次元マトリックスに優先順位P2以降のコンテンツC21〜C53を割り当てていく。図11中、Siは優先順位Piの順位別必要再生数を表し、iは優先順位の段階数nを上限とする変数、Tjはコンテンツを割り当てる1次元マトリックス上の再生順序を表し、jは1〜Sallいずれかの変数、そしてC1kは優先順位P1の各コンテンツ、同じくCikは優先順位Piの各コンテンツをそれぞれ表し、kは各優先順位Piに対応する順位別コンテンツ数Riを上限とする変数である。
第1順割当手段は、まず出現間隔Int1を算出する。この出現間隔Int1は、必要再生総数Sallを順位別必要再生数S1で割った値で、剰余は切り捨てる。すなわち、出現間隔Int1=必要再生総数Sall/順位別必要再生数S1=52/8=6であり、剰余は4となる。これから、優先順位P1のコンテンツC11〜C18は、図12に見られるように、それぞれ出現間隔Int1=6の開けて再生順序T1〜Tallからなる1次元マトリックスに割り当てていくことになる。図12中、説明の便宜上、各優先順位に応じて1次元マトリックスを並列に図示しているが、実際の1次元マトリックスは一つである。
具体的には、まずコンテンツC11を再生順序T1に割り当てる。このように、なんらコンテンツを割り当てていない状態から割り当てる優先順位P1の最初のコンテンツC11は、必ず再生順序T1に割り当てられる。次のコンテンツC12は、出現間隔Int1だけ開いた再生順序T8に割り当て、以下コンテンツC13〜C18は相互に出現間隔Int1だけ開けて割り当てていく。こうしてコンテンツC11〜C18が割り当てられた再生順序Tjは、他のコンテンツC21〜C53を割り当てることができない。図12中、もはやコンテンツを割り当てることのできない再生順序Tjのマス目に×印を付している。
ここで、優先順位P1のコンテンツC11〜C18は、順位別必要再生数S1だけ割り当てが許されるため、最後のコンテンツC18を割り当てれば、1次元マトリックスに対する割当が終了する。これは、出現率A1=1.00であり、優先順位P1のコンテンツC11〜C18がそれぞれ1度しか再生スケジュール上に現れないように設定したことを意味する。裏返せば、出現率A2〜A5は1よりも大きな値に設定しているため、再生スケジュール上で繰り返して再生されるコンテンツが発生する(後掲図13〜図17参照)。
次に、繰返割当手段により、図13に見られるように、優先順位P2のコンテンツC21〜C25を、1次元マトリックスの空いた再生順序Tjに対して割り当てていく。このため、まず出現間隔Int2を算出する。出現間隔Int2は、上記出現間隔Int1と違い、既に割り当てたコンテンツC11〜C18の個数、すなわち順位別必要再生数S1を必要再生総数Sallから差し引いた剰余再生数Srestを母数とする。すなわち、出現間隔Int2=(必要再生総数Sall−順位別必要再生数S1)/順位別必要再生数S2=剰余再生数Srest/順位別必要再生数S2=(52-8)/9=4であり、剰余は8となる。
これから、優先順位P2の最初のコンテンツC21は、まだコンテンツの割り当てがなく、最も早い再生順序T2に割り当て、次のコンテンツC22は上記出現間隔Int2=4だけ空いた再生順序T7に割り当てることになる。上記優先順位P1のコンテンツC11〜C18と異なり、優先順位P2の順位別コンテンツ数R2は5個であるのに対し、順位別必要再生数S2は9である。このため、1巡目のコンテンツC21〜C25を1次元マトリックスに割り当てた後、更に2巡目のコンテンツC21〜C24まで割り当てることができる。しかし、再生順序T44に割り当てたコンテンツC24の後には出現間隔Int2=4以上に再生順序Tjが残っているが、もはや必要再生数S2だけコンテンツを割り当てているため、更にコンテンツC25を割り当てることはできない。
後は、上述の優先順位P2のコンテンツC21〜C25の割当と同様に、優先順位P3のコンテンツC31〜C36(図14)、優先順位P4のコンテンツC41〜C45(図15)、そして優先順位P5のコンテンツC51〜C53を、それぞれ順に空いた再生順序Tjに対して割り当てていく。具体的には、コンテンツC31〜C36は出現間隔Int3=2の間隔で、コンテンツC41〜C45は出現間隔Int4=1の間隔で、そしてコンテンツC51〜C53は出現間隔Int3=1の間隔で割り当てていく。
ここで、例えばコンテンツC31を見ると、出現間隔Int3=2に当たる再生順序T22はコンテンツC14が、また次の再生順序T23はコンテンツC25を既に割り当てられているため、その後の再生順序T24に割り当てられている。このように、各コンテンツは必ずしもそれぞれの出現間隔に従って、1次元マトリックスに等間隔で割り当てらず、むしろ不等間隔で割り当てられる。
また、優先順位P5のコンテンツC51〜C53を割り当てる段階では、既に下位のコンテンツC11〜C45がすべて割り当て済みで、既に順位別必要再生数S5に等しい数の再生順序Tjしか残っていない。このため、改めて出現間隔T5を求めなくてもコンテンツC51〜C53を割り当てることができる。これは、優先順位P5を割り当てる段階では、残余再生数Srestが順位別必要再生数S5に等しくなっており、出現間隔Int5が必ず1になることからも理解できる。
こうして、再生順序T1〜Tallからなる1次元マトリックスに優先順位の低いコンテンツを等間隔で振り分け、優先順位の高いコンテンツも偏ることなく高い出現頻度で再生される再生スケジュールが作成できる。再生スケジュールが1巡する時間は、この再生スケジュールに従って再生される全コンテンツC11〜C53の各再生時間の総和となる。サーバは、この再生スケジュールと再生スケジュールに従って再生されるコンテンツC11〜C53を配信単位として、配信手段によりサーバ100から各クライアント200へ配信する。受信手段により前記再生スケジュール及び配信単位のコンテンツC11〜C53を受信したクライアント200は、前記再生スケジュールに従って順にコンテンツC11〜C53を再生していく。
図17はクライアント200における各種コンテンツの再生を表した部分フロー図、図18は再生スケジュールに従ったコンテンツC11〜C53の再生を表した概念図、図19aは指定コンテンツCapにより再生スケジュールに割り込みを掛ける状態を表した概念図、図19bは指定コンテンツCapの割り込みによる再生スケジュールのずれを表した概念図、図20aは割込コンテンツCirにより再生スケジュールに割り込みを掛ける状態を表した概念図、図20bは割込コンテンツCirの割り込みによる再生スケジュールのずれを表した概念図、図21aは新たなコンテンツ又は再生スケジュールを受信した状態を表した概念図であり、図21bは新たなコンテンツ又は再生スケジュールに切り換える状態を表した概念図である。
本例の配信システムは、単独で再生される通常のコンテンツのほか、第三者サーバ301から再生内容を取り込む第三者コンテンツ、再生指定時間を付した指定コンテンツ、そして随時割り込むコンテンツを取り扱うため、図17に見られる手順に従って、コンテンツ再生手段、第三者コンテンツ再生手段、指定コンテンツ再生手段及び割込コンテンツ再生手段を使い分けながら、再生スケジュールに従ってコンテンツC11〜C53を繰り返し再生する。再生スケジュール及びコンテンツC11〜C53は、既にクライアント200が記憶部202に記憶しているため、コンテンツC11〜C53の再生中にサーバ100との通信が遮断しても問題はない。
基本的には、図18に見られるように、基本コンテンツ再生手段が、再生順序T1に割り当てたコンテンツC11から、再生順序T2に割り当てたコンテンツC21、再生順序T3に割り当てたコンテンツC31、…、と各コンテンツを再生スケジュールに並ぶ順に再生していく。ここで、再生順序T6に割り当てたコンテンツC32が、URLを含む第三者コンテンツであった場合、第三者コンテンツ再生手段が前記URLの第三者サーバ301から再生内容を取得して、前記再生内容を再生する。ここで、こうした第三者コンテンツは、ネットワーク300を介して再生内容を取得するために遅延しやすい。このため、例えば再生順序T5のコンテンツC51を再生している間にネットワーク300を通じて前記URLの第三者サーバ301にアクセスし、逐次再生の再生内容を除き、予め再生内容を取得しておくとよい。
指定コンテンツCapは、図19aに見られるように、再生スケジュールの再生順序Tjとは無関係に、絶対時間で再生指定時間を設定している。このため、再生指定時間が図19a中再生順序T8のコンテンツC12の再生中であったり、また再生順序T14及び再生順序T15の区切りであったりする。いずれの場合でも、再生スケジュールに従ったコンテンツの再生が基本であるため、指定コンテンツ再生手段は、図19bに見られるように、指定コンテンツCapを再生指定時間より後に再生する。
再生スケジュールは、あくまでコンテンツC11〜C53の再生順序を定めているだけで、絶対的又は相対的な時間で再生順序を制約しているわけではない。このため、上述のように指定コンテンツCapの再生が割り込まれた場合、図19bに見られるように、割り込まれた直後の再生順序T9は後ろへずれ、指定コンテンツCapの再生終了後、再生順序T9に割り当てたコンテンツC33が再生される。再生順序T14に割り当てたコンテンツC43も同様である。
割込コンテンツCirは、図20aに見られるように、割込受信手段で受信したタイミングで再生スケジュールに割り込ませて再生される。このため、割込コンテンツCirは、上述の指定コンテンツCap同様、例えば再生スケジュールに従った再生順序T6に割り当てたコンテンツC32が再生中である場合、受信から再生までに遅延が働く。このため、割込受信手段は受信した割込コンテンツCirを一時的にクライアント200の記憶部202に記憶させておき、図20bに見られるように、再生可能な段階で割込コンテンツ再生手段が改めて割込コンテンツCirを読み出して、再生するとよい。
このように、指定コンテンツCapと割込コンテンツCirとは、その取り扱いが似ているが、前者はあくまで再生指定時間での再生が重要であり、後者は特に利用者が要求するタイミングで再生させることが重要である違いがある。裏返せば、前記再生のタイミングの違いを除けば、クライアント200における処理は類似するため、指定コンテンツ再生手段と割込コンテンツ再生手段とは兼ねることができる。
最後に、クライアント200によるコンテンツ又は再生スケジュールの更新について説明する。クライアント200は、再生スケジュールに従ってクライアントを順に再生しながら、定期的にサーバ100に対して更新確認手段でアクセスし、コンテンツ又は再生スケジュールの更新の有無を確認する。上記図4に示す手順では、説明の便宜上、再生スケジュールに基づくコンテンツの繰り返し再生が1巡した後に更新確認をする手順になっているが、更新確認のタイミングは任意に設定できる。図4中更新確認を破線表示しているのは、こうした理由に基づく。実際には、クライアント200が有する現在のコンテンツを再生中、バックグランドの処理として更新確認(図21a)及び更新受信(図21b)を実行する。
更新確認手段がコンテンツ又は再生スケジュールの更新を確認すれば、図21aに見られるように、クライアント200は表面上再生スケジュールに従ったコンテンツの再生を続けながら、内部では更新受信手段によってサーバ100から新しいコンテンツ又は再生スケジュールを受信し、クライアント200の記憶部202に記憶させる。新たなコンテンツ又は再生スケジュールへの切換えも任意に設定してよいが、新旧のコンテンツ又は再生スケジュールの円滑な切換えを実現するには、図21bに見られるように、現在再生中の再生スケジュールの1巡が終了した段階で切り換えることが望ましい。
こうしてコンテンツ又は再生スケジュールの更新を終えた後、古いコンテンツ又は再生スケジュールは不要であり、基本的に無人で作動するクライアント200の有限な記憶部202を不要に占有することから、削除することが望ましい。しかし、古いコンテンツ及び再生スケジュールを旧配信単位として記憶部202に保存しておき、例えばコンテンツ又は再生スケジュールの更新が不可能になった場合(ネットワーク300の遮断)、現在再生中のコンテンツ及び再生スケジュールと古いコンテンツ及び再生スケジュールとを切り替えながら、再生されるコンテンツを変化させるようにしてもよい。