获取卡顿信息的方法及装置与流程

文档序号:12462515阅读:136来源:国知局
获取卡顿信息的方法及装置与流程
本公开涉及终端
技术领域
,尤其涉及一种获取卡顿信息的方法及装置。
背景技术
:随着终端技术的发展,人机交互的方式已经由最初的按键交互方式演变为如今的触屏交互方式,例如,用户通过简单的滑屏操作就可以使终端进行相应对的画面显示。然而,终端在显示画面的过程中,由于所绘制的图像帧中存在“掉帧”,画面中往往会出现卡顿,会导致画面的流畅性差,因此,卡顿信息已成为衡量画面流畅性的重要指标。其中,掉帧是指实际绘制时间超过正常绘制时间的图像帧。获取卡顿信息的过程可以为:获取一段时间内终端所绘制的图像帧的总帧数,并获取这段时间内掉帧的帧数,将掉帧的帧数与总帧数的比例作为卡顿信息。例如,10秒内终端绘制了300帧,掉帧的帧数为30,则卡顿信息为10%。在实现本公开的过程中,发明人发现相关技术至少存在以下问题:事实上,用户可能在一段时间内进行多个操作,例如,5秒内用户滑屏4次,则每个用户滑屏操作终端均需绘制30个图像帧。然而,每个绘制过程中所出现的掉帧情况很可能不同,例如,第一个绘制过程中掉2帧,第二个绘制过程中掉28帧,第三个绘制过程中掉0帧,第四个绘制过程中掉0帧,显然,每个绘制过程中的卡顿情况也不同,如果采用以上方案计算出的掉帧比例作为卡顿信息,并不能准确表征卡顿情况,因此不能准确衡量画面的流畅性。技术实现要素:为克服相关技术中存在的问题,本公开提供一种获取卡顿信息的方法及装置,所述技术方案如下:根据本公开实施例的第一方面,提供一种获取卡顿信息的方法,所述方法包括:获取多个图像帧的绘制时间;根据所述多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程;如果任一绘制过程中包括至少一个第一指定图像帧,将所述绘制过程确定为指定绘制过程,所述第一指定图像帧是指绘制时长大于第一时长的图像帧;将确定的指定绘制过程的个数与所述每个用户操作所对应的绘制过程的总个数的比例获取为第一卡顿信息。本公开实施例通过获取多个图像帧的绘制时间,确定每个用户操作对应的绘制过程,并针对性地对用户操作对应的绘制过程进行分析,从一个个绘制过程中确定指定绘制过程,以真实地反映究竟在哪个用户操作对应的绘制过程中出现了卡顿情况,进而,得到指定绘制过程的数量与每个用户操作所对应的绘制过程的总个数的比例,并将得到的比例获取为第一卡顿信息,从而准确地表征至少一个用户操作对应的绘制过程中出现卡顿情况的绘制过程的比例,能够准确衡量画面的流畅性。在一种可能实现方式中,所述根据所述多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程包括:确定所述多个图像帧中的第一图像帧和第二图像帧之间的时间间隔,所述第一图像帧和所述第二图像帧为任意两个相邻图像帧,且所述第一图像帧的起始时间在所述第二图像帧的起始时间之前,所述第一图像帧和所述第二图像帧之间的时间间隔是指所述第一图像帧的结束时间与所述第二图像帧的起始时间之差;如果所述第一图像帧和所述第二图像帧之间的时间间隔小于指定时长,将所述第一图像帧和所述第二图像帧确定为同一绘制过程中的图像帧;如果所述第一图像帧和所述第二图像帧之间的时间间隔不小于所述指定时长,将所述第一图像帧确定为第一绘制过程的尾图像帧,将所述第二图像帧确定为第二绘制过程的首图像帧,所述第一绘制过程与所述第二绘制过程是指两个不同的绘制过程;将确定的首图像帧或尾图像帧对应的绘制过程确定为一个用户操作所对应的绘制过程。在该实现方式中,提供了根据多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程的具体做法,将第一图像帧和第二图像帧之间的时间间隔与指定时长进行比较,如果第一图像帧和第二图像帧之间的时间间隔小于指定时长,说明该时间间隔符合终端在一个绘制过程中连续绘制两个图像帧的时间间隔,进而表明二者属于同一绘制过程,否则,说明该时间间隔更符合两个用户操作的时间间隔,进而表明二者分别属于两个不同的绘制过程,且第一图像帧为一个绘制过程的首图像帧,第二图像帧为另一绘制过程的尾图像帧。在一种可能实现方式中,所述将所述绘制过程确定为指定绘制过程之后,所述方法还包括:确定所述指定绘制过程中的至少一个指定绘制时段,所述至少一个指定绘制时段是指所述至少一个第一指定图像帧对应的绘制时段;将所述至少一个指定绘制时段获取为所述指定绘制过程的第二卡顿信息。在该实现方式中,提供了获取第二卡顿信息的方法,将每个绘制过程中的至少一个指定绘制时段获取为该指定绘制过程的第二卡顿信息,由于指定时段为第一指定图像帧对应的时段,其绘制时长超过正常绘制一个图像帧的时长,因此该指定绘制时段为卡顿时段,且可以准确地以第二卡顿信息表征。在一种可能实现方式中,所述确定所述指定绘制过程中的至少一个指定绘制时段包括:对于每个第一指定图像帧,如果所述第一指定图像帧之前或之后连续出现至少一个第二指定图像帧,将所述第一指定图像帧与所述至少一个第二指定图像帧对应的连续绘制时段确定为指定绘制时段,所述第二指定图像帧是指绘制时长大于第二时长的图像帧,所述第二时长不大于所述第一时长。在该实现方式中,提供了确定指定绘制时段的方法,通过确定第一指定图像帧之前或之后连续出现的至少一个第二指定图像帧,可以准确地地分析出指定绘制过程中导致持续卡顿的多个图像帧,并将这些图像帧对应的连续绘制时段确定为指定绘制时段,从而确定了一个影响范围较大、卡顿较严重的卡顿时段。在一种可能实现方式中,所述确定所述指定绘制过程中的至少一个指定绘制时段之后,所述方法还包括:确定所述指定绘制过程所包括的至少一个指定绘制时段的数量;将所述至少一个指定绘制时段的数量相加,得到数量和值,将所述数量和值作为所述指定绘制过程的第三卡顿信息。在该实现方式中,通过统计每个指定绘制过程所包括的指定绘制时段的数量和值,并以该数量和值作为第三卡顿信息,从而能够准确表征每个用户操作对应的指定绘制过程中出现卡顿的次数。根据本公开实施例的第二方面,提供一种获取卡顿信息的装置,所述装置包括:第一获取模块,用于获取多个图像帧的绘制时间;第一确定模块,用于根据所述多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程;第二确定模块,用于如果任一绘制过程中包括至少一个第一指定图像帧,将所述绘制过程确定为指定绘制过程,所述第一指定图像帧是指绘制时长大于第一时长的图像帧;第二获取模块,用于将确定的指定绘制过程的个数与所述每个用户操作所对应的绘制过程的总个数的比例获取为第一卡顿信息。在一种可能实现方式中,所述第一确定模块用于:确定所述多个图像帧中的第一图像帧和第二图像帧之间的时间间隔,所述第一图像帧和所述第二图像帧为任意两个相邻图像帧,且所述第一图像帧的起始时间在所述第二图像帧的起始时间之前,所述第一图像帧和所述第二图像帧之间的时间间隔是指所述第一图像帧的结束时间与所述第二图像帧的起始时间之差;如果所述第一图像帧和所述第二图像帧之间的时间间隔小于指定时长,将所述第一图像帧和所述第二图像帧确定为同一绘制过程中的图像帧;如果所述第一图像帧和所述第二图像帧之间的时间间隔大不小于所述指定时长,将所述第一图像帧确定为第一绘制过程的尾图像帧,将所述第二图像帧确定为第二绘制过程的首图像帧,所述第一绘制过程与所述第二绘制过程是指两个不同的绘制过程;将确定的首图像帧或尾图像帧对应的绘制过程确定为一个用户操作所对应的绘制过程。在一种可能实现方式中,所述装置还包括:第三确定模块,用于确定所述指定绘制过程中的至少一个指定绘制时段,所述至少一个指定绘制时段是指所述至少一个第一指定图像帧对应的绘制时段;第三获取模块,用于将所述至少一个指定绘制时段获取为所述指定绘制过程的第二卡顿信息。在一种可能实现方式中,所述第三确定模块用于:对于每个第一指定图像帧,如果所述第一指定图像帧之前或之后连续出现至少一个第二指定图像帧,将所述第一指定图像帧与所述至少一个第二指定图像帧对应的连续绘制时段确定为指定绘制时段,所述第二指定图像帧是指绘制时长大于第二时长的图像帧,所述第二时长不大于所述第一时长。在一种可能实现方式中,所述装置还包括:第四确定模块,用于确定所述指定绘制过程所包括的至少一个指定绘制时段的数量;第四获取模块,用于将所述至少一个指定绘制时段的数量相加,得到数量和值,将所述数量和值作为所述指定绘制过程的第三卡顿信息。根据本公开实施例的第三方面,提供一种获取卡顿信息的装置,所述装置包括:处理器;用于存储处理器可执行指令的存储器;其中,所述处理器被配置为:获取多个图像帧的绘制时间;根据所述多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程;如果任一绘制过程中包括至少一个第一指定图像帧,将所述绘制过程确定为指定绘制过程,所述第一指定图像帧是指绘制时长大于第一时长的图像帧;将确定的指定绘制过程的个数与所述每个用户操作所对应的绘制过程的总个数的比例获取为第一卡顿信息。应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。附图说明此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。图1是根据一示例性实施例示出的一种获取卡顿信息的方法流程图;图2是根据一示例性实施例示出的一种获取卡顿信息的方法流程图;图3是根据一示例性实施例示出的一种获取卡顿信息的装置框图;图4是根据一示例性实施例示出的一种获取卡顿信息的装置框图;图5是根据一示例性实施例示出的一种获取卡顿信息的装置框图;图6是根据一示例性实施例示出的一种获取卡顿信息的装置600的框图;图7是根据一示例性实施例示出的一种获取卡顿信息的装置700的框图。具体实施方式为使本公开的目的、技术方案和优点更加清楚,下面将结合附图对本公开实施方式作进一步地详细描述。这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。图1是根据一示例性实施例示出的一种获取卡顿信息的方法流程图,如图1所示,该实施例应用于终端,包括以下步骤:在步骤101中,获取多个图像帧的绘制时间。在步骤102中,根据多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程。在步骤103中,如果任一绘制过程中包括至少一个第一指定图像帧,将绘制过程确定为指定绘制过程,第一指定图像帧是指绘制时长大于第一时长的图像帧。在步骤104中,将确定的指定绘制过程的个数与每个用户操作所对应的绘制过程的总个数的比例获取为第一卡顿信息。本公开实施例通过获取多个图像帧的绘制时间,确定每个用户操作对应的绘制过程,并针对性地对用户操作对应的绘制过程进行分析,从一个个绘制过程中确定指定绘制过程,以真实地反映在究竟在哪个用户操作对应的绘制过程中出现了卡顿情况,进而,得到指定绘制过程的数量与每个用户操作所对应的绘制过程的总个数的比例,并将得到的比例获取为第一卡顿信息,从而准确地表征至少一个用户操作对应的绘制过程中出现卡顿情况的绘制过程的比例,能够准确衡量画面的流畅性。在一种可能实现方式中,根据多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程包括:确定多个图像帧中的第一图像帧和第二图像帧之间的时间间隔,第一图像帧和第二图像帧为任意两个相邻图像帧,且第一图像帧的起始时间在第二图像帧的起始时间之前,第一图像帧和第二图像帧之间的时间间隔是指第一图像帧的结束时间与第二图像帧的起始时间之差;如果第一图像帧和第二图像帧之间的时间间隔小于指定时长,将第一图像帧和第二图像帧确定为同一绘制过程中的图像帧;如果第一图像帧和第二图像帧之间的时间间隔不小于指定时长,将第一图像帧确定为第一绘制过程的尾图像帧,将第二图像帧确定为第二绘制过程的首图像帧,第一绘制过程与第二绘制过程是指两个不同的绘制过程;将确定的首图像帧或尾图像帧对应的绘制过程确定为一个用户操作所对应的绘制过程。在一种可能实现方式中,将绘制过程确定为指定绘制过程之后,方法还包括:确定指定绘制过程中的至少一个指定绘制时段,至少一个指定绘制时段是指至少一个第一指定图像帧对应的绘制时段;将至少一个指定绘制时段获取为指定绘制过程的第二卡顿信息。在一种可能实现方式中,确定指定绘制过程中的至少一个指定绘制时段包括:对于每个第一指定图像帧,如果第一指定图像帧之前或之后连续出现至少一个第二指定图像帧,将第一指定图像帧与至少一个第二指定图像帧对应的连续绘制时段确定为指定绘制时段,第二指定图像帧是指绘制时长大于第二时长的图像帧,第二时长不大于第一时长。在一种可能实现方式中,确定指定绘制过程中的至少一个指定绘制时段之后,方法还包括:确定指定绘制过程所包括的至少一个指定绘制时段的数量;将至少一个指定绘制时段的数量相加,得到数量和值,将数量和值作为指定绘制过程的第三卡顿信息。上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。在实际的应用场景中,本公开实施例用于获取某一显示设备的第一卡顿信息,该第一卡顿信息可以用于测评该显示设备的画面流畅性,或者作为分析卡顿原因的数据基础,该显示设备不限于终端。图2是根据一示例性实施例示出的一种获取卡顿信息的方法流程图,如图2所示,该实施例可以应用于任一设备,且该设备能够获取显示设备所绘制的图像帧,以显示设备和执行主体均为终端为例,该方法具体包括以下步骤:在步骤201中,获取多个图像帧的绘制时间。该步骤中,终端检测到用户操作时,可以绘制该用户操作对应的画面,并实时存储所绘制的图像帧的绘制时间,从而获取到多个图像帧的绘制时间,绘制时间包括起始时间和结束时间,多个图像帧是指两个或两个以上的图像帧,且绘制的时间顺序应该是连续的。事实上,本公开实施例对获取场景和对应的获取方式也不做限定。例如,厂商为了测评该终端的画面流畅性,在终端上设置图像帧存储区域,每当绘制一个图像帧时,均存储该图像帧的绘制时间,每当该存储区域的存储空间饱和时,终端获取已存储的多个图像帧的绘制时间,并清空该存储区域,以存储终端后续所绘制的图像帧。又例如,为了获知用户实际使用该终端的效果,为后续的终端系统升级做准备,服务器可以根据已存储的用户标识,向以该用户标识登录的终端发送卡顿信息获取指令,终端接收到卡顿信息获取指令后,开始存储自身所绘制的图像帧的绘制时间,当存储的绘制时间的数量达到卡顿信息获取指令所指示的预设数量时,终端获取已存储的多个图像帧的绘制时间,并将通过以下步骤获取到的第一卡顿信息发送至服务器。当然,当服务器作为执行主体时,终端可以将已存储的多个图像帧的绘制时间发送至服务器,由服务器执行以下步骤并获取到第一卡顿信息。在步骤202中,确定多个图像帧中的第一图像帧和第二图像帧之间的时间间隔。第一图像帧和第二图像帧为任意两个相邻图像帧,且第一图像帧的起始时间在第二图像帧的起始时间之前,第一图像帧和第二图像帧之间的时间间隔是指第一图像帧的结束时间与第二图像帧的起始时间之差。该步骤中,终端可以从每个图像帧的绘制时间中提取起始时间,按照时间顺序读取第一图像帧的结束时间和与之相邻的第二图像帧的起始时间,取二者的起始时间的差值作为时间间隔。参见表1,本公开实施例提供了一种图像帧的绘制时间表。需要说明的是,终端正常绘制一个图像帧的时长一般不超过17毫秒,且该表1中以年.月.日.时.分.秒.毫秒的形式为例表达绘制时间。表1图像帧标号绘制时间12016.6.18.10.20.33.006-2016.6.18.10.20.33.02322016.6.18.10.20.33.053-2016.6.18.10.20.33.08832016.6.18.10.20.33.100-2016.6.18.10.20.33.11642016.6.18.10.20.33.130-2016.6.18.10.20.33.14752016.6.18.10.20.33.167-2016.6.18.10.20.33.18462016.6.18.10.20.33.210-2016.6.18.10.20.33.23572016.6.18.10.20.33.300-2016.6.18.10.20.33.31782016.6.18.10.20.33.327-2016.6.18.10.20.33.34492016.6.18.10.20.33.360-2016.6.18.10.20.33.377102016.6.18.10.20.33.400-2016.6.18.10.20.33.417112016.6.18.10.20.33.430-2016.6.18.10.20.33.447122016.6.18.10.20.33.452-2016.6.18.10.20.33.469根据表1,终端可以确定第一图像帧与第二图像帧之间的时间间隔,具体结果参见表2:表2在步骤203中,判断第一图像帧和第二图像帧之间的时间间隔是否小于指定时长,如果是,执行步骤204,如果否,执行步骤205。该步骤中,考虑到每个用户操作之间理应具备一段时间间隔,且用户操作的时间间隔通常远大于同一绘制过程中连续绘制图像帧的时间间隔,因此在划分每个用户操作对应的绘制过程时,以指定时长作为划分用户操作的界限,终端将第一图像帧和第二图像帧之间的时间间隔与指定时长进行比较,本公开实施例对指定时长的具体数值不做限定,例如,指定时长为51毫秒(3*17毫秒)。基于表2所示的绘制时间间隔,终端可以确定标号为1和2(2和3、3和4、4和5、5和6、7和8、8和9、9和10、10和11、11和12)之间的时间间隔小于指定时长,因此,终端对这10对图像帧执行步骤204。另外,终端也确定标号为6和7的图像帧之间的时间间隔不小于指定时长,因此对这一对图像帧执行步骤205。在步骤204中,将第一图像帧和第二图像帧确定为同一绘制过程中的图像帧。对于10对图像帧中的每对图像帧,其中每对图像帧之间的时间间隔均小于指定时长,符合终端在一个用户操作对应的绘制过程中连续绘制两个图像帧的时间间隔,进而说明这两个图像帧同属于一个用户操作对应的绘制过程。在步骤205中,将第一图像帧确定为第一绘制过程的尾图像帧,将第二图像帧确定为第二绘制过程的首图像帧。尾图像帧是指某一个用户操作对应的绘制过程中的最后一个图像帧。首图像帧是指某一个用户操作对应的绘制过程中的第一个图像帧。该步骤中,标号6和7的图像帧之间时间间隔不小于指定时长,说明终端在绘制标号6的图像帧之后,间隔了较长的一段时间才绘制标号7的图像帧,进而说明这两个图像帧分别属于两个用户操作对应的绘制过程,因此终端可以将标号为6的图像帧确定为第一绘制过程的尾图像帧,将标号为7的图像帧确定为第二绘制过程的首图像帧。其中,第一绘制过程与第二绘制过程是指两个不同的绘制过程。在步骤206中,将确定的首图像帧或尾图像帧对应的绘制过程确定为一个用户操作所对应的绘制过程。根据上述步骤202至步骤205,终端可以将标号为6的图像帧对应的绘制过程确定为一个绘制过程C1,将标号为7的图像帧对应的绘制过程确定为另一个绘制过程C2。由于标号为5和6的图像帧已确定为同一绘制过程中的图像帧,因此确定C1中还包括标号为5的图像帧,以此类推,终端可以确定C1中还包括标号为4(3、2、1)的图像帧。同上述确定过程,终端可以确定C2中还包括标号为8(9、10、11、12)的图像帧。在步骤207中,判断任一绘制过程中是否包括至少一个第一指定图像帧,如果是,将绘制过程确定为指定绘制过程,如果否,忽略该绘制过程。第一指定图像帧是指绘制时长大于第一时长的图像帧,第一时长大于终端正常绘制一个图像帧的时长,本公开实施例对第一时长不做具体限定。该步骤中,对于步骤206所确定的每个绘制过程,终端将该绘制过程中的每个图像帧的绘制时长与第一时长进行比较,如果该图像帧的绘制时长大于第一时长,将该图像帧确定为第一指定图像帧,如果任一绘制过程中包括至少一个第一指定图像帧,终端将该绘制过程确定为指定绘制过程。当然,如果某一绘制过程未包括第一指定图像帧,则终端忽略该绘制过程。基于表1的举例,参见表3,终端可以确定标号为1(2、3、4、5、6、7、8、9、10、11、12)的图像帧的绘制时长为17(35、16、17、17、25、17、17、17、17、17、)毫秒,以第一时长为34毫秒为例,终端可以将标号为2的图像帧确定为第一指定图像帧,进而将绘制过程C1确定为指定绘制过程。表3在步骤208中,将确定的指定绘制过程的个数与每个用户操作所对应的绘制过程的总个数的比例获取为第一卡顿信息。通过步骤206,终端可以确定每个用户操作对应的绘制过程为C1或C2,进而确定每个用户操作对应的绘制过程的总个数为2;通过以上步骤207,终端可以确定指定绘制过程为C1,进而确定指定绘制过程的个数为1,因此,终端可以将1/2获取为第一卡顿信息,从而准确地表征两个用户操作对应的绘制过程中,有一个绘制过程出现了卡顿情况。事实上,终端在将绘制过程确定为指定绘制过程之后,还可以获取其他可以表征卡顿情况的卡顿信息,例如,表征卡顿时段的第二卡顿信息,终端获取第二卡顿信息的方式可以为:确定指定绘制过程中的至少一个指定绘制时段;将至少一个指定绘制时段获取为指定绘制过程的第二卡顿信息。该举例中,至少一个指定绘制时段是指至少一个第一指定图像帧对应的绘制时段。例如,一个指定绘制过程C3中包括两个第一指定图像帧F1和F2,F1的绘制时间为2016.6.19.10.20.33.007-2016.6.19.10.20.33.047,绘制时长为40毫秒,F2的绘制时间为2016.6.19.10.20.33.060-2016.6.19.10.20.33.096,绘制时长为36毫秒,因此,终端可以确定C3在2016.6.19.10.20.33.007-2016.6.19.10.20.33.096出现了为时89毫秒的卡顿。在实际场景中,如果终端绘制一个图像帧的时间越长,则卡顿情况越严重,因此很容易被用户察觉到,因此当一个用户操作对应的绘制过程中包括第一指定图像帧,终端就可以确定该绘制过程中出现卡顿。进一步地,如果在该第一指定图像帧之前或之后又出现掉帧,即使该图像帧的绘制时长小于第一时长(但大于终端正常绘制一个图像帧的时长),也可以表明这次卡顿很严重且影响范围大,因此,基于上述关于第二卡顿信息的举例,本公开实施例还提供了另一种确定指定绘制时段的方式,该确定方式为:对于每个第一指定图像帧,如果第一指定图像帧之前或之后连续出现至少一个第二指定图像帧,终端将第一指定图像帧与至少一个第二指定图像帧对应的连续绘制时段确定为指定绘制时段。其中,第二指定图像帧是指绘制时长大于第二时长的图像帧,第二时长不大于第一时长,当然,第二时长理应不小于终端正常绘制一个图像帧的时长。以第一时长为34毫秒为例,第二时长可以为17毫秒。根据第一图像帧和第二图像帧的定义可以看出,第一图像帧也可以视为第二图像帧的一种,因此如果某一第一指定图像帧之前或之后出现又一个第一指定图像帧,终端的处理方式与出现第二指定图像帧的处理方式同理。假设指定绘制过程C4中包括一个第一指定图像帧F3和F3之后连续出现的两个第二指定图像帧F4和F5,其中,F3的绘制时间为:2016.6.19.8.20.33.007-2016.6.19.8.20.33.047,绘制时长为40毫秒,F4的绘制时间为2016.6.19.8.20.33.060-2016.6.19.8.20.33.080,绘制时长为20毫秒,F5的绘制时间为:2016.6.19.8.20.33.097-2016.6.19.8.20.33.115,绘制时长为18毫秒,终端可以将2016.6.19.8.20.33.007-2016.6.19.8.20.33.115获取为C4的第二卡顿信息,以表征C4在2016.6.19.8.20.33.007-2016.6.19.8.20.33.115时间内出现了为时108毫秒的卡顿。基于上述任一种方式确定的指定绘制时段,本公开实施例还提供了第三卡顿信息,该第三卡顿信息可以表征每次指定绘制过程中出现的卡顿次数,其获取方式可以为:终端确定指定绘制过程所包括的至少一个指定绘制时段的数量;将至少一个指定绘制时段的数量相加,得到数量和值,将数量和值作为指定绘制过程的第三卡顿信息。以指定绘制过程C3为例,终端可以确定C3中包括2个指定绘制时段(F1和F2对应的绘制时段),并将2作为第三卡顿信息,从而表征C3中出现了两次卡顿。本公开实施例通过获取多个图像帧的绘制时间,确定每个用户操作对应的绘制过程,并针对性地对用户操作对应的绘制过程进行分析,从一个个绘制过程中确定指定绘制过程,以真实地反映究竟在哪个用户操作对应的绘制过程中出现了卡顿情况,进而,得到指定绘制过程的数量与每个用户操作所对应的绘制过程的总个数的比例,并将得到的比例获取为第一卡顿信息,从而准确地表征至少一个用户操作对应的绘制过程中出现卡顿情况的绘制过程的比例,能够准确衡量画面的流畅性。另外,提供了根据多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程的具体方式,将第一图像帧和第二图像帧之间的时间间隔与指定时长进行比较,如果第一图像帧和第二图像帧之间的时间间隔小于指定时长,说明该时间间隔符合终端在一个绘制过程中连续绘制两个图像帧的时间间隔,进而表明二者属于同一绘制过程,否则,说明该时间间隔更符合两个用户操作的时间间隔,进而表明二者分别属于两个不同的绘制过程,且第一图像帧为一个绘制过程的首图像帧,第二图像帧为另一绘制过程的尾图像帧。另外,提供了获取第二卡顿信息的方法,将每个绘制过程中的至少一个指定绘制时段获取为该指定绘制过程的第二卡顿信息,由于指定时段为第一指定图像帧的绘制时段,其绘制时长超过正常绘制一个图像帧的时长,因此该指定绘制时段为卡顿时段,且可以准确地以第二卡顿信息表征。另外,提供了确定指定绘制时段的方法,通过确定第一指定图像帧之前或之后连续出现的至少一个第二指定图像帧,可以准确地地分析出指定绘制过程中导致持续卡顿的多个图像帧,并将这些图像帧对应的连续绘制时段确定为指定绘制时段,从而确定了一个影响范围较大、卡顿较严重的卡顿时段。另外,通过统计每个指定绘制过程所包括的指定绘制时段的数量和值,并以该数量和值作为第三卡顿信息,从而能够准确表征每个用户操作对应的指定绘制过程中出现卡顿的次数。图3是根据一示例性实施例示出的一种获取卡顿信息的装置框图。参照图3,该装置包括第一获取模块301,第一确定模块302、第二确定模块303和第二获取模块304。该第一获取模块301被配置为获取多个图像帧的绘制时间;该第一确定模块302被配置为根据多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程;该第二确定模块303被配置为如果任一绘制过程中包括至少一个第一指定图像帧,将绘制过程确定为指定绘制过程,第一指定图像帧是指绘制时长大于第一时长的图像帧该第二获取模块304被配置为将确定的指定绘制过程的个数与每个用户操作所对应的绘制过程的总个数的比例获取为第一卡顿信息。本公开实施例通过获取多个图像帧的绘制时间,确定每个用户操作对应的绘制过程,并针对性地对用户操作对应的绘制过程进行分析,从一个个绘制过程中确定指定绘制过程,以真实地反映究竟在哪个用户操作对应的绘制过程中出现了卡顿情况,进而,得到指定绘制过程的数量与每个用户操作所对应的绘制过程的总个数的比例,并将得到的比例获取为第一卡顿信息,从而准确地表征至少一个用户操作对应的绘制过程中出现卡顿情况的绘制过程的比例,能够准确衡量画面的流畅性。在一种可能实现方式中,该第一确定模块302被配置为:确定多个图像帧中的第一图像帧和第二图像帧之间的时间间隔,第一图像帧和第二图像帧为任意两个相邻图像帧,且第一图像帧的起始时间在第二图像帧的起始时间之前,第一图像帧和所述第二图像帧之间的时间间隔是指第一图像帧的结束时间与第二图像帧的起始时间之差;如果第一图像帧和第二图像帧之间的时间间隔小于指定时长,将第一图像帧和第二图像帧确定为同一绘制过程中的图像帧;如果第一图像帧和第二图像帧之间的时间间隔不小于指定时长,将第一图像帧确定为第一绘制过程的尾图像帧,将第二图像帧确定为第二绘制过程的首图像帧,第一绘制过程与第二绘制过程是指两个不同的绘制过程;将确定的首图像帧或尾图像帧对应的绘制过程确定为一个用户操作所对应的绘制过程。在一种可能实现方式中,基于图3的装置组成,参见图4,该装置还包括:第三确定模块305和第三获取模块306;该第三确定模块305被配置为确定指定绘制过程中的至少一个指定绘制时段,至少一个指定绘制时段是指至少一个第一指定图像帧对应的绘制时段;该第三获取模块306被配置为将至少一个指定绘制时段获取为指定绘制过程的第二卡顿信息。在一种可能实现方式中,该第三确定模块305被配置为:对于每个第一指定图像帧,如果第一指定图像帧之前或之后连续出现至少一个第二指定图像帧,将第一指定图像帧与至少一个第二指定图像帧对应的连续绘制时段确定为指定绘制时段,第二指定图像帧是指绘制时长大于第二时长的图像帧,第二时长不大于第一时长。在一种可能实现方式中,基于图4的装置组成,参见图5,该装置还包括:第四确定模块307和第四获取模块308;该第四确定模块307被配置为确定指定绘制过程所包括的至少一个指定绘制时段的数量;第四获取模块308被配置为将至少一个指定绘制时段的数量相加,得到数量和值,将数量和值作为指定绘制过程的第三卡顿信息。上述所有可选技术方案,可以采用任意结合形成本公开的可选实施例,在此不再一一赘述。需要说明的是:上述实施例提供的获取卡顿信息的装置在获取卡顿信息时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的获取卡顿信息的装置与获取卡顿信息的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。图6是根据一示例性实施例示出的一种获取卡顿信息的装置600的框图。例如,装置600可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等。参照图6,装置600可以包括以下一个或多个组件:处理组件602,存储器604,电源组件606,多媒体组件608,音频组件610,输入/输出(I/O)的接口612,传感器组件614,以及通信组件616。处理组件602通常控制装置600的整体操作,诸如与显示,电话呼叫,数据通信,相机操作和记录操作相关联的操作。处理组件602可以包括一个或多个处理器620来执行指令,以完成上述的方法的全部或部分步骤。此外,处理组件602可以包括一个或多个模块,便于处理组件602和其他组件之间的交互。例如,处理组件602可以包括多媒体模块,以方便多媒体组件608和处理组件602之间的交互。存储器604被配置为存储各种类型的数据以支持在装置600的操作。这些数据的示例包括用于在装置600上操作的任何应用程序或方法的指令,联系人数据,电话簿数据,消息,图片,视频等。存储器604可以由任何类型的易失性或非易失性存储设备或者它们的组合实现,如静态随机存取存储器(SRAM),电可擦除可编程只读存储器(EEPROM),可擦除可编程只读存储器(EPROM),可编程只读存储器(PROM),只读存储器(ROM),磁存储器,快闪存储器,磁盘或光盘。电源组件606为装置600的各种组件提供电力。电源组件606可以包括电源管理系统,一个或多个电源,及其他与为装置600生成、管理和分配电力相关联的组件。多媒体组件608包括在所述装置600和用户之间的提供一个输出接口的屏幕。在一些实施例中,屏幕可以包括液晶显示器(LCD)和触摸面板(TP)。如果屏幕包括触摸面板,屏幕可以被实现为触摸屏,以接收来自用户的输入信号。触摸面板包括一个或多个触摸传感器以感测触摸、滑动和触摸面板上的手势。所述触摸传感器可以不仅感测触摸或滑动动作的边界,而且还检测与所述触摸或滑动操作相关的持续时间和压力。在一些实施例中,多媒体组件608包括一个前置摄像头和/或后置摄像头。当装置600处于操作模式,如拍摄模式或视频模式时,前置摄像头和/或后置摄像头可以接收外部的多媒体数据。每个前置摄像头和后置摄像头可以是一个固定的光学透镜系统或具有焦距和光学变焦能力。音频组件610被配置为输出和/或输入音频信号。例如,音频组件610包括一个麦克风(MIC),当装置600处于操作模式,如呼叫模式、记录模式和语音识别模式时,麦克风被配置为接收外部音频信号。所接收的音频信号可以被进一步存储在存储器604或经由通信组件616发送。在一些实施例中,音频组件610还包括一个扬声器,用于输出音频信号。I/O接口612为处理组件602和外围接口模块之间提供接口,上述外围接口模块可以是键盘,点击轮,按钮等。这些按钮可包括但不限于:主页按钮、音量按钮、启动按钮和锁定按钮。传感器组件614包括一个或多个传感器,用于为装置600提供各个方面的状态评估。例如,传感器组件614可以检测到装置600的打开/关闭状态,组件的相对定位,例如所述组件为装置600的显示器和小键盘,传感器组件614还可以检测装置600或装置600一个组件的位置改变,用户与装置600接触的存在或不存在,装置600方位或加速/减速和装置600的温度变化。传感器组件614可以包括接近传感器,被配置用来在没有任何的物理接触时检测附近物体的存在。传感器组件614还可以包括光传感器,如CMOS或CCD图像传感器,用于在成像应用中使用。在一些实施例中,该传感器组件614还可以包括加速度传感器,陀螺仪传感器,磁传感器,压力传感器或温度传感器。通信组件616被配置为便于装置600和其他设备之间有线或无线方式的通信。装置600可以接入基于通信标准的无线网络,如WiFi,2G或3G,或它们的组合。在一个示例性实施例中,通信组件616经由广播信道接收来自外部广播管理系统的广播信号或广播相关信息。在一个示例性实施例中,所述通信组件616还包括近场通信(NFC)模块,以促进短程通信。例如,在NFC模块可基于射频识别(RFID)技术,红外数据协会(IrDA)技术,超宽带(UWB)技术,蓝牙(BT)技术和其他技术来实现。在示例性实施例中,装置600可以被一个或多个应用专用集成电路(ASIC)、数字信号处理器(DSP)、数字信号处理设备(DSPD)、可编程逻辑器件(PLD)、现场可编程门阵列(FPGA)、控制器、微控制器、微处理器或其他电子元件实现,用于执行上述获取卡顿信息的方法:获取多个图像帧的绘制时间;根据多个图像帧的绘制时间,确定每个用户操作所对应的绘制过程;如果任一绘制过程中包括至少一个第一指定图像帧,将绘制过程确定为指定绘制过程,第一指定图像帧是指绘制时长大于第一时长的图像帧;将确定的指定绘制过程的个数与每个用户操作所对应的绘制过程的总个数的比例获取为第一卡顿信息。在示例性实施例中,还提供了一种包括指令的非临时性计算机可读存储介质,例如包括指令的存储器604,上述指令可由装置600的处理器620执行以完成上述方法。例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。图7是根据一示例性实施例示出的一种获取卡顿信息的装置700的框图。例如,装置700可以被提供为一服务器。参照图7,装置700包括处理组件722,其进一步包括一个或多个处理器,以及由存储器732所代表的存储器资源,用于存储可由处理组件722的执行的指令,例如应用程序。存储器732中存储的应用程序可以包括一个或一个以上的每一个对应于一组指令的模块。此外,处理组件722被配置为执行指令,以执行上述获取卡顿信息的方法。装置700还可以包括一个电源组件726被配置为执行装置700的电源管理,一个有线或无线网络接口750被配置为将装置700连接到网络,和一个输入输出(I/O)接口758。装置700可以操作基于存储在存储器732的操作系统,例如WindowsServerTM,MacOSXTM,UnixTM,LinuxTM,FreeBSDTM或类似。本领域技术人员在考虑说明书及实践这里的公开后,将容易想到本公开的其它实施方案。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本
技术领域
中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。当前第1页1 2 3 
当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1