CN107451066A - 卡顿处理方法和装置、存储介质、终端 - Google Patents
卡顿处理方法和装置、存储介质、终端 Download PDFInfo
- Publication number
- CN107451066A CN107451066A CN201710723120.8A CN201710723120A CN107451066A CN 107451066 A CN107451066 A CN 107451066A CN 201710723120 A CN201710723120 A CN 201710723120A CN 107451066 A CN107451066 A CN 107451066A
- Authority
- CN
- China
- Prior art keywords
- frame
- picture
- image frame
- interim card
- image
- 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.)
- Withdrawn
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F11/00—Error detection; Error correction; Monitoring
- G06F11/36—Preventing errors by testing or debugging software
- G06F11/3668—Software testing
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- Quality & Reliability (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Processing Or Creating Images (AREA)
Abstract
本发明公开了一种卡顿处理方法和装置、存储介质、终端。其中,该方法包括:根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;获取在发生卡顿的时间点附近的画面帧序列;存储画面帧序列及画面帧序列中每帧画面的时间。本发明解决了相关技术中的测试方法记录卡顿的过程对系统的资源占用率较高的技术问题。
Description
技术领域
本发明涉及软件测试领域,具体而言,涉及一种卡顿处理方法和装置、存储介质、终端。
背景技术
游戏和视频播放软件在运行过程中,可能会出现卡顿的情况,严重影响用户体验。因此在移动游戏测试领域,发现应用的卡顿点,并对卡顿点当前状态进行保存是非常重要的。目前主要有两种解决方案对卡顿点进行判断并保存卡顿点当前状态。一种是通过在代码中插桩发现卡顿点并将卡顿状态输出的log(日志)中,一种方案是通过录制视频定位卡顿点。第一种方案通过在游戏代码中插桩的方式,在游戏中添加代码发现逻辑中的卡顿点,这种方法的好处是,可以找到引起卡顿问题的代码点,然而这种方式只适合开发人员在开发期去做,对于测试人员是不适合的。很多情况下测试人员没有相关代码权限,无法添加插桩代码,也无法做到自动化。对于第二种方案而言,目前有两种方法,一种是通过摄像机对测试过程进行录像,然后人工分析发现卡顿点,这种方式需要高速摄像头进行录制,并对视频进行分析,太过于耗费人工。另外一种方式是通过系统的接口同时获取系统当前画面帧判断卡顿点,在判断卡顿帧的同时用系统接口进行录屏,通过对帧间时间差数据制作图标,根据图形化的卡顿异常并结合视频发现并定位卡顿,第二种方案可以对卡顿点进行判断,但是卡顿点当前状态需要测试人员去分析视频和卡顿点时间进行比对,非常耗费人工时间。同时在系统级别上,录屏和获取帧使用了同一个接口,因此部分系统无法同时获取帧判断卡顿点和录制视频,并且,通过系统提供接口分析卡顿点和录制视频的方案,对系统的资源占用过大。获取渲染帧本身是一个比较耗的方案,然后再进行视频录取使得对系统的压力更大。此外,在根据帧间时间差数据确定卡顿点之后,虽然可以查看具体的卡顿点的时间,然而卡顿点发生时,具体系统前后情况是什么,必须配合视频来查看,这就需要测试人员自己去对比两个发生的时间点来确定卡顿点,并整理视频卡顿点发生时的情况,并进行复现,测试效率较低。
针对相关技术中的测试方法记录卡顿的过程对系统的资源占用率较高的技术问题,目前尚未提出有效的解决方案。
发明内容
本发明实施例提供了一种卡顿处理方法和装置、存储介质、终端,以至少解决相关技术中的测试方法记录卡顿的过程对系统的资源占用率较高的技术问题。
根据本发明实施例的一个方面,提供了一种卡顿处理方法,该方法包括:根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;获取在发生卡顿的时间点附近的画面帧序列;存储画面帧序列及画面帧序列中每帧画面的时间。
进一步地,存储画面帧序列及画面帧序列中每帧画面的时间包括:按照每帧画面的时间将画面帧序列转换为动画文件并存储。
进一步地,按照每帧画面的时间将画面帧序列转换为动画文件并存储包括:在将画面帧序列转换为动画文件时、或在播放动画文件时延长动画文件的播放时长。
进一步地,根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿包括:获取目标应用程序当前输出的画面为第一画面帧;确定第一画面帧与在第一画面帧之前的第二画面帧之间的帧间时间差;判断帧间时间差是否超过预设阈值;如果判断结果为是,则确定发生卡顿。
进一步地,确定第一画面帧与在第一画面帧之前的第二画面帧之间的帧间时间差包括:获取第一画面帧的前一帧画面为第二画面帧;判断第一画面帧的像素与第二画面帧的像素之间的差别是否超过预设阈值;在判断结果为否的情况下,丢弃第一画面帧,获取下一帧画面并将其作为第一画面帧,直至判断结果为是;在判断结果为是的情况下,确定第一画面帧与第二画面帧之间的帧间时间差。
进一步地,存储画面帧序列及画面帧序列中每帧画面的时间包括:如果判断出帧间时间差超过预设阈值,则根据帧间时间差和帧间时间差的前一个帧间时间差之间的差别进行插帧处理,其中,插帧处理为在画面帧序列中第一画面帧与第二画面帧之间插入预设数量的第二画面帧。
根据本发明实施例的另一方面,还提供了一种卡顿处理装置,该装置包括:确定单元,用于根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;获取单元,用于获取在发生卡顿的时间点附近的画面帧序列;存储单元,用于存储画面帧序列及画面帧序列中每帧画面的时间。
进一步地,存储单元包括:转换模块,用于按照每帧画面的时间将画面帧序列转换为动画文件并存储。
进一步地,转换模块包括:处理子模块,用于在将画面帧序列转换为动画文件时、或在播放动画文件时延长动画文件的播放时长。
进一步地,确定单元包括:获取模块,用于获取目标应用程序当前输出的画面为第一画面帧;第一确定模块,用于确定第一画面帧与在第一画面帧之前的第二画面帧之间的帧间时间差;判断模块,用于判断帧间时间差是否超过预设阈值;第二确定模块,用于如果判断结果为是,则确定发生卡顿。
进一步地,第一确定模块包括:获取子模块,用于获取第一画面帧的前一帧画面为第二画面帧;判断子模块,用于判断第一画面帧的像素与第二画面帧的像素之间的差别是否超过预设阈值;执行子模块,用于在判断结果为否的情况下,丢弃第一画面帧,获取下一帧画面并将其作为第一画面帧,直至判断结果为是;确定子模块,用于在判断结果为是的情况下,确定第一画面帧与第二画面帧之间的帧间时间差。
进一步地,存储单元包括:插帧模块,用于如果判断出帧间时间差超过预设阈值,则根据帧间时间差和帧间时间差的前一个帧间时间差之间的差别进行插帧处理,其中,插帧处理为在画面帧序列中第一画面帧与第二画面帧之间插入预设数量的第二画面帧。
根据本发明实施例的另一方面,还提供了一种存储介质,该存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行本发明的卡顿处理方法。
根据本发明实施例的另一方面,还提供了一种终端,该终端包括:一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,一个或多个程序被存储在存储器中,并且被配置为由一个或多个处理器执行,一个或多个程序包括用于执行本发明的卡顿处理方法。
在本发明实施例中,通过根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;获取在发生卡顿的时间点附近的画面帧序列;存储画面帧序列及画面帧序列中每帧画面的时间,解决了相关技术中的测试方法记录卡顿的过程对系统的资源占用率较高的技术问题,进而实现了能够降低记录卡顿的过程对系统资源的占用率的技术效果。
附图说明
此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
图1是根据本发明实施例的一种可选的卡顿处理方法的流程图;
图2是根据本发明实施例的另一种可选的卡顿处理方法的流程图;
图3是根据本发明实施例的一种可选的卡顿处理装置的示意图。
具体实施方式
为了使本技术领域的人员更好地理解本发明方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分的实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。
需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本发明的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本申请提供了一种卡顿处理方法的实施例。
图1是根据本发明实施例的一种可选的卡顿处理方法的流程图,如图1所示,该方法包括如下步骤:
步骤S101,根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;
步骤S102,获取在发生卡顿的时间点附近的画面帧序列;
步骤S103,存储画面帧序列及画面帧序列中每帧画面的时间。
目标应用程序可以是游戏、视频播放软件等能够输出画面帧的程序,目标应用程序可以是安装在系统中的软件,其中,系统可以是IOS、Windows或Android等任意一种系统,可选的,目标应用程序也可以是基于浏览器运行的脚本,本发明实施例对目标应用程序的类型不做具体限制。
根据目标应用程序输出的连续多个画面帧的比较结果可以确定是否发生卡顿。例如,如果判断出相邻的两个画面帧之间的帧间时间差超过预设阈值,则判断出在播放相邻两帧画面的第一帧时出现了卡顿,其中,预设阈值可以是根据多次检测相邻两个画面帧之间的帧间时间差的平均值确定的参考阈值。再如,以游戏为例,如果游戏在渲染画面帧时出现了卡顿,则相邻的两帧画面的像素之间的差距可能较小,那么通过判断目标应用程序输出的连续多个画面帧判断相邻的两个像素差距超过预设条件的画面帧之间的时间差是否超过预设阈值,如果判断结果为是,则说明可能在游戏进行渲染时出现了卡顿。上述举例并不对本发明所述的确定是否发生卡顿的方法进行限定,具体的卡顿确定方法可以视具体情况而定。
作为一种可选的实施例,根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿包括:获取目标应用程序当前输出的画面为第一画面帧;确定第一画面帧与在第一画面帧之前的第二画面帧之间的帧间时间差;判断帧间时间差是否超过预设阈值;如果判断结果为是,则确定发生卡顿。
进一步地,在确定第一画面帧与在第一画面帧之前的第二画面帧之间的帧间时间差时,可以采用如下步骤:获取第一画面帧的前一帧画面为第二画面帧;判断第一画面帧的像素与第二画面帧的像素之间的差别是否超过预设阈值;在判断结果为否的情况下,丢弃第一画面帧,获取下一帧画面并将其作为第一画面帧,直至判断结果为是;在判断结果为是的情况下,确定第一画面帧与第二画面帧之间的帧间时间差。
在确定出发生卡顿之后,获取在发生卡顿的时间点附近的画面帧序列,具体的,可以包括在发生卡顿的时间点之前和/或之后的预设数量的帧数的画面,获取的画面帧序列的数量可以是预先设置的。
在获取画面帧序列之后,存储画面帧序列及画面帧序列中每帧画面的时间,通过存储画面帧序列及每帧画面对应的时间可以使测试人员获知发生卡顿时的情况,仅需要在发生卡顿时记录卡顿点附近的画面帧序列,无需对目标应用程序的运行过程进行全程视频录制,减少了占用的系统资源。
在存储画面帧序列及画面帧序列中每帧画面的时间时,可以按照每帧画面的时间将画面帧序列转换为动画文件并存储,其中,动画文件可以是gif动态图,也可以是视频文件、Flash等任意的能够动态播放的文件,通过将画面帧序列转换为动画文件进行存储,可以方便测试人员对卡顿点附近的播放情况进行观看。
作为一种可选的实施例,还可以在将画面帧序列转换为动画文件、或在播放动画文件时延长动画文件的播放时长。具体而言,对于在播放时不可以调节播放速度的动画文件而言,如gif动态图等,可以在转换为动画文件时对画面帧序列进行处理,通过插帧等处理技术延长动画文件的播放时长,而对于在播放时可以调节播放速度的动画文件而言,可以在播放动画文件时延长动画文件的播放时长。
下面对插帧处理进行进一步的解释说明,在存储画面帧序列及画面帧序列中每帧画面的时间时,如果判断出当前的第一画面帧与在第一画面帧之前的第二画面帧的帧间时间差超过预设阈值,则根据第一画面帧与第二画面帧的帧间时间差和该帧间时间差的前一个帧间时间差之间的差别进行插帧处理,具体的,在画面帧序列中第一画面帧与第二画面帧之间插入预设数量的第二画面帧。
举例而言,假设第一画面帧Ii与在第一画面帧Ii之前的第二画面帧Ii-n的帧间时间差为ti,ti的前一个帧间时间差为ti-1,如果ti与ti-1之间的差值超过预设值,则确定插帧的个数f=ti/ti-1,在第一画面帧Ii与第二画面帧Ii-n之间插入f个第二画面帧Ii-n,在插帧之后,更新存储的画面帧序列以使存储的画面帧序列中的第一画面帧Ii与第二画面帧Ii-n之间存在f个第二画面帧Ii-n。
在插帧之后,可以根据插帧之后更新的画面帧序列生成动画文件,以降低动画文件在卡顿点附近的播放速度,延长动画文件在卡顿点之处的播放时长。
该实施例通过根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;获取在发生卡顿的时间点附近的画面帧序列;存储画面帧序列及画面帧序列中每帧画面的时间,解决了相关技术中的测试方法记录卡顿的过程对系统的资源占用率较高的技术问题,进而实现了能够降低记录卡顿的过程对系统资源的占用率的技术效果。
下面结合图2对上述实施例的一种具体实施例进行详细说明,如图2所示,该具体实施例提供的卡顿处理方法包括如下步骤:
步骤1,获取帧数据;
步骤2,帧数据是否与上一帧画面改变;
步骤3,是否为卡帧;
步骤4,将bitmaps帧数据生成gif;
步骤5,输出卡顿情况和具体卡顿点状态gif。
步骤1中所述的帧数据为当前输出的画面帧的数据,在获取帧数据之后,判断帧数据是否与上一帧画面改变,如果未改变,则继续返回步骤1,获取当前的帧数据,如果判断出发生改变,则执行步骤3,判断是否卡帧,也即,是否卡顿,通过判断帧间时间差是否超过预设阈值判断是否发生卡帧,如果判断出未发生卡帧,则返回步骤1,继续获取当前的帧数据,如果判断出发生卡帧,则将bitmaps(位图文件)帧数据生成gif动画文件,输出卡顿情况和具体卡顿点状态的gif。
具体而言,在步骤1时,获取帧数据没有特定的方案,可以通过在游戏的更新帧的逻辑中增加获取时间的方法,然后将两帧的时间相减得到帧间差。另外一种在安卓系统下,可以通过系统api(应用程序编程接口)获取帧数据。具体方法如下:
通过获取当前image(图像)对象,然后对当前image对象的像素buffer(缓存)信息提取出来,通过输入坐标(x,y)即可获取当前像素内容。然后对该bitmap根据位置像素点数判断两帧间是否相同,如果相同则继续处理下一帧,如果不相同,则将两帧时间相减,获得当前帧与上一帧变化的帧间差数据,随着帧数据的实时更新,该帧间差数据也会实时获取。
在获取帧数据之后,通过步骤1的实时的帧间差数据,通过算法进行处理判断当前帧是否卡顿,该算法的主要过程如下,通过伪代码书写:
当发现卡顿发生时,可以通过Transfer_frame_stop()函数对卡顿进行处理,将卡顿附近的帧进行保存成gif,在这里有一个延时的处理:为了将卡顿前后的帧信息都保存,因此会延迟一些帧处理。在处理gif的帧数据时,保存了两个队列,一个是帧数据队列,一个是帧间差数据队列,队列存储了接近10帧数据并且该帧数据。由于gif图以固定频率播放,但是对于帧间差数据较大的两帧和帧间差数据不大的两帧来说,相同的播放速率是不合理的,因此对gif图进行了插帧的处理:根据帧间差的数值大小进行插帧,然后再合成gif图。这样得到的好处是,可以真实的模拟当前帧播放的情况。同时降低帧播放频率,这样就可以让gif播放变慢,更有助于测试人员发现卡顿。给出模块化的过程如下:
需要说明的是,在附图的流程图虽然示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。
本申请还提供了一种存储介质的实施例,该实施例的存储介质包括存储的程序,其中,在程序运行时控制存储介质所在设备执行本发明实施例的卡顿处理方法。
本申请还提供了一种处理器的实施例,该实施例的处理器用于运行程序,其中,程序运行时执行本发明实施例的卡顿处理方法。
本申请还提供了一种卡顿处理装置的实施例。
图3是根据本发明实施例的一种可选的卡顿处理装置的示意图,如图3所示,该装置包括确定单元10,获取单元20和存储单元30。
其中,确定单元用于根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿,获取单元用于获取在发生卡顿的时间点附近的画面帧序列,存储单元用于存储画面帧序列及画面帧序列中每帧画面的时间。
该实施例通过确定单元根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;获取单元获取在发生卡顿的时间点附近的画面帧序列;存储单元存储画面帧序列及画面帧序列中每帧画面的时间,解决了相关技术中的测试方法记录卡顿的过程对系统的资源占用率较高的技术问题,进而实现了能够降低记录卡顿的过程对系统资源的占用率的技术效果。
作为一种可选的实施例,存储单元包括:转换模块,用于按照每帧画面的时间将画面帧序列转换为动画文件并存储。
作为一种可选的实施例,转换模块包括:处理子模块,用于在将画面帧序列转换为动画文件时、或在播放动画文件时延长动画文件的播放时长。
作为一种可选的实施例,确定单元包括:获取模块,用于获取目标应用程序当前输出的画面为第一画面帧;第一确定模块,用于确定第一画面帧与在第一画面帧之前的第二画面帧之间的帧间时间差;判断模块,用于判断帧间时间差是否超过预设阈值;第二确定模块,用于如果判断结果为是,则确定发生卡顿。
作为一种可选的实施例,第一确定模块包括:获取子模块,用于获取第一画面帧的前一帧画面为第二画面帧;判断子模块,用于判断第一画面帧的像素与第二画面帧的像素之间的差别是否超过预设阈值;执行子模块,用于在判断结果为否的情况下,丢弃第一画面帧,获取下一帧画面并将其作为第一画面帧,直至判断结果为是;确定子模块,用于在判断结果为是的情况下,确定第一画面帧与第二画面帧之间的帧间时间差。
作为一种可选的实施例,存储单元包括:插帧模块,用于如果判断出帧间时间差超过预设阈值,则根据帧间时间差和帧间时间差的前一个帧间时间差之间的差别进行插帧处理,其中,插帧处理为在画面帧序列中第一画面帧与第二画面帧之间插入预设数量的第二画面帧。
上述的装置可以包括处理器和存储器,上述单元均可以作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。
存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM),存储器包括至少一个存储芯片。
上述本申请实施例的顺序不代表实施例的优劣。
在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它的方式实现。
其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述仅是本申请的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。
Claims (14)
1.一种卡顿处理方法,其特征在于,包括:
根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;
获取在发生所述卡顿的时间点附近的画面帧序列;
存储所述画面帧序列及所述画面帧序列中每帧画面的时间。
2.根据权利要求1所述的方法,其特征在于,存储所述画面帧序列及所述画面帧序列中每帧画面的时间包括:
按照每帧画面的时间将所述画面帧序列转换为动画文件并存储。
3.根据权利要求2所述的方法,其特征在于,按照每帧画面的时间将所述画面帧序列转换为动画文件并存储包括:
在将所述画面帧序列转换为所述动画文件时、或播放所述动画文件时,延长所述动画文件的播放时长。
4.根据权利要求1所述的方法,其特征在于,根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿包括:
获取所述目标应用程序当前输出的画面为第一画面帧;
确定所述第一画面帧与在所述第一画面帧之前的第二画面帧之间的帧间时间差;
判断所述帧间时间差是否超过预设阈值;
如果判断结果为是,则确定发生所述卡顿。
5.根据权利要求4所述的方法,其特征在于,确定所述第一画面帧与在所述第一画面帧之前的第二画面帧之间的帧间时间差包括:
获取所述第一画面帧的前一帧画面为所述第二画面帧;
判断所述第一画面帧的像素与所述第二画面帧的像素之间的差别是否超过预设阈值;
在判断结果为否的情况下,丢弃所述第一画面帧,获取下一帧画面并将其作为所述第一画面帧,直至判断结果为是;
在判断结果为是的情况下,确定所述第一画面帧与所述第二画面帧之间的帧间时间差。
6.根据权利要求4所述的方法,其特征在于,存储所述画面帧序列及所述画面帧序列中每帧画面的时间包括:
如果判断出所述帧间时间差超过所述预设阈值,则根据所述帧间时间差和所述帧间时间差的前一个帧间时间差之间的差别进行插帧处理,其中,所述插帧处理为在所述画面帧序列中所述第一画面帧与所述第二画面帧之间插入预设数量的所述第二画面帧。
7.一种卡顿处理装置,其特征在于,包括:
确定单元,用于根据目标应用程序输出的连续多个画面帧的比较结果确定是否发生卡顿;
获取单元,用于获取在发生所述卡顿的时间点附近的画面帧序列;
存储单元,用于存储所述画面帧序列及所述画面帧序列中每帧画面的时间。
8.根据权利要求7所述的装置,其特征在于,所述存储单元包括:
转换模块,用于按照每帧画面的时间将所述画面帧序列转换为动画文件并存储。
9.根据权利要求8所述的装置,其特征在于,所述转换模块包括:
处理子模块,用于在将所述画面帧序列转换为所述动画文件时、或播放所述动画文件时延长所述动画文件的播放时长。
10.根据权利要求7所述的装置,其特征在于,所述确定单元包括:
获取模块,用于获取所述目标应用程序当前输出的画面为第一画面帧;
第一确定模块,用于确定所述第一画面帧与在所述第一画面帧之前的第二画面帧之间的帧间时间差;
判断模块,用于判断所述帧间时间差是否超过预设阈值;
第二确定模块,用于如果判断结果为是,则确定发生所述卡顿。
11.根据权利要求10所述的装置,其特征在于,所述第一确定模块包括:
获取子模块,用于获取所述第一画面帧的前一帧画面为所述第二画面帧;
判断子模块,用于判断所述第一画面帧的像素与所述第二画面帧的像素之间的差别是否超过预设阈值;
执行子模块,用于在判断结果为否的情况下,丢弃所述第一画面帧,获取下一帧画面并将其作为所述第一画面帧,直至判断结果为是;
确定子模块,用于在判断结果为是的情况下,确定所述第一画面帧与所述第二画面帧之间的帧间时间差。
12.根据权利要求10所述的装置,其特征在于,所述存储单元包括:
插帧模块,用于如果判断出所述帧间时间差超过所述预设阈值,则根据所述帧间时间差和所述帧间时间差的前一个帧间时间差之间的差别进行插帧处理,其中,所述插帧处理为在所述画面帧序列中所述第一画面帧与所述第二画面帧之间插入预设数量的所述第二画面帧。
13.一种存储介质,其特征在于,所述存储介质包括存储的程序,其中,在所述程序运行时控制所述存储介质所在设备执行权利要求1至6中任意一项所述的卡顿处理方法。
14.一种终端,其特征在于,包括:
一个或多个处理器,存储器,显示装置以及一个或多个程序,其中,所述一个或多个程序被存储在所述存储器中,并且被配置为由所述一个或多个处理器执行,所述一个或多个程序包括用于执行权利要求1至6中任意一项所述的卡顿处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710723120.8A CN107451066A (zh) | 2017-08-22 | 2017-08-22 | 卡顿处理方法和装置、存储介质、终端 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710723120.8A CN107451066A (zh) | 2017-08-22 | 2017-08-22 | 卡顿处理方法和装置、存储介质、终端 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN107451066A true CN107451066A (zh) | 2017-12-08 |
Family
ID=60492981
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710723120.8A Withdrawn CN107451066A (zh) | 2017-08-22 | 2017-08-22 | 卡顿处理方法和装置、存储介质、终端 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN107451066A (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108156515A (zh) * | 2017-12-27 | 2018-06-12 | 深圳Tcl新技术有限公司 | 视频播放方法、智能电视及计算机可读存储介质 |
CN108347580A (zh) * | 2018-03-27 | 2018-07-31 | 聚好看科技股份有限公司 | 一种处理视频帧数据的方法及电子设备 |
CN109828791A (zh) * | 2018-12-28 | 2019-05-31 | 北京奇艺世纪科技有限公司 | 一种动画播放方法、终端和计算机可读存储介质 |
CN109842533A (zh) * | 2019-01-17 | 2019-06-04 | 珠海金山网络游戏科技有限公司 | 一种检测游戏卡顿帧的方法及装置 |
CN109885405A (zh) * | 2019-02-02 | 2019-06-14 | 珠海金山网络游戏科技有限公司 | 一种动态分配方法及系统、计算设备及存储介质 |
CN110300327A (zh) * | 2019-04-18 | 2019-10-01 | 深圳市腾讯网域计算机网络有限公司 | 一种游戏客户端性能分析方法、装置、终端及存储介质 |
CN110895794A (zh) * | 2018-09-13 | 2020-03-20 | 浙江宇视科技有限公司 | 视频效果自修复方法和视频自修复装置 |
CN113419929A (zh) * | 2020-03-17 | 2021-09-21 | 华为技术有限公司 | 测试动画效果流畅性的方法及设备 |
WO2021244224A1 (zh) * | 2020-06-03 | 2021-12-09 | 腾讯科技(深圳)有限公司 | 卡顿检测方法、装置、设备及可读存储介质 |
CN113783780A (zh) * | 2021-09-29 | 2021-12-10 | 中孚信息股份有限公司 | 一种ieee802.11丢包统计及流量预测方法、系统及终端 |
CN114900720A (zh) * | 2022-04-02 | 2022-08-12 | 杭州星犀科技有限公司 | 媒体流的流畅性评估方法、系统、电子装置和存储介质 |
CN115103217A (zh) * | 2022-08-26 | 2022-09-23 | 京华信息科技股份有限公司 | 一种云智慧屏的同步更新方法及系统 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105761255A (zh) * | 2016-02-04 | 2016-07-13 | 网易(杭州)网络有限公司 | 游戏画面卡顿测试方法及装置 |
CN105979332A (zh) * | 2015-12-04 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种视频数据的检测方法和装置 |
CN106101823A (zh) * | 2016-07-08 | 2016-11-09 | 深圳天珑无线科技有限公司 | 一种视频显示数据的处理方法及显示装置 |
US20170212807A1 (en) * | 2014-10-10 | 2017-07-27 | Beijing Kingsoft Internet Security Software Co., Ltd. | Method for detecting abnormal application and mobile terminal |
-
2017
- 2017-08-22 CN CN201710723120.8A patent/CN107451066A/zh not_active Withdrawn
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20170212807A1 (en) * | 2014-10-10 | 2017-07-27 | Beijing Kingsoft Internet Security Software Co., Ltd. | Method for detecting abnormal application and mobile terminal |
CN105979332A (zh) * | 2015-12-04 | 2016-09-28 | 乐视致新电子科技(天津)有限公司 | 一种视频数据的检测方法和装置 |
CN105761255A (zh) * | 2016-02-04 | 2016-07-13 | 网易(杭州)网络有限公司 | 游戏画面卡顿测试方法及装置 |
CN106101823A (zh) * | 2016-07-08 | 2016-11-09 | 深圳天珑无线科技有限公司 | 一种视频显示数据的处理方法及显示装置 |
Cited By (17)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108156515A (zh) * | 2017-12-27 | 2018-06-12 | 深圳Tcl新技术有限公司 | 视频播放方法、智能电视及计算机可读存储介质 |
CN108347580B (zh) * | 2018-03-27 | 2020-09-25 | 聚好看科技股份有限公司 | 一种处理视频帧数据的方法及电子设备 |
CN108347580A (zh) * | 2018-03-27 | 2018-07-31 | 聚好看科技股份有限公司 | 一种处理视频帧数据的方法及电子设备 |
CN110895794A (zh) * | 2018-09-13 | 2020-03-20 | 浙江宇视科技有限公司 | 视频效果自修复方法和视频自修复装置 |
CN109828791A (zh) * | 2018-12-28 | 2019-05-31 | 北京奇艺世纪科技有限公司 | 一种动画播放方法、终端和计算机可读存储介质 |
CN109828791B (zh) * | 2018-12-28 | 2022-03-22 | 北京奇艺世纪科技有限公司 | 一种动画播放方法、终端和计算机可读存储介质 |
CN109842533A (zh) * | 2019-01-17 | 2019-06-04 | 珠海金山网络游戏科技有限公司 | 一种检测游戏卡顿帧的方法及装置 |
CN109885405A (zh) * | 2019-02-02 | 2019-06-14 | 珠海金山网络游戏科技有限公司 | 一种动态分配方法及系统、计算设备及存储介质 |
CN110300327B (zh) * | 2019-04-18 | 2021-06-15 | 深圳市腾讯网域计算机网络有限公司 | 一种游戏客户端性能分析方法、装置、终端及存储介质 |
CN110300327A (zh) * | 2019-04-18 | 2019-10-01 | 深圳市腾讯网域计算机网络有限公司 | 一种游戏客户端性能分析方法、装置、终端及存储介质 |
CN113419929A (zh) * | 2020-03-17 | 2021-09-21 | 华为技术有限公司 | 测试动画效果流畅性的方法及设备 |
WO2021244224A1 (zh) * | 2020-06-03 | 2021-12-09 | 腾讯科技(深圳)有限公司 | 卡顿检测方法、装置、设备及可读存储介质 |
CN113783780A (zh) * | 2021-09-29 | 2021-12-10 | 中孚信息股份有限公司 | 一种ieee802.11丢包统计及流量预测方法、系统及终端 |
CN114900720A (zh) * | 2022-04-02 | 2022-08-12 | 杭州星犀科技有限公司 | 媒体流的流畅性评估方法、系统、电子装置和存储介质 |
CN114900720B (zh) * | 2022-04-02 | 2023-11-21 | 杭州星犀科技有限公司 | 媒体流的流畅性评估方法、系统、电子装置和存储介质 |
CN115103217A (zh) * | 2022-08-26 | 2022-09-23 | 京华信息科技股份有限公司 | 一种云智慧屏的同步更新方法及系统 |
CN115103217B (zh) * | 2022-08-26 | 2022-11-22 | 京华信息科技股份有限公司 | 一种云智慧屏的同步更新方法及系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107451066A (zh) | 卡顿处理方法和装置、存储介质、终端 | |
CN109145784B (zh) | 用于处理视频的方法和装置 | |
CN111277910B (zh) | 弹幕显示方法、装置、电子设备及存储介质 | |
CN110795056B (zh) | 调节显示参数的方法、装置、终端及存储介质 | |
CN107801093B (zh) | 视频渲染方法、装置、计算机设备和可读存储介质 | |
Dou et al. | Edge computing-enabled deep learning for real-time video optimization in IIoT | |
CN109062715B (zh) | 内存时钟频率的确定方法、装置及终端 | |
CN107948640A (zh) | 视频播放测试方法、装置、电子设备和存储介质 | |
CN112203034B (zh) | 帧率控制方法、装置以及电子设备 | |
CN105760238B (zh) | 图形指令数据的处理方法和装置及系统 | |
CN107613314B (zh) | 一种检测直播中刷人气行为的方法及装置 | |
US11810524B2 (en) | Virtual reality display device and control method thereof | |
CN109640169A (zh) | 视频增强控制方法、装置以及电子设备 | |
US11562772B2 (en) | Video processing method, electronic device, and storage medium | |
CN106791850A (zh) | 视频编码方法及装置 | |
CN108600863A (zh) | 多媒体文件处理方法和装置、存储介质及电子装置 | |
CN115170390B (zh) | 一种文件风格化方法、装置、设备及存储介质 | |
CN113407436A (zh) | 播放组件兼容性检测方法、装置、计算机设备和存储介质 | |
CN115278104B (zh) | 一种图像亮度调整方法、装置、电子设备及存储介质 | |
CN108563479A (zh) | 重定向窗口的控制方法、装置、虚拟机和重定向系统 | |
CN107027069B (zh) | 图像数据的处理方法、装置和系统、存储介质及处理器 | |
CN105578073B (zh) | 一种视频监控画面显示方法及装置 | |
CN109511019A (zh) | 一种视频摘要方法、终端及计算机可读存储介质 | |
CN104462099B (zh) | 一种信息处理方法及电子设备 | |
CN110503042A (zh) | 图像处理方法、装置以及电子设备 |
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 | ||
WW01 | Invention patent application withdrawn after publication |
Application publication date: 20171208 |
|
WW01 | Invention patent application withdrawn after publication |