第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > 云游戏的检测方法和装置 存储介质及电子装置与流程

云游戏的检测方法和装置 存储介质及电子装置与流程

时间:2021-11-27 15:52:45

相关推荐

云游戏的检测方法和装置 存储介质及电子装置与流程

本发明涉及计算机领域,具体而言,涉及一种云游戏的检测方法和装置、存储介质及电子装置。

背景技术:

目前,在使用云游戏的过程中,用户对于该云游戏的体验可以是该用户对云游戏的画面品质、操作流畅度、播放流畅度的主观感受情况。

为了对云游戏进行优化,可以统计云游戏的用户体验。统计用户体验可以通过客观的指标进行量化。例如,可以通过对应的技术指标对用户体验进行评价。

然而,相关技术中采用单一技术指标(比如卡顿率)来量化用户体验,由于各指标之间缺少相关性,导致用户体验的评价结果不准确的问题。

技术实现要素:

本发明实施例提供了一种云游戏的检测方法和装置、存储介质及电子装置,以至少解决相关技术中采用单一技术指标来量化用户体验,由于各指标之间缺少相关性,导致用户体验的评价结果不准确的技术问题。

根据本发明实施例的一个方面,提供了一种云游戏检测方法,包括:获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

根据本发明实施例的另一方面,还提供了一种云游戏的检测装置,包括:第一获取单元,用于获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;确定单元,用于根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;第二获取单元,用于根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

根据本发明实施例的又一方面,还提供了一种计算机可读的存储介质,该计算机可读的存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述云游戏的检测方法。

根据本发明实施例的又一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,上述处理器通过计算机程序执行上述的云游戏的检测方法。

在本发明实施例中,采用分侧获取运行参数的方式,获取在待检测的目标云游戏在服务器和客户端上运行过程中服务器上的第一组运行参数和客户端上的第二组运行参数,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;根据目标检测参数获取目标云游戏的检测结果,由于获取的运行参数覆盖了云游戏架构的服务器和客户端,且检测结果可以表示云游戏架构的各个环节的卡顿信息,可以直观体现出用户体验质量评价细分数据与趋势情况,提高问题分析与跟进的效率,以及云游戏质量评价的准确性,进而解决了相关技术中采用单一技术指标来量化用户体验,由于各指标之间缺少相关性,导致用户体验的评价结果不准确的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的一种云游戏的检测方法的应用环境的示意图;

图2是根据本发明实施例的一种可选的云游戏的检测方法的流程示意图;

图3是根据本发明实施例的一种可选的云游戏的检测方法的示意图;

图4是根据本发明实施例的另一种可选的云游戏的检测方法的示意图;

图5是根据本发明实施例的又一种可选的云游戏的检测方法的示意图;

图6是根据本发明实施例的另一种可选的云游戏的检测方法的流程示意图;

图7是根据本发明实施例的一种可选的云游戏的检测装置的结构示意图;

图8是根据本发明实施例的一种可选的电子装置的结构示意图;

图9是根据本发明实施例的分布式系统应用于区块链系统的一个可选的结构示意图;

图10是根据本发明实施例的区块结构的一个可选的示意图。

具体实施方式

为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。

本发明实施例中涉及到的技术术语包括:

(1)用户体验:用户在使用云游戏的过程中,对画面品质、操作流畅度、播放流畅度的主观感受情况。

(2)质量评价:在用户体验中,对相关主观感受,给出对应的客观量化技术标准。

(3)云游戏:一种游戏运行在服务器,通过串流的方式,把服务器上云游戏的屏幕画面,传递到用户终端,终端对游戏的控制,再传递到服务器进行游戏控制的系统。

根据本发明实施例的一个方面,提供了一种云游戏的检测方法。可选地,上述云游戏的检测方法可以但不限于应用于如图1所示的应用环境中。如图1所示,终端设备102通过网络104与服务器106(例如,云游戏服务器)相连,云游戏运行在服务器106上。服务器106通过“串流”的方式,把服务器106上云游戏的屏幕画面,传递到终端设备102,终端设备102产生控制指令,并将控制指令传递到服务器106进行游戏控制。

在待检测的目标云游戏在服务器和客户端上运行过程中,可以获取服务器上的第一组运行参数和客户端上的第二组运行参数;根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数,根据所述目标检测参数获取所述目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

可选地,在本实施例中,终端设备102可以是配置有目标客户端(与云游戏对应)的终端设备,可以包括但不限于以下至少之一:手机(如android手机、ios手机等)、笔记本电脑、平板电脑、掌上电脑、mid(mobileinternetdevices,移动互联网设备)、pad、台式电脑等。上述网络可以包括但不限于:有线网络,无线网络,其中,该有线网络包括:局域网、城域网和广域网,该无线网络包括:蓝牙、wifi及其他实现无线通信的网络。上述服务器可以是单一服务器,也可以是由多个服务器组成的服务器集群。上述只是一种示例,本实施例对此不做任何限定。

可选地,在本实施例中,作为一种可选的实施方式,该方法可以由服务器执行,也可以由终端设备执行,或者由服务器和终端设备共同执行,或者能够从终端设备和服务器接收信息的其他设备执行,本实施例中,以由服务器执行为例进行说明。如图2所示,上述云游戏的检测方法的流程可以包括步骤:

步骤s202,获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;

步骤s204,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;

步骤s206,根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

可选地,上述云游戏的检测方法可以但不限于在待检测的目标云游戏在服务器和客户端上的运行过程中,在待检测的目标云游戏在服务器和客户端上的模拟运行过程中,或者其他对用户体验质量具有较高要求的应用在服务器和客户端上的运行过程中。

目标云游戏的游戏应用可以包括但不限于以下至少之一:二维(twodimension,简称为2d)游戏应用、三维(threedimension,简称为3d)游戏应用、虚拟现实(virtualreality,简称为vr)游戏应用、增强现实(augmentedreality,简称为ar)游戏应用、混合现实(mixedreality,简称为mr)游戏应用。其中,在上述游戏应用中可以包括但不限于与所使用账号对应的虚拟角色对象。例如,应用于大型多人在线角色扮演游戏(massive(或massively)multiplayeronlinerole-playinggame,简称为mmorpg)的玩家对抗(playervsplayer,简称为pvp)游戏过程中。以上只是一种示例,本实施例中对此不作任何限定。

例如,目标服务器(可以是云游戏服务器,也可以是云游戏服务器)可以在目标云游戏在服务器和客户端上运行过程中,获取到目标云游戏在服务器的渲染子过程、编码子过程、服务器的网络传输子过程中产生的运行参数(第一组运行参数),以及获取到目标云游戏在客户端的网络传输子过程、解码子过程、客户端的渲染子过程、操作响应子过程中产生的运行参数(第二组运行参数)。在获取到第一组运行参数和第二组运行参数之后,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数,进而获取目标云游戏的检测结果。

通过本实施例,获取在待检测的目标云游戏在服务器和客户端上运行过程中服务器上的第一组运行参数和客户端上的第二组运行参数,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;根据目标检测参数获取目标云游戏的检测结果,解决了相关技术中采用单一技术指标来量化用户体验,由于各指标之间缺少相关性,导致用户体验的评价结果不准确的技术问题,提高了问题分析与跟进的效率,提升了云游戏质量评价的准确性。

下面结合图2对本实施例中的云游戏的检测方法进行说明。

在步骤s202中,获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数。

对于目标云游戏,可以针对服务器和客户端分别进行运行参数统计,获取在服务器上的第一组运行参数和客户端上的第二组运行参数。

针对云游戏质量上报数据项包括的评价指标,可以针对服务器和客户端的不同子过程,可以分别进行运行参数的统计。

作为一种可选的实施方案,获取在待检测的目标云游戏在服务器和客户端上运行过程中服务器上的第一组运行参数包括:获取目标云游戏在服务器上运行过程中目标云游戏的每一帧的编码耗时、渲染耗时、发送时间戳,其中,第一组运行参数包括目标云游戏在服务器的渲染子过程、编码子过程、服务器的网络传输子过程中产生的运行参数,目标云游戏在编码子过程中产生的运行参数包括每一帧的编码耗时,目标云游戏在服务器的渲染子过程中产生的运行参数包括每一帧的渲染耗时,目标云游戏在服务器的网络传输子过程中产生的运行参数包括每一帧的发送时间戳。

在待检测的目标云游戏在服务器和客户端上运行过程中,可以将运行过程划分为多个子过程。对于服务器,服务器的运行过程可以包括:渲染子过程、编码子过程、服务器的网络传输子过程。对于客户端,客户端的运行过程可以包括:网络传输子过程、解码子过程、客户端的渲染子过程、操作响应子过程。

对于服务器侧,可以在编码、网络、渲染,响应几个环节中,标记相应的时间戳与耗时。可以获取目标云游戏的每一帧的编码耗时,作为目标云游戏在编码子过程中产生的运行参数的一种,获取目标云游戏的每一帧的渲染耗时,作为目标云游戏在渲染子过程中产生的运行参数的一种,获取目标云游戏的每一帧的发送时间戳,作为目标云游戏在网络传输子过程中产生的运行参数的一种。

通过本实施例,通过获取目标云游戏在服务器上运行过程中目标云游戏的每一帧的编码耗时、渲染耗时、发送时间戳,可以对运行环节进行细分定位,定位出服务器上的运行情况,提高用户体验质量评价的准确性。

作为一种可选的实施方案,获取在待检测的目标云游戏在服务器和客户端上运行过程中客户端上的第二组运行参数可以包括:获取目标云游戏在客户端上运行过程中目标云游戏的每一帧的到达时间戳、解码耗时、渲染耗时,其中,第二组运行参数包括在客户端上分别获取到的目标云游戏在客户端的网络传输子过程、解码子过程、客户端的渲染子过程、操作响应子过程中产生的运行参数,目标云游戏在客户端的网络传输子过程中产生的运行参数包括每一帧的到达时间戳,目标云游戏在解码子过程中产生的运行参数包括解码耗时,目标云游戏在客户端的渲染子过程中产生的运行参数包括渲染耗时。

对于用户侧,可以在解码、网络、渲染,响应几个环节中,标记相应的时间戳与耗时。可以获取目标云游戏的每一帧的到达时间戳,作为目标云游戏在客户端的网络传输子过程中产生的运行参数的一种,获取目标云游戏的每一帧的解码耗时,作为目标云游戏在解码子过程中产生的运行参数的一种,获取目标云游戏的每一帧的渲染耗时,作为目标云游戏在客户端的渲染子过程中产生的运行参数的一种。

通过本实施例,通过获取目标云游戏在客户端上运行过程中目标云游戏的每一帧的到达时间戳、解码耗时、渲染耗时,可以对运行环节进行细分定位,定位客户端上的运行情况,提高用户体验质量评价的准确性。

例如,在如图3所示的架构中,在云游戏的运行过程中,在编码、网络、解码、渲染,操作响应几个环节中,标记相应的时间戳与耗时。其中,响应耗时是指用户侧写入了时间戳,带到服务器,服务器再返回到用户侧。用户侧的当前时间减去刚才写入的时间,就是响应耗时。

在云游戏的运行过程中,数据的传输方向包括但不限于:

(1)用户侧-服务器(传输用户输入)

在上述过程中,记录的指标为:操控响应延迟,操作响应延迟包含编码耗时。

其中,操作响应延迟主要是指:从用户触发输入,经由网络传输用户输入指令到服务器,经过编码后,由服务器返回响应到用户端之间的时间延迟。上述操控响应延迟可以通过在用户触发输入时打上时间戳的方式进行统计。

(2)服务器-用户侧(传输视频帧)

参见图4,在服务器向客户端传输视频帧时,在数据点1将每一帧的编码耗时、渲染耗时、时间戳,序号写入到视频帧数据中。在数据点2,在每一帧到达后,用户侧记录本地的到达时间戳、解码耗时、渲染耗时。

因此,在上述过程中,记录的指标包括:编码耗时、解码耗时、渲染耗时(包括了两侧的渲染耗时)、网络rtt(round-triptime,往返时延)延迟。

需要说明的是,编码侧卡顿根据编码耗时确定:解码侧卡顿根据解码耗时确定;网络侧卡顿根据网络rtt延迟确定;响应卡顿根据操控响应延迟确定。

可选地,可以采用定时(5秒)上报与结束汇总上报的形式,将统计数据上报给后台统计服务器,汇总上报每个环节耗时的分布信息,包含详细的占比、次数。数据上报业务的执行方式可以根据需要进行限定,本实施例中对此不作具体限定。

对于用户侧,可以将统计数据上报给后台统计服务器,统计数据可以包括但不限于以下至少之一:编码耗时、解码耗时、渲染耗时、网络rtt延迟(rtt是用户侧到网络侧第一个服务器返回的时间)、操控响应延迟。

在步骤s204中,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数。

对于获取到的服务器上的第一组运行参数和客户端上的第二组运行参数(第一组运行参数和第二组运行参数是基于统计可以直接得到的数据),可以基于第一组运行参数和第二组运行参数来计算特定类型的检测参数。

需要说明的是,本实施例中的运行参数是基于统计得到的参数,而检测参数是基于运行参数经过计算得到的参数。

作为一种可选的实施方案,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数,包括:根据第一组运行参数和第二组运行参数确定目标云游戏的多种类型的目标检测参数,其中,多种类型的目标检测参数包括:卡顿类型的第一组检测参数、延迟类型的第二组检测参数。

后台统计服务器、客户端或者后台统计服务器可以根据统计数据,汇总编码、网络、解码、渲染、操作响应中的每个环节的耗时的分布,至少得到卡顿类型的第一组检测参数和延迟类型的第二组检测参数。

云游戏质量上报数据项,可以包括如下基本指标:卡顿类和延迟类。对于卡顿类的检测参数,可以根据目标云游戏的运行过程设置不同类型的检测参数。

通过本实施例,根据第一组运行参数和第二组运行参数确定目标云游戏的卡顿类型的第一组检测参数和延迟类型的第二组检测参数,可以保证卡顿类检测参数和延迟类检测参数确定的准确性,进而可以保证准确量化用户质量。

作为一种可选的实施方案,根据第一组运行参数和第二组运行参数确定目标云游戏的多种类型的目标检测参数,包括:根据第一组运行参数和第二组运行参数,确定服务器的编码子过程中出现的第一卡顿次数、服务器的网络传输子过程和客户端的网络传输子过程中出现的第二卡顿次数、客户端的解码子过程中出现的第三卡顿次数、客户端的操作响应子过程中出现的第四卡顿次数,其中,卡顿类型的第一组检测参数包括第一卡顿次数、第二卡顿次数、第三卡顿次数和第四卡顿次数。

卡顿类的上报数据项可以包括:编码侧卡顿,网络侧卡顿,解码侧卡顿和响应卡顿。其中,网络卡顿是网络原因引起,主要是网络波动,与rtt存在相关性,rtt是测试结果,网络卡顿是特定发生的事件;响应卡顿是用户操作时的卡顿。

相应地,根据第一组运行参数和第二组运行参数确定的卡顿类型的检测参数可以包括:编码子过程中出现的第一卡顿次数,网络传输子过程中出现的第二卡顿次数,解码子过程中出现的第三卡顿次数和操作响应子过程中出现的第四卡顿次数。

其中,渲染卡顿可以在终端渲染侧统计,统计方式如下:

(1)渲染侧定时统计每一帧渲染的间隔,通常33毫秒统计一次;

(2)统计周期到时,查看当前是否有渲染帧,如果有帧渲染,则将渲染时间记录到分布时间中,如果超过100毫秒还没有,标记一次卡顿,同时把每个阶段上报的数据记录到卡顿关联数据中,用来细分原因构成。

响应卡顿可以在用户侧、或者后台统计服务器统计,统计方式如下:

(1)用户触发输入时,带上本地时间戳,传递用户输入指令到服务器,经过编码后,时间戳返回给用户端;

(2)用户侧可以计算时间戳所记录的时间与本地当前时间的时间差。超过100毫秒标记为卡顿。

(3)上报本时间差的详细分布到后台统计服务器。

上述统计方式分别用于统计渲染时延和响应时延,并根据统计的渲染时延确定渲染卡顿,根据统计的响应时延确定响应卡顿。

通过本实施例,通过对编码侧卡顿、网络侧卡顿、解码侧卡顿和响应卡顿的次数进行统计,可以直观定位拆分卡顿的位置,提高评估的准确性。

对于延迟类的检测参数,可以根据目标云游戏的运行过程设置不同类型的检测参数。

作为一种可选的实施方案,根据第一组运行参数和第二组运行参数确定目标云游戏的多种类型的目标检测参数包括:根据第一组运行参数和第二组运行参数确定服务器的网络传输子过程和客户端的网络传输子过程中出现的网络rtt延迟、客户端的操作响应子过程中出现的操控响应延迟,其中,延迟类型的第二组检测参数包括rtt延迟和操控响应延迟。

延迟类的上报数据项可以包括:操控响应延迟和网络rtt延迟,其中,延迟是客观衡量指标,超过一定阀值就表现为卡顿。

操控响应延迟可以在用户侧统计,统计方式如下:

(1)用户触发输入时,带上本地时间戳,传递用户输入指令到服务器,经过编码后,时间戳返回给用户端;

(2)用户侧可以根据该时间戳记录的时间与本地当前时间的时间差,得到操作响应延迟。

网络rtt延迟可以在用户侧、或后台统计服务器统计,网络rtt延迟是用户侧到网络侧第一个服务器返回的时间。

需要说明的是,统计是上报耗时、时间戳、次数等,而卡顿是根据统计结果计算出来的。

通过本实施例,通过对操控响应延迟、网络rtt延迟进行统计,可以直观定位拆分卡顿的位置,提高评估的准确性。

云游戏质量上报数据项还可以包括如下基本指标:表现类和质量指标的配套条件,其中,

(1)表现类可以包括:渲染帧率,其中,渲染帧率是指用户画面出来的帧率(比如,30帧),是独立的概念;

(2)质量指标的配套条件可以包括:画面解析度,视频码率和音频码率。

在步骤s206中,根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

根据目标检测参数的参数信息,可以生成目标云游戏的检测结果,以显示目标云游戏在运行的过程中,服务器和用户侧的运行过程中出现的卡顿信息,以便生成用户体验质量评估数据。

作为一种可选的实施方案,根据目标检测参数,确定在服务器的运行过程和客户端的运行过程的部分或全部子过程中,目标云游戏出现的卡顿的次数,其中,服务器的运行过程包括服务器的渲染子过程、编码子过程和服务器的网络传输子过程,客户端的运行过程包括客户端的网络传输子过程、解码子过程、客户端的渲染子过程和操作响应子过程;获取用于表示次数的检测结果。

根据目标检测参数生成的目标云游戏的检测结果可以包括但不限于以下至少之一:服务器的运行过程和客户端的运行过程的各个子过程中的卡顿次数,响应卡顿率,渲染卡顿率。

其中,响应卡顿率、渲染卡顿率可以成对构成:

(1)响应卡顿率=卡过游戏次数/总游戏次数;

(2)渲染卡顿率=卡过游戏次数/总游戏次数。

例如,响应卡顿率为游戏响应卡过的比例,渲染卡顿率是本轮游戏里面卡过的渲染/总渲染。比如,每秒30帧的游戏,一共运行10秒钟。有2秒只有25帧(卡),那么卡顿率=2/10。

需要说明的是,卡顿率计算,配合游戏使用时间占比组合展示。比如,使用时长超过30秒的卡顿率、3分钟卡顿率、全局卡顿率等。卡顿率与游戏时长成正比。玩的越久,越可能卡。并且,对于前述卡顿类的检测参数或者延迟类的检测参数等,不同的检测参数可以用于确定相同或者不同的卡顿信息(延迟是客观衡量指标,超过一定阀值就表现为卡顿),具体需要的检测参数以及对应的卡顿信息可以根据需要进行设定,本实施例中对此不作具体限定。

在获取到用户侧(或者,服务器)上报的指标数据之后,可以自动创建实时报表。例如,如图5所示,图5示出了日趋势报表,由连续的分布柱形图加趋势线构成质量追踪数据,直观看出当前卡顿的是哪个阶段占比最大。

需要说明的是,图5仅为一种示例,云游戏质量上报数据指标可以包括比图5所示的更多的指标项。

通过本实施例,通过生成用于表示次数的检测结果,可以直观展示出卡顿的情况,以便进行趋势跟踪,确定质量问题的根源。

下面结合可选示例对本实施例中的云游戏的检测方法进行说明。如图6所示,本示例中的云游戏的检测方法可以包括以下步骤:

步骤1,获取云游戏过程中的质量上报数据项。

用户侧获取的质量上报数据项包括:卡顿类指标(编码侧卡顿,网络侧卡顿、解码侧卡顿、响应卡顿),延迟类指标(操控响应延迟,网络rtt延迟),表现类指标(渲染帧率),以及,质量指标的配套条件(画面解析度,视频码率,音频码率)。

步骤2,将获取的质量上报数据项发送给后台统计服务器。

在获取到质量上报数据项之后,用户侧可以周期性的将获取的质量上报数据项发送给后台统计服务器。

步骤3,根据质量上报数据项创建实时报表。

在获取到用户侧(或者,服务器)上报的指标数据之后,后台统计服务器可以自动创建实时报表。

通过本示例,将质量记录与上报体系覆盖云游戏架构的每个环节,可以准确量化用户质量,数据报表直观的体现了用户体验质量评价细分数据与趋势情况,直观定位拆分与趋势追踪质量问题的根源,可以大幅提高的问题分析与跟进的效率,为整体提升与评估云游戏质量状况提供了很好的质量评语依据,进而解决评估准确性、趋势跟踪、细分定位的问题。

需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本发明并不受所描述的动作顺序的限制,因为依据本发明,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本发明所必须的。

根据本发明实施例的又一方面,还提供了一种云游戏的检测装置,如图7所示,该装置包括:

(1)第一获取单元702,用于获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;

(2)确定单元704,用于根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;

(3)第二获取单元706,用于根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

可选地,上述云游戏的检测装置可以但不限于在待检测的目标云游戏在服务器和客户端上的运行过程中,在待检测的目标云游戏在服务器和客户端上的模拟运行过程中,或者其他对用户体验质量具有较高要求的应用在服务器和客户端上的运行过程中。

可选地,第一获取单元702可以用于执行步骤s202,确定单元704可以用于执行步骤s204,第二获取单元706可以用于执行步骤s206。

通过本实施例,获取在待检测的目标云游戏在服务器和客户端上运行过程中服务器上的第一组运行参数和客户端上的第二组运行参数,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;根据目标检测参数获取目标云游戏的检测结果,解决了相关技术中采用单一技术指标来量化用户体验,由于各指标之间缺少相关性,导致用户体验的评价结果不准确的技术问题,提高了问题分析与跟进的效率,提升了云游戏质量评价的准确性。

作为一种可选的实施方案,第一获取单元702包括:

第一获取模块,用于获取目标云游戏在服务器上运行过程中目标云游戏每一帧的编码耗时、渲染耗时、发送时间戳,其中,第一组运行参数包括目标云游戏在服务器的渲染子过程、编码子过程、服务器的网络传输子过程中产生的运行参数,目标云游戏在编码子过程中产生的运行参数包括每一帧的编码耗时,目标云游戏在服务器的渲染子过程中产生的运行参数包括每一帧的渲染耗时,目标云游戏在服务器的网络传输子过程中产生的运行参数包括每一帧的发送时间戳。

通过本实施例,通过获取目标云游戏在服务器上运行过程中目标云游戏的每一帧的编码耗时、渲染耗时、发送时间戳,可以对运行环节进行细分定位,定位出服务器上的运行情况,提高用户体验质量评价的准确性。

作为一种可选的实施方案,第一获取单元702包括:

第二获取模块,用于获取目标云游戏在客户端上运行过程中目标云游戏的每一帧的到达时间戳、解码耗时、渲染耗时,其中,第二组运行参数包括在客户端上分别获取到的目标云游戏在客户端的网络传输子过程、解码子过程、客户端的渲染子过程、操作响应子过程中产生的运行参数,目标云游戏在客户端的网络传输子过程中产生的运行参数包括每一帧的到达时间戳,目标云游戏在解码子过程中产生的运行参数包括解码耗时,目标云游戏在客户端的渲染子过程中产生的运行参数包括渲染耗时。

通过本实施例,通过获取目标云游戏在客户端上运行过程中目标云游戏的每一帧的到达时间戳、解码耗时、渲染耗时,可以对运行环节进行细分定位,定位出客户端上的运行情况,提高用户体验质量评价的准确性。

作为一种可选的实施方案,确定单元704包括:

第一确定模块,用于根据第一组运行参数和第二组运行参数确定目标云游戏的多种类型的目标检测参数,其中,多种类型的目标检测参数包括:卡顿类型的第一组检测参数、延迟类型的第二组检测参数。

通过本实施例,根据第一组运行参数和第二组运行参数确定目标云游戏的卡顿类型的第一组检测参数和延迟类型的第二组检测参数,可以保证卡顿类检测参数和延迟类检测参数确定的准确性,进而可以保证准确量化用户质量。

作为一种可选的实施方案,确定模块704包括:

第一确定子模块,用于根据第一组运行参数和第二组运行参数,确定服务器的编码子过程中出现的第一卡顿次数、服务器的网络传输子过程和客户端的网络传输子过程中出现的第二卡顿次数、客户端的解码子过程中出现的第三卡顿次数、客户端的操作响应子过程中出现的第四卡顿次数,其中,卡顿类型的第一组检测参数包括第一卡顿次数、第二卡顿次数、第三卡顿次数和第四卡顿次数。

通过本实施例,通过对编码侧卡顿、网络侧卡顿、解码侧卡顿和响应卡顿的次数进行统计,可以直观定位拆分卡顿的位置,提高评估的准确性。

作为一种可选的实施方案,确定模块704包括:

