CN115703008A - 游戏数据处理方法及装置、云游戏系统、电子设备 - Google Patents

游戏数据处理方法及装置、云游戏系统、电子设备 Download PDF

Info

Publication number
CN115703008A
CN115703008A CN202110947078.4A CN202110947078A CN115703008A CN 115703008 A CN115703008 A CN 115703008A CN 202110947078 A CN202110947078 A CN 202110947078A CN 115703008 A CN115703008 A CN 115703008A
Authority
CN
China
Prior art keywords
game
data
server
terminal
cloud
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
Application number
CN202110947078.4A
Other languages
English (en)
Inventor
杨勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110947078.4A priority Critical patent/CN115703008A/zh
Publication of CN115703008A publication Critical patent/CN115703008A/zh
Pending legal-status Critical Current

Links

Images

Landscapes

  • Information Transfer Between Computers (AREA)

Abstract

本申请的实施例揭示了一种游戏数据方法及装置、云游戏系统和电子设备。该方法包括:获取来自于游戏终端的游戏操控数据;根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据;将所述游戏画面编码数据和所述游戏音频编码数据发送至多媒体分发服务器,以通过所述多媒体分发服务器将所述游戏画面编码数据和所述游戏音频编码数据转发至所述游戏终端,其中,所述多媒体分发服务器用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理。本申请实施例的技术方案将游戏的多媒体数据通道与游戏操控数据上报通道进行分离,能够提升用户游戏体验。

Description

