基于云计算的输入输出控制方法及装置
技术领域
本发明涉及通信领域,具体而言,涉及一种基于云计算的输入输出控制方法及装置。
背景技术
云计算(cloud computing)是一种基于互联网的计算方式,通过这种方式,共享的软硬件资源和信息可以按需提供给计算机和其他设备。云计算的整个运行方式类似于电网。云计算的核心思想,是将大量用网络连接的计算资源统一管理和调度,构成一个计算资源池向用户按需服务,其中,提供资源的网络被称为“云”。
云游戏是以云计算为基础的游戏方式,在云游戏的运行模式下,所有游戏都在服务器端运行,用户将控制输入传输到服务器,服务器负责运算并渲染游戏画面,最后将音视频压缩后通过网络传送给用户。在客户端,用户的游戏设备不需要任何高端处理器和显卡,只需要基本的视频解压能力就可以玩游戏了。云计算应用中,基于云端计算服务器的可持续稳定的提供服务,并且可以保障数据的集中统一管理,客户端则可以随意的接入,摆脱了运行设备、运行***、接入的数量、接入时间等限制。
针对用户的云计算需求,为了便于用户在不同的设备或***得到相同的云计算体验,云计算服务在云端会虚拟一台适合应用场景的云计算虚拟机,该虚拟机拥有类似主机的输入输出。
在众多需要建立云计算虚拟机的云计算服务,其原理为在云端服务器虚拟一台计算机,等同于提供一台定制的计算机给用户使用,将用户的控制器命令传输给该计算机,该计算机运算出结果后,再将输出信息(例如,音视频信息等)传输给用户。现有技术中,通常一个用户对应一套完整的输入输出,用户接入后就无法更变,导致若想切换输入方式时,需要使用新的配置重新建立用户连接,甚至需要重新建立虚拟机。
发明内容
本发明的主要目的在于公开了一种基于云计算的输入输出控制方法及装置,以至少解决相关技术中一个用户对应一套完整的输入输出,用户接入后就无法更变,导致若想切换输入方式时,需要使用新的配置重新建立用户连接,甚至需要重新建立虚拟机的问题。
根据本发明的一个方面,提供了一种基于云计算的输入输出控制方法。
根据本发明的基于云计算的输入输出控制方法包括:将云计算服务器的输入资源划分为一个或多个输入资源模块,并将云计算服务器的输出资源划分为一个或多个输出资源模块;对每个接入所述云计算服务器的客户端,分别分配、停止、调换、或者使客户端共享所述输入资源模块中至少一个输入资源模块和/或所述输出资源模块中至少一个输出资源模块;对于各个所述客户端对应的至少一个输入资源模块分别进行整合,并将整合后的输入资源提供给所述云计算服务器;对于每个所述客户端,将所述云计算服务器计算后的输出资源按照该客户端对应的输出资源模块传输至该客户端。
优选地,所述输入资源模块包括:键盘全部或部分按键的输入控制模块、鼠标全部或部分操作键的输入控制模块、手柄全部或部分操作键的输入控制模块、摇杆全部或部分操作键的输入控制模块、触摸屏全部或部分操作区的输入控制模块、图像采集输入控制模块、音频采集输入控制模块。
优选地,所述输出控制模块包括:图像输出控制模块、音频输出控制模块。
优选地,对每个接入所述云计算服务器的客户端,分别分配、停止、调换、或者使客户端共享所述输入资源模块中至少一个输入资源模块和/或所述输出资源模块中至少一个输出资源模块包括:确定具有控制权限的一个或多个客户端,其中,所述控制权限包括:分配、停止、调换、或者使客户端共享所述输入资源模块中至少一个输入资源模块和/或所述输出资源模块中至少一个输出资源模块的权限;对于每个所述一个或多个客户端,按照该客户端对应的控制权限分别分配、停止、调换、或者使客户端共享所述输入资源模块中至少一个输入资源模块和/或所述输出资源模块中至少一个输出资源模块。
根绝本发明的另一方面,提供了一种基于云计算的输入输出控制装置。
根据本发明的基于云计算的输入输出控制装置包括:划分单元,用于将云计算服务器的输入资源划分为一个或多个输入资源模块,并将云计算服务器的输出资源划分为一个或多个输出资源模块;控制单元,用于对每个接入所述云计算服务器的客户端,分别分配、停止、调换、或者使客户端共享所述输入资源模块中至少一个输入资源模块和/或所述输出资源模块中至少一个输出资源模块;整合单元,用于对各个所述客户端对应的至少一个输入资源模块分别进行整合,并将整合后的输入资源提供给所述云计算服务器;传输单元,用于对每个所述客户端,将所述云计算服务器计算后的输出资源按照该客户端对应的输出资源模块传输至该客户端。
优选地,所述输入资源模块包括:键盘全部或部分按键的输入控制模块、鼠标全部或部分操作键的输入控制模块、手柄全部或部分操作键的输入控制模块、摇杆全部或部分操作键的输入控制模块、触摸屏全部或部分操作区的输入控制模块、图像采集输入控制模块、音频采集输入控制模块。
优选地,所述输出控制模块包括:图像输出控制模块、音频输出控制模块。
优选地,所述控制单元包括:确定子单元,用于确定具有控制权限的一个或多个客户端,其中,所述控制权限包括:分配、停止、调换、或者使客户端共享所述输入资源模块中至少一个输入资源模块和/或所述输出资源模块中至少一个输出资源模块的权限;控制子单元,设置于所述一个或多个客户端中,用于对于每个所述一个或多个客户端,按照该客户端对应的控制权限分别分配、停止、调换、或者使客户端共享所述输入资源模块中至少一个输入资源模块和/或所述输出资源模块中至少一个输出资源模块。
与现有技术相比,本发明实施例至少具有以下优点:新的云计算场景中,将云计算服务器的输入资源和输出资源划分为一个或多个最小模块,并对上述模块进行分配、停止、调换或者共享的控制,灵活的从各个客户端获取输入资源,整合成统一的输入资源提供给服务器运算,并将运算结果输出资源按各个客户端对应的输出资源模块传输给不同的接入用户,从而达到了无需重新建立云计算场景的目的,同时在不需要重新配置用户的输入输出需求的情况下,灵活地进行用户接入管理和用户输入输出需求切换。
附图说明
图1是根据本发明实施例的基于云计算的输入输出控制方法的流程图;
图2是根据本发明实施例一的用户客户端A具有手柄控制权限的示意图;
图3是根据本发明实施例一的用户客户端B具有手柄控制权限的示意图;
图4是根据本发明实施例三的用户客户端分别具有摇杆部分操作键的控制权限的示意图;
图5是根据本发明实施例三的用户客户端A、B调换摇杆部分操作键的控制权限的示意图;
图6是根据本发明实施例的基于云计算的输入输出控制装置的结构框图;
图7是根据本发明优选实施例的基于云计算的输入输出控制装置的结构框图。
具体实施方式
下面结合说明书附图对本发明的具体实现方式做一详细描述。
图1是根据本发明实施例的基于云计算的输入输出控制方法的流程图。如图1所示,该基于云计算的输入输出控制方法包括:
步骤S101:将云计算服务器的输入资源划分为一个或多个输入资源模块,并将云计算服务器的输出资源划分为一个或多个输出资源模块;
步骤S103:对每个接入云计算服务器的客户端,分别分配、停止、调换、或者使客户端共享上述输入资源模块中至少一个输入资源模块和/或上述输出资源模块中至少一个输出资源模块;
步骤S105:对于各个客户端对应的至少一个输入资源模块分别进行整合,并将整合后的输入资源提供给上述云计算服务器;
步骤S107:对于每个客户端,将云计算服务器计算后的输出资源按照该客户端对应的输出资源模块传输至该客户端。
相关技术中,云计算场景在场景需求用户申请时,按需求的输入输出要求建立,当用户输入输出需求发生变更时,需要关闭云计算场景并重新建立新的云计算场景,或者用户先断开连接,更换新的输入输出配置后再重新连接。采用图1所示的基于云计算的输入输出控制方法,新的云计算场景中,将云计算服务器的输入资源和输出资源划分为一个或多个最小模块,并对上述模块进行分配、停止、调换或者共享的控制,灵活的从各个客户端获取输入资源,整合成统一的输入资源提供给服务器运算,并将运算结果输出资源按各个客户端对应的输出资源模块传输给不同的接入用户,从而达到了无需重新建立云计算场景的目的,同时在不需要重新配置用户的输入输出需求的情况下,灵活地进行用户接入管理和用户输入输出需求切换。
优选地,上述输入资源模块包括但不限于:键盘全部或部分按键的输入控制模块、鼠标全部或部分操作键的输入控制模块、手柄全部或部分操作键的输入控制模块、摇杆全部或部分操作键的输入控制模块、触摸屏全部或部分操作区的输入控制模块、图像采集输入控制模块、音频采集输入控制模块。
优选地,上述输出控制模块包括但不限于:图像输出控制模块、音频输出控制模块。
优选地,对每个接入上述云计算服务器的客户端,分别分配、停止、调换、或者使客户端共享上述输入资源模块中至少一个输入资源模块和/或上述输出资源模块中至少一个输出资源模块包括:确定具有控制权限的一个或多个客户端,其中,上述控制权限包括:分配、停止、调换、或者使客户端共享上述输入资源模块中至少一个输入资源模块和/或上述输出资源模块中至少一个输出资源模块的权限;对于每个上述一个或多个客户端,按照该客户端对应的控制权限分别分配、停止、调换、或者使客户端共享上述输入资源模块中至少一个输入资源模块和/或上述输出资源模块中至少一个输出资源模块。
由此可见,上述具有控制权限的可以是一个或多个客户端,例如,可以预先确定玩家A的客户端具有调换手柄控制器的权限,玩家A的客户端可以将手柄的全部按键输入控制模块的控制权调换给玩家B对应的客户端,在玩家B对应的客户端,玩家A的客户端再将该手柄的全部按键输入控制模块的控制权调换给该客户端本身。
以下结合实施例进一步描述上述优选实施过程。
实施例一
云游戏的帮我玩应用中,如图2所示,在输出方面,接入的每个用户客户端均接收到来自于云计算服务器的相同输出(例如,游戏画面、音频);在输入方面,可以确定主控方为玩家客户端A拥有调换控制器(例如,手柄,键盘等)的控制权限,并将整个手柄的按键操作的控制权限调换给协助玩家的客户端B,可以参见图3,由客户端B完成操作后,客户端A再调换回整个手柄的按键操作的控制权限,或者客户端A将整个手柄的按键操作的控制权限调换给玩家客户端C来完成。
在整个实施过程中,游戏场景无需重新构建,输出也是统一的,唯一变化的就是1P手柄的控制输入权限,而调换1P手柄的控制输入的权限的设置在客户端A中。
实施例二
云游戏应用中,在输出方面,接入的每个用户客户端均接收到来自于云计算服务器的相同输出(例如,游戏画面、音频);当协助玩家的客户端B只需要看图像,无需接收音频输出就可以协助玩家的客户端A玩游戏时,客户端B可以向***申请获得只接收视频图像输出,不接收音频输出的控制权限;同时,客户端A可以继续接收图像和音频两种输出,客户端B具备只接收视频图像输出,不接收音频输出的控制权限之后,可以关闭声音输出,此时客户端A玩家并不受其影响。
实施例三
开车射击游戏应用中,如图4所示,驾驶战车需要操作摇杆LS来选择车行方向,LT、RT键代表油门键和刹车键;而射击需要操作摇杆RS来控制子弹射击的方向,A、B键则可以切换不同攻击类型的子弹射击;
当用户A通过客户端A进入游戏时,确定所有的输入操作控制权限均分配给客户端A,客户端A的手柄既可以开车又可以射击;
当用户B通过客户端B进入游戏时,与用户A一起来玩游戏时,***确定将摇杆RS以及A、B键的输入操作控制权限分配给客户端B,确定停止客户端A对摇杆RS以及A、B键的输入操作控制权限,客户端A只具有摇杆LS以及LT、RT键的输入操作控制权限来控制开车;并使客户端B具有摇杆RS以及A、B键的输入操作控制权限来控制射击。
如图5所示,当用户A不擅长开车时,可以通过客户端A向***申请调换控制权限,***确定将摇杆RS以及A、B键的输入操作控制权限分配给客户端A,确定停止客户端A对摇杆LS以及LT、RT键的输入操作控制权限,客户端A只具有摇杆RS以及A、B键的输入操作控制权限来控制射击;并使客户端B具有摇杆LS以及LT、RT键的输入操作控制权限来控制开车。
实施例四
视频授课直播应用中,云计算服务器上实时运行大型软件,A老师通过客户端A授课、B老师通过客户端B授课,S1学生通过客户端S1听课、S2学生通过客户端S2听课。云计算服务器的输入资源模块包括但不限于:键盘的输入控制模块、鼠标的输入控制模块、摄像头图像采集输入控制模块、麦克风音频采集输入控制模块,这些输入资源由云计算服务器上运行的软件进行整合和渲染,形成音视频图像输出给客户端S1和S2。
A老师通过客户端A讲授时,客户端A被分配有其鼠标和键盘的输入控制模块的控制权限,并被分配有其摄像头图像采集输入控制模块和麦克风音频采集输入控制模块的控制权限,云计算服务器根据这些输入资源进行整合和渲染将输出发送给客户端S1和S2。
A老师讲授完成之后,***将客户端A的控制权限调换给客户端B,即客户端B被分配有其鼠标和键盘的输入控制模块的控制权限,并被分配有其摄像头图像采集输入控制模块和麦克风音频采集输入控制模块的控制权限;B老师可以通过客户端B继续讲解,而客户端A因为具有其鼠标和键盘的输入控制模块的控制权限,以及具有其摄像头图像采集输入控制模块和麦克风音频采集输入控制模块的控制权限,因此客户端A可以停止其鼠标和键盘的输入控制模块、并停止其摄像头图像采集输入控制模块和麦克风音频采集输入控制模块,断开所有的连接。
B老师通过客户端B讲授完成后,需要学生实践,客户端B停止其鼠标和键盘的输入控制模块、并停止其摄像头图像采集输入控制模块和麦克风音频采集输入控制模块,将客户端B的部分控制权限调换给S1学生的客户端S1,客户端S1被分配有其鼠标和键盘的输入控制模块的控制权限,而客户端B继续具有其摄像头图像采集输入控制模块和麦克风音频采集输入控制模块的控制权限,在S1学生通过客户端S1操作的时候,B老师通过客户端B继续提供视频和音频的讲解。如果S1学生的思路不正确,B老师可以将客户端B的上述部分控制权限调换给S2学生的客户端S2,客户端S2被分配有其鼠标和键盘的输入控制模块的控制权限,S2学生通过其鼠标和键盘的输入控制模块输入完成后,B老师可以将客户端B的上述部分控制权限重新调换给客户端B自身,继续由B老师通过其鼠标和键盘的输入控制模块进行解析。
图6是根据本发明实施例的基于云计算的输入输出控制装置的结构框图。如图6所示,该基于云计算的输入输出控制装置包括:划分单元10,用于将云计算服务器的输入资源划分为一个或多个输入资源模块,并将云计算服务器的输出资源划分为一个或多个输出资源模块;控制单元12,用于对每个接入上述云计算服务器的客户端,分别分配、停止、调换、或者使客户端共享上述输入资源模块中至少一个输入资源模块和/或上述输出资源模块中至少一个输出资源模块;整合单元14,用于对各个上述客户端对应的至少一个输入资源模块分别进行整合,并将整合后的输入资源提供给上述云计算服务器;传输单元16,用于对每个上述客户端,将上述云计算服务器计算后的输出资源按照该客户端对应的输出资源模块传输至该客户端。
采用图6所示的基于云计算的输入输出控制装置,新的云计算场景中,划分单元10将云计算服务器的输入资源和输出资源划分为一个或多个最小模块,控制单元12对上述模块进行分配、停止、调换或者共享的控制,灵活的从各个客户端获取输入资源,整合单元14整合成统一的输入资源提供给服务器运算,传输单元16将运算结果输出资源按各个客户端对应的输出资源模块传输给不同的接入用户,从而达到了无需重新建立云计算场景的目的,同时在不需要重新配置用户的输入输出需求的情况下,灵活地进行用户接入管理和用户输入输出需求切换。
优选地,上述输入资源模块包括但不限于:键盘全部或部分按键的输入控制模块、鼠标全部或部分操作键的输入控制模块、手柄全部或部分操作键的输入控制模块、摇杆全部或部分操作键的输入控制模块、触摸屏全部或部分操作区的输入控制模块、图像采集输入控制模块、音频采集输入控制模块。
优选地,上述输出控制模块包括但不限于:图像输出控制模块、音频输出控制模块。
优选地,如图7所示,上述控制单元12可以进一步包括:确定子单元120,用于确定具有控制权限的一个或多个客户端,其中,上述控制权限包括:分配、停止、调换、或者使客户端共享上述输入资源模块中至少一个输入资源模块和/或上述输出资源模块中至少一个输出资源模块的权限;控制子单元122,设置于上述一个或多个客户端中,用于对于每个上述一个或多个客户端,按照该客户端对应的控制权限分别分配、停止、调换、或者使客户端共享上述输入资源模块中至少一个输入资源模块和/或上述输出资源模块中至少一个输出资源模块。
综上所述,借助本发明提供的上述实施例,新的云计算场景中,将云计算服务器的输入资源和输出资源划分为一个或多个最小模块,并对上述模块进行分配、停止、调换或者共享的控制,灵活的从各个客户端获取输入资源,整合成统一的输入资源提供给服务器运算,并将运算结果输出资源按各个客户端对应的输出资源模块传输给不同的接入用户,从而达到了云计算场景在场景需求用户申请时,按需求的输入输出要求建立,当用户输入输出需求发生变更时,无需关闭云计算场景并重新建立新的云计算场景的目的,同时在不需要重新配置用户的输入输出需求的情况下,灵活地进行用户接入管理和用户输入输出需求切换。
以上公开的仅为本发明的几个具体实施例,但是,本发明并非局限于此,任何本领域的技术人员能思之的变化都应落入本发明的保护范围。