视频响应速度检测方法和系统与流程

文档序号:11681650阅读:433来源:国知局
视频响应速度检测方法和系统与流程

本发明涉及视频技术领域,特别是涉及一种视频响应速度检测方法和系统。



背景技术:

移动终端设备,例如智能手机、平板电脑等已普遍应用于人们的生产和生活中,为了满足人们在工作、生活、娱乐等方面的各种需求,越来越多的应用于移动终端设备的操作系统及应用软件被开发出来。这些移动终端设备功能越来越丰富,界面也越来越人性化,但由于受到移动终端芯片处理性能等因素的影响,在使用移动终端设备上的浏览器播放视频速度会较慢。

出于对用户体验的考虑,以及浏览器供应商对浏览器测试性能的需求,需要对浏览器视频的响应速度进行测试。现有的测试方法有三种,第一种方法通过手工测试,例如借助秒表记录浏览器视频点击开始的起始时间和第一帧画面出现的时间,然后计算该起始时间和该第一帧画面出现的时间的差作为响应时间,通过该响应时间来评估视频的响应速度,但是这种方法精确度不高,误差比较大,耗费时间和人力,另外对于不同浏览器播放器测试,需要投入不同的人力。第二种方法是通过对浏览器播放视频的过程进行录像,然后通过人工分析录像获得的每一帧画面得出起始时间与第一帧画面出现的时间,计算起始和第一帧画面之间的时间差作为响应时间,这种方法采用录像分析帧,录像的画面清晰度不高,同时由于图片文件比较多,人眼分析很费劲,同样由于需要手工测试,比较费时费力,采样点少,准确度不够。



技术实现要素:

基于此,有必要提供一种精确度高、可自动实现的视频响应速度检测方法和系统。

一种视频响应速度检测方法,包括:

获取当前视频的视频操作指令;

记录所述视频操作指令对应的当前系统时间;

启动屏幕截图功能;

以预设的频率获取屏幕截图并以预设的格式存储所述屏幕截图至图片库;

获取所述当前视频的与所述视频操作指令对应的关键帧;

查找所述图片库中是否存在与所述关键帧对应的目标屏幕截图;

当所述图片库中存在所述目标屏幕截图时,获取所述目标屏幕截图对应的系统时间与所述当前系统时间的时间差;及

根据所述时间差确定所述视频的响应时间。

一种视频响应速度检测系统,包括:

操作指令获取模块,用于获取当前视频的视频操作指令;

记录模块,用于记录所述视频操作指令对应的当前系统时间;

截屏启动模块,用于启动屏幕截图功能;

截屏模块,用于以预设的频率获取屏幕截图并以预设的格式存储所述屏幕截图至图片库;

关键帧获取模块,用于获取所述当前视频的与所述视频操作指令对应的关键帧;

查找模块,用于查找所述图片库中是否存在与所述关键帧对应的目标屏幕截图;

响应计算模块,用于当所述图片库中存在所述目标屏幕截图时,获取所述目标屏幕截图对应的系统时间与所述当前系统时间的时间差,并根据所述时间差确定所述视频的响应时间。

上述视频响应速度检测方法和系统,可以通过计算屏幕截图的系统时间与视频操作指令对应的当前系统时间之间的时间差而获得该视频的响应时间,用于判断该视频响应速度是否符合要求,其中获取与操作指令对应的屏幕截图和 操作指令对应的当前系统时间均是自动获得的,检测过程不需要依靠人参与,节省了人力成本,且具有较好的精确度。

附图说明

图1为本发明一实施例中终端的内部示意图;

图2为本发明一实施例所提供的视频响应时间检测方法的流程图;

图3为本发明第二实施例所提供视频响应时间检测方法的流程图;

图4为本发明第三实施例所提供视频响应时间检测方法的流程图;

图5为本发明第四实施例所提供视频响应时间检测方法的流程图;

图6为本发明另一实施例所提供的视频响应时间检测系统的结构示意图;

图7为本发明第二实施例所提供的视频响应时间检测系统的结构示意图;

图8为本发明第三实施例所提供的视频响应时间检测系统的结构示意图;

图9为本发明第四实施例所提供的视频响应时间检测系统的结构示意图;

图10为一实施例中视频响应时间检测系统进行视屏响应检测的时序图;

图11为一实施例中获取视频操作指令的示意图;

图12为一实施例中启动浏览器的示意图;

图13为一实施例中获取开始播放按钮位置坐标的示意图;

图14为一实施例中通过屏幕截图软件获取屏幕截图的示意图;

图15为一实施例中获取首帧图片的示意图。

具体实施方式

为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。

除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具体的实施例的目的,不是旨在于限制本发明。本文所使用的术语“及/或”包括一个或多个相关的所列项目的任意的和所有的组合。

本发明实施例所提供的视频响应检测方法可应用于图1所示的终端中,该终端100优选为移动终端。如图1所示,终端100包括通过系统总线连接的处理器、非易失性存储介质、内存储器、网络接口以及显示屏。处理器具有计算功能和控制终端工作的功能,该处理器被配置为执行一种视频响应速度检测方法。非易失性存储介质包括磁存储介质、光存储介质和闪存式存储介质中的至少一种,非易失性存储介质存储有操作系统和视频响应速度检测系统。该视频响应速度检测系统用于实现对终端播放器的视频响应速度检测方法。网络接口用于连接到服务器,用于与服务器进行通信,接收来自网络的资源。

如图2所示,在一个实施例中,提供一种视频响应速度检测方法,该方法可应用于如图1所示的终端100中,具体包括如下步骤。

步骤201,获取当前视频的视频操作指令。

通常,视频操作指令包括开始播放视频的指令或者移动进度条的指令。当前视频是指通过终端的浏览器播放器或者其它视频播放器进行播放的视频。

步骤203,记录视频操作指令对应的当前系统时间。

视频操作指令对应的当前系统时间是指发出该视频操作指令的时间。通过自动记录获取到视频操作指令时的当前系统时间,作为该视频操作指令的发出时间。具体的,当视频操作指令为开始播放视频的指令时,记录点击播放器的开始播放按钮的时间作为视频操作指令对应的当前系统时间;当视频操作指令为移动进度条的指令时,记录移动进度条的操作时间作为视频操作指令对应的当前系统时间。

步骤205,启动屏幕截图功能。启动屏幕截图功能可以通过调用屏幕截图软件实现。调用屏幕截图软件是指通过调用现有屏幕截图软件应用程序编程接口(api)或函数(function)而实现增加该屏幕截图软件的功能。

优选的,启动屏幕截图功能是在获取当前视频的视频操作指令的同时。具体实施时,该启动屏幕截图功能也可以是在获取当前视频的操作指令之前或者之后,如果启动屏幕截图功能是在获取视频操作指令之后,应确保是在视频操作指令所对应的关键帧出现之前,从而以确保能够截取到与该视频操作指令所对应的关键帧出现时的屏幕截图。

步骤206,以预设的截屏频率获取屏幕截图并以预设的格式存储屏幕截图至图片库。

通过启动屏幕截图,以预设的截屏频率持续截取一定数量的屏幕截图,并将所获得的屏幕截图分别按照预设的格式进行存储。其中,屏幕截图的速度可以通过改变预设的截屏频率而调整,可以是在启动屏幕截图功能之后输入所需设置的截屏频率,比如当设置截屏频率为50毫秒,则一秒内获得的屏幕截图的数量为20张;当设置截屏频率为40毫秒,则一秒内获得的屏幕截图的数量为25张。预设的格式是指预设屏幕截图存储时的命名格式或者图片格式,通过特定的命名格式或者图片格式,使得屏幕截图存储后可以方便获取这些屏幕截图各自截取时对应的系统时间。

步骤207,获取当前视频的与该视频操作指令对应的关键帧。

与视频操作指令对应的关键帧是指通过视频操作指令所指向显示的图片帧。如,当视频操作指令为开始播放视频的指令,该开始播放视频的指令所指向显示的图片帧为从点击开始播放按钮后出现的第一帧画面,即当前视频的首帧,也就是说,与该开始播放视频的指令对应的关键帧为首帧;当视频操作指令为移动进度条的指令时,该移动进度条的指令所指向显示的图片帧为进度条移动后所处当前视频的时间节点所播放的画面帧,具体而言,假如进度条移动到当前视频的00:20:10处,进度条移动后所处当前视频的时间节点所播放的图片帧即为当前视频在00:20:10时播放的图片帧,也就是说,与该移动进度条的指令对应的关键帧为进度条移动后所处时间节点所播放的图片帧。

