本技术涉及游戏运行,具体而言,涉及一种游戏运行方法和装置、机顶盒及存储介质。
背景技术:
1、机顶盒作为一种能够提供iptv(internet protocol television)和ott(over-the-top)业务的设备,有着较为普遍的应用。在现有技术中,为了提高机顶盒对用户更为丰富的娱乐需求,一般会基于机顶盒为用户提供小游戏(一些较为简单的游戏)服务,但是,经发明人研究发现,基于现有的小游戏部署方案,会存在着游戏部署难度相对较高的问题。
技术实现思路
1、有鉴于此,本技术的目的在于提供一种游戏运行方法和装置、机顶盒及存储介质,以改善现有技术中存在的游戏在机顶盒中的部署难度较高的问题。
2、为实现上述目的,本技术采用如下技术方案:
3、一种游戏运行方法,应用于机顶盒,所述机顶盒部署有目标操作系统和目标游戏应用,所述游戏运行方法包括:
4、将与所述目标操作系统适配的目标数据包安装到所述目标操作系统上,使得所述目标数据包中的目标虚拟机能够运行于所述目标操作系统上,其中,所述目标数据包通过将目标虚拟机编译为目标动态链接库且将所述目标动态链接库打包为与所述目标操作系统适配的数据包以形成;
5、响应于目标用户进行游戏下载操作,从目标设备下载目标游戏文件,并将所述目标游戏文件存放到所述目标虚拟机对应的位置;
6、响应于目标用户进行游戏开启操作,控制所述目标虚拟机运行,使得所述目标虚拟机执行所述目标游戏文件;
7、通过所述目标游戏应用,获取所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据,并对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行。
8、在本技术较佳的选择中,在上述游戏运行方法中,所述通过所述目标游戏应用,获取所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据,并对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行的步骤,包括:
9、创建至少一个目标缓冲管理对象,其中,每一个所述目标缓冲管理对象用于对相应的目标缓冲区进行管理,所述目标缓冲区属于所述目标虚拟机对应的堆内存以外的内存区域,且所述堆内存中的数据对象通过所述目标虚拟机对应的垃圾收集器进行管理;
10、利用所述至少一个目标缓冲管理对象,将所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据传输给所述目标游戏应用,并通过所述目标游戏应用,对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行。
11、在本技术较佳的选择中,在上述游戏运行方法中,所述利用所述至少一个目标缓冲管理对象,将所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据传输给所述目标游戏应用,并通过所述目标游戏应用,对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行的步骤,包括:
12、将所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据传输给所述至少一个目标缓冲管理对象管理的内存区域进行缓存;
13、通过所述目标游戏应用,对所述至少一个目标缓冲管理对象管理的内存区域进行访问,以获取到对应的目标音视频数据;
14、通过所述目标游戏应用,对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行。
15、在本技术较佳的选择中,在上述游戏运行方法中,所述将所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据传输给所述至少一个目标缓冲管理对象管理的内存区域进行缓存的步骤,包括:
16、对所述目标虚拟机执行所述目标游戏文件的过程进行监控,以确定出当前的游戏运行阶段;
17、基于所述当前的游戏运行阶段,对所述至少一个目标缓冲管理对象进行对象管控,以形成至少一个新的目标缓冲管理对象;
18、将所述目标虚拟机当前执行所述目标游戏文件产生的目标音视频数据传输给至少一个新的目标缓冲管理对象管理的内存区域进行缓存。
19、在本技术较佳的选择中,在上述游戏运行方法中,所述基于所述当前的游戏运行阶段,对所述至少一个目标缓冲管理对象进行对象管控,以形成至少一个新的目标缓冲管理对象的步骤,包括:
20、基于所述当前的游戏运行阶段,确定出所述目标虚拟机当前执行所述目标游戏文件产生的目标音视频数据的当前数据量;
21、基于所述当前数据量,对所述至少一个目标缓冲管理对象进行对象管控,以形成至少一个新的目标缓冲管理对象,其中,在所述当前数据量大于所述至少一个目标缓冲管理对象管理的内存区域的数据存储量时,在所述至少一个目标缓冲管理对象的基础上,增加至少一个目标缓冲管理对象,在所述当前数据量等于所述至少一个目标缓冲管理对象管理的内存区域的数据存储量时,维持所述至少一个目标缓冲管理对象,在所述当前数据量小于所述至少一个目标缓冲管理对象管理的内存区域的数据存储量时,在所述至少一个目标缓冲管理对象中,销毁至少一个目标缓冲管理对象。
22、在本技术较佳的选择中,在上述游戏运行方法中,所述通过所述目标游戏应用,获取所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据,并对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行的步骤,包括:
23、通过所述目标游戏应用,获取所述目标虚拟机解析所述目标游戏文件得到的游戏阶段-数据量映射表,其中,所述游戏阶段-数据量映射表中具有所述目标游戏文件对应的目标游戏在各游戏运行阶段具有的数据量;
24、基于所述游戏阶段-数据量映射表,确定出所述目标虚拟机当前执行所述目标游戏文件中的第一游戏子文件和第二游戏子文件产生的目标音视频数据的当前数据量,并基于所述当前数据量创建出对应数量的缓冲管理对象,其中,所述第一游戏子文件包含游戏的代码、资源和相关的库文件,所述第二游戏子文件包含游戏的描述、配置和权限要求的元数据;
25、利用基于所述当前数据量创建出的对应数量的缓冲管理对象,将所述目标虚拟机执行所述目标游戏文件中的第一游戏子文件和第二游戏子文件产生的目标音视频数据传输给所述目标游戏应用,并通过所述目标游戏应用,对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行。
26、在本技术较佳的选择中,在上述游戏运行方法中,所述响应于目标用户进行游戏下载操作,从目标设备下载目标游戏文件,并将所述目标游戏文件存放到所述目标虚拟机对应的位置的步骤,包括:
27、响应于目标用户进行的游戏下载请求操作,将生成的第一游戏下载请求信息发送给目标设备,其中,所述目标设备在接收到所述第一游戏下载请求信息之后,基于所述目标用户的历史游戏数据和/或历史电视数据,分析出所述目标用户的游戏偏好信息,并基于所述游戏偏好信息生成相应的候选游戏文件目录,以及,将所述候选游戏文件目录发送给所述机顶盒;
28、获取所述候选游戏文件目录,并对所述候选游戏文件目录进行显示,使得所述目标用户可以获取到所述候选游戏文件目录;
29、响应于所述目标用户基于所述候选游戏文件目录进行的游戏选择请求操作,将生成的第二游戏下载请求信息发送给所述目标设备,其中,所述目标设备在接收到所述第二游戏下载请求信息之后,将所述目标用户选择的游戏对应的目标游戏文件发送给所述机顶盒;
30、获取所述目标游戏文件,并将所述目标游戏文件存放到所述目标虚拟机对应的位置,使得所述目标虚拟机运行时能够获取到所述目标游戏文件。
31、本技术还提供了一种游戏运行装置,应用于机顶盒,所述机顶盒部署有目标操作系统和目标游戏应用,所述游戏运行装置包括:
32、虚拟机安装模块,用于将与所述目标操作系统适配的目标数据包安装到所述目标操作系统上,使得所述目标数据包中的目标虚拟机能够运行于所述目标操作系统上,其中,所述目标数据包通过将目标虚拟机编译为目标动态链接库且将所述目标动态链接库打包为与所述目标操作系统适配的数据包以形成;
33、游戏下载模块,用于响应于目标用户进行游戏下载操作,从目标设备下载目标游戏文件,并将所述目标游戏文件存放到所述目标虚拟机对应的位置;
34、游戏执行模块,用于响应于目标用户进行游戏开启操作,控制所述目标虚拟机运行,使得所述目标虚拟机执行所述目标游戏文件;
35、音视频播放模块,用于通过所述目标游戏应用,获取所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据,并对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行。
36、在上述基础上,本技术还提供了一种机顶盒,包括:
37、存储器,用于存储计算机程序;
38、与所述存储器连接的处理器,用于执行该存储器存储的计算机程序,以实现上述的游戏运行方法。
39、在上述基础上,本技术还提供了一种计算机可读存储介质,该计算机可读存储介质中存储有计算机程序,该计算机程序运行时执行上述的游戏运行方法的各个步骤。
40、本技术提供的游戏运行方法和装置、机顶盒及存储介质,将与目标操作系统适配的目标数据包安装到目标操作系统上,使得目标数据包中的目标虚拟机能够运行于目标操作系统上;其次,响应于目标用户进行游戏下载操作,从目标设备下载目标游戏文件,并将目标游戏文件存放到目标虚拟机对应的位置;然后,响应于目标用户进行游戏开启操作,控制目标虚拟机运行,使得目标虚拟机执行目标游戏文件;最后,通过目标游戏应用,获取目标虚拟机执行目标游戏文件产生的目标音视频数据,并对目标音视频数据进行播放处理。基于上述内容,由于可以将目标虚拟机编译为目标动态链接库且将目标动态链接库打包为与目标操作系统适配的目标数据包,使得目标虚拟机可以可靠地在目标操作系统上运行,并且,由于采用的是目标动态链接库,使得可以与目标游戏应用解耦合,从而降低了游戏在机顶盒中部署的难度,因此,可以改善现有技术中存在的游戏在机顶盒中的部署难度较高的问题;另外,由于采用的是目标动态链接库,不管是对目标虚拟机的修改、扩展,还是对目标游戏文件的修改、扩展,都能单独进行,而不需要对目标游戏应用进行一并修改、扩展,也可以进一步提高游戏部署的便利性,降低开发和维护成本。
1.一种游戏运行方法,其特征在于,应用于机顶盒,所述机顶盒部署有目标操作系统和目标游戏应用,所述游戏运行方法包括:
2.根据权利要求1所述的游戏运行方法,其特征在于,所述通过所述目标游戏应用,获取所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据,并对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行的步骤,包括:
3.根据权利要求2所述的游戏运行方法,其特征在于,所述利用所述至少一个目标缓冲管理对象,将所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据传输给所述目标游戏应用,并通过所述目标游戏应用,对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行的步骤,包括:
4.根据权利要求3所述的游戏运行方法,其特征在于,所述将所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据传输给所述至少一个目标缓冲管理对象管理的内存区域进行缓存的步骤,包括:
5.根据权利要求4所述的游戏运行方法,其特征在于,所述基于所述当前的游戏运行阶段,对所述至少一个目标缓冲管理对象进行对象管控,以形成至少一个新的目标缓冲管理对象的步骤,包括:
6.根据权利要求1所述的游戏运行方法,其特征在于,所述通过所述目标游戏应用,获取所述目标虚拟机执行所述目标游戏文件产生的目标音视频数据,并对所述目标音视频数据进行播放处理,以实现所述目标游戏文件对应的目标游戏的运行的步骤,包括:
7.根据权利要求1-6任意一项所述的游戏运行方法,其特征在于,所述响应于目标用户进行游戏下载操作,从目标设备下载目标游戏文件,并将所述目标游戏文件存放到所述目标虚拟机对应的位置的步骤,包括:
8.一种游戏运行装置,其特征在于,应用于机顶盒,所述机顶盒部署有目标操作系统和目标游戏应用,所述游戏运行装置包括:
9.一种机顶盒,其特征在于,包括:
10.一种计算机可读存储介质,其特征在于,该计算机可读存储介质中存储有计算机程序,该计算机程序运行时执行权利要求1-7任意一项所述的游戏运行方法。