"ネットワークに接続された複数の視聴端末に提供する参加型コンテンツを管理する参加型コンテンツ管理装置において、前記視聴端末から得られる前記参加型コンテンツへの参加要求に対して、前記視聴端末に対する識別情報と前記参加型コンテンツに参加させる仮想キャラクタとを割り当てるユーザ管理手段と、前記参加型コンテンツに前記仮想キャラクタを参加させたスクリプトを生成するスクリプト生成手段と、前記スクリプト生成手段により生成されたスクリプトから映像コンテンツを生成する映像生成手段と、前記ユーザ管理手段により得られる識別情報と、前記映像生成手段により得られる映像コンテンツと、前記スクリプト生成手段により得られるスクリプトとを配信する配信手段とを有することを特徴とする参加型コンテンツ管理装置。前記ユーザ管理手段は、前記参加型コンテンツ毎に予め設定されている前記仮想キャラクタの配置可能エリアに対し、前記仮想キャラクタの参加順序及び人数に応じて配置内容を調整することを特徴とする請求項1に記載の参加型コンテンツ管理装置。前記ユーザ管理手段は、前記配置可能エリアに、前記仮想キャラクタを配置する基準となる配置線を設定し、設定された配置線に対する配置人数の上限値と、現在参加している仮想キャラクタの人数とに基づいて、前記仮想キャラクタの配置位置を設定することを特徴とする請求項2に記載の参加型コンテンツ管理装置。前記ユーザ管理手段は、前記視聴端末からの前記参加型コンテンツからの退場要求に対して、前記参加型コンテンツに参加している前記視聴端末に割り当てた仮想キャラクタを削除し、参加している残りの仮想キャラクタの配置を変更することを特徴とする請求項1乃至3の何れか1項に記載の参加型コンテンツ管理装置。前記ユーザ管理手段は、前記仮想キャラクタに対する発言回数、発言内容、動作回数、又は動作内容の条件が所定の条件を満たす場合に、前記仮想キャラクタの表示位置を制御することを特徴とする請求項1乃至4の何れか1項に記載の参加型コンテンツ管理装置。請求項1乃至5の何れか1項に記載の参加型コンテンツ管理装置からネットワークを介して提供される参加型コンテンツを視聴する視聴端末において、前記参加型コンテンツに対する参加要求又は退場要求を行い、参加時に割り当てられた仮想キャラクタの参加状態を管理する参加状態管理手段と、前記参加型コンテンツ管理装置から得られる前記参加型コンテンツの映像に対応するスクリプトを用いて、前記映像と異なる映像を選択する映像内容選択手段と、前記映像内容選択手段により選択された映像内容に基づいて前記スクリプトを変更し、変更されたスクリプトに基づいて映像を生成する映像生成手段とを有することを特徴とする視聴端末。前記映像内容選択手段は、前記参加型コンテンツ管理装置から得られる映像、前記仮想キャラクタの視点に対応した映像、及び前記視聴端末のユーザが指定した位置からの映像のうち、少なくとも1つの映像を選択することを特徴とする請求項6に記載の視聴端末。前記参加状態管理手段は、前記参加型コンテンツに参加している前記参加型コンテンツ管理装置から割り当てられた仮想キャラクタに対する発言内容又は動作内容を含む参加者制御情報を設定し、設定された参加者制御情報を前記参加型コンテンツ管理装置に送信することを特徴とする請求項6又は7に記載の視聴端末。コンピュータを、請求項1乃至5の何れか1項に記載された参加型コンテンツ管理装置として機能させることを特徴とする参加型コンテンツ管理プログラム。コンピュータを、請求項6乃至8の何れか1項に記載された視聴端末として機能させることを特徴とする視聴プログラム。上述したような従来手法では、ユーザ同士が離れた場所にいながら、ネットワークを介して、協調して番組制作をすることができる。しかしながら、従来手法では、制作している番組に対して、例えば非同期に参加や退場をさせたり、少人数例えば、2,3人や多人数例えば、10人以上を含めた複数による参加や自分目線での番組参加等、ユーザ側の立場で参加意欲を向上させるような機能が設けられていなかった。例えば、制作番組に対する非同期の参加や退場について、従来の仕組みは、番組制作前に各々のユーザの役割が予め設定され、番組制作開始時から終了時まで、決まった役割動作をする必要があった。したがって、例えば番組開始時から暫くの間は、単に番組を視聴し、途中から番組に参加し、更に途中で番組参加をやめる退場するといった動的な番組参加又は退場ができなかった。また、従来の仕組みは、例えば少人数の参加等は実現できたとしても、多人数による参加は実現されておらず、また番組の途中で参加者が動的に増減するような仕組みは存在していなかった。以上のようなことから、従来手法においては、ユーザ側からの立場で視聴意欲や番組参加意欲等のモチベーションを向上させるような仕組みは存在していなかった。本発明は、上述した問題点に鑑みなされたものであり、ユーザにコンテンツの視聴及び参加への意欲を向上させるための参加型コンテンツ管理装置、視聴端末、参加型コンテンツ管理プログラム、及び視聴プログラムを提供することを目的とする。上記課題を解決するために、本件発明は、以下の特徴を有する課題を解決するための手段を採用している。本発明は、ネットワークに接続された複数の視聴端末に提供する参加型コンテンツを管理する参加型コンテンツ管理装置において、前記視聴端末から得られる前記参加型コンテンツへの参加要求に対して、前記視聴端末に対する識別情報と前記参加型コンテンツに参加させる仮想キャラクタとを割り当てるユーザ管理手段と、前記参加型コンテンツに前記仮想キャラクタを参加させたスクリプトを生成するスクリプト生成手段と、前記スクリプト生成手段により生成されたスクリプトから映像コンテンツを生成する映像生成手段と、前記ユーザ管理手段により得られる識別情報と、前記映像生成手段により得られる映像コンテンツと、前記スクリプト生成手段により得られるスクリプトとを配信する配信手段とを有することを特徴とする。また本発明は、上述した参加型コンテンツ管理装置からネットワークを介して提供される参加型コンテンツを視聴する視聴端末において、前記参加型コンテンツに対する参加要求又は退場要求を行い、参加時に割り当てられた仮想キャラクタの参加状態を管理する参加状態管理手段と、前記参加型コンテンツ管理装置から得られる前記参加型コンテンツの映像に対応するスクリプトを用いて、前記映像と異なる映像を選択する映像内容選択手段と、前記映像内容選択手段により選択された映像内容に基づいて前記スクリプトを変更し、変更されたスクリプトに基づいて映像を生成する映像生成手段とを有することを特徴とする。また本発明は、コンピュータを、請求項1乃至5の何れか1項に記載された参加型コンテンツ管理装置として機能させることを特徴とする参加型コンテンツ管理プログラムである。また本発明は、コンピュータを、請求項6乃至8の何れか1項に記載された視聴端末として機能させることを特徴とする視聴プログラムである。本発明によれば、ユーザにコンテンツの視聴及び参加への意欲を向上させることができる。<本発明について>本発明は、例えば放送中の番組等の映像コンテンツに対し、番組の開始や終了のタイミングとは非同期に、ユーザのタイミングで、例えばCGによる仮想キャラクタ以下、CGキャラクタという等の仮想物体オブジェクト等を用いて、その番組への参加出演を可能とするものである。具体的には、本発明は、例えばテレビ番組のような映像コンテンツを制作する際に、視聴者ユーザが視聴中或いは視聴しようとする番組に、仮想的に出演することを可能とするものである。そのため、本発明では、ユーザ本人の代わりにCGキャラクタCGモデル、アバタを番組内に表示させ、ユーザがそのCGキャラクタを制御することで実現する。また本発明では、番組としての映像のみを視聴可能とするだけではなく、例えばCGキャラクタの視点やユーザが指定した視点での番組視聴ができるように、ユーザ個別の映像生成を、番組としての映像生成と連携して行う仕組みを構築する。これにより、ユーザの番組への参加感、及び没入感を向上させることを可能とするものである。以下に、上述したような特徴を有する本発明における参加型コンテンツ管理装置、視聴端末、参加型コンテンツ管理プログラム、及び視聴プログラムを好適に実施した形態について、図面を用いて詳細に説明する。なお、本実施形態では、映像コンテンツの一例として番組を用いることとし、また番組の制作や提示等に用いられるスクリプトの一例としてTVMLTVprogramMakingLanguageを用いることとするが、本発明においてはこれに限定されず、他の映像コンテンツやスクリプトを用いてもよい。なお、TVMLでは、例えば、番組台本やTVMLスクリプト、番組制作エンジン、素材データ等に基づいて番組が生成される。<番組参加型視聴システム:概略構成例>まず、参加型コンテンツ管理装置と視聴端末とを有する番組参加型視聴システム全体の概略構成例について図を用いて説明する。図1は、本実施形態における番組参加型視聴システムの概略構成例を示す図である。図1に示す番組参加型視聴システム10は、参加型コンテンツ管理装置11と、1又は複数の視聴端末12-1~12-n以下、簡略的に視聴端末12とする場合もあるとを有するよう構成されている。また、参加型コンテンツ管理装置11と各視聴端末12-1~12-nとは、インターネット等に代表される通信ネットワーク13を用いてデータの送受信が可能な状態で接続されている。参加型コンテンツ管理装置11は、各視聴端末12-1~12-nに提供する番組例えば、参加型の映像コンテンツ等の制作や配信等を行う。また、参加型コンテンツ管理装置11は、視聴端末12からの参加要求時に、ユーザに対応する仮想物体としてのCGキャラクタの割り当てや、番組内にCGキャラクタを参加出演させた映像等の生成を行い、生成した番組を視聴端末12に出力する等の制御を行う。また、参加型コンテンツ管理装置11は、視聴端末12からの退場要求に応じて現在番組に参加出演している対象のCGキャラクタを退場させる等の制御を行う。更に、参加型コンテンツ管理装置11は、各視聴端末12-1~12-nの各ユーザが現在どの番組に参加しているか、又は、ユーザ毎に各番組に対して参加資格やCGキャラクタに対する動作を制御する権限等があるか否か等を管理することができる。視聴端末12は、参加型コンテンツ管理装置11から提供される番組を再生する。また、視聴端末12は、視聴している番組に参加したい場合に、その番組への参加要求を参加型コンテンツ管理装置11に出力する。また、視聴端末12は、番組に出演している自分のCGキャラクタに何かしらの動作や発言をさせたい場合には、対応する動作内容や発言内容等を含む参加者制御情報を生成し、参加型コンテンツ管理装置11に出力する。なお、参加者制御情報としては、例えば、予め所望の動作を登録してあるキーボードやコントローラ等を操作して、CGキャラクタの動作内容を制御する情報等を生成したり、キーボード等を用いた文字入力やマイク等の音声入力手段を用いた音声入力等により発言内容等を含むことができるが、本発明においてはこれに限定されるものではない。また、視聴端末12は、予め所望の動作を登録してあるキーボードやコントローラ等を操作し、番組の演出例えば、カメラワークや照明等等を制御することもできる。この場合、カメラワーク等の動作も上述した参加者制御情報に含めることができる。なお、CGキャラクタに対する動作であるか、カメラ等に対する動作であるかは、予め設定された識別情報等を付加しておくことで識別することができる。更に、視聴端末12は、現在出演中の番組から自分のCGキャラクタ等を退場させる場合に、その退場要求を参加型コンテンツ管理装置11に出力する。なお、視聴端末12としては、一般的な汎用PCであってもよく、その他にも通信ネットワーク13等を介して所定のサーバやサイト等に接続可能な携帯電話等の携帯端末でもよく、またノート型PCやPDAPersonalDigitalAssistant等の携帯情報端末、スマートフォン、ゲーム機器等であってもよい。ここで、本実施形態において、ユーザ視聴端末12側からサーバ参加型コンテンツ管理装置11側に送信する情報としては、例えば、ユーザ視聴端末12を識別するための識別情報例えば、ユーザID等のユーザ情報等と、ユーザからCGキャラクタやカメラワークを制御するための参加者制御情報TVMLスクリプトを含む、番組視聴要求、参加要求、退場要求等とがある。また、サーバ側からユーザ側に送信する情報としては、例えばユーザ側からの番組参加要求に対して、割り当てる識別情報例えば、ユーザID等のユーザ情報等や、番組参加させるCGキャラクタ情報、サーバ側で生成する番組映像ストリームやユーザ側で番組を生成するためのTVMLスクリプト等がある。したがって、図1に示す番組参加型視聴システム10では、サーバ側及びユーザ側の両方に、CGを用いた映像コンテンツを生成するためのTVMLプレイヤーPlayerを映像生成エンジンとして設けていてもよい。上述した構成により、番組の開始や終了に関係なく、ユーザのタイミングで自由に番組に参加又は退場することができる。なお、上述した番組参加型視聴システム10における視聴端末12や参加型コンテンツ管理装置11の数等については、これに限定されるものではなく、例えば1又は複数の番組単位に複数の参加型コンテンツ管理装置11が設けられていてもよい。次に、上述した番組参加型視聴システム10における参加型コンテンツ管理装置11及び視聴端末12の機能構成例について具体的に説明する。<参加型コンテンツ管理装置11:機能構成例>図2は、本実施形態における参加型コンテンツ管理装置の機能構成の一例を示す図である。図2に示す参加型コンテンツ管理装置11は、入力手段21と、出力手段22と、蓄積手段23と、ユーザ管理手段24と、スクリプト生成手段25と、映像生成手段26と、ストリーム生成手段27と、再生手段28と、配信手段29と、送受信手段30と、制御手段31とを有するよう構成されている。入力手段21は、参加型コンテンツの制作管理者等から得られるユーザ管理指示やスクリプト生成指示、映像生成指示、ストリーム生成指示、再生指示、配信指示、送受信指示等、本実施形態における参加型コンテンツの制作、管理等における各入力を受け付ける。なお、入力手段21は、例えばキーボードや、マウス等のポインティングデバイス、マイク等の音声入力デバイス、タッチパネル、ペン入力、コントローラ等を有する。出力手段22は、入力手段21により入力された指示内容や、各指示内容に基づいて生成された制御データやユーザ管理データ、台本データ、スクリプト、番組、視聴端末接続情報等の内容を表示したり、音声等を出力する。なお、出力手段22は、ディスプレイ等の画面表示デバイスやスピーカ等の音声出力デバイス等を有する。蓄積手段23は、参加型の番組を制作するために必要な台本データ、生成された台本データに記述されている演出を行い、番組を生成するために必要なキャラクタオブジェクト、セット、音声、動作、静止画、動画、テキストデータ等の各種データからなる複数の素材データ、番組の演出内容や番組を構成する上で必要な番組制作エンジン、ユーザ管理手段24により管理されるユーザ情報、スクリプト生成手段25により生成されたスクリプト、映像生成手段26により生成された映像、ストリーム生成手段27により生成されたストリーム映像、配信手段29により配信されるユーザ情報ユーザのアドレス情報も含む、ユーザに割り当てる1又は複数のCGキャラクタ等の各種設定情報等を蓄積する。また、蓄積手段23は、送受信手段30を介して視聴端末12や他の外部装置等から受信した制御データや、台本データ、素材データ、番組制作エンジン、スクリプト、番組、制作装置接続情報等の各種データを蓄積することができる。なお、蓄積手段23は、上述した各種データを通信ネットワーク13等に接続された外部装置等から取得することもできる。ユーザ管理手段24は、視聴端末12で視聴中の番組に参加しようとするユーザがいた場合に、その参加要求の受信に対してユーザ情報例えば、ユーザIDやパスワード等を取得したり、予め蓄積手段23に蓄積された1又は複数のCGキャラクタから、ユーザの指示若しくはユーザ情報に基づきCGキャラクタを割り当てたり、そのCGキャラクタの番組内の表示位置等の設定を行う。具体的には、ユーザ管理手段24は、生成したユーザ情報とCGキャラクタとの対応データを追加して管理し、参加型の番組毎に予め設定されているCGキャラクタの配置可能エリアに対し、例えばCGキャラクタの参加順序及び人数に応じて配置内容を調整する処理を行う。また、ユーザ管理手段24は、視聴端末12から退場要求があった場合にも、他のCGキャラクタの配置内容や人数等の調整を行う。更に、ユーザ管理手段24は、ユーザからCGキャラクタに対する発言回数や発言内容、動作回数や動作内容等をCGキャラクタ毎に管理し、これらの情報が所定の条件を満たす場合に、そのユーザに割り当てたCGキャラクタの番組中における表示位置の制御を行うことができる。なお、所定の条件を満たす場合とは、例えば、回数であれば予め設定された閾値以上の場合等を示し、内容であれば、ある特定の発言や動作を行った場合は、同じ内容の発言や動作を繰り返した場合等である。これにより、例えば、発言回数が多かったり、発言内容にその番組の意図するキーフレーズ等が含まれる場合には、その対象ユーザCGキャラクタを画面の中心に表示させるように制御することができる。また、例えば、同じ動作を繰り返し行うような場合には、番組の邪魔をしている可能性があるため、その対象ユーザCGキャラクタを画面の端部に移動させたり、強制退場させるように制御することができる。スクリプト生成手段25は、ユーザ管理手段24からの管理情報等に基づき視聴端末12-1~12-nに番組を提供するための番組用のスクリプト例えば、TVMLスクリプト等を生成する。なお、スクリプト生成手段25は、ユーザが視聴中の番組に自由に参加又は退場ができ、その内容が即座に番組の映像に反映されるようにするため、予め設定された短い時間に対応するスクリプトや、1又は所定数の演出に対応するスクリプトを生成する。つまり、スクリプト生成手段25は、番組が提供されている間、所定の間隔でスクリプトを生成し続けることになる。また、このとき生成されるスクリプトが、上述した台本データに相当する。また、スクリプト生成手段25は、視聴端末12から発言内容や動作内容等を含む参加者制御情報が入力された場合には、それに対応するスクリプトを生成することもできる。なお、本実施形態では、発言内容を表示する場合、例えばスピーカ等の音声出力手段により音声で出力したり、画面上に吹き出しを設けて発言内容を表示させるようなスクリプトを生成する。映像生成手段26は、スクリプト生成手段25により生成されるスクリプトに基づいて、蓄積手段23等からそのスクリプトの記述に対応する番組制作エンジン、画像や映像等の素材データ等を取得し、番組の映像音声も含んでもよいを生成する。また、ストリーム生成手段27は、映像生成手段26により生成された映像から、例えばエンコーダ等を用いて各視聴端末12-1~12-nに配信するためのストリーム映像を生成する。なお、ストリーム生成手段27により生成されたストリーム映像は、出力手段22により再生して出力することができる。再生手段28は、ストリーム生成手段27により生成されたストリーム映像を再生し、番組の映像等を出力手段22により出力させる。なお、再生手段28は、スクリプト生成手段25により所定のタイミングで対応する番組の後続のスクリプトが生成され続けているため、そのスクリプトから得られるストリーム映像を現在再生中の番組のストリーム映像の直後に再生するようにする。これにより、連続する番組を再生することができる。ここで、再生手段28は、例えば上述したTVMLプレイヤーを用いることができる。TVMLプレイヤーは、TVMLスクリプトを解釈してリアルタイムCG、音声合成等を用いてコンテンツを生成し、再生出力するソフトウェア映像生成エンジンである。配信手段29は、ストリーム生成手段27により生成されたストリーム映像を、その番組を視聴している視聴端末12に配信する。なお、配信手段29は、番組参加要求のあった視聴端末12に対して、上述したストリーム映像と異なる映像を、その視聴端末12側で生成させることを可能とするため、ストリーム映像と共に、スクリプト生成手段25で生成されたスクリプトも送信する。更に、配信手段29は、コンテンツ参加時に割り当てられるユーザ等を識別するための識別情報例えば、ユーザID等やCGキャラクタの情報等も視聴端末12に送信する。送受信手段30は、通信ネットワーク13を介して番組映像ストリームやTVMLスクリプト、ユーザ情報、CGキャラクタ情報等を視聴端末12に出力する。また、送受信手段30は、視聴端末12から番組への参加要求や退場要求、発言内容や動作内容等の参加者制御情報等の各種情報を受信する。つまり、送受信手段30は、送受信可能な各種データを、番組参加型視聴システム10を構成する他の装置に送信したり、他の装置から各種データを受信するための通信インタフェースである。制御手段31は、参加型コンテンツ管理装置11における各機能構成全体の制御を行う。具体的には、制御手段31は、入力手段21により入力されたユーザ等からの入力情報に基づいてスクリプトを生成したり、その生成したスクリプトを視聴端末12に配信したり、番組映像やその映像ストリームを生成したり、生成した映像ストリームを配信したり、映像ストリームを再生したり、参加型コンテンツ管理装置11に対する視聴端末12の接続の増減等に対応した管理等の処理を行う。<視聴端末12:機能構成例>次に、視聴端末12における機能構成例について図を用いて説明する。図3は、本実施形態における視聴端末の機能構成の一例を示す図である。図3に示す視聴端末12は、入力手段41と、出力手段42と、蓄積手段43と、参加状態管理手段44と、映像内容選択手段45と、映像生成手段46と、カメラ動作生成手段47と、再生手段48と、送受信手段49と、制御手段50とを有するよう構成されている。入力手段41は、参加型の番組を視聴するユーザ等からの視聴要求や番組参加要求、退場要求等の参加状態管理指示、映像内容選択指示、映像生成指示、カメラ動作生成指示、再生指示、及び送受信指示等、番組の視聴、参加、及び退場における各入力を受け付ける。なお、入力手段41は、例えばキーボードや、マウス等のポインティングデバイス、マイク等の音声入力デバイス、タッチパネル、ペン入力、コントローラ等からなる。出力手段42は、入力手段41により入力された指示内容や、各指示内容に基づいて生成された番組等の内容を表示したり、音声を出力する。なお、出力手段42は、ディスプレイ等の画面表示機能やスピーカ等の音声出力機能等を有する。蓄積手段43は、参加型コンテンツ管理装置11から送られたスクリプト台本データ、TVMLスクリプト、番組制作エンジン、素材データ、参加状態管理手段44により管理されている状態情報、ユーザに割り当てられたCGキャラクタ等の各種設定情報等を蓄積する。また、蓄積手段43は、送受信手段49を介して参加型コンテンツ管理装置11や他の外部装置等から受信した制御データや、台本データ、素材データ、番組制作エンジン、スクリプト、番組、制作装置接続情報等の各種データを蓄積することができる。なお、蓄積手段43は、上述した各種データを通信ネットワーク13等に接続された外部装置等から取得することもできる。参加状態管理手段44は、視聴している番組に対して参加要求又は退場要求を行ったり、参加時に割り当てられた仮想キャラクタの参加状態を管理する。具体的には、参加状態管理手段44は、視聴中の番組に参加する場合に、その参加要求を生成して、参加型コンテンツ管理装置11に送信する。更に、参加状態管理手段44は、番組から退場する場合には、その番組からの退場要求を生成し、参加型コンテンツ管理装置11に出力する。また、参加状態管理手段44は、参加型コンテンツ管理装置11から割り当てられたCGキャラクタ情報や、割り当てられたCGキャラクタが使用可能な動作や発言内容、番組参加時のCGキャラクタに対応付けられたユーザ情報等を管理する。映像内容選択手段45は、番組の視点を通常の番組再生時の視点から見るか、CGキャラクタの視点から見るか、若しくはユーザが指定した視点から見るかを選択する。例えば、本実施形態では、CGキャラクタの視点から見える番組を視聴することにより、自分の分身であるCGキャラクタの目線で番組を視聴することができる。これにより、ユーザは、自らが番組に参加しているという認識が強くなり番組に対する参加意欲を向上させることができる。また、本実施形態では、ユーザが指定した視点で番組を視聴できるため、通常の番組の映像では、自分のCGキャラクタが他のCGキャラクタ等に隠れて映っていない場合であっても、自分のCGキャラクタが見える視点から番組を視聴することができる。なお、このような映像内容を選択して切り替えた場合であっても番組は中断せず、連続して再生されている。つまり、映像だけが切り替わり、番組はそのまま進行することになる。更に、本実施形態では、映像の切り替わりは、その指示をした視聴端末12のみで行われるため、他の視聴端末では、通常の映像が表示される。したがって、本実施形態によれば、個別の視点で、番組CGキャラクタを表示することができる。なお、映像内容選択手段45は、例えば、上述した通常の番組再生時の視点、CGキャラクタの視点、及びユーザが指定した視点のうち、複数を選択して、複数の視点からの番組を同時に生成して表示させることもできる。映像生成手段46は、参加型コンテンツ管理装置11から取得したスクリプトから映像を生成する。このとき、映像生成手段46は、例えば映像内容選択手段45やカメラ動作生成手段47等において、カメラ動作等や映像内容の選択等でユーザが設定した内容がある場合に、その内容に基づいてスクリプトが変更される。そのため、映像生成手段46では、そのスクリプトに対応する映像が生成される。カメラ動作生成手段47は、映像内容選択手段45において、映像をユーザ指定に切り替えた場合に、ユーザが設定したカメラショット位置、高さ、向きや動作等のカメラワークを行うものである。この場合、カメラワークとしては、例えばパンやチルト、ズームイン、ズームアウト等の動作も行うことができるが、本発明においてはこれに限定されるものではない。再生手段48は、映像生成手段46により生成された映像を再生し、映像又は音声等を出力手段42により出力させる。なお、再生手段48は、番組中は、映像生成手段46により所定のタイミングに生成され続けているため、そのスクリプトから得られるストリーム映像をそのまま現在再生中に番組で実行されているストリーム映像の直後に再生するようにする。これにより、連続する番組を再生することができる。ここで、再生手段48は、例えば上述したTVMLプレイヤーを用いることができる。また、再生手段48は、ストリームを再生するだけのストリームビューアを用いることができる。送受信手段49は、通信ネットワーク13を介して番組視聴要求や、参加要求、退場要求、ユーザ情報、参加者制御情報例えば、動作内容、発言内容等を参加型コンテンツ管理装置11に出力する。また、送受信手段49は、参加型コンテンツ管理装置11から番組映像ストリームや、TVMLスクリプト、番組参加に対して割り当てられたCGキャラクタ等の各種情報を受信する。つまり、送受信手段49は、送受信可能な各種データを、番組参加型視聴システム10を構成する他の装置に送信したり、他の装置から各種データを受信するための通信インタフェースである。制御手段50は、参加型コンテンツ管理装置11における各機能構成全体の制御を行う。具体的には、制御手段50は、入力手段41により入力されたユーザ等からの入力情報に基づいてスクリプトを生成したり、その生成したスクリプトを参加型コンテンツ管理装置11に送信したり、映像を生成したり、映像ストリームを再生する等の各種処理を行う。<番組視聴時における具体例>次に、本実施形態における番組視聴時における処理の具体例について説明する。番組視聴時において、例えば、視聴端末12から番組視聴要求があった場合、参加型コンテンツ管理装置11は、その番組視聴要求に対応する番組のスクリプトから番組を生成し、番組映像ストリームを生成して、要求のあった視聴端末12に出力する。つまり、ユーザが番組に参加せず、単に番組を視聴している状態では、参加型コンテンツ管理装置11側で、番組台本であるTVMLスクリプトをTVMLプレイヤーに入力すると、TVMLプレイヤーが、CG等による番組映像を生成する。また、参加型コンテンツ管理装置11は、生成された番組映像から、エンコーダ等を用いて映像ストリームを生成し、生成したコンテンツを通信ネットワーク13を介して各視聴端末12-1~12-nに出力する。ユーザ視聴端末12側では、通信ネットワーク13を介して参加型コンテンツ管理装置11から配信される映像ストリームを、ストリームビューワ等の再生手段により再生し、ユーザに番組を視聴させる。<番組参加時における具体例>次に、本実施形態における番組参加時における処理の具体例について図を用いて説明する。図4は、番組参加時における処理手順の一例を示すフローチャートである。まず参加型コンテンツ管理装置11は、視聴端末12からの番組参加要求を取得するとS01、参加要求のあったユーザIDの生成と、CGキャラクタの割り当てを行うS02。なお、S02の処理で生成されるユーザIDとは、番組に参加するユーザを識別して管理するための情報であると同時に番組に出演するCGキャラクタを識別して管理するための情報である。したがって、ユーザIDは、ユーザ毎に予め設定されている参加型コンテンツ管理装置11にアクセスするためのユーザ情報でもよく、参加要求を受けたときに新たに生成されるユーザIDであってもよい。また、S02の処理でCGキャラクタを割り当てる場合には、視聴端末12に対して予め設定されているユーザ情報から性別を取得して、同姓のキャラクタを設定してもよく、動物やロボット等、性別のあまり関係のないキャラクタを設定してもよく、更にユーザが指定したキャラクタを設定してもよい。また、S02の処理では、そのユーザの今までの参加履歴等を参照し、前回使用したCGキャラクタが、現在他のユーザにより使用中でない場合に、そのCGキャラクタを使用させるように設定してもよい。次に、生成したユーザIDとCGキャラクタとの対応データを追加しS03、CGキャラクタを番組に出演参加させるためのTVMLスクリプトを生成するS04。更に、その番組に予め設定されているセットアップTVML例えば、スタジオセット等の参照や追加等を行いS05、新たに生成したTVMLスクリプトから映像を生成するS06。次に、参加要求をしてきた視聴端末12にユーザID、CGキャラクタ情報を通知しS07、S04の処理及びS06の処理で生成したTVMLスクリプト及び映像映像ストリームを視聴端末12に送信するS08。なお、視聴端末12にTVMLスクリプトを送る理由は、例えば視聴端末12毎に自分のCGキャラクタの視点やユーザが指定した視点から番組を視聴する場合に、視聴端末12側でTVMLスクリプトを編集し、対応する番組映像を生成させて、番組を視聴することを実現するためである。したがって、視聴端末12に送信される映像は、通常時に表示される番組の映像となる。<S03の処理内容>ここで、上述したS03の処理内容について具体的に説明する。ユーザIDとCGキャラクタとの対応データとは、そのユーザIDの名称で番組に出演させるCGキャラクタを管理するためのものであり、例えば、user001のユーザIDを持つユーザが、CGキャラクタとしてyamadaのCGキャラクタを使用する場合には、そのCGキャラクタの定義ファイルであるyamada.bmとユーザIDとを対応付けて、user001:yamada.bmとして管理する。<S04の処理内容>次に、上述したS04の処理内容CGキャラクタを出演させるためのスクリプト生成について、フローチャートを用いて具体的に説明する。図5は、CGキャラクタを出演させるためのスクリプト生成の処理手順の一例を示すフローチャートである。図5において、例えばユーザIDをCGキャラクタ名として,CGキャラクタの定義ファイルを開きOpenし、表示できるTVMLスクリプトを生成するS11。次に、例えば蓄積手段等から現在のセットアップTVMLスクリプトを取得するS12。次に、スタジオセット等に付加されている参加者配置可能エリアを取得しS13、自分以外のCGキャラクタがどこに配置されているかを示す配置情報を取得するS14。次に、参加者配置可能エリアにおいて適切な位置となるようにCGキャラクタを配置するTVMLスクリプトを生成し、S15、生成したTVMLスクリプトをセットアップTVMLスクリプトとして蓄積手段等に保存するS16。なお、上述した処理は、例えば参加型コンテンツ管理装置11のユーザ管理手段24やスクリプト生成手段25等により行われる処理である。<スクリプト例>ここで、図6は、本実施形態におけるスクリプトの具体例を示す図である。ここで、図6aは、上述したS11の処理に対応するCGキャラクタのTVMLスクリプト例を示し、図6bは、CGスタジオセットのメタデータ例を示し、図6cは、図6bに対応する画面中における参加者配置可能エリアの例を示している。なお、図6a,bには、説明の便宜上、左側に行番号を付している。図6aの例では、上述したuser001:yamada.bmの対応データに基づくCGキャラクタが設定されている。また、図6bの03行目には、スタジオ名称を示し、04~09行目には、参加者配置可能エリアが座標x横,z奥行きで示されている。つまり、参加者配置可能エリアとして、例えばx0,z0、x0,z1、x1,z0、x1,z1の4点を指定することで、図6cに示すように、画面中に参加者配置可能エリアを設定することができる。なお、参加者配置可能エリアは、番組中画面中のスタジオセット等に対応させて設定されることが好ましい。なお、参加者配置可能エリアの設定方法については、本発明においてはこれに限定されるものではない。また、本実施形態において、10行目には、配置線上限数が設定され、11行目には、配置線1本あたりの出演者上限数が設定され、12行目には、スタジオセットの出演者上限数が設定されている。これらの設定情報に基づいて、参加型コンテンツ管理装置11における参加者の管理が行われる。<S14及びS15の処理内容>次に、上述したS14及びS15の処理内容CGキャラクタの参加状態管理処理手順について、フローチャートを用いて具体的に説明する。図7は、CGキャラクタの参加状態管理処理手順参加時の一例を示すフローチャートである。また、図8は、参加によるCGキャラクタの増加時の配置例を示すための図である。なお、本実施形態では、図8a~hのように遷移して番組参加時におけるCGキャラクタの配置が行われる。また、図8a~hの各枠は、参加者配置可能エリアを示している。図7において、まず現時点での番組参加者としてのCGキャラクタの合計人数を取得するS21。ここで、現在の配置線の上限値以下か否かを判断するS22。なお、S22の処理において、現時点で配置線がない場合には、1本あたりの上限値と比較する。また、複数本ある場合には、それぞれ1本あたりの上限値の合計となる。ここで、現在の配置線の上限値以下である場合S22において、YES、各CGキャラクタ番組に出演しているCGキャラクタの間隔が等間隔になるように、各CGキャラクタを表示する位置例えば、図8に示すx座標を決定するS23。また、S22の処理において、現在の配置線の上限以上でない場合S22において、NO、配置線を追加しS24、配置線数が上限値以下か否かを判断するS25。ここで、配置線数が上限値以下である場合S25において、YES、CGキャラクタの配置数を決定するS26。なお、S26の処理では、各配置線上のCGキャラクタ数が最も少なくなるようにCGキャラクタの配置数を決定する。但し、各配置線上の配置数が同じにならない場合は、前方の線図8に示すz座標の大きい線に追加する。また、S23又はS26の処理が終了後、例えば、新たに参加するCGキャラクタを前方の中心に最も近い位置に配置する。これは、新たに参加したユーザが直ぐに自分のCGキャラクタを見つけ易くするためである。なお、本発明においては、これに限定されるものではなく、例えば新たに参加したCGキャラクタは、画面に表示されてから数秒間は、点滅させたり手を振る等の所定の動作をさせるようにして、CGキャラクタを見つけ易くさせてもよい。また、S27の処理に対応して、これまで出演していたCGキャラクタを配置再配置するS28。更に、上述したS25の処理において、配置線数が上限値以下である場合S25において、NO、上限値となっているため、これ以上は参加できない旨の通知等、参加不可能処理を行うS29。上述した処理により、図8a~hに示すように、出演するCGキャラクタを等間隔に配置することができる。なお、図8の例では、配置線を横線にしているが、本発明においてはこれに限定されるものではなく、例えば、縦線でもよく、円形や矩形の線であってもよい。また、円卓やテーブル等の形に対応させて座るような場合には、その物体オブジェクトの形状に対応させた線であってもよい。なお、本実施形態における配置線や出演配置可能エリアの枠は、例えば複数のCGキャラクタを所定のエリア内に整列させるために用いるものであり、実際に視聴する番組映像には表示されないが、表示するように設定することもできる。なお、上述した処理は、例えば参加型コンテンツ管理装置11のユーザ管理手段24等により行われる処理である。<CGキャラクタが参加している画面例>次に、上述したCGキャラクタが参加している画面例について図を用いて説明する。図9は、CGキャラクタが参加している画面例を示す図である。なお、図9aには、画面例を示し、図9bには、図9aの画面に対応するスクリプトの例を示している。なお、図9bのスクリプトには、説明の便宜上、行番号を付している。図9における画面60には、スタジオセットが表示されており、予め設定された番組進行等を行う司会者等のCGキャラクタ61が存在する。また、図9の例では、予め設定された出演者位置可能エリアに参加者である10人のCGキャラクタ62が配置されている。各CGキャラクタ62は、それぞれ各視聴端末12-1~12-nの各ユーザに相当するものである。なお、本実施形態では、1つの視聴端末12に対して、1又は複数のCGキャラクタを出演させることができる。また、本実施形態では、各CGキャラクタ62に動作や発言をさせることができ、図9の例では、吹き出し63により発言内容が表示されている。この場合、例えば、図9bの08行目に示すように、ユーザ入力テキスト沢山人がいるなあをTVMLスクリプトの所定の箇所に置換する。また、図9bの12行目に示すように、吹き出し表示位置を該当するCGキャラクタ出演者の頭上の位置X0,Y0,Z0に表示されるようにTVMLスクリプトで設定する。なお、本実施形態においてはこの限りではなく、例えば発言内容を音声出力等により出力してもよい。また、音声出力の場合は、音声が同時に出力されると聞き取りにくくなるため、音声が出力される順序を制御したり、例えば、最近参加したユーザや常連ユーザ等、ユーザによって音声出力できる人を制限してもよい。更に、本実施形態では、上述した吹き出しと音声とを両方出力してもよい。<カメラ選択の具体例>次に、上述した視聴端末12の映像内容選択手段45等におけるカメラ選択の具体例について、図を用いて説明する。図10は、本実施形態におけるカメラ選択手法の具体例について説明するための図である。図10に示す例では、ユーザ側である視聴端末12と、サーバ側である参加型コンテンツ管理装置11とのの処理を概略的に示している。ユーザ側視聴端末12からは、ユーザIDと共に、CGキャラクタ出演者の発言内容及び動作のための参加者制御情報を、サーバ側参加型コンテンツ管理装置11のユーザ管理手段に送信する。参加型コンテンツ管理装置11は、視聴端末12から送信された情報を取得し、ユーザの入力を反映するTVMLスクリプトの生成を行う。次に、参加型コンテンツ管理装置11では、生成したTVMLスクリプトを用いて映像生成を行うことで、ユーザの入力に対応した映像を生成する。なお、この場合に生成させる映像は、CGキャラクタを番組に参加させた通常の視点からの番組映像である。また、参加型コンテンツ管理装置11は、生成した映像からストリーム映像を生成し、生成したストリーム映像を番組に参加している視聴端末12に送信する。なお、スクリプト生成手段により生成されたスクリプトは、ユーザ管理処理にて、番組に参加している全てのユーザクライアントに送信される。視聴端末12は、参加型コンテンツ管理装置11から配信されたTVMLスクリプトを受信し、映像生成を行うことで、参加型コンテンツ管理装置11で生成されている番組映像と同じものを生成することができる。ここで、視聴端末12の映像生成手段で生成される映像に必要なTVMLスクリプトのうち、例えばカメラワークに含まれるカメラショットを制御するスクリプトを、視聴端末12におけるカメラ動作生成手段により生成し、その内容から映像内容選択手段により映像生成を行うことで、通常の番組映像と内容は同じでカメラショットのみが異なる映像個別映像を生成することができる。したがって、本実施形態では、同一の番組に対する映像を個別映像や番組映像に切り替えて表示することができる。<カメラ選択に対応するカメラショットの生成例>次に、上述したカメラ選択に対応するカメラショットの生成例について、図を用いて具体的に説明する。図11は、カメラ選択に対応するカメラショット生成について説明するための図である。なお、図11aは、番組出演者参加者であるCGキャラクタのカメラ目線でのカメラショット生成例を示し、図11bは、司会者を撮影するユーザ指定におけるカメラショット生成例を示し、図11cは、CGキャラクタを撮影するユーザ指定におけるカメラショット生成例を示している。図11aの例では、CGキャラクタの目線若しくは頭上にカメラがあるような視点で番組を視聴することができる。この場合、CGキャラクタの位置に応じてカメラの位置等が設定される。ここで、図12は、CGキャラクタ目線でのカメラショット生成処理手順の一例を示すフローチャートである。図12に示す例では、まず映像生成手段46等によりユーザIDに対応するCGキャラクタの位置座標例えば、xc,zc等と、CGキャラクタの体の向きdを取得しS31、更にユーザIDに対応するCGキャラクタの身長hcを取得するS32。なお、身長hcは、予めCGキャラクタ毎に設定されている。次に、カメラ動作生成手段47は、カメラワークカメラショットを含むに対応するカメラパラメータを生成するS33。なお、S33の処理では、具体的には、カメラの座標xcam,ycam,zcam=xc,hc,zcとし、カメラのパンニング角度pan、カメラの垂直画角vangle=vとする。なお、本実施形態において、上述したvangleの値は、ユーザによる指定とする。これにより、S22の処理で得られたカメラパラメータにより映像生成手段46によって、そのカメラ用のスクリプトが生成される。なお、図11aの例では、カメラパラメータをTVMLスクリプトとして送信する場合のスクリプト例として、例えばcamera:movementname=Acam,x=xcam,y=yzam,z=zcam,vangle=v,pan=panが生成される。また、図11bの例では、ユーザのカメラ選択により、ユーザ指定を選択し、出演者であるCGキャラクタが司会者を見ている場合のカメラショットを示している。この場合、カメラパラメータのスクリプト例は、camera:movementname=Acam,x=xcam,y=yzam,z=zcam,vangle=v,pan=pan,tilt=Tiltとなる。なお、本実施形態においては、上述したvangle,tiltの値は、ユーザによる指定値とする。また、図11cの例では、出演者であるCGキャラクタuser001自身をクローズアップしている場合のカメラショット例を示している。この場合、カメラパラメータのスクリプト例は、icamera:closeupname=Acam,what=user001、又は、iicamera:movementname=Acam,x=X,y=Y,z=Z,vangle=V,pan=PAN,tilt=TILTとなる。なお、本実施形態において、上述のiは、TVMLの特定の対象物をクローズアップするカメラコマンドの例を示し、上述のiiは、図11bと同様にカメラパラメータを指定する例を示している。なお、本実施形態において、上述したX,Y,Z,V,PAN,TILTの値は、例えば、ユーザが予め設定された設定入力画面等を用いて指定したり、コントローラ等により指示することにより指定することができる。<番組から退場するときの処理手順>次に、本実施形態において、参加中出演中の番組から退場するときの処理手順について、フローチャート等を用いて具体的に説明する。図13は、CGキャラクタの参加状態管理処理手順退場時の一例を示すフローチャートである。図13において、まず、参加型コンテンツ管理装置11は、視聴端末12から番組退場要求を取得するとS41、退場要求のあったユーザIDの消去とユーザIDに対応するCGキャラクタを解放するS42。なお、解放するとは、例えば、そのユーザIDに対応するCGキャラクタの動作や発言内容を制御操作することができなくなった状態を意味する。次に、ユーザIDとCGキャラクタとの対応データからの削除を行うS43。また、CGキャラクタを出演中参加中の番組から消去し、その時点で参加している残りのCGキャラクタを再配置するTVMLスクリプトを生成するS44。更に、その番組に予め設定されているセットアップTVML例えば、スタジオセット等の参照や追加等を行いS45、新たに生成したTVMLスクリプトから映像を生成するS46。また、映像を生成した後、視聴端末12に退場完了を通知しS47。生成した映像のみを視聴端末12に送信するS48。したがって、退場後は、視聴端末12に対してTVMLスクリプトの送信は行わない。なお、本発明においてはこれに限定されるものではなく、例えば退場後においてもカメラワーク等における映像の切り替えを行いたい場合には、TVMLスクリプトを送信することもできる。なお、上述した処理は、例えば参加型コンテンツ管理装置11により行われる処理である。<S44の処理内容>次に、S44の処理CGキャラクタの再配置処理手順についてフローチャート等を用いて具体的に説明する。図14は、CGキャラクタの再配置処理手順の一例を示すフローチャートである。また、図15は、退場によるCGキャラクタの減少時の配置例を示すための図である。なお、本実施形態では、図15a~hのように遷移して番組退場時におけるCGキャラクタの配置が行われる。また、図15a~hの各枠は、参加者配置可能エリアを示している。図14において、退場要求のあったCGキャラクタを消去するとS51、CGキャラクタの現時点での参加合計人数を取得するS52。なお、合計人数の取得は、ユーザ管理手段24により管理されている情報から容易に取得することができる。次に、参加人数が1人以上か否かを判断しS53、1人以上である場合S53において、YES、次に、現在の配置線数-1の上限より多いか否かを判断するS54。つまり、現在の配置線数-1の線数における配置上限数よりCGキャラクタ数が多いか否かを判断する。ここで、現在の配置線数-1の上限より多くない場合S54において、NO、配置線を1本削除するS55。また、S54の処理において、現在の配置線数-1の上限より多い場合S54において、YES、又はS55の処理が終了後、各配置線上のCGキャラクタ数が最も少なくなるようにCGキャラクタCGキャラクタの配置数を決定する。但し、各配置線上の配置数が同じにならない場合には、前方の線例えば、図15におけるz座標の大きい線に追加する。次に、各CGキャラクタの間隔が等間隔になるように各CGキャラクタを表示する位置例えば、図15におけるx座標を決定するS57。なお、上述したS53の処理において、参加人数が1人以上いない場合には、誰も参加していないことを意味する。そのため、全ての配置線を削除してS58、処理を終了する。つまり、図15に示すように、退場時の処理手順は、上述した参加時の処理手順の逆の手順になる。これにより、CGキャラクタが退場しても、残りのCGキャラクタがバランスよく配置された映像を生成することができる。なお、上述した処理は、例えば参加型コンテンツ管理装置11のユーザ管理手段24等により行われる処理である。<実行プログラム>ここで、上述した参加型コンテンツ管理装置11及び視聴端末12は、例えばCPUCentralProcessingUnit、RAMRandomAccessMemory等の揮発性の記憶媒体、ROMReadOnlyMemory等の不揮発性の記憶媒体、マウスやキーボード、ポインティングデバイス等の入力装置、画像やデータを表示する表示装置、並びに外部と通信するためのインタフェース装置を備えたコンピュータによって構成することができる。したがって、参加型コンテンツ管理装置11及び視聴端末12が有する上述した各機能は、これらの機能を記述したプログラムをCPUに実行させることによりそれぞれ実現可能となる。また、これらのプログラムは、磁気ディスクフロッピィーディスク、ハードディスク等、光ディスクCD-ROM、DVD等、半導体メモリ等の記録媒体に格納して頒布することもできる。つまり、上述した各構成における処理をコンピュータに実行させるための実行プログラム参加型コンテンツ管理プログラム及び視聴プログラムを生成し、例えば汎用のパーソナルコンピュータやサーバ等にそのプログラムをインストールすることにより、参加型コンテンツ管理処理及び視聴処理を実現することができる。なお、本発明における実行プログラムによる処理については、例えば上述した各処理を実現することができる。上述したように本発明によれば、ユーザ視聴者にコンテンツの視聴及び参加への意欲を向上させることができる。具体的には、ユーザは、番組制作の現場と離れたところにいても、番組とは非同期にいつでも参加することができ、また参加中の番組をいつでもやめることができる。また、本発明によれば、例えば複数少人数、多人数を含むの視聴者が参加した際に、システム側で視聴者のCGキャラクタを自動的にバランスよく配置することができる。そのため、見苦しい配置を自動的に回避することができる。また同様に、本発明によれば、番組から退場する際にも自動的にCGキャラクタの配置をバランスよく再構成することができる。更に、本発明によれば、各視聴者が番組映像以外に自分の見たいカメラワークカメラショットも含むで番組を視聴することができる。また、各視聴者のCGキャラクタから見た映像を自動的に生成することにより、視聴者の番組への参加感を高めることができる。これにより、番組視聴及び参加へのモチベーションの向上が期待できる。以上本発明の好ましい実施形態について詳述したが、本発明は係る特定の実施形態に限定されるものではなく、特許請求の範囲に記載された本発明の要旨の範囲内において、種々の変形、変更が可能である。"