游戏数据处理方法及装置、云游戏系统、电子设备
技术领域
本申请涉及云游戏技术领域,具体而言,涉及一种游戏数据处理方法及装置、云游戏系统、电子设备。
背景技术
云游戏是一种以云计算技术为基础的在线游戏技术,游戏客户端并不在用户游戏终端运行,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给用户游戏终端。用户游戏终端无需拥有强大的图形运算与数据处理能力,仅拥有基本的流媒体播放能力与获取用户输入指令并发送给云端服务器的能力即可。云游戏作为一种新的游戏服务提供模式,目前已经开始大规模的商用化部署,但如何提升用户游戏体验仍是本领域的技术人员需要不断研究的问题。
发明内容
为解决上述技术问题,本申请的实施例提供了一种游戏数据处理方法及装置、电子设备、计算机可读存储介质,以及提供了一种云游戏系统,以通过将云游戏的多媒体数据通道与游戏操控数据上报通道进行分离,从而提升用户的云游戏体验。
本申请的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本申请的实践而习得。
根据本申请实施例的一个方面,提供了一种游戏数据处理方法,包括:获取来自于游戏终端的游戏操控数据;根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据;将所述游戏画面编码数据和所述游戏音频编码数据发送至多媒体分发服务器,以通过所述多媒体分发服务器将所述游戏画面编码数据和所述游戏音频编码数据转发至所述游戏终端,其中,所述多媒体分发服务器用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理。
根据本申请实施例的一个方面,提供了一种游戏数据处理装置,包括:操控数据获取模块,配置为获取来自于游戏终端的游戏操控数据;游戏数据编码模块,配置为根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据;游戏数据发送模块,配置为将所述游戏画面编码数据和所述游戏音频编码数据发送至多媒体分发服务器,以通过所述多媒体分发服务器将所述游戏画面编码数据和所述游戏音频编码数据转发至所述游戏终端,其中,所述多媒体分发服务器用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理。
根据本申请实施例的一个方面,提供了一种云游戏系统,包括游戏终端和游戏服务器集群,所述游戏服务器集群由多个游戏服务器构成,每个游戏服务器中部署有多个游戏容器实例,所述游戏客户端实例基于容器技术模拟游戏客户端的运行,其中:所述游戏终端向所述游戏服务器集群中相应部署的游戏容器实例发送游戏操控数据;所述游戏服务器集群中相应部署的游戏容器实例根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据,并将所述游戏画面编码数据和所述游戏音频编码数据发送至所述游戏终端。
根据本申请实施例的一个方面,提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如前所述的游戏数据处理方法。
根据本申请实施例的一个方面,提供了一种计算机可读存储介质,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行如上所述的游戏数据处理方法。
根据本申请实施例的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各种可选实施例中提供的游戏数据处理方法。
在本申请的实施例所提供的技术方案中,游戏服务器在接收到来自于游戏终端的游戏操控数据,并根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据之后,通过多媒体分发服务器将游戏画面编码数据和游戏音频编码数据转发给游戏终端,该媒体分发服务端用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理,也即多媒体数据通过统一的多媒体分发服务器来完成,而用户的游戏操控数据通过另外的网络通道上报给游戏服务器,由此将游戏的多媒体数据通道与游戏操控数据上报通道进行分离,能够降低云游戏使用过程中数据传输通道的耦合性,提升了对时延比较敏感的游戏操控数据传输的效率,从而提升用户游戏体验。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本申请。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本申请的实施例,并与说明书一起用于解释本申请的原理。显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术者来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。在附图中:
图1是本申请涉及的一示例性实施环境的示意图;
图2是本申请的一示例性实施例示出的云游戏服务的框架示意图;
图3是本申请的一示例性实施例示出的云游戏系统的架构示意图;
图4是本申请的另一示例性实施例示出的云游戏系统的架构示意图;
图5是本申请的另一示例性实施例示出的云游戏系统的架构示意图;
图6是本申请的一示例性实施例示出的游戏数据处理方法的流程图;
图7是本申请的另一示例性实施例示出的游戏数据处理方法的流程图;
图8是本申请的一示例性实施例示出的云游戏场景下多方设备进行数据交互的流程图;
图9是本申请的一示例性实施例示出的游戏数据处理装置的框图;
图10示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
具体实施方式
这里将详细地对示例性实施例执行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
在本申请中提及的“多个”是指两个或者两个以上。“和/或”描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
首先需要说明的是,云计算(cloud computing)指IT基础设施的交付和使用模式,指通过网络以按需、易扩展的方式获得所需资源;广义云计算指服务的交付和使用模式,指通过网络以按需、易扩展的方式获得所需服务。这种服务可以是IT和软件、互联网相关,也可是其他服务。云计算是网格计算、分布式计算、并行计算、效用计算、网络存储、虚拟化、负载均衡等传统计算机和网络技术发展融合的产物。
随着互联网、实时数据流、连接设备多样化的发展,以及搜索服务、社会网络、移动商务和开放协作等需求的推动,云计算迅速发展起来。不同于以往的并行分布式计算,云计算的产生从理念上将推动整个互联网模式、企业管理模式发生革命性的变革。
云游戏就是一种以云计算技术为基础的在线游戏技术。云游戏技术使图形处理与数据运算能力相对有限的轻端设备能运行高品质游戏。在云游戏场景下,云游戏并不在用户游戏终端中运行,而是在云端服务器中运行,并由云端服务器将游戏场景渲染为视频音频流,通过网络传输给玩家游戏终端。玩家游戏终端无需拥有强大的图形运算与数据处理能力,仅需要拥有基本的流媒体播放能力与获取用户输入指令并发送给云端服务器的能力即可。
请参考图1所示的云游戏架构,云游戏具体可以理解为是远程超强服务器中拥有众多虚拟电脑,游戏玩家可在其中一个虚拟电脑中进行游戏,游戏的画面与声音通过网络传输至终端设备,游戏玩家可通过操控终端设备对游戏进行实时操控,或者通过鼠标、键盘、手柄等输入设备对游戏进行实时操作。远程超强服务器通常也称为云游戏平台,其中集成了各类游戏,对于用户来说,云游戏通过云游戏平台的形式扩充了游戏品类,提升了游戏体验的同时,也减少了高昂的终端硬件开支;对游戏开发商来说,基于云游戏具有的多终端打通的特性,且通过云游戏平台进行游戏的统一运行,使得在不同机型间的适配优化工作量大幅减少,由此可以解放部分人力资源。
可以理解的是,图1中示出了多种终端设备,例如终端设备可以为计算机、智能手机、平板电脑、掌上电脑、笔记本电脑等,在实际场景中可以有更多或更少种类的终端设备参与到云游戏的过程中,具体数量和种类因实际场景而定,此处不做限定。另外,图1所示出的服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(Content Delivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端可以是智能手机、平板电脑、笔记本电脑、台式计算机、智能音箱、智能手表等,但并不局限于此。终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,终端以及服务器可以连接组成区块链网络,本处不对此进行限制。
云游戏作为一种新的游戏服务提供模式,目前已经开始大规模的商用化部署。云游戏的出现,使得普通的个人用户使用普通的个人电脑或者手机,无需配置高端的个人终端设备,就能享用大型的网络游戏。然而,这种服务模式实际上是一种成本的转移,它将原来游戏用户的成本转移给了云游戏服务提供商。云游戏服务提供商要部署云游戏服务器,且需要购置性能强劲的硬件设备,硬件设备需要具备强大的视频渲染和编解码能力以及较高的网络带宽才能提供高质量的云游戏服务。
图2是常规的云游戏服务解决方案的框架示意图。如图2所示,在常规的云游戏服务解决方案中,云游戏服务提供商通常基于云平台来部署云游戏,云平台上部署的多个游戏虚拟机分别模拟不同用户使用的游戏客户端。其中,游戏虚拟机是指通过虚拟机技术物理服务器上模拟用户使用游戏客户端,虚拟机技术是虚拟化技术的一种,虚拟化技术是将事物从一种形式转变成另一种形式,最常用的虚拟化技术有操作系统中内存的虚拟化,实际运行时用户需要的内存空间可能远远大于物理机器的内存大小,利用内存的虚拟化技术,用户可以将一部分硬盘虚拟化为内存,而这对用户是透明的。游戏虚拟机也是通过软件模拟的具有完整硬件系统功能的、运行在一个完全隔离环境中的完整计算机系统,在物理服务器中创建虚拟机时,需要将实体机的部分硬盘和内存容量作为虚拟机的硬盘和内存容量。每个游戏虚拟机都有独立的大规模集成电路芯片、硬盘和操作系统,因此可以像使用实体机一样对游戏虚拟机进行操作。
如图2所示,游戏虚拟机中至少部署有游戏操控接收模块、视频采集与编码模块、音频采集与编码模块、游戏客户端实例、媒体多路复用模块等,这些功能模块具体实现为部署在游戏服务物理机上的服务程序。游戏客户端实例是一个安装有游戏客户端的终端模拟器,负责游戏客户端的运行,在游戏操控输入事件的触发下与游戏服务商的游戏后台服务器进行实时的交互,应理解的是,游戏后台服务器是真正为游戏客户端的运行提供数据服务的设备,例如后台服务器可以为游戏客户端提供玩家账户的管理服务,也可以为游戏客户端提供游戏资源文件,以使得游戏客户端基于这些游戏资源文件进行游戏画面以及游戏音频的生成,在此不一一进行列举。游戏操控接收模块用于接收网络发送过来的游戏操控数据,游戏操控数据中包括键盘输入、鼠标点击、重力加速器的运动信息等用户游戏操控事件,以根据用户游戏操控事件触发游戏客户端实例执行游戏客户端。音频采集与编码模块用于游戏客户端执行过程中产生的游戏音频的采集,然后按照指定的编码方式进行编码,并发送给媒体多路复用模块。视频采集与编码模块用于游戏客户端执行过程中产生的游戏画面的采集,并按照指定的编码方式对采集的游戏画面进行编码,并发送给媒体多路复用模块。媒体多路复用模块将接收到的音视频数据进行多路复用后发送给相应的用户游戏终端。其中,多路复用是数据通信系统或计算机网络系统中,由于传输媒体的带宽或容量往往会大于传输单一信号的需求,为了有效地利用通信线路,提出的以同一传输媒质承载多路信号进行通信的方式,各路信号在送往传输媒质之前,按照一定的规则进行调制,以利于各路已调信号在媒质中传输而不致混淆,从而在传到对方时使信号具有足够能量,且可用反调制的方法加以区分并恢复成原信号。
基于以上描述的游戏虚拟机所实现的较多功能,作为游戏虚拟机母机的物理机,则需要高性能的GPU(Graphics Processing Unit,图形处理器)服务器来实现云游戏的渲染和多媒体采集、编码等功能。对于大型游戏的云游戏服务部署来说,通常一台高性能的GPU服务器只能虚拟化为2至4台云游戏虚拟机,为2~4个用户提供云游戏服务。然而,大型游戏的用户总量往往是非常巨大的可见,可见采用虚拟机技术在云端服务器上进行云游戏的虚拟化需耗费非常高的硬件成本。
除了硬件成本之外,云平台对网络环境也有比较高的要求,除了较高的网络带宽之外,每台游戏虚拟机还应该具备公网接入能力,需要配置公网IP(Internet Protocol,网际互连协议)地址,因而整个云游戏服务提供的网络成本也是比较高昂的。
由上可知,现有的云游戏服务方案具有对云资源的要求非常高的问题,从而导致云游戏服务提供的成本高昂。同时,由于IP地址的稀缺性,大规模部署和运营云游戏存在一定的障碍和技术挑战。虽然对于IP地址稀缺性的问题,可以采用网络地址穿越等方案,但是一方面会引入网络部署和管理的复杂性,另一方面又可能带来更大的时延。
并且随着基于智能手机的云游戏服务的开展,图2所示云游戏服务部署方案的缺点将表现的更为突出。具体来说,由于手机用户数量以及手机的便捷性,面向手机用户的云游戏相比于面向PC(Personal Computer,个人计算机)终端的云游戏有更多的用户需求。同时由于手机游戏的资源需求相比PC游戏要小,所以一台相同配置的物理机上可以支持更多的手机云游戏实例。因而采用图1所示的云游戏服务部署方案,将很难支撑具有成本竞争力的手机云游戏服务部署和运营。
为解决如上的至少一个技术问题,本申请的实施例分别提出了游戏数据处理方法、游戏数据处理装置、电子设备、计算机可读存储介质以及云游戏系统,以下将针对本申请的实施例进行详细描述。
请参阅图3,图3是本申请的一示例性实施例示出的一种云游戏系统的架构示意图。如图3所示,该示例性的云游戏系统300包括多个游戏终端310和游戏服务器集群320。
游戏终端310包括智能手机、平板电脑、笔记本电脑、台式计算机、智能电视、电视盒子、智能穿戴设备、游戏手柄等终端设备,图3中所示的智能手机并不表示将游戏终端310局限于此。
游戏服务器集群320由多个游戏服务器构成,每个游戏服务器中部署有多个游戏容器实例,游戏容器实例基于容器技术模拟实现游戏客户端的运行。与图2所示云平台上部署的游戏虚拟机相似,游戏容器实例中也详细部署了游戏操控接收模块、视频采集与编码模块、音频采集与编码模块、游戏客户端实例、媒体多路复用模块等,这些功能模块所实现的功能请参见图2对应的实施例描述,本处不进行赘述。
需说明的是,本实施例提及的容器技术是指有效地将单个操作系统的资源划分到孤立的组中,以便更好的在孤立的组之间平衡有冲突的资源使用需求的技术。容器技术也可以理解为是一种用于实现服务器资源共享的虚拟化技术,其通过虚拟化技术来隔离运行在主机上的不同进程,从而达到进程之间、进程和宿主操作系统相互隔离,互不影响。但严格来说,由于容器技术解决的核心问题是应用开发、测试和部署,其并没有客户机操作系统,而是共享内核的,可以将容器视为软件供应链的集装箱,能够把应用需要的运行环境、缓存环境、数据库环境等封装起来,以最简洁的方式支持应用运行。
而常规方案中的虚拟机技术是通过抽象底层设施资源,提供相互隔离的虚拟机,通过统一配置和管理计算资源,使得资源利用率能够得到有效提升。虚拟机提供客户机操作系统,客户机的变化不会影响宿主机,其所解决的核心问题是资源调配。
由此,至少基于以上记载的容器技术与虚拟机技术之间的区别,本实施例提出的基于容器技术来实现服务器资源共享的方式与常规方案中基于虚拟机技术来实现服务器资源共享的方式相比,一台相同配置的物理机上可部署的游戏容器实例的数量明显大于可部署的游戏虚拟机的数量。例如,对于大型游戏的云游戏服务部署来说,通常一台高性能的GPU服务器最多只能虚拟化4台虚拟机,最多为4个用户提供云游戏服务,但最多能够虚拟化12个游戏容器实例,最多可为12个用户提供云游戏服务。
针对相同数量的云游戏用户群提供云游戏服务,采用游戏容器实例模拟实现游戏客户端的运行所需部署的物理机数量明显少于采用游戏容器实例模拟实现游戏客户端的运行所需部署的物理机数量,从而节省了云游戏服务成本。在前述基于智能手机的云游戏服务场景下,由于云游戏用户数量非常庞大,采用游戏容器实例模拟实现游戏客户端运行的方案能够极大地降低服务器物理机的部署数量,进而能够大幅地降低云游戏部署和运营、以及运维的成本。
图3所示的云游戏系统的不足之处在于,其仍需要针对每一游戏容器示例单独配置IP地址,以支持游戏容器实例向对应的游戏终端310发送游戏音频和视频数据,因此无法解决IP地址的稀缺性所带来的大规模部署和运营云游戏的问题。基于此问题,本申请在图3所示的云游戏系统的基础上进一步提出了如图4所示的云游戏系统,详细细节请参见下述实施例记载的内容。
请参阅图4,图4是本申请的另一示例性实施例示出的一种云游戏系统的架构示意图。如图4所示,该示例性的云游戏系统400包括多个游戏终端410、游戏服务器集群420、多媒体分发服务器430和操控输入代理服务器440。
其中,游戏终端410的具体设备类型与图3所示的游戏终端310相同,构成游戏服务器集群420的各个游戏服务器中部署有多个游戏容器实例,每个游戏容器实例中详细部署了游戏操控接收模块、视频采集与编码模块、音频采集与编码模块和游戏客户端实例,这些功能模块所实现的功能请参见图2所示实施例中的描述,本处不作赘述。
多媒体分发服务器430用于对游戏服务器集群420与游戏终端410之间的多媒体数据进行转发处理,其部署在具有公网IP地址的云主机上。在上行方向上,多媒体分发服务器430接收游戏终端410传送的音频数据,并将接收到的音频数据转发给游戏服务器集群420中对应部署的游戏容器实例;在下行方向上,多媒体分发服务器430接收游戏容器实例发送的游戏视频数据和游戏音频数据,并对游戏视频数据和游戏音频数据进行多路复用后转发给对应的游戏终端410。其中,多媒体分发服务器430接收的游戏终端410传送的音频数据包括用户游戏语音,接收的游戏容器实例发送的游戏视频数据和游戏音频数据包括游戏客户端实例运行过程中生成游戏画面和游戏音频之后,由视频采集与编码模块进行游戏画面的采集和编码所得到的游戏画面编码数据,以及由音频采集与编码模块进行游戏音频的采集和编码所得到的游戏音频编码数据。也即,当云游戏服务器集群420部署在云游戏服务商部署的内网中,因而不具备公网访问能力时,则可以通过具有公网IP地址的多媒体分发服务器430来实现游戏终端410与相应游戏容器实例之间的多媒体数据的转发。
操控输入代理服务器440用于将游戏终端410发送的游戏操控数据转发至游戏服务器集群420中对应部署的游戏容器实例,如前所述的,游戏操控数据包括键盘输入、鼠标点击、重力加速器的运动信息等用户游戏操控事件,用户游戏操控事件用于触发游戏容器实例执行游戏客户端。操控输入代理服务器440也部署在具有公网IP地址的云主机上,其中操控输入代理服务器440部署所在的云主机与多媒体分发服务器430部署所在的云主机可以相同,也可以不同。当云游戏服务器集群420部署在云游戏服务商部署的内网中,因而不具备公网访问能力时,则在具有公网IP地址的操控输入代理服务器440来实现游戏终端410上报的游戏操控数据的转发,以将用户游戏操控事件转发至内网中具体部署的游戏容器实例。
由上述记载可以看出,多媒体分发服务器430和操控输入代理服务器440均为部署在公网中的服务设备,二者需要与部署在内网中的云游戏服务器集群420进行通信,以及与不同的游戏终端410进行通信。示例性的,多媒体分发服务器430和操控输入代理服务器440与游戏终端410之间的通讯协议可以采用RTSP(Real Time Streaming Protocol,实时流传输协议)、SIP(Session Initiation Protocol,会话初始协议)或WebRTC(Web Real-TimeCommunication,网页即时通信)等,在此不进行限制。应理解的是,RTSP协议是基于文本的协议,也是应用级协议,控制实时数据的发送,定义了一对多应用程序如何有效地通过IP网络传送多媒体数据,其使用TCP(Transmission Control Protocol,传输控制协议)或者UDP(User Datagram Protocol,用户数据报协议)完成数据传输;SIP协议是一个基于文本的应用层控制协议,用于创建、修改和释放一个或多个参与者的会话,会话的参与者可以通过组播(multicast)、网状单播(unicast)或两者的混合体进行通信;WebRTC协议是一个支持网页浏览器进行实时语音对话或视频对话的应用程序接口,实现了基于网页的视频会议,目的是通过浏览器提供简单的JS(JavaScript,是一种具有函数优先的轻量级,解释型或即时编译型的编程语言)程序就可以达到实时通讯能力,相关技术人员可以根据实际部署需求选择适应的通信协议。多媒体分发服务器430和操控输入代理服务器440与游戏服务器集群420之间则可以通过云游戏服务商自定义的通讯协议进行数据传输。
由上可以看出,在本实施例提供的云游戏系统中,通过在公网中独立部署多媒体分发服务器430和操控输入代理服务器440,一方面,使用较少的公网IP地址资源即可支持大规模的云游戏容器集群,具体体现为只需为多媒体分发服务器430和操控输入代理服务器440配置公网IP地址资源,而无需为每个游戏容器实例单独分配公网IP地址资源,因此能够在极大程度上降低云游戏部署所需的IP地址资源;另一方面,整个系统具备良好的伸缩性,可以根据系统规模灵活部署多媒体分发服务器430和操控输入代理服务器440的数量,例如部署多个多媒体分发服务器430和多个操控输入代理服务器440,如此仍然不会占用大量的IP地址资源;再一方面,考虑到游戏操控数据的时延敏感性对于云游戏体验的影响比较大,同一数据通道上的多媒体数据占用的带宽通常远高于游戏操控数据,如果使用同一数据通道来传输多媒体数据和游戏操控数据,会导致游戏操控数据的传输具有较大时延,也会导致云游戏过程中的响应速度受到影响,进而影响用户的云游戏体验,而本实施例将游戏操控数据的传输通道与多媒体数据的传输通道进行了分离,降低了云游戏使用过程中数据传输通道的耦合性,提升了对时延比较敏感的游戏操控数据传输的效率,进一步地提升了用户体验。
请参阅图5,图5是本申请的另一示例性实施例示出的一种云游戏系统的架构示意图。如图5所示,该示例性的云游戏系统500包括多个游戏终端510、游戏服务器集群520和多媒体分发服务器530。
其中,游戏终端510的具体设备类型与图3所示的游戏终端310以及图4所示的游戏终端410相同,多媒体分发服务器530所实现的功能与图4所示实施例中的多媒体分发服务器430相同,构成游戏服务器集群520的各个游戏服务器中仍部署有多个游戏容器实例,每个游戏容器实例中详细部署了游戏操控接收模块、视频采集与编码模块、音频采集与编码模块和游戏客户端实例,本处均不进行赘述。
在本实施例提供的云游戏系统500中,游戏服务器集群520中每个游戏服务器都具有独立的IP地址,因此本实施例的云游戏系统更适应于公网IP地址资源充足的场景。需要说明的是,本实施例通过端口映射技术实现游戏终端510面向游戏容器实例的直接数据传输,示例来说,通过将游戏容器实例的操控输入接口通过端口映射方式直接暴露在具有公网IP地址的物理服务器上,即可使得游戏终端510上报的游戏操控数据能够直接抵达游戏容器实例。需要说明的是,端口映射是NAT(Network Address Translation,网络地址转换)的一种,它可以把在公网的地址转翻译成私有地址,端口映射功能包括将一台主机的假IP地址映射成一个真IP地址,当用户访问提供映射端口主机的某个端口时,服务器将请求转到内部提供这种特定服务的主机,因此,本实施例所说的端口应理解为是软件形式上的概念,而不是计算机硬件的I/O(Input/Output)进出端口。
相比于图4所示的云游戏系统,本实施例中来自于游戏终端510的游戏操控数据直接传输至对应的游戏容器实例,不再经过专门的操控输入代理服务器的转发,进一步降低游戏操控数据的传输时延,因此,在具有充足的IP地址资源的情况下,采用图5所示的云游戏系统进行云游戏服务部署,能够使得云游戏用户具备更好的游戏体验。
需要说明的是,以上图3至图5所示的云游戏系统的架构仅作为实例,在实际的云游戏部署场景下,可结合具体的部署需求以及资源适用情况来进行灵活部署云游戏服务架构,本申请的实施例并不对其进行限制。
图6是本申请的一示例性实施例示出的游戏数据处理方法的流程图。该游戏数据处理方法适用于由游戏终端和游戏服务器组成的云游戏系统,并由游戏服务器具体执行。
游戏服务器可以包括提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、以及大数据和人工智能平台等基础云计算服务的云服务器或者云服务器集群。当该游戏服务器部署为服务器集群时,可以具体部署为图3至图5所示的云游戏系统中的游戏服务器集群,本实施例不对游戏服务器的具体架构进行任何限制。
如图6所示,在一示例性实施例中,该游戏数据处理方法至少包括步骤S610至步骤S650,详细介绍如下:
步骤S610,获取来自于游戏终端的游戏操控数据。
首先需要说明的是,基于前述描述中记载的云游戏的特殊实现方式,游戏客户端实际运行在部署于云端的游戏服务器中,游戏客户端在运行过程中需根据用户的游戏操控来生成游戏画面和游戏音频,并将游戏画面和游戏音频下发至对应的游戏终端进行显示和播放,由此实现云游戏的运行。因此在云游戏场景下,游戏服务器需获取游戏终端上报的游戏操控数据,以根据接收到的游戏操控数据相应生成游戏终端中需显示和播放的游戏画面和游戏音频。
来自于游戏终端的游戏操控数据是游戏终端通过采集终端中输入的用户游戏操作所得到的,因此游戏操控数据包含了用户的一些操作信息,示例性的,由于不同类型的云游戏可能支持不同类型的用户操控方式,例如有的单机云游戏仅支持通过键盘和鼠标输入的用户操作,有的大型网络游戏则支持通过终端屏幕触控输入用户操作,因此游戏操控数据可以包括键盘输入、鼠标点击、重力加速器的运动信息等数据。
在一些示例性实施例中,游戏服务器获取的游戏操控数据是由操控输入代理服务器转发的。该操控输入代理服务器用于将多个游戏终端发送的游戏操控数据转发至游戏服务器,例如图4所示实施例中的操控输入代理服务器440。在此示例性实施例中,操控输入代理服务器部署于公网环境中,因此分配有公网IP地址,但由于操控输入代理服务器实现了多个游戏终端与游戏服务端之间进行游戏操控数据的分布式传输架构,在实际的云游戏服务部署时,通常仅需部署少量的操控输入代理服务器,因此仅需占用较少的IP地址资源,大幅降低了云游戏服务部署对于网络IP地址资源的需求,降低了云游戏服务部署的成本。
另外还需提及的是,在实际的云游戏服务部署场景中,可以根据实际部署需求具体设置操控输入代理服务器的数量,也可以根据实际部署需求设置每个操控输入代理服务器所对应通信的游戏终端以及游戏服务器。其中,可具体设置每个操控输入代理服务器与对应服务的多个游戏终端分别建立通信连接,所建立的通信连接的协议类型包括但不限于RTSP、SIP、WebRTC等,本处不对具体的协议类型进行限制。操控输入代理服务器与对应服务的多个游戏服务器之间则可以通过云游戏服务商自定义的通讯协议建立通信连接。
在另一示例性实施例中,游戏服务器获取的游戏操控数据是游戏终端通过调用操控输入接口所传入的。其中,操控输入接口部署于游戏服务器上,并且操控输入接口是实现游戏终端与游戏服务器之间通信的应用程序接口,游戏终端通过调用操控输入接口,即可通过操控输入接口实现游戏操控数据面向游戏服务器的上报。在此示例性实施例中,游戏服务器分配有IP地址,当游戏服务器由多台物理服务器构成,需针对每台物理服务器分配各自的IP地址,大型的云游戏场景通常都拥有大量游戏玩家,尤其是基于智能手机的云游戏场景下,由于手机用户数量以及手机的便捷性,面向手机用户的云游戏相比于面向PC终端的云游戏有更多的用户需求,所需要部署的物理服务器的数量更多,因此该示例性实施例适合于IP地址较为丰富的情况。
需要说明的是,每台物理服务器上部署有多个游戏容器实例,游戏客户端实例是一个安装有游戏客户端的终端模拟器,负责游戏客户端的运行,并在游戏操控输入事件的触发下与游戏服务商的游戏后台服务器进行实时的交互,因此游戏终端与游戏服务器之间的交互实际上是游戏终端与游戏容器实例之间的交互,游戏服务器的操控输入接口实际上是游戏容器实例的操控输入接口,通过将游戏容器实例的操控输入接口通过端口映射方式直接暴露在具有公网IP地址的物理服务器上,且游戏终端通过调用游戏容器实例的操控输入接口,即可使得游戏终端上报的游戏操控数据能够直接抵达对应的游戏容器实例。
步骤S630,根据游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据。
游戏服务器根据获取到的游戏操控数据,即可根据游戏操控数据中包括的用户游戏操控事件,触发执行游戏服务器中部署的游戏客户端,以生成相应的游戏画面和游戏音频,并按照指定的编码格式对生成的游戏画面和游戏音频进行编码,即可得到相应的游戏画面编码数据和游戏音频编码数据。
在一些示例性实施例中,游戏服务器中部署有多个游戏容器实例,游戏容器实例基于容器技术模拟游戏客户端的运行,一个游戏容器实例为一个云游戏用户提供云游戏服务,通过容器技术在同一游戏服务器中生成的游戏容器实例的数量明显大于生成游戏虚拟机的数量,由此能够极大程度地降低云游戏服务成本。游戏容器实例中具体部署有游戏客户端实例,游戏客户端实例是部署在游戏服务器上的终端模拟器,该终端模拟器用于安装游戏客户端。游戏容器实例中还部署有视频采集和编码模块以及音频采集和编码模块,以基于二者模块进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据,其中游戏容器实例中部署的详细功能模块可以参见图4和图5所示的云游戏系统。具体来说,在此示例性的实施例中,游戏容器实例根据获取到的游戏操控数据触发游戏客户端实例运行,以生成相应的游戏画面和游戏音频,同时,游戏容器实例中部署的视频采集与编码模块启动采集游戏客户端实例生成的游戏画面,并按照指定的编码格式对采集的游戏画面进行编码,得到对应的游戏画面编码数据,游戏容器实例中部署的音频采集与编码模块启动采集游戏客户端实例生成的游戏音频,并按照指定的编码格式对采集的游戏音频进行编码,以得到对应的游戏音频编码数据。
步骤S650,将游戏画面编码数据和游戏音频编码数据发送至多媒体分发服务器,以通过多媒体分发服务器将游戏画面编码数据和游戏音频编码数据转发至游戏终端,其中,多媒体分发服务器用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理。
本实施例中,多媒体分发服务器独立部署于公网中,每个媒体分发服务器具有独立的公网IP地址资源,以在多个游戏终端和游戏服务器之间进行多媒体数据的转发处理,多媒体数据包括游戏服务器发送的游戏画面编码数据和游戏音频编码数据,还包括游戏终端发送的音频数据,例如用户游戏语音,基于此实现多媒体数据的分布式传输,使用较少的公网IP地址资源即可支持为大量云游戏用户提供服务。多媒体分发服务器的部署请参见图4以及图4对应的实施例中的记载,在此不进行赘述。
由上可以看出,考虑到游戏操控数据的时延敏感性对于云游戏体验的影响比较大,同一数据通道上的多媒体数据占用的带宽通常远高于游戏操控数据,因此本实施例提供的方法将游戏操控数据的传输通道与多媒体数据的传输通道进行了分离,降低了云游戏使用过程中数据传输通道的耦合性,提升了对时延比较敏感的游戏操控数据传输的效率,极大地提升了用户体验。
图7是本申请的另一示例性实施例示出的游戏数据处理方法的流程图。如图7所示,该示例性的实施例提出的游戏数据处理方法是在图6所示的游戏数据处理方法的基础上得到的,具体在图6所示的步骤S610之前还包括步骤S710至步骤S750,详细介绍如下:
步骤S710,获取游戏启动指令。
首先需要说明的是,图6中示出的游戏数据处理方法具体描述了云游戏的运行过程,包括游戏终端与游戏客户端之间所进行得游戏操控数据以及多媒体数据的传输,图7所示出的数据处理方法则具体描述了云游戏的启动过程。
具体来说,在本实施例中,游戏服务器在获取来自于游戏终端的游戏操控数据之前,还获取来自于游戏终端的游戏启动指令。游戏启动指令用于指示启动部署于云端的游戏客户端,进而真正地启动云游戏。示例性的,游戏启动指令可以是检测到游戏终端中安装的游戏终端应用启动后生成的,也可以是检测到游戏终端所显示的界面中含有的启动控件被用户触发后所生成的,本实施例不对此进行限制。需理解的是,通常而言,部署在游戏终端中的游戏终端应用是与游戏服务器中相应部署的游戏客户端进行配套使用的,游戏终端应用面向于用户侧,用于实现用户操控数据的采集和上报、以及游戏画面的接收和显示、游戏音频的接收和播放等功能。
在一些实施例中,若云游戏系统通过多媒体分发服务器进行云游戏操控数据和多媒体数据的转发,游戏服务器所获取到的游戏启动指令可以是多媒体分发服务器接收到游戏终端发起的媒体会话接入请求之后,由多媒体分发服务器向游戏服务器发送的。
步骤S730,根据游戏启动指令启动游戏客户端实例,并进行游戏客户端实例启动所需的游戏画面和游戏音频的编码处理,得到与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据。
游戏服务器根据接收到的游戏启动指令启动游戏客户端实例,以生成游戏启动所需的游戏画面和游戏音频,并通过对生成的游戏画面和游戏音频的编码处理,则可得到与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据。其中,关于游戏客户端实例的描述请参见前述实施例中的相关记载,本处不作赘述。
步骤S750,通过多媒体分发服务器将与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据转发至游戏终端。
在本实施例中,游戏服务器在获取来自于游戏终端的游戏操控数据之前,还获取来自于游戏终端的游戏启动指令,以根据游戏启动指令启动游戏客户端实例,并进行游戏客户端实例启动所需的游戏画面和游戏音频的编码处理,得到与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据,然后通过多媒体分发服务器将与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据转发至游戏终端,游戏终端中即可显示相应的游戏启动画面,以及播放游戏启动音频。由此基于游戏终端中的用户操控,实现游戏服务器中游戏客户端的启动。游戏客户端的启动实现后,即可基于图6所示的方法进行云游戏的正常使用。
需要说明的是,由于本实施例的游戏数据处理方法也基于前述实施例示出的云游戏系统所提出的,更详细的游戏处理过程和技术效果可以参见前述实施例中所记载的内容,本实施例不再进行赘述。
请参阅图8,图8是本申请的一示例性实施例示出的云游戏场景下多方设备进行数据交互的流程图。该云游戏场景可以基于图4所示的云游戏系统400具体实现,多方设备包括游戏终端、多媒体分发服务器、操控输入代理服务器和部署在游戏服务器上的游戏容器实例,游戏容器实例中具体部署了游戏操控接收模块、视频采集与编码模块、音频采集与编码模块和游戏客户端实例,详细的模块功能请参见前述实施例中的相应记载,本处不进行赘述。
如图8所示,该示例性的数据交互流程中,游戏终端首先向多媒体分发服务器发起媒体会话接入请求,所使用的通信协议可以采用SIP、RTSP、WebRTC等。多媒体分发服务器根据接收到的媒体会话接入请求,向指定游戏容器实例中的音频采集与编码模块和视频采集与编码模块分别下发启动指示,以使音频采集与编码模块准备开始视频采集与编码,以及视频采集与编码模块准备开始音频采集与编码。
游戏终端同步连接操控输入代理服务器,以使操控输入代理服务器指示对应的游戏容器实例中的游戏操控接收模块启动接收游戏操控数据,以及指示游戏容器实例中的游戏客户端实例启动游戏客户端。音频采集与编码模块采集运行的游戏音频数据,并对采集的游戏音频数据进行编码之后发送给多媒体分发服务器。音频采集与编码模块采集运行的游戏视频数据,并对采集的游戏视频数据进行编码之后发送给多媒体分发服务器。
多媒体分发服务器将接收到的音视频编码数据进行多路复用后发送给对应的游戏终端,以使游戏终端对音视频编码数据解码后相应显示游戏画面以及播放游戏音频。用户则可开始操作云游戏,游戏终端将包含有用户操控事件的游戏操控数据上报至多媒体分发服务器。多媒体分发服务器将游戏操控数据转发至对应游戏容器实例中的游戏操控接收模块,游戏操控接收模块根据接收的用户操控事件触发游戏客户端实例执行相应动作,以生成相应的游戏画面和游戏音频。
通过重复执行如上基于游戏操控数据触发游戏客户端生成游戏画面和游戏音频,并通过多媒体分发服务器将游戏画面和游戏音频对应的音视频编码数据发送至游戏终端,以及游戏终端通过操控输入代理服务器上报游戏操控数据的过程,即可不断地进行云游戏运行过程中的数据交互,直至用户结束游戏。需要说明的是,以上流程的详细执行过程均在前述各个实施例中进行了详细描述,本实施例在此不进行赘述。
图9是本申请的一示例性实施例示出的游戏数据处理装置的框图。如图9所示,该游戏数据处理装置包括:
操控数据获取模块910,配置为获取来自于游戏终端的游戏操控数据;游戏数据编码模块930,配置为根据游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据;游戏数据发送模块950,配置为将游戏画面编码数据和游戏音频编码数据发送至多媒体分发服务器,以通过多媒体分发服务器将游戏画面编码数据和游戏音频编码数据转发至游戏终端,其中,多媒体分发服务器用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理。
本实施例提供的游戏数据处理装置将多媒体数据通过统一的多媒体分发服务器来完成,而用户的游戏操控数据通过另外的网络通道上报给游戏服务器,由此将游戏的多媒体数据通道与游戏操控数据上报通道进行分离,能够降低云游戏使用过程中数据传输通道的耦合性,提升了对时延比较敏感的游戏操控数据传输的效率,从而提升用户游戏体验。
在另一示例性的实施例中,操控数据获取模块910包括:
第一数据接收单元,配置为接收操控输入代理服务器发送的游戏操控数据,其中,操控输入代理服务器用于将多个游戏终端发送的游戏操控数据转发至游戏服务器;或者,第二数据接收模块单元,配置为接收游戏终端通过调用操控输入接口传入的游戏操控数据,其中,操控输入接口部署于游戏服务器上,操控输入接口是实现游戏终端与游戏服务器之间通信的应用程序接口。
在另一示例性的实施例中,该游戏数据处理装置包括:
启动指令获取模块,配置为获取游戏启动指令;游戏实例启动模块,配置为根据游戏启动指令启动游戏客户端实例,并进行游戏客户端实例启动所需的游戏画面和游戏音频的编码处理,得到与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据,其中,游戏客户端实例部署在游戏服务器的终端模拟器,终端模拟器用于安装游戏客户端;数据转发控制模块,配置为通过多媒体分发服务器将与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据转发至游戏终端。
上述所有可选技术方案,可以采用任意结合形成本申请的可选实施例,在此不再一一赘述。
需要说明的是,上述实施例所提供的游戏数据处理装置与上述实施例所提供的游戏数据处理方法属于同一构思,其中各个模块和单元执行操作的具体方式已经在方法实施例中进行了详细描述,此处不再赘述。上述实施例所提供的游戏数据处理装置在实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能,本处也不对此进行限制。
本申请的实施例还提供了一种电子设备,包括:一个或多个处理器;存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现上述各个实施例中提供的游戏数据处理方法。
图10示出了适于用来实现本申请实施例的电子设备的计算机系统的结构示意图。
需要说明的是,图10示出的电子设备的计算机系统1000仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图10所示,计算机系统1000包括中央处理单元(Central ProcessingUnit,CPU)1001,其可以根据存储在只读存储器(Read-Only Memory,ROM)1002中的程序或者从储存部分1010加载到随机访问存储器(Random Access Memory,RAM)1003中的程序而执行各种适当的动作和处理,例如执行上述实施例中所述的方法。在RAM 1003中,还存储有系统操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(Input/Output,I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(Cathode Ray Tube,CRT)、液晶显示器(Liquid Crystal Display,LCD)等以及扬声器等的输出部分1007;包括硬盘等的储存部分10010;以及包括诸如LAN(Local AreaNetwork,局域网)卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入储存部分1010。
特别地,根据本申请的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本申请的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的计算机程序。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的系统中限定的各种功能。
需要说明的是,本申请实施例所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(Erasable Programmable Read Only Memory,EPROM)、闪存、光纤、便携式紧凑磁盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的计算机程序。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的计算机程序可以用任何适当的介质传输,包括但不限于:无线、有线等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。其中,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现,所描述的单元也可以设置在处理器中。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定。
本申请的另一方面还提供了一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如前所述的游戏数据处理方法。该计算机可读存储介质可以是上述实施例中描述的电子设备中所包含的,也可以是单独存在,而未装配入该电子设备中。例如,计算机可读存储介质可以是只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、光盘只读存储器(Compact Disc Read-OnlyMemory,CD-ROM)、磁带、软盘和光数据存储设备等。
本申请的另一方面还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述各个实施例中提供的游戏数据处理方法。
在一些实施例中,本申请实施例涉及的计算机程序可被部署在一个计算机设备上执行,或者在位于一个地点的多个计算机设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算机设备上执行,分布在多个地点且通过通信网络互连的多个计算机设备可以组成区块链系统。
上述内容,仅为本申请的较佳示例性实施例,并非用于限制本申请的实施方案,本领域普通技术人员根据本申请的主要构思和精神,可以十分方便地进行相应的变通或修改,故本申请的保护范围应以权利要求书所要求的保护范围为准。

Claims (15)

1.一种游戏数据处理方法,其特征在于,所述方法包括:
获取来自于游戏终端的游戏操控数据;
根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据;
将所述游戏画面编码数据和所述游戏音频编码数据发送至多媒体分发服务器,以通过所述多媒体分发服务器将所述游戏画面编码数据和所述游戏音频编码数据转发至所述游戏终端,其中,所述多媒体分发服务器用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理。
2.根据权利要求1所述的方法,其特征在于,所述获取来自于游戏终端的游戏操控数据,包括:
接收操控输入代理服务器发送的游戏操控数据,其中,所述操控输入代理服务器用于将多个游戏终端发送的游戏操控数据转发至游戏服务器。
3.根据权利要求1所述的方法,其特征在于,所述获取来自于游戏终端的游戏操控数据,包括:
接收游戏终端通过调用操控输入接口传入的游戏操控数据,其中,所述操控输入接口部署于游戏服务器上,所述操控输入接口是实现游戏终端与所述游戏服务器之间通信的应用程序接口。
4.根据权利要求1所述的方法,其特征在于,在获取来自于游戏终端的游戏操控数据之前,所述方法还包括:
获取游戏启动指令;
根据所述游戏启动指令启动游戏客户端实例,并进行游戏客户端实例启动所需的游戏画面和游戏音频的编码处理,得到与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据,其中,所述游戏客户端实例部署在游戏服务器的终端模拟器,所述终端模拟器用于安装游戏客户端;
通过所述多媒体分发服务器将所述与启动游戏客户端实例相关的游戏画面编码数据和游戏音频编码数据转发至所述游戏终端。
5.根据权利要求1-4中任一项所述的方法,其特征在于,所述方法由部署在游戏服务器的游戏容器实例执行,其中,所述游戏客户端实例基于容器技术模拟游戏客户端的运行,所述游戏容器实例中包含游戏客户端实例。
6.一种云游戏系统,其特征在于,包括游戏终端和游戏服务器集群,所述游戏服务器集群由多个游戏服务器构成,每个游戏服务器中部署有多个游戏容器实例,所述游戏客户端实例基于容器技术模拟游戏客户端的运行,其中:
所述游戏终端向所述游戏服务器集群中相应部署的游戏容器实例发送游戏操控数据;
所述游戏服务器集群中相应部署的游戏容器实例根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据,并将所述游戏画面编码数据和所述游戏音频编码数据发送至所述游戏终端。
7.根据权利要求6所述的云游戏系统,其特征在于,所述云游戏系统还包括多媒体分发服务器,所述多媒体分发服务器用于对所述游戏服务器集群与多个游戏终端之间的多媒体数据进行转发处理。
8.根据权利要求7所述的云游戏系统,其特征在于,所述多媒体分发服务器的数量包括多个,每个多媒体分发服务器分别占用一IP地址资源。
9.根据权利要求7所述的云游戏系统,其特征在于,所述游戏服务器集群中部署的游戏容器实例具有操控输入接口,游戏终端通过调用所述操控输入接口向对应的游戏容器实例传入游戏操控数据。
10.根据权利要求9所述的云游戏系统,其特征在于,游戏容器实例的操控输入接口通过端口映射的方式暴露在其所部署的游戏服务器上,所述游戏服务器集群中部署的每个游戏服务器分别占用一IP地址资源。
11.根据权利要求6或7所述的云游戏系统,其特征在于,所述云游戏系统还包括操控输入代理服务器,所述操控输入代理服务器用于将多个游戏终端发送的游戏操控数据转发至游戏服务器集群中对应部署的游戏服务器。
12.一种游戏数据处理装置,其特征在于,所述装置包括:
操控数据获取模块,配置为获取来自于游戏终端的游戏操控数据;
游戏数据编码模块,配置为根据所述游戏操控数据进行游戏画面和游戏音频的编码处理,得到游戏画面编码数据和游戏音频编码数据;
游戏数据发送模块,配置为将所述游戏画面编码数据和所述游戏音频编码数据发送至多媒体分发服务器,以通过所述多媒体分发服务器将所述游戏画面编码数据和所述游戏音频编码数据转发至所述游戏终端,其中,所述多媒体分发服务器用于对游戏服务器与多个游戏终端之间的多媒体数据进行转发处理。
13.根据权利要求12所述的装置,其特征在于,所述操控数据获取模块包括:
第一数据接收单元,配置为接收操控输入代理服务器发送的游戏操控数据,其中,所述操控输入代理服务器用于将多个游戏终端发送的游戏操控数据转发至游戏服务器;
或者,第二数据接收单元,配置为接收游戏终端通过调用操控输入接口传入的游戏操控数据,其中,所述操控输入接口部署于游戏服务器上,所述操控输入接口是实现游戏终端与所述游戏服务器之间通信的应用程序接口。
14.一种电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,当所述一个或多个程序被所述一个或多个处理器执行时,使得所述电子设备实现如权利要求1至5中任一项所述的游戏数据处理方法。
15.一种计算机可读存储介质,其特征在于,其上存储有计算机可读指令,当所述计算机可读指令被计算机的处理器执行时,使计算机执行权利要求1至5中任一项所述的游戏数据处理方法。
CN202110947078.4A 2021-08-17 2021-08-17 游戏数据处理方法及装置、云游戏系统、电子设备 Pending CN115703008A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110947078.4A CN115703008A (zh) 2021-08-17 2021-08-17 游戏数据处理方法及装置、云游戏系统、电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110947078.4A CN115703008A (zh) 2021-08-17 2021-08-17 游戏数据处理方法及装置、云游戏系统、电子设备

Publications (1)

Publication Number Publication Date
CN115703008A true CN115703008A (zh) 2023-02-17

Family

ID=85181318

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110947078.4A Pending CN115703008A (zh) 2021-08-17 2021-08-17 游戏数据处理方法及装置、云游戏系统、电子设备

Country Status (1)

Country Link
CN (1) CN115703008A (zh)

Similar Documents

Publication Publication Date Title
US11712622B2 (en) Gaming system
US11617947B2 (en) Video game overlay
CN113209632B (zh) 一种云游戏的处理方法、装置、设备及存储介质
JP6310073B2 (ja) 描画システム、制御方法、及び記憶媒体
US9937423B2 (en) Voice overlay
GB2517102A (en) Qualified video delivery
CN106390449A (zh) 一种基于图形虚拟化技术的云游戏框架
CN113079216B (zh) 一种云应用的实现方法、装置、电子设备及可读存储介质
WO2024037110A1 (zh) 数据处理方法、装置、设备以及介质
KR20140106838A (ko) 스트리밍 기반의 게임 플랫폼을 이용한 클라우드 서비스 제공 장치 및 방법
CN112221127B (zh) 一种云游戏的多点控制方法及装置
CN113926185A (zh) 一种数据处理方法、装置、设备及存储介质
Yadav et al. Adaptive GPU resource scheduling on virtualized servers in cloud gaming
WO2024061243A1 (en) Live stream interactive method, device, apparatus and storage medium
CN109587118B (zh) Android网游的分布式支持多终端和多网络的系统
Barboza et al. A simple architecture for digital games on demand using low performance resources under a cloud computing paradigm
CN115703008A (zh) 游戏数据处理方法及装置、云游戏系统、电子设备
KR20140088799A (ko) 멀티 인젝션 서버 및 그 방법
KR20130062463A (ko) 다중 사용자 및 멀티 플랫폼 지원을 위한 게임 스트리밍 시스템 및 방법
US11013994B2 (en) Method for playing back applications from a cloud, telecommunication network for streaming and for replaying applications (APPs) via a specific telecommunication system, and use of a telecommunication network for streaming and replaying applications (APPs)
Junior et al. A Simple Architecture for Digital Games On Demand using low Performance Resources under a Cloud Computing Paradigm

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination