JP2014112373A - Screen relay device - Google Patents

Screen relay device Download PDF

Info

Publication number
JP2014112373A
JP2014112373A JP2013252118A JP2013252118A JP2014112373A JP 2014112373 A JP2014112373 A JP 2014112373A JP 2013252118 A JP2013252118 A JP 2013252118A JP 2013252118 A JP2013252118 A JP 2013252118A JP 2014112373 A JP2014112373 A JP 2014112373A
Authority
JP
Japan
Prior art keywords
image information
relay
screen
unit
image
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
JP2013252118A
Other languages
Japanese (ja)
Other versions
JP5701964B2 (en
Inventor
Mika Minematsu
松 美 佳 峰
Masataka Goto
藤 真 孝 後
Takuya Kawamura
村 卓 也 川
Shigeo Matsuzawa
澤 茂 雄 松
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Toshiba Corp
Original Assignee
Toshiba Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Toshiba Corp filed Critical Toshiba Corp
Priority to JP2013252118A priority Critical patent/JP5701964B2/en
Publication of JP2014112373A publication Critical patent/JP2014112373A/en
Application granted granted Critical
Publication of JP5701964B2 publication Critical patent/JP5701964B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

PROBLEM TO BE SOLVED: To provide a screen relay device improved in screen transmission performance.SOLUTION: A screen relay device includes: a communication unit for transmitting image information of one screen of a display unit of relay destination equipment to the relay destination equipment at the time of screen transmission start; an update region storage unit for storing an updated region in which image update occurs in the display unit of the relay destination equipment according to operation information; a drawing unit for drawing an image in which the operation information is reflected for the updated region; a first memory unit for storing the image drawn by the drawing unit; a second memory unit for storing the image information displayed in the relay destination equipment; and an image transmission unit for reading out and comparing the image information corresponding to the updated region from the first memory section and the second memory section, updates the image information stored in the second memory unit for a difference region in which the image information is different, and outputs the image information corresponding to the updated difference region, as second image information, to the communication unit.

Description

本発明は、画面中継装置に関するものである。   The present invention relates to a screen relay device.

入出力インタフェースを有する表示端末をユーザ側に配し、遠隔地に位置するサーバ装置が複雑な演算処理を実行する画面転送システムが知られている(例えば、非特許文献1参照)。サーバ装置は、表示端末からの操作情報に従い、表示端末で表示される画面情報を描画し、表示画面の更新領域の画面情報を表示端末に転送する。サーバ装置は画面情報を、1台または複数台の表示端末へ転送する。サーバ装置では、描画処理、差分抽出処理、圧縮処理、転送処理が、シングルスレッドで実行される。   There is known a screen transfer system in which a display terminal having an input / output interface is arranged on the user side, and a server device located at a remote place executes complicated arithmetic processing (for example, see Non-Patent Document 1). The server device draws screen information displayed on the display terminal according to the operation information from the display terminal, and transfers the screen information in the update area of the display screen to the display terminal. The server device transfers the screen information to one or a plurality of display terminals. In the server device, drawing processing, difference extraction processing, compression processing, and transfer processing are executed in a single thread.

しかし、サーバ装置から複数の画面情報を受信して表示端末へ転送するような多量の画像情報を扱う画面中継システムにおいて、非特許文献1に記載されているような従来の画面転送方式を用いる場合、複数の表示端末へは1つの画面しか転送できないという問題があった。また、各処理がシングルスレッドで実行されるため、画面転送性能が低いという問題があった。   However, when a conventional screen transfer method as described in Non-Patent Document 1 is used in a screen relay system that handles a large amount of image information such as receiving a plurality of screen information from a server device and transferring it to a display terminal. There is a problem that only one screen can be transferred to a plurality of display terminals. In addition, since each process is executed in a single thread, the screen transfer performance is low.

T. Richardson, Q. Stafford‐Fraser, K. Wood and A. Hopper, ”Virtual Network Computing,” IEEE Internet Computing, vol.2, no.1, pp.33−38, 1998T.A. Richardson, Q. Stafford-Fraser, K.M. Wood and A.M. Hopper, “Virtual Network Computing,” IEEE Internet Computing, vol. 2, no. 1, pp. 33-38, 1998

本発明は、画面転送性能を向上させた画面中継装置を提供することを目的とする。   It is an object of the present invention to provide a screen relay device with improved screen transfer performance.

本発明の一態様による画面中継装置は、中継先機器から操作情報を受信して複数の中継元機器へ画像情報取得要求を送信し、前記中継元機器から前記画像情報取得要求に対応した第1画像情報を受信し、前記中継先機器へ第2画像情報を送信するとともに、画面転送開始時は前記中継先機器へ前記中継先機器の表示部の1画面分の画像情報を送信する通信部と、前記操作情報により前記中継先機器の表示部で画像の更新が生じる更新領域を記憶する更新領域記憶部と、前記第1画像情報を用いて、前記更新領域について前記操作情報が反映された画像を描画する描画部と、前記描画部により描画された画像を記憶する第1記憶部と、前記中継先機器へ送信された前記第2画像情報を含む前記中継先機器で表示されている画像情報を記憶する第2記憶部と、前記更新領域に対応する画像情報を前記第1記憶部及び前記第2記憶部から読み出して比較し、画像情報が異なる差分領域を抽出し、前記差分領域について、前記第1記憶部から読み出した画像情報を用いて前記第2記憶部に記憶されている画像情報を更新し、更新した前記差分領域に対応する画像情報を前記第2画像情報として前記通信部へ出力する画面転送部と、を備えるものである。   A screen relay device according to an aspect of the present invention receives operation information from a relay destination device, transmits an image information acquisition request to a plurality of relay source devices, and responds to the image information acquisition request from the relay source device. A communication unit that receives image information, transmits second image information to the relay destination device, and transmits image information for one screen of the display unit of the relay destination device to the relay destination device when screen transfer starts; An update area storage unit that stores an update area in which an image is updated on the display unit of the relay destination device according to the operation information, and an image in which the operation information is reflected in the update area using the first image information Image information displayed on the relay destination device including the drawing unit that draws the image, the first storage unit that stores the image drawn by the drawing unit, and the second image information transmitted to the relay destination device Remember first A storage unit and image information corresponding to the update region are read from the first storage unit and the second storage unit, compared, a difference region having different image information is extracted, and the first storage unit A screen transfer unit that updates the image information stored in the second storage unit using the image information read out from the image and outputs the image information corresponding to the updated difference area to the communication unit as the second image information Are provided.

本発明によれば、画面中継装置の画面転送性能を向上できる。   According to the present invention, the screen transfer performance of the screen relay device can be improved.

本発明の第1の実施形態に係る画面中継システムの概略構成図である。1 is a schematic configuration diagram of a screen relay system according to a first embodiment of the present invention. 画面中継の一例を示す図である。It is a figure which shows an example of a screen relay. 画面中継装置の概略構成図である。It is a schematic block diagram of a screen relay apparatus. 更新領域の一例を示す図である。It is a figure which shows an example of an update area | region. 境界情報の一例を示す図である。It is a figure which shows an example of boundary information. 並列処理されるスレッド数の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the number of threads processed in parallel. 並列処理されるスレッド数の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the number of threads processed in parallel. 並列処理されるスレッド数の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the number of threads processed in parallel. 並列処理されるスレッド数の算出方法の一例を示す図である。It is a figure which shows an example of the calculation method of the number of threads processed in parallel. 画面転送部における並列処理の一例を示す図である。It is a figure which shows an example of the parallel process in a screen transfer part. 画像描画処理を説明するフローチャートである。It is a flowchart explaining an image drawing process. 画像転送処理を説明するフローチャートである。It is a flowchart explaining an image transfer process. 本発明の第2の実施形態に係る画面中継システムの概略構成図である。It is a schematic block diagram of the screen relay system which concerns on the 2nd Embodiment of this invention. 同第2の実施形態に係る画面中継装置の概略構成図である。It is a schematic block diagram of the screen relay apparatus based on the second embodiment. 本発明の第3の実施形態に係る画面中継システムの概略構成図である。It is a schematic block diagram of the screen relay system which concerns on the 3rd Embodiment of this invention. 同第3の実施形態に係る画面中継装置の概略構成図である。It is a schematic block diagram of the screen relay apparatus which concerns on the 3rd Embodiment.

以下、本発明の実施の形態を図面に基づいて説明する。   Hereinafter, embodiments of the present invention will be described with reference to the drawings.

(第1の実施形態)図1に本発明の第1の実施形態に係る画面中継システムの概略構成を示す。画面中継システムは、画面中継装置100、N台の中継元機器201〜20N、及びM台の中継先機器301〜30Mを備える。N、Mは、1以上の整数である。   (First Embodiment) FIG. 1 shows a schematic configuration of a screen relay system according to a first embodiment of the present invention. The screen relay system includes a screen relay device 100, N relay source devices 201 to 20N, and M relay destination devices 301 to 30M. N and M are integers of 1 or more.

中継元機器201〜20Nは、画像情報を作成するサーバ装置である。画像情報は、ユーザ側に配置された表示端末である中継先機器301〜30Mの画面に表示される画像についての情報である。   The relay source devices 201 to 20N are server devices that create image information. The image information is information about an image displayed on the screen of the relay destination devices 301 to 30M that are display terminals arranged on the user side.

中継元機器201〜20Nは、画面転送開始時に、中継先機器301〜30Mに表示される1画面分の画像情報を作成して送信する。その後、中継元機器201〜20Nは、中継先機器の画面内の更新が発生した領域の画像情報のみを送信する。更新については後述する。   The relay source devices 201 to 20N create and transmit image information for one screen displayed on the relay destination devices 301 to 30M when screen transfer starts. Thereafter, the relay source devices 201 to 20N transmit only the image information of the area where the update in the screen of the relay destination device has occurred. The update will be described later.

中継元機器201〜20Nは、画像情報の取得要求メッセージを受け取った時だけ画像情報を送信してもよいし、所定時間毎に画像情報を送信してもよい。   The relay source devices 201 to 20N may transmit the image information only when receiving the image information acquisition request message, or may transmit the image information every predetermined time.

画面中継装置100は、N台の中継元機器201〜20Nから送信されたN個の画像情報を合成する。画面中継装置100は、合成画像のうちの所定又は任意のM個の領域に対応する画像情報を選択する。そして、画面中継装置100は、第1領域に対応する画像情報を中継先機器301へ、第2領域に対応する画像情報を中継先機器302へ、・・・、第M領域に対応する画像情報を中継先機器30Mへ送信する。画面中継装置は、中継先機器301〜30Mへ送信する画像情報を、自装置内で生成することもできる。   The screen relay apparatus 100 combines N pieces of image information transmitted from the N relay source devices 201 to 20N. The screen relay apparatus 100 selects image information corresponding to predetermined or arbitrary M areas of the composite image. Then, the screen relay device 100 sends image information corresponding to the first area to the relay destination device 301, image information corresponding to the second area to the relay destination device 302,..., Image information corresponding to the Mth area. Is transmitted to the relay destination device 30M. The screen relay device can also generate image information to be transmitted to the relay destination devices 301 to 30M in its own device.

また、画面中継装置100は、中継先機器301〜30Mから送信された操作情報(後述する)を受信し、中継元機器201〜20Nへ送信できる。また、画面中継装置100は、画像情報取得要求メッセージを中継元機器201〜20Nへ送信する。画像情報取得要求メッセージは、画像中継装置100が生成してもよいし、中継先機器301〜30Mから受信したものでもよい。   Further, the screen relay device 100 can receive operation information (described later) transmitted from the relay destination devices 301 to 30M and transmit the operation information to the relay source devices 201 to 20N. In addition, the screen relay device 100 transmits an image information acquisition request message to the relay source devices 201 to 20N. The image information acquisition request message may be generated by the image relay apparatus 100 or may be received from the relay destination devices 301 to 30M.

中継先機器301〜30Mは表示部(表示画面)を有し、画面中継装置100から受け取った画像情報を表示できる。表示部は、例えば、液晶表示装置である。   The relay destination devices 301 to 30M have a display unit (display screen) and can display image information received from the screen relay device 100. The display unit is, for example, a liquid crystal display device.

また、中継先機器301〜30Mは、キーボードやマウス等の入力装置を有する。中継先機器301〜30Mは、入力装置を介して、ユーザからの操作情報を受け付ける。操作情報は、例えば、カーソルの移動、文字入力、操作が発生した位置等である。この操作情報により生じる画面内の変化が、上述の更新である。中継先機器301〜30Mは、操作情報を画面中継装置100へ送信する。   Further, the relay destination devices 301 to 30M have input devices such as a keyboard and a mouse. The relay destination devices 301 to 30M receive operation information from the user via the input device. The operation information includes, for example, cursor movement, character input, a position where an operation has occurred, and the like. The change in the screen caused by this operation information is the above-described update. The relay destination devices 301 to 30M transmit the operation information to the screen relay device 100.

図2に、画面中継システムによる画面中継の一例を示す。中継元機器201〜207はそれぞれ画像201a〜207aを示す画像情報を作成し、画面中継装置100へ送信する。   FIG. 2 shows an example of screen relay by the screen relay system. The relay source devices 201 to 207 create image information indicating the images 201a to 207a, respectively, and transmit the image information to the screen relay device 100.

画面中継装置100は、中継元機器201〜207から画像201a〜207aを示す画像情報を受信すると、それらを合成した合成画像100aを描画する。そして、画面中継装置100は、合成画像100aの任意又は所定の領域に対応する画像情報を中継先機器301〜306へ送信する。   When the screen relay apparatus 100 receives the image information indicating the images 201a to 207a from the relay source devices 201 to 207, the screen relay apparatus 100 draws a composite image 100a obtained by combining them. Then, the screen relay device 100 transmits image information corresponding to an arbitrary or predetermined region of the composite image 100a to the relay destination devices 301 to 306.

画面中継装置100は、画面転送開始時に、中継先機器の表示部の1画面分の画像情報を送信する。その後、画面中継装置100は、表示画面中の変化のあった領域(差分領域)を特定し、差分領域に対応する画像情報を圧縮して送信する。   The screen relay device 100 transmits image information for one screen of the display unit of the relay destination device at the start of screen transfer. Thereafter, the screen relay device 100 identifies an area (difference area) that has changed in the display screen, and compresses and transmits image information corresponding to the difference area.

中継先機器301〜306は、画面中継装置100から送信された画像情報を表示部の画面に表示する。例えば、中継先機器301〜304は、合成画像100aの領域A1〜A4を表示する。つまり、中継先機器301〜304はそれぞれ、中継元機器201が作成した画像201aを4分割した画像を表示する。   The relay destination devices 301 to 306 display the image information transmitted from the screen relay device 100 on the screen of the display unit. For example, the relay destination devices 301 to 304 display the areas A1 to A4 of the composite image 100a. That is, each of the relay destination devices 301 to 304 displays an image obtained by dividing the image 201a created by the relay source device 201 into four.

中継先機器305は合成画像100aの領域A5を表示する。つまり、中継先機器305は、中継元機器202〜205が作成した画像202a〜205aを合成表示する。   The relay destination device 305 displays the area A5 of the composite image 100a. That is, the relay destination device 305 combines and displays the images 202a to 205a created by the relay source devices 202 to 205.

中継先機器306は合成画像100aの領域A6を表示する。つまり、中継先機器306は、中継元機器206及び207が作成した2つの画像206a及び207aを跨いで表示する。   The relay destination device 306 displays the area A6 of the composite image 100a. That is, the relay destination device 306 displays the two images 206a and 207a created by the relay source devices 206 and 207.

このように、画面中継装置100は、1つの中継元機器が作成した画像を複数に分割して複数の中継先機器へ送信したり、複数の中継元機器が作成した画像を合成して1つの中継先機器へ送信したり、複数の中継元機器が作成した画像に跨った画像を1つの中継先機器へ送信したりすることができる。   As described above, the screen relay apparatus 100 divides an image created by one relay source device into a plurality of images and transmits them to a plurality of relay destination devices, or combines images created by a plurality of relay source devices into one image. It is possible to transmit to a relay destination device, or to transmit an image straddling images created by a plurality of relay source devices to one relay destination device.

このような画面中継装置100の概略構成を図3に示す。画面中継装置100は、アプリケーション110、ハードウェア120、及びウィンドウサーバ130を有する。   A schematic configuration of such a screen relay apparatus 100 is shown in FIG. The screen relay apparatus 100 includes an application 110, hardware 120, and a window server 130.

アプリケーション110は、画面中継装置100上で動作する各種処理を提供するプログラムである。アプリケーション110は、通信部122を介して中継元機器201〜20Nから画像情報を受け取る。また、アプリケーション110は、通信部122を介して中継先機器301〜30Mから操作情報を受け取る。   The application 110 is a program that provides various processes that operate on the screen relay apparatus 100. The application 110 receives image information from the relay source devices 201 to 20N via the communication unit 122. The application 110 also receives operation information from the relay destination devices 301 to 30M via the communication unit 122.

アプリケーション110は、操作情報に含まれる操作が発生した位置に基づいて、当該操作情報が中継元機器へ送信(転送)すべき情報か、又は画面中継装置100内で処理すべき情報かを判定する。アプリケーション110は、操作情報が中継元機器へ送信すべき情報であると判定した場合、当該操作情報を通信部122を介して中継元機器へ送信する。   The application 110 determines whether the operation information is information to be transmitted (transferred) to the relay source device or information to be processed in the screen relay device 100 based on the position where the operation included in the operation information occurs. . When the application 110 determines that the operation information is information to be transmitted to the relay source device, the application 110 transmits the operation information to the relay source device via the communication unit 122.

アプリケーション110は、中継元機器から受け取った画像情報又は画面中継装置100内で処理すべきと判定した操作情報に基づいて、中継先機器に表示される画面に変化(更新)が発生するか否かを検出する。中継先機器に表示される画面に変化(更新)が発生する場合、アプリケーション110は、ウィンドウサーバ130の描画部132に対して画像の描画命令を出力する。描画命令に基づく描画部132の動作については後述する。   Whether the application 110 changes (updates) in the screen displayed on the relay destination device based on the image information received from the relay source device or the operation information determined to be processed in the screen relay device 100 Is detected. When a change (update) occurs in the screen displayed on the relay destination device, the application 110 outputs an image drawing command to the drawing unit 132 of the window server 130. The operation of the drawing unit 132 based on the drawing command will be described later.

ハードウェア120は、CPU121、通信部122、バックアップ画像記憶部123、及びフレームバッファ124を有する。   The hardware 120 includes a CPU 121, a communication unit 122, a backup image storage unit 123, and a frame buffer 124.

CPU(Central Processing Unit:中央演算装置)121は、アプリケーション110及びウィンドウサーバ130を実行する制御部である。画面中継装置100は、CPU121を複数搭載したマルチプロセッサでもよいし、複数のプロセッサコアを1つのパッケージに集積したマルチコアプロセッサでもよい。   A CPU (Central Processing Unit) 121 is a control unit that executes the application 110 and the window server 130. The screen relay apparatus 100 may be a multiprocessor equipped with a plurality of CPUs 121 or a multicore processor in which a plurality of processor cores are integrated in one package.

画面中継装置100は、1つの処理内容を複数の処理単位(スレッド)に分割し、複数のスレッドを各CPU(プロセッサコア)に割り当て、複数のCPUによる並列処理を行うようにしてもよい。   The screen relay apparatus 100 may divide one processing content into a plurality of processing units (threads), assign a plurality of threads to each CPU (processor core), and perform parallel processing by the plurality of CPUs.

通信部122は、中継元機器への画面情報取得要求メッセージの送信、中継元機器からの画像情報の受信、中継先機器への画像情報の送信などを行う。また、通信部122は、中継先機器から操作情報を受信して、中継元機器へ該操作情報を送信する。   The communication unit 122 transmits a screen information acquisition request message to the relay source device, receives image information from the relay source device, and transmits image information to the relay destination device. The communication unit 122 receives operation information from the relay destination device and transmits the operation information to the relay source device.

バックアップ画像記憶部123は、中継先機器に送信した画像情報を記憶する。フレームバッファ124は、中継元機器から受信した画像情報や中継先機器から受信した操作情報に基づいて描画部132が描画した画像の画像情報を記憶する。バックアップ画像記憶部123及びフレームバッファ124は、RAM(Random Access Memory)、HDD(Hard Disk Drive)、光ディスク、メモリカード等の一般的に利用されている様々な記憶媒体により構成することができる。   The backup image storage unit 123 stores the image information transmitted to the relay destination device. The frame buffer 124 stores image information of an image drawn by the drawing unit 132 based on image information received from the relay source device and operation information received from the relay destination device. The backup image storage unit 123 and the frame buffer 124 can be configured by various commonly used storage media such as a RAM (Random Access Memory), an HDD (Hard Disk Drive), an optical disk, and a memory card.

ウィンドウサーバ130は、決定部131、描画部132、更新領域記憶部133、境界情報記憶部134、算出部135、画面転送部136、及びタイマ137を有する。   The window server 130 includes a determination unit 131, a drawing unit 132, an update area storage unit 133, a boundary information storage unit 134, a calculation unit 135, a screen transfer unit 136, and a timer 137.

決定部131は、中継元機器201〜20Nから受信した画像情報を、それぞれフレームバッファのどの位置に描画するかを決定し、アプリケーション110に通知する。アプリケーション110に通知された描画位置は、アプリケーション110が出力する描画命令に含まれる。   The determination unit 131 determines the position in the frame buffer where the image information received from the relay source devices 201 to 20N is to be drawn, and notifies the application 110 of it. The drawing position notified to the application 110 is included in a drawing command output from the application 110.

描画位置の決定方法は任意である。例えば、決定部131は、中継元機器201〜20Nからの画像情報の受信順に、フレームバッファ124の上から描画位置を割り当てる。   The method for determining the drawing position is arbitrary. For example, the determination unit 131 assigns drawing positions from above the frame buffer 124 in the order in which image information is received from the relay source devices 201 to 20N.

描画部132は、アプリケーション110から受け取った描画命令に基づいて各種画像処理を行って画像(合成画像)を作成し、画像情報をフレームバッファ124に記憶させる。また、描画部132は、描画命令に含まれる操作発生位置を示す座標情報を用いて、中継先機器の表示部で画像の更新(変更)が生じた更新領域を特定する。描画部132は、特定した更新領域を更新領域記憶部133に記録する。   The drawing unit 132 performs various image processing based on the drawing command received from the application 110 to create an image (composite image), and stores the image information in the frame buffer 124. In addition, the drawing unit 132 uses the coordinate information indicating the operation occurrence position included in the drawing command to specify an update area where an image update (change) has occurred in the display unit of the relay destination device. The drawing unit 132 records the identified update area in the update area storage unit 133.

ここで、座標情報とは、例えば、1024×768ピクセルの画面の場合、画面左上を(0、0)、画面右下を(1023、767)とするような座標系で表された情報をいう。なお、更新領域記憶部133への更新領域の記録方法は、中継先機器の表示画面上の更新領域が分かる任意の方法でよい。例えば、「座標(0,0)から幅10ピクセル、高さ10ピクセルの矩形領域及び座標(30,30)から幅200ピクセル、高さ5ピクセルの矩形領域」のように、更新領域を矩形情報のリストとして記録することができる。   Here, for example, in the case of a screen of 1024 × 768 pixels, the coordinate information refers to information expressed in a coordinate system in which the upper left of the screen is (0, 0) and the lower right of the screen is (1023, 767). . Note that the recording method of the update area in the update area storage unit 133 may be an arbitrary method for knowing the update area on the display screen of the relay destination device. For example, the update area is rectangular information such as “a rectangular area having a width of 10 pixels and a height of 10 pixels from coordinates (0, 0) and a rectangular area having a width of 200 pixels and a height of 5 pixels from coordinates (30, 30)” Can be recorded as a list.

図4に、更新領域の一例を示す。例えば、ウィンドウWを、図4(a)に示す位置から、図4(b)に示す位置に下方向へ移動する操作が行われる。   FIG. 4 shows an example of the update area. For example, an operation of moving the window W downward from the position shown in FIG. 4A to the position shown in FIG. 4B is performed.

この操作により、ウィンドウWを下方向に移動するための「幅350ピクセル、高さ200ピクセルの矩形領域を座標(300、50)から座標(300、200)の位置にコピーする」第1描画命令と、ウィンドウWで隠れていた領域を復元するための「座標(300、50)の位置に幅350ピクセル、高さ150ピクセルの矩形領域を描画する」第2描画命令と、ドラッグ中であることを示すカーソル画像を描画するための「座標(350、200)の位置に幅50ピクセル、高さ50ピクセルの矩形領域を描画する」第3描画命令とが発生する。   With this operation, the first drawing command for copying the rectangular area having a width of 350 pixels and a height of 200 pixels from the coordinates (300, 50) to the position of the coordinates (300, 200) for moving the window W downward. And a second drawing command for “drawing a rectangular area having a width of 350 pixels and a height of 150 pixels at the position of coordinates (300, 50)” for restoring the area hidden in the window W, and dragging A third drawing command for “drawing a rectangular region having a width of 50 pixels and a height of 50 pixels at the position of the coordinates (350, 200)” is generated.

第1描画命令による更新領域は、図4(c)に示すような、座標(300、200)から幅350ピクセル、高さ200ピクセルの矩形領域R1となる。また、第2描画命令による更新領域は、図4(c)に示すような、座標(300、50)から幅350ピクセル、高さ150ピクセルの矩形領域R2となる。また、第3描画命令による更新領域は、図4(c)に示すような、座標(350、200)から幅50ピクセル、高さ50ピクセルの矩形領域R3となる。   The update area by the first drawing command is a rectangular area R1 having a width of 350 pixels and a height of 200 pixels from the coordinates (300, 200) as shown in FIG. Further, the update area by the second rendering command is a rectangular area R2 having a width of 350 pixels and a height of 150 pixels from the coordinates (300, 50) as shown in FIG. Further, the update area by the third rendering command is a rectangular area R3 having a width of 50 pixels and a height of 50 pixels from the coordinates (350, 200) as shown in FIG.

そして、矩形領域R1〜R3がそれぞれ更新領域として更新領域記憶部133に記録される。   The rectangular areas R1 to R3 are recorded in the update area storage unit 133 as update areas.

なお、矩形領域R1〜R3は連続した領域のため、3つの矩形領域を1つにまとめて、図4(d)に示すような、座標(300、50)から幅350ピクセル、高さ350ピクセルの矩形領域R4を更新領域として更新領域記憶部133に記録してもよい。   Since the rectangular areas R1 to R3 are continuous areas, the three rectangular areas are combined into one, and the coordinates (300, 50) as shown in FIG. 4D are 350 pixels wide and 350 pixels high. The rectangular area R4 may be recorded in the update area storage unit 133 as an update area.

境界情報記憶部134は、フレームバッファ124に記憶されている合成画像内の境界情報を記憶する。境界情報とは、フレームバッファ124内の合成画像における、中継先機器で表示される領域の境界を示す情報である。   The boundary information storage unit 134 stores boundary information in the composite image stored in the frame buffer 124. The boundary information is information indicating the boundary of the area displayed on the relay destination device in the composite image in the frame buffer 124.

例えば、フレームバッファ124に図5(a)に示すような合成画像が記憶されており、中継先機器301〜306で図5(b)に示すような画像が表示される場合、図5(c)に示される破線が表示境界となる。境界情報記憶部134は、このような境界を示す情報を記憶する。   For example, when a composite image as illustrated in FIG. 5A is stored in the frame buffer 124 and an image as illustrated in FIG. 5B is displayed on the relay destination devices 301 to 306, FIG. A broken line indicated by () is a display boundary. The boundary information storage unit 134 stores information indicating such a boundary.

算出部135は、更新領域の数、各更新領域の面積、境界情報、搭載されているCPU121の数などの情報の少なくともいずれか1つを用いて、画面転送部136内で並列処理されるスレッド数(並列数)を算出する。画面転送部136は、後述する差分抽出処理等を、複数の処理領域について並行して実行できる。並列処理される単位処理領域は、更新領域を分割/グループ化して決定される。   The calculation unit 135 uses a thread that is processed in parallel in the screen transfer unit 136 using at least one of information such as the number of update regions, the area of each update region, boundary information, and the number of mounted CPUs 121. Calculate the number (parallel number). The screen transfer unit 136 can execute difference extraction processing, which will be described later, on a plurality of processing areas in parallel. The unit processing area to be processed in parallel is determined by dividing / grouping the update area.

図6〜図9に並列処理されるスレッド数の算出方法の例を示す。図6〜図8に示す例では、更新領域記憶部133に、合成画像内の更新領域として6つの矩形領域R11〜R16が記憶されているものとする。図6〜図8では、更新領域を破線で示している。   6 to 9 show examples of a method for calculating the number of threads to be processed in parallel. In the example shown in FIGS. 6 to 8, it is assumed that the update area storage unit 133 stores six rectangular areas R11 to R16 as update areas in the composite image. 6 to 8, the update area is indicated by a broken line.

図6は、更新領域の数に基づいてスレッド数を算出する例を示す。更新領域が6つあるため、スレッド数は6となる。つまり、画面転送部136における6つのスレッドはそれぞれ更新領域(矩形領域)R11〜R16に対応する画像情報の処理を行う。   FIG. 6 shows an example of calculating the number of threads based on the number of update areas. Since there are six update areas, the number of threads is six. That is, the six threads in the screen transfer unit 136 each process the image information corresponding to the update areas (rectangular areas) R11 to R16.

図7は、各更新領域の面積に基づいてスレッド数を算出する例を示す。更新領域の面積は、例えば、幅10ピクセル、高さ10ピクセルの更新領域の場合は100(=10×10)、幅200ピクセル、高さ5ピクセルの更新領域の場合は1000(=200×5)となる。   FIG. 7 shows an example in which the number of threads is calculated based on the area of each update region. The area of the update region is, for example, 100 (= 10 × 10) for the update region having a width of 10 pixels and a height of 10 pixels, and 1000 (= 200 × 5) for the update region having a width of 200 pixels and a height of 5 pixels. )