第二确定子模块,用于根据第一组运行参数和第二组运行参数确定服务器的网络传输子过程和客户端的网络传输子过程中出现的网络rtt延迟、客户端的操作响应子过程中出现的操控响应延迟,其中,延迟类型的第二组检测参数包括rtt延迟和操控响应延迟。

通过本实施例,通过对操控响应延迟、网络rtt延迟进行统计,可以直观定位拆分卡顿的位置,提高评估的准确性。

作为一种可选的实施方案,第二获取单元706包括:

(1)第二确定模块,用于根据目标检测参数,确定在服务器的运行过程和客户端的运行过程的部分或全部子过程中,目标云游戏出现的卡顿的次数,其中,服务器的运行过程包括服务器的渲染子过程、编码子过程和服务器的网络传输子过程,客户端的运行过程包括客户端的网络传输子过程、解码子过程、客户端的渲染子过程和操作响应子过程;

(2)第三获取模块,用于获取用于表示次数的检测结果。

通过本实施例,通过生成用于表示次数的检测结果,可以直观展示出卡顿的情况,以便进行趋势跟踪,确定质量问题的根源。

根据本发明的实施例的又一方面,还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;

s2,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;

s3,根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、rom(read-onlymemory,只读存储器)、ram(randomaccessmemory,随机存取器)、磁盘或光盘等。

根据本发明实施例的又一个方面,还提供了一种用于实施上述云游戏的检测方法的电子装置,如图8所示,该电子装置包括存储器802和处理器804,该存储器802中存储有计算机程序,该处理器804被设置为通过计算机程序执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述电子装置可以位于计算机网络的多个网络设备中的至少一个网络设备。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

s1,获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;

s2,根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;

s3,根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。

可选地,本领域普通技术人员可以理解,图8所示的结构仅为示意,电子装置也可以是智能手机(如android手机、ios手机等)、平板电脑、掌上电脑以及移动互联网设备(mobileinternetdevices,mid)、pad等终端设备。图8其并不对上述电子装置的结构造成限定。例如,电子装置还可包括比图8中所示更多或者更少的组件(如网络接口等),或者具有与图8所示不同的配置。

其中,存储器802可用于存储软件程序以及模块,如本发明实施例中的云游戏的检测方法和装置对应的程序指令/模块,处理器804通过运行存储在存储器802内的软件程序以及模块,从而执行各种功能应用以及数据处理,即实现上述的云游戏的检测方法。存储器802可包括高速随机存储器,还可以包括非易失性存储器,如一个或者多个磁性存储装置、闪存、或者其他非易失性固态存储器。在一些实例中,存储器802可进一步包括相对于处理器804远程设置的存储器,这些远程存储器可以通过网络连接至终端。上述网络的实例包括但不限于互联网、企业内部网、局域网、移动通信网及其组合。其中,存储器802具体可以但不限于用于存储物品的样本特征与目标虚拟资源账号等信息。作为一种示例,如图8所示,上述存储器802中可以但不限于包括上述素材显示装置中的获取单元702、确定单元704和生成单元706。此外,还可以包括但不限于上述云游戏的检测装置中的其他模块单元,本示例中不再赘述。

可选地,上述的传输装置806用于经由一个网络接收或者发送数据。上述的网络具体实例可包括有线网络及无线网络。在一个实例中,传输装置806包括一个网络适配器(networkinterfacecontroller,nic),其可通过网线与其他网络设备与路由器相连从而可与互联网或局域网进行通讯。在一个实例中,传输装置806为射频(radiofrequency,rf)模块,其用于通过无线方式与互联网进行通讯。

此外,上述电子装置还包括:显示器808,用于显示质量上报数据项或者由质量上报数据项创建的实时报表;和连接总线810,用于连接上述电子装置中的各个模块部件。

需要说明的是,本发明实施例涉及的方法、装置、存储介质和电子装置可以是应用于由客户端、多个节点(接入网络中的任意形式的计算设备,如服务器、用户终端)通过网络通信的形式连接形成的分布式系统。

以分布式系统为区块链系统为例,参见图9,图9是根据本发明实施例的分布式系统应用于区块链系统的一个可选的结构示意图,该分布式系统100由多个节点200(接入网络中的任意形式的计算设备,如服务器、用户终端)和客户端300形成,节点200之间形成组成的p2p(peertopeer,点对点)网络,p2p协议是一个运行在tcp(transmissioncontrolprotocol,传输控制协议)之上的应用层协议。在分布式系统100中,任何机器如服务器、终端都可以加入而成为节点200,节点200包括硬件层、中间层、操作系统层和应用层。

参见图9示出的区块链系统中各节点的功能,涉及的功能包括:

1)路由,节点具有的基本功能,用于支持节点之间的通信。

节点除具有路由功能外,还可以具有以下功能:

2)应用,用于部署在区块链中,根据实际业务需求而实现特定业务,记录实现功能相关的数据形成记录数据,在记录数据中携带数字签名以表示任务数据的来源,将记录数据发送到区块链系统中的其他节点,供其他节点在验证记录数据来源以及完整性成功时,将记录数据添加到临时区块中。

例如,应用实现的业务包括:

2.1)钱包,用于提供进行电子货币的交易的功能,包括发起交易(即,将当前交易的交易记录发送给区块链系统中的其他节点,其他节点验证成功后,作为承认交易有效的响应,将交易的记录数据存入区块链的临时区块中;当然,钱包还支持查询电子货币地址中剩余的电子货币;

2.2)共享账本,用于提供账目数据的存储、查询和修改等操作的功能,将对账目数据的操作的记录数据发送到区块链系统中的其他节点,其他节点验证有效后,作为承认账目数据有效的响应,将记录数据存入临时区块中,还可以向发起操作的节点发送确认。

