CN109582462A - 通信方法及*** - Google Patents

通信方法及*** Download PDF

Info

Publication number
CN109582462A
CN109582462A CN201811388907.4A CN201811388907A CN109582462A CN 109582462 A CN109582462 A CN 109582462A CN 201811388907 A CN201811388907 A CN 201811388907A CN 109582462 A CN109582462 A CN 109582462A
Authority
CN
China
Prior art keywords
block
virtual machine
terminal device
image
display interface
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.)
Pending
Application number
CN201811388907.4A
Other languages
English (en)
Inventor
连荣刚
范志刚
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.)
Xian Wanxiang Electronics Technology Co Ltd
Original Assignee
Xian Wanxiang Electronics Technology Co 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 Xian Wanxiang Electronics Technology Co Ltd filed Critical Xian Wanxiang Electronics Technology Co Ltd
Priority to CN201811388907.4A priority Critical patent/CN109582462A/zh
Publication of CN109582462A publication Critical patent/CN109582462A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • G06F9/5077Logical partitioning of resources; Management or configuration of virtualized 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/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/176Methods 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 block, e.g. a macroblock
    • 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/186Methods 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 a colour or a chrominance component
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/60Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本公开提供一种通信方法及***,涉及通信技术领域,能够能够降低对终端设备硬件资源的需求。具体技术方案为:连接服务器建立终端设备和虚拟机之间的连接,所述虚拟机运行于资源服务器上;所述虚拟机接收所述终端设备发送的服务请求;所述虚拟机根据所述服务请求执行指示的操作,并根据操作结果生成终端显示界面;所述虚拟机对所述终端显示界面进行图像编码,向所述终端设备发送编码后的所述终端显示界面。本公开的方案用于实现终端设备和服务器之间通信。

Description

通信方法及***
技术领域
本公开涉及通信技术领域,尤其涉及通信方法及***。
背景技术
台式电脑、笔记本电脑等终端设备,依靠本地的计算资源承担计算、存储任务。各种应用软件运行过程中对硬件资源的耗用量不断增长,而终端设备有限的硬件资源不足以支持数量更多、资源耗用量更大的应用。导致用户一边在花更多钱购买硬件配置更高的电脑,一边又觉得电脑处理任务的速度越来越慢。
发明内容
本公开实施例提供一种通信方法及***,能够能够降低对终端设备硬件资源的需求。所述技术方案如下:
根据本公开实施例的第一方面,提供一种通信方法,该方法包括:
连接服务器建立终端设备和虚拟机之间的连接,所述虚拟机运行于资源服务器上;
所述虚拟机接收所述终端设备发送的服务请求;
所述虚拟机根据所述服务请求执行指示的操作,并根据操作结果生成终端显示界面;
所述虚拟机对所述终端显示界面进行图像编码,向所述终端设备发送编码后的所述终端显示界面。
本公开提供的技术方案,在资源服务器上运行虚拟机,终端设备与虚拟机连接,终端设备向虚拟机发送服务请求,虚拟机根据服务请求执行指示的操作,即完成运算、存储等任务,根据操作结果生成终端显示界面,将该显示界面进行图像编码发送至终端设备,由终端设备解码并显示该显示界面,终端设备作为控制终端和显示终端,配置少量的硬件资源用于执行触发服务请求和解码显示功能即可。采用本公开提供的技术方案可减少终端设备所需的硬件资源配置。
在一个实施例中,所述虚拟机对所述终端显示界面进行图像编码,包括:
将所述终端显示界面的图像帧划分为M个块,将M个块分为文字块或者图像块;
采用文字块或者图像块各自对应的压缩算法,对文字块或者图像块进行图像编码生成压缩码流。
在一个实施例中,所述将M个块分为文字块或者图像块,包括:
获取M个块中每个块的亮度分量,统计每个块亮度分量的亮度方差;
根据每个块亮度分量的亮度方差,将M个块分为文字块或者图像块。
在一个实施例中,采用文字块或者图像块各自对应的压缩算法,对文字块或者图像块进行图像编码生成压缩码流,包括:
将文字块按照主颜色和非主颜色分为多个质量层的文字压缩码流;其中,对于主颜色使用索引表编码,对于非主颜色的逃逸色采用基于位平面的渐进式编码;
或者,将图像块采用基于小波变换的渐进式图像编码算法,分为多个图像编码质量层的图像压缩码流。
在一个实施例中,还包括:
根据所述虚拟机与所述终端之间的传输带宽确定所述终端显示界面的图像质量等级;
按照所述图像质量等级,将所述文字压缩码流的至少一个质量层传输到接收端;或者,按照所述图像质量等级,将所述图像压缩码流的至少一个质量层传输到接收端。
在一个实施例中,所述虚拟机对所述终端显示界面进行图像编码,包括:
将所述终端显示界面的图像帧划分为M个块,判断M个块中每个块是否与参考帧图像中相同位置的块相同;
根据判断结果将所述M个块分为运动匹配块、预测块或者帧内块;
根据分类对每个块进行编码。
在一个实施例中,还包括:应用服务器向所述终端设备和所述虚拟机发送会话账号;
所述连接服务器建立终端设备和虚拟机之间的连接,包括:所述连接服务器根据所述终端设备和所述虚拟机各自的会话账号,建立所述终端设备和所述虚拟机之间的会话。
在一个实施例中,还包括:
所述应用服务器接收到所述终端设备发送的连接请求时,向数据服务器发送账号请求;
所述数据服务器为所述终端设备和所述虚拟机分配会话账号,并将所述终端设备和所述虚拟机各自对应的会话账号发送至所述应用服务器和所述连接服务器。
在一个实施例中,还包括:
媒体服务器通过网络穿透策略,根据所述终端设备和所述虚拟机各自的媒体账号,为所述终端设备和所述虚拟机提供数据转发。
在一个实施例中,还包括:
数据服务器为所述终端设备和所述虚拟机分配媒体账号;
所述数据服务器将所述终端设备和所述虚拟机发送的媒体账号发送至所述媒体服务器;
所述应用服务器向所述终端设备和所述虚拟机转发所述数据服务器发送的所述终端设备和所述虚拟机的媒体账号。
在一个实施例中,还包括:
所述应用服务器向数据服务器转发所述终端设备发送的验证信息;
所述应用服务器向所述终端设备转发所述数据服务器发送的验证结果信息。
在一个实施例中,还包括:
所述应用服务器向所述终端设备转发所述数据服务器发送的所述终端设备的可用应用列表。
根据本公开实施例的第二方面,提供一种通信***,包括:连接服务器、资源服务器和终端设备;
所述连接服务器,用于建立所述终端设备和虚拟机之间的连接,所述虚拟机运行于所述资源服务器上;
所述虚拟机接收所述终端设备发送的服务请求;
所述虚拟机根据所述服务请求执行指示的操作,并根据操作结果生成终端显示界面;
所述虚拟机对所述终端显示界面进行图像编码,向所述终端设备发送编码后的所述终端显示界面;
所述终端设备解码并显示所述显示界面。
在一个实施例中,所述虚拟机,用于将所述终端显示界面的图像帧划分为M个块,将M个块分为文字块或者图像块;采用文字块或者图像块各自对应的压缩算法,对文字块或者图像块进行图像编码生成压缩码流。
在一个实施例中,所述虚拟机,用于获取M个块中每个块的亮度分量,统计每个块亮度分量的亮度方差;根据每个块亮度分量的亮度方差,将M个块分为文字块或者图像块。
在一个实施例中,所述虚拟机,用于将文字块按照主颜色和非主颜色分为多个质量层的文字压缩码流;其中,对于主颜色使用索引表编码,对于非主颜色的逃逸色采用基于位平面的渐进式编码;或者,将图像块采用基于小波变换的渐进式图像编码算法,分为多个图像编码质量层的图像压缩码流。
在一个实施例中,所述虚拟机,用于根据所述虚拟机与所述终端之间的传输带宽确定所述终端显示界面的图像质量等级;按照所述图像质量等级,将所述文字压缩码流的至少一个质量层传输到接收端;或者,按照所述图像质量等级,将所述图像压缩码流的至少一个质量层传输到接收端。
在一个实施例中,所述虚拟机,用于将所述终端显示界面的图像帧划分为M个块,判断M个块中每个块是否与参考帧图像中相同位置的块相同;根据判断结果将所述M个块分为运动匹配块、预测块或者帧内块;根据分类对每个块进行编码。
在一个实施例中,还包括:应用服务器;
所述应用服务器,还用于向所述终端设备和所述虚拟机发送各自对应的会话账号;
所述连接服务器,还用于根据所述终端设备和所述虚拟机各自的会话账号,建立所述终端设备和所述虚拟机之间的会话。
在一个实施例中,还包括:数据服务器;
所述应用服务器,还用于在接收到所述终端设备发送的连接请求时,向数据服务器发送账号请求;
所述数据服务器,还用于为所述终端设备和所述虚拟机分配会话账号,并将所述终端设备和所述虚拟机各自对应的会话账号发送至所述应用服务器和所述连接服务器。
在一个实施例中,还包括媒体服务器;
所述媒体服务器,用于通过网络穿透策略,根据所述终端设备和所述虚拟机各自的媒体账号,为所述终端设备和所述虚拟机提供数据转发。
在一个实施例中,还包括:数据服务器;
所述数据服务器,还用于为所述终端设备和所述虚拟机分配媒体账号,将所述终端设备和所述虚拟机发送的媒体账号发送至所述媒体服务器;
所述应用服务器,还用于向所述终端设备和所述虚拟机转发所述数据服务器发送的所述终端设备和所述虚拟机的媒体账号。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。
图1是本公开实施例提供的一种通信方法的应用场景示意图。
图2是本公开实施例提供的一种通信方法的流程图。
图3是本公开实施例提供的一种通信方法的应用场景示意图。
图4是本公开实施例提供的一种通信方法的流程图。
图5是本公开实施例提供的通信流程的交互图。
图6是本公开实施例提供的终端设备显示界面的说明示意图。
图7是本公开实施例提供的通信流程的交互图。
图8是本公开实施例提供的通信流程的交互图。
图9是本公开实施例提供的一种通信***的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
终端设备所需承担的运算量、存储量越大,对本地硬件资源的需求量就越大。本公开的目的在于,减少终端设备所需承担的运算、存储量,从而减少终端设备对硬件资源的需求量。
本公开实施例提供一种通信方法,应用于服务器端。服务器端可包括一个活以上服务器。参照图1所示,服务器11的数量可以是一台或以上,可以为专用服务器,也可以为采用虚拟化技术建立的一个或多个服务器实例。服务器11承担运算、存储、连接控制等功能。终端设备12通过网络与服务器11连接。终端设备12请求服务器11执行运算、存储、连接等任务,服务器11将执行结果的显示界面发送给终端设备12,终端设备12显示该显示界面。
服务器可服务多个用户,每个用户对应各自的一个或以上虚拟机,本公开的实施例,以一个用户以及该用户的虚拟机为例进行说明。
本公开实施例提供一种通信方法,如图2所示,该通信方法包括以下步骤:
201、连接服务器建立终端设备和虚拟机之间的连接。
连接服务器用于为用户建立终端设备与虚拟机之间的连接。例如,当用户使用账户和密码从终端设备发起登录请求时,连接服务器建立终端设备和该用户虚拟机之间的连接。
虚拟机运行于资源服务器上。虚拟机的资源可根据用户的需求进行配置。
202、虚拟机接收终端设备发送的服务请求。
服务请求用于指示虚拟机执行某种操作,包括但不限于在虚拟机上拖动鼠标、点击鼠标、安装、卸载、使用各种应用等。
203、虚拟机根据服务请求执行指示的操作,并根据操作结果生成终端显示界面。
终端设备作为虚拟机的控制终端,向虚拟机发送服务请求,虚拟机根据服务请求执行指示的操作,根据操作结果生成终端显示界面。
例如,虚拟机运行某种桌面操作***,终端显示界面可以为该操作***桌面所显示的任一界面。
204、虚拟机对终端显示界面进行图像编码,向终端设备发送编码后的终端显示界面。
在一个实施例中,虚拟机采集终端显示界面的像素数据,对像素数据进行编码后发送至终端设备。终端设备作为虚拟机的显示终端,解码并显示该终端显示界面。
本公开实施例提供的通信方法,在资源服务器上运行虚拟机,终端设备与虚拟机连接,终端设备向虚拟机发送服务请求,虚拟机根据服务请求执行指示的操作,即完成运算、存储等任务,根据操作结果生成终端显示界面,将该显示界面进行图像编码发送至终端设备,由终端设备解码并显示该显示界面,终端设备作为控制终端和显示终端,配置少量的硬件资源用于执行触发服务请求和解码显示功能即可。采用本公开提供的技术方案可减少终端设备所需的硬件资源配置。
基于上述图2对应的实施例提供的通信方法,本公开另一实施例提供一种通信方法。
参照图3所示,本实施例以服务器端具体包括资源服务器31、连接服务器32、应用服务器33、数据服务器34和媒体服务器35的情形为例进行说明,其中部分步骤中的内容与图2对应的实施例中的步骤相同或类似,以下只对步骤中不同之处做详细说明。
参照图4所示,本实施例提供的通信方法包括以下步骤:
401、应用服务器接收终端设备发送的验证信息。
在一个实施例中,应用服务器是向终端设备提供业务的入口。参照图5所示,用户在需要使用服务器提供的服务时,操作终端设备向应用服务器发送验证信息,验证信息包括但不限于用户的登录账号、密码等信息。
402、应用服务器向终端设备发送验证结果信息。
参照图5所示,应用服务器接收到验证信息,将验证信息准发至数据服务器。数据服务器预先存储用户注册的验证信息,根据预存储的验证信息对应用服务器发送的验证信息进行验证,将验证结果信息发送至应用服务器。验证结果信息用于指示验证通过或者失败,验证通过的用户为合法用户,可请求服务器端提供服务。
403、应用服务器接收终端设备发送的连接请求。
连接请求用于请求建立终端设备与虚拟机之间的连接。虚拟机运行于资源服务器上。参照图3所示,终端设备与应用服务器之间可基于HTTPS(英文全称:Hyper TextTransfer Protocol over Secure Socket Layer,中文全称:基于安全套接字层的超文本传输协议)建立通信。
参照图5所示,在一个实施例中,数据服务器在向应用服务器发送验证结果信息的同时,将与该用户账号绑定的可用应用列表发送给应用服务器,应用服务器将可用应用列表发送至终端设备。可用应用列表包括至少一个用户可以使用的应用的标识,用户可在终端设备侧选择需要使用的应用。例如,用户使用鼠标双击需要打开的应用时,终端设备向应用服务器发送连接请求,请求与运行该应用的虚拟机建立连接。
在一个实施例中,用户的虚拟机数量有一个或以上。参照图6所示,当用户通过验证后,终端设备显示用户可使用的两个虚拟机的名称。名称可以为虚拟机的属性信息,例如操作***等信息。图6中,一个虚拟机的名称为“win7”,另一个为“Android”。当用户使用鼠标点击其中一个虚拟机的名称时,终端设备向应用服务器发送连接请求,请求与该虚拟机建立连接。
404、应用服务器向数据服务器发送账号请求。
参照图3所示,应用服务器与数据服务器之间可基于LDAP(英文全称:LightweightDirectory Access Protocol,中文全称:轻量目录访问协议)建立通信。
参照图7所示,在一个实施例中,应用服务器接收到终端设备发送的连接请求时,向数据服务器发送账号请求,请求数据服务器为用端设备和虚拟机分配通信账号。
参照图3所示,在一个实施例中,终端设备和虚拟机之间可基于SIP(英文全称:Session Initiation Protocol,中文全称:会话初始协议)建立通信。图7所示为通信账号包括会话账号的情形,会话账号的用途将在后续步骤中进行说明。
405、数据服务器为终端设备和虚拟机分配会话账号。
数据服务器为终端设备和虚拟机分配会话账号,并将终端设备和虚拟机各自对应的会话账号发送至应用服务器和连接服务器。参照图3所示,数据服务器与连接服务器之间可基于LDAP(英文全称:Lightweight Directory Access Protocol,中文全称:轻量目录访问协议)建立通信。
406、应用服务器向终端设备和虚拟机发送会话账号。
参照图3所示,应用服务器与资源服务器之间可基于HTTP(英文全称:HyperTextTransfer Protocol,中文全称:超文本传输协议)建立通信。
参照图7所示,应用服务器将从数据服务器接收到的会话账号转发至虚拟机,虚拟机根据虚拟机的会话账号配置虚拟机上的连接代理,向应用服务器返回配置完成的响应消息。应用服务器接收到该响应消息后,将终端设备的会话账号和虚拟机的会话账号发送至终端设备。
407、连接服务器建立终端设备和虚拟机之间的连接。
终端设备向连接服务器发起呼叫请求,连接服务器根据终端设备和虚拟机各自的会话账号,建立终端设备和虚拟机之间的会话。
408、终端设备与虚拟机之间进行通信。
终端设备和虚拟机之间的会话建立后,终端设备和虚拟机之间可进行通信。
终端设备可向虚拟机发送服务请求,虚拟机根据服务请求执行指示的操作,并根据操作结果生成终端显示界面。虚拟机对终端显示界面进行图像编码,向终端设备发送编码后的终端显示界面。
在一个实施例中,虚拟机可将终端显示界面的文字、图像内容进行分类编码。虚拟机将所述终端显示界面的图像帧划分为M个块,将M个块分为文字块或者图像块;采用文字块或者图像块各自对应的压缩算法,分别对文字块、图像块进行图像编码生成压缩码流。
例如,获取M个块中每个块的亮度分量,统计每个块亮度分量的亮度方差,确定亮度方差小于阈值T1的块为图像块。将亮度方差不小于阈值T1的块称为剩余块。
剩余块可进一步分为图形快或者文字块。根据剩余块的亮度分量统计高梯度点的个数N1以及与主亮度相似点的个数N2。其中,一个点的亮度分量与邻近的像素点的亮度分量的差别超过阈值T2时则该店为高梯度点,一个点的亮度分量与该点所在块中的出现次数最多的亮度分量相比差别小于阈值T3时则该点为主亮度相似点。
将满足以下条件之一的块划分为图像块:
亮度方差小于阈值T1的块;
亮度方差大于或等于阈值T1,且高梯度点的个数N1小于阈值T4;
亮度方差大于或等于阈值T1,高梯度点的个数N1大于或等于阈值T4,且该块的上、左、上左的块为图像块,主亮度相似点的个数小于阈值T5。
亮度方差大于或等于阈值T1,高梯度点的个数N1大于或等于阈值T4,且该块的上、左、上左的块中至少之一为文字块,主亮度相似点的个数小于阈值T6。
将满足以下条件之一的块划分为文字块:
亮度方差大于或等于阈值T1,且高梯度点的个数N1大于或等于阈值T4,且该块的上、左、上左的块为图像块,主亮度相似点的个数大于或等于阈值T5。
亮度方差大于或等于阈值T1,且高梯度点的个数N1大于或等于阈值T4,且该块的上、左、上左的块中至少之一为文字块,主亮度相似点的个数等于阈值T6。
对于文字块,将文字块按照主颜色和非主颜色分为多个质量层的文字压缩码流;其中,对于主颜色使用索引表编码,对于非主颜色的逃逸色采用基于位平面的渐进式编码;
示例性地,对文字块中的4个主颜色记录索引值为0、1、2、3,并使用索引表a标记整个文字块,非主颜色位置索引值记录为4。光栅扫描文字块中像素的索引值,判断其于邻近像素索引值的相关性,与左边像素相似即为L,与正上方像素相似即为U,都不相似记为0,从而得到索引表b。对于索引表b采用水平4个一组使用Huffman编码,同时还需要传输4个主颜色分量的RGB值。对于索引表a中的4位置的像素值也需要传输各个颜色分量(如RGB)的值,在此采用基于位平面的编码方式从最高位平面到最低位平面依次传输各个颜色分量(如RGB)的值,得到分层的文字压缩码流。
对于图像块,将图像块采用基于小波变换的渐进式图像编码算法,分为多个图像编码质量层的图像压缩码流。
由于终端设备的解码能力可能存在差异,另外终端与虚拟机之间带宽大小也可能存在差异,虚拟机在向终端发送文字压缩码流时可发送其中的部分或者全部质量层,虚拟机在向终端发送文字压缩码流时可发送其中的部分或者全部图像编码质量层。
当多个终端的解码器性能存在差异时,不同解码器根据自己的能力,解码部分码流得到图像质量不同的终端显示界面。
当网络传输环境不稳定时,虚拟机可根据与终端之间的传输带宽确定所述终端显示界面的图像质量等级,并根据图像质量等级将压缩码流中的全部或部分质量层传输到接收端。其中,压缩码流包括文字压缩码流或图像压缩码流至少一种。
传输带宽较高时虚拟机可传输较多的质量层,终端设备解码压缩码流后得到图像质量较高的终端显示界面。传输带宽较低时虚拟机可传输较少的质量层,终端设备解码压缩码流后得到图像质量较低的终端显示界面。
在一个实施例中,虚拟机可将根据终端显示界面中的块是否与参考帧图像中的块相同,来确定对终端显示界面中块的编码方式。
例如,虚拟机将所述终端显示界面的图像帧划分为M个块,判断M个块中每个块是否与参考帧图像中相同位置的块相同。
将M个块中的任一块称为块A,当块A与参考帧图像中不同位置的块(计作块B)内容相同时,标记块A为运动匹配块,并记录块A位置到块B位置的运动向量。当块A与参考帧图像中某一块(计作块C)的相似性大于预设门限T时,标记块A为预测块。将M个块中除运动匹配块、预测块之外的块标记为帧内块。
当块A为匹配块时,对块A对应的运动向量进行编码,解码器根据运动向量和块B还原块A的显示内容。当块A为预测块时,根据块C对块A进行预测编码。当块A为帧内块时,对块A采用帧内编码方式进行编码。
通过以上编码方式生成的压缩码流,可适应不同解码能力的终端设备以及不同的传输带宽。
在一个实施例中,数据服务器为终端设备和虚拟机分配的通信账号还包括媒体账号。
参照图3所示,数据服务器与媒体服务器之间可基于LDAP(英文全称:LightweightDirectory Access Protocol,中文全称:轻量目录访问协议)建立通信。
数据服务器将终端设备和虚拟机发送的媒体账号发送至媒体服务器,媒体服务器建立终端设备和虚拟机的媒体账号之间的映射关系。
数据服务器将终端设备和虚拟机发送的媒体账号发送至应用服务器,由应用服务器转发至终端设备和虚拟机。
向终端设备和虚拟机转发数据服务器发送的终端设备和虚拟机的媒体账号。
媒体服务器可以为终端设备和虚拟机提供数据转发。例如,在网络无法穿透或者某些策略约束的情况下(如避免内网地址暴露、路径优选等)提供数据转发。
在一个实施例中,媒体服务器通过网络穿透策略,根据终端设备和虚拟机的媒体账号之间的映射关系,为终端设备和虚拟机提供数据转发。网络穿透策略包括但不限于STUN、TURN等NAT(英文全称:Network Address Translation,中文全称:网络地址转换)协议。其中,STUN是指Simple Traversal of UDP over NATs,NAT的用户数据报协议简单穿越。TURN是指Traversal Using Relay NAT,中继方式穿越NAT。
409、终端设备与虚拟机断开连接。
参照图8所示,用户关闭终端设备或者按快捷键退出连接时,终端设备释放连接,虚拟机向应用服务器发送连接释放的通知,应用服务器指示数据服务器释放原先分配给终端设备和虚拟机的通信账号。
本公开实施例提供的通信方法,在资源服务器上运行虚拟机,终端设备与虚拟机连接,终端设备向虚拟机发送服务请求,虚拟机根据服务请求执行指示的操作,即完成运算、存储等任务,根据操作结果生成终端显示界面,将该显示界面进行图像编码发送至终端设备,由终端设备解码并显示该显示界面,终端设备作为控制终端和显示终端,配置少量的硬件资源用于执行触发服务请求和解码显示功能即可。采用本公开提供的技术方案可减少终端设备所需的硬件资源配置。
基于上述图1-图8对应的实施例中所描述的通信方法,下述为本公开装置实施例,可以用于执行本公开方法实施例。
本公开实施例提供一种通信***,如图9所示,通信***包括:终端设备91和服务器端,服务器端包括连接服务器92和资源服务器93。
连接服务器92,用于建立终端设备91和虚拟机之间的连接,虚拟机运行于资源服务器93上。
虚拟机接收终端设备91发送的服务请求。
虚拟机根据服务请求执行指示的操作,并根据操作结果生成终端显示界面。
虚拟机对终端显示界面进行图像编码,向终端设备91发送编码后的终端显示界面。
终端设备91解码并显示显示界面。
在一个实施例中,服务器端还包括:应用服务器94。
应用服务器94,用于向终端设备91和虚拟机发送各自对应的会话账号。
连接服务器92,还用于根据终端设备91和虚拟机各自的会话账号,建立终端设备91和虚拟机之间的会话。
在一个实施例中,服务器端数据服务器95。
应用服务器94,还用于在接收到终端设备91发送的连接请求时,向数据服务器95发送账号请求。
数据服务器95,还用于为终端设备91和虚拟机分配会话账号,并将终端设备91和虚拟机各自对应的会话账号发送至应用服务器94和连接服务器92。
在一个实施例中,服务器端还包括媒体服务器96。
媒体服务器96,用于通过网络穿透策略,根据终端设备91和虚拟机各自的媒体账号,为终端设备91和虚拟机提供数据转发。
在一个实施例中,服务器端还包括:数据服务器95。
数据服务器95,用于为终端设备91和虚拟机分配媒体账号,将终端设备91和虚拟机发送的媒体账号发送至媒体服务器96。
应用服务器94,还用于向终端设备91和虚拟机转发数据服务器95发送的终端设备91和虚拟机的媒体账号。
本公开实施例提供的通信***,在资源服务器上运行虚拟机,终端设备与虚拟机连接,终端设备向虚拟机发送服务请求,虚拟机根据服务请求执行指示的操作,即完成运算、存储等任务,根据操作结果生成终端显示界面,将该显示界面进行图像编码发送至终端设备,由终端设备解码并显示该显示界面,终端设备作为控制终端和显示终端,配置少量的硬件资源用于执行触发服务请求和解码显示功能即可。采用本公开提供的技术方案可减少终端设备所需的硬件资源配置。
基于上述图1-图8对应的实施例中所描述的通信方法,本公开实施例还提供一种计算机可读存储介质。
该计算机可读存储介质可以是非临时性计算机可读存储介。例如,非临时性计算机可读存储介质可以是只读存储器(英文:Read Only Memory,ROM)、随机存取存储器(英文:Random Access Memory,RAM)、CD-ROM、磁带、软盘和光数据存储装置等。该存储介质上存储有计算机指令,当计算机指令被执行时,可实现上述图1-图8对应的实施例中所描述的通信方法,此处不再赘述。
本领域技术人员在考虑说明书及实践这里公开的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。

