以下、本発明を実施するための形態について図面を参照しながら説明する。
まず、図1を用いて、本実施形態の会議画面500の領域の数について説明する。伝送端末Aは伝送端末B、Cとテレビ会議を行っている。伝送端末A〜Cが配置されている場所を拠点と称する場合がある。本実施形態では説明の便宜上、拠点数と伝送端末の数と同じであるとして説明する。
伝送端末Aの会議画面500の領域の数及び配置は、会議に参加している参加端末の数、ディスプレイ120のサイズ(解像度)、及び、ユーザによって設定されるレイアウトなどによって決定される。図1では、領域501〜503に3つの拠点が表示されている。通常、ある伝送端末A〜Cに接続されているディスプレイのサイズは一定であるので、ユーザがレイアウトを変更しなければ、会議画面500の領域の数及び配置は参加端末の数だけに依存する。
したがって、会議画面500の領域の数及び配置は、ネットワーク帯域の状況やネットワーク帯域に応じた画像データの受信数によらず一定である。図1(a)はネットワーク帯域Wが十分に大きい場合の伝送端末Aの会議画面500を、図1(b)はネットワーク帯域Wが少なくなった場合の伝送端末Aの会議画面500をそれぞれ示す。本実施形態では、ネットワーク帯域が悪化しても会議画面500の領域の数は3のままである。
図2は、本実施形態の会議画面500の概略を説明する図の一例である。図2(a)では伝送端末Aが2拠点からの画像データ(動画)を受信するために必要な受信帯域が確保されている状態を示している。このような状態で、伝送端末Aは伝送端末B,Cから受信している画像データの静止画であるフレームデータ(静止画データ)を周期的に記憶しておく。
図2(b)は伝送端末Aが2拠点からの画像データ(動画)を受信するために十分な受信帯域を確保できない状態を示す。受信帯域が減少すると画像データ(動画)を受信できなくなるため、従来の伝送端末Aは表示する画像データ(動画)の数に応じたレイアウトに会議画面500を変更していた。これに対し、本実施形態の伝送端末Aは、画像データ(動画)を受信していた際に記憶しておいたフレームデータを、同じレイアウトのまま表示する。従って、レイアウトが頻繁に変更されにくいため、ユーザが煩わしく感じることを抑制できる。
また、図2(c)は4つの伝送端末A〜Dのうち伝送端末B、C,A(自拠点)の画像データを伝送端末Aが表示している。伝送端末B、Cの画像データが表示されているのはユーザが設定したか又は伝送端末B、Cの優先度が伝送端末Dよりも高いためである。この状態で伝送端末Aは拠点B〜Dからフレームデータを受信して記憶しておく。
受信帯域が減少して伝送端末Aが1つの伝送端末Bだけから画像データ(動画)を受信する状態になる。また、同時期に伝送端末Dの優先度が伝送端末Cよりも高くなったものとする。しかし、伝送端末Aは伝送端末Dからすでにフレームデータを受信しているので、伝送端末Dのフレームデータを会議画面500の領域に表示することができる。
このように、本実施形態の伝送システム1による画像表示方法では、伝送端末Aが画像データ(動画)を受信していない伝送端末Dからもフレームデータを受信しているので、伝送端末Dの画像データが会議画面500に表示される際には少ない遅延で拠点の画像を表示することができる。
<システム構成例>
図3は、本実施例に係る伝送システム1の一例の概略図である。伝送システム1(通信システムの一例)は、伝送管理システム50を介して複数の伝送端末間で情報や感情等を相互に伝達するためのコミュニケーションシステムである。伝送システム1には、テレビ会議システム、テレビ電話システム、音声会議システム、音声電話システム、PC(Personal Computer)画面共有システム、テキストチャットシステム等が例として挙げられる。また、伝送システム1には、伝送管理システム50を介して一方の伝送端末から他方の伝送端末に一方向でコンテンツデータを伝送するデータ提供システムが含まれる。
本実施例では、コミュニケーションシステムの一例としてのテレビ会議を行うことができるシステムを想定して説明する。
図3に示されている伝送システム1は、複数の伝送端末(10aa,10ab,・・・)、複数の携帯端末(20aa,20ab,・・・)、各伝送端末(10aa,10ab,・・・)用のディスプレイ(120aa,120ab,・・・)、複数の中継装置(30a,30b,・・・)、伝送管理システム50、及び、プログラム提供システム90によって構築されている。
複数の伝送端末10は、コンテンツデータの一例としての画像データ及び音声データの送受信を行う。情報表示装置40は省略されている。すなわち、複数の伝送端末10は、テレビ会議サービスを利用することができるテレビ会議端末である。本実施例では、伝送端末10はテレビ会議に専用の端末であるとする。
他方、複数の携帯端末20は、コンテンツデータの一例としての画像データ及び音声データの送受信を行う。携帯端末20はテキストデータを送受信可能であってもよい。すなわち、複数の携帯端末20は、テレビ会議だけでなく、テキストチャットを利用できてもよい。本実施例では、携帯端末20は、特に断らない限り、タブレット型端末、携帯電話、スマートフォン、PDA(Personal Digital Assistant)、ウェアラブルPC、ゲーム機器、汎用PC端末、カーナビゲーション端末、電子ホワイトボード、プロジェクタ、監視カメラ、通信機能を備えた産業用機器などであってもよい。また、産業用機器には、MFP(Multifunction Peripheral/Printer/Product)等のオフィス機器、内視鏡等の医療用機器、耕耘機等の農業用機器などが含まれる。ウェアラブルPCには腕時計やヘッドマウントディスプレイ等が含まれる。なお、携帯端末20は、例えば携帯電話通信網やWiFi(Wireless Fidelity)などを介して通信ネットワーク2に無線で接続されている。
後述するハードウェア構成から明らかなように伝送端末10及び携帯端末20は情報処理装置と称される。
伝送端末10及び携帯端末20は、伝送システム1の呼制御を管理する伝送管理システム50により管理される。
なお、以下では、複数の伝送端末(10aa,10ab,・・・)のうちの任意の伝送端末は「伝送端末10」と表され、複数の携帯端末(20aa,20ab,・・・)のうちの任意の携帯端末は「携帯端末20」と表されている。ディスプレイ120、中継装置30、ルータ70についても同様とする。
また、一方の伝送端末10又は携帯端末20から他方の伝送端末10又は携帯端末20へテレビ会議の開始を要求する伝送端末は「要求元端末」と表され、要求先である宛先としての端末は「宛先端末」と表されている。
また、伝送システム1において、要求元端末と宛先端末との間では、伝送管理システム50を介して、各種の管理情報を送受信するための管理情報用セッションが確立される。また、要求元端末と宛先端末との間では、中継装置30を介して、コンテンツデータを送受信するためのセッションが確立される。なお、コンテンツデータのセッションでは、必ず中継装置30を介する必要はなく、伝送管理システム50を介して通信してもよいし、要求元端末と宛先端末とが直接、通信してもよい。
中継装置30は、上記のように、複数の伝送端末10と携帯端末20との間で、コンテンツデータの中継を行う。
伝送管理システム50は、伝送端末10又は携帯端末20の間で呼制御を行う。その他、伝送端末10及び携帯端末20のログイン認証、通話状況の管理、宛先リストの管理、及び、中継装置30に対しコンテンツデータの送信先を通知したり通話状況を管理させる等を行う。
伝送管理システム50は情報処理装置であるが、又は、監視カメラ、通信機能を備えた産業用機器、ウェアラブルPC等であってもよい。また、産業用機器には、MFP等のオフィス機器、内視鏡等の医療用機器、耕耘機等の農業用機器などが含まれる。ウェアラブルPCには腕時計やヘッドマウントディスプレイ等が含まれる。
プログラム提供システム90は、後述のHD(Hard Disk)204に、伝送端末10や携帯端末20に各種機能を実現させるための端末用プログラムを記憶しており、伝送端末10や携帯端末20に端末用プログラムを送信することができる。プログラム提供システム90は後述するHD304に、伝送管理システム50に各種機能を実現させるための管理装置用プログラムをも記憶しており、伝送管理システム50に管理装置用プログラムを送信することができる。
伝送端末(10aa,10ab,10ac,・・・)、中継装置30a、及びルータ70aは、LAN2aによって通信可能に接続されている。伝送端末(10ad,10bb,10bc,・・・)、携帯端末(20aa、20ab、…)、中継装置30b、及びルータ70bは、LAN2bによって通信可能に接続されている。また、LAN2a及びLAN2bは、ルータ70abが含まれた専用線2abによって通信可能に接続されており、所定の地域A内で構築されている。例えば、地域Aは日本であり、LAN2aは東京の事業所内で構築されており、LAN2bは大阪の事業所内で構築されている。また、携帯端末(20aa,20ab,・・・)は、地域Aで利用されている。
一方、伝送端末(10ca,10cb,10cc,・・・)、中継装置30c、及びルータ70cは、LAN2cによって通信可能に接続されている。伝送端末(10da,10db,10dc,・・・)、携帯端末(20ac、20ad、…)、中継装置30d、及びルータ70dは、LAN2dによって通信可能に接続されている。また、LAN2c及びLAN2dは、ルータ70cdが含まれた専用線2cdによって通信可能に接続されており、所定の地域B内で構築されている。例えば、地域Bはアメリカ合衆国であり、LAN2cはニューヨークの事業所内で構築されており、LAN2dはワシントンD.C.の事業所内で構築されている。また、携帯端末(20ac,20ad,・・・)は、地域Bで利用されている。
また、伝送管理システム50及びプログラム提供システム90は、インターネット2iを介して、伝送端末10、携帯端末20及び中継装置30と通信可能に接続されている。伝送管理システム50又はプログラム提供システム90は、地域A又は地域Bに設置されていてもよいし、これら以外の地域に設置されていてもよい。
また、図3において、各伝送端末10、各携帯端末20、各中継装置30、伝送管理システム50、各ルータ70、及び、プログラム提供システム90の下に示されている4組の数字は、一般的なIPv4におけるIPアドレスを簡易的に示している。
<ハードウェア構成>
<<伝送端末>>
次に、図4を用いて、伝送端末10のハードウェア構成について説明する。図4は、本実施例に係る伝送端末のハードウェア構成図の一例である。図4に示されているように、本実施例の伝送端末10は、伝送端末10全体の動作を制御するCPU(Central Processing Unit)101を有する。また、IPL(Initial Program Loader)等のCPU101の駆動に用いられるプログラムを記憶したROM(Read Only Memory)102、及び、CPU101のワークエリアとして使用されるRAM(Random Access Memory)103を有する。また、端末用プログラム1010、画像データ、及び音声データ等の各種データを記憶するフラッシュメモリ104を有する。また、CPU101の制御に従ってフラッシュメモリ104に対する各種データの読み出し又は書き込みを制御するSSD(Solid State Drive)105を有する。また、フラッシュメモリ等の記録メディア106に対するデータの読み出し又は書き込み(記憶)を制御するメディアドライブ107、及び、伝送端末10の宛先を選択する場合などに操作される操作ボタン108を有する。また、伝送端末10の電源のON/OFFを切り換えるための電源スイッチ109、及び、通信ネットワーク2を利用してデータ伝送をするためのネットワークI/F(Interface)111を備えている。
また、伝送端末10は、CPU101の制御に従って被写体を撮像して画像データを得る内蔵型のカメラ112、このカメラ112の駆動を制御する撮像素子I/F113、及び、音声を入力する内蔵型のマイク114を有する。また、音声を出力する内蔵型のスピーカ115、及び、CPU101の制御に従ってマイク114及びスピーカ115との間で音声信号の入出力を処理する音声入出力I/F116を有する。また、CPU101の制御に従って外付けのディスプレイ120に画像データを伝送するディスプレイI/F117、及び、各種の外部機器を接続するための外部機器接続I/F118を有する。また、認証受付I/F119、及び、上記各構成要素を図4に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン110を備えている。
ディスプレイ120は、被写体の画像や操作用アイコン等を表示する液晶や有機ELによって構成された表示装置である。また、ディスプレイ120は、ケーブル120cによってディスプレイI/F117に接続される。伝送端末10のディスプレイ120は、ケーブル120cによってディスプレイI/F117に接続されているが、これに限られず、ディスプレイ120は、伝送端末10に内蔵されていてもよい。
外部機器接続I/F118には、USB(Universal Serial Bus)ケーブル等によって、外付けカメラ、外付けマイク、及び外付けスピーカ等の外部機器がそれぞれ接続可能である。
認証受付I/F119は、ユーザから認証情報の入力を受け付けるインタフェースであり、具体的には、ICカードリーダや(例えばNFC(Near field communication))、SDカードやSIMカード等の読み取り器が該当する。
さらに、端末用プログラム1010は、インストール可能な形式又は実行可能な形式のファイルで、記録メディア106等の、コンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。また、端末用プログラム1010は、フラッシュメモリ104ではなくROM102に記憶させるようにしてもよい。
携帯端末20のハードウェア構成については伝送端末10のハードウェア構成と重複している部分が多く、また、その相違があるとしても伝送システム1を構築する上で支障がないものとする。
≪伝送管理システム、中継装置、プログラム提供システム≫
次に、図5を用いて、伝送管理システム50のハードウェア構成について説明する。図5は、本実施例に係る伝送管理システム50のハードウェア構成図の一例である。
なお、図示する伝送管理システム50等のハードウェア構成は、1つの筐体に収納されていたりひとまとまりの装置として備えられていたりする必要はなく、伝送管理システム50等が備えていることが好ましいハード的な要素を示す。また、クラウドコンピューティングに対応するため、本実施例の伝送管理システム50等の物理的な構成は固定的でなくてもよく、負荷に応じてハード的なリソースが動的に接続・切断されることで構成されてよい。
伝送管理システム50は、伝送管理システム50全体の動作を制御するCPU301、IPL等のCPU301の駆動に用いられるプログラムを記憶したROM302、及び、CPU301のワークエリアとして使用されるRAM303を有する。また、管理装置用プログラム等の各種データを記憶するHD304、及び、CPU301の制御に従ってHD304に対する各種データの読み出し又は書き込みを制御するHDD(Hard Disk Drive)305を有する。また、フラッシュメモリ等の記録メディア306に対するデータの読み出し又は書き込み(記憶)を制御するメディアドライブ307、及び、カーソル、メニュー、ウィンドウ、文字、又は画像などの各種情報を表示するディスプレイ308を有する。また、通信ネットワーク2を利用してデータ伝送をするためのネットワークI/F309、文字、数値、各種指示などの入力のための複数のキーを備えたキーボード311、及び、各種指示の選択や実行、処理対象の選択、カーソルの移動などを行うマウス312を有する。また、着脱可能な記録媒体の一例としてのCD−ROM(Compact Disc Read Only Memory)313に対する各種データの読み出し又は書き込みを制御するCD−ROMドライブ314を有する。さらに、上記各構成要素を図5に示されているように電気的に接続するためのアドレスバスやデータバス等のバスライン310を備えている。
なお、管理装置用プログラムは、インストール可能な形式又は実行可能な形式のファイルで、記録メディア306やCD−ROM313等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。また、管理装置用プログラムは、HD304ではなくROM302に記憶されるようにしてもよい。
また、中継装置30及びプログラム提供システム90は、上記の伝送管理システム50と同様のハードウェア構成を有しているため、その説明を省略する。
<伝送システムの機能構成>
次に、図6を用いて本実施形態の伝送システム1の機能構成について説明する。図6は、本実施形態の伝送システム1に含まれる伝送管理システム50、伝送端末10、及び、中継装置30の機能ブロック図である。図6では、伝送端末10、中継装置30、及び伝送管理システム50が通信ネットワーク2を介してデータ通信することができるように接続されている。また、図3に示されているプログラム提供システム90は、通信に関しては直接関係ないため、図6では省略されている。
<<伝送端末の各機能構成>>
伝送端末10は、送受信部11、ログイン要求部12、音声入力部13、音声出力部14、帯域情報取得部15、参加者情報取得部16、表示拠点数決定部17、受信メディア制御部18、受信映像データ制御部19、操作入力受付部21、撮像部22、表示制御部23、宛先リスト作成部24、及び、記憶・読出処理部29を有している。これら各部は、図4に示されている各構成要素のいずれかが、フラッシュメモリ104からRAM103上に展開された端末用プログラム1010に従ったCPU101からの命令によって動作することで実現される機能、又は提供される手段である。
また、伝送端末10は、図4に示されているRAM103、ROM102及びフラッシュメモリ104によって構築される記憶部1000を有している。記憶部1000には、領域管理DB(Data Base)1001、レイアウト管理DB1002、参加者情報DB1003、帯域情報DB1004、受信映像管理DB1005、受信優先度管理DB1006、及び、端末用プログラム1010が記憶されている。
以下、各データベースについて説明する。
記憶部1000には、領域管理テーブルによって構成されている領域管理DB1007が構築される。領域管理テーブルには、会議画面500の領域I〜IIIに対応づけてデータID(後述される)が登録される。領域I〜IIIのかっこ内の数字は符号である。領域管理テーブルには、現在の会議画面500の各領域に表示されている画像データの画像データID又は表示データの表示データIDが登録されている。従って、画像データ又は表示データを送信している伝送端末10も特定される。
記憶部1000には、レイアウト管理テーブルによって構成されているレイアウト管理DB1002が構築される。レイアウト管理テーブルでは、表示拠点数に対し、表示拠点、水平方向開始点、水平方向終点、垂直方向始点及び垂直方向終点が対応付けられて管理される。例えば、表示拠点数が1拠点の場合、該拠点の画像データは、ディスプレイ120の水平方向と垂直方向の0%を始点とし、水平方向と垂直方向の100%を終点として表示される。つまり、ディスプレイの全体を1つの画像データで使用する。
記憶部1000には、参加者情報テーブルによって構成されている参加者情報DB1003が構築される。参加者情報テーブルには、各参加端末ごとに画像受信、音声受信、及び、表示データ受信の識別情報とそれぞれの有無が対応づけられている。参加端末とは、セッションが確立している伝送端末である。参加端末は、コンテンツデータの受信又は送信の少なくとも一方が可能な状態であるが、受信又は送信しているとは限らない。
伝送端末10ab(通信IDは01ab)を例にすると、RS001は伝送端末10abの画像データID、RS200は伝送端末10abの音声データID、RS100は伝送端末10abの表示データID、をそれぞれ意味する。つまり、RS001は伝送端末10abが送信する画像データを他の伝送端末10や中継装置30が一意に識別する識別情報であり、RS200は伝送端末10abが送信する音声データを一意に識別する識別情報であり、RS100は伝送端末10abが送信する表示データを一意に識別する識別情報である。以下では、画像受信、音声受信、及び、表示データ受信の識別情報を区別しない場合、「データID」と称することにする。参加者情報テーブルの作成方法は図9にて説明される。
なお、本実施形態で用いられるIDは、識別される対象を一意に識別するために使われる言語、文字、記号、又は各種のしるし等の識別情報を示す。また、通信ID及び中継装置IDは、上記言語、文字、記号、及び各種のしるしのうち、少なくとも2つが組み合わされた識別情報であってもよい。
記憶部1000には、帯域情報テーブルによって構成されている帯域情報DB1004が構築される。帯域情報テーブルは、送信と受信のそれぞれについて、画像、音声、表示データ、及び、合計の帯域が登録されている。画像の受信帯域を例に取ると、200kbpsが確保されている。帯域情報テーブルは周期的に更新されることが好ましい。あるいは最大の更新期間を超えないように適宜、更新される。
記憶部1000には、表5に示されているような受信映像管理テーブルによって構成される受信映像管理DB1005が構築されている。受信映像管理テーブルでは、伝送端末10が参加している会議で共有されている画像データ又は表示データのフレームデータ(静止画)とその保存時刻(例えばファイル名の1234555等)が管理されている。フレームデータのフィールドはフレームデータのファイル名やパス名を示す。フレームデータそのものが直接格納されていてもよい。受信映像管理DB1005は記憶手段の一例である。
また、記憶部1000には、表6に示されているような受信優先度管理テーブルによって構成されている受信優先度管理DB1006が構築されている。受信優先度管理テーブル(優先度情報)では、伝送端末10が現在参加している会議において各参加端末が共有しているデータの一覧が管理され、それぞれのデータの優先度、データID、最後に出力した最終出力時刻、受信状態、及び、強制休止理由が管理されている。
優先度は伝送端末10が受信しているすべてのデータの中で出力が優先される順序を示している。中継装置30は音声データを送信した他の拠点の伝送端末10の優先度が高くなるように音声データの識別情報に優先度を付けて伝送端末10に送信している。伝送端末10はこれにより受信優先度管理テーブルの優先度を更新する。従って、受信優先度管理テーブルでは、最近、音声を発した拠点ほど優先度が高くなる傾向になる。また、優先度はデータ種類(音声データ、画像データ、表示データ)によっても決定される。これらに加えて、ユーザが優先度を操作可能(任意に変更可能)であってもよい。後述する受信メディア制御部18は、優先度が低いデータIDのデータの受信を休止する。
最終出力時刻は、各コンテンツデータを最後にユーザに提示した時刻を表す。例えば画像データであれば最後にディスプレイ120に表示された時刻、音声データであれば最後にスピーカ等の再生装置で出力された時刻である。
受信状態は各コンテンツデータが受信されているかどうかなどを示している。受信状態は"受信中"であれば、実際に該コンテンツデータを受信している状態であることを示す。"受信停止中"は、受信可能であるが必要でないため該コンテンツデータを受信していない状態であることを示す。必要でないとは、画像データの場合、優先度が低いため会議画面500に表示されないので受信する必要がないことを示す。音声データの場合は通信先の拠点の発話がないことを示す(会議をモニターするだけの伝送端末など)。"受信強制休止中"は、優先度の高いコンテンツデータの受信状態を改善するため、後述する受信メディア制御部18により受信を休止されている事を示している。この場合には、その判断の原因として優先されたコンテンツデータのデータIDが「強制休止理由」欄に記録される。
なお、以上でDBやテーブルと称したのは説明の便宜のためであって、記憶部1000に記憶されている情報がDBやテーブルの形態で記憶されている必要はない。これは以降の説明でも同様である。
(伝送端末の各機能構成)
次に、図4及び図6を用いて、伝送端末10の各機能構成について詳細に説明する。伝送端末10の送受信部11は、図4に示されているCPU101からの命令、及び図4に示されているネットワークI/F111によって実現され、通信ネットワーク2を介して中継装置30及び伝送管理システム50と各種データの送受信を行う。送受信部11は、所望の宛先端末と通信を開始する前から、伝送管理システム50と宛先候補としての各端末の状態を示す各状態情報の受信を開始する。なお、この状態情報は、各伝送端末10の稼動状態(ONラインかOFFラインかの状態)だけでなく、ONラインであってもさらに通信中であるか、離籍中であるか等の詳細な状態を示す。送受信部11は受信手段11の一例である。
ログイン要求部12は、図4に示されているCPU101からの命令によって実現され、電源ONの受け付けを契機として、送受信部11から通信ネットワーク2を介して伝送管理システム50に、ログインを要求する旨を示すログイン要求情報、及び要求元端末の現時点のIPアドレスを自動的に送信する。また、ユーザが電源スイッチ109をONの状態からOFFにすると、送受信部11が伝送管理システム50へ電源をOFFする旨の状態情報を送信した後に、操作入力受付部21が電源を完全にOFFにする。これにより、伝送管理システム50側では、伝送端末10が電源ONから電源OFFになったことを把握することができる。
音声入力部13は、図4に示されているCPU101からの命令、及び図4に示されている音声入出力I/F116によって実現され、マイク114によってユーザの音声が音声信号に変換された後、この音声信号に係る音声データを入力する。
音声出力部14は、図4に示されているCPU101からの命令、及び図4に示されている音声入出力I/F116によって実現され、音声データに係る音声信号をスピーカに出力し、スピーカ115から音声を出力させる。
帯域情報取得部15は、図4に示されているCPU101からの命令及びネットワークI/F111等により実現され、通信ネットワーク2の現在の受信帯域及び送信帯域を取得する。受信帯域及び送信帯域は帯域情報テーブルに登録される。例えば、伝送管理システム50や中継装置30との平均的な通信速度を測定したり、伝送管理システム50や中継装置30から帯域情報を取得する。実際の通信速度をそのまま利用できる帯域として扱うのでなく、例えばある一定期間内の最大の通信速度を求め、その値を利用できる帯域として扱ってもよい。
参加者情報取得部16は、図4に示されているCPU101からの命令等により実現され、現在の会議の参加端末に関する情報を取得し参加者情報DB1003の参加者情報テーブルに登録する。参加者情報テーブルに登録される情報は、伝送管理システム50及び中継装置30から取得される。
表示拠点数決定部17は、図4に示されているCPU101からの命令等により実現され、ディスプレイ120の会議画面500に表示する表示拠点数(画像データ)の数を決定する。具体的には、ディスプレイ120のサイズ(解像度)による上限の範囲でユーザの設定により表示拠点数を決定する。また、ユーザが表示拠点数を決定していない場合、参加端末数に連動して表示拠点数を増大させることもできる。
受信メディア制御部18は、図4に示されているCPU101からの命令等により実現され、受信優先度管理テーブルを参照して各コンテンツデータの強制受信休止処理や休止処理されたデータの受信再開処理を行う。詳細は後述する。受信メディア制御部18は動画データ決定手段の一例である。
受信映像データ制御部19では、図4に示されているCPU101からの命令等により実現され、画像データ又は表示データの受信時にフレームデータの保存の要否を判断し、必要に応じてフレームデータを保存すると共に受信映像管理テーブルの更新などを行う。また、定期的に受信映像管理テーブルを確認し、長時間更新されていない画像データ又は表示データに対してフレームデータを要求する処理を行う。詳細は後述する。受信映像データ制御部19は静止画データ記憶手段の一例である。
操作入力受付部21は、図4に示されているCPU101からの命令、並びに図4に示されている操作ボタン108及び電源スイッチ109によって実現され、ユーザによる各種入力を受け付ける。例えば、ユーザが、図4に示されている電源スイッチ109をONにすると、図4に示されている操作入力受付部21が電源ONを受け付けて、電源をONにする。
撮像部22は、図4に示されているCPU101からの命令、並びに図4に示されているカメラ112及び撮像素子I/F113によって実現され、被写体を撮像して、この撮像して得た画像データを出力する。
表示制御部23は、図4に示されているCPU101からの命令、及び図4に示されているディスプレイI/F117によって実現され、会議画面500を生成し、ディスプレイ120に対して会議画面500を送信するための制御を行う。表示制御部23は表示処理手段の一例である。
宛先リスト作成部24は、図4に示されているCPU101からの命令等により実現され、伝送管理システム50から受信した、各宛先候補としての伝送端末10の状態情報に基づいて、宛先候補の伝送端末10の状態がアイコンで示された宛先リストの作成及び更新を行う。
また、記憶・読出処理部29は、図4に示されているCPU101からの命令、及び図4に示すSSD105によって実行され、記憶部1000に各種データを記憶したり、記憶部1000に記憶された各種データを読み出す処理を行う。なお、記憶部1000には、図示されるものの他、宛先端末との通話を行う際に受信される画像データ、音声データ及び表示データが受信される度に上書き記憶される。
なお、以上でDBやテーブルと称したのは説明の便宜のためであって、記憶部1000に記憶されている情報がDBやテーブルの形態で記憶されている必要はない。これは以降の説明でも同様である。
<<伝送管理システムの機能構成>>
伝送管理システム50は、送受信部51、端末認証部52、状態管理部53、端末状態取得部54、セッション管理部55、端末抽出部56、及び、記憶・読出処理部59を有している。これら各部は、図5に示されている各構成要素のいずれかが、HD305からRAM303上に展開された管理装置用プログラム5010に従ったCPU301からの命令によって動作することで実現される機能又は提供される手段である。
また、伝送管理システム50は、図5に示されているHDD305、RAM303、ROM302等により構築される記憶部5000を有している。以下、記憶部5000に記憶されている各種データベースについて説明する。
記憶部5000には、中継装置管理テーブルによって構成されている中継装置管理DB5001が構築されている。この中継装置管理テーブルでは、各中継装置30の中継装置ID毎に、各中継装置30の稼動状態、稼動状態が示される状態情報が伝送管理システム50で受信された受信日時、中継装置30のIPアドレス、及び中継装置30における最大データ伝送速度(Mbps)が関連付けられて管理される。
また、記憶部5000には、端末認証管理テーブルによって構成されている端末認証管理DB5002が構築されている。この端末認証管理テーブルでは、伝送管理システム50によって管理される全ての伝送端末10の通信IDに対して、各パスワードが関連付けられて管理される。
また、記憶部5000には、端末管理テーブルによって構成されている端末管理DB5003が構築されている。この端末管理テーブルでは、各伝送端末10の通信ID毎に、各伝送端末10を宛先とした場合の名称(宛先名)、各伝送端末10の稼動状態、後述のログイン要求情報が伝送管理システム50で受信された受信日時、及び伝送端末10のIPアドレスが関連付けられて管理される。
また、記憶部5000には、宛先リスト管理テーブルによって構成されている宛先リスト管理DB5004が構築されている。この宛先リスト管理テーブルでは、テレビ会議における通話の開始を要求する要求元端末の通信IDに対して、宛先端末の候補として登録されている宛先端末の通信IDが全て関連付けられて管理される。例えば、表10に示されている宛先リスト管理テーブルにおいて、通信IDが「01aa」である要求元端末(伝送端末10aa)からテレビ会議における通話の開始を要求することができる宛先端末の候補は、通信IDが「01ab」の伝送端末10ab、通信IDが「01ac」の伝送端末10ac、通信IDが「01ad」の伝送端末10ad、及び通信IDが「01bb」の伝送端末10bb等であることが示されている。
また、記憶部5000には、セッション管理テーブルによって構成されているセッション管理DB5005が構築されている。このセッション管理テーブルでは、中継装置30を選択するためのセッションの実行に用いられるセッションID毎に、画像データ及び音声データの中継に使用される中継装置30の中継装置ID、要求元端末の通信ID、宛先端末の通信ID、及び、会議ID、が関連付けられて管理される。セッションIDはセッションを識別するためのIDであり同じ会議に参加する伝送端末10が同じセッションに含まれるとは限らない。これに対し会議IDは同じ会議に参加する伝送端末10に同じものが付与される。
(伝送管理システムの各機能構成)
次に、伝送管理システム50の各機能構成について詳細に説明する。送受信部51は、図5に示されているCPU301からの命令及びネットワークI/F309によって実行され、通信ネットワーク2を介して伝送端末10又は中継装置30と各種データの送受信を行う。
端末認証部52は、図5に示されているCPU301からの命令によって実現され、送受信部51を介して受信されたログイン要求情報に含まれている通信ID及びパスワードを検索キーとし伝送端末10を認証する。すなわち、端末認証管理DB5002を検索し、端末認証管理DB5002に同一の通信ID及びパスワードが管理されているかを判断することによって端末認証を行う。なお、認証方法はこれに限られず、クライアント証明書(公開鍵と秘密鍵を用いた認証方法)を用いてもよい。
状態管理部53は、図5に示されているCPU301からの命令によって実現され、ログイン要求してきた要求元端末の稼動状態を管理すべく、端末管理DB5003にこの要求元端末の通信ID、要求元端末の稼動状態、伝送管理システム50でログイン要求情報が受信された受信日時、及び要求元端末のIPアドレスを関連付けて記憶して管理する。
また、状態管理部53は、ユーザが伝送端末10の電源スイッチ109をONの状態からOFFにすることで、伝送端末10から送られてきた、電源をOFFする旨の状態情報に基づいて、端末管理DB5003のONラインを示す稼動状態をOFFラインに変更する。
端末抽出部56は、図5に示されているCPU301からの命令によって実現され、ログイン要求した要求元端末の通信IDをキーとして宛先リスト管理DB5004を検索し、要求元端末と通話することができる宛先端末の候補の通信IDを読み出す。また、端末抽出部56は、ログイン要求してきた要求元端末の通信IDをキーとして、宛先リスト管理DB5004を検索し、要求元端末の通信IDを宛先端末の候補として登録している他の要求元端末の通信IDも抽出する。
端末状態取得部54は、図5に示されているCPU301からの命令によって実現され、端末抽出部56によって抽出された宛先端末の候補の通信IDを検索キーとして、端末管理DB5003を検索し、端末抽出部56によって抽出された通信ID毎に稼動状態を読み出す。これにより、端末状態取得部54は、ログイン要求してきた要求元端末と通話することができる宛先端末の候補の稼動状態を取得することができる。
セッション管理部55は、図5に示されているCPU301からの命令によって実現され、セッション管理DB5005に、セッションID、要求元端末の通信ID、宛先端末の通信ID、及び、会議IDを関連付けて記憶して管理する。
記憶・読出処理部59は、図5に示されているCPU301からの命令及びHDD305によって実行され、記憶部5000に各種データを記憶したり、記憶部5000に記憶された各種データを読み出す処理を行う。
<<中継装置の機能構成>>
中継装置30は、送受信部31、状態検知部32、及び記憶・読出処理部39を有している。これら各部は、図5に示されている各構成要素のいずれかが、HD304からRAM303上に展開された中継装置用プログラム3010に従ったCPU301からの命令によって動作することで実現される機能又は提供される手段である。
また、中継装置30は記憶部3000を有しており、この記憶部3000は図5に示されているHD304により構築されている。記憶部3000には中継管理DB3001、中継装置用プログラム3010が記憶されている。
記憶部3000には、中継管理テーブルによって構成されている中継管理DB3001が構築されている。この中継管理テーブルでは、会議IDに対応づけて、この会議に参加している伝送端末10の通信ID、IPアドレス、及びデータIDが登録されている。
中継装置30の送受信部31は、図5に示されているCPU301からの命令及び図5に示されているネットワークI/F309によって実現され、通信ネットワーク2を介して伝送端末10又は伝送管理システム50と各種データの送受信を行う。
状態検知部32は、図5に示されているCPU301からの命令によって実現され、この状態検知部32を有する中継装置30の稼動状態を検知する。稼動状態としては、「ONライン」、「OFFライン」、「通話中」又は「一時中断」等の状態がある。
記憶・読出処理部39は、図5に示されているCPU301からの命令及びHDD305によって実現され、記憶部3000に各種データを記憶したり、記憶部3000に記憶された各種データを読み出す処理を行う。
<通信の開始からセッションの確立まで>
図7は、複数の伝送端末10の間で通信を開始する準備段階の処理を示したシーケンス図の一例である。図7では伝送端末10aaが伝送端末10ac、10ab,10adと通信を開始する準備の処理を説明する。
まず、ユーザが電源スイッチ109をONにすると伝送端末10aaの操作入力受付部21が電源ONを受け付けて、電源をONにする(ステップS21)。そして、伝送端末10aaのログイン要求部12は電源ONの受信を契機とし、送受信部11から通信ネットワーク2を介して伝送管理システム50に、ログイン要求を示すログイン要求情報を自動的に送信する(ステップS22)。ログイン要求は電源ON時だけでなくユーザ操作によって任意のタイミングで送信されることができる。このログイン要求情報には、要求元である伝送端末10aaを識別するための通信ID、及びパスワードが含まれている。なお、伝送端末10aaから伝送管理システム50へログイン要求情報が送信される際は、受信側である伝送管理システム50は、伝送端末10aaの「IPアドレス」を把握することができる。なお、携帯端末20が要求元端末の場合、操作入力受付部21がユーザのログイン操作を受け付けて、通信ID及びパスワードを伝送管理システム50に送信する。
次に、伝送管理システム50の端末認証部52は、送受信部51を介して受信したログイン要求情報に含まれている通信ID及びパスワードと同一の通信ID及びパスワードが管理されているかを判断することによって端末認証を行う(ステップS23)。本実施形態では、認証が成立したものとして説明する。
端末認証部52によって、伝送端末10の認証が成立した場合、状態管理部53は端末管理テーブルに、伝送端末10aaの通信ID、「稼動状態」、「通信状態」、上記ログイン要求情報が受信された「受信時間」、及び伝送端末10aaの「IPアドレス」を関連付けて記憶する(ステップS24)。なお、この時の「稼動状態」は"ONライン"である。
伝送管理システム50の送受信部51は、端末認証部52によって得られた認証結果が示された認証結果情報を、通信ネットワーク2を介してログイン要求してきた伝送端末10aaに送信する(ステップS25)。
伝送管理システム50の端末抽出部56は、ログイン要求した伝送端末10aaの通信IDである"01aa"を検索キーとして、宛先リスト管理テーブルを検索し、伝送端末10aaと通信することができる伝送端末の候補の通信IDを読み出すことによって抽出する(ステップS26)。ここでは、伝送端末10aaの通信IDである"01aa"に対応する宛先端末(10ab,10ac、10ad、10bb)のそれぞれの通信IDである"01ab"、"01ac"、"01ad"、"01bb"が抽出されることになる。
次に、端末状態取得部54は、端末抽出部56によって抽出された伝送端末10ab、10ac、10ad、10bbの通信ID("01ab"、"01ac"、"01ad"、"01bb")を検索キーとして端末管理テーブルを検索し、通信ID毎に「稼動状態」を読み出す(S27)。ここでは説明のため、伝送端末10ab、10ac、10adが"ONライン"、伝送端末10bbが"OFFライン"であるとする。
次に、送受信部51は、端末抽出部56が抽出した通信ID("01ab"、"01ac"、"01ad"、"01bb")と「稼動状態」とが含まれた宛先状態情報を、通信ネットワーク2を介して伝送端末10aaに送信する(ステップS28)。これにより、伝送端末10aaは、伝送端末10aaと通信することができる伝送端末(10ab,10ac、10ad、10bb)の現時点のそれぞれの「稼動状態」を把握することができる。
さらに、伝送管理システム50の端末抽出部56は、ログイン要求してきた伝送端末10aaの通信IDである"01aa"を検索キーとして、宛先リスト管理テーブルを検索し、通信IDである"01aa"を宛先端末の候補として登録している伝送端末10の通信IDを抽出する(ステップS29)。上記の宛先リスト管理テーブルでは、抽出される他の伝送端末10の通信IDは"01ab""01ac""01ad""01bb"である。
次に、伝送管理システム50の端末状態取得部54は、ログイン要求して来た伝送端末10aaの通信IDである"01aa"を検索キーとして、端末管理テーブルを検索し伝送端末10aaの「稼動状態」を取得する(ステップS30)。
そして、送受信部51は、上記ステップS29で抽出された通信ID("01ab"、"01ac""01ad""01bb")に係る伝送端末10のうち、端末管理テーブルで「稼動状態」が"ONライン"となっている伝送端末10に、上記ステップS30で取得された伝送端末10aaの通信IDである"01aa"と「稼動状態」として"ONライン"が含まれる宛先状態情報を送信する(ステップS31、S32、S33)。従って、伝送端末10ab、10ac、10adに宛先状態情報が送信される。なお、送受信部51が伝送端末10ab、10ac、10adに宛先状態情報を送信する際に、通信ID("01ab"、"01ac"、"01ad")に基づいて、端末管理テーブルで管理されている伝送端末10の「IPアドレス」を参照する。
伝送端末10aaの宛先リスト作成部24は、宛先リストの情報と宛先端末の候補の「稼動状態」とを受け取ると、宛先リスト画面を作成し、表示装置203に表示させる(ステップS34)。この場合の宛先リスト画面には、伝送端末10ab、10ac、10adの名称と「稼動状態」として"ONライン"が表示され、伝送端末10bbの名称と「稼動状態」として"OFFライン"が表示される。
一方、他の伝送端末10ab、10ac、10adでも、図7と同様の処理を行うことで、各伝送端末10ab、10ac、10adが宛先候補の伝送端末10のディスプレイ120に宛先リスト画面が表示される。
図8は、本実施形態に係る複数の伝送端末10の間でセッションを確立する処理の一例のシーケンス図である。
ユーザが伝送端末10aaの操作ボタン108から宛先リスト画面に表示された通信IDとして例えば"01ac"の宛先端末を選択すると、操作入力受付部21は、接続を開始する要求を受け付ける(ステップS41)。
伝送端末10aaの送受信部11は、伝送端末10aaの通信IDである"01aa"と、「宛先端末の通信ID」である"01ac"とが含まれ、接続を開始したい旨を示す開始要求情報を伝送管理システム50に送信する(ステップS42)。これにより、伝送管理システム50は要求元端末(伝送端末10aa)の「IPアドレス」を把握する。
次に、伝送管理システム50のセッション管理部55は「セッションID」を生成する(ステップS43)。「セッションID」としては重複しないIDが生成される。
そして、この生成した「セッションID」と、要求元端末(伝送端末10aa)の通信IDである"01aa"と、宛先端末(伝送端末10ac)の通信IDである"01ac"とをセッション管理DB5005に関連付けて記憶して管理する(ステップS44)。また、会議IDを付与する。
さらに、伝送管理システム50のセッション管理部55は、要求元端末と宛先端末とが通信するのに適切な中継装置30を決定する(ステップS45)。中継装置30を決定するための方法は、例えば受信と送信の帯域が最も広いネットワーク上にある中継装置30を選択する等の方法が考えられる。
なお、中継装置30を選択せずに、要求元端末及び宛先端末間で直接セッションを確立してもよいし、伝送管理システム50を介したセッションを確立してもよい。
そして、伝送管理システム50の送受信部51は、ステップS43で生成した「セッションID」と、ステップS45で決定した中継装置30の「IPアドレス」とを要求元端末(伝送端末10aa)及び宛先端末(伝送端末10ac)に送信する(ステップS46,47)。
伝送端末10acの表示制御部23は要求元端末(伝送端末10aa)の通信IDをディスプレイ120(携帯端末20の場合は表示装置203)に表示するなどして、操作入力受付部21がユーザによるテレビ会議の許可を受け付ける。そして、伝送端末10acの送受信部11は開始許可を伝送管理システム50に送信する(ステップS47−1)。
次に、伝送管理システム50の状態管理部53は、中継開始要求情報として、要求元端末(伝送端末10aa)の「IPアドレス」と通信ID、宛先端末(伝送端末10ac)の「IPアドレス」と通信ID、及び、会議IDを中継装置30に送信する(ステップS48)。中継装置30は中継管理テーブルにおいて会議IDに通信IDを対応づけて管理する。また、中継装置30は通信IDに重複しないデータIDを付与する。データIDは各伝送端末10に通知されてもよいし、されなくてもよい。通知される場合、伝送端末10はコンテンツデータにデータIDを付与して中継装置30に送信する。通知されない場合、中継装置30がIPアドレス等に基づき伝送端末10を識別しコンテンツデータにデータIDを付与して伝送端末10に送信する。
中継装置30の送受信部31は伝送管理システム50から通信IDを受信すると、伝送端末10aaと10acが送信する通信IDを元にこれらがコンテンツデータの送信先であることを検出する。これにより、要求元端末(伝送端末10aa)と宛先端末(伝送端末10ac)との間でセッションが確立される(ステップS49)。セッションが確立することで、伝送端末10aaは中継装置30を介してコンテンツデータを伝送端末10acに送信し、伝送端末10acは中継装置30を介してコンテンツデータを伝送端末10aaに送信する。
次に、伝送端末10aaのユーザが招待通知を伝送管理システム50に送信する(ステップS50)。招待通知とは、すでにセッションが確立されているテレビ会議に別の伝送端末10を参加させるための通知である。招待通知には招待通知を送信した伝送端末10aaの通信IDである"01aa"、招待される伝送端末10ab、10adの通信IDである"01ab" "01ad"が含まれる。また、伝送管理システム50は招待通知を送信した伝送端末10aaの「IPアドレス」を取得する。
伝送管理システム50の送受信部51が招待通知を受信すると、伝送管理システム50の端末状態取得部54は端末管理テーブルから招待される伝送端末10ab、10adの「IPアドレス」を取得する。これにより、伝送管理システム50の送受信部51は伝送端末10ab、10adに招待通知を送信する(ステップS51)。
伝送端末10ab、10adの表示制御部23は要求元端末(伝送端末10aa)の通信IDをディスプレイ120(携帯端末20の場合は表示装置203)に表示するなどして、操作入力受付部21がユーザによるテレビ会議への招待に対する応答を受け付ける。ここではユーザは招待を受諾したものとする。そして、伝送端末10ab、10adの送受信部11は招待受諾を伝送管理システム50に送信する(ステップS52)。
伝送管理システム50のセッション管理部55は伝送端末10ab、10adに伝送端末10aa、10acと同じ会議IDを付与する。
伝送管理システム50の送受信部51は招待通知を送信した伝送端末10aaに招待受諾を送信する(ステップS53)。
この後、伝送管理システム50の送受信部51は招待された伝送端末10ab、10adに関し、ステップS47、S48の処理を行うことで、伝送端末10aaと10acのセッションに伝送端末10ab、10adが参加することができる。すなわち、中継装置30は同じ会議IDの伝送端末10aa、10ac、10ab、10adの間でコンテンツデータを送信(転送)する。
以降は、要求元端末(伝送端末10aa)、宛先端末(伝送端末10ac)、及び、招待された伝送端末10ab、10adとの間で、中継装置30を介してコンテンツデータが送受信される。
<参加者情報テーブルの作成>
次に、図9を用いて参加者情報テーブルの作成について説明する。図9は、参加者情報テーブルの作成手順を示すフローチャート図の一例である。図9の手順はセッションが確立される際に実行され、コンテンツデータの有無については変化があるたびに更新される。
参加者情報取得部16は、伝送管理システム50から参加端末の通信IDを取得する(S10)。参加端末の通信IDはセッション管理テーブルに登録されている。
次に、参加者情報取得部16は、中継装置30から同じ会議IDに紐付けられている伝送端末10の通信IDとデータIDを取得する(S20)。中継装置30はコンテンツデータを送信していない伝送端末10についても通信IDとデータIDを送信する。
また、伝送端末10aaは中継装置30介してコンテンツデータを送信する伝送端末10からコンテンツデータと共にデータIDを受信している(S30)。
参加者情報取得部16は、伝送端末10のデータIDごとに(つまり、画像データ、音声データ、表示データごとに)中継装置30からコンテンツデータが実際に送信されるか否かを判断し、通信IDに対応づけて画像、音声、表示データの有無を登録する(S40)。これにより、参加者情報テーブルが得られる。
<受信するコンテンツデータの制御>
図10は、受信メディア制御部18がコンテンツデータの受信を制御する手順を示すフローチャート図の一例である。図10の手順はコンテンツデータの送受信中、繰り返し実行される。
受信メディア制御部18はステップS1〜S4の処理を、受信優先度管理テーブルの「受信状態」が"受信中"のすべての高優先度のデータIDについて繰り返す。高優先度の受信中のデータIDとは、受信優先度管理テーブルの中で閾値以上の優先度のデータIDをいう。このデータIDのコンテンツデータは高優先度のコンテンツデータ(第一動画データ)である。図10のフローチャート図で明らかになるように、高優先度に該当するデータIDのコンテンツデータは動画として受信される。
例えばユーザは高優先度の範囲を決定できるが、会議画面500の表示拠点数の数よりも多い画像データ又は表示データは表示されない。このため、高優先度の範囲を表示拠点数より多くする意義は少ない。従って、最大で表示拠点数とすればよい。また、表示拠点数のうち1つが大きく表示されるようなレイアウトの場合、高優先度の範囲を1にすることが考えられる。これにより、大きく表示される画像データ又は表示データを優先して動画で表示できる。
このように本実施形態では、高優先度の範囲のコンテンツデータは常に動画として受信される。どの程度、滑らかな動画となるかは実際の受信帯域に依存する。高優先度の範囲でない閾値未満の優先度のコンテンツデータ(第二動画データ)は、高優先度の範囲のコンテンツデータの受信状態が悪化すると受信が休止される。
例えば高優先度であると判断する条件が「優先度2以上」である場合には、データID=RS100とRS002が高優先度として扱われる。以下、ステップS1〜S4で処理対象となるコンテンツデータをデータAと称することにする。ステップS1〜S4により、高優先度のデータAの通信状態によって高優先度のデータAにより優先度が低いコンテンツデータの受信が停止される。
S1:受信メディア制御部18は、データAが最後にユーザに提示された時刻からの経過時間を所定時間T1と比較する。最後にユーザに提示された時刻とは、例えば、データAが画像データの場合は、最後にディスプレイ120に表示された時刻である。データAが音声の場合、最後にスピーカ等の再生装置から出力された時刻である。このような判断を行うことによって、ネットワーク要因だけではなく、復号処理の負荷が増加しているなどの他の要因によってユーザに対する表示や出力が遅れている事も検出することが可能となる。
所定時間T1は利用しているネットワークの種類や伝送端末10の処理能力等によって決定される。ネットワークが3GやLTEであれば、無線LANよりも大きな値となり、有線LANであれば無線LANよりも小さい値となる。ステップS1でNoと判断された場合、次に優先度が高いデータIDのコンテンツデータがデータAとなる。
S2:ステップS1でYesと判断された場合、データAが所定時間T1を超えて更新されていないので、受信メディア制御部18はデータAの復帰カウンタを0にクリアする。復帰カウンタは、"受信休止強制中"に設定されたコンテンツデータを復帰させるまでの時間をカウントするものである。
S3:次に、受信メディア制御部18は受信優先度管理テーブルを参照し、「受信状態」が"受信中"のコンテンツデータの中で最も優先度が低いコンテンツデータを選択する。
S4:受信メディア制御部18はステップS3で選択されたコンテンツデータに対して強制受信休止処理を行う。具体的には、受信優先度管理テーブルのステップS3で選択されたコンテンツデータの「受信状態」を"受信休止強制中"に変更し、「強制受信休止理由」にデータAのデータIDを記録する。受信メディア制御部18は中継装置30に対して、ステップS3で選択されたコンテンツデータを伝送端末10に送信する必要がないことを通知する。中継装置30は、通知されたコンテンツデータについて要求元端末への転送を休止する。これにより、高優先度のコンテンツデータが更新されにくくなっている場合、優先度の低いコンテンツデータの受信を休止できる。
図12にて説明するように、受信が休止されたコンテンツデータか否かに関わらずフレームデータが取得されているので、受信が休止されたコンテンツデータが会議画面500に表示されている場合、このコンテンツデータの静止画が表示される。
以上のステップS1〜S4の処理を、残りの高優先度のデータIDのコンテンツデータに対し繰り返し行う。
すべての高優先度のデータIDのコンテンツデータに対して上記処理を実施した後、受信メディア制御部18は受信優先度管理テーブルにおいて「受信状態」が"受信休止強制中"となっているコンテンツデータについて以下の処理を行う。以下、ステップS5〜S11で処理対象となるコンテンツデータをデータBと称することにする。ステップS5〜S11により、"受信休止強制中"のコンテンツデータの受信の再開が行われる。
S5:まず、受信メディア制御部18はデータBの「強制休止理由」を受信優先度管理テーブルから取得する。以下、「強制休止理由」に登録されているコンテンツデータをデータCとする。
S6:受信メディア制御部18はデータCについて、最後にユーザに提示された最終出力時刻から現在までの経過時間を算出する。この経過時間を所定時間T2と比較する。つまり、データBの「強制休止理由」となっているデータCが最後に更新された時からの経過時間が短い場合(T2未満)、データCが十分な頻度で更新されていると判断する。所定時間T2は所定時間T1より十分に小さい値であることが望ましいが(データBの受信が再開されやすくなるように)、データCを送信する伝送端末がデータCを送信している間隔より大きい値でなければならない(ステップS6が必ずYesと判定されてしまうため)。
S7:ステップS6の比較結果がYesの場合は、受信メディア制御部18はデータCの復帰カウンタの値を1だけ増加させる。つまり、データCが適度な頻度で送信されているので、データBの受信を再開しやすくする。
S8:その後、受信メディア制御部18は復帰カウンタの値が所定値N以上か否かを判断する。所定値Nの値は、画面遷移を安定させる値であり、十分に大きな値とすることが望ましい。ステップS8の判断がNoであった場合、次の"受信休止強制中"のコンテンツデータに対して処理が移行する。
S9:ステップS8の判断がYesであった場合、データCの受信状態が良好であると確認できるので、受信メディア制御部18はデータBの受信を再開する処理を行う。具体的には、受信優先度管理テーブルのデータBの「受信状態」を"受信中"に変更し、中継装置30に対してデータBを伝送端末10に送信するように要求する。中継装置30は、データBについて要求元端末への転送を再開する。
S10:受信メディア制御部18は、データCの復帰カウンタを0にクリアする。これにより、データCが要因となって複数のデータを"受信休止強制中"に変更させている場合、短時間にそれらすべてのデータ受信を再開してしまい、再び、ユーザへのコンテンツデータの出力状況を悪化させてしまうことを抑制することができる。
S11:ステップS6の比較結果がNoの場合は、少なくともデータCの送信サイクルより長い時間、データCが送信されていないので、受信メディア制御部18はデータCの復帰カウンタの値を0にクリアする。
以上のステップS5〜S11の処理を、「受信状態」が"受信休止強制中"となっている残りのコンテンツデータに対し繰り返し行う。
図10の処理により、優先度の低いコンテンツデータの受信を休止させて優先度の高いコンテンツデータを動画として受信しやすくできる。また、優先度の高いコンテンツデータが受信できれば、優先度の低いコンテンツデータの受信を再開できる。
<画像データの受信時の処理>
図11は、受信映像データ制御部19がコンテンツデータを保存する手順を示すフローチャート図の一例である。図11の手順はコンテンツデータの送受信中、繰り返し実行される。
S1:まず、受信映像データ制御部19は、受信映像管理テーブルから受信したコンテンツデータのデータIDを検索し、対応する最終保存時刻T3を読み出す。
S2:ステップS1で抽出した最終保存時刻T3から現在までの経過時間が所定の閾値Tth1以上であるかどうかを判断する。ここで、Tth1はコンテンツデータの保存処理の負荷がどの程度まで許容されるかに応じて決定されるパラメータである。Tth1が短ければ短いほど、より新しいコンテンツデータのフレームデータが保存され、ディスプレイ120に表示されるようになる。一方、コンテンツデータの更新処理が発生する頻度が増えるため、処理の負荷は増大する。ステップS2の判断結果がNoの場合、図11の処理は終了する。
S3:ステップS2の判断結果がYesの場合、受信映像データ制御部19は、伝送端末10が受信したコンテンツデータのフレームデータを記憶部1000に保存し、受信映像管理テーブルの内容を更新する。
S4:次に、受信映像データ制御部19は、ステップS3のコンテンツデータを送信した伝送端末10のコンテンツデータのフレームデータを現在表示しているかどうかを判断する。フレームデータとして現在表示されているコンテンツデータは、領域管理テーブルのデータIDのうち、受信優先度管理テーブルで"受信停止中"又は"受信休止強制中"となっているものである。ステップS4の判断がNoの場合、図11の処理は終了される。
S5:ステップS4の判断がYesの場合、受信映像データ制御部19は表示中のフレームデータをステップ3で保存したフレームデータに更新する処理を行う。つまり、フレームデータを表示中は次々と新しい静止画に更新される。
<コンテンツデータの受信チェック>
図12は、コンテンツデータが受信されているか否かを受信映像データ制御部19が判断する手順を示すフローチャート図の一例である。図12の手順は会議中、所定の時間間隔毎に実行される。
以下のステップS1〜S3の処理は、会議画面500にコンテンツデータが表示されているか否かに関わらず、参加中の会議で共有されている全てのコンテンツデータに対して順次実行される。
S1:処理対象のコンテンツデータについて、受信映像管理テーブルを参照して最終保存時刻を抽出する。
S2:最終保存時刻から現在までの経過時間が所定の閾値Tth2以上であるか否かを判断する。この判断により、保存されているフレームデータが許容される範囲よりも古いものであるかどうかが確認される。閾値Tth2は、許容されるネットワーク帯域の悪化に応じて決定される閾値である。閾値Tth2が小さければ小さいほど、より頻繁に更新の要求を出すことで、常に新しいフレームデータを維持しようとするが、その分、ネットワーク帯域が悪化する。従って、閾値Tth2は閾値Tth1以上でよい(一例として、閾値Tth1が1分、閾値Tth2が5分)。ステップS2の判断がNoであれば、着目しているコンテンツデータについては処理を終了し、残りのコンテンツデータについて処理を継続する。
S3:ステップS2の判断がYesであれば、受信映像データ制御部19はコンテンツデータのフレームデータを更新するため、中継装置30に対してコンテンツデータのフレームデータを要求する。これにより、閾値Tth2を超えるとフレームデータを更新することができる。
その後、残りのコンテンツデータについて処理を継続する。中継装置30を介さず伝送端末10が直接、他の伝送端末10と通信を行う構成の場合、フレームデータの要求は該当するコンテンツデータを送出している伝送端末10に直接、送信する。
このように、動画データを受信している場合だけでなく、動画データを受信していなくてもフレームデータを伝送端末10が保存しておくことで、動画データをフレームデータに置き換える際に最新のフレームデータを表示可能になる。
<<フレームデータの送受信>>
図13は、図12の手順において要求されたフレームデータの送受信処理を説明するシーケンス図の一例である。
S1、S2:これまで説明したように、伝送端末10aaが送信したコンテンツデータは中継装置30を経由して伝送端末10bbへと転送される。
S3:伝送端末10bbは図12で説明したコンテンツデータの定期チェックを行う。説明のため、伝送端末10aaからのコンテンツデータが長時間にわたって伝送端末10bbに届かない状態になったことが検出されたとする。
S4:伝送端末10bbの受信映像データ制御部19は、伝送端末10aaのIPアドレスとデータIDを指定して伝送端末10aaに対しフレームデータの要求を中継装置30を介して行う。
S5:この要求を受けた中継装置30は、フレームデータを要求された伝送端末10aaに対してフレームデータを要求する。
S6:フレームデータの要求を受信した伝送端末10aaは、撮像部22により画像データ又は表示データのフレームデータを作成する。
S7:伝送端末10aaは作成したフレームデータを中継装置30へ送信する。
S8:フレームデータを受け取った中継装置30は、フレームデータを要求元の伝送端末10bbに転送する。
S9:フレームデータを受け取った伝送端末10bbの受信映像データ制御部19は、図12で説明した手順を実行し、受信映像管理テーブルで管理しているフレームデータを更新する。
図13では、伝送端末10からのフレームデータの要求に従って、コンテンツデータの送信元である伝送端末10に中継装置30が逐次、フレームデータを要求する例を示した。しかし、例えば、中継装置30がコンテンツデータのフレームデータを保存しておき、中継装置30が伝送端末10からフレームデータの要求を受信した場合に、保存しているフレームデータを要求元へ転送するようにしてもよい。中継装置30は十分に新しいフレームデータであることを確認して、フレームデータを要求元へ転送する。つまり、中継装置30も各伝送端末10から受信したコンテンツデータからフレームデータを作成し定期的に保存している。
また、図13のステップS7,S8で送信されるフレームデータについては、このフレームデータの転送に利用されるネットワーク帯域を低く制限するようにしても良い。これにより、他のネットワーク通信に極力影響を与えないでフレームデータを受信することができる。
<会議画面の表示手順>
図14は、伝送端末10が会議画面500を表示する手順を示すフローチャート図の一例である。図14の手順は図10の受信休止処理と同程度の周期で繰り返し行われる。
まず、表示制御部は受信優先度管理テーブルから表示拠点数だけデータIDを読み出す(S10)。
そして、ステップS20からS40の処理を、ステップS10で読み出したデータIDの数だけ繰り返す。
まず、表示制御部23は受信優先度管理テーブルから着目しているデータIDの「受信状態」が"受信中"か否かを判断する(S20)。
ステップS20の判断がYesの場合、表示制御部23は優先度に従って定められている領域に動画を配置する(S30)。
ステップS20の判断がNoの場合、表示制御部23は優先度に従って定められている領域にフレームデータを配置する(S40)。
以上のような処理により、会議画面の各領域に動画又はフレームデータを表示できる。
<画面遷移例>
図15は、伝送端末10に表示される会議画面500の画面遷移を説明する図の一例である。図15では、高優先度の範囲が"1"の例を示している。
上記のように、会議画面500の領域の数及び配置は、ネットワーク帯域の状況によるコンテンツデータの受信数によらず一定である。
図15(a)は、データIDがRS100、RS002、及び、RS003の全ての画像データ又は表示データが動画データとして受信されている状態を示している。この後、ネットワーク帯域の変化などにより、受信メディア制御部18がRS003の受信休止処理を行うと判断した。
図15(b)に示すように、表示制御部23は受信映像管理テーブルにおいてRS003に対応づけて保存されているフレームデータを動画の代わりに領域503に表示する。図15(a)から図15(b)への遷移の際、レイアウトが維持されるため、ユーザが煩わしく感じることを抑制でき、ネットワーク帯域に対し最善の状態の会議画面500を表示できる。
次に、受信優先度管理テーブルが変更され、RS003よりもRS010の優先度の方が高くなったとする。優先度は、ユーザが優先度を変更する操作を行うこと、又は、話者の変更などによって変更される。
ネットワーク帯域が変わっていない場合、伝送端末10が動画として受信する画像データはRS100とRS002であるため、RS100とRS002のみが動画として表示され続ける。
しかし、RS010の方がRS003より優先度が高いため、図15(c)に示すように、表示制御部23はRS003のフレームデータが表示されていた領域503に、RS010のフレームデータを表示する。表示制御部23は受信優先度管理テーブルから優先度が3番なのはRS010であることを検出し、受信映像管理テーブルからRS010に対応づけられているフレームデータを読み出す。図11〜図13で述べたように、閾値Tth2程度でフレームデータが更新されるので、それまで会議画面500に表示されていなかった拠点の優先度が高くなり表示されるようになった場合でも、十分に新しいフレームデータを表示できる。
次に、さらにネットワーク帯域が悪化し、受信メディア制御部18がRS002の受信休止処理を行うと判断した。また、コンテンツデータの優先度が変更され、RS002の優先度が下がりRS003の優先度が上がったものとする。
図15(d)に示すように、表示制御部23は、受信映像管理テーブルからRS003に対応づけられているフレームデータを読み出す。RS010については変更がない。図15(d)に示すようにこの場合も全体的なレイアウトは変化せず、最も優先されているRS100のみが通常通り動画データとして表示され、ユーザに対して表示され続けている。すでに表示されているRS010の表示位置には変更がなく、優先度が下がったRS002が表示されていた領域502に優先度が上がったRS003のフレームデータが表示される。
このように、最も優先度が高いRS100については最も大きな領域501に継続して動画のまま表示されている。ネットワーク帯域の変化によるコンテンツデータの受信休止が発生しても、会議画面500のレイアウトが変更されないため、ユーザがRS100に注目している場合、ユーザは視線を移動させる必要がない。従って、ユーザが感じる煩わしさを抑制できる。また、RS003やRS010のフレームデータについても同じレイアウトのまま表示されるので、ユーザが煩わしく感じることが少ない。また、ネットワーク帯域が悪化しても常に更新されているフレームデータが表示されるので、拠点の最新のコンテンツデータの表示できる。フレームデータに切り替わった後も常に更新される最新のフレームデータを表示できる。
なお、図15では自拠点のコンテンツデータが表示されていないが、自拠点のコンテンツデータは、予め定められた領域に表示すればよい。図15では領域503に表示されてもよいし(この場合は表示拠点数は2になる)、4番目の領域が形成されてもよい。
<その他の適用例>
以上、本発明を実施するための最良の形態について実施例を用いて説明したが、本発明はこうした実施例に何等限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々の変形及び置換を加えることができる。
例えば、本実施形態では、中継装置30を介して伝送端末10が通信しているが、伝送端末10は中継装置を介さずに通信してもよい。このような通信の通信プロトコルとして例えばWebRTC(Web Real-Time Communication)が知られている。この場合も、受信帯域に応じて表示拠点数を決定できる。
また、図6などの構成例は、伝送管理システム50及び伝送端末10による処理の理解を容易にするために、主な機能に応じて分割したものである。処理単位の分割の仕方や名称によって本願の発明が制限されることはない。伝送管理システム50及び伝送端末10の処理は、処理内容に応じてさらに多くの処理単位に分割することもできる。また、1つの処理単位がさらに多くの処理を含むように分割することもできる。
また、本実施形態では説明の都合上、伝送管理システム50と中継装置30を別々の装置として説明したが、両者の機能が統合された装置が伝送管理システム50と中継装置30の機能を提供してもよい。
また、伝送システム1が複数の伝送管理システム50を有していてもよく、伝送管理システム50の機能が複数のサーバに分散して配置されていてもよい。
また、伝送管理システム50が記憶部5000に有する各データベースの1つ以上は通信ネットワーク上に存在していてもよい。伝送端末10が記憶部1000に有するデータベースについても同様である。
表示装置としてディスプレイ120を例にしたが、プロジェクタ、HUD(Head Up Display)、テレビ受像器、カーナビゲーション端末、など画像を表示できるものであればよい。