(57)【要約】【課題】  受信するデータの内容を即座に閲覧することを可能にする装置、システムおよびプログラムを提供する。【解決手段】  この装置は、データを機器へ送信して表示させる制御を行うデータ制御装置であって、機器との間で通信を行った結果から帯域を検出する帯域検出手段と、データのデータサイズおよび検出された帯域に応じて該データから圧縮データを生成するデータ生成手段と、圧縮データとデータとを順に機器へ送信し、データを送信している間に、機器において圧縮データを表示させる送信手段とを含む。【選択図】  図４
2014149579.tif 000002
【特許請求の範囲】
【請求項１】
データを機器へ送信して表示させる制御を行うデータ制御装置であって、
前記機器との間で通信を行った結果から帯域を検出する帯域検出手段と、
検出された前記帯域に応じて該データから圧縮データを生成するデータ生成手段と、
前記圧縮データと前記データとを順に機器へ送信し、該データを送信している間に、前記機器において該圧縮データを表示させる送信手段とを含む、データ制御装置。
【請求項２】
帯域とデータの圧縮率とを対応付けた対応テーブルを記憶する記憶手段を含み、前記データ生成手段は、前記対応テーブルを参照し、検出された前記帯域から前記圧縮率を決定し、前記圧縮率で前記データを圧縮する、請求項１に記載のデータ制御装置。
【請求項３】
前記データは、画像データであり、前記データ生成手段は、前記画像データの画像を縮小して縮小画像データを生成し、前記縮小画像データを圧縮して前記圧縮データを生成する、請求項１または２に記載のデータ制御装置。
【請求項４】
前記データ制御装置は、複数のデータ表示装置間で共有され、表示される画面の画像データを、前記機器である該画像データを共有していない未共有データ表示装置からの要求を受けて該未共有データ表示装置へ送信して表示させる制御を行う、請求項１〜３のいずれか１項に記載のデータ制御装置。
【請求項５】
データを共有して画面に表示する複数のデータ表示装置と、前記データを共有していない未共有データ表示装置と、前記データを取得し、該データの複製を、前記未共有データ表示装置へ送信して表示させる制御を行う、請求項１〜３のいずれか１項に記載のデータ制御装置とを含む、データ共有システム。
【請求項６】
前記未共有データ表示装置は、前記データ制御装置から前記データの複製を受信したことに応答して、該未共有データ表示装置の画面上の該データを圧縮して生成された圧縮データの表示を消去し、該データを該画面に表示させる、請求項５に記載のデータ共有システム。
【請求項７】
データを機器へ送信して表示させる制御を行うためのコンピュータ可読なプログラムであって、コンピュータに、
前記機器との間で通信を行った結果から帯域を検出するステップと、
検出された前記帯域に応じて該データから圧縮データを生成するステップと、
前記圧縮データと前記データとを順に機器へ送信し、該データを送信している間に、前記機器において該圧縮データを表示させるステップとを実行させる、プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、データを機器へ送信して表示させる制御を行うデータ制御装置、複数の機器とデータ制御装置とを含むデータ共有システム、およびそのシステムを実現するためのコンピュータ可読なプログラムに関する。
【背景技術】
【０００２】
会議等で使用されるデータを表示するための装置として、電子情報ボードが知られている。電子情報ボードは、タッチパネルを搭載したディスプレイを備え、複数のPCが接続可能とされている。このため、電子情報ボードは、PCが表示している画面を拡大してそのディスプレイに表示させ、表示させた画面をタッチしてPCの操作を行うことができるようになっている。
【０００３】
このPCの操作を実現するために、例えば、電子黒板アプリケーションソフトウェアが提供されている。このソフトウェアは、黒板の役割をするディスプレイの画面上に手書き文字等を、タッチパネルを介して描く機能、PCの画面を取り込み、その上に手書き文字等を重畳して描く機能を提供する。また、このソフトウェアは、ネットワークを介して接続された他の電子情報ボードと画面を共有し、遠隔会議を行う機能も提供する。
【０００４】
このような機能を搭載した電子情報ボードを利用すれば、例えば会議等において、説明のための資料を操作しながら、適宜画面上に指摘事項を書き込み、必要に応じて書き込みを含む画面の内容を記録することができる。これにより、会議終了時に、画面の内容を振り返り、その内容を再利用して効率的に結論等をまとめることができる。
【０００５】
遠隔会議は、ネットワークを介して多局間で行われるが、ある局が会議途中で参加する場合がある。その参加する局は、会議進行上で用いられている静止画やドキュメント等のデータをその参加時点で入手する必要があるため、最初から会議に参加している局へそのデータを要求し、伝送させる。従来においては、このデータの伝送によって会議の進行が妨げられていた。
【０００６】
そこで、遠隔会議に途中参加する場合でも、会議の進行を妨げないようにすることができる技術が提案されている（例えば、特許文献１参照）。この技術では、会議中に伝送されるデータをデータ蓄積制御手段に蓄積し、途中参加する局の参加時に、その局に対し、データ蓄積制御手段から蓄積されたデータを自動的に送信している。
【発明の概要】
【発明が解決しようとする課題】
【０００７】
上記技術では、会議中の書き込みや静止画等のデータを途中参加する局において表示する場合、そのデータを全てダウンロードした後でなければ表示することができない。そのデータのデータサイズが大きく、途中参加する局のネットワーク環境が劣悪であった場合、その局のユーザは、そのデータの内容を閲覧するのに時間がかかり、円滑に情報共有することができないという問題があった。
【課題を解決するための手段】
【０００８】
本発明は、上記課題に鑑みなされたものであり、データを機器へ送信して表示させる制御を行うデータ制御装置であって、機器との間で通信を行った結果から帯域を検出する帯域検出手段と、検出された帯域に応じて該データから圧縮データを生成するデータ生成手段と、圧縮データとデータとを順に機器へ送信し、データを送信している間に、機器において圧縮データを表示させる送信手段とを含む、データ制御装置が提供される。
【発明の効果】
【０００９】
本発明によれば、データのデータサイズが大きく、ネットワーク環境が劣悪であったとしても、そのデータを受信する機器において、そのデータの内容を即座に閲覧することが可能となる。
【図面の簡単な説明】
【００１０】
【図１】データ共有システムの１つの構成例を示した図。
【図２】データ共有システムの別の構成例を示した図。
【図３】図１および図２に示す電子情報ボードの構成例を示した図。
【図４】主催側の電子情報ボードおよび参加側の電子情報ボードの機能ブロック図。
【図５】図４に示す電子情報ボード間で送受信されるデータフォーマットを例示した図。
【図６】図５に示すデータフォーマットにおけるBodyの記述例を示した図。
【図７】図４に示す主催側の電子情報ボードで実行される処理の流れを例示したフローチャート。
【図８】対応テーブルの例を示した図。
【図９】図４に示す参加側の電子情報ボードで実行される処理の流れを例示したフローチャート。
【図１０】図４に示す参加側の電子情報ボードにおいて要求を送信する際に表示される画面の第１の例を示した図。
【図１１】図４に示す参加側の電子情報ボードにおいて要求を送信する際に表示される画面の第２の例を示した図。
【図１２】図４に示す参加側の電子情報ボードにおいて要求を送信する際に表示される画面の第３の例を示した図。
【図１３】図４に示す参加側の電子情報ボードにおいて圧縮されたデータを受信したときに表示される画面の例を示した図。
【図１４】図４に示す参加側の電子情報ボードにおいて圧縮されたデータを受信した後、複製されたデータを受信している間に表示される画面の第１の例を示した図。
【図１５】図４に示す参加側の電子情報ボードにおいて圧縮されたデータを受信した後、複製されたデータを受信している間に表示される画面の第２の例を示した図。
【図１６】図４に示す参加側の電子情報ボードへ複製されたデータが送信されたときに表示される画面の例を示した図。
【発明を実施するための形態】
【００１１】
本発明のデータ共有システムは、ネットワークまたはケーブルにより接続される複数の機器と、データ制御装置とを含んで構成される。複数の機器は、それぞれがデータの内容を表示することができる表示手段を備える。このため、機器は、表示手段を備えるデータ表示装置とすることができる。
【００１２】
データ表示装置としては、表示手段を備えるものであればいかなる機器であってもよい。データ表示装置としては、スマートフォン、PDA、プリンタ、MFP、ノートPC、デスクトップPC、タブレットPC、デジタルビデオカメラ、デジタルカメラ、電子情報ボード等を用いることができる。
【００１３】
データ制御装置は、データを機器へ送信して表示させる制御を行う装置である。データ制御装置は、複数の機器とは別個の機器として構成されていてもよいし、データ共有システムを複数の機器で構成し、その１つをデータ制御装置として機能させることも可能である。ネットワークは、有線LAN等の有線ネットワークであってもよいし、無線LANやBluetooth（登録商標）等の無線ネットワークであってもよい。
【００１４】
図１は、データ共有システムの１つの構成例を示した図である。図１に示すデータ共有システム１０は、２つのPC１１、１２と、１つの電子情報ボード１３の３つの機器から構成されている。２つのPC１１、１２はそれぞれ、ケーブル１４、１５により、データ制御装置として機能する電子情報ボード１３に接続されている。
【００１５】
２つのPC１１、１２は、各ユーザが、電子情報ボード１３に表示すべき画像の画像データを提供する情報処理装置である。PC１１、１２は、画像データとしての画像信号を出力するインタフェースを備え、所定のレート(例えば、毎秒３０フレーム)で、ケーブル１４、１５を介して電子情報ボード１３へ供給する。インタフェースとしては、VGA(Video Graphics Array)出力端子を挙げることができ、ケーブル１４、１５としては、VGAケーブルを挙げることができる。
【００１６】
ここでは、ケーブル１４、１５を使用して有線接続した例について説明したが、PC１１、１２から電子情報ボード１３へは、WiFi等の各種無線通信プロトコルに準拠した無線通信により、画像信号を送信することも可能である。
【００１７】
PC１１、１２は、上記インタフェースのほか、PCとしての機能を実現するためのプログラムや各種データ等を格納する記憶装置、記憶装置からプログラムを読み出し実行するCPUまたはMPU等のプロセッサを備える。プログラムとしては、OS、ファームウェア、デバイスドライバ、各種アプリケーションプログラム等を挙げることができる。記憶装置としては、ROM、RAM、HDDやSSD(Solid State Drive)を用いることができる。
【００１８】
PC１１、１２は、そのほか、カメラ等の撮像手段、キーボードやマウス等の入力手段、ディスプレイ等の表示手段、スピーカ等の音声出力手段を備えることができる。また、PC１１、１２は、ネットワークに接続するためのインタフェースとしてLAN端子を備えることができる。
【００１９】
電子情報ボード１３は、PC１１、１２から画像信号を受信し、自己が備えるディスプレイ上に表示する。このディスプレイは、タッチパネルとされ、ユーザが手書き文字等を描くことを可能にし、また、表示したPC１１、１２の画面上に手書き文字等を重畳して描くことを可能にする。この手書き文字等のメモやマーカーは、アノテーションと呼ばれる。
【００２０】
電子情報ボード１３は、ネットワークに接続可能とされていて、ネットワークに接続された他の電子情報ボードとの間で表示画面を共有し、遠隔会議を行うことが可能とされている。電子情報ボード１３の構成については、図３を用いて詳細に説明する。
【００２１】
図１に示す実施形態では、２つのPC１１、１２が１つの電子情報ボード１３に接続された構成とされているが、電子情報ボード１３に１つまたは３つ以上のPC等が接続された構成であってもよい。
【００２２】
図２は、データ共有システムの別の構成例を示した図である。このデータ共有システム２０は、ネットワーク２１と、４つのPC２２〜２５と、２つの電子情報ボード２６、２７とを含んで構成されている。電子情報ボード２６、２７は、ネットワーク２１に接続され、電子情報ボード２６にはPC２２、２３がケーブル２８、２９により、電子情報ボード２７にはPC２４がケーブル３０により接続されている。PC２５は、直接ネットワーク２１に接続されている。そして、電子情報ボード２６が、データ制御装置として機能するものとされている。
【００２３】
ネットワーク２１は、上述したように有線および無線のいずれの通信網であってもよく、LAN、WAN、イントラネット、インターネット等を用いることができる。これらの間の通信は、TCP/IP等の適切なプロトコルを使用して行うことができる。ネットワーク２１は、電子情報ボード２６と、電子情報ボード２７と、PC２５との間で種々のデータを通信する。
【００２４】
電子情報ボード２６は、ケーブル２８、２９により接続されたPC２２、２３からの画像信号のほか、電子情報ボード２７やPC２５からの画像信号を受け、それらの表示画面と同じ画面を表示させることができる。このことは、電子情報ボード２７も同様で、電子情報ボード２６やPC２５の表示画面と同じ画面を表示させることができる。
【００２５】
図２に示す実施形態では、ネットワーク２１を介して互いに接続された構成とされているが、ネットワーク２１ではなく、ケーブルを用いてスター型等の接続形態とされていてもよい。
【００２６】
データ共有システムの構成例を、図１および図２に例示したが、これらの構成に限定されるものではなく、電子情報ボードは、ネットワークに３つ以上接続されていてもよい。また、PCは、各電子情報ボードに３つ以上接続されていてもよく、ネットワークには、２以上のPCが接続されていてもよい。さらに、ネットワークには、無線通信を行うためのアクセスポイントや、DHCPサーバ等の各種のサーバ装置、データベース等が接続されていてもよい。
【００２７】
図３は、電子情報ボードのハードウェア構成および機能構成を例示した図である。電子情報ボード１００は、画像入力インタフェース１０１を備え、この画像入力インタフェース１０１を介してPC４０、４１と接続される。
【００２８】
画像入力インタフェース１０１は、PC４０、４１に表示される画像を形成するための画像信号を受信するためのインタフェースである。このインタフェースとしては、例えば、DVI(Digital Visual Interface)端子によって構成されるDVIコネクタを採用することができる。そのほか、VGAコネクタ、HDMI(High-Definition Multimedia Interface)コネクタ、Displayportコネクタ等を採用することもできる。画像入力インタフェース１０１は、PC４０、４１からVGAケーブル等のケーブルを介して受信した画像信号を画像取得部１０２へ供給する。
【００２９】
電子情報ボード１００は、プロセッサ１０３、ROM１０４、RAM１０５、画像取得部１０２、座標検出部１０６、接触検知装置１０７、表示部１０８を含んで構成される。プロセッサ１０３は、CPUまたはMPU等の演算処理装置で、OSを動作させ、このOSの管理下で各種プログラムを実行する。OSとしては、Windows（登録商標）、UNIX（登録商標）、LINUX（登録商標）、TRON、ITRON、μITRON等を挙げることができる。プログラムは、データ制御装置として機能させるためのプログラムを含み、このプログラムとして、各種のプログラム言語で記述されたプログラムを採用することができる。プログラム言語としては、アセンブラ、C、C++、Java（登録商標）、JavaScript（登録商標）、PERL、RUBY、PYTHON等を挙げることができる。
【００３０】
ROM１０４は、BIOSやEFI(Extensible Firmware Interface)等のブートプログラムが格納される不揮発性メモリである。RAM１０５は、DRAMやSRAM等の主記憶装置で、上記プログラムを実行するための実行空間を提供する。電子情報ボード１００は、HDDまたはSSDといった記憶装置１０９をさらに含み、記憶装置１０９に上記プログラムや種々のデータが格納される。
【００３１】
プロセッサ１０３は、記憶装置１０９からプログラムをRAM１０５に読み出し、それを実行することにより、プロセッサ１０３を以下の各機能部として機能させる。機能部には、イベント処理部１１０、アプリ画像生成部１１１、レイアウト管理部１１２、描画生成部１１３、合成部１１４、表示制御部１１５が含まれる。また、機能部には、さらに、スナップショット生成部１１６、スナップショット保存部１１７、スナップショット送信部１１８、リポジトリ管理部１１９が含まれる。
【００３２】
画像取得部１０２は、PC４０、４１からVGA信号等の画像信号を取得した後、その画像信号を解析する。画像取得部１０２は、その画像信号により形成されるPC４０、４１の表示画像である画像フレームの解像度やその画像フレームの更新頻度等の画像情報を抽出する。そして、画像取得部１０２は、その抽出した画像情報をアプリ画像生成部１１１へ送信する。
【００３３】
画像取得部１０２は、PC４０、４１から取得した画像信号を使用し、PC４０、４１の表示画像である画像フレームをそれぞれ形成し、その画像データを一時的に保存可能な記憶手段であるビデオRAM１２０に上書き保存する。
【００３４】
アプリ画像生成部１１１は、表示部１０８に表示すべき種々の表示ウィンドウを生成する。表示ウィンドウには、PC４０、４１の表示画像である画像フレームを表示する表示ウィンドウ、ユーザが手書きすることにより生成される描画画像を表示する表示ウィンドウが含まれる。また、表示ウィンドウには、電子情報ボード１００の各種設定を行うためのボタンやメニュー等を表示する表示ウィンドウ、ファイルビューアやＷｅｂブラウザ等の表示ウィンドウも含まれる。アプリ画像生成部１１１は、上記の表示ウィンドウを、当該表示ウィンドウを描画すべき画像レイヤに描画する。
【００３５】
レイアウト管理部１１２は、アプリ画像生成部１１１が生成する表示ウィンドウにPC４０、４１の表示画像を描画する。このレイアウト管理部１１２は、画像取得部１０２から画像情報を取得すると、ビデオRAM１２０に格納されている画像フレームの画像データを取得する。そして、レイアウト管理部１１２は、画像情報を使用し、画像フレームの大きさをアプリ画像生成部１１１が生成した表示ウィンドウの大きさに適合するように変更し、当該画像フレームを描画すべき画像レイヤに描画する。
【００３６】
座標検知装置１０７は、描画装置５０等の物体の接触を検知する装置である。この実施形態では、座標検知装置１０７として、赤外線遮断方式による座標入力／検出装置が採用される。座標入力／検出装置は、表示部１０８の下側両端部に設置された２つの受発光装置が表示部１０８に平行して複数の赤外線を放射する。そして、座標入力／検出装置は、表示部１０８の周囲に設けられた反射部材によって同一光路上に反射する光を受光する。座標検知装置１０７は、物体によって遮断された２つの受発光装置が放射した赤外線の識別情報を座標検出部１０６に通知し、その座標検出部１０６が、物体の接触位置である座標位置を特定する。
【００３７】
座標検知装置１０７としては、静電容量の変化を検知することにより接触位置を特定する静電容量方式、あるいは対向する２つの抵抗膜の電圧変化によって接触位置を特定する抵抗膜方式のタッチパネルを採用することもできる。また、座標検知装置１０７としては、接触する物体が表示部１０８に接触することによって生じる電磁誘導を検知して接触位置を特定する電磁誘導方式のタッチパネルを採用することもできる。
【００３８】
座標検出部１０６は、物体が表示部１０８に接触した位置である座標位置を算出するとともに、種々のイベントを発行する。具体的には、座標検出部１０６は、座標検知装置１０７が通知する遮断された赤外線の識別情報を利用して、物体の接触位置の座標位置を算出する。発行するイベントとしては、物体が接触または接近したことを通知するイベント(TOUCH)、物体が表示部１０８に接触または接近した状態で接触点または接近点が移動したことを通知するイベント(MOVE)が挙げられる。また、イベントとしては、物体が表示部１０８から離れたことを通知するイベント(RELEASE)も挙げられる。なお、これらのイベントには、接触位置および接近位置の座標である座標位置情報が含まれる。
【００３９】
描画装置５０は、電子情報ボード１００の座標検知装置１０７に接触させて描画する装置である。描画装置５０は、例えば、先端部に物体の接触を検知する座標検知装置１０７を備えたペン形状を有するものとすることができる。この構成では、描画装置５０は、その座標検知装置１０７が物体に接触すると、接触したことを示す接触信号をその描画装置５０の識別情報とともに座標検出部１０６に送信することができる。
【００４０】
描画装置５０は、描画された描画オブジェクトを消去する機能を有し、描画モードから消去モードに切り替えるモード切替スイッチを側面や後端部に備えることができる。この消去モードにおいて、座標検知装置１０７が物体に接触すると、接触したことを示す信号と消去モードである信号をその描画装置５０の識別情報とともに座標検出部１０６へ送信する。描画装置５０は、表示部１０８に表示されたメニューやボタン等のオブジェクトをユーザが選択することが可能である。
【００４１】
ユーザが消去モード切替スイッチを押下した状態で、描画装置５０を電子情報ボード１００に接触させた場合、描画装置５０は、接触信号および描画装置５０の識別情報とともに、消去モードを示すモード種別信号を送信する。ユーザが、消去モード切替スイッチを押下していない状態で、描画装置５０を電子情報ボード１００に接触させた場合、描画装置５０は、接触信号および描画装置５０の識別情報を送信する。
【００４２】
図３に示す実施形態では、座標検出部１０６は、座標検知装置１０７から赤外線の識別情報を受信すると、物体の接触位置である座標位置を算出し、次いで、描画装置５０から接触信号を受信すると、各種イベントを発行する。このとき、座標検出部１０６は、モード種別を示す情報（モード種別情報）を、そのイベントとともにイベント処理部１１０に通知する。
【００４３】
イベント処理部１１０は、座標検出部１０６が発行するイベントを処理する。具体的には、イベント処理部１１０は、座標検出部１０６からイベントを受信すると、描画指示イベントであるか、消去指示イベントであるか、選択通知イベントであるかを識別する。そして、イベント処理部１１０は、識別した各イベントの処理を実行する。
【００４４】
上記の描画指示イベントは、電子情報ボード１００に対して描画を指示するイベントである。消去指示イベントは、電子情報ボード１００に対して描画されたオブジェクトを消去するイベントである。なお、これらのイベントは、描画装置５０が表示部１０８に接触したことに起因して発行される。選択通知イベントは、表示部１０８に表示された表示画面を構成するボタンやメニューバー等の種々のオブジェクトが選択されたことを示すイベントである。この選択通知イベントは、描画装置５０が表示部１０８に接触したことに起因して発行される。
【００４５】
イベント処理部１１０は、座標検出部１０６が発行したイベントに含まれる座標位置情報が、オブジェクトを構成する座標領域内であるときに選択通知イベントを発行する。描画指示イベントおよび消去指示イベントにはそれぞれ識別情報が割り当てられ、選択通知イベントには選択されたオブジェクトの識別情報が付加される。このため、イベント処理部１１０は、その識別情報を参照して種々の処理を実行する。
【００４６】
描画生成部１１３は、ユーザが描画装置５０を用いて描画した描画画像を生成する。この描画生成部１１３は、座標位置情報が示す座標位置の色を特定の色に変更した画像レイヤを生成する。また、描画生成部１１３は、その座標位置を描画情報としてRAM１０５における描画情報の格納領域に保存する。
【００４７】
合成部１１４は、種々の画像を合成する。具体的には、合成部１１４は、アプリ画像レイヤと、画像キャプチャレイヤと、手書きレイヤとを合成する。アプリ画像レイヤは、アプリ画像生成部１１１が画像を描画すべき画像レイヤである。画像キャプチャレイヤは、レイアウト管理部１１２がPC４０、４１の表示画像を描画すべき画像レイヤである。手書きレイヤは、描画生成部１１３が画像を描画すべき画像レイヤである。
【００４８】
表示制御部１１５は、表示部１０８を制御し、合成部１１４が生成した合成画像を表示部１０８に表示させる。この実施形態では、表示制御部１１５は、合成部１１４により呼び出され、合成画像を表示部１０８に表示させる。これに限られるものではなく、合成部１１４および表示制御部１１５は、画像情報に含まれる画像フレームの更新頻度と同じ頻度で、画像レイヤを合成し、表示部１０８に表示させることも可能である。
【００４９】
スナップショット生成部１１６は、PC４０、４１の表示画像と、描画生成部１１３が生成した描画画像との合成画像であるスナップショット画像を生成する。具体的には、スナップショット生成部１１６は、表示部１０８に表示されたスナップショット画像の取得を指示するスナップショットボタンが選択されたことを示す選択通知イベントを受信する。これを受けて、スナップショット生成部１１６は、画像キャプチャレイヤと手書きレイヤとを合成し、スナップショット画像を生成する。スナップショット生成部１１６は、スナップショット画像を生成すると、リポジトリ管理部１１９に対し、そのスナップショット画像のデータ（スナップショット画像データ）を記憶装置１０９に保存させる。
【００５０】
スナップショット保存部１１７は、リポジトリ管理部１１９を通じて記憶装置１０９に保存されたスナップショット画像データを、データ出力インタフェース１２１を通じてUSBメモリ６０等の外部保存装置に保存させる。
【００５１】
具体的には、スナップショット保存部１１７は、表示部１０８に表示されたスナップショット画像データの保存を指示するスナップショット保存ボタンが選択されたことを示す選択通知イベントを受信する。すると、スナップショット保存部１１７は、リポジトリ管理部１１９を通じて記憶装置１０９に保存されたスナップショット画像データを取得する。それから、スナップショット保存部１１７は、データ出力インタフェース１２１に接続されたUSBメモリ６０等の外部保存装置にそのスナップショット画像データを出力して保存させる。
【００５２】
スナップショット送信部１１８は、リポジトリ管理部１１９を通じて記憶装置１０９に保存されたスナップショット画像データを、通信制御部１２２および通信部１２３を通じて電子情報ボード１００外の図示しないサーバ等に送信する。
【００５３】
具体的には、スナップショット送信部１１８は、表示部１０８に表示されたスナップショット画像データの送信を指示するスナップショット送信ボタンが選択されたことを示す選択通知イベントを受信する。すると、スナップショット送信部１１８は、リポジトリ管理部１１９を通じて記憶装置１０９に保存されたスナップショット画像データを取得する。そして、スナップショット送信部１１８は、通信制御部１２２にそのスナップショット画像データを出力し、通信制御部１２２が通信部１２３を通じて上記サーバ等に送信する。
【００５４】
通信制御部１２２は、通信部１２３を介して、FTPやSMTP等の定められた通信プロトコルを使用して電子情報ボード１００外の図示しないサーバ等へスナップショット画像データを送信する。リポジトリ管理部１１９は、スナップショット画像データを格納すべき記憶装置１０９を制御する。リポジトリ管理部１１９は、スナップショット生成部１１６の指示により、スナップショット画像データを記憶装置１０９に保存する。また、リポジトリ管理部１１９は、スナップショット保存部１１７またはスナップショット送信部１１８の指示により、記憶装置１０９からスナップショット画像データを取得し、データ出力インタフェース１２１または通信制御部１２２に出力する。
【００５５】
データ出力インタフェース１２１は、スナップショット画像データをUSBメモリ６０等の外部保存装置に出力する。データ出力インタフェース１２１としては、USBソケットを採用することができる。通信制御部１２２は、ネットワークを介した電子情報ボード１００と電子情報ボード２００またはPC４２との間の通信を制御する。通信制御部１２２は、認証情報、画像フレームやスナップショット画像等の画像データや描画情報、イベント等の情報を、通信部１２３を介して通信する。なお、通信部１２３は、ネットワークとのネットワークインタフェースである。認証情報としては、ユーザを識別するためのユーザID、パスワード、指紋等の生体認証情報を挙げることができる。
【００５６】
図４は、データ制御装置として機能する会議の主催側の電子情報ボード１００およびその会議に参加しようとする参加側の電子情報ボード２００の機能ブロック図である。主催側の電子情報ボード１００は、既に他の電子情報ボード等との間で会議を行っているデータ表示装置で、参加側の電子情報ボード２００は、会議途中でその会議に参加しようとするデータ表示装置である。これらは、ネットワークを介して接続されている。
【００５７】
なお、参加側の電子情報ボード２００は、会議にまだ参加していないことから、会議に既に参加している電子情報ボードで共有されているデータを共有していない未共有データ表示装置である。
【００５８】
主催側の電子情報ボード１００は、データ制御装置として機能し、通信部１２３と、リポジトリ管理部１１９と、帯域算出部１２４と、複製コンテンツ生成部１２５と、差分管理部１２６と、プレビュー画像生成部１２７とを含んで構成される。
【００５９】
通信部１２３は、受信手段として機能し、参加側の電子情報ボード２００から参加リクエストおよび会議コンテンツのページリクエストを受信する。また、通信部１２３は、送信手段としても機能し、会議コンテンツおよびプレビュー画像を参加側の電子情報ボード２００へ送信する。
【００６０】
参加リクエストは、会議への参加を要求するリクエストで、会議コンテンツは、静止画、ドキュメント、手書き文字等が描かれた画像、手書き文字等が重畳して描かれた画像等である。ページリクエストは、会議コンテンツがドキュメントであれば、複数ページあるそのドキュメントの任意のページを要求するリクエストである。
【００６１】
プレビュー画像は、その画像を表示したとすればどのように表示されるかのイメージを前もって表示するための画像である。プレビュー画像データは、画像データの画像を縮小して縮小画像データを生成し、その縮小画像データを圧縮することにより生成される。プレビュー画像データは、圧縮データであり、そのデータサイズは、同じ画像の画像データに比較して小さいものである。
【００６２】
帯域算出部１２４は、帯域検出手段として機能し、参加リクエストを出力した参加側の電子情報ボード２００との間で通信を行い、その通信結果から帯域を検出する。帯域は、例えば、後述する式１を用いて算出することができる。
【００６３】
複製コンテンツ生成部１２５は、データ複製手段として機能する。この複製コンテンツ生成部１２５は、まず、通信部１２３が受信したリクエストにより、リポジトリ管理部１１９から主催側の電子情報ボード１００において進行している会議コンテンツを取得する。そして、複製コンテンツ生成部１２５は、そのリクエストを受信した時点でその会議コンテンツの複製（コピー）を生成する。
【００６４】
差分管理部１２６は、データ蓄積手段として機能し、複製コンテンツ生成部１２５で複製されたコンテンツと、進行中の会議コンテンツの操作コマンドを先入れ先出しキュー構造で保持する。操作コマンドは、表示画面に対して操作を行うためのコマンドで、操作としては、例えば、前ページまたは次ページへの移動等が挙げられる。
【００６５】
プレビュー画像生成部１２７は、データ生成手段として機能し、参加リクエストに応じて差分管理部１２６から主催側の電子情報ボード１００に現在表示中の画面の画像データを取得する。そして、プレビュー画像生成部１２７は、帯域算出部１２４により算出された結果に従った圧縮率を求め、その圧縮率で画像データを圧縮し、プレビュー画像を生成する。
【００６６】
データの圧縮は、これまでに知られた圧縮アルゴリズムを使用して行うことができる。静止画像は、例えば、一定の画素数のブロックにデータを分割し、その分割したデータを離散コサイン変換(DCT)することにより、その画像データを圧縮することができる。これは一例であり、この方法に限定されるものではない。
【００６７】
参加側の電子情報ボード２００は、通信部２０１と、表示部２０２と、表示制御部２０３と、イベント処理部２０４と、スナップショット生成部２０５と、プレビュー表示画像生成部２０６と、プレビュー表示部２０７とを含む。表示部２０２、表示制御部２０３、イベント処理部２０４、スナップショット生成部２０５は、図３を参照して説明した通信部１２３や表示部１０８等と同様の機能を有するものである。このため、ここではプレビュー表示画像生成部２０６およびプレビュー表示部２０７についてのみ説明する。
【００６８】
参加側の電子情報ボード２００は、通信部２０１を使用して、主催側の電子情報ボード１００に対し、参加リクエストおよび会議コンテンツのページリクエストを送信する。そして、参加側の電子情報ボード２００は、主催側の電子情報ボード１００から会議コンテンツおよびプレビュー画像データを受信する。
【００６９】
プレビュー表示画像生成部２０６は、受信したプレビュー画像データに従って、プレビュー表示するためのプレビュー表示画像データを生成する。プレビュー表示部２０７は、受信した会議コンテンツとは独立の表示領域に、生成されたプレビュー表示画像データのプレビュー表示画像を表示する。
【００７０】
ここで、図５を参照して、主催側の電子情報ボード１００および参加側の電子情報ボード２００の各通信部１２３、２０１で送受信されるデータのフォーマットについて説明する。TO、FROMは、それぞれ宛先アドレス、送信元アドレスを含む。これらは、IPアドレス、URI(RFC2396)、URL(RFC1738)、XMPP Address(RFC6122)、UUID(RFC4122)のいずれであってもよい。
【００７１】
Sequence-Number(シーケンス番号)は、メッセージを一意に識別するためのIDである。このシーケンス番号は、生成したメッセージ毎に１増分した番号が使用される。Referenceは、Sequence-Numberを参照し、応答時に使用されるIDである。Methodは、オブジェクトに対する操作である。ここではJoin(参加)等の操作が例示されている。
【００７２】
Bodyは、手書きした線等のストロークや静止画等のコンテンツを含み、ページID、ページ総数、会議コンテンツのサイズ、帯域情報（ビット／秒）等を含む。静止画データは、例えばJPEG(Joint Photograph Expert Group)ファイルとされる。ページIDは、ページを識別するための識別情報である。Bodyは、XMLやJSONのようなテキストフォーマットであってもよいし、８ビットでデータを表現する形式のバイナリフォーマットであってもよい。
【００７３】
図６は、５点のストロークを含むコンテンツを、XMLおよびJSONにより記述したBodyの例を示したものである。図６（ａ）がXMLで記述したBodyの例、図６（ｂ）がJSONで記述したBodyの例である。このようなテキストフォーマットでBodyを記述することができる。
【００７４】
図７および図９を参照して、主催側の電子情報ボード１００で実行される処理および参加側の電子情報ボード２００で実行される処理について詳細に説明する。なお、この説明の際、図８、図１０〜図１６に示す対応テーブルおよび画面も参照する。
【００７５】
まず、図７を参照して、主催側の電子情報ボード１００で実行される処理について説明する。主催側の電子情報ボード１００は、ステップ７００から処理を開始し、ステップ７０５で、通信部１２３が、参加側の電子情報ボード２００から参加リクエストを受信する。
【００７６】
ステップ７１０では、複製コンテンツ生成部１２５が、リポジトリ管理部１１９から進行中の会議コンテンツを取得し、その会議コンテンツの複製を生成する。そして、ステップ７１５において、主催側の電子情報ボード１００が有するシーケンスカウンタを、その進行中の会議コンテンツの現在のシーケンス番号で初期化する。
【００７７】
ステップ７２０では、帯域算出部１２４が、通信部１２３を使用して参加側の電子情報ボード２００との間で通信を行い、その通信により得られた情報から帯域を算出する。ここで、帯域Bは、通信において送信したデータサイズをD、参加側の電子情報ボード２００との間の往復時間Δtとすると、次の式１により概算した結果を得ることができる。
【００７８】
【数１】
2014149579.tif 000003
【００７９】
上記式１等により得られた帯域Bに従い、図８に示す帯域とデータの圧縮レベル(圧縮率)とを対応付けた対応テーブルを使用して圧縮率を決定する。この圧縮率は、Independent Jpeg Group(http://www.ijg.org/)が公開しているQuantity Tableの係数を用いることができる。
【００８０】
ステップ７２５では、上記対応テーブルを使用して圧縮率を取得する。例えば、帯域が１５０kbpsと算出された場合、この帯域は１２８kbps以上２５６kbps未満の範囲内にあるため、圧縮率として４０％を取得する。
【００８１】
ステップ７３０では、プレビュー画像生成部１２７が、取得した圧縮率に従って、進行中の会議コンテンツの表示画面データをJPEG圧縮し、プレビュー画像を生成する。ステップ７３５では、進行中の会議コンテンツのページ総数を取得し、ステップ７４０において、通信部１２３が、プレビュー画像データおよびページ総数の情報を含むレスポンスを参加側の電子情報ボード２００へ送信する。
【００８２】
ステップ７４５では、参加側の電子情報ボード２００から任意のページを要求するページリクエストを受信したかを判断する。例えば、一定時間内にページリクエストを受信したかどうかにより、この判断を行うことができる。受信したと判断した場合、ステップ７５０へ進み、ページリクエストで指定されたページを、複製された会議コンテンツから取得する。そして、ステップ７５５で、その複製された会議コンテンツをページレスポンスとして参加側の電子情報ボード２００へ送信し、ステップ７４５へ戻る。
【００８３】
ステップ７４５で受信していないと判断した場合、ステップ７６０へ進み、要求したコンテンツを受け取ったことを示すACKを受信したかどうかを判断する。受信していない場合、ステップ７９０へ進み、この処理を終了する。ACKを受信していないということは、主催側から参加側へその要求したコンテンツを送信することができないことを意味するからである。
【００８４】
これに対し、受信した場合、ステップ７６５で複製された会議コンテンツを破棄し、ステップ７７０で、シーケンスカウンタの値が、現在進行中の会議のシーケンス番号未満であるかを判断する。ステップ７６５で会議コンテンツを破棄するのは、もうページリクエストがないので、そのコンテンツを送信することはなく、保持しておく必要がないからである。また、保持しておくと、メモリ使用率が増加し、効率的に他の処理を実行することができなくなるからである。
【００８５】
シーケンスカウンタの値は、差分管理部１２６で保持されるコンテンツが参加側の電子情報ボード２００へ送信されるたびに増加する。現在進行中の会議のシーケンスでは、コンテンツの操作コマンドがある場合、この操作コマンドも送信している。このため、この時点では、現在のシーケンス番号がこの操作コマンドを送信する分だけ、少ない値となる。
【００８６】
ステップ７７０で現在進行中の会議のシーケンス番号未満と判断した場合、送信すべき操作コマンドが存在するので、ステップ７７５へ進み、まず、シーケンスカウンタの値を１増加する。そして、ステップ７８０で、通信部１２３が、差分管理部１２６から操作コマンドを１つ取得し、ステップ７８５で、その操作コマンドを参加側の電子情報ボード２００へ送信する。そして、再びステップ７７０へ戻る。
【００８７】
ステップ７７０で現在進行中の会議シーケンス番号未満でないと判断した場合、すなわちそのシーケンス番号と同じと判断した場合、送信すべき操作コマンドもないので、ステップ７９０へ進み、この処理を終了する。
【００８８】
次に、図９〜図１６を参照して、参加側の電子情報ボード２００において実行される処理について詳細に説明する。会議に参加する場合、参加側の電子情報ボード２００に、図１０に示すような画面を表示し、その画面中のJoinボタンをタッチすることにより押下する。これにより、図９に示すステップ９００から処理を開始する。
【００８９】
上記のJoinボタンを押下すると、図１１に示すような主催側の電子情報ボード１００を選択するためのコンタクトリストが表示される。このため、このリスト中の１つの電子情報ボード「host1」を選択することができる。なお、選択すると、IPアドレスの欄にその「host1」のIPアドレスが自動入力される。ユーザは、その選択した電子情報ボードとの間で接続を確立するべく、接続ボタンを押下する。
【００９０】
図１１に示す画面では、コンタクトリストと直接入力という２つのタブが選択可能とされている。この直接入力というタブをタッチして選択すると、図１２に示すような入力画面が表示される。図１２に示す入力画面は、主催側の電子情報ボード１００のIPアドレスを直接入力することができる画面である。ユーザは、主催側となる電子情報ボード１００のIPアドレスを知っていて、その電子情報ボード１００から会議コンテンツを取得したい場合に、この画面を選択することができる。
【００９１】
電子情報ボード１００の選択またはIPアドレスの入力が終了すると、ステップ９０５において、通信部２０１が、参加リクエストを、その選択した電子情報ボード１００または指定されたIPアドレスをもつ電子情報ボード１００へ送信する。
【００９２】
参加リクエストを受信した主催側の電子情報ボード１００は、図７に示したステップ７１０〜７３５の処理を行い、ステップ７４０でレスポンスを送信する。参加側の電子情報ボード２００は、ステップ９１０でそのレスポンスを受信し、そのレスポンスに含まれるプレビュー画像データを用い、ステップ９１５においてプレビュー表示部２０７にプレビュー画像を表示させる。このときの様子を示した図が、図１３である。図１３には、表示領域の中央右寄りにその表示領域より小さく、表示ウィンドウが表示され、その表示ウィンドウ内にプレビュー画像が表示されている。
【００９３】
プレビュー画像には、手書きした文字が含まれ、プレビュー画像の上側には、１ページ目を読み込み中であることを示すメッセージが表示されている。また、この表示ウィンドウには、キャンセルボタンが表示され、プレビュー画像の表示を消すことができるようになっている。
【００９４】
次に、ステップ９２０において、会議コンテンツの各ページを受信するたびに増加させるページ受信カウンタを０に初期化する。ステップ９２５では、ページ受信カウンタの値が、レスポンスに含まれるページ総数に一致するかどうかを判断する。一致しない場合、まだ全ページを受信していないので、ステップ９３０へ進み、まだ受信していないページを要求するページリクエストを、主催側の電子情報ボード１００へ送信する。
【００９５】
ステップ９３５では、主催側の電子情報ボード１００からページレスポンスを受信し、ステップ９４０において、ページレスポンスに含まれるそのページのページデータを用いてそのページを画面表示する。そして、ステップ９４５で、ページ受信カウンタの値を１増加させ、ステップ９２５へ戻る。
【００９６】
ステップ９２５で一致すると判断した場合、会議コンテンツの全ページを受信しているので、プレビュー画像は不要となる。このため、ステップ９５０でプレビュー画像の表示を消去し、ステップ９５５で全て受信したことを示すACKを、主催側の電子情報ボード１００へ送信する。これを受けて、主催側の電子情報ボード１００では、操作コマンドを１つ送信するが、参加側の電子情報ボード２００は、ステップ９６０で操作コマンドを受信したかどうかを判断する。
【００９７】
ステップ９６０で受信した場合、ステップ９６５へ進み、差分となる操作コマンドにおける操作を、現在表示している画面上に反映させる。そして、再びステップ９６０へ戻り、別の操作コマンドを受信したかどうかを判断する。これに対し、ステップ９６０で操作コマンドを受信しない場合、画面上に反映させる情報がないため、ステップ９７０へ進み、この処理を終了する。
【００９８】
会議コンテンツのページの総数を３ページとすると、主催側では、現在表示中の３ページ目のプレビュー画像を生成し、ページ総数３というレスポンスを送信する。参加側では、そのレスポンスを受信し、図１３に示すような現在表示中の３ページ目のプレビュー画像を表示する。
【００９９】
図１４は、参加側が１ページ目のコンテンツを受信し、表示した画面を例示した図である。現在主催側で表示中の３ページ目のプレビュー画像とともに、１ページ目のコンテンツが表示されているのが示されている。このとき、参加側は、２ページ目のコンテンツを要求するページリクエストを送信することができる。
【０１００】
図１５は、そのページリクエストに対するページレスポンスを受け、参加側が表示した画面を例示した図である。この場合も、現在主催側で表示中の３ページ目のプレビュー画像とともに、コンテンツが表示される。しかしながら、このときのコンテンツは、ページレスポンスにおいて２ページ目のコンテンツを受信したので、２ページ目のコンテンツとなる。このときも、参加側は、残りの３ページ目のコンテンツを要求するページリクエストを送信することができる。
【０１０１】
図１６は、そのページリクエストに対するページレスポンスを受け、参加側が表示した画面を例示した図である。この場合は、プレビュー画像はなく、３ページ目のみの画面となる。主催側で表示中の画面と同じ画面を表示させているので、プレビュー画像を表示させる必要がないからである。この画面は、参加側の電子情報ボード２００が、主催側からコンテンツの複製を受信したことに応答して、画面上のプレビュー画像の表示を消去し、受信したコンテンツの複製をその画面に表示させたものである。
【０１０２】
上記のように、データサイズが小さいプレビュー画像を先立って送信し、その後、コンテンツを送信するので、会議に途中参加しても、即座にプレビュー画像を表示し、即座にコンテンツの内容を閲覧することが可能となる。
【０１０３】
これまで本発明を、データ制御装置およびそのデータ制御装置を備えるデータ共有システムとして上述した実施の形態をもって説明してきたが、本発明は上述した実施の形態に限定されるものではない。本発明は、他の実施の形態、追加、変更、削除など、当業者が想到することができる範囲内で変更することができ、いずれの態様においても本発明の作用・効果を奏する限り、本発明の範囲に含まれるものである。
【０１０４】
したがって、本発明は、データ共有システムにより実行される処理ステップを含む方法や、その方法を実行するためのコンピュータ可読なプログラムや、そのプログラムが記録された記録媒体等も提供することができるものである。
【符号の説明】
【０１０５】
１０、２０…データ共有システム、１１、１２、２２〜２５、４０〜４２…PC、１３、２６、２７、１００、２００…電子情報ボード、１４、１５、２８〜３０…ケーブル、５０…描画装置、６０…USBメモリ、１０１…画像入力インタフェース、１０２…画像取得部、１０３…プロセッサ、１０４…ROM、１０５…RAM、１０６…座標検出部、１０７…座標検知装置、１０８…表示部、１０９…記憶装置、１１０…イベント処理部、１１１…アプリ画像生成部、１１２…レイアウト管理部、１１３…描画生成部、１１４…合成部、１１５…表示制御部、１１６…スナップショット生成部、１１７…スナップショット保存部、１１８…スナップショット送信部、１１９…リポジトリ管理部、１２０…ビデオRAM、１２１…データ出力インタフェース、１２２…通信制御部、１２３…通信部、１２４…帯域算出部、１２５…複製コンテンツ生成部、１２６…差分管理部、１２７…プレビュー画像生成部、２０１…通信部、２０２…表示部、２０３…表示制御部、２０４…イベント処理部、２０５…スナップショット生成部、２０６…プレビュー表示画像生成部、２０７…プレビュー表示部
【先行技術文献】
【特許文献】
【０１０６】
【特許文献１】特開平７−３２２２３０号公報
【図１】
2014149579.tif 000004
【図２】
2014149579.tif 000005
【図３】
2014149579.tif 000006
【図４】
2014149579.tif 000007
【図５】
2014149579.tif 000008
【図６】
2014149579.tif 000009
【図７】
2014149579.tif 000010
【図８】
2014149579.tif 000011
【図９】
2014149579.tif 000012
【図１０】
2014149579.tif 000013
【図１１】
2014149579.tif 000014
【図１２】
2014149579.tif 000015
【図１３】
2014149579.tif 000016
【図１４】
2014149579.tif 000017
【図１５】
2014149579.tif 000018
【図１６】
2014149579.tif 000019