JP2009246415A - Screen data transmitter, screen data transmission method, and screen data transmission program - Google Patents
Screen data transmitter, screen data transmission method, and screen data transmission program Download PDFInfo
- Publication number
- JP2009246415A JP2009246415A JP2008087121A JP2008087121A JP2009246415A JP 2009246415 A JP2009246415 A JP 2009246415A JP 2008087121 A JP2008087121 A JP 2008087121A JP 2008087121 A JP2008087121 A JP 2008087121A JP 2009246415 A JP2009246415 A JP 2009246415A
- Authority
- JP
- Japan
- Prior art keywords
- difference
- frame
- screen data
- screen
- area
- 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
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
- Image Processing (AREA)
- Digital Computer Display Output (AREA)
- Information Transfer Between Computers (AREA)
Abstract
Description
本発明は、画面データを送信する画面データ送信装置、画面データ送信方法及び画面データ送信プログラムに関し、特に、サーバ装置に備わり、シンクライアント(thin client)に画面を送信する画面データ送信装置、画面データ送信方法及び画面データ送信プログラムに関する。 The present invention relates to a screen data transmission apparatus, a screen data transmission method, and a screen data transmission program for transmitting screen data, and more particularly, to a screen data transmission apparatus for transmitting a screen to a thin client (thin client). The present invention relates to a transmission method and a screen data transmission program.
近年、シンクライアント及びそれに対応したサーバを有するシンクライアントシステムが普及してきている。シンクライアントシステムにおいては、サーバがアプリケーションプログラムやデータファイルを保有し、シンクライアントは、必要最低限の機能を有する。 In recent years, thin client systems having a thin client and a server corresponding to the thin client have become widespread. In the thin client system, the server holds application programs and data files, and the thin client has a minimum necessary function.
画面転送型のシンクライアントシステムにおいては、シンクライアントの画面に表示する画面データもサーバが保有する。そして、変化のあった画面データをサーバからシンクライアントに送信し、シンクライアントは、サーバから送られてきた画面データを基に、表示画面データを再構築する。 In the screen transfer type thin client system, the server also has screen data to be displayed on the thin client screen. Then, the changed screen data is transmitted from the server to the thin client, and the thin client reconstructs the display screen data based on the screen data transmitted from the server.
次に、変化のあった画面データをサーバからシンクライアントに送信するための基本的な画面データ送信装置について説明する。 Next, a basic screen data transmission apparatus for transmitting changed screen data from the server to the thin client will be described.
図1を参照すると、基本的な画面データ送信装置は、書込部901、偶数フレームメモリ903、奇数フレームメモリ905、差分存在領域検出部907及び差分存在部分送信部909を備える。
Referring to FIG. 1, the basic screen data transmission apparatus includes a
書込部901は、シンクライアントで表示するべき画面データと同一の画面データよりなる出力フレームを入力し、出力フレームのうち偶数フレームを偶数フレームメモリ903に書き込み、奇数フレームを奇数フレーム905に書き込む。
The
差分存在領域検出部907は、例えば、図2に示すような32画素×32画素のブロックを単位として、偶数フレームメモリ903に書き込まれている画面データと奇数フレームメモリ905に書き込まれている画面データとを比較し、差分存在領域を検出する。差分存在領域は(32×n)画素×(32×m)画素の矩形の領域であってもよいし、図3の差分存在領域で示すような領域であってもよい。
The difference presence
差分存在領域送信部909は、差分存在領域検出部907で検出された差分存在領域の画面データを符号化し、符号化された画面データをシンクライアントに送信する。符号化のためには、例えば、ウェーブレット変換、ハフマン符号化などが用いられる。
The difference existence
次に、図4を参照して、図1に示す基本的な画面データ送信装置の動作を説明する。 Next, the operation of the basic screen data transmitting apparatus shown in FIG. 1 will be described with reference to FIG.
まず、書込部901が、最初の出力フレームを入力する(ステップS951)。
First, the
次に、入力した出力フレームは、偶数フレームであるのか又は奇数フレームであるのかを判断する(ステップS953)。 Next, it is determined whether the input output frame is an even frame or an odd frame (step S953).
偶数フレームである場合には、入力した出力フレームの画面データを偶数フレームメモリ903に書き込む(ステップS955)。他方、奇数フレームである場合には、入力した出力フレームの画面データを奇数フレームメモリ905に書き込む(ステップS957)。 If it is an even frame, the screen data of the input output frame is written into the even frame memory 903 (step S955). On the other hand, if it is an odd frame, the screen data of the input output frame is written into the odd frame memory 905 (step S957).
ステップS955又はステップS957の次に、差分存在領域検出部907は、差分存在領域を検出する(ステップS959)。
Subsequent to step S955 or step S957, the difference presence
次に、差分存在領域送信部909は、全ての差分存在領域について、差分存在領域のデータの送信(ステップS963)を、繰り返す(ステップS961)。
Next, the difference presence
次に、書込部901は、次の出力フレームの画面データを入力し(ステップS965)、ステップS953に戻る。
Next, the
差分存在領域は、図5に示すように、第nフレームになかったウィンドウ701が第(n+1)フレームで現れた場合には、符号703で示す領域である。また、差分存在領域は、図6に示すように、自動車705が第nフレームで図7(a)に示すような位置にあり、第(n+1)フレームで図7(b)に示すような位置にある場合には、図7(c)に示すような、自動車705が走り去った後の背景を含む領域707と新たに自動車705を含むこととなった領域709である。
As shown in FIG. 5, the difference existence area is an area denoted by
図7にシンクライアントのうち表示画面に関連する部分を示す。 FIG. 7 shows a portion related to the display screen in the thin client.
復号部821は、差分存在領域送信部809により符号化された画面データを復号する。
The
フレームメモリ823は、復号された画面データを格納する。
The
表示部825は、フレームメモリ823に格納されている画面データを読み出して、表示装置に出力する。
シンクライアント1台当たりの画面送信のためのビットレートは予め定められている。そして、所定の差分以上の差分がある画面ブロックのデータは全て送信される。従って、所定の差分以上の差分がある画面ブロックが多い場合には、1ブロック当たりの割当ビット数が少なくなり、画面が劣化する。これは、特に、画面に動画の広いウィンドウが存在する場合に顕著である。 The bit rate for screen transmission per thin client is predetermined. And all the data of the screen block with a difference more than a predetermined difference are transmitted. Therefore, when there are many screen blocks having a difference greater than or equal to a predetermined difference, the number of allocated bits per block is reduced, and the screen is deteriorated. This is particularly noticeable when a wide window of moving images exists on the screen.
ところで、マウスカーソルも画面データとして送信される。図8(a)に示すように、マウスカーソルが動かない場合には、そのマウスカーソルを含むブロックのブロックデータは伝送されない。 By the way, the mouse cursor is also transmitted as screen data. As shown in FIG. 8A, when the mouse cursor does not move, the block data of the block including the mouse cursor is not transmitted.
図8(b)に示すように、マウスカーソルが動いた場合には、移動後のマウスカーソルを含むブロックのブロックデータが伝送される。マウスカーソルがあるブロックから他のブロックに移動した場合には、移動前のマウスカーソルを含むブロックのブロックデータも伝送される。 As shown in FIG. 8B, when the mouse cursor moves, block data of the block including the moved mouse cursor is transmitted. When the mouse cursor moves from one block to another block, the block data of the block including the mouse cursor before the movement is also transmitted.
図8(c)に示すように、マウスカーソルが、4つのブロックに跨る領域に動いた場合には、移動後のマウスカーソルを含む4つのブロックのブロックデータが伝送される。 As shown in FIG. 8C, when the mouse cursor moves to an area straddling four blocks, block data of four blocks including the mouse cursor after movement is transmitted.
このように、マウスカーソルも画面データとして送信されるため、画面に動画が含まれる場合、特に、広い領域を占める動画が含まれる場合には、マウスカーソルの画質が劣化する。ところが、マウスカーソルは、画面中でユーザが最も注目している領域の中心であるため、マウスカーソルの画質を維持する必要がある。 As described above, since the mouse cursor is also transmitted as screen data, the image quality of the mouse cursor deteriorates when a moving image is included on the screen, particularly when a moving image occupying a wide area is included. However, since the mouse cursor is the center of the area most noticed by the user in the screen, it is necessary to maintain the image quality of the mouse cursor.
マウスカーソルについて上記したことは、キャラクタカーソルについても同様である。 The above description for the mouse cursor is the same for the character cursor.
そこで、本発明は、広い領域を占める動画が画面に含まれる場合であっても、カーソルの画質を維持することを可能とする画面データ送信装置及びその方法を提供することを目的とする。 Accordingly, an object of the present invention is to provide a screen data transmitting apparatus and method that can maintain the image quality of a cursor even when a moving image occupying a wide area is included in the screen.
本発明によれば、第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出手段と、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信する送信手段と、差分存在領域に含まれるブロックのフレームレートを、出力フレームレートよりも、低くするフレームレート低減手段と、を備えることを特徴とする画面データ送信装置が提供される。 According to the present invention, each of the plurality of blocks included in the first screen frame is included in the second screen frame before the first screen frame and has a difference from the block at the corresponding position. A difference detection means for detecting whether or not, a transmission means for transmitting data of a block for which the detection result of the difference detection means is positive, and a frame rate of a block included in the difference existence area is set to be higher than an output frame rate. And a frame rate reducing means for lowering the screen data.
また、本発明によれば、第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信する送信ステップと、差分存在領域に含まれるブロックのフレームレートを、出力フレームレートよりも、低くするフレームレート低減ステップと、を備えることを特徴とする画面データ送信方法が提供される。 Further, according to the present invention, each of the plurality of blocks included in the first screen frame is included in the second screen frame before the first screen frame, and is different from the block at the corresponding position. A difference detection step for detecting whether or not there is a transmission, a transmission step for transmitting data of a block for which the detection result of the difference detection means is positive, and a frame rate of a block included in the difference existence area, an output frame rate There is provided a screen data transmission method characterized by comprising a frame rate reduction step of reducing the frame rate.
更に、本発明によれば、第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと差分があるか否かを検出する差分検出ステップと、前記差分検出手段の検出結果が肯定的であるブロックのデータを送信する送信ステップと、差分存在領域に含まれるブロックのフレームレートを、出力フレームレートよりも、低くするフレームレート低減ステップと、を備えることを特徴とする画面データ送信方法をコンピュータに実行させるための画面データ送信プログラムが提供される。 Further, according to the present invention, each of the plurality of blocks included in the first screen frame is included in the second screen frame before the first screen frame, and is different from the block at the corresponding position. A difference detection step for detecting whether or not there is a transmission, a transmission step for transmitting data of a block for which the detection result of the difference detection means is positive, and a frame rate of a block included in the difference existence area, an output frame rate There is provided a screen data transmission program for causing a computer to execute a screen data transmission method characterized by comprising a frame rate reduction step of lowering the frame rate.
本発明によれば、動画に割り当てる符号量を低く抑えることができるため、広い領域を占める動画が画面に含まれる場合であっても、カーソルの画質を維持することができる。 According to the present invention, since the amount of code allocated to a moving image can be kept low, the image quality of the cursor can be maintained even when a moving image occupying a wide area is included in the screen.
以下、図面を参照して本発明を実施するための最良の形態について詳細に説明する。 The best mode for carrying out the present invention will be described below in detail with reference to the drawings.
[実施形態1]
図9は、本発明の実施形態1により送信される画面の例を示す図である。
[Embodiment 1]
FIG. 9 is a diagram illustrating an example of a screen transmitted according to the first embodiment of the present invention.
図9を参照すると、マウスカーソル102を含むブロック101は、マウスカーソル102が動いている時には、60fps(frame per second)で送信される。ウィンドウ103に含まれる小さな差分存在領域104も60fpsで送信される。ウィンドウ105に含まれる中程度の広さの差分存在領域106は30fpsで送信される。ウィンドウ107に含まれる中程度の広さの差分存在領域108は30fpsで送信される。ウィンドウ107に含まれる広い差分存在領域109は20fpsで伝送される。
Referring to FIG. 9, the
このように、差分存在領域に含まれるブロックは、差分存在領域のサイズが広くなればなるほど遅いフレームレートで送信される。 Thus, the blocks included in the difference existence area are transmitted at a slower frame rate as the size of the difference existence area becomes larger.
図10を参照すると、本発明の実施形態1による画面データ送信装置は、書込部121、偶数フレームメモリ123、奇数フレームメモリ125、コピー部127、差分存在領域検出部129、差分存在領域サイズ検出部131、フレーム番号カウンタ133、送信フレーム判断部135、送信/コピー判断部137及び差分存在領域送信部139を備える。
Referring to FIG. 10, the screen data transmission apparatus according to the first embodiment of the present invention includes a
書込部121は、出力フレームの画面データを入力し、偶数フレームの画面データを偶数フレームメモリ123に書き込み、奇数フレームの画面データを奇数フレームメモリ125に書き込む。
The
偶数フレームメモリ123は、偶数フレームの画面データ及びコピー部127により書き込まれた差分存在領域のブロックのデータを格納する。
The
奇数フレームメモリ125は、奇数フレームの画面データ及びコピー部127により書き込まれた差分存在領域のブロックのデータを格納する。
The
コピー部127は、送信/コピー判断部137からの指示に従い、差分存在領域のブロックのうち送信されないブロックのデータを、直前のフレームの画面データを格納しているフレームメモリ(偶数フレームメモリ123又は奇数フレームメモリ125)から現在のフレームの画面データを格納しているフレームメモリ(奇数フレームメモリ125又は偶数フレームメモリ123)にコピーする。
In accordance with an instruction from the transmission /
差分存在領域検出部129は、差分存在領域検出部907と同様に、例えば、図2に示すような32画素×32画素のブロックを単位として、偶数フレームメモリ123に書き込まれている画面データと奇数フレームメモリ125に書き込まれている画面データとを比較し、差分存在領域を検出する。差分存在領域は(32×n)画素×(32×m)画素の矩形の領域であってもよいし、図3の差分存在領域で示すような領域であってもよい。
Similar to the difference presence
差分存在領域サイズ検出部131は、差分存在領域を、例えば、大領域、中領域、小領域などのように大きさに応じて分類する。例えば、差分存在領域である(32×n)画素×(32×m)画素の矩形の領域のm×nの値が第1の閾値よりも大きければ、その領域を大領域とし、m×nの値が第1の閾値以下であるが、第1の閾値よりも小さい第2の閾値よりも大きければその領域を中領域とし、m×nの値が第2の閾値以下であれば、その領域を小領域とする。
The difference presence area
フレーム番号カウンタ133、フレーム毎にカウント値を1ずつ増加させる。
The
送信フレーム判断部135は、図11に示すように、大領域、中領域、小領域毎に、各フレームで差分存在領域の画面データを送信するかどうか判断する。例えば、大領域については、フレーム番号を3で除算して得られる残余がゼロであれば、現在のフレームの差分存在領域の画面データを送信する。また、中領域については、フレーム番号を2で除算して得られる残余がゼロであれば、現在のフレームの差分存在領域の画面データを送信する。更に、小領域については、現在のフレームの全ての差分存在領域の画面データを送信する。こうすることにより、大領域については、3フレーム毎に1回、現在のフレームの差分存在領域の画面データを送信し、中領域については、2フレーム毎に1回、現在のフレームの差分存在領域の画面データを送信し、小領域については、毎フレーム、現在のフレームの差分存在領域の画面データを送信することとなる。
As shown in FIG. 11, the transmission
送信/コピー判断部137は、差分存在領域サイズ検出部131から入力した各差分存在領域の大きさの分類及び送信フレーム判断部135から入力した、差分領域の大きさの分類毎の送信の可否を基に、差分存在領域検出部129で検出した各差分存在領域を送信するのか、又は、偶数フレームメモリ123と奇数フレームメモリ125との間でコピーをするのかを判断する。
The transmission /
差分存在領域送信部139は、送信/コピー判断部137により送信するべきであると判断された差分存在領域に含まれる各ブロックのデータを符号化してシンクライアントに送信する。
The difference existence
次に、図10に示す画面データ送信装置の動作について、図12を参照して説明する。 Next, the operation of the screen data transmitting apparatus shown in FIG. 10 will be described with reference to FIG.
まず、書込部121は、最初の出力フレームの画面データを入力する(ステップS151)。
First, the
次に、入力した出力フレームは、偶数フレームであるのか、又は、奇数フレームであるのかを判断する(ステップS153)。この判断のためには、フレーム番号カウンタ133のLSBを用いてもよい。
Next, it is determined whether the input output frame is an even frame or an odd frame (step S153). For this determination, the LSB of the
偶数フレームである場合には、入力した出力フレームの画面データを偶数フレームメモリ123に書き込む(ステップS155)。他方、奇数フレームである場合には、入力した出力フレームの画面データを奇数フレームメモリ125に書き込む(ステップS157)。 If it is an even frame, the screen data of the input output frame is written into the even frame memory 123 (step S155). On the other hand, if it is an odd frame, the screen data of the input output frame is written into the odd frame memory 125 (step S157).
次に、差分存在領域検出部129は、偶数フレームメモリ123に格納されている偶数フレームの画面データと奇数フレームメモリ125に格納されている奇数フレームの画面データとを比較することにより差分存在領域を検出する(ステップS159)。具体的には、例えば、図3に示すように、フレーム間の差分のある画素を少なくとも1つ含むブロック(○を付けてある差分存在ブロック)を中心とした3ブロック×3ブロックの領域を設け、これらを合わせたものを差分存在領域としてもよい。また、動画アプリケーションを検出し、そのアプリケーションの画面の位置情報により差分存在領域を検出してもよい。更に、マウスカーソルやキャラクタカーソルの位置を検出し、カーソルを含むブロックの集合を差分存在領域としてもよい。
Next, the difference presence
次に、全ての差分存在領域について、ステップS163からの動作を繰り返す(ステップS161S〜ステップS161E)。なお、図示していないが、現在のフレームに差分存在領域が存在しないならば、ステップS159からステップS175に直接進む。 Next, the operation from step S163 is repeated for all the difference existing areas (steps S161S to S161E). Although not shown, if there is no difference existing area in the current frame, the process proceeds directly from step S159 to step S175.
ステップS163では、差分存在領域サイズ検出部131は、差分存在領域の大きさを判断する。検出方法は、上述したとおりである。サイズが大である場合にはステップS165に進み、サイズが中である場合にはステップS167に進み、サイズが小である場合にはステップS169に進む。
In step S163, the difference existence area
ステップS165では、送信/コピー判断部137が、現在のフレームは、大の差分存在領域を送信するフレームであるのか否かの情報を送信フレーム判断部135から入力し、そうであれば、ステップS171に進み、そうでなければステップS173に進む。
In step S165, the transmission /
同様に、ステップS167では、送信/コピー判断部137が、現在のフレームは、中の差分存在領域を送信するフレームであるのか否かの情報を送信フレーム判断部135から入力し、そうであれば、ステップS171に進み、そうでなければステップS173に進む。
Similarly, in step S167, the transmission /
更に同様に、ステップS169では、送信/コピー判断部137が、現在のフレームは、小の差分存在領域を送信するフレームであるのか否かの情報を送信フレーム判断部135から入力し、そうであれば、ステップS171に進み、そうでなければステップS173に進む。
Similarly, in step S169, the transmission /
ステップS171では、差分存在領域送信部139が、現在扱っている差分存在領域に含まれる各ブロックのデータを符号化して、シンクライアントに送信する。
In step S171, the difference existence
ステップS173では、コピー部127が、現在扱っている差分存在領域の各ブロックのデータを1つ前のフレームの画面データを格納しているフレームメモリ(偶数フレームメモリ123又は奇数フレームメモリ125)から現在のフレームの画面データを格納しているフレームメモリ(奇数フレームメモリ125又は偶数フレームメモリ123)にコピーする。
In step S173, the
ステップS161の繰り返しが終了したならば、次の出力フレームの画面データを入力し(ステップS175)、ステップS153に戻る。 When the repetition of step S161 is completed, the screen data of the next output frame is input (step S175), and the process returns to step S153.
次に、差分存在領域のうち送信しない差分存在領域をフレームメモリ間でコピーすることの意義について説明する。 Next, the significance of copying the difference existence area not transmitted among the difference existence areas between the frame memories will be described.
例えば、図13に示すように、中程度の大きさの差分存在領域を含む画面データがあったとする。第nフレームの中程度の大きさの差分領域の内容はAであり、第(n+1)フレームの中程度の大きさの差分領域の内容はBであり、第(n+2)フレームの中程度の大きさの差分領域の内容もBであるとする。中程度の大きさの差分領域については、フレームレートを1/2に落とすので、2フレームにつき1フレームを送信する。そうすると、第nフレームの次に第(n+2)フレームのデータを送信する。従って、第nフレームでは、内容がAである中程度の大きさの差分存在領域に含まれるブロックのデータを送信し、第(n+2)フレームでは、内容がBである中程度の大きさの差分存在領域に含まれるブロックのデータを送信する必要がある。 For example, as shown in FIG. 13, it is assumed that there is screen data including a medium-sized difference existence area. The content of the medium size difference area of the nth frame is A, the content of the medium size difference area of the (n + 1) th frame is B, and the medium size of the (n + 2) th frame. The content of the difference area is also B. For the medium difference area, the frame rate is reduced to ½, so one frame is transmitted for every two frames. Then, the (n + 2) th frame data is transmitted after the nth frame. Therefore, in the nth frame, the data of the block included in the medium size difference existence area whose content is A is transmitted, and in the (n + 2) th frame, the medium size difference whose content is B is transmitted. It is necessary to transmit block data included in the existing area.
ところが、図14に示すように、フレームメモリ間で差分存在領域のコピーを行わない場合には、第(n+2)フレームで内容Bと内容Bとを比較することとなり、結果として、差分がないという判断がなされる。従って、第(n+2)フレームの内容がBの中程度の大きさの差分存在領域が送信されないこととなってしまう。 However, as shown in FIG. 14, when the difference existence area is not copied between the frame memories, the content B and the content B are compared in the (n + 2) th frame, and as a result, there is no difference. Judgment is made. Therefore, the difference existing area having the medium size of the (n + 2) th frame is not transmitted.
これに対し、図15に示すように、本発明に従って、フレームメモリ間で差分存在領域のコピーを行う場合には、第(n+2)フレームで内容Aと内容Bとを比較することとなり、結果として、差分があるという判断がなされる。従って、第(n+2)フレームの内容がBの中程度の大きさの差分存在領域が送信されることとなる。 On the other hand, as shown in FIG. 15, when copying the difference existence area between the frame memories according to the present invention, the contents A and B are compared in the (n + 2) th frame, and as a result A determination is made that there is a difference. Therefore, the difference existing area having the medium size of the (n + 2) -th frame is transmitted.
[実施形態2]
実施形態1では、差分存在領域の送信レートを差分存在領域の大きさのみによって決めていたが、実施形態2では、差分存在領域の送信レートを差分存在領域の大きさ及び動き量履歴によって決める。
[Embodiment 2]
In the first embodiment, the transmission rate of the difference existing area is determined only by the size of the difference existing area. In the second embodiment, the transmission rate of the difference existing area is determined by the size of the difference existing area and the motion amount history.
図16は、実施形態2による本発明の実施形態2による画面データ送信装置の構成を示すブロック図である。図10と図16とを比較すると明らかなように、実施形態2では、実施形態1と比較し、動き量履歴計算部141が追加されている点が異なる。また、送信/コピー判断部137の動作が異なる。
FIG. 16 is a block diagram showing the configuration of the screen data transmitting apparatus according to the second embodiment of the present invention according to the second embodiment. As is clear when FIG. 10 is compared with FIG. 16, the second embodiment is different from the first embodiment in that a motion amount
動き量履歴は、画面の全ての32画素×32画素のブロックに対して存在する。図17は、各ブロックについての動き量履歴計算部141の動作を説明するためのフローチャートである。
The motion amount history exists for all blocks of 32 pixels × 32 pixels on the screen. FIG. 17 is a flowchart for explaining the operation of the motion amount
図17を参照すると、まず、動き量履歴Mを初期値に設定する(ステップS201)。次に、偶数フレームメモリ123に格納されているブロックと奇数フレームメモリ125に格納されている同位置のブロックとの間に差分があるか否かを判断する(ステップS203)。差分がある場合には(ステップS203でYES)、動き量履歴MにΔAを加算する(ステップS205)。差分がない場合には(ステップS203でNO)、動き量履歴MからΔBを減算する(ステップS207)。
Referring to FIG. 17, first, the motion amount history M is set to an initial value (step S201). Next, it is determined whether or not there is a difference between the block stored in the
ステップS205又はステップS207の次に、動き量履歴Mが上限値を上回るか否かを判断し(ステップS209)、そうである場合には(ステップS209でYES)、動き量履歴Mに上限値を設定する(ステップS211)。 After step S205 or step S207, it is determined whether or not the motion amount history M exceeds the upper limit value (step S209). If so (YES in step S209), an upper limit value is set in the motion amount history M. Set (step S211).
ステップS209又はステップS211の次に、動き量履歴Mが下限値を下回るか否かを判断し(ステップS213)、そうである場合には(ステップS213でYES)、動き量履歴Mに下限値を設定する(ステップS215)。 After step S209 or step S211, it is determined whether or not the motion amount history M is below the lower limit value (step S213). If so (YES in step S213), a lower limit value is set in the motion amount history M. It sets (step S215).
次のフレームが来たならば、ステップS203からの動作を繰り返す。 When the next frame comes, the operation from step S203 is repeated.
従って、動き量履歴Mは、各ブロックの差分が出現した頻度を示す量となる。 Therefore, the motion amount history M is an amount indicating the frequency at which the difference of each block appears.
図18は、レベルと送信フレームとの対応関係を示す。レベルは、差分存在領域のサイズから置き換わるものである。 FIG. 18 shows the correspondence between levels and transmission frames. The level replaces the size of the difference existence area.
レベル1では、毎フレーム差分存在領域のデータが送信される。レベル2では、2フレームにつき1フレームだけ差分存在領域のデータが送信される。レベル3では、3フレームにつき1フレームだけ差分存在領域のデータが送信される。レベル4では、4フレームにつき1フレームだけ差分存在領域のデータが送信される。レベル5では、5フレームにつき1フレームだけ差分存在領域のデータが送信される。
At
図19は、サイズと差分存在領域についての動き量履歴との組合せとレベルとの対応関係を示す。ここで、差分存在領域についての動き量履歴とは、各差分存在領域に存在するブロックに跨る動き量履歴の算術平均値、幾何平均値、中央値、最大値又は最小値などである。 FIG. 19 shows the correspondence between the size and the combination of the motion amount history for the difference existing area and the level. Here, the motion amount history for the difference existence region is an arithmetic average value, a geometric average value, a median value, a maximum value, a minimum value, or the like of the motion amount history across the blocks existing in each difference existence region.
図19を参照すると明らかなように、差分存在領域の大きさが同じ分類に属する場合であっても、動き量履歴が大きいほどレベルが大きくなる。従って、差分存在領域の大きさが同じ分類に属する場合であっても、動き量が大きいほどフレームレートが下がる。 As is clear from FIG. 19, even when the size of the difference existence area belongs to the same category, the level increases as the motion amount history increases. Therefore, even when the size of the difference existence area belongs to the same category, the frame rate decreases as the motion amount increases.
また、図19を参照すると明らかなように、動き量履歴が下限値である場合には、差分存在領域の大きさに関係なく、レベル1が選択される。従って、差分存在領域の大きさに関係なく、それまで動きがなかった領域に動きが生じたならば、遅延なく画面データが送られる。
As is clear from FIG. 19, when the motion amount history is the lower limit value,
図16に示す画面データ送信装置の動作を図20に示す。 The operation of the screen data transmission apparatus shown in FIG. 16 is shown in FIG.
図20を図12と比較すると明らかなように、実施形態2は、実施形態1と比較すると、ステップS163、S165、S167及びS169がステップS181、S183、S185、S187、S189及びS191に置き換わっている点のみが異なる。 As is clear when comparing FIG. 20 with FIG. 12, in the second embodiment, steps S163, S165, S167, and S169 are replaced with steps S181, S183, S185, S187, S189, and S191, as compared with the first embodiment. Only the point is different.
ステップS181では、送信/コピー判断部137が、現在の差分存在領域がどのレベルのものであるのかを判断する。現在の差分存在領域がレベル1のものである場合にはステップS183に進み、現在の差分存在領域がレベル2のものである場合にはステップS185に進み、現在の差分存在領域がレベル3のものである場合にはステップS187に進み、現在の差分存在領域がレベル4のものである場合にはステップS189に進み、現在の差分存在領域がレベル5のものである場合にはステップS191に進む。
In step S181, the transmission /
ステップS183では、現フレームはレベル1の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
In step S183, it is determined whether or not the current frame is a frame for sending a
同様に、ステップS185では、現フレームはレベル2の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
Similarly, in step S185, it is determined whether or not the current frame is a frame for sending a
同様に、ステップS187では、現フレームはレベル3の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
Similarly, in step S187, it is determined whether or not the current frame is a frame for sending a
同様に、ステップS189では、現フレームはレベル4の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
Similarly, in step S189, it is determined whether or not the current frame is a frame for sending a
同様に、ステップS191では、現フレームはレベル5の差分領域を送るフレームであるのか否かを判断し、そうであればステップS171に進み、そうでなければステップS173に進む。
Similarly, in step S191, it is determined whether or not the current frame is a frame for sending a
なお、本発明による画面データ送信装置は、ハードウェア、ソフトウェア又はこれらの組合せにより実現することができる。 The screen data transmission apparatus according to the present invention can be realized by hardware, software, or a combination thereof.
本発明は、画面転送型シンクライアントシステムなどの画面を転送するシステムに適用することができる。 The present invention can be applied to a screen transfer system such as a screen transfer type thin client system.
121 書込部
123 偶数フレームメモリ
125 奇数フレームメモリ
127 コピー部
129 差分存在領域検出部
131 差分存在領域サイズ検出部
133 フレーム番号カウンタ
135 送信フレーム判断部
137 送信/コピー判断部
139 差分存在領域送信部
141 動き量履歴計算部
121
Claims (6)
前記差分検出手段の検出結果が肯定的であるブロックのデータを送信する送信手段と、
差分存在領域に含まれるブロックのフレームレートを、出力フレームレートよりも、低くするフレームレート低減手段と、
を備えることを特徴とする画面データ送信装置。 For each of the plurality of blocks included in the first screen frame, it is detected whether or not there is a difference from the block at the corresponding position included in the second screen frame before the first screen frame. Difference detection means;
Transmitting means for transmitting data of a block in which the detection result of the difference detecting means is positive;
Frame rate reduction means for lowering the frame rate of the blocks included in the difference existing area from the output frame rate;
A screen data transmission device comprising:
差分存在領域に含まれるブロックであるが、出力されないブロックをフレームメモリ間でコピーする手段を更に備え、
前回に送ったブロックと現フレームの対応する位置にあるブロックとの間に差分がある場合に、該差分を前記差分検出手段が検出できるようにすることを特徴とする画面データ送信装置。 The screen data transmission device according to claim 1,
Means further comprising means for copying blocks that are included in the difference existing area but are not output between the frame memories;
A screen data transmitting apparatus, characterized in that, when there is a difference between a block sent last time and a block at a corresponding position of the current frame, the difference detecting means can detect the difference.
前記フレームレート低減手段は、差分存在領域が広ければ広いほど、その差分存在領域のフレームレートを、より低くすることを特徴とする画面データ送信装置。 In the screen data transmission device according to claim 1 or 2,
The screen data transmitting apparatus according to claim 1, wherein the frame rate reducing means lowers the frame rate of the difference existence area as the difference existence area is wider.
前記フレームレート低減手段は、差分存在領域に含まれる各ブロックの差分が出現した頻度を示す量を基にした量である動き量履歴が大きければ大きいほど、その差分存在領域のフレームレートを、より低くすることを特徴とする画面データ送信装置。 In the screen data transmission device according to any one of claims 1 to 3,
The frame rate reduction means, the larger the motion amount history, which is an amount based on the amount indicating the frequency of occurrence of the difference of each block included in the difference existing region, the greater the frame rate of the difference existing region, A screen data transmission device characterized by being lowered.
前記差分検出手段の検出結果が肯定的であるブロックのデータを送信する送信ステップと、
差分存在領域に含まれるブロックのフレームレートを、出力フレームレートよりも、低くするフレームレート低減ステップと、
を備えることを特徴とする画面データ送信方法。 For each of the plurality of blocks included in the first screen frame, it is detected whether or not there is a difference from the block at the corresponding position included in the second screen frame before the first screen frame. A difference detection step;
A transmission step of transmitting data of a block in which the detection result of the difference detection means is positive;
A frame rate reduction step for lowering the frame rate of the blocks included in the difference existing area from the output frame rate;
A screen data transmission method comprising:
前記差分検出手段の検出結果が肯定的であるブロックのデータを送信する送信ステップと、
差分存在領域に含まれるブロックのフレームレートを、出力フレームレートよりも、低くするフレームレート低減ステップと、
を備えることを特徴とする画面データ送信方法をコンピュータに実行させるための画面データ送信プログラム。 For each of the plurality of blocks included in the first screen frame, it is detected whether or not there is a difference from the block at the corresponding position included in the second screen frame before the first screen frame. A difference detection step;
A transmission step of transmitting data of a block in which the detection result of the difference detection means is positive;
A frame rate reduction step for lowering the frame rate of the blocks included in the difference existing area from the output frame rate;
A screen data transmission program for causing a computer to execute a screen data transmission method.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008087121A JP5071727B2 (en) | 2008-03-28 | 2008-03-28 | Screen data transmitting apparatus, screen data transmitting method, and screen data transmitting program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008087121A JP5071727B2 (en) | 2008-03-28 | 2008-03-28 | Screen data transmitting apparatus, screen data transmitting method, and screen data transmitting program |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2009246415A true JP2009246415A (en) | 2009-10-22 |
JP5071727B2 JP5071727B2 (en) | 2012-11-14 |
Family
ID=41307914
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008087121A Expired - Fee Related JP5071727B2 (en) | 2008-03-28 | 2008-03-28 | Screen data transmitting apparatus, screen data transmitting method, and screen data transmitting program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5071727B2 (en) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011176732A (en) * | 2010-02-25 | 2011-09-08 | Dainippon Printing Co Ltd | Thin client system, thin client server, thin client terminal, program and storage medium |
JP2011198120A (en) * | 2010-03-19 | 2011-10-06 | Nec Personal Products Co Ltd | Image transfer device, method, and program |
JP2012015868A (en) * | 2010-07-01 | 2012-01-19 | Fujitsu Ltd | Information processor, image transmission program, image display program, and image display method |
JP2012129712A (en) * | 2010-12-14 | 2012-07-05 | Awind Inc | Coding method of screen frame, and electronic device applied with the same |
JP2014222894A (en) * | 2010-10-19 | 2014-11-27 | オトイ、インコーポレイテッド | Method, program, and apparatus for streaming composite video image using stateless compression |
JP2015505208A (en) * | 2011-12-20 | 2015-02-16 | インテル・コーポレーション | Enhanced wireless display |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02119486A (en) * | 1988-10-28 | 1990-05-07 | Nec Corp | Coding control method for moving picture signal and coding controller |
JP2001103491A (en) * | 1999-07-16 | 2001-04-13 | Sony Corp | Transmitter, receiver and signal transmission system using them |
JP2003199102A (en) * | 2001-12-25 | 2003-07-11 | Matsushita Electric Ind Co Ltd | Video encoder |
JP2004086550A (en) * | 2002-08-27 | 2004-03-18 | Matsushita Electric Ind Co Ltd | Display image updating system |
JP2004295304A (en) * | 2003-03-26 | 2004-10-21 | Fujitsu Component Ltd | Switching device, image transmiiion device, image transmission method, image display method, image transmission program and image display program |
-
2008
- 2008-03-28 JP JP2008087121A patent/JP5071727B2/en not_active Expired - Fee Related
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JPH02119486A (en) * | 1988-10-28 | 1990-05-07 | Nec Corp | Coding control method for moving picture signal and coding controller |
JP2001103491A (en) * | 1999-07-16 | 2001-04-13 | Sony Corp | Transmitter, receiver and signal transmission system using them |
JP2003199102A (en) * | 2001-12-25 | 2003-07-11 | Matsushita Electric Ind Co Ltd | Video encoder |
JP2004086550A (en) * | 2002-08-27 | 2004-03-18 | Matsushita Electric Ind Co Ltd | Display image updating system |
JP2004295304A (en) * | 2003-03-26 | 2004-10-21 | Fujitsu Component Ltd | Switching device, image transmiiion device, image transmission method, image display method, image transmission program and image display program |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011176732A (en) * | 2010-02-25 | 2011-09-08 | Dainippon Printing Co Ltd | Thin client system, thin client server, thin client terminal, program and storage medium |
JP2011198120A (en) * | 2010-03-19 | 2011-10-06 | Nec Personal Products Co Ltd | Image transfer device, method, and program |
JP2012015868A (en) * | 2010-07-01 | 2012-01-19 | Fujitsu Ltd | Information processor, image transmission program, image display program, and image display method |
US8819270B2 (en) | 2010-07-01 | 2014-08-26 | Fujitsu Limited | Information processing apparatus, computer-readable non transitory storage medium storing image transmission program, and computer-readable storage medium storing image display program |
JP2014222894A (en) * | 2010-10-19 | 2014-11-27 | オトイ、インコーポレイテッド | Method, program, and apparatus for streaming composite video image using stateless compression |
JP2012129712A (en) * | 2010-12-14 | 2012-07-05 | Awind Inc | Coding method of screen frame, and electronic device applied with the same |
JP2015505208A (en) * | 2011-12-20 | 2015-02-16 | インテル・コーポレーション | Enhanced wireless display |
US9756333B2 (en) | 2011-12-20 | 2017-09-05 | Intel Corporation | Enhanced wireless display |
Also Published As
Publication number | Publication date |
---|---|
JP5071727B2 (en) | 2012-11-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
AU2010341605B2 (en) | Systems and methods for video-aware screen capture and compression | |
JP5071727B2 (en) | Screen data transmitting apparatus, screen data transmitting method, and screen data transmitting program | |
JP5628300B2 (en) | Method, apparatus and computer program product for generating graphic objects with desirable physical features for use in animation | |
US8953676B2 (en) | Information processing apparatus, computer-readable storage medium storing image transmission program, and computer-readable non transitory storage medium storing image display program | |
CN107515759B (en) | Screen capture method and device, electronic equipment and readable storage medium | |
JP5678743B2 (en) | Information processing apparatus, image transmission program, image transmission method, and image display method | |
US9247029B1 (en) | Efficient processing of streams of images within a moving window session | |
US20080092078A1 (en) | Scroll Position Estimation Apparatus and Method | |
US20150035724A1 (en) | Performance Enhancement in Virtual Desktop Infrastructure (VDI) | |
US9485290B1 (en) | Method and system for controlling local display and remote virtual desktop from a mobile device | |
TWI401968B (en) | Encoding method of screen frame and electronic apparatus applied therewith | |
US20180300250A1 (en) | Method and apparatus for storing data | |
US20200142571A1 (en) | Optimizing Window Resize Actions for Remoted Applications | |
CN108337246B (en) | Media playback apparatus and media service apparatus preventing playback delay | |
JP2022509191A (en) | Video decoding control methods, devices, electronic devices and storage media | |
US10432681B1 (en) | Method and system for controlling local display and remote virtual desktop from a mobile device | |
US20160155429A1 (en) | Information processing apparatus and terminal device | |
EP3043251A1 (en) | Method of displaying content and electronic device implementing same | |
US20120005587A1 (en) | Performing Remoting Operations For Different Regions Of A Display Surface At Different Rates | |
JP5110304B2 (en) | Screen data transmitting apparatus, screen data transmitting method, and screen data transmitting program | |
US9953015B2 (en) | Displaying a document file target area based on history of display settings | |
US9495729B2 (en) | Display method and electronic device | |
CN115390689A (en) | Touch data compression method and device, storage medium and interactive panel | |
US20210109649A1 (en) | Devices, Systems and Processes for Facilitating User Adaptive Progressions Through Content | |
JP5168486B2 (en) | Screen data transmitting apparatus and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100729 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100729 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110214 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20110509 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20111228 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120215 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120413 |
|
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: 20120726 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20120808 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20150831 Year of fee payment: 3 |
|
LAPS | Cancellation because of no payment of annual fees |