CN104639501B - 一种数据流传输的方法、设备及系统 - Google Patents
一种数据流传输的方法、设备及系统 Download PDFInfo
- Publication number
- CN104639501B CN104639501B CN201310549491.0A CN201310549491A CN104639501B CN 104639501 B CN104639501 B CN 104639501B CN 201310549491 A CN201310549491 A CN 201310549491A CN 104639501 B CN104639501 B CN 104639501B
- Authority
- CN
- China
- Prior art keywords
- terminal
- remote server
- data flow
- identification marking
- external equipment
- 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.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/08—Protocols specially adapted for terminal emulation, e.g. Telnet
-
- 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/762—Media network packet handling at the source
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/52—Network services specially adapted for the location of the user terminal
Abstract
本发明的实施例公开一种数据流传输的方法、设备及系统,涉及计算机应用技术,降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽。该方法包括:终端将添加识别标识后的数据流通过压缩发送至所述远程服务器,其中,所述终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;所述终端接收所述远程服务器根据所述添加识别标识后的数据流生成的位置信息,所述位置信息用于指示所述终端显示所述添加识别标识后的数据流;所述终端提取所述添加识别标识后的数据流;所述终端根据所述位置信息显示缓存中存储的所述添加识别标识后的数据流。本发明的实施例应用于远程虚拟桌面场景。
Description
技术领域
本发明涉及计算机应用技术,尤其涉及一种数据流传输的方法、设备及系统。
背景技术
在现有远程虚拟桌面应用中,远程虚拟桌面是指计算和存储资源集中在远程服务端,通过远程桌面协议将远程虚拟桌面的程序界面投递到本地的各种终端上显示出来,同时把本地终端的各种输入输出设备映射到远程服务器端,其中本地的各种终端例如:瘦客户机TC(Thin Client),移动终端PAD、智能手机;本地终端的各种输入输出设备例如:键盘、鼠标、USB外设、串并口外设、耳机和麦克风。
在现有技术对于远程虚拟桌面摄像头重定向的过程中,当远程虚拟桌面某个应用程序要使用本地终端插入的摄像头时,将根据本地终端在远程虚拟桌面上的映射开启位于远程虚拟桌面上的虚拟摄像头,再由该虚拟摄像头映射至本地终端的物理摄像头,开启物理摄像头,同时物理摄像头开启后会根据请求的参数启动摄像头并开始捕获视屏数据流;本地物理摄像头首先对捕获的视频数据流进行压缩,然后把压缩的视频数据流发送到远程虚拟桌面端,该远程虚拟桌面端接收到压缩视频数据流以后,先对视频数据流进行解压,然后填充到虚拟摄像头的输入缓冲里面,这样远程虚拟桌面端的应用程序就可以捕获到虚拟摄像头的视频数据流,并把这些视频数据流填充到远程虚拟桌面的显示缓冲里;远程桌面协议提取显示缓冲的视频数据流并转化为图像指令,并对图像进行压缩,然后通过远程桌面协议把压缩的图像数据流发送到本地终端;本地终端对接收的图像数据进行解压,并通过显示接口把图像显示在本地终端上。
发明人发现现有技术中至少存在如下问题:在摄像头重定向以及捕捉画面进行数据传输时,视频图像经过两遍压缩解压,即在本地终端将摄像头捕捉到的视频图像压缩,发送至远程虚拟桌面端后,远程虚拟桌面端解压该视频图像,并对该视频图像进行处理并将处理后的视频图像再进行压缩同时发送至本地终端,本地终端通过解析处理后的视频图像将该视频图像显示在本地终端上,通过视频图像的两遍压缩解压损耗了终端与虚拟桌面的性能,并且在本地终端与远程虚拟桌面端传输视频画面的过程中由于带宽的限制,每次传输会消耗大量网络带宽,并造成视频图像卡顿,为用户观看较清晰的视频数据造成了很大的影响,对用户体验造成一定障碍。
发明内容
本发明的实施例提供一种数据流传输的方法、设备及系统,降低了在数据传输过程中本地终端与远程虚拟桌面的性能消耗,以及在数据传输时消耗的大量带宽。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种数据流传输的方法,包括:
终端将添加识别标识后的数据流通过压缩发送至所述远程服务器,其中,所述终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
所述终端接收所述远程服务器根据所述添加识别标识后的数据流生成的位置信息,所述位置信息用于指示所述终端显示所述添加识别标识后的数据流;
所述终端提取所述添加识别标识后的数据流;
所述终端根据所述位置信息显示缓存中存储的所述添加识别标识后的数据流。
结合第一方面,在第一种可能的实现方式中具体包括,所述终端将添加识别标识后的数据流通过压缩发送至所述远程服务器之前,还包括:
所述终端获取与所述终端连接的外接设备的第一参数信息,所述第一参数信息包括所述外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
所述终端将所述第一参数信息发送至所述远程服务器;
所述终端接收所述远程服务器发送的启动请求,并根据所述启动请求中的第二参数信息开启所述外接设备,所述第二参数信息至少包括:分辨率、帧率和亮度中的任意一种或者至少两种的组合;
所述终端根据所述启动请求启动所述外接设备获取数据流;
所述终端将获取到的所述数据流添加识别标识。
结合第一方面或第一方面中的第一种可能的实现方式,在第二种可能的实现方式中具体包括,所述终端将添加识别标识后的数据流通过压缩发送至所述远程服务器,包括:
所述终端通过将所述识别标识添加至获取到的数据流中,以便所述远程服务器根据添加所述识别标识后的数据流生成位置信息;
所述终端压缩添加所述识别标识后的数据流;
所述终端发送压缩后携带所述识别标识的数据流至所述远程服务器。
结合第一方面或第一方面中的任一种可能的实现方式,在第三种可能的实现方式中具体包括,所述方法应用于所述终端与所述远程服务器组成的计算机系统进行的数据流传输,所述终端包括瘦客户终端。
第二方面,提供一种数据流传输的方法,包括:
远程服务器接收终端发送的通过所述终端压缩携带识别标识的数据流,所述终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
所述远程服务器根据所述携带识别标识的数据流生成所述数据流显示的位置信息,所述位置信息用于指示所述终端显示所述携带识别标识的数据流;
所述远程服务器发送所述位置信息至所述终端。
结合第二方面,在第一种可能的实现方式中具体包括,所述远程服务器接收终端发送的通过所述终端压缩携带识别标识的数据流之前,还包括:
所述远程服务器接收所述终端发送的第一参数信息,所述第一参数信息包括所述外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
所述远程服务器根据所述第一参数信息配置虚拟外接设备,所述虚拟外接设备为所述远程服务器上映射于所述终端中外接设备设置的虚拟设备;
所述远程服务器根据所述虚拟外接设备生成对应所述终端中外接设备的启动请求,所述启动请求包括启动所述外接设备的启动命令和/或驱动信息;
所述远程服务器将所述启动请求发送至所述终端。
结合第二方面,在第二种可能的实现方式中具体包括,所述远程服务器根据所述携带识别标识的数据流生成所述数据流显示的位置信息,包括:
所述远程服务器解压所述携带识别标识的数据流,并将所述数据流填充至所述虚拟外接设备;
所述远程服务器根据所述数据流生成图像指令,并判断所述识别标识是否为所述图像指令对应标识;
若所述识别标识为所述图像指令对应的标识,则根据所述识别标识生成对应的位置信息。
结合第二方面或第二方面中任一种可能的实现方式,在第三种可能的实现方式中具体包括,所述方法应用于所述终端与所述远程服务器组成的计算机系统的云端操作,所述终端包括瘦客户终端,所述远程服务器包括远程虚拟桌面。
第三方面,提供一种终端,包括:
通信单元,用于将添加识别标识后的数据流通过压缩发送至所述远程服务器,其中,终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
所述通信单元,还用于接收所述远程服务器根据所述添加识别标识后的数据流生成的位置信息,所述位置信息用于指示所述终端显示所述添加识别标识后的数据流;
显示单元,用于提取所述添加识别标识后的数据流;
所述显示单元,还用于根据所述通信单元接收的所述位置信息显示缓存中存储的所述添加识别标识后的数据流。
结合第三方面,在第一种可能的实现方式中具体包括,所述终端,还包括:
获取单元,用于在将添加识别标识后的数据流通过压缩发送至所述远程服务器之前,获取与所述终端连接的外接设备的第一参数信息,所述第一参数信息包括所述外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
所述通信单元,还用于将所述获取单元获取的所述第一参数信息发送至所述远程服务器;
所述通信单元,还用于接收所述远程服务器发送的启动请求,并根据所述启动请求中的第二参数信息开启所述外接设备,所述第二参数信息包括:分辨率、帧率和亮度中的任意一种或者至少两种的组合;
启动单元,用于根据所述通信单元接收的所述启动请求启动所述外接设备获取数据流;
添加单元,用于将获取到的所述数据流添加识别标识。
结合第三方面或第三方面中的第一种可能的实现方式,在第二种可能的实现方式中具体包括,所述通信单元,具体用于:
通过将所述识别标识添加至获取到的数据流中,以便所述远程服务器根据添加所述识别标识后的数据流生成位置信息;
压缩添加所述识别标识后的数据流;
发送压缩后携带所述识别标识的数据流至所述远程服务器。
结合第三方面或第三方面中任一种可能的实现方式,在第三种可能的实现方式中具体包括:所述终端应用于所述终端与所述远程服务器组成的计算机系统进行的数据流传输,所述终端包括瘦客户终端。
第四方面,提供一种远程服务器,包括:
通信单元,用于接收终端发送的通过所述终端压缩携带识别标识的数据流,所述终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
调用单元,用于根据所述通信单元接收的所述携带识别标识的数据流生成所述数据流显示的位置信息,所述位置信息用于指示所述终端显示所述携带识别标识的数据流;
所述通信单元,还用于发送所述调用单元生成的所述位置信息至所述终端。
结合第四方面,在第一种可能的实现方式中具体包括,所述远程服务器,还包括:
所述通信单元,还用于在接收终端发送的通过所述终端压缩携带识别标识的数据流之前,接收所述终端发送的第一参数信息,所述第一参数信息包括所述外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
配置单元,用于根据所述通信单元接收的所述第一参数信息配置虚拟外接设备,所述虚拟外接设备为所述远程服务器上映射于所述终端中外接设备设置的虚拟设备;
所述配置单元,还用于根据所述虚拟外接设备生成对应所述终端中外接设备的启动请求,所述启动请求包括启动所述外接设备的启动命令和/或驱动信息;
所述通信单元,还用于将所述配置单元生成的所述启动请求发送至所述终端。
结合第四方面或第四方面中的第一种可能的实现方式,在第二种可能的实现方式中具体包括,所述调用单元,具体用于:
解压所述携带识别标识的数据流,并将所述数据流填充至所述虚拟外接设备;
根据所述数据流生成图像指令,并判断所述识别标识是否为所述图像指令对应标识;
若所述识别标识为所述图像指令对应的标识,则根据所述识别标识生成对应的位置信息。
结合第四方面或第四方面中任一种可能的实现方式,在第三种可能的实现方式中具体包括,所述远程服务器应用于所述终端与所述远程服务器组成的计算机系统的云端操作,所述终端包括瘦客户终端,所述远程服务器包括远程虚拟桌面。
第五方面,提供一种计算机系统,包括:终端和远程服务器,其中,
所述终端为第三方面或第三方面中任一种可能的实现方式所述的终端;
所述远程服务器为第四方面或第四方面中任一种可能的实现方式所述的远程服务器。
本发明实施例提供的数据流传输的方法、设备及系统,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明的实施例提供的一种数据流传输的方法的流程示意图;
图2为本发明的实施例提供的另一种数据流传输的方法的流程示意图;
图3为本发明的实施例提供的又一种数据流传输的方法的流程示意图;
图4为本发明的实施例提供的再一种数据流传输的方法的流程示意图;
图5为本发明的实施例提供的一种终端的结构示意图;
图6为本发明的实施例提供的另一种终端的结构示意图;
图7为本发明的实施例提供的一种远程服务器的结构示意图;
图8为本发明的实施例提供的另一种远程服务器的结构示意图;
图9为本发明的另一实施例提供的一种终端的结构示意图;
图10为本发明的另一实施例提供的一种远程服务器的结构示意图;
图11为本发明的实施例提供的一种计算机系统的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例所涉及的远程虚拟桌面系统中(例如有远程服务器以及输入输出设备组成的计算机系统进行的云端操作),其中远程数据中心集中了服务器资源和存储资源,通过虚拟化技术虚拟出多个虚拟计算机或无需虚拟化技术直接使用物理计算机,在这些虚拟计算机或者物理计算机上安装操作系统,并通过远程桌面协议将远程虚拟桌面的界面投递在终端上显示出来,同时把终端上的输入输出设备映射到远程虚拟桌面的服务端,本发明提供的实施例中终端上的输入输出设备以摄像头为例,终端以瘦客户终端TC(ThinClient)为例进行说明,本发明实施例提供的一种数据流传输的方法,参照图1所示,终端侧,具体包括以下步骤:
101、终端将添加识别标识后的数据流通过压缩发送至远程服务器。
其中,该终端与远程服务器具有连接关系,这里连接关系至少包括无线或有线。
本发明实施例中的终端以瘦客户终端TC(Thin Client)为例进行说明,其中,TC包含显示器客户端Display Client、设备驱动Device Driver以及USB客户端USB Client。
具体的,终端将添加识别标识后的数据流通过压缩发送至远程服务器,包括:
a、USB Client检测到外接设备已启动并开始获取数据流。
这里TC的外接设备以摄像头为例进行说明,当TC的USB Client检测到摄像头已经开启时,USB Client通过使用直接显示接口DirectShow开始获取视屏数据。
b、USB Client为获取到的数据流求添加识别标识。
这里USB Client将获取到的数据流添加在远程服务器侧能够识别的标识,使得在远程服务器侧能够从数据包中通过识别标识提取视频数据。
c、USB Client将添加识别标识后的数据流进行压缩编码。
其中,通过USB Client的压缩编码,使得视频数据在网络传输过程中节约大量的网络带宽的消耗。
d、USB Client将压缩后的数据流发送至远程服务器的USB服务器端USB Server。
102、终端接收该远程服务器根据添加识别标识后的数据流生成的位置信息。
其中,位置信息用于指示终端显示添加识别标识后的数据流。
这里终端通过远程桌面协议接收远程服务器发送的位置信息。
具体的,终端接收该远程服务器根据添加识别标识后的数据流生成的位置信息,包括:
这里TC中的显示客户端Display Client通过远程桌面协议,接收远程服务器中的显示服务端Display Server发送的用于指示视频数据流显示的具体位置信息。
103、终端提取添加识别标识后的数据流。
104、终端根据该位置信息显示缓存中存储的添加识别标识后的数据流。
这里TC中的显示客户端Display Client通过使用直接显示接口DirectShow根据新接收到的位置信息显示终端缓存中存储的视屏数据流。
本发明实施例提供的位置信息,仅以800*600的分辨率显示规格为例进行说明,不作具体限定,其中,终端根据该位置信息显示存储于缓存中的数据流,包括:
例如,远程服务器侧根据获得的携带有识别标识的数据流提取位置信息,发现终端TC侧显示的数据流需要为分辨率800*600的画面,从而将终端TC侧需要显示的画面规格以位置信息的形式发送至TC侧,进而使得TC侧在显示数据流中能够根据位置信息中指示的800*600画面分辨率显示数据流。
这里步骤101~步骤104所述的方法应用于终端与远程服务器组成的计算机系统的云端操作,该终端包括瘦客户终端,远程服务器包括远程虚拟桌面。
本发明实施例中的终端仅以TC为例,外接设备以摄像头为例进行说明,具体不做限定,其中,外接设备还包括:键盘、鼠标、USB外设、串并口外设、耳机和麦克风,根据本发明提供的一种数据流传输的方法依旧适用于上述外接设备。
本发明实施例提供的一种数据流传输的方法,参照图2所示,远程服务器侧,具体包括以下步骤:
201、远程服务器接收终端发送的通过该终端压缩携带识别标识的数据流。
其中,该终端与远程服务器具有连接关系,这里连接关系至少包括无线或有线。
这里远程服务器包括:USB服务端USB Server、运行端Application以及显示服务端Display Server。其中终端以瘦客户终端TC(Thin Client)为例进行说明,TC包含显示器客户端Display Client、设备驱动Device Driver以及USB客户端USB Client,具体的,远程服务器接收终端发送的携带有识别标识且压缩后的数据流实施方式如下所述:
a、远程服务器中的USB Server收到从终端TC中USB Client发送的视频数据流。
b、远程服务器中的USB Server对接收到的视频数据进行解码。
c、远程服务器中的USB Server通过DirectShow接口把解码后的视频数据流填充到虚拟摄像头。
这里远程服务器在接收终端发送视频数据流之前,首先对应终端TC的外接设备在远程服务器侧对应生成一个虚拟设备,其中,通过启动该虚拟设备进而启动终端TC的外接设备。
在远程服务器中的USB Server获取到解码后的视频数据流后,将该视频数据流填充至虚拟摄像头,使得对应的在远程服务器侧与终端TC中的外接设备摄像头对应。
d、远程服务器的应用程序捕获到虚拟摄像头的视频数据流,并调用Win32API接口把视频数据转发至Display Server。
这里远程服务器通过调用对应的应用程序,将获取到的视频数据流传送至Display Server,使得通过显示服务端Display Server对该视频数据流进行图像处理。
e、远程服务器中的Display Server根据每帧的视频数据生成图像指令。
202、远程服务器根据携带识别标识的数据流生成数据流显示的位置信息。
其中,位置信息用于指示该终端显示携带识别标识的数据流。例如,远程服务器侧根据获得的携带有识别标识的数据流提取位置信息,发现终端TC侧显示的数据流需要为分辨率800*600的画面,从而将终端TC侧需要显示的画面规格以位置信息的形式发送至TC侧,进而使得TC侧在显示数据流中能够根据位置信息中指示的800*600画面分辨率显示该数据流。
203、远程服务器发送该位置信息至终端。
这里远程服务器中的Display Server把图像要显示的位置信息发送到终端TC的Display Client,以便终端TC的Display Client根据该位置信息提取视频数据。
本发明实施例中的终端仅以TC为例,外接设备以摄像头为例进行说明,具体不做限定,其中,外接设备还包括:键盘、鼠标、USB外设、串并口外设、耳机和麦克风,根据本发明提供的一种数据流传输的方法依旧适用于上述外接设备。
这里步骤201~步骤203所述的方法应用于终端与远程服务器组成的计算机系统的云端操作,该终端包括瘦客户终端,远程服务器包括远程虚拟桌面。
本发明实施例提供的数据流传输的方法,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
具体的,以下结合具体的实施例进行说明。
可以在图1或图2对应的实施例的基础上,参照图3所示,本发明的实施例提供了一种数据流传输的方法,参照图3所示,为终端将外接设备重定向的过程,具体步骤如下:
301、终端获取与该终端连接的外接设备的第一参数信息。
其中,第一参数信息包括该外接设备的运行参数,其中,该运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合。本发明实施例中的第一参数信息仅以分辨率、帧率和支持的视屏图像格式为例说明连接于终端上的外接设备的运行参数,不作具体限定,具体以实现一种数据流传输的方法为准。
这里本发明实施例中的终端以瘦客户终端TC(Thin Client)为例,外接设备以摄像头为例进行说明,其中,TC包含显示器客户端Display Client、设备驱动Device Driver以及USB客户端USB Client。
具体的,终端获取与该终端连接的外接设备的第一参数信息,包括:
a、当终端TC中的设备驱动Device Driver检测到有摄像头接入时,触发即插即用PnP(Plug-and-Play)消息,将该PnP消息上报至终端TC中的USB Client。
b、终端TC中的USB Client收到PnP消息,将根据PnP消息查找该外接设备,并根据外接设备的类型获知为摄像头,进而USB Client将获取摄像头的参数信息。
例如:该摄像头的运行参数至少包括:硬件支持的分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合(RGB、YUV)。
302、终端将第一参数信息发送至远程服务器。
这里终端TC中的USB Client向远程服务器中的USB Server端上报摄像头插入的通知事件,其中通知事件中包括终端TC中外接设备,即摄像头的第一参数信息。
其中,远程服务器包括:USB服务端USB Server、运行端Application以及显示服务端Display Server。
303、远程服务器接收终端发送的第一参数信息。
其中,远程服务器中的USB Server接收到USB Client的事件通知,并从通知中获取的摄像头的参数信息(至少包括摄像头硬件支持的分辨率、帧率和支持的视频图像格式中的任意一种或者至少两种的组合)。
304、远程服务器根据第一参数信息配置虚拟外接设备。
其中,该虚拟外接设备为远程服务器上映射于终端中外接设备设置的虚拟设备。
这里远程服务器中的USB Server根据摄像头的第一参数信息,调用直接显示DirectShow接口添加虚拟摄像头,添加虚拟摄像头成功以后,远程服务器的操作系统的设备管理就可以看到新添加的虚拟摄像头外接设备。
305、远程服务器根据虚拟外接设备生成对应终端中外接设备的启动请求。
其中,启动请求包括启动该外接设备的启动命令和/或驱动信息。
这里当远程服务器的某个应用程序需要使用该虚拟摄像头时,可以像使用普通的摄像头一样打开该虚拟摄像头。远程应用程序打开连接于终端的摄像头,并开始发送播放请求。
306、远程服务器将启动请求发送至该终端。
远程服务器中的USB Server会截获该某种应用程序的请求,并将该启动请求转发至终端TC中的USB Client端。其中,该启动请求除了包括打开这个摄像头信息,通常还包括第二参数信息,即摄像头的分辨率、帧率和亮度中的任意一种或者至少两种的组合的信息。
307、终端接收远程服务器发送的启动请求,并根据启动请求中的第二参数信息开启外接设备。
其中,第二参数信息至少包括:分辨率、帧率和亮度中的任意一种或者至少两种的组合。
具体的,终端TC接收远程服务器发送的启动请求,并根据启动请求中的第二参数信息开启外接设备,包括:
终端TC中的USB Client接收到启动请求以后,根据启动请求的第二参数(至少包括分辨率、帧率和亮度中的任意一种或者至少两种的组合)使用DirectShow接口来设置并启动摄像头。
308、终端根据启动请求启动外接设备获取数据流。
其中,终端TC中的设备驱动Device Driver接收到启动请求后,根据该启动请求中的第二参数(至少包括分辨率、帧率和亮度中的任意一种或者至少两种的组合)设置并启动终端TC的外接设备,即摄像头。进而终端TC中的USB Client检测到外接设备(摄像头)准备就绪以后,使用直接显示DirectShow接口开始获取视频数据。
309、终端将获取到的数据流添加识别标识。
这里终端TC中的USB Client将获取到的视屏数据流添加识别标识,以便在远程服务器侧接收携带识别标识的视频数据流之后能够根据识别标识提取该视屏数据并执行对应操作。
310、终端将添加识别标识后的数据流通过压缩发送至远程服务器。
具体的,终端将添加识别标识后的数据流通过压缩发送至远程服务器,包括:
a、USB Client将添加识别标识后的数据流进行压缩编码。
其中,通过USB Client的压缩编码,使得视频数据在网络传输过程中节约大量的网络带宽的消耗。
b、USB Client将压缩后的数据流发送至远程服务器的USB服务器端USB Server。
311、远程服务器接收终端发送的通过该终端压缩携带识别标识的数据流。
具体的,远程服务器接收终端发送的通过该终端压缩携带识别标识的数据流,实施方式如下所述:
a、远程服务器中的USB Server收到从终端TC中USB Client发送的视频数据流。
b、远程服务器中的USB Server对接收到的视频数据进行解码。
c、远程服务器中的USB Server通过DirectShow接口把解码后的视频数据流填充到虚拟摄像头。
这里远程服务器在接收终端发送视频数据流之前,首先对应终端TC的外接设备在远程服务器侧对应生成一个虚拟设备,其中,通过启动该虚拟设备进而启动终端TC的外接设备。
在远程服务器中的USB Server获取到解码后的视频数据流后,将该视频数据流填充至虚拟摄像头,使得对应的在远程服务器侧与终端TC中的外接设备摄像头对应。
d、远程服务器的应用程序捕获到虚拟摄像头的视频数据流,并调用Win32API接口把视频数据转发至Display Server。
这里远程服务器通过调用对应的应用程序,将获取到的视频数据流传送至Display Server,使得通过显示服务端Display Server对该视频数据流进行图像处理。
e、远程服务器中的Display Server根据每帧的视频数据生成图像指令。
312、远程服务器根据携带识别标识的数据流生成数据流显示的位置信息。
其中,位置信息用于指示该终端显示携带识别标识的数据流。
具体的,远程服务器根据添加识别标识后的数据流提取数据流显示的位置信息,包括:
a、远程服务器解压携带识别标识的数据流,并将该数据流填充至虚拟外接设备。
其中,现有技术中当前远程服务器在摄像头重定向的情况下,摄像头的视频数据在远程服务器要负责在线的压缩与解压,而在正常的使用场景下,远程服务器可能还在进行其它的任务处理,而在线的压缩与解压又是一个很消耗CPU的业务,如果要保证相同的用户体验,必须增加额外的CPU资源,相当于额外增加了远程服务器的设计与生产成本。而本发明可以使得远程服务器只需要负责解压,而不需要在线压缩,进而降低了对远程服务器的CPU能力消耗,从而降低了远程服务器的设计与生产成本。
b、远程服务器根据数据流生成图像指令,并判断该识别标识是否为图像指令对应标识。
其中,远程服务器中的Display Server判断视频图像数据的识别标识。
c、若识别标识为该图像指令对应的标识,则根据该识别标识提取对应的位置信息。
如果发现该图像数据具有终端TC设置的识别标识,则提取该图像数据需要显示的具体位置信息。
313、远程服务器发送位置信息至终端。
这里远程服务器中的Display Server把图像要显示的位置信息发送到终端TC的Display Client,以便终端TC的Display Client根据该位置信息提取视频数据。例如,远程服务器侧根据获得的携带有识别标识的数据流提取位置信息,发现终端TC侧显示的数据流需要为分辨率800*600的画面,从而将终端TC侧需要显示的画面规格以位置信息的形式发送至TC侧,进而使得TC侧在显示数据流中能够根据位置信息中指示的800*600画面分辨率显示该数据流。
314、终端接收该远程服务器根据添加识别标识后的数据流生成的位置信息。
其中,位置信息用于指示终端显示添加识别标识后的数据流。
这里终端通过远程桌面协议接收远程服务器发送的位置信息。
具体的,终端接收该远程服务器根据添加识别标识后的数据流生成的位置信息,包括:
这里TC中的显示客户端Display Client通过远程桌面协议,接收远程服务器中的显示服务端Display Server发送的用于指示视频数据流显示的具体位置信息。
315、终端提取添加识别标识后的数据流。
316、终端根据该位置信息显示缓存中存储的添加识别标识后的数据流。
这里TC中的显示客户端Display Client通过使用直接显示接口DirectShow根据新接收到的位置信息显示视屏数据流。
其中,现有技术中远程服务器在摄像头重定向的情况下,摄像头的视频数据在终端(TC)要负责在线压缩与解压,如果要保证良好的用户体验,必须要增加终端TC的CPU能力,这样就无形中增加了终端TC的设计以及生产成本。本发明可以使终端TC只需要负责在线压缩,而不需要在线解压,降低了对终端TC的CPU能力消耗,从而降低了终端TC的设计以及生产成本。
并且,现有技术中当前远程服务器在摄像头重定向的情况下,摄像头的视频数据将在网络上进行2次传输,除了会消耗大量的网络带宽,而且网络的抖动,不稳定性都会影响当前的视频数据显示。而本发明直接在终端显示图像,减少了对网络的依赖与消耗,并使视频数据在网络上传输的数据减少到原来的一半。
具体的,远程服务器在摄像头重定向的情况下,如图4所示,其中,终端TC通过显示器客户端Display Client、设备驱动Device Driver以及USB客户端USB Client与远程服务器中的USB服务端USB Server、运行端Application以及显示服务端Display Server,在终端TC存在外接设备接入时进行数据流传输过程中,解决了在数据传输过程中终端TC与远程服务器的性能消耗过大,以及在数据传输时需要消耗的大量带宽,进而使得设备间的功能资源以及信令交互时的网络资源占用过多的问题。具体实施如步骤301~315所述,此处不再赘述。
本发明实施例提供的数据流传输的方法,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
本发明实施例提供的一种数据流传输的方法中,终端以TC为例,外接设备以摄像头为例进行说明,具体不做限定,其中,终端还可以为移动终端PAD、智能手机,PC或瘦客户机等在通信系统中的任一种物理终端;外接设备也可以还包括:键盘、鼠标、USB外设、串并口外设、耳机和麦克风;远程服务器可以以云端为例,在云端侧具备了数据存储以及数据处理的能力,根据本发明提供的一种数据流传输的方法依旧适用于上述外接设备、终端以及远程服务器组成的计算机系统。
本发明实施例提供一种终端4,该终端可以为移动终端PAD、智能手机,PC或瘦客户机等在通信系统中的任一种物理终端,以可以实现本发明的实施例所提供的上述任一数据流传输的方法为准,参照图5所示,包括:
通信单元41,用于将添加识别标识后的数据流通过压缩发送至远程服务器,其中,终端与该远程服务器具有连接关系,连接关系至少包括无线或有线;
通信单元41,还用于接收远程服务器根据添加识别标识后的数据流生成的位置信息,该位置信息用于指示终端显示添加识别标识后的数据流;
显示单元42,用于提取添加识别标识后的数据流;
显示单元42,还用于根据通信单元接收的位置信息显示缓存中存储的添加识别标识后的数据流。
本发明实施例提供的终端,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
可选的,参照图6所示,终端4,还包括:
获取单元43,用于在将添加识别标识后的数据流通过压缩发送至远程服务器之前,获取与终端连接的外接设备的第一参数信息,该第一参数信息包括外接设备的运行参数,其中,该运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
通信单元41,还用于将获取单元获取的该第一参数信息发送至远程服务器;
通信单元41,还用于接收远程服务器发送的启动请求,并根据启动请求中的第二参数信息开启外接设备,该第二参数信息包括:分辨率、帧率和亮度中的任意一种或者至少两种的组合;
启动单元44,用于根据通信单元接收的启动请求启动外接设备获取数据流;
添加单元45,用于将获取到的数据流添加识别标识。
可选的,通信单元41,具体用于:
通过将识别标识添加至获取到的数据流中,以便远程服务器根据添加识别标识后的数据流生成位置信息;
压缩添加识别标识后的数据流;
发送压缩后携带识别标识的数据流至远程服务器。
进一步的,该终端4应用于终端与远程服务器组成的计算机系统进行的数据流传输,该终端包括瘦客户终端。
本发明实施例提供的终端,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
本发明实施例提供一种远程服务器5,该远程服务器可以为实现本发明的实施例所提供的上述任一数据流传输的方法为准,参照图7所示,包括:
通信单元51,用于接收终端发送的通过终端压缩携带识别标识的数据流,该终端与远程服务器具有连接关系,该连接关系至少包括无线或有线;
调用单元52,用于根据通信单元接收的携带识别标识的数据流生成数据流显示的位置信息,该位置信息用于指示终端显示携带识别标识的数据流;
通信单元51,还用于发送调用单元生成的位置信息至终端。
本发明实施例提供的远程服务器,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
可选的,参照图8所示,远程服务器5,还包括:
通信单元51,还用于在接收终端发送的通过终端压缩携带识别标识的数据流之前,接收终端发送的第一参数信息,该第一参数信息包括外接设备的运行参数,其中,该运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
配置单元53,用于根据通信单元接收的第一参数信息配置虚拟外接设备,该虚拟外接设备为远程服务器上映射于终端中外接设备设置的虚拟设备;
配置单元53,还用于根据虚拟外接设备生成对应终端中外接设备的启动请求,该启动请求包括启动外接设备的启动命令和/或驱动信息;
通信单元51,还用于将配置单元生成的启动请求发送至终端。
可选的,调用单元52,具体用于:
解压携带识别标识的数据流,并将数据流填充至虚拟外接设备;
根据数据流生成图像指令,并判断识别标识是否为图像指令对应标识;
若识别标识为图像指令对应的标识,则根据识别标识生成对应的位置信息。
进一步的,远程服务器5应用于终端与远程服务器组成的计算机系统的云端操作,该终端包括瘦客户终端,远程服务器包括远程虚拟桌面。
本发明实施例提供的远程服务器,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
本发明的实施例提供一种终端6,参照图9所示,该终端6包括:至少一个处理器61、存储器62、通信接口63和总线64,该至少一个处理器61、存储器62和通信接口63通过总线64连接并完成相互间的通信。
该总线64可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称为EISA)总线等。该总线64可以分为地址总线、数据总线、控制总线等。为便于表示,图9中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。其中:
存储器62用于存储可执行程序代码,该程序代码包括计算机操作指令。存储器62可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器61可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
通信接口63,主要用于实现本实施例中的装置之间的通信。
其中,处理器61,用于将添加识别标识后的数据流通过压缩通过至少一个通信接口63发送至远程服务器,其中,终端与该远程服务器具有连接关系,连接关系至少包括无线或有线;
处理器61,还用于通过至少一个通信接口63接收远程服务器根据添加识别标识后的数据流生成的位置信息,该位置信息用于指示终端显示添加识别标识后的数据流;
处理器61,还用于提取添加识别标识后的数据流;
处理器61,还用于根据该位置信息显示缓存中存储的添加识别标识后的数据流。
本发明实施例提供的终端,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
可选的,处理器61,还用于在将添加识别标识后的数据流通过压缩通过至少一个通信接口63发送至远程服务器之前,获取与终端连接的外接设备的第一参数信息,该第一参数信息包括外接设备的运行参数,其中,该运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
处理器61,还用于将该第一参数信息通过至少一个通信接口63发送至远程服务器;
处理器61,还用于通过至少一个通信接口63接收远程服务器发送的启动请求,并根据启动请求中的第二参数信息开启外接设备,该第二参数信息包括:分辨率、帧率和亮度中的任意一种或者至少两种的组合;
处理器61,还用于根据启动请求启动外接设备获取数据流;
处理器61,还用于将获取到的数据流添加识别标识。
可选的,处理器61,具体用于:
通过将识别标识添加至获取到的数据流中,以便远程服务器根据添加识别标识后的数据流生成位置信息;
压缩添加识别标识后的数据流;
通过至少一个通信接口63发送压缩后携带识别标识的数据流至远程服务器。
进一步的,该终端6应用于终端与远程服务器组成的计算机系统进行的数据流传输,该终端包括瘦客户终端。
本发明实施例提供的终端,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
本发明的实施例提供一种远程服务器7,参照图10所示,该远程服务器7包括:至少一个处理器71、存储器72、通信接口73和总线74,该至少一个处理器71、存储器72和通信接口73通过总线74连接并完成相互间的通信。
该总线74可以是工业标准体系结构(Industry Standard Architecture,简称为ISA)总线、外部设备互连(Peripheral Component,简称为PCI)总线或扩展工业标准体系结构(Extended Industry Standard Architecture,简称为EISA)总线等。该总线74可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。其中:
存储器72用于存储可执行程序代码,该程序代码包括计算机操作指令。存储器72可能包含高速RAM存储器,也可能还包括非易失性存储器(non-volatile memory),例如至少一个磁盘存储器。
处理器71可能是一个中央处理器(Central Processing Unit,简称为CPU),或者是特定集成电路(Application Specific Integrated Circuit,简称为ASIC),或者是被配置成实施本发明实施例的一个或多个集成电路。
通信接口73,主要用于实现本实施例中的装置之间的通信。
其中,处理器71,用于通过至少一个通信接口73接收终端发送的通过终端压缩携带识别标识的数据流,该终端与远程服务器具有连接关系,该连接关系至少包括无线或有线;
处理器71,还用于根据通信单元接收的携带识别标识的数据流生成数据流显示的位置信息,该位置信息用于指示终端显示携带识别标识的数据流;
处理器71,还用于通过至少一个通信接口73发送调用单元生成的位置信息至终端。
本发明实施例提供的远程服务器,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
可选的,处理器71,还用于在通过至少一个通信接口73接收终端发送的通过终端压缩携带识别标识的数据流之前,通过至少一个通信接口73接收终端发送的第一参数信息,该第一参数信息包括外接设备的运行参数,其中,该运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
处理器71,还用于根据该第一参数信息配置虚拟外接设备,该虚拟外接设备为远程服务器上映射于终端中外接设备设置的虚拟设备;
处理器71,还用于根据虚拟外接设备生成对应终端中外接设备的启动请求,该启动请求包括启动外接设备的启动命令和/或驱动信息;
处理器71,还用于将配置单元生成的启动请求通过至少一个通信接口73发送至终端。
可选的,处理器71,具体用于:
解压携带识别标识的数据流,并将数据流填充至虚拟外接设备;
根据数据流生成图像指令,并判断识别标识是否为图像指令对应标识;
若识别标识为图像指令对应的标识,则根据识别标识生成对应的位置信息。
进一步的,远程服务器7应用于终端与远程服务器组成的计算机系统的云端操作,该终端包括瘦客户终端,远程服务器包括远程虚拟桌面
本发明实施例提供的远程服务器,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
本发明实施例提供一种计算机系统8,参照图11所示,包括:终端81和远程服务器82,其中,
终端81为图5或图6所示的任一种终端;
远程服务器82为图7或图8所示的任一种远程服务器;
或者,
终端81为图9所示的一种终端;
远程服务器82为图10所示的一种远程服务器。
这里终端以瘦客户机端TC(Thin Client)为例,远程服务器包括远程虚拟桌面,且远程服务器以云端为例,终端通过外接设备获取到的数据发送至远程服务器(即云端)处理,然后接收远程服务器反馈的处理后的数据。
本发明实施例提供的计算机系统,终端将携带识别标识的压缩数据流发送至远程服务器,并通过接收该远程服务器根据该识别标识的数据流生成的位置信息提取数据流,终端通过接收位置信息避免了远程服务器通过处理压缩后的该数据流后再次传输处理后的该数据流的压缩包,从而降低了在数据传输过程中终端与远程服务器的性能消耗,以及在数据传输时消耗的大量带宽,进而节约了设备的功能资源以及信令交互时的网络资源。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可以用硬件实现,或固件实现,或它们的组合方式来实现。当使用软件实现时,可以将上述功能存储在计算机可读介质中或作为计算机可读介质上的一个或多个指令或代码进行传输。计算机可读介质包括计算机存储介质和通信介质,其中通信介质包括便于从一个地方向另一个地方传送计算机程序的任何介质。存储介质可以是计算机能够存取的任何可用介质。以此为例但不限于:计算机可读介质可以包括RAM、ROM、EEPROM、CD-ROM或其他光盘存储、磁盘存储介质或者其他磁存储设备、或者能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其他介质。此外。任何连接可以适当的成为计算机可读介质。例如,如果软件是使用同轴电缆、光纤光缆、双绞线、数字用户线(DSL)或者诸如红外线、无线电和微波之类的无线技术从网站、服务器或者其他远程源传输的,那么同轴电缆、光纤光缆、双绞线、DSL或者诸如红外线、无线和微波之类的无线技术包括在所属介质的定影中。如本发明所使用的,盘(Disk)和碟(disc)包括压缩光碟(CD)、激光碟、光碟、数字通用光碟(DVD)、软盘和蓝光光碟,其中盘通常磁性的复制数据,而碟则用激光来光学的复制数据。上面的组合也应当包括在计算机可读介质的保护范围之内。
总之,以上所述仅为本发明技术方案的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (17)
1.一种数据流传输的方法,其特征在于,包括:
终端将添加识别标识后的数据流通过压缩发送至远程服务器,其中,所述终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
所述终端接收所述远程服务器根据所述添加识别标识后的数据流生成的位置信息,所述位置信息用于指示所述终端显示所述添加识别标识后的数据流;
所述终端提取所述添加识别标识后的数据流;
所述终端根据所述位置信息显示缓存中存储的所述添加识别标识后的数据流。
2.根据权利要求1所述的方法,其特征在于,所述终端将添加识别标识后的数据流通过压缩发送至所述远程服务器之前,还包括:
所述终端获取与所述终端连接的外接设备的第一参数信息,所述第一参数信息包括所述外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
所述终端将所述第一参数信息发送至所述远程服务器;
所述终端接收所述远程服务器发送的启动请求,并根据所述启动请求中的第二参数信息开启所述外接设备,所述第二参数信息至少包括:分辨率、帧率和亮度中的任意一种或者至少两种的组合;
所述终端根据所述启动请求启动所述外接设备获取数据流;
所述终端将获取到的所述数据流添加识别标识。
3.根据权利要求1所述的方法,其特征在于,所述终端将添加识别标识后的数据流通过压缩发送至所述远程服务器,包括:
所述终端通过将所述识别标识添加至获取到的数据流中,以便所述远程服务器根据添加所述识别标识后的数据流生成位置信息;
所述终端压缩添加所述识别标识后的数据流;
所述终端发送压缩后携带所述识别标识的数据流至所述远程服务器。
4.根据权利要求1~3任一所述的方法,其特征在于,所述方法应用于所述终端与所述远程服务器组成的计算机系统进行的数据流传输,所述终端包括瘦客户终端。
5.一种数据流传输的方法,其特征在于,包括:
远程服务器接收终端发送的通过所述终端压缩携带识别标识的数据流,所述终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
所述远程服务器根据所述携带识别标识的数据流生成所述数据流显示的位置信息,所述位置信息用于指示所述终端显示所述携带识别标识的数据流;
所述远程服务器发送所述位置信息至所述终端。
6.根据权利要求5所述的方法,其特征在于,所述远程服务器接收终端发送的通过所述终端压缩携带识别标识的数据流之前,还包括:
所述远程服务器接收所述终端发送的第一参数信息,所述第一参数信息包括外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
所述远程服务器根据所述第一参数信息配置虚拟外接设备,所述虚拟外接设备为所述远程服务器上映射于所述终端中外接设备设置的虚拟设备;
所述远程服务器根据所述虚拟外接设备生成对应所述终端中外接设备的启动请求,所述启动请求包括启动所述外接设备的启动命令和/或驱动信息;
所述远程服务器将所述启动请求发送至所述终端。
7.根据权利要求5所述的方法,其特征在于,所述远程服务器根据所述携带识别标识的数据流生成所述数据流显示的位置信息,包括:
所述远程服务器解压所述携带识别标识的数据流,并将所述数据流填充至虚拟外接设备;
所述远程服务器根据所述数据流生成图像指令,并判断所述识别标识是否为所述图像指令对应标识;
若所述识别标识为所述图像指令对应的标识,则根据所述识别标识生成对应的位置信息。
8.根据权利要求5~7任一所述的方法,其特征在于,所述方法应用于所述终端与所述远程服务器组成的计算机系统的云端操作,所述终端包括瘦客户终端,所述远程服务器包括远程虚拟桌面。
9.一种终端,其特征在于,包括:
通信单元,用于将添加识别标识后的数据流通过压缩发送至远程服务器,其中,终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
所述通信单元,还用于接收所述远程服务器根据所述添加识别标识后的数据流生成的位置信息,所述位置信息用于指示所述终端显示所述添加识别标识后的数据流;
显示单元,用于提取所述添加识别标识后的数据流;
所述显示单元,还用于根据所述通信单元接收的所述位置信息显示缓存中存储的所述添加识别标识后的数据流。
10.根据权利要求9所述的终端,其特征在于,所述终端,还包括:
获取单元,用于在将添加识别标识后的数据流通过压缩发送至所述远程服务器之前,获取与所述终端连接的外接设备的第一参数信息,所述第一参数信息包括所述外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
所述通信单元,还用于将所述获取单元获取的所述第一参数信息发送至所述远程服务器;
所述通信单元,还用于接收所述远程服务器发送的启动请求,并根据所述启动请求中的第二参数信息开启所述外接设备,所述第二参数信息包括:分辨率、帧率和亮度中的任意一种或者至少两种的组合;
启动单元,用于根据所述通信单元接收的所述启动请求启动所述外接设备获取数据流;
添加单元,用于将获取到的所述数据流添加识别标识。
11.根据权利要求9所述的终端,其特征在于,所述通信单元,具体用于:
通过将所述识别标识添加至获取到的数据流中,以便所述远程服务器根据添加所述识别标识后的数据流生成位置信息;
压缩添加所述识别标识后的数据流;
发送压缩后携带所述识别标识的数据流至所述远程服务器。
12.根据权利要求9~11任一所述的终端,其特征在于,所述终端应用于所述终端与所述远程服务器组成的计算机系统进行的数据流传输,所述终端包括瘦客户终端。
13.一种远程服务器,其特征在于,包括:
通信单元,用于接收终端发送的通过所述终端压缩携带识别标识的数据流,所述终端与所述远程服务器具有连接关系,所述连接关系至少包括无线或有线;
调用单元,用于根据所述通信单元接收的所述携带识别标识的数据流生成所述数据流显示的位置信息,所述位置信息用于指示所述终端显示所述携带识别标识的数据流;
所述通信单元,还用于发送所述调用单元生成的所述位置信息至所述终端。
14.根据权利要求13所述的远程服务器,其特征在于,所述远程服务器,还包括:
所述通信单元,还用于在接收终端发送的通过所述终端压缩携带识别标识的数据流之前,接收所述终端发送的第一参数信息,所述第一参数信息包括外接设备的运行参数,其中,所述运行参数至少包括:分辨率、帧率和支持的视屏图像格式中的任意一种或者至少两种的组合;
配置单元,用于根据所述通信单元接收的所述第一参数信息配置虚拟外接设备,所述虚拟外接设备为所述远程服务器上映射于所述终端中外接设备设置的虚拟设备;
所述配置单元,还用于根据所述虚拟外接设备生成对应所述终端中外接设备的启动请求,所述启动请求包括启动所述外接设备的启动命令和/或驱动信息;
所述通信单元,还用于将所述配置单元生成的所述启动请求发送至所述终端。
15.根据权利要求13所述的远程服务器,其特征在于,所述调用单元,具体用于:
解压所述携带识别标识的数据流,并将所述数据流填充至虚拟外接设备;
根据所述数据流生成图像指令,并判断所述识别标识是否为所述图像指令对应标识;
若所述识别标识为所述图像指令对应的标识,则根据所述识别标识生成对应的位置信息。
16.根据权利要求13~15任一所述的远程服务器,其特征在于,所述远程服务器应用于所述终端与所述远程服务器组成的计算机系统的云端操作,所述终端包括瘦客户终端,所述远程服务器包括远程虚拟桌面。
17.一种计算机系统,其特征在于,包括:终端和远程服务器,其中,
所述终端为权利要求9~12中任一所述的终端;
所述远程服务器为权利要求13~16中任一所述的远程服务器。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310549491.0A CN104639501B (zh) | 2013-11-07 | 2013-11-07 | 一种数据流传输的方法、设备及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310549491.0A CN104639501B (zh) | 2013-11-07 | 2013-11-07 | 一种数据流传输的方法、设备及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN104639501A CN104639501A (zh) | 2015-05-20 |
CN104639501B true CN104639501B (zh) | 2018-11-16 |
Family
ID=53217825
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310549491.0A Active CN104639501B (zh) | 2013-11-07 | 2013-11-07 | 一种数据流传输的方法、设备及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN104639501B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106027882A (zh) * | 2016-05-16 | 2016-10-12 | 深圳市青葡萄科技有限公司 | 摄像头外设在虚拟化环境下的重定向方法 |
CN109246435B (zh) * | 2017-07-10 | 2022-03-15 | 中兴通讯股份有限公司 | Usb设备重定向数据传输方法及装置、本地装置和远程服务器 |
CN109040786B (zh) * | 2018-09-03 | 2022-01-11 | 锐捷网络股份有限公司 | 摄像头数据的传输方法、装置、系统及存储介质 |
CN110795008B (zh) * | 2019-09-29 | 2021-11-16 | 视联动力信息技术股份有限公司 | 图片传输方法、装置及计算机可读存储介质 |
CN110868599B (zh) * | 2019-12-06 | 2021-11-19 | 杭州顺网科技股份有限公司 | 一种远程桌面的视频压缩方法 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098511A (zh) * | 2010-12-15 | 2011-06-15 | 中兴通讯股份有限公司 | 一种移动终端及其视频播放的实现方法 |
CN102333242A (zh) * | 2011-09-29 | 2012-01-25 | 深圳市万兴软件有限公司 | 一种流媒体语言信息匹配装置及方法 |
CN102611878A (zh) * | 2012-01-13 | 2012-07-25 | 福建升腾资讯有限公司 | 低带宽占用的高清摄像头映射方法 |
-
2013
- 2013-11-07 CN CN201310549491.0A patent/CN104639501B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102098511A (zh) * | 2010-12-15 | 2011-06-15 | 中兴通讯股份有限公司 | 一种移动终端及其视频播放的实现方法 |
CN102333242A (zh) * | 2011-09-29 | 2012-01-25 | 深圳市万兴软件有限公司 | 一种流媒体语言信息匹配装置及方法 |
CN102611878A (zh) * | 2012-01-13 | 2012-07-25 | 福建升腾资讯有限公司 | 低带宽占用的高清摄像头映射方法 |
Also Published As
Publication number | Publication date |
---|---|
CN104639501A (zh) | 2015-05-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104639501B (zh) | 一种数据流传输的方法、设备及系统 | |
US6885643B1 (en) | Method and device for facilitating efficient data transfer via a wireless communication network | |
KR102157634B1 (ko) | 영상 획득 방법 및 로컬 엔드포인트 호스트 장치 | |
US10194180B2 (en) | Systems and methods for transmitting video data over a network | |
JP6338688B2 (ja) | ビデオ同期再生方法、装置、およびシステム | |
CN108737476B (zh) | 云存储系统、媒体数据存储方法及系统 | |
EP3125594A1 (en) | Intelligent communication method, terminal and system | |
US9497492B2 (en) | Distribution control system, distribution system, distribution control method, and computer-readable storage medium | |
CN109327493A (zh) | 一种基于云的远程医疗监控系统及监控方法 | |
WO2014139269A1 (zh) | 基于虚拟桌面的视频播放、处理方法及装置 | |
JP6179179B2 (ja) | 情報処理装置、情報処理方法およびプログラム | |
WO2023131057A1 (zh) | 视频直播方法、系统及计算机存储介质 | |
CN113766317A (zh) | 视频传输方法、装置、电子设备和存储介质 | |
WO2024061295A1 (zh) | 视频数据的处理方法和系统 | |
CN108055595B (zh) | 视频图像的重定向方法、计算机可读存储介质 | |
CN111866143A (zh) | 一种远程数据传输方法、装置及监控系统 | |
CN109963106B (zh) | 一种视频图像处理方法、装置、存储介质及终端 | |
CN205105347U (zh) | 视频的无线传输设备、视频播放设备及系统 | |
CN110798651A (zh) | 视频会议方法、装置、设备及存储介质 | |
WO2012163059A1 (zh) | 设备重定向的数据传输的方法、装置及系统 | |
WO2013078614A1 (zh) | 一种虚拟桌面场景下音频压缩算法选择方法、装置及通信系统 | |
CN113038192A (zh) | 视频处理方法、装置、电子设备和存储介质 | |
CN115209189B (zh) | 一种视频流传输方法、系统、服务器及存储介质 | |
CN204031363U (zh) | 一种多功能无线个人便携数码装置 | |
CN114710568B (zh) | 音视频数据通信方法、设备及存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant | ||
TR01 | Transfer of patent right |
Effective date of registration: 20220215 Address after: 550025 Huawei cloud data center, jiaoxinggong Road, Qianzhong Avenue, Gui'an New District, Guiyang City, Guizhou Province Patentee after: Huawei Cloud Computing Technology Co.,Ltd. Address before: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee before: HUAWEI TECHNOLOGIES Co.,Ltd. |
|
TR01 | Transfer of patent right |