获取当前视频的关键帧可以通过调用多媒体视频处理工具实现。多媒体视频处理工具是一套可以用来记录、转换数字音频、视频,并能将其转化为流的开源计算机程序。调用多媒体视频处理工具也可以是通过调用现有多媒体视频处理工具应用程序编程接口(api)或函数(function)而实现增加该多媒体视频处理工具的功能。通过多媒体视频处理工具能够获取当前视频的任意所需关键帧。

步骤209,查找图片库中是否存在与关键帧对应的目标屏幕截图。

以与该视频操作指令对应的关键帧为参考对象,将步骤205中所获取的屏 幕截图分别与该关键帧进行相似度比较,查找是否存在与该关键帧相同的屏幕截图、或者从图片库中查找出与该关键帧相似度最高的第一张屏幕截图,该相同的屏幕截图或该相似度最高的第一张屏幕截图即为与该关键帧对应的目标屏幕截图。通常,与该关键帧的相似度达到90%以上的屏幕截图即可作为符合查找要求的目标屏幕截图。其中,查找图片库进行相似度比较可以通过调用跨平台计算机视觉库实现,即通过调用跨平台计算机视觉库的程序编程接口而实现增加该跨平台计算机视觉库图像处理的功能。由于屏幕截图是以预设的截屏频率对终端屏幕进行截取得到的,可能存在与该关键帧相同的屏幕截图是出现在相邻两次截取屏幕截图之间的情况,因此可以将与该关键帧相似度最高的第一张屏幕截图作为与该关键帧对应的目标屏幕截图。当存在多张相似度符合要求的目标屏幕截图时,第一张屏幕截图即指根据屏幕截图对应的系统时间相对较早的目标屏幕截图。

步骤210,当图片库中存在目标屏幕截图时,获取目标屏幕截图对应的系统时间与当前系统时间的时间差。

步骤212,根据该时间差确定该视频的响应时间。

当查找到与该关键帧对应的目标屏幕截图后,获取该目标屏幕截图对应截取时的系统时间,并计算该目标屏幕截图对应的系统时间与视频操作指令对应的当前系统时间的时间差,作为当前视频的响应时间。

本实施例中,通过对当前视频进行操作,记录相应操作发出时的当前系统时间,并通过启动屏幕截图功能以预设频率截取若干屏幕截图,并从屏幕截图中确定与相应操作所指向出现的图片帧对应的目标屏幕截图,从而可以计算目标屏幕截图与当前系统时间之间的时间差,即检测得到视频从相应操作发出到完成的响应时间,以判断视频响应速度是否符合要求。其中获取与操作指令对应的屏幕截图和操作指令对应的当前系统时间均是自动获得的,检测过程不需要依靠人参与,节省了人力成本,且具有较好的精确度。

如图3所示,在一实施例中,步骤201,获取当前视频的视频操作指令的步骤包括:步骤2015,获取点击开始播放的视频操作指令。

步骤207,获取当前视频的与视频操作指令对应的关键帧的步骤包括:步骤2075,获取当前视频的与点击开始播放的视频操作指令对应的首帧图片。

通过分别获取点击开始播放的视频操作指令和与点击开始播放的视频操作指令对应的首帧图片,以检测视频开始播放的响应时间作为将对视频响应速度的检测。视频响应速度的检测过程中,检测开始播放的操作指令的响应速度可以减少屏幕截图所需的数量,可以提升查找目标屏幕截图的效率从而相应提升视频响应速度检测方法的效率。

在另一实施例中,步骤201,获取当前视频的视频操作指令的步骤之前,还包括:步骤2011,获取浏览器启动指令;

步骤2012,根据浏览器启动指令打开浏览器,查找浏览器中当前视频的开始播放按扭的位置坐标;

步骤2013,根据该位置坐标发送对开始播放按钮的点击事件。

本实施例中,优选对浏览器播放器的视频响应速度进行检测。随着越来越多的应用于移动终端设备的操作系统及应用软件被开发出来,移动终端设备的功能越来越丰富,各类浏览器播放器的性能测试结果是用户选择如何选择浏览器的重要参考指标。其中,获取浏览器启动指令,包括由用户通过应用界面点击打开浏览器的指令,或者在运行该检测方法时选择被检测浏览器的指令。根据浏览器启动指令打开浏览器,包括打开浏览器的同时打开视频页面、或者打开浏览器之后再打开浏览器中视频页面的方式。