各スレッドに割り当てる領域の大きさを同等にするために、領域面積に閾値Th1と閾値Th2(Th1>Th2)を設け、閾値Th1よりも面積が大きい更新領域は複数に分割し、閾値Th2よりも面積が小さい複数の更新領域を1つにグループ化する。   In order to make the size of the area allocated to each thread equal, the threshold area Th1 and the threshold Th2 (Th1> Th2) are provided in the area, and the update area having an area larger than the threshold Th1 is divided into a plurality of areas, and the threshold area Th2 A plurality of update regions having a small area are grouped into one.

更新領域R11の面積が大きいため、これが分割される。なお、更新領域R12は更新領域R11に隣接しているため、更新領域R11とR12を1まとめにした上で分割することが好適である。図7に示すように、更新領域R11とR12を1まとめにして、3つの処理領域R71〜R73に分割される。   Since the area of the update region R11 is large, it is divided. Since the update area R12 is adjacent to the update area R11, it is preferable to divide the update areas R11 and R12 after grouping them together. As shown in FIG. 7, the update regions R11 and R12 are grouped into three processing regions R71 to R73.

更新領域(矩形領域)R13〜R15は面積が小さいため1つにグループ化され、処理領域R74となる。   The update regions (rectangular regions) R13 to R15 are small in area and are grouped into one to be a processing region R74.

更新領域R16は面積が閾値Th1以下、閾値Th2以上であるため、処理領域R75となる。従って、スレッド数(画面転送部136で並列処理される領域数)は5つとなる。このように、更新領域の面積を考慮することで、各スレッドにおける処理量を均等化することができる。   Since the area of the update region R16 is equal to or less than the threshold value Th1 and equal to or greater than the threshold value Th2, the update region R16 becomes the processing region R75. Therefore, the number of threads (the number of areas processed in parallel by the screen transfer unit 136) is five. Thus, the processing amount in each thread can be equalized by considering the area of the update region.

図8は、各更新領域の面積及び境界情報に基づいてスレッド数を算出する例を示す。表示境界は、一点鎖線で示すように、合成画像を4分割したものとする。更新領域の面積に基づいて決定した処理領域が表示境界を跨ぐ場合は、表示境界を跨がないように分割する。従って、図7における処理領域R74が、この例では処理領域R84、R85に分割される。処理領域R84は更新領域R13及びR14をグループ化したものであり、処理領域R85は更新領域R15に相当する。   FIG. 8 shows an example in which the number of threads is calculated based on the area and boundary information of each update region. It is assumed that the display boundary is obtained by dividing the composite image into four parts as indicated by the one-dot chain line. When the processing region determined based on the area of the update region crosses the display boundary, the processing region is divided so as not to cross the display boundary. Accordingly, the processing region R74 in FIG. 7 is divided into processing regions R84 and R85 in this example. The processing area R84 is a grouping of the update areas R13 and R14, and the processing area R85 corresponds to the update area R15.

処理領域R81〜R83、R86は、図7における処理領域R71〜R73、R75に対応する。従って、図8に示す例では、スレッド数(画面転送部136で並列処理される領域数)は6つとなる。   The processing areas R81 to R83 and R86 correspond to the processing areas R71 to R73 and R75 in FIG. Therefore, in the example shown in FIG. 8, the number of threads (the number of areas processed in parallel by the screen transfer unit 136) is six.

境界情報を用いて、複数の中継先機器301〜30Mが表示する領域を考慮することで、1つのスレッドを1つの中継先機器に対応させることができる。   By considering the area displayed by the plurality of relay destination devices 301 to 30M using the boundary information, one thread can correspond to one relay destination device.

図9は、CPU121の搭載数に基づいてスレッド数を算出する例を示す。画面転送部136で並列処理されるスレッド数はCPU121の搭載数に制限される。従って、CPU121の搭載数をスレッド数として算出する。例えば、CPU121を4つ搭載している場合は、スレッド数を4とする。   FIG. 9 shows an example of calculating the number of threads based on the number of CPUs 121 mounted. The number of threads processed in parallel by the screen transfer unit 136 is limited to the number of CPUs 121 installed. Therefore, the number of CPUs 121 is calculated as the number of threads. For example, if four CPUs 121 are installed, the number of threads is four.

図9では、全画面更新が発生し、更新領域記録部133に、全画面分の更新領域(矩形領域)が1つ記憶されているものとする。CPU121の搭載数が4つの場合、図9に示すように、全画面が4つの処理領域R91〜R94に等分割される。   In FIG. 9, it is assumed that a full screen update has occurred and one update area (rectangular area) for the entire screen is stored in the update area recording unit 133. When the number of CPUs 121 is four, as shown in FIG. 9, the entire screen is equally divided into four processing areas R91 to R94.

更新領域の数がCPU121の搭載数よりも多い場合は、スレッド数(処理領域数)をCPU121の搭載数以下に抑えるために、複数の更新領域をグループ化して1つの処理領域とする。   When the number of update areas is larger than the number of CPUs 121 installed, a plurality of update areas are grouped into one process area in order to keep the number of threads (number of processing areas) below the number of CPUs 121 installed.

算出部135は、スレッド数の算出にあたり、更新領域の数、各更新領域の面積、境界情報、搭載されているCPU121の数などの情報を任意に組み合わせて用いることができる。また、算出部135は、1つのスレッド数を算出してもよいし、画面転送部136で実行される後述の差分抽出処理、画素形式変換処理、圧縮処理等の各処理毎にスレッド数を算出してもよい。   When calculating the number of threads, the calculation unit 135 can use any combination of information such as the number of update regions, the area of each update region, boundary information, and the number of CPUs 121 mounted. The calculation unit 135 may calculate the number of threads, or calculate the number of threads for each process such as a difference extraction process, a pixel format conversion process, and a compression process, which will be described later, executed by the screen transfer unit 136. May be.

例えば、差分抽出処理に対しては、図6に示すように更新領域の数に基づいてスレッド数が算出され、算出したスレッド数がCPU121の搭載数よりも小さい場合は、領域面積が閾値Th1より大きい更新領域を分割する。   For example, for the difference extraction process, as shown in FIG. 6, the number of threads is calculated based on the number of update areas, and when the calculated number of threads is smaller than the number of CPUs 121, the area of the area is less than the threshold Th1. Divide large update areas.

また、例えば、画素形式変換処理および圧縮処理は、中継先機器毎にそれぞれ画素形式や圧縮形式が異なる形式の画面情報を扱っている可能性があり、中継先機器毎に異なるスレッドで処理するために、境界情報を考慮してスレッド数が算出される。   Also, for example, pixel format conversion processing and compression processing may handle screen information in a format that differs in pixel format or compression format for each relay destination device, and is processed with a different thread for each relay destination device. In addition, the number of threads is calculated in consideration of boundary information.

このように、算出部135が、CPU搭載数や、画面転送部136における処理内容に応じて、画面転送部136における並列処理のスレッド数を算出し、並列処理される処理領域を決定することで、画面転送部136は効率良く並列処理を実行できる。   As described above, the calculation unit 135 calculates the number of threads for parallel processing in the screen transfer unit 136 according to the number of CPUs mounted and the processing content in the screen transfer unit 136, and determines the processing area to be processed in parallel. The screen transfer unit 136 can execute parallel processing efficiently.

画面転送部136は、更新領域記憶部133に記憶されている更新領域を参照して、この更新領域に対応する画像情報をフレームバッファ124から読み出す。フレームバッファ124から読み出される画像情報は、描画部132が作成した画像情報であり、中継先機器301〜30Mから受け取った操作情報が反映されたものである。   The screen transfer unit 136 refers to the update area stored in the update area storage unit 133 and reads out image information corresponding to the update area from the frame buffer 124. The image information read from the frame buffer 124 is image information created by the drawing unit 132 and reflects the operation information received from the relay destination devices 301 to 30M.

また、画面転送部136は、これらの領域に対応する画像情報をバックアップ画像記憶部123から読み出す。バックアップ画像記憶部123から読み出される画像情報は、過去に中継先機器301〜30Mへ送信され、中継先機器301〜30Mで表示されている画像情報である。   Further, the screen transfer unit 136 reads image information corresponding to these areas from the backup image storage unit 123. The image information read from the backup image storage unit 123 is image information that has been transmitted to the relay destination devices 301 to 30M in the past and displayed on the relay destination devices 301 to 30M.

そして、画面転送部136は、差分抽出処理を、算出部135により決定された処理領域毎に並列に実行する。差分抽出処理は、フレームバッファ124から読み出した画像情報とバックアップ画像記憶部123から読み出した画像情報とを比較して、差分領域(画像情報が異なる領域)を抽出する処理である。   Then, the screen transfer unit 136 executes the difference extraction process in parallel for each processing region determined by the calculation unit 135. The difference extraction process is a process of comparing the image information read from the frame buffer 124 and the image information read from the backup image storage unit 123 to extract a difference area (an area with different image information).

画面転送部136は、抽出した差分領域について、バックアップ画像記憶部123に記憶されている画像情報を更新する。また、画面転送部136は、差分領域で更新領域記憶部133内の更新領域を上書きする。   The screen transfer unit 136 updates the image information stored in the backup image storage unit 123 for the extracted difference area. In addition, the screen transfer unit 136 overwrites the update area in the update area storage unit 133 with the difference area.

画面転送部136は、差分抽出処理後に、画素形式変換処理を行う。画素形式変換処理は、画面中継装置100における画素形式を、中継先機器301〜30Mにおける画素形式に変換する処理である。両者の画素形式が同じ場合は、この処理を省略することができる。なお、画素形式は、bpp(1画素あたりのビット数)、depth(1画素で表示可能な色数)、カラーマップ(色番号と実際の色の対応を定義する)を含む。   The screen transfer unit 136 performs a pixel format conversion process after the difference extraction process. The pixel format conversion process is a process of converting the pixel format in the screen relay device 100 into the pixel format in the relay destination devices 301 to 30M. When both pixel formats are the same, this process can be omitted. The pixel format includes bpp (number of bits per pixel), depth (number of colors that can be displayed by one pixel), and color map (defining the correspondence between color numbers and actual colors).

画面転送部136は、画素形式変換処理後に、圧縮処理を行い、差分領域の画像情報を圧縮する。圧縮された画像情報は、通信部122を介して中継先機器301〜30Mへ送信される。   The screen transfer unit 136 performs a compression process after the pixel format conversion process to compress the image information in the difference area. The compressed image information is transmitted to the relay destination devices 301 to 30M via the communication unit 122.

例えば、画面転送部136は、図10に示すように、更新領域の数に基づいたスレッド数で差分抽出処理を行い、境界情報に基づいたスレッド数で画素形式変換処理及び圧縮処理を行う。   For example, as illustrated in FIG. 10, the screen transfer unit 136 performs difference extraction processing with the number of threads based on the number of update regions, and performs pixel format conversion processing and compression processing with the number of threads based on the boundary information.

画面転送部136は、圧縮処理後に、中継先機器へ送信される画像情報に対応する領域(差分領域)の情報を、更新領域記憶部133から削除する。   The screen transfer unit 136 deletes the information of the area (difference area) corresponding to the image information transmitted to the relay destination device from the update area storage unit 133 after the compression process.

タイマ137は所定時間毎に画面転送部136に割込み通知を行う。画面転送部136は割込み通知に基づいて、上述の差分抽出処理等を開始する。なお、画面転送部136の処理開始のトリガはタイマ137からの割込み通知でなくてもよい。例えば、描画部132による描画回数が所定値に達したら、画面転送部136が処理を開始するようにしてもよい。   The timer 137 notifies the screen transfer unit 136 of an interrupt every predetermined time. The screen transfer unit 136 starts the above-described difference extraction processing and the like based on the interrupt notification. Note that the processing start trigger of the screen transfer unit 136 may not be an interrupt notification from the timer 137. For example, when the number of times of drawing by the drawing unit 132 reaches a predetermined value, the screen transfer unit 136 may start processing.

上述したように、画面中継装置100が行う画像処理は、フレームバッファ124に更新画像を書き込む画像描画処理と、更新領域の画像情報を中継先機器へ転送する画像転送処理の2つに分けられる。   As described above, the image processing performed by the screen relay device 100 can be divided into two types: image drawing processing that writes an updated image in the frame buffer 124 and image transfer processing that transfers image information in the update area to the relay destination device.

図11に示すフローチャートを用いて画像描画処理について説明する。   The image drawing process will be described with reference to the flowchart shown in FIG.

(ステップS101)画面中継装置100から中継元機器201〜20Nへ画面情報取得要求メッセージが送信される。   (Step S101) A screen information acquisition request message is transmitted from the screen relay device 100 to the relay source devices 201 to 20N.

(ステップS102)アプリケーション110が、中継元機器201〜20Nからの画像情報を受信する。   (Step S102) The application 110 receives image information from the relay source devices 201 to 20N.

(ステップS103)アプリケーション110が、中継元機器201〜20Nからの画像情報に従って処理を実行し、画像情報の更新が発生した場合に、合成画像の描画を要求する描画命令を描画部132へ出力する。   (Step S <b> 103) When the application 110 executes processing according to the image information from the relay source devices 201 to 20 </ b> N and the image information is updated, a drawing command for requesting drawing of the composite image is output to the drawing unit 132. .

なお、画面中継装置100上で画像情報を生成してもよい。この場合、アプリケーション110は、中継先機器301〜30Mからの操作情報に基づいて、描画部132へ描画命令を出力する。   Note that image information may be generated on the screen relay device 100. In this case, the application 110 outputs a drawing command to the drawing unit 132 based on the operation information from the relay destination devices 301 to 30M.

(ステップS104)描画部132が、描画命令に応じて画像処理を行い、図2に示すような合成画像を描画し、合成画像の画像情報をフレームバッファ124に記憶させる。描画部132は、画面中継装置100の動作開始時に全画面についての合成画像を作成した後は、更新領域の画像を描画する。   (Step S <b> 104) The drawing unit 132 performs image processing according to the drawing command, draws a composite image as shown in FIG. 2, and stores the image information of the composite image in the frame buffer 124. The drawing unit 132 draws an image in the update area after creating a composite image for the entire screen at the start of the operation of the screen relay device 100.

(ステップS105)描画部132が、更新領域(の座標)を更新領域記憶部133に記憶させる。   (Step S <b> 105) The drawing unit 132 stores the update region (its coordinates) in the update region storage unit 133.

図12に示すフローチャートを用いて画像転送処理について説明する。   The image transfer process will be described with reference to the flowchart shown in FIG.

(ステップS201)算出部135が、画面転送部136において画像情報が並列処理されるスレッド数を算出する。画面転送部136で実行される差分抽出処理、画素形式変換処理、圧縮処理のそれぞれについてスレッド数を算出してもよいし、スレッド数を1つだけ算出し、すべての処理に対してそのスレッド数を適用してもよい。ここで算出されたスレッド数に従って、以降の画面転送部136の処理は並列処理される。   (Step S <b> 201) The calculation unit 135 calculates the number of threads in which image information is processed in parallel in the screen transfer unit 136. The number of threads may be calculated for each of the difference extraction processing, pixel format conversion processing, and compression processing executed by the screen transfer unit 136, or only one thread may be calculated and the number of threads for all processing. May be applied. The subsequent processing of the screen transfer unit 136 is performed in parallel according to the number of threads calculated here.

(ステップS202)差分抽出処理するか否かが判定される。差分抽出処理を行う場合はステップS203に進み、行わない場合はステップS205に進む。   (Step S202) It is determined whether or not to perform difference extraction processing. When the difference extraction process is performed, the process proceeds to step S203, and when not performed, the process proceeds to step S205.

(ステップS203)更新領域記憶部133に記憶されている更新領域を参照し、当該更新領域に対応するフレームバッファ124の(更新画像の)画像情報と、バックアップ画像記憶部123の画像情報とが比較され、差分領域が抽出される。そして、更新領域記憶部133内の更新領域に差分領域が上書きされる。   (Step S203) Referring to the update area stored in the update area storage unit 133, the image information (of the update image) in the frame buffer 124 corresponding to the update area is compared with the image information in the backup image storage unit 123. The difference area is extracted. Then, the difference area is overwritten on the update area in the update area storage unit 133.

(ステップS204)差分領域に対応する更新画像の画像情報が、バックアップ画像記憶部123に記憶される。   (Step S204) The image information of the updated image corresponding to the difference area is stored in the backup image storage unit 123.

(ステップS205)画面転送部136が更新領域に対応する更新画像の画像情報をフレームバッファ124から読み出す。   (Step S205) The screen transfer unit 136 reads the image information of the updated image corresponding to the update area from the frame buffer 124.

(ステップS206)画素形式変換処理するか否かが判定される。画素形式変換処理を行う場合はステップS207に進み、行わない場合はステップS209に進む。   (Step S206) It is determined whether or not to perform pixel format conversion processing. If the pixel format conversion process is to be performed, the process proceeds to step S207; otherwise, the process proceeds to step S209.

(ステップS207)画面中継装置100とは画素形式の異なる中継先機器が検出される。   (Step S207) A relay destination device having a pixel format different from that of the screen relay device 100 is detected.

(ステップS208)ステップS207で検出された中継先機器へ送信される更新領域の更新画像の画素形式が変換される。   (Step S208) The pixel format of the update image in the update area transmitted to the relay destination device detected in Step S207 is converted.

(ステップS209)圧縮処理するか否かが判定される。圧縮処理を行う場合はステップS210に進み、行わない場合はステップS211に進む。   (Step S209) It is determined whether or not compression processing is to be performed. If compression processing is to be performed, the process proceeds to step S210. If not, the process proceeds to step S211.

(ステップS210)更新領域の更新画像が圧縮される。   (Step S210) The update image in the update area is compressed.

(ステップS211)中継先機器へ送信される更新画像に対応する更新領域が更新領域記憶部133から削除される。   (Step S211) The update area corresponding to the update image transmitted to the relay destination device is deleted from the update area storage unit 133.

(ステップS212)更新画像が、通信部122を介して、中継先機器へ送信される。   (Step S212) The updated image is transmitted to the relay destination device via the communication unit 122.

上述したように、画面中継装置100は、N台の中継元機器201〜20Nから受信した画像を合成し、合成画像の任意の領域をM台の中継先機器301〜30Mへ送信できる。つまり、画面中継装置100は、1台の中継元機器が作成した画像を分割した画像、複数の中継先機器が作成した画像を合成した画像、複数の中継先機器が作成した画像に跨る画像など、N台の中継元機器が作成した画像を任意に合成/分割して、M台の中継先機器へ転送することができる。   As described above, the screen relay apparatus 100 can synthesize images received from the N relay source devices 201 to 20N and transmit an arbitrary region of the composite image to the M relay destination devices 301 to 30M. In other words, the screen relay device 100 is an image obtained by dividing an image created by one relay source device, an image obtained by combining images created by a plurality of relay destination devices, an image that spans images created by a plurality of relay destination devices, and the like. The images created by the N relay source devices can be arbitrarily combined / divided and transferred to the M relay destination devices.

また、算出部135が、更新領域の数、各更新領域の面積、境界情報、搭載されているCPU121の数などの情報を用いて、画面転送部136で実行される差分抽出処理等のスレッド数を求めている。そのため、画面中継装置100は、中継元機器が作成した画面の画像情報を中継先機器へ効率良く送信できる。   Further, the calculation unit 135 uses the information such as the number of update regions, the area of each update region, boundary information, and the number of CPUs 121 mounted, and the number of threads such as difference extraction processing executed by the screen transfer unit 136. Seeking. Therefore, the screen relay apparatus 100 can efficiently transmit the image information of the screen created by the relay source device to the relay destination device.

このように、本実施形態によれば、画面中継装置の画面転送性能を向上できる。   Thus, according to this embodiment, the screen transfer performance of the screen relay device can be improved.

上記第1の実施形態では、画面中継装置100は、1種類の合成画像を描画してフレームバッファ124に記憶させていたが、画面中継装置100で描画される合成画像と中継先機器が要求する合成画像とが異なる場合は、中継先機器の要求する合成画像をフレームバッファ124の別領域に記憶してもよい。   In the first embodiment, the screen relay apparatus 100 draws one type of composite image and stores it in the frame buffer 124. However, the composite image drawn by the screen relay apparatus 100 and the relay destination device request it. If the composite image is different, the composite image requested by the relay destination device may be stored in another area of the frame buffer 124.

例えば、図2では、合成画像100aにおいて、中継元機器202が作成した画像202aは、中継元機器203が作成した画像203aの左隣に位置していたが、中継先機器からこの2つの画像の位置を入れ替えた合成画像が要求されている場合、そのような合成画像を描画して、フレームバッファ124の別領域に記憶する。   For example, in FIG. 2, in the composite image 100a, the image 202a created by the relay source device 202 is located on the left side of the image 203a created by the relay source device 203. When a composite image whose position has been changed is requested, such a composite image is drawn and stored in another area of the frame buffer 124.

また、各中継先機器に対応するようにフレームバッファ124を複数設け、各中継先機器に要求される合成画像を描画して、フレームバッファに記憶させてもよい。   Further, a plurality of frame buffers 124 may be provided so as to correspond to each relay destination device, and a composite image required for each relay destination device may be drawn and stored in the frame buffer.

画面中継装置100から画像情報を受信した中継先機器が、所望の表示位置となるように、画像の位置の入れ替えを行ってもよい。   The positions of the images may be switched so that the relay destination device that has received the image information from the screen relay device 100 has a desired display position.

(第2の実施形態)図13に本発明の第2の実施形態に係る画面中継システムの概略構成を示す。画面中継システムは、画面中継装置400、N台の中継元機器201〜20N、及び1台の中継先機器301を備える。Nは1以上の整数である。画面中継装置400は、中継元機器201〜20Nによって作成された画像を任意に合成/分割して、中継先機器301へ送信する。また、画面中継装置400は、中継先機器301の表示画像が更新された(変化が発生した)場合は、更新画像を中継先機器301へ送信する。   (Second Embodiment) FIG. 13 shows a schematic configuration of a screen relay system according to a second embodiment of the present invention. The screen relay system includes a screen relay device 400, N relay source devices 201 to 20N, and one relay destination device 301. N is an integer of 1 or more. The screen relay apparatus 400 arbitrarily synthesizes / divides images created by the relay source devices 201 to 20N and transmits the images to the relay destination device 301. The screen relay apparatus 400 transmits the updated image to the relay destination device 301 when the display image of the relay destination device 301 is updated (change occurs).

図14に画面中継装置400の概略構成を示す。画面中継装置400は、第1送信部401、第1受信部402、第2送信部403、第1決定部411、関連部412、検出部413、更新部414、第1記憶部421、及び第2記憶部422を有する。   FIG. 14 shows a schematic configuration of the screen relay apparatus 400. The screen relay device 400 includes a first transmission unit 401, a first reception unit 402, a second transmission unit 403, a first determination unit 411, an association unit 412, a detection unit 413, an update unit 414, a first storage unit 421, and a first storage unit 421. 2 storage section 422.

第1送信部401は、N台の中継元機器201〜20Nへ画像情報取得要求メッセージを送信する。   The first transmission unit 401 transmits an image information acquisition request message to the N relay source devices 201 to 20N.

第1受信部402は、N台の中継元機器201〜20Nから、画像情報取得要求メッセージの応答として、中継元機器で作成された画像情報を受信する。第1受信部402は、受信した画像情報を第1記憶部421内の第1決定部412により指示された記憶領域に記憶する。   The first receiving unit 402 receives image information created by the relay source device from the N relay source devices 201 to 20N as a response to the image information acquisition request message. The first reception unit 402 stores the received image information in the storage area designated by the first determination unit 412 in the first storage unit 421.

なお、第1受信部402は、受信した画像情報が圧縮されている場合は、伸張処理を施す。   Note that the first receiving unit 402 performs expansion processing when the received image information is compressed.

第1記憶部421は、中継元機器201〜20Nから受信した画像情報を記憶する。第1記憶部421は、上記第1の実施形態におけるフレームバッファ124に相当する。   The first storage unit 421 stores image information received from the relay source devices 201 to 20N. The first storage unit 421 corresponds to the frame buffer 124 in the first embodiment.

