JP5168486B2 - Screen data transmitting apparatus and method - Google Patents
Screen data transmitting apparatus and method Download PDFInfo
- Publication number
- JP5168486B2 JP5168486B2 JP2008223468A JP2008223468A JP5168486B2 JP 5168486 B2 JP5168486 B2 JP 5168486B2 JP 2008223468 A JP2008223468 A JP 2008223468A JP 2008223468 A JP2008223468 A JP 2008223468A JP 5168486 B2 JP5168486 B2 JP 5168486B2
- Authority
- JP
- Japan
- Prior art keywords
- compression
- operated
- screen
- frame
- block
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Compression Or Coding Systems Of Tv Signals (AREA)
Description
本発明は、画面データを送信する画面データ送信装置及び画面データ送信方法に関し、特に、サーバ装置に備わり、シンクライアント(thin client)に画面を送信する画面データ送信装置及びその画面データ送信装置で行われる画面データ送信方法に関する。 The present invention relates to a screen data transmission apparatus and a screen data transmission method for transmitting screen data, and in particular, a screen data transmission apparatus that is provided in a server apparatus and transmits a screen to a thin client, and the screen data transmission apparatus. Related to the screen data transmission method.
近年、シンクライアント及びそれに対応したサーバの両者を含むシンクライアントシステムが普及してきている。シンクライアントシステムにおいては、サーバがアプリケーションプログラムやデータファイルを保有し、シンクライアントは、必要最低限の機能を有する。 In recent years, a thin client system including both a thin client and a server corresponding thereto has 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を参照すると、基本的な画面データ送信装置は、ブロック化部801、フレームメモリ803、減算器805、ブロック間差分検出部807、送信ブロック判断部809、符号化部811及びバッファ813を備える。
Referring to FIG. 1, the basic screen data transmission apparatus includes a
ブロック化部801は、入力した画面データの順序を入れ替えることにより画面データをブロック化する。画面ブロックは例えば、図2に示すように32画素×32画素のサイズを有する。
The
フレームメモリ803は、画面データを1フレーム遅延させる。
The
減算器805は、現在の画素の値から1フレーム前の同一位置の画素の値を減算する。
The
ブロック間差分検出部807は、各ブロックに含まれる画素の減算器805による減算値を基に、現在のブロックと1フレーム前の同一位置のブロックとの間の差分を検出する。例えば、ブロック間差分検出部807は、ブロックに含まれる全ての画素についての減算値の絶対値の和をブロック間差分とする。また、例えば、ブロック間差分検出部807は、ブロックに含まれる全ての画素の減算値の絶対値のうち最大の絶対値をブロック間差分とする。
The inter-block
送信ブロック判断部809は、現在のブロックの画面データをシンクライアントに送信するべきか否かを判断する。例えば、送信ブロック判断部809は、ブロック間差分の値が所定の送信判断用のしきい値よりも大きければ、現在のブロックの画面データをシンクライアントに送信するべきであると判断する。所定の送信判断用のしきい値は、例えば、ゼロであるが、これよりも大きい値であってもよい。
The transmission
符号化部811は、送信ブロック判断部809により画面データを送信するべきであると判断されたブロックの画面データを圧縮符号化し、圧縮符号化された画面データをシンクライアントに送信する。圧縮符号化のためには、例えば、ウェーブレット変換、ハフマン符号化などが用いられる。送信データのフレームあたりのビット数が目標ビットレートに対応するビット数から離れている場合には、符号化パラメータを変更して符号化をやり直す。符号化をやり直すためには、現フレームのブロックのデータをバッファ813に一時記憶する。符号化パラメータは、例えば、再量子化幅、空間周波数帯域幅などである。
The
図3にシンクライアントのうち表示画面に関連する部分を示す。 FIG. 3 shows a portion related to the display screen in the thin client.
復号部821は、符号化部811により圧縮符号化された画面データを復号する。
The
フレームメモリ823は、復号された画面データを格納する。
The
表示部825は、フレームメモリ823に格納されている画面データを読み出して、表示装置に出力する。
The
図4に図1に示す基本的な画面データ送信装置の動作を説明するためのフローチャートを示す。 FIG. 4 shows a flowchart for explaining the operation of the basic screen data transmitting apparatus shown in FIG.
図4を参照すると、まず、ブロック化部801は、画面データをブロック化する(ステップS901)。
Referring to FIG. 4, first, the blocking
次に、現フレームの各ブロックについてステップS905〜S913を繰り返す(ステップS903)。 Next, steps S905 to S913 are repeated for each block of the current frame (step S903).
ステップS905では、前フレームの現ブロックデータをフレームメモリ803から読み出す。ここで、ブロックデータとは、ブロックを構成する画素の画面データの集合のことである。
In step S905, the current block data of the previous frame is read from the
次に、ステップS907では、現フレームの現ブロックデータをフレームメモリ803に書き込む。
In step S907, the current block data of the current frame is written into the
次に、ステップS909では、減算器805が、現フレームの現ブロックの各画素について、前フレームの同位置の画素との差分を計算する。
Next, in step S909, the
次に、ステップS911では、ブロック間差分検出部807は、現フレームの現ブロックについてブロック間差分を検出する。
Next, in step S911, the inter-block
次に、ステップS913では、送信ブロック判断部809は、現フレームの現ブロックの画面データを符号化して送信するべきか否かを判断する。判断方法は送信ブロック判断部809の説明で述べたとおりである。
Next, in step S913, the transmission
ステップS903の繰り返しが終了したならば、現フレームの各ブロックについてステップS917又はステップS917及びステップS919を繰り返す(ステップS915)。 When the repetition of step S903 is completed, step S917 or step S917 and step S919 are repeated for each block of the current frame (step S915).
ステップS917では、現ブロックは符号化するべきブロックであるのか否かのステップS913での判断の結果を取得する。このためには、ステップS913での判断結果をバッファ813に一時記憶する。
In step S917, the result of determination in step S913 as to whether or not the current block is a block to be encoded is acquired. For this purpose, the determination result in step S913 is temporarily stored in the
ステップS917で取得した判断結果が肯定的である場合には(ステップS917でYES)、現ブロックを符号化する(ステップS919)。 If the determination result obtained in step S917 is affirmative (YES in step S917), the current block is encoded (step S919).
ステップS915の繰り返しが終了したならば、現フレームの符号化するべきブロックを符号化して得られた符号の全ビット数が目標ビットレートに対応するビット数にほぼ等しいか否かを判断する(ステップS921)。この判断のためにも、現フレームの全符号をバッファ813に一時記憶する。
When the repetition of step S915 is completed, it is determined whether or not the total number of bits of the code obtained by encoding the block to be encoded in the current frame is substantially equal to the number of bits corresponding to the target bit rate (step S15). S921). For this determination as well, all codes of the current frame are temporarily stored in the
ステップS921の結果が肯定的である場合には(ステップS921でYES)、バッファ813に一時記憶していた現フレームの全符号を送信する(ステップS923)。
If the result of step S921 is affirmative (YES in step S921), all codes of the current frame temporarily stored in the
ステップS925の結果が否定的である場合には(ステップS925でNO)、符号化パラメータを変更し(ステップS925)、ステップS915に戻る。 If the result of step S925 is negative (NO in step S925), the encoding parameter is changed (step S925), and the process returns to step S915.
上述した画面データ送信装置の構成と動作により、次に説明するような送信が行われる。 Transmission as described below is performed by the configuration and operation of the screen data transmission apparatus described above.
すなわち、例えば、第nフレームが図5(a)に示すようなものであり、第(n+1)フレームで図5(b)に示すように新たなウィンドウ701が現れた場合、図5(c)に示すようなウィンドウ701を含むブロック群703の画面データが圧縮符号化されて送信される。
That is, for example, when the nth frame is as shown in FIG. 5A and a
また、例えば、自動車705が第nフレームで図6(a)に示すような位置にあり、第(n+1)フレームで図6(b)に示すような位置にある場合には、図6(c)に示すような、自動車705が走り去った後の背景を含むブロック群707と新たに自動車705を含むこととなったブロック群709の画面データが圧縮符号化されて送信される。
上述した方法では、各ブロックが含む内容の種類とは無関係に圧縮符号化の圧縮率が決まってしまう。また、送信される画面のフレームレートは、画面データ生成部105で生成された画面のフレームレートと同一である。 In the above-described method, the compression rate of compression encoding is determined regardless of the type of content included in each block. The frame rate of the screen to be transmitted is the same as the frame rate of the screen generated by the screen data generation unit 105.
しかし、シンクライアントのユーザにとってみれば、コンピュータマウス(以下、単に「マウス」という。)のマウスポインタの画質はさほど高くなくてもよく、その代わり、マウスの操作性を向上させるためには、マウスポインタの軌跡はなだらかである必要があるため、所定値以上のフレームレートを必要とする。他方、シンクライアントのユーザにとってみれば、ユーザにより入力された文字の画質が低いと、文字が見にくくなるため、ユーザにより入力された文字の画質は所定の程度以上に良い必要があり、その代わり、フレームレートが或る程度低くて、そのために文字の表示されるタイミングが多少遅れても、実用上問題とならない。 However, for a thin client user, the image quality of the mouse pointer of a computer mouse (hereinafter simply referred to as “mouse”) may not be so high. Instead, in order to improve the operability of the mouse, Since the locus of the pointer needs to be gentle, a frame rate higher than a predetermined value is required. On the other hand, for a thin client user, if the image quality of the character input by the user is low, it becomes difficult to see the character. Therefore, the image quality of the character input by the user needs to be better than a predetermined level. Even if the frame rate is somewhat low and the timing of displaying characters is somewhat delayed, there is no practical problem.
そこで、本発明は、シンクライアント側において、マウスポインタについては、画質が多少犠牲になっても、軌跡がなだらかになるようにし、且つ、文字については、キー入力から表示までの遅延時間が多少犠牲になっても、高画質が得られるような画面データ送信装置及び画面データ送信方法を提供することを目的とする。 Therefore, according to the present invention, on the thin client side, even if the image quality is somewhat sacrificed for the mouse pointer, the locus is made smooth, and for characters, the delay time from key input to display is somewhat sacrificed. It is an object of the present invention to provide a screen data transmitting apparatus and a screen data transmitting method that can obtain high image quality even when the image quality is changed.
本発明の第1の観点によれば、第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと所定量を超える差分があるか否かを検出する差分検出手段と、前記差分検出手段の検出結果が肯定的であるブロックのデータが所定のデータ量の範囲内に収まるようにフレームレート及び圧縮率を制御して前記データの圧縮符号化を行う圧縮符号化制御手段と、前記圧縮符号化制御手段により前記圧縮符号化されたデータを送信する送信手段と、を備え、更に前記圧縮符号化制御手段が、前記送信手段により送信されるブロックのうち、キーボードが操作されている期間のブロックのフレームレートをポインティングデバイスが操作されている期間のフレームレートよりも低くするフレームレート調整手段と、前記送信手段により送信されるブロックのうち、前記キーボードが操作されている期間のブロックの圧縮率を前記ポインティングデバイスが操作されている期間のブロックの圧縮率よりも低くする圧縮率制御手段と、を備えることを特徴とする画面データ送信装置が提供される。 According to the first aspect of 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 in a corresponding position. A difference detecting means for detecting whether or not there is a difference exceeding a predetermined amount from the block; and a frame rate and a block so that the data of the block for which the detection result of the difference detecting means is positive falls within a predetermined data amount range. Compression encoding control means for controlling the compression rate to perform compression encoding of the data, and transmission means for transmitting the data encoded by the compression encoding control means , and further comprising the compression encoding control means, out of the blocks transmitted by said transmission means, the period of the frame rate of a block of time the keyboard is operated pointing device is operated A frame rate adjusting means for lowering a frame rate; and a compression ratio of a block during a period when the pointing device is operated among blocks transmitted by the transmission means during a period when the keyboard is operated And a compression rate control means for making the rate lower than the rate.
また、本発明の第2の観点によれば、第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと所定量を超える差分があるか否かを検出する差分検出ステップと、前記差分検出ステップの検出結果が肯定的であるブロックのデータが所定のデータ量の範囲内に収まるようにフレームレート及び圧縮率を制御して前記データの圧縮符号化を行う圧縮符号化制御ステップと、前記圧縮符号化制御ステップにより前記圧縮符号化されたデータを送信する送信ステップと、を含み、更に前記圧縮符号化制御ステップが、前記送信ステップにより送信されるブロックのうち、キーボードが操作されている期間のブロックのフレームレートをポインティングデバイスが操作されている期間のフレームレートよりも低くするフレームレート調整ステップと、前記送信ステップにより送信されるブロックのうち、前記キーボードが操作されている期間のブロックの圧縮率を前記ポインティングデバイスが操作されている期間のブロックの圧縮率よりも低くする圧縮率制御ステップと、を含むことを特徴とする画面データ送信方法が提供される。 According to the second aspect of 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 corresponds to the position. A difference detection step for detecting whether or not there is a difference exceeding a predetermined amount with a block in the frame, and a frame so that the data of the block for which the detection result of the difference detection step is positive falls within a predetermined data amount range includes a compression coding control step of performing compression coding of the data by controlling the rate and compression ratio, and a transmission step of transmitting the compressed data encoded by the compression encoding control step, further the compressed encoding control step, of the block transmitted by said transmitting step, the frame rate of a block of time the keyboard is operated Pointe A frame rate adjusting step for lowering a frame rate during a period in which the operating device is operated, and a compression rate of the block in a period in which the keyboard is operated among the blocks transmitted by the transmitting step. a compression ratio control step to be lower than the compression rate of the block operation is specified period of, screen data transmitting method characterized in that it comprises a are provided.
更に、本発明の第3の観点によれば、第1の画面フレームに含まれる複数のブロックの各々について、前記第1の画面フレームよりも前の第2の画面フレームに含まれ、対応する位置にあるブロックと所定量を超える差分があるか否かを検出する差分検出ステップと、前記差分検出ステップの検出結果が肯定的であるブロックのデータが所定のデータ量の範囲内に収まるようにフレームレート及び圧縮率を制御して前記データの圧縮符号化を行う圧縮符号化制御ステップと、前記圧縮符号化制御ステップにより前記圧縮符号化されたデータを送信する送信ステップと、を含み、更に前記圧縮符号化制御ステップが、前記送信ステップにより送信されるブロックのうち、キーボードが操作されている期間のブロックのフレームレートをポインティングデバイスが操作されている期間のフレームレートよりも低くするフレームレート調整ステップと、前記送信ステップにより送信されるブロックのうち、前記キーボードが操作されている期間のブロックの圧縮率を前記ポインティングデバイスが操作されている期間のブロックの圧縮率よりも低くする圧縮率制御ステップと、を含むことを特徴とする画面データ送信方法をコンピュータに実行させるためのプログラムが提供される。 Further, according to the third aspect of 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 corresponds to the position. A difference detection step for detecting whether or not there is a difference exceeding a predetermined amount with a block in the frame, and a frame so that the data of the block for which the detection result of the difference detection step is positive falls within a predetermined data amount range includes a compression coding control step of performing compression coding of the data by controlling the rate and compression ratio, and a transmission step of transmitting the compressed data encoded by the compression encoding control step, further the compressed encoding control step, of the block transmitted by said transmitting step, the frame rate of a block of time the keyboard is operated Pointe A frame rate adjusting step for lowering a frame rate during a period in which the operating device is operated, and a compression rate of the block in a period in which the keyboard is operated among the blocks transmitted by the transmitting step. There is provided a program for causing a computer to execute a screen data transmission method characterized by including a compression rate control step of making the compression rate lower than the compression rate of a block during an operated period.
本発明によれば、シンクライアント側において、ポインティングデバイスのポインタについては、画質が多少犠牲になっても、軌跡がなだらかになるようになり、且つ、文字については、キー入力から表示までの遅延時間が多少犠牲になっても、高画質が得られる。 According to the present invention, on the thin client side, with respect to the pointer of the pointing device, the trajectory becomes gentle even if the image quality is somewhat sacrificed, and for characters, the delay time from key input to display High image quality can be obtained even if there is some sacrifice.
以下、図面を参照して本発明を実施するための最良の形態について詳細に説明する。 The best mode for carrying out the present invention will be described below in detail with reference to the drawings.
図7は、本発明の実施形態による画面データ送信装置及びその周辺部の概要を示すブロック図である。 FIG. 7 is a block diagram showing an outline of the screen data transmitting apparatus and its peripheral part according to the embodiment of the present invention.
図7を参照すると、本発明の実施形態による画面データ送信装置及びその周辺部は、オペレーティングシステム101、デバイスドライバ群103、画面データ生成部105、第1フレームメモリ107、第2フレームメモリ109、画面データ書込部111、画面圧縮符号化部113、画面符号送信部115、HID(Human Interface Device)情報デコード部117、フレームレート制御部119及び圧縮率制御部121を含む。
Referring to FIG. 7, the screen data transmission apparatus and its peripheral units according to the embodiment of the present invention include an
オペレーティングシステム101は、例えば、Windows(登録商標)やLinux(登録商標)などである。
The
デバイスドライバ群103は、キーボードドライバ、マウスドライバなどのデバイスドライバを含み、オペレーティングシステムとハードウェアの間の層に位置する。
The
画面データ生成部105は、オペレーティングシステム101からの指示などに従って画面データを生成する。画面データ生成部105は、例えば、グラフィックスチップを含む。
The screen data generation unit 105 generates screen data in accordance with an instruction from the
第1フレームメモリ107は、画面データ生成部105により生成された画面データをフレーム単位で一時記憶する。第2のフレームメモリ109も、同様に、画面データ生成部105により生成された画面データをフレーム単位で一時記憶する。
The
画面データ書込部111は、画面データ生成部105により生成された画面データのうち第1フレームメモリ107又は第2フレームメモリ109に書き込むべき画面データをフレーム単位で第1フレームメモリ107又は第2フレームメモリ109に交互に書き込む。
The screen data writing unit 111 includes screen data to be written in the
画面圧縮符号化部113は、第1フレームメモリ107又は第2フレームメモリ109に一時記憶されているある着目しているフレームの画面データと第2フレームメモリ109又は第1フレームメモリ107に一時記憶されているそれよりも前のフレームの画面データとの差分をブロック毎に算出し、ブロック間の差分が所定値を超えるブロックについて、その着目しているフレームに含まれる画面データを圧縮符号化する。
The screen compression encoding unit 113 temporarily stores screen data of a frame of interest temporarily stored in the
画面符号送信部115は、画面圧縮符号化部113での圧縮符号化の結果得られた画面符号をクライアントに送信する。
The screen
HID情報デコード部117は、クライアントから送信されてくるHID情報をデコードする。HID情報は、現在ユーザにより操作されているHIDがキーボードであるのか、又は、マウスであるのかを示すための情報を含む。また、前者の場合であれば、キーボードのどのキーが押下されているのかの情報を含む。更に、後者の場合であれば、マウスの移動量又はマウスの座標を示す情報を含む。また、後者の場合であれば、HID情報はマウスのボタンの操作情報(クリックに関する情報、ホイル操作に関する情報など)も含む。ポインティングデバイスとしてマウスの代わりにタッチパネルやタブレットを利用した場合でも同様である。
The HID
HID情報デコード部117によりデコードされたHID情報は、デバイスドライバ群103に供給される。すなわち、デバイスドライバ群103にとってみれば、クライアントのキーボードとマウスから直接的に操作情報が得られる場合と同様な情報が得られる。
The HID information decoded by the HID
また、現在ユーザにより操作されているHIDがキーボードであるのか、又は、マウスであるのかを示すための情報は、フレームレート制御部119及び圧縮率制御部121にも供給される。
Information indicating whether the HID currently operated by the user is a keyboard or a mouse is also supplied to the frame
フレームレート制御部119は、HID情報デコード部117から供給された、現在ユーザにより操作されているHIDがキーボードであるのか、又は、マウスであるのかを示すための情報に対応したフレームレートで、画面データ書込部111が、画面データ生成部105で生成された画面データを第1フレームメモリ107又は第2フレームメモリ109に書き込むために、画面データ書込部111を制御する。すなわち、フレームレート制御部119は、現在ユーザにより操作されているHIDがキーボードである場合には、画面データ書込部111が低いフレームレート(例えば、15fps、10fps、5fpsなど)で画面データを第1フレームメモリ107又は第2フレームメモリ109に書き込み、現在ユーザにより操作されているHIDがマウスである場合には、画面データ書込部111が高いフレームレート(例えば、60fps、30fpsなど)で画面データを第1フレームメモリ107又は第2フレームメモリ109に書き込むように画面データ書込部111を制御する。高いフレームレートとして、画面データ生成部105が生成する画面データのフレームレートと同一のフレームレートを採用してもよい。
The frame
圧縮率制御部121は、HID情報デコード部117から供給された、現在ユーザにより操作されているHIDがキーボードであるのか、又は、マウスであるのかを示すための情報に対応した圧縮パラメータで、画面圧縮符号化部113が、画面データ生成部105で生成された画面データのうち上述したように選択されたブロックのデータを圧縮符号化するために、画面圧縮符号化部113を制御する。すなわち、圧縮率制御部121は、現在ユーザにより操作されているHIDがキーボードである場合には、画面圧縮符号化部113が低い圧縮率で画面データを圧縮符号化し、現在ユーザにより操作されているHIDがマウスである場合には、画面圧縮符号化部113が高い圧縮率で画面データを圧縮符号化するように画面圧縮符号化部113を制御する。なお、同一の圧縮符号化を用いた場合、圧縮率が低いほど、画質が高くなる。
The compression
また、圧縮率制御部121は、画面データ書込部111が画面データを第1フレームメモリ107又は第2フレームメモリ109に書き込んだフレームの次のフレームのみで動作し、その他のフレームでは動作を休止する。この圧縮制御部121の動作と上述した画面データ書込部111の動作が連携することにより、現在ユーザにより操作されているHIDがキーボードであるのか、又は、マウスであるのかに応じたフレームレートで画面データを圧縮することができるようになる。
The compression
次に、図7に示す本発明の実施形態による画面データ送信装置及びその周辺部の動作を図8を参照して説明する。 Next, operations of the screen data transmission apparatus and its peripheral parts according to the embodiment of the present invention shown in FIG. 7 will be described with reference to FIG.
クライアントとサーバが動作を開始すると、画面データ生成部105は、オペレーティングシステム101からの指示に基づいて、画面データを生成する動作に入る(ステップS201)。 When the client and the server start operation, the screen data generation unit 105 enters an operation for generating screen data based on an instruction from the operating system 101 (step S201).
これと同時に、画面データ書込部111、画面圧縮符号化部113及び画面符号送信部115は、それぞれ、画面データを第1フレームメモリ107又は第2フレームメモリ109に書き込む動作(ステップS211)、画面を圧縮符号化する動作(ステップS213)及び画面圧縮符号を送信する動作(ステップS215)に入る。
At the same time, the screen data writing unit 111, the screen compression encoding unit 113, and the screen
更に、HID情報デコード部117、フレームレート制御部119及び圧縮率制御部121は、以下に説明する動作に入る。
Further, the HID
まず、HID情報デコード部117は、クライアントからHID情報が送信されてくるのを待つ(ステップS221)。
First, the HID
HID情報デコード部117は、クライアントからHID情報が送信されてきたならば(ステップS221でYES)、HID情報をデコードする(ステップS223)。
If the HID information is transmitted from the client (YES in step S221), the HID
次に、HID情報デコード部117は、HIDがキーボードであるのか、又は、マウスであるのかを調べる(ステップS225)。
Next, the HID
HIDがキーボードである場合には、フレームレート制御部119は、低いフレームレートを画面データ書込部111のレジスタ111−1に書き込む(ステップS227)。画面データ書込部111は、このレジスタに設定されたフレームレートで画面データを第1フレームメモリ107又は第2フレームメモリ109に書き込む。
If the HID is a keyboard, the frame
次に、圧縮率制御部121は、低い圧縮率を画面圧縮符号化部113のレジスタ113−1に書き込む(ステップS229)。画面圧縮符号化部113は、このレジスタに設定された圧縮率で画面データを圧縮符号化する。
Next, the compression
HIDがマウスである場合には、フレームレート制御部119は、高いフレームレートを画面データ書込部111のレジスタ111−1に書き込む(ステップS231)。画面データ書込部111は、このレジスタに設定されたフレームレートで画面データを第1フレームメモリ107又は第2フレームメモリ109に書き込む。
If the HID is a mouse, the frame
次に、圧縮率制御部121は、高い圧縮率を画面圧縮符号化部113のレジスタ113−1に書き込む(ステップS233)。画面圧縮符号化部113は、このレジスタに設定された圧縮率で画面データを圧縮符号化する。
Next, the compression
ステップS229又はS233を実行した後には、ステップS221に戻り、新たなHID情報がクライアントから送信されてくるのを待つ。 After executing Step S229 or S233, the process returns to Step S221 and waits for new HID information to be transmitted from the client.
次に、図7に示す本発明の実施形態による画面データ送信装置及びその周辺部の動作例を図9を参照して説明する。 Next, an example of the operation of the screen data transmitting apparatus and its peripheral part according to the embodiment of the present invention shown in FIG. 7 will be described with reference to FIG.
HIDがキーボードである期間T1においては、フレームレートは低く、且つ、圧縮率も低い。他方、HIDがマウスである期間T2においては、フレームレートは高く、且つ、圧縮率も高い。ここでのフレームレートは、通常のフレームレートと同一であってもよい。 In the period T1 when the HID is a keyboard, the frame rate is low and the compression rate is also low. On the other hand, in the period T2 in which the HID is a mouse, the frame rate is high and the compression rate is also high. The frame rate here may be the same as the normal frame rate.
また、HID情報がない期間では、フレームレート及び圧縮率は、通常のものである。 In addition, the frame rate and compression rate are normal during a period when there is no HID information.
HIDがキーボードである場合のフレームレートを通常のフレームレートよりも低いものとし、HIDがマウスである場合のフレームレートを通常のフレームレートよりも高いもの又はそれと同一のものとしてもよい。 The frame rate when the HID is a keyboard may be lower than the normal frame rate, and the frame rate when the HID is a mouse may be higher than or equal to the normal frame rate.
HIDがキーボードである場合の圧縮率を通常の圧縮率よりも低いものとし、HIDがマウスである場合の圧縮率を通常の圧縮率よりも高いものとしてもよい。 The compression rate when the HID is a keyboard may be lower than the normal compression rate, and the compression rate when the HID is a mouse may be higher than the normal compression rate.
また、図7に示す画面データ送信装置及びその周辺部は、ハードウェアによって構築することも可能であるが、コンピュータをこれらのものとして機能させるためのプログラムをコンピュータが読み込んで実行することによって構築してもよい。 Further, the screen data transmission apparatus and its peripheral part shown in FIG. 7 can be constructed by hardware, but are constructed by the computer reading and executing a program for causing the computer to function as these. May be.
更に、上記の説明では、ポインティングデバイスの一例としてマウスを例に取ったが、マウスをタッチパネルやタブレットなどの他のポインティングデバイスに置き換えてもよい。 Furthermore, in the above description, a mouse is taken as an example of a pointing device, but the mouse may be replaced with another pointing device such as a touch panel or a tablet.
101 オペレーティングシステム
103 デバイスドライバ群
105 画面データ生成部
107 第1フレームメモリ
109 第2フレームメモリ
111 画面データ書込部
111−1 レジスタ
113 画面圧縮符号化部
113−1 レジスタ
115 画面符号送信部
117 HID情報デコード部
119 フレームレート制御部
121 圧縮率制御部
DESCRIPTION OF
Claims (9)
前記差分検出手段の検出結果が肯定的であるブロックのデータが所定のデータ量の範囲内に収まるようにフレームレート及び圧縮率を制御して前記データの圧縮符号化を行う圧縮符号化制御手段と、
前記圧縮符号化制御手段により前記圧縮符号化されたデータを送信する送信手段と、
を備え、
更に前記圧縮符号化制御手段が、
前記送信手段により送信されるブロックのうち、キーボードが操作されている期間のブロックのフレームレートをポインティングデバイスが操作されている期間のフレームレートよりも低くするフレームレート調整手段と、
前記送信手段により送信されるブロックのうち、前記キーボードが操作されている期間のブロックの圧縮率を前記ポインティングデバイスが操作されている期間のブロックの圧縮率よりも低くする圧縮率制御手段と、
を備えることを特徴とする画面データ送信装置。 Whether 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 there is a difference exceeding a predetermined amount from the block at the corresponding position. Difference detection means for detecting
Compression encoding control means for controlling the frame rate and the compression rate so that the data of a block for which the detection result of the difference detection means is positive falls within a predetermined data amount range, and compressing and encoding the data. ,
Transmitting means for transmitting the compression encoded data by the compression encoding control means ;
With
Further, the compression encoding control means is
Of the blocks transmitted by the transmitting means, a frame rate adjusting means for lowering the frame rate of the block during the period in which the keyboard is operated than the frame rate during the period in which the pointing device is operated;
Of the blocks transmitted by the transmission means, a compression ratio control means for lowering the compression ratio of the blocks during the period in which the keyboard is operated to be lower than the compression ratio of the blocks in the period during which the pointing device is operated;
A screen data transmission device comprising:
前記フレームレート調整手段及び前記圧縮率制御手段は、現在が、キーボードが操作されている期間に属するのか、又は、ポインティングデバイスが操作されている期間に属するのかを、現在操作されているヒューマンインターフェースデバイスがキーボードであるのか、又は、ポインティングデバイスであるのかを識別するための情報を含むヒューマンインターフェースデバイス情報を基に判断することを特徴とする画面データ送信装置。 The screen data transmission device according to claim 1,
The frame rate adjusting unit and the compression rate control unit are configured to determine whether the present time belongs to a period during which the keyboard is operated or a period during which the pointing device is operated. A screen data transmitting apparatus that makes a determination based on human interface device information including information for identifying whether the device is a keyboard or a pointing device.
前記ヒューマンインターフェースデバイス情報は、画面フレームを更新するための情報も含むことを特徴とする画面データ送信装置。 The screen data transmission device according to claim 2,
The human interface device information also includes information for updating a screen frame.
前記差分検出ステップの検出結果が肯定的であるブロックのデータが所定のデータ量の範囲内に収まるようにフレームレート及び圧縮率を制御して前記データの圧縮符号化を行う圧縮符号化制御ステップと、
前記圧縮符号化制御ステップにより前記圧縮符号化されたデータを送信する送信ステップと、
を含み、
更に前記圧縮符号化制御ステップが、
前記送信ステップにより送信されるブロックのうち、キーボードが操作されている期間のブロックのフレームレートをポインティングデバイスが操作されている期間のフレームレートよりも低くするフレームレート調整ステップと、
前記送信ステップにより送信されるブロックのうち、前記キーボードが操作されている期間のブロックの圧縮率を前記ポインティングデバイスが操作されている期間のブロックの圧縮率よりも低くする圧縮率制御ステップと、
を含むことを特徴とする画面データ送信方法。 Whether 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 there is a difference exceeding a predetermined amount from the block at the corresponding position. A difference detection step for detecting
A compression coding control step for performing compression coding of the data by controlling a frame rate and a compression rate so that data of a block in which the detection result of the difference detection step is positive falls within a predetermined data amount range ; ,
A transmission step of transmitting the compression encoded data by the compression encoding control step ;
Including
Further, the compression encoding control step includes
Of the blocks transmitted by the transmitting step, a frame rate adjusting step for lowering a frame rate of a block during a period in which the keyboard is operated to a frame rate during a period in which the pointing device is operated;
Of the blocks transmitted by the transmission step, a compression rate control step for lowering the compression rate of the block during the period in which the keyboard is operated to be lower than the compression rate of the block in the period during which the pointing device is operated;
The screen data transmission method characterized by including .
前記フレームレート調整ステップ及び前記圧縮率制御ステップは、現在が、キーボードが操作されている期間に属するのか、又は、ポインティングデバイスが操作されている期間に属するのかを、現在操作されているヒューマンインターフェースデバイスがキーボードであるのか、又は、ポインティングデバイスであるのかを識別するための情報を含むヒューマンインターフェースデバイス情報を基に判断することを特徴とする画面データ送信方法。 The screen data transmission method according to claim 4,
The human interface device that is currently operated indicates whether the frame rate adjustment step and the compression rate control step currently belong to a period in which the keyboard is operated or a period in which the pointing device is operated A screen data transmission method comprising: determining based on human interface device information including information for identifying whether the device is a keyboard or a pointing device.
前記ヒューマンインターフェースデバイス情報は、画面フレームを更新するための情報も含むことを特徴とする画面データ送信方法。 The screen data transmission method according to claim 5,
The method of transmitting screen data, wherein the human interface device information includes information for updating a screen frame.
前記差分検出ステップの検出結果が肯定的であるブロックのデータが所定のデータ量の範囲内に収まるようにフレームレート及び圧縮率を制御して前記データの圧縮符号化を行う圧縮符号化制御ステップと、
前記圧縮符号化制御ステップにより前記圧縮符号化されたデータを送信する送信ステップと、
を含み、
更に前記圧縮符号化制御ステップが、
前記送信ステップにより送信されるブロックのうち、キーボードが操作されている期間のブロックのフレームレートをポインティングデバイスが操作されている期間のフレームレートよりも低くするフレームレート調整ステップと、
前記送信ステップにより送信されるブロックのうち、前記キーボードが操作されている期間のブロックの圧縮率を前記ポインティングデバイスが操作されている期間のブロックの圧縮率よりも低くする圧縮率制御ステップと、
を含むことを特徴とする画面データ送信方法をコンピュータに実行させるためのプログラム。 Whether 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 there is a difference exceeding a predetermined amount from the block at the corresponding position. A difference detection step for detecting
A compression coding control step for performing compression coding of the data by controlling a frame rate and a compression rate so that data of a block in which the detection result of the difference detection step is positive falls within a predetermined data amount range ; ,
A transmission step of transmitting the compression encoded data by the compression encoding control step ;
Including
Further, the compression encoding control step includes
Of the blocks transmitted by the transmitting step, a frame rate adjusting step for lowering a frame rate of a block during a period in which the keyboard is operated to a frame rate during a period in which the pointing device is operated;
Of the blocks transmitted by the transmission step, a compression rate control step for lowering the compression rate of the block during the period in which the keyboard is operated to be lower than the compression rate of the block in the period during which the pointing device is operated;
Program for executing a screen data transmission wherein the computer comprises a.
前記フレームレート調整ステップ及び前記圧縮率制御ステップは、現在が、キーボードが操作されている期間に属するのか、又は、ポインティングデバイスが操作されている期間に属するのかを、現在操作されているヒューマンインターフェースデバイスがキーボードであるのか、又は、ポインティングデバイスであるのかを識別するための情報を含むヒューマンインターフェースデバイス情報を基に判断することを特徴とするプログラム。 The program according to claim 7,
The human interface device that is currently operated indicates whether the frame rate adjustment step and the compression rate control step currently belong to a period in which the keyboard is operated or a period in which the pointing device is operated A program that makes a determination based on human interface device information that includes information for identifying whether the device is a keyboard or a pointing device.
前記ヒューマンインターフェースデバイス情報は、画面フレームを更新するための情報も含むことを特徴とするプログラム。 The program according to claim 8, wherein
The human interface device information includes a program for updating a screen frame.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008223468A JP5168486B2 (en) | 2008-09-01 | 2008-09-01 | Screen data transmitting apparatus and method |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2008223468A JP5168486B2 (en) | 2008-09-01 | 2008-09-01 | Screen data transmitting apparatus and method |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2010062625A JP2010062625A (en) | 2010-03-18 |
JP5168486B2 true JP5168486B2 (en) | 2013-03-21 |
Family
ID=42189003
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2008223468A Expired - Fee Related JP5168486B2 (en) | 2008-09-01 | 2008-09-01 | Screen data transmitting apparatus and method |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5168486B2 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20120130263A (en) | 2010-03-18 | 2012-11-29 | 미츠비시 쥬고교 가부시키가이샤 | Molding method for plate-shaped workpiece, and molded article |
Family Cites Families (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4246528B2 (en) * | 2003-03-26 | 2009-04-02 | 富士通コンポーネント株式会社 | Selector |
JP2004312584A (en) * | 2003-04-10 | 2004-11-04 | Matsushita Electric Ind Co Ltd | Image processing method and image display system |
-
2008
- 2008-09-01 JP JP2008223468A patent/JP5168486B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2010062625A (en) | 2010-03-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20180270496A1 (en) | Composite video streaming using stateless compression | |
CN102971689B (en) | Haptic surface compression | |
US9485290B1 (en) | Method and system for controlling local display and remote virtual desktop from a mobile device | |
EP2975846B1 (en) | Image frame transmission method, mobile terminal and smart television | |
WO2021169236A1 (en) | Rendering method and apparatus | |
CN102547450B (en) | Delayed image decoding | |
US20140157190A1 (en) | Grid display device and grid display method in mobile terminal | |
US20170149857A1 (en) | Systems and methods for transmitting data | |
US10432681B1 (en) | Method and system for controlling local display and remote virtual desktop from a mobile device | |
US20180070093A1 (en) | Display apparatus and control method thereof | |
JPWO2011077550A1 (en) | Screen relay device | |
CN102929569B (en) | The decoding method of Computer display content and system | |
CN111540032A (en) | Audio-based model control method, device, medium and electronic equipment | |
JP6221214B2 (en) | System, terminal device, and image processing method | |
CN114071190A (en) | Cloud application video stream processing method, related device and computer program product | |
JP5168486B2 (en) | Screen data transmitting apparatus and method | |
JP5110304B2 (en) | Screen data transmitting apparatus, screen data transmitting method, and screen data transmitting program | |
JP4675944B2 (en) | Image processing apparatus, image processing method, and image processing program | |
CN115834889A (en) | Video encoding and decoding method and device, electronic equipment and medium | |
JP2016012797A (en) | Plotting system, information processor, terminal equipment, plotting control program, plotting program, and plotting control method | |
JP5509757B2 (en) | Information processing apparatus, display control method, and program | |
JPWO2014024255A1 (en) | Terminal and video playback program | |
JP4985492B2 (en) | Screen data transmitting apparatus and method | |
CN112181221A (en) | Image processing method and device, computer readable medium and electronic device | |
CN105745930A (en) | Techniques for image bitstream processing |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
RD03 | Notification of appointment of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7423 Effective date: 20100726 |
|
RD04 | Notification of resignation of power of attorney |
Free format text: JAPANESE INTERMEDIATE CODE: A7424 Effective date: 20100726 |
|
A711 | Notification of change in applicant |
Free format text: JAPANESE INTERMEDIATE CODE: A711 Effective date: 20110509 |
|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20110713 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20120413 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20120511 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20120710 |
|
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20121128 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20121211 |
|
LAPS | Cancellation because of no payment of annual fees |