CN116089193A - 一种掉帧检测方法、装置、设备及可读存储介质 - Google Patents

一种掉帧检测方法、装置、设备及可读存储介质 Download PDF

Info

Publication number
CN116089193A
CN116089193A CN202310113684.5A CN202310113684A CN116089193A CN 116089193 A CN116089193 A CN 116089193A CN 202310113684 A CN202310113684 A CN 202310113684A CN 116089193 A CN116089193 A CN 116089193A
Authority
CN
China
Prior art keywords
frame
execution time
log information
frame dropping
information
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
CN202310113684.5A
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.)
Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Original Assignee
Yulong Computer Telecommunication Scientific 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 Yulong Computer Telecommunication Scientific Shenzhen Co Ltd filed Critical Yulong Computer Telecommunication Scientific Shenzhen Co Ltd
Priority to CN202310113684.5A priority Critical patent/CN116089193A/zh
Publication of CN116089193A publication Critical patent/CN116089193A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2205Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested
    • G06F11/2236Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing using arrangements specific to the hardware being tested to test CPU or processors
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/22Detection or location of defective computer hardware by testing during standby operation or during idle time, e.g. start-up testing
    • G06F11/2273Test methods
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Quality & Reliability (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Debugging And Monitoring (AREA)

Abstract

本申请公开了一种掉帧检测方法、装置、设备及可读存储介质,该方法包括:对待测设备进行测试时,利用Systrace抓取日志信息;从日志信息中提取出帧处理线程的执行时间;利用执行时间,进行掉帧检测,得到掉帧信息。在本申请中,利用Systrace抓取日志信息。通过对Systrace所抓取的日志信息进行信息提取,可以提取出帧处理线程的执行时间。该执行时间对应每一个帧的获取、合成及显示的具体情况,基于该执行时间,可以进行掉帧检测,得到掉帧信息。由于该日志信息包括了对待测设备进行测试时用例操作过程中的掉帧情况,因而该掉帧信息符合真实的掉帧情况,可以针对每一帧获取、合成及显示的具体情况进行更为精准地掉帧检测。

Description

一种掉帧检测方法、装置、设备及可读存储介质
技术领域
本申请涉及计算机应用技术领域,特别是涉及一种掉帧检测方法、装置、设备及可读存储介质。
背景技术
帧数就是在1秒钟时间里传输的图片的量,也可以理解为图形处理器每秒钟能够刷新几次,通常用fps(Frames Per Second,每秒钟帧数)表示。每一帧都是静止的图像,快速连续地显示帧便形成了运动的假象。高的帧率可以得到更流畅、更逼真的动画。每秒钟帧数(fps)愈多,所显示的动作就会愈流畅。
掉帧,一般是指由于硬件不足以负荷显示器画面动态显示刷新的频率,从而帧率过低所造成的画面出现停滞(或短时间或长时间)现象。用户对于掉帧较为敏感,如何有效的评估是否存在掉帧,进行精准有效的掉帧检测尤为重要。但是,目前已有的掉帧检测,其掉帧率统计并不精确,无法排除厂商优化的出帧补偿。
综上所述,如何有效地提升掉帧检测准确率等问题,是目前本领域技术人员急需解决的技术问题。
发明内容
本申请的目的是提供一种掉帧检测方法、装置、设备及可读存储介质,能够有效提升掉帧检测准确率。
为解决上述技术问题,本申请提供如下技术方案:
一种掉帧检测方法,包括:
对待测设备进行测试时,利用Systrace抓取日志信息;
从所述日志信息中提取出帧处理线程的执行时间;
利用所述执行时间,进行掉帧检测,得到掉帧信息。
优选地,从所述日志信息中提取出帧处理线程的执行时间,包括:
从所述日志信息中,识别出帧获取信号对应的时间周期,并从所述日志信息中获取每一个所述时间周期内,从缓存中获取当前帧及当前帧的显示处理线程对应的执行时间。
优选地,利用所述执行时间,进行掉帧检测,得到掉帧信息,包括:
利用所述执行时间,判断是否从缓存中读取到所述当前帧;
如果否,则确定对应的所述时间周期内发生了掉帧,并对全部所述时间周期进行掉帧统计,得到所述掉帧信息。
优选地,从所述日志信息中提取出帧处理线程的执行时间,包括:
从所述日志信息中,识别出应用渲染中的帧合成线程对应的执行时间。
优选地,利用所述执行时间,进行掉帧检测,得到掉帧信息,包括:
判断所述执行时间是否错过显示驱动的提交周期;
如果是,则确定当前合成帧对应掉帧,并对各个所述合成帧进行掉帧统计,得到所述掉帧信息。
优选地,从所述日志信息中提取出帧处理线程的执行时间,包括:
将所述日志信息转换为txt格式文件;
从所述txt格式文件中提取出所述帧处理线程的开始时间戳和结束时间戳;
利用所述开始时间戳和所述结束时间戳计算出所述执行时间。
优选地,从所述日志信息中提取出帧处理线程的执行时间,包括:
从实时产生的所述日志信息中提取出所述执行时间,并删除已提取过所示执行时间的日志信息。
一种掉帧检测装置,包括:
日志抓取模块,用于对待测设备进行测试时,利用Systrace抓取日志信息;
日志分析模块,用于从所述日志信息中提取出帧处理线程的执行时间;
掉帧检测模块,用于利用所述执行时间,进行掉帧检测,得到掉帧信息。
一种电子设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现上述掉帧检测方法的步骤。
一种可读存储介质,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述掉帧检测方法的步骤。
应用本申请实施例所提供的方法,对待测设备进行测试时,利用Systrace抓取日志信息;从日志信息中提取出帧处理线程的执行时间;利用执行时间,进行掉帧检测,得到掉帧信息。
在本申请中,当对待测设备进行测试时,可以利用Systrace抓取日志信息。通过对Systrace所抓取的日志信息进行信息提取,可以提取出帧处理线程的执行时间。基于帧处理线程的执行时间,可以明确每一个帧的获取、合成及显示的具体情况,因而,基于该执行时间,可以进行掉帧检测,从而得到掉帧信息。由于该日志信息包括了对待测设备进行测试时用例操作过程中的掉帧情况,因而该掉帧信息符合真实的掉帧情况,由于可以针对每一帧获取、合成及显示的具体情况进行掉帧检测,因而该掉帧信息更为精准。
相应地,本申请实施例还提供了与上述掉帧检测方法相对应的掉帧检测装置、设备和可读存储介质,具有上述技术效果,在此不再赘述。
附图说明
为了更清楚地说明本申请实施例或相关技术中的技术方案,下面将对实施例或相关技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例中一种掉帧检测方法的实施流程图;
图2为本申请实施例中一种Systrace的信息抓取示意图;
图3为本申请实施例中一种掉帧示意图;
图4为本申请实施例中另一种掉帧示意图;
图5为本申请实施例中一种掉帧检测装置的结构示意图;
图6为本申请实施例中一种电子设备的结构示意图;
图7为本申请实施例中一种电子设备的具体结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请方案,下面结合附图和具体实施方式对本申请作进一步的详细说明。显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。
为便于理解,下面将本文中涉及的相关技术用语进行解析说明:
Buffer:缓冲;
Layer bufferqueue:页面缓冲队列;
Latch:闩锁;
Producer:生产者;
Consumer:消费者;
SurfaceFlinger:Android的一个屏幕刷新合成类;
Postcomposition:提交合成;
Hwvsync:硬件级vsync。
请参考图1,图1为本申请实施例中一种掉帧检测方法的流程图,该方法包括以下步骤:
S101、对待测设备进行测试时,利用Systrace抓取日志信息。
待测设备可以为需要进行掉帧检测的任一设备,如移动智能通信终端(智能手机),平板电脑等。
在本申请中,对待测试设备所进行的测试可以为场景测试,也可以为单个用例测试,也可以为其他形式的测试,在此对测试内容并不做限定,仅需涉及屏幕动态显示即可。
Systrace是Android(安卓)中分析掉帧问题的主要工具,请参考图2,图2为本申请实施例中一种Systrace的信息抓取示意图,即Systrace可以转化为txt文件atrace,atrace实际上是一种log的形式。在本申请中,通过解析atrace语法,从而获取到待测设备运行中的丢帧情况。
S102、从日志信息中提取出帧处理线程的执行时间。
Atrace的语法都是log(日志)形式,在系统运行过程中实时的把需要监控的点记录下来。也就是说,直接从日志信息中,可以针对帧处理线程的执行时间进行提取。具体的,可以基于帧处理线程(如从缓存中读取帧的线程,帧合成线程和帧显示线程)的线程名来进行提取。
在本申请中的一种具体实施方式中,从日志信息中提取出帧处理线程的执行时间,包括:
步骤一、将日志信息转换为txt格式文件;
步骤二、从txt格式文件中提取出帧处理线程的开始时间戳和结束时间戳;
步骤三、利用开始时间戳和结束时间戳计算出执行时间。
为便于描述,下面将上述三个步骤结合起来进行说明。
Systrace可以转化为txt文件atrace,atrace(txt格式文件)实际上是一种log的形式,所以通过脚本解析atrace语法,可以得到设备运行中的丢帧情况。atrace语法,具体的语法如下:
<线程名><tid>(<pid>)[003]....<时间戳>:<trace event类型>:<内容>
Atrace文件(即日志信息)中每个B(begin,开始)都对应着一个E(end,结束)。例如,开始执行如下所示:
android.settings-11601(11601)[003]....144.833644:tracing_mark_write:B|11601|doFrame
结束执行如下所示:
android:settings-11601(11601)[003]....144.833817:tracing_mark_write:E|11601
也就是说,可直接从Atrace文件中读取出帧处理线程的开始时间戳和结束时间戳,然后利用开始时间戳和结束时间戳,计算出执行时间。
在本申请中的一种具体实施方式中,从日志信息中提取出帧处理线程的执行时间,包括:从实时产生的日志信息中提取出执行时间,并删除已提取过所示执行时间的日志信息。即由于实时产生的Atrace文件数据量很大,为了实现检测全过程中的掉帧检测,可以在产生了Atrace文件后立即进行分析,并在分析完成之后,将分析过的Atrace文件删除,从而释放存储资源给源源不断产生的Atrace文件进行存储。
考虑到丢帧的判断主要通过两个阶段的判断,Android的绘制设计是一个生产消费者设计,一个是producer(消费者)丢帧,将两个阶段的丢帧加在一起,即全阶段的丢帧信息。因而,统计帧处理线程的执行时间,可以针对帧生产阶段和帧消费阶段对应的执行时间进行提取。
具体的,帧生产阶段:从日志信息中提取出帧处理线程的执行时间,包括:从日志信息中,识别出帧获取信号对应的时间周期,并从日志信息中获取每一个时间周期内,从缓存中获取当前帧及当前帧的显示处理线程对应的执行时间。每个应用都有一个缓冲区,缓冲区里存放的是这个应用渲染的屏幕帧,安卓系统通过一种帧获取信号来按照特定的周期,比如1/60秒一次,去缓冲区内获取帧来处理,因而,可以把出帧获取信号对应的时间周期,并从日志信息中获取每一个时间周期内,从缓存中获取当前帧及当前帧的显示处理线程对应的执行时间。
具体的,帧消费阶段:从日志信息中提取出帧处理线程的执行时间,包括:从日志信息中,识别出应用渲染中的帧合成线程对应的执行时间。如果系统在帧获取信号到来后拿到了应用渲染的这一帧,系统就开始做帧合成操作,合成完成后就会将该帧按特定周期提交到显示驱动进行显示,如果合成操作时间过长,导致错过了驱动提交周期,那么屏幕上在这一周期依然会显示上一帧的画面,这种情况也是掉帧。因此,可以针对帧合成线程对应的执行时间,进而基于该合成时间来进行掉帧检测。
S103、利用执行时间,进行掉帧检测,得到掉帧信息。
得到帧处理线程对应的执行时间之后,便可以通过将该执行时间与正常帧处理对应的预设时间周期或时间阈值进行比较,从而确定该执行时间对应的帧处理是否出现掉帧。基于各个执行时间对应的掉帧统计,即可得到掉帧信息。掉帧信息可具体包括掉帧率、掉具体哪帧,掉帧所对应的应用等。
具体的,若执行时间是对应帧生产阶段的帧处理线程,则利用执行时间,进行掉帧检测,得到掉帧信息,包括:
步骤一、利用执行时间,判断是否从缓存中读取到当前帧;
步骤二、如果否,则确定对应的时间周期内发生了掉帧,并对全部时间周期进行掉帧统计,得到掉帧信息;
步骤三、如果是,则确定对应的时间周期内未发生掉帧。
为便于描述,下面将上述三个步骤结合起来进行说明。
由于每个应用都有一个缓冲区,缓冲区里存放的是这个应用渲染的屏幕帧,安卓系统通过一种帧获取信号来按照特定的周期,比如1/60秒一次,去缓冲区内获取帧来处理,系统拿到帧后再将这一帧进行屏幕显示的操作,如果系统在信号到来后拿不到这一帧,那么这一帧就是掉帧。
举例说明,持续操作状态下sf未latch到buffer的vsync周期个数(丢帧数=(t1-t0-v/2)/v),如图3所示,图3为本申请实施例中一种掉帧示意图,其中,V代表一个vsync市场;T1代表下一个vsync的时间戳;T0代表上一个vsync的时间戳。
BufferTX-com.mfashiong***表示该layer bufferqueue的状态,上升沿对应app端Queuebuffer,下降沿表示sf端latchbuffer,可以看到图中有一个vsync未latch到buffer,而home处于持续绘制状态未休眠,这个案例里t1-t0略大于2v+v/2,故producer阶段导致丢帧数为2。
具体的,若执行时间是对应消费阶段中的帧合成线程,则利用执行时间,进行掉帧检测,得到掉帧信息,包括:
步骤一、判断执行时间是否错过显示驱动的提交周期;
步骤二、如果是,则确定当前合成帧对应掉帧,并对各个合成帧进行掉帧统计,得到掉帧信息;
步骤三、如果否,则确定当前合成帧正常。
为便于描述,下面将上述三个步骤结合起来进行说明。
如果系统在帧获取信号到来后拿到了应用渲染的这一帧,系统就开始做帧合成操作,合成完成后就会将该帧按特定周期提交到显示驱动进行显示,如果合成操作时间过长,导致错过了驱动提交周期,那么屏幕上在这一周期依然会显示上一帧的画面,这种情况也是掉帧。
如图4所示,图4为本申请实施例中另一种掉帧示意图,第二帧由于合成耗时太久导致postcomposition的时机错过了hwvsync,从而导致cosumer(消费)阶段丢一帧。其中,SurfaceFlinger为(接受来自多个来源的数据缓冲区,对它们进行合成,然后发送到显示设备)持续合成(一直有合成需求,每个vsync(帧获取信号)都在合成)阶段下未完成crtc_commit的个数。
应用本申请实施例所提供的方法,对待测设备进行测试时,利用Systrace抓取日志信息;从日志信息中提取出帧处理线程的执行时间;利用执行时间,进行掉帧检测,得到掉帧信息。
在本申请中,当对待测设备进行测试时,可以利用Systrace抓取日志信息。通过对Systrace所抓取的日志信息进行信息提取,可以提取出帧处理线程的执行时间。基于帧处理线程的执行时间,可以明确每一个帧的获取、合成及显示的具体情况,因而,基于该执行时间,可以进行掉帧检测,从而得到掉帧信息。由于该日志信息包括了对待测设备进行测试时用例操作过程中的掉帧情况,因而该掉帧信息符合真实的掉帧情况,由于可以针对每一帧获取、合成及显示的具体情况进行掉帧检测,因而该掉帧信息更为精准。
相应于上面的方法实施例,本申请实施例还提供了一种掉帧检测装置,下文描述的掉帧检测装置与上文描述的掉帧检测方法可相互对应参照。
参见图5所示,该装置包括以下模块:
日志抓取模块101,用于对待测设备进行测试时,利用Systrace抓取日志信息;
日志分析模块102,用于从日志信息中提取出帧处理线程的执行时间;
掉帧检测模块103,用于利用执行时间,进行掉帧检测,得到掉帧信息。
应用本申请实施例所提供的装置,对待测设备进行测试时,利用Systrace抓取日志信息;从日志信息中提取出帧处理线程的执行时间;利用执行时间,进行掉帧检测,得到掉帧信息。
在本申请中,当对待测设备进行测试时,可以利用Systrace抓取日志信息。通过对Systrace所抓取的日志信息进行信息提取,可以提取出帧处理线程的执行时间。基于帧处理线程的执行时间,可以明确每一个帧的获取、合成及显示的具体情况,因而,基于该执行时间,可以进行掉帧检测,从而得到掉帧信息。由于该日志信息包括了对待测设备进行测试时用例操作过程中的掉帧情况,因而该掉帧信息符合真实的掉帧情况,由于可以针对每一帧获取、合成及显示的具体情况进行掉帧检测,因而该掉帧信息更为精准。
在本申请的一种具体实施方式中,日志分析模块102,具体用于从日志信息中,识别出帧获取信号对应的时间周期,并从日志信息中获取每一个时间周期内,从缓存中获取当前帧及当前帧的显示处理线程对应的执行时间。
在本申请的一种具体实施方式中,掉帧检测模块103,具体用于利用执行时间,判断是否从缓存中读取到当前帧;
如果否,则确定对应的时间周期内发生了掉帧,并对全部时间周期进行掉帧统计,得到掉帧信息。
在本申请的一种具体实施方式中,日志分析模块102,具体用于从日志信息中,识别出应用渲染中的帧合成线程对应的执行时间。
在本申请的一种具体实施方式中,掉帧检测模块103,具体用于判断执行时间是否错过显示驱动的提交周期;
如果是,则确定当前合成帧对应掉帧,并对各个合成帧进行掉帧统计,得到掉帧信息。
在本申请的一种具体实施方式中,日志分析模块102,具体用于将日志信息转换为txt格式文件;
从txt格式文件中提取出帧处理线程的开始时间戳和结束时间戳;
利用开始时间戳和结束时间戳计算出执行时间。
在本申请的一种具体实施方式中,日志分析模块102,具体用于从实时产生的日志信息中提取出执行时间,并删除已提取过所示执行时间的日志信息。
相应于上面的方法实施例,本申请实施例还提供了一种电子设备,下文描述的一种电子设备与上文描述的一种掉帧检测方法可相互对应参照。
参见图6所示,该电子设备包括:
存储器332,用于存储计算机程序;
处理器322,用于执行计算机程序时实现上述方法实施例的掉帧检测方法的步骤。
具体的,请参考图7,图7为本实施例提供的一种电子设备的具体结构示意图,该电子设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)322(例如,一个或一个以上处理器)和存储器332,存储器332存储有一个或一个以上的计算机程序342或数据344。其中,存储器332可以是短暂存储或持久存储。存储在存储器332的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对数据处理设备中的一系列指令操作。更进一步地,中央处理器322可以设置为与存储器332通信,在电子设备301上执行存储器332中的一系列指令操作。
电子设备301还可以包括一个或一个以上电源326,一个或一个以上有线或无线网络接口350,一个或一个以上输入输出接口358,和/或,一个或一个以上操作系统341。
上文所描述的掉帧检测方法中的步骤可以由电子设备的结构实现。
相应于上面的方法实施例,本申请实施例还提供了一种可读存储介质,下文描述的一种可读存储介质与上文描述的一种掉帧检测方法可相互对应参照。
一种可读存储介质,可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现上述方法实施例的掉帧检测方法的步骤。
该可读存储介质具体可以为U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可存储程序代码的可读存储介质。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其它实施例的不同之处,各个实施例之间相同或相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本领域技术人员还可以进一步意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。这些功能究竟以硬件还是软件的方式来执行,取决于技术方案的特定应用和设计约束条件。本领域技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应该认为超出本申请的范围。
结合本文中所公开的实施例描述的方法或算法的步骤可以直接用硬件、处理器执行的软件模块,或者二者的结合来实施。软件模块可以置于随机存储器(RAM)、内存、只读存储器(ROM)、电可编程ROM、电可擦除可编程ROM、寄存器、硬盘、可移动磁盘、CD-ROM、或技术领域内所公知的任意其它形式的存储介质中。
最后,还需要说明的是,在本文中,诸如第一和第二等之类的关系属于仅仅用来将一个实体或者操作与另一个实体或者操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语包括、包含或者其他任何变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
本文中应用了具体个例对本申请的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本申请的方法及其核心思想;同时,对于本领域的一般技术人员,依据本申请的思想,在具体实施方式及应用范围上均会有改变之处,综上,本说明书内容不应理解为对本申请的限制。