Claims (12)

1.一种通信方法,其特征在于,包括:
连接服务器建立终端设备和虚拟机之间的连接,所述虚拟机运行于资源服务器上;
所述虚拟机接收所述终端设备发送的服务请求;
所述虚拟机根据所述服务请求执行指示的操作,并根据操作结果生成终端显示界面;
所述虚拟机对所述终端显示界面进行图像编码,向所述终端设备发送编码后的所述终端显示界面。
2.根据权利要求1所述的方法,其特征在于,所述虚拟机对所述终端显示界面进行图像编码,包括:
将所述终端显示界面的图像帧划分为M个块,将M个块分为文字块或者图像块;
采用文字块或者图像块各自对应的压缩算法,对文字块或者图像块进行图像编码生成压缩码流。
3.根据权利要求2所述的方法,其特征在于,所述将M个块分为文字块或者图像块,包括:
获取M个块中每个块的亮度分量,统计每个块亮度分量的亮度方差;
根据每个块亮度分量的亮度方差,将M个块分为文字块或者图像块。
4.根据权利要求2所述的方法,其特征在于,采用文字块或者图像块各自对应的压缩算法,对文字块或者图像块进行图像编码生成压缩码流,包括:
将文字块按照主颜色和非主颜色分为多个质量层的文字压缩码流;其中,对于主颜色使用索引表编码,对于非主颜色的逃逸色采用基于位平面的渐进式编码;
或者,将图像块采用基于小波变换的渐进式图像编码算法,分为多个图像编码质量层的图像压缩码流。
5.根据权利要求4所述的方法,其特征在于,还包括:
根据所述虚拟机与所述终端之间的传输带宽确定所述终端显示界面的图像质量等级;
按照所述图像质量等级,将所述文字压缩码流的至少一个质量层传输到接收端;或者,按照所述图像质量等级,将所述图像压缩码流的至少一个质量层传输到接收端。
6.根据权利要求1所述的方法,其特征在于,所述虚拟机对所述终端显示界面进行图像编码,包括:
将所述终端显示界面的图像帧划分为M个块,判断M个块中每个块是否与参考帧图像中相同位置的块相同;
根据判断结果将所述M个块分为运动匹配块、预测块或者帧内块;
根据分类对每个块进行编码。
7.一种通信***,其特征在于,包括:连接服务器、资源服务器和终端设备;
所述连接服务器,用于建立所述终端设备和虚拟机之间的连接,所述虚拟机运行于所述资源服务器上;
所述虚拟机接收所述终端设备发送的服务请求;
所述虚拟机根据所述服务请求执行指示的操作,并根据操作结果生成终端显示界面;
所述虚拟机对所述终端显示界面进行图像编码,向所述终端设备发送编码后的所述终端显示界面;
所述终端设备解码并显示所述显示界面。
8.根据权利要求7所述的通信***,其特征在于,
所述虚拟机,用于将所述终端显示界面的图像帧划分为M个块,将M个块分为文字块或者图像块;采用文字块或者图像块各自对应的压缩算法,对文字块或者图像块进行图像编码生成压缩码流。
9.根据权利要求8所述的通信***,其特征在于,
所述虚拟机,用于获取M个块中每个块的亮度分量,统计每个块亮度分量的亮度方差;根据每个块亮度分量的亮度方差,将M个块分为文字块或者图像块。
10.根据权利要求8所述的通信***,其特征在于,
所述虚拟机,用于将文字块按照主颜色和非主颜色分为多个质量层的文字压缩码流;其中,对于主颜色使用索引表编码,对于非主颜色的逃逸色采用基于位平面的渐进式编码;或者,将图像块采用基于小波变换的渐进式图像编码算法,分为多个图像编码质量层的图像压缩码流。
11.根据权利要求10所述的通信***,其特征在于,
所述虚拟机,用于根据所述虚拟机与所述终端之间的传输带宽确定所述终端显示界面的图像质量等级;按照所述图像质量等级,将所述文字压缩码流的至少一个质量层传输到接收端;或者,按照所述图像质量等级,将所述图像压缩码流的至少一个质量层传输到接收端。
12.根据权利要求7所述的通信***,其特征在于,
所述虚拟机,用于将所述终端显示界面的图像帧划分为M个块,判断M个块中每个块是否与参考帧图像中相同位置的块相同;根据判断结果将所述M个块分为运动匹配块、预测块或者帧内块;根据分类对每个块进行编码。
CN201811388907.4A 2018-11-21 2018-11-21 通信方法及*** Pending CN109582462A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201811388907.4A CN109582462A (zh) 2018-11-21 2018-11-21 通信方法及***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201811388907.4A CN109582462A (zh) 2018-11-21 2018-11-21 通信方法及***