2.3)智能合约,计算机化的协议,可以执行某个合约的条款,通过部署在共享账本上的用于在满足一定条件时而执行的代码实现,根据实际的业务需求代码用于完成自动化的交易,例如查询买家所购买商品的物流状态,在买家签收货物后将买家的电子货币转移到商户的地址;当然,智能合约不仅限于执行用于交易的合约,还可以执行对接收的信息进行处理的合约。

3)区块链,包括一系列按照产生的先后时间顺序相互接续的区块(block),新区块一旦加入到区块链中就不会再被移除,区块中记录了区块链系统中节点提交的记录数据。

对于云游戏的检测方法,运行有目标云游戏的服务器和终端可以是区块链系统中的节点,将目标云游戏在运行的过程中的第一组运行参数和第二组运行参数进行提交,记录到区块链中。

参见图10,图10是根据本发明实施例的区块结构的一个可选的示意图,每个区块中包括本区块存储交易记录(或者,运行参数)的哈希值(本区块的哈希值)、以及前一区块的哈希值,各区块通过哈希值连接形成区块链。另外,区块中还可以包括有区块生成时的时间戳等信息。区块链(blockchain),本质上是一个去中心化的数据库,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了相关的信息,用于验证其信息的有效性(防伪)和生成下一个区块。

可选地,在本实施例中,本领域普通技术人员可以理解上述实施例的各种方法中的全部或部分步骤是可以通过程序来指令终端设备相关的硬件来完成,该程序可以存储于一计算机可读存储介质中,存储介质可以包括:闪存盘、只读存储器(read-onlymemory,rom)、随机存取器(randomaccessmemory,ram)、磁盘或光盘等。

上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。

上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本发明各个实施例方法的全部或部分步骤。

在本发明的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。

在本申请所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。

作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

以上仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

技术特征:

1.一种云游戏的检测方法,其特征在于,包括:

获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;

根据所述第一组运行参数和所述第二组运行参数确定所述目标云游戏的目标检测参数;

根据所述目标检测参数获取所述目标云游戏的检测结果,其中,所述检测结果用于表示在所述服务器的运行过程和所述客户端的运行过程中所述目标云游戏出现的卡顿信息。

2.根据权利要求1所述的方法,其特征在于,获取所述目标云游戏在所述服务器上的所述第一组运行参数包括:

获取所述目标云游戏在所述服务器上运行过程中所述目标云游戏每一帧的编码耗时、渲染耗时、发送时间戳,其中,所述第一组运行参数包括所述目标云游戏在所述服务器的渲染子过程、编码子过程、所述服务器的网络传输子过程中产生的运行参数,所述目标云游戏在所述编码子过程中产生的运行参数包括所述每一帧的编码耗时,所述目标云游戏在所述服务器的所述渲染子过程中产生的运行参数包括所述每一帧的渲染耗时,所述目标云游戏在所述服务器的网络传输子过程中产生的运行参数包括所述每一帧的发送时间戳。

3.根据权利要求1所述的方法,其特征在于,获取所述目标云游戏在所述客户端上的所述第二组运行参数包括:

获取所述目标云游戏在所述客户端上运行过程中所述目标云游戏的每一帧的到达时间戳、解码耗时、渲染耗时,其中,所述第二组运行参数包括在所述客户端上分别获取到的所述目标云游戏在所述客户端的网络传输子过程、解码子过程、所述客户端的渲染子过程、操作响应子过程中产生的运行参数,所述目标云游戏在所述客户端的网络传输子过程中产生的运行参数包括所述每一帧的到达时间戳,所述目标云游戏在所述解码子过程中产生的运行参数包括所述解码耗时,所述目标云游戏在所述客户端的渲染子过程中产生的运行参数包括所述渲染耗时。

4.根据权利要求1所述的方法,其特征在于,所述根据所述第一组运行参数和所述第二组运行参数确定所述目标云游戏的目标检测参数,包括:

根据所述第一组运行参数和所述第二组运行参数确定所述目标云游戏的多种类型的目标检测参数,其中,所述多种类型的目标检测参数包括:卡顿类型的第一组检测参数、延迟类型的第二组检测参数。

5.根据权利要求4所述的方法,其特征在于,所述根据所述第一组运行参数和所述第二组运行参数确定所述目标云游戏的多种类型的目标检测参数,包括:

根据所述第一组运行参数和所述第二组运行参数,确定所述服务器的编码子过程中出现的第一卡顿次数、所述服务器的网络传输子过程和所述客户端的网络传输子过程中出现的第二卡顿次数、所述客户端的解码子过程中出现的第三卡顿次数、所述客户端的操作响应子过程中出现的第四卡顿次数,其中,所述卡顿类型的第一组检测参数包括所述第一卡顿次数、所述第二卡顿次数、所述第三卡顿次数和所述第四卡顿次数。

6.根据权利要求4所述的方法,其特征在于,所述根据所述第一组运行参数和所述第二组运行参数确定所述目标云游戏的多种类型的目标检测参数,包括:

