CN105740081A - 客户端、usb设备及显示处理系统和方法 - Google Patents
客户端、usb设备及显示处理系统和方法 Download PDFInfo
- Publication number
- CN105740081A CN105740081A CN201410766980.6A CN201410766980A CN105740081A CN 105740081 A CN105740081 A CN 105740081A CN 201410766980 A CN201410766980 A CN 201410766980A CN 105740081 A CN105740081 A CN 105740081A
- Authority
- CN
- China
- Prior art keywords
- video data
- client
- usb device
- display
- service end
- 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
Links
Abstract
本发明公开了一种客户端、USB设备及显示处理系统和方法,涉及通信领域,能够解决客户端在解码时占用客户端CPU较多资源且解码速度较慢的问题。该显示处理系统包括客户端和USB设备,其中,客户端用于:与服务端通信以获取所述服务端中的以编码形式存在的显示数据;将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码。USB设备用于:接收客户端发送的显示数据,并处理所述显示数据;将处理的显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。本发明主要用于远程桌面技术。
Description
技术领域
本发明涉及通信领域,尤其涉及一种客户端、USB(UniversalSerialBus,通用串行总线)设备及显示处理系统和方法。
背景技术
远程桌面是指可在当前显示屏上显示另一台计算机的显示内容。其又称为虚拟桌面,是目前企业办公环境中一种流行办公模式。远程桌面涉及远程屏幕显示技术,该技术与用户的体验度密切相关。
目前,在远程桌面结合现有屏幕显示技术的情况下,其远程桌面显示的具体过程为,桌面协议服务端从其显示驱动中抓取画面,通过VDI(VirtualDesktopInfrastructure,虚拟桌面基础架构)桌面协议将抓取到的画面图像经过压缩后发送到客户端,客户端再将数据用软件解压后交给TC端(ThinClient,瘦客户端)的显示模块显示。该解码利用客户端的CPU(CentralProcessingUnit,中央处理器)资源实现。
但是,上述显示处理的方法存在如下问题:当画面具有较高的高清度时,进行解码会占用客户端CPU较多的资源,且解码速度较为缓慢,由此会直接影响显示效果,如流畅度、实时性等。
发明内容
本发明实施例提供一种客户端、USB设备及显示处理系统和方法,能够解决客户端在解码时占用客户端CPU较多资源且解码速度较慢的问题。
本发明的第一方面,提供一种显示处理系统,其特征在于,所述系统包括客户端和USB设备,其中,
所述客户端用于:
与服务端通信以获取所述服务端中的以编码形式存在的显示数据;
将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码;
所述USB设备用于:
接收所述客户端发送的显示数据,并处理所述显示数据;
将所述处理的显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
在本发明第一方面的第一种可能的实现方式中,所述USB设备具体用于:
判断所述显示数据是否以编码形式存在;
当所述显示数据以编码形式存在,解码所述显示数据。
结合第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述客户端具体用于
将所述从服务端中的以编码形式存在的显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备以在所述USB设备中解码;
所述USB设备具体用于:
接收所述客户端发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;
根据所述显示数据的头确定所要使用的解码方式;
根据解码算法进行解码,并将所述解码后的数据传递给所述显示接口。
本发明的第二方面,提供一种客户端,包括:
桌面协议客户端模块,用于与服务端通信以获取所述服务端中的以编码形式存在的显示数据;
USB功能驱动模块,用于从所述桌面协议客户端模块中获取显示数据,并将所述显示数据发送给USB设备以在所述USB设备中解码。
在本发明第二方面的第一种可能的实现方式中,所述客户端还包括:
应用层显示接口,用于获取所述客户端内自身的显示数据;
所述USB功能驱动模块具体用于,从所述桌面协议客户端模块和所述应用层显示接口中获取显示数据,并将所述显示数据发送给USB设备。
在本发明第二方面的第二种可能的实现方式中,所述USB功能驱动模块还包括:
桌面协议显示驱动接口,用于将所述服务端中的以编码形式存在的显示数据解析,以便USB功能驱动模块将所述解析的显示数据封装成URB数据包,并将所述数据包发送给所述USB设备以在所述USB设备中解码。
结合第二方面的第二种可能的实现方式,在第二方面的第三种可能的实现方式中,所述USB功能驱动模块还包括:
显示驱动接口,用于从所述应用层显示接口中获取所述客户端内自身的显示数据以解析,以便USB功能驱动模块将所述解析的显示数据封装成URB数据包,并将所述数据包发送给所述USB设备。
在第二方面的第四种可能的实现方式中,所述桌面协议客户端模块包括:
通信模块,用于与服务端进行通信以传递所述服务端中的以编码形式存在的显示数据;
桌面协议显示接口,用于从所述通信模块中获取所述显示数据,并将所述显示数据传递给所述USB功能驱动模块。
本发明的第三方面,提供一种USB设备,所述设备包括:
USB接口,用于接收所述客户端发送的显示数据;
显示接口,用于接收所述USB接口传递的显示数据,并将所述显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
在本发明第三方面的第一种可能的实现方式中,所述显示数据包括:所述客户端本身的显示数据,和/或,进行桌面协议的服务端的显示数据;其中,所述进行桌面协议的服务端的显示数据以编码形式存在。
结合第三方面的第一种可能的实现方式,在本发明第三方面的第二种可能的实现方式中,当所述显示数据包括进行桌面协议的服务端的显示数据时,所述设备还包括:
解码模块,用于解码所述USB接口传递的显示数据;
所述显示接口具体用于,接收所述解码模块解码完成后的显示数据,并将所述显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
结合第三方面的第二种可能的实现方式,在本发明第三方面的第三种可能的实现方式中,当所述客户端将所述显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备的USB接口时,
所述USB接口具体用于,接收所述客户端发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;
所述解码模块具体用于,根据所述显示数据的头确定所要使用的解码方式,并根据解码算法进行解码,并将所述解码后的数据传递给所述显示接口。
本发明的第四方面,提供一种显示方法,应用于客户端,包括:
与服务端通信以获取所述服务端中的以编码形式存在的显示数据;
将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码。
在本发明第四方面的第一种可能的实现方式中,在所述将所述服务端中的以编码形式存在的显示数据发送给USB设备之前,所述方法还包括:
获取所述客户端内自身的显示数据;
则所述将所述服务端中的以编码形式存在的的显示数据发送给USB设备以在所述USB设备中解码具体为:
将所述从所述服务端中获取的和从客户端自身获取的显示数据发送给USB设备。
结合第四方面的第一种可能的实现方式,在本发明第四方面的第二种可能的实现方式中,所述将所述从客户端自身获取的显示数据发送给USB设备具体为:
将所述从客户端自身获取的显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备。
结合第四方面或第四方面的第一种可能的实现方式,在第四方面的第三种可能的实现方式中,所述将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码具体为:
将所述从服务端中的以编码形式存在的显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备以在所述USB设备中解码。
本发明的第五方面,提供一种显示处理方法,应用于USB设备,包括:
接收所述客户端发送的显示数据;
将所述显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
在本发明第五方面的第一种可能的实现方式中,所述显示数据包括:所述客户端本身的显示数据,和/或,进行桌面协议的服务端的显示数据;
其中,所述进行桌面协议的服务端的显示数据以编码形式存在。
结合第五方面的第一种可能的实现方式,在本发明第五方面的第二种可能的实现方式中,当所述显示数据包括进行桌面协议的服务端的显示数据时,
在所述接收所述客户端发送的显示数据后,还包括:
解码所述显示数据;
所述将所述显示数据传递给所述客户端的显示器具体为,将所述解码后的显示数据传递给所述客户端的显示器。
结合第五方面的第二种可能的实现方式,在本发明第五方面的第三种可能的实现方式中,当所述客户端将所述显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备的USB接口时,
所述接收所述客户端发送的显示数据具体包括:
接收所述客户端发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;
所述解码所述显示数据具体为,
根据所述显示数据的头确定所要使用的解码方式;
根据解码算法进行解码,并将所述解码后的数据传递给所述显示接口。
本发明实施例提供的客户端、USB设备及显示处理系统和方法,其中,显示处理系统包括客户端和USB设备,其中,客户端用于:与服务端通信以获取所述服务端中的以编码形式存在的显示数据;将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码。USB设备用于:接收客户端发送的显示数据,并处理所述显示数据;将处理后的显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。这种基于外置硬件USB设备解码,使客户端30不需要再依靠占用客户端CPU资源进行解码,能够有效降低客户端CPU的资源占用率、提高解码速度。这样,在客户端的显示器上显示桌面时,不会影响其显示效果,如流畅度、实时性等,从而带来较高的用户体验。而且,本发明提出的USB设备解码比内置芯片硬件解码具有更高的通用性和可移植性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对实施例描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例一提供的客户端的一种结构示意图;
图2为本发明实施例一提供的客户端的另一种结构示意图;
图3为本发明实施例一提供的客户端的另一种结构示意图;
图4为本发明实施例一提供的客户端的另一种结构示意图;
图5为本发明实施例一提供的客户端的另一种结构示意图;
图6为本发明实施例二提供的USB设备的一种结构示意图;
图7为本发明实施例二提供的USB设备的另一种结构示意图;
图8为本发明实施例三提供的显示处理方法的一种流程示意图;
图9为本发明实施例四提供的显示处理方法的一种流程示意图;
图10为本发明实施例五提供的显示处理系统的一种系统框架图;
图11为向本发明实施例五至七提供的一种示例性系统框架图;
图12为本发明实施例六提供的显示处理方法的一种示例性示意图;
图13为本发明实施例七提供的显示处理方法的一种示例性示意图;
图14为本发明实施例八提供的显示处理方法的一种示例性示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例一
本发明实施例一提供了一种客户端30,如图1所示,该客户端30包括:
桌面协议客户端模块301,用于与服务端通信以获取服务端中的以编码形式存在的显示数据。
USB功能驱动模块302,用于从桌面协议客户端模块301中获取显示数据,并将该显示数据发送给USB设备40以在所述USB设备40中解码。
本发明实施例一的客户端30,包括:桌面协议客户端模块301和USB功能驱动模块302,其中,桌面协议客户端模块301用于与服务端通信以获取服务端中的以编码形式存在的显示数据。USB功能驱动模块302从桌面协议客户端模块301中获取显示数据,并将该显示数据发送给USB设备40以在所述USB设备中解码。由此可看出,使用USB设备进行解码不占用客户端30的CPU资源,因此能够有效降低客户端CPU的资源占用率、提高解码速度。这样,在客户端的显示器上显示桌面时,不会影响其显示效果,如流畅度、实时性等,从而带来较高的用户体验。另外,这种USB设备解码比内置芯片硬件解码具有更高的通用性和可移植性。
服务端在发送给客户端以编码形式存在的显示数据前,服务端可标识该显示数据的解码方式。例如,标识为“1”、“2”、“3”,其中,标识“1”对应一种软件解码方式,标识“2”和“3”分别对应两种硬件解码方式。当客户端接收到该编码的显示数据,若判断标识为“1”,则直接解码;若判断标识不为“1”,则将该编码的显示数据传递给USB设备,然后USB设备根据标识确定对应的解码方式,以对该编码的显示数据解码。
通过在显示数据中作出标识,一方面,方便客户端或USB设备选择正确的解码方式;另一方面,若显示数据不设置任何标识或所设置的标识不与客户端和USB设备中的解码方式对应,可确定显示数据是非编码的,不需要解码。
另外,可选地,在本发明的一个具体实施例中,如图2所示,客户端30除桌面协议客户端模块301和USB功能驱动模块302,还包括以下模块:
应用层显示接口303,用于获取所述客户端内自身的显示数据;
则USB功能驱动模块302具体用于,从桌面协议客户端模块301和应用层显示接口303中获取显示数据,并将所述显示数据发送给USB设备40。
具体而言,在客户端30显示远程桌面的过程中,客户端不仅会把从服务端获取的显示数据发给USB设备,还会把客户端内自身的显示数据也一起发送给USB设备。而且客户端内自身的显示数据的初始状态通常是非编码的,例如,显示数据的标识为“0”,则表示该显示数据不需要解码。
因此当上述两种来源的显示数据发送到USB设备时,USB设备会判断哪些显示数据来自服务端,并将来自服务端的显示数据进行解码。
需说明的是,当客户端30处于非远程连接状态时,客户端仅会把客户端内自身的显示数据发送给USB设备,在发给USB设备后该数据也不需要解码。
由此,可选地,在本发明的一个具体实施例中,如图3所示,USB功能驱动模块302还包括:
桌面协议显示驱动接口3021,用于将服务端中的以编码形式存在的显示数据解析,以便USB功能驱动模块302将该解析的显示数据封装成URB(USBRequestBlock,USB请求块)数据包,并将所述数据发送给所述USB设备以在所述USB设备中解码。
具体地,由于USB设备30的数据具有固定格式,因此当客户端40向其传输数据之前,该数据需要转换成与USB设备30统一的格式。因此,桌面协议显示驱动接口3021将服务端中的以编码形式存在的显示数据解析,以便USB功能驱动模块302通过USB驱动协议将解析的数据封装成URB数据包以及发送给USB设备以在所述USB设备中解码。
可选地,在本发明的一个具体实施例中,如图4所示,USB功能驱动模块302还包括:
显示驱动接口3022,用于从所述应用层显示接口中获取所述客户端内自身的显示数据以解析,以便USB功能驱动模块302将解析的显示数据封装成URB数据包,并将所述数据发送给所述USB设备以在所述USB设备中解码。
同理,由于USB设备30的数据具有固定格式,因此当客户端40向其传输数据之前,显示驱动接口3021将客户端内自身的显示数据解析并且USB功能驱动模块302通过USB驱动协议将解析的显示数据封装成URB数据包并发送给USB设备,以在所述USB设备中解码。
可选地,在本发明的一个具体实施例中,如图5所示,桌面协议客户端模块301具体包括:
通信模块3011,用于与服务端的通信模块进行通信以传递显示数据;
桌面协议显示接口3012,用于从通信模块中获取所述显示数据,并将所述显示数据传递给所述USB功能驱动模块。
其中,由于驱动层和应用层不能直接传输数据,因此设置了桌面协议显示接口,作为驱动层与应用层之间数据传输的接口。
实施例二
本发明实施例二提供了一种USB设备40,如图6所示,USB设备40包括:
USB接口401,用于接收所述客户端发送的显示数据;
显示接口402,用于接收USB接口401传递的显示数据,并将该显示数据传递给客户端30的显示器以在所述显示器上显示桌面。
其中,上述显示数据可以为客户端本身的显示数据,和/或,进行桌面协议的服务端的显示数据,所述进行桌面协议的服务端的显示数据以编码形式存在。
本发明实施例二的USB设备40,包括USB接口401和显示接口402。USB接口401用于接收所述客户端发送的以编码形式存在的显示数据,
显示接口402用于接收USB接口401传递的显示数据,并将该显示数据传递给客户端30的显示器以在所述显示器上显示桌面。由此可看出,通过USB设备处理显示数据,使客户端不需要再对显示数据进行处理,有效降低客户端CPU的资源占用率以及提高解码速度。另外,这种USB设备解码比内置芯片硬件解码具有更高的通用性和可移植性。
进一步地,在本发明的一个具体实施例中,当显示数据包括进行桌面协议的服务端的显示数据时,如图7所示,USB设备还包括:
解码模块403,用于解码USB接口401传递的显示数据;
这种情况下,显示接口402具体用于,接收解码模块403解码完成后的显示数据,并将所述显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
从上可看出,本发明实施例可以在USB设备的解码模块403解码显示数据,而不需要在客户端内进行解码,从而能够降低客户端CPU的资源占用率。在客户端的显示器上显示桌面时,不会因为解码显示数据而影响其显示效果,如流畅度、实时性等,从而带来较高的用户体验。
进一步地,在本发明的一个具体实施例中,当客户端30将显示数据解析并封装成URB数据包,并将该数据发送给USB设备40的USB接口401时,
USB接口401具体用于,接收所述客户端发送的URB数据包,并从所述URB数据包解析出以编码形式存在的显示数据;
其中,如实施例一所述,USB设备30的数据具有固定格式,因此当客户端40向其传输数据之前,显示驱动接口3021将客户端内自身的显示数据解析并封装成URB数据包。对应地,USB接口401接收客户端40发送的URB数据包,并从所述URB数据包解析出以编码形式存在的显示数据。
这种情况下,解码模块403具体用于,根据显示数据的头确定所要使用的解码方式,并根据解码算法进行解码,将解码后的数据传递给显示接口402。
其中,显示数据的头即为前文所述中服务端进行编码时设置的标识。
具体地,解码模块403根据显示数据的标识确定解码方式,并选择设置在USB设备内相应的解码算法,然后根据的解码算法进行解码,最后将解码后的数据传递给显示接口。
实施例三
本发明实施例三提供了一种显示处理方法,应用于客户端,如图8所示,包括:
S11、客户端与服务端通信以获取所述服务端中的以编码形式存在的显示数据。
S12、客户端将服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码。
可选地,步骤S12可具体为:将从服务端中的以编码形式存在的显示数据解析并封装成URB数据包,并将该数据包发送给USB设备以在所述USB设备中解码。
本发明实施例三的显示处理方法,该方法包括客户端与服务端通信以获取所述服务端中的以编码形式存在的显示数据;并将从客户端自身获取的显示数据发送给USB设备以进行解码。由此,这种外置硬件USB设备解码的方式,使客户端30不需要再进行软件解码,能够有效降低客户端CPU的资源占用率以及提高解码速率。这样,在客户端的显示器上显示桌面时,不会影响其显示效果,如流畅度、实时性等,从而带来较高的用户体验。另外,这种USB设备解码比内置芯片硬件解码具有更高的通用性和可移植性。
可选地,在本发明的一个具体实施例中,在步骤S12之前,该方法还包括以下步骤:
获取客户端内自身的显示数据;
则步骤S12可具体为:将从服务端中获取的和从客户端自身获取的显示数据发送给USB设备。
进一步地,在本发明的一个具体实施例中,上述步骤将从客户端自身获取的显示数据发送给USB设备具体为:
将所述从客户端自身获取的显示数据解析并封装成URB数据包,并将数据包发送给所述USB设备以在所述USB设备中解码。
需要说明的是,本发明实施例三提供的显示处理方法请参见前文方法实施例一的各结构单元的具体功能。
实施例四
本发明实施例四提供了一种显示处理方法,应用于USB设备,如图9所示,包括:
S21、USB设备接收客户端发送的显示数据。
其中,显示数据包括:所述客户端本身的显示数据,和/或,进行桌面协议的服务端的显示数据;其中,所述进行桌面协议的服务端的显示数据以编码形式存在。
S22、USB设备将显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
本发明实施例四的显示处理方法,该方法包括:USB设备接收客户端发送的显示数据,并将显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。通过USB设备处理显示数据,使客户端不需要再对显示数据进行处理,有效降低客户端CPU的资源占用率且有效提高解码速度。另外,这种USB设备解码比内置芯片硬件解码具有更高的通用性和可移植性。
可选地,在本发明的一个具体实施例中,当显示数据包括进行桌面协议的服务端的显示数据时,在步骤S21接收所述客户端发送的显示数据后,还包括步骤:解码所述显示数据;
则步骤S21将显示数据传递给所述客户端的显示器具体为,将解码后的显示数据传递给所述客户端的显示器。
进一步地,当客户端将所述显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备的USB接口时,
步骤S21接收所述客户端发送的显示数据具体包括以下步骤:
接收所述客户端发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;
则步骤S22解码所述显示数据具体为,
根据所述显示数据的头确定所要使用的解码方式;
根据解码算法进行解码,并将所述解码后的数据传递给所述显示接口。
需要说明的是,本发明实施例四提供的显示处理方法请参见前文方法实施例二的各结构单元的具体功能。
实施例五
本发明实施例五提供了一种显示处理系统8。如图10所示,系统8包括:
客户端5用于:
与服务端通信以获取服务端中的以编码形式存在的显示数据;
将所述服务端中的以编码形式存在的显示数据发送给USB设备6以在USB设备6中解码;
USB设备6用于:
接收客户端5发送的显示数据,并处理所述显示数据;
将处理的显示数据传递给客户端5的显示器以在显示器上显示桌面。
本发明实施例五的显示处理系统,该系统8包括客户端5和USB设备6,其中,客户端5用于:与服务端通信以获取服务端中的以编码形式存在的显示数据;将所述服务端中的以编码形式存在的显示数据发送给USB设备6以在USB设备6中解码。USB设备6用于:接收客户端5发送的显示数据,并处理所述显示数据;将处理的显示数据传递给客户端5的显示器以在显示器上显示桌面。通过USB设备处理显示数据,使客户端不需要再对显示数据进行处理,有效降低客户端CPU的资源占用率且有效提高解码速度。另外,这种USB设备解码比内置芯片硬件解码具有更高的通用性和可移植性。
可选地,在本发明的一个具体实施例中,USB设备6具体用于:
判断显示数据是否以编码形式存在;当显示数据以编码形式存在,解码所述显示数据。
其中,由于显示数据包括来自客户端自身的显示数据和来自桌面协议服务端的显示数据。而且通常情况下,只有来自桌面协议服务端的显示数据以编码形式存在。因此,当USB设备从客户端接收显示数据时,USB设备还需要判断显示数据是否以编码形式存在,也即,判断显示数据是否包括来自桌面协议服务端的显示数据。
进一步地,在本发明的一个具体实施例中,客户端5具体用于:将从服务端中的以编码形式存在的显示数据解析并封装成URB数据包,并将所述数据包发送给USB设备6以在USB设备6中解码;
USB设备6具体用于:接收客户端5发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;根据显示数据的头确定所要使用的解码方式,并根据解码算法进行解码。
具体而言,服务端在发送给客户端显示数据前,服务端一般标识该显示数据的解码方式。举例而言,显示数据的标识为“1”和“2”,标识“1”和“2”分别对应两种硬件解码方式。若客户端判断所接收到的显示数据的标识为“1”或“2”,则将该显示数据传递给USB设备,然后USB设备根据标识确定对应的解码方式,以对该编码的显示数据解码。此外,显示数据的标识还可设置为“3”,当客户端判断所接收到的显示数据的标识为“3”,则客户端可直接解码。
而且,客户端不仅会把从服务端获取的显示数据发给USB设备,还会把客户端内自身的显示数据也一起发送给USB设备。通常客户端内自身的显示数据的初始状态是非编码的,例如,显示数据的标识为“0”,则表示该显示数据不需要解码。
需要说明的是,本发明实施例五提供的显示处理系统请参见前文方法实施例一和二的各结构单元的具体功能。
为了本领域技术人员更好的理解本发明实施例提供的显示处理的方法的技术方案,下面通过具体地实施例五、六、七对本发明提供的显示处理的方法进行详细说明。其中,如图11所示,提供了一种示例性系统框架图。
客户端5可包括应用程序显示接口51、USB功能驱动52、USB总线驱动53、桌面协议客户端54、以及显示器55。其中,USB功能驱动52又可包括显示驱动接口521和桌面协议显示驱动接口522。
其中,需指出的是,应用程序显示接口51和桌面协议客户端54属于应用层;USB功能驱动52属于驱动层。
USB设备6可包括USB接口61、解码模块62、显示接口63。
服务端7可包括桌面协议服务端71,桌面协议服务端71又可包括通信模块711、显示模块712、显示驱动713。
实施例六
实施例六为在没有远程连接的情况下,在客户端的显示器上仅显示客户端本身具有的显示数据,也即,客户端通常显示图像的应用场景,如图12所示,该场景包括以下步骤:
511、客户端的应用程序显示接口51通过应用程序调用显示函数来获取显示数据。
512、客户端通过DeviceIoControl(设备输入输出控制)函数来完成应用层与驱动层的通信,通过此通信方式将显示数据传递到USB功能驱动52的显示驱动接口521中。
513、显示驱动接口521将显示数据解析,而且USB功能驱动模块52通过USB驱动协议将解析的显示数据封装成URB数据包,并将URB数据包传递给USB设备6中的USB接口61。
514、USB接口61在获得URB数据包后解析出显示数据,并将解析出的显示数据传递至显示接口63。
515、显示接口63将数据传送给显示器55,显示桌面。
实施例七
实施例七为在远程连接的情况下,在客户端的显示器上显示正在进行桌面协议的服务端的显示数据,也即,一种远程界面的显示应用场景,如图13所示,该场景包括以下步骤:
611、桌面协议客户端54创建显示表面,创建成功后客户端5开始接收来自桌面协议服务端71传送过来的显示数据。
其中,当桌面协议客户端54创建显示表面成功,则在客户端显示器55上以类似于windows窗口大小的小窗口显示远程桌面。
612、桌面协议服务端71通过与显示驱动713交互获得显示数据,通过通信模块711传送给桌面协议客户端54。
613、显示数据从客户端5传输给USB功能驱动52。
614、USB功能驱动52的桌面协议显示驱动接口522将显示数据解析,而且USB功能驱动52通过USB驱动协议将解析的显示数据封装成URB数据包,并将该数据包传递给USB设备6的USB接口61。
615、USB接口61在获得URB数据包后解析出显示数据。
616、解码模块62通过显示数据的头来判断应该使用何种解码方式进行解码,使用USB设备6内置的解码算法进行解码,获得解码后数据传递至显示接口63。
617、显示接口63将数据传送给显示器55,显示桌面。
实施例八
实施例八为在远程连接的情况下,在客户端的显示器上显示正在进行桌面协议的服务端的显示数据,也即,另一种远程界面的显示应用场景,如图14所示,该场景包括以下步骤:
711、桌面协议服务端71通过与显示驱动713交互获得显示数据,通过通信模块711传送给桌面协议客户端54。
其中,经过步骤711,在客户端显示器55上将以全屏显示的方式显示远程桌面。
712、显示数据从客户端5传输给USB功能驱动52。
713、USB功能驱动52的桌面协议显示驱动接口522将显示数据解析,而且USB功能驱动52通过USB驱动协议将解析的显示数据封装成URB数据包,并将该数据包传递给USB设备6的USB接口61。
714、USB接口61在获得URB数据包后解析出显示数据。
715、解码模块62通过显示数据的头来判断应该使用何种解码方式进行解码,使用USB设备6内置的解码算法进行解码,获得解码后数据传递至显示接口63。
716、显示接口63将数据传送给显示器55,显示桌面。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例而言,由于其基本相似于方法实施例,所以描述得比较简单,相关之处参见方法实施例的部分说明即可。
需说明的是,以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。另外,本发明提供的装置实施例附图中,模块之间的连接关系表示它们之间具有通信连接,具体可以实现为一条或多条通信总线或信号线。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,所属领域的技术人员可以清楚地了解到本发明可借助软件加必需的通用硬件的方式来实现,当然也可以通过专用硬件包括专用集成电路、专用CPU、专用存储器、专用元器件等来实现。一般情况下,凡由计算机程序完成的功能都可以很容易地用相应的硬件来实现,而且,用来实现同一功能的具体硬件结构也可以是多种多样的,例如模拟电路、数字电路或专用电路等。但是,对本发明而言更多情况下软件程序实现是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在可读取的存储介质中,如计算机的软盘,U盘、移动硬盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、磁碟或者光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务端,或者网络设备等)执行本发明各个实施例所述的方法。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
Claims (20)
1.一种显示处理系统,其特征在于,所述系统包括客户端和通用串行总线USB设备,其中,
所述客户端用于:
与服务端通信以获取所述服务端中的以编码形式存在的显示数据;
将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码;
所述USB设备用于:
接收所述客户端发送的显示数据,并处理所述显示数据;
将所述处理的显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
2.根据权利要求1所述的系统,其特征在于,所述USB设备具体用于:
判断所述显示数据是否以编码形式存在;
当所述显示数据以编码形式存在,解码所述显示数据。
3.根据权利要求2所述的系统,其特征在于,
所述客户端具体用于:
将所述从服务端中的以编码形式存在的显示数据解析并封装成USB请求块URB数据包,并将所述数据包发送给所述USB设备以在所述USB设备中解码;
所述USB设备具体用于:
接收所述客户端发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;
根据所述显示数据的头确定所要使用的解码方式;
根据解码算法进行解码。
4.一种客户端,其特征在于,包括:
桌面协议客户端模块,用于与服务端通信以获取所述服务端中的以编码形式存在的显示数据;
USB功能驱动模块,用于从所述桌面协议客户端模块中获取显示数据,并将所述显示数据发送给USB设备以在所述USB设备中解码。
5.根据权利要求4所述的客户端,其特征在于,所述客户端还包括:
应用层显示接口,用于获取所述客户端内自身的显示数据;
所述USB功能驱动模块具体用于,从所述桌面协议客户端模块和所述应用层显示接口中获取显示数据,并将所述显示数据发送给USB设备。
6.根据权利要求4所述的客户端,其特征在于,所述USB功能驱动模块还包括:
桌面协议显示驱动接口,用于将所述服务端中的以编码形式存在的显示数据解析,以便USB功能驱动模块将所述解析的显示数据封装成URB数据包,并将所述数据包发送给所述USB设备以在所述USB设备中解码。
7.根据权利要求5所述的客户端,其特征在于,所述USB功能驱动模块还包括:
显示驱动接口,用于从所述应用层显示接口中获取所述客户端内自身的显示数据以解析,以便USB功能驱动模块将所述解析的显示数据封装成URB数据包,并将所述数据包发送给所述USB设备。
8.根据权利要求4所述的客户端,其特征在于,所述桌面协议客户端模块包括:
通信模块,用于与服务端进行通信以传递所述服务端中的以编码形式存在的显示数据;
桌面协议显示接口,用于从所述通信模块中获取所述显示数据,并将所述显示数据传递给所述USB功能驱动模块。
9.一种USB设备,其特征在于,所述设备包括:
USB接口,用于接收所述客户端发送的显示数据;
显示接口,用于接收所述USB接口传递的显示数据,并将所述显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
10.根据权利要求9所述的USB设备,其特征在于,所述显示数据包括:所述客户端本身的显示数据,和/或,进行桌面协议的服务端的显示数据;其中,所述进行桌面协议的服务端的显示数据以编码形式存在。
11.根据权利要求10所述的USB设备,当所述显示数据包括进行桌面协议的服务端的显示数据时,所述设备还包括:
解码模块,用于解码所述USB接口传递的显示数据;
所述显示接口具体用于,接收所述解码模块解码完成后的显示数据,并将所述显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
12.根据权利要求11所述的USB设备,
当所述客户端将所述显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备的USB接口时,
所述USB接口具体用于,接收所述客户端发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;
所述解码模块具体用于,根据所述显示数据的头确定所要使用的解码方式,并根据解码算法进行解码,并将所述解码后的数据传递给所述显示接口。
13.一种显示处理方法,应用于客户端,其特征在于,包括:
与服务端通信以获取所述服务端中的以编码形式存在的显示数据;
将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码。
14.根据权利要求13所述的方法,其特征在于,在所述将所述服务端中的以编码形式存在的显示数据发送给USB设备之前,所述方法还包括:
获取所述客户端内自身的显示数据;
则所述将所述服务端中的以编码形式存在的的显示数据发送给USB设备以在所述USB设备中解码具体为:
将所述从所述服务端中获取的和从客户端自身获取的显示数据发送给USB设备以在所述USB设备中解码。
15.根据权利要求14所述的客户端,其特征在于,所述将所述从客户端自身获取的显示数据发送给USB设备具体为:
将所述从客户端自身获取的显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备。
16.根据权利要求13或14所述的方法,其特征在于,所述将所述服务端中的以编码形式存在的显示数据发送给USB设备以在所述USB设备中解码具体为:
将所述从服务端中的以编码形式存在的显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备以在所述USB设备中解码。
17.一种显示处理方法,应用于USB设备,其特征在于,包括:
接收所述客户端发送的显示数据;
将所述显示数据传递给所述客户端的显示器以在所述显示器上显示桌面。
18.根据权利要求17所述的方法,其特征在于,
所述显示数据包括:所述客户端本身的显示数据,和/或,进行桌面协议的服务端的显示数据;
其中,所述进行桌面协议的服务端的显示数据以编码形式存在。
19.根据权利要求18所述的方法,其特征在于,
当所述显示数据包括进行桌面协议的服务端的显示数据时,
在所述接收所述客户端发送的显示数据后,还包括:
解码所述显示数据;
所述将所述显示数据传递给所述客户端的显示器具体为,将所述解码后的显示数据传递给所述客户端的显示器。
20.根据权利要求19所述的方法,其特征在于,
当所述客户端将所述显示数据解析并封装成URB数据包,并将所述数据包发送给所述USB设备的USB接口时,
所述接收所述客户端发送的显示数据具体包括:
接收所述客户端发送的URB数据包,并从所述数据包解析出以编码形式存在的显示数据;
所述解码所述显示数据具体为,
根据所述显示数据的头确定所要使用的解码方式;
根据解码算法进行解码,并将所述解码后的数据传递给所述显示接口。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410766980.6A CN105740081A (zh) | 2014-12-12 | 2014-12-12 | 客户端、usb设备及显示处理系统和方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201410766980.6A CN105740081A (zh) | 2014-12-12 | 2014-12-12 | 客户端、usb设备及显示处理系统和方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105740081A true CN105740081A (zh) | 2016-07-06 |
Family
ID=56240804
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201410766980.6A Pending CN105740081A (zh) | 2014-12-12 | 2014-12-12 | 客户端、usb设备及显示处理系统和方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105740081A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109640179A (zh) * | 2018-11-27 | 2019-04-16 | Oppo广东移动通信有限公司 | 视频解码控制方法、装置以及电子设备 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101533375A (zh) * | 2008-03-10 | 2009-09-16 | 联想(北京)有限公司 | 虚拟机系统中的usb设备访问方法、装置及控制系统 |
CN201491188U (zh) * | 2009-08-13 | 2010-05-26 | 深圳市九洲电器有限公司 | 一种机顶盒及其多视频格式解码设备 |
US20100131669A1 (en) * | 2008-11-26 | 2010-05-27 | Microsoft Corporation | Hardware acceleration for remote desktop protocol |
CN101937362A (zh) * | 2010-09-29 | 2011-01-05 | 长沙行成信息科技有限公司 | 一种支持多嵌入式设备计算迁移的系统和方法 |
CN102668495A (zh) * | 2009-09-29 | 2012-09-12 | 网能和光公司 | 低延时传输协议的方法和系统 |
CN103139202A (zh) * | 2013-01-24 | 2013-06-05 | 中兴通讯股份有限公司 | 瘦客户机及其通信方法和装置 |
CN103283250A (zh) * | 2012-12-13 | 2013-09-04 | 华为技术有限公司 | 一种视频重定向的方法、装置、系统及计算机可读介质 |
CN103873886A (zh) * | 2012-12-14 | 2014-06-18 | 华为技术有限公司 | 一种处理图像信息的方法、装置及系统 |
CN103945249A (zh) * | 2014-04-29 | 2014-07-23 | 中国联合网络通信集团有限公司 | Iptv处理设备及方法 |
CN104159150A (zh) * | 2014-08-19 | 2014-11-19 | 龙芯中科技术有限公司 | 云终端、云服务器、媒体数据流播放系统及方法 |
-
2014
- 2014-12-12 CN CN201410766980.6A patent/CN105740081A/zh active Pending
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101533375A (zh) * | 2008-03-10 | 2009-09-16 | 联想(北京)有限公司 | 虚拟机系统中的usb设备访问方法、装置及控制系统 |
US20100131669A1 (en) * | 2008-11-26 | 2010-05-27 | Microsoft Corporation | Hardware acceleration for remote desktop protocol |
CN201491188U (zh) * | 2009-08-13 | 2010-05-26 | 深圳市九洲电器有限公司 | 一种机顶盒及其多视频格式解码设备 |
CN102668495A (zh) * | 2009-09-29 | 2012-09-12 | 网能和光公司 | 低延时传输协议的方法和系统 |
CN101937362A (zh) * | 2010-09-29 | 2011-01-05 | 长沙行成信息科技有限公司 | 一种支持多嵌入式设备计算迁移的系统和方法 |
CN103283250A (zh) * | 2012-12-13 | 2013-09-04 | 华为技术有限公司 | 一种视频重定向的方法、装置、系统及计算机可读介质 |
CN103873886A (zh) * | 2012-12-14 | 2014-06-18 | 华为技术有限公司 | 一种处理图像信息的方法、装置及系统 |
CN103139202A (zh) * | 2013-01-24 | 2013-06-05 | 中兴通讯股份有限公司 | 瘦客户机及其通信方法和装置 |
CN103945249A (zh) * | 2014-04-29 | 2014-07-23 | 中国联合网络通信集团有限公司 | Iptv处理设备及方法 |
CN104159150A (zh) * | 2014-08-19 | 2014-11-19 | 龙芯中科技术有限公司 | 云终端、云服务器、媒体数据流播放系统及方法 |
Non-Patent Citations (1)
Title |
---|
郑强: "第3篇:Linux驱动开发实用实战", 《LINUX驱动开发入门与实战》 * |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109640179A (zh) * | 2018-11-27 | 2019-04-16 | Oppo广东移动通信有限公司 | 视频解码控制方法、装置以及电子设备 |
US11456013B2 (en) | 2018-11-27 | 2022-09-27 | Guangdong Oppo Mobile Telecommunications Corp., Ltd. | Video decoding control method, electronic device, and storage medium |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2922867C (en) | Desktop-cloud-based media control method and device | |
EP2912546B1 (en) | Performance enhancement in virtual desktop infrastructure (vdi) | |
US11258631B2 (en) | Streaming on diverse transports | |
CN102801941B (zh) | 一种嵌入式无线投影接入设备 | |
WO2015144084A1 (en) | Video synchronous playback method, apparatus, and system | |
WO2015176648A1 (zh) | 将智能终端上的数据传输至电视终端的方法、装置 | |
WO2018058575A1 (zh) | 一种飞行图像数据的处理方法、系统及地面端设备 | |
CN108427545B (zh) | 截屏数据的处理方法、装置、系统、存储介质及处理器 | |
WO2018040427A1 (zh) | 屏幕界面共享方法和系统 | |
CN105635613B (zh) | 一种移动设备的录屏方法和装置 | |
TWI610553B (zh) | 影像資料傳送裝置 | |
CN101593506B (zh) | 显示装置以及通讯系统及其数据传输方法 | |
CN103606367A (zh) | 一种信号级联传输方法及信号级联装置 | |
CN103503381B (zh) | 设备重定向的数据传输的方法、装置及系统 | |
CN102915290A (zh) | 实现移动终端与人机接口设备连接的方法、适配器及系统 | |
CN105740081A (zh) | 客户端、usb设备及显示处理系统和方法 | |
CN104954748A (zh) | 一种视频处理架构 | |
US20230188270A1 (en) | Data Transmission Method, Transmit Device, and Receive Device | |
CN109104581B (zh) | 一种无线传屏的方法、系统及接收终端 | |
KR20160140012A (ko) | 영상 데이터 전송 및 수신 방법 및 장치 | |
JP7004263B2 (ja) | ビデオデータの表示方法及び装置 | |
US10025550B2 (en) | Fast keyboard for screen mirroring | |
CN113660493A (zh) | 一种实时多路h.265视频实时解压显示的方法 | |
CN104780390A (zh) | 一种视频处理方法及装置 | |
CN114203099B (zh) | Led控制器、控制方法及led显示屏系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160706 |
|
RJ01 | Rejection of invention patent application after publication |