Claims (10)

1.一种掉帧检测方法,其特征在于,包括:
对待测设备进行测试时,利用Systrace抓取日志信息;
从所述日志信息中提取出帧处理线程的执行时间;
利用所述执行时间,进行掉帧检测,得到掉帧信息。
2.根据权利要求1所述的掉帧检测方法,其特征在于,从所述日志信息中提取出帧处理线程的执行时间,包括:
从所述日志信息中,识别出帧获取信号对应的时间周期,并从所述日志信息中获取每一个所述时间周期内,从缓存中获取当前帧及当前帧的显示处理线程对应的执行时间。
3.根据权利要求2所述的掉帧检测方法,其特征在于,利用所述执行时间,进行掉帧检测,得到掉帧信息,包括:
利用所述执行时间,判断是否从缓存中读取到所述当前帧;
如果否,则确定对应的所述时间周期内发生了掉帧,并对全部所述时间周期进行掉帧统计,得到所述掉帧信息。
4.根据权利要求1所述的掉帧检测方法,其特征在于,从所述日志信息中提取出帧处理线程的执行时间,包括:
从所述日志信息中,识别出应用渲染中的帧合成线程对应的执行时间。
5.根据权利要求4所述的掉帧检测方法,其特征在于,利用所述执行时间,进行掉帧检测,得到掉帧信息,包括:
判断所述执行时间是否错过显示驱动的提交周期;
如果是,则确定当前合成帧对应掉帧,并对各个所述合成帧进行掉帧统计,得到所述掉帧信息。
6.根据权利要求1所述的掉帧检测方法,其特征在于,从所述日志信息中提取出帧处理线程的执行时间,包括:
将所述日志信息转换为txt格式文件;
从所述txt格式文件中提取出所述帧处理线程的开始时间戳和结束时间戳;
利用所述开始时间戳和所述结束时间戳计算出所述执行时间。
7.根据权利要求1至6任一项所述的掉帧检测方法,其特征在于,从所述日志信息中提取出帧处理线程的执行时间,包括:
从实时产生的所述日志信息中提取出所述执行时间,并删除已提取过所示执行时间的日志信息。
8.一种掉帧检测装置,其特征在于,包括:
日志抓取模块,用于对待测设备进行测试时,利用Systrace抓取日志信息;
日志分析模块,用于从所述日志信息中提取出帧处理线程的执行时间;
掉帧检测模块,用于利用所述执行时间,进行掉帧检测,得到掉帧信息。
9.一种电子设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述掉帧检测方法的步骤。
10.一种可读存储介质,其特征在于,所述可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述掉帧检测方法的步骤。
CN202310113684.5A 2023-02-15 2023-02-15 一种掉帧检测方法、装置、设备及可读存储介质 Pending CN116089193A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202310113684.5A CN116089193A (zh) 2023-02-15 2023-02-15 一种掉帧检测方法、装置、设备及可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202310113684.5A CN116089193A (zh) 2023-02-15 2023-02-15 一种掉帧检测方法、装置、设备及可读存储介质