根据所述第一组运行参数和所述第二组运行参数确定所述服务器的网络传输子过程和所述客户端的网络传输子过程中出现的网络rtt延迟、所述客户端的操作响应子过程中出现的操控响应延迟,其中,所述延迟类型的第二组检测参数包括所述rtt延迟和所述操控响应延迟。

7.根据权利要求1至6中任一项所述的方法,其特征在于,根据所述目标检测参数获取所述目标云游戏的检测结果包括:

根据所述目标检测参数,确定在所述服务器的运行过程和所述客户端的运行过程的部分或全部子过程中,所述目标云游戏出现的卡顿的次数,其中,所述服务器的运行过程包括所述服务器的渲染子过程、编码子过程和所述服务器的网络传输子过程,所述客户端的运行过程包括所述客户端的网络传输子过程、解码子过程、所述客户端的渲染子过程和操作响应子过程;

获取用于表示所述次数的所述检测结果。

8.一种云游戏的检测装置,其特征在于,包括:

第一获取单元,用于获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;

确定单元,用于根据所述第一组运行参数和所述第二组运行参数确定所述目标云游戏的目标检测参数;

第二获取单元,用于根据所述目标检测参数获取所述目标云游戏的检测结果,其中,所述检测结果用于表示在所述服务器的运行过程和所述客户端的运行过程中所述目标云游戏出现的卡顿信息。

9.根据权利要求8所述的装置,其特征在于,所述第一获取单元包括:

第一获取模块,用于获取所述目标云游戏在所述服务器上运行过程中所述目标云游戏每一帧的编码耗时、渲染耗时、发送时间戳,其中,所述第一组运行参数包括所述目标云游戏在所述服务器的渲染子过程、编码子过程、所述服务器的网络传输子过程中产生的运行参数,所述目标云游戏在所述编码子过程中产生的运行参数包括所述每一帧的编码耗时,所述目标云游戏在所述服务器的所述渲染子过程中产生的运行参数包括所述每一帧的渲染耗时,所述目标云游戏在所述服务器的网络传输子过程中产生的运行参数包括所述每一帧的发送时间戳。

10.根据权利要求8所述的装置,其特征在于,所述第一获取单元包括:

第二获取模块,用于获取所述目标云游戏在所述客户端上运行过程中所述目标云游戏的每一帧的到达时间戳、解码耗时、渲染耗时,其中,所述第二组运行参数包括在所述客户端上分别获取到的所述目标云游戏在所述客户端的网络传输子过程、解码子过程、所述客户端的渲染子过程、操作响应子过程中产生的运行参数,所述目标云游戏在所述客户端的网络传输子过程中产生的运行参数包括所述每一帧的到达时间戳,所述目标云游戏在所述解码子过程中产生的运行参数包括所述解码耗时,所述目标云游戏在所述客户端的渲染子过程中产生的运行参数包括所述渲染耗时。

11.根据权利要求8所述的装置,其特征在于,所述确定单元包括:

第一确定模块,用于根据所述第一组运行参数和所述第二组运行参数确定所述目标云游戏的多种类型的目标检测参数,其中,所述多种类型的目标检测参数包括:卡顿类型的第一组检测参数、延迟类型的第二组检测参数。

12.根据权利要求11所述的装置,其特征在于,所述第一确定模块包括:

第一确定子模块,用于根据所述第一组运行参数和所述第二组运行参数,确定所述服务器的编码子过程中出现的第一卡顿次数、所述服务器的网络传输子过程和所述客户端的网络传输子过程中出现的第二卡顿次数、所述客户端的解码子过程中出现的第三卡顿次数、所述客户端的操作响应子过程中出现的第四卡顿次数,其中,所述卡顿类型的第一组检测参数包括所述第一卡顿次数、所述第二卡顿次数、所述第三卡顿次数和所述第四卡顿次数。

13.根据权利要求11所述的装置,其特征在于,所述第一确定模块包括:

第二确定子模块,用于根据所述第一组运行参数和所述第二组运行参数确定所述服务器的网络传输子过程和所述客户端的网络传输子过程中出现的网络rtt延迟、所述客户端的操作响应子过程中出现的操控响应延迟,其中,所述延迟类型的第二组检测参数包括所述rtt延迟和所述操控响应延迟。

14.一种计算机可读的存储介质,所述计算机可读的存储介质包括存储的程序,其中,所述程序运行时执行上述权利要求1至7任一项中所述的方法。

15.一种电子装置,包括存储器和处理器,其特征在于,所述存储器中存储有计算机程序,所述处理器被设置为通过所述计算机程序执行所述权利要求1至7任一项中所述的方法。

技术总结

本发明公开了一种云游戏的检测方法和装置、存储介质及电子装置。其中,该方法包括:获取目标云游戏在服务器上的第一组运行参数和客户端上的第二组运行参数;根据第一组运行参数和第二组运行参数确定目标云游戏的目标检测参数;根据目标检测参数获取目标云游戏的检测结果,其中,检测结果用于表示在服务器的运行过程和客户端的运行过程中目标云游戏出现的卡顿信息。通过本发明,解决了相关技术中采用单一技术指标来量化用户体验,由于各指标之间缺少相关性,导致用户体验的评价结果不准确的技术问题。

技术研发人员:华有为

受保护的技术使用者:腾讯科技(深圳)有限公司

技术研发日:.11.06

技术公布日:.02.21

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。