第1決定部412は、N台の中継元機器201〜20Nから受信した画像情報が記憶される第1記憶部421内の記憶領域を決定する。   The first determination unit 412 determines a storage area in the first storage unit 421 in which image information received from the N relay source devices 201 to 20N is stored.

第1決定部412は、画面中継装置400が中継元機器を「発見」した順によって記憶する領域を指定した設定ファイルAであってもよい。なお、第1決定部412が設定ファイルAの場合、第1受信部402は、設定ファイルAを参照して、第1記憶部421に受信した画像情報を記憶させる。   The first determination unit 412 may be a setting file A that specifies an area to be stored in the order in which the screen relay apparatus 400 “discovers” the relay source device. When the first determination unit 412 is the setting file A, the first reception unit 402 refers to the setting file A and stores the received image information in the first storage unit 421.

第2記憶部422は、中継先機器301へ送信した画像情報を記憶する。第2記憶部422は、上記第1の実施形態におけるバックアップ画像記憶部123に相当する。   The second storage unit 422 stores the image information transmitted to the relay destination device 301. The second storage unit 422 corresponds to the backup image storage unit 123 in the first embodiment.

関連部412は、第1記憶部421に記憶された画像情報と、第2記憶部422に記憶される画像情報との対応関係を記憶する。関連部412は、対応情報を記載した設定ファイルBであってもよい。   The association unit 412 stores a correspondence relationship between the image information stored in the first storage unit 421 and the image information stored in the second storage unit 422. The related unit 412 may be the setting file B describing the correspondence information.

検出部413は、関連部413から対応情報を取得し、第1記憶部421と第2記憶部422とに記憶されている画像情報の画素値を比較し、差分がある領域を検出する。なお、関連部413が設定ファイルBの場合、検出部413は、設定ファイルBを参照して、第1記憶部421と第2記憶部422の間で、画素値を比較する画像情報の領域を知ることができる。   The detection unit 413 acquires correspondence information from the association unit 413, compares the pixel values of the image information stored in the first storage unit 421 and the second storage unit 422, and detects an area having a difference. When the related unit 413 is the setting file B, the detecting unit 413 refers to the setting file B, and sets an area of image information for comparing pixel values between the first storage unit 421 and the second storage unit 422. I can know.

更新部414は、検出部413が検出した差分領域に対応する第1記憶部421内の画像情報を更新画像情報として第2記憶部422に記憶させる。また、更新部414は、差分領域を示す情報を第2送信部403に通知する。   The update unit 414 stores the image information in the first storage unit 421 corresponding to the difference area detected by the detection unit 413 in the second storage unit 422 as update image information. In addition, the update unit 414 notifies the second transmission unit 403 of information indicating the difference area.

第2送信部403は、更新部414から通知された差分領域を示す情報を用いて、第2記憶部422から、当該差分領域の画像情報を取得し、中継先機器301へ送信する。送信の際には、画像情報を圧縮してもよい。   The second transmission unit 403 acquires the image information of the difference area from the second storage unit 422 using the information indicating the difference area notified from the update unit 414 and transmits the image information to the relay destination device 301. At the time of transmission, the image information may be compressed.

第1送信部401、第1受信部402、及び第2送信部403は、上記第1の実施形態における通信部122に相当する。また、第2送信部403は、上記第1の実施形態における画面転送部136の圧縮処理の機能を有する。また、第1受信部402及び決定部411が、上記第1の実施形態における決定部131及び描画部132に相当する。   The first transmission unit 401, the first reception unit 402, and the second transmission unit 403 correspond to the communication unit 122 in the first embodiment. The second transmission unit 403 has a compression processing function of the screen transfer unit 136 in the first embodiment. The first receiving unit 402 and the determining unit 411 correspond to the determining unit 131 and the drawing unit 132 in the first embodiment.

このように、本実施形態の画面中継装置400は、N台の中継元機器から画像情報を受信し、任意に合成/分割して1つの画像情報を作成し、1台の中継先機器へ転送することができる。   As described above, the screen relay apparatus 400 according to the present embodiment receives image information from N relay source devices, arbitrarily synthesizes / divides the image information, creates one image information, and transfers the image information to one relay destination device. can do.

また、検出部413、更新部414、第2送信部403における処理について、上記第1の実施形態で示したようなスレッド数の算出を行い、算出したスレッド数で並列処理を行うことで、画像情報を効率的に中継先機器へ送信することができる。   In addition, for the processing in the detection unit 413, the update unit 414, and the second transmission unit 403, the number of threads as shown in the first embodiment is calculated, and parallel processing is performed with the calculated number of threads, thereby obtaining an image. Information can be efficiently transmitted to a relay destination device.

(第3の実施形態)図15に本発明の第3の実施形態に係る画面中継システムの概略構成を示す。画面中継システムは、画面中継装置500、N台の中継元機器201〜20N、及びM台の中継先機器301〜30Mを備える。N、Mは1以上の整数である。画面中継装置500は、中継元機器201〜20Nによって作成された画像を任意に合成/分割して、中継先機器301〜30Mへ送信する。また、画面中継装置100は、中継先機器301〜30Mの表示画像が更新された(変化が発生した)場合は、更新画像を中継先機器301〜30Mへ送信する。   (Third Embodiment) FIG. 15 shows a schematic configuration of a screen relay system according to a third embodiment of the present invention. The screen relay system includes a screen relay device 500, N relay source devices 201 to 20N, and M relay destination devices 301 to 30M. N and M are integers of 1 or more. The screen relay apparatus 500 arbitrarily synthesizes / divides images created by the relay source devices 201 to 20N and transmits the images to the relay destination devices 301 to 30M. Further, when the display image of the relay destination devices 301 to 30M is updated (change occurs), the screen relay device 100 transmits the updated image to the relay destination devices 301 to 30M.

図16に画面中継装置500の概略構成を示す。画面中継装置500は、図13に示す上記第2の実施形態に係る画面中継装置400に、第2決定部415を追加した構成となっている。   FIG. 16 shows a schematic configuration of the screen relay device 500. The screen relay device 500 has a configuration in which a second determination unit 415 is added to the screen relay device 400 according to the second embodiment shown in FIG.

画面中継装置500は、画面中継装置400の機能を拡張したものである。第2送信部403は、M台の中継先機器301〜30Mに画像情報を送信することができる。それぞれの中継先機器へ送信する画像情報は、第2記憶部422に分離して記憶されている。   The screen relay device 500 is an extension of the function of the screen relay device 400. The second transmission unit 403 can transmit image information to the M relay destination devices 301 to 30M. Image information to be transmitted to each relay destination device is stored separately in the second storage unit 422.

第2決定部415は、M台の中継先機器301〜30Mへ送信された、又は、送信される画像情報が記憶される第2記憶部415の記憶領域を決定する。   The second determination unit 415 determines a storage area of the second storage unit 415 in which image information transmitted to or transmitted to the M relay destination devices 301 to 30M is stored.

第2決定部415は、画面中継装置500が中継先機器を「発見」した順によって、第2記憶部422内の記憶領域を指定した設定ファイルCであってもよい。なお、第2決定部415が設定ファイルCの場合、第2送信部403は、中継先機器へ画像情報を送信する際に設定ファイルCを参照して、送信先の中継先機器に対応する第2記憶部422の記憶領域を特定し、当該記憶領域に記憶された画像情報を送信する。   The second determination unit 415 may be the setting file C that specifies the storage area in the second storage unit 422 in the order in which the screen relay device 500 “discovers” the relay destination device. When the second determination unit 415 is the setting file C, the second transmission unit 403 refers to the setting file C when transmitting the image information to the relay destination device, and corresponds to the relay destination device of the transmission destination. 2 The storage area of the storage unit 422 is specified, and the image information stored in the storage area is transmitted.

図16に示される関連部412、検出部413、更新部414は、M台の中継先機器301〜30Mに対応するように、上記第2の実施形態で説明したそれぞれの機能を拡張したものである。   The association unit 412, the detection unit 413, and the update unit 414 illustrated in FIG. 16 are obtained by extending the functions described in the second embodiment so as to correspond to the M relay destination devices 301 to 30M. is there.

このように、本実施形態の画面中継装置500は、N台の中継元機器から画像情報を受信し、任意に合成/分割してM個の画像情報を作成し、M台の中継先機器へ転送することができる。   As described above, the screen relay apparatus 500 according to the present embodiment receives image information from N relay source devices, arbitrarily synthesizes / divides the image information to create M image information, and sends it to the M relay destination devices. Can be transferred.

さらに、検出部413の処理、更新部414の処理、第2送信部403の処理については、上記第1の実施形態で示したようなスレッド数の算出を行い、算出したスレッド数で並列処理を行うことで、画像情報を効率的に中継先機器へ送信することができる。   Furthermore, for the processing of the detection unit 413, the processing of the update unit 414, and the processing of the second transmission unit 403, the number of threads as shown in the first embodiment is calculated, and parallel processing is performed with the calculated number of threads. By doing so, the image information can be efficiently transmitted to the relay destination device.

