(57)【要約】【課題】ネットワークに負荷をかけずに画像送信を行うサーバ装置、クライアント装置、クライアントサーバシステム、画像出力方法及びプログラムを提供する。【解決手段】接続されたクライアント装置から送信された操作情報を受信する受信手段と、受信手段により受信された操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、速度計算手段により算出されたカーソルの移動速度が閾値より小さいときのみ、画像データを接続されたクライアント装置に送信する送信手段と、受信手段により受信された操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、送信手段により送信される画像データは、出力情報生成手段により生成された画面画像データである。【選択図】図２
2010237816.tif 000002
【特許請求の範囲】
【請求項１】
接続されたクライアント装置から送信された操作情報を受信する受信手段と、
前記受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、画像データを前記接続されたクライアント装置に送信する送信手段と、
前記受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、
前記送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とするサーバ装置。
【請求項２】
接続されたクライアント装置から送信された操作情報を受信する受信手段と、
これまでに前記受信手段により受信された前記操作情報を記憶する記憶手段と、
前記操作情報に記述されているカーソルの位置と、前記記憶手段により記憶されている前回に受信された前記操作情報に記述されているカーソルの位置が同じであるときのみ、画像データを前記接続されたクライアント装置に送信する送信手段と、
前記受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、
前記送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とするサーバ装置。
【請求項３】
前記出力情報生成手段により生成された前記画像画面データと、前回前記出力情報生成手段により生成された前記画像画面データとの異なる箇所を含む部分だけにより構成される差分画像データを生成する差分画像生成手段を有し、
前記送信手段により送信される前記画像データは、前記差分画像生成手段より生成された前記差分画像データであることを特徴とする請求項１または２に記載のサーバ装置。
【請求項４】
前記送信手段は、前記差分画像データが前記カーソルの部分以外を含むとき、前記速度計算手段により算出された前記カーソルの移動速度に関係なく、画像データを前記接続されたクライアント装置に送信することを特徴とする請求項３に記載のサーバ装置。
【請求項５】
前記出力情報生成手段により生成された前記画面画像データを圧縮する圧縮手段を有し、
前記送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記画面画像データであることを特徴とする請求項１または２に記載のサーバ装置。
【請求項６】
前記差分画像生成手段により生成された前記差分画像データを圧縮する圧縮手段を有し、
前記送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記差分画像データであることを特徴とする請求項３また４に記載のサーバ装置。
【請求項７】
接続された入力装置から入力された操作情報を接続されたサーバ装置に送信する送信手段と、
前記接続されたサーバ装置から送信された画像データを受信する受信手段と、
前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、
前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、を有し、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記送信手段により前記操作情報を前記送信手段により送信せず、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記送信手段により前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信手段により受信し、前記受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を前記接続された映像出力装置に出力することを特徴とするクライアント装置。
【請求項８】
前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記操作情報を前記送信手段により送信せず、前記ローカルマウス生成手段により前記ローカルマウスカーソルを生成し、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信手段により受信し、前記ローカルマウス生成手段によりローカルマウスカーソルを生成せず、前記受信手段により受信された前記画像データを接続された映像出力装置に出力することを特徴とする請求項７に記載のクライアント装置。
【請求項９】
接続されたクライアント装置とサーバ装置とを備えるクライアントサーバシステムであって、
前記クライアント装置は、接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信手段と、
前記サーバ装置により送信された画像データを受信する第１の受信手段と、
前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、を有し、
前記サーバ装置により前記画像データが送信されたときは、前記第１の受信手段により前記画像データを受信し、前記第１の受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を接続された映像出力手段に出力し、
前記サーバ装置により前記画像データを送信されないときは、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを前記接続された映像出力装置に出力し、
前記サーバ装置は、前記クライアント装置から送信された前記操作情報を受信する第２の受信手段と、
前記第２の受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、前記画像データを前記接続されたクライアント装置に送信する第２の送信手段と、
前記第２の受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、
前記第２の送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とするクライアントサーバシステム。
【請求項１０】
接続されたクライアント装置とサーバ装置とを備えるクライアントサーバシステムであって、
前記クライアント装置は、接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信手段と、
前記サーバ装置から送信された画像データを受信する第１の受信手段と、
前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、
前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、を有し、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記送信手段により前記操作情報を前記第１の送信手段により送信せず、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記第１の送信手段により前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記第１の受信手段により受信し、前記第１の受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を接続された映像出力装置に出力し、
前記サーバ装置は、前記クライアント装置から送信された前記操作情報を受信する第２の受信手段と、
前記画像データを前記接続されたクライアント装置に送信する第２の送信手段と、
前記第２の受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、
前記第２の送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とするクライアントサーバシステム。
【請求項１１】
前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記操作情報を前記第１の送信手段により送信せず、前記ローカルマウス生成手段により前記ローカルマウスカーソルを生成し、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記操作情報を前記第１の送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記第１の受信手段により受信し、前記ローカルマウス生成手段によりローカルマウスカーソルを生成せず、前記第１の受信手段により受信された前記画像データを接続された映像出力装置に出力することを特徴とする請求項１０に記載のクライアントサーバシステム。
【請求項１２】
前記サーバ装置は、前記出力情報生成手段により生成された前記画像画面データと、前回前記出力情報生成手段により生成された前記画像画面データとの異なる箇所を含む部分だけにより構成される差分画像データを生成する差分画像生成手段を有し、
前記第２の送信手段により送信される前記画像データは、前記差分画像生成手段より生成された前記差分画像データであることを特徴とする請求項９から１１のいずれか１項に記載のクライアントサーバシステム。
【請求項１３】
前記第２の送信手段は、前記差分画像データが前記カーソルの部分以外を含むとき、前記速度計算手段により算出された前記カーソルの移動速度に関係なく、画像データを前記接続されたクライアント装置に送信することを特徴とする請求項１２に記載のクライアントサーバシステム。
【請求項１４】
前記サーバ装置は、前記出力情報生成手段により生成された前記画面画像データを圧縮する圧縮手段を有し、
前記第２の送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記画面画像データであることを特徴とする請求項９から１１のいずれか１項に記載のクライアントサーバシステム。
【請求項１５】
前記サーバ装置は、前記差分画像生成手段により生成された前記差分画像データを圧縮する圧縮手段を有し、
前記送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記差分画像データであることを特徴とする請求項１２または１３に記載のサーバ装置。
【請求項１６】
接続されたクライアント装置から送信された操作情報を受信する受信ステップと、
前記受信ステップにより受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算ステップと、
前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より小さいときのみ、画像データを前記接続されたクライアント装置に送信する送信ステップと、
前記受信ステップにより受信された前記操作情報に基づき、画面画像データを生成する出力情報生成ステップと、を有し、
前記送信ステップにより送信される前記画像データは、前記出力情報生成ステップにより生成された前記画面画像データであることを特徴とする画像出力方法。
【請求項１７】
接続された入力装置から入力された操作情報を接続されたサーバ装置に送信する送信ステップと、
前記接続されたサーバ装置から送信された画像データを受信する受信ステップと、
前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成ステップと、
前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算ステップと、を有し、
前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より大きいときは、前記送信ステップにより前記操作情報を前記送信ステップにより送信せず、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、
前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より小さいときは、前記送信ステップにより前記操作情報を前記送信ステップにより送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信ステップにより受信し、前記受信ステップにより受信された前記画像データと、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルと、を前記接続された映像出力装置に出力することを特徴とする画像出力方法。
【請求項１８】
クライアント装置による、接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信ステップと、
前記サーバ装置により送信された画像データを受信する第１の受信ステップと、
前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成ステップと、を有し、
前記サーバ装置により前記画像データが送信されたときは、前記第１の受信ステップにより前記画像データを受信し、前記第１の受信ステップにより受信された前記画像データと、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルと、を接続された映像出力ステップに出力し、
前記サーバ装置により前記画像データを送信されないときは、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルを前記接続された映像出力装置に出力し、
サーバ装置による、前記クライアント装置から送信された前記操作情報を受信する第２の受信ステップと、
前記第２の受信ステップにより受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算ステップと、
前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より小さいときのみ、前記画像データを前記接続されたクライアント装置に送信する第２の送信ステップと、
前記第２の受信ステップにより受信された前記操作情報に基づき、画面画像データを生成する出力情報生成ステップと、を有し、
前記第２の送信ステップにより送信される前記画像データは、前記出力情報生成ステップにより生成された前記画面画像データであることを特徴とする画像出力方法。
【請求項１９】
サーバ装置を、
接続されたクライアント装置から送信された操作情報を受信する受信手段と、
前記受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、画像データを前記接続されたクライアント装置に送信する送信手段と、
前記受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段として機能させ、
前記送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とするプログラム。
【請求項２０】
クライアント装置を、
接続された入力装置から入力された操作情報を接続されたサーバ装置に送信する送信手段と、
前記接続されたサーバ装置から送信された画像データを受信する受信手段と、
前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、
前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段として機能させ、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記送信手段により前記操作情報を前記送信手段により送信せず、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記送信手段により前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信手段により受信し、前記受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を前記接続された映像出力装置に出力することを特徴とするプログラム。
【請求項２１】
クライアント装置とサーバ装置とが接続されたクライアントサーバシステムにおいて、
前記クライアント装置を、
接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信手段と、
前記サーバ装置により送信された画像データを受信する第１の受信手段と、
前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段として機能させ、
前記サーバ装置により前記画像データが送信されたときは、前記第１の受信手段により前記画像データを受信し、前記第１の受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を接続された映像出力手段に出力し、
前記サーバ装置により前記画像データを送信されないときは、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを前記接続された映像出力装置に出力し、
前記サーバ装置を、
前記クライアント装置から送信された前記操作情報を受信する第２の受信手段と、
前記第２の受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、
前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、前記画像データを前記接続されたクライアント装置に送信する第２の送信手段と、
前記第２の受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段として機能させ、
前記第２の送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、クライアント装置に入力された操作をサーバ装置により処理するサーバ装置、クライアント装置、クライアントサーバシステム、画像出力方法及びプログラムに関する。
【背景技術】
【０００２】
ネットワークの発達により、あらゆる場所で、安価で、ネットワークに接続できる環境が整ってきている。このため、クライアント装置をあらゆる場所で使用できるように、機能を落とし、できる限り軽量化し、クライアント装置に入力された操作に対する処理は、ネットワークを介し接続したサーバ装置が行うようなクライアントサーバシステムが実用的になってきている
【０００３】
このようなクライアントサーバシステムにおいて、クライアント装置に入力された操作情報は、サーバ装置にネットワークを介し送信され、サーバ装置は、この操作情報を受信し、操作情報に基づき処理を行う。処理の結果の画面画像データなどは、サーバ装置からクライアント装置にネットワークを介し送信され、クライアント装置は、この画面画像データをクライアント装置に接続された映像出力装置により出力する。
【０００４】
このため、画面画像データのデータサイズの大きさやネットワークの混雑具合等のため、クライアント装置に操作情報が入力されてから、この操作情報を反映した画面が出力されるまでに、時間のずれが生じることがある。
【０００５】
例えば、クライアント装置に接続されたマウスを動かすことにより、画面上のカーソルを動かすような処理を行うとき、ネットワークの遅延などにより、クライアント装置に接続された映像出力装置の画面上でのカーソルの動きと、ユーザの動かすマウスの動きとにずれが生じることがある。
【０００６】
そこで、サーバ装置からクライアント装置に送信される画面画像データのデータサイズを小さくし、画面画像データの受信に時間がかからないような方法が取り入れられてきている。例えば、前回生成された画面画像データから変化した部分だけを送信する、差分転送などの方法が使われている。さらに、送信するデータを圧縮することでデータサイズを小さくすることも行われている。
【０００７】
また、マウスの動きとカーソルの動きのずれによる操作上の不快感をなくすために、マウスにより入力された操作情報に基づき、クライアント装置においてもカーソルを生成し、受信した画面画像データとともにこのクライアント装置において生成されたカーソルも同時に出力する方法がある。このクライアント装置において生成されるカーソルをローカルマウスカーソルと呼ぶことにする。
【０００８】
例えば、特許文献１では、ネットワークによる遅延時間を算出し、この算出された遅延時間が閾値を超えたときに、サーバ装置において生成されたカーソルと同時に、ローカルマウスカーソルも画面に出力する方法が開示されている。
【先行技術文献】
【特許文献】
【０００９】
【特許文献１】特開２００６−２３６０４６号公報
【発明の概要】
【発明が解決しようとする課題】
【００１０】
しかしながら、映像を流している場合などを除いて、多くの場合、カーソルの移動中に画面上で変化している部分は、カーソルの部分だけである。差分転送を行っている場合であれば、多くの場合、カーソルの移動中に、サーバ装置からクライアント装置に送信される画面画像データは、カーソル部分の画像データだけということになる。
【００１１】
ローカルマウスカーソルを生成することができるクライアント装置の場合、画面上のカーソルとして、ローカルマウスカーソルを出力することができるため、上記のような場合には、このサーバから送信された、カーソル部分のみの画像データは必要がない。つまり、無駄な画像データの送信が行われていることになる。
【００１２】
そこで本発明は、上記問題点に鑑みてなされたもので、ネットワークに負荷をかけずに画像送信を行うサーバ装置、クライアント装置、クライアントサーバシステム、画像出力方法及びプログラムを提供することを目的とする。
【課題を解決するための手段】
【００１３】
上記課題を解決するため、本発明におけるサーバ装置は、接続されたクライアント装置から送信された操作情報を受信する受信手段と、前記受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、画像データを前記接続されたクライアント装置に送信する送信手段と、前記受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、前記送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とする。
【００１４】
また、本発明におけるサーバ装置は、接続されたクライアント装置から送信された操作情報を受信する受信手段と、これまでに前記受信手段により受信された前記操作情報を記憶する記憶手段と、前記操作情報に記述されているカーソルの位置と、前記記憶手段により記憶されている前回に受信された前記操作情報に記述されているカーソルの位置が同じであるときのみ、画像データを前記接続されたクライアント装置に送信する送信手段と、前記受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、前記送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とする。
【００１５】
また、本発明におけるクライアント装置は、接続された入力装置から入力された操作情報を接続されたサーバ装置に送信する送信手段と、前記接続されたサーバ装置から送信された画像データを受信する受信手段と、前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、を有し、前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記送信手段により前記操作情報を前記送信手段により送信せず、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記送信手段により前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信手段により受信し、前記受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を前記接続された映像出力装置に出力することを特徴とする。
【００１６】
また、本発明におけるクライアントサーバシステムは、接続されたクライアント装置とサーバ装置とを備えるクライアントサーバシステムであって、前記クライアント装置は、接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信手段と、前記サーバ装置により送信された画像データを受信する第１の受信手段と、前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、を有し、前記サーバ装置により前記画像データが送信されたときは、前記第１の受信手段により前記画像データを受信し、前記第１の受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を接続された映像出力手段に出力し、前記サーバ装置により前記画像データを送信されないときは、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを前記接続された映像出力装置に出力し前記サーバ装置は、前記クライアント装置から送信された前記操作情報を受信する第２の受信手段と、前記第２の受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、前記画像データを前記接続されたクライアント装置に送信する第２の送信手段と、前記第２の受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、前記第２の送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とする。
【００１７】
また、本発明におけるクライアントサーバシステムは、接続されたクライアント装置とサーバ装置とを備えるクライアントサーバシステムであって、前記クライアント装置は、接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信手段と、前記サーバ装置から送信された画像データを受信する第１の受信手段と、前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、を有し、前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記送信手段により前記操作情報を前記第１の送信手段により送信せず、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記第１の送信手段により前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記第１の受信手段により受信し、前記第１の受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を接続された映像出力装置に出力し、前記サーバ装置は、前記クライアント装置から送信された前記操作情報を受信する第２の受信手段と、前記画像データを前記接続されたクライアント装置に送信する第２の送信手段と、前記第２の受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段と、を有し、前記第２の送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とする。
【００１８】
また、本発明における画像出力方法は、接続されたクライアント装置から送信された操作情報を受信する受信ステップと、前記受信ステップにより受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算ステップと、前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より小さいときのみ、画像データを前記接続されたクライアント装置に送信する送信ステップと、前記受信ステップにより受信された前記操作情報に基づき、画面画像データを生成する出力情報生成ステップと、を有し、前記送信ステップにより送信される前記画像データは、前記出力情報生成ステップにより生成された前記画面画像データであることを特徴とする。
【００１９】
また、本発明における画像出力方法は、接続された入力装置から入力された操作情報を接続されたサーバ装置に送信する送信ステップと、前記接続されたサーバ装置から送信された画像データを受信する受信ステップと、前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成ステップと、前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算ステップと、を有し、前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より大きいときは、前記送信ステップにより前記操作情報を前記送信ステップにより送信せず、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より小さいときは、前記送信ステップにより前記操作情報を前記送信ステップにより送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信ステップにより受信し、前記受信ステップにより受信された前記画像データと、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルと、を前記接続された映像出力装置に出力することを特徴とする。
【００２０】
また、本発明における画像出力方法は、クライアント装置による、接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信ステップと、前記サーバ装置により送信された画像データを受信する第１の受信ステップと、前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成ステップと、を有し、前記サーバ装置により前記画像データが送信されたときは、前記第１の受信ステップにより前記画像データを受信し、前記第１の受信ステップにより受信された前記画像データと、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルと、を接続された映像出力ステップに出力し、前記サーバ装置により前記画像データを送信されないときは、前記ローカルマウス生成ステップにより生成された前記ローカルマウスカーソルを前記接続された映像出力装置に出力し、サーバ装置による、前記クライアント装置から送信された前記操作情報を受信する第２の受信ステップと、前記第２の受信ステップにより受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算ステップと、前記速度計算ステップにより算出された前記カーソルの移動速度が閾値より小さいときのみ、前記画像データを前記接続されたクライアント装置に送信する第２の送信ステップと、前記第２の受信ステップにより受信された前記操作情報に基づき、画面画像データを生成する出力情報生成ステップと、を有し、
前記第２の送信ステップにより送信される前記画像データは、前記出力情報生成ステップにより生成された前記画面画像データであることを特徴とする。
【００２１】
また、本発明におけるプログラムは、サーバ装置を、接続されたクライアント装置から送信された操作情報を受信する受信手段と、前記受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、画像データを前記接続されたクライアント装置に送信する送信手段と、前記受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段として機能させ、前記送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とする。
【００２２】
また、本発明におけるプログラムは、クライアント装置を、接続された入力装置から入力された操作情報を接続されたサーバ装置に送信する送信手段と、前記接続されたサーバ装置から送信された画像データを受信する受信手段と、前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段と、前記接続された入力装置から入力された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段として機能させ、前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記送信手段により前記操作情報を前記送信手段により送信せず、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記送信手段により前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信手段により受信し、前記受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を前記接続された映像出力装置に出力することを特徴とする。
【００２３】
また、本発明におけるプログラムは、クライアント装置とサーバ装置とが接続されたクライアントサーバシステムにおいて、前記クライアント装置を、接続された入力装置から入力された操作情報を前記サーバ装置に送信する第１の送信手段と、前記サーバ装置により送信された画像データを受信する第１の受信手段と、前記接続された入力装置から入力された前記操作情報に基づき、ローカルマウスカーソルを生成するローカルマウス生成手段として機能させ、前記サーバ装置により前記画像データが送信されたときは、前記第１の受信手段により前記画像データを受信し、前記第１の受信手段により受信された前記画像データと、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルと、を接続された映像出力手段に出力し、前記サーバ装置により前記画像データを送信されないときは、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを前記接続された映像出力装置に出力し、前記サーバ装置を、前記クライアント装置から送信された前記操作情報を受信する第２の受信手段と、前記第２の受信手段により受信された前記操作情報に基づき、カーソルの移動速度を算出する速度計算手段と、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときのみ、前記画像データを前記接続されたクライアント装置に送信する第２の送信手段と、前記第２の受信手段により受信された前記操作情報に基づき、画面画像データを生成する出力情報生成手段として機能させ、前記第２の送信手段により送信される前記画像データは、前記出力情報生成手段により生成された前記画面画像データであることを特徴とする。
【発明の効果】
【００２４】
本発明により、ネットワークに負荷をかけずに画像送信を行うことができる。
【図面の簡単な説明】
【００２５】
【図１】本発明の実施形態に係るクライアントサーバシステムの構成の一例を示した図である。
【図２】本発明の実施形態に係るクライアントサーバシステムの構成の一例を示した図である。
【図３】画面上でのカーソルの移動を示した図である。
【図４】本発明の実施形態に係るサーバ装置における処理動作の一例を示した図である。
【図５】本発明の実施形態に係るサーバ装置における処理動作の一例を示した図である。
【図６】本発明の実施形態に係るクライアントサーバシステムの構成の一例を示した図である。
【図７】本発明の実施形態に係るクライアント装置における処理動作の一例を示した図である。
【図８】本発明の実施形態に係るクライアント装置における処理動作の一例を示した図である。
【図９】画面上でのドラッグ操作による範囲指定を示した図である。
【図１０】本発明の実施形態に係るクライアントサーバシステムの構成の一例を示した図である。
【図１１】本発明の実施形態に係るクライアント装置における処理動作の一例を示した図である。
【発明を実施するための形態】
【００２６】
次に、本発明を実施するための形態について図面を参照して詳細に説明する。
【００２７】
図１は、本発明の実施形態に係るクライアントサーバシステムの構成の一例を示す図である。サーバ装置１００、クライアント装置２００、マウス３００、映像出力装置４００により構成されている。
【００２８】
サーバ装置１００とクライアント装置２００は、ＬＡＮ（Local Area Network）などのローカルなネットワークや、インターネットなどのグローバルなネットワークを介して接続されている。マウス３００は、クライアント装置２００に接続されており、ユーザは、マウス３００を操作することにより、クライアント装置２００に操作情報を入力する。映像出力装置４００は、クライアント装置２００に接続されており、クライアント装置２００から画像データを受信し、受信した画像データに基づき、映像を出力する。
【００２９】
本発明の実施形態に係るクライアントサーバシステムは、この構成に限るものではない。例えば、クライアント装置２００に、入力装置として、マウス３００以外にも、キーバードやタッチパネルなどの入力装置も接続するようにしても良い。また、例えば、サーバ装置１００にも、マウスなどの入力装置や映像出力装置を接続するようにしても良い。
【００３０】
サーバ装置１００は、情報を受信する受信手段１０１と、情報を送信する送信手段１０２と、クライアント装置２００から受信した、マウスなどの入力装置による操作情報に従い、画面画像データなどの出力情報を生成する出力情報生成手段１０３とを備える。この画面画像データは、クライアント装置２００に接続された映像出力装置４００により出力される画面を構成するデータである。
【００３１】
クライアント装置２００は、情報を送信する送信手段２０１と、情報を受信する受信手段２０２と、マウス３００から入力された操作情報に従い、ローカルマウスカーソルを生成するローカルマウス生成手段２０３とを備える。
【００３２】
操作情報として、いろいろなものが考えられる。操作情報として、例えば、マウスの移動操作による画面上でのカーソルの位置の移動に対する情報や、カーソルの位置についての情報、マウスのボタンのクリック操作による画面上での選択に対する情報などが考えられる。
【００３３】
この構成のときに、マウス３００により、カーソルの移動についての操作情報が入力されたときの、通常の処理動作の一例を説明する。まず、ユーザがマウス３００を動かすことにより、カーソルの移動についての操作情報を入力する。クライアント装置２００は、マウス３００から入力された操作情報を、送信手段２０１によりサーバ装置１００に送信する。また、クライアント装置２００は、ローカルマウス生成手段により、入力された操作情報に基づき、ローカルマウスカーソルを生成する。
【００３４】
サーバ装置１００は、クライアント装置２００から送信された操作情報を受信手段１０１により受信し、出力情報生成手段１０３により、受信した操作情報に基づき、画面画像データなどの出力情報を生成する。サーバ装置１００は、この生成された画面画像データを、送信手段１０２によりクライアント装置２００に送信する。
【００３５】
クライアント装置２００は、サーバ装置１００から送信された画面画像データを受信手段２０２により受信し、この受信した画面画像データとローカルマウス生成手段により生成されたローカルマウスカーソルとを、映像出力装置４００に出力する。この一連の処理動作は、クライアント装置２００が、ユーザによりマウス３００から操作情報の入力を受けるごとに行われる。または、ある一定時間間隔ごとに行われるようにしても良い。
【００３６】
ここで、ローカルマウス生成部は、タッチパッドやタッチパネルなどのカーソルの移動を入力できる入力装置から入力された操作情報に従い、ローカルマウスカーソルを生成するようにしても良い。
【００３７】
このようにすることにより、クライアント装置２００は、それほど処理能力の高くなくても、サーバ装置１００が高い処理能力を有しておれば、サーバ装置１００の能力を使い、高度な計算が必要な処理等を行うことができるようになる。また、クライアント装置２００において、ローカルマウスカーソルを生成し、出力するため、ネットワークの遅延等による、マウスの動きとカーソルの動きとのずれを防ぐことができる。
【００３８】
出力情報生成手段１０３の生成する画面画像データは、差分矩形データでも良い。差分矩形データは、今回生成した画面画像データと前回生成した画面画像データの違う箇所を含む矩形部分のデータだけにより構成された画面画像データである。この前回の画面画像データと違う箇所を含む矩形部分を差分矩形と呼ぶ。この差分矩形により構成される差分矩形データを、サーバ装置１００からクライアント装置２００に送信し、クライアント装置２００は、この差分矩形データを受信し、映像出力装置４００に出力する。映像出力装置４００は、前回の出力した画面画像データをクライアント装置２００から出力された差分矩形に対応する部分をクライアント装置２００から出力された差分矩形に置換し、この置換された画面画像データを出力するようにするようにすれば良い。
【００３９】
このようにすることにより、ネットワークにかかる負荷を低減することができる。
【００４０】
また、サーバ装置１００は、画面画像データや差分矩形データのデータサイズを圧縮し、さらにデータサイズを小さくしてから、クライアント装置２００に送信するようにしても良い。圧縮データがサーバ装置１００から送信されるときは、クライアント装置２００に圧縮を解凍する手段を備えさせ、受信した圧縮データを解凍してから、映像出力装置４００に出力するようにしても良い。
【００４１】
このようにすることにより、ネットワークにかかる負荷をさらに低減することができる。
【００４２】
図２は、本発明の実施形態に係るクライアントサーバシステムの構成の一例を示した図である。これは図１に示した構成に、新たに、サーバ装置１００が速度計算手段１０４を備えた構成になっている。
【００４３】
速度計算手段１０４は、クライアント装置２００から受信した操作情報に基づき、出力情報生成手段１０３により生成される画面画像データ上でのカーソルの移動速度を計算する。
【００４４】
例えば、図３に示すように、画面画像データ上で、座標（Ｘ１、Ｙ１）にあったカーソルが、時間間隔Ｔ後に、座標（Ｘ２、Ｙ２）に移動したときは、カーソルの移動速度は、次のようになる。
【００４５】
【数１】
2010237816.tif 000003
【００４６】
ここで、速度を求めるときの時間間隔Ｔとして、いろいろと考えられる。例えば、操作情報を今回受信した時間と操作情報を前回受信した時間の間隔をＴとし、今回受信した操作情報によるカーソル位置を（Ｘ２、Ｙ２）と前回受信した操作情報によるカーソル位置を（Ｘ１、Ｙ１）とし、移動速度を求めても良い。また、例えば、操作情報を今回受信した時間と操作情報をＮ回前に受信した時間の間隔をＴとし、今回受信した操作情報によるカーソル位置を（Ｘ２、Ｙ２）とＮ回前に受信した操作情報によるカーソル位置を（Ｘ１、Ｙ１）とし、移動速度を求めても良い。
【００４７】
図４は、図２に示した構成の際に、本発明の実施形態に係るサーバ装置において行われる処理動作の一例を示した図である。サーバ装置１００は、受信手段１０１によりクライアント装置２００から送信された操作情報を受信する（Ｓ１０１）。速度計算手段１０４は、受信した操作情報に基づき、カーソルの移動速度を計算する（Ｓ１０２）。この計算されたカーソルの移動速度が閾値より大きい場合（Ｓ１０３、Ｙｅｓ）、サーバ装置２００は、処理を終了する。カーソルの移動速度が閾値より小さい場合（Ｓ１０３、Ｎｏ）、サーバ装置２００は、出力情報生成手段１０３により生成された画面画像データを送信手段１０２により送信し（Ｓ１０４）、処理を終了する。この一連の処理動作は、クライアント装置２００から操作情報を受信するごとに行われる。または、ある一定時間間隔ごとに行われるようにしても良い。カーソルの移動に対する入力は、マウス３００に限らず、タッチパッドやタッチパネルなどの入力装置より行われるようにしても良い。
【００４８】
このとき、クライアント装置２００は、サーバ装置１００から画面画像データが送られてこない間は、ローカルマウス生成手段２０４により生成されたローカルマウスカーソルを映像出力装置に出力する。映像出力装置４００は、このローカルマウスカーソルと最後に映像出力装置４００により出力された画面画像データとを画面に出力する。
【００４９】
このようにすることにより、カーソルの移動速度がある速度以上のときは、サーバ装置１００からクライアント装置２００に画像データが送信されなくなるため、ネットワークにかかる負荷を低減することができる。
【００５０】
図４に示した処理動作において、サーバ装置１００からクライアント装置２００に送信される画面画像データは、上述の差分矩形データでも良い。また、サーバ装置１００は、画面画像データや差分矩形データのデータサイズを圧縮し、データサイズを小さくしてから、クライアント装置２００に送信しても良い。圧縮データがサーバ装置１００から送信されるときは、クライアント装置２００に圧縮を解凍する手段を備えさせ、受信した圧縮データを解凍してから、映像出力装置４００に出力するようにしても良い。
【００５１】
クライアント装置２００において、例えば、映像の再生を指示しているときなどは、差分転送を行っているならば、サーバ装置１００からクライアント装置２００に映像再生が行われている部分の差分矩形データが送信されている。このとき、同時に、カーソルの移動が行われると、サーバ装置１００からクライアント装置２００には、映像再生が行われている部分の差分矩形データとカーソルの部分の差分矩形データが送信されることになる。上記のように、カーソルの速度が閾値以上になったときに、サーバ装置１００からクライアント装置２００への画面画像データの送信をしないことにすると、映像再生が行われている部分の差分矩形データも送信されないことになってしまう。
【００５２】
そこで、差分転送を行っている際には、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するかどうかを判断する手段をサーバ装置１００に持たせるようにしても良い。そして、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するときには、カーソルの移動速度が閾値を超えても、すべて差分矩形データをサーバ装置１００からクライアント装置２００に送信するようにしても良い。つまり、画面上で、カーソルの部分以外に、変化する部分があるときには、常に、サーバ装置１００からクライアント装置２００にすべて差分矩形データを送るようにしても良い。または、カーソルの移動速度が閾値以上になったときは、カーソルの部分の差分矩形データ以外の差分矩形データだけをサーバ装置１００からクライアント装置２００に送信するようにしても良い。サーバ装置１００は、クライアント装置２００から操作情報を受信しているため、カーソルの部分の差分矩形データとカーソル部分以外の差分矩形データは区別することは可能である。
【００５３】
図４では、カーソルの移動速度が閾値より大きい場合に、サーバ装置１００からクライアント装置２００への画面画像データの送信を行わないことで、ネットワークにかかる負荷を低減したが、カーソルが速度に関係なく、カーソルが動いているときは、常に、サーバ装置１００からクライアント装置２００への画面画像データの送信を行わないようにしても良い。
【００５４】
図５は、図１に示した構成に新たに記憶手段を加えた際に、本発明の実施形態に係るサーバ装置において行われる処理動作の一例を示した図である。サーバ装置１００は、受信手段１０１によりクライアント装置２００から送信された操作情報を受信する（Ｓ２０１）。記憶手段により記憶されている前回に受信した操作情報と比較することにより、カーソルが移動したかどうかの判定をする（Ｓ２０２）。カーソルが移動した場合（Ｓ２０２、Ｙｅｓ）、サーバ装置２００は、処理を終了する。カーソルが移動していない場合（Ｓ２０２、Ｎｏ）、サーバ装置２００は、出力情報生成手段１０３により生成された画面画像データを送信手段１０２により送信し（Ｓ２０３）、処理を終了する。この一連の処理動作は、クライアント装置２００から操作情報を受信するごとに行われる。カーソルの移動に対する入力は、マウス３００に限らず、タッチパッドやタッチパネルなどの入力装置より行われるようにしても良い。
【００５５】
このとき、クライアント装置２００は、サーバ装置１００から画面画像データが送られてこない間は、ローカルマウス生成手段２０４により生成されたローカルマウスカーソルを映像出力装置４００に出力する。映像出力装置４００は、このローカルマウスカーソルと最後に映像出力装置４００により出力された画面画像データと画面に出力する。
【００５６】
このようにすることにより、カーソルの移動中は、サーバ装置１００からクライアント装置２００に画像データが送信されなくなるため、ネットワークにかかる負荷を低減することができる。
【００５７】
図５に示した処理動作において、サーバ装置１００からクライアント装置２００に送信される画面画像データは、上述の差分矩形データでも良い。また、サーバ装置１００は、画面画像データや差分矩形データのデータサイズを圧縮し、データサイズを小さくしてから、クライアント装置２００に送信しても良い。
【００５８】
図５に示した処理動作において、差分転送を行っている際には、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するかどうかを判断する手段をサーバ装置１００に持たせるようにしても良い。そして、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するときには、カーソルの移動速度が閾値を超えても、すべて差分矩形データをサーバ装置１００からクライアント装置２００に送信するようにしても良い。つまり、画面上で、カーソルの部分以外に、変化する部分があるときには、常に、サーバ装置１００からクライアント装置２００にすべて差分矩形データを送るようにしても良い。または、カーソルの移動速度が閾値以上になったときは、カーソルの部分の差分矩形データ以外の差分矩形データだけをサーバ装置１００からクライアント装置２００に送信するようにしても良い。サーバ装置１００は、クライアント装置２００から操作情報を受信しているのため、カーソルの部分の差分矩形データとカーソル部分以外の差分矩形データは区別することは可能である。
【００５９】
図６は、本発明の実施形態に係るクライアントサーバシステムの構成の一例を示した図である。これは図１に示した構成に、新たに、クライアント装置２００が速度計算手段２０４を備えた構成になっている。図２に示した構成と違い、カーソルの移動速度を、サーバ装置１００ではなく、クライアント装置２００において計算する。
【００６０】
速度計算手段２０４は、マウス３００から操作情報の入力を受け、入力された操作情報に基づき、映像出力装置４００により出力される画面画像データ上でのカーソルの移動速度を計算する。カーソルの移動速度の計算の仕方はいろいろと考えられるが、例えば、上述したような方法で計算すると良い。
【００６１】
図７は、図６に示した構成の際に、本発明の実施形態に係るクライアント装置において行われる処理動作の一例を示した図である。クライアント装置２００は、マウス３００から操作情報の入力を受ける（Ｓ３０１）。クライアント装置２００は、ローカルマウス生成手段２０３により、この入力された操作情報に基づき、ローカルマウスカーソルを生成する（Ｓ３０２）。また、クライアント装置２００は、速度計算手段２０４により、この入力された操作情報に基づき、カーソルの移動速度を計算する（Ｓ３０３）。このローカルマウス生成手段による処理（Ｓ３０２）と速度計算手段２０４による処理（Ｓ３０３）は同時に行われても良いし、どちらが先に行われるようにしても良い。
【００６２】
この計算されたカーソルの移動速度が閾値より大きい場合（Ｓ３０４、Ｙｅｓ）、クライアント装置２００は、ローカルマウス生成手段により生成されたローカルマウスカーソルを映像出力装置４００に出力し（Ｓ３０８）、処理を終了する。
【００６３】
計算されたカーソルの移動速度が閾値より小さい場合（Ｓ３０４、Ｎｏ）、クライアント装置２００は、入力された操作情報をサーバ装置１００に送信手段２０１により送信する（Ｓ３０５）。サーバ装置２００の出力情報生成手段１０３により生成された画面画像データを、クライアント装置２００は受信手段２０２により受信する（Ｓ３０６）。クライアント装置２００は、この受信した画面画像データと、ローカルマウス生成手段２０３により生成されたローカルマウスカーソルとを、映像出力装置に出力し（Ｓ３０７）、処理を終了する。この一連の処理動作は、マウス３００から操作情報の入力があるごとに行われる。または、ある一定時間間隔ごとに行われるようにしても良い。カーソルの移動に対する入力は、マウス３００に限らず、タッチパッドやタッチパネルなどの入力装置より行われるようにしても良い。
【００６４】
このようにすることにより、カーソルの移動速度がある速度以上のときは、クライアント装置２００からサーバ装置１００への操作情報の送信と、サーバ装置１００からクライアント装置２００に画像データの送信の両方がなくなるため、ネットワークにかかる負荷を低減することができる。
【００６５】
図７に示した処理動作において、サーバ装置１００からクライアント装置２００に送信される画面画像データは、上述の差分矩形データでも良い。また、サーバ装置１００は、画面画像データや差分矩形データのデータサイズを圧縮し、データサイズを小さくしてから、クライアント装置２００に送信しても良い。圧縮データがサーバ装置１００から送信されるときは、クライアント装置２００に圧縮を解凍する手段を備えさせ、受信した圧縮データを解凍してから、映像出力装置４００に出力するようにしても良い。
【００６６】
図７に示した処理動作において、差分転送を行っている際には、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するかどうかを判断する手段をサーバ装置１００に持たせるようにしても良い。そして、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するときには、カーソルの移動速度が閾値を超えても、すべて差分矩形データをサーバ装置１００からクライアント装置２００に送信するようにしても良い。つまり、画面上で、カーソルの部分以外に、変化する部分があるときには、常に、サーバ装置１００からクライアント装置２００にすべて差分矩形データを送るようにしても良い。または、カーソルの移動速度が閾値以上になったときは、カーソルの部分の差分矩形データ以外の差分矩形データだけをサーバ装置１００からクライアント装置２００に送信するようにしても良い。サーバ装置１００は、クライアント装置２００から操作情報を受信しているため、カーソルの部分の差分矩形データとカーソル部分以外の差分矩形データは区別することは可能である。
【００６７】
図７に示した処理動作では、ローカルマウス生成手段２０３によるローカルマウスの生成を、マウス３００から操作情報が入力されるごとに行っているが、カーソルの移動速度が閾値より大きいときにだけに、ローカルマウスを生成するようにしても良い。
【００６８】
図８は、図６に示した構成において、カーソルの移動速度が閾値より大きいときにだけ、ローカルマウスカーソルを生成する場合に、本発明の実施形態に係るクライアント装置において行われる処理動作の一例を示した図である。クライアント装置２００は、マウス３００から操作情報の入力を受ける（Ｓ４０１）。速度計算手段２０４は、この入力された操作情報に基づき、カーソルの移動速度を計算する（Ｓ４０２）。
【００６９】
この計算されたカーソルの移動速度が閾値より大きい場合（Ｓ４０３、Ｙｅｓ）、クライアント装置２００は、ローカルマウス生成手段２０３により、この入力された操作情報に基づき、ローカルマウスカーソルを生成する（Ｓ４０７）。そして、クライアント装置２００は、ローカルマウス生成手段により生成されたローカルマウスカーソルを映像出力装置に出力し（Ｓ４０８）、処理を終了する。
【００７０】
計算されたカーソルの移動速度が閾値より小さい場合（Ｓ４０３、Ｎｏ）、クライアント装置２００は、入力された操作情報をサーバ装置１００に送信手段２０１により送信する（Ｓ４０４）。サーバ装置２００の出力情報生成手段１０３により生成された画面画像データを、クライアント装置２００は受信手段２０２により受信する（Ｓ４０５）。クライアント装置２００は、この受信した画面画像データを映像出力装置に出力し（Ｓ４０６）、処理を終了する。この一連の処理動作は、マウス３００から操作情報の入力があるごとに行われる。または、ある一定時間間隔ごとに行われるようにしても良い。カーソルの移動に対する入力は、マウス３００に限らず、タッチパッドやタッチパネルなどの入力装置より行われるようにしても良い。
【００７１】
このようにすることにより、カーソルの移動速度がある速度以上のときは、クライアント装置２００からサーバ装置１００への操作情報の送信と、サーバ装置１００からクライアント装置２００に画像データの送信の両方がなくなるため、ネットワークにかかる負荷を低減することができる。
【００７２】
また、カーソルの移動速度が閾値より小さいときは、サーバ装置１００が出力情報生成手段により生成した画面画像データに含まれるカーソルだけが、映像出装置により出力されることになる。このようにすることで、クライアント装置２００は、常に、ローカルマウス生成手段２０３によりローカルマウスカーソルを生成しなくて良くなるため、クライアント装置２００の行う処理を減らすことができる。
【００７３】
図８に示した処理動作において、サーバ装置１００からクライアント装置２００に送信される画面画像データは、上述の差分矩形データでも良い。また、サーバ装置１００は、画面画像データや差分矩形データのデータサイズを圧縮し、データサイズを小さくしてから、クライアント装置２００に送信しても良い。圧縮データがサーバ装置１００から送信されるときは、クライアント装置２００に圧縮を解凍する手段を備えさせ、受信した圧縮データを解凍してから、映像出力装置４００に出力するようにしても良い。
【００７４】
図８に示した処理動作において、差分転送を行っている際には、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するかどうかを判断する手段をサーバ装置１００に持たせるようにしても良い。そして、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するときには、カーソルの移動速度が閾値を超えても、すべて差分矩形データをサーバ装置１００からクライアント装置２００に送信するようにしても良い。つまり、画面上で、カーソルの部分以外に、変化する部分があるときには、常に、サーバ装置１００からクライアント装置２００にすべて差分矩形データを送るようにしても良い。または、カーソルの移動速度が閾値以上になったときは、カーソルの部分の差分矩形データ以外の差分矩形データだけをサーバ装置１００からクライアント装置２００に送信するようにしても良い。サーバ装置１００は、クライアント装置２００から操作情報を受信しているため、カーソルの部分の差分矩形データとカーソル部分以外の差分矩形データは区別することは可能である。
【００７５】
クライアント装置２００が図２に示した構成に記憶手段を加え、図５に示したサーバ装置１００が記憶手段を備えた構成の際の処理動作のように、記憶手段により記憶されている前回に受信した操作情報と比較することにより、カーソルが移動したかどうかの判定をするようにしても良い。そして、カーソルが移動しているときは、入力装置３００から入力された操作情報をサーバ装置２００に送信せずに、ローカルマウス生成手段２０３の生成したローカルマウスカーソルを映像出力装置４００に出力する。そして、カーソルが移動していないときにだけ、操作情報をサーバ装置２００に送信し、サーバ装置２００から送信された画像データを受信し、受信した画像データとローカルマウス生成手段２０３により生成されたローカルマウスカーソルを映像出力装置４００に出力する。
【００７６】
マウス３００のボタンを押した状態での移動することにより、操作情報を入力する方法がある。この入力は、ドラッグ操作と呼ばれる。このドラッグ操作により、例えば、描画ソフトウェアでは、線が引かれたり、画面上に表示された図形を移動したり、図９に示したように、長方形の枠で囲むことで、範囲の指定をすることができる。図９に示したように、座標（Ｘ３、Ｙ３）から座標（Ｘ４、Ｙ４）までドラッグ操作をしたとき、座標（Ｘ３、Ｙ３）と座標（Ｘ４、Ｙ４）を対角とする長方形の枠により範囲が指定される。
【００７７】
図１０は、クライアント装置２００において、この範囲指定の枠を作成する際の、本発明の実施形態に係るクライアントサーバシステムの構成の一例を示す図である。これは図１に示した構成に、新たに、クライアント装置２００が範囲指定枠生成手段２０５を備えた構成になっている。
【００７８】
範囲指定枠生成手段２０５は、マウス３００により入力された操作情報に基づき、範囲指定の枠を生成する。
【００７９】
図１１は、図１０に示した構成の際に、本発明の実施形態に係るクライアントサーバシステムにおいて行われる処理動作の一例を示す図である。クライアント装置２００は、マウス３００から操作情報の入力を受ける（Ｓ５０１）。
【００８０】
この入力された操作情報が範囲指定である場合（Ｓ５０２、Ｙｅｓ）、クライアント装置２００は、範囲指定枠生成手段２０５により、この入力された操作情報に基づき、範囲指定の枠を生成する（Ｓ５０６）。また、クライアント装置２００は、ローカルマウス生成手段２０３により、この入力された操作情報に基づき、ローカルマウスカーソルを生成する（Ｓ５０７）。この範囲指定枠生成手段による処理（Ｓ５０６）とローカルカーソル生成手段による処理（Ｓ５０７）は同時に行われても良いし、どちらかが先に行われるようにしても良い。
【００８１】
クライアント装置２００、範囲指定枠生成手段２０５により生成された範囲指定の枠と、ローカルマウス生成手段２０３より生成されたローカルマウスカーソルとを、映像出力装置に出力し（Ｓ５０８）、処理を終了する。
【００８２】
入力された操作情報が範囲指定でない場合（Ｓ５０２、Ｎｏ）、クライアント装置２００は、入力された操作情報をサーバ装置１００に送信手段２０１により送信する（Ｓ５０３）。サーバ装置２００の出力情報生成手段１０３により生成された画面画像データを、クライアント装置２００は受信手段２０２により受信する（Ｓ５０４）。クライアント装置２００は、この受信した画面画像データを映像出力装置に出力し（Ｓ５０５）、処理を終了する。この一連の処理動作は、マウス３００から操作情報の入力があるごとに行われる。または、ある一定時間間隔ごとに行われるようにしても良い。カーソルの移動に対する入力は、マウス３００に限らず、タッチパッドやタッチパネルなどの入力装置より行われるようにしても良い。
【００８３】
このようにすることにより、ドラッグ操作による範囲指定のときは、クライアント装置２００からサーバ装置１００への操作情報の送信と、サーバ装置１００からクライアント装置２００に画像データの送信の両方がなくなるため、ネットワークにかかる負荷を低減することができる。
【００８４】
図１１に示した処理動作において、サーバ装置１００からクライアント装置２００に送信される画面画像データは、上述の差分矩形データでも良い。また、サーバ装置１００は、画面画像データや差分矩形データのデータサイズを圧縮し、データサイズを小さくしてから、クライアント装置２００に送信しても良い。圧縮データがサーバ装置１００から送信されるときは、クライアント装置２００に圧縮を解凍する手段を備えさせ、受信した圧縮データを解凍してから、映像出力装置４００に出力するようにしても良い。
【００８５】
図１１に示した処理動作において、差分転送を行っている際には、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するかどうかを判断する手段をサーバ装置１００に持たせるようにしても良い。そして、カーソルの部分の差分矩形データ以外に、クライアント装置２００に送信すべき差分矩形データが存在するときには、カーソルの移動速度が閾値を超えても、すべて差分矩形データをサーバ装置１００からクライアント装置２００に送信するようにしても良い。つまり、画面上で、カーソルの部分以外に、変化する部分があるときには、常に、サーバ装置１００からクライアント装置２００にすべて差分矩形データを送るようにしても良い。または、カーソルの移動速度が閾値以上になったときは、カーソルの部分の差分矩形データ以外の差分矩形データだけをサーバ装置１００からクライアント装置２００に送信するようにしても良い。サーバ装置１００は、クライアント装置２００から操作情報を受信しているため、カーソルの部分の差分矩形データとカーソル部分以外の差分矩形データは区別することは可能である。
【００８６】
また、図１１に示した処理動作において、ローカルマウス生成手段２０３によりローカルマウスカーソルが生成されるのは、入力された操作情報が範囲指定である場合だけであるが、常に、ローカルマウス生成手段２０３によりローカルマウスカーソルが生成されるようにしても良い。このときは、クライアント装置２００は、画面画像データと、この生成されたローカルマウスカーソルとを、映像出力装置４００に出力する。
【００８７】
以上、本発明の好適な実施の形態により本発明を説明した。ここでは特定の具体例を示して本発明を説明したが、特許請求の範囲に定義された本発明の広範囲な趣旨および範囲から逸脱することなく、これら具体例に様々な修正および変更が可能である。
【００８８】
また、本発明におけるサーバ装置は、前記出力情報生成手段により生成された前記画像画面データと、前回前記出力情報生成手段により生成された前記画像画面データとの異なる箇所を含む部分だけにより構成される差分画像データを生成する差分画像生成手段を有し、前記送信手段により送信される前記画像データは、前記差分画像生成手段より生成された前記差分画像データであるようにしても良い。
【００８９】
また、本発明におけるサーバ装置は、前記送信手段は、前記差分画像データが前記カーソルの部分以外を含むとき、前記速度計算手段により算出された前記カーソルの移動速度に関係なく、画像データを前記接続されたクライアント装置に送信するようにしても良い。
【００９０】
また、本発明におけるサーバ装置は、前記出力情報生成手段により生成された前記画面画像データを圧縮する圧縮手段を有し、前記送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記画面画像データであるようにしても良い。
【００９１】
また、本発明におけるサーバ装置は、前記差分画像生成手段により生成された前記差分画像データを圧縮する圧縮手段を有し、前記送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記差分画像データであるようにしても良い。
【００９２】
また、本発明におけるクライアント装置は、前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記操作情報を前記送信手段により送信せず、前記ローカルマウス生成手段により前記ローカルマウスカーソルを生成し、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記操作情報を前記送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記受信手段により受信し、前記ローカルマウス生成手段によりローカルマウスカーソルを生成せず、前記受信手段により受信された前記画像データを接続された映像出力装置に出力するようにしても良い。
【００９３】
また、本発明におけるクライアントサーバシステムは、前記速度計算手段により算出された前記カーソルの移動速度が閾値より大きいときは、前記操作情報を前記第１の送信手段により送信せず、前記ローカルマウス生成手段により前記ローカルマウスカーソルを生成し、前記ローカルマウス生成手段により生成された前記ローカルマウスカーソルを接続された映像出力装置に出力し、前記速度計算手段により算出された前記カーソルの移動速度が閾値より小さいときは、前記操作情報を前記第１の送信手段により送信し、前記接続されたサーバ装置から送信された前記画像データを前記第１の受信手段により受信し、前記ローカルマウス生成手段によりローカルマウスカーソルを生成せず、前記第１の受信手段により受信された前記画像データを接続された映像出力装置に出力するようにしても良い。
【００９４】
また、本発明におけるクライアントサーバシステムは、前記サーバ装置は、前記出力情報生成手段により生成された前記画像画面データと、前回前記出力情報生成手段により生成された前記画像画面データとの異なる箇所を含む部分だけにより構成される差分画像データを生成する差分画像生成手段を有し、前記第２の送信手段により送信される前記画像データは、前記差分画像生成手段より生成された前記差分画像データであるようにしても良い。
【００９５】
また、本発明におけるクライアントサーバシステムは、前記第２の送信手段は、前記差分画像データが前記カーソルの部分以外を含むとき、前記速度計算手段により算出された前記カーソルの移動速度に関係なく、画像データを前記接続されたクライアント装置に送信するようにしても良い。
【００９６】
また、本発明におけるクライアントサーバシステムは、前記サーバ装置は、前記出力情報生成手段により生成された前記画面画像データを圧縮する圧縮手段を有し、前記第２の送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記画面画像データであるようにしても良い。
【００９７】
また、本発明におけるクライアントサーバシステムは、前記サーバ装置は、前記差分画像生成手段により生成された前記差分画像データを圧縮する圧縮手段を有し、前記送信手段により送信される前記画像データは、前記圧縮手段により圧縮された前記差分画像データであるようにしても良い。
【符号の説明】
【００９８】
１００    サーバ装置
１０１    受信手段
１０２    送信手段
１０３    出力情報生成手段
１０４    速度計算手段
２００    クライアント装置
２０１    送信手段
２０２    受信手段
２０３    ローカルマウス生成手段
２０４    速度計算手段
２０５    範囲指定枠生成手段
【図１】
2010237816.tif 000004
【図２】
2010237816.tif 000005
【図３】
2010237816.tif 000006
【図４】
2010237816.tif 000007
【図５】
2010237816.tif 000008
【図６】
2010237816.tif 000009
【図７】
2010237816.tif 000010
【図８】
2010237816.tif 000011
【図９】
2010237816.tif 000012
【図１０】
2010237816.tif 000013
【図１１】
2010237816.tif 000014