Publications (1)

Publication Number Publication Date
CN116089193A true CN116089193A (zh) 2023-05-09

Family

ID=86204329

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202310113684.5A Pending CN116089193A (zh) 2023-02-15 2023-02-15 一种掉帧检测方法、装置、设备及可读存储介质

Country Status (1)

Country Link
CN (1) CN116089193A (zh)

Similar Documents

Publication Publication Date Title
US11009994B2 (en) System and method for timing input sensing, rendering, and display to minimize latency
US20110227925A1 (en) Displaying a visualization of event instances and common event sequences
US8379735B2 (en) Automatic video glitch detection and audio-video synchronization assessment
CN104965773A (zh) 终端、卡顿检测方法、装置及游戏卡顿检测方法、装置
US20130283145A1 (en) Approximating Electronic Document Last Reading Position
CN113505029B (zh) 延迟测试方法和相关装置
CN110362483A (zh) 性能数据采集方法、装置、设备及存储介质
CN109426603B (zh) 一种分析应用程序卡顿的方法和装置
CN111858318B (zh) 一种响应时间的测试方法、装置、设备和计算机存储介质
US10496658B2 (en) Method and system of visually depicting hierarchical data through selective colorization
CN106648707B (zh) 智能终端应用信息的收藏方法、系统及智能终端
CN109144858A (zh) 流畅度检测方法、装置、计算设备及存储介质
CN106570049B (zh) 一种地质勘探中大数据量的曲线快速绘图方法及其系统
KR20210087095A (ko) 비디오 중의 핫스팟 세그먼트를 추출하는 방법, 장치, 전자 기기, 저장 매체, 및 컴퓨터 프로그램 제품
CN201467383U (zh) 视频帧率测试仪
CN110781063B (zh) 网页首屏时间的测量方法、装置、设备及存储介质
US10613965B2 (en) Method and system of visually combining profiling data from instrumentation and sampling
US20180336122A1 (en) Generating application flow entities
US20200348342A1 (en) Method and apparatus for processing oscilloscope data and oscilloscope
CN114691448A (zh) 应用程序卡顿监测方法、装置、设备及存储介质
CN116089193A (zh) 一种掉帧检测方法、装置、设备及可读存储介质
CN111552613A (zh) 线程超时的处理方法、装置以及电子设备
CN107066421B (zh) 一种示波器及其采集数据上报方法
CN110569184B (zh) 一种测试方法及终端设备
CN110557627B (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