以下、図面を用いて、本発明の第1の実施形態について説明する。
<<通信システムの全体構成>>
まず、図1を用いて、通信システム1について説明する。図1は、一実施形態に係る通信システムの全体構成図である。
通信システム1は、複数の電子黒板2a,2b,2c、PC8、及び管理システム50を備える。
電子黒板2a,2b,2cは、通信ネットワーク9aを介して通信可能に接続されている。また、電子黒板2a,2b,2cには、それぞれディスプレイ3a,3b,3cが設けられている。
電子黒板2a,2b,2cは、電子ペン4a,4b,4cによって生じたイベント(ディスプレイ3a,3b,3cへの電子ペン4a,4b,4cのペン先、又は、ペン尻のタッチ)により描画された画像を、ディスプレイ3a,3b,3cに表示させることができる。なお、電子黒板2a,2b,2cは、電子ペン4a,4b,4cだけでなく、ユーザの手Ha,Hb,Hc等によって生じたイベント(拡大、縮小、ページめくり等のジェスチャ)に基づいて、ディスプレイ3a,3b,3c上に表示されている画像を変更させることもできる。以下、電子黒板2a,2b,2cのうち任意の電子黒板を示す場合には、電子黒板2と表す。また、ディスプレイ3a,3b,3cのうち任意のディスプレイを示す場合には、ディスプレイ3と表す。また、電子ペン4a,4b,4cのうち任意の電子ペンを示す場合には電子ペン4と示す。また、ユーザの手Ha,Hb,Hcのうち任意の手を示す場合には手Hと示す。
また、電子黒板2a,2b,2cには、USB(Universal Serial Bus)メモリ5a,5b,5cが接続可能である。電子黒板2a,2b,2cはUSBメモリ5a,5b,5cからPDF(Portable Document Format)等の電子ファイルを読み出したり、USBメモリ5a,5b,5cに電子ファイルを記録したりすることができる。また、電子黒板2aには、DisplayPort、DVI(Digital Visual Interface)、HDMI(登録商標)(High-Definition Multimedia Interface)およびVGA(Video Graphics Array)等の規格による通信が可能なケーブルを介して、ノートPC6a,6b,6cが接続されている。なお、USBメモリ5a,5b,5cのうち任意のUSBメモリを示す場合にはUSBメモリ5と示す。ノートPC6a,6b,6cのうち任意のノートPCを示す場合にはノートPC6と示す。
これにより、一の拠点で電子黒板2のディスプレイ3上に描画されたストロークのストロークデータは、通信ネットワーク9aを介して他の拠点で電子黒板2へ送信されることで、他の拠点のディスプレイ3上にも表示される。逆に他の拠点で電子黒板2のディスプレイ3上に描画されたストロークのストロークデータは、通信ネットワーク9aを介して一の拠点の電子黒板2へ送信されることで、一の拠点の電子黒板2のディスプレイ3上に表示される。このように、通信システム1では、遠隔地において同じ画像を共有する遠隔共有処理を行うことができるため、遠隔地での会議等に用いると、非常に便利である。
なお、上記の電子黒板2に加えて、電子黒板以外の他の通信端末が通信ネットワーク9aに接続することで、電子黒板2との間でストロークデータを共有することもできる。他の通信端末としては、ストローク共有機能を有するPC、テレビ会議端末、タブレット、スマートフォン、電子看板(デジタルサイネージ)、スポーツや天気予報等で利用されるテレストレータ、又は、遠隔画像(映像)診断装置等の画像処理装置、携帯情報端末、デジタルビデオカメラ、デジタルカメラ、ゲーム機等の画像フレームを供給可能な端末等のコンピュータが含まれる。
電子黒板2c、PC(Personal computer)8、管理システム50は、通信ネットワーク9bを介して通信可能に接続されている。
電子黒板2c及びPC8は、コンテンツデータの例としてテレビ会議用の映像データ及び音データの送受信による通信を行なう。
管理システム50は、電子黒板2c及びPC8の通信状況等を一元的に管理する。
なお、電子黒板2c及びPC8以外の他の通信端末が通信ネットワーク9bに接続することで、他の通信端末と電子黒板2c、PC8との間で映像データを共有することもできる。他の通信端末としては、映像共有機能を有するテレビ会議端末、タブレット、スマートフォン、電子看板(デジタルサイネージ)、テレストレータ、又は、画像処理装置、携帯情報端末、デジタルビデオカメラ、デジタルカメラ、ゲーム機等の画像フレームを供給可能な端末等のコンピュータが含まれる。
なお、電子黒板2cは、ストロークデータを共有するための通信アプリケーション、及び映像データを共有するための通信アプリケーションの双方を起動することで、端末間でストロークデータ、並びに映像データ、及び音データを同時に共有することができる。
一実施形態によると、通信ネットワーク9aはイントラネットであり、通信ネットワーク9bはインターネットである。ただし、通信ネットワーク9a,9bは、各端末が利用する通信プロトコルに応じて、インターネット、LAN(Local Area Network)、イントラネット、又は携帯電話網等の任意の通信ネットワークから任意に選択される。また、通信ネットワーク9a,9bは、共にインターネットである場合のように同じ通信ネットワークであっても良い。
また、一実施形態では、記録媒体の一例として、USBメモリを説明するが、これに限るものではなく、記録媒体の他の例として、SDカード等の各種記録メディアであってもよい。
<電子黒板のハードウェア構成>
図2を用いて、一実施形態に係る電子黒板のハードウェア構成を説明する。なお、図2は、一実施形態に係る電子黒板のハードウェア構成図である。
図2に示されているように、電子黒板2は、電子黒板2全体の動作を制御するCPU(Central Processing Unit)201、IPL等のCPU201の駆動に用いられるプログラムを記憶したROM202、CPU201のワークエリアとして使用されるRAM203、電子黒板用のプログラム等の各種データを記憶するSSD204、通信ネットワーク9との通信を制御するネットワークI/F205、および、USBメモリ5との通信を制御する外部記憶コントローラ206を備えている。さらに、電子黒板2は、CPU201の制御に従って被写体を撮像するカメラ207と、このカメラ207の駆動を制御する撮像素子I/F208と、ノートPC6のディスプレイに対して映像情報を静止画または動画として表示させるキャプチャデバイス211、グラフィクスを専門に扱うGPU(Graphics Processing Unit)212、および、GPUからの出力画像をディスプレイ3へ出力するために画面表示の制御および管理を行うディスプレイコントローラ213を備えている。さらに、電子黒板2は、接触センサ215の処理を制御するセンサコントローラ214、ディスプレイ3上に電子ペン4やユーザの手H等が接触したことを検知する接触センサ215を備えている。一実施形態における、接触センサ215は、赤外線遮断方式による座標の入力および座標の検出を行う。この座標の入力および座標を検出する方法は、ディスプレイ3の上側両端部に設置された2つ受発光装置が、ディスプレイ3に平行して複数の赤外線を放射し、ディスプレイ3の周囲に設けられた反射部材によって反射されて、受光素子が放射した光の光路と同一の光路上を戻って来る光を受光する方法である。接触センサ215は、物体によって遮断された2つの受発光装置が放射した赤外線のID(Identification)をセンサコントローラ214に出力し、センサコントローラ214が、物体の接触位置である座標位置を特定する。なお、以下に示す全ての各IDは、識別情報の一例である。
また、接触センサ215としては、赤外線遮断方式に限らず、静電容量の変化を検知することにより接触位置を特定する静電容量方式のタッチパネル、対向する2の抵抗膜の電圧変化によって接触位置を特定する抵抗膜方式のタッチパネル、接触物体が表示部に接触することによって生じる電磁誘導を検知して接触位置を特定する電磁誘導方式のタッチパネルなどの種々の検出手段を用いてもよい。また、接触センサ215は、カメラを用いて、接触を判断し、座標位置を特定するものであっても良い。
また、電子黒板2は、電子ペンコントローラ216を備えている。この電子ペンコントローラ216は、電子ペン4と通信することで、ディスプレイ3へのペン先のタッチやペン尻のタッチの有無を判断する。なお、電子ペンコントローラ216が、電子ペン4のペン先およびペン尻だけでなく、電子ペン4のユーザが握る部分や、その他の電子ペンの部分のタッチの有無を判断するようにしてもよい。
さらに、電子黒板2は、CPU101の制御に従って、外部のマイク222、及び外部のスピーカ223との間で音信号の入出力を処理する音入出力I/F224と、ユーザの操作を受け付ける操作ボタン225と、電子黒板2の電源のON/OFFを切り換えるための電源スイッチ226と、を備えている。なお、マイク222及びスピーカ223のいずれかが、電子黒板2に内蔵されていても良い。
さらに、電子黒板2は、上記各構成要素間を相互に電気的に接続するためのアドレスバスやデータバス等のバスライン230を備えている。
なお、電子黒板用のプログラムは、CD−ROM等のコンピュータで読み取り可能な記録媒体や、ネットワーク上のサーバに記録して流通やダウンロードさせるようにしてもよい。
<管理システムのハードウェア構成>
図3を用いて、一実施形態に係る管理システムのハードウェア構成を説明する。なお、図3は、一実施形態に係る管理システムのハードウェア構成図である。
管理システム50は、管理システム50全体の動作を制御するCPU501と、伝送管理用プログラムを記憶したROM502と、CPU501のワークエリアとして使用されるRAM503と、各種データを記憶するHD(Hard Disk)504と、CPU501の制御に従ってHD504に対する各種データの読み出しおよび書き込みを制御するHDD505と、フラッシュメモリ等の記録メディア506に対するデータの読み出しおよび書き込み(記憶)を制御するメディアI/F507とを備えている。さらに、管理システム50は、カーソル、メニュー、ウィンドウ、文字、画像等の各種情報をディスプレイ516に表示させるためのディスプレイI/F508と、通信ネットワーク9を利用してデータ伝送をするためのネットワークI/F509と、文字、数値、各種指示等を入力するための複数のキーを備えたキーボード511と、各種指示の選択や実行、処理対象の選択、マウスカーソルなどのポインティングデバイスの移動等を行うマウス512とを備えている。さらに、管理システム50は、着脱可能な記録媒体の一例としてのCD−ROM(Compact Disc Read Only Memory)513に対するデータの読み出しおよび書き込みを制御するCD−ROMドライブ514と、外部の装置との間で情報を送受信するための外部装置I/F515と、上記各構成要素間を相互に電気的に接続するためのアドレスバスやデータバス等のバスライン510とを備えている。
また、上記伝送管理用プログラムは、インストール可能な形式または実行可能な形式のファイルで、上記記録メディア506やCD−ROM513等のコンピュータで読み取り可能な記録媒体に記録して流通させるようにしてもよい。上記伝送管理用プログラムはHD504に記憶されていてもよい。
<PCのハードウェア構成>
図4は、一実施形態に係るテレビ会議端末としてのPC8のハードウェア構成図である。PC8は、CPU801、ROM802、RAM803、フラッシュメモリ804、SSD805、メディアI/F807、電源スイッチ809、バスライン810、ネットワークI/F811、カメラ812、撮像素子I/F813、マイク814、スピーカ815、音入出力I/F816、ディスプレイI/F817、外部機器接続I/F818、キーボード821、及びマウス822を備えている。これらのうち、CPU801は、PC8全体の動作を制御する。ROM(Read Only Memory)802は、IPL(Initial Program Loader)等のCPU801の駆動に用いられるプログラムを記憶する。RAM(Random Access Memory)803は、CPU801のワークエリアとして使用される。フラッシュメモリ804は、通信用プログラム、表示データ、及び音データ等の各種データを記憶する。SSD(Solid State Drive)805は、CPU801の制御にしたがってフラッシュメモリ804に対する各種データの読み出し又は書き込みを制御する。なお、SSDに代えてHDDを用いてもよい。メディアI/F807は、フラッシュメモリ等の記録メディア806に対するデータの読み出し又は書き込み(記憶)を制御する。
また、ネットワークI/F(Interface)811は、通信ネットワーク9bを利用してデータ通信をするためのインターフェースである。カメラ812は、CPU801の制御に従って被写体を撮像して表示データを得る内蔵型の撮像手段の一種である。撮像素子I/F813は、カメラ812の駆動を制御する回路である。マイク814は、音声を入力する内蔵型の集音手段の一種である。音入出力I/F816は、CPU801の制御に従ってマイク814及びスピーカ815との間で音信号の入出力を処理する回路である。ディスプレイI/F817は、CPU801の制御に従って外付けのディスプレイ820に表示データを送信する回路である。外部機器接続I/F818は、各種の外部機器を接続するためのインターフェースである。キーボード821は、文字、数値、各種指示等を入力するための複数のキーを備えている。マウス822は、各種指示の選択や実行、処理対象の選択、マウスカーソルなどのポインティングデバイスの移動等を行う。
また、バスライン810は、CPU801等の図4に示されている各構成要素を電気的に接続するためのアドレスバスやデータバス等である。
ディスプレイ820は、被写体の画像や操作用アイコン等を表示する液晶や有機ELによって構成された表示手段の一種である。また、ディスプレイ820は、ケーブル820cによってディスプレイI/F817に接続される。このケーブル820cは、アナログRGB(VGA)信号用のケーブルであってもよいし、コンポーネントビデオ用のケーブルであってもよいし、HDMI(登録商標)(High-Definition Multimedia Interface)やDVI(Digital Video Interactive)信号用のケーブルであってもよい。
なお、カメラ812は、レンズや、光を電荷に変換して被写体の画像(映像)を電子化する固体撮像素子を含み、固体撮像素子として、CMOS(Complementary Metal Oxide Semiconductor)や、CCD(Charge Coupled Device)等が用いられる。外部機器接続I/F818には、USB(Universal Serial Bus)ケーブル等によって、外付けカメラ、外付けマイク、及び外付けスピーカ等の外部機器がそれぞれ接続可能である。外付けカメラが接続された場合には、CPU801の制御に従って、内蔵型のカメラ812に優先して、外付けカメラが駆動する。同じく、外付けマイクが接続された場合や、外付けスピーカが接続された場合には、CPU801の制御に従って、それぞれが内蔵型のマイク814や内蔵型のスピーカ815に優先して、外付けマイクや外付けスピーカが駆動する。
また、記録メディア806は、PC8に対して着脱自在な構成となっている。また、CPU801の制御にしたがってデータの読み出し又は書き込みを行う不揮発性メモリであれば、フラッシュメモリ804に限らず、EEPROM(Electrically Erasable and Programmable ROM)等を用いてもよい。
<ソフトウェア構成>
図5の(A)は、一実施形態に係る電子黒板のソフトウェア構成図である。図5の(A)に示されているように、OS(Operating System)2020、通信アプリケーションA11、通信アプリケーションB11、及びI/FアプリC11は、RAM203の作業領域2010上で動作する。以後、アプリケーションは、「アプリ」と表す。
OS2020は、基本的な機能を提供し、電子黒板全体を管理する基本ソフトウェアである。通信アプリA11,B11は、他の端末と通信を行うためのアプリであり、それぞれ通信プロトコルが異なる。通信アプリA11は、ストロークデータを他の端末との間で送信するための通信制御機能と、ストロークデータを画像として出力するための画像処理機能を電子黒板2に実行させるクライアントアプリである。通信アプリB11は、会議映像等の映像データ、及び音データを他の端末との間で送信するための通信制御機能と、映像データを入出力するための画像処理機能と、音データを入出力するための音処理機能と、を電子黒板2に実行させるクライアントアプリである。I/FアプリC11は、同じ電子黒板2内で起動している通信アプリA11,B11と通信し、通信アプリA11,B11によるUI画像の生成を制御する。
OS2020、及び、通信アプリA11は、工場出荷前から、電子黒板2a,2b,2cにインストールされている。また、通信アプリB11及びI/FアプリC11は、工場出荷後に、任意に電子黒板2にインストール可能である。以下、電子黒板2cに通信アプリB11及びI/FアプリC11がインストールされており、電子黒板2a,2bに通信アプリB11及びI/FアプリC11がインストールされていないものとして説明を続ける。
図5の(B)は、一実施形態に係るPCのソフトウェア構成図である。図5の(B)に示されているように、OS8020、通信アプリB11は、RAM803の作業領域8010上で動作する。
OS8020は、基本的な機能を提供し、PC8全体を管理する基本ソフトウェアである。通信アプリB11は、会議映像等の映像データを他の通信端末との間で送信するための通信制御機能と、映像データを画像として出力するための画像処理機能と、をPC8に実行させる。
また、OS8020、及び、通信アプリB11は、工場出荷前又は工場出荷後に、PC8にインストールされる。
<<実施形態の機能構成>>
次に、一実施形態に係る通信システムの機能構成について説明する。図6は、一実施形態に係る通信システムの一部を構成する電子黒板、PC、及び管理システム50の機能ブロック図である。図6では、電子黒板2a,2b,2cが、通信ネットワーク9aを介してデータ通信することができるように接続されている。また、図6では、電子黒板2c、PC8、及び管理システム50が、通信ネットワーク9bを介してデータ通信することができるように接続されている。
電子黒板2は、図2に示されているハードウェア構成およびプログラムによって、図6に示されている各機能構成を実現する。また、電子黒板2は、SSD204により構築される記憶部2000を有している。PC8は、図4に示されているハードウェア構成およびプログラムによって、図6に示されている各機能構成を実現する。また、PC8は、SSD805により構築される記憶部8000を有している。
電子黒板2は、最初に遠隔共有処理を開始する「主催装置」となり得ると共に、既に開始されている遠隔共有処理に後から参加する「参加装置」にもなり得る。また、電子黒板2は、大きく分けて、クライアント部20およびサーバ部90の両方によって構成されている。クライアント部20およびサーバ部90は、電子黒板2の1台の筐体内で通信アプリA11が起動することで実現される機能である。なお、クライアント部20およびサーバ部90のうち、電子黒板2にクライアント部20を備え、サーバ部90を配信制御装置などの電子黒板2とは異なる装置とするようにしてもよい。
電子黒板2が主催装置となる場合には、この電子黒板2では、クライアント部20とサーバ部90が実現(実行)される。また、電子黒板2が参加装置となる場合には、この電子黒板2では、クライアント部20は実現(実行)されるが、サーバ部90は実現(実行)されない。即ち、電子黒板2aが主催装置で、電子黒板2b,2cが参加装置となる場合、電子黒板2aのクライアント部20は、同じ電子黒板2a内に実現されたサーバ部90を介して、他の電子黒板2b,2cのクライアント部20と通信を行う。一方、電子黒板2b,2cのクライアント部20は、他の電子黒板2a内に実現されたサーバ部90を介して、他の電子黒板2a,2b又は2cのクライアント部と通信を行う。
〔クライアント部20の機能構成〕 電子黒板2において、通信アプリA11が起動することにより、クライアント部20は動作開始する。クライアント部20は、通信制御部21、及び描画制御部22を有する。
通信制御部21は、CPU201からの命令、或いはネットワークI/F205によって実現され、他の電子黒板2と行う通信や、同じ電子黒板2のサーバ部90等と行う通信を制御する。
描画制御部22は、CPU201からの命令により実現され、ディスプレイ3上の操作により生成するストロークデータ、或いはUSBメモリ5、ノートPC6、通信制御部21、記憶部2000等から取得されるデータに基づいて画像処理を行う。また、描画制御部22は、処理されたデータに基づいて画像レイヤを生成し、これらが重畳された重畳画像を出力する制御を行う。
図7は、一実施形態に係る描画制御部を示した機能ブロック図である。描画制御部22は、ストローク処理部22A、重畳部22Y、及びページ処理部22Zを有している。
ストローク処理部22Aは、CPU201からの命令によって実現され、ディスプレイ3上の電子ペン4や手Hの操作によってストローク描画のイベントが発生すると、操作に応じたストロークデータを生成する処理を行う。
重畳部22Yは、CPU201からの命令によって実現され、各データに基づいて各画像レイヤを生成し、これらを重畳する処理を行う。
ページ処理部22Zは、ストロークデータ等の各表示用のデータを1つのページデータにまとめて、記憶部2000の一部であるページデータ記憶部220に記憶する。
ページデータ記憶部220は、記憶部2000の一部に構築され、表1に示されているようなページデータを記憶する。表1は、ページデータを示す概念図である。ページデータは、ディスプレイ3に表示される1ページ分のデータ(ストローク配列データ(各ストロークデータ)及びメディアデータ)である。
ページデータは、任意の1ページを識別するためのページデータID、このページの表示を開始した時刻を示す開始時刻、ストロークやジェスチャ等によるページの内容の書き換えが行われなくなった時刻を示す終了時刻、電子ペン4やユーザの手Hによるストロークによって生じたストローク配列データを識別するためのストローク配列データID、及びメディアデータを識別するためのメディアデータIDが関連付けて記憶されている。ストローク配列データは、ストローク画像がディスプレイ3上に表示されるためのデータである。メディアデータは、ストローク画像と重畳する他の画像がディスプレイ3上に表示されるためのデータである。
また、ストローク配列データは、表2に示されているように詳細な情報を示している。表2は、ストローク配列データを示す概念図である。表2に示されているように、1つのストローク配列データは、複数のストロークデータによって表される。そして、1つのストロークデータは、このストロークデータを識別するためのストロークデータID、1つのストロークの書き始めの時刻を示す開始時刻、1つのストロークの書き終わりの時刻を示す終了時刻、ストロークの色、ストロークの幅、及び、ストロークの通過点の配列を識別するための座標配列データIDを示している。例えば、ユーザが電子ペン4によってアルファベット「S」を描く場合は一筆書きとなるため、ストロークデータIDが1つで一文字のアルファベット[S]が示される。ところが、ユーザが電子ペン4によってアルファベット「T」を描く場合、二筆書きとなるため、ストロークデータIDが2つで一文字のアルファベット「T」が示されることになる。
更に、この座標配列データは、表3に示されているように詳細な情報を示している。表3は、座標配列データを示す概念図である。座標配列データは、ディスプレイ3上の1点(X座標値、Y座標値)、この1点を通過したときのストロークの開始時刻からの差分の時刻(ms)、及び、この1点における電子ペン4の筆圧の各情報を示している。即ち、表3に示されている1点の集まりが、表2に示されている1つの座標配列データで示されている。例えば、ユーザが電子ペン4によってアルファベット「S」を描く場合、一筆書きとなるが、「S」を描き終えるまでに、複数の通過点を通過するため、座標配列データは、これら複数の通過点の情報を示している。
また、表1に示されているページデータのうちのメディアデータは、表4に示されているように詳細な情報を示している。表4は、メディアデータを示す概念図である。図9に示されているように、メディアデータは、表1に示されているページデータにおけるメディアデータID、メディアデータのデータ種類、メディアデータが記憶された記録時刻、メディアデータによってディスプレイ3上に表示される画像の位置(X座標値、Y座標値)及び画像のサイズ(幅、高さ)、並びにメディアデータの内容を示すデータが関連付けられて示されている。このうち、メディアデータによってディスプレイ3上に表示される画像の位置は、ディスプレイ3の左上端の座標を(X座標値,Y座標値)=(0,0)とした場合に、メディアデータによって表示される画像の左上端の位置を示している。
〔サーバ部90の機能構成〕
サーバ部90は、通信制御部91を有している。
通信制御部91は、CPU201からの命令により実現され、同じ電子黒板2内のクライアント部20における通信制御部21、および通信ネットワーク9aを介して他の電子黒板2内のクライアント部20における通信制御部21との間における通信を制御する。
〔クライアント部80の機能構成〕
電子黒板2及びPC8において通信アプリB11が起動することによりクライアント部80は動作開始する。クライアント部80は、通信制御部81、表示制御部82、及び入力受付部83を有している。
通信制御部81は、CPU201,801からの命令、或いはネットワークI/F205,811により実現され、他の端末等との間の通信を制御する。
表示制御部82は、CPU201,801からの命令により実現され、記憶部2000,8000等から取得されるデータに基づいて画像処理を行い、画像を出力する制御を行う。
入力受付部83は、CPU201,801からの命令により実現され、ユーザによる操作入力を受け付ける。
〔管理システム50の機能構成〕
管理システム50は、図3に示されているハードウェア構成およびプログラムによって、図6に示されている各機能構成を実現する。また、管理システム50は、HD504より構築される記憶部5000を有している。
管理システム50の通信制御部51は、CPU501からの命令により実現され、通信ネットワーク9bを介して電子黒板2又はPC8との通信を制御する。
〔電子黒板2cの機能構成〕
電子黒板2cは、更にアプリI/F部23、表示順制御部24、及びモード切替部25を有する。
電子黒板2cにおいてI/FアプリC11が起動することにより、アプリI/F部23は動作開始する。アプリI/F部23は、CPU201からの命令により実現され、クライアント部20,80に所定のUI画像を出力させる制御を行う。
電子黒板2cにおいてOS2020が起動することにより、表示順制御部24は動作開始する。表示順制御部24は、CPU201からの命令により実現され、クライアント部20,80により作成される画像の一方をアクティブに、他方を非アクティブに制御することで、各画像の表示順を制御する。なお、画像をアクティブに表示制御する処理は、その画像を他の画像に対して優先して表示する処理であり、その画像を最前面に表示する処理である。画像を非アクティブに表示制御する処理は、その画像よりも他の画像を優先して表示する処理であり、その画像を最前面以外の面に表示する処理である。
電子黒板2cにおいてOS2020が起動することにより、モード切替部25は、動作開始する。モード切替部25は、CPU201からの命令により実現され、OS2020における動作モードを切り替える。動作モードの切り替えには、通常モードとスリープモードの切替えが含まれる。通常モードから、スリープモードに切り替えられた場合、モード切替部25は、起動している各アプリに対し、スタンバイ状態に移行する要求を送信する。
<<実施の形態の処理>>
続いて、一実施形態に係る処理について説明する。
(電子黒板間の通信確立処理)
図8を用いて、電子黒板2a,2b,2c間の通信アプリA11による通信を確立する処理について説明する。図8は、電子黒板間の通信を確立する処理を示すシーケンス図である。ユーザが電子黒板2aの電源スイッチ226をオンにすると、通信アプリA11が起動することで電子黒板2aのクライアント部20の処理が開始する(ステップS1)。そして、ディスプレイ3a上の操作により会議主催の要求が受け付けられると、クライアント部20の通信制御部21から同じ電子黒板2aのサーバ部90における通信制御部91に、サーバ部90の処理を開始させる指示を出力する。これにより、電子黒板2aでは、クライアント部20だけでなくサーバ部90も各種処理を開始する(ステップS2)。
次に、電子黒板2aの通信制御部91は、当該電子黒板2aとの接続を確立するための接続情報を生成し、生成された接続情報をディスプレイ3aに表示させる(ステップS3)。この接続情報には、主催装置のIPアドレス、および今回の遠隔共有処理のために生成されたパスコードが含まれている。このパスコードは、記憶部2000に記憶される。そして、接続情報は、電子黒板2aのユーザによって、電話や電子メールにより、電子黒板2b,2cのユーザに伝えられる。
次に、電子黒板2b,2cでは、ユーザが電子黒板2b,2cの電源スイッチ226をオンにすると、通信アプリA11が起動することで電子黒板2b,2cのクライアント部20の処理が開始する(ステップS4,S5)。電子黒板2b,2cにおいて、ディスプレイ3b,3c上の操作によって接続情報の入力が受け付けられると、各電子黒板2b,2cのクライアント部20における通信制御部21が、接続情報のIPアドレスに基づき、通信ネットワーク9aを介して、電子黒板2aのサーバ部90における通信制御部91に対してパスコードを送信して参加要求を行う(ステップS6,S7)。電子黒板2aの通信制御部91は、各電子黒板2b,2cから、参加要求(パスコードを含む)を受信する。
次に、通信制御部91は、各電子黒板2b,2cから受信したパスコードに対し、記憶部2000で管理されているパスコードを用いて認証する(ステップS8)。そして、通信制御部91が、各電子黒板2b,2cのクライアント部20に認証結果を通知する(ステップS9,S10)。ステップS8の認証により、各電子黒板2b,2cが正当な電子黒板であると判断されていた場合には、主催装置である電子黒板2aと、参加装置である電子黒板2b,2cとの遠隔共有処理の通信が確立される(ステップS11,S12)。なお、本実施形態では、電子黒板2a,2b,2c間で送信されるコンテンツデータは、ストロークデータを含む場合について説明する。
電子黒板2a,2b,2cのユーザが電子ペン4cを用いてストローク画像を描画すると、電子黒板2a,2b,2cのストローク処理部22Aは、電子ペン4とディスプレイ3a,3b,3cとの接触部の座標位置に基づいて、描画されたストロークのストロークデータを生成する。電子黒板2a,2b,2cの通信制御部21は、主催装置である電子黒板2aの通信制御部91へ生成されたストロークデータを送信する。
電子黒板2aの通信制御部91は、電子黒板2a,2b,2cから送られて来たストロークデータを受信すると、このストロークデータを電子黒板2a,2b,2cのクライアント部20へ送信する。送信されたストロークデータは電子黒板2a,2b,2cの通信制御部21によって受信される。電子黒板2a,2b,2cのページ処理部22Zは、ページデータ記憶部220において、すでに記憶されているストロークデータを上書きすることなく、新たに受信されたストロークデータを追加して記憶させる(ステップS13,14,15)。これにより、電子黒板2a,2b,2cのページデータ記憶部220には、電子黒板2a,2b,2c間の通信が確立されてから、電子黒板2a,2b,2cのいずれかにより生成されるストロークデータが蓄積されることになる。
(電子黒板とPCとの間の通信確立処理)
図9を用いて、電子黒板2c及びPC8間の通信アプリB11による通信を確立する処理について説明する。図9は、電子黒板及びPC間の通信を確立する処理を示すシーケンス図である。
電子黒板2cにおいて、ユーザによる起動要求の入力に応じて通信アプリB11が起動することで、クライアント部80は各種処理を開始する(ステップS21)。
クライアント部80の通信制御部81は、管理システム50に対し、ログイン要求を送信する(ステップS22)。このログイン要求には、ユーザID、及びパスコードが含まれている。これにより、管理システム50の通信制御部51は、ログイン要求を受信する。
管理システム50は、ログイン要求に含まれているユーザID、及びパスコードの組と、記憶部5000に予め記憶されているユーザID、及びパスコードの組とが一致するかに基づいて、ログイン要求元の電子黒板2cを認証する(ステップS23)。管理システム50の通信制御部51は、ログイン要求元の電子黒板2cに対して、認証結果を送信する(ステップS24)。これにより、電子黒板2cの通信制御部81は、認証結果を受信する。以下、上記ステップS23により、正当なログイン要求元であると判断された場合について説明を続ける。
PC8において、キーボード821あるいはマウス822の操作に基づいて、通信アプリB11の起動要求が受け付けられると、通信アプリB11が起動して、PC8のクライアント部80の処理が開始可能となる(ステップS31)。
続いて、PC8の通信制御部81は、上記の電子黒板2c及び管理システム50間の処理と同様にして、管理システム50に対し、ログイン要求を送信する(ステップS32)。これにより、管理システム50は、ログイン要求を受信する。
管理システム50は、ログイン要求元のPC8を認証し(ステップS33)、PC8に対して、認証結果を送信する(ステップS34)。以下、上記ステップS33により、正当なログイン要求元であると判断された場合について説明を続ける。
電子黒板2cのユーザによる操作に応じて、電子黒板2cの入力受付部83は、PC8との間の通話の開始要求の入力を受け付ける(ステップS41)。通話の開始要求の入力の受け付けに応じて、電子黒板2cの通信制御部81は、管理システム50に対し、通話の開始要求を送信する(ステップS42)。この通話の開始要求には、電子黒板2cが管理システムにログインする際に用いたユーザID、および宛先のPC8のユーザIDが含まれている。これにより、管理システム50は、通信の開始要求を受信する。
次に、管理システム50は、宛先のPC8に対して、上記の通話の開始要求を送信する(ステップS43)。これにより、宛先のPC8は、通話の開始要求を受信する。
PC8の通信制御部81は、ユーザによる操作入力に応じて、管理システム50に対し、応答可否を示す情報を送信する(ステップS44)。以下、PC8が、応答する旨を示す情報を管理システム50へ送信した場合について説明を続ける。
管理システム50の通信制御部51は、応答する旨を示す情報を受信する。管理システム50の通信制御部51は、開始要求元の電子黒板2cに対し、上記の応答する旨を示す情報を送信する(ステップS45)。これにより、電子黒板2cの通信制御部81は、応答する旨を示す情報を受信する。
続いて、管理システム50は、電子黒板2cとPC8との間で通信ネットワーク9bを介してコンテンツデータを送信するための通信を確立させる制御を行う(ステップS46)。通信を確立させる方法として、例えば、管理システム50は、コンテンツデータへのアクセス先へのアクセスを電子黒板2c及びPC8に認可する。アクセス先は、管理システム50内であっても、管理システム50以外の装置であっても良い。電子黒板2cとPC8との間の通信が確立されると、電子黒板2c及びPC8は、アクセス先へアクセスして、自端末側のカメラ207,812で撮像される映像に対応する映像データ、及びマイク222,814で集音される音に対応する音データを送信するとともに、アクセス先から相手側の映像データ及び音データを取得する(ステップS47)。映像データ及び音データは、ストリーミングデータであって、撮像又は集音された時点が異なる複数の静止画の画像データ又は音データを含む。
電子黒板2cの通信制御部81は、新たな時点の画像データ及び音データを受信すると、新たな時点の画像データ及び音データにより記憶部2000に記憶されている画像データ及び音データを上書き更新する(ステップS48,S49)。これにより、最新の画像データ及び音データが記憶部2000には記憶されることになる。
(通信アプリA11による画像生成) 続いて、図10の(A)を用いて、電子黒板2a,2b,2c間で送信されるストロークデータに基づいて画像を生成する処理について説明する。図10の(A)は、通信アプリA11により画像を生成する処理を示すフロー図である。以下、電子黒板2cの通信アプリA11が画像を生成する処理について説明する。
ページデータ記憶部220には、一例としてUSBメモリ5等から取得した背景画像の画像データ(メディアデータ)が記憶されている。電子黒板2cのページ処理部22Zは、ページデータ記憶部220に記憶されている背景画像の画像データを取得する(ステップS51)。
ページデータ記憶部220には、予めオブジェクト画像の画像データ(メディアデータ)が記憶されている。電子黒板2cのページ処理部22Zは、ページデータ記憶部220に記憶されているオブジェクト画像の画像データを取得する(ステップS52)。なお、オブジェクト画像は、丸、四角形、或いは三角形等の予め定められたオブジェクトを示す画像である。
電子黒板2cのページ処理部22Zは、ページデータ記憶部220に蓄積されているストロークデータ(ステップS15参照)を取得する(ステップS53)。
電子黒板2cのページ処理部22Zは、ステップS53で取得されるストロークデータに基づいて、ストローク画像の画像データを生成する(ステップS54)。例えば、ステップS53で「S」の文字を示すストロークデータが取得される場合、ページ処理部22Zは、「S」の画像の画像データを生成する。
電子黒板2cのページデータ記憶部220には、UI画像(user interface)の画像データが記憶されている。UI画像の画像データは、例えば、アイコンやボタンである。電子黒板2cのページ処理部22Zは、ページデータ記憶部220に記憶されているUI画像の画像データを取得する(ステップS55)。UI画像の画像データには、クライアント部80による通信の状態を示すアイコン、会議を終了する指示を受付けるためのアイコンI1、テレビ会議の画面に移行する指示を受付けるためのアイコンI2、及び電子黒板の画面に移行する指示を受付けるためのアイコンI3の画像データが含まれる。なお、アイコンI2は、電子黒板の画面が表示されているときに、電子黒板の画面に、テレビ会議の画面を並べて表示するためのUI画像であってもよい。アイコンI3は、テレビ会議の画面が表示されているときに、テレビ会議の画面に、電子黒板の画面を並べて表示するためのUI画像であってもよい。なお、ページデータ記憶部220に記憶されているUI画像の画像データのうち、通信の状態を示すアイコンは複数ある。これらのうち、ページ処理部22Zが取得する画像データは、アプリI/F部23によって制御される。この処理については、後述する。また、ページデータ記憶部220は、アイコンI1,I2,I3の表示位置を、ユーザによるドラッグ操作に応じて変更可能に管理する。このようにして、ストロークを書き込む領域や確認したい画像領域がこれらのアイコンI1,I2,I3と重なる場合は、アイコンI1,I2,I3の表示位置を移動可能とすることで、操作性や視認性を確保することができる。
電子黒板2cの重畳部22Yは、ステップS51,S52,S54,S55で取得又は生成された各画像データを用いて、背景画像、オブジェクト画像、ストローク画像、及びUI画像が順に重畳された重畳画像の画像データを生成する(ステップS56)。
重畳部22Yは、ステップS56で生成された重畳画像の画像データを表示順制御部24へ出力する(ステップS57)。図11の(A)は、重畳される各画像を示す概念図である。図11の(B)は、重畳画像を示す概念図である。図11の(A)及び(B)に示されているように、ステップS57で出力される重畳画像140は、UI画像140a、ストローク画像140b、オブジェクト画像140c、及び背景画像140dを含んでいる。
通信アプリA11が起動している間、電子黒板2cのクライアント部20は、ステップS51,S52,S53,S54,S55,S56,S57の処理を繰り返す。これにより、最新の背景画像、オブジェクト画像、ストローク画像、UI画像が反映された重畳画像が、表示順制御部24へ繰り返し出力される。
なお、繰り返しの処理で、クライアント部20は、ページデータ記憶部220に記憶されている背景画像の画像データ、又はストロークデータに更新がなければ、ステップS51、又はステップS53,S54の処理をスキップしても良い。また、繰り返しの処理で、クライアント部20は、取得するオブジェクト画像の画像データ、又はUI画像の画像データに変更がなければ、ステップS52、S55の処理をスキップしても良い。この場合、重畳画像の生成には、先に取得又は生成された画像データが用いられる。
(通信アプリB11による画像生成)
続いて、図10の(B)を用いて、電子黒板2c及びPC8間で送信される映像データに基づいて画像を生成する処理について説明する。図10の(B)は、通信アプリB11により画像を生成する処理を示すフロー図である。以下、電子黒板2cの通信アプリB11が画像を生成する処理について説明する。
電子黒板2cの表示制御部82は、記憶部2000に記憶されている最新の画像の画像データ(ステップS48参照)を取得する(ステップS61)。なお、最新の画像の画像データとは、ステップS47で受信される映像データを構築する最新の画像の画像データであり、ステップS48で上書き保存さるものである。
電子黒板2cの記憶部2000には、UI画像の画像データが記憶されている。UI画像は、例えば、アイコンやボタンである。また、UI画像は、「宛先リスト追加要求受付中」等のイベントに応じたメッセージであっても良い。電子黒板2cの表示制御部82は、ページデータ記憶部220に記憶されているUI画像の画像データを取得する(ステップS62)。UI画像の画像データには、クライアント部20による通信の状態を示すアイコン、会議を終了するためのアイコンI1、テレビ会議の画面に移行するためのアイコンI2、及び電子黒板の画面に移行するためのアイコンI3の画像データが含まれる。ページデータ記憶部220に記憶されているUI画像の画像データのうち、通信の状態を示すアイコンは複数ある。これらのうち、表示制御部82が取得する画像データは、アプリI/F部23によって制御される。この処理については、後述する。
電子黒板2cの表示制御部82は、ステップS61,S62で取得された各画像データを用いて、最新の画像、及びUI画像が順に重畳された重畳画像の画像データを生成する(ステップS63)。
電子黒板2cの表示制御部82は、ステップS63で生成された重畳画像の画像データを表示順制御部24へ出力する(ステップS64)。図12の(A)は、重畳される各画像を示す概念図である。図12の(B)は、重畳画像を示す概念図である。図12の(A)及び(B)に示されているように、ステップS64で出力される重畳画像150は、UI画像150a、及び映像を構築する最新画像150bを含んでいる。
通信アプリB11が起動している間、電子黒板2cのクライアント部80は、ステップS61,S62,S63,S64の処理を繰り返す。これにより、映像を構築する最新の画像、及びUI画像が反映された重畳画像が、表示順制御部24へ繰り返し出力される。
なお、繰り返しの処理で、クライアント部80は、取得するUI画像の画像データに変更がなければ、ステップS62の処理をスキップしても良い。この場合、重畳画像の生成には、先に取得された画像データが用いられる。
(表示順制御)
続いて、図13を用いて、電子黒板2cの表示順制御部24が、クライアント部20により出力される画像、及びクライアント部80により出力される画像の表示順を制御する処理について説明する。図13は、画像の表示順を制御する処理を示すシーケンス図である。なお、図13は、電子黒板2c内の各部によるシーケンスを示している。
通信アプリA11,B11のうち2つ目のアプリが起動するタイミングで、表示順制御部24は、デフォルトの処理として、クライアント部20から出力される画像データ(ステップS57参照)がアクティブに表示され、クライアント部80から出力される画像データ(ステップS64参照)が非アクティブに表示されるように画像信号をディスプレイ3cへ出力する(ステップS71)。なお、表示順の制御は、例えば、OS2020により、通信アプリA11に対応するウィンドウ等の表示領域を、通信アプリB11に対応するウィンドウ等の表示領域に重畳させる処理により実行される。クライアント部20により出力される画像が全画面の画像である場合、ディスプレイ3cの表示は、クライアント部20により出力される画像に占有される。
ページデータ記憶部220には、通信アプリB11にかかる状態を示すUI画像として所定の輝度のアイコンの画像データと、半輝度のアイコンの画像データが記憶されている。所定の輝度のアイコンは、通信アプリB11において、予め定められたイベントが発生している状態を示す。半輝度のアイコンは、通信アプリB11において、予め定められたイベントが発生していない状態を示す。通信アプリA11,B11のうち2つ目のアプリが起動するタイミングで、デフォルトの処理として、アプリI/F部23は、通信アプリB11にかかる状態を示すUI画像のうち半輝度のアイコンを示すUI画像情報をクライアント部20へ送信する(ステップS72)。
クライアント部20の通信制御部21は、半輝度のアイコンの画像データを示すUI画像情報を受信すると、ページ処理部22Zは、ステップS55で半輝度のアイコンの画像データを取得する。これにより、ステップS57で表示順制御部24へ出力される重畳画像には、図11の(B)に示したような半輝度のアイコン141が含まれるようになる。これによりクライアント部20により出力される画像がアクティブに制御される場合でも、ユーザは、半輝度のアイコン141を視認することで、通信アプリB11において、予め定められたイベントが発生していない状態であることを把握できる。
アプリI/F部23は、通信アプリB11の状態変化の契機となる予め定められたイベントを検知する。予め定められたイベントとしては、通信アプリB11がユーザからの何らかの入力を受け付ける状態へ変化する契機となるイベントが挙げられる。このような、イベントとしては、例えば、PC8による通話の開始要求の受信や、PC8側の宛先リストに、電子黒板2cのユーザを追加する要求の受信等、PC8側の要求の受信が挙げられる。以下、イベントが宛先リストへの追加要求の受信である場合について説明する。
電子黒板2cの通信制御部81は、イベントとして、PC8側により送信された宛先リストへの追加要求を受信する(ステップS81)。
電子黒板2cのアプリI/F部23は、予め定められたイベントとして、宛先リストへの追加要求の受信を検知する(ステップS82)。アプリI/F部23が予め定められたイベントを検知する方法に、特に制限はない。例えば、アプリI/F部23は、通信制御部81へ、例えば30秒毎などの所定の間隔で、予め定められたイベントを受信したか確認する情報を送信しても良い。この場合、アプリI/F部23は、この情報に対する通信制御部81からの応答に基づいて、イベントを検知することができる。また、通信制御部81は、予め定められたイベントを受信すると、イベントの発生を示す情報をアプリI/F部23へ送信しても良い。この場合、アプリI/F部23は、受信した情報に基づいて、イベントを検知する。
電子黒板2cのアプリI/F部23は、予め定められたイベントごとに、対応するUI画像を管理している。以下、アプリI/F部23は、宛先リストへの追加要求の受信に対応するUI画像として所定の輝度のアイコンを示す情報を管理している場合について説明する。アプリI/F部23は、宛先リストへの追加要求の受信の検知に応じて、このイベントに対応する所定の輝度のアイコンを示す変更要求情報を、クライアント部20へ送信する(ステップS83)。なお、変更要求情報は、変更要求情報に示される画像にUI画像を変更する命令である。このように、アプリI/F部23は、一方の通信アプリA11,B11のイベントを検知すると、他方の通信アプリB11,A11へ変更要求情報を送信する。
電子黒板2cの通信制御部21は、アプリI/F部23によって送信される変更要求情報を受信する。電子黒板2cのページ処理部22Zは、受信された変更要求情報に基づいて、ページデータ記憶部220に記憶されているUI画像の画像データのうち、所定の輝度のアイコンの画像データをステップS55で取得する。これにより、ステップS57で所定の輝度のアイコンの画像がUI画像として出力される。図11の(C)は、変更要求情報の受信に基づいて変更された重畳画像を示す概念図である。図11の(C)に示されているように、変更要求情報の受信後に、ステップS57で出力される重畳画像140には、所定の輝度のアイコン142が含まれる。これによりクライアント部20により出力される画像がアクティブに制御される場合でも、ユーザは、所定の輝度のアイコン142を視認することで、通信アプリB11において、予め定められたイベントが発生している状態に遷移したことを把握できる。
電子黒板2cのユーザが、ディスプレイ3cにおけるアイコン142が表示された位置をタッチすると、描画制御部22は、ディスプレイ3cにおける表示順を変更するための要求の入力を受け付ける(ステップS84)。
表示順を変更するための要求の入力の受け付けに応じて、電子黒板2cの通信制御部21は、表示順制御部24へ、ディスプレイ3cにおける表示順を変更するための表示順変更要求情報を送信する(ステップS85)。
電子黒板2cの表示順制御部24は、表示順変更要求情報を受信する。表示順変更要求情報の受信に応じて、表示順制御部24は、表示順変更要求情報の送信元であるクライアント部20から出力される画像を非アクティブに、他方のクライアント部80から出力される画像をアクティブに制御する(ステップS86)。これにより、図12の(B)に示されるような通信アプリB11による画像が、ディスプレイ3cから出力されるようになる。なお、表示順制御部24は、クライアント部20から出力される画像を小さいサイズで、クライアント部80から出力される画像を大きいサイズで両方同時に表示されるように制御してもよい。
電子黒板2cのユーザが、ディスプレイ3cのボタン153が表示された位置をタッチすると、入力受付部83は、PC8側の宛先リストへの追加要求に対する許可の応答の入力を受け付ける(ステップS87)。
許可の応答の入力の受け付けに応じて、電子黒板2cの通信制御部81は、許可の応答を、宛先リストへの追加要求元のPC8へ送信する(ステップS88)。
(会議終了) 続いて、電子黒板2a,2b,2c、及びPC8の間の会議を終了するときの処理について説明する。図17は、会議を終了するときの電子黒板2cの各機能ブロックの処理を示すシーケンス図である。
まず、図17の(A)を用いて、クライアント部20によって出力される画像がアクティブである場合に、会議を終了する処理について説明する。電子黒板2cのユーザが電子ペン4c等で、重畳画像140のアイコンI1に接触すると、クライアント部20は、会議の終了の要求を受け付ける(ステップS101)。
会議の終了の要求が受け付けられると、クライアント部20の通信制御部21は、同じ電子黒板2cのモード切替部25へスリープモードへ切り替える要求を送信する(ステップS102)。
モード切替部25は、スリープモードへ切り替える要求を受信すると、電子黒板2cのOS2020上で起動している各アプリに対して、スタンバイ状態へ移行する要求を送信する。これにより、モード切替部25は、クライアント部20、及びクライアント部80へスタンバイ状態へ移行する要求を送信する(ステップS103,S104)。
クライアント部80は、スタンバイ状態へ移行する要求を受信すると、スタンバイ状態で稼働させない機能として予め設定されている通信制御部81、及び表示制御部82の稼働を停止させる。これにより、通信制御部81は、PC8との通信を切断する(ステップS105)。
クライアント部20は、スタンバイ状態へ移行する要求を受信すると、スタンバイ状態で稼働させない機能として予め設定されている通信制御部21、及び描画制御部22の稼働を停止させる。これにより、通信制御部21は、主催装置である電子黒板2aとの通信を切断する(ステップS106)。
続いて、図17の(B)を用いて、クライアント部80によって出力される画像がアクティブである場合に、会議を終了する処理について説明する。電子黒板2cのユーザが電子ペン4c等で、重畳画像150のアイコンI1に接触すると、クライアント部80は、会議の終了の要求を受け付ける(ステップS111)。
会議の終了の要求が受け付けられると、クライアント部80は、記憶部2000のページデータ記憶部220にストロークデータが記憶されているか判断する(ステップS112)。この処理で、クライアント部80は、記憶部2000のページデータ記憶部220からストロークデータを取得できればYESと判断し、できなければNOと判断する。
ステップS112で、ストロークデータが記憶されている(YES)と判断された場合、電子黒板2cの通信制御部81は、同じ電子黒板2cの表示順制御部24へ、クライアント部20による出力画像をアクティブに表示順を変更するための表示順変更要求情報を送信する。
電子黒板2cの表示順制御部24は、表示順変更要求情報を受信する。表示順変更要求情報の受信に応じて、表示順制御部24は、表示順変更要求情報の送信元であるクライアント部80から出力される画像を非アクティブに、他方のクライアント部20から出力される画像をアクティブに制御する(ステップS113)。これにより、ユーザは、ストローク画像を確認し、必要に応じて画像の保存処理等を行った上で会議を終了することができる。画面の切替後の会議の終了の処理は、ステップS101乃至S105と同様である。
ステップS112でストロークデータが記憶されていない(NO)と判断された場合、クライアント部80の通信制御部81は、同じ電子黒板2cのモード切替部25へスリープモードへ切り替える要求を送信する(ステップS122)。
モード切替部25が、スリープモードへ切り替える要求を受信してかの処理は、ステップS103乃至S106と同様であるので説明を省略する(ステップS123乃至S126)。
<<<第2の実施形態>>>
続いて、図14を用いて、第2の実施形態について、第1の実施形態と異なる点について説明する。図14は、画像の表示順を制御する処理を示すシーケンス図である。なお、図14は、電子黒板2c内の各部によるシーケンスを示している。
記憶部2000には、通信アプリA11にかかる状態を示すUI画像として所定の輝度のアイコンの画像データと、半輝度のアイコンの画像データが記憶されている。所定の輝度のアイコンは、通信アプリA11がストロークデータを受信した状態を示す。半輝度のアイコンは、通信アプリA11がストロークデータを受信していない状態を示す。
ステップS86で表示順が入れ替わるタイミングで、アプリI/F部23は、通信アプリA11にかかる状態を示すUI画像のうち半輝度のアイコンを示すUI画像情報をクライアント部80へ送信する(ステップS90)。
クライアント部80の通信制御部81が、半輝度のアイコンの画像データを示すUI画像情報を受信すると、表示制御部82は、ステップS62で半輝度のアイコンの画像データを記憶部2000から取得する。これにより、ステップS64で表示順制御部24へ出力される重畳画像には、図12(B)に示したような半輝度のアイコン151が含まれる。これによりクライアント部80により出力される画像がアクティブに制御される場合でも、ユーザは、半輝度のアイコン151を視認することで、通信アプリA11が、ストロークデータを受信していない状態であることを把握できる。
アプリI/F部23は、通信アプリA11の状態変化の契機となる予め定められたイベントを検知する。予め定められたイベントとしては、通信アプリA11によるストロークデータの受信が挙げられる。
電子黒板2cの通信制御部21は、イベントとして、電子黒板2aの通信制御部91によって送信されるストロークデータを受信する(ステップS91)。
電子黒板2cのアプリI/F部23は、予め定められたイベントとして、電子黒板2cの通信制御部21によるストロークデータの受信を検知する(ステップS92)。
電子黒板2cのアプリI/F部23は、予め定められたイベントごとに、対応するUI画像を示す情報を管理している。以下、アプリI/F部23は、ストロークデータの受信のイベントに対応するUI画像として所定の輝度のアイコンを示す情報を管理している場合について説明する。アプリI/F部23は、ストロークデータの受信のイベントの検知に応じて、このイベントに対応する所定の輝度のアイコンを示す変更要求情報を、クライアント部80へ送信する(ステップS93)。
電子黒板2cの通信制御部81は、アプリI/F部23によって送信される変更要求情報を受信する。電子黒板2cの表示制御部82は、ステップS62で、受信された変更要求情報に基づいて、記憶部2000に記憶されているUI画像の画像データのうち、所定の輝度のアイコンの画像データを取得する。これにより、ステップS64で、所定の輝度のアイコンの画像がUI画像として出力される。図12の(C)は、変更要求情報の受信に基づいて変更された重畳画像を示す概念図である。図12の(C)に示されているように、ステップS64で出力される重畳画像150には、所定の輝度のアイコン152が含まれる。これによりクライアント部80により出力される画像がアクティブに制御される場合でも、ユーザは、所定の輝度のアイコン152を視認することで、通信アプリA11が、ストロークデータを受信したことを把握できる。
電子黒板2cのユーザが、ディスプレイ3cのアイコン152が表示された位置をタッチすると、入力受付部83は、ディスプレイ3cにおける表示順を変更するための要求の入力を受け付ける(ステップS94)。
表示順を変更するための要求の入力の受け付けに応じて、電子黒板2cの通信制御部81は、表示順制御部24へ、ディスプレイ3cにおける表示順を変更するための表示順変更要求情報を送信する(ステップS95)。
電子黒板2cの表示順制御部24は、表示順変更要求情報を受信する。表示順変更要求情報の受信に応じて、表示順制御部24は、表示順変更要求情報の送信元であるクライアント部80から出力される画像を非アクティブに、他方のクライアント部20から出力される画像をアクティブに制御する(ステップS96)。これにより、クライアント部20から出力される画像がアクティブになると、電子黒板2cのユーザは、新たに追加されたストロークを確認することができる。なお、表示順制御部24は、クライアント部20から出力される画像を大きいサイズで、クライアント部80から出力される画像を小さいサイズで両方同時に表示されるように制御してもよい。
<<<第3の実施形態>>>
続いて、第3の実施形態について、第1及び第2の実施形態と異なる点について説明する。
第1の実施形態では、電子黒板2cにおいて起動する通信用のアプリが、通信アプリA11,B11の2つである場合について説明した。第3の実施形態では、電子黒板2cにおいて起動する通信用のアプリが3つ以上である場合について説明する。
第3の実施形態では、アプリI/F部23は、ステップS83,S93で変更要求情報を送信するときに、イベントが発生したアプリの識別情報を送信する。続いて、通信制御部21,81は、表示順変更要求情報を表示順制御部24へ送信するときに、ステップS83,S93で受信したアプリの識別情報を送信する。表示順制御部24は、受信したアプリの識別情報により識別されるアプリにより出力される画像をアクティブに、他のアプリにより出力される画像を非アクティブに制御する。上記の処理により、通信アプリが3つ以上ある場合でも、表示順制御部24は、どの通信アプリによる画像をアクティブにするか判断できるようになる。
<<<第4の実施形態>>>
続いて、第4の実施形態について、第1乃至第3の実施形態と異なる点について説明する。上記の各実施形態では、イベントが、通信相手からの要求あるいはストロークデータの受信である場合について説明した。しかしながら、イベントは、通信アプリA11,B11のプレゼンスの遷移の契機となる各種情報であっても良い。
アプリI/F部23は、例えば、ステップS10,24における認証結果の受信を、イベントとして検知しても良い(ステップS82,S92参照)。通信アプリA11,B11は上記のイベントを契機としてオンラインのプレゼンスになるため、上記のイベントの検知に応じて、アプリI/F部23は、UI画像を、オンラインのプレゼンスに対応するアイコンへ変更するための変更要求情報をクライアント部20,80へ送信する。
なお、ステップS82,S92でアプリI/F部23が検知するイベントは、クライアント部20,80が受信するイベントに限られない。例えば、アプリI/F部23は、ステップS88でのクライアント部80による応答の送信を検知しても良い。通信アプリB11のプレゼンスは、上記のイベントを契機として通話中に遷移する。上記のイベントの検知に応じて、アプリI/F部23は、UI画像を、通話中のプレゼンスに対応するアイコンへ変更するための変更要求情報をクライアント部20へ送信する。
<<<第5の実施形態>>>
続いて第5の実施形態について、第1乃至第4の実施形態と異なる点について説明する。第5の実施形態において、電子黒板2cの記憶部2000には表示管理テーブルによって表示管理DB2001が構築されている。表5は表示管理テーブルを示す概念図である。
表示管理テーブルには、アプリI/F部23によって検知される予め定められたイベントを示すイベント情報、イベントに対応する通知をどのような出力形式で表示するかを示す形式情報、及び表示内容が関連付けられて管理されている。なお、イベント情報、及び形式情報はそれぞれイベント、或いは形式を示すIDであっても良い。表示内容は、例えば、表示内容を示すテキスト、或いはバッジ、又はダイアログを特定するためのファイル名などの情報であっても良い。
電子黒板2cのアプリI/F部23は、クライアント部80のイベントを検知すると、ステップS83で、検知したイベントを示すイベント情報を含む変更要求情報をクライアント部20へ送信する。
電子黒板2cのクライアント部20の通信制御部21は、アプリI/F部23によって送信される変更要求情報を受信する。電子黒板2cの描画制御部22は、受信された変更要求情報に含まれるイベント情報を検索キーとして表示管理テーブルを検索し、対応する形式情報、及び表示内容を取得する。そして、描画制御部22は、取得された表示内容が、取得された形式情報の形式で表示される画像を生成する。電子黒板2cの重畳部22Yは、ステップS56で、生成された画像を他のレイヤに重畳する。そして、重畳部22Yは、ステップS57で、表示内容が含まれる重畳画像を表示順制御部24へ出力する。表示順制御部24は、表示内容を含む画像データをディスプレイ3cへ出力する。
図15の(A)は、ステップS83で「通信切断」のイベントが検知されたときのディスプレイの表示例である。表示管理テーブルにおいて「通信切断」には、形式情報「ティッカー」、及び表示内容「ネットワークとの接続が切れました」が関連付けられている。このため、描画制御部22は、上記の表示内容が含まれるティッカーTの画像を生成する。なお、描画制御部22は、ティッカーTの画像を、例えば、10秒間等の所定時間生成しても良い。これにより、ティッカーTが長時間表示されることでディスプレイの視認性が低下することを防ぐことができる。
図15の(B)は、ステップS83で「画面共有」のイベントが検知されたときのディスプレイの表示例である。表示管理テーブルにおいて「画面共有」には、形式情報「ダイアログ」、及び表示内容「ダイアログD1」が関連付けられている。描画制御部22は、これらの情報によって特定されるダイアログD1の画像を生成する。このダイアログにより、電子黒板2cは、効果的にユーザに画面の切り換えを促すことができる。この「画面共有」のイベントのように、相手の共有画面に切り替えないとコミュニケーションがとれない場合は、ティッカーではなくダイアログによって切り替えを促す度合いを強めることもできる。
図15の(C)は、ステップS83で「会議中」のイベント(プレゼンス)が検知されたときのディスプレイの表示例である。表示管理テーブルにおいて「会議中」には、形式情報「バッジ」、及び表示内容「バッジBD1」が関連付けられている。描画制御部22は、これらの情報によって特定されるバッジBD1の画像を生成する。電子黒板2cは、バッジBD1によりユーザにテレビ会議中であることを把握させることができる。電子黒板2cにおいて、バッジBD1の位置、及び面積は、他のインターフェースの表示を阻害しないように、予め設定されている。これにより、電子黒板2cは、ユーザによる他の操作を阻害することなく、会議中、継続してバッジBD1を表示させることができる。
上記ではクライアント部80で発生したイベントがアプリI/F23によって検知され、クライアント部20でイベントに対応する情報を出力する例について説明した。クライアント部20で発生したイベントがアプリI/F23によって検知され、クライアント部80でイベントに対応する情報を出力する処理も上記の処理と同様に実行される。ただし、アプリI/F部23によるイベントを示す情報の送信先はクライアント部80となり、上記の描画制御部22による処理は、表示制御部82による処理に置き換えられる。
<<<第6の実施形態>>>
続いて、第6の実施形態について、第1乃至第5の実施形態と異なる点について説明する。
電子黒板2cのページデータ記憶部220は、機能設定画面、及びテレビ会議設定画面を記憶している。電子黒板2cのページ処理部22Zは、起動時、或いはユーザによる要求時等の所定のタイミングで、ページデータ記憶部220に記憶されている機能設定画面を取得する。重畳部22Yは、ステップS57で、取得された機能設定画面が含まれる重畳画像を表示順制御部24へ出力する。表示順制御部24は、機能設定画面を含む画像データをディスプレイ3cへ出力する。図16の(A)は、機能設定画面の一例を示す図である。機能設定画面には、テレビ会議設定画面に移行するためのボタンB1が含まれている。
ユーザが電子ペン4c等によりディスプレイ3cに出力されているボタンB1に接触する操作を行うと、電子黒板2cのページ処理部22Zは、ページデータ記憶部220に記憶されているテレビ会議設定画面を取得する。重畳部22Yは、ステップS57で、取得されたテレビ会議設定画面が含まれる重畳画像を表示順制御部24へ出力する。表示順制御部24は、テレビ会議設定画面を含む画像データをディスプレイ3cへ出力する。図16の(B)は、テレビ会議設定画面の一例を示す図である。
ユーザが、電子ペン4c等により、テレビ会議設定画面の入力欄B2におけるテレビ会議機能を使用する旨のチェックボックスにチェックを入れ、ユーザID、及びパスコードを入力する操作を行うと、クライアント部20は、入力されたユーザID、及びパスコードを記憶部2000に記憶させる。この設定後に電子黒板2が起動すると、クライアント部80は、ユーザによる操作を受け付けることなく、記憶部2000に記憶されたユーザID、及びパスコードに基づいて自動的に管理システム50へログイン要求する。
更に。ユーザによって、テレビ会議設定画面の入力欄B3における、優先起動画面として、テレビ会議を選択する操作が行われると、クライアント部20は、デフォルトの優先起動画面として、テレビ会議の画面を示す情報を記憶部2000に記憶させる。これにより、電子黒板2が起動したときに、表示順制御部24は、記憶部2000に記憶されているテレビ会議の画面を示す情報に基づいて、ステップS71で、クライアント部20から出力される画像データを非アクティブにして、クライアント部80から出力される画像データをアクティブにしてディスプレイ3cへ出力する。
なお、図16の(B)のテレビ会議設定画面には、地域と言語設定のボタンB4が含まれている。電子黒板2cは、ユーザが、電子ペン4c等の操作でボタンB4に接触すると、クライアント部20は。電子黒板2cが利用される地域の設定を受け付ける。設定後、電子黒板2cのページ処理部22Zは、設定された地域に応じて、画像を生成しても良い。例えば、地域として日本が設定された場合、ページ処理部22Zは、ビデオ会議設定のボタンB1を含めずに会議設定画面を出力しても良い。或いは、地域としてアメリカが設定された場合、ページ処理部22Zは、会議設定画面の要求に応じて、予め管理されている英語の会議設定画面を出力しても良い。
なお、PCを図1の通信ネットワーク9a又は9bに接続し、Webブラウザに所望の電子黒板2のIPアドレスを入力してアクセスさせることで、PCにおいて電子黒板2のテレビ会議設定画面を表示させ、上記の項目や値を設定可能にしてもよい。
<<<第7の実施形態>>>
続いて、第7の実施形態について、第1乃至第6の実施形態と異なる点について説明する。
電子黒板2cのページデータ記憶部220には、UI画像(user interface)の画像データとして、テレビ会議用のアプリB11を起動するためのアイコンI4、テレビ会議用のアプリB11による出力画面を最大化して最前面に表示するためのアイコンI5、テレビ会議用のアプリB11による出力画面を最小化するためのアイコンI6が含まれている。
テレビ会議用のアプリB11が起動していない場合、電子黒板2cのページ処理部22Zは、ステップS55で、アイコンI4の画像データを取得する。テレビ会議用のアプリB11が起動しているが、アプリB11による出力が非アクティブである場合、ページ処理部22Zは、ステップS55で、アイコンI5の画像データを取得する。テレビ会議用のアプリB11が起動しており、アプリB11による出力がアクティブである場合、ページ処理部22Zは、ステップS55で、アイコンI6の画像データを取得する。図18の(A)乃至(C)は、ステップS55でアイコンI4、I5、又はI6の画像データが取得された場合のディスプレイ3cの表示例である。
図19の(A)は、アイコンI4を選択する操作が実行されときの電子黒板2cの処理を示すフロー図である。この操作で、電子黒板2cのクライアント部20は、テレビ会議用のアプリB11を起動するための要求(以下、起動要求と表す)を受け付ける(ステップS131)。
電子黒板2cの通信制御部21は、同じ電子黒板2cのアプリI/F部23へ、受け付けられた起動要求を送信する(ステップS132)。アプリI/F部23は、受信した起動要求を、同じ電子黒板2cのOS2020へ送信する(ステップS133)。
OS2020は、受信した起動要求に応じて、アプリB11を起動する(ステップS134)。OS2020の表示順制御部24は、アプリB11によって出力される画像をアクティブに、アプリA11によって出力される画像を非アクティブに表示されるよう制御する(ステップS135)。
図19の(B)は、アイコンI5を選択する操作が実行されときの電子黒板2cの処理を示すフロー図である。この操作で、電子黒板2cのクライアント部20は、テレビ会議用のアプリB11により出力される画像を最大化して最前面に表示するための要求(以下、最大化要求と表す)を受け付ける(ステップS141)。
電子黒板2cの通信制御部21は、同じ電子黒板2cのアプリI/F部23へ、受け付けられた最大化要求を送信する(ステップS142)。アプリI/F部23は、受信した最大化要求を、同じ電子黒板2cのOS2020の表示順制御部24へ送信する(ステップS143)。
OS2020の表示順制御部24は、受信した最大化要求に応じて、アプリA11によって出力される画像を非アクティブにして、アプリB11によって出力される画像を最大化した上でアクティブに表示されるように制御する(ステップS144)。
図19の(C)は、アイコンI6を選択する操作が実行されときの電子黒板2cの処理を示すフロー図である。この操作で、電子黒板2cのクライアント部20は、テレビ会議用のアプリB11により出力される画像を最小化するための要求(以下、最小化要求と表す)を受け付ける(ステップS151)。
電子黒板2cの通信制御部21は、同じ電子黒板2cのアプリI/F部23へ、受け付けられた最小化要求を送信する(ステップS152)。アプリI/F部23は、受信した最小化要求を、同じ電子黒板2cのOS2020の表示順制御部24へ送信する(ステップS153)。
OS2020の表示順制御部24は、受信した最小化要求に応じて、アプリB11によって出力される画像を最小化した上で非アクティブにして、アプリA11によって出力される画像がアクティブに表示されるように制御する(ステップS154)
なお、第7の実施形態では、アプリA11によって出力される画像が、アプリB11によって出力される画像より大きく常にアイコンI4,I5,I6のいずれかが表示される場合について説明した。例えば、アプリA11によって出力される画像が、アプリB11によって出力される画像より小さい場合、アイコンI4,I5,I6をアプリB11に表示させても良い。この場合、クライアント部20による処理、クライアント部20に対する処理が、クライアント部80による処理、クライアント部80に対する処理に置き換えられる点を除き、上記ステップS131乃至S154の処理と同様に実行される。
<<実施形態の主な効果>>
上記実施形態の出力方法によると、電子黒板2cの通信制御部21(送受信手段の一例)は、電子黒板2a(他の通信端末の一例)との間の第1の通信で送受信されるストロークデータ(コンテンツデータの一例)に係るストローク画像(第1の画像の一例)を送受信する(送受信処理の一例)。電子黒板2cの通信制御部81(送受信部の一例)は、PC8(他の通信端末の一例)との間の第2の通信で送受信される映像データ(コンテンツデータの一例)に係る映像(第2の画像の一例)を送受信する(送受信処理の一例)。電子黒板2cの描画制御部22及び表示制御部82、並びにディスプレイ3c(表示手段の一例)は、ストローク画像及び映像の少なくとも一方の画像の表示の指示を受付けるアイコンI2,I3(表示指示画像の一例)、指示に応じたトローク画像及び映像の少なくとも一方の画像、並びに第1の通信及び第2の通信の停止の指示を受付けるアイコンI1(停止指示画像の一例)を表示する(表示処理の一例)。これにより、ユーザは、アイコンI1を介した操作により、両方の通信を停止させることができるようになるので、電子黒板2のユーザビリティは向上する。
重畳画像140のアイコンI1、又は重畳画像150のアイコンI1を介した操作入力が受け付けられた場合に、電子黒板2cのモード切替部25(停止手段の一例)は、OS2020をスリープモードに移行させることで、第1の通信、及び第2の通信の両方を停止させる(停止処理の一例)。これにより、ユーザは、アイコンI1を介した操作により、両方の通信を停止させることができるようになる。
電子黒板2cにおいて、第1の通信を確立するためのアプリA11(第1のアプリケーションの一例)、及び第2の通信を確立するためのアプリB11(第2のアプリケーション)が起動している。電子黒板2cのモード切替部25(停止手段の一例)は、OS2020をスリープモードに移行させることで、アプリA11、及びアプリB11の起動を停止させずに、第1の通信、及び第2の通信の両方を停止させる。これにより、会議を再開させたい場合に、電子黒板2cは、速やかに第1の通信、及び第2の通信を再度、確立することができる。
第1の通信で送受信されるコンテンツデータはストロークデータであり、第2の通信で送受信されるコンテンツデータは映像データである。電子黒板2cの記憶部2000(管理手段の一例)に構築されるページデータ記憶部220は、表示制御部82によって出力されるストロークに係るストロークデータを管理する。重畳画像150のアイコンI1を介した通信の停止の指示の操作が受け付けられた際に、記憶部2000においてストロークデータが管理されている場合、表示順制御部24は、重畳画像140をアクティブに表示させる。これにより、電子黒板2cは、ユーザに、通信の停止前にストローク画像を確認させることができる。
電子黒板2cのアプリI/F部23は、通信アプリB11による通信で発生するイベントを示す情報を、通信アプリA11へ送信する。通信アプリA11の処理により、ディスプレイ3cは、このイベントを示す情報に対応する通知(情報の一例)を出力する。これにより、電子黒板2cは、この通知によりユーザに通信の停止の判断をさせることができる。
電子黒板2cの記憶部2000(管理手段の一例)に構築される表示管理テーブルは、イベントを示す情報に関連付けて、出力形式を示す情報を管理する。通信アプリA11は、イベントを示す情報を受信すると、このイベントを示す情報に関連付けられて表示管理テーブルにおいて管理されている情報によって示される出力形式で通知を出力する。これにより、電子黒板2cは、検出されるイベントに応じて最適な形式で通知を出力することができる。
<<実施形態の補足>>
通信アプリA11,B11,C11は、インストール可能な形式又は実行可能な形式のファイルによって、コンピュータで読み取り可能な記録媒体に記録されて流通されるようにしてもよい。また、上記記録媒体の他の例として、CD−R(Compact Disc Recordable)、DVD(Digital Versatile Disk)、ブルーレイディスク等が挙げられる。また、上記記録媒体、あるいは、これらプログラムが記憶されたHD(Hard Disk)は、プログラム製品(Program Product)として、国内又は国外へ提供可能である。
また、上記実施形態における電子黒板2、PC8、中継装置30、及び管理システム50は、単一の装置によって構築されてもよいし、各部(機能又は手段)を分割して任意に割り当てられた複数の装置によって構築されていてもよい。
上記で説明した実施形態の各機能は、一又は複数の処理回路によって実現することが可能である。ここで、本明細書における「処理回路」とは、電子回路を含むプロセッサのようにソフトウェアによって各機能を実行するようプログラミングされたプロセッサや、上記で説明した各機能を実行するよう設計されたASIC(Application Specific Integrated Circuit)や従来の回路モジュール等のデバイスを含むものとする。