(57)【要約】【課題】  ビデオチャットシステムなど、複数のユーザがコミュニケーションを行う上で、共有する映像、音声をリアルタイムに操作できる自由度の高いコミュニケーションシステムを提供する。【解決手段】  端末装置は、お互いにユーザの映像や音声データ（オブジェクト）を送受信するほか、他のユーザが発信したオブジェクトに対する制御命令を送受信することが可能である。端末装置は、制御命令に従ってオブジェクトを制御し出力する。また、同一のオブジェクトに関する複数の制御命令については、合成あるいは排他処理を行う。【選択図】図３
2006173879.tif 000002
【特許請求の範囲】
【請求項１】
複数の端末装置を有するコミュニケーションシステムであって、
各端末装置は、
各端末装置で共通して出力される出力情報を決定する手段と、
決定された出力情報を互いに送受信する手段と、
前記出力情報の制御命令を生成する手段と、
生成した出力情報の制御命令を互いに送受信する手段と、
送受信した制御命令に従って出力情報を制御して出力する出力手段と
を有することを特徴とするコミュニケーションシステム。
【請求項２】
第１の端末装置と第２の端末装置とを有するコミュニケーションシステムであって、
前記第１の端末装置は、
前記第１の端末装置と第２の端末装置で共通して出力される第１のオブジェクトを決定する第１のオブジェクト決定手段と、
決定された第１のオブジェクトを特定する情報を前記第２の端末装置に送信する手段と、
前記第２の端末装置で決定された第２のオブジェクトを特定する情報を前記第２の端末装置から受信する手段と、
オブジェクトの制御命令を生成する第１の制御命令生成手段と、
生成した制御命令を前記第２の端末装置に送信する手段と、
前記第２端末装置からオブジェクトの制御命令を受信する第１の制御命令受信手段と、
前記第１の制御命令生成手段で生成した制御命令及び前記第１の制御命令受信手段で受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する第１の出力手段とを有し、
前記第２の端末装置は、
前記第１の端末装置と第２の端末装置で共通して出力される第２のオブジェクトを決定する第２のオブジェクト決定手段と、
決定された第２のオブジェクトを特定する情報を前記第１の端末装置に送信する手段と、
前記第１の端末装置で決定された第１のオブジェクトを特定する情報を前記第１の端末装置から受信する手段と、
オブジェクトの制御命令を生成する第２の制御命令生成手段と、
生成した制御命令を前記第１の端末装置に送信する手段と、
前記第１端末装置からオブジェクトの制御命令を受信する第２の制御命令受信手段と、
前記第２の制御命令生成手段で生成した制御命令及び前記第２の制御命令受信手段で受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する第２の出力手段と
を有することを特徴とするコミュニケーションシステム。
【請求項３】
請求項２に記載のコミュニケーションシステムであって、
前記第１の端末装置は、第１の撮像装置を有し、
前記第１のオブジェクト決定手段は、前記第１の撮像装置で撮像して得られる画像データを第１のオブジェクトと決定し、
前記第２の端末装置は、第２の撮像装置を有し、
前記第２のオブジェクト決定手段は、前記第２の撮像装置で撮像して得られる画像データを第１のオブジェクトと決定する
ことを特徴とするコミュニケーションシステム。
【請求項４】
請求項２に記載のコミュニケーションシステムであって、
前記第１の端末装置は、第１の音声入力装置を有し、
前記第１のオブジェクト決定手段は、前記第１の音声入力装置に入力された音声データを第１のオブジェクトと決定し、
前記第２の端末装置は、第２の音声入力装置を有し、
前記第２のオブジェクト決定手段は、前記第２の音声入力装置に入力された音声データを第２のオブジェクトと決定する
ことを特徴とするコミュニケーションシステム。
【請求項５】
請求項２に記載のコミュニケーションシステムであって、
前記第１の端末装置及び第２の端末装置は、
共通して出力する背景画像又は背景音声のオブジェクトを記憶する手段を有し、
前記第１の出力手段は、
前記第１の制御命令生成手段で生成した制御命令及び前記第１の制御命令受信手段で受信した制御命令に従って前記背景画像又は背景音声のオブジェクトを制御して出力し、
前記第２の出力手段は、
前記第２の制御命令生成手段で生成した制御命令及び前記第２の制御命令受信手段で受信した制御命令に従って前記背景画像又は背景音声のオブジェクトを制御して出力する
ことを特徴とするコミュニケーションシステム。
【請求項６】
請求項１に記載のコミュニケーションシステムであって、
前記出力手段は、予め関連付けられた複数の制御命令が連続して実行されるように出力情報を制御する
ことを特徴とするコミュニケーションシステム。
【請求項７】
請求項１に記載のコミュニケーションシステムであって、
前記制御命令は、
（Ａ）出力情報の表示位置を変更する位置指定命令、
（Ｂ）出力情報の表示位置を移動する移動命令、
（Ｃ）出力情報の表示を消去する消去命令、
（Ｄ）出力情報の表示の大きさを指定する表示サイズ変更命令、
（Ｅ）出力情報の表示の色数を指定する色数変更命令、
（Ｆ）出力情報の表示の透明度を指定する透明度変更命令、
（Ｇ）出力情報の重ね合せの順位を指定する表示優先度変更命令、
（Ｈ）出力情報の音量を指定する音量変更命令、
（Ｉ）出力情報の音声の変調を指定する音声変調命令
のうちの少なくとも一つである
ことを特徴とするコミュニケーションシステム。
【請求項８】
請求項１に記載のコミュニケーションシステムであって、
前記端末装置は、
同一の出力情報に対して複数の制御命令が存在する場合の出力情報の制御の規則を記憶する記憶手段を有し、
前記出力手段は、
同一の出力情報に対して複数の制御命令が存在する場合、前記規則に従って当該出力情報を制御して出力する
ことを特徴とするコミュニケーションシステム。
【請求項９】
請求項８に記載のコミュニケーションシステムであって、
前記規則は、
（ａ）制御命令の発信時間が早い順に実行する、
（ｂ）予め関連付けられた制御命令を連続して実行する、
（ｃ）制御命令がパラメータを含む場合は平均値もしくは中間値を取り実行する
（ｄ）制御命令を発信したユーザの情報が入手されている場合、そのユーザが予め定められたユーザである制御命令を実行する
（ｅ）制御命令を発信したユーザの情報が入手されている場合、予め設定されたユーザ優先度の高い順に、制御情報を実行する。
（ｆ）制御命令を発信したユーザの音声の情報が入手されている場合、音声の大きいユーザの制御命令を順に実行する
（ｇ）制御命令を発信したユーザの映像が入手されている場合、映像の動きベクトルの大きいユーザ制御命令を順に実行する、
の少なくとも一つの規則が含まれている
ことを特徴とするコミュニケーションシステム。
【請求項１０】
請求項８において、
前記端末装置の記憶手段は、
同一の出力情報に対して複数の制御命令が存在する場合の出力情報の制御の規則であってその端末装置独自の規則を記憶し、
前記出力手段は、
同一の出力情報に対して複数の制御命令が存在する場合、前記端末装置独自の規則に従って当該出力情報を制御して出力する
ことを特徴とするコミュニケーションシステム。
【請求項１１】
複数の端末装置を有するコミュニケーションシステムの端末装置であって、
他の端末装置で決定された各端末装置で共通して出力される出力情報を受信する手段と、
前記出力情報の制御命令を生成する手段と、
生成した制御命令に従って出力情報を制御して出力する出力手段と
を有することを特徴とするコミュニケーションシステム。
【請求項１２】
第１の端末装置と第２の端末装置とを有するコミュニケーションシステムの第１の端末装置であって、
前記第１の端末装置と第２の端末装置で共通して出力される第１のオブジェクトを決定するオブジェクト決定手段と、
決定された第１のオブジェクトを特定する情報を前記第２の端末装置に送信する手段と、
前記第２の端末装置で決定された第２のオブジェクトを特定する情報を前記第２の端末装置から受信する手段と、
オブジェクトの制御命令を生成する制御命令生成手段と、
生成した制御命令を前記第２の端末装置に送信する手段と、
前記第２の端末装置からオブジェクトの制御命令を受信する制御命令受信手段と、
前記制御命令生成手段で生成した制御命令及び前記制御命令受信手段で受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する出力手段と
を有することを特徴とする第１の端末装置。
【請求項１３】
請求項１１に記載の端末装置であって、
前記出力手段は、予め関連付けられた複数の制御命令が連続して実行されるように出力情報を制御する
ことを特徴とする端末装置。
【請求項１４】
請求項１１に記載の端末装置であって、
同一の出力情報に対して複数の制御命令が存在する場合の出力情報の制御の規則を記憶する記憶手段を有し、
前記出力手段は、
同一の出力情報に対して複数の制御命令が存在する場合、前記規則に従って当該出力情報を制御して出力する
ことを特徴とする端末装置。
【請求項１５】
複数の端末装置を有するコミュニケーションシステムのコミュニケーション方法であって、
各端末装置は、
各端末装置で共通して出力される出力情報を決定するステップと、
決定された出力情報を互いに送受信するステップと、
前記出力情報の制御命令を生成するステップと、
生成した出力情報の制御命令を互いに送受信するステップと、
送受信した制御命令に従って出力情報を制御して出力する出力ステップと
を行うことを特徴とするコミュニケーション方法。
【請求項１６】
第１の端末装置と第２の端末装置とを有するコミュニケーションシステムのコミュニケーション方法であって、
前記第１の端末装置は、
前記第１の端末装置と第２の端末装置で共通して出力される第１のオブジェクトを決定する第１のオブジェクト決定ステップと、
決定された第１のオブジェクトを特定する情報を前記第２の端末装置に送信するステップと、
前記第２の端末装置で決定された第２のオブジェクトを特定する情報を前記第２の端末装置から受信するステップと、
オブジェクトの制御命令を生成する第１の制御命令生成ステップと、
生成した制御命令を前記第２の端末装置に送信するステップと、
前記第２端末装置からオブジェクトの制御命令を受信する第１の制御命令受信ステップと、
前記第１の制御命令生成ステップで生成した制御命令及び前記第１の制御命令受信ステップで受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する第１の出力ステップとを行い、
前記第２の端末装置は、
前記第１の端末装置と第２の端末装置で共通して出力される第２のオブジェクトを決定する第２のオブジェクト決定ステップと、
決定された第２のオブジェクトを特定する情報を前記第１の端末装置に送信するステップと、
前記第１の端末装置で決定された第１のオブジェクトを特定する情報を前記第１の端末装置から受信するステップと、
オブジェクトの制御命令を生成する第２の制御命令生成ステップと、
生成した制御命令を前記第１の端末装置に送信するステップと、
前記第１端末装置からオブジェクトの制御命令を受信する第２の制御命令受信ステップと、
前記第２の制御命令生成ステップで生成した制御命令及び前記第２の制御命令受信ステップで受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する第２の出力ステップと
を行うことを特徴とするコミュニケーション方法。
【請求項１７】
請求項１５に記載のコミュニケーションシステム方法であって、
前記出力ステップは、予め関連付けられた複数の制御命令が連続して実行されるように出力情報を制御する
ことを特徴とするコミュニケーション方法。
【請求項１８】
請求項１５に記載のコミュニケーションシステム方法であって、
前記端末装置は、
同一の出力情報に対して複数の制御命令が存在する場合の出力情報の制御の規則を記憶する記憶手段を有し、
前記出力ステップは、
同一の出力情報に対して複数の制御命令が存在する場合、前記規則に従って当該出力情報を制御して出力する
ことを特徴とするコミュニケーション方法。
【請求項１９】
複数の端末装置を有するコミュニケーションシステムの端末装置としてコンピュータを機能させるプログラムであって、
他の端末装置で決定された各端末装置で共通して出力される出力情報を受信する手段と、
前記出力情報の制御命令を生成する手段と、
生成した制御命令に従って出力情報を制御して出力する出力手段とを有する端末装置としてコンピュータを機能させることを特徴とするプログラム。
【請求項２０】
第１の端末装置と第２の端末装置とを有するコミュニケーションシステムの第１の端末装置としてコンピュータを機能させるプログラムであって、
前記第１の端末装置と第２の端末装置で共通して出力される第１のオブジェクトを決定するオブジェクト決定手段と、
決定された第１のオブジェクトを特定する情報を前記第２の端末装置に送信する手段と、
前記第２の端末装置で決定された第２のオブジェクトを特定する情報を前記第２の端末装置から受信する手段と、
オブジェクトの制御命令を生成する制御命令生成手段と、
生成した制御命令を前記第２の端末装置に送信する手段と、
前記第２の端末装置からオブジェクトの制御命令を受信する制御命令受信手段と、
前記制御命令生成手段で生成した制御命令及び前記制御命令受信手段で受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する出力手段とを有する第１の端末装置として
コンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、コミュニケーションシステムに関し、特に、出力情報を共有するビデオチャットシステムに関する。
【背景技術】
【０００２】
ビデオチャットシステムは、参加する各ユーザの映像を、分割した画面領域にそれぞれ表示し、複数のユーザがあたかも同じ場所にいるかのようなコミュニケーションを可能とする。このビデオチャットシステムは、ユーザの動画像、音声をインターネットなどの通信網を用いて、特定の個人やグループに配信し、出力情報を共有することで達成される。
【０００３】
また、特許文献１には、複数の効果を付加した映像をリアルタイムで複数のユーザに配信する技術が記載されている。
【０００４】
【特許文献１】特開２００３−９２７０６号公報
【発明の開示】
【発明が解決しようとする課題】
【０００５】
従来のビデオチャットシステムに、特許文献１の技術を適用しても、映像や音声に特殊効果や編集を付加できるのは、その映像や音声を入力したユーザの端末に限られている。すなわち、他のユーザが入力した映像や音声に特殊効果や編集を付加することはできず自由度が少ない。
【０００６】
本発明は上記課題を解決すべくなされたものであり、その目的は、映像や音声などの出力情報を他の端末と共有するコミュニケーションシステムにおいて、他のユーザが入力した出力情報ついても、特殊効果や編集を付加することができるようにすることにある。
【課題を解決するための手段】
【０００７】
上述の課題を解決すべく、本発明のコミュニケーションシステムは、各端末装置で共通に出力される情報（オブジェクト）に対して、その情報を出力するように決定したとされるユーザ以外のユーザからの制御命令をも受け付け、その情報を制御して出力するようにする。
【０００８】
例えば、本発明のコミュニケーションシステムは、複数の端末装置を有し、各端末装置は、各端末装置で共通して出力される出力情報を決定する手段と、決定された出力情報を互いに送受信する手段と、前記出力情報の制御命令を生成する手段と、生成した出力情報の制御命令を互いに送受信する手段と、送受信した制御命令に従って出力情報を制御して出力する出力手段とを有する。
【０００９】
また、第１の端末装置と第２の端末装置とを有するコミュニケーションシステムであって、前記第１の端末装置は、前記第１の端末装置と第２の端末装置で共通して出力される第１のオブジェクトを決定する第１のオブジェクト決定手段と、決定された第１のオブジェクトを特定する情報を前記第２の端末装置に送信する手段と、前記第２の端末装置で決定された第２のオブジェクトを特定する情報を前記第２の端末装置から受信する手段と、オブジェクトの制御命令を生成する第１の制御命令生成手段と、生成した制御命令を前記第２の端末装置に送信する手段と、前記第２端末装置からオブジェクトの制御命令を受信する第１の制御命令受信手段と、前記第１の制御命令生成手段で生成した制御命令及び前記第１の制御命令受信手段で受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する第１の出力手段とを有し、
前記第２の端末装置は、前記第１の端末装置と第２の端末装置で共通して出力される第２のオブジェクトを決定する第２のオブジェクト決定手段と、決定された第２のオブジェクトを特定する情報を前記第１の端末装置に送信する手段と、前記第１の端末装置で決定された第１のオブジェクトを特定する情報を前記第１の端末装置から受信する手段と、オブジェクトの制御命令を生成する第２の制御命令生成手段と、生成した制御命令を前記第１の端末装置に送信する手段と、前記第１端末装置からオブジェクトの制御命令を受信する第２の制御命令受信手段と、前記第２の制御命令生成手段で生成した制御命令及び前記第２の制御命令受信手段で受信した制御命令に従って前記第１のオブジェクト及び第２のオブジェクトを制御して出力する第２の出力手段とを有するようにしてもよい。
【発明を実施するための最良の形態】
【００１０】
つぎに、本発明の一実施形態が適用されたコミュニケーションシステムについて説明する。
【００１１】
＜第１実施形態＞
図１は第１実施形態にかかるコミュニケーションシステムの構成図の一例である。本実施形態に係るコミュニケーションシステムは、少なくとも２つの端末装置１０１と端末装置１０２を有する。それぞれの端末装置１０１，１０２は、ネットワーク１０３により接続されている。端末装置１０１のユーザ１０４と端末装置１０２のユーザ１０５は、ネットワーク１０３を介して互いに通信可能となる。
【００１２】
ネットワーク１０３は、インターネット等に代表されるＩＰネットワークや電話回線網、ＩＳＤＮ、ＰＨＳネットワーク、携帯電話ネットワーク、あるいは無線ＬＡＮ等を使用したネットワークによって構成される。
【００１３】
端末装置１０１及び端末装置１０２は、ネットワーク１０３を介して音声データ、映像等を送受信可能な端末装置であり、例えば携帯電話やＰＤＡ等の小型携帯端末装置、ネットワークインターフェイスを兼ね備えたセットトップボックスとテレビの組み合わせ、あるいはパーソナルコンピュータシステム等とすることができる。
【００１４】
次に、端末装置１０１，１０２の構成について図２を用いて説明する。図２は端末装置１０１，１０２のハードウェア構成例を示すブロック図である。図２に示すように端末装置は、ＣＰＵ（Ｃｅｎｔｒａｌ Ｐｒｏｃｅｓｓｉｎｇ Ｕｎｉｔ）２０１と、記憶装置２０２及び二次記憶装置２０３と、データ送受信装置２０４と、入力装置２０５と、映像コーデック２０６と、音声コーデック２０７と、映像入力装置２０８と、音声入力装置２０９と、表示装置２１０と、音声出力装置２１１とから構成される。これらは、バス２１２を介して相互にデータのやり取りが可能なように構成されている。
【００１５】
ＣＰＵ２０１は、例えば汎用のプロセッサとすることができる。ＣＰＵ２０１は、端末装置１０１，１０２の動作を規定するプログラムに基づき、本端末装置１０１、１０２の動作を制御する。
【００１６】
記憶装置２０２は、ＲＡＭやＲＯＭ、あるいはフラッシュメモリやハードディスク等によって構成される。記憶装置２０２は、ＣＰＵ２０１で実行されるプログラム、映像入力装置２０８によって入力された映像データ、音声入力装置２０９によって入力された音声データ、データ送受信装置２０４によって送受信されるデータ、表示装置２１０で表示される映像データ、音声出力装置２１１で出力される音声データ等、ＣＰＵ２０１で処理されるデータなどを格納する。
【００１７】
二次記憶装置２０３は、ＲＡＭやＲＯＭ、あるいはフラッシュメモリやハードディスク等によって構成される。二次記憶装置２０３は、例えばコミュニケーション相手の端末装置の電話番号やＩＰアドレスといった宛先データ及び画像データ等を格納する。
【００１８】
データ送受信装置２０４は、例えば無線ＬＡＮにおける無線ＬＡＮカードやネットワークカード、あるいはＰＨＳや携帯電話のネットワークに接続するためのモジュール等によって構成される。データ送受信装置２０４は、他の端末装置とのセッションの開始及び終了を行い、端末装置とのデータの送受信を仲介する。
【００１９】
入力装置２０５は、例えばキーボードあるいはマウスあるいはリモコンあるいはペン入力装置等のポインティングデバイスあるいは液晶タッチパネル等によって構成され、ユーザによって入力された画面や音声の編集制御信号を取得する。
【００２０】
映像コーデック２０６は、ＭＰＥＧ４等の符号化を行うものであり、例えば専用のハードウェアあるいはＤＳＰ等によって実現され、映像入力装置２０８によって入力された映像データの符号化もしくはデータ送受信装置２０４によって受信した映像符号化データの復号化を行う。なお、映像コーデック２０６は、省略されてもよく、ＣＰＵ２０１がその役割を担うことも可能である。
【００２１】
音声コーデック２０７は、ＭＰ３等の符号化を行うものであり、例えば専用のハードウェアあるいはＤＳＰ等によって実現され、音声入力装置２０９によって入力された音声データの符号化もしくはデータ送受信装置２０４によって受信した音声符号化データの復号化を行う。なお、音声コーデック２０７は省略されてもよく、ＣＰＵ２０１がその役割を担うことも可能である。またＰＣＭ符号化を用いる場合は音声コーデックが担う圧縮符号化の処理自体が不要となる。
【００２２】
映像入力装置２０８は、例えばビデオカメラ等によって構成され、外部映像を端末装置内にディジタル化して入力する。
【００２３】
音声入力装置２０９は、例えばマイク等によって構成され、外部音声を端末装置内にディジタル化して入力する。
【００２４】
表示装置２１０は、例えばテレビやパソコンのディスプレイあるいは液晶パネル等によって構成され、映像入力装置２０８で取得した映像、及びデータ送受信装置２０４を介してコミュニケーション相手の端末装置との間で送受信した映像を、同様に送受信した制御信号を元に合成しつつ映像を表示する。また、ユーザが入力装置２０５で情報を入力するためのメニューやガイダンス、及びユーザから入力された情報を表示する。
【００２５】
音声出力装置２１１は、例えばスピーカー等によって構成され、音声入力装置２０９で取得した音声、及びデータ送受信装置２０４を介してコミュニケーション相手の端末装置との間で送受信した音声を、同様に送受信した制御信号を元に合成しつつ音声を出力する。
【００２６】
次に、端末装置１０１，１０２の有する機能部について説明する。なお、各機能部は、ＣＰＵ２０１がメモリにロードされたプログラムを実行することより達成される。
【００２７】
図３は、端末装置１０１，１０２の各機能部の構成を示す図である。端末装置１０１，１０２は、機能部として、主制御部３０１と、映像入力部３０２と、音声入力部３０３と、映像出力部３０４と、音声出力部３０５と、信号合成部３０６と、信号分離部３０７と、送受信制御部３０８と、映像合成部３０９と、音声合成部３１０と、制御命令合成部３１１とを有する。
【００２８】
主制御部３０１は、入力装置２０５を介してユーザから入力された情報に対応し、他の各機能部を起動及び終了させる。また、他の各機能部同士あるいは他端末装置との通信のセッション制御を行う。その他、入力装置２０５を介してユーザから入力された情報に対応して、制御信号を生成して、信号合成部３０６へと入力する。
【００２９】
映像入力部３０２は、映像入力装置２０８を介して入力された映像データを、符号化する。あるいは、符号化を行うために映像コーデック２０６へと入力し、符号化された映像符号化系列を受け取り、信号合成部３０６へと入力する。
【００３０】
音声入力部３０３は、音声入力装置２０９を介して入力された音声データを符号化する。あるいは、符号化を行うために音声コーデック２０７へと入力し、符号化された音声符号化系列を受け取り、信号合成部３０６へと入力する。
【００３１】
信号合成部３０６は、映像入力部３０２より出力された前述の映像符号化系列と、音声入力部３０３より出力された前述の音声符号化系列と、主制御部３０１により生成された制御信号とを合成し、パケット化する。
【００３２】
送受信制御部３０８は、信号合成部３０６により生成されたデータパケットをデータ送受信装置２０４を介してコミュニケーション相手の端末装置へ送信する際のセッション制御を行う。またコミュニケーション相手の端末装置からデータ送受信装置２０４を介して受信するデータパケットのセッション制御を行う。
【００３３】
信号分離部３０７は、データ送受信装置２０４を介して受信されたコミュニケーション相手の端末装置からのデータパケットを、映像符号化系列と音声符号化系列と制御信号とに分離する。そして、それぞれ、映像出力部３０４と音声出力部３０５と制御命令合成部３１１とへ入力する。
【００３４】
映像出力部３０４は、信号分離部３０７により分離された映像符号化系列を復号化したのち、あるいは復号化を行うために映像コーデック２０６へと入力し復号化されたのち、映像データを映像合成部３０９へと入力する。
【００３５】
音声出力部３０５は、信号分離部３０７により分離された音声符号化系列を復号化したのち、あるいは復号化を行うために音声コーデック２０７へと入力し復号化されたのち、音声データを音声合成部３１０へと入力する。
【００３６】
制御命令合成部３１１は、信号分離部３０７により分離された複数のユーザからの制御信号と、入力装置２０５を介して入力された制御信号とを、特定のルールに従って合成する。そして、最終的な合成制御信号を、映像合成部３０９及び音声合成部３１０へと入力する。
【００３７】
映像合成部３０９は、映像出力部３０４により復号化されたコミュニケーション相手の映像データと、映像入力装置２０８を介して入力された映像データに対して、前記合成制御信号の解析結果により、複数のユーザの前記映像データや背景や模様の合成や加工を行い、表示装置２１０を介して映像を出力する。
【００３８】
音声合成部３１０は、音声出力部３０５により復号化されたコミュニケーション相手の音声データと、音声入力装置２０９を介して入力した音声データに対して、前記合成制御信号の解析結果により、複数のユーザの前記音声データ背景音楽や効果音との合成や加工を行い、音声出力装置２１１を介して音声を出力する。
【００３９】
以上、端末装置１０１，１０２の構成について説明した。本実施形態では、複数の端末装置１０１，１０２において、同一内容の映像（共有映像）が表示され、同一内容の音声（共有音声）が出力される。これらの共有映像及び共有音声は、いずれかの端末装置により入力されたものであるが、いずれの端末装置からでも共有映像または共有音声の加工、追加、削除などの編集が可能である。
【００４０】
ここで、編集の対象となる画像要素、音声要素を、オブジェクトという。オブジェクトは、いずれかの端末装置により生成された制御命令により制御される。すなわち、各端末装置１０１，１０２は、オブジェクトに関する制御命令を共有することにより、映像、音声を共有する。
【００４１】
次に、オブジェクトに対する制御命令について説明する。図４は、制御命令の基本となる基本制御命令の構成を示したものである。
【００４２】
基本制御命令は、後述するように、各端末装置１０１，１０２により生成される。基本制御命令は、分割することできない最小単位命令であり、映像の拡大や縮小あるいは位置変更等の映像情報や音声情報の基本的な加工を指示する命令である。映像を拡大した後、元に戻したり、映像のフェードアウト等の特殊効果は、基本制御命令の組み合わせによって達成される。
【００４３】
基本制御命令は、発信者ＩＤ４０１と、オブジェクトＩＤ４０２と、制御グループＩＤ４０３と、基本制御命令ＩＤ４０４と、制御命令セットＩＤ４０５と、制御発信時間４０６と、開始時刻４０７と、持続時間４０８と、付随情報４０９を保持している。
【００４４】
発信者ＩＤ４０１はチャットに参加するユーザを識別するためのコードで、どのユーザの端末装置がその基本制御命令を生成したかを示す。
【００４５】
オブジェクトＩＤ４０２は操作（制御）する対象となるオブジェクトを識別するためのコードで、どのオブジェクトに対する基本制御命令であるかを示す。
【００４６】
制御グループＩＤ４０３は、基本制御命令の所属する制御グループを識別するためのコードである。各基本制御命令は、その性質により、いずれかの制御グループに属し、同一の制御グループに属す基本制御命令は、両立不可能である。言い換えれば、同一オブジェクトに対して同時刻に実行できない基本制御命令について、同一の制御グループＩＤが付与されている。例えば、同一のオブジェクトを、一定方向へ移動させる基本制御命令と、指定された座標にオブジェクトを表示させるための基本制御命令とは、同時に実行できないので、これらの基本制御命令は、同一制御グループに属する。一方、同一のオブジェクトを一定方向へ移動させる基本制御命令と、拡大させる基本制御命令とは、同時に実行できるので、これらの基本制御命令は、異なる制御グループに属する。
【００４７】
基本制御命令ＩＤ４０４は、基本制御命令を識別するためのコードである。
【００４８】
制御命令セットＩＤ４０５は、基本制御命令が属する制御命令セットを識別するためのコードである。オブジェクトの制御は、複数の基本制御命令により実行される。例えば、あるユーザの「怒り」を表現する際、オブジェクトになされる制御は、そのユーザの画像の拡大命令と、他のユーザの画像の縮小命令と、「怒り」マークの表示命令との３つの基本制御命令により実行される。かかる場合、これらの複数の基本制御命令は、一つの制御命令セットに属する。すなわち、これらの複数の基本制御命令は、同一の制御命令セットＩＤ４０５が付与されている。
【００４９】
制御発信時間４０６は、ユーザから入力装置２０５を介して基本制御命令を受け付けた時間（時刻）である。
【００５０】
開始時刻４０７は、基本制御命令によるオブジェクトの制御が実行される時刻である。なお開始時刻４０７はデータの送信遅延と復号化による遅延を考慮して、送信時の基準時刻と映像データ及び音声データの前データからの差分時間と遅延時間を加えた値が設定される。ただし、再生時に、実際の遅延時間等を考慮して、送信時の基準時刻を独自に設定して、開始時刻が再設定されるようにしてもよい。
【００５１】
持続時間４０８は、基本制御命令によるオブジェクトの制御が開始時刻４０７により開始された後、持続される時間である。なお、持続時間４０８が指定されていない場合、他の制御命令により制御されるまで、その基本制御命令により制御されたオブジェクトの出力が維持される。
【００５２】
付随情報４０９は、基本制御命令に関する上記４０１〜４０８以外の情報である。付随情報４０９は、基本制御命令の種類によって異なり、例えば、オブジェクトの移動量などのパラメータを含む。
【００５３】
図５は、基本制御命令の種類の一例を示したものである。
【００５４】
オブジェクト移動命令５０１は、オブジェクトの表示位置を一定方向へ移動させる命令である。なお、移動速度は、主制御部３０１により、付随情報４０９に含まれる移動量と、持続時間４０８から求められる。
【００５５】
オブジェクト指定位置表示命令５０２は、指定された座標にオブジェクトを表示させるための命令である。かかる命令の場合、付随情報４０９には、表示させたい座標が含まれることになる。
【００５６】
オブジェクト消去命令５０３は、表示されていたオブジェクトを消去するための命令である。かかる命令により、オブジェクトが映像の場合は消去され、オブジェクトが音声の場合はミュート状態となる。
【００５７】
オブジェクトサイズ変更命令５０４は、表示されているオブジェクトの大きさを変更するための命令である。かかる命令の場合、付随情報４０９には、変更倍率が含まれることとなる。なお、オブジェクトが音声の場合は、かかる命令により音量が変更される。
【００５８】
オブジェクト色数変更命令５０５は、表示されているオブジェクトの色数を変更するための命令である。かかる命令の場合、付随情報４０９には、表示する色成分が含まれることとなる。
【００５９】
オブジェクト透明度変更命令５０６は、表示されているオブジェクトの透明度を変更するための命令である。かかる命令の場合、付随情報４０９には、表示する映像の透明度が含まれることとなる。
【００６０】
オブジェクト表示順序変更命令５０７は、表示されているオブジェクトが重なった場合の表示順序を変更するための命令である。かかる命令の場合、付随情報４０９には、表示する映像の表示順序の増減値が含まれることとなる。
【００６１】
オブジェクト音声変調命令５０８は、再生されている音声オブジェクトを高音あるいは低音に変更するための命令である。かかる命令の場合、付随情報４０９には、再生音声の音域の増減値が含まれることとなる。
【００６２】
オブジェクトロック指定命令５０９は、オブジェクトをロック状態にセットもしくは解除するための命令である。なお、ロック状態とは、オブジェクトのロック指定命令を指定したユーザ以外の命令を受け付けない状態のことを指す。
【００６３】
図５において、点線の囲みは、同一の制御グループであることを示す。基本制御命令５０１と５０２は、同一の制御グループ５１０に属している。すなわち、基本制御命令５０１と５０２は、同一オブジェクトに対して同時刻に実行できない。一方、その他の基本制御命令５０３〜５０９は、互いに異なる制御グループ５１１〜５１７に属し、同一オブジェクトに対し同一時刻に実行できる。
【００６４】
次に、オブジェクトについて、より具体的に説明する。上述したように、オブジェクトとは、チャットに参加するユーザが制御することができる共有映像や共有音声の各要素のことであり、以下に示す種類が存在する。
（１０Ａ）チャットに参加するユーザの映像
（１０Ｂ）背景映像
（１０Ｃ）共有画面に用いる模様
（１０Ｄ）チャットに参加するユーザの音声
（１０Ｅ）背景音声
なお、背景映像１０Ｂと、共有画面に用いる模様１０Ｃと、背景音声１０Ｅに属するオブジェクトは、各端末装置１０１，１０２の記憶装置２０２あるいは二次記憶装置２０３に予め格納されている。
【００６５】
各オブジェクトの現在の状態の情報は、オブジェクトプロパティに格納されている。オブジェクトプロパティは、それぞれの端末１０１，１０２の記憶装置２０２あるいは二次記憶装置２０３に格納される。
【００６６】
新規にオブジェクトが生成されたときは、主制御部３０１により、予め定められた初期オブジェクトプロパティが設定され、記憶装置２０２あるいは二次記憶装置２０３内に格納される。オブジェクトプロパティは、オブジェクトに対する制御命令によって主制御部３０１により更新される。オブジェクトプロパティは、オブジェクトが消滅されると記憶装置２０２あるいは二次記憶装置２０３から消去される。
【００６７】
オブジェクトプロパティは、全種類のオブジェクトに共通して、以下の要素を持つ。
（２０Ａ）オブジェクトＩＤ
オブジェクトＩＤ２０Ａは、上述したように、オブジェクトを識別するコードである。オブジェクトＩＤは、オブジェクトの生成時に、主制御部３０１により、自動的に設定される。
（２０Ｂ）オブジェクトタイプＩＤ
オブジェクトタイプＩＤ２０Ｂは、オブジェクトの種類（１０Ａ〜１０Ｅ）毎に設定される識別コードである。オブジェクトの種類を識別するのに使用される。
（２０Ｃ）制御者ＩＤ
制御者ＩＤ２０Ｃは、そのオブジェクトを現在制御している、または最後に制御したユーザを識別するためのコードことである。制御者ＩＤは、主制御部３０１により、オブジェクトを制御した基本制御命令の発信者ＩＤ４０１が割り当てられる。
（２０Ｄ）ロックフラグ
ロックフラグ２０Ｄは、そのオブジェクトの制御を、制御者ＩＤ６０８に示されているユーザ以外のユーザに許可するか否かを示す。このフラグがある場合、主制御部３０１は、そのオブジェクトに対して、制御者ＩＤ６０８に示されているユーザ以外のユーザからの制御命令を受け付けない。このフラグは、オブジェクトロック指定命令５０９により変更される。
【００６８】
また、オブジェクトプロパティは、映像オブジェクト（１０Ａ、１０Ｂ、１０Ｃ）について以下の要素を持つ。
（２０Ｅ）表示位置
表示位置２０Ｅは、映像オブジェクトの表示位置を示す座標で、オブジェクト移動命令５０１やオブジェクト表示命令５０２により変更される。
（２０Ｆ）表示倍率
表示倍率２０Ｆは、映像オブジェクトの拡大率を示す値で、オブジェクトサイズ変更命令５０４により変更される。
（２０Ｇ）表示色数
表示色数２０Ｇは、映像オブジェクトの表示する色数を示す値で、オブジェクト色数変更命令５０５により変更される。
（２０Ｈ）表示透明度
表示透明度２０Ｈは、映像オブジェクトの透明度を表示する値で、オブジェクト透明度変更命令５０６により変更される。
（２０Ｉ）表示順序
表示順序２０Ｉは、映像オブジェクトの表示順序を示し、オブジェクトの表示領域が重なった場合の表示優先度を示す。共有映像を映像プレーンの重ね合わせで表現する場合はどのプレーンを使用するかを示す。
【００６９】
また、オブジェクトプロパティは、音声オブジェクト（１０Ｄ、１０Ｅ）について以下の要素を持つ。
（２０Ｊ）音量拡大率
音量拡大率２０Ｊは、音声オブジェクトの音量の増大率を示す値で、オブジェクトサイズ変更命令５０４によって指定される。
（２０Ｋ）音声変調度
音声変調度２０Ｋは、音声オブジェクトの音程の変度を示す値で、オブジェクト音声変調命令５０８によって指定される。
【００７０】
また、背景映像１０Ｂと、共有画面の模様１０Ｃと、背景音声１０Ｅに属するオブジェクトは、他にも以下の要素を持つ。
（２０Ｌ）オブジェクト指定ＩＤ
オブジェクト指定ＩＤ２０Ｌは、予め記憶装置２０２あるいは二次記憶装置２０３に保存されている背景映像１０Ｂと共有画面の模様１０Ｃ及び背景音声１０Ｅの各種データについて、現在、どのデータを用いているかを識別するＩＤである。
【００７１】
（動作の説明）次に、本コミュニケーションシステムの動作について説明する。図６は主制御部３０１の処理内容を示すフローチャートの一例である。
【００７２】
主制御部３０１は、まず、ユーザから入力装置２０５を介し、他ユーザとの通信を開始する指示があるかどうかを判断する（ステップ６０１）。他ユーザとの通信を開始する指示があると判断した場合（ステップ６０１でＹｅｓ）、データ送受信装置２０４を介し、指定された他ユーザとの通信を行うための通信セッション（ステップ６０２）を行う。一方、他ユーザとの通信を開始する指示がないと判断した場合（ステップ６０１でＮｏ）、ステップ６０２をスキップする。コミュニケーション相手の端末との通信開始のための通信セッションは、例えばＲＦＣ２５４３に示されているような公知の手法を用いる。
【００７３】
つぎに、主制御部３０１は、データ送受信装置２０４を介し、他のコミュニケーション端末から新規に通信を行うための通信リクエストを受信したか否かを判断する（ステップ６０３）。通信リクエストを受信した場合（ステップ６０３でＹｅｓ）、ユーザから相手ユーザとの通信を行うか否かの指示があったか否かを判断する（ステップ６０４）。指示があると判断した場合（ステップ６０４でＹｅｓ）、コミュニケーション相手の端末と通信を行うために、ステップ６０２と同様の通信セッション（ステップ６０５）を行う。一方、通信リクエストを受信していない場合（ステップ６０３でＮｏ）や、通信リクエストを受信した場合でも相手ユーザとの通信を開始する指示がない場合（ステップ６０４でＮｏ）、ステップ６０５をスキップする。
【００７４】
続いて、主制御部３０１は、ユーザから入力装置２０５を介し、他ユーザとの通信を終了するように指示されたか否かを判断する（ステップ６０６）。他ユーザとの通信終了の指示があると場合（ステップ６０６でＹｅｓ）、データ送受信装置２０４を介し、コミュニケーション相手の端末と通信を終了するための通信セッションを行う（ステップ６０７）。一方、他ユーザとの通信終了の指示がないと判断した場合（ステップ６０６でＮｏ）、ステップ６０７をスキップする。
【００７５】
続いて、主制御部３０１は、データ送受信装置２０４を介し、他ユーザから通信を終了する指示をされたか否かを判断する（ステップ６０８）。他ユーザからの通信終了の指示があると判断した場合（ステップ６０８でＹｅｓ）、データ送受信装置２０４を介し、コミュニケーション相手の端末と通信を終了するためのステップ６０７と同様の通信セッションを行う（ステップ６０９）。一方、他ユーザからの通信終了の指示がないと判断した場合（ステップ６０８でＮｏ）、ステップ６０９をスキップする。
【００７６】
続いて、主制御部３０１は、コミュニケーション相手の端末装置との間でデータ通信セッションが開始されたかどうかを判断する（ステップ６１０）。データ通信セッションが開始されたと判断された場合（ステップ６１０でＹｅｓ）、まず入力装置２０５を介して、ユーザから制御信号が入力されたか否かを判断する（ステップ６１１）。
【００７７】
制御信号が入力されたと判断した場合（ステップ６１１でＹｅｓ）、主制御部３０１は、入力された制御信号から、対応する１個以上の基本制御命令を生成する（ステップ６１２）。以下に具体的に説明する。
【００７８】
記憶装置２０２あるいは二次記憶装置２０３には、制御信号テーブルが記憶されている。制御信号テーブルには、１レコードごとに、ユーザから受け付ける制御信号と、それに対応する基本制御命令の種類とが対応つけて登録されている。主制御部３０１は、制御信号テーブルの中から、入力された制御信号を含むレコードを検索し、検索したレコードに含まれる基本制御命令の種類を特定する。
【００７９】
そして、特定した基本制御命令の種類ごとに、図４に示すように、基本制御命令を生成する。例えば、入力装置２０５に「怒る」のアクションを受け付けるボタンがあり、そのボタンが押されたことにより、ユーザから受け付けた制御信号が「怒る」であった場合、主制御部３０１は、制御信号テーブルの中から、「怒る」に対応する基本制御命令の種類を検索する。「怒る」に対応する基本制御命令が、発信者のオブジェクトの拡大、相手のオブジェクトの縮小、「怒り」マークの表示であった場合、それぞれについて基本制御命令を生成する。
【００８０】
一方、ステップ６１１において制御信号が入力されていないと判断した場合、主制御部３０１は、ステップ６１２をスキップする。
【００８１】
続いて、主制御部３０１は、映像入力部３０２、音声入力部３０３、映像出力部３０４、音声出力部３０５、信号合成部３０６、信号分離部３０７、送受信制御部３０８及び制御命令合成部３１１にそれぞれの処理を行うように指示する（ステップ６１３）。そして、コミュニケーション相手の端末装置との間でデータ通信セッションを開始させる。なお、映像入力部３０２、音声入力部３０３、映像出力部３０４、音声出力部３０５、信号合成部３０６、信号分離部３０７、送受信制御部３０８及び制御命令合成部３１１の処理内容については後述する。
【００８２】
一方、ステップ６１０においてデータ通信セッションが開始されていないと判断した場合、主制御部３０１は、ステップ６１４に処理を移行する。
【００８３】
続いて、主制御部３０１は、コミュニケーション相手全ての端末装置との間でデータ通信セッションが終了したか否かを判断する（ステップ６１４）。コミュニケーション相手全ての端末装置との間でデータ通信セッションが終了したと判断した場合（ステップ６１４でＹｅｓ）、主制御部３０１は、映像入力部３０２、音声入力部３０３、映像出力部３０４、音声出力部３０５、信号合成部３０６、信号分離部３０７、送受信制御部３０８及び制御命令合成部３１１にそれぞれの処理を終了するように指示する（ステップ６１５）。
【００８４】
一方、ステップ６１４においてコミュニケーション相手全ての端末装置との間でデータ通信セッションが終了していないと判断した場合、主制御部３０１は、ステップ６１５をスキップする。
【００８５】
続いて、主制御部３０１は、ユーザによってコミュニケーションの終了が指示されたか否かを判断する（ステップ６１６）。ユーザから終了を指示されたと判断した場合（ステップ６１６でＹｅｓ）、コミュニケーション処理を終了する。一方、終了を指示されてないと判断した場合、主制御部３０１は、ステップ６０１へと戻って処理を続ける。
【００８６】
次に、映像入力部３０１の処理内容について説明する。図７は、映像入力部３０１の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【００８７】
図７に示すとおり、映像入力部３０２は、まず、映像入力装置２０８から映像データを取得する（ステップ７０１）。
【００８８】
続いて、映像入力部３０２は、特殊切り出し操作を行うように設定されているか否かを判断する（ステップ７０２）。なお、本実施形態においては、映像入力部３０２には、予め、特殊切り出し操作を行うように設定されているが、ユーザからの要求に応じて、特殊切り出し操作を行わないように設定することもできる。
【００８９】
特殊切り出し操作を行うように設定されていると判断した場合（ステップ７０２でＹｅｓ）、映像入力部３０２は、ステップ７０１において入力された映像の特定領域を切り出し（ステップ７０３）、符号化を行う（ステップ７０４）。
【００９０】
一方、特殊切り出し操作を行うように設定されていないと判断した場合（ステップ７０２でＮｏ）、映像入力部３０２は、ステップ７０３をスキップし、ステップ７０２によって入力された映像を映像符号化を行う（ステップ７０４）。なお、映像の特定領域の切り出し方法としては、あらかじめ特定映像領域を指定し、映像入力装置２０８にから入力される映像データから前記特定映像領域を切り出す方法、あるいは例えば特開平９−１３８４７１号「特定形状領域の抽出方法、特定領域の抽出方法及び複写条件決定方法」の方法を用いて、入力映像の中で背景映像を取り除き人物を切り取る方法を用いることができる。また、映像符号化の方法としては、例えばＩＳＯ／ＩＥＣにより勧告されているＭＰＥＧ４等の方式を利用することができる。また、映像符号化手段の方法は、ＣＰＵ２０１により映像符号化処理する手段と映像コーデック２０６により映像符号化処理する手段のどちらを用いてもよい。
【００９１】
続いて、映像入力部３０２は、主制御部３０１によって映像入力部３０２の終了が指示されたか否かを判断する（ステップ７０５）。主制御部３０１によって本映像入力部３０２の終了が指示されていないと判断した場合、ステップ７０１に戻り、主制御部３０１によって映像入力部３０２の終了が指示されるまでステップ７０１乃至ステップ７０４を繰り返す。
【００９２】
一方、上記ステップ７０５において、映像入力部３０２の終了が指示されたと判断した場合(ステップ７０５でＮｏ)、映像入力部３０２における処理を終了する。
【００９３】
次に、音声入力部３０３の処理内容について説明する。図８は、音声入力部３０３の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【００９４】
図８に示すとおり、音声入力部３０３は、まず、音声入力装置２０９から音声データを取得し（ステップ８０１）、音声符号化を行う（ステップ８０２）。なお、音声符号化の方法は、例えばＩＳＯ／ＩＥＣで勧告されているＭＰＥＧ−１オーディオ等の方式を利用することができる。また、音声符号化手段としては、ＣＰＵ２０１により音声符号化処理する手段や、音声コーデック２０７により音声符号化処理する手段を用いることができる。
【００９５】
続いて、音声入力部３０３は、主制御部３０１によって音声入力部３０３の終了が指示されたか否かを判断する（ステップ８０３）。主制御部３０１によって音声入力部３０３の終了が指示されていないと判断した場合、ステップ８０１に戻り、主制御部３０１によって本音声入力部３０３の終了が指示されるまでステップ８０１乃至ステップ８０２を繰り返す。
【００９６】
一方、上記ステップ８０３において、音声入力部３０３の終了が指示されたと判断した場合、音声入力部３０３は処理を終了する。
【００９７】
次に、信号合成部３０６の処理内容について説明する。図９は、信号合成部３０６の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【００９８】
図９に示すとおり、信号合成部３０６は、まず、映像入力部３０２により生成された映像符号化データと、音声入力部３０３により生成された音声符号化データとの、再生時刻を設定する（ステップ９０１）。この再生時刻は、コミュニケーション相手の端末装置が、受信した映像符号化データと音声符号化データとを再生する際の再生時刻である。信号合成部３０６は、データの送信遅延と復号化による遅延を考慮して、送信時の基準時刻と映像データ及び音声データの前データからの差分時間と遅延時間を加えた値を、再生時刻として設定する。
【００９９】
続いて、信号合成部３０６は、映像符号化データと、音声符号化データと、制御信号とを用いて、再生時刻の情報を含む合成符号化データを生成する(ステップ９０２）。なお、映像符号化データと音声合成符号化データと制御信号との合成方法は、例えばＩＳＯ／ＩＥＣ １４４９６−１で勧告されているＭＰＥＧ−４システムを利用することができる。
【０１００】
続いて、信号合成部３０６は、主制御部３０１によって信号合成部３０６の終了が指示されたか否かを判断する（ステップ９０３）。主制御部３０１によって信号合成部３０６の終了が指示されていないと判断した場合、ステップ９０１に戻り、主制御部３０１によって信号合成部３０６の終了が指示されるまでステップ９０１乃至ステップ９０３を繰り返す。
【０１０１】
一方、ステップ９０３において、信号合成部３０６の終了が指示されたと判断した場合、信号合成部３０６は処理を終了する。
【０１０２】
次に、送受信制御部３０８の処理内容について説明する。図１０は、送受信制御部３０８の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【０１０３】
図１０に示すように、送受信制御部３０８は、まず、信号合成部３０６により生成された合成符号化データをパケット化し（ステップ１００１）、パケット化された前記合成符号化データを、既に通信セッションが開始されているコミュニケーション相手の端末装置にデータ送受信装置２０４を介して送信する（ステップ１００２）。なお、パケット化の方法については、例えばＲＦＣ２５４３で規定されている方法を用いればよい。
【０１０４】
続いて、送受信制御部３０８は、データ送受信装置２０４を介し、既に通信セッションが開始されているコミュニケーション相手の端末装置からパケット化された合成符号化データを受信し（ステップ１００３）、受信したパケットから合成符号化データを取得する（ステップ１００４）。
【０１０５】
続いて、送受信制御部３０８は、主制御部３０１によって送受信制御部３０８の終了が指示されたか否かを判断する（ステップ１００５）。主制御部３０１によって送受信制御部３０８の終了が指示されていないと判断した場合、ステップ１００１に戻り、主制御部３０１によって送受信制御部３０８の終了が指示されるまでステップ１００１乃至ステップ１００４を繰り返す。
【０１０６】
一方、上記ステップ１００５において、送受信制御部３０８の終了が指示されたと判断した場合、送受信制御部３０８は処理を終了する。
【０１０７】
次に、信号分離部３０７の処理内容について説明する。図１１は、信号分離部３０７の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【０１０８】
図１１に示すように信号分離部は、まず、送受信制御部３０８により受信した合成符号化データを、映像符号化データと音声符号化データと制御信号とに分離し、同時に設定されている再生時刻を取り出し、記憶装置２０２に格納する（ステップ１１０１）。
【０１０９】
続いて、信号分離部３０７は、主制御部３０１によって信号分離部３０７の終了が指示されたか否かを判断する（ステップ１１０２）。主制御部３０１によって信号分離部３０７の終了が指示されていないと判断した場合、ステップ１１０１に戻り、主制御部３０１によって信号分離部３０７の終了が指示されるまでステップ１１０１を繰り返す。
【０１１０】
一方、上記ステップ１１０２において、信号分離部３０７の終了が指示されたと判断した場合、信号分離部３０７は、処理を終了する。
【０１１１】
次に、映像出力部３０４の処理内容について説明する。図１２は、映像出力部３０４の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【０１１２】
図１２に示すように、映像出力部３０４は、まず、信号分離部３０７により生成された映像符号化データを復号化する（ステップ１２０１）。なお、復号化には映像コーデック２０６を介す手段とＣＰＵ２０１により処理する手段のどちらを用いてもよい。
【０１１３】
続いて、映像出力部３０４は、主制御部３０１によって本映像出力部３０４の終了が指示されたか否かを判断する（ステップ１２０２）。主制御部３０１によって映像出力部３０４の終了が指示されていないと判断した場合、ステップ１２０１に戻り、主制御部３０１によって本映像出力部３０４の終了が指示されるまでステップ１２０１を繰り返す。
【０１１４】
一方、上記ステップ１２０２において、映像出力部３０４の終了が指示されたと判断した場合、映像出力部３０４は処理を終了する。
【０１１５】
次に、音声出力部３０５の処理内容について説明する。図１３は、音声出力部３０５の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【０１１６】
図１３に示すように、音声出力部３０５は、まず、信号分離部３０７により生成された音声符号化データを復号化する（ステップ１３０１）。なお、復号化には音声コーデック２０６を介す手段とＣＰＵ２０１により処理する手段のどちらを用いてもよい。
【０１１７】
続いて、音声出力部３０５は、主制御部３０１によって音声出力部３０５の終了が指示されたか否かを判断する（ステップ１３０２）。主制御部３０１によって音声出力部３０５の終了が指示されていないと判断した場合はステップ１３０１に戻り、主制御部３０１によって音声出力部３０５の終了が指示されるまでステップ１３０１を繰り返す。
【０１１８】
一方、上記ステップ１３０２において、音声出力部３０５の終了が指示されたと判断した場合、音声出力部３０５は、処理を終了する。
【０１１９】
次に、制御命令合成部３１１の処理内容について説明する。図１５は、制御命令合成部３１１の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【０１２０】
制御命令合成部３１１は、まず、信号分離部３０７により生成された基本制御命令を、適応されるオブジェクト毎に分類する（ステップ１５０１）。
【０１２１】
続いて、制御命令合成部３１１は、適応するオブジェクト毎に分類された個々の基本制御命令に対して、合成や排他処理を行った後、制御命令出力キューへ出力する（ステップ１４０２）。
【０１２２】
具体的には、図１４に示すように、制御命令合成部３１１は、複数の基本制御命令の集まりである、基本制御命令群１４０１を入力し、命令合成／排他処理部１４０２において、同一時刻の同一オブジェクトに対する同一基本制御命令に対して合成処理あるいは排他処理を行う。
【０１２３】
続いて、制御命令合成部３１１は、合成した制御命令を、映像合成部３０９あるいは音声合成部３１０で用いるために、制御命令出力キュー１４０３へと出力する。ここで、制御命令出力キュー１４０３は、合成された制御命令を貯めておく役目を果たす。出力制御命令出力キュー１４０３は、記憶装置２０２あるいは二次記憶装置２０３に確保された合成された制御命令の保存領域のことで、時系列に階層構造となっている。映像合成部３０９や音声合成部３１０は、オブジェクト毎に古い時間の合成制御命令から順に取り出すことが可能である。なお、基本制御命令の合成や排他処理の詳細については後述する。
【０１２４】
続いて制御命令合成部３１１は、主制御部３０１によって制御命令合成部３１１の終了が指示されたか否かを判断する（ステップ１４０３）。主制御部３０１によって制御命令合成部３１１の終了が指示されていないと判断した場合、ステップ１５０１に戻り処理を続ける。一方、主制御部３０１によって、処理の終了が指示された場合、制御命令合成部３１１は、処理を終了する。
【０１２５】
次に、制御命令合成部３１１の中の処理の一つである基本制御命令の合成、排他処理について説明する。
【０１２６】
同一オブジェクトに対して、同一開始時刻に複数の基本制御命令が指定される場合がある。かかる場合でも、同一制御グループに所属していない基本制御命令は、同時に実行可能なので問題とならない。
【０１２７】
一方、同一制御グループに所属する基本制御命令については、一定の規則に従って排他処理や合成処理を行う必要がある。このような一定の規則を登録したものをルールブックと呼ぶ。ルールブックは、予め、記憶装置２０２や二次記憶装置２０３に記憶されている。
【０１２８】
次に、ルールブックについて説明する。ルールブックは、図５に示した各基本制御命令に対し、合成処理と排他処理を行う上での規則や決定因子の優先度を記したものである。なお、以下に挙げる決定因子を全て用いる必要はない。
（３０Ａ）制御発信時間優先
制御命令合成部３１１は、同一開始時刻の基本制御命令が複数指定された場合、基本制御命令のフォーマットに含まれる制御発信時間４０６が早いものを優先して制御命令出力キューに出力する。例えば、制御発信時間４０６が早い順に制御命令出力キューに出力する。
（３０Ｂ）制御命令セット優先
制御命令合成部３１１は、同一の制御命令セットＩＤ４０５が指定されている基本制御命令群が必ず一連に実行されるように、入力された基本制御命令を制御命令出力キューに出力する。具体的には、制御命令セットＩＤ４０５が同一の基本制御命令について、全てが実行可能か否かを調べ、全ての基本制御命令群が実行可能な場合には、入力された基本制御命令群を、制御命令出力キュー１４０３に出力する。一方、全てが実行可能とは限らない場合、その制御命令セットに含まれる基本制御命令群を全て破棄し、制御命令出力キュー１４０３に出力しないようにする。一例として、端末１０１及び端末１０２からの基本制御命令について考える。まず、制御命令合成部３１１は、これらの基本制御命令のうち、制御発信時間優先３０Ａの優先度が最も高い基本制御命令ｘを抽出する。なお、抽出された基本制御命令ｘは、端末１０１から発信されたものとする。つぎに、制御命令合成部３１１は、基本制御命令ｘを優先的に、制御命令出力キューに出力する。また、基本制御命令ｘの属す制御命令セットＸに含まれる基本制御命令も制御命令出力キューに出力する。こうして、制御命令セットＸに属す一連の基本制御命令が実行されることになる。一方、端末１０２から発信された基本制御命令について、制御命令セットＸとの関係で、実行可能かどうか調べる。例えば、制御命令セットＸの中に、端末１０２から発信された基本制御命令と同一時刻に実行される予定で、かつ同一制御グループ４０３の基本制御命令がある場合、その基本制御命令は実行できない。そこで、制御命令合成部３１１は、端末１０２から発信された基本制御命令を、破棄する。また、破棄した基本制御命令の属す制御命令セットに属すその他の基本制御命令も実行できないので、これらの基本制御命令も破棄して、制御命令出力キューに出力しないようにする。
（３０Ｃ）数値合成
オブジェクト移動命令５０１やオブジェクトサイズ変更命令５０４等の基本制御命令は、図４に示すように、付随情報４０９に、パラメータとして表示位置２０Ｅや表示倍率２０Ｆ等の数値を含んでいる。そこで、制御命令合成部３１１は、同一開始時刻に同一命令が複数指定された場合は、平均値もしくは中間値を取り、制御命令出力キューに出力する。
（３０Ｄ）オブジェクトロック状態優先
制御命令合成部３１１は、オブジェクトプロパティに、ロックフラグ２０Ｄが設定されている場合、そのオブジェクトの制御者ＩＤ２０Ｃに指定されているユーザの以外からの基本制御命令を棄却する。具体的には、入力された基本制御命令の発信者ＩＤ４０１が、そのオブジェトの制御者ＩＤ２０Ｃと一致するかを判定し、一致しない場合は、その基本制御命令を破棄する。一方、一致する場合は、その基本制御命令を制御命令出力キューに出力する。
（３０Ｅ）ユーザ優先度
同一開始時刻に基本制御命令が複数指定された場合、予め設定されているユーザ優先度の高いユーザの基本制御命令が優先する。具体的には、制御命令合成部３１１は、基本制御命令の発信者ＩＤ４０１が、予め定めたＩＤと一致するか否か判定し、一致しない場合は、その基本制御命令を破棄する。一方、一致する場合は、その基本制御命令を制御命令出力キューに出力する。
（３０Ｆ）音量解析
制御命令合成部３１１は、同一開始時刻に基本制御命令が複数指定された場合、各ユーザの音声データを解析し、音量の大きいユーザの基本制御命令を優先する。例えば、音量が最大のユーザの基本制御命令を制御命令出力キューに出力し、他の基本制御命令を破棄する。音声データ解析手法としては、例えば特開２００４−８６００１「会話処理装置、および会話処理方法、並びにコンピュータ・プログラム」に示されている公知の手法を用いる。
（３０Ｇ）表情解析
制御命令合成部３１１は、同一開始時刻に基本制御命令が複数指定された場合、各ユーザの映像データを解析し、ユーザの表情の動きの大きい（例えば、顔映像の動きベクトルの大きい）ユーザの基本制御命令を優先する。例えば、動きベクトルが最大のユーザの基本制御命令を制御命令出力キューに出力し、他の基本制御命令を破棄する。なお、映像データ解析手法としては、例えばＭＰＥＧ−４等の映像復号化過程で得られる動きベクトルを利用し、動きベクトル量の合計によりランキング付けを行うといった手法を用いる。
【０１２９】
次に、映像合成部３０９の処理内容について説明する。図１６は、映像合成部３０９の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【０１３０】
図１６に示すとおり、映像合成部３０９は、まず、映像の再生時刻と合致する映像オブジェクトに対する基本制御命令群を制御命令出力キューより取得する（ステップ１６０１）。
【０１３１】
続いて、映像合成部３０９は、映像オブジェクト毎に基本制御命令群を解析して表示手法を決定し映像データの処理を行い（ステップ１６０２）、映像合成を行い（ステップ１６０３）、表示装置２１０に出力する。なお、映像合成部３０９は、各オブジェクトの現在の状態をオブジェクトプロパティから入手する。また、映像合成部３０９は、映像データの処理を行った後、各オブジェクトの新たな状態をオブジェクトプロパティに格納する。
【０１３２】
ステップ１６０２の映像データの処理及びステップ１６０３の映像合成の内容は基本制御命令の内容により以下のように異なる。
【０１３３】
移動命令５０１の場合、映像合成部３０９は、ステップ１６０２においては何も行わず、ステップ１６０３において映像オブジェクトの表示位置を変更する。
【０１３４】
また、表示命令５０２の場合、映像合成部３０９は、ステップ１６０２においては何も行わず、ステップ１６０３において映像オブジェクトの表示位置を一旦消去し、一定時間後にオブジェクトを指定位置に再表示する。
【０１３５】
また、消去命令５０３の場合、映像合成部３０９は、ステップ１６０２においては何も行わず、ステップ１６０３において映像オブジェクトを消去する。
【０１３６】
また、サイズ変更命令５０４の場合、映像合成部３０９は、ステップ１６０２においては映像オブジェクトの拡大あるいは縮小処理を施し、ステップ１６０３においては特に行わない。
【０１３７】
また、色数変更命令５０５の場合、映像合成部３０９は、ステップ１６０２において映像オブジェクトに対する色相変換あるいはグレースケール変換等の色に関するデータ処理を行い、ステップ１６０３においては特に行わない。
【０１３８】
また、透明度変更命令５０６の場合、映像合成部３０９は、ステップ１６０２においては何も行わず、ステップ１６０３において合成の際に映像オブジェクトの透明度を変更する。
【０１３９】
また、表示順序変更命令５０７の場合、映像合成部３０９は、ステップ１６０２においては何も行わず、ステップ１６０３において合成の際に映像オブジェクトの表示順序を変更する。
【０１４０】
なお、映像合成は、表示する映像オブジェクトを表示順に、グラフィックス・プレーンに割り当てるといった処理を施し、ハードウェアの制限により、同時に表示できるグラフィックス・プレーン数が限られる場合は画像の合成を行う必要がある。
【０１４１】
続いて、映像合成部３０９は、主制御部３０１によって、映像合成部３０９の終了が指示されたか否かを判断する（ステップ１６０４）。主制御部３０１によって、映像合成部３０９の終了が指示されていないと判断した場合は、ステップ１６０１に戻り処理を続ける。一方、主制御部３０１によって、終了が指示された場合、映像合成部３０９は、処理を終了する。
【０１４２】
次に、音声合成部３１０の処理内容について説明する。図１７は、音声合成部３１０の処理を示すフローチャートの一例である。このフローは、主制御部３０１のステップ６１３による開始命令によって開始され、同じく主制御部３０１のステップ６１５の終了命令により終了される。
【０１４３】
図１７に示すとおり、音声合成部３１０は、まず、音声の再生時刻と合致する音声オブジェクトに対する基本制御命令群を制御命令出力キューより取得する（ステップ１７０１）。
【０１４４】
続いて、音声合成部３１０は、音声オブジェクト毎に基本制御命令群を解析して再生手法を決定し音声データの処理を行い（ステップ１７０２）、音声合成を行い（ステップ１７０３）、音声出力装置２１１に出力する。なお、ステップ１７０２の音声データの処理及びステップ１７０３の音声合成の内容は基本制御命令の内容により以下のように異なる。
【０１４５】
消去命令５０３の場合、音声合成部３１０は、ステップ１７０２においては何も行わず、ステップ１７０３において音声オブジェクトを消去する。
【０１４６】
また、サイズ変更命令５０４の場合、音声合成部３１０は、ステップ１７０２においては音声オブジェクトの音量の拡大あるいは縮小処理を施し、ステップ１７０３においては特に行わない。
【０１４７】
また、音声変調命令５０８の場合、音声合成部３１０は、ステップ１７０２においては指定された音声オブジェクトの音声データに対する変調処理を施し、ステップ１７０３においては特に行わない。
【０１４８】
続いて、音声合成部３１０は、主制御部３０１によって本音声合成部３１０の終了が指示されたか否かを判断する（ステップ１７０４）。主制御部３０１によって音声合成部３１０の終了が指示されていないと判断した場合、ステップ１７０１に戻り処理を続ける。一方、主制御部３０１によって終了が指示された場合、音声合成部３１０は、処理を終了する。
【０１４９】
次に、ユーザ端末１０１，１０２の画面の表示例について説明する。
【０１５０】
図１８及び図１９は、図１におけるユーザ１０４とユーザ１０５がコミュニケーションを行う場合、起動から実際にコミュニケーションを行う場合の端末装置１０１及び端末装置１０２における処理の一例と、端末装置１０１及び端末装置１０２の表示装置２１０に映されている映像の一例である。なお、図１８及び図１９に示す例においては、映像の特殊切り出し操作を行うように予め設定されているものとする。また、端末装置１０１及び端末装置１０２の映像入力装置２０８から入力される映像のうち、ユーザ１０４及びユーザ１０５の人物像のみが切り出されるものとする。
【０１５１】
端末装置１０１は、プログラムを起動すると、ユーザ１０４から、コミュニケーションを行いたいユーザを入力装置２０５を介して選択させる。そして、端末装置１０２に対して通信開始の意思を通達する（ステップ１８０１）。プログラム起動時は画面１８０２に示すように、表示装置２１０にはユーザ１０４の映像と初期設定の背景のみが表示される。
【０１５２】
続いて、ユーザ１０５の端末装置１０２は、通信の可否をユーザ１０４の端末装置１０１に対して通達する（ステップ１８０３）。端末装置１０１と端末装置１０２共に通信可能状態になれば、端末装置１０１と端末装置１０２は、共に映像データと音声データ及び制御信号を含む前記データパケットの送受信を始める。そして、端末装置１０１及び端末装置１０２は、各表示装置２１０に、共有画面１８０５に示すように、ユーザ１０４とユーザ１０５の映像を並べて表示する（ステップ１８０４）。
【０１５３】
続いて、端末装置１０１、１０２が、ユーザから共有画面の加工の要求を受け付けた場合の処理内容について説明する。
【０１５４】
本例ではユーザ１０５が共有画面に模様を付け加える要求をした場合について説明する。ユーザ１０５の端末装置１０２が、入力装置２０５を介して画面の指定位置に、星マークを表示する制御信号を受け付けたとする（ステップ１８０６）。
【０１５５】
端末装置１０２の主制御部３０１は、入力装置２０５からの入力信号を解釈して、星マークの模様オブジェクトの表示命令５０２を生成する。このとき星マークの模様オブジェクトは、新規に端末装置１０２に登録されるものである。そこで、主制御部３０１は、新規にオブジェクトＩＤを与え、図４に示した基本制御信号のオブジェクトＩＤ４０２に格納し、さらに、予め記憶されている模様のうち星マークを指し示す番号を、付随情報４０９に格納する。
【０１５６】
そして、信号合成部３０６は、この生成された基本制御命令を、ユーザ１０５の映像符号化データ及び音声符号化データと合成し、パケット化する。送受信制御部３０８は、端末装置１０２のデータ送受信装置２０４を介して、端末装置１０１のデータ送受信装置２０４へ向けて送信する。
【０１５７】
端末装置１０２の表示装置２１０には、画面１８０８に示すように、データ送受信装置２０４を介し受信したユーザ１０４の映像データと、映像入力装置２０８を介して入力されたユーザ１０５の映像と、新たなオブジェクトである星マークとが表示される。
【０１５８】
一方、端末装置１０１は、データ送受信装置２０４を介して、端末装置１０２から合成データを受信する。そして、合成データを、信号分離部３０７の処理により、ユーザ１０５の映像符号化データと、音声符号化データと、基本制御命令とに分離する。そして、映像出力部３０４と音声出力部３０５との処理により、ユーザ１０５の映像データと音声データを復号し、同時に受信した基本制御命令を解釈する。
【０１５９】
その後、映像合成部３０９の処理により、ユーザ１０４の映像データと、ユーザ１０５の映像データと、星マークの映像とを合成する。以上の処理により画面に星マークが追加される（ステップ１８０７）。
【０１６０】
こうして、端末１０１と端末１０２の表示装置２１０には共有画面１８０８に示される映像が表示される。
【０１６１】
次に、ユーザが共有画面に対して特殊効果を加えるように要求した場合の処理内容について図１９を用いて説明する。本例では、ユーザ１０４が、ユーザ１０５に対して怒りを表す特殊効果を付け加えるように要求した場合について説明する。
【０１６２】
まず、ユーザ１０４の端末１０１は、入力装置２０５を介してユーザ１０５に対して「怒る」と言う内容の制御信号を受け付ける。端末１０１の主制御部３０１は、図６のステップ６１２の処理により、「怒る」という制御信号に対応する基本制御命令を生成する。基本制御命令は、例えば、以下のような複数のものである。
（４０Ａ）ユーザ１０４の映像を０．５秒後に一時的に大きくする
（４０Ｂ）ユーザ１０５の映像を０．５秒後に一時的に小さくする
（４０Ｃ）共有画面内のユーザ１０４付近に怒りを表す模様を0.5秒後に表示
（４０Ｄ）ユーザ１０４の映像を１．５秒後に元の大きさに戻す
（４０Ｅ）ユーザ１０５の映像を１．５秒後に元の大きさに戻す
（４０Ｆ）怒りを表す模様を1.5秒後に消去する
続いて、端末１０１の信号合成部３０６は、ユーザ１０４の映像と音声データと基本制御命令群とを合成し、端末１０２に対して送信する。
【０１６３】
続いて、端末装置１０１および端末装置１０２は、共に上記４０Ａから４０Ｆの基本制御命令の内容を制御信号合成部３１１における処理により、合成／排他制御を行う。
【０１６４】
続いて、端末装置１０１および端末装置１０２の映像合成部３０９は、０．５秒後に４０Ａから４０Ｃの内容に即した表示されるように、ユーザ１０４の拡大映像、ユーザ１０５の縮小映像及び怒りを表す模様の映像合成を行う。そして、端末装置１０１及び端末装置１０２の表示装置の表示は、画面１９０２から画面１９０４に遷移する。遷移後の画面表示は、１秒間維持される（ステップ１９０３）。
【０１６５】
続いて、１秒後に４０Ｄから４０Ｆの基本制御命令群と、ユーザ１０４の映像及びユーザ１０５の映像との合成により（ステップ１９０５）、端末装置１０１及び端末装置１０２の表示装置は、画面１９０６のような画面を表示する。
【０１６６】
なお、図１９の例のように、４０Ａから４０Ｆの基本制御命令群に対して前述の制御命令セットを設定されている。さらに、ルールブックには、制御信号合成部３１１における合成の規則として、制御命令セット優先３０Ｂが設定されている。したがって、４０Ａから４０Ｆの連続した基本制御命令群の実行が保証される。
【０１６７】
なお、各ユーザに対応するオブジェクトの映像プレーンを重ね合わせて表示画像を作成する場合は以下のようにする。
【０１６８】
映像合成部３０９は、各オブジェクトの映像をオブジェクトプロパティとして保存されている表示順序２０Ｉに従って、プレーン割付を行う。この表示順序は表示順序変更命令により変更される。なお、表示順序２０Ｉはパラメータとして、表示するプレーンを指し示す番号と同一プレーン内での表示優先順序を示す番号をペアで持っている。
【０１６９】
映像合成部３０９は、表示するプレーン毎に映像オブジェクトを表示優先順序の低いものから描画していき、描画領域に表示優先順序の高いものが現れた場合、順番に上書きされるようにする。
【０１７０】
例えば、ユーザ１の映像をユーザ２の映像よりも表示順序を上げたい場合は、ユーザ１の映像オブジェクトと表示順序変更命令とユーザ２の表示順序変更命令を制御命令セットとして発行する。主制御部３０１は、ユーザの入力装置からの指定が、単純にユーザ１をユーザ２よりも表示順序を上にするだけなのか、あるいはユーザ１を他の映像オブジェクトを最上位に表示するか等を判断して、場合によっては他の映像オブジェクトに対する表示順序変更命令を発行する可能性もある。その場合これらも制御命令セットとして定義される。
【０１７１】
また映像を重ならないようにするための解決手段として以下のような方法が挙げられる。
【０１７２】
（１）主制御部３０１が自動的に重ならないように制御セット命令を発行する。
例えば画面に模様を追加する場合、制御部は現在表示中の映像オブジェクトのオブジェクトプロパティから、追加する模様が他の映像オブジェクトと重ならない位置を算出し、オブジェクト指定位置表示命令を発行する。
【０１７３】
また例えばユーザ１がユーザ２に対して「怒る」といったコマンドを発行した場合、現在のユーザ１の映像オブジェクトのオブジェクトプロパティとユーザ２の映像オブジェクトプロパティにより、映像オブジェクトのサイズ変更を行うと映像が重なってしまう場合には、ユーザ１の映像オブジェクト、ユーザ２の映像オブジェクト及び怒りマークの映像オブジェクトに対する、オブジェクト指定位置表示命令とオブジェクトサイズ変更命令のパラメータを映像オブ
ジェクトが重ならない値に設定して、制御命令セットを発行する。
【０１７４】
（２） ルールブックに映像の重なりを許すかどうかのルールを追加する。ルールブックの合成ルールの条件に映像の重ね合わせを許すかどうかのルールを追加する。本ルールが適用された場合は、制御命令合成部３１１において命令を解釈した結果、オブジェクト指定位置命令やオブジェクト移動命令、オブジェクトサイズ変更命令のパラメータにより映像オブジェクトが重なってしまう場合には、命令の棄却あるいは重なる寸前のパラメータに調整する。本ルールブックが無効の場合はオブジェクトプロパティの表示順序の優先の高い映像オブジェクトから重ね合わせて表示されるものとする。
【０１７５】
またルールブックには模様等のオブジェクト上には重ね合わせを認めるが、ユーザ映像の重なりは認めないといった、オブジェクト毎のきめ細かいルールを設けることが可能である。またユーザ映像、模様及び背景を必ず異なるプレーンで表示するといったルールを設けることが可能である。
【０１７６】
以上、第１実施形態について説明した。本実施形態によれば、他のユーザ端末が発信したオブジェクトについても、そのユーザ以外のユーザが制御可能となる。
＜第２実施形態＞
つぎに、第２実施形態について説明する。本実施形態は、第１実施形態と似た構成を有するので、共通する構成については、説明を省略することがある。
【０１７７】
上述の第１実施形態では、いずれの端末装置でも、共通の画面や音声が出力される構成について説明した。これに対し、第２実施形態では、共有画面や共有音声に対して、端末装置独自のローカルルールを適用し、その端末装置に合わせた画像や音声が出力できるようにする。
【０１７８】
例えば、いずれかの端末装置から、画像オブジェクトを縮小する基本制御命令が発信されると、画像オブジェクトは縮小表示される。しかし、端末装置の画面サイズが小さい場合、縮小しすぎると、見づらくなる場合がある。そこで、本実施形態では、その端末装置では、画像オブジェクトを所定以下には縮小しないというローカルルールを適用するようにする。そして、オブジェクトが縮小しすぎることを防止する。以下に詳細に説明する。
【０１７９】
本実施形態では、端末装置１０１，１０２は、記憶装置２０１または二次記憶装置２０３に、ローカルルールを保持している。ローカルルールとしては、例えば、画像オブジェクトのサイズの最大値、最小値や、音量の最大値、最小値などである。
【０１８０】
制御命令合成部３１１は、以下のように処理を行う。図２１は、制御信号合成部３１１の処理内容のフローチャートの一例である。図示するように、制御命令合成部３１１は、まず、信号分離部３０７により生成された基本制御命令を、適用されるオブジェクト毎に分類する（ステップ２１０１）。
【０１８１】
続いて、制御命令合成部３１１は、端末装置が共通で保持している一定の規則（ルールブック）に従い、適用するオブジェクト毎に分類された個々の基本制御命令に対して合成や排他処理を行う（ステップ２１０２）。
【０１８２】
続いて、制御命令合成部３１１は、端末装置がローカル（独自）に保持している一定の規則（ローカルルール）に従い、適応するオブジェクト毎に分類された個々の基本制御命令に対して合成や排他処理を行い、生成された制御命令出力キューへ出力する（ステップ２１０３）。
【０１８３】
ここで、図２０を用いて具体的に説明する。制御命令合成部３１１は、命令合成／排他処理部２００２に対して、基本制御命令群２００１を入力する。命令合成／排他処理部２００２は、端末装置が共通で保持している一定の規則（ルールブック）に従い、入力された基本制御命令について、合成・排他処理を行った後、制御命令を、ローカルルール適用部２００３へ出力する。ローカルルール適用部２００３は、記憶装置２０１または二次記憶装置２０３に保持するローカルルールに従い、入力された制御命令について、さらに合成・排他処理を行った後、処理後の制御命令を、制御命令出力キュー２００４へと出力する。
【０１８４】
例えば、基本制御命令が、画像オブジェクトの拡大命令であった場合で、その命令に従って拡大される画像が、ローカルルールに定めた画像の最大値を越える場合ある。かかる場合、ローカルルール適用部２００３は、その画像オブジェクトのサイズを、ローカルルールの最大値に設定する命令に書き換えて出力する。
【０１８５】
また、基本制御命令が、音声オブジェクトの音量増大命令であった場合で、その命令に従って増大された音量が、ローカルルールに定めた音量の最大値を越える場合ある。かかる場合、ローカルルール適用部２００３は、その音声オブジェクトのサイズを、ローカルルールの最大値を越えない値（例えば、最大値）に設定する命令に書き換えて出力する。
【０１８６】
図２１に戻って説明する。続いて、制御命令合成部３１１は、主制御部３０１によって制御命令合成部３１１の終了が指示されたか否かを判断する（ステップ２１０４）。主制御部３０１によって制御命令合成部３１１の終了が指示されていないと判断した場合、ステップ２１０１に戻り、主制御部３０１によって本制御命令合成部３１１の終了が指示されるまでステップ２１０１乃至ステップ２１０３を繰り返す。
【０１８７】
一方、主制御部３０１によって、終了が指示されたと判断した場合、制御命令合成部３１１は、処理を終了する。
【０１８８】
本実施形態によれば、端末装置１０１及び端末装置１０２の表示装置２１０における画面サイズやアスペクト比が異なる等、完全に共通の映像や音声を出力する上で制約がある場合でも、その端末装置に合わせた形で、映像や音声を出力する。したがって、完全に同一の情報でないにしても、ビデオチャットなどで問題とならない程度に、互いに映像や音声を共有することができる。
【０１８９】
なお、表示可能プレーン数は端末装置毎に異なる可能性があるため、ローカルルールにはプレーン数が異なる場合の旨を記述してもよい。
【０１９０】
そして、表示プレーン数が異なるにも関わらず、端末装置の最大表示プレーン数を超えて表示順序変更命令が指定された場合には、表示順序変更命令で指定された表示順序でオブジェクトが表示されるように、複数のオブジェクトを順に合成した映像を１つのプレーンに割り当てるなどして、表示する端末装置の最大表示プレーン数に合わせてオブジェクトを合成をする。
【０１９１】
なお、ローカルルールを、記憶装置２０１または二次記憶装置２０３に予め記憶させておいてもよいし、端末装置間の通信セッション開始時に、画面の解像度やアスペクト比、最大表示プレーン数を互いに伝達し、これらの値が予め定めた値以上差がある場合に、ローカルルールを生成するようにしてもよい。
【０１９２】
＜第３実施形態＞
つぎに、第３実施形態について説明する。本実施形態は、第１及び第２実施形態と似た構成を有するので、共通する構成については、説明を省略することがある。
【０１９３】
上述の第１及び第２に実施形態では、通信を行う端末装置がＰｅｅｒ−ｔｏ−Ｐｅｅｒ（Ｐ２Ｐ）型でコミュニケーションを行う場合の構成について示した。これに対して、以下説明する第３の実施形態では、サーバ／クライアント型で通信を行う場合の構成について示す。
【０１９４】
図２２は、第３実施形態に係るコミュニケーションシステム構成図の一例である。図示するように、本実施形態のコミュニケーションシステムは、少なくとも２つのクライアント端末装置２２０１、２２０２と、サーバ装置２２０３と、ネットワーク２２０４から構成される。ユーザ２２０５とユーザ２２０６は、これらの端末装置２２０１，２２０２を通し、ネットワーク２２０４を介して互いに通信可能となる。
【０１９５】
サーバ装置２２０３は、クライアント端末装置２２０１及び２２０２から送信される映像データ、音声データ及び基本制御命令を受信し、映像や音声の合成処理及び基本制御命令の合成あるいは排他処理を行う。そして、クライアント端末装置２２０１及び２２０２に対して、合成映像データあるいは合成音声データ等を送信する。
【０１９６】
図２３に、サーバ装置２２０３と、クライアント端末装置２２０１、２２０２の機能構成の例を示す。なお、それぞれの機能部は、図３で示した機能部と対応する。
【０１９７】
図示するように、サーバ装置２２０３は、主制御部３０１ａと、映像入力部３０２ａと、音声入力部３０３ａと、信号合成部３０６ａと、信号分離部３０７ａと、送受信制御部３０８ａと、映像合成部３０９ａと、音声合成部３１０ａと、制御命令合成部３１１ａとを備えていればよい。
【０１９８】
また、クライアント端末装置は、主制御部３０１ｂと、映像入力部３０２ｂと、音声入力部３０３ｂと、映像出力部３０４ｂと、音声出力部３０５ｂと、信号合成部３０６ｂと、信号分離部３０７ｂと、送受信制御部３０８ｂとを備えていればよい。なお、クライアント端末装置２２０１、２２０２の映像出力部３０４ｂ、音声出力部３０５ｂは、第１実施形態の図３で示した、映像出力部３０４、音声出力部３０５と異なり、映像及び音声合成処理が必要ないため、それぞれ復号結果をすぐに表示装置２１０及び音声出力装置２１１に出力することになる。
【０１９９】
サーバ装置２２０３は、例えばパーソナルコンピュータシステムやワークステーション等とすることができる。
【０２００】
クライアント端末装置２２０１、２２０２は、例えばパーソナルコンピュータシステムやワークステーション等とすることができる。
【０２０１】
本実施形態においては、映像データや音声データの合成処理を、サーバ装置２３０３が行う。基本制御命令の組み合わせ等による合成処理自体の仕組みは前述の実施形態と同様である。したがって、上記実施形態と同様に、各端末装置間で、映像と音声の共有が可能となる。
【０２０２】
なお、上述した第１、第２及び第３の実施形態では、ユーザの端末装置が２つの場合を説明したが、この限りではなく３つ以上の端末装置でコミュニケーションを行ってもよい。
【０２０３】
また、上述した第１、第２及び第３実施形態では、主制御部３０１、映像入力部３０２、音声入力部３０３、映像出力部３０４、音声出力部３０５、信号合成部３０６、信号分離部３０７、送受信制御部３０８、映像合成部３０９、音声合成部３１０及び制御命令合成部３１１をＣＰＵ２０１によって実行されるソフトウェアで実現されるものとしたが、これらの一部あるいは全てをハードウェアにより実現してもよい。
【０２０４】
さらに、上述した第１、第２及び第３の実施形態では、共有するものが映像データ及び音声データであるとしたが、映像データ及び音声データ両方が共有対象であることは必須ではない。音声データの共有を省略する場合には、音声コーデック２０７、音声入力装置２０９、音声出力装置２１１、音声入力部３０３、音声出力部３０５及び音声合成部３１０に関する部分を実現しなければよい。また映像データの共有を省略する場合には、映像コーデック２０６、映像入力装置２０８、表示装置２１０、映像入力部３０２、映像出力部３０４及び映像合成部３０９に関する部分を実現しなければよい。
【図面の簡単な説明】
【０２０５】
【図１】本発明の実施形態にかかるコミュニケーションシステムの構成図の一例である。
【図２】本発明の実施形態にかかる端末装置のハードウェア構成の一例を示すブロック図である。
【図３】本発明の実施形態にかかる端末装置の機能構成図である。
【図４】本発明の実施形態にかかるコミュニケーションシステムで用いられる基本制御命令のフォーマットの一例である。
【図５】本発明の実施形態にかかるコミュニケーションシステムで用いられる基本制御命令の種類の一例である。
【図６】本発明の実施形態にかかるコミュニケーション端末装置における主制御部の処理内容を示すフローチャートの一例である。
【図７】本発明の実施形態にかかるコミュニケーション端末装置における映像入力部の処理内容を示すフローチャートの一例である。
【図８】本発明の実施形態にかかるコミュニケーション端末装置における音声入力部の処理内容を示すフローチャートの一例である。
【図９】本発明の実施形態にかかるコミュニケーション端末装置における信号合成部の処理内容を示すフローチャートの一例である。
【図１０】本発明の実施形態にかかるコミュニケーション端末装置における送受信制御部の処理内容を示すフローチャートの一例である。
【図１１】本発明の実施形態にかかるコミュニケーション端末装置における信号分離部の処理内容を示すフローチャートの一例である。
【図１２】本発明の実施形態にかかるコミュニケーション端末装置における映像出力部の処理内容を示すフローチャートの一例である。
【図１３】本発明の実施形態にかかるコミュニケーション端末装置における音声出力部の処理内容を示すフローチャートの一例である。
【図１４】本発明の実施形態にかかるコミュニケーション端末装置における制御命令合成部の模式図の一例である。
【図１５】本発明の実施形態にかかるコミュニケーション端末装置における制御命令合成部の処理内容を示すフローチャートの一例である。
【図１６】本発明の実施形態にかかるコミュニケーション端末装置における映像合成部の処理内容を示すフローチャートの一例である。
【図１７】本発明の実施形態にかかるコミュニケーション端末装置における音声合成部の処理内容を示すフローチャートの一例である。
【図１８】本発明の第１の実施形態にかかるコミュニケーションを行っている２台のコミュニケーション端末装置における、コミュニケーションを開始して、模様を付加する場合のデータのやり取り及び共有画面の管理方法を説明する図である。
【図１９】本発明の第１の実施形態にかかるコミュニケーションを行っている２台のコミュニケーション端末装置における、特殊効果を付加する場合のデータのやり取り及び共有画面の管理方法を説明する図である。
【図２０】本発明の第２の実施形態にかかるコミュニケーション端末装置における制御命令合成部の模式図の一例である。
【図２１】本発明の第２の実施形態にかかるコミュニケーション端末装置における制御命令合成部の処理内容を示すフローチャートの一例である。
【図２２】本発明の第３の実施形態にかかるコミュニケーションシステムの構成図の一例である。
【図２３】本発明の第３の実施形態にかかるコミュニケーションシステムの機能構成図である。
【符号の説明】
【０２０６】
２０１・・・ＣＰＵ，２０２・・・記憶装置、２０３・・・二次記憶装置、２０４・・・データ送受信装置、２０５・・・入力装置、２０６・・・映像コーデック、２０７・・・音声コーデック、２０８・・・映像入力装置、２０９・・・音声入力装置、２１０・・・表示装置、音声出力装置・・・２１１、３０１・・・制御部、３０２・・・映像入力部、３０３・・・音声入力部、３０４・・・映像出力部、３０５・・・音声出力部、３０６・・・信号合成部、３０７・・・信号分離部、３０８・・・送受信制御部、３０９・・・映像合成部、３１０・・・音声合成部、３１１・・・制御命令合成部、４０１・・・発信者ＩＤ、４０２・・・オブジェクトＩＤ、４０３・・・制御グループＩＤ、４０４・・・制御ＩＤ、４０５・・・制御セットＩＤ、４０６・・・制御発信時間、４０７・・・開始時刻、４０８・・・持続時間、４０９・・・予約領域、５０１・・・オブジェクト移動命令、５０２・・・オブジェクト指定位置表示命令、５０３・・・オブジェクト消去命令、５０４・・・オブジェクトサイズ変更命令、５０５・・・オブジェクト色数変更命令、５０６・・・オブジェクト透明度変更命令、５０７・・・オブジェクト表示順序変更命令、５０８・・・オブジェクト音声変調命令、５０９・・・オブジェクトロック指定命令、１４０１・・・基本制御命令群、１４０２・・・命令合成／排他処理部、１４０３・・・制御命令出力キュー、２００１・・・基本制御命令群、２００２・・・命令合成／排他処理部、２００３・・・ローカルルール適用部、２００４・・・制御命令出力キュー
【図１】
2006173879.tif 000003
【図２】
2006173879.tif 000004
【図３】
2006173879.tif 000005
【図４】
2006173879.tif 000006
【図５】
2006173879.tif 000007
【図６】
2006173879.tif 000008
【図７】
2006173879.tif 000009
【図８】
2006173879.tif 000010
【図９】
2006173879.tif 000011
【図１０】
2006173879.tif 000012
【図１１】
2006173879.tif 000013
【図１２】
2006173879.tif 000014
【図１３】
2006173879.tif 000015
【図１４】
2006173879.tif 000016
【図１５】
2006173879.tif 000017
【図１６】
2006173879.tif 000018
【図１７】
2006173879.tif 000019
【図１８】
2006173879.tif 000020
【図１９】
2006173879.tif 000021
【図２０】
2006173879.tif 000022
【図２１】
2006173879.tif 000023
【図２２】
2006173879.tif 000024
【図２３】
2006173879.tif 000025