以下、本発明の実施形態を、図面を参照しながら説明する。本発明では2次元平面上の直交座標系からなる仮想的な座標系VC(以下、仮想座標系VCと呼ぶ)を定義する。そして、この仮想座標系VC上でタイル分割のためのタイル分割座標を設定すると共に、表示領域および表示画像の座標管理を行う。表示画像は、タイル分割座標に従いタイルに分割される。表示画像の同一座標平面上での移動などに伴う表示画像データの転送は、このタイル単位で行う。また、タイル分割座標が表示領域の座標を含むタイル画像データが、表示領域が対応する表示デバイスに対して出力される。このように仮想座標系VCを用いて座標管理を行うことで、表示領域および表示画像それぞれを互いの位置関係に依存することなく自由に移動させることができると共に、移動に伴うタイルの再分割を行う必要が無い。
なお、仮想座標系VCは、垂直および水平のそれぞれについて、正負の座標を定義することが考えられる。このように仮想座標系VCを定義することで、仮想座標系VCによる座標平面上に対する表示領域および表示画像の配置位置に制限が無くなる。
図1および図2を用いて、本発明による表示制御について、より具体的に説明する。図1は、コンテンツとしての画像データを移動させる場合の例を示す。仮想座標系VCにおいてm画素×n画素のタイル分割がなされ、このタイル単位で画素データの転送処理が行われる。
図1(a)は、仮想座標系VCによる座標平面に対して、コンテンツとしての画像データ10、11、12および13が配置された様子を示す。画像データ10、11、12および13は、矩形領域からなり、座標(描画座標と呼ぶ)は、一般的には、左上隅を原点として表示の右および下方向にそれぞれ値が増加するように定義される。各画像データ10、11、12および13が仮想座標系VCによる座標平面に配置される際には、各画像データ10、11、12および13の描画座標が仮想座標系VCによる座標に変換される。以下、仮想座標系VCの座標に変換された描画座標および描画範囲を、それぞれ仮想描画座標および仮想描画範囲と呼ぶ。
なお、以下では、煩雑さを避けるため、「仮想座標系VCによる座標平面」を「仮想座標系VC」として説明する。
図1(b)は、仮想座標系VCに対して画面すなわち表示領域20が配置された様子を示す。実際の表示デバイスの論理座標(以下、表示座標と呼ぶ)は、画面(表示領域)の左上隅を原点として、画面の右方向および下方向に、それぞれ値が増加するように定義されるのが一般的である。表示領域20が仮想座標系VCに定義される際には、表示座標が仮想座標系VCの座標に変換される。以下、仮想座標系VCに変換された表示座標および表示領域を、それぞれ仮想表示座標および仮想表示領域と呼ぶ。
各画像データ10、11、12および13の仮想描画領域が仮想表示領域に重なる部分が、実際の表示領域20に表示されることになる。図1(b)の例では、画像データ10および11の全体と、画像データ12および13の一部(上側部分)とが表示領域20に表示される。実際の表示デバイスに対して画像データ10、11、12および13の表示を行う際には、表示領域20内の仮想表示座標を、表示領域20の表示座標に変換する。
図1(c)は、画像データ10を移動させる様子を示す。画像データ10の移動は、画像データ10を、仮想座標系VC上で分割されたタイル単位で転送することで行われる。本発明では、画像データ10、11、12および13、ならびに、表示領域20の座標が仮想座標系VCにより一元的に管理されると共に、タイル分割が仮想座標系VCにおいてなされる。そのため、一部の画像データ10の移動を行っても、表示領域20や、移動を行わない他の画像データ11、12および13には影響が出ない。
図2は、表示領域を移動させる場合の例を示す。図2(a)に例示されるように、仮想座標系VCに対して、描画座標が仮想描画座標に変換されて画像データ30が配置される。図2(b)は、画像データ30が配置された仮想座標系VCに対して表示領域40が配置された例を示す。この例は、表示領域40のサイズより画像データ30のサイズの方が大きい例である。表示領域40の表示座標は、上述と同様に、仮想表示座標に変換される。表示デバイスに画像データ30を表示させる際には、仮想座標系VCにおける表示領域40内の仮想表示座標を、実際の表示デバイスにおける表示領域40の表示座標に変換する。
図2(c)は、仮想座標系VC上で表示領域40を移動させた場合の例を示す。この場合、仮想座標系VC上での画像データの移動は行われず、表示領域20の仮想表示座標が仮想座標系VCにおける移動先の座標に変換される。タイルの再分割は、行われない。
このように、本発明によれば、コンテンツとしての画像データと、表示デバイスの論理的な表示領域とを、仮想的な座標系上にマッピングし、この仮想的な座標系においてタイル分割を行う。これにより、所定サイズのタイル単位で画像データの転送を行う場合に、表示領域と画像データとの関係の変更に柔軟に対応可能となると共に、画像データサイズに依らない処理が可能となる。
<実施形態のより詳細な説明>
次に、本発明の実施形態について、より詳細に説明する。図3は、本発明の実施形態を適用できる画像処理装置100の一例の構成を示す。図3から分かるように、画像処理装置100は、一般的なコンピュータと略同様の構成により実現可能である。バス110に対して、CPU111、RAM112が接続される。CPU111は、ROM113に予め記憶されたプログラムや、後述するハードディスク118に格納されるプログラムに従い、RAM112をワークメモリとして用いてこの画像処理装置100の全体を制御する。
バス110に対して、グラフィック部119がさらに接続される。グラフィック部119は、例えば、バス110を介してCPU111から供給された画像データをVRAM120に書き込む。そして、VRAM120から、垂直同期信号に従い1画面分の画像データを読み出して、表示デバイス130が対応可能な映像信号に変換して出力する。
なお、CPU111は、グラフィック部119とバス110を介して通信を行い、グラフィック部119に接続される表示デバイス130の情報を取得すると共に、グラフィック部119における表示制御情報を取得する。例えば、CPU111は、表示デバイス130およびグラフィック部119に関して、識別情報、解像度や表示可能色数情報、色空間情報、動画表示能力などを取得できる。
なお、図3に例示されるように、この画像処理装置100は、グラフィック部119を複数、備えることができる。例えば、CPU111は、複数のグラフィック部119のそれぞれを、物理的な接続位置を示す情報に基づき識別し、識別情報に基づきグラフィック部119のそれぞれに対して画像データを、振り分けて供給することができる。
バス110に対して、さらに、ドライブ装置114、外部インターフェイス(I/F)116、通信インターフェイス117およびハードディスク118が接続される。ドライブ装置114は、CD−ROMやDVD−ROMといった記録媒体115が装填可能とされ、CPU111の命令に従い、装填された記録媒体115からデータを読み出す。勿論、ドライブ装置114は、ディスク状記録媒体に対応するのに限らず、例えばフラッシュメモリといった不揮発性メモリのインターフェイスであってもよい。
外部インターフェイス116は、所定のプロトコルを用いて外部機器との間のデータ通信を制御する。外部インターフェイス116に適用される通信プロトコルとしては、USBやIEEE1394などが考えられる。通信インターフェイス117は、所定のプロトコルを用いて外部のネットワークに接続するためのものである。例えば通信インターフェイス117は、TCP/IPに対応し、インターネットとの接続を制御する。
ハードディスク118は、CPU111が動作するためのプログラムが格納されると共に、画像データや映像データなど様々なデータを格納することができる。ハードディスク118に格納するデータやプログラムは、CD−ROMやDVDといった記録媒体115からドライブ装置114を介して取得してもよいし、通信インターフェイス117によりインターネットと通信を行い、外部のサーバ装置から取得してもよい。また、外部インターフェイス116に接続された、デジタルスチルカメラやデジタルビデオカメラから取得してもよい。CPU111がプログラムに従い生成した画像データや映像データをハードディスク118に格納することもできる。
入力インターフェイス131は、キーボード132やマウスなどのポインティングデバイス133といった入力デバイスが接続され、入力デバイスに対するユーザ操作に応じた制御信号を出力する。入力インターフェイス131から出力されたこの制御信号は、バス110を介してCPU111に供給される。CPU111は、供給されたこの制御信号をプログラムに従い解釈し、この画像処理装置100の制御を行う。
さらにまた、バス110に対して画像制御部140が接続される。画像制御部140は、図1および図2を用いて説明したような、本発明の実施形態による処理を行う。例えば、画像制御部140は、仮想座標系VCにおける所定サイズのタイル分割を行う。それと共に、CPU111からバス110を介して供給された画像または映像データの仮想座標系VCに対するマッピングや、表示デバイス130の表示領域の仮想座標系VCに対するマッピングを行う。また、画像制御部140は、入力インターフェイス131に接続される入力デバイスに対するユーザ操作に応じたCPU111からの命令に従い、画像または映像データや表示領域の移動を行う。
なお、画像制御部140は、この画像処理装置100に内蔵されるのに限らず、例えば画像処理装置100の拡張機能として追加されるようなものでもよい。
なお、映像データすなわち動画像データは、静止画像データを所定時間間隔で更新してなるものと考えることができる。そのため、以下では、特に記載のない限り、画像または映像データを、画像データで代表させて説明を行う。すなわち、本発明は、静止画像データおよび動画像データの両方に対して適用可能である。
図4は、画像制御部140の一例の構成を示す。画像制御部140は、画像データを入力するチャンネルを複数有し、複数のチャンネルにそれぞれが分割部201、画像処理部202および選択部203を備える。図4の例では、画像制御部140は、nチャンネルの入力に対応している。そして、nチャンネルのそれぞれに対応して、分割部201−1、201−2、…、201−n、画像処理部202−1、202−2、…、202−n、ならびに、選択部203−1、203−2、…、203−nを備える。
座標管理手段としての座標管理部200は、画像データの座標および表示領域の座標を管理する。このとき、座標管理部200は、上述した仮想座標系VCを定義し、この仮想座標系VCで画像データおよび表示領域の座標の管理を行う。それと共に、座標管理部200は、仮想座標系VCに対してm画素×n画素からなるタイル分割を定義する。また、座標管理部200は、例えばユーザの入力デバイスの操作に応じてCPU111から供給される命令に基づき、画像データと表示領域とを、仮想座標系VCにマッピングする。
なお、タイル分割の定義は、例えば次のように行うことが考えられる。座標管理部200は、仮想座標系VCをm画素×n画素のタイルに分割し、タイルのそれぞれに、所定の規則でユニークな識別子を割り当てる。識別子は、例えば仮想座標系VCの各象限の原点を開始点とすると共に各象限を識別可能に構成された、各象限毎の通し番号を用いることができる。
図5は、座標管理部200の一例の構成を示す。座標管理部200は、座標系の制御を行うと共に、座標系に対する画像データ、ならびに、表示領域の配置を制御する座標制御部210を備える。上述した仮想座標系VCおよび仮想座標系VCに対するタイル分割の定義は、例えばこの座標制御部210において行われる。また、座標管理部200は、画像データ配置テーブル211および表示領域配置テーブル212を備える。さらに、座標管理部200は、画像制御部140が有するチャンネルのそれぞれに対応して、画像座標送出部213−1、213−2、…、213−nと、表示領域座標送出部214−1、214−2、…、214−nとを備える。
ここで、ユーザは、入力デバイスに対する操作により、画像制御部140の各チャンネルに入力される画像データを仮想座標系VCに対して任意に配置することができる。同様に、ユーザは、入力デバイスに対する操作により、画像処理装置100に接続される1または複数の表示デバイスそれぞれの表示領域を、仮想座標系VCに対して任意に設定することができる。
位置設定手段としての座標制御部210に対して、ユーザの入力デバイスに対する操作に応じた画像データの配置座標が、各チャンネル毎に生成される。同様に、座標制御部210に対して、ユーザに入力デバイスに対する操作に応じた表示領域の配置座標が、表示デバイス130、130、…毎に生成される。
ここで、画像データおよび表示領域の配置座標を設定するための一例のユーザインターフェイスについて、概略的に説明する。一例として、図6に示されるように、仮想座標系VCに対して所定に配置された画像データ301−1、301−2、…、301−rや表示領域302−1、302−2、…、302−sを含む領域300を設定する。そして、この領域300を縮小して表示デバイス130、130、…の何れかに表示させる。ユーザは、この表示を見ながら入力デバイスを操作する。入力デバイスの操作に応じて、画像データ301−1、301−2、…、301−rや表示領域302−1、302−2、…、302−sが移動される。
なお、領域300を移動させることも可能である。このとき、画像データ301−1、301−2、…、301−rや表示領域302−1、302−2、…、302−sの仮想座標系VCに対する位置は、移動させない。
このようなユーザインターフェイス制御は、例えばCPU111により、入力された画像データや表示デバイス130の表示領域の情報に基づき行われる。一例として、CPU111は、ハードディスク118、記録媒体115、通信インターフェイス117を介して通信される外部ネットワーク、外部インターフェイス116に接続される外部機器などを入力ソースとして画像データを入力する。そして、CPU111は、入力された画像データや、グラフィック部119、119、…から取得される表示デバイス130、130、…の情報に基づき、ユーザインターフェイスを構成する。
画像データ301−1、301−2、…、301−rの仮想座標系VC上の座標が座標制御部210に要求される。座標制御部210は、この要求に基づき画像データ301−1、301−2、…、301−rの仮想座標系VC上の配置座標を生成する。座標制御部210は、この生成された画像データの配置座標により、画像データ配置テーブル211を更新する。
図7は、画像データ配置テーブル211の一例の構成を示す。1つの画像データに対して、データID、表示サイズ、配置座標およびデータ形式が関連付けられて、画像配置座標情報が形成される。データIDは、画像データ301−1、301−2、…、301−rのそれぞれを識別するIDである。表示サイズおよび配置座標は、画像データの仮想座標系VCにおけるサイズ情報および座標情報をそれぞれ示す。データ形式は、例えば画像データが静止画像か動画像かを示す。データID、表示サイズおよびデータ形式は、例えばCPU111から取得することができる。
また、表示領域302−1、302−2、…、302−sの仮想座標系VC上の座標が座標制御部210に要求される。座標制御部210は、この要求に基づき表示領域302−1、302−2、…、302−sの仮想座標系VC上の配置座標を生成する。座標制御部210は、この生成された表示領域配置座標により、表示領域配置テーブル212を更新する。
図8は、表示領域配置テーブル212の一例の構成を示す。1つの表示領域に対して、表示領域ID、表示領域配置座標、解像度および表示領域情報が関連付けられて、表示領域配置座標情報が形成される。表示領域IDは、表示領域302−1、302−2、…、302−sそれぞれを識別するIDである。例えば、表示デバイス130を識別するための識別情報を、表示領域IDとして用いることができる。表示領域配置座標は、表示領域の仮想座標系VCにおける座標情報を示す。解像度は、表示領域の解像度を示し、例えばグラフィック部119において設定された表示デバイス130の表示解像度が用いられる。表示領域情報は、表示領域に関する付加的な情報であって、例えばグラフィック部119において設定された表示デバイス130の色空間情報などが用いられる。
座標制御部210は、各画像データ301−1、301−2、…、301−rそれぞれの画像配置座標情報を画像データ配置テーブル211から読み出す。読み出された各画像配置座標情報は、それぞれ画像座標送出部213−1、213−2、…、213−nを介して、画像入力チャンネルが対応する分割部201−1、201−2、…、201−nに供給される(図4参照)。
同様に、座標制御部210は、各表示領域302−1、302−2、…、302−sそれぞれの表示領域座標情報を表示領域配置テーブル212から読み出す。読み出された各表示領域座標情報は、それぞれ表示領域座標送出部214−1、214−2、…、214−nを介して選択部203−1、203−2、…、203−nに供給される(図4参照)。
以下では、煩雑さを避けるため、特に記載のない限り、nチャンネル分の構成を、画像制御部140においては分割部201および画像処理部202、座標管理部200においては画像座標送出部213、表示領域座標送出部214でそれぞれ代表させて説明する。
図4の説明に戻り、表示コンテンツとしての画像データが分割部201に入力される。分割手段としての分割部201は、入力された画像データを、座標管理部200から供給される画像配置座標情報に基づき仮想座標系VC上のタイルに分割して出力する。
図9を用いて、分割部201における処理について概略的に説明する。図9(a)に例示される画像データ400が仮想座標系VCに対して配置されているものとする。分割部201は、この画像データ400に対して、図9(b)に例示されるように、画像配置座標情報に示される画像データ400の配置座標に基づき、仮想座標系VCに対して定義されたタイル401、401、…に従いタイル分割を行う。
そして、分割部201は、図9(c)に例示されるように、画像データ400を分割したタイルのそれぞれに対して、仮想座標系VC上で定義された番号を割り当てる。図9(c)は、画像データ400が、番号「00」〜「06」、番号「10」〜「16」、番号「20」〜「26」、番号「30」〜「36」、番号「40」〜番号「46」および番号「50」〜「56」の30タイルに分割された例を示す。以下では、タイル分割された画像データのそれぞれを、タイル画像データと呼ぶ。
図10は、分割部201から出力されるタイル画像データの一例の構成を示す。タイル画像データのそれぞれについて、座標情報、データIDおよびピクセル情報が格納される。座標情報は、上述した、タイルの仮想座標系VC上の座標情報であって、例えば、上述したタイル毎に割り当てられた番号である。データIDは、画像データ400を識別するためのIDであって、図7を用いて説明した画像データ配置テーブル211におけるデータIDと対応する。ピクセル情報は、タイル画像データを構成する画素データそのものである。
分割部201から出力されたタイル画像データは、画像処理部202に供給される。画像処理部202は、供給された画像データに対してフィルタ処理や色処理など所定の画像処理をタイル毎に施され、出力される。画像処理部202から出力されたタイル画像データは、選択部203に供給される。
出力手段としての選択部203は、画像処理部202から供給されたタイル画像データの、各表示領域302−1、302−2、…、302−sに対する振り分けを行う。すなわち、選択部203は、座標管理部200から供給された表示座標配置情報と、タイル画像データに付加される座標情報とに基づき、表示領域302−1、302−2、…、302−sに表示するタイル画像データをそれぞれ選択する。例えば、選択部203は、ある表示領域に一部または全部が含まれるタイル画像データに対して、当該表示領域が対応する表示デバイス130またはグラフィック部119を識別する識別情報を付加して出力する。
選択部203−1、203−2、…、203−nから当該識別情報が付加されて出力されたタイル画像データは、例えばCPU111の制御により、当該識別情報に対応するグラフィック部119に供給される。
一例として、図11に例示されるように、表示デバイスAおよび表示デバイスBにそれぞれ対応した2つの表示領域410および411が設定されているものとする。この場合、表示領域410には、番号「10」〜「15」、番号「21」〜「25」および番号「31」〜「35」のタイル画像データが含まれる。選択部203は、これら番号「10」〜「15」、番号「21」〜「25」および番号「31」〜「35」のタイル画像データに、例えば表示デバイスAを識別する識別情報を付加して出力する。同様に、表示領域411には、番号「32」〜「36」、番号「42」〜「46」および番号「52」〜「56」のタイル画像データが含まれる。選択部203は、これら番号「32」〜「36」、番号「42」〜「46」および番号「52」〜「56」のタイル画像データに、表示デバイスBを識別する識別情報を付加して出力する。
なお、タイルの分割サイズは、ハードウェア構成により規定される。図12は、分割部201、画像処理部202および選択部203の構成をより具体的に示す。複数チャンネル分の分割部201、画像処理部202および選択部203は、例えば1個の集積回路内に構成される。
DMAC(Direct Memory Access Controller)210は、分割部201に対応し、画像データのタイル分割を行う。例えば、ハードディスク118や記録媒体115から読み出されたり、外部機器あるいはネットワークから供給された画像データが第1の記憶手段としてのRAM112に一時的に格納される。DMAC220は、座標管理部200から供給された画像配置座標と、座標管理部200において定義されたブロック分割とに基づき、1タイル分の画像データをRAM112から読み出す。読み出されたタイル画像データは、第2の記憶手段としてのSRAM(Static RAM)221に一時的に格納される。SRAM221に1タイル分の画像データが格納されると、このタイル画像データがSRAM221から読み出される。SRAM221から読み出されたタイル画像データは、画像処理部202に供給され、SRAM222に格納される。画像処理部202は、SRAM222格納されたタイル画像データに対して画像処理を施す。画像処理を施されたタイル画像データは、選択部203に供給され、SRAM223に格納される。
選択部203は、SRAM223に格納されたタイル画像データから座標情報を取り出す。そして、この座標情報と、座標管理部200から供給された表示座標配置情報とに基づき、当該表示座標は位置情報が示す表示領域に対応するタイル画像データを選択する。そして、選択したタイル画像データに対して、表示デバイス130またはグラフィック部119を識別する識別情報を付加して出力する。
このように、分割部201、画像処理部202および選択部203は、タイル画像データを一時的に格納するために、SRAMを用いている。SRAMは、周知の通り、RAM112として一般的に用いられるDRAM(Dynamic RAM)などに比べ、コストに対する記憶容量が小さい反面、高速なアクセスが可能である。タイルの分割サイズは、このSRAMの記憶容量に基づき設定する。例えば、付加情報も含めた場合の、SRAM221、222および223に記憶可能な最大サイズを、タイルの分割サイズとすることが考えられる。
本発明の実施形態では、以上のように制御を行うため、例えば画像データを移動させた場合には、移動先において、仮想座標系VCに対して定義されたタイルに従い、画像データのタイル分割および座標情報としての番号の付与が行われる。そのため、1つの画像データの移動を行った際に、表示領域や、移動を行わない他の画像データには影響が出ない。
また、例えば表示領域の移動は、表示領域と各タイル画像データとの対応関係を変更するだけで行うことができ、画像データへの影響が出ないと共に、タイルの再分割を行う必要もない。
次に、図13〜図16のフローチャートを用いて、本発明の実施形態における処理について説明する。なお、以下では、画像データが動画像データであるものとして説明する。画像データが静止画像データである場合も、基本的には同一の処理とされる。
図13は、本実施形態による画像データの表示制御を示す一例のフローチャートである。例えば入力デバイスに対するユーザ操作により画像データの位置変更が指示されると、ステップS100で、当該画像データの表示サイズと画像配置座標要求とが、CPU111から座標制御部210に対して送信される。次のステップS101で、座標制御部210は、画像データ配置テーブル211を参照し、当該画像データを要求された座標に配置可能か否かを判断する。もし、配置が可能ではないと判断されれば、処理はステップS105に移行され、エラー通知などがなされ、一連の処理が終了される。
一方、ステップS101で、配置が可能であると判断されれば、処理はステップS102に移行される。ステップS102ではフレーム単位での処理が行われる。そして、次のステップS103で、例えば1フレームタイミングの間に、入力デバイスに対するユーザ操作などにより画像データの移動要求があるか否かが判断される。もし、移動要求があると判断されれば、処理はステップS100に戻され、移動要求に応じてステップS100、ステップS101およびステップS102の処理が行われる。
一方、ステップS103で、画像データの移動要求がないと判断されれば、処理はステップS104に移行される。ステップS104では、処理が最終フレームまで行われたか否かが判断される。なお、ここでは、最終フレームまで処理が行われたとする判断を、意図的に画像データの表示を終了させた場合も含むものとする。もし、最終フレームまで処理が終了していないと判断されれば、処理はステップS102に戻され、次のフレームに対する処理がなされる。一方、最終フレームまでの処理が終了していると判断されたら、一連の処理が終了される。
図14は、本実施形態による、画像データをタイル分割する処理を示す一例のフローチャートである。先ず、ステップS110で、分割部201は、座標管理部200から供給される画像配置座標情報を取得する。そして、次のステップS111で、取得された画像配置座標情報に応じて、画像データの仮想座標系VC上でのタイル分割を実行する。そして、ステップS112で、画像データがタイル分割されたタイル画像データに対して、座標情報やデータIDといった属性情報を付加する。属性情報が付加されたタイル画像データは、次のステップS113で分割部から出力され、画像処理部202に供給される。そして、ステップS114で、最終フレームの処理が終了したか否かが判断される。なお、ここでは、最終フレームまで処理が行われたとする判断を、意図的に画像データの表示を終了させた場合も含むものとする。若し、終了していないと判断されれば、処理はステップS110に戻される。一方、終了したと判断されたら、一連の処理が終了される。
図15は、本実施形態による、表示領域の制御を示す一例のフローチャートである。表示領域を仮想座標系VCに配置する必要が生じた場合、ステップS120で、当該表示領域の解像度を示す情報と、表示領域配置座標要求とが、CPU111から座標制御部210に対して送信される。表示領域を仮想座標系VCに配置する必要が生じた場合として、例えば、表示を行わせたい表示デバイス130が電源ONや正常接続された場合などが考えられる。次のステップS121で、座標制御部210は、表示領域配置テーブル212を参照し、当該表示領域を要求された座標に配置可能か否かを判断する。もし、配置が可能ではないと判断されれば、処理はステップS125に移行され、エラー通知などがなされ、一連の処理が終了される。
一方、ステップS121で。配置が可能であると判断されれば、処理はステップS122に移行され、フレーム単位での処理が行われる。そして、処理は次のステップS123に移行され、例えば1フレームタイミングの間に、入力デバイスに対するユーザ操作などにより表示領域の移動要求があるか否かが判断される。若し、移動要求があると判断されれば、処理はステップS120に戻され、移動要求に応じてステップS120、ステップS121およびステップS122の処理が行われる。
一方、ステップS123で、表示領域の移動要求が無いと判断されれば、処理はステップS124に移行され、表示デバイス130に対する表示が必要無くなったか否かが判断される。例えば、表示デバイス130の電源がOFFとされたり、接続が解除された場合に、画像データを表示デバイス130に表示する必要が無くなったと判断することができる。若し、未だ表示を行う必要があると判断されれば、処理はステップS122に戻され、次のフレームに対する処理がなされる。一方、表示デバイス130に対する表示の必要が無くなったと判断されたら、一連の処理が終了される。
図16は、本実施形態による、タイル画像データの出力制御を示す一例のフローチャートである。ステップS130で、対象となる表示デバイス130に対する画像データの出力を行うか否かが判断される。例えば、表示デバイス130の電源がOFFとされている場合には、当該表示デバイス130に対する出力を行わないと判断される。出力を行うと判断されたら、処理はステップS131に移行される。
ステップS131では、選択部203は、座標管理部200から供給される表示座標配置情報を取得する。次のステップS132で、取得された表示座標配置情報と、画像処理部202から供給されたタイル画像データに格納される座標情報とに基づき、表示座標配置情報が示す表示領域に対応するタイル画像データを選択する。そして、次のステップS133で、選択されたタイル画像データに対して、当該表示領域が対応するグラフィック部または表示デバイス130の識別情報が送出先として付加されて出力される。この識別情報が付加されたタイル画像データは、バス110を介して、識別情報が示すグラフィック部119などに供給される。
ステップS134で、対象となる表示デバイス130に対する出力を停止するか否かが判断される。若し、例えば表示デバイス130の電源がOFFとされるなど、出力を停止すると判断されたら、一連の処理が終了される。一方、出力を停止しないと判断されたら、処理はステップS131に戻され、次のフレームに対する処理が行われる。
<他の実施形態>
上述の実施形態は、システム或は装置のコンピュータ(或いはCPU、MPU等)によりソフトウェア的に実現することも可能である。
従って、上述の実施形態をコンピュータで実現するために、該コンピュータに供給されるコンピュータプログラム自体も本発明を実現するものである。つまり、上述の実施形態の機能を実現するためのコンピュータプログラム自体も本発明の一つである。
なお、上述の実施形態を実現するためのコンピュータプログラムは、コンピュータで読み取り可能であれば、どのような形態であってもよい。例えば、オブジェクトコード、インタプリタにより実行されるプログラム、OSに供給するスクリプトデータ等で構成することができるが、これらに限るものではない。
上述の実施形態を実現するためのコンピュータプログラムは、記憶媒体又は有線/無線通信によりコンピュータに供給される。プログラムを供給するための記憶媒体としては、例えば、フレキシブルディスク、ハードディスク、磁気テープ等の磁気記憶媒体、MO、CD、DVD等の光/光磁気記憶媒体、不揮発性の半導体メモリなどがある。
有線/無線通信を用いたコンピュータプログラムの供給方法としては、コンピュータネットワーク上のサーバを利用する方法がある。この場合、本発明を形成するコンピュータプログラムとなりうるデータファイル(プログラムファイル)をサーバに記憶しておく。プログラムファイルとしては、実行形式のものであっても、ソースコードであっても良い。
そして、このサーバにアクセスしたクライアントコンピュータに、プログラムファイルをダウンロードすることによって供給する。この場合、プログラムファイルを複数のセグメントファイルに分割し、セグメントファイルを異なるサーバに分散して配置することも可能である。
つまり、上述の実施形態を実現するためのプログラムファイルをクライアントコンピュータに提供するサーバ装置も本発明の一つである。
また、上述の実施形態を実現するためのコンピュータプログラムを暗号化して格納した記憶媒体を配布し、所定の条件を満たしたユーザに、暗号化を解く鍵情報を供給し、ユーザの有するコンピュータへのインストールを許可してもよい。鍵情報は、例えばインターネットを介してホームページからダウンロードさせることによって供給することができる。
また、上述の実施形態を実現するためのコンピュータプログラムは、すでにコンピュータ上で稼働するOSの機能を利用するものであってもよい。
さらに、上述の実施形態を実現するためのコンピュータプログラムは、その一部をコンピュータに装着される拡張ボード等のファームウェアで構成してもよいし、拡張ボード等が備えるCPUで実行するようにしてもよい。