(57)【要約】【課題】複数のユーザが同時に発言を行っているときであっても、発言を行っているユーザと発言を行っていないユーザを容易に特定することができるようにする。【解決手段】カンファレンスの参加者の端末であるユーザ端末１−２と１−３から送信されてくる音声データなどに基づいて、ユーザ端末１−１により、発言を開始したユーザや発言を終了したユーザが検出される。同時に発言を行うユーザの構成が変わったとき、発言を行っているユーザを識別する識別情報を含む制御情報がユーザ端末１−１からユーザ端末１−２と１−３に送信される。ユーザ端末１−２と１−３においては、制御情報に基づいて発言を行っているユーザが特定され、発言を行っているユーザの情報と発言を行っていないユーザの情報が異なる形式で表示される。本発明はVoIPによる音声会話を行うことができる装置に適用することができる。【選択図】図１
2007288255.tif 000002
【特許請求の範囲】
【請求項１】
ネットワークを介して接続される、情報管理装置と複数の情報処理装置からなる通信システムにおいて、
前記情報管理装置は、
所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段と、
複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段と、
前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段と
を備え、
複数の前記情報処理装置は、それぞれ、
前記情報管理装置から送信されてきた前記制御情報を取得する取得手段と、
前記取得手段により前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させる表示制御手段と
を備える通信システム。
【請求項２】
複数の情報処理装置とネットワークを介して接続される情報管理装置において、
所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段と、
複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段と、
前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段と
を備える情報管理装置。
【請求項３】
前記制御情報はRTCPパケットであり、前記第１の識別情報は、RTCPパケットに記述されるCSRCである
請求項２に記載の情報管理装置。
【請求項４】
前記第２の識別情報は、SDES ITEMとしてSDESタイプのRTCPパケットに記述される情報である
請求項３に記載の情報管理装置。
【請求項５】
複数の情報処理装置とネットワークを介して接続される情報管理装置の情報処理方法において、
所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせ、
複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出し、
ユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する
ステップを含む情報処理方法。
【請求項６】
複数の情報処理装置とネットワークを介して接続される情報管理装置の情報処理をコンピュータに実行させるプログラムにおいて、
所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせ、
複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出し、
ユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する
ステップを含むプログラム。
【請求項７】
所定の情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段と、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段と、前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段とを備える情報管理装置に、他の情報処理装置とともにネットワークを介して接続される情報処理装置において、
前記情報管理装置から送信されてきた前記制御情報を取得する取得手段と、
前記取得手段により前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させる表示制御手段と
を備える情報処理装置。
【請求項８】
所定の情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段と、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段と、前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段とを備える情報管理装置に、他の情報処理装置とともにネットワークを介して接続される情報処理装置の情報処理方法において、
前記情報管理装置から送信されてきた前記制御情報を取得し、
前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させる
ステップを含む情報処理方法。
【請求項９】
所定の情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段と、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段と、前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段とを備える情報管理装置に、他の情報処理装置とともにネットワークを介して接続される情報処理装置の情報処理をコンピュータに実行させるプログラムにおいて、
前記情報管理装置から送信されてきた前記制御情報を取得し、
前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させる
ステップを含むプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、通信システム、情報管理装置、情報処理装置、情報処理方法、およびプログラムに関し、特に、複数のユーザが同時に発言を行っているときであっても、それぞれの情報処理装置が、発言を行っているユーザと発言を行っていないユーザを情報管理装置から送信されてくる情報に基づいて容易に特定することができるようにした通信システム、情報管理装置、情報処理装置、情報処理方法、およびプログラムに関する。
【背景技術】
【０００２】
近年、IP(Internet Protocol)ネットワークを利用した、VoIP(Voice over IP)による会話サービスが普及し始めている。VoIPによる会話サービスを利用することによって、ユーザは、パーソナルコンピュータなどに接続したハンドセット（通話機）を使って、電話回線を利用した電話機を使う場合と同じように、離れた場所にいる知人などと音声による会話を行うことができる。
【０００３】
特許文献１には、ビデオ会議システムを構成する装置間で送受信される音声データにユーザに関する情報を多重化し、そのユーザに関する情報に基づいて、同時に伝送される画像をそれぞれの装置に表示させる技術が開示されている。この技術によっては、話者の名前や顔の画像などがそれぞれの装置により表示される。
【特許文献１】特開平１１−１７７９５２号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
ところで、VoIPによる会話のモードとして、３人以上のユーザが同時に会話に参加することのできるカンファレンスモードがある。カンファレンスモードにおいては、カンファレンス（会議）を主催するユーザの端末やサーバが、カンファレンスに参加するユーザの端末によって取り込まれた音声を合成し、合成して得られた音声をそれぞれの端末に送信して出力させることによって複数のユーザの間で会話が実現される。
【０００５】
このようなカンファレンスモードで会話が行われている場合、それがP to P（peer-to-pee）の会話であるときには互いに相手を特定することができるので問題はないが、３人以上のユーザによって会話が行われており、しかも複数のユーザにより同時に発言が行われたとき、VoIPによる会話サービスにおいてはテレビ会議のように会話を行っている相手の顔を見ることができないことなどもあって、それが、どのユーザによって行われたものであるのかが分かりづらいことがある。このことを解決する方法については、上述した特許文献１にも開示されていない。
【０００６】
本発明はこのような状況に鑑みてなされたものであり、複数のユーザが同時に発言を行っているときであっても、それぞれの情報処理装置が、発言を行っているユーザと発言を行っていないユーザを情報管理装置から送信されてくる情報に基づいて容易に特定することができるようにするものである。
【課題を解決するための手段】
【０００７】
本発明の第１の側面の通信システムは、ネットワークを介して接続される、情報管理装置と複数の情報処理装置からなる。このうちの前記情報管理装置は、所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段と、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段と、前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段とを備え、複数の前記情報処理装置は、それぞれ、前記情報管理装置から送信されてきた前記制御情報を取得する取得手段と、前記取得手段により前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させる表示制御手段とを備える。
【０００８】
本発明の第２の側面の情報管理装置は、複数の情報処理装置とネットワークを介して接続される情報管理装置において、所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段と、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段と、前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段とを備える。
【０００９】
前記制御情報をRTCPパケットとし、前記第１の識別情報を、RTCPパケットに記述されるCSRCとすることができる。
【００１０】
前記第２の識別情報を、SDES ITEMとしてSDESタイプのRTCPパケットに記述される情報とすることができる。
【００１１】
本発明の第２の側面の情報処理方法またはプログラムは、所定の情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせ、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出し、ユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信するステップを含む。
【００１２】
本発明の第３の側面の情報処理装置は、情報管理装置から送信されてきた制御情報を取得する取得手段と、前記取得手段により前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させる表示制御手段とを備える。
【００１３】
本発明の第３の側面の情報処理方法またはプログラムは、情報管理装置から送信されてきた制御情報を取得し、前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させるステップを含む。
【００１４】
本発明の第１の側面においては、所定の情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話が行われる。複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報が生成され、複数の前記情報処理装置に送信される。
【００１５】
また、本発明の第１の側面においては、情報管理装置から送信されてきた前記制御情報が取得され、前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザが特定され、それぞれのユーザに関する情報が異なる形式で表示される。
【００１６】
本発明の第２の側面においては、所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話が行われる。複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報が生成され、複数の前記情報処理装置に送信される。
【００１７】
本発明の第３の側面においては、情報管理装置から送信されてきた制御情報が取得され、前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザが特定され、それぞれのユーザに関する情報が異なる形式で表示される。
【発明の効果】
【００１８】
本発明によれば、複数のユーザが同時に発言を行っているときであっても、それぞれの情報処理装置が、発言を行っているユーザと発言を行っていないユーザを情報管理装置から送信されてくる情報に基づいて容易に特定することができる。
【発明を実施するための最良の形態】
【００１９】
以下に本発明の実施の形態を説明するが、本発明の構成要件と、明細書又は図面に記載の実施の形態との対応関係を例示すると、次のようになる。この記載は、本発明をサポートする実施の形態が、明細書又は図面に記載されていることを確認するためのものである。従って、明細書又は図面中には記載されているが、本発明の構成要件に対応する実施の形態として、ここには記載されていない実施の形態があったとしても、そのことは、その実施の形態が、その構成要件に対応するものではないことを意味するものではない。逆に、実施の形態が発明に対応するものとしてここに記載されていたとしても、そのことは、その実施の形態が、その構成要件以外には対応しないものであることを意味するものでもない。
【００２０】
本発明の第１の側面の通信システムは、ネットワークを介して接続される、情報管理装置（例えば、図１のユーザ端末１−１）と複数の情報処理装置（例えば、図１のユーザ端末１−２と１−３）からなる。このうちの情報管理装置は、本発明の第２の側面の情報管理装置と実質的に同様の構成を有し、情報処理装置は、本発明の第３の側面の情報処理装置と実質的に同様の構成を有する。
【００２１】
本発明の第２の側面の情報管理装置（例えば、図１のユーザ端末１−１）は、複数の情報処理装置（例えば、図１のユーザ端末１−２と１−３）とネットワークを介して接続される情報管理装置において、所定の前記情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせる合成手段（例えば、図１０の音声合成部３２）と、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出する検出手段（例えば、図１０のパケット解析部３１）と、前記検出手段によりユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信する生成手段（例えば、図１０のパケット生成部３３）とを備える。
【００２２】
本発明の第２の側面の情報処理方法またはプログラムは、所定の情報処理装置により取得され、送信されてきた音声を合成し、合成して得られた音声を複数の前記情報処理装置に送信して出力させることによって複数の前記情報処理装置のユーザの間で会話を行わせ、複数の前記情報処理装置により取得される音声の状況に基づいて、ユーザの発言の開始または終了を検出し、ユーザの発言の開始または終了が検出され、同時に発言を行うユーザの構成が変わる毎に、複数の前記情報処理装置のユーザを識別する第１の識別情報と、発言を行っているユーザを識別する第２の識別情報を含む制御情報を生成し、複数の前記情報処理装置に送信するステップ（例えば、図１２のステップＳ４０）を含む。
【００２３】
本発明の第３の側面の情報処理装置（例えば、図１のユーザ端末１−２）は、情報管理装置から送信されてきた制御情報を取得する取得手段（例えば、図１１のパケット解析部４１）と、前記取得手段により前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させる表示制御手段（例えば、図９の表示制御部１６）とを備える。
【００２４】
本発明の第３の側面の情報処理方法またはプログラムは、前記情報管理装置から送信されてきた前記制御情報を取得し、前記制御情報が取得される毎に、前記制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザを特定し、それぞれのユーザに関する情報を異なる形式で表示させるステップ（例えば、図１３のステップＳ５４）を含む。
【００２５】
以下、本発明の実施の形態について図を参照して説明する。
【００２６】
図１は、本発明の一実施形態に係る通信システムの構成例を示す図である。
【００２７】
図１に示されるように、この通信システムは、ユーザ端末１−１乃至１−３がインターネットなどよりなるネットワーク２を介して相互に接続されることによって構成される。４つ以上のユーザ端末がネットワーク２に接続されるようにしてもよい。図１の例においては、サーバ３もネットワーク２に接続されている。
【００２８】
このような構成からなる図１の通信システムにおいては、例えば、ユーザ端末１−１をカンファレンスを主催するユーザ（主催者）の端末、ユーザ端末１−２と１−３をカンファレンスに参加するユーザ（参加者）の端末として、VoIPを利用したカンファレンスモードの音声会話がユーザ端末１−１乃至１−３のユーザの間で行われる。以下、適宜、ユーザ端末１−１のユーザをユーザＡ、ユーザ端末１−２のユーザをユーザＢ、ユーザ端末１−３のユーザをユーザＣとして説明する。
【００２９】
後に詳述するように、ユーザ端末１−１乃至１−３には、それぞれ、ユーザの音声を取り込むマイクロフォンと、ネットワーク２を介して送信されてきたデータに基づいて音声を出力するスピーカが設けられている。
【００３０】
ユーザ端末１−１は、図１に示されるように、ユーザ端末１−２によって取り込まれたユーザＢの音声のデータである音声データＡBがユーザ端末１−２から送信されてきたり、ユーザ端末１−３によって取り込まれたユーザＣの音声のデータである音声データＡCがユーザ端末１−３から送信されてきたとき、それらの音声データと、自分自身が取り込んだユーザＡの音声のデータとを合成し、合成して得られた音声データＡmixをユーザ端末１−２と１−３に送信する。
【００３１】
また、ユーザ端末１−１は、音声データＡmixをユーザ端末１−２と１−３に送信するだけでなく、音声データＡmixなどに基づいて音声を出力し、ユーザＡに、ユーザＢの発言やユーザＣの発言などを聴かせる。
【００３２】
ユーザ端末１−２は、ユーザＢの音声を取り込み、得られた音声データＡBをユーザ端末１−１に送信する。また、ユーザ端末１−２は、音声データＡmixがユーザ端末１−１から送信されてきたとき、音声データＡmixに基づいて音声を出力し、ユーザＢに、ユーザＡの発言やユーザＣの発言などを聴かせる。
【００３３】
同様に、ユーザ端末１−３は、ユーザＣの音声を取り込み、得られた音声データＡCをユーザ端末１−１に送信する。また、ユーザ端末１−３は、音声データＡmixがユーザ端末１−１から送信されてきたとき、音声データＡmixに基づいて音声を出力し、ユーザＣに、ユーザＡの発言やユーザＢの発言などを聴かせる。
【００３４】
ここで、音声データの送受信は、RTP(Real-time Transport Protocol)にしたがって行われる。RTPは、映像や音声をリアルタイムに伝送することを目的としたプロトコルである。RTPパケットには、タイムスタンプや再生順序を表す情報などが含まれる。
【００３５】
また、図１の通信システムにおいて、ユーザ端末１−１は、カンファレンスに新たに参加するユーザや、カンファレンスから退場するユーザを検出する。
【００３６】
カンファレンスに新たに参加するユーザやカンファレンスから退場するユーザを検出した場合、ユーザ端末１−１は、リストに登録して管理するカンファレンスに参加しているユーザの識別情報を更新し、その更新したユーザの識別情報を、ユーザ端末１−２と１−３に送信する音声データＡmixなどの情報に含めてユーザ端末１−２と１−３に送信する。
【００３７】
さらに、ユーザ端末１−１は、参加者の端末であるユーザ端末１−２と１−３から送信されてくる音声データと、自分自身が取り込んだユーザＡの音声のデータなどに基づいて、ユーザによる発言の開始や発言の終了を検出する。
【００３８】
ユーザ端末１−１は、同時に発言を行うユーザの構成が変わったことを検出した場合、発言を行っているユーザを識別する識別情報を含む制御情報をユーザ端末１−２と１−３に送信する。
【００３９】
例えば、ユーザＢが発言を開始したことによって、ユーザＢとユーザＣが同時に発言を行う状態になったとき、そのときユーザ端末１−１から送信される制御情報には、発言を行っているユーザＢの識別情報とユーザＣの識別情報が含まれる。制御情報を受信したユーザ端末１−２と１−３は、ユーザＢとユーザＣが発言を行っていることを制御情報から特定することができる。
【００４０】
ユーザＢとユーザＣが発言を行っていることが特定されたとき、ユーザ端末１−２と１−３においては、例えば、発言を行っているユーザの名前である「ユーザＢ」と「ユーザＣ」が、発言を行っていないユーザの名前である「ユーザＡ」と異なる色で表示されるといったように、それらの情報が異なる形式で表示される。ユーザ端末１−１においても、同様の表示がなされる。なお、カンファレンスに参加するユーザがユーザＡ乃至Ｃの３人であることも、ユーザ端末１−１からユーザ端末１−２と１−３に通知されている。
【００４１】
これにより、ユーザＡ乃至Ｃは、ユーザＢとユーザＣが同時に発言を行っていることをユーザ端末による画面表示から確認することができる。
【００４２】
このように、制御情報には、同時に発言を行っているユーザの識別情報が含まれるため、それを取得したユーザ端末は、容易に、発言を行っているユーザを特定することができる。例えば、発言を行っているユーザを特定するために、音声データＡmixの解析などを音声データＡmixを受信したユーザ端末自身が行わなければならないとするとそのユーザ端末にとって負担になるが、そのようなことを行う必要がない。
【００４３】
ここで、制御情報は、RTCP(RTP Control Protocol)パケットとしてユーザ端末１−１から送信される。RTCPは、RTPパケットの送信者、受信者に関する情報などを伝達するためのプロトコルである。
【００４４】
RTCPパケットには、主に、SR(Sender Report)、RR(Receiver Report)、SDES(Source Description)、BYE(Goodbye)、APP(Application Specific)の５つのタイプがある。
【００４５】
SRタイプのRTCPパケットは、音声データの送信側の端末が、受信側の端末に自分自身のステータスを教えるために用いられるパケットであり、RRタイプのRTCPパケットは、音声データの受信側の端末が、送信側の端末に自分自身のステータスを教えるために用いられるパケットである。
【００４６】
SDESタイプのRTCPパケットは、音声データの詳細情報を送信するのに用いられるパケットであり、BYEタイプのRTCPパケットは、カンファレンスから退場することを主催者の端末に教えるために用いられるパケットである。APPタイプのRTCPパケットは、どのようなアプリケーションを用いてカンファレンスを開催しているのかを教えるために用いられるパケットである。
【００４７】
制御情報を送信するRTCPパケットとしては、このうちのSDESタイプのRTCPパケットが用いられる。以下、適宜、SDESタイプのRTCPパケットを単にSDESパケットという。RTPパケットとRTCPパケットのデータ構造の詳細については後述する。
【００４８】
図２は、図１のユーザ端末１−１乃至１−３の間で行われるデータの送受信の流れについて説明する図である。
【００４９】
VoIPによる音声データの伝送においては、一般的に、遅延を防ぐことを優先してUDP(User Datagram Protocol)が使われる。その際、上述したように、メディア（音声データ）の伝送にはRTPが用いられ、メディアの伝送の制御などにはRTCPが用いられる。音声データの送信側の端末は、対象のデータにRTPヘッダを付けて送信し、このRTPヘッダの記述によって、受信側の端末における再生の手順を規定する。送信側の端末と受信側の端末は定期的にRTCPパケットを交換し、受信側の端末はRTCP-SR（SRタイプのRTCPパケット）にしたがって動作し、送信側の端末はRTCP-RR（RRタイプのRTCPパケット）にしたがってフロー制御を行う。
【００５０】
ユーザＢの音声を取り込んだとき、ステップＳ１１において、ユーザ端末１−２は、得られた音声データＡBをRTPパケットによりユーザ端末１−１に送信する。また、ステップＳ１２において、ユーザ端末１−２は、RTCP-RRパケット（RRタイプのRTCPパケット）をユーザ端末１−１に送信する。
【００５１】
ユーザ端末１−１は、ユーザ端末１−２から送信されてきたRTPパケットをステップＳ１において受信し、RTCP-RRパケットをステップＳ２において受信する。
【００５２】
一方、ユーザＣの音声を取り込んだとき、ステップＳ２１において、ユーザ端末１−３は、得られた音声データＡCをRTPパケットによりユーザ端末１−１に送信する。また、ステップＳ２２において、ユーザ端末１−３は、RTCP-RRパケットをユーザ端末１−１に送信する。
【００５３】
ユーザ端末１−１は、ユーザ端末１−３から送信されてきたRTPパケットをステップＳ３において受信し、RTCP-RRパケットをステップＳ４において受信する。
【００５４】
ステップＳ５において、ユーザ端末１−１は、そのときユーザＡの音声を取り込んでいる場合にはユーザＡの音声を含めて、ユーザ端末１−２から送信されてきたRTPパケットに格納される音声データＡBとユーザ端末１−３から送信されてきたRTPパケットに格納される音声データＡCを合成する。
【００５５】
ユーザ端末１−１は、ステップＳ６において、合成して得られた音声データＡmixをRTPパケットによってユーザ端末１−２と１−３に送信する。
【００５６】
また、ユーザ端末１−１は、それまではユーザＣだけが発言を行っていたのがユーザＢとユーザＣが同時に発言を行うようになったというように、同時に発言を行うユーザの構成が変わったことを検出した場合、ステップＳ７において、SDESパケットをユーザ端末１−２と１−３に送信する。ここで送信されるSDESパケットには、カンファレンスに参加するユーザＡ乃至Ｃのそれぞれの識別情報と、ステップＳ６で送信されたRTPパケットに含まれる音声の主である例えばユーザＢ，Ｃのそれぞれの識別情報が含まれる。
【００５７】
ユーザ端末１−２は、ユーザ端末１−１から送信されてきたRTPパケットをステップＳ１３において受信し、SDESパケットをステップＳ１４において受信する。
【００５８】
ステップＳ１５において、ユーザ端末１−２は、受信したRTPパケットに基づいて音声を出力する。
【００５９】
また、ユーザ端末１−２は、ステップＳ１６において、受信したSDESパケットに記述されている情報に基づいて、発言を行っているユーザの情報を、発言を行っていないユーザの情報と異なる形式で表示する。
【００６０】
同様に、ユーザ端末１−３は、ユーザ端末１−１から送信されてきたRTPパケットをステップＳ２３において受信し、SDESパケットをステップＳ２４において受信する。
【００６１】
ステップＳ２５において、ユーザ端末１−３は、受信したRTPパケットに基づいて音声を出力する。
【００６２】
また、ユーザ端末１−３は、ステップＳ２６において、受信したSDESパケットに記述されている情報に基づいて、発言を行っているユーザの情報を、発言を行っていないユーザの情報と異なる形式で表示する。
【００６３】
このように、同時に発言を行うユーザの構成が変わる毎にユーザ端末１−１からSDESパケットが送信される。また、ユーザ端末１−２，１−３においては、SDESパケットが受信される毎に、発言を行っているユーザの情報の表示が切り替えられる。
【００６４】
以上においては、カンファレンスの主催者の装置がユーザ端末１−１であるとしたが、カンファレンスが図１のサーバ３により管理されるようにしてもよい。この場合、ユーザ端末１−１乃至１−３により取り込まれたユーザの音声のデータは、ネットワーク２を介してサーバ３に送信され、サーバ３により、それらの合成が行われる。合成された音声はサーバ３からユーザ端末１−１乃至１−３に送信され、それぞれのユーザ端末において音声が出力される。
【００６５】
また、サーバ３により、ユーザの発言の開始や発言の終了の検出などが行われ、同時に発言を行うユーザの構成が変わったとき、同時に発言を行っているユーザの識別情報などを含む制御情報がサーバ３からユーザ端末１−１乃至１−３に送信される。
【００６６】
ユーザ端末１−１乃至１−３においては、サーバ３から送信されてきた制御情報に基づいて、発言を行っているユーザと発言を行っていないユーザが特定され、発言を行っているユーザの情報が、発言を行っていないユーザの情報と異なる形式で表示される。
【００６７】
ここで、パケットのデータ構造について説明する。
【００６８】
図３は、RTPパケットのデータ構造を示す図である。
【００６９】
図３に示されるように、RTPパケットはデータリンクヘッダ（Data Link Header）、IPヘッダ（IP Header）、UDPヘッダ（UDP Header）、RTPヘッダ（RTP Header）、データ部（Data）から構成される。図３には、RTPヘッダに記述されるデータを拡大して示している。
【００７０】
RTPヘッダに記述されるデータのうちの「Ｖ」はバージョン番号を表し、「Ｐ」はパディングの有無を表す。例えば「Ｐ」の値として１が記述されている場合、それは、パケットの最後にペイロードがパディングされていることを表す。「Ｘ」はRTPヘッダの直後に拡張ヘッダがある場合に設定されるフラグである。
【００７１】
「CC」はCSRC(Contributing Source)として記述される識別子の数を表し、「Ｍ」はマーカビットでありVoIPによる音声データの伝送においては有音・無音の境界を表す。
【００７２】
「PT」はペイロードのタイプを表し、「Sequence」はパケットの通し番号を表す。「Sequence」と次に記述される「Time Stamp」により、RTPパケットを受信した受信側の端末における再生の同期が確立される。
【００７３】
「SSRC(Synchronization Source)」は、セッション毎に変わる一時的な識別子であり、VoIPによる音声データの伝送においてはカンファレンスの主催者のユーザ端末が再生の同期を司るので、その主催者の識別子が割り当てられる。「CSRC」は、RTPパケットに含まれる音声データを用意したユーザ端末を使っている参加者の識別子である。
【００７４】
RTPヘッダには、「CSRC」に続けて、「Payload Format Extension」、「Data」が記述される。
【００７５】
RTPパケットはこのような構造を有している。例えば、カンファレンスの参加者の端末であるユーザ端末１−２から主催者の端末であるユーザ端末１−１に送信されるRTPパケットのSSRCにはユーザＡの識別子が記述され、CSRCにはユーザＢの識別子が記述される。ユーザ端末１−２から送信されてきたRTPパケットを受信したユーザ端末１−１は、受信したRTPパケットがユーザＢが利用するユーザ端末１−２から送信されてきたものであることをCSRCに基づいて特定し、RTPパケットのマーカビットの値から、ユーザＢが発言を行っているのか否かを判断することができる。
【００７６】
一方、カンファレンスの主催者の端末であるユーザ端末１−１から参加者の端末であるユーザ端末１−２に送信されるRTPパケットのSSRCにはユーザＡの識別子が記述され、CSRCには、ユーザＢの識別子とユーザＣの識別子が記述される。カンファレンスの参加者が変わる毎にユーザ端末１−１によってCSRCも書き換えられるから、カンファレンスの参加者のユーザ端末は、ユーザ端末１−１から送信されてくるRTPパケットに記述されるCSRCから、カンファレンスの参加者を確認することができる。
【００７７】
このように、ユーザ端末１−１から送信されるRTPパケットにおいては、カンファレンスの参加者の識別子がRTPヘッダに記述されるから、RTPパケットを受信するユーザ端末のアプリケーション毎に処理を規定する必要がない。例えば、カンファレンスの参加者の識別子を記述する領域としてデータ領域を用いることも可能であるが、この場合、データ領域のこの部分に参加者の識別子が記述されているといったことをユーザ端末のアプリケーション毎に規定する必要があるが、そのようなことを行う必要がない。
【００７８】
図４は、RTCPパケットのデータ構造を示す図である。
【００７９】
図４に示されるように、RTCPパケットはデータリンクヘッダ、IPヘッダ、UDPヘッダ、RTCPデータ（RTCP Data）から構成される。上述したRTCPパケットのタイプに応じて、RTCPデータの記述内容が異なる。カンファレンスの主催者の端末であるユーザ端末１−１から制御情報として送信されるRTCPパケットにはSDESパケットが用いられる。
【００８０】
図５は、SDESパケットのデータ部に記述されるデータの例を示す図である。
【００８１】
「Ｖ」はバージョン番号を表し、「Ｐ」はパディングの有無を表す。「SC(Source Count)」は、「SSRC/CSRC」の数を表し、「PT」はペイロードのタイプを表す。「Packet Length」はパケット長を表す。
【００８２】
図５に示されるように、SDESパケットには、「SSRC/CSRC」と「SDES ITEM」を所定の数だけ記述することができるようになされている。カンファレンスの主催者の端末であるユーザ端末１−１から参加者の端末であるユーザ端末１−２と１−３に送信されるSDESパケットには、同時に発言を行っている参加者の数と同じ数の「SSRC/CSRC」と「SDES ITEM」の組が記述される。
【００８３】
例えば、ユーザＢが発言を開始したことから、ユーザＢとユーザＣが同時に発言を行っている状態になったとき、そのときユーザ端末１−１から送信されるSDESパケットには、「SSRC/CSRC」と「SDES ITEM」が２組だけ記述される。
【００８４】
１組目のSSRCにはカンファレンスの主催者であるユーザＡの識別子が記述され、CSRCにはカンファレンスの参加者であるユーザＢの識別子とユーザＣの識別子が記述される。SDES ITEMには、ユーザＢに関する付帯情報が記述される。
【００８５】
２組目のSSRCにはカンファレンスの主催者であるユーザＡの識別子が記述され、CSRCにはカンファレンスの参加者であるユーザＢの識別子とユーザＣの識別子が記述される。SDES ITEMには、ユーザＣに関する付帯情報が記述される。
【００８６】
図６は、SDES ITEMとして記述される情報の例を示す図である。
【００８７】
図６に示されるように、「Item Identifier」、「Byte Length」、「Item Description」の３種類の情報がSDES ITEMとして記述される。「Item Identifier」と「Item Description」の定義を図７に示す。
【００８８】
図７に示されるように、Item Identifierが０で識別されるSDES ITEMは「END」であり、Item DescriptionにはSDES ITEMの終了であることを表す情報が記述される。
【００８９】
Item Identifierが１で識別されるSDES ITEMは「CNAME」であり、Item Descriptionには参加者毎に固有の識別子が記述される。
【００９０】
Item Identifierが２で識別されるSDES ITEMは「NAME」であり、Item Descriptionには参加者の名前が記述される。
【００９１】
Item Identifierが３で識別されるSDES ITEMは「EMAIL」であり、Item Descriptionには参加者の電子メールアドレスが記述される。
【００９２】
Item Identifierが４で識別されるSDES ITEMは「PHONE」であり、Item Descriptionには参加者の電話番号やその参加者が利用する端末の電話番号が記述される。
【００９３】
Item Identifierが５で識別されるSDES ITEMは「LOC」であり、Item Descriptionには参加者の住所が記述される。
【００９４】
Item Identifierが６で識別されるSDES ITEMは「TOOL」であり、Item Descriptionには参加者が利用しているアプリケーションの名前が記述される。
【００９５】
Item Identifierが７で識別されるSDES ITEMは「NOTE」であり、Item Descriptionには参加者の状態を表す情報が記述される。
【００９６】
Item Identifierが８で識別されるSDES ITEMは「PRIV」であり、Item Descriptionにはアプリケーション拡張用の情報が記述される。
【００９７】
ユーザ端末１−１は、参加者の付帯情報が記述されるこのようなSDESパケットを、同時に発言を行うユーザの構成が変わる毎にユーザ端末１−２と１−３に送信する。ユーザ端末１−１から送信されてきたSDESパケットを受信したユーザ端末１−２と１−３は、それぞれ、SDESパケットに記述されたCNAME，NAME，EMAIL，PHONE，LOC等の情報を用いて、現在、だれが発言を行っているのかを特定し、それを表す表示を行う。
【００９８】
なお、CNAMEはSDES ITEMの記述の中で唯一添付が義務付けられているものであるため、例えば、このCNAMEが、会話を行っているユーザの情報を通知するために用いられる。また、ユーザ端末１−１のように、マイクロフォンやスピーカを有し、カンファレンスの参加者であるユーザＢ、ユーザＣと会話を行うユーザＡが利用する端末がカンファレンスを主催する場合、主催者の識別子ではあるが、ユーザＡが発言を行っているときにはユーザＡの識別子もSDES ITEMのCNAMEとしてSDESパケットに記述されるようにしてもよい。すなわち、SDES ITEMのCNAMEは、発言を行っているユーザを表す。
【００９９】
図８は、SDESパケットのCNAMEとして記述される識別子の例を示す図である。図８においては横軸が時間軸を表す。
【０１００】
図８の例においては、時刻ｔ1においてユーザＡにより発言が開始され、それが時刻ｔ4まで続けられている。また、時刻ｔ2においてユーザＣにより発言が開始され、それが時刻ｔ5まで続けられている。さらに、時刻ｔ3においてユーザＢにより発言が開始され、それが時刻ｔ6まで続けられている。
【０１０１】
したがって、時刻ｔ1から時刻ｔ2までの時間においては、ユーザＡだけによって発言が行われ、時刻ｔ2から時刻ｔ3までの時間においては、ユーザＡとユーザＣの２人によって同時に発言が行われている。また、時刻ｔ3から時刻ｔ4までの時間においては、ユーザＡ、ユーザＢ、ユーザＣの３人によって同時に発言が行われ、時刻ｔ4から時刻ｔ5までの時間においては、ユーザＢとユーザＣの２人によって同時に発言が行われている。時刻ｔ5から時刻ｔ6までの時間においては、ユーザＢだけによって発言が行われている。
【０１０２】
このようなタイミングでそれぞれのユーザにより発言が行われる場合、図８に示されるように、時刻ｔ1においてユーザ端末１−１から送信されるSDESパケットには、そのとき発言を開始したユーザＡの識別子がCNAMEとして記述されるSDES ITEMが含まれる。
【０１０３】
また、時刻ｔ2においてユーザ端末１−１から送信されるSDESパケットには、時刻ｔ2において発言を開始したユーザＣの識別子が追加され、ユーザＡの識別子がCNAMEとして記述されるSDES ITEMと、ユーザＣの識別子がCNAMEとして記述されるSDES ITEMが含まれる。
【０１０４】
時刻ｔ3においてユーザ端末１−１から送信されるSDESパケットには、さらに、時刻ｔ3において発言を開始したユーザＢの識別子が追加され、ユーザＡの識別子がCNAMEとして記述されるSDES ITEM、ユーザＢの識別子がCNAMEとして記述されるSDES ITEM、および、ユーザＣの識別子がCNAMEとして記述されるSDES ITEMが含まれる。
【０１０５】
時刻ｔ4においてユーザ端末１−１から送信されるSDESパケットには、時刻ｔ4において発言を終了したユーザＡの識別子が削除され、ユーザＢの識別子がCNAMEとして記述されるSDES ITEMと、ユーザＣの識別子がCNAMEとして記述されるSDES ITEMが含まれる。
【０１０６】
時刻ｔ5においてユーザ端末１−１から送信されるSDESパケットには、時刻ｔ5において発言を終了したユーザＣの識別子が削除され、ユーザＢの識別子がCNAMEとして記述されるSDES ITEMが含まれる。
【０１０７】
ユーザＢが発言を終了することによってだれも発言を行っていない状態になった時刻ｔ6においては、ユーザ端末１−１からSDESパケットは送信されない。
【０１０８】
このように、ユーザ端末１−１からは、同時に発言を行うユーザの構成が変わる毎にSDESパケットが送信され、いまだれが発言を行っているのかが参加者のユーザ端末に通知される。
【０１０９】
カンファレンスの主催者の端末であるユーザ端末１−１が行う一連の動作とカンファレンスの参加者の端末であるユーザ端末１−２と１−３が行う一連の動作についてはフローチャートを参照して後述する。
【０１１０】
図９は、ユーザ端末１−１の機能構成例を示すブロック図である。
【０１１１】
ユーザ端末１−１においては、図９に示されるように、通信制御部１１、主制御部１２、入出力制御部１３、音声入力部１４、音声出力部１５、および表示制御部１６が所定のプログラムが実行されることによって実現される。ユーザ端末１−１には、ネットワーク端子２１、マイクロフォン２２、スピーカ２３、およびディスプレイ２４が設けられている。
【０１１２】
通信制御部１１は、ネットワーク端子２１に装着されたケーブルを介してネットワーク２に接続し、ユーザ端末１−２，１−３と通信を行う。通信制御部１１は、ユーザ端末１−２，１−３からRTPパケット、RTCPパケットが送信されてきたとき、それを受信し、主制御部１２に出力する。また、通信制御部１１は、RTPパケット、RTCPパケット（SDESパケット）が主制御部１２から供給されたとき、それをユーザ端末１−２と１−３に送信する。
【０１１３】
主制御部１２は、通信制御部１１から供給されたRTPパケットに含まれる音声データと入出力制御部１３から供給された音声データを合成し、合成して得られた音声データを格納するRTPパケットを生成する。主制御部１２は、生成したRTPパケットを通信制御部１１に出力する。また、主制御部１２は、通信制御部１１から供給されたRTPパケットに含まれる音声データを入出力制御部１３に出力する。
【０１１４】
さらに、主制御部１２は、ユーザ端末１−２，１−３から送信されるRTPパケットの状況と、入出力制御部１３から供給される音声データの状況に基づいて、同時に発言を行っているユーザの構成を監視し、ユーザの構成が変わったことを検出したとき、発言を行っているユーザの識別子が記述される、上述したようなSDESパケットを生成する。主制御部１２は、生成したSDESパケットを通信制御部１１に出力する。なお、だれが発言を行い、だれが発言を行っていないのかを表す情報は主制御部１２から入出力制御部１３にも出力される。
【０１１５】
入出力制御部１３は、音声入力部１４により取り込まれた音声データを主制御部１２に出力する。また、入出力制御部１３は、主制御部１２から供給された音声データを音声出力部１５に出力し、音声を出力させる。
【０１１６】
さらに、入出力制御部１３は、主制御部１２から供給された、だれが発言を行い、だれが発言を行っていないのかを表す情報を表示制御部１６に出力する。
【０１１７】
音声入力部１４は、スピーカ２２において取り込まれた音声信号にA/D(Analog/Digital)変換処理を施し、得られた音声データを入出力制御部１３に出力する。
【０１１８】
音声出力部１５は、入出力制御部１３から供給された音声データに対してD/A変換処理、増幅処理を施し、所定の音量に調整した後、音声をスピーカ２３から出力させる。
【０１１９】
表示制御部１６は、入出力制御部１３から供給された情報に基づいて、発言を行っているユーザの情報を、発言を行っていないユーザの情報と異なる形式でディスプレイ２４に表示させる。
【０１２０】
以上のような構成と同じ構成をユーザ端末１−２と１−３も有している。以下、適宜、図９に示されるユーザ端末１−１の構成を、ユーザ端末１−２や１−３の構成として引用して説明する。
【０１２１】
図１０は、図９の主制御部１２の構成例を示すブロック図である。
【０１２２】
カンファレンスの主催者の端末であるユーザ端末１−１の主制御部１２は、図１０に示されるように、パケット解析部３１、音声合成部３２、およびパケット生成部３３から構成される。
【０１２３】
パケット解析部３１は、通信制御部１１から供給されたRTPパケットを解析し、RTPパケットに格納される音声データを入出力制御部１３と音声合成部３２に出力する。入出力制御部１３に出力された音声データは、スピーカ２３から音声を出力するために用いられる。
【０１２４】
また、パケット解析部３１は、例えば、RTPパケットに記述されるCSRCとマーカビットの値、および、入出力制御部１３から供給されたユーザＡの音声のデータに基づいて、発言を行っているユーザを特定する。RTPパケットに記述されるCSRCとマーカビットの値から、ユーザＢとユーザＣのそれぞれが発言を行っているか否かが特定され、入出力制御部１３から供給されたユーザＡの音声のデータから、ユーザＡが発言を行っているか否かが特定される。
【０１２５】
パケット解析部３１は、発言を行っているユーザを特定し、同時に発言を行っているユーザの構成が変わったことを検出したとき、いま発言を行っているユーザの情報をパケット生成部３３に出力する。だれが発言を行い、だれが発言を行っていないのかを表す情報はパケット解析部３１から入出力制御部１３にも出力される。
【０１２６】
また、パケット解析部３１は、通信制御部１１において受信されたデータを解析し、カンファレンスに新たに参加するユーザや、カンファレンスから退場するユーザを検出し、検出したそれらのユーザの情報をパケット生成部３３に出力する。
【０１２７】
音声合成部３２は、パケット解析部３１から供給された音声データと入出力制御部１３から供給された音声データを合成し、合成して得られた音声データをパケット生成部３３に出力する。
【０１２８】
パケット生成部３３は、音声合成部３２から供給された音声データを格納するRTPパケットを生成し、生成したRTPパケットを通信制御部１１に出力する。
【０１２９】
また、パケット生成部３３は、同時に発言を行うユーザの構成が変わったことが検出され、ユーザの情報がパケット解析部３１から供給されたとき、発言を行っているユーザの識別子がSDES ITEMのCNAMEとして記述されるSDESパケットを生成し、生成したSDESパケットを通信制御部１１に出力する。
【０１３０】
パケット生成部３３は、カンファレンスに参加するユーザの情報が登録されるユーザリストを管理しており、カンファレンスに新たに参加するユーザや、カンファレンスから退場するユーザの情報がパケット解析部３１から供給されたとき、それに応じてユーザリストの登録内容を更新する。ユーザリストには、カンファレンスに参加するユーザの識別子などが登録されており、このユーザリストは、ユーザ端末１−１から送信されるRTPパケットのRTPヘッダにCSRCを記述するとき、あるいは、SDESパケットにCSRCを記述するときなどに参照される。
【０１３１】
図１１は、図９の主制御部１２の他の構成例を示すブロック図である。図１１は、カンファレンスの参加者の端末である例えばユーザ端末１−２の主制御部１２の構成を示している。
【０１３２】
ユーザ端末１−２の主制御部１２は、図１１に示されるように、パケット解析部４１とパケット生成部４２から構成される。
【０１３３】
パケット解析部４１は、ユーザ端末１−１から送信され、ユーザ端末１−２の通信制御部１１において受信されたRTPパケットを取得し、取得したRTPパケットに格納される音声データを入出力制御部１３に出力する。入出力制御部１３に出力された音声データに基づいて、ユーザ端末１−２のスピーカ２３から音声が出力される。
【０１３４】
また、パケット解析部４１は、ユーザ端末１−２の通信制御部１１において受信されたRTPパケットやSDESパケットのCSRCと、SDESパケットのSDES ITEMにCNAMEとして記述される識別子に基づいて、どのユーザが発言を行っており、どのユーザが発言を行っていないのかを特定する。パケット解析部４１は、特定したユーザの情報を入出力制御部１３に出力し、発言を行っているユーザの情報を、発言を行っていないユーザの情報と異なる形式でユーザ端末１−２のディスプレイ２４に表示させる。
【０１３５】
パケット生成部４２は、マイクロフォン２２により取り込まれたユーザＢの音声のデータが音声入力部１４、入出力制御部１３を介して供給されたとき、音声データを格納するRTPパケットを生成し、生成したRTPパケットを通信制御部１１に出力する。通信制御部１１に出力されたRTPパケットはユーザ端末１−１に送信される。
【０１３６】
次に、以上のような構成を有するユーザ端末の動作についてフローチャートを参照して説明する。
【０１３７】
はじめに、図１２のフローチャートを参照して、カンファレンスを管理するユーザ端末１−１の処理について説明する。
【０１３８】
ステップＳ３１において、ユーザ端末１−１のパケット解析部３１は、通信制御部１１において受信されたデータの解析結果に基づいて、カンファレンスから退場したユーザがいるか否かを判定し、そのようなユーザがいないと判定した場合、ステップＳ３２に進む。
【０１３９】
ステップＳ３２において、パケット解析部３１は、次に、カンファレンスに参加したユーザがいるか否かを判定する。
【０１４０】
パケット解析部３１は、ステップＳ３２において、カンファレンスに参加したユーザがいると判定した場合、カンファレンスに新たに参加したユーザの情報をパケット生成部３３に出力し、ステップＳ３３に進む。
【０１４１】
ステップＳ３３において、パケット生成部３３は、パケット解析部３１から供給された情報に基づいて、カンファレンスに新たに参加したユーザの識別子をユーザリストに追加する。カンファレンスに参加するユーザが変わったとき、SDESパケットのCSRC以外の情報も適宜書き換えられる。
【０１４２】
一方、ステップＳ３２において、パケット解析部３１は、カンファレンスに参加したユーザもいないと判定した場合、ステップＳ３３の処理をスキップする。カンファレンスに参加したユーザもいないと判定された後、または、ステップＳ３３においてカンファレンスに新たに参加したユーザの識別子がユーザリストに登録された後、処理はステップＳ３５に進む。
【０１４３】
また、パケット解析部３１は、ステップＳ３１において、通信制御部１１において受信されたデータの解析結果に基づいて、カンファレンスから退場したユーザがいると判定した場合、カンファレンスから退場したユーザの情報をパケット生成部３３に出力し、ステップＳ３４に進む。
【０１４４】
ステップＳ３４において、パケット生成部３３は、パケット解析部３１から供給された情報に基づいて、カンファレンスから退場したユーザの識別子をユーザリストから削除する。その後、処理はステップＳ３５に進む。
【０１４５】
ステップＳ３５において、パケット解析部３１は、例えば、ユーザ端末１−２や１−３から送信され、通信制御部１１において受信されたRTPパケットに記述されるCSRCとマーカビットの値、および、入出力制御部１３から供給されたユーザＡの音声のデータに基づいて、どのユーザが発言を行っているかを特定し、それまでに行っていた発言を終了したユーザがいるか否かを判定する。ユーザ端末１−２と１−３からは、RTPパケットなどが所定のタイミングで送信されてきており、音声合成部３２においては、それに格納される音声データの合成が行われている。
【０１４６】
パケット解析部３１は、ステップＳ３５において、発言を終了したユーザがいないと判定した場合、ステップＳ３６に進み、次に、発言を開始したユーザがいるか否かを判定する。
【０１４７】
ステップＳ３６において、パケット解析部３１は、発言を開始したユーザがいると判定した場合、ステップＳ３７に進み、カンファレンスから退場したユーザがいるとステップＳ３１において判定されたことから、または、カンファレンスに参加したユーザがいるとステップＳ３２において判定されたことから、カンファレンスに参加するユーザの構成が変わったことが確認されているか否かを判定する。
【０１４８】
ステップＳ３７において、パケット解析部３１は、カンファレンスに参加するユーザの構成が変わったことが確認されていると判定した場合、ステップＳ３８に進む。
【０１４９】
ステップＳ３８において、パケット生成部３３は、ユーザリストを参照し、送信するRTPパケットのRTPヘッダのCSRCと、RTCPパケットのCSRCを書き換える。
【０１５０】
一方、ステップＳ３７において、パケット解析部３１は、カンファレンスから退場したユーザがいるとステップＳ３１において判定されておらず、かつ、カンファレンスに参加したユーザがいるとステップＳ３２において判定されていないことから、カンファレンスに参加するユーザの構成が変わったことが確認されていないと判定した場合、ステップＳ３８の処理をスキップし、ステップＳ３９に進む。この場合、それまでに送信されたRTPパケット、RTCPパケットと同じCSRCが、RTPパケットのRTPヘッダとRTCPパケットに記述されることになる。
【０１５１】
ステップＳ３９において、パケット生成部３３は、ステップＳ３６において開始されたと判定された発言の主であるユーザの識別子をSDESパケットのSDES ITEMに追加する。
【０１５２】
ステップＳ４０において、パケット生成部３３は、ステップＳ３８でCSRCを書き換えたRTPヘッダを、音声合成部３２から供給された音声データに付加し、得られたRTPパケットを通信制御部１１からユーザ端末１−２と１−３に送信する。
【０１５３】
また、パケット生成部３３は、ステップＳ４０において、ステップＳ３８でCSRCを書き換え、さらに、ステップＳ３９でユーザの識別子を追加したSDESパケットを通信制御部１１からユーザ端末１−２と１−３に送信する。これにより、あるユーザが発言を開始したことによって同時に発言を行うユーザの構成が変わったタイミングで、SDESパケットがユーザ端末１−１から送信されることになる。
【０１５４】
ユーザ端末１−２と１−３においては、ここで送信されたRTPパケットに格納される音声データに基づいて音声の出力が行われるとともに、RTCPパケットに記述されるユーザの識別子に基づいて、発言を行っているユーザの情報と、発言を行っていないユーザの情報とが異なる形式で表示される。
【０１５５】
ステップＳ３６において、発言も開始されていないと判定された場合、ステップＳ３７乃至Ｓ４０の処理はスキップされる。
【０１５６】
一方、ステップＳ３５において、パケット解析部３１は、発言を終了したユーザがいると判定した場合、ステップＳ４１に進み、カンファレンスから退場したユーザがいるとステップＳ３１において判定されたことから、または、カンファレンスに参加したユーザがいるとステップＳ３２において判定されたことから、カンファレンスに参加するユーザの構成が変わったことが確認されているか否かを判定する。
【０１５７】
ステップＳ４１において、パケット解析部３１は、カンファレンスに参加するユーザの構成が変わったことが確認されていると判定した場合、ステップＳ４２に進む。
【０１５８】
ステップＳ４２において、パケット生成部３３は、ユーザリストを参照し、送信するRTPパケットのRTPヘッダのCSRCと、RTCPパケットのCSRCを書き換える。
【０１５９】
一方、ステップＳ４１において、パケット解析部３１は、カンファレンスから退場したユーザがいるとステップＳ３１において判定されておらず、かつ、カンファレンスに参加したユーザがいるとステップＳ３２において判定されていないことから、カンファレンスに参加するユーザの構成が変わったことが確認されていないと判定した場合、ステップＳ４２の処理をスキップする。
【０１６０】
ステップＳ４３において、パケット生成部３３は、ステップＳ３５において終了されたと判定された発言の主であるユーザの識別子を、SDESパケットから削除する。
【０１６１】
ここで識別子が削除されたSDESパケットは、ステップＳ４０においてユーザ端末１−２と１−３に送信され、これにより、あるユーザが発言を終了したことによって同時に発言を行うユーザの構成が変わったタイミングで、SDESパケットがユーザ端末１−１から送信されることになる。
【０１６２】
RTPパケットとSDESパケットの送信が行われたとき、パケット解析部３１は、ステップＳ４４において、カンファレンスに参加するユーザが残っているか否かを判定する。
【０１６３】
パケット解析部３１は、ステップＳ４４において、カンファレンスに残っているユーザがいると判定した場合、ステップＳ３１に戻り、上述した処理を繰り返し実行し、一方、全てのユーザが退場したことから、カンファレンスに残っているユーザがいないと判定した場合、処理を終了させる。
【０１６４】
次に、図１３のフローチャートを参照して、ユーザの情報の表示を制御するユーザ端末１−２の処理について説明する。図１２に示される処理と同様の処理が、ユーザ端末１−３においても行われる。
【０１６５】
ステップＳ５１において、ユーザ端末１−２のパケット解析部４１は、ユーザ端末１−１から送信されてきたRTPパケットとSDESパケットが通信制御部１１において受信されたか否かを判定し、受信されたと判定した場合、ステップＳ５２に進む。
【０１６６】
ステップＳ５２において、パケット解析部４１は、例えば、RTPパケットのRTPヘッダに記述されるCSRCと、SDES ITEMとしてSDESパケットに記述されるCNAMEを、通信制御部１１において受信されたデータから取得する。
【０１６７】
ステップＳ５３において、パケット解析部４１は、ステップＳ５２で取得したCSRC，CNAMEが、記憶しておいたCSRC，CNAMEと較べてデータの内容に変化があるか否かを判定する。パケット解析部４１においては、ユーザ端末１−１から送信されてくるRTPパケットに記述されるCSRCと、SDES ITEMとしてSDESパケットに記述されるCNAMEが記憶されており、それらのデータは、例えば、RTPパケットとRTCPパケットが新たに受信され、内容に変化がある毎に書き換えられる。
【０１６８】
カンファレンスに参加するユーザの構成が変わったとき、CSRCが書き換えられたRTPパケットが送信されてくるから、そのとき、CSRCの内容に変化があったと判定される。また、同時に発言を行うユーザの構成が変わったとき、CNAMEが追加されたり削除されたりしたSDESパケットが送信されてくるから、そのとき、CNAMEの内容に変化があったと判定される。
【０１６９】
パケット解析部４１は、ステップＳ５３において、データの内容に変化があったと判定した場合、ステップＳ５４に進む。このとき、例えばRTPパケットのCSRCとSDESパケットに記述されるCNAMEから特定される、発言を行っているユーザと発言を行っていないユーザを表す情報が入出力制御部１３に出力される。
【０１７０】
ステップＳ５４において、入出力制御部１３は、パケット解析部４１から供給された情報に基づいて、発言を行っているユーザの情報を、発言を行っていないユーザの情報と異なる形式でディスプレイ２４に表示させる。
【０１７１】
図１４は、ユーザ端末１−２のディスプレイ２４に表示される画面の例を示す図である。
【０１７２】
図１４の例においては、ディスプレイ２４の下側の縁に沿ってタブ５１乃至５３が表示されている。タブ５１にはユーザ端末１−１のユーザの名前を表す「Ａさん」が表示され、タブ５２にはユーザ端末１−２のユーザの名前を表す「Ｂさん」が表示されている。また、タブ５３にはユーザ端末１−３のユーザの名前を表す「Ｃさん」が表示されている。
【０１７３】
また、図１４の例においては、タブ５１乃至５３のうち、タブ５２と５３が、タブ５１と異なる色で表示されている。タブ５２と５３に付されている斜線は、斜線が付されていないタブ５１と較べて異なる色で表示されていることを表している。
【０１７４】
すなわち、図１４は、ユーザ端末１−２のユーザであるユーザＢと、ユーザ端末１−３のユーザであるユーザＣが発言を行っている場合の例を示している。
【０１７５】
このような画面表示から、ユーザＢは、スピーカ２３から出力されている音声が、自分とユーザＣの音声であることを確認することができる。図１４の画面が表示されているとき、ユーザ端末１−２の音声出力部１５においては、パケット解析部４１により取得されたRTPパケットに格納される音声データに基づいて、スピーカ２３から音声が出力されている。
【０１７６】
なお、図１４に示されるように、カンファレンスに参加する全てのユーザの情報が表示され、発言を行っているユーザの情報と発言を行っていないユーザの情報が異なる形式で表示されるのではなく、単に、SDESパケットに記述されているCNAMEから特定された、発言を行っているユーザの情報だけが表示されるようにしてもよい。
【０１７７】
図１３の説明に戻り、ステップＳ５５において、パケット解析部４１は、ステップＳ５２で取得したCSRC，CNAMEを記憶し、ステップＳ５６に進む。ステップＳ５１においてRTPパケットとSDESパケットが受信されていないと判定された場合、または、ステップＳ５３においてCSRC，CNAMEの内容に変化がないと判定された場合も、処理はステップＳ５６に進む。
【０１７８】
ステップＳ５６において、パケット解析部４１は、カンファレンスへの参加を終了するか否かを判定する。
【０１７９】
パケット解析部４１は、ステップＳ５６において、カンファレンスへの参加を終了しないと判定した場合、ステップＳ５１に戻り、上述した処理を繰り返し実行し、一方、カンファレンスへの参加を終了すると判定した場合、処理を終了させる。例えば、カンファレンスへの参加を終了することがユーザＢにより指示された場合、カンファレンスへの参加を終了すると判定される。
【０１８０】
以上の処理により、カンファレンスの参加者であるユーザＢは、画面表示から、発言を行っているユーザと、発言を行っていないユーザを一目で容易に確認することができる。
【０１８１】
図１５は、ユーザ端末の他の構成例を示すブロック図である。図９の構成と同じ構成には同じ符号を付してある。
【０１８２】
図１５の例においては、装置５１と装置５２の２つの装置によって、図９のユーザ端末１−１と同様の構成が実現されている。装置５１においては通信制御部１１と主制御部１２が実現され、装置５２においては入出力制御部１３、音声入力部１４、音声出力部１５、および表示制御部１６が実現されている。
【０１８３】
装置５１の主制御部１２と、装置５２の入出力制御部１３はUSB(Universal Serial Bus)ケーブルなどを介して接続される。このような構成を有する装置５１と装置５２により、図９の構成を有するユーザ端末１−１が行う上述したような処理と同様の処理、あるいは、ユーザ端末１−２が行う上述したような処理と同様の処理が行われるようにしてもよい。
【０１８４】
なお、図１５の例においては、図９のディスプレイ２４に替えてLED(Light Emitting Diode)発光部５３が装置５２に設けられている。LED発光部５３にはLED５３Ａ乃至５３Ｃが並べて設けられている。LED５３Ａの発光は、LED５３Ａが割り当てられたユーザＡが発言していることを表し、LED５３Ｂの発光は、LED５３Ｂが割り当てられたユーザＢが発言していることを表す。また、LED５３Ｃの発光は、LED５３Ｃが割り当てられたユーザ端末１−３のユーザが発言していることを表す。
【０１８５】
図１５の例においては、LED５３ＢとLED５３Ｃが発光しており、これにより、ユーザＢとユーザＣが同時に発言を行っていることが表されている。
【０１８６】
発言を行っているユーザと発言を行っていないユーザが画面表示によって表されるのではなく、このように、LEDの発光によって表されるようにすることも可能である。
【０１８７】
上述した一連の処理は、ハードウエアにより実行させることもできるし、ソフトウエアにより実行させることもできる。一連の処理をソフトウエアにより実行させる場合には、そのソフトウエアを構成するプログラムが、専用のハードウエアに組み込まれているコンピュータ、または、各種のプログラムをインストールすることで、各種の機能を実行することが可能な、例えば汎用のパーソナルコンピュータなどに、プログラム記録媒体からインストールされる。
【０１８８】
図１６は、上述した一連の処理をプログラムにより実行するパーソナルコンピュータの構成例を示すブロック図である。
【０１８９】
CPU(Central Processing Unit)１０１は、ROM(Read Only Memory)１０２、または記憶部１０８に記憶されているプログラムに従って各種の処理を実行する。RAM(Random Access Memory)１０３には、CPU１０１が実行するプログラムやデータなどが適宜記憶される。これらのCPU１０１、ROM１０２、およびRAM１０３は、バス１０４により相互に接続されている。
【０１９０】
CPU１０１にはまた、バス１０４を介して入出力インターフェース１０５が接続されている。入出力インターフェース１０５には、キーボード、マウス、マイクロホンなどよりなる入力部１０６、ディスプレイ、スピーカなどよりなる出力部１０７が接続されている。CPU１０１は、入力部１０６から入力される指令に対応して各種の処理を実行する。そして、CPU１０１は、処理の結果を出力部１０７に出力する。
【０１９１】
入出力インターフェース１０５に接続されている記憶部１０８は、例えばハードディスクからなり、CPU１０１が実行するプログラムや各種のデータを記憶する。通信部１０９はネットワーク２を介して外部の装置と通信を行う。
【０１９２】
入出力インターフェース１０５に接続されているドライブ１１０は、磁気ディスク、光ディスク、光磁気ディスク、或いは半導体メモリなどのリムーバブルメディア１１１が装着されたとき、それらを駆動し、そこに記録されているプログラムやデータなどを取得する。取得されたプログラムやデータは、必要に応じて記憶部１０８に転送され、記憶される。
【０１９３】
コンピュータにインストールされ、コンピュータによって実行可能な状態とされるプログラムを格納するプログラム記録媒体は、図１６に示すように、磁気ディスク（フレキシブルディスクを含む）、光ディスク（CD-ROM(Compact Disc-Read Only Memory)，DVD(Digital Versatile Disc)を含む）、光磁気ディスク、もしくは半導体メモリなどよりなるパッケージメディアであるリムーバブルメディア１１１、または、プログラムが一時的もしくは永続的に格納されるROM１０２や、記憶部１０８を構成するハードディスクなどにより構成される。プログラム記録媒体へのプログラムの格納は、必要に応じてルータ、モデムなどのインタフェースである通信部１０９を介して、ローカルエリアネットワーク、インターネット、デジタル衛星放送といった、有線または無線の通信媒体を利用して行われる。
【０１９４】
なお、本明細書において、プログラムを記述するステップは、記載された順序に沿って時系列的に行われる処理はもちろん、必ずしも時系列的に処理されなくとも、並列的あるいは個別に実行される処理をも含むものである。
【０１９５】
また、本明細書において、システムとは、複数の装置により構成される装置全体を表すものである。
【図面の簡単な説明】
【０１９６】
【図１】本発明の一実施形態に係る通信システムの構成例を示す図である。
【図２】図１のユーザ端末１−１乃至１−３の間で行われるデータの送受信の流れについて説明する図である。
【図３】RTPパケットのデータ構造の例を示す図である。
【図４】RTCPパケットのデータ構造の例を示す図である。
【図５】SDESパケットに記述されるデータの例を示す図である。
【図６】SDES ITEMの例を示す図である。
【図７】図６のItem IdentifierとItem Descriptionを示す図である。
【図８】SDESパケットに記述される識別子の例を示す図である。
【図９】ユーザ端末１−１の機能構成例を示すブロック図である。
【図１０】図９の主制御部の構成例を示すブロック図である。
【図１１】図９の主制御部の他の構成例を示すブロック図である。
【図１２】ユーザ端末１−１のカンファレンス管理処理について説明するフローチャートである。
【図１３】ユーザ端末１−２の表示制御処理について説明するフローチャートである。
【図１４】ディスプレイに表示される画面の例を示す図である。
【図１５】ユーザ端末１−１の他の構成例を示すブロック図である。
【図１６】パーソナルコンピュータの構成を示すブロック図である。
【符号の説明】
【０１９７】
１−１乃至１−３  ユーザ端末，  ２  ネットワーク，  ３  サーバ，  １１  通信制御部，  １２  主制御部，  １３  入出力制御部，  １４  音声入力部，  １５  音声出力部，  １６  表示制御部，  ２１  ネットワーク端子，  ２２  マイクロフォン，  ２３  スピーカ，  ２４  ディスプレイ，  ３１  パケット解析部，  ３２  音声合成部，  ３３  パケット生成部，  ４１  パケット解析部，  ４２  パケット生成部
【図１】
2007288255.tif 000003
【図２】
2007288255.tif 000004
【図３】
2007288255.tif 000005
【図４】
2007288255.tif 000006
【図５】
2007288255.tif 000007
【図６】
2007288255.tif 000008
【図７】
2007288255.tif 000009
【図８】
2007288255.tif 000010
【図９】
2007288255.tif 000011
【図１０】
2007288255.tif 000012
【図１１】
2007288255.tif 000013
【図１２】
2007288255.tif 000014
【図１３】
2007288255.tif 000015
【図１４】
2007288255.tif 000016
【図１５】
2007288255.tif 000017
【図１６】
2007288255.tif 000018