以下、本発明の実施の形態について説明する。
図1は、本発明の一実施の形態が適用された会議システムの概略図である。
図示するように、本実施の形態に係る会議システムは、管理サーバ1と、中継サーバ2と、複数のクライアント端末3と、GW4とが、LAN5を介して相互接続されて構成されている。
管理サーバ1は、クライアント端末3から会議の予約要求を、この会議に参加するクライアント端末3(参加端末と呼ぶ)の指定とともに受け付ける。そして、各参加端末に、この会議に参加する参加端末のリスト(予約情報)を通知する。
クライアント端末3は、管理サーバ1から通知されたリストから参加端末を少なくとも一つ選択し、選択した参加端末を送信元とする映像データの配信を中継サーバ2に要求する。また、中継サーバ2から他の各参加端末の音声および映像データを受信して、それぞれ合成し出力するとともに、中継サーバ2に音声および映像データを送信する。
中継サーバ2は、各参加端末から音声および映像データを収集する。そして、各参加端末に、他の参加端末の音声データを配信するとともに、映像配信要求元の参加端末に、その参加端末が要求した参加端末の映像データを配信する。
そして、GW4は、PBX(構内交換機)6をLAN5に接続するためのゲートウェイである。GW4は、管理サーバ1における会議の予約において、参加端末としての指定を受けることが可能である。参加端末として指定された場合、GW4は、PBX6の配下のアナログ電話機7およびIP電話機8を会議に参加させる。すなわち、PBX6から受信した音声データを中継サーバ2に送信するとともに、中継サーバ2から受信した各参加端末の音声データをPBX6に送信する。
以下、本実施の形態に係る会議システムを構成する各装置を詳細に説明する。
まず、管理サーバ1を説明する。
図2は、管理サーバ1の概略構成図である。
図示するように、管理サーバ1は、LANインターフェース部11と、端末情報記憶部12と、所属情報記憶部13と、予約情報記憶部14と、予約受付部15と、予約情報送信部16と、会議制御部17と、を有する。
LANインターフェース部11は、LAN5に接続するためのインターフェースである。
端末情報記憶部12には、会議に参加可能なクライアント端末3およびGW4の情報が記憶されている。図3は、端末情報記憶部12の登録内容例を模式的に表した図である。図示するように、端末情報記憶部12には、会議に参加可能なクライアント端末3およびGW4のそれぞれについてレコード1200が登録されている。
レコード1200は、対象となるクライアント端末3あるいはGW4の識別情報である端末IDが登録されたフィールド1201と、このクライアント端末3あるいはGW4のアドレスが登録されたフィールド1202と、このクライアント端末3あるいはGW4のアカウント名が登録されたフィールド1203と、このクライアント端末3あるいはGW4の属性が登録されたフィールド1204と、このクライアント端末3あるいはGW4が会議の際に取り扱うことのできるデータ種別(音声のみ、あるいは音声および映像)が登録されたフィールド1205と、このクライアント端末3あるいはGW4の会議画面上における表示枠の予約の可否が登録されたフィールド1206と、を有する。
ここで、属性は、例えば、クライアント端末3、あるいはGW4に接続されたPBX6配下のアナログ電話機7、IP電話機8のユーザの職位によって定められる。また、会議画面とは、各参加端末が表示する複数の表示枠からなる会議用の画面である。
所属情報記憶部13には、会議に参加可能なクライアント端末3およびGW4のユーザの所属に関する情報が記憶されている。図4は、所属情報記憶部13の登録内容例を模式的に表した図である。図示するように、所属情報記憶部13には、会議に参加可能なクライアント端末3およびGW4の端末ID1300が、階層構造を持つ所属情報1301〜1304に対応付けられて登録されている。
図4に示す例において、階層「2」1302の所属「B事業部」、「C事業部」は、その上位の階層である階層「1」1301の所属「A会社」に対応付けられている。階層「3」1303の所属「D課」、「E課」は、その上位の階層である階層「2」1302の所属「B事業部」に対応付けられている。そして、階層「3」1303の所属「F課」、「G課」は、その上位の階層である階層「2」1302の所属「C事業部」に対応付けられている。
また、図4に示す例において、端末ID「001」1300は、階層「2」1302において、その上位の階層である階層「1」1301の所属「A会社」に対応付けられて登録されている。端末ID「002」1300は、階層「3」1303において、その上位の階層である階層「2」1302の所属「B事業部」に対応付けられて登録されている。端末ID「003」1300は、階層「3」1303において、その上位の階層である階層「2」1302の所属「C事業部」に対応付けられて登録されている。端末ID「004」〜「024」1300は、階層「4」1304において、その上位の階層である階層「3」1303の所属「D課」に対応付けられて登録されている。端末ID「***」1300は、階層「4」1304において、その上位の階層である階層「3」1303の所属「E課」に対応付けられて登録されている。端末ID「025」〜「050」1300は、階層「4」1304において、その上位の階層である階層「3」1303の所属「F課」に対応付けられて登録されている。そして、端末ID「051」〜「060」1300は、階層「4」1304において、その上位の階層である階層「3」1303の所属「G課」に対応付けられて登録されている。
予約情報記憶部14には、予約された会議の情報が記憶される。図5は、予約情報記憶部14の登録内容例を模式的に表した図である。図示するように、予約情報記憶部14には、予約された会議に付与される識別情報である予約ID毎にテーブル140が登録される。
テーブル140には、会議の予約日時が登録されている。また、テーブル140には、このテーブル140の予約IDが付与されている会議の参加端末毎に、参加端末情報が格納されるレコード1400が登録されている。レコード1400は、参加端末の端末IDを登録するフィールド1401と、この参加端末のアドレスを登録するフィールド1402と、この参加端末のアカウント名を登録するフィールド1403と、この参加端末が会議の際に取り扱うことのできるデータ種別を登録するフィールド1404と、会議画面上におけるこの参加端末の表示枠が予約されている場合に、その予約枠を登録するフィールド1405と、を有する。
予約受付部15は、LANインターフェース部11を介して任意のクライアント端末3から会議の予約要求を受け付けた場合に、このクライアント端末3に所定の予約受付画面を表示し、この予約受付画面を介して会議の予約を受け付ける。そして、予約を受け付けた会議に予約IDを付与して、この予約IDに対応するテーブル140を予約情報記憶部14に追加し、参加端末に関するレコード1400をこのテーブル140に登録する。
図6は、予約受付画面の一例を示す図である。ここで、符号150は、予約受付部15がこの予約受付画面を介して予約を受け付ける会議に付与した予約IDである。また、符号151は会議の予約日時の入力欄、符号152は所属選択画面、符号153は参加端末選択画面、符号154は予約ボタン、そして符号155は取消ボタンである。
所属選択画面152には、所属情報記憶部13に記憶されている、階層構造を持つ所属情報1301〜1304が階層表示される。ここで、クライアント端末3のユーザが図示していないカーソルを操作して所望の所属を選択すると、予約受付部15は、所属情報記憶部13においてその所属の配下にあるすべてのクライアント端末3およびGW4のレコード1200を端末情報記憶部12から読み出す。そして、読み出したレコード1200に登録されている情報に基づいて、選択された所属の配下にあるすべてのクライアント端末3およびGW4の情報表示欄1530を参加端末選択画面153に表示する。
情報表示欄1530は、参加端末の選択欄1531と、アカウント名の表示欄1532と、データ種別の表示欄1533と、表示枠の選択欄1534と、を有する。参加端末の選択欄1531は、この情報表示欄1530により特定されるクライアント端末3あるいはGW4を参加端末として会議に参加させるか否かのチェックを受け付けるためのチェックボックスである。表示枠の選択欄1534は、例えばプルダウンメニューから表示枠の情報を選択することで、この情報表示欄1530により特定されるクライアント端末3の、会議画面上における表示枠を予約するためのものである。
ここで、会議画面を構成する各表示枠には、後述するように、予め優先順位が割り当てられており、「優先順位n](ただしnは自然数)とは、会議画面上においてn番目の優先順位を持つ表示枠を指す。
なお、予約受付部15は、端末情報記憶部12に記憶されているレコード1200において、フィールド1205に登録されているデータ種別が「音声」のみの場合、あるいはフィールド1206に登録されている予約可否が「不可」の場合、このレコード1200に対応する情報表示欄1530の表示枠の選択欄1534を無効にして、会議画面上の表示枠を選択できないようにしている。
また、予約受付部15は、端末情報記憶部12に記憶されているレコード1200において、フィールド1204に登録されているデータ属性が所定の属性である場合、この属性に予め対応付けられている表示枠が選択されたものとして、このレコード1200に対応する情報表示欄1530の表示枠の選択欄1534に、その表示枠の情報を表示する。
さて、図6において、クライアント端末3のユーザが図示していないカーソルを操作して取消ボタン155を選択すると、予約受付部15は、予約日時の入力欄151、所属選択画面152、および参加端末選択画面153の状態をクリアする。一方、ユーザが予約ボタン154を選択すると、予約受付部15は、予約ID150に対応するテーブル140を予約情報記憶部14に追加して、入力欄151の予約日時を登録する。また、選択欄1531にチェックが入れられた情報表示欄1530毎に、新たなレコード1400を、このテーブル140に登録する。そして、このレコード1400のフィールド1401〜1404に、この情報表示欄1530に対応する端末情報記憶部12のレコード1200のフィールド1201〜1203、1205の内容を登録するとともに、このレコード1400のフィールド1405に、この情報表示欄1530の選択欄1534で選択された表示枠の情報を登録する。
予約情報送信部16は、予約情報記憶部14にテーブル140が追加された場合に、このテーブル140に登録されているレコード1400により特定される参加端末各々に、このテーブル140の情報(予約ID、予約日時、参加端末情報のリスト)を含む予約情報を送信する。
そして、会議制御部17は、クライアント端末3およびGW4の会議への参加を制御する。
図7は、図2に示す管理サーバ1の動作を説明するためのフロー図である。
予約受付部15は、LANインターフェース部11を介してクライアント端末3から会議の予約要求を受信すると(S101でYES)、このクライアント端末3に、図6に示すような予約受付画面を表示する(S102)。そして、予約受付部15は、この予約受付画面を介して会議の予約を受け付けて、予約ID、予約日時、およびこの会議に参加する参加端末のレコード1400が登録されたテーブル140を、予約情報記憶部14に追加する(S103)。
次に、予約情報送信部16は、LANインターフェース部11を介して、予約情報記憶部14に追加されたテーブル140に登録されているレコード1400により特定される参加端末各々に、このテーブル140の情報(予約ID、予約日時、参加端末情報のリスト)を含む予約情報を送信する(S104)。
また、会議制御部17は、LANインターフェース部11を介してクライアント端末3あるいはGW4から、端末IDおよび予約IDの指定を伴う会議の参加要求を受信すると(S105でYES)、予約情報記憶部14を参照し、参加要求送信元が、この予約IDにより特定される会議の参加端末として登録されているか否かを調べる(S106)。具体的には、この予約IDに対応するテーブル140から、この端末IDおよび参加要求送信元のアドレスがフィールド1401、1402に登録されているレコード1400を検索する。
このようなレコード1400を検索できなかった場合(S106でNO)、この参加要求送信元は、この予約IDにより特定される会議の参加端末でない。この場合、会議制御部17は、LANインターフェース部11を介して参加要求送信元に、参加拒否応答を通知する(S110)。
一方、このようなレコード1400を検索できた場合(S106でYES)、会議制御部17は、この予約IDに対応するテーブル140に登録されている予約日時の時間帯に現在時刻が属しているか否かをさらに調べる(S107)。現在日時が予約日時の時間帯に属していない場合(S107でNO)、現在、この予約IDにより特定される会議は開催されてない。この場合、会議制御部17は、LANインターフェース部11を介して参加要求送信元に、参加拒否応答を通知する(S110)。
一方、現在日時が予約日時の時間帯に属している場合(S107でYES)、会議制御部17は、LANインターフェース部11を介して参加要求送信元に、中継サーバ2のアドレスの指定を伴う参加許可応答を通知する(S108)。それから、会議制御部17は、LANインターフェース部11を介して中継サーバ2に、予約IDおよび参加要求送信元のアドレスを通知して、この参加要求送信元に対する中継の開始を指示する(S109)。
また、会議制御部17は、LANインターフェース部11を介して参加端末から会議の離脱要求を受信すると(S111でYES)、この参加端末に応答を返すとともに、LANインターフェース部11を介して中継サーバ2に、この参加端末のアドレスおよびこの参加端末が参加している会議の予約IDを通知して、この参加端末に対する中継の終了を指示する(S112)。
次に、中継サーバ2を説明する。
図8は、中継サーバ2の概略構成図である。
図示するように、中継サーバ2は、LANインターフェース部21と、中継情報記憶部22と、音声バッファ部23と、映像バッファ部24と、指示受付部25と、音声中継部26と、発言検出部27と、映像中継部28と、を有する。
LANインターフェース部21は、LAN5に接続するためのインターフェースである。
中継情報記憶部22には、開催中の会議毎に参加端末の情報が記憶される。図9は、中継情報記憶部22の登録内容例を模式的に表した図である。図示するように、中継情報記憶部22には、開催中の会議に付与された予約ID毎にテーブル220が登録される。
テーブル220には、このテーブル220の予約IDが付与されている会議に参加中の参加端末毎にレコード2200が登録される。レコード2200は、参加端末のアドレスを登録するフィールド2201と、この参加端末に配信する映像の送信元端末(他の参加端末)のアドレスリストを登録するフィールド2202と、を有する。
音声バッファ部23には、開催中の会議に参加している参加端末から受信した音声データが参加端末毎にバッファリングされる。
映像バッファ部24は、開催中の会議に参加している参加端末のうち、映像データを取り扱うことが可能な参加端末(端末情報記憶部12のレコード1200のフィールド1205に登録されているデータ種別が「音声および映像」である参加端末)から受信した映像データが参加端末毎にバッファリングされる。
指示受付部25は、LANインターフェース部21を介して管理サーバ1から受信した中継開始および中継終了の指示に従い、あるいはLANインターフェース部21を介して参加端末から受信した後述の映像配信要求に従い、中継情報記憶部22を更新する。
音声中継部26は、参加端末間でやり取りされる音声データを中継する。図示するように、音声中継部26は、音声収集部261と、音声配信部262と、を有する。音声収集部261は、LANインターフェース部21を介して各参加端末から受信した音声データを、音声バッファ部23に参加端末毎にバッファリングする。音声配信部262は、LANインターフェース部21を介して各参加端末に、同じ会議に参加している他の参加端末の音声データを配信する。
発言検出部27は、音声収集部261が受信した参加端末の音声データの音声レベルが所定レベル以上であるか否かを判断することにより、この参加端末のユーザによる発言の有無を検出する。そして、発言の有無を示す発言有無情報(フラグ)を、この音声データに付加する。
映像中継部28は、参加端末間でやり取りされる映像データを中継する。図示するように、映像中継部28は、映像収集部281と、映像配信部282と、を有する。映像収集部281は、LANインターフェース部21を介して各参加端末から受信した映像データを、映像バッファ部24に参加端末毎にバッファリングする。映像配信部282は、LANインターフェース部21を介して映像データを取り扱うことが可能な各参加端末に、同じ会議に参加している他の参加端末のうち、対象の参加端末から映像配信を要求された参加端末の映像データを配信する。
図10は、図8に示す中継サーバ2の動作を説明するためのフロー図である。
指示受付部25は、LANインターフェース部21を介して管理サーバ1から、会議の中継開始あるいは中継終了の指示を受信すると(S201でYES)、この会議の予約IDに対応するテーブル220に、中継開始の対象となる参加端末のレコード2200を追加、あるいはこのテーブル220から中継終了の対象となる参加端末のレコード2200を削除する(S202)。
具体的には、管理サーバ1から中継開始の指示を受信したならば、この指示で指定されている予約IDに対応付けられて中継情報記憶部22に記憶されているテーブル220にレコード2200を追加して、そのフィールド2201に、この指示で指定されている参加要求送信元のアドレスを登録する。この指示で指定されている予約IDに対応するテーブル220が中継情報記憶部22に登録されていない場合は、この予約IDに対応するテーブル220を中継情報記憶部22に登録するとともに、このテーブル220にレコード2200を追加して、そのフィールド2201に、この指示で指定されている参加要求送信元のアドレスを登録する。
また、管理サーバ1から中継終了の指示を受信したならば、この指示で指定されている予約IDに対応付けられて中継情報記憶部22に記憶されているテーブル220から、この指示で指定されている離脱要求送信元のアドレスがフィールド2201に登録されたレコード2200を削除する。その結果、テーブル220にレコード2200が一つもない状態になったならば、このテーブル220を中継情報記憶部22から削除する。
また、指示受付部25は、LANインターフェース部21を介して参加端末から、後述の映像配信要求を受信すると(S203でYES)、この参加端末が参加している会議の予約IDに対応するテーブル220に登録されているこの参加端末のレコード2200を更新する(S204)。
具体的には、映像配信要求で指定されている予約IDに対応付けられて中継情報記憶部22に記憶されているテーブル220から、映像配信要求元のアドレスがフィールド2201に登録されているレコード2200を検索する。そして、このレコード2200のフィールド2202に登録されているアドレスリストを、この要求に含まれているアドレスリストに更新する。
また、音声収集部261は、LANインターフェース部21を介して参加端末から音声データを受信すると(S205でYES)、発言検出部27を用いてこの音声データに発言有無情報(フラグ)を付加し(S206)、それから、この音声データを音声バッファ部23に参加端末毎にバッファリングする(S207)。
また、映像収集部281は、LANインターフェース部21を介して参加端末から映像データを受信すると(S208でYES)、この映像データを映像バッファ部24に参加端末毎にバッファリングする(S209)。
また、定期的に到来する所定の配信タイミングになると(S210でYES)、音声配信部262は、LANインターフェース部21を介して各参加端末に、同じ会議に参加している他の参加端末の音声データを配信する(S211)。また、映像配信部282は、LANインターフェース部21を介して、映像データを取り扱うことが可能な各参加端末に、同じ会議に参加している他の参加端末のうち、対象の参加端末から映像配信を要求された参加端末の映像データを配信する(S212)。
具体的には、音声配信部262は、中継情報記憶部22に記憶されているテーブル220毎に次の処理を行う。すなわち、テーブル220に登録されたレコード2200により特定される各参加端末の音声データを音声バッファ部23から取り出して、それらの参加端末毎に、取り出した他の参加端末の音声データを複製する。そして、LANインターフェース部21を介して各参加端末に、他のすべての参加端末(合計で参加端末数−1)の音声データを配信する。
また、映像配信部282は、中継情報記憶部22に記憶されているテーブル220毎に次の処理を行う。すなわち、テーブル220に登録されたレコード2200により特定される参加端末のうち、映像バッファ部24に映像データが格納されている各参加端末の映像データを、映像バッファ部24から取り出す。次に、フィールド2202にアドレスリストが登録されているレコード2200毎に、このアドレスリストにアドレスが掲載されている各参加端末の映像データを複製し、LANインターフェース部21を介して、このレコード2200のフィールド2201に登録されたアドレスにより特定される参加端末に、このアドレスリストにアドレスが登録された各参加端末の映像データを配信する。
次に、クライアント端末3を説明する。
図11は、クライアント端末3の概略構成図である。
図示するように、クライアント端末3は、LANインターフェース部301と、音声入出力部302と、映像入出力部303と、操作受付部304と、音声処理部305と、映像処理部306と、音声合成部307と、映像合成部308と、予約情報記憶部309と、発言情報記憶部310と、会議画面構成情報記憶部311と、アプリケーション処理部312と、主制御部313と、を有する。
LANインターフェース部301は、LAN5に接続するためのインターフェースである。
音声入出力部302は、音声を入出力するためのものであり、マイクおよびスピーカを備える。
映像入出力部303は、映像を入出力するためのものであり、カメラおよびディスプレイを備える。
操作受付部304は、ユーザから各種操作を受け付けるためのものであり、マウス、キーボードなどを備える。
音声処理部305は、音声の符号化および復号を行うコーデックであり、音声入出力部302のマイクで集音された音声信号を音声データに符号化し、この音声データを主制御部313に送るとともに、主制御部313から受け取った音声データを音声信号に復号し、この音声信号を音声入出力部302のスピーカから出力する。
映像処理部306は、映像の符号化および復号を行うコーデックであり、映像入出力部303のカメラで撮像された映像信号を映像データに符号化し、この映像データを主制御部313に送るとともに、主制御部313から受け取った映像データを映像信号に復号し、この映像信号を映像入出力部303のディスプレイに表示する。
音声合成部307は、主制御部313から受け取った複数の参加端末の音声データを合成して、会議音声用の音声データを生成する。
映像合成部308は、主制御部313の指示に従い、主制御部313から受け取った複数の参加端末の映像データを合成して、会議画面用の映像データを生成する。
予約情報記憶部309には、主制御部313から受け取った予約情報、つまり自クライアント端末3が参加する会議の予約情報(図5に示すテーブル220に登録されている情報)が記憶される。
発言情報記憶部310には、自クライアント端末3と同じ会議に参加している参加端末(予約情報記憶部309に記憶された予約情報に登録されている端末IDの参加端末)毎に、この参加端末から受信した、発言有無情報が「発言あり」である音声データの最新の送信時刻(あるいは受信時刻)が発言時刻として登録される。
会議画面情報記憶部311には、映像入出力部303のディスプレイに表示する会議画面の構成情報が記憶される。
図12(A)は、会議画面の構成情報によって構成される標準会議画面3110の一例を示す図である。図示するように、標準会議画面3110は、複数の表示枠3112で構成される。各表示枠3112には優先順位が割り当てられており、図12(A)に示す例では、同じラインであれば左側ほど優先順位が高く、かつ同じコラムであれば上側ほど優先順位が高くなるように、各表示枠3112に優先順位が割り当てられている。なお、後述するように、標準会議画面3110上のどの位置にどの優先順位の表示枠3112を配置するかは、クライアント端末3のユーザ各々が自由に設定可能である。
図12(B)は、会議画面の構成情報によって構成されるクローズアップ用会議画面3111の一例を示す図である。図示するように、クローズアップ用会議画面3111は、複数の表示枠3112および表示枠3112より大きいエリアが割り当てられたクローズアップ表示枠3113で構成される。各表示枠3112には優先順位が割り当てられており、図12(B)に示す例では、同じラインであれば左側ほど優先順位が高く、かつ同じコラムであれば上側ほど優先順位が高くなるように、各表示枠3112に優先順位が割り当てられている。なお、後述するように、クローズアップ用会議画面3111上のどの位置にどの優先順位の表示枠3112を配置するかは、クライアント端末3のユーザ各々が自由に設定可能である。
アプリケーション処理部312は、主制御部313の指示に従い、プレゼンテーション用プログラム等の所定のアプリケーションを処理する。
そして、主制御部313は、自クライアント端末3の各部301〜312を統括的に制御する。
図13は、図11に示すクライアント端末3の動作を説明するためのフロー図である。
主制御部313は、操作受付部304を介して、自クライアント端末3のユーザより会議予約の指示を受け付けると(S301でYES)、LANインターフェース部301を介して管理サーバ1に会議の予約要求を送信する(S302)。そして、主制御部313は、LANインターフェース部301を介して管理サーバ1から予約受付画面のデータを受信し、映像処理部306を介して映像入出力部303のディスプレイに、図6に示すような予約受付画面を表示する(S303)。自クライアント端末3ユーザが、操作受付部304を操作して、映像入出力部303のディスプレイに表示された予約受付画面の各項目に情報を入力し、予約ボタン154をクリックすると、主制御部313は、これらの入力情報を管理サーバ1に送信する(S304)。
また、主制御部313は、LANインターフェース部301を介して管理サーバ1から予約情報を受信すると(S306でYES)、この予約情報を予約情報記憶部309に記憶する(S307)。
また、主制御部313は、操作受付部304を介して、自クライアント端末3のユーザより会議参加の指示を受け付けると(S308でYES)、映像入出力部303のディスプレイに、予約情報記憶部309に記憶されている予約情報を表示して、ユーザから、参加する会議の予約IDの指定を受け付ける(S309)。それから、主制御部313は、LANインターフェース部301を介して管理サーバ1に、自クライアント端末3の端末IDおよび予約IDの指定を伴う会議の参加要求を送信する(S310)。
その後、主制御部313は、LANインターフェース部301を介して管理サーバ1から、参加要求に対する応答を受信したならば、この応答が参加許可応答であるか否かを判断する(S311)。参加許可応答ならば(S311でYES)、後述の会議制御処理を実施する(S312)。一方、参加拒否応答ならば(S311でNO)、主制御部313は、映像入出力部303のディスプレイに、会議に参加できない旨のメッセージを表示するなどの所定のエラー処理を実施する(S313)。
図14は、図13に示す会議制御処理S312を説明するためのフロー図である。
主制御部313は、LANインターフェース部301を介して、参加許可応答によりアドレスが通知された中継サーバ2に、自クライアント端末3が映像データの配信を要求する参加端末のアドレスリストを含む映像配信要求を送信する(S31201)。
ここで、映像配信要求に含めるアドレスリストは次のようにして決定する。
まず、標準会議画面3110を構成する表示枠3112の枠数をnとする(図12(A)参照)。参加している会議の予約IDに対応付けられて予約情報記憶部309に登録されている予約情報において、表示枠が予約されている参加端末のアドレスをアドレスリストに含める。次に、表示枠が予約されている参加端末の端末数をmとする。発言情報記憶部310に登録されている発言時刻が新しい参加端末から順番に(n−m)台の参加端末を選択して、これらの参加端末のアドレスをアドレスリストに含める。なお、発言情報記憶部310に発言時刻が登録されている参加端末が(n−m)台未満である場合は、アドレスリストにアドレスを含ませる残り参加端末を、この予約情報に登録されている自クライアント端末3以外の参加端末から任意(たとえば予約情報への登録順)に選択する。
その後、主制御部313は、自クライアント端末3の各部301〜312を制御して、中継サーバ2と音声および映像データを送受する(S31202〜S31208)。
具体的には、主制御部313は、音声入出力部302のマイクで集音され、音声処理部305で音声信号から変換された音声データを、LANインターフェース部301を介して中継サーバ2に送信する。同様に、主制御部313は、映像入出力部303のカメラで撮像され、映像処理部306で映像信号から変換された映像データを、LANインターフェース部301を介して中継サーバ2に送信する。なお、送信対象の映像データとして、すべての参加端末のクローズアップ用会議画面3111のクローズアップ表示枠3113に表示すべき共有アプリケーション画面データが指定されている場合、主制御部313は、アプリケーション処理部312が生成するアプリケーション画面の映像データを、それが共有アプリケーション画面データであることを示す情報を付加してLANインターフェース部301から中継サーバ2に送信する(S31202)。
また、主制御部313は、LANインターフェース部301を介して中継サーバ2から、同じ会議に参加している他のすべての参加端末の音声データを受信して(S31203)、各参加端末の音声データに付加されている発言有無情報に従い、発言情報記憶部310に登録されている発言時刻を更新する(S31204)。また、主制御部313は、各参加端末の音声データを音声合成部307で合成して会議音声用の音声データを生成し、この会議音声用の音声データを音声処理部305で音声信号に変換して、音声入出力部302のスピーカから出力する(S31205)。
また、主制御部313は、LANインターフェース部301を介して中継サーバ2から、映像配信要求のアドレスリストに記述した各参加端末の映像データを受信して(S31206)、予約情報記憶部309に記憶された予約情報、発言情報記憶部310に登録された各参加端末の発言時刻、および会議画面情報記憶部311に記憶された会議画面の構成情報に基づいて、会議画面における各参加端末の映像データの配置を決定する(S31207)。
具体的には、操作受付部304を介してユーザにより標準会議画面3110の表示が選択されている場合、主制御部313は、まず、予約情報記憶部309に記憶された予約情報において、表示枠3112が予約されている参加端末の映像データを、標準会議画面3110上のその予約された表示枠3112に割り当てる。次に、標準会議画面3110上に残りの表示枠3112があるならば、予約情報記憶部309に記憶された予約情報において、表示枠3112が予約されていない参加端末の映像データを、発言情報記憶部310に登録されている発言時刻が新しいものほど高い優先順位となるように残りの表示枠3112に割り当てる。
また、操作受付部304を介してユーザによりクローズアップ用会議画面3111の表示が選択されている場合、主制御部313は、まず、共有アプリケーション画面データであることを示す情報が付加されている映像データを、クローズアップ用会議画面3111上のクローズアップ表示枠3113に割り当てる。次に、予約情報記憶部309に記憶された予約情報において、表示枠3112が予約されている参加端末の映像データを、クローズアップ用会議画面3111上のその予約された表示枠3112に割り当てる。次に、クローズアップ会議画面3111上に残りの表示枠3112があるならば、予約情報記憶部309に記憶された予約情報において、表示枠3112が予約されていない参加端末の映像データを、発言情報記憶部310に登録された発言時刻の新しいものほど高い優先順位となるように残りの表示枠3112に割り当てる。
次に、主制御部313は、会議画面に表示する各参加端末の映像データを、映像処理部306で、決定された会議画面上の配置に従って合成して会議画面用の映像データを生成し、この会議画面用の映像データを映像処理部306で映像信号に変換して映像入出力部303のディスプレイに表示する(S31208)。
図15(A)は、標準会議画面3110の表示例を示す図である。この例では、図12(A)の標準会議画面3110において、優先順位1〜3の表示枠3112に、アカウント名「CLIENT01」、「CLIENT02」、「CLIENT03」の参加端末の映像データが割り当てられ、残りの優先順位4〜9の表示枠3112に、カウント名「CLIENT05」、「CLIENT06」、「CLIENT08」、「CLIENT15」、「CLIENT10」、「CLIENT24」の参加端末の映像データが、発言の新しい順に割り当てられている。
図15(B)は、クローズアップ用会議画面3111の表示例を示す図である。この例では、図12(B)のクローズアップ用会議画面3111において、クローズアップ表示枠3113に、アカウント名「CLIENT06」の参加端末の映像データ(共有アプリケーション画面データ)が割り当てられ、優先順位1〜3の表示枠3112に、アカウント名「CLIENT01」、「CLIENT02」、「CLIENT03」の参加端末の映像データが割り当てられ、残りの優先順位4、5の表示枠3112に、カウント名「CLIENT05」、「CLIENT06」の参加端末の映像データが、発言の新しい順に割り当てられている。
さて、上述の処理(S31202〜S31208)の最中に、発言情報記憶部310に登録されている発言時刻の新しい参加端末の順番が変更されたならば(S31209でYES)、主制御部313は、上述のS31201と同様の要領により、LANインターフェース部301を介して中継サーバ2に、自クライアント端末3が映像データの配信を要求する参加端末のアドレスリストを含む映像配信要求を送信する(S31210)。
また、映像入出力部303のディスプレイに表示中の標準会議画面3110あるいはクローズアップ用会議画面3111において、操作受付部304を介してユーザより2つの表示枠3112が選択され、その位置の入替えが指示されたならば(S31211でYES)、主制御部313は、標準会議画面3110あるいはクローズアップ用会議画面3111において、選択された2つの表示枠3112の位置が入れ替わるように、会議画面情報記憶部311に記憶されている標準会議画面3110あるいはクローズアップ用会議画面3111の構成情報を更新する(S31212)。
また、主制御部313は、操作受付部304を介してユーザより、アプリケーション画面の共有指示がなされているならば(S31213でYES)、送信対象の映像データを、アプリケーション処理部312が生成するアプリケーション画面の映像データに変更する(S31214)。
また、主制御部313は、操作受付部304を介してユーザより、会議からの離脱指示を受け付けたならば(S31215でYES)、LANインターフェース部301を介して管理サーバ1に、会議の離脱要求を送信する(S31216)。
次に、GW4を説明する。
図16は、GW4の概略構成図である。
図示するように、GW4は、LANインターフェース部41と、PBXインターフェース部42と、予約情報記憶部43と、上り中継部44と、下り中継部45と、主制御部46と、を有する。
LANインターフェース部41は、LAN5に接続するためのインターフェースである。
PBXインターフェース部42は、PBX6に接続するためのインターフェースである。
予約情報記憶部43には、主制御部46から受け取った予約情報、つまり自GW4が参加する会議の予約情報(図5に示すテーブル220に登録された情報)が記憶される。
上り中継部44は、主制御部46の指示に従い、PBXインターフェース部42を介してPBX6から受信した音声データを、LANインターフェース部41を介して中継サーバ2に送信する。
下り中継部45は、主制御部46の指示に従い、LANインターフェース部41を介してLAN5から受け取った複数の参加端末の音声データを合成して会議音声用の音声データを生成し、この会議音声用の音声データを、PBXインターフェース部42を介してPBX6に送信する。
そして、主制御部46は、自GW4の各部41〜45を統括的に制御する。
図17は、図16に示すGW4の動作を説明するためのフロー図である。
主制御部46は、LANインターフェース部41を介して管理サーバ1から予約情報を受信すると(S401でYES)、この予約情報を予約情報記憶部43に記憶する(S402)。
また、主制御部46は、PBXインターフェース部42を介してPBX6より接続要求を受信すると(S403でYES)、自GW4の端末IDおよび予約情報記憶部43に記憶された予約情報の予約IDの指定を伴う会議の参加要求を送信する(S404)。その後、主制御部46は、LANインターフェース部41を介して管理サーバ1から、参加要求に対する応答を受信したならば、この応答が参加許可応答であるか否かを判断する(S405)。
管理サーバ1から受信した応答が参加許可応答ならば(S405でYES)、PBXインターフェース部42を介してPBX6に接続応答を返信する(S406)。それから、主制御部46は、上り中継部44および下り中継部45を制御して、参加許可応答で指定された中継サーバ2とPBX6との間の音声データの中継処理を開始する(S407)。これにより、上り中継部44は、PBXインターフェース部42を介してPBX6から受信した音声データを、LANインターフェース部41を介して中継サーバ2に送信する。また、下り中継部45は、LANインターフェース部41を介してLAN5から受け取った複数の参加端末の音声データを合成して会議音声用の音声データを生成し、この会議音声用の音声データを、PBXインターフェース部42を介してPBX6に送信する。
一方、管理サーバ1から受信した応答が参加拒否応答であるならば(S405でNO)、PBXインターフェース部42を介してPBX6にBUSY信号を返信するなどの所定のエラー処理を実施する(S408)。
また、主制御部46は、PBXインターフェース部42を介してPBX6より切断要求を受信すると(S409でYES)、自GW4の端末IDおよび予約情報記憶部43に記憶された予約情報の予約IDの指定を伴う会議の離脱要求を送信する(S410)。また、主制御部46は、PBXインターフェース部42を介してPBX6に切断応答を返信する(S411)。それから、主制御部46は、上り中継部44および下り中継部45を制御して、中継サーバ2とPBX6との間の音声データの中継処理を終了する(S412)。
次に、本実施の形態が適用された会議システムの動作例を説明する。
図18および図19は、図1に示す会議システムの動作例を説明するためのシーケンス図である。ここでは、端末ID[001]のクライアント端末3、端末ID[002]のクライアント端末3、およびGW4に接続されたPBX6配下のアナログ電話機7あるいはIP電話機8間において、会議が実施される場合の動作例を示している。
まず、端末ID[001]のクライアント端末3は、ユーザから会議予約の指示を受け付けると(S501)、管理サーバ1に会議の予約要求を送信する(S502)。これを受けて、管理サーバ1は、端末ID[001]のクライアント端末3に、図6に示すような予約受付画面を表示して(S503)、会議の予約を受け付ける(S504)。それから、管理サーバ1は、予約された会議の予約情報を、この会議に参加する端末ID[001]のクライアント端末3、端末ID[002]のクライアント端末3、およびGW4に送信する(S505)。
次に、端末ID[001]のクライアント端末3は、予約された会議の開始時間が到来し、ユーザから会議参加の指示を受け付けると(S506)、管理サーバ1に会議の参加要求を送信する(S507)。これを受けて、管理サーバ1は、端末ID[001]のクライアント端末3に、中継サーバ2のアドレスの指定を伴う参加許可応答を返信するとともに(S508)、中継サーバ2に、端末ID[001]のクライアント端末3のアドレスを伴う中継開始指示を送信する(S509)。また、端末ID[001]のクライアント端末3は、中継サーバ2に、配信を要求する映像データの送信元のアドレスリストを含む映像配信要求を送信する(S510)。
これにより、端末ID[001]のクライアント端末3は、音声データを中継サーバ2に送信するとともに、自クライアント端末3以外の各参加端末の音声データを中継サーバ2から受信し、これらを合成して会議音声用の音声データを生成し出力する(S511)。また、端末ID[001]のクライアント端末3は、映像データを中継サーバ2に送信するとともに、映像配信要求のアドレスリストに記述された参加端末の映像データを中継サーバ2から受信し、これらを合成して図15(A)、(B)に示すような会議画面用の映像データを生成し表示する(S512)。
同様に、端末ID[002]のクライアント端末3は、予約された会議の開始時間が到来し、ユーザから会議参加の指示を受け付けると(S513)、管理サーバ1に会議の参加要求を送信する(S514)。これを受けて、管理サーバ1は、端末ID[002]のクライアント端末3に、中継サーバ2のアドレスの指定を伴う参加許可応答を返信するとともに(S515)、端末ID[002]のクライアント端末3のアドレスを伴う中継開始指示を中継サーバ2に送信する(S516)。また、端末ID[002]のクライアント端末3は、配信を要求する映像データの送信元のアドレスリストを含む映像配信要求を中継サーバ2に送信する(S517)。
これにより、端末ID[002]のクライアント端末3は、音声データを中継サーバ2に送信するとともに、自クライアント端末3以外の各参加端末の音声データを中継サーバ2から受信し、これらを合成して会議音声用の音声データを生成し出力する(S518)。また、端末ID[002]のクライアント端末3は、映像データを中継サーバ2に送信するとともに、映像配信要求のアドレスリストに記述された参加端末の映像データを中継サーバ2から受信し、これらを合成して図15(A)、(B)に示すような会議画面用の映像データを生成し表示する(S519)。
また、GW4は、予約された会議の開始時間が到来し、PBX6から接続要求を受信すると(S520)、管理サーバ1に会議の参加要求を送信する(S521)。これを受けて、管理サーバ1は、中継サーバ2のアドレスの指定を伴う参加許可応答をGW4に返信するとともに(S522)、GW4のアドレスを伴う中継開始指示を中継サーバ2に送信する(S524)。また、GW4は、PBX6に接続応答を返信する(S523)。
これにより、GW4は、PBX6から受信した音声データを中継サーバ2に送信するとともに、自クライアント端末3以外の各参加端末の音声データを中継サーバ2から受信し、これらを合成して会議音声用の音声データを生成する。そして、この会議音声用の音声データをPBX6に送信する(S525、S526)。なお、GW4は、中継サーバ2に映像配信要求を送信しない。このため、中継サーバ2からGW4に映像データの配信は行われない。
さて、端末ID[001]のクライアント端末3は、会議からの離脱指示をユーザから受け付けると(S531)、管理サーバ1に会議の離脱要求を送信する(S532)。これを受けて、管理サーバ1は、端末ID[001]のクライアント端末3に離脱許可応答を返信するとともに(S533)、中継サーバ2に、端末ID[001]のクライアント端末3のアドレスを伴う中継終了指示を送信する(S534)。これにより、中継サーバ2は、端末ID[001]のクライアント端末3との間の音声および映像データの送受を終了する。
同様に、端末ID[002]のクライアント端末3は、会議からの離脱指示をユーザから受け付けると(S535)、管理サーバ1に会議の離脱要求を送信する(S536)。これを受けて、管理サーバ1は、端末ID[002]のクライアント端末3に離脱許可応答を返信するとともに(S537)、中継サーバ2に、端末ID[002]のクライアント端末3のアドレスを伴う中継終了指示を送信する(S538)。これにより、中継サーバ2は、端末ID[002]のクライアント端末3との間の音声および映像データの送受を終了する。
また、GW4は、PBX6から切断要求を受信すると(S539)、管理サーバ1に会議の離脱要求を送信する(S540)。これを受けて、管理サーバ1は、GW4に離脱許可応答を返信するとともに(S541)、中継サーバ2に、GW4のアドレスを伴う中継終了指示を送信する(S543)。また、GW4は、PBX6に切断応答を送信する(S542)。これにより、中継サーバ2は、GW4との間の音声データの送受を終了する。
以上、本発明の一実施の形態を説明した。
本実施の形態において、管理サーバ1は、会議に参加する参加端末としてクライアント端末3の指定を、表示枠3112の予約の有無とともに受け付けて、各参加端末に、すべての参加端末の端末IDおよび表示枠3112の予約の有無を含む予約情報を送信する。
また、中継サーバ2は、各参加端末から音声および映像データを収集して、各参加端末に他の参加端末の音声データを配信するとともに、映像配信要求元の参加端末に、映像配信要求元の参加端末より受信した映像配信要求で指定されている参加端末の映像データを配信する。
また、クライアント端末3は、管理サーバ1から受信した予約情報に含まれている端末IDにより特定される少なくとも一つの参加端末の映像データの配信を中継サーバ2に要求する。また、中継サーバ2から各参加端末の音声および映像データを受信してそれぞれ合成し出力するとともに、中継サーバ2に音声および映像データを送信する。この際、予約情報において表示枠3112が予約されている参加端末の映像データが、会議画面3110、3111上の予約された表示枠3112内に表示されるように、中継サーバ2から受信した各参加端末の映像データを合成する。
したがって、本実施の形態によれば、クライアント端末3が音声および映像データの合成処理を実施するので、中継サーバ2の負荷を軽減することができる。また、会議の予約者が、各参加端末に、所望の参加端末の映像データを会議画面3110、3111上の所望の表示枠3112に表示させるよう設定することができる。
また、本実施の形態において、クライアント端末3は、表示枠3112が予約されていない参加端末の映像データが、参加端末の音声データの音声レベルにより特定される発言の新しい順番で、会議画面3110、3111上の予約されていない表示枠3112に表示されるように、中継サーバ2から受信した各参加端末の映像データを合成する。
したがって、本実施の形態によれば、各参加端末に、会議で積極的に発言しているユーザの参加端末の映像を、優先的に表示させることができる。
また、本実施の形態において、クライアント端末3は、表示枠3112が予約されている参加端末のアドレスと、表示枠3112が予約されていない残りの参加端末のうち、参加端末の音声データの音声レベルにより特定される発言の新しい順番で、会議画面3110、3111の表示枠3112の全表示枠数から予約済みの表示枠数を差し引いた数に対応する順番までの参加端末のアドレスとが、アドレスリストに記述された映像配信要求を、中継サーバ2に送信する。
したがって、本実施の形態によれば、クライアント端末3で表示される可能性の低い参加端末の映像データが、中継サーバ2からこのクライアント端末3に送信されるのを防止することができ、これによりLAN5上におけるトラヒックの発生を低減できる。
また、本実施の形態において、管理サーバ1は、参加端末として、所定の属性がフィールド1204に登録されているレコード1200に対応するクライアント端末3の指定を受け付ける場合に、予めこの属性に対応付けられている表示枠3112が予約されたものとして取り扱うようにしている。
したがって、本実施の形態によれば、各参加端末に、所定の属性を有する参加端末の映像データを会議画面3110、3111上の所定の表示枠3112に表示させるよう設定することができる。
また、本実施の形態において、管理サーバ1は、参加端末として、予約可否「不可」がフィールド1204に登録されているレコード1200に対応するクライアント端末3の指定を受け付ける場合に、このクライアント端末3に対して表示枠3112の予約の受け付けを無効にしている。
したがって、本実施の形態によれば、クライアント端末3毎に、表示枠3112の予約の可否を設定することができる。
また、本実施の形態において、クライアント端末3は、会議画面3110、3111上の位置を入れ替える二つの表示枠3112の指定を伴う入替え指示をユーザから受け付けた場合に、この二つの表示枠3112の会議画面3110、3112上の位置を入れ替えて、中継サーバ2から受信した各参加端末の映像データを合成する。
したがって、本実施の形態によれば、クライアント端末3毎に、会議画面3110、3111をカスタマイズすることができる。
また、本実施の形態において、クライアント端末3は、アプリケーション画面の共有指示を受け付けた場合に、このアプリケーション画面の表示データを映像データとして、それが共有アプリケーション画面データであることを示す情報を付加して、中継サーバ2に送信する。また、クライアント端末3は、共有アプリケーション画面データであることを示す情報が付加されている映像データを受信している場合に、クローズアップ用会議画面3111において、この映像データがクローズアップ表示枠3113に表示されるように各参加端末の映像データを合成する。
したがって、本実施の形態によれば、アプリケーションの表示データを参加端末間で共有することができる。
また、本実施の形態において、管理サーバ1は、参加端末としてGW4の指定を受け付ける場合、表示枠3112の予約受付を不可としている。また、GW4は、PBX6から音声データを受信して中継サーバ2に送信するとともに、中継サーバ2から、自GW4以外の参加端末各々の音声データを受信して合成し、PBX6に送信する。
したがって、本実施の形態によれば、映像を取り扱うことのできない既存のアナログ電話機7やIP電話機8を会議に参加させることができる。
なお、本発明は上記の実施の形態に限定されるものではなく、その要旨の範囲内で数々の変形が可能である。
例えば、上記の実施の形態において、クライアント端末3は、操作受付部304を介してユーザより受け付けた指示に従い、会議画面情報記憶部311に記憶されている構成情報により特定される会議画面3110、3111を構成する表示枠3112の枠数を変更できるようにしてもよい。
また、上記の実施の形態において、管理サーバ1は、いずれかのクライアント端末3あるいはGW4から会議の参加要求を受信した場合に、他の参加端末に会議の開催を通知して呼び出すようにしてもよい。
また、上記の実施の形態では、中継サーバ2が各参加端末の音声データに発言有無情報を付加している。しかし、本発明はこれに限定されない。各参加端末が、中継サーバ2から受信した自参加端末以外の参加端末各々の音声データの音声レベルを調べて、これらの音声データに発言有無情報を付加するようにしてもよい。
また、上記の実施の形態において、図2に示す管理サーバ1、図8に示す中継サーバ2、図11に示すクライアント端末3、および図16に示すGW4は、ASIC(Application Specific Integrated Circuit)、FPGA(Field Programmable Gate Array)などの集積ロジックICによりハード的に実現されるものでもよいし、あるいはDSP(Digital Signal Processor)などの計算機によりソフトウエア的に実現されるものでもよい。または、CPU、メモリ、HDD、DVD−ROM等の補助記憶装置、およびNIC(Network Interface Card)、モデム等の通信インターフェース(クライアント端末3は、これらに加えてマイク、スピーカ等の音声入出力装置、カメラ、ディスプレイ等の映像入出力装置、およびキーボード、マウス等の入力装置)を備えたPC(Personal Computer)等の汎用コンピュータにおいて、CPUが所定のプログラムを補助記憶装置からメモリ上にロードして実行することで実現されるものでもよい。