(57)【特許請求の範囲】
【請求項１】
画面データを受信するクライアント端末とネットワークを介して接続され、映像データを再生して前記画面データを生成する画像処理装置であって、
前記再生した映像データから、アプリケーションにより発行される描画コマンドを用いて画面データを描画する描画手段と、
前記描画手段で用いた描画コマンドを記憶する描画コマンド記憶手段と、
前記描画手段によって描画された画面データを記憶する画面データ記憶手段と、
前記描画コマンド記憶手段に記憶された描画コマンドを解析して、前記画面データ記憶手段に記憶された画面データを複数の領域に分離する領域分離手段と、
前記描画コマンド記憶手段に記憶された描画コマンドを解析して、前記領域分離手段によって分離された各々の領域の属性を判定する属性判定手段と、
前記領域分離手段によって分離された領域に対して、前記属性判定手段によって判定された属性に応じた符号化を行う符号化手段と、
前記符号化手段によって符号化された領域に係る画面データを前記クライアント端末に送信する送信手段とを有することを特徴とする画像処理装置。
【請求項２】
前記クライアント端末から機器情報を受信する受信手段と、
前記受信手段によって受信された前記クライアント端末の機器情報に基づいて、前記クライアント端末の仕様に応じた画面のパラメータを決定する決定手段とをさらに有し、
前記描画手段は、前記決定手段によって決定されたパラメータに応じて画面データを描画することを特徴とする請求項１に記載の画像処理装置。
【請求項３】
前記領域分離手段は、前記画面データ記憶手段に記憶された画面データを矩形領域で分離することを特徴とする請求項１又は２に記載の画像処理装置。
【請求項４】
前記領域分離手段は、前記描画コマンドを解析した結果、分離すべき領域が矩形領域でない場合には、前記矩形領域でない領域の外形を囲むように矩形で領域を分離することを特徴とする請求項３に記載の画像処理装置。
【請求項５】
前記符号化手段は、属性が文字属性である場合に、可逆圧縮による符号化を行うことを特徴とする請求項１〜４の何れか１項に記載の画像処理装置。
【請求項６】
前記符号化手段は、属性が自然画属性である場合にフレーム内圧縮による符号化を行うことを特徴とする請求項１〜５の何れか１項に記載の画像処理装置。
【請求項７】
前記描画コマンドは、グラフィックコマンドであることを特徴とする請求項１〜６の何れか１項に記載の画像処理装置。
【請求項８】
前記描画手段は、前記クライアント端末からのリモート操作を受信したことに応じて描画を開始することを特徴とする請求項１〜７の何れか１項に記載の画像処理装置。
【請求項９】
画面データを受信するクライアント端末とネットワークを介して接続され、映像データを再生して前記画面データを生成する画像処理装置における画像処理方法であって、
前記再生した映像データから、アプリケーションにより発行される描画コマンドを用いて画面データを描画する描画工程と、
前記描画工程において用いた描画コマンドを記憶手段に記憶する描画コマンド記憶工程と、
前記描画工程において描画された画面データを記憶手段に記憶する画面データ記憶工程と、
前記描画コマンド記憶工程において記憶された描画コマンドを解析して、前記画面データ記憶工程において記憶された画面データを複数の領域に分離する領域分離工程と、
前記描画コマンド記憶工程において記憶された描画コマンドを解析して、前記領域分離工程において分離された各々の領域の属性を判定する属性判定工程と、
前記領域分離工程において分離された領域に対して、前記属性判定工程において判定された属性に応じた符号化を行う符号化工程と、
前記符号化工程において符号化された領域に係る画面データを前記クライアント端末に送信する送信工程とを有することを特徴とする画像処理方法。
【請求項１０】
画面データを受信するクライアント端末とネットワークを介して接続され、映像データを再生して前記画面データを生成する画像処理装置を制御するためのプログラムであって、
前記再生した映像データから、アプリケーションにより発行される描画コマンドを用いて画面データを描画する描画工程と、
前記描画工程において用いた描画コマンドを記憶手段に記憶する描画コマンド記憶工程と、
前記描画工程において描画された画面データを記憶手段に記憶する画面データ記憶工程と、
前記描画コマンド記憶工程において記憶された描画コマンドを解析して、前記画面データ記憶工程において記憶された画面データを複数の領域に分離する領域分離工程と、
前記描画コマンド記憶工程において記憶された描画コマンドを解析して、前記領域分離工程において分離された各々の領域の属性を判定する属性判定工程と、
前記領域分離工程において分離された領域に対して、前記属性判定工程において判定された属性に応じた符号化を行う符号化工程と、
前記符号化工程において符号化された領域に係る画面データを前記クライアント端末に送信する送信工程とをコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は画像処理装置、画像処理方法及びプログラムに関し、特に、サーバからクライアント端末に画面データを送信するために用いて好適な技術に関する。
【背景技術】
【０００２】
従来、画面共有サーバの画面をキャプチャして転送する手法が数多く提案されている。例えば、特許文献１に記載のシンクライアントシステムでは、シンクライアントサーバ装置に映像再生処理部を設けるとともに、シンクライアント端末には映像描画処理部を設ける。そして、シンクライアントサーバ装置側では、映像表示領域に透過色を設定し、画面データとしてリモコン経由で送信するとともに、映像データを別ルートで送信する。これにより、シンクライアント端末側では、これらの画面データ及び映像データをオーバーレイ表示にて同一画面上に表示している。
【０００３】
また、特許文献２に記載の画像伝送システムでは、画像の変化した描画領域を複数の矩形範囲として識別し、前記識別した複数の矩形範囲と、描画範囲集合記憶部から読み出した複数の矩形範囲の集合との比較を行う。さらに、新しい矩形範囲の集合を再構成して記憶している。そして、送信可能になったことが通知されると、再構成した矩形範囲の集合を読み出し、複数の矩形範囲内の画像を読み出して画像を圧縮処理している。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】特開２００７−３１１９５７号公報
【特許文献２】特開２００５−３３９２５６号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
従来は、描画された画像データ（ビットマップデータもしくはＲＡＷデータ）の変化分を矩形領域で時間方向に重畳してメモリに蓄積する。そして、送信時に最終的な変化分の画像データを複数の矩形領域で読み出し、さらに当該複数の画像データを圧縮して送信するように構成されている。このように、最終変化分の画像データのみを送信することにより、通信路の負荷を軽減している。ところが、受信側では圧縮データを展開する処理と、複数の矩形領域を配置する位置及び当該複数の矩形範囲と画像データとを同期させる処理を行わなければならず、処理負荷が膨大になってしまう。
【０００６】
特許文献１に記載の構成では、映像データの位置が移動するとオーバーレイする画面データの位置も変化してしまう。このため、それぞれ別々で送った映像データ及び画面データをクライアント側で合成表示する際に、同期させるための表示制御処理が複雑になるという問題があった。また、特許文献２に記載の構成では、画像の変化した描画領域を矩形範囲で監視して記憶する。このため、当該処理を行うため制御部を設けたり、矩形範囲のイメージをそのまま送信用として保存したりするために、大容量のメモリが必要となる。その結果、処理構成が複雑になりコストが嵩むという問題があった。
【０００７】
本発明は前述の問題点に鑑み、画面共有システムにおける送信側の処理負荷を軽減するとともに、受信側での処理負荷を軽減できるようにすることを目的としている。
【課題を解決するための手段】
【０００８】
本発明の画像処理装置は、画面データを受信するクライアント端末とネットワークを介して接続され、映像データを再生して前記画面データを生成する画像処理装置であって、前記再生した映像データから、アプリケーションにより発行される描画コマンドを用いて画面データを描画する描画手段と、前記描画手段で用いた描画コマンドを記憶する描画コマンド記憶手段と、前記描画手段によって描画された画面データを記憶する画面データ記憶手段と、前記描画コマンド記憶手段に記憶された描画コマンドを解析して、前記画面データ記憶手段に記憶された画面データを複数の領域に分離する領域分離手段と、前記描画コマンド記憶手段に記憶された描画コマンドを解析して、前記領域分離手段によって分離された各々の領域の属性を判定する属性判定手段と、前記領域分離手段によって分離された領域に対して、前記属性判定手段によって判定された属性に応じた符号化を行う符号化手段と、前記符号化手段によって符号化された領域に係る画面データを前記クライアント端末に送信する送信手段とを有することを特徴とする。
【発明の効果】
【０００９】
本発明によれば、画面データそのものを詳細分析処理することなく領域分離を行い、クライアント端末に画面データを送信することができる。
【図面の簡単な説明】
【００１０】
【図１】第１の実施形態の画面共有システムの構成例を示すブロック図である。
【図２】画面共有システムにおける動作シーケンスを示す図である。
【図３】画面を転送する動作手順の一例を示すフローチャートである。
【図４】画面転送前処理の詳細な手順の一例を示すフローチャートである。
【図５】画面転送本処理の詳細な手順の一例を示すフローチャートである。
【図６】第２の実施形態の画面共有システムの構成例を示すブロック図である。
【図７】画面転送前処理の詳細な手順の一例を示すフローチャートである。
【図８】画面転送本処理の詳細な手順の一例を示すフローチャートである。
【図９】第３の実施形態の画面共有システムの構成例を示すブロック図である。
【発明を実施するための形態】
【００１１】
（第１の実施形態）
以下、本発明の第１の実施形態について図面を参照しながら説明する。
図１は、本実施形態における画面共有システムの構成例を示すブロック図である。
図１において、本実施形態に係る画面共有システムでは、画面共有サーバ装置１と、共有画面の受け側と操作の入力とを担当するシンクライアント端末２とがネットワーク３により接続されている。また、画面共有サーバ装置１には、画面表示を行うディスプレイ装置４が接続されている。
【００１２】
画面共有サーバ装置１は、以下の構成要素より構成されている。描画フレームワーク１１０は、各種の文字、静止画及び動画等の映像を描画コマンド等により描画し、フレームイメージデータとしてフレームバッファ１４０に格納するためのものである。ここで、描画コマンドとは、例えば、グラフィックオブジェクトや自然画の動画ストリームをフレームバッファ１４０にビットマップデータ（もしくは表示用ＲＡＷデータ）として格納する画像データを直接扱うグラフィックコマンドの表示下位層等を指す。なお、描画コマンドは、上述の例に限定されるものではない。描画コマンド記憶部１２０は、描画フレームワーク１１０により実行された描画コマンドを監視しながら一時的に保存するためのものである。そして、描画コマンド記憶部１２０は、描画コマンドにより描画された領域が同じコマンドの消去コマンドにより消去されるまで、描画コマンドを保存する。
【００１３】
キャプチャ制御部１３０は、フレームバッファ１４０に格納されたフレームイメージデータを所定のキャプチャレートにより複製して転送する設定を行うためのものである。また、キャプチャ制御部１３０は、描画コマンド記憶部１２０に保存されている描画コマンドを取得する等の制御も行う。フレームバッファ１４０は、描画コマンドにより描かれた画面データ（フレームイメージデータ）を格納するためのメモリであり、ディスプレイ装置４にて画面を表示する際には、フレームバッファ１４０からフレームイメージデータが読み出される。映像再生部１５０は、映像データ部１６０に蓄積された映像データを再生するためのものである。
【００１４】
転送用バッファ１７０は画面データ記憶手段として機能し、画面転送用として複製されたフレームイメージデータを格納するためのバッファである。リモート画面制御部１８０は、転送用バッファ１７０に格納されたフレームイメージデータを転送用として符号化するためのものである。また、リモート画面制御部１８０は、シンクライアント端末２から各種情報を受信し、画面共有処理の制御を司る。通信部１９０は、主に、外部機器（特に、シンクライアント端末２）とネットワーク３等を通じて通信を司るものである。
【００１５】
本実施形態における画面共有サーバ装置１のフレームバッファ１４０は、不図示のＲＡＭ等のメインメモリの一部を用い、固定領域でフレームバッファとして利用するものとする。
【００１６】
図２は、本実施形態の画面共有システムにおける動作シーケンスを示す図である。図３は、本実施形態における画面共有サーバ装置１により画面を転送する動作手順の一例を示すフローチャートである。以下、図２及び図３を参照しながら、本実施形態に係る画面共有システムの処理について詳細に説明する。
【００１７】
まず、シンクライアント端末２において、ユーザによってログイン操作が実行されると、リモート画面制御部１８０は、シンクライアント端末２から図２に示すログイン要求Ｍ００１を、通信部１９０を介して受信するまで待機する（ステップＳ３０１）。そして、ログイン要求Ｍ００１を受信すると、リモート画面制御部１８０は、シンクライアント端末２のログイン要求を受理するかどうかを判定する（ステップＳ３０２）。具体的には、ログイン要求Ｍ００１のパラメータとして受信したＩＤ及びパスワードを認証し、正当であるか否かを判定する。この判定の結果、ＩＤ及びパスワードが正当でなく、ログイン要求を受理しない場合は、処理を終了する。
【００１８】
一方、ステップＳ３０２の判定の結果、ログイン要求Ｍ００１のパラメータとして受信したＩＤ及びパスワードが正当であり、ログイン要求を受理する場合は、画面転送前処理を行う（ステップＳ３０３）。なお、この画面転送前処理については、図４の説明において後述する。次に、画面転送本処理を行う（ステップＳ３０４）。この画面転送本処理についても、図５の説明において後述する。この画面転送本処理により、シンクライアント端末２では、画面共有サーバ装置１から符号化された画面データを、ネットワーク３を介して受信し、受信した画面データを復号化してその画面を表示する。
【００１９】
シンクライアント端末２において、ユーザによりログアウト操作が実行されると、図２に示すリモートコントロールイベント（ログアウト）Ｍ００４がネットワーク３を介して画面共有サーバ装置１に送信される。そこで、リモート画面制御部１８０は、シンクライアント端末２からリモートコントロールイベント（ログアウト）Ｍ００４を、通信部１９０を経由して受信したか否かを判定する（ステップＳ３０５）。この判定の結果、リモートコントロールイベント（ログアウト）Ｍ００４を受信していない場合は、ステップＳ３０４に戻る。
【００２０】
一方、ステップＳ３０５の判定の結果、リモートコントロールイベント（ログアウト）Ｍ００４を受信した場合は、リモート画面制御部１８０は、画面転送処理の終了処理を行い（ステップＳ３０６）、処理を終了する。ステップＳ３０６では具体的に以下の処理を実行する。
【００２１】
まず、リモート画面制御部１８０は、キャプチャ制御部１３０に対してキャプチャの終了を通知する。そして、キャプチャ制御部１３０は、描画フレームワーク１１０に対してフレームバッファ１４０に格納されているフレームイメージデータの複製を終了するよう指示する。さらに、キャプチャ制御部１３０は、描画コマンド記憶部１２０に対し、保存していた描画コマンドを消去するとともに、描画コマンドの監視及び一時的な記憶を停止するよう指示する。
【００２２】
図４は、図３のステップＳ３０３における画面転送前処理の詳細な手順の一例を示すフローチャートである。
まず、図４において、リモート画面制御部１８０は、画面共有サーバ装置１における現在のリソース情報を取得する（ステップＳ４０１）。そして、ログイン要求Ｍ００１のパラメータとして受信したシンクライアント端末２の機器情報と、画面共有サーバ装置１の現在のリソース情報とを元に、画面転送用のパラメータを決定する。具体的には、シンクライアント端末２の仕様など画面共有システムに最適な画面共有用のイメージの画角、キャプチャレート等を割り出す（ステップＳ４０２）。
【００２３】
次に、リモート画面制御部１８０は、画面共有用のイメージの画角やキャプチャレート等のキャプチャ情報をキャプチャ制御部１３０に通知する。さらに、シンクライアント端末２に対して当該キャプチャ情報から画面転送パラメータ情報を生成し、図２に示すログイン確認Ｍ００２とともに通信部１９０を介して送信する（ステップＳ４０３）。このとき、シンクライアント端末２では、画面共有サーバ装置１からログイン確認Ｍ００２と画面転送パラメータ情報とを、ネットワーク３を経由して受信する。そして、当該画面転送パラメータ情報を元に各種設定を行い、転送されてくる画面を待ち受けることになる。
【００２４】
次に、キャプチャ制御部１３０は、描画フレームワーク１１０に対して、ステップＳ４０２で割り出したキャプチャレートでフレームバッファ１４０に格納されたフレームイメージデータの複製を開始するように指示する（ステップＳ４０４）。以上の処理により画面転送前処理を終了する。
【００２５】
図５は、図３のステップＳ３０４における画面転送本処理の詳細な手順の一例を示すフローチャートである。
まず、キャプチャ制御部１３０は、描画コマンド記憶部１２０に対し、描画フレームワーク１１０において実行される描画コマンドを監視しながら一時的に記憶するよう指示する（ステップＳ５０１）。描画コマンド記憶部１２０から描画コマンドが削除されるタイミングは、監視した描画コマンドの中で、終了コマンドが実行された場合、または、描画コマンドを発行したアプリケーションが終了した場合等を想定する。
【００２６】
シンクライアント端末２でログイン確認Ｍ００２を受信すると、シンクライアント端末２からリモートコントロールイベントＭ００３が送信される。このリモートコントロールイベントＭ００３により、画面共有サーバ装置１ではリモート画面制御部１８０の制御により、アプリケーションソフトウェアが動作し、画面共有サーバ装置１の映像データ部１６０に蓄積されている映像データの再生が指示される。この場合、映像再生部１５０により、映像データ部１６０から指定の映像データを読み出し、映像再生に関する描画コマンドを描画フレームワーク１１０により実行する。
【００２７】
これにより、キャプチャ制御部１３０は、アプリケーションの動作を検知し、映像再生に関する描画コマンド等の領域分離に関係するコマンドが描画コマンド記憶部１２０に記憶されたかどうかを判断する（ステップＳ５０２）。
【００２８】
この判断の結果、描画コマンド記憶部１２０に映像再生に関する描画コマンド等の領域分離に関係するコマンドが記憶されていない場合は、通常転送処理を実施する。通常転送処理では、転送用バッファ１７０に複製されたフレームイメージデータに対して、リモート画面制御部１８０により単一の符号化処理を行う（ステップＳ５０３）。そして、通信部１９０及びネットワーク３を経由してシンクライアント端末２に送信する（ステップＳ５０６）。
【００２９】
一方、ステップＳ５０２の判断の結果、描画コマンド記憶部１２０に映像再生に関する描画コマンド等の領域分離に関係するコマンドが記憶された場合は、以下の処理を実行する。まず、転送用バッファ１７０にフレームイメージデータが複製される際に、リモート画面制御部１８０は、複製されたフレームイメージに対して、ステップＳ４０２で割り出した転送用の画角等に合わせるため、スケーラ等を用いてリサイズ等の画像処理を行う。また、描画コマンド記憶部１２０に一時記憶された映像再生に関する描画コマンド等の領域分離に関係するコマンドを詳細に解析する。そして、解析結果により転送用バッファ１７０に記憶されたフレームイメージデータに対して、文字属性部分、自然画属性部分等の領域の分離処理及び属性判定を行う（ステップＳ５０４）。次に、各領域の属性に適切な符号化方式を当てはめて、各領域の符号化をリモート画面制御部１８０のエンコーダにより実行する（ステップＳ５０５）。そして、その対象となる領域のイメージデータを通信部１９０及びネットワーク３を経由してシンクライアント端末２に送信する（ステップＳ５０６）。
【００３０】
ここで、前述した領域の分離処理としては、描画コマンド同士の領域の重なり及び重なる順番も領域を分離するためのパラメータとして考慮する。このように、描画コマンドを発行する時に描かれる対象のみをキャプチャする方法とは異なり、フレームバッファに一旦記憶することによって各領域間の位置・重複関係やフレームの同期を取りやすくし、シンクライアント端末２での同期処理を簡略化している。
【００３１】
自然画属性部分の領域は、自然画が綺麗に表示されるようなフレーム内圧縮方法により符号化する。例えば、ＤＣＴ（離散コサイン変換）符号化や、ハフマン符号化（算術圧縮符号化）、これら２つを組み合わせたＪＰＥＧ圧縮、ウェーブレット変換符号化、自然画に最適なＪＰＥＧ圧縮のパラメータを用いることにより、より綺麗に自然画を表示することができる。これに対して文字属性部分の領域は、文字が綺麗に表示されるような圧縮方法により符号化する。例えば、ＬＺ、ＬＺＷ等の辞書圧縮やランレングス圧縮等の可逆圧縮方法を用いることにより、より綺麗に文字領域を表示することができる。
【００３２】
本実施形態では、文字属性部分、自然画属性部分等の領域は、矩形領域で分離処理を行っている。一方、描画コマンドにより描かれる領域が矩形以外の場合には、例えば、当該描かれた矩形でない描画領域の外形を囲む矩形領域で近似して領域分離を実施する。
【００３３】
以上のように本実施形態によれば、描画フレームワーク１１０からキャプチャする際に、描画コマンドを用いて複製するようにした。これにより、フレームバッファに格納されたイメージデータをそのまま複製するよりは、複製する時間分フレームバッファの上書きをロックする時間を取らなくて済む。このため、処理遅延を少なくすることができる。
【００３４】
（第２の実施形態）
以下、本発明における第２の実施形態について、図面を参照しながら詳細に説明する。
図６は、本実施形態における画面共有サーバ装置６の構成例を示すブロック図である。本実施形態の画面共有サーバ装置１は、サーバラック等に入るブレードサーバ形式であることを想定している。第１の実施形態に係る画面共有サーバ装置１と異なる点は、ディスプレイ装置４と接続するインタフェースと、映像データ部１６０とを設けていない。また、図１の転送用バッファ１７０の代わりに、グラフィック及び映像デコード処理をネットワーク向けに行うネットワークビデオ処理部１７５を設けている。ネットワークビデオ処理部１７５はグラフィックＲＡＭを装備しており、実装形態は、専用PCI-Expressカード、グラフィックプロセッサチップ、メインの汎用ＭＰＵとマルチコア実装されたグラフィックコア等がある。さらに、図１のリモート画面制御部１８０の代わりに、リモート操作側でシンクライアント端末２のデバイスを含めた各種管理を行うリモート端末制御部１８５を設けている。これ以外の構成については、図１の画面共有サーバ装置１と同様であるため、詳細説明を省略する。
【００３５】
また、本実施形態に係る画面共有サーバ装置６の動作シーケンスについては、図２と同様であるため説明は省略する。さらに、本実施形態に係る画面共有サーバ装置６によるログインからログアウトまでの処理手順についても図３と同様であるため、説明は省略する。なお、図３の処理において、リモート画面制御部１８０が行う処理は、本実施形態ではリモート端末制御部１８５が行う。
【００３６】
図７は、本実施形態において、図３のステップＳ３０３における画面転送前処理の詳細な手順の一例を示すフローチャートである。なお、ステップＳ７０１〜Ｓ７０３については、図４のステップＳ４０１〜Ｓ４０３と同様の処理をリモート端末制御部１８５が行うものであるため、説明は省略する。
【００３７】
そして、キャプチャ制御部１３０は、描画フレームワーク１１０に対して、ステップＳ７０２で割り出したキャプチャレート及び画角でフレームイメージデータをネットワークビデオ処理部１７５へ書き込みを開始するように指示する（ステップＳ７０４）。以上の処理により画面転送前処理を終了する。
【００３８】
図８は、本実施形態において、図３のステップＳ３０４における画面転送本処理の詳細な手順の一例を示すフローチャートである。
まず、キャプチャ制御部１３０は、描画コマンド記憶部１２０に対し、描画フレームワーク１１０においてネットワークビデオ処理部１７５に対して実行される描画コマンドを一時的に記憶するように指示する（ステップＳ８０１）。なお、描画コマンドについては、第１の実施形態と同様であり、描画コマンド記憶部１２０から描画コマンドが削除されるタイミングも、同様である。
【００３９】
シンクライアント端末２でログイン確認Ｍ００２を受信すると、シンクライアント端末２からリモートコントロールイベントＭ００３が送信される。このリモートコントロールイベントＭ００３により、画面共有サーバ装置１ではアプリケーションソフトウェアが動作する。そして、リモート端末制御部１８５は、映像再生部１５０に対し、例えばネットワーク等を介して外部から映像データを取得して再生するよう指示する。この場合、映像再生部１５０により、ネットワーク等を介して外部から指定の映像データを取得し、映像再生に関する描画コマンドを描画フレームワーク１１０により実行する。
【００４０】
これにより、キャプチャ制御部１３０は、アプリケーションの動作を検知し、映像再生に関する描画コマンド等の領域分離に関係するコマンドが描画コマンド記憶部１２０に記憶されたかどうかを判断する（ステップＳ８０２）。
【００４１】
この判断の結果、描画コマンド記憶部１２０に映像再生に関する描画コマンド等の領域分離に関係するコマンドが記憶されていない場合は、通常転送処理を実施する。通常転送処理では、ネットワークビデオ処理部１７５に描画されたフレームイメージデータを、リモート端末制御部１８５によりネットワーク３の帯域等の状況に合わせて符号化パラメータの調整等の画像符号化前処理を行う（ステップＳ８０３）。そして、ネットワークビデオ処理部１７５に描画されたフレームイメージデータに対して、前記調整した符号化パラメータを用いて単一の符号化処理を行い、通信部１９０及びネットワーク３を経由してシンクライアント端末２に送信する（ステップＳ８０４）。
【００４２】
一方、ステップＳ８０２の判断の結果、描画コマンド記憶部１２０に映像再生に関する描画コマンド等の領域分離に関係するコマンドが記憶された場合は、以下の処理を実行する。まず、ネットワークビデオ処理部１７５にフレームイメージデータが描画される際に、リモート端末制御部１８５は、フレームイメージデータをネットワーク３の帯域等の状況に合わせて符号化パラメータの調整等の画像符号化前処理を行う（ステップＳ８０５）。
【００４３】
また、描画コマンド記憶部１２０に一時記憶された映像再生に関する描画コマンド等の領域分離に関係するコマンドを詳細に解析する。そして、解析結果によりネットワークビデオ処理部１７５に描画されたフレームイメージデータに対して、文字属性部分、自然画属性部分等の複数の領域における分離処理及び属性判定を行う（ステップＳ８０６）。次に、各領域の属性に適切な符号化方式を当てはめて、ステップＳ８０５で調整した符号化パラメータを用いて、各領域の符号化処理を行う（ステップＳ８０７）。そして、リモート端末制御部１８５により、その対象となる領域のイメージデータを通信部１９０及びネットワーク３を経由してシンクライアント端末２に送信する（ステップＳ８０８）。なお、領域の分離処理及び符号化処理については、第１の実施形態と同様である。
【００４４】
以上のように本実施形態によれば、画面共有サーバ装置側でディスプレイを接続することなくシンクライアント端末向けだけにイメージデータを描画ことができる。これにより、より簡単で高速になり、ネットワークに特化した各種処理を行うための時間を設けることができる。
【００４５】
（第３の実施形態）
図９は、本実施形態における画面共有システムの構成例を示すブロック図である。
第１の実施形態と異なる点は、本実施形態の画面共有サーバ装置９は、描画フレームワーク１１０にフレームイメージを複製する機能が搭載されていないが、代わりにキャプチャ部２００を設けている。このように、描画フレームワーク１１０にフレームイメージデータを複製する機能がないため、ビデオ処理部２１０がフレームバッファ１４０からフレームイメージを読み出す。そして、このタイミングで、キャプチャ部２００がフレームイメージデータを転送用バッファ１７０に複製するようにしている。これにより、第１の実施形態と同様の処理を行うことができる。
【００４６】
また、図９に示すように、第１の実施形態における転送用バッファ１７０、リモート画面制御部１８０及び通信部１９０が、画面共有サーバ装置９の外部のモジュール（ハードウェアモジュールもしくはカード）として実装されている。このような場合においても、第１の実施形態と同様の処理を行うことができる。また、第２の実施形態の構成においても同様である。
【００４７】
（その他の実施形態）
前述した実施形態において、領域分割した各領域に適切な符号化方式としては、ＪＰＥＧのパラメータを変更しただけのものから、符号化方法そのものを各領域の属性に特化した方式を用いるようにしてもよい。符号化方法そのものとしては、ＪＰＥＧ、ＬＺＨ、ＺＬＩＢ、ＪＰＥＧ２０００、ＰＮＧ、ＧＩＦ、ＷＭＦ、ＡＶＣイントラ（H.264/AVC Intra）等があげられる。
【００４８】
また、前述の実施形態において、描画コマンドは、GDIコマンドや、Microsoft Windows（登録商標）でのDirectXもしくはDirectShowレベルのコマンドであってもよい。また、Khronos Group策定のOpenMAX-il等やOpenGLのコマンドであってもよい。
【００４９】
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【符号の説明】
【００５０】
１１０  描画フレームワーク、１２０  描画コマンド記憶部、１４０  フレームバッファ、１８０  リモート画面制御部
【図１】
0005455619.tif 000002
【図２】
0005455619.tif 000003
【図３】
0005455619.tif 000004
【図４】
0005455619.tif 000005
【図５】
0005455619.tif 000006
【図６】
0005455619.tif 000007
【図７】
0005455619.tif 000008
【図８】
0005455619.tif 000009
【図９】
0005455619.tif 000010