一种帧率统计方法、装置及电子设备与流程

文档序号:33034552发布日期:2023-01-24 18:53阅读:43来源:国知局
一种帧率统计方法、装置及电子设备与流程

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.第三方面,本发明实施例提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现上述第一方面提供的任一帧率统计方法的步骤。
41.第四方面,本发明实施例提供了一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面提供的任一帧率统计方法的步骤。
42.第五方面,本发明实施例提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面提供的任一帧率统计方法的步骤。
43.本发明实施例有益效果:
44.以上可见,应用本发明实施例提供的方案,在对客户端运行过程中的各个显示画面进行帧率统计前,可以针对上述客户端,预先建立一个包括多个元素的预设数组。其中,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,且不同元素所对应的帧率不同。
45.这样,在进行帧率统计时,首先,可以获取客户端运行过程中的各个目标显示画面,然后,便可以在确定每个目标显示画面的帧率后,将预设数组中该目标显示画面的帧率对应的元素的数值增加指定数值,得到上述客户端的帧率统计结果。
46.基于此,应用本发明实施例提供的方案,可以通过预设数组中各个元素的数值所反映的客户端在运行过程中的帧率变化,确定该客户端在运行过程中各个显示画面的帧率分布。从而,可以在上报过程中,仅上报数组。由于数组的数据量较小,因此,可以实现降低上报至服务器的数据量,提高服务器的处理速度,进而,提高帧率统计的效率。
附图说明
47.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,还可以根据这些附图获得其他的实施例。
48.图1为本发明实施例提供的第一种帧率统计方法的流程示意图;
49.图2为本发明实施例提供的第二种帧率统计方法的流程示意图;
50.图3为本发明实施例提供的第三种帧率统计方法的流程示意图;
51.图4为本发明实施例提供的第四种帧率统计方法的流程示意图;
52.图5为本发明实施例提供的一种帧率统计装置的结构示意图;
53.图6为本发明实施例提供的一种电子设备的结构示意图。
具体实施方式
54.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员基于本技术所获得的所有其他实施例,都属于本发明保护的范围。
55.相关技术中,统计终端画面帧率的方法是通过游戏内部开发的帧率统计模块,实时统计游戏在终端上运行时的画面渲染速度来实现,并将所统计得到的各个帧率上报至服务器,以使服务器进行帧率统计。然而,在上述相关技术中,由于所上报的帧率的数据量过多,会使得服务器的处理速度较低。
56.为了解决上述技术问题,本发明实施例提供了一种帧率统计方法。
57.其中,该方法可以适用于各种需要对客户端过程中显示画面的帧率进行统计应用场景,例如,对电脑游戏运行过程中显示画面的帧率进行统计、对视频软件运行过程中显示画面的帧率进行统计等,并且,该方法可以应用于客户端,且上述客户端可以装载在笔记本电脑、平板电脑、台式电脑等各类电子设备中,以下简称电子设备。基于此,本发明实施例不对该方法的应用场景和执行主体进行限定。
58.其中,可选的,客户端可以通过自身的埋点程序,执行该方法。所谓埋点是数据采集领域(尤其是用户行为数据采集领域)的术语,指的是针对特定用户行为或事件进行捕获、处理和发送的相关技术及其实施过程。埋点的技术实质,是先监听软件应用运行过程中的事件,当需要关注的事件发生时进行判断和捕获。
59.本发明实施例提供的一种帧率统计方法,可以包括如下步骤:
60.获取所述客户端运行过程中的各个目标显示画面;
61.确定每个目标显示画面的帧率,并将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值,得到所述客户端的帧率统计结果;
62.其中,所述预设数组中包括多个元素,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,不同元素所对应的帧率不同;
63.将所述帧率统计结果上报至预设服务器。
64.以上可见,应用本发明实施例提供的方案,在对客户端运行过程中的各个显示画面进行帧率统计前,可以针对上述客户端,预先建立一个包括多个元素的预设数组。其中,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,且不同元素所对应的帧率不同。
65.这样,在进行帧率统计时,首先,可以获取客户端运行过程中的各个目标显示画面,然后,便可以在确定每个目标显示画面的帧率后,将预设数组中该目标显示画面的帧率对应的元素的数值增加指定数值,得到上述客户端的帧率统计结果。
66.基于此,应用本发明实施例提供的方案,可以通过预设数组中各个元素的数值所反映的客户端在运行过程中的帧率变化,确定该客户端在运行过程中各个显示画面的帧率分布。从而,可以在上报过程中,仅上报数组。由于数组的数据量较小,因此,可以实现降低上报至服务器的数据量,提高服务器的处理速度,进而,提高帧率统计的效率。
67.下面,结合附图,对本发明实施例提供的一种帧率统计方法进行具体说明。
68.图1为本发明实施例提供的一种帧率统计方法的流程示意图,如图1所示,该方法可以包括如下步骤s101-s103:
69.s101:获取客户端运行过程中的各个目标显示画面。
70.由于帧率统计是针对客户端在运行过程中各个显示画面的,因此,在对客户端进行帧率统计时,可以对上述客户端的运行状态进行检测。这样,在检测到上述客户端处于运行中时,可以获取上述客户端运行过程中的各个目标显示画面。
71.可选的,获取客户端运行过程中的全部显示画面,作为各个目标显示画面。
72.可选的,按照预设周期,在客户端的运行过程中,每隔预设周期对应的时间段,抽取客户端的一个显示画面,作为目标显示画面,从而,得到客户端在运行过程中的各个目标显示画面。
73.例如,预设周期为2秒,在客户端的运行过程中,每隔2秒抽取客户端的一个显示画面,作为目标显示画面。
74.此外,由于用户在客户端在运行过程中所需检测的阶段可以不同,因此,客户端可以依据用户的要求,获取处于客户端在运行过程中的不同阶段的各个目标显示画面,以得到用户所需的帧率统计结果。例如,游戏中的开启画面、游戏中玩家的打斗画面等。
75.可选的,一种具体实现方式中,如图2所示,为本发明实施例提供的一种帧率统计方法,上述步骤s101可以包括如下步骤s1011:
76.s1011:获取客户端运行过程中的指定时间段内的各个显示画面,作为各个目标显示画面。
77.在本具体实现方式中,基于用户所需预先设置指定时间段,这样,便可以在上述指定时间段内,获取上述客户端运行过程中各个显示画面,作为各个目标显示画面。
78.可选的,上述指定时间段可以为在检测到上述客户端开始运行的时刻到结束运行的时刻之间的时间段。
79.可选的,上述指定时间段可以为在检测到上述客户端开始运行的时刻到结束运行的时刻之间的任一时间段。
80.例如,若检测到客户端在14:30:02开始运行,在18:30:21结束运行,则上述指定时间段可以为从15:30:02到16:30:21之间的时间段。
81.s102:确定每个目标显示画面的帧率,并将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值,得到客户端的帧率统计结果;
82.其中,预设数组中包括多个元素,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,不同元素所对应的帧率不同。
83.由于各个显示画面的瞬时帧率可以较为准确地反映上述客户端在采集各个显示画面时上述客户端的运行状态。
84.基于此,可选的,一种具体实现方式中,每个目标显示画面的帧率包括该目标显示画面的瞬时帧率;其中,每个目标显示画面的瞬时帧率为采集到该目标显示画面时,该目标显示画面所对应的帧率。
85.在本具体实现方式中,在得到各个目标显示画面后,便可以针对每个目标显示画面,将采集到该目标显示画面时该目标显示画面所对应的帧率,确定为该目标显示画面的瞬时帧率。
86.这样,便可以通过客户端在运行所采集到的各个目标显示画面的瞬时帧率,对上述客户端的运行过程中的瞬时帧率变化进行统计,从而,便于用户对上述客户端的性能优劣进行分析。
87.为了减少进行帧率统计时,客户端向服务器上报的数据量,可以预先建立一个包括多个元素的预设数组。其中,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,且不同元素所对应的帧率不同。
88.例如,针对客户端p,预先设置一个预设数组[p1,p2,p3],其中,p1对应帧率10,p1的数值表示所获取的客户端p在运行过程中,各个目标显示画面的帧率中帧率为10的目标显示画面的数量;p2对应帧率15,p2的数值表示所获取的客户端p在运行过程中,各个目标显示画面的帧率中帧率为15的目标显示画面的数量;p3对应帧率20,p3的数值表示所获取的客户端p在运行过程中,各个目标显示画面的帧率中帧率为20的目标显示画面的数量。
[0089]
示例性的,在p1=10,p2=20,p3=30时,数组[10,20,30]表征客户端p在在运行过程中,各个目标显示画面的帧率中帧率为10的目标显示画面的数量为10,帧率为15的目标显示画面的数量为20,帧率为20的目标显示画面的数量为30。
[0090]
对于客户端而言,该客户端在运行过程中各个显示画面的帧率变化范围较大,然而,在运行过程中,该客户端的帧率变化可能集中在一个帧率范围中。因此,为了进一步降低客户端所需上报的数据量,可以在上述客户端的帧率变化范围中确定指定数量个帧率。
[0091]
基于此,可选的,一种具体实现方式中,本发明实施例提供了一种预设数组的建立方式,可以包括如下步骤11-13:
[0092]
步骤11:确定客户端运行过程中的显示画面的帧率变化范围;
[0093]
步骤12:在帧率变化范围中,确定指定数量个帧率;
[0094]
步骤13:确定包括指定数量个元素,且指定数量个元素分别对应指定数量个帧率中的一个帧率的数组,作为预设数组。
[0095]
在本具体实现方式中,在建立客户端的预设数组时,首先,可以确定客户端运行过程中的显示画面的帧率变化范围,从而,可以在上述帧率变化范围中,确定指定数量个帧率,进而,可以将包括指定数量个元素,且指定数量个元素分别对应指定数量个帧率中的一个帧率的数组,确定为预设数组。
[0096]
可选的,将上述帧率范围中的全部帧率的数量确定为指定数量。
[0097]
为了降低所需统计的帧率,可选的,在上述帧率范围中选取一部分帧率,并将所选取的各个帧率的数量确定为指定数量。
[0098]
因此,在建立客户端的预设数组时,首先,可以确定客户端运行过程中的显示画面的帧率变化范围。
[0099]
其中,上述帧率变化范围表征上述客户端在正常运行过程中的各个显示画面的帧率。
[0100]
所谓上述客户端的正常运行是指在客户端的运行过程中,没有出现断网、闪退等现象。
[0101]
例如,客户端a在运行过程中的显示画面的帧率变化范围为10-30,指定数量为8,则在上述10-30中选取帧率18、帧率20、帧率22、帧率23、帧率25、帧率27、帧率28和帧率30,并将包括元素a、元素b、元素c、元素d、元素e、元素f、元素g和元素h,其中,元素a对应帧率18、元素b对应帧率20、元素c对应帧率22、元素d对应帧率23、元素e对应帧率25、元素f对应帧率27、元素g对应帧率28、元素h对应帧率30的数组,作为预设数组。
[0102]
这样,在获取客户端运行过程中的各个目标显示画面后,便可以确定每个目标显示画面的帧率,并将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值。
[0103]
其中,上述预设数组可以为整数数组,也可以为浮点型数组。对此本发明实施例不做具体限定。
[0104]
例如,预设数组为整数数组。若所确定的目标显示画面的帧率为整数,则在上述预设数组中该帧率对应的数组元素对应的数值增加指定数值;若所确定的目标显示画面的帧率不是整数,则对该帧率进行取余处理,并根据处理后的帧率,在上述预设数组中该处理后的帧对应的数组元素对应的数值增加指定数值。
[0105]
示例性的,若该数组设置有30个元素,其中,元素1对应帧率1,元素2对应帧率2,元素3对应帧率3
……
依次类推,得到元素30对应帧率30。
[0106]
若fps》30,则fps_array[30]=fps_array[30]+1;
[0107]
否则,将fps_array[fps%30]=fps_array[fps%30]+1;
[0108]
其中,fps表征本发明实施例中目标显示画面的帧率;fps_array[30]表征本发明实施例中目标显示画面的帧率为30时,在预设数组中对应的元素的数值;fps_array[30]+1表征本发明实施例中在目标显示画面的帧率为30时,将预设数组中帧率为30对应的元素的数值加1;fps_array[fps%30]表征本发明实施例中目标显示画面的帧率小于30时,对该帧率进行取余处理后的帧率在预设数组中对应的元素的数值;fps_array[fps%30]+1表征本发明实施例中在目标显示画面的帧率小于30时,将该帧率进行取余处理后的帧率在预设数组中对应的元素的数值加1。
[0109]
例如,若该目标显示画面的帧率为28.2,则对该帧率进行取余处理后得到该帧的帧率为28,因此可以在上述预设数组中帧率28对应的元素所对应的数值增加1。
[0110]
需要说明的,为了保证上述预设数组可以存储该数组中最大帧率所对应的数值,可以在上述预设数组中另外设置一个指定元素,其中,该指定元素对应的帧率大于上述预设数组中的最大帧率,从而,可以保证预设数组中最大帧率所对应的数值的存储性,进而,提高帧率统计的有效性。
[0111]
这样,在针对全部目标显示画面执行上述步骤s102后,便可以将所得到该客户端的目标数组作为该客户端的帧率统计结果。
[0112]
s103:将帧率统计结果上报至预设服务器。
[0113]
在本具体实现方式中,在得到上述客户端的帧率统计结果后,便可以将该帧率统计结果上报至预设服务器,以使得预设服务器在接收到该帧率统计结果后,用户可以通过较少的数据量所反映的帧率变化,对上述客户端的性能优劣进行分析。
[0114]
可选的,由于不同配置的电子设备在运行上述客户端时,显示画面的帧率不同,因此,可以获取安装有上述客户端的电子设备的设备标识,并将上述设备标识和上述帧率统计结果上报至预设服务器。
[0115]
以上可见,应用本发明实施例提供的方案,在对客户端运行过程中的各个显示画面进行帧率统计前,可以针对上述客户端,预先建立一个包括多个元素的预设数组。其中,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,且不同元素所对应的帧率不同。
[0116]
这样,在进行帧率统计时,首先,可以获取客户端运行过程中的各个目标显示画面,然后,便可以在确定每个目标显示画面的帧率后,将预设数组中该目标显示画面的帧率对应的元素的数值增加指定数值,得到上述客户端的帧率统计结果。
[0117]
基于此,应用本发明实施例提供的方案,可以通过预设数组中各个元素的数值所反映的客户端在运行过程中的帧率变化,确定该客户端在运行过程中各个显示画面的帧率
分布。从而,可以在上报过程中,仅上报数组。由于数组的数据量较小,因此,可以实现降低上报至服务器的数据量,提高服务器的处理速度,进而,提高帧率统计的效率。
[0118]
为了提高利用数组统计帧率的准确率,在基于每个目标显示画面的帧率,在该目标显示画面的帧率对应的元素的数值增加指定数值之前,可以预先将预设数组中各个元素的数值进行归零,降低帧率统计的误差。
[0119]
基于此,可选的,一种具体实现方式中,如图3所示,为本发明实施例提供的一种帧率统计方法,还可以包括如下步骤s301:
[0120]
s301:将预设数组中的各个元素的数值归零。
[0121]
在本具体实现方式中,在执行上述步骤s102,确定每个目标显示画面的帧率,并将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值,得到客户端的帧率统计结果的步骤之前,可以将上述预设数组中的各个元素的数值归零,从而,降低帧率统计的误差,提高帧率统计的准确率。
[0122]
由于网络环境等原因,上述客户端在运行过程中可以出现断网、闪退等情况,此时,所统计到的显示画面的帧率可能为异常帧率,导致帧率统计结果不准确。因此,为了降低异常帧率对于帧率统计结果的影响,在所统计的的帧率为异常帧率时,可以忽略此次操作,重新执行本发明实施例提供的帧率统计方法。
[0123]
基于此,可选的,一种具体实现方式中,如图4所示,为本发明实施例提供的一种帧率统计方法,上述步骤s102中,确定每个目标显示画面的帧率,并将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值的步骤,可以包括如下步骤s1021-s1022:
[0124]
s1021:针对每个目标显示画面,确定该目标显示画面的帧率;若该目标显示画面的帧率,与预设数组中每个元素对应的帧率均不相同,则返回步骤s101;否则执行步骤s1022;
[0125]
s1022:将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值。
[0126]
在本具体实现方式中,在获取客户端运行过程中的各个目标显示画面后,便可以针对每个目标显示画面,确定该目标显示画面的帧率。
[0127]
若该目标显示画面的帧率,与预设数组中每个元素对应的帧率均不相同,则表征该目标显示画面的帧率可能为异常帧率,该异常帧率可能会对上述目客户端的帧率统计造成影响,因此,当该目标显示画面的帧率与预设数组中每个元素对应的帧率均不相同时,返回上述步骤s101,获取客户端运行过程中的各个目标显示画面,重新进行帧率统计。
[0128]
若该目标显示画面的帧率,与预设数组中所包括的各个元素对应的各个帧率中的任一帧率相同,则表征该显示画面的帧率为上述客户端的在正常运行时所产生的显示画面的帧率,因此,可以将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值。
[0129]
例如,指定数值为1。预设数组包括元素a、元素b、元素c、元素d、元素e、元素f、元素g和元素h,其中,元素a对应帧率18、元素b对应帧率20、元素c对应帧率22、元素d对应帧率23、元素e对应帧率25、元素f对应帧率27、元素g对应帧率28、元素h对应帧率30。
[0130]
若目标显示画面a对应的帧率为27,则将元素f对应的数值增加1;若目标显示画面b对应的帧率为1,则返回获取客户端运行过程中的各个目标显示画面,重新进行帧率统计。
[0131]
相应于上述本发明实施例提供的一种帧率统计方法,本发明实施例还提供了一种
帧率统计装置。
[0132]
图5为本发明实施例提供的一种帧率统计装置的结构示意图,如图5所示,该装置可以包括如下模块:
[0133]
画面获取模块510,用于获取客户端运行过程中的各个目标显示画面;
[0134]
帧率统计模块520,用于确定每个目标显示画面的帧率,并将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值,得到所述客户端的帧率统计结果;
[0135]
其中,所述预设数组中包括多个元素,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,不同元素所对应的帧率不同;
[0136]
结果上报模块530,用于将所述帧率统计结果上报至预设服务器。
[0137]
以上可见,应用本发明实施例提供的方案,在对客户端运行过程中的各个显示画面进行帧率统计前,可以针对上述客户端,预先建立一个包括多个元素的预设数组。其中,每个元素对应于一个帧率,每个元素的数值用于表示具有该元素所对应帧率的显示画面的数量,且不同元素所对应的帧率不同。
[0138]
这样,在进行帧率统计时,首先,可以获取客户端运行过程中的各个目标显示画面,然后,便可以在确定每个目标显示画面的帧率后,将预设数组中该目标显示画面的帧率对应的元素的数值增加指定数值,得到上述客户端的帧率统计结果。
[0139]
基于此,应用本发明实施例提供的方案,可以通过预设数组中各个元素的数值所反映的客户端在运行过程中的帧率变化,确定该客户端在运行过程中各个显示画面的帧率分布。从而,可以在上报过程中,仅上报数组。由于数组的数据量较小,因此,可以实现降低上报至服务器的数据量,提高服务器的处理速度,进而,提高帧率统计的效率。
[0140]
可选的,一种具体实现方式中,所述装置还包括:
[0141]
数组建立模块,用于确定所述客户端运行过程中的显示画面的帧率变化范围;在所述帧率变化范围中,确定指定数量个帧率;确定包括所述指定数量个元素,且所述指定数量个元素分别对应所述指定数量个帧率中的一个帧率的数组,作为预设数组。
[0142]
可选的,一种具体实现方式中,所述装置还包括:
[0143]
归零模块,用于在确定每个目标显示画面的帧率,并将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值,得到所述客户端的帧率统计结果之前,将预设数组中的各个元素的数值归零。
[0144]
可选的,一种具体实现方式中,所述帧率统计模块520具体用于:
[0145]
针对每个目标显示画面,确定该目标显示画面的帧率;
[0146]
若该目标显示画面的帧率,与所述预设数组中每个元素对应的帧率均不相同,则触发所述画面获取模块510;
[0147]
否则,将预设数组中,该目标显示画面的帧率对应的元素的数值增加指定数值。
[0148]
可选的,一种具体实现方式中,所述画面获取模块510具体用于:
[0149]
获取客户端运行过程中的指定时间段内的各个显示画面,作为各个目标显示画面。
[0150]
可选的,一种具体实现方式中,所述每个目标显示画面的帧率包括该目标显示画面的瞬时帧率;其中,所述每个目标显示画面的瞬时帧率为采集到该目标显示画面时,该目标显示画面所对应的帧率。
[0151]
相应于上述本发明实施例提供的一种帧率统计方法,本发明实施例还提供了一种电子设备,如图6所示,包括处理器601、通信接口602、存储器603和通信总线604,其中,处理器601,通信接口602,存储器603通过通信总线604完成相互间的通信,
[0152]
存储器603,用于存放计算机程序;
[0153]
处理器601,用于执行存储器603上所存放的程序时,实现上述本发明实施例提供的一种帧率统计方法的步骤。
[0154]
上述电子设备提到的通信总线可以是外设部件互连标准(peripheral component interconnect,pci)总线或扩展工业标准结构(extended industry standard architecture,eisa)总线等。该通信总线可以分为地址总线、数据总线、控制总线等。为便于表示,图中仅用一条粗线表示,但并不表示仅有一根总线或一种类型的总线。
[0155]
通信接口用于上述电子设备与其他设备之间的通信。
[0156]
存储器可以包括随机存取存储器(random access memory,ram),也可以包括非易失性存储器(non-volatile memory,nvm),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
[0157]
上述的处理器可以是通用处理器,包括中央处理器(central processing unit,cpu)、网络处理器(network processor,np)等;还可以是数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
[0158]
在本发明提供的又一实施例中,还提供了一种计算机可读存储介质,该计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一帧率统计方法的步骤。
[0159]
在本发明提供的又一实施例中,还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述实施例中任一帧率统计方法。
[0160]
在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机程序指令时,全部或部分地产生按照本发明实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(例如同轴电缆、光纤、数字用户线(dsl))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质,(例如,软盘、硬盘、磁带)、光介质(例如,dvd)、或者半导体介质(例如固态硬盘solid state disk(ssd))等。
[0161]
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖
非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
[0162]
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置实施例、电子设备实施例、计算机可读存储介质实施例,以及计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
[0163]
以上所述仅为本发明的较佳实施例,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均包含在本发明的保护范围内。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1