该运行该检测方法时选择被检测浏览器的指令由用户通过软件应用界面发起,具体而言,可以通过软件应用界面提供选择被检测浏览器按钮或者其它按钮发起浏览器启动指令,通过获取待检测浏览器的启动指令,打开浏览器和根据浏览器上视频播放器按钮的位置发送点击事件,可以对视频响应速度完全实现自动检测,检测结果完全不受人为因素干扰,检测结果更加精确,且检测效率更高。其次,可以一次选择多个被检测浏览器进行检测,从而可以获得多个被检测浏览器检测结果以进行对比。

如图4所示,在其中一实施例中,步骤206,以预设的截屏频率获取屏幕截图并以预设的格式存储屏幕截图至图片库的步骤包括:

步骤2062,以预设的频率获取屏幕截图;

步骤2063,将屏幕截图分别以对应的系统时间作为文件名存储至图片库。

屏幕截图对应的系统时间是指各屏幕截图对应的截取时间,将屏幕截图分别以各自对应的系统时间作为文件名进行存储,可通过文件名直接获取到各屏幕截图对应的系统时间,相对于将各屏幕截图对应的系统时间作为屏幕截图所包含信息或者作为屏幕截图附加存储信息而言,实现起来更加方便且在假如出现截取图片缺失的情况下,方便找到出错点。

如图5所示,在另一实施例中,步骤207,获取当前视频的与视频操作指令对应的关键帧的步骤包括:

步骤2071,获取当前视频的片源地址;

步骤2072,根据片源地址下载该当前视频的片源;

步骤2073,获取片源中与视频操作指令对应的关键帧。

当前视频的片源地址包括根据当前视频的相关信息所确定的片源地址或者当前视频的统一资源定位符。根据当前视频的相关信息所确定的片源地址是指通过当前视频的名称、类型、内容关键词等所确定的片源地址。通过当前视频的统一资源定位符,可以获取到该当前视频的真实片源地址,从而可通过下载工具下载与当前视频相同的片源,再从该片源中获取与视频操作指令对应的关键帧,根据真实片源地址下载相同的片源,可进一步确保检测的精确度。

其中,根据片源地址下载片源可以是下载整个视频片源,也可以是只下载包括有视频操作指令对应的关键帧的部分视频片源。比如,当视频操作指令为开始播放视频的指令时,在根据片源地址下载该当前视频的片源的步骤中可以仅下载当前视频包含首帧的前几兆片源;当视频操作指令为移动进度条的指令时,在根据片源地址下载该当前视频的片源的步骤中可以是仅下载包含该进度条移动后所处当前视频的时间节点所播放的画面帧的片段片源。

如图6所示,在一个实施例中,提供了一种视频响应速度检测系统,该系统包括操作指令获取模块20、记录模块21、截屏启动模块22、截屏模块23、关键帧获取模块24、查找模块25和响应计算模块26。

其中,操作指令获取模块20用于获取当前视频的视频操作指令。

记录模块21用于记录视频操作指令对应的当前系统时间。

截屏启动模块22用于启动屏幕截图功能。

截屏模块23用于以预设的频率获取屏幕截图并以预设的格式存储屏幕截图至图片库。

关键帧获取模块24用于获取当前视频的与视频操作指令对应的关键帧。

查找模块25用于查找图片库中是否存在与关键帧对应的目标屏幕截图。

响应计算模块26用于当图片库中存在目标屏幕截图时,获取该目标屏幕截图对应的系统时间与当前系统时间的时间差。

在一个实施例中,如图7所示,该操作指令获取模块20具体用于获取点击开始播放的视频操作指令。该关键帧获取模块24具体用于获取当前视频的与点击开始播放的视频操作指令对应的首帧图片。

优选的,如图7所示,该视频响应速度检测系统还包括启动指令获取模块31、坐标获取模块32和点击模块33。

其中,启动指令获取模块31用于获取浏览器启动指令;

坐标获取模块32用于根据浏览器启动指令打开浏览器,并查找浏览器中该当前视频的开始播放按钮的位置坐标;

点击模块33用于根据位置坐标发送对开始播放按钮的点击事件。

在另一个实施例中,如图8所示,该截屏模块23包括截屏单元232和存储单元233。该截屏单元232用于以预设的频率获取屏幕截图。该存储单元233用于将屏幕截图分别以对应的系统时间作为文件名存储至图片库。

在一个实施例中,如图9所示,该关键帧获取模块24包括地址获取单元241、下载单元242和关键帧获取单元243。

地址获取单元241用于获取当前视频的片源地址。

下载单元242用于根据片源地址下载该当前视频的片源。

关键帧获取单元243用于获取片源中与视频操作指令对应的关键帧。

通过本发明实施例所提供的视频响应速度检测方法和系统,通过对当前视频进行操作产生的视频操作指令,记录相应视频操作指令发出时的当前系统时间,并通过启动屏幕截图功能以预设频率截取若干屏幕截图,并从屏幕截图中确定与相应操作所指向出现的关键帧对应的目标屏幕截图,从而可以计算目标屏幕截图与当前系统时间之间的时间差,即检测得到视频从相应操作发出到完成的响应时间,以判断视频响应速度是否符合要求。

该视频响应速度的检测方法和系统可以用于各种终端或者播放器播放视频的响应速度的检测。优先的,该视频响应速度的检测方法和系统用于实现对移动终端的浏览器播放器性能进行检测,以能设计或者选择性能更加符合移动终端用户需求的浏览器视频功能。

如图10所示,为一实施例中视频响应速度检测系统进行视频响应速度检测的时序图,在该示意性的实施例中,视频响应速度检测系统用于对操作系统为android系统的手机终端的浏览器播放器的视频响应速度进行检测,其中,当前视频为浏览器播放器播放视频,视频操作指令为开始播放视频的指令,与视频操作指令对应的关键帧为首帧,片源地址为从视频播放网页webview中获得的统一资源定位符,多媒体视频处理工具为ffmpeg,查找图片库进行图片相似度比较调用的跨平台计算机视觉库为opencv;

该视频响应速度检测系统进行检测的方法的具体过程包括如下主要步骤:

1)启动浏览器;具体的,如图11和图12所示,启动浏览器可以通过软件应用界面所提供的选择待检测浏览器按钮接收用户的选择指令,从而在运行该视频响应速度的检测方法时自动启动获取待检测浏览器。

2)查找开始播放按钮的位置坐标;如图13所示,可以通过屏幕截图软件截取浏览器播放器的屏幕截图,并通过调用跨平台计算机视觉库从屏幕截图中获取开始播放按钮的位置坐标。

3)点击开始播放视频按钮;点击开始播放视频按钮的同时记录该点击操作指令的当前系统时间,具体的,可以通过android系统的input输入驱动程序发送点击开始播放视频按钮的控制指令,并获取该控制指令的发出时间作为该点击操作指令的当前系统时间。

4)启动屏幕截图功能,截屏模块通过调用屏幕截图软件以每隔50ms截取一次当前屏幕,如图14所示,为通过屏幕截图软件截取的当前屏幕的部分屏幕截图的示意图,优选将截取的当前屏幕首先保存在内存中,等截取150张图片后一次写入到sd卡中。

5)获取当前视频的片源地址,具体的,通过javascript注入方式在webview中获取当前视频的片源地址。

6)下载当前片源,通过启动下载工具根据片源地址下载当前片源。

7)获取当前视频的片源中的首帧图片,如图15所示,可以通过ffmpeg工具获取首帧图片。

8)从屏幕截图中找出与首帧图片对应的目标屏幕截图,具体的,可以通过调用opencv(opensourcecomputervisionlibrary)比较图片相似度,确定图片库的屏幕截图中与首帧图片相同或者相似度最高的第一张屏幕截图为目标屏幕截图。opencv是一个基于(开源)发行的跨平台计算机视觉库,可以运行在linux、windows和macos等多种操作系统上,同时提供多种语言的接口,能够实现图像处理和计算机视觉方面的很多通用算法。

9)获取响应时间,具体通过计算目标屏幕截图的系统时间与点击操作指令对应的当前系统时间之间的时间差来得到响应时间。

将上述实施例中通过视频响应速度检测系统获取的首帧与通过屏幕截图功能获取的屏幕截图进行对比,通过比较确定目标屏幕截图后利用目标屏幕截图对应的系统时间和点击开始播放的当前系统时间之间的时间差,即可检测得到待测浏览器视频的首帧响应速度。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1