Publications (1)

Publication Number Publication Date
CN109582462A true CN109582462A (zh) 2019-04-05

Family

ID=65923121

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201811388907.4A Pending CN109582462A (zh) 2018-11-21 2018-11-21 通信方法及***

Country Status (1)

Country Link
CN (1) CN109582462A (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105262825A (zh) * 2015-10-29 2016-01-20 曲阜师范大学 基于h.265的spice云桌面传输和展现方法及***
CN105472392A (zh) * 2015-12-11 2016-04-06 钟炎培 基于渐进式文字块压缩的屏幕视频编解码方法及编解码器
CN106385592A (zh) * 2016-08-31 2017-02-08 苏睿 图像压缩方法和装置
CN106385585A (zh) * 2016-09-14 2017-02-08 苏睿 帧编解码的方法、装置和***
CN107257382A (zh) * 2017-07-07 2017-10-17 苏睿 数据传输方法及***

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105262825A (zh) * 2015-10-29 2016-01-20 曲阜师范大学 基于h.265的spice云桌面传输和展现方法及***
CN105472392A (zh) * 2015-12-11 2016-04-06 钟炎培 基于渐进式文字块压缩的屏幕视频编解码方法及编解码器
CN106385592A (zh) * 2016-08-31 2017-02-08 苏睿 图像压缩方法和装置
CN106385585A (zh) * 2016-09-14 2017-02-08 苏睿 帧编解码的方法、装置和***
CN107257382A (zh) * 2017-07-07 2017-10-17 苏睿 数据传输方法及***

Similar Documents

Publication Publication Date Title
CN109274634B (zh) 多媒体通信方法及装置、存储介质
CN110301126B (zh) 会议服务器
CN105915953B (zh) 直播视频鉴别的方法、装置、***、服务器和存储介质
CN104796396B (zh) 提供用于基于策略的应用代理的网络代理层的方法和介质
US9485292B2 (en) Display protocol interception in the network for services and network-based multimedia support for VDI
US11736611B2 (en) Visual engagement using automatically dynamically selected visualization mediums
CN102025718A (zh) Sip端点增强器
US11979571B1 (en) Low-latency, peer-to-peer streaming video
KR20150067643A (ko) 클라우드 스토리지 서비스에서 파일 공유 방법 및 그 장치
CN104601649A (zh) 提供关于web应用的起源洞察的方法和***
CN116055473A (zh) 一种基于web的分布式部署云渲染方法和***
CN107172466A (zh) 共享图像数据显示方法和***
US11144655B2 (en) Control viewing access to documents in collaborative scenarios using facial recognition from webcams
US20150033017A1 (en) Methods and Apparatuses for Electronic Message Authentication
Ladewig et al. Are we ready to play in the cloud? Developing new quality certifications to tackle challenges of cloud gaming services
CN109582462A (zh) 通信方法及***
Deshmukh et al. Video conferencing using WebRTC
CN105516070A (zh) 一种认证凭证更替的方法及装置
Seker et al. A benchmark study on the use of webrtc technology for multimedia iot
CN106992995A (zh) 图像数据共享显示方法和***
US20230034519A1 (en) Blockchain based facial anonymization system
KR102053909B1 (ko) 증강현실을 이용한 이메일 서비스 제공 방법
CN111629011B (zh) 一种即时视频通信方法、设备、***及可读存储介质
CN110912858B (zh) 一种基于友好密码策略的安全监控方法及装置
Öztürk HTML-based Digital Signage with Raspberry Pi

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication

Application publication date: 20190405

RJ01 Rejection of invention patent application after publication