CN106227491A - 一种远程桌面视频播放方法、服务器、客户端及系统 - Google Patents
一种远程桌面视频播放方法、服务器、客户端及系统 Download PDFInfo
- Publication number
- CN106227491A CN106227491A CN201610635293.XA CN201610635293A CN106227491A CN 106227491 A CN106227491 A CN 106227491A CN 201610635293 A CN201610635293 A CN 201610635293A CN 106227491 A CN106227491 A CN 106227491A
- Authority
- CN
- China
- Prior art keywords
- video
- target
- client
- virtual machine
- program
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input 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/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital 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
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45504—Abstract machines for programme code execution, e.g. Java virtual machine [JVM], interpreters, emulators
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L65/00—Network arrangements, protocols or services for supporting real-time applications in data packet communication
- H04L65/60—Network streaming of media packets
- H04L65/75—Media network packet handling
- H04L65/765—Media network packet handling intermediate
Abstract
本发明提供了一种远程桌面视频播放方法、服务器、客户端及系统,该远程桌面视频播放方法应用于服务器时,设置至少一个虚拟机,构建每一个虚拟机与对应的客户端之间的连接,所述至少一个虚拟机中目标虚拟机接收对应的客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;根据所述视频基本信息,确定视频超级链接,并根据所述视频超级链接,缓存目标视频信息;将缓存的目标视频信息发送给所述客户端;控制所述客户端解析并播放所述目标视频信息。本发明提供的方案能够使远程桌面视频播放更为流畅。
Description
技术领域
本发明涉及计算机技术领域,特别涉及一种远程桌面视频播放方法、服务器、客户端及系统。
背景技术
远程桌面(Remote Desktop)是通过远程协议的方式,将服务器的桌面在客户端显示。相应地,远程桌面视频播放,主要是,将服务器正在播放的视频在客户端播放。
目前,该远程桌面视频播放方式主要是,首先通过服务器解析视频,并对视频进行播放,然后服务器对播放的视频进行截屏、打包及压缩,并将压缩后的视频播放信息发送给客户端,客户端通过解压及解析等过程对视频进行播放。
可见,在视频播放过程中,需要等待服务器解析、截屏、压缩以及客户端解压和解析等过程,造成远程桌面视频播放不流畅。
发明内容
本发明实施例提供了一种远程桌面视频播放方法、服务器、客户端及系统,能够使远程桌面视频播放更为流畅。
一种远程桌面视频播放方法,应用于服务器,设置至少一个虚拟机,构建每一个虚拟机与对应的客户端之间的连接,还包括:
所述至少一个虚拟机中目标虚拟机接收对应的客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;
根据所述视频基本信息,确定视频超级链接,并根据所述视频超级链接,缓存目标视频信息;
将缓存的目标视频信息发送给所述客户端;
控制所述客户端解析并播放所述目标视频信息。
优选地,上述方法进一步包括:在每一个虚拟机中,设置视频信息缓存库、至少一个功能按钮和至少一个API功能接口;
所述构建每一个虚拟机与对应的客户端之间的连接,包括:构建每一个虚拟机与对应的客户端之间的远程连接协议;
构建所述至少一个功能按钮和至少一个API功能接口之间的关联关系,并为每一个API功能接口设置对应的功能程序,所述功能程序,包括:播放程序、暂停程序、快进程序及后退程序中的任意一种或多种;
所述目标虚拟机接收对应的客户端发送的视频播放请求,包括:通过远程桌面控制方式,所述至少一个功能按钮中目标功能按钮接收对应的客户端的触发,根据所述关联关系,调用所述目标功能按钮对应的目标API功能接口,确定目标功能程序;
所述缓存目标视频信息,包括:通过所述视频信息缓存库访问所述视频超级链接对应的目标视频信息,并对所述目标视频信息进行下载缓存;
所述控制所述客户端播放所述目标视频信息,包括:调用所述目标功能程序,当所述目标程序为播放程序时,通过所述远程连接协议,控制所述客户端播放所述视频信息缓存库下载缓存的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端暂停正在播放的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行快进播放;当所述目标程序为后退程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行后退播放。
优选地,在所述通过远程桌面控制方式,所述至少一个功能按钮中目标功能按钮接收对应的客户端的触发之前,进一步包括:
所述目标虚拟机获取所述至少一个功能按钮的显示数据;
将所述至少一个功能按钮的显示数据转换为远程文件包;
将所述远程文件包发送给客户端,使所述远程文件包中的至少一个功能按钮在所述客户端显示。
一种远程桌面视频播放方法,应用于客户端,与服务器中的至少一个虚拟机中的目标虚拟机相连,还包括:
发送视频播放请求给所述目标虚拟机;
根据所述视频播放请求,接收所述目标虚拟机缓存的目标视频信息;
接收外设的目标虚拟机的控制,解析并播放所述目标视频信息。
优选地,上述方法进一步包括:设置播放插件;
通过远程桌面控制方式,将目标虚拟机中的至少一个功能按钮与所述播放插件组成播放器;
在所述发送包含有视频超级链接的视频播放请求给所述目标虚拟机之前,进一步包括:接收外部对所述播放器中目标功能按钮的触发,生成视频播放请求。
优选地,所述通过远程桌面控制方式,将目标虚拟机中的至少一个功能按钮与所述播放插件组成播放器,包括:
接收所述目标虚拟机发送的远程文件包;
解析出所述远程文件包中的至少一个功能按钮的显示数据;
将所述至少一个功能按钮的显示数据和所述播放插件组合显示。
一种服务器,包括:至少一个虚拟机,其中,每一个虚拟机与对应的外设客户端相连,每一个虚拟机,包括:请求接收单元、缓存单元及发送控制单元,其中,
所述请求接收单元,用于接收对应的外设客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;
所述缓存单元,用于根据所述视频基本信息,确定视频超级链接,并根据所述视频超级链接,缓存目标视频信息;
所述发送控制单元,用于将所述缓存单元缓存的目标视频信息发送给所述外设的客户端,并控制所述客户端解析并播放所述目标视频信息。
优选地,每一个虚拟机通过远程协议与对应的外设客户端,进一步包括:获取单元和远程控制单元;所述请求接收单元,包括:至少一个功能按钮和至少一个API功能接口,所述缓存单元,包括:视频信息缓存库,其中,
所述获取单元,用于获取所述至少一个功能按钮的显示数据;
所述远程控制单元,用于将所述获取单元获取的至少一个功能按钮的显示数据转换为远程文件包;将所述远程文件包发送给外设的客户端,控制所述远程文件包中的至少一个功能按钮在所述客户端显示;
所述至少一个功能按钮中目标功能按钮,与至少一个API功能接口关联,通过远程桌面控制方式,接收对应的客户端的触发,调用所述目标功能按钮对应的目标API功能接口;
所述至少一个API功能接口中每一个API功能接口包含对应的功能程序,其中,目标API功能接口,用于接收所述目标功能按钮的调用,确定目标功能程序,其中,所述功能程序,包括:播放程序、暂停程序、快进程序及后退程序中的任意一种或多种;
所述视频信息缓存库,用于访问所述视频超级链接对应的目标视频信息,并对目标视频信息进行下载缓存;
所述发送控制单元,用于调用所述目标API功能接口确定的目标功能程序,当所述目标程序为播放程序时,通过所述远程连接协议,控制所述客户端播放所述视频信息缓存库下载缓存的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端暂停正在播放的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行快进播放;当所述目标程序为后退程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行后退播放。
一种客户端,其特征在于,与上述任一所述的外设的服务器中的目标虚拟机相连,包括:接收解析单元、组合单元、播放插件及播放控制单元,其中,
所述接收解析单元,用于接收外设的服务器中目标虚拟机发送的远程文件包,解析出所述远程文件包中的至少一个功能按钮的显示数据;
所述组合单元,用于将所述接收解析单元解析出的至少一个功能按钮的显示数据和所述播放插件组合成播放器;
所述播放控制单元,用于接收外部对所述组合单元组合成的播放器中的目标功能按钮的触发,生成视频播放请求,并根据所述视频播放请求,接收外设的目标虚拟机发送的目标视频信息,并接收外设的目标虚拟机的控制,解析并通过所述播放插件播放所述目标视频信息。
一种远程桌面视频播放系统,包括:上述任一所述的服务器和上述任一所述的客户端。
本发明实施例提供了一种远程桌面视频播放方法、服务器、客户端及系统,通过设置至少一个虚拟机,构建每一个虚拟机与对应的客户端之间的连接,并通过至少一个虚拟机中目标虚拟机接收对应的客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;根据所述视频基本信息,确定视频超级链接,根据视频超级链接,缓存目标视频信息;将缓存的目标视频信息发送给客户端;控制客户端解析并播放目标视频信息,整个过程中虚拟机为客户端缓存视频信息,并直接将缓存视频信息发送给客户端进行解析和播放,该过程虚拟机可以控制客户端进行视频播放,而虚拟机本身不再对视频信息进行解析和播放,避免了缓存视频信息在虚拟机中的转换过程,从而使客户端等待缓存视频信息的时间缩短,能够使远程桌面视频播放更为流畅。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的远程桌面视频播放方法的流程图;
图2是本发明另一个实施例提供的远程桌面视频播放方法的流程图;
图3是本发明又一个实施例提供的远程桌面视频播放方法的流程图;
图4是本发明一个实施例提供的功能调用过程流程图;
图5是本发明一个实施例提供的服务器的结构示意图;
图6是本发明另一个实施例提供的服务器的结构示意图;
图7是本发明一个实施例提供的客户端的结构示意图;
图8是本发明一个实施例提供的远程桌面视频播放系统的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明实施例提供了一种远程桌面视频播放方法,应用于服务器,该方法可以包括以下步骤:
步骤101:设置至少一个虚拟机,构建每一个虚拟机与对应的客户端之间的连接;
步骤102:所述至少一个虚拟机中目标虚拟机接收对应的客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;
步骤103:根据所述视频基本信息,确定视频超级链接,并根据所述视频超级链接,缓存目标视频信息;
步骤104:将缓存的目标视频信息发送给所述客户端;
步骤105:控制所述客户端解析并播放所述目标视频信息。
在图1所示的实施例中,通过设置至少一个虚拟机,构建每一个虚拟机与对应的客户端之间的连接,并通过至少一个虚拟机中目标虚拟机接收对应的客户端发送的视频播放请求;并通过获取视频播放请求中的视频超级链接,根据视频超级链接,缓存目标视频信息;将缓存的目标视频信息发送给客户端;控制客户端解析并播放目标视频信息,整个过程中虚拟机为客户端缓存视频信息,并直接将缓存视频信息发送给客户端进行解析和播放,该过程虚拟机可以控制客户端进行视频播放,而虚拟机本身不再对视频信息进行解析和播放,避免了缓存视频信息在服务器中的转换过程,从而使客户端等待缓存视频信息的时间缩短,能够使远程桌面视频播放更为流畅。
在本发明一个实施例中,为了方便用户操作,同时实现对缓存视频信息的管理,以及虚拟机对客户端视频播放的控制,上述方法进一步包括:在每一个虚拟机中,设置视频信息缓存库、至少一个功能按钮和至少一个API功能接口;构建所述至少一个功能按钮和至少一个API功能接口之间的关联关系,并为每一个API功能接口设置对应的功能程序,所述功能程序,包括:播放程序、暂停程序、快进程序及后退程序中的任意一种或多种;步骤101的具体实施方式,包括:构建每一个虚拟机与对应的客户端之间的远程连接协议;步骤102的具体实施方式,包括:通过远程桌面控制方式,所述至少一个功能按钮中目标功能按钮接收对应的客户端的触发,根据所述关联关系,调用所述目标功能按钮对应的目标API功能接口,确定目标功能程序;步骤103的具体实施方式,包括:通过所述视频信息缓存库访问所述视频超级链接对应的目标视频信息,并对所述目标视频信息进行下载缓存;步骤104的具体实施方式,包括:调用所述目标功能程序,当所述目标程序为播放程序时,通过所述远程连接协议,控制所述客户端播放所述视频信息缓存库下载缓存的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端暂停正在播放的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行快进播放;当所述目标程序为后退程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行后退播放。例如:该功能按钮包括:播放按钮、暂停按钮、播放进度条及节目选择按钮等等,为每一个按钮配置对应的API功能接口,并为每个API功能接口赋予对应的功能程序,在该过程中,可以构建API表,在API表中,建立API功能接口与各个按钮之间的关系,例如:通过远程控制的方式,播放按钮接收到对应的客户端的触发如单击或双击,则通过查找API表为播放按钮确定目标API功能接口,并通过调用目标API功能接口中的播放程序,通过视频信息缓存库缓存对应的目标视频信息,并通过调用目标API功能接口中的播放程序,控制所述客户端播放所述目标视频信息。通过设置该视频信息缓存库,可以使视频信息均缓存到该视频信息缓存库,方便对缓存的视频信息的管理如清理或查阅等。
在本发明一个实施例中,为了实现对功能按钮的远程控制,所述通过远程桌面控制方式,所述至少一个功能按钮中任意功能按钮接收对应的客户端的触发之前,进一步包括:所述目标虚拟机获取所述至少一个功能按钮的显示数据;将所述至少一个功能按钮的显示数据转换为远程文件包;将所述远程文件包发送给客户端,使所述远程文件包中的至少一个功能按钮在所述客户端显示。
如图2所示,本发明实施例提供了一种远程桌面视频播放方法,应用于客户端,与服务器中的至少一个虚拟机中的目标虚拟机相连,该方法可以包括以下步骤:
步骤201:发送视频播放请求给所述目标虚拟机;
步骤202:根据所述视频播放请求,接收所述目标虚拟机缓存的目标视频信息;
该步骤直接接收的是缓存的目标视频信息,即该目标虚拟机仅对视频信息进行缓存,而不需要目标虚拟机对视频信息解析和播放,大大缩短了视频信息传输的时间,从而保证客户端播放视频流畅。
步骤203:接收外设的目标虚拟机的控制,解析并播放所述目标视频信息。
该解析过程主要是将目标视频信息转换为客户端能够识别的格式,以进行视频播放。另外,通过该控制过程也可使缓存视频信息直接在客户端播放而无需在虚拟机上解析和播放。
在本发明一个实施例中,为了实现客户端播放视频,上述方法进一步包括:设置播放插件;通过远程桌面控制方式,将目标虚拟机中的至少一个功能按钮与所述播放插件组成播放器;即该播放器中的至少一个功能按钮来源于客户端对应的目标虚拟机,播放插件来源于客户端,但是对于用户来说,感觉不到播放器的功能按钮与播放插件位于不同的设备中,在步骤201之前,进一步包括:接收外部对所述播放器中目标功能按钮的触发,生成视频播放请求。例如:当用户想要播放视频时,对播放器中的播放按钮进行单击或双击等,根据单击或双击触发,生成对应的视频播放请求。
在本发明一个实施例中,为了保障用户体验,使功能按钮与播放插件能够对外显示一致,所述通过远程桌面控制方式,将目标虚拟机中的至少一个功能按钮与所述播放插件组成播放器,包括:接收所述目标虚拟机发送的远程文件包;解析出所述远程文件包中的至少一个功能按钮的显示数据;将所述至少一个功能按钮的显示数据和所述播放插件组合显示。该远程文件包可以是虚拟机通过截屏,并将截屏图片打包压缩而成,该解析的过程主要是将打包压缩的远程文件包解压,并将解压后的远程文件包中功能按钮的显示数据转换为客户端能够识别的格式,从而准确的显示远程文件包中功能按钮。
如图3所示,在本发明另一实施例中,以服务器中目标虚拟机与客户端之间的交互过程为例,以更加详尽的展示远程桌面视频播放方法,该远程桌面视频播放方法可以包括如下步骤:
步骤301:在服务器中,设置至少一个虚拟机,在每一个虚拟机中,设置视频信息缓存库、至少一个功能按钮和至少一个API功能接口;
在该步骤中,通过在服务器中设置至少一个虚拟机,则每一个虚拟机可以作为一个客户端的服务器使用,那么,对低配置的客户端如笔记本等,也可正常顺畅的使用。另外,为了实现视频播放,在虚拟机种设置了视频信息缓存库、至少一个功能按钮和至少一个API功能接口,其中,视频信息缓存库主要用于缓存播放的视频信息,至少一个功能按钮主要用于控制视频的播放如视频暂停、视频播放等等,API功能接口主要是为各个功能按钮配置对应的功能,保证功能按钮的正常使用。
步骤302:在客户端设置播放插件;
该播放插件主要是为了实现对缓存视频的播放,同时能够接收位于客户端对应的虚拟机中的至少一个功能按钮的管理。
值得说明的是,上述虚拟机中的视频信息缓存库、至少一个功能按钮及客户端中的视频插件可以看作一个播放软件,即通过本发明提供的方法将播放软件进行了分布式部署。
步骤303:为每一个API功能接口设置对应的功能程序,并构建至少一个功能按钮和至少一个API功能接口之间的关联关系;
例如:为各个API功能接口配置播放程序、暂停程序、快进程序、后退程序及取消功能程序等等,各个功能按钮与各个API功能接口相连,相当于为各个功能按钮赋予相应的功能。
在该步骤中,可以将每一个API功能接口的路径存储到API表中,那么,在下面调用API功能接口的时候,可以通过查找API表确定API功能接口的路径,根据路径调用API功能接口,保证API功能接口调用的准确性。
步骤304:构建至少一个虚拟机中每一个虚拟机与对应的客户端之间的连接;
例如:服务器中包含有5个虚拟机分别为虚拟机1、虚拟机2、虚拟机3、虚拟机4及虚拟机5,在该步骤中,构建虚拟机1与客户端a的连接,虚拟机2与客户端b的连接,虚拟机3与客户端c的连接,虚拟机4与客户端d的连接,虚拟机5与客户端e的连接,在该步骤中的连接以远程连接实现,即在虚拟机与客户端之间建立远程协议,通过远程协议实现客户端与虚拟机间的信息交互。
步骤305:至少一个虚拟机中目标虚拟机获取至少一个功能按钮的显示数据;
步骤306:目标虚拟机将至少一个功能按钮的显示数据转换为远程文件包;
步骤307:目标虚拟机将远程文件包发送给客户端;
上述步骤305至步骤307主要是为了将功能按钮远程显示在客户端上,以供客户端操作,上述步骤305获取的过程主要是在获取虚拟机桌面的同时,获取至少一个功能按钮的显示数据,即使客户端不仅显示远程桌面(虚拟机的桌面),还能够显示至少一个功能按钮。
步骤308:客户端接收远程文件包;
步骤309:客户端解析出远程文件包中的至少一个功能按钮的显示数据;
该步骤的解析过程,主要是为了将功能按钮的显示数据转换为客户端能够识别的格式的数据,从而能够对功能按钮进行准确的显示。
步骤310:客户端将所述至少一个功能按钮的显示数据和所述播放插件组合组成播放器;
由于播放插件放置于客户端,为了保证播放插件与功能按钮显示的统一,即使用户感受不到播放插件与功能按钮位于不同的设备中,通过该步骤的组合过程,使用户直观看到的即为包含播放插件和功能按钮的播放器,外观与现有的播放器并无明显的差别。
步骤311:客户端显示播放器;
步骤312:客户端接收对所述播放器中目标功能按钮的触发,生成视频播放请求;
例如:用于通过单击播放按钮进行播放操作,或者,用户单击暂停按钮,进行暂停播放等操作。
步骤313:客户端将视频播放请求发送给目标虚拟机;
步骤314:目标虚拟机根据视频播放请求,确定视频超级链接;
该步骤可以根据视频请求中的视频基本信息如视频名称、视频编号等,确定出视频超级链接。
步骤315:目标虚拟机通过所述视频信息缓存库访问所述视频超级链接对应的目标视频信息,并对所述目标视频信息进行下载缓存;
通过视频超级链接,在视频信息缓存库中缓存目标视频信息,该过程是在目标虚拟机中完成,避免了为客户端增加缓存负载。
步骤316:目标虚拟机根据关联关系,调用目标功能按钮对应的目标API功能接口,确定目标功能程序;
如图4所示,当用户选择目标功能按钮时,就确定出目标功能按钮对应的目标API功能接口,上述步骤303已经提及将API功能接口对应的路径存储到API表,通过查找API表确定出目标API功能接口对应的目标路径,通过该目标路径调用目标API功能接口,执行该目标API功能接口对应的功能;例如:当调用暂停API功能接口时,执行对视频播放的暂停功能。
步骤317:目标虚拟机将缓存的目标视频信息发送给客户端;
步骤318:目标虚拟机调用目标功能程序,通过所述目标功能程序控制所述客户端中的播放插件播放视频信息缓存库中缓存的目标视频信息。
例如:当所述目标程序为播放程序时,通过所述远程连接协议,控制所述客户端播放所述视频信息缓存库下载缓存的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端暂停正在播放的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行快进播放;当所述目标程序为后退程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行后退播放。
上述步骤317和步骤318实现了将目标视频信息直接发送给客户端,通过控制客户端进行解析和播放,而不会在虚拟机中进行播放,从而避免了虚拟机播放过程对视频信息的损耗,可以最大程度的保证视频信息的完整性。
如图5所示,本发明实施例提供一种服务器,包括:至少一个虚拟机501,其中,每一个虚拟机与对应的外设客户端相连,每一个虚拟机,包括:请求接收单元5011、缓存单元5012及发送控制单元5013,其中,
所述请求接收单元5011,用于接收对应的外设客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;
所述缓存单元5012,用于根据所述请求接收单元5011接收到的视频播放请求中的视频基本信息,确定视频超级链接,并根据所述视频超级链接,缓存目标视频信息;
所述发送控制单元5013,用于将所述缓存单元5012缓存的目标视频信息发送给所述外设的客户端,并控制所述客户端解析并播放所述目标视频信息。
如图6所示,在本发明另一实施例中,每一个虚拟机501通过远程协议与对应的外设客户端,进一步包括:获取单元5014和远程控制单元5015;所述请求接收单元5011,包括:至少一个功能按钮50111和至少一个API功能接口50112,所述缓存单元5012,包括:视频信息缓存库(图中未示出),其中,
所述获取单元5014,用于获取所述至少一个功能按钮50111的显示数据;
所述远程控制单元5015,用于将所述获取单元5014获取的至少一个功能按钮的显示数据转换为远程文件包;将所述远程文件包发送给外设的客户端,控制所述远程文件包中的至少一个功能按钮在所述客户端显示;
所述至少一个功能按钮50111中目标功能按钮50111,与至少一个API功能接口50112关联,通过远程桌面控制方式,接收对应的客户端的触发,调用所述目标功能按钮50111对应的目标API功能接口50112;
所述至少一个API功能接口50112中每一个API功能接口包含对应的功能程序,其中,目标API功能接口50112,用于接收所述目标功能按钮50111的调用,确定目标功能程序,其中,所述功能程序,包括:播放程序、暂停程序、快进程序及后退程序中的任意一种或多种;
所述视频信息缓存库,用于访问所述视频超级链接对应的目标视频信息,并对目标视频信息进行下载缓存;
所述发送控制单元5013,用于调用所述目标API功能接口50112确定的目标功能程序,当所述目标程序为播放程序时,通过所述远程连接协议,控制所述客户端播放所述视频信息缓存库下载缓存的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端暂停正在播放的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行快进播放;当所述目标程序为后退程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行后退播放。
如图7所示,本发明实施例提供一种客户端,与上述任一所述的外设的服务器中的目标虚拟机相连,包括:接收解析单元701、组合单元702、播放插件703及播放控制单元704,其中,
所述接收解析单元701,用于接收外设的服务器中目标虚拟机发送的远程文件包,解析出所述远程文件包中的至少一个功能按钮的显示数据;
所述组合单元702,用于将所述接收解析单元701解析出的至少一个功能按钮的显示数据和所述播放插件703组合成播放器;
所述播放控制单元704,用于接收外部对所述组合单元702组合成的播放器中的目标功能按钮的触发,生成视频播放请求,并根据所述视频播放请求,接收外设的目标虚拟机发送的目标视频信息,并接收外设的目标虚拟机的控制,解析并通过所述播放插件703播放所述目标视频信息。
上述装置内的各单元之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
如图8所示,本发明实施例提供一种远程桌面视频播放系统,包括:上述任一所述的服务器801和上述任一所述的客户端802,其中,
服务器801中包含至少一个虚拟机8011,每个虚拟机8011中包含视频信息缓存库80111和至少一个功能按钮80112;
客户端802包含播放插件8021;
服务器801与客户端802构建远程连接;
至少一个功能按钮80112显示在客户端802,通过至少一个功能按钮
80112控制视频信息缓存库80111缓存视频信息,并通过至少一个功能按钮80112控制播放插件8021进行视频信息缓存库80111缓存的视频信息播放。
根据上述方案,本发明的各实施例,至少具有如下有益效果:
1.通过设置至少一个虚拟机,构建每一个虚拟机与对应的客户端之间的连接,并通过至少一个虚拟机中目标虚拟机接收对应的客户端发送的视频播放请求;并通过获取视频播放请求中的视频超级链接,根据视频超级链接,缓存目标视频信息;将缓存的目标视频信息发送给客户端;控制客户端解析并播放目标视频信息,整个过程中虚拟机为客户端缓存视频信息,并直接将缓存视频信息发送给客户端进行解析和播放,该过程虚拟机可以控制客户端进行视频播放,而虚拟机本身不再对视频信息进行解析和播放,避免了缓存视频信息在服务器中的转换过程,从而使客户端等待缓存视频信息的时间缩短,能够使远程桌面视频播放更为流畅。
2.通过设置视频信息缓存库、至少一个功能按钮和至少一个API功能接口,并建立至少一个功能按钮和至少一个API功能接口间的关联关系,每个API功能接口包含功能程序,能够通过远程桌面控制方式,使至少一个功能按钮中目标功能按钮接收对应的客户端的触发,根据所述关联关系,调用所述目标功能按钮对应的目标API功能接口,确定目标功能程序,通过功能程序进行控制对应的功能,使功能调用比较准确,另外通过视频信息缓存库缓存视频信息,方便对视频信息的管理,从而保证了该发明实现的可行性。
3.通过所述目标虚拟机获取所述至少一个功能按钮的显示数据;将所述至少一个功能按钮的显示数据转换为远程文件包;将所述远程文件包发送给客户端,使所述远程文件包中的至少一个功能按钮在所述客户端显示,使功能按钮能够在客户端显示,方便用户对功能按钮的操作。
4.本发明实施例提供的方法使虚拟机仅用于缓存视频信息,而在客户端进行缓存视频信息的播放,减少了服务器的压力,同时,由于未进行服务器对缓存视频信息的解析和播放过程,而直接将缓存视频信息发送给客户端解析,也就避免了视频信息画面和声音不同步现象的产生。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个〃·····”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后需要说明的是:以上所述仅为本发明的较佳实施例,仅用于说明本发明的技术方案,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所做的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
Claims (10)
1.一种远程桌面视频播放方法,其特征在于,应用于服务器,设置至少一个虚拟机,构建每一个虚拟机与对应的客户端之间的连接,还包括:
所述至少一个虚拟机中目标虚拟机接收对应的客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;
根据所述视频基本信息,确定视频超级链接,并根据所述视频超级链接,缓存目标视频信息;
将缓存的目标视频信息发送给所述客户端;
控制所述客户端解析并播放所述目标视频信息。
2.根据权利要求1所述的方法,其特征在于,进一步包括:在每一个虚拟机中,设置视频信息缓存库、至少一个功能按钮和至少一个API功能接口;
所述构建每一个虚拟机与对应的客户端之间的连接,包括:构建每一个虚拟机与对应的客户端之间的远程连接协议;
构建所述至少一个功能按钮和至少一个API功能接口之间的关联关系,并为每一个API功能接口设置对应的功能程序,所述功能程序,包括:播放程序、暂停程序、快进程序及后退程序中的任意一种或多种;
所述目标虚拟机接收对应的客户端发送的视频播放请求,包括:通过远程桌面控制方式,所述至少一个功能按钮中目标功能按钮接收对应的客户端的触发,根据所述关联关系,调用所述目标功能按钮对应的目标API功能接口,确定目标功能程序;
所述缓存目标视频信息,包括:通过所述视频信息缓存库访问所述视频超级链接对应的目标视频信息,并对所述目标视频信息进行下载缓存;
所述控制所述客户端播放所述目标视频信息,包括:调用所述目标功能程序,当所述目标程序为播放程序时,通过所述远程连接协议,控制所述客户端播放所述视频信息缓存库下载缓存的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端暂停正在播放的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行快进播放;当所述目标程序为后退程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行后退播放。
3.根据权利要求2所述的方法,其特征在于,在所述通过远程桌面控制方式,所述至少一个功能按钮中目标功能按钮接收对应的客户端的触发之前,进一步包括:
所述目标虚拟机获取所述至少一个功能按钮的显示数据;
将所述至少一个功能按钮的显示数据转换为远程文件包;
将所述远程文件包发送给客户端,使所述远程文件包中的至少一个功能按钮在所述客户端显示。
4.一种远程桌面视频播放方法,其特征在于,应用于客户端,与服务器中的至少一个虚拟机中的目标虚拟机相连,还包括:
发送视频播放请求给所述目标虚拟机;
根据所述视频播放请求,接收所述目标虚拟机缓存的目标视频信息;
接收外设的目标虚拟机的控制,解析并播放所述目标视频信息。
5.根据权利要求4所述的方法,其特征在于,进一步包括:设置播放插件;
通过远程桌面控制方式,将目标虚拟机中的至少一个功能按钮与所述播放插件组成播放器;
在所述发送包含有视频超级链接的视频播放请求给所述目标虚拟机之前,进一步包括:接收外部对所述播放器中目标功能按钮的触发,生成视频播放请求。
6.根据权利要求5所述的方法,其特征在于,所述通过远程桌面控制方式,将目标虚拟机中的至少一个功能按钮与所述播放插件组成播放器,包括:
接收所述目标虚拟机发送的远程文件包;
解析出所述远程文件包中的至少一个功能按钮的显示数据;
将所述至少一个功能按钮的显示数据和所述播放插件组合显示。
7.一种服务器,其特征在于,包括:至少一个虚拟机,其中,每一个虚拟机与对应的外设客户端相连,每一个虚拟机,包括:请求接收单元、缓存单元及发送控制单元,其中,
所述请求接收单元,用于接收对应的外设客户端发送的视频播放请求,所述视频播放请求,包括:视频基本信息;
所述缓存单元,用于根据所述视频基本信息,确定视频超级链接,并根据所述视频超级链接,缓存目标视频信息;
所述发送控制单元,用于将所述缓存单元缓存的目标视频信息发送给所述外设的客户端,并控制所述客户端解析并播放所述目标视频信息。
8.根据权利要求7所述的服务器,其特征在于,每一个虚拟机通过远程协议与对应的外设客户端,进一步包括:获取单元和远程控制单元;所述请求接收单元,包括:至少一个功能按钮和至少一个API功能接口,所述缓存单元,包括:视频信息缓存库,其中,
所述获取单元,用于获取所述至少一个功能按钮的显示数据;
所述远程控制单元,用于将所述获取单元获取的至少一个功能按钮的显示数据转换为远程文件包;将所述远程文件包发送给外设的客户端,控制所述远程文件包中的至少一个功能按钮在所述客户端显示;
所述至少一个功能按钮中目标功能按钮,与至少一个API功能接口关联,通过远程桌面控制方式,接收对应的客户端的触发,调用所述目标功能按钮对应的目标API功能接口;
所述至少一个API功能接口中每一个API功能接口包含对应的功能程序,其中,目标API功能接口,用于接收所述目标功能按钮的调用,确定目标功能程序,其中,所述功能程序,包括:播放程序、暂停程序、快进程序及后退程序中的任意一种或多种;
所述视频信息缓存库,用于访问所述视频超级链接对应的目标视频信息,并对目标视频信息进行下载缓存;
所述发送控制单元,用于调用所述目标API功能接口确定的目标功能程序,当所述目标程序为播放程序时,通过所述远程连接协议,控制所述客户端播放所述视频信息缓存库下载缓存的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端暂停正在播放的目标视频信息;当所述目标程序为暂停程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行快进播放;当所述目标程序为后退程序时,通过所述远程连接协议,控制所述客户端对所述目标视频信息进行后退播放。
9.一种客户端,其特征在于,与权利要求7或8所述的外设的服务器中的目标虚拟机相连,包括:接收解析单元、组合单元、播放插件及播放控制单元,其中,
所述接收解析单元,用于接收外设的服务器中目标虚拟机发送的远程文件包,解析出所述远程文件包中的至少一个功能按钮的显示数据;
所述组合单元,用于将所述接收解析单元解析出的至少一个功能按钮的显示数据和所述播放插件组合成播放器;
所述播放控制单元,用于接收外部对所述组合单元组合成的播放器中的目标功能按钮的触发,生成视频播放请求,并根据所述视频播放请求,接收外设的目标虚拟机发送的目标视频信息,并接收外设的目标虚拟机的控制,解析并通过所述播放插件播放所述目标视频信息。
10.一种远程桌面视频播放系统,其特征在于,包括:权利要求7或8所述的服务器和权利要求9所述的客户端。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610635293.XA CN106227491B (zh) | 2016-08-04 | 2016-08-04 | 一种远程桌面视频播放方法、服务器、客户端及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610635293.XA CN106227491B (zh) | 2016-08-04 | 2016-08-04 | 一种远程桌面视频播放方法、服务器、客户端及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106227491A true CN106227491A (zh) | 2016-12-14 |
CN106227491B CN106227491B (zh) | 2019-05-14 |
Family
ID=57546965
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610635293.XA Active CN106227491B (zh) | 2016-08-04 | 2016-08-04 | 一种远程桌面视频播放方法、服务器、客户端及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN106227491B (zh) |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106888385A (zh) * | 2017-01-17 | 2017-06-23 | 武汉噢易云计算股份有限公司 | 客户端在虚拟化环境下的视频播放方法及系统 |
CN107920259A (zh) * | 2017-10-31 | 2018-04-17 | 深信服科技股份有限公司 | 虚拟化平台视频播放加速方法、虚拟机服务器及存储介质 |
CN108632360A (zh) * | 2018-04-12 | 2018-10-09 | 北京百悟科技有限公司 | 一种虚拟云终端和虚拟云终端服务器 |
CN111443989A (zh) * | 2020-03-23 | 2020-07-24 | 武汉轻工大学 | 基于和声搜索的虚拟机放置方法、装置、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872293A (zh) * | 2009-04-23 | 2010-10-27 | 威睿公司 | 用于复制传输到远程显示装置的帧缓冲区的方法和系统 |
CN103139634A (zh) * | 2011-11-30 | 2013-06-05 | 国云科技股份有限公司 | 云终端虚拟桌面视频播放方法 |
US20130204927A1 (en) * | 2012-02-08 | 2013-08-08 | Vmware, Inc. | Video stream management for remote graphical user interfaces |
WO2013116975A1 (zh) * | 2012-02-06 | 2013-08-15 | 华为技术有限公司 | 流媒体播放方法、设备及系统 |
CN103428297A (zh) * | 2013-08-30 | 2013-12-04 | 上海交通大学 | 基于桌面虚拟化的远程交互系统架构 |
-
2016
- 2016-08-04 CN CN201610635293.XA patent/CN106227491B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101872293A (zh) * | 2009-04-23 | 2010-10-27 | 威睿公司 | 用于复制传输到远程显示装置的帧缓冲区的方法和系统 |
CN103139634A (zh) * | 2011-11-30 | 2013-06-05 | 国云科技股份有限公司 | 云终端虚拟桌面视频播放方法 |
WO2013116975A1 (zh) * | 2012-02-06 | 2013-08-15 | 华为技术有限公司 | 流媒体播放方法、设备及系统 |
US20130204927A1 (en) * | 2012-02-08 | 2013-08-08 | Vmware, Inc. | Video stream management for remote graphical user interfaces |
CN103428297A (zh) * | 2013-08-30 | 2013-12-04 | 上海交通大学 | 基于桌面虚拟化的远程交互系统架构 |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106888385A (zh) * | 2017-01-17 | 2017-06-23 | 武汉噢易云计算股份有限公司 | 客户端在虚拟化环境下的视频播放方法及系统 |
CN107920259A (zh) * | 2017-10-31 | 2018-04-17 | 深信服科技股份有限公司 | 虚拟化平台视频播放加速方法、虚拟机服务器及存储介质 |
CN108632360A (zh) * | 2018-04-12 | 2018-10-09 | 北京百悟科技有限公司 | 一种虚拟云终端和虚拟云终端服务器 |
CN111443989A (zh) * | 2020-03-23 | 2020-07-24 | 武汉轻工大学 | 基于和声搜索的虚拟机放置方法、装置、设备及存储介质 |
CN111443989B (zh) * | 2020-03-23 | 2023-06-23 | 武汉轻工大学 | 基于和声搜索的虚拟机放置方法、装置、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN106227491B (zh) | 2019-05-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103369363B (zh) | 一种应用程序的控制方法、系统及装置 | |
US8606948B2 (en) | Cloud-based device interaction | |
US9767195B2 (en) | Virtualized hosting and displaying of content using a swappable media player | |
CN102882845B (zh) | 实时或准实时流传输 | |
JP6292681B2 (ja) | メディア再生処理と制御の方法、装置、およびシステム | |
CN106227491A (zh) | 一种远程桌面视频播放方法、服务器、客户端及系统 | |
US9226021B2 (en) | Method and system for realizing mutual control of multimedia terminals in the home | |
CN103517158B (zh) | 一种生成可展示视频批注的视频的方法、装置及系统 | |
US20220167036A1 (en) | Live broadcast method and apparatus, and computer device and storage medium | |
EP3041241B1 (en) | Method and apparatus for playing multimedia resource | |
CN104717549A (zh) | 一种多屏间信息交互方法和设备 | |
CN104469528B (zh) | 一种进行视频数据加载的方法、装置和浏览器客户端 | |
CN104185039A (zh) | 音视频同步播放的方法和装置 | |
CN101505253A (zh) | 网络设备的附属设备中为网络设备提供数据的方法及装置 | |
TWI521365B (zh) | 用以處理統一資源定位器(url)以引動功能性的方法 | |
CN106998490A (zh) | 一种多媒体数据同步方法及装置 | |
CN105472401A (zh) | 在网络直播过程中播放广告的方法及系统 | |
CN108632388A (zh) | 一种分页内容的加载方法及装置 | |
CN103917951B (zh) | 应用调用的方法及操作系统、浏览器 | |
CN112637626A (zh) | 推流方法、系统、装置、电子设备及存储介质 | |
CN106844763A (zh) | 一种对互联网媒体文件进行修改式展现的方法及其装置 | |
CN104243469A (zh) | 一种控制播放的方法、装置及系统 | |
CN105939251B (zh) | 用户关系的创建方法、服务器、客户端及系统 | |
JP5420863B2 (ja) | シンクライアントシステム、アプリケーションサーバ、端末制御サーバ、通信方法 | |
CN106326282B (zh) | 交互处理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |