JP2015149040A - 情報処理装置、方法、プログラム、および端末装置 - Google Patents

情報処理装置、方法、プログラム、および端末装置 Download PDF

Info

Publication number
JP2015149040A
JP2015149040A JP2014023048A JP2014023048A JP2015149040A JP 2015149040 A JP2015149040 A JP 2015149040A JP 2014023048 A JP2014023048 A JP 2014023048A JP 2014023048 A JP2014023048 A JP 2014023048A JP 2015149040 A JP2015149040 A JP 2015149040A
Authority
JP
Japan
Prior art keywords
update
area
update area
moving image
screen
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
JP2014023048A
Other languages
English (en)
Other versions
JP6248671B2 (ja
Inventor
浩一 山崎
Koichi Yamazaki
浩一 山崎
松井 一樹
Kazuki Matsui
一樹 松井
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.)
Fujitsu Ltd
Original Assignee
Fujitsu Ltd
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 Fujitsu Ltd filed Critical Fujitsu Ltd
Priority to JP2014023048A priority Critical patent/JP6248671B2/ja
Priority to EP15150405.7A priority patent/EP2914009B1/en
Priority to US14/593,232 priority patent/US20150229960A1/en
Priority to CN201510056108.7A priority patent/CN104837013A/zh
Publication of JP2015149040A publication Critical patent/JP2015149040A/ja
Application granted granted Critical
Publication of JP6248671B2 publication Critical patent/JP6248671B2/ja
Expired - Fee Related legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/50Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding
    • H04N19/593Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial prediction techniques
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/1454Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
    • G06F3/1462Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay with means for detecting differences between the image stored in the host and the images displayed on the remote displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/105Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/103Selection of coding mode or of prediction mode
    • H04N19/112Selection of coding mode or of prediction mode according to a given display mode, e.g. for interlaced or progressive display mode
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/119Adaptive subdivision aspects, e.g. subdivision of a picture into rectangular or non-rectangular coding blocks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/102Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or selection affected or controlled by the adaptive coding
    • H04N19/127Prioritisation of hardware or computational resources
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/146Data rate or code amount at the encoder output
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/134Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the element, parameter or criterion affecting or controlling the adaptive coding
    • H04N19/167Position within a video image, e.g. region of interest [ROI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/10Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
    • H04N19/169Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding
    • H04N19/17Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object
    • H04N19/172Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/06Adjustment of display parameters
    • G09G2320/0613The adjustment depending on the type of the information to be displayed
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2320/00Control of display operating conditions
    • G09G2320/10Special adaptations of display systems for operation with variable images
    • G09G2320/103Detection of image changes, e.g. determination of an index representative of the image change
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2340/00Aspects of display data processing
    • G09G2340/02Handling of images in compressed format, e.g. JPEG, MPEG
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G2350/00Solving problems of bandwidth in display systems

Abstract

【課題】シンクライアントでの更新開始を早め、操作感を向上させる。【解決手段】サーバ100は、フレームバッファにコンピュータの実行結果を描画する画面を保持する。画面更新通知部105及び高頻度画面更新領域検出部106は、フレームバッファに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出する。分割サイズ決定部110、転送速度推定部113、送信時間推定部108、動画圧縮率推定部109は、ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、及びフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、動画の更新領域の分割状態を決定する。更新領域分割部107は、決定された分割状態で、動画領域と判定された更新領域を分割する。更新データ生成部111及び更新領域送信順番決定部112は、分割された更新領域を送信する【選択図】図1

Description

本発明は、ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する情報処理装置、方法、プログラム、および端末装置に関する。
近年、セキュリティや事業継続の観点からシンクライアント(Thin Client)の利用が拡大している。シンクライアントとは、ユーザが使うクライアント端末に必要最小限の処理をさせ大部分の処理をサーバ装置側に集中させたシステムアーキテクチャ、またはそのようなアーキテクチャで用いられる機能を絞り込んだ専用のクライアント端末装置をいう。
スマートフォンやタブレットの普及とモバイル回線の高速化にともない、モバイル端末からセキュアに社内システムに接続して利用する、モバイルシンクライアントのニーズも拡大している。
モバイル回線を利用してシンクライアントを利用する場合、帯域の変化、遅延等の要素により、快適に利用することが難しいという課題がある。
このような課題に対して従来、シンクライアント利用時に画面の更新が少ない領域を静止画で、更新の多い領域を動画で送信することで、より少ないデータ量で操作性を向上させる高速画面転送技術が知られている(例えば特許文献1に記載の技術)。この従来技術では、変更頻度判別部が、画像メモリに格納された画像を複数の領域に分割し、領域ごとにフレーム間の変更の頻度を判別する。第1の画像送信部は、変更のある領域の画像を送信する。高頻度変更領域識別部は、変更の頻度がしきい値を超えた領域を高頻度更新領域として識別する。送信停止部は、識別した領域について、第1の画像送信部での送信を停止する。第2の画像送信部は、識別した領域の画像を、第1の画像送信部よりも圧縮率の高い動画の圧縮処理を行って送信する。
特開2011−238014号公報
しかし、ネットワーク帯域が狭い場合、クライアント端末が1フレーム分のすべての更新領域データ (動画データ、静止画データ)を受信するまでの時間が長くなるため、操作から描画までの時間が長くなってしまうという課題があった。例えば、帯域が100Mbps(メガビット/秒)のネットワークで1フレームの送信時間が15ミリ秒となる更新領域データを、帯域5Mbpsのネットワークで送信する場合、単純計算で送信時間は300ミリ秒となってしまう。
また、1フレーム分のすべての更新領域データを受信するまで画面が更新されないため、ユーザが操作してから画面が更新されるまでが長くなり、操作感が悪くなるという課題があった。
そこで、本発明の1つの側面では、ユーザが操作してからクライアント端末での更新開始を早めることを可能とし、操作感を向上することを目的とする。
態様の一例では、ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する情報処理装置であって、コンピュータの実行結果を描画する画面を保持する画像メモリと、画像メモリに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出する更新領域抽出部と、ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、およびフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、動画の更新領域の分割状態を決定する分割状態決定部と、決定された分割状態で、動画領域と判定された更新領域を分割する更新領域分割部と、分割された更新領域を端末装置に送信する更新領域送信部と、を備える。
ユーザが操作してからクライアント端末での更新開始を早めることが可能となり、操作感が向上する。
第1の実施形態のブロック図である。 第1の実施形態における画面分割方法の説明図である。 第1の実施形態における静止画の更新領域の送信方法の説明図である。 第1の実施形態における動画の更新領域の送信方法の説明図である。 第1の実施形態におけるサーバの各機能を一般的なサーバコンピュータ装置がソフトウェア処理として実行する場合の処理例を示すフローチャートである。 第1の実施形態における動画の更新領域の送信処理を示すフローチャートである。 仮想デスクトップ画面内に動画の更新領域701のみが存在する場合の本実施形態の具体的な処理例を示す図である。 第2の実施形態のブロック図である。 優先順位の指標例を示す図である。 更新領域優先処理の例を示すフローチャートである。 送信タイミング決定処理の例を示すフローチャートである。 第2の実施形態におけるサーバの各機能を一般的なサーバコンピュータ装置がソフトウェア処理として実行する場合の処理例を示すフローチャートである。 第2の実施形態における動画の更新領域の送信処理を示すフローチャートである。 第2の実施形態における静止画の更新領域の送信処理を示すフローチャートである。 動画と静止画の更新領域が混在する場合の第2の実施形態の具体的動作例を示す図である。 動画領域が複数ある場合の第2の実施形態の具体的動作例を示す図である。 ネットワーク帯域が変動した場合の第2の実施形態の具体的動作例を示す図である。 新たな動画領域を検出した場合の第2の実施形態の具体的動作例を示す図である。 更新領域サイズが変更される場合の第2の実施形態の具体的動作例を示す図である。 第1または第2の実施形態のシステムをソフトウェア処理として実現できるコンピュータのハードウェア構成の一例を示す図である。
以下、本発明を実施するための形態について図面を参照しながら詳細に説明する。
図1は、第1の実施形態のブロック図である。
クライアント端末120は、サーバ100に対して、シンクライアント端末として動作する。
クライアント端末120は、操作情報取得部121、通信部122、画面更新情報取得部123、画面領域表示部124、高頻度画面領域表示部125、画面表示部126を備える。
サーバ100は、通信部101、操作情報取得部102、表示画面生成部103、フレームバッファ104、画面更新通知部105、高頻度画面領域検出部106、更新領域分割部107、送信時間推定部108を備える。また、サーバ100は、動画圧縮率推定部109、分割サイズ決定部110、更新データ生成部111、更新領域送信順番決定部112、転送速度推定部113を備える。
まず、クライアント端末120において、操作情報取得部121は、クライアント端末120を操作するユーザによるキー入力やマウス操作を取得し、通信部122に操作情報として通知する。
通信部122は、サーバ100の画面更新情報を受信すると、画面更新情報取得部123にデータを渡し、肯定応答を示すAck(Acknowledgement)応答に受信時間を設定し、サーバ100に返送する。また、通信部122は、操作情報取得部121で取得した操作情報を受け取ると、サーバ100に送信する。
画面更新情報取得部123は、サーバ画面の更新データを取得し、それが高頻度画面領域の更新データである場合は高頻度画面領域表示部125に、高頻度画面領域以外の更新データである場合は画面領域表示部124に、それぞれサーバ画面の更新領域データを振り分ける。
画面領域表示部124は、画面更新情報取得部123から取得した更新データ(静止画の更新領域のデータ)をデコードし、画面データ領域に展開する。
高頻度画面領域表示部125は、画面更新情報取得部123から取得した更新データ(動画の更新領域のデータ)をデコードし、画面データ領域に展開する。
画面表示部126は、更新データが展開された画面データ領域をGPU(Graphics Processing Unit:画像処理ユニット)の描画用メモリに書き込むことで、画面への描画を実行する。
次に、サーバ100において、通信部101は、クライアント端末120での操作情報を受信すると、操作情報取得部102に操作情報を渡し、転送速度推定部113からサーバ画面更新データを受け取ると、そのデータをクライアント端末120に送信する。
操作情報取得部102は、通信部101から通知された操作情報を展開し実行する。
表示画面生成部103は、操作情報取得部102で実行した操作に対するアプリケーション等の描画を含め、表示画面データを生成し、その表示画面データをフレームバッファ104に書き込む。
フレームバッファ104は、表示画面生成部103によって表示画面データが書き込まれると、表示処理を実行する。
画面更新通知部105は、フレームバッファ104に書込みがあった場合に、更新領域を検出し、高頻度画面領域検出部106に通知する。
高頻度画面領域検出部106は、画面更新通知部105から更新領域が通知されると、更新領域の連続更新回数が閾値以上の場合に更新領域を高頻度画面更新領域として設定する。
更新領域分割部107は、高頻度画面領域検出部106での検出結果に基づいて、高頻度画面更新領域とそれ以外の更新領域の領域サイズを送信時間推定部108に通知し、送信時間推定部108から各更新領域の送信時間を取得する。更新領域分割部107は、取得した各更新領域の送信時間を分割サイズ決定部110に通知し、分割サイズ決定部110から高頻度画面更新領域とそれ以外の更新領域それぞれの分割サイズを取得する。更新領域分割部107は、取得した分割サイズで高頻度画面更新領域とそれ以外の更新領域のそれぞれを分割し、更新領域送信順番決定部112に通知する。
送信時間推定部108は、更新領域分割部107から更新領域サイズを受信すると、転送速度推定部113からネットワーク帯域を取得し、送信時間を推定して、その送信時間を更新領域分割部107に通知する。
動画圧縮率推定部109は、更新データ生成部111から更新領域サイズと動画圧縮後サイズを取得し、Iフレーム/Pフレームそれぞれについて、過去の圧縮率もふまえて圧縮率を推定し、分割サイズ決定部110に通知する。
ここで、動画圧縮では、最初のフレームでは、動画領域全体を圧縮(フレーム内圧縮)する。次のフレーム以降は、前フレームの情報も利用して圧縮(フレーム間圧縮)する。フレーム内圧縮で圧縮されるデータは、静止画圧縮で圧縮したデータサイズと同じくらいのサイズとなる。フレーム内圧縮で圧縮されたフレームデータはI(Intra−coded)フレーム、フレーム間圧縮で圧縮されたフレームデータはP(Predicted)フレームと呼ばれる。また、動画データは不可逆圧縮であるため、定期的にフレーム内圧縮(Iフレーム)で圧縮することにより、元データとの差が徐々に大きくなるのを抑制している。
分割サイズ決定部110は、更新領域分割部107から更新領域の送信時間が通知されると、更新領域が動画の更新領域である場合には、動画圧縮率推定部109からIフレームおよびPフレームの各動画圧縮率を取得し、分割サイズを決定し、その分割サイズを更新領域分割部107に通知する。一方、分割サイズ決定部110は、更新領域が静止画の更新領域である場合には、通知された送信時間が設定された閾値よりも大きい場合には、送信時間がその閾値内に入るように、更新領域の分割サイズを決定する。
更新データ生成部111は、高頻度画面更新領域とそれ以外の更新領域について、更新領域分割部107で必要に応じて分割された各分割更新領域をエンコードする。更新データ生成部111は、更新領域が動画領域である場合には、エンコード前の領域サイズとエンコード後のデータサイズを、動画圧縮率推定部109に通知する。
更新領域送信順番決定部112は、更新領域ごとに送信順序を優先順位の指標をもとに決定し、決定した順に更新領域データを転送速度推定部に通知する。
転送速度推定部113は、更新領域送信順番決定部112から通知された更新データに、転送速度を推定するための送信開始時間や送信データサイズ等を送信データのヘッダ等に設定し、通信部101に通知する。転送速度推定部113は、クライアント端末120からのAck応答受信時に設定される受信時間と送信時に設定した送信開始時間と送信データサイズから転送速度を推定する。
以上の第1の実施形態の動作について、以下に詳細に説明する。
図2は、第1の実施形態における画面分割方法の説明図である。
本実施形態では、サーバ100の画面更新通知部105および高頻度画面領域検出部106は、フレームバッファ104に格納されるデスクトップ画面を、例えば図2(a)に示されるように、8×8にメッシュ分割して処理する。
画面更新通知部105は、図2(a)のようにメッシュ分割されたデスクトップ画面上で更新される矩形の情報を収集し、一定時間における更新頻度が閾値より高いメッシュを取得する。例えば、図2(a)に示されるように、デスクトップ画面上で、マウスカーソルが201として示されるように移動している場合、あるいは、動画が再生されている領域202が存在する場合、画面更新通知部105は、次のような動作を実行する。画面更新通知部105は、フレームバッファ104上で更新されるフレーム画像間で、画素データの更新頻度が高いメッシュ領域203を抽出し、高頻度画面領域検出部106に通知する。
高頻度画面領域検出部106は、画面更新通知部105から通知された複数のメッシュ領域を合成することにより、図2(b)に示されるように、変更されている画面領域204および205を推定する。高頻度画面領域検出部106は、推定した更新領域204および205の更新回数を計測し、更新回数が予め設定した閾値を超える場合にはその更新領域を高頻度画面更新領域として設定する。本実施形態では、高頻度画面更新領域は動画領域(あるいは動画化されるべき領域)として判定され、その他の更新領域は静止画領域として判定される。例えば図2の更新領域204は動画再生領域202を含む動画領域として判定され、更新領域205は静止画領域として判定される。
高頻度画面領域検出部106が画面の更新領域を高頻度画面更新領域以外の静止画領域として判定した場合には、更新領域分割部107は、静止画の更新領域サイズを送信時間推定部108に通知する。送信時間推定部108は、更新領域サイズを受信すると、転送速度推定部113からネットワーク帯域を取得し、送信時間を推定して、その静止画の更新領域の送信時間を更新領域分割部107に通知する。更新領域分割部107は、取得した静止画の更新領域の送信時間を分割サイズ決定部110に通知する。分割サイズ決定部110は、前述したように、通知された送信時間が設定された閾値よりも大きい場合には、送信時間がその閾値内に入るように、静止画の更新領域の分割サイズを決定し、その分割サイズを更新領域分割部107に通知する。
更新データ生成部111は、静止画の更新領域について、更新領域分割部107で必要に応じて分割された分割更新領域をエンコードする。このようにしてエンコードされた静止画の更新領域は、更新領域送信順番決定部112および転送速度推定部113から通信部101を介して、クライアント端末120に送信される。
図3は、本実施形態における静止画の更新領域の送信方法の説明図である。いま例えば、クライアント端末120から操作情報がサーバ100に送信され(図3のステップS301)、この結果、サーバ100のフレームバッファ104のデスクトップ画面(以下これを「仮想デスクトップ画面」と記載する)に対して、画面更新がなされ(図3のステップS302)、更新領域301が検出されたとする。ここで、送信時間推定部108で推定された送信時間に基づいて、分割サイズ決定部110が、更新領域301を、例えば分割更新領域302a、302b、302cに3分割する。この結果、更新データ生成部111は、更新領域301を分割した各分割更新領域302a、302b、302cを順次送信する(図3のステップS303)。クライアント端末120では、通信部122および画面更新情報取得部123が、分割更新領域のデータを受信し、画面領域表示部124に引き渡す。画面領域表示部124は、まず分割更新領域302aを、図3の303に示されるように分割して表示する。画面領域表示部124は、他の分割更新領域302b、302cについても、それらを受信したら順次同様に分割して表示する。
このようにして、本実施形態の場合、静止画の更新領域については、クライアント端末120は受信した分割更新領域から順次表示するため、操作表示までの時間が短縮され、レスポンスが速く感じられるようになる。
次に、高頻度画面領域検出部106が画面の更新領域を動画の更新領域(高頻度画面更新領域)として判定した場合について説明する。
図4は、本実施形態における動画の更新領域の送信方法の説明図である。
まず、静止画の更新領域の場合と同様に、動画の更新領域を必要に応じて送信時間に基づいて単純に分割しながら送信する場合を考える。図4(a)は、そのような場合を想定したときの動画の更新領域の送信動作例を示す図である。ここでは、送信時間を考慮して例えば1回の送信あたり50ミリ秒が確保されるとする。そして、仮想デスクトップ画面上の動画の更新領域400について、2つに分割された分割更新領域401aおよび401bが順次送信されるとする。この場合、動画では、最初のフレームはIフレームであり、Iフレームを予め設定した時間、例えば50ミリ秒内で送信するように動画領域を分割した場合、次のような問題が発生する。まず、図4(a)の0〜50ミリ秒のタイミングで、動画の分割更新領域401aに対応するIフレームが送信される。続いて、図4(a)の50〜100ミリ秒のタイミングで、動画の分割更新領域401bに対応するIフレームが送信される。しかし、この2つめの分割更新領域401bのIフレームを送信している間は、図4の402として示されるように、送信しているIフレームの分割更新領域401b以外の、分割更新領域401aに対応するPフレームを送信できない。よって、クライアント端末120では、図4(a)の403で示される期間において、動画の更新が行われず、操作が引っかかるように感じる。これは、更新領域の分割数が多いほど、顕著になる。さらに、Iフレームは前述したように定期的に送信されるため、定期的に操作性が悪化してしまう。
そこで、本実施形態では、更新領域が動画である場合には、分割サイズ決定部110は、更新領域分割部107から動画の更新領域の送信時間を通知されると、動画圧縮率推定部109からIフレームおよびPフレームの各動画圧縮率を取得する。次に、分割サイズ決定部110は、動画の更新領域のIフレーム転送時のデータ量とPフレーム転送時のデータ量を、Iフレーム/Pフレームの平均圧縮率から推測する。そして、分割サイズ決定部110は、これらの推測したIフレーム/Pフレーム転送時のデータ量と送信時間から、IフレームおよびPフレームの両方を送信できるように、更新領域の分割数、分割サイズを決定し、更新領域分割部107に通知する。更新領域分割部107は、通知された分割サイズで動画の更新領域のIフレーム、Pフレームを混在させて分割し、動画として圧縮後、クライアント端末120に送信する。
図4(b)は、本実施形態による動画の更新領域の送信動作例を示す図である。ここでは、図4(a)の場合と同様に、送信時間を考慮して例えば1回の送信あたり50ミリ秒が確保されるとする。そして、仮想デスクトップ画面上の動画の更新領域404について、3つに分割された分割更新領域405a、405b、および405cが順次送信されるとする。この場合、まず、図4(b)の0〜50ミリ秒のタイミングで、動画の分割更新領域405aに対応するIフレームが送信される。続いて、図4(b)の50〜100ミリ秒のタイミングで、動画の分割更新領域405bに対応するIフレームが送信されるとともに、動画の分割更新領域405aに対応する2フレーム目のPフレームも送信される。さらに、図4(b)の100〜150ミリ秒のタイミングで、動画の分割更新領域405cに対応するIフレームが送信される。これとともに、動画の分割更新領域405aに対応する3フレーム目のPフレームおよび動画の分割更新領域405bに対応する2フレーム目のPフレームも送信される。
このようにして、本実施形態では、Iフレーム送信時も他の分割領域のPフレームを送信できる。このため、更新領域404での動画の表示をスムーズに感じることが可能となる。
以上のように、更新領域が動画または静止画のどちらの場合であっても、本実施形態では、ネットワーク帯域が狭い場合、クライアント端末120は、1フレーム分の動画データや静止画データを受信するよりも、より速く分割領域のデータを受信できる。このため、クライアント端末120のユーザは、操作から描画までの時間が、従来よりも速いと感じることができるようになり、操作感を向上させることが可能となる。
図5は、第1の実施形態に係る図1のブロック図で示されるサーバ100の各機能を、一般的なサーバコンピュータ装置がソフトウェア処理として実行する場合の、処理例を示すフローチャートである。このフローチャートの処理は、サーバコンピュータ装置のCPU(中央演算処理装置)がメモリに記憶された仮想デスクトップ制御プログラムを実行する処理である。
まず、クライアント端末120から操作情報が受信されるまで待機される(ステップS501の判定がNOの繰返し処理)。
クライアント端末120から操作情報が受信されてステップS501の判定がYESになると、クライアント端末120から実行指定されているサーバ100上のアプリケーションプログラムがフレームバッファ104に画像情報を格納する(ステップS502)。クライアント端末120上でユーザが、あたかもローカル端末のウインドウシステムのデスクトップ画面を操作するように、サーバ100がクライアント端末120のディスプレイに表示される仮想デスクトップ画面上で、アプリケーションの操作を行う。この操作情報が、クライアント端末120からサーバ100に送信される。この結果、サーバ100上でアプリケーションプログラムが実行され、その結果、仮想デスクトップ画面の表示の書換えが必要になると、アプリケーションプログラムがフレームバッファ104内の仮想デスクトップ画面領域に対して、表示の更新を行う。このステップS501で実行される処理は、図1の表示画面生成部103の機能に対応する。
次に、フレームバッファ104から仮想デスクトップ画面の画面データが取得され(ステップS503)、画面更新が発生したか否かが判定される(ステップS504)。このステップS503とステップS504で実行される処理は、図1の画面更新通知部105の機能に対応する。
画面更新がなくステップS504の判定がNOならば、ステップS501の待機処理に戻る。
画面更新があってステップS504の判定がYESならば、サーバ100が通信中のネットワーク帯域が取得され、データの転送速度が計算される(ステップS505)。
次に、画面の更新領域のサイズと画面データの圧縮率に基づいて、転送データ量が取得される(ステップS506)。
上述のステップS505とステップS504で実行される処理は、図1の送信時間推定部108の機能に対応する。
次に、画面の更新領域が動画領域、あるいは動画化されるべき高頻度画面更新領域であるか否かを判定する処理が実行され(ステップS507)、更新領域が動画化領域(高頻度画面更新領域)であるか否かが判定される(ステップS508)。このステップS507とステップS508で実行される処理は、図1の高頻度画面更新領域検出部106の機能に対応する。
更新領域が動画化領域ではなくステップS508の判定がNOならば、図3を用いて前述した静止画領域処理が実行される(ステップS509)。一方、更新領域が動画化領域でステップS508の判定がYESならば、図4(b)を用いて前述した動画領域処理が実行される(ステップS510)。ステップS509またはステップS510の処理は、図1の更新領域分割部107、分割サイズ決定部110、および更新データ生成部111の機能に対応する。
ステップS509またはステップS510の処理の後、ステップS501の待機処理に戻る。
図6は、図5のステップS510内で実行される動画の更新領域の送信処理を示すフローチャートである。
まず、1つ前の動画の更新領域の送信タイミングで後述するステップS606の処理で算出されているIフレームの平均圧縮率から、Iフレーム送信時のデータサイズが推定される(ステップS601)。
次に、1つ前の動画の更新領域の送信タイミングで後述するステップS607の処理で算出されているPフレームの平均圧縮率から、Pフレーム送信時のデータサイズが推定される(ステップS602)。
そして、ステップS601とステップS602で推定されたIフレーム/Pフレーム転送時のデータ量と送信時間から、IフレームおよびPフレームの両方を送信できるように、更新領域の分割数、分割サイズが決定される(ステップS603)。
以上のステップS601からS603の処理は、図1の分割サイズ決定部110の機能に対応する。
その後、ステップS603で決定された分割サイズで、その分割更新領域のデータが分割されて、動画として圧縮された後、クライアント端末120に送信する(ステップS604)。この処理は、図4(b)を用いて前述した、図1の更新領域分割部107および更新データ生成部111の機能に対応する。
その後、送信されたデータはIフレームであるか否かが判定される(ステップS605)。
送信されたデータがIフレームでステップS605の判定がYESならば、送信されたIフレームの平均圧縮率が推測される(ステップS606)。ここで推測されたIフレームの平均圧縮率は、動画の更新領域の次のフレームの送信タイミングにおける前述したステップS601の処理で参照される。
送信されたデータがIフレームではなくステップS605の判定がNOならば、送信されたPフレームの平均圧縮率が推測される(ステップS607)。ここで推測されたPフレームの平均圧縮率は、動画の更新領域の次のフレームの送信タイミングにおける前述したステップS602の処理で参照される。
以上のステップS606およびステップS607の処理は、図1の動画圧縮率推定部109の機能に対応する。
ステップS606またはステップS607の処理の後、図6のフローチャートの処理を終了し、図5のステップS510の動画領域処理を終了する。
図7は、仮想デスクトップ画面内に動画の更新領域701のみが存在する場合の第1の実施形態の具体的な処理例を示す図である。
まず、この処理例において、図1の高頻度画面更新領域検出部106の機能または図5のステップS504の処理により、例えば図7(a)の701として示される更新領域の画面サイズは、1024×768ピクセルと算出されているとする。また、図1の動画圧縮率推定部109の機能または図6のステップS606およびステップS607の処理により、圧縮率は、Iフレームが5%、Pフレームが1%と算出されているとする。さらに、図1の転送速度推定部113の機能または図5のステップS505の処理により、ネットワーク帯域は5Mbps(=5000kbps(キロビット/秒))と推定されているとする。さらに、転送時間閾値は100msec(ミリ秒)であると仮定する。
前述した図1の分割サイズ決定部110の機能または図6のステップS603の処理により、転送時間が転送時間閾値以下になるように分割数が決定される。
更新領域のデータサイズ(無圧縮時):3MB(メガバイト)
Iフレームのデータサイズ(推測値):150kB(キロバイト)
Pフレームのデータサイズ(推測値): 15kB
分割数をnとして1回のデータ転送量は、最大でIフレームは1/n、Pフレームは(n−1)/nとなり、転送時間が転送時間閾値の100ミリ秒以下になる転送時間を求める。なお、「kbit」=キロビットである。
((150×8)[kbit]÷n+(15×8)[kbit]×(n-1)÷n)÷5000[kbps]≦0.1[sec]
上述の計算式より、n≧2.84となり、分割数は3と算出される。よって、図7(b)に示されるように、更新領域701が3分割されることで、各分割更新領域702a、702b、702cの動画データの送信タイミングは、それぞれの分割更新領域から右方向に伸びる矢印で示されるタイミングとなる。図7(b)から理解されるように、本実施形態では、1つの送信タイミングで、複数の分割更新領域の動画のIフレームとPフレームを混在させて送信することが可能となる。より具体的には、混在させられる各々のデータは、インターネットまたはローカルエリアネットワーク上をサーバ100からクライアント端末120に1つの送信期間内で混在して送信される複数のパケットデータのそれぞれに格納されて、伝送される。このとき例えば、各パケットデータのペイロード部には、どの分割更新領域のどの描画タイミングのI/Pどちらのデータであるかを識別する情報とその情報に対応する描画データが格納される。これにより、ネットワーク帯域が狭い場合、クライアント端末120は、1フレーム分の動画データを受信するよりも、より速く分割領域のデータを受信できる。このため、クライアント端末120のユーザは、操作から描画までの時間が、従来よりも速いと感じることができるようになり、操作感を向上させることが可能となる。
図8は、第2の実施形態のブロック図である。
第1の実施形態で説明した更新領域が複数ある場合や、動画の更新領域が変更された場合には、更新領域をサーバからクライアント端末に送信する際に、優先順位を設定し送信タイミングを変更する必要がある。更新領域が複数ある場合とは、主に以下のような場合が想定される。
・動画の更新領域と静止画の更新領域が混在する。
・動画の更新領域が複数存在する。
・新たに動画の更新領域を検出した場合。
これらの場合における制御処理を実現するために、第2の実施形態に係る図8に示されるサーバ100の構成では、第1の実施形態に係る図1のサーバ100の構成に加えて、更新領域優先度決定部801と送信タイミング決定部802が追加された構成を有する。
更新領域優先度決定部801は、画面更新通知部105で検出された更新領域の優先順位を、優先順位の指標等のあらかじめ設定された指標に基づいて、更新領域の送信優先度を決定し、更新領域分割部107に通知する。
図9は、更新領域優先度決定部801において参照される優先順位の指標例を示す図である。予め定めた優先順位の設定指標をもとに各更新領域の優先順位を決定する。
設定指標に利用するパラメータとしては、仮想デスクトップ画面上での更新領域が表示されているウインドウがアクティブウィンドウか否か、更新領域サイズ、動画の更新領域か静止画の更新領域かなどを利用する。
図9に例示される優先順位の指標例では、アクティブウィンドウ内の更新領域で、かつ動画のIフレームを送信時の優先順位が一番高く、非アクティブウィンドウ内の静止画の更新領域データを送信時の優先順位が一番低い。
更新領域優先度決定部801は、図9に例示される優先順位の指標例を参照した結果、同じ優先順位の更新領域が複数ある場合は、高優先順位の更新領域との近接距離や更新領域の大きさで優先順位を決定する。
図10は、図9の優先順位の指標例に従って動作する更新領域優先度決定部801の機能を、サーバ100がプログラムによる更新領域優先処理として実行する処理例を示すフローチャートである。
まず、更新領域はアクティブウィンドウ内であるか否かが判定される(ステップS1001)。
更新領域がアクティブウィンドウ内でステップS1001の判定がYESの場合、次に更新領域は動画であるか否かが判定される(ステップS1002)。
更新領域が動画でステップS1002の判定がYESの場合、さらに更新領域はIフレームであるか否かが判定される(ステップS1003)。
更新領域がIフレームでステップS1003の判定がYESの場合、優先順位に“1”が設定される(ステップS1004)。この優先順位“1”が設定された場合には、図9に示されるように、送信タイミングごとに送信が実行される。
更新領域がIフレームではなく動画のPフレームであってステップS1003の判定がNOの場合、優先順位に“2”が設定される(ステップS1005)。更新領域がアクティブウィンドウ内でステップS1001の判定がYESで、かつ更新領域が動画ではなくステップS1002の判定がNO、すなわちアクティブウィンドウ内の静止画の場合も、優先順位に“2”が設定される(ステップS1005)。この優先順位“2”が設定された場合には、優先順位が“1”の場合と同様に、図9に示されるように、送信タイミングごとに送信が実行される。
更新領域がアクティブウィンドウ内ではなくステップS1001の判定がNOの場合、次に更新領域は動画であるか否かが判定される(ステップS1006)。
更新領域が動画でステップS1006の判定がYESの場合、さらに更新領域はIフレームであるか否かが判定される(ステップS1007)。
更新領域がIフレームでステップS1007の判定がYESの場合、優先順位に“3”が設定される(ステップS1008)。この優先順位“3”が設定された場合には、図9に示されるように、優先順位1のIフレームが送信されていないタイミングで送信が実行される。
更新領域がIフレームではなく動画のPフレームであって、ステップS1007の判定がNOの場合、優先順位に“4”が設定される(ステップS1009)。更新領域がアクティブウィンドウ内でなくステップS1001の判定がNOで、更新領域が動画でなくステップS1006の判定がNOの場合、すなわち非アクティブウィンドウ内の静止画の場合も、優先順位に“4”が設定される(ステップS1009)。この優先順位“4”が設定された場合には、Iフレームが送信されない時にn回にm回(m<n)送信が実行される。
以上のようにして、図9の優先順位の指標例に従って動作する更新領域優先度決定部801の機能が、プログラム処理として実行される。
次に、図8の送信タイミング決定部802は、更新データ生成部111で生成したエンコード後のデータサイズや、転送速度推定部113が推定した転送速度に基づいて、更新領域データの送信タイミングを決定し、更新領域送信順番決定部112に通知する。
図11は、送信タイミング決定部802の機能を、サーバ100がプログラムによる送信タイミング決定処理として実行する処理例を示すフローチャートである。
まず、動画の更新領域が検出されているか否かが判定される(ステップS1101)。
動画の更新領域が検出されておりステップS1101の判定がYESならば、図10のフローチャートで示される更新領域優先度決定処理で、送信優先度の高い動画の更新領域が検出されているか否かが判定される(ステップS1102)。
送信優先度の高い動画の更新領域が検出されておりステップS1102の判定がYESならば、以下の制御動作が実行される。
まず、今回のタイミングで検出された新規動画の更新領域が既存動画の更新領域のIフレームの送信タイミングと重なるか否かが判定される(ステップS1103)。
ステップS1103の判定がYESの場合には、まず、新規動画の更新領域の分割数が決定される(ステップS1104)。これに続いて、既存動画の更新領域の分割数が再設定される(ステップS1105)。その後、現タイミングで送信される分割更新領域が決定される(ステップS1116)。ここでは、新規動画の分割更新領域のデータと既存動画の分割更新領域のデータが同時に送信されるように、各分割更新領域が決定される。その後、送信タイミング決定処理を終了する。
一方、新規の動画の更新領域が既存の動画の更新領域のIフレームの送信タイミングと重ならずステップS1103の判定がYESの場合には、まず、新規動画の更新領域の分割数が決定される(ステップS1106)。これに続いて、既存動画の更新領域に対応するメモリ上の制御領域に“分割数変更”のフラグが設定される(ステップS1107)。その後、現タイミングで送信される分割更新領域が決定される(ステップS1116)。ここでは、新規動画の分割更新領域が既存動画の分割更新領域のPフレームと同時に送信されるように、各分割更新領域が決定される。その後、送信タイミング決定処理を終了する。なお、既存動画の更新領域に関しては、後述する動画の更新領域の送信処理において、既存動画の更新領域のIフレームの送信時に、更新領域の分割数が再設定される(後述する図13のステップS1306からS1308を参照)。このときの分割数の設定に使用する送信時間の閾値は、各動画の更新領域サイズに比例した値が設定される。
次に、図10のフローチャートで示される更新領域優先度決定処理で静止画または送信優先度が高くはない動画の更新領域が検出された場合には、以下の制御動作が実行される。以下の説明では、この場合の更新領域をその他の更新領域と記載する。
動画の更新領域が検出されず前述のステップS1101の判定がNOとなった後、送信優先度の高い静止画の更新領域が検出されているか否かが判定される(ステップS1108)。
送信優先度の高い静止画の更新領域が検出されステップS1108の判定がYESなら、送信タイミングが次のように調整される。現在のタイミングが送信優先度の高い動画の更新領域(または分割更新領域)のPフレームが送信されるタイミングになるまで待機される(ステップS1109の判定がNOの繰返し)。現在のタイミングが送信優先度の高い動画の更新領域(または分割更新領域)のPフレームが送信されるタイミングになりステップS1109の判定がYESになると、新規静止画の更新領域の分割数が決定される(ステップS1110)。その後、現タイミングで送信される分割更新領域(分割数が1ならば更新領域そのもの)が決定される(ステップS1116)。ここでは、同じタイミングで送信優先度の低い動画の更新領域(または分割更新領域)あるいは静止画の更新領域(または分割更新領域)がある場合、それらの更新領域(または分割更新領域)より先に、その他の更新領域のデータが送信されるように各分割更新領域が決定される。その他の更新領域である送信優先度の高い静止画の更新領域が分割されて送信される場合でも、その静止画の分割更新領域すべてが先に送信完了となるように、各分割更新領域が決定される。その後、送信タイミング決定処理を終了する。
動画の更新領域が検出され前述のステップS1101の判定がYESとなり、さらに送信優先度の低い動画の更新領域であってステップS1102の判定がNOとなった場合、送信タイミングが次のように調整される。現在のタイミングが送信優先度の高い動画の更新領域(または分割更新領域)のPフレームが送信されるタイミングになるまで待機される(ステップS1109の判定がNOの繰返し)。Pフレームが検出されてステップS1109の判定がYESになっても、他に送信優先度の高い更新領域がないか否かが判定され、あれば他の更新領域についてもPフレームが送信されるタイミングになるまで待機される(ステップS1112の判定がNO)。すべての送信優先度の高い更新領域についてPフレームのタイミングとなったら(ステップS1112の判定がYES)、新規動画の更新領域の分割数が決定される(ステップS1113)。その後、現タイミングで送信される分割更新領域(分割数が1ならば更新領域そのもの)が決定される(ステップS1116)。ここでは、同じタイミング送信優先度の低い静止画の更新領域(または分割更新領域)がある場合には、それらの更新領域(または分割更新領域)より先に、その他の更新領域のデータが送信されるように、各分割更新領域が決定される。その後、送信タイミング決定処理を終了する。
前述したステップS1101およびステップS1108の判定がともにNOとなって、その他の更新領域が送信優先度の低い静止画の更新領域である場合、送信タイミングが次のように調整される。現在のタイミングが動画の更新領域(または分割更新領域)のPフレームが送信されるタイミングになるまで待機される(ステップS1114の判定がNOの繰返し)。このPフレームは、送信優先度が高くても低くてもよい。現在のタイミングが動画の更新領域(または分割更新領域)のPフレームが送信されるタイミングになりステップS1114の判定がYESになると、新規静止画の更新領域の分割数が決定される(ステップS1115)。その後、現タイミングで送信される分割更新領域(分割数が1ならば更新領域そのもの)が決定される(ステップS1116)。ここでは、動画の更新領域の送信優先度が低い場合であっても、その更新領域のIフレーム送信時には、ステップS1114の判定がNOとなって、その他の更新領域である送信優先度の低い静止画の更新領域のデータは送信されない。動画の更新領域のPフレームの送信時には、その送信時に同時にその他の更新領域である送信優先度の低い静止画の更新領域を送信できる場合は、その送信が実行されるように、各分割更新領域が決定される。Pフレームの動画の送信時に同時にその他の更新領域である送信優先度の低い静止画を送信できない場合は、動画の更新領域のPフレームと交互にその他の更新領域である送信優先度の低い静止画が送信されるように、各分割更新領域が決定される。
以上の更新領域優先度決定部801と送信タイミング決定部802の機能、または図10の更新領域優先度決定処理または図11の送信タイミング決定処理により、第2の実施形態は次の効果を有する。更新領域が複数ある場合や動画領域が変更された場合であっても、1つの送信タイミングで、複数の分割更新領域の動画のIフレームとPフレーム、および静止画を混在させて送信することが可能となる。これにより、ネットワーク帯域が狭い場合、クライアント端末120は、従来よりも速く分割領域のデータを受信できる。このため、クライアント端末120のユーザは、操作から描画までの時間が、従来よりも速いと感じることができるようになり、操作感を向上させることが可能となる。
図12は、第2の実施形態に係る図8のブロック図で示されるサーバ100の各機能を、一般的なサーバコンピュータ装置がソフトウェア処理として実行する場合の、処理例を示すフローチャートである。このフローチャートの処理は、第1の実施形態に係る図5のフローチャートの場合と同様に、サーバコンピュータ装置のCPU(中央演算処理装置)がメモリに記憶された仮想デスクトップ制御プログラムを実行する処理である。
図12において、図5の場合と同じ処理を実行するステップには同じステップ番号を付してある。図12の構成が図5の構成と異なる点は、以下の点である。まず、ステップS1201(図5のステップS504に対応)で画面更新が発生したか否かが判定されるときに、複数の更新領域があるか否かが判定される。そして、ステップS1204で他の更新領域があると判定される間、更新領域ごとに、ステップS508の処理と、ステップS508から分岐するステップS1202の動画領域処理とステップS1203の静止画領域処理が繰り返し実行される。
この制御処理により、更新領域が複数ある場合や動画領域が変更された場合であっても、1つの送信タイミングで、複数の分割更新領域の動画のIフレームとPフレーム、および静止画を混在させて送信することが可能とされる。
図13は、図12のステップS1202の動画の更新領域の送信処理の例を示すフローチャートである。
まず、前述した図10の更新領域優先度決定処理および前述した図11の送信タイミング決定処理が実行されることにより、送信優先度と送信タイミングが設定される(ステップS1301)。
その後、ネットワーク帯域に変化があったか否か(ステップS1302)、動画の更新領域数に変化があったか否か(ステップS1303)、および“分割数変更”のフラグが設定されているか否か(ステップS1304)が、順次判定される。
これらのいずれかの判定がYESになると、以下のようにして、更新領域の分割数が再設定される。
まず、現在のタイミングが動画の更新領域の出力タイミングであるか否か(ステップS1305)、および動画の更新領域である場合にIフレームの更新領域であるか否か(ステップS1306)が判定される。
現在処理中の更新領域が動画のIフレームでステップS1305およびステップS1306の判定がYESとなった場合には、“分割数変更”のフラグがリセットされた後(ステップS1307)、更新領域の分割数が再設定される(ステップS1308)。
このステップS1308の処理の後、またはステップS1302、S1303、およびS1304の全ての判定がNOとなった後に、更新領域の分割処理が実行される(ステップS1310)。ここでは、図11の送信タイミング決定処理で説明した各分割更新領域の送信タイミングを満たすように、動画の更新領域のIフレーム、Pフレームが分割される。
そして、ステップS1310で生成された現タイミングで送信する分割更新領域のデータが、動画として圧縮された後、クライアント端末120に送信される(ステップS1311)。
その後、送信されたデータはIフレームであるか否かが判定される(ステップS1312)。
送信されたデータがIフレームでステップS1312の判定がYESならば、送信されたIフレームの平均圧縮率が推測される(ステップS1313)。
送信されたデータがIフレームではなくステップS1312の判定がNOならば、送信されたPフレームの平均圧縮率が推測される(ステップS1314)。
ステップS1313またはステップS1314の処理の後、図13のフローチャートの処理を終了し、図12のステップS1202の動画領域処理を終了する。
現在のタイミングが動画の更新領域の出力タイミングでなくステップS1305の判定がNOの場合、または現在の動画の更新領域がIフレームでなくステップS1306の判定がNOの場合には、次の制御処理が実行される。次回のタイミングでステップS1304の判定をYESとさせてステップS1305〜S1308を再度実行させるために、“分割数変更”のフラグがセットされる(ステップS1309)。その後、ステップS1310の処理に進む。
図14は、図12のステップS1203の静止画の更新領域の送信処理の例を示すフローチャートである。
まず、前述した図10の更新領域優先度決定処理および前述した図11の送信タイミング決定処理が実行されることにより、送信優先度と送信タイミングが設定される(ステップS1401)。
その後、ネットワーク帯域に変化があったか否かが判定される(ステップS1402)。
ネットワーク帯域に変化があってステップS1402の判定がYESになると、“分割数変更”のフラグがセットされる(ステップS1403)。この結果、次の動画の更新領域が処理されるタイミングで、以下の処理が実行される。前述した図13のステップS1304の判定がYESとなって、さらに動画の更新領域のIフレームのタイミングでステップS1305とS1306の判定がYESとなって、ステップS1308で更新領域の分割数が再設定される。
ステップS1403の処理の後またはステップS1402の判定がNOとなった後に、更新領域の分割処理が実行される(ステップS1404)。ここでは、図11の送信タイミング決定処理で説明した各分割更新領域の送信タイミングを満たすように、静止画の更新領域が分割される。
そして、ステップS1404で生成された現タイミングで送信する分割更新領域のデータが、静止画として圧縮された後、クライアント端末120に送信される(ステップS1405)。その後、図14のフローチャートの処理を終了し、図12のステップS1203の静止画領域処理を終了する。
図15は、図15(a)に示されるように動画の更新領域1501と静止画の更新領域1502が混在する場合の、第2の実施形態の具体的動作例を示す図である。
静止画の更新領域1502に対応する各静止画の分割更新領域1504a、1504b、1504cは、動画の更新領域1501に対応する各動画の分割更新領域1503a、1503b、1503cのPフレーム送信時に、送信される。
動画に関する仮定は、図7で前述した第1の実施例の場合と同じであるため、分割数は3となる。よって、図15(b)に示されるように、動画の更新領域1501が3分割されることで、各動画の分割更新領域1503a、1503b、1503cの動画データの送信タイミングは、各分割更新領域から右方向に伸びる矢印で示されるタイミングとなる。
ここで、3つの動画の分割更新領域のPフレームの送信時間は、次式のように算出される。
(15×8)[kbit]÷5000[kbps] = 0.024[sec]
静止画の更新領域のデータ量は、圧縮時に例えば135[kB]であると仮定する。この結果、静止画の更新領域のデータを送信するための送信時間は、次式のように算出される。
(135×8)[kbit]÷5000[kbps] = 0.216[sec]
従って、静止画の更新領域をPフレームと同時に送信する場合、100ミリ秒以下で送信するためには、静止画の更新領域は、次式で算出される時間以下で送信する必要がある。
0.1[sec] - 0.024[sec] = 0.076[sec]
この結果、一度に静止画の更新領域を送信できないため、静止画も更新領域を分割する。このときの分割数は、次式により算出される。
0.216÷0.076 = 2.84
上述の計算式より、n≧2.84となり、分割数は3と算出される。よって、図15(b)に示されるように、静止画の更新領域1502が3分割されることで、各静止画の分割更新領域1504a、1504b、1504cの静止画データの送信タイミングは、図15(b)の「S」で示されるタイミングに決めることができる。
図16は、図12(a)に示されるように動画領域が1601、1602、1603というように複数ある場合の、第2の実施形態の具体的動作例を示す図である。
動画の更新領域が複数ある場合は、更新領域優先度決定部801により決定される送信優先度に応じて、送信タイミング決定部802により分割数と送信タイミングが決定される。
更新領域1601と更新領域1602の優先度が“1”(図9参照)であると仮定すると、各更新領域のサイズにあわせて各更新領域の送信時間の閾値が設定される。更新領域1601と更新領域1602の領域サイズ比が例えば3:2であれば、送信時間の閾値はそれぞれ60ミリ秒、40ミリ秒と設定される。第1の実施形態における図7の場合と同様して、更新領域1601と更新領域1602の分割数を決定すると、共に分割数は2となる。この結果、図16(b)に示されるように、更新領域1601の2つの分割更新領域は実線の矢印で示される分割タイミングで送信され、更新領域1602の2つの分割更新領域は破線の矢印で示される分割タイミングで送信される。
更新領域1601と更新領域1602のPフレームの送信時に更新領域1603のデータが送信される場合、更新領域1601と更新領域1602のPフレームの送信時における更新領域1603の送信時間の閾値は75.4ミリ秒となり、第1の実施形態における図7の場合と同様の計算により、更新領域1603の分割数は1となる。この結果、図16(b)に示されるように、更新領域1603は一点鎖線の矢印で示されるタイミングで送信される。
図17は、ネットワーク帯域が変動した場合の第2の実施形態の具体的動作例を示す図である。
例えば図17の1701のタイミングでネットワーク帯域が変動した場合、動画の更新領域のサイズ変更は、図17の1702のタイミングで示される次のIフレームの送信タイミングで行われる。
更新領域の分割更新領域すべてのPフレームが同時に送信できなくないほど、ネットワーク帯域が狭くなった場合は、動画の更新領域を変更したとしてもフレームレートは低下する。ただし、Iフレーム送信時のことを考慮して動画の更新領域の変更は、次のIフレームの送信タイミングでおこなう。
図17の1703または1704などに示されるように、すべてのPフレームを送信タイミングごとに送信することはできないため、分割領域の送信優先順に送信される。
図18は、新たな動画領域を検出した場合の第2の実施形態の具体的動作例を示す図である。
図18において、動画の更新領域がある状態で、1801または1803のタイミングでさらに動画の更新領域が検出されると、更新領域の送信優先度にあわせて送信タイミングが決定される。
送信優先度が高い動画の更新領域が検出されるとすぐに、新たな動画の更新領域の動画圧縮が開始される。
分割数は第1の実施形態における図7の場合と同様に決定されるが、送信時間の閾値は図16の場合と同様に、既存の動画の更新領域のサイズとの比で決定される。
既存の動画の更新領域がIフレームを送信する例えば図18の1802のタイミングで、既存の動画の更新領域についても、図16の場合と同様に、動画の更新領域のサイズ比から送信時間の閾値が取得され、分割数が決定される。
送信優先度が低い動画の更新領域が検出された場合は、図15の場合と同様に、送信優先度が高い動画の更新領域のPフレームの送信時に、検出された動画の更新領域のデータが送信される。
図19は、更新領域サイズが変更される場合の第2の実施形態の具体的動作例を示す図である。
更新領域のサイズが変更された場合、サイズを変更するタイミングが制御される。
新たな更新領域が現在の更新領域内に収まる場合、次のIフレームの送信タイミングで、新たな更新領域が動画の更新領域に変更される。
新たな更新領域が現在の更新領域に一部でも重なる場合、現在動画の更新領域となっていない領域について、新たな動画の更新領域として送信される。新たな動画の更新領域としての送信については、図18の場合と同様の制御が実施される。ただし、既存更新領域の更新領域が閾値以上に小さくなった場合には、次のIフレーム送信タイミングまで待たずに、すぐに更新領域が変更される。新たな更新領域における、すべての分割領域のIフレーム送信タイミングの一部に既存の更新領域のIフレーム送信タイミングが重なる場合には、次のIフレーム送信タイミングまで待たずに、すぐに更新領域が変更される。
図20は、第1または第2の実施形態のシステムをソフトウェア処理として実現できるコンピュータのハードウェア構成の一例を示す図である。
図20に示されるコンピュータは、CPU2001、メモリ2002、入力装置2003、出力装置2004、外部記憶装置2005、可搬記録媒体2009が挿入される可搬記録媒体駆動装置2006、及び通信インタフェース2007を有し、これらがバス2008によって相互に接続された構成を有する。同図に示される構成は上記システムを実現できるコンピュータの一例であり、そのようなコンピュータはこの構成に限定されるものではない。
CPU2001は、当該コンピュータ全体の制御を行う。メモリ2002は、プログラムの実行、データ更新等の際に、外部記憶装置2005(或いは可搬記録媒体2009)に記憶されているプログラム又はデータを一時的に格納するRAM等のメモリである。CUP2001は、プログラムをメモリ2002に読み出して実行することにより、全体の制御を行う。
入力装置2003は、ユーザによるキーボードやマウス等による入力操作を検出し、その検出結果をCPU2001に通知する。
出力装置2004は、CPU2001の制御によって送られてくるデータを表示装置や印刷装置に出力する。
外部記憶装置2005は、例えばハードディスク記憶装置である。主に各種データやプログラムの保存に用いられる。
可搬記録媒体駆動装置2006は、光ディスクやSDRAM、コンパクトフラッシュ(登録商標)等の可搬記録媒体2009を収容するもので、外部記憶装置2005の補助の役割を有する。
通信インタフェース2007は、例えばLAN(ローカルエリアネットワーク)又はWAN(ワイドエリアネットワーク)の通信回線を接続するための装置である。
第1の実施形態に係る図1の構成または第2の実施形態による図8の構成を有するシステムは、図1または図8の各処理部の機能、あるいは図5、図6、または図10〜図14のフローチャート等で実現される処理を搭載したプログラムをCPU2001が実行することで実現される。そのプログラムは、例えば外部記憶装置2005や可搬記録媒体2009に記録して配布してもよく、或いはネットワーク接続装置2007によりネットワークから取得できるようにしてもよい。
以上の各実施形態に関して、更に以下の付記を開示する。
(付記1)
ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する情報処理装置であって、
前記コンピュータの実行結果を描画する画面を保持する画像メモリに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出する更新領域抽出部と、
前記ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、およびフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、前記動画の更新領域の分割状態を決定する分割状態決定部と、
前記決定された分割状態で、前記動画領域と判定された前記更新領域を分割する更新領域分割部と、
前記分割された更新領域を前記端末装置に送信する更新領域送信部と、
を備えることを特徴とする情報処理装置。
(付記2)
前記更新領域抽出部は、前記画像メモリに格納された画面から静止画として更新が行われる領域を静止画の更新領域としてさらに抽出し、
前記分割状態決定部は、記前記動画の更新領域の分割状態とともに、前記静止画の更新領域の分割状態を決定する、
ことを特徴とする付記1に記載の情報処理装置。
(付記3)
前記更新領域が複数ある場合に当該更新領域の送信の優先度を決定する更新領域優先度決定部と、
前記送信の優先度、送信するデータの種類、および前記ネットワークの帯域に基づいて、前記分割された更新領域の送信タイミングを決定する送信タイミング決定部と、
を更に備え、
前記更新領域送信部は、前記決定された送信タイミングで前記分割された更新領域を送信する、
ことを特徴とする付記1または2のいずれかに記載の情報処理装置。
(付記4)
ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する情報処理方法であって、
前記コンピュータの実行結果を描画する画面を保持する画像メモリに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出し、
前記ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、およびフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、前記動画の更新領域の分割状態を決定し、
前記決定された分割状態で、前記動画領域と判定された前記更新領域を分割し、
前記分割された更新領域を前記端末装置に送信する、
ことを特徴とする情報処理方法。
(付記5)
ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する前記コンピュータに、
前記コンピュータの実行結果を描画する画面を保持する画像メモリに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出し、
前記ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、およびフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、前記動画の更新領域の分割状態を決定し、
前記決定された分割状態で、前記動画領域と判定された前記更新領域を分割し、
前記分割された更新領域を前記端末装置に送信する、
処理を実行させるための情報処理プログラム。
(付記6)
付記1ないし3のいずれかに記載の情報処理装置と通信して前記表示部に前記コンピュータの実行結果を示すサーバ画面を表示する端末装置であって、
前記情報処理装置から、前記サーバ画面上の動画の更新領域または動画の分割された更新領域のデータを受信し、当該受信したデータを動画デコードして、前記表示部に対応するメモリの画面展開領域に展開し、前記表示部に表示させる動画更新領域表示部と、
前記情報処理装置から、前記サーバ画面上の静止画の更新領域または静止画の分割された更新領域のデータを受信し、当該受信したデータを静止画デコードして、前記表示部に対応するメモリの画面展開領域に展開し、前記表示部に表示させる静止画更新領域表示部と、
を備えることを特徴とする端末装置。
100 サーバ
101、122 通信部
102 操作情報取得部
103 表示画面生成部
104 フレームバッファ
105 画面更新通知部
106 高頻度画面更新領域検出部
107 更新領域分割部
108 送信時間推定部
109 動画圧縮率推定部
110 分割サイズ決定部
111 更新データ生成部
112 更新領域送信順番決定部
113 転送速度推定部
120 クライアント端末
121 操作情報取得部
123 画面更新情報取得部
124 画面領域表示部
125 高頻度画面領域表示部
126 画面表示部
801 更新領域優先度決定部
802 送信タイミング決定部
2001 CPU
2002 メモリ
2003 入力装置
2004 出力装置
2005 外部記憶装置
2006 可搬記録媒体駆動装置
2007 通信インタフェース
2008 バス
2009 可搬記録媒体

Claims (6)

  1. ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する情報処理装置であって、
    前記コンピュータの実行結果を描画する画面を保持する画像メモリに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出する更新領域抽出部と、
    前記ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、およびフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、前記動画の更新領域の分割状態を決定する分割状態決定部と、
    前記決定された分割状態で、前記動画領域と判定された前記更新領域を分割する更新領域分割部と、
    前記分割された更新領域を前記端末装置に送信する更新領域送信部と、
    を備えることを特徴とする情報処理装置。
  2. 前記更新領域抽出部は、前記画像メモリに格納された画面から静止画として更新が行われる領域を静止画の更新領域としてさらに抽出し、
    前記分割状態決定部は、記前記動画の更新領域の分割状態とともに、前記静止画の更新領域の分割状態を決定する、
    ことを特徴とする請求項1に記載の情報処理装置。
  3. 前記更新領域が複数ある場合に当該更新領域の送信の優先度を決定する更新領域優先度決定部と、
    前記送信の優先度、送信するデータの種類、および前記ネットワークの帯域に基づいて、前記分割された更新領域の送信タイミングを決定する送信タイミング決定部と、
    を更に備え、
    前記更新領域送信部は、前記決定された送信タイミングで前記分割された更新領域を送信する、
    ことを特徴とする請求項1または2のいずれかに記載の情報処理装置。
  4. ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する情報処理方法であって、
    前記コンピュータの実行結果を描画する画面を保持する画像メモリに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出し、
    前記ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、およびフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、前記動画の更新領域の分割状態を決定し、
    前記決定された分割状態で、前記動画領域と判定された前記更新領域を分割し、
    前記分割された更新領域を前記端末装置に送信する、
    ことを特徴とする情報処理方法。
  5. ネットワーク経由で接続された端末装置の表示部にコンピュータの実行結果を表示するための画像を生成してネットワークへ送信する前記コンピュータに、
    前記コンピュータの実行結果を描画する画面を保持する画像メモリに格納された画面から動画として更新が行われる領域を動画の更新領域として抽出し、
    前記ネットワークの帯域、予め設定した送信時間の閾値、フレーム間予測を用いずに符号化されるフレームの平均圧縮率、およびフレーム間予測を用いて符号化されるフレームの平均圧縮率を含む情報から、前記動画の更新領域の分割状態を決定し、
    前記決定された分割状態で、前記動画領域と判定された前記更新領域を分割し、
    前記分割された更新領域を前記端末装置に送信する、
    処理を実行させるための情報処理プログラム。
  6. 請求項1ないし3のいずれかに記載の情報処理装置と通信して前記表示部に前記コンピュータの実行結果を示すサーバ画面を表示する端末装置であって、
    前記情報処理装置から、前記サーバ画面上の動画の更新領域または動画の分割された更新領域のデータを受信し、当該受信したデータを動画デコードして、前記表示部に対応するメモリの画面展開領域に展開し、前記表示部に表示させる動画更新領域表示部と、
    前記情報処理装置から、前記サーバ画面上の静止画の更新領域または静止画の分割された更新領域のデータを受信し、当該受信したデータを静止画デコードして、前記表示部に対応するメモリの画面展開領域に展開し、前記表示部に表示させる静止画更新領域表示部と、
    を備えることを特徴とする端末装置。
JP2014023048A 2014-02-10 2014-02-10 情報処理装置、方法、プログラム、および情報処理システム Expired - Fee Related JP6248671B2 (ja)

Priority Applications (4)

Application Number Priority Date Filing Date Title
JP2014023048A JP6248671B2 (ja) 2014-02-10 2014-02-10 情報処理装置、方法、プログラム、および情報処理システム
EP15150405.7A EP2914009B1 (en) 2014-02-10 2015-01-08 Information processing device, method, program, and terminal device
US14/593,232 US20150229960A1 (en) 2014-02-10 2015-01-09 Information processing device, method, and terminal device
CN201510056108.7A CN104837013A (zh) 2014-02-10 2015-02-03 信息处理设备、方法、程序和终端设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014023048A JP6248671B2 (ja) 2014-02-10 2014-02-10 情報処理装置、方法、プログラム、および情報処理システム

Publications (2)

Publication Number Publication Date
JP2015149040A true JP2015149040A (ja) 2015-08-20
JP6248671B2 JP6248671B2 (ja) 2017-12-20

Family

ID=52339004

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014023048A Expired - Fee Related JP6248671B2 (ja) 2014-02-10 2014-02-10 情報処理装置、方法、プログラム、および情報処理システム

Country Status (4)

Country Link
US (1) US20150229960A1 (ja)
EP (1) EP2914009B1 (ja)
JP (1) JP6248671B2 (ja)
CN (1) CN104837013A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016057965A (ja) * 2014-09-11 2016-04-21 富士通株式会社 サーバ、保存判定プログラムおよび保存判定方法
US11557018B2 (en) 2020-09-02 2023-01-17 Fujitsu Limited Image processing apparatus and computer-readable recording medium storing screen transfer program

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105765973B (zh) * 2015-03-31 2018-06-08 深圳市大疆创新科技有限公司 一种图像编码的方法及编码装置
JP6494439B2 (ja) * 2015-06-05 2019-04-03 キヤノン株式会社 通信装置およびその制御方法
US20170186401A1 (en) * 2015-12-28 2017-06-29 Industrial Technology Research Institute Server device, client device and dynamic image transmission method for virtual desktop infrastructure
CN106997348A (zh) * 2016-01-22 2017-08-01 腾讯科技(深圳)有限公司 一种数据绘制方法和装置
CN106101830A (zh) * 2016-07-08 2016-11-09 中霆云计算科技(上海)有限公司 一种基于区域检测和应用检测相结合的视频流检测方法
WO2018072675A1 (en) 2016-10-18 2018-04-26 Zhejiang Dahua Technology Co., Ltd. Methods and systems for video processing
JP2019056971A (ja) * 2017-09-19 2019-04-11 株式会社東芝 データ転送回路、データ転送方法及びプログラム
JP6907888B2 (ja) * 2017-10-30 2021-07-21 富士通株式会社 情報処理システム、情報処理装置および情報処理プログラム
JP7234776B2 (ja) * 2019-04-26 2023-03-08 富士通株式会社 受信データ表示プログラム、受信データ表示方法、及び電子機器
JP7321961B2 (ja) * 2020-03-26 2023-08-07 株式会社ソニー・インタラクティブエンタテインメント 画像処理装置および画像処理方法
EP4281926A1 (en) 2021-07-13 2023-11-29 Samsung Electronics Co., Ltd. A system and method for rendering differential video on graphical displays
CN114416000B (zh) * 2021-12-29 2024-02-20 上海赫千电子科技有限公司 一种应用于智能汽车的多屏互动方法、多屏互动系统

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007299029A (ja) * 2006-04-27 2007-11-15 Konica Minolta Business Technologies Inc 情報処理装置、情報処理方法及びプログラム
WO2009004996A1 (ja) * 2007-06-29 2009-01-08 Nec Corporation 画面伝送システム、画面送信サーバ、画面伝送方法およびプログラム記録媒体
JP2012065314A (ja) * 2010-09-20 2012-03-29 Hitachi Ltd データ配送装置及びデータ配送システム
JP2013131866A (ja) * 2011-12-20 2013-07-04 Fujitsu Ltd 情報処理装置、画像送信方法及び画像送信プログラム

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1374430A4 (en) * 2001-03-05 2005-08-17 Intervideo Inc SYSTEMS AND METHODS FOR ROBUST ERROR CODING
JP4111926B2 (ja) * 2004-03-09 2008-07-02 株式会社リコー 画像処理装置、プログラム、記憶媒体及び画像送信方法
KR101277877B1 (ko) * 2005-01-21 2013-07-30 삼성전자주식회사 동기화 이더넷 시스템에서 지터없이 데이터를 전송하는 방법
JP4405419B2 (ja) * 2005-03-31 2010-01-27 株式会社東芝 画面送信装置
JP4232114B2 (ja) * 2006-02-17 2009-03-04 ソニー株式会社 データ処理装置およびデータ処理方法、並びにプログラム
US8467444B2 (en) * 2008-06-16 2013-06-18 Canon Kabushiki Kaisha Information processing system, information processing apparatus, information processing method, and program
JP5032419B2 (ja) * 2008-08-27 2012-09-26 株式会社東芝 サーバ、画面送信方法およびコンピュータプログラム
KR101450580B1 (ko) * 2008-11-19 2014-10-14 삼성전자주식회사 이미지 합성 방법 및 장치
JP5471794B2 (ja) * 2010-05-10 2014-04-16 富士通株式会社 情報処理装置、画像送信プログラム及び画像表示方法
JP5720211B2 (ja) * 2010-12-03 2015-05-20 富士通株式会社 情報処理装置、情報処理方法および情報処理プログラム
JP5367749B2 (ja) * 2011-03-25 2013-12-11 株式会社東芝 サーバ装置、通信方法およびプログラム
JP5920006B2 (ja) * 2012-05-14 2016-05-18 富士通株式会社 画面更新制御プログラム、画面更新制御方法、および情報処理装置
WO2014017003A1 (ja) * 2012-07-25 2014-01-30 日本電気株式会社 更新領域検出装置
CN104662900B (zh) * 2012-09-19 2018-02-13 日本电气株式会社 视频图像编码设备
WO2014155919A1 (ja) * 2013-03-27 2014-10-02 日本電気株式会社 画像符号化装置、画像符号化方法および画像符号化プログラム
JP6476631B2 (ja) * 2013-09-19 2019-03-06 株式会社リコー 情報処理装置、データ表示方法、プログラム
GB201318658D0 (en) * 2013-10-22 2013-12-04 Microsoft Corp Controlling resolution of encoded video

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007299029A (ja) * 2006-04-27 2007-11-15 Konica Minolta Business Technologies Inc 情報処理装置、情報処理方法及びプログラム
WO2009004996A1 (ja) * 2007-06-29 2009-01-08 Nec Corporation 画面伝送システム、画面送信サーバ、画面伝送方法およびプログラム記録媒体
JP2012065314A (ja) * 2010-09-20 2012-03-29 Hitachi Ltd データ配送装置及びデータ配送システム
JP2013131866A (ja) * 2011-12-20 2013-07-04 Fujitsu Ltd 情報処理装置、画像送信方法及び画像送信プログラム

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2016057965A (ja) * 2014-09-11 2016-04-21 富士通株式会社 サーバ、保存判定プログラムおよび保存判定方法
US11557018B2 (en) 2020-09-02 2023-01-17 Fujitsu Limited Image processing apparatus and computer-readable recording medium storing screen transfer program

Also Published As

Publication number Publication date
EP2914009A1 (en) 2015-09-02
CN104837013A (zh) 2015-08-12
US20150229960A1 (en) 2015-08-13
JP6248671B2 (ja) 2017-12-20
EP2914009B1 (en) 2017-12-13

Similar Documents

Publication Publication Date Title
JP6248671B2 (ja) 情報処理装置、方法、プログラム、および情報処理システム
US11824913B2 (en) Video stream management for remote graphical user interfaces
JP6288594B2 (ja) デスクトップクラウドベースのメディア制御方法およびデバイス
KR102087987B1 (ko) 마스터 기기, 클라이언트 기기, 및 그에 따른 화면 미러링 방법
JP4585479B2 (ja) サーバ装置および映像配信方法
JP5326234B2 (ja) 画像送信装置、画像送信方法および画像送信システム
EP2912546B1 (en) Performance enhancement in virtual desktop infrastructure (vdi)
US9213521B2 (en) Control method of information processing apparatus and information processing apparatus
CN111221491A (zh) 交互控制方法及装置、电子设备、存储介质
US20160014193A1 (en) Computer system, distribution control system, distribution control method, and computer-readable storage medium
CN112764853A (zh) 一种投屏方法、设备及系统
US20160155429A1 (en) Information processing apparatus and terminal device
US9819958B2 (en) Drawing system, information processing apparatus and drawing control method which switch drawing from still image data to video image data
EP3264284B1 (en) Data processing method and device
CN110798700B (zh) 视频处理方法、视频处理装置、存储介质与电子设备
KR20160015123A (ko) 클라우드 스트리밍 서비스 시스템, 스틸 이미지 기반 클라우드 스트리밍 서비스 방법 및 이를 위한 장치
JP2008506324A (ja) アプリケーション共有時における画像データの伝送
US10025550B2 (en) Fast keyboard for screen mirroring
JP6499582B2 (ja) 送信側コンピュータ、受信側コンピュータ、及びそれらにより実行される方法、並びにコンピュータプログラム
US20240048727A1 (en) Method and system of low latency video coding with interactive applications
WO2022148356A1 (zh) 编码方法、电子设备、通信系统、存储介质和程序产品
WO2016119217A1 (zh) 视频通信中放大视频图像的方法和终端
JP2019067413A (ja) 送信側コンピュータ、受信側コンピュータ、及びそれらにより実行される方法、並びにコンピュータプログラム
CN115002484A (zh) 降低延时的视频编解码方法、视频会议系统及存储介质
JP2018125690A (ja) 情報処理装置、情報表示装置、情報処理方法、情報表示方法、およびプログラム

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161004

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170704

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170630

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170901

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: 20171024

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171106

R150 Certificate of patent or registration of utility model

Ref document number: 6248671

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

LAPS Cancellation because of no payment of annual fees