(57)【要約】【課題】ピアツーピア型のネットワーク形態を用いて、滑らかに音声および映像の再生を行うことのできる電子会議を提供する。【解決手段】端末装置５は、端末装置２・３・４毎に、端末装置２・３・４から受信したパケットを複数格納するデータ格納部１１ａ〜１２ｃと、端末装置２・３・４毎に、データ格納部１１ａ〜１２ｃから、該データ格納部１１ａ・〜１２ｃに最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する映像再生部１３、音声再生部１４とを備える。これにより、映像再生部１３および音声再生部１４は、パケットを途切れることなく再生することができる。【選択図】図１
2008227968.tif 000002
【特許請求の範囲】
【請求項１】
ピアツーピア型ネットワークで接続された複数の端末装置が、映像および音声の少なくともいずれか一方のデータを相互に送受信するテレビ会議システムにおける端末装置であって、
通信相手の端末装置毎に、当該端末装置から受信したパケットを複数格納するデータ格納部と、
前記通信相手の端末装置毎に、前記データ格納部から、該データ格納部に最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する再生手段とを備えることを特徴とする端末装置。
【請求項２】
前記通信相手の端末装置毎に割り当てられた複数のポートを有する通信部と、
前記通信相手の端末装置から前記各ポートに入力されるパケットを、前記各ポートが割り当てられた前記各端末装置に対応するデータ格納部に格納する一時記憶制御手段とをさらに備えることを特徴とする請求項１に記載の端末装置。
【請求項３】
前記再生手段が前記データ格納部に最初に格納されたパケットを再生するまでの遅延時間を、複数の前記通信相手の端末装置との通信環境のうちで、最も悪い通信環境に応じて、複数の前記通信相手の端末装置に共通に設定する一時記憶制御手段を備えていることを特徴とする請求項１に記載の端末装置。
【請求項４】
ピアツーピア型ネットワークで接続された複数の端末装置が、映像および音声の少なくともいずれか一方のデータを相互に送受信するテレビ会議システムにおける端末装置の制御方法であって、
通信相手の端末装置毎に、当該端末装置から受信したパケットを、複数のパケットを格納可能なデータ格納部に格納する格納ステップと、
前記通信相手の端末装置毎に、前記データ格納部から、該データ格納部に最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する再生ステップとを含むことを特徴とする端末装置の制御方法。
【請求項５】
ピアツーピア型ネットワークで接続された複数の端末装置が、映像および音声の少なくともいずれか一方のデータを相互に送受信するテレビ会議システムにおける端末装置の制御プログラムであって、
通信相手の端末装置毎に、当該端末装置から受信したパケットを、複数のパケットを格納可能なデータ格納部に格納する格納ステップと、
前記通信相手の端末装置毎に、前記データ格納部から、該データ格納部に最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する再生ステップとを、コンピュータに実行させるための制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを介して接続した複数の端末を用いてテレビ会議を行うための端末装置、端末装置の制御方法、端末装置の制御プログラムに関するものである。
【背景技術】
【０００２】
近年、音声や映像の符号化技術の急速な発達に伴い、２地点以上の遠隔地において、インターネットプロトコル（ＩＰ）等の通信網を介して、音声や映像などをやり取りすることによって、同時かつ双方向の会議を実現する多地点電子会議システムが注目されている。
【０００３】
このような多地点電子会議システムでは、会議参加者が、多地点に散在していても、１つの会議室に一堂に会しているかのように、その会議の音声や映像を同時に共有することができる。このことより、出張などの手間や経費を削減することができるので、多地点電子会議システムは、企業を中心に急速に普及している。
【０００４】
また、このような多地点電子会議システムでは、各会議参加者間の通信において、複数のパケットに分割した音声や映像のデータを、インターネット等を介して送受信する通信網、すなわちパケット通信網を用いることがある。しかしながら、インターネットを介した通信では、通信状況の悪化等により通信速度の低下が生じると、受信側の会議参加者において、連続してパケットを受信することが出来なかったり、パケットの到達順が入れ替わったりしてしまうという問題が生じる。このような問題が生じると、音声や映像が途切れたりするため、多地点電子会議を円滑に進めることができなくなる。
【０００５】
そこで、音声や映像の途切れを低減すべく、受信したパケットを一時的に記憶し、一定の時間が経過すると、記憶されたパケットを順に出力するバッファ等を設ける技術がある。この技術は、例えば、下記に示す特許文献１〜３に記載されている。
【０００６】
特許文献１には、パケット通信網から受信した音声パケットを、受信順に格納・出力するゲートウェイ装置が開示されている。具体的には、バッファが音声データを格納すると共に、一定の時間間隔で音声データを出力することにより、ＩＰ網で発生したＩＰパケット転送時間のばらつきを吸収することが開示されている。
【０００７】
また、特許文献２には、インターネットを介して受信した、ＩＰパケット化された音声フレームデータを一時的に蓄積するバッファメモリを備え、ＩＰパケットに含まれる音声フレームデータに基づいて生成される音声情報を順次出力する通話システムが開示されている。
【０００８】
また、特許文献３には、バッファに受信パケットを格納する前に、到達順序が入れ替わった受信パケットをできるだけ正しい順序に並べ替えるべく、バッファが、入力された受信パケットを保持し、保持した受信パケットを、入力された順で一定時間間隔毎に出力するネットワーク電話機が開示されている。
【特許文献１】特開２００５−３２３０２９号公報（２００５年１１月１７日公開）
【特許文献２】特開平１０−２１００７４号公報（平成１０年８月７日公開）
【特許文献３】特開２００４−２６０８０５号公報（２００４年９月１６日公開）
【発明の開示】
【発明が解決しようとする課題】
【０００９】
ところで、上記多地点電子会議システムのような複数の端末装置間での通信のネットワーク形態には、ネットワークを介して特定の処理を提供するサーバと、該処理を依頼するクライアントである端末装置とから構成されるクライアントサーバ型と、複数の端末装置が対等の関係にあり、サーバを介さずに各端末装置が直接的にデータのやり取りを行うピアツーピア型とがある。図１２は、クライアントサーバ型のネットワーク形態を用いた通信の様子を示す概略図である。また、図２は、本発明の説明図であり、ピアツーピア型のネットワーク形態を用いた、本発明のテレビ会議システムの概略構成を示す図である。
【００１０】
クライアントサーバ型のネットワーク形態を用いた電子会議では、図１２に示すように、ビデオ会議サーバ１００が、会議参加者ａ，ｂ，ｃのそれぞれから受信した音声や映像のデータをミキシングして、ミキシング後のデータを各会議参加者ａ，ｂ，ｃに送信し、会議参加者ａ，ｂ，ｃの端末装置が、該送信された音声や映像のデータを再生する構成となっている。そのため、クライアントサーバ型では、各会議参加者がサーバに音声や映像のデータを送信するときの通信状況の悪化によって生じるパケットデータの途切れと、サーバがミキシングした後の音声や映像のデータを各会議参加者に送信するときの通信状況の悪化によって生じる該パケットの途切れとを考慮する必要がある。よって、該パケットデータの途切れを低減し、滑らかにデータの再生を行うためのバッファを、サーバと、各会議参加者との２箇所に設ける必要がある。
【００１１】
一方、ピアツーピア型のネットワークを介した電子会議では、図２に示すように、中継サーバ６が特定の処理を行わないため、中継サーバは、各会議参加者Ａ，Ｂ，Ｃ，Ｄから送信されたデータをミキシングすることなく、データの送信者を除いた各会議参加者にそれぞれ送信し、データを受信した各会議参加者の端末装置がミキシングを行い再生する構成となっている。例えば、会議参加者Ａの端末装置は、中継サーバ６を介して、会議参加者Ｂ，Ｃ，Ｄからのデータを受信するが、中継サーバ６は何も処理しないため、会議参加者Ｂ，Ｃ，Ｄからのデータを直接的に受信しているのと同様である。よって、会議参加者Ａの端末装置が、会議参加者Ｂ，Ｃ，Ｄからのデータをミキシングし、その後再生する。
【００１２】
このことより、ピアツーピア型のネットワーク形態を用いる場合は、中継サーバでミキシングを行わないため、クライアントサーバ型のネットワーク形態を用いる場合に必要であったサーバのバッファが不要となる。
【００１３】
しかしながら、上述したように、ピアツーピア型の電子会議では、各会議参加者が直接的にデータの送受信を行っているため、それぞれの会議参加者間における通信状況の悪化等によって、各会議参加者からのパケットデータがそれぞれ途切れるという問題が生じる。
【００１４】
そこで、本発明は、上記従来の問題点に鑑みなされたものであって、その目的は、ピアツーピア型のネットワーク形態を用いて、滑らかに音声および映像の再生を行うことのできる電子会議を提供することにある。
【課題を解決するための手段】
【００１５】
上記課題を解決するために、本発明に係る端末装置は、ピアツーピア型ネットワークで接続された複数の端末装置が、映像および音声の少なくともいずれか一方のデータを相互に送受信するテレビ会議システムにおける端末装置であって、通信相手の端末装置毎に、当該端末装置から受信したパケットを複数格納するデータ格納部と、前記通信相手の端末装置毎に、前記データ格納部から、該データ格納部に最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する再生手段とを備えることを特徴としている。
【００１６】
また、本発明に係る端末装置の制御方法は、ピアツーピア型ネットワークで接続された複数の端末装置が、映像および音声の少なくともいずれか一方のデータを相互に送受信するテレビ会議システムにおける端末装置の制御方法であって、通信相手の端末装置毎に、当該端末装置から受信したパケットを、複数のパケットを格納可能なデータ格納部に格納する格納ステップと、前記通信相手の端末装置毎に、前記データ格納部から、該データ格納部に最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する再生ステップとを含むことを特徴としている。
【００１７】
上記の構成によれば、本発明に係る端末装置は、通信相手の端末装置から受信したパケットを、該通信相手の端末装置ごとに格納するデータ格納部を備えているため、通信相手ごとに受信したパケットを格納することができる。すなわち、テレビ会議に参加している各会議参加者からの映像や音声データを、各会議者ごとに格納することができる。
【００１８】
したがって、各会議参加者からの映像や音声データをそれぞれ途切れることなく再生することが可能となる。それゆえ、ピアツーピア型ネットワークを用いたテレビ会議を円滑に行うことが可能となる。
【００１９】
さらに、本発明に係る端末装置は、前記通信相手の端末装置毎に割り当てられた複数のポートを有する通信部と、前記通信相手の端末装置から前記各ポートに入力されるパケットを、前記各ポートが割り当てられた前記各端末装置に対応するデータ格納部に格納する一時記憶制御手段とをさらに備えることを特徴としている。
【００２０】
上記構成によれば、受信したパケットの送信元である通信相手を、該受信したパケットが通信部のどのポートを介して受信されたかによって判断することができるため、容易に送信元の通信相手を認識することができる。
【００２１】
これにより、一時記憶制御手段は、容易に送信元の端末装置に対応するデータ格納部に、受信したパケットを格納することができる。
【００２２】
さらに、本発明に係る端末装置は、前記再生手段が前記データ格納部に最初に格納されたパケットを再生するまでの遅延時間を、複数の前記通信相手の端末装置との通信環境のうちで、最も悪い通信環境に応じて、複数の前記通信相手の端末装置に共通に設定する一時記憶制御手段を備えていることを特徴としている。
【００２３】
上記の構成によれば、一時記憶制御手段が、テレビ会議開始後最初にパケットを格納してから、再生手段が格納したパケットを再生するまでの時間を、最も通信環境の悪い通信相手に応じた時間に共通に設定する。
【００２４】
これにより、受信したデータを格納する共通の時間を、通信環境の最も悪い通信相手からの受信パケットに生じる遅延を解消する必要最低限な時間とすることができる。よって、各会議参加者からの映像や音声データをそれぞれ途切れることなく再生することを可能とするとともに、データ格納部でデータを格納することにより生じる、データが受信された時間と該データを再生する時間とのタイムラグを最小限に抑えることが可能となる。
【００２５】
なお、上記端末装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記各手段として動作させることにより上記端末装置をコンピュータにて実現させる端末装置の制御プログラムも本発明の範疇に入る。
【発明の効果】
【００２６】
以上のように、通信相手の端末装置毎に、当該端末装置から受信したパケットを複数格納するデータ格納部と、前記通信相手の端末装置毎に、前記データ格納部から、該データ格納部に最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する再生手段とを備える構成である。
【００２７】
また、本発明に係る端末装置の制御方法は、通信相手の端末装置毎に、当該端末装置から受信したパケットを、複数のパケットを格納可能なデータ格納部に格納する格納ステップと、前記通信相手の端末装置毎に、前記データ格納部から、該データ格納部に最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生する再生ステップとを含む方法である。
【００２８】
それゆえ、ピアツーピア型のネットワーク形態を用いて、滑らかに音声および映像の再生を行うことのできる電子会議を提供することができるという効果を奏する。
【発明を実施するための最良の形態】
【００２９】
本発明の一実施形態について図１ないし図９に基づいて説明すれば、以下の通りである。
【００３０】
本実施の形態では、ピアツーピア型のネットワークを介して接続された複数のパーソナルコンピュータ間で、映像や音声のデータを同時、かつ、双方向にデータの送受信をすることによって実現されるテレビ会議システムについて説明する。
【００３１】
ピアツーピア型のネットワークとは、複数の端末装置が対等の関係にあり、サーバを介さずに各端末装置が直接的にデータのやり取りを行うものである。ピアツーピア型のネットワークを介したテレビ会議の概要について、図２を用いて具体的に説明すると、以下のとおりである。
【００３２】
図２に示すように、会議参加者Ａの端末装置から出力された音声や映像のデータは、中継サーバ６を介して、会議参加者Ｂ，Ｃ，Ｄに送信される。また、会議参加者Ｂの端末装置から出力された音声や映像のデータは、会議参加者Ａ，Ｃ，Ｄに、会議参加者Ｃの端末装置からの音声や映像のデータは、会議参加者Ａ，Ｂ，Ｄに、会議参加者Ｄの端末装置からの音声や映像のデータは、会議参加者Ａ，Ｂ，Ｃにそれぞれ送信される。そして、会議参加者Ｂ，Ｃ，Ｄからのデータを受信した会議参加者Ａの端末装置では、会議参加者Ａの音声や映像のデータと、受信した会議参加者Ｂ，Ｃ，Ｄの音声や映像のデータとをミキシングして、再生する。なお、会議参加者Ｂ，Ｃ，Ｄにおいても同様の動作が行われる。
【００３３】
なお、本実施の形態における各端末装置間の通信は、パケットを用いたパケット通信であるため、前記送受信されるデータは、複数に分割されたパケットから構成されている。
【００３４】
まず、本実施の形態におけるテレビ会議システム１の構成について、図１および図３を用いて説明する。
【００３５】
図１は、端末装置の概略構成を示す機能ブロック図である。図３は、テレビ会議システム１の全体の構成を示す説明図である。
【００３６】
図３に示すように、テレビ会議システム１は、会議参加者（以下、単にユーザ）Ａ〜Ｄのそれぞれが使用する端末装置２〜５と、中継サーバ６と、ネットワーク７とから構成される。
【００３７】
端末装置２〜５には、パーソナルコンピュータを用いる。各端末装置の構成についての詳細な説明は後述する。
【００３８】
また、中継サーバ６は、ピアツーピアネットワークにおけるサーバであるため、特定の管理を行わず、各端末装置間の通信を中継するものである。
【００３９】
ネットワーク７は、インターネット、携帯電話網や有線電話網等の公衆通信網、専用通信回線等の非公衆通信網等の１または複数の通信網から構成されている。また、ネットワーク７は、インターネットプロトコル（ＩＰ）を用いて、データを複数の固定長のパケットに分割して転送する構成であり、端末装置２〜５等のネットワーク７に接続される各機器には、ＩＰアドレスが割り当てられている。
【００４０】
（端末装置の構成）
次に、各端末装置２〜５の構成について説明するが、ここでは、ユーザＤが使用する端末装置５の構成について、図１および図４を用いて説明する。
【００４１】
図４は、入出力情報記憶部２４に格納されるテーブルの一例を示す図である。
【００４２】
テレビ会議システム１は、ピアツーピア型のネットワーク形態で接続された複数の端末装置２・３・４・５が、映像および音声の少なくともいずれか一方のデータを相互に送受信することによりテレビ会議を行うシステムである。
【００４３】
端末装置５は、通信部８と、入出力制御部９と、キャッシュ制御部１０と、映像キャッシュ部１１と、音声キャッシュ部１２と、映像再生部１３と、音声再生部１４と、テレビ会議ＧＵＩ（graphical user interface）１５と、カメラ１６と、マイク１７と、表示部１８と、操作部１９と、スピーカ２０と、記憶部２１とを備える構成である。
【００４４】
通信部８は、中継サーバ６を介して端末装置２〜４と通信を行うものである。具体的には、通信部８は、端末装置２・３・４毎に割り当てられた複数の入出力ポート（ポート）を有する。各入出力ポートは、中継サーバ６との間で、通信相手のユーザごと、通信対象のデータ種別ごとに張られている各コネクションのインタフェースとして割り当てられている。通信部８は、データがどの入出力ポートから入力されたかを示す入出力ポート情報とともに、入力されたデータを映像・音声入力管理部２３（図１）に出力する。また、通信部８は、映像・音声出力管理部２２（図１）から入力されたデータを、映像・音声出力管理部２２からの入出力ポート情報によって指定された入出力ポートを介して、中継サーバ６に出力する。また、通信部８は、各端末装置２〜４との通信の環境を検出する機能を備えている。
【００４５】
入出力制御部９は、通信部８を介して行われる、端末装置５へのデータの入出力を制御するものであり、映像・音声出力管理部２２と映像・音声入力管理部２３とを備える。
【００４６】
映像・音声出力管理部２２は、ユーザＤによって入力されたデータの、他の端末装置への出力を管理するものであり、カメラ１６やマイク１７から入力されたデータ等を通信部８へ出力する。具体的には、映像・音声出力管理部２２は、ユーザＤによって、マイクまたはカメラを介して入力された音声または映像のデータを送信するユーザと、送信するデータの種別とを特定する。そして、映像・音声出力管理部２２は、前記特定した情報を基に、入出力情報記憶部２４（図１）に格納されているテーブルを参照し、該特定した送信先のユーザとデータの種別とに対応する入出力ポートを選定する。そして、選定した入出力ポートの情報（入出力ポート情報）と、ユーザＤによって入力されたデータとを、通信部８に出力する。
【００４７】
例えば、テレビ会議に参加している参加者全員に、データを送信すると設定されている場合で、ユーザＤから音声データのみの入力があったとすると、映像・音声出力管理部２２は、まず、ユーザＡからＣのすべてに、音声データを出力すると特定する。そして、この情報を基に、映像・音声出力管理部２２は、入出力情報記憶部２４に格納されている図４に示すテーブルを参照し、前記特定した情報に対応する、入出力ポート１，３，５を選定する。そして、この選定した入出力ポート１，３，５の情報を通信部８に出力する。
【００４８】
映像・音声入力管理部２３は、端末装置２〜４から端末装置５へのデータの入力を管理するものである。具体的には、映像・音声入力管理部２３は、通信部８から、端末装置２〜４から受信したデータ（受信データ）と、該データを受信する際の入出力ポート情報とを取得する。そして、映像・音声入力管理部２３は、取得した入出力ポート情報を基に、入出力情報記憶部２４に格納されたテーブルを参照し、そのテーブルから、該入出力ポートに対応する、受信データの送信元であるユーザおよび受信データの種別の情報を取得する。映像・音声入力管理部２３は、入出力情報記憶部２４から取得した、送信元のユーザの情報と受信データの種別の情報とを、受信データとともにキャッシュ制御部１０に出力する。
【００４９】
例えば、端末装置５が、あるデータを、通信部８の入出力ポート１，３を介して受信したとすると、映像・音声入力管理部２３は、通信部８から、受信したデータとともに、入出力ポート１，３を介して受信した旨の入出力ポート情報を取得する。そして、映像・音声入力管理部２３は、該入出力ポート情報に基づいて、入出力情報記憶部２４のテーブルから、ポート１，３のそれぞれに対応する、受信データの送信元である参加者およびデータの種別の情報を取得する。ここでは、入出力ポート１を介して受信したデータであるので、該データは、ユーザＡから送信された音声データである。
【００５０】
記憶部２１は、端末装置５の各種機能を実行するために必要なプログラムやデータ等を格納するメモリやハードディスク等であり、入出力情報記憶部２４を備える。
【００５１】
入出力情報記憶部２４は、映像・音声出力管理部２２が端末装置５からデータを出力する際に、どの入出力ポートを介して、出力するかを特定するために参照する情報を格納するものであり、また、映像・音声入力管理部２３が端末装置５へ入力されたデータの送信元となる端末装置と、入力されたデータの種別を特定するために参照する情報を格納するものである。
【００５２】
具体的には、入出力情報記憶部２４は、端末装置５にデータが入出力される際に、どの入出力ポートを介したかを示す入出力ポート情報と、各入出力ポートを介して入出力されるデータがどのユーザとコネクションされているかを示す情報と、各入出力ポートを介して入出力されるデータが映像データであるか、または音声データであるかを示す情報とを対応付けたテーブルを格納している。このテーブルの一例は図４に示すとおりである。
【００５３】
また、図４のテーブルでは、ユーザの情報をＡ，Ｂ，Ｃと示しているが、実際は、テレビ会議システムのユーザにはそれぞれテレビ会議用ＩＤが付与されており、各ユーザに付与されたテレビ会議用ＩＤの情報が格納されている。
【００５４】
キャッシュ制御部１０（一時記憶制御手段）は、映像・音声入力管理部２３から入力された情報を基に、または、テレビ会議ＧＵＩ１５からの指示に基づき、映像キャッシュ部１１および音声キャッシュ部１２を制御するものである。具体的には、キャッシュ制御部１０は、各端末装置２・３・４から通信部８の各ポートに入力されるパケットを、該ポートが割り当てられた前記端末装置２・３・４に対応する映像キャッシュ部１１のデータ格納領域１１ａ・１１ｂ・１１ｃ（後述）、または音声キャッシュ部１２のデータ格納領域１２ａ・１２ｂ・１２ｃ（後述）に格納する。
【００５５】
また、キャッシュ制御部１０は、テレビ会議開始後、映像再生部１３または音声再生部１４が、前記データ格納領域１１ａ・１１ｂ・１１ｃ、または１２ａ・１２ｂ・１２ｃに、最初にパケットを格納してから、該格納したパケットを再生するまでの時間を、複数の前記端末装置２・３・４との通信環境のうちで、最も悪い通信環境に応じて、複数の前記端末装置２・３・４に共通に設定する。
【００５６】
映像キャッシュ部１１は、受信データの種別が映像であるデータを一時的に記憶するものであり、受信データの送信元であるユーザごとに記憶するものである。
【００５７】
具体的には、図１に示すように、映像キャッシュ部１１は、ユーザＡのデータを格納するユーザＡデータ格納領域１１ａと、ユーザＢのデータを格納するユーザＢデータ格納領域１１ｂと、ユーザＣのデータを格納するユーザＣデータ格納領域１１ｃとを備える。
【００５８】
ユーザデータ格納領域１１ａ・１１ｂ・１１ｃは、端末装置２・３・４毎に、当該端末装置２・３・４から受信した映像データを含むパケットを複数格納するものである。
【００５９】
音声キャッシュ部１２は、受信データの種別が音声であるデータを、一時的に記憶するものであり、受信データの送信元であるユーザごとに記憶するものである。
【００６０】
具体的には、図１に示すように、音声キャッシュ部１２は、ユーザＡのデータを格納するユーザＡデータ格納領域１２ａと、ユーザＢのデータを格納するユーザＢデータ格納領域１２ｂと、ユーザＣのデータを格納するユーザＣデータ格納領域１２ｃとを備える。
【００６１】
ユーザデータ格納領域１２ａ・１２ｂ・１２ｃは、端末装置２・３・４毎に、当該端末装置２・３・４から受信した音声データを含むパケットを複数格納するものである。
【００６２】
なお、キャッシュ制御部１０、映像キャッシュ部１１、音声キャッシュ部１２の詳細な説明については、後述する。
【００６３】
映像再生部１３（再生手段）は、映像キャッシュ部１１から出力された各ユーザの映像データのそれぞれを、テレビ会議ＧＵＩ１５を介して、表示部１８上で再生させる。また、映像再生部１３は、ユーザＤがカメラ１６を用いて自分を撮影することによって入力される該映像データも、テレビ会議ＧＵＩ１５を介して、表示部１８上で再生する。
【００６４】
具体的には、端末装置２・３・４毎に、データ格納部１１ａ・１１ｂ・１１ｃから、該データ格納部１１ａ・１１ｂ・１１ｃに最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、再生するものである。
【００６５】
例えば、ユーザＡの映像を再生するとき、テレビ会議ＧＵＩ１５によって表示される、図９に示すようなテレビ会議画面３０における、ユーザＡの映像を表示する領域で、映像再生部１３は、ユーザＡの映像データを再生させる。また、映像再生部１３は、ユーザＢの映像を再生するとき、ユーザＢの映像データを、該テレビ会議画面３０におけるユーザＢの映像を表示する領域で再生させる。また、ユーザＣの映像を再生するとき、ユーザＣの映像データを、該テレビ会議画面３０におけるユーザＣの映像を表示する領域で再生させる。
【００６６】
音声再生部１４（再生手段）は、音声キャッシュ部１２から出力された各ユーザの音声データをミキシングすることによって１つの連続した音声データとし、該音声データに基づいた音声をスピーカ２０に再生させるものである。また、音声再生部１４は、マイク１７を用いて端末装置５に入力したユーザＤの音声データを、他のユーザの音声データとミキシングすることにより１つの音声データとして、スピーカ２０で再生する。
【００６７】
具体的には、端末装置２・３・４毎に、データ格納部１２ａ・１２ｂ・１２ｃから、該データ格納部１２ａ・１２ｂ・１２ｃに最も早く格納されたパケットを、パケットに含まれるデータの再生時間毎に読み出し、読み出したパケットによって構成される各端末装置からの音声データをミキシングし、スピーカで再生するものである。
【００６８】
テレビ会議ＧＵＩ１５は、表示部１８に、図９に示すようなテレビ会議画面３０を表示させるものである。また、テレビ会議ＧＵＩ１５は、テレビ会議画面３０を介して、ユーザＤによって操作部１９を用いて入力されたから種々の操作情報を取得するものである。
【００６９】
テレビ会議画面３０は、テレビ会議に参加するユーザや自分の映像を、表示部１８上に表示する画面である。具体的には、テレビ会議画面３０は、テレビ会議に参加している他のユーザＡ〜Ｃの映像を表示する領域と、キャッシュサイズの設定等のユーザＤがテレビ会議において種々の設定を行う操作ボタン領域とを有する。ユーザＤは、該テレビ会議画面３０を介して、テレビ会議に参加する他のユーザ、または自分の映像を確認することができる。
【００７０】
例えば、ユーザＤがユーザＢの音声だけ選択して再生するとき、ユーザＤは、操作部１９を用いて、テレビ会議画面３０上の、選択したユーザの音声のみを再生する「音声再生ユーザ選択ボタン」を選択し、ユーザＢの映像が表示されている領域を選択する。これにより、テレビ会議ＧＵＩ１５は、テレビ会議画面３０を介して、ユーザＤがユーザＢを選択したと認識する。そして、テレビ会議ＧＵＩ１５は、音声再生部１４にその旨を通知し、音声再生部１４はユーザＢのみの音声を再生する。
【００７１】
また、ユーザＤがユーザＡの映像だけ選択して再生するときも、同様に、ユーザＤは、選択したユーザの映像のみを再生する「映像再生ユーザ選択ボタン」を選択し、テレビ会議画面３０上のユーザＡの映像が表示されている領域を選択する。これにより、テレビ会議ＧＵＩ１５は、ユーザＤがユーザＡを選択したと認識し、映像再生部１３を介して、ユーザＡのみの映像を再生する。
【００７２】
カメラ１６は、ユーザＤの映像を端末装置５に取り込むものである。また、マイク１７は、ユーザＤの音声を端末装置５に取り込むものである。
【００７３】
表示部１８は、テレビ会議画面３０を表示するものであり、例えばＰＣのディスプレイ等である。
【００７４】
操作部１９は、テレビ会議画面３０に表示されたメニューを選択するとき等、ユーザが端末装置５を操作するときに用いるものであり、例えばＰＣのマウス等である。
【００７５】
スピーカ２０は、各ユーザの音声を出力するものである。
【００７６】
次に、キャッシュ制御部１０、映像キャッシュ部１１、音声キャッシュ部１２について、詳細に説明する。
【００７７】
また、ここでは、端末装置５が、ユーザＡから映像データを取得した場合について説明する。
【００７８】
キャッシュ制御部１０は、端末装置２から受信した受信データと、該受信データの送信元である端末装置２のユーザＡのテレビ会議ＩＤと、該受信データが映像データである旨の情報とを、映像・音声入力管理部２３から取得する。
【００７９】
キャッシュ制御部１０は、映像・音声入力管理部２３から情報を取得すると、まず、キャッシュ時間を設定する。キャッシュ時間の設定は、キャッシュ制御部１０が、自動で設定することも可能であるし、ユーザＤが手動で設定することも可能である。具体的には、図９で示すように、ユーザＤが自動の欄にチェックを入れると、テレビ会議ＧＵＩ１５が、キャッシュ時間を自動で設定すると認識し、キャッシュ時間を自動で設定する旨をキャッシュ制御部１０に出力する。
【００８０】
このとき、キャッシュ制御部１０は、通信部８から入出力制御部９を介して取得した、各端末装置２〜４との通信環境のうち、最も通信環境の悪い端末装置を認識し、該通信環境の悪い端末装置に対しても滑らかにデータの再生が行えるように、キャッシュ時間を長く設定する。
【００８１】
一方、ユーザＤが、図９で示すように、テレビ会議画面３０を介して、データのキャッシュサイズ、すなわちキャッシュ時間を所望のサイズに設定すると、テレビ会議ＧＵＩ１５が、設定した所望のキャッシュ時間をキャッシュ制御部１０に出力する。そして、キャッシュ制御部１０が、該キャッシュ時間に応じて、後述のレギュラー格納領域のブロック数を設定する。
【００８２】
また、ここでのキャッシュ時間は、後述のレギュラー格納領域のブロック数５個と設定されているものとする。
【００８３】
キャッシュ制御部１０は、キャッシュ時間を、レギュラー領域のブロック数５個と設定後、受信データが映像データであると認識し、受信データのパケットを格納するキャッシュ部を映像キャッシュ部１１と選択する。次に、キャッシュ制御部１０は、ユーザＡのテレビ会議ＩＤから、該受信データはユーザＡからのデータであると認識するため、映像キャッシュ部１１のうち、ユーザＡデータ格納領域１１ａを選択する。そして、キャッシュ制御部１０は、ユーザＡから受信した受信データのパケットを、映像キャッシュ部１１のユーザＡデータ格納領域１１ａに格納させる。
【００８４】
図５は、ユーザＡデータ格納領域１１ａにおいて、パケットがキャッシュされる様子を示した説明図である。
【００８５】
ユーザＡデータ格納領域１１ａにおけるパケットのキャッシュ方法について図５を用いて説明すると、以下の通りである。
【００８６】
なお、ここでは、ユーザＡデータ格納領域１１ａについてのみ説明しているが、他のデータ格納領域１１ｂ、１１ｃ、１２ａ〜１２ｃも同一の構成である。
【００８７】
ユーザＡデータ格納領域１１ａは、図５に示すように、パケット１つ分を格納するブロックが、１０個連なった構成をしている。また、この１０個のブロックのうち、パケットが出力される側（図５の紙面に向かって右側）の５個のブロックi〜ｖは、レギュラー格納領域であり、パケットの格納、すなわち受信データの保存に用いられる。なお、パケットが出力されるとは、映像再生部１３から読み出されることを意味する。
【００８８】
一方、パケットが入力される側（図５の紙面に向かって左側）の５個のブロックは、予備格納領域であり、レギュラー格納領域からあふれたパケットを格納する領域である。
【００８９】
また、各データ格納領域１１ａ〜１１ｃ，１２ａ〜１２ｃにおけるレギュラー格納領域のブロック数は常に共通の数であるため、データ格納領域１１ｂ、１１ｃ、１２ａ〜１２ｃのレギュラー格納領域のブロック数は、レギュラー格納領域１１ａと同様の５個である。
【００９０】
具体的には、図５に示すように、キャッシュ制御部１０が、タイミング６（以下、時刻ｔ＝６）において、連続する４つのパケットｄ〜ｇを受信したとき、レギュラー格納領域には、すでにパケットｂ，ｃが格納されているため、レギュラー格納領域の空白ブロックは３つである。しかしながら、受信されたのは４つのパケットであるため、早く到達したパケットｄ〜ｆまではレギュラー格納領域に含まれ、この４つのパケットの中で最も遅く到達したパケットｇはレギュラー格納領域からあふれる。予備格納領域が、このあふれたパケットｇを格納するため、パケットｇの格納もれによって生じるデータの途切れを防ぐことが可能となる。
【００９１】
また、キャッシュ制御部１０は、テレビ会議が開始されてから最初に到達したパケットを、まず、映像キャッシュ部１１におけるレギュラー格納領域の最もパケット入力側に位置するブロックiに格納する。そして、１カウントごとに、１ブロックずつパケット出力側に該パケットを順に移動させる、すなわち、ブロックii〜iｖに該パケットを格納する。また、該パケットが最もパケット出力側のブロックｖに格納されると、キャッシュ制御部１０は、次のカウントで、該パケットを映像再生部１３に出力する。
【００９２】
ここからは、図５に示すような、９つのパケットａ〜iで構成されている、端末装置２から送信されたユーザＡの映像データを用いて、映像キャッシュ部１１におけるキャッシュ方法について説明する。また、端末装置２と端末装置５との通信環境の悪化等により、前記９つの連続したパケットａ〜iが途切れると、端末装置５は、図５に示すように、途切れたパケットを受信する。
【００９３】
まず、キャッシュ制御部１０は、テレビ会議を開始してから、最初に端末装置５に到達するユーザＡの映像データのパケットａを、レギュラー格納領域における５つのブロックのうち、最もパケット出力側から遠いブロックi、すなわち図５における右側から５番目のブロックに格納する。
【００９４】
また、キャッシュ制御部１０は、テレビ会議開始後、最初に端末装置５に到達したパケットａがキャッシュ制御部１０に入力された時刻をｔ＝１として、その後、所定の時間間隔で、ｔ＝２、ｔ＝３、ｔ＝４・・・とカウントする。そして、該カウントごとに、格納されているパケットを１つずつ出力側のブロックに移動させる。なお、ここにおける所定の時間、すなわち１カウントとは、１パケットを再生する時間を指す。
【００９５】
キャッシュ制御部１０は、１カウントで１つ、パケットを出力側のブロックに移動させるため、ｔ＝２をカウントすると同時に、パケットａを、ブロックiよりもパケット出力側に位置するブロックiiに移動させる。
【００９６】
また、キャッシュ制御部１０は、ｔ＝２のカウントで入力された２つの連続したパケットｂ，ｃを映像キャッシュ部１１に格納する。このとき、キャッシュ制御部１０は、パケットｂを、パケットａが格納されていたブロックiに格納するとともに、連続するパケットｃを予備格納領域の最もパケット出力側に位置するブロックに格納する。
【００９７】
また、キャッシュ制御部１０は、ｔ＝３をカウントすると同時に、パケットａ，ｂ，ｃをそれぞれパケット出力側の隣接するブロックに移動させる。すなわち、パケットａはブロックiiiに、パケットｂはブロックiiに、パケットｃはブロックiに格納される。
【００９８】
また、キャッシュ制御部１０は、ｔ＝４をカウントすると同時に、パケットａ，ｂ，ｃのそれぞれを、さらにパケット出力側の隣接するブロックに移動させる。すなわち、パケットａはブロックiｖに、パケットｂはブロックiiiに、パケットｃはブロックiiに格納される。また、キャッシュ制御部１０は、ｔ＝５をカウントすると同時に、パケットａをブロックｖに、パケットｂをブロックiｖに、パケットａをブロックiiiにそれぞれ格納する。
【００９９】
そして、キャッシュ制御部１０は、ｔ＝６をカウントすると同時に、パケットａを映像再生部１３へ出力し、パケットｂをブロックｖに、パケットｃをブロックiｖにそれぞれ移動させる。
【０１００】
また、このとき、通信状況の悪化などで遅延して端末装置５に到達したパケットｄ〜ｇがキャッシュ制御部１０に入力される。
【０１０１】
パケットｄ〜ｇが入力されると、キャッシュ制御部１０は、パケットｄをブロックiiiに格納するとともに、パケットｅ，ｆをそれぞれブロックii，iに格納する。そして、レギュラー格納領域からあふれたパケットｇを予備格納領域の最もパケット出力側に位置するブロックに格納する。
【０１０２】
また、キャッシュ制御部１０は、ｔ＝７をカウントすると同時に、最もパケット出力側のブロックｖに格納されていたパケットｂを映像再生部１３へ出力し、パケットｃをブロックｖに、パケットｄをブロックiｖに、パケットｅをブロックiiiに、パケットｆをブロックiiにそれぞれ移動させて格納させる。また、パケットｂが出力された分、レギュラー格納領域に空白領域が生じるため、キャッシュ制御部１０は、パケットｇを、レギュラー格納領域のブロックiに格納する。
【０１０３】
このとき、通信状況の悪化などで遅延して端末装置５に到達したパケットｈ,ｉがキャッシュ制御部１０に入力される。ｔ＝７のカウント時点では、レギュラー格納領域に空白領域がないため、キャッシュ制御部１０は、パケットｈ，iを予備格納領域において最もパケット出力側に位置するブロックから順にそれぞれを格納する。
【０１０４】
キャッシュ制御部１０は、ｔ＝８〜１４のそれぞれをカウントすると同時に、各タイミング時にブロックｖに格納されているパケットｃ〜iを映像再生部１３へ出力するとともに、映像キャッシュ部１１の各ブロックに格納されているパケットをそれぞれ１つずつパケット出力側のブロックに移動させる。
【０１０５】
上記制御方法によれば、キャッシュ制御部１０が、映像キャッシュ部１１からパケットを出力するタイミングを制御することができるため、映像キャッシュ部１１への入力時に途切れていたデータを、キャッシュ制御部１０からの出力時には、途切れのない連続したデータとして出力することが可能となる。
【０１０６】
また、ユーザＢデータ格納領域１１ｂとユーザＣデータ格納領域１１ｃとは、ユーザＡデータ格納領域１１ａと同一の構成であるため、ここでは説明を省略する。また、音声キャッシュ部１２におけるユーザＡデータ格納領域１２ａと、ユーザＢデータ格納領域１２ｂと、ユーザＣデータ格納領域１２ｃも、ユーザＡデータ格納領域１１ａと同一の構成であるため、ここでは説明を省略する。
【０１０７】
（テレビ会議システム全体の動作）
次に、テレビ会議システム１全体の動作について、図６を用いて説明する。図６は、テレビ会議システム１全体の動作を示すフローチャート図である。
【０１０８】
まず、テレビ会議システム１が動作するためには、複数の端末装置のうち、いずれかがセッションマネージャとして、テレビ会議開始要求を、テレビ会議参加候補の他の端末装置に送信する。
【０１０９】
テレビ会議開始要求を受け取った端末装置のユーザが、該テレビ会議に参加する場合には、参加応答通知をセッションマネージャに送信する。このことより、該端末装置とセッションマネージャとの間には、コネクションが確立される（Ｓ１）。また、コネクションが確立されると、コネクションが確立された端末装置毎にポートが割り当てられ、入出力ポート情報が作成される（Ｓ１）。
【０１１０】
そして、テレビ会議が開始し、各端末装置間で様々なテレビ会議処理が行われる（Ｓ２）。前記様々なテレビ会議処理の詳細については後述する。
【０１１１】
また、テレビ会議に参加しているユーザのうちの１人、例えばユーザＡが、ユーザＢ〜Ｄへテレビ会議終了要求を行い、すべてのユーザＢ〜Ｄからテレビ会議終了応答通知を受けると、テレビ会議が終了する（Ｓ３でＹＥＳ）。そして、各ユーザ間のコネクションが切断される（Ｓ４）。
【０１１２】
また、すべてのユーザからテレビ会議終了応答通知を受けなければテレビ会議は終了せず（Ｓ３でＮＯ）、テレビ会議が続行される。
【０１１３】
ここで、様々なテレビ会議処理の詳細については以下に説明する。
【０１１４】
（データの受信時における端末装置の処理動作）
まずは、他の端末装置からデータを受信した際の端末装置５の処理動作について説明する。
【０１１５】
図７は、テレビ会議処理において、他の端末装置からデータを受信した際の端末装置５の処理動作を示したフローチャート図である。
【０１１６】
図７に示すように、端末装置５は、他の端末装置２〜４から通信部８を介してデータを受信すると、まず、通信部８のどの入出力ポートを介してデータが入力されたかを示す入出力ポート情報と、入力されたデータとを映像・音声入力管理部２３（図１）に入力させる。
【０１１７】
映像・音声入力管理部２３は、入力された入出力ポート情報に基づいて、入出力情報記憶部２４から、受信データの送信元であるユーザを特定する（Ｓ１１）とともに、受信データの種別を特定する（Ｓ１２）。
【０１１８】
映像・音声入力管理部２３は、特定した受信データの送信元であるユーザと、受信データの種別とをキャッシュ制御部１０に出力する。
【０１１９】
キャッシュ制御部１０は、まず、受信データのキャッシュ時間を自動的に設定する（Ｓ１３でＹＥＳ）。これは、図９で示すように、テレビ会議ＧＵＩ１５で、キャッシュもし、キャッシュ制御部１０がキャッシュ時間を自動的に設定しない場合（Ｓ１３でＮＯ）は、ユーザＤがテレビ会議ＧＵＩ１５を介して、キャッシュ時間を設定する（Ｓ１８）。
【０１２０】
そして、キャッシュ制御部１０は、受信データがユーザＡからの映像データであれば（Ｓ１４でＹＥＳ）、映像キャッシュ部１１のユーザＡデータ格納領域１１ａに、受信データを格納させる。映像キャッシュ部１１は、キャッシュ制御部１０によって設定されたキャッシュ時間に基づいて、受信データである映像データをキャッシュする（Ｓ１５、格納ステップ）。
【０１２１】
キャッシュ制御部１０は、前記キャッシュ時間が経過すると、映像データを、映像キャッシュ部１１から映像再生部１３に出力させる（Ｓ１６）。
【０１２２】
そして、映像再生部１３が、入力された映像データを、テレビ会議ＧＵＩ１５を介して、表示部１８上で再生する（Ｓ１７、再生ステップ）。
【０１２３】
また、受信データがユーザＡからの音声データであれば（Ｓ１４でＮＯ）、キャッシュ制御部１０は、音声キャッシュ部１２のユーザＡデータ格納領域１２ａに、受信データを格納させる。音声キャッシュ部１２は、キャッシュ制御部１０によって設定されたキャッシュ時間に基づいて、受信データである音声データをキャッシュする（Ｓ１９、格納ステップ）。
【０１２４】
キャッシュ制御部１０は、前記キャッシュ時間が経過すると、音声データを、音声キャッシュ部１２から音声再生部１４に出力させる（Ｓ２０）。
【０１２５】
そして、音声再生部１４は、ユーザＢやユーザＣの音声データを上記同様な処理動作によって得られると、Ｓ２０で入力されたユーザＡの音声データと、ユーザＢやユーザＣの音声データとをミキシングする（Ｓ２１）。Ｓ２１のミキシングによって、一つの連続したデータとなった音声データは、スピーカ２０を介して、再生される（Ｓ２２、再生ステップ）。
【０１２６】
（データの送信時における端末装置の処理動作）
次に、端末装置５に、ユーザＤが自分の映像や音声をデータとして取り込み、該映像データや音声データを他の端末装置２〜４に送信する際の端末装置５の処理動作について説明する。
【０１２７】
図８は、テレビ会議処理において、端末装置５から他の端末装置に映像または音声データを送信する際の処理動作を示したフローチャート図である。
【０１２８】
まず、カメラ１６を介して、ユーザＤの映像が端末装置５に取り込まれて（Ｓ３１でＹＥＳ）、該取り込んだ映像を他の端末装置２〜４に送信する場合（Ｓ３２でＹＥＳ）、端末装置５は、映像・音声出力管理部２２に取り込んだ映像データを入力させる。
【０１２９】
そして、映像・音声出力管理部２２は、送信先のユーザを認識する（Ｓ３３）。具体的には、ユーザＤからの指定があれば、その指示に従って送信先のユーザを認識し、また、全ユーザに送信すると設定されているときは、送信先は全ユーザであると認識する。
【０１３０】
映像・音声出力管理部２２は、Ｓ３３で認識した送信先のユーザと、入力されたデータの種別と（Ｓ３４）から、入出力情報記憶部２４を参照して、各端末装置に送信する際に用いる入出力ポートを特定する（Ｓ３５）。
【０１３１】
そして、映像・音声出力管理部２２は、映像データとともに、特定した入出力ポート情報を通信部８に出力する。通信部８は、該入出力ポート情報に基づいて、各端末装置に映像データを送信する（Ｓ３６）。
【０１３２】
また、カメラ１６を介して映像を取り込まずに（Ｓ３１でＮＯ）、マイク１７を介して音声データを取り込む場合についても（Ｓ３７でＹＥＳ）、取り込んだ音声データを他の端末装置に送信するときは、Ｓ３２〜Ｓ３６と同じ動作を行う。
【０１３３】
また、カメラ１６やマイク１７を介して、端末装置５内に取り込んだ映像データや、音声データを、端末装置５の表示部１８上のテレビ会議ＧＵＩ１５を介して表示するときは（Ｓ３２でＮＯ）、カメラ１６は、映像データを映像再生部１３へ出力し、マイク１７は、音声データを音声再生部１４へ出力する（Ｓ３８）。
【０１３４】
そして、映像再生部１３は、ユーザＤの映像を、テレビ会議ＧＵＩ１５を介して表示部１８で再生させる（Ｓ３９）。一方、音声再生部１４は、ユーザＤの音声データを、他のユーザの音声データがあれば、該音声データとミキシングして、スピーカ２０を介して出力する（Ｓ３９）。
【０１３５】
本実施の形態では、キャッシュ制御部１０は、レギュラー格納領域のブロック数を、各端末装置との通信環境のうち、最も悪い通信環境に合わせて設定する構成であるが、本発明はこれに限らず、どの端末装置との通信環境も良好である場合等には、最も少ない通信量で通信可能なブロック数に設定することが可能である。
【０１３６】
例えば、すべての端末装置との通信環境が良好であり、図５において、パケットｃに対するパケットｄの遅延時間が２タイミング分であるときは、レギュラー格納領域のブロック数をブロックii〜ｖの４つと設定することができる。この場合、パケットａを最初にブロックiではなく、ブロックiiに格納する。
【０１３７】
また、本実施の形態では、各データ格納領域１１ａ〜１１ｃ，１２ａ〜１２ｃは、レギュラー格納領域と予備格納領域とから構成されているが、本発明はこれに限られず、レギュラー格納領域に相当するもののみから構成されていてもよい。
【０１３８】
また、本実施の形態では、各データ格納領域１１ａ〜１１ｃ，１２ａ〜１２ｃのブロック数を１０個と設定しているが、本発明はこれに限らず、何個に設定しても構わない。
【０１３９】
また、本実施の形態では、パケットは、受信したパケット順に並べて格納され、格納されたパケットは、パケット出力側に順に移動し、最もパケットが出力される側に位置すると出力される構成であるが、本発明のキャッシュ制御部１０による映像キャッシュ部１１または音声キャッシュ部１２のキャッシュ方法は、上記説明したキャッシュ方法に限られない。例えば、入力されるパケットに、入力順にインデックスを付し、映像再生部１３がインデックス番号順にパケットを読み出す構成であってもよい。この場合、本実施の形態のように、入力順にパケットを並べて格納する必要がない。
【０１４０】
また、本実施の形態では、ユーザＤが入力した音声または映像のデータは、すべての参加者に送信される場合について説明したが、本発明はこれに限られず、ユーザＤが指定した送信先にのみ送信される構成であってもよい。例えば、ユーザＤがデータの送信先をユーザＢとＣとに指定する場合、ユーザＤは操作部１９を用いて、テレビ会議ＧＵＩ１５上のユーザＢが表示されている領域とユーザＣが表示されている領域とを選択することにより、テレビ会議ＧＵＩ１５は、データの送信先をユーザＢとＣとに指定したと認識する。そして、テレビ会議ＧＵＩ１５が、データの送信先をユーザＢとＣとに設定する指示を映像・音声出力管理部２２に出力する。映像・音声出力管理部２２は、カメラから映像データが入力された場合、テレビ会議ＧＵＩ１５からの指示を受けて、入出力情報記憶部２４から、参加者がユーザＢ，Ｃでありデータ種別が映像データである入出力ポート、すなわち、入出力ポート４，６の情報を取得し、通信部８へ出力する。そして、通信部８が取得した入出力ポート情報を基に、入出力ポート４，６を介して、ユーザＢ，Ｃに映像データを送信するようになっていてもよい。
【０１４１】
また、本実施の形態における映像キャッシュ部１１および音声キャッシュ部１２は、自己、ユーザＤの映像データおよび音声データをキャッシュするデータ格納領域を有しない構成であるが、映像キャッシュ部１１および音声キャッシュ部１２が、それぞれユーザＤデータ格納領域を有する構成であってもよい。
【０１４２】
また、例えば、ユーザＥが途中からテレビ会議に参加する場合には、キャッシュ制御部１０が、映像キャッシュ部１１および音声キャッシュ部１２に、ユーザＥからのデータを格納するためのユーザＥデータ格納領域を作成するようにしてもよい。
【０１４３】
また、本発明は、ＳＯＢＡ（登録商標）（Session Oriented Broadband Application）にも適用することができる。
【０１４４】
ＳＯＢＡとは、通信ネットワークを介して接続された端末装置のユーザ同士がリアルタイムコミュニケーションを実現するための仕組みを提供するものである。リアルタイムコミュニケーションの例としては、チャット機能、ホワイトボード機能などのコミュニケーション機能、音声や動画によるコミュニケーション機能、遠隔画面操作機能などが挙げられる。ＳＯＢＡにおいて、上記のようなコミュニケーション機能によって共有される通信接続の範囲はセッションと呼ばれる。
【０１４５】
図１０は、ＳＯＢＡが搭載された端末装置２０１および端末装置２０２が通信ネットワークを介して接続されている状態を示している。ここでは両者は対等であり、互いにデータの送受信が可能となっているものとする。
【０１４６】
端末装置２０１および端末装置２０２のそれぞれには、アプリケーション層、セッション層、およびサービス層の３つの層が形成される。アプリケーション層は、ＳＯＢＡ上で動くアプリケーションによって構成される層である。このアプリケーション層には、例えば、部品アプリケーション、および画面共有アプリケーションなどが含まれる。より具体的なアプリケーションとしては、チャット機能アプリケーション、ホワイトボード機能アプリケーション、音声動画通信機能アプリケーションなどが挙げられる。
【０１４７】
セッション層は、セッションの状態管理や、データ配信先の管理を行う層である。
【０１４８】
サービス層は、ＳＯＢＡによる通信機能を実現するための機能によって構成される層である。このサービス層には、例えば同期サービス機能、リソースサービス機能、ディレクトリサービス機能、セキュリティサービス機能、およびネットワークサービス機能などが挙げられる。同期サービス機能とは、セッションに含まれる端末装置との間の通信の同期を制御する機能である。リソースサービス機能とは、音声や動画像のデータを制御する機能である。ディレクトリサービス機能とは、通信先の端末装置またはユーザを探索するためのディレクトリを提供する機能である。セキュリティサービス機能とは、アクセスの許認可機能、および、通信データの暗号化機能などを提供する機能である。ネットワークサービス機能とは、通信ネットワーク上で通信を行うために必要とされる処理を行う機能である。
【０１４９】
ＳＯＢＡによって通信が行われるデータとしては、部品アプリケーションデータ、画面共有アプリケーションデータ、およびセッションコントロールデータが挙げられる。部品アプリケーションデータとは、部品アプリケーションの状態変更イベントを通知するデータである。画面共有アプリケーションデータとは、画面共有アプリケーションにおいて送信指示が行われた送信データ、および、画面共有アプリケーションの状態変更イベントを通知するデータなどに相当する。セッションコントロールデータとは、セッションの状態変更イベントを通知するデータである。
【０１５０】
図１１（ａ）は、部品アプリケーションデータが通信ネットワーク上を流れる際のパケット構成を示している。同図に示すように、該パケットは、ＴＣＰ／ＩＰヘッダ、ＳＯＢＡヘッダ、部品アプリケーションヘッダ、および部品アプリケーションデータから構成されている。ＴＣＰ／ＩＰヘッダは、ＴＣＰ／ＩＰに基づく通信が行われる際に必要とされるヘッダ情報であり、サービス層におけるネットワークサービス機能によって付加される。ＳＯＢＡヘッダは、サービス層におけるネットワークサービス機能によって付加されるヘッダ情報であり、ＳＯＢＡのプロトコルに基づいたデータであることを表している
部品アプリケーションヘッダは、アプリケーション層における部品アプリケーションによって付加されるヘッダ情報であり、該パケットに含まれるデータが利用される部品アプリケーションを特定する情報を示している。部品アプリケーションデータは、上記したように、部品アプリケーションの状態変更イベントを通知するデータである。
【０１５１】
図１１（ｂ）は、画面共有アプリケーションデータが通信ネットワーク上を流れる際のパケット構成を示している。同図に示すように、該パケットは、ＴＣＰ／ＩＰヘッダ、ＳＯＢＡヘッダ、画面共有アプリケーションヘッダ、および画面共有アプリケーションデータから構成されている。ＴＣＰ／ＩＰヘッダ、およびＳＯＢＡヘッダは上記のとおりである。画面共有アプリケーションヘッダは、アプリケーション層における画面共有アプリケーションによって付加されるヘッダ情報であり、該パケットに含まれるデータが利用される画面共有アプリケーションを特定する情報を示している。画面共有アプリケーションデータは、上記したように、画面共有アプリケーションにおいて送信指示が行われた送信データ、および、画面共有アプリケーションの状態変更イベントを通知するデータである。
【０１５２】
図１１（ｃ）は、セッションコントロールデータが通信ネットワーク上を流れる際のパケット構成を示している。同図に示すように、該パケットは、ＴＣＰ／ＩＰヘッダ、ＳＯＢＡヘッダ、セッションヘッダ、およびセッションコントロールデータから構成されている。ＴＣＰ／ＩＰヘッダ、およびＳＯＢＡヘッダは上記のとおりである。セッションヘッダは、セッション層によって付加されるヘッダ情報であり、セッションコントロールの種類を特定する情報を示している。セッションコントロールデータは、上記したように、セッションの状態変更イベントを通知するデータである。
【０１５３】
例えば端末装置２０１において、部品アプリケーションによって状態変更イベントが発生した場合、まず部品アプリケーションにおいて部品アプリケーションデータおよび部品アプリケーションヘッダが生成される。その後、サービス層において、ＳＯＢＡヘッダおよびＴＣＰ／ＩＰヘッダが不可され、図１１（ａ）に示すパケットが通信ネットワークを介して端末装置２０２に送信される。端末装置２０２では、パケットを受信すると、サービス層において、ＴＣＰ／ＩＰヘッダが取り除かれ、また、ＳＯＢＡヘッダが確認された後に該ＳＯＢＡヘッダが取り除かれる。そして、サービス層は、部品アプリケーションヘッダを確認し、該当する部品アプリケーションに対して部品アプリケーションヘッダおよび部品アプリケーションにおいて部品アプリケーションデータおよび部品アプリケーションデータを送信する。部品アプリケーション層では、受信した部品アプリケーションヘッダおよび部品アプリケーションデータに基づいて状態変更イベントを認識し、これに応じた処理を行う。画面共有アプリケーションデータ、および、セッションコントロールデータについても、同様の処理が行われる。
【０１５４】
以上のようなＳＯＢＡシステムを、図１に示すテレビ会議システム１の各端末装置２〜５に搭載することによって各種機能を実現することが可能となる。
【０１５５】
（ソフトウェアによる構成例）
最後に、端末装置５が備える各ブロック、特に、入出力制御部９、キャッシュ制御部１０、映像キャッシュ部１１、音声キャッシュ部１２、映像再生部１３、音声再生部１４、およびテレビ会議ＧＵＩ１５などの各機能ブロックは、ハードウェアロジックによって構成してもよいし、次のようにＣＰＵを用いてソフトウェアによって実現してもよい。
【０１５６】
すなわち、上記端末装置５は、各機能ブロックを実現する制御プログラムの命令を実行するＣＰＵ（central processing unit）、上記プログラムを格納したＲＯＭ（read only memory）、上記プログラムを展開するＲＡＭ（random access memory）、上記プログラムおよび各種データを格納するメモリ等の記憶装置（記録媒体）などを備えている。そして、本発明の目的は、上述した機能を実現するソフトウェアである制御プログラムのプログラムコード（実行形式プログラム、中間コードプログラム、ソースプログラム）をコンピュータで読み取り可能に記録した記録媒体を、上記端末装置５に供給し、そのコンピュータ（またはＣＰＵやＭＰＵ）が記録媒体に記録されているプログラムコードを読み出し実行することによっても、達成可能である。
【０１５７】
上記記録媒体としては、例えば、磁気テープやカセットテープ等のテープ系、フロッピー（登録商標）ディスク／ハードディスク等の磁気ディスクやＣＤ−ＲＯＭ／ＭＯ／ＭＤ／ＤＶＤ／ＣＤ−Ｒ等の光ディスクを含むディスク系、ＩＣカード（メモリカードを含む）／光カード等のカード系、あるいはマスクＲＯＭ／ＥＰＲＯＭ／ＥＥＰＲＯＭ／フラッシュＲＯＭ等の半導体メモリ系などを用いることができる。
【０１５８】
また、上記端末装置５を通信ネットワークと接続可能に構成し、上記プログラムコードを通信ネットワークを介して供給してもよい。この通信ネットワークとしては、特に限定されず、例えば、インターネット、イントラネット、エキストラネット、ＬＡＮ、ＩＳＤＮ、ＶＡＮ、ＣＡＴＶ通信網、仮想専用網（virtual private network）、電話回線網、移動体通信網、衛星通信網等が利用可能である。また、通信ネットワークを構成する伝送媒体としては、特に限定されず、例えば、ＩＥＥＥ１３９４、ＵＳＢ、電力線搬送、ケーブルＴＶ回線、電話線、ＡＤＳＬ回線等の有線でも、ＩｒＤＡやリモコンのような赤外線、Ｂｌｕｅｔｏｏｔｈ（登録商標）、８０２．１１無線、ＨＤＲ、携帯電話網、衛星回線、地上波デジタル網等の無線でも利用可能である。なお、本発明は、上記プログラムコードが電子的な伝送で具現化された、搬送波に埋め込まれたコンピュータデータ信号の形態でも実現され得る。
【０１５９】
本発明は上述した実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能である。すなわち、請求項に示した範囲で適宜変更した技術的手段を組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。
【産業上の利用可能性】
【０１６０】
本発明に係る端末装置は、ピアツーピア型のネットワーク形態を用いたテレビ会議等に適用することができる。
【図面の簡単な説明】
【０１６１】
【図１】本発明における端末装置の実施の一形態を示す機能ブロック図である。
【図２】本発明におけるテレビ会議システム全体を概略的に示した構成図である。
【図３】本発明におけるテレビ会議システム全体の通信の様子を示す説明図である。
【図４】本発明における記憶部に格納されたテーブルの一例を示す図である。
【図５】本発明における端末装置でのキャッシュの様子を示す説明図である。
【図６】本発明におけるテレビ会議システムの全体の動作を示すフローチャートである。
【図７】本発明における端末装置の、データ受信時における動作を示すフローチャートである。
【図８】本発明における端末装置の、データ送信時における動作を示すフローチャートである。
【図９】本発明におけるテレビ会議画面の一例を示す図である。
【図１０】ＳＯＢＡが搭載された端末装置が通信ネットワークを介して接続されている状態を示す図である。
【図１１】（ａ）は、部品アプリケーションデータが通信ネットワーク上を流れる際のパケット構成を示す図であり、（ｂ）は、画面共有アプリケーションデータが通信ネットワーク上を流れる際のパケット構成を示す図であり、（ｃ）は、セッションコントロールデータが通信ネットワーク上を流れる際のパケット構成を示す図である。
【図１２】従来のクライアントサーバ型のネットワーク形態を用いた通信の様子を示す概略図である。
【符号の説明】
【０１６２】
１    テレビ会議システム
２・３・４・５    端末装置
６    中継サーバ
７    ネットワーク
８    通信部
９    入出力制御部
１０    キャッシュ制御部（一時記憶制御手段）
１１ａ・１１ｂ・１１ｃ・１２ａ・１２ｂ・１２ｃ    データ格納領域（データ格納部）
１３    映像再生部（再生手段）
１４    音声再生部（再生手段）
１５  テレビ会議ＧＵＩ
１６  カメラ
１７  マイク
１８  表示部
１９  操作部
２０  スピーカ
２１  記憶部
２２  映像・音声出力管理部
２３  映像・音声入力管理部
２４  入出力情報記憶部
【図１】
2008227968.tif 000003
【図２】
2008227968.tif 000004
【図３】
2008227968.tif 000005
【図４】
2008227968.tif 000006
【図５】
2008227968.tif 000007
【図６】
2008227968.tif 000008
【図７】
2008227968.tif 000009
【図８】
2008227968.tif 000010
【図９】
2008227968.tif 000011
【図１０】
2008227968.tif 000012
【図１１】
2008227968.tif 000013
【図１２】
2008227968.tif 000014