なお、本発明は上記実施形態そのままに限定されるものではなく、実施段階ではその要旨を逸脱しない範囲で構成要素を変形して具体化できる。また、上記実施形態に開示されている複数の構成要素の適宜な組み合わせにより、種々の発明を形成できる。例えば、実施形態に示される全構成要素から幾つかの構成要素を削除してもよい。さらに、異なる実施形態にわたる構成要素を適宜組み合わせてもよい。   Note that the present invention is not limited to the above-described embodiment as it is, and can be embodied by modifying the constituent elements without departing from the scope of the invention in the implementation stage. In addition, various inventions can be formed by appropriately combining a plurality of components disclosed in the embodiment. For example, some components may be deleted from all the components shown in the embodiment. Furthermore, constituent elements over different embodiments may be appropriately combined.

100 画面中継装置
110 アプリケーション
120 ハードウェア
121 CPU
122 通信部
123 バックアップ画像記憶部
124 フレームバッファ
130 ウィンドウサーバ
131 決定部
132 描画部
133 更新領域記憶部
134 境界情報記憶部
135 算出部
136 画面転送部
137 タイマ
201〜20N 中継元機器
301〜30M 中継先機器
100 Screen Relay Device 110 Application 120 Hardware 121 CPU
122 communication unit 123 backup image storage unit 124 frame buffer 130 window server 131 determination unit 132 drawing unit 133 update region storage unit 134 boundary information storage unit 135 calculation unit 136 screen transfer unit 137 timers 201 to 20N relay source devices 301 to 30M relay destination machine

Claims (5)

中継先機器から操作情報を受信して複数の中継元機器へ画像情報取得要求を送信し、前記中継元機器から前記画像情報取得要求に対応した第1画像情報を受信し、前記中継先機器へ第2画像情報を送信するとともに、画面転送開始時は前記中継先機器へ前記中継先機器の表示部の1画面分の画像情報を送信する通信部と、
前記操作情報により前記中継先機器の表示部で画像の更新が生じる更新領域を記憶する更新領域記憶部と、
前記第1画像情報を用いて、前記更新領域について前記操作情報が反映された画像を描画する描画部と、
前記描画部により描画された画像を記憶する第1記憶部と、
前記中継先機器へ送信された前記第2画像情報を含む前記中継先機器で表示されている画像情報を記憶する第2記憶部と、
前記更新領域に対応する画像情報を前記第1記憶部及び前記第2記憶部から読み出して比較し、画像情報が異なる差分領域を抽出し、前記差分領域について、前記第1記憶部から読み出した画像情報を用いて前記第2記憶部に記憶されている画像情報を更新し、更新した前記差分領域に対応する画像情報を前記第2画像情報として前記通信部へ出力する画面転送部と、
を備える画面中継装置。
Receives operation information from the relay destination device, transmits an image information acquisition request to a plurality of relay source devices, receives first image information corresponding to the image information acquisition request from the relay source device, and sends it to the relay destination device A communication unit that transmits the second image information and transmits image information for one screen of the display unit of the relay destination device to the relay destination device at the start of screen transfer;
An update area storage unit that stores an update area in which an image is updated on the display unit of the relay destination device according to the operation information;
A drawing unit that draws an image in which the operation information is reflected in the update region using the first image information;
A first storage unit for storing an image drawn by the drawing unit;
A second storage unit for storing image information displayed on the relay destination device including the second image information transmitted to the relay destination device;
Image information corresponding to the update area is read from the first storage unit and the second storage unit and compared, a difference area having different image information is extracted, and the difference area is read from the first storage unit. A screen transfer unit that updates image information stored in the second storage unit using information, and outputs image information corresponding to the updated difference area to the communication unit as the second image information;
A screen relay device comprising:
前記更新領域の数に基づいて第1並列数を算出する算出部をさらに備え、
前記画面転送部は、前記差分領域を抽出する処理を、前記第1並列数で並列に実行することを特徴とする請求項1に記載の画面中継装置。
A calculation unit that calculates a first parallel number based on the number of the update regions;
The screen relay device according to claim 1, wherein the screen transfer unit executes the process of extracting the difference area in parallel with the first parallel number.
前記算出部は、前記更新領域の数及び前記更新領域の面積に基づいて前記第1並列数を算出することを特徴とする請求項2に記載の画面中継装置。   The screen relay device according to claim 2, wherein the calculation unit calculates the first parallel number based on the number of the update regions and the area of the update regions. 前記第1記憶部に記憶されている前記第1画像情報のうち、前記中継先機器が表示する領域の境界を示す境界情報を記憶する第4記憶部をさらに備え、
前記算出部は、前記境界情報に基づいて第2並列数を算出し、
前記画面転送部は、前記第2画像情報を圧縮する圧縮処理を前記第2並列数で並列に実行し、圧縮した前記第2画像情報を前記通信部へ出力することを特徴とする請求項3に記載の画面中継装置。
Of the first image information stored in the first storage unit, further comprising a fourth storage unit that stores boundary information indicating a boundary of an area displayed by the relay destination device,
The calculation unit calculates a second parallel number based on the boundary information,
The said screen transfer part performs the compression process which compresses the said 2nd image information in parallel by the said 2nd parallel number, and outputs the compressed said 2nd image information to the said communication part. The screen relay device described in 1.
前記算出部は、前記境界情報、前記更新領域の数、及び前記更新領域の面積に基づいて、前記第1並列数及び/又は前記第2並列数を算出することを特徴とする請求項4に記載の画面中継装置。   5. The calculation unit according to claim 4, wherein the calculation unit calculates the first parallel number and / or the second parallel number based on the boundary information, the number of the update regions, and the area of the update region. The screen relay device described.
JP2013252118A 2013-12-05 2013-12-05 Screen relay device Active JP5701964B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2013252118A JP5701964B2 (en) 2013-12-05 2013-12-05 Screen relay device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2013252118A JP5701964B2 (en) 2013-12-05 2013-12-05 Screen relay device

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
JP2011547162A Division JPWO2011077550A1 (en) 2009-12-25 2009-12-25 Screen relay device

Publications (2)

Publication Number Publication Date
JP2014112373A true JP2014112373A (en) 2014-06-19
JP5701964B2 JP5701964B2 (en) 2015-04-15

Family

ID=51169434

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2013252118A Active JP5701964B2 (en) 2013-12-05 2013-12-05 Screen relay device

Country Status (1)

Country Link
JP (1) JP5701964B2 (en)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7517899B2 (en) 2019-09-13 2024-07-17 キヤノンメディカルシステムズ株式会社 Display information control system and display information control method

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008210317A (en) * 2007-02-28 2008-09-11 Fuji Xerox Co Ltd Processing execution system, relay device, and program
JP2008262357A (en) * 2007-04-11 2008-10-30 Casio Comput Co Ltd Management server device, server device, information processing system and program

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2008210317A (en) * 2007-02-28 2008-09-11 Fuji Xerox Co Ltd Processing execution system, relay device, and program
JP2008262357A (en) * 2007-04-11 2008-10-30 Casio Comput Co Ltd Management server device, server device, information processing system and program

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7517899B2 (en) 2019-09-13 2024-07-17 キヤノンメディカルシステムズ株式会社 Display information control system and display information control method

Also Published As

Publication number Publication date
JP5701964B2 (en) 2015-04-15

Similar Documents

Publication Publication Date Title
CN112614202B (en) GUI rendering display method, terminal, server, electronic equipment and storage medium
WO2011077550A1 (en) Screen relay device
JP5215945B2 (en) Image processing device
US8819270B2 (en) Information processing apparatus, computer-readable non transitory storage medium storing image transmission program, and computer-readable storage medium storing image display program
JP5678743B2 (en) Information processing apparatus, image transmission program, image transmission method, and image display method
WO2021169236A1 (en) Rendering method and apparatus
CN106453572B (en) Method and system based on Cloud Server synchronous images
US9300818B2 (en) Information processing apparatus and method
JP5899897B2 (en) Information processing apparatus, information processing method, and program
US20170269709A1 (en) Apparatus, method for image processing, and non-transitory medium storing program
US20170371614A1 (en) Method, apparatus, and storage medium
US20170272545A1 (en) Method and system for transmitting remote screen
KR101984825B1 (en) Method and Apparatus for Encoding a Cloud Display Screen by Using API Information
US9037749B2 (en) Information processing apparatus and image transmission method
US20140089812A1 (en) System, terminal apparatus, and image processing method
US20160155429A1 (en) Information processing apparatus and terminal device
US20150281699A1 (en) Information processing device and method
JP4675944B2 (en) Image processing apparatus, image processing method, and image processing program
JP5701964B2 (en) Screen relay device
US20120005587A1 (en) Performing Remoting Operations For Different Regions Of A Display Surface At Different Rates
US9819958B2 (en) Drawing system, information processing apparatus and drawing control method which switch drawing from still image data to video image data
US9161009B2 (en) System, terminal device, and image capturing method
CN114035903A (en) Method and system for realizing Linux KVM virtual machine to support 3D application
JP2018005226A (en) System and method for overlaying multi-source media in vram (video random access memory)
CN112218003B (en) Desktop image acquisition method and device and electronic equipment

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141028

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141031

A521 Written amendment

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20141226

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20150120

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20150218

R151 Written notification of patent or utility model registration

Ref document number: 5701964

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R151