一种视频质量监测方法及机顶盒与流程

文档序号:17695111发布日期:2019-05-17 21:25阅读:491来源:国知局
一种视频质量监测方法及机顶盒与流程

本发明涉及通信技术领域,尤其涉及一种视频质量监测方法及机顶盒。



背景技术:

现有的视频质量检测方法通常是通过从网络抓包获取相关的指标来推测是否发生卡顿等情况。以基于互联网的各种视频及数据服务业务(overthetop,ott)为例,检测ott视频质量的探针通常集成在客户端设备中,并随客户端设备的启动而启动,在视频质量检测过程中,客户端设备接收ott视频,探针通过抓包的方式,在客户端设备的网卡上对该ott视频进行抓取,并对抓取的ott视频进行分析,从而推断出缓冲区中ott视频的可播放时长,若可播放时长大于0,说明缓冲区中还有可播放的ott视频;否则,若可播放时长小于0,则说明缓冲区中已经没有可播放的ott视频,客户端设备的播放器进入目标播放状态。

由上可知,现有的视频质量检测方法一方面需要预先知悉机顶盒的缓存大小,才能推导出目标播放状态,而机顶盒型号众多,适配工作量比较大,对算法的适应性要求比较高,另一方面无法感知用户针对视频的暂停、拖动等操作,从而无法准确推断出缓冲区中视频的可播放时长,进而无法准确判断客户端设备是否卡顿,以至于无法准确反映客户端设备的视频质量。



技术实现要素:

本发明实施例的目的在于提供一种视频质量监测方法及机顶盒,以提高视频质量监测结果的准确性。

为了达到上述目的,本发明实施例提供一种视频质量监测方法,该方法包括:

获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件;

根据所述播放器事件确定视频播放质量信息;

按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。

本发明实施例还提供一种机顶盒,该机顶盒包括:

接收器,用于获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件;

处理器,用于根据所述播放器事件确定视频播放质量信息;

发送器,用于按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。

本发明实施例还提供一种机顶盒,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述的视频质量监测方法的步骤。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的视频质量监测方法的步骤。

本发明实施例中,通过获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件;根据所述播放器事件确定视频播放质量信息;按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。由于播放器可以直接感知其自身的播放器事件,因此根据播放器上报的播放器事件确定视频播放质量信息,并上报给服务器,可以更为准确的反应视频质量,从而可以提高视频质量监测结果的准确性。

附图说明

为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的视频质量监测方法的流程图;

图2是本发明实施例提供的确定卡顿时间区间的流程图;

图3是本发明实施例提供的机顶盒的结构图;

图4是本发明又一实施例提供的机顶盒的结构图。

具体实施方式

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本发明实施例提供一种视频质量监测方法,该方法应用于机顶盒。在本发明实施例中,播放器可以直接向机顶盒上报播放器事件,由于播放器可以直接感知其自身的播放器事件,因此根据播放器上报的播放器事件确定视频播放质量信息,并上报给服务器,可以更为准确的反应视频质量,从而可以提高视频质量监测结果的准确性。

参见图1,图1是本发明实施例提供的视频质量监测方法的流程图,如图1所示,包括以下步骤:

步骤101、获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件。

本发明实施例中,播放器可以根据不同的媒体流协议上报不同类型的播放器事件,例如,对于ott业务,在视频发生卡顿时上报缓冲事件(例如,缓冲开始事件、缓冲结束事件等),对于iptv(internetprotocoltelevision,网络协议电视)业务,在视频发生马赛克或者播放不流畅时候上报花屏事件(例如,花屏开始事件、花屏结束事件等)或者欠载事件(例如,欠载开始事件、欠载结束事件等)。

具体的,上述播放器事件可以包括缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件中的至少一项。

可选的,上述播放器事件还可以进一步包括但不限于开始准备播放事件、开始播放事件、开始拖动事件、拖动结束事件、暂停事件、继续播放时间、可播时长事件、码率切换事件、播放错误事件、播放结束事件等。具体的,上述各个播放器事件的上报时机可以如表1所示:

表1

可以理解的是,本发明实施例可以根据实际需求合理设置上述播放器事件所具体包含的播放器事件类型。

步骤102、根据所述播放器事件确定视频播放质量信息。

本发明实施例中,视频播放质量信息与播放器事件相对应,具体的,当播放器事件包括缓冲开始事件和缓冲结束事件时,上述视频播放质量信息可以包括视频的卡顿信息,其中,所述卡顿信息可以包括单次卡顿时长、总卡顿时长和卡顿次数等信息;当播放器事件包括上述花屏开始事件和花屏结束事件时,上述视频播放质量信息包括视频的花屏信息,其中,所述花屏信息包括单次花屏时长、总花屏时长和花屏次数等信息;当播放器事件包括上述欠载开始事件和欠载结束事件时,上述视频播放质量信息可以包括视频的欠载信息,其中,所述欠载信息包括单次欠载时长、总欠载时长和欠载次数等信息。

步骤103、按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。

本发明实施例中,机顶盒可以向服务器上报上述视频播放质量信息,以便于服务器根据上述视频播放质量信息进行更为准确的故障定位。

可选的,机顶盒还可以采集网络数据包、系统运行数据等,并上报给服务器,以辅助服务器进行故障定位。

具体的,上述网络数据包的采集可以通过获取系统权限(例如,root权限),并通过网络数据包捕获函数库(例如,libpcap库)抓取每个经过网口的网络数据包。

本发明实施例中,根据不同的数据上报模式(例如,周期上报、节目上报等)可以分别采取流模式和时间模式采集网络数据包。其中,流模式是指按照每个流报文的生命周期进行指标数据采集,例如,采集每条tcp(transmissioncontrolprotocol,传输控制协议)流从三次握手开始到四次挥手结束这段流存活时间的各项指标数据,例如,下载速度、重传率和乱序率等,而每条rtp(real-timetransportprotocol,实时传输协议)流从igmp(internetgroupmanagementprotocol,互联网组管理协议)加入(即join)报文开始到igmp离开(即leave)报文结束,采集这段时间内的rtp抖动、时延、丢包率、乱序率、最大连续丢包数等网络指标。

时间模式是指按照某一时间段内各个报文流的总下载速度、tcp重传率、tcp乱序率、rtp抖动、rtp时延、rtp丢包率、rtp最大连续丢包数等网络指标,而不区分同一时刻不同流的报文。

上述系统运行数据可以包括设备的唯一标识、mac(mediaaccesscontrol,介质访问控制)地址、cpu(centralprocessingunit,中央处理器)使用情况和内存的使用情况等。

可以理解的是,本发明实施例可以在机顶盒启动时,实时采集上述网络数据包、系统运行数据和播放器事件等数据,并进行存储。

本发明实施例提供的视频质量监测方法,通过获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件;根据所述播放器事件确定视频播放质量信息;按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。由于播放器可以直接感知其自身的播放器事件,因此根据播放器上报的播放器事件确定视频播放质量信息,并上报给服务器,可以更为准确的反应视频质量,从而可以提高视频质量监测结果的准确性。

本发明实施例中,为了便于描述,以下将按照预设时间周期向所述服务器上报所述视频播放质量信息简称为周期上报,将按照节目周期向所述服务器上报所述视频播放质量信息简称为节目上报,将在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息检测为告警上报。

可选的,本发明实施例可以在上述步骤103之前,在机顶盒开机启动后,采集机顶盒唯一标识、mac地址、网络连接方式等信息上报到软探针监测平台,从而软探针监测平台可以根据机顶盒唯一标识下发相关的配置参数,例如,告警阈值、节目上报的时间间隔和周期上报的时间间隔(即预设时间周期)、牌照方包名、epg(electronicprogramguide,电子节目指南)地址列表和节目类型判断规则等信息。

本发明实施例中,周期上报可以是每隔预设时间周期上报该周期时间内视频播放质量信息(例如,卡顿信息、花屏信息、欠载信息、播放总次数、播放成功数等用户可感知指标信息),以及m3u8(即utf-8编码格式的m3u文件,其中,m3u文件是记录了一个索引纯文本文件)、ts(transportstream,传输流)的tcp相关指标和http(hyper-texttransferprotocol,超文本传输协议)相关指标,epg的tcp相关指标和http相关指标。其中,上述预设时间周期可以根据实际情况进行合理设置,例如,20秒。

本发明实施例中,节目上报可以通过开始播放事件触发,其中,节目上报时间可以是在节目播放某一时长(例如,1分钟)时上报一次,之后每隔某一时间间隔(例如,10秒)上报一次,直至节目退出时再上报一次。例如,从8:00:00开始播放某一节目,在8:30:00退出节目播放,则可以在8:01:00上报一次,并后续每隔10秒上报一次,直至节目退出播放时(即8:30:00)再上报一次。

具体的,对于ott视频,节目上报可以包括上报从节目开始播放到上报时间内首次加载时长、卡顿时长、卡顿次数、卡顿区间分布、观看时长等用户可感知指标,以及上报m3u8和ts的tcp请求次数、tcp请求成功次数、tcp三次握手的时间最大值和平均值、tcp的重传率最大值和平均值、tcp的乱序率最大值和平均值、http的请求次数、http请求成功次数、http下载速度、http的请求响应时长、hls(即httplivestreaming,也即基于http的流媒体网络传输协议)的分片列表信息等网络指标。

对于iptv视频,节目上报可以包括上报从节目开始播放到上报时间内的首次加载时长、花屏时长、花屏次数、花屏区间分布、欠载时长、欠载次数、欠载区间分布、观看时长等用户可感知指标,以及上报rtp丢包率、rtp抖动、rtp时延、rtp乱序率、rtp重复率、rtp最大连续丢包数、rtp流列表信息、rtsp请求次数、rtsp平均响应时延等网络指标。

需要说明的是,在节目上报中所上报的网络指标可以为采用上述流模式所采集到的指标。

本发明实施例中,告警上报是在视频播放质量信息满足告警上报条件时所触发的数据上报,可以减少数据上报频率。

可选的,所述在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息的步骤中:

所述告警上报条件包括卡顿告警上报条件,所述卡顿告警上报条件包括第一预设时长内卡顿次数大于第一预设次数,或者第一预设时长内单次卡顿时长超过第二预设时长,或者第一预设时长内总卡顿时长超过第三预设时长;和/或

所述告警上报条件包括花屏告警上报条件,所述花屏告警上报条件包括第四预设时长内花屏次数大于第二预设次数,或者第四预设时长内单次花屏时长超过第五预设时长,或者第四预设时长内总花屏时长超过第六预设时长;和/或

所述告警上报条件包括欠载告警上报条件,所述欠载告警上报条件包括第七预设时长内欠载次数大于第三预设次数,或者第七预设时长内单次欠载时长超过第八预设时长,或者第七预设时长内总欠载时长超过第九预设时长。

本发明实施例中,上述第一预设时长、第二预设时长、第三预设时长、第一预设次数可以根据实际情况进行合理设置,例如,第一预设时长可以是2分钟,第二预设时长可以是5秒,第三预设时长可以是15秒,第一预设次数可以是10次。同样的,上述第四预设时长、第五预设时长、第六预设时长、第二预设次数也可以根据实际情况进行合理设置,上述第七预设时长、第八预设时长、第九预设时长、第三预设次数也可以根据实际情况进行合理设置。

需要说明的是,上述第一预设时长、第四预设时长和第七预设时长可以相同,也可以不同,上述第二预设时长、第五预设时长和第八预设时长可以相同,也可以不同,上述第三预设时长、第六预设时长和第九预设时长可以相同,也可以不同,上述第一预设次数、第二预设次数和第三预设次数可以相同,也可以不同。

本发明实施例中,为了便于描述,可以将告警上报分为卡顿告警、花屏告警、欠载告警和cdn(contentdeliverynetwork,内容分发网络)告警,其中,卡顿告警是指视频播放质量信息满足卡顿告警上报条件,花屏告警是指视频播放质量信息满足花屏告警上报条件,欠载告警是指视频播放质量信息满足欠载告警上报条件,cdn告警可以是指epg、m3u8和ts的http请求响应码大于或等于第一预设值(例如,400)且小于第二预设值(例如,600)时进行告警,并上报url(uniformresourcelocator,统一资源定位符)和dns(domainnamesystem,域名系统)相关指标,例如,域名相关解析数据、跳转路径等。

具体的,上述卡顿告警通常适用于ott视频,除了可以上报机顶盒的基本信息和节目基本信息(例如,节目url,平均码率,牌照方包名和版本号等),还可以上报卡顿时间区间内的卡顿时长、卡顿次数、卡顿区间分布、cpu的使用情况、内存的使用情况、tcp的平均重传率和乱序率,以及卡顿时间区间内每隔预设时间间隔(例如,5秒)的wifi信号量、tcp重传率、剩余可播时长、播放码率和下载速度等,以便服务器进行故障定位。

上述花屏告警和欠载告警通常适用于iptv视频,除了可以上报机顶盒的基本信息和节目基本信息之外,其中,花屏告警还可以上报花屏时间区间内花屏时长、花屏次数、花屏区间分布、cpu的使用情况、内存的使用情况、总的rtp时延抖动和丢包,以及上报花屏时间区间内每隔预设时间间隔(例如,5秒)的下载速度、播放视频码率、rtp平均抖动、rtp丢包率、rtp时延和rtp的最大连续丢包等;欠载告警还可以上报欠载时间区间内欠载时长、欠载次数、欠载区间分布、cpu的使用情况、内存的使用情况、总的rtp时延抖动和丢包,以及上报欠载时间区间内每隔预设时间间隔(例如,5秒)的下载速度、播放视频码率、rtp平均抖动、rtp丢包率、rtp时延和rtp的最大连续丢包等。

需要说明的是,在告警上报中所上报的网络指标可以为采用时间模式采集得到的指标,数据颗粒度较小,更为贴近告警时间里的真实用户场景。

本发明实施例中,上述卡顿时间区间、花屏时间区间或欠载时间区间可以在判断所述视频播放质量信息是否满足告警上报条件过程中确定。

可选的,所述在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息之前,所述方法还包括:判断所述视频播放质量信息是否满足告警上报条件,以及在判断所述视频播放质量信息是否满足告警上报条件过程中确定视频播放质量信息对应的时间区间;

相应的,所述在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息,包括:在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息和所述视频播放质量信息对应的时间区间。

具体的,当视频播放质量信息包括卡顿信息时,则卡顿信息对应的时间区间即为上述卡顿时间区间;当视频播放质量信息包括花屏信息时,则花屏信息对应的时间区间即为上述花屏时间区间;当视频播放质量信息包括欠载信息时,则欠载信息对应的时间区间即为上述欠载时间区间。

本发明实施例通过在判断所述视频播放质量信息是否满足告警上报条件过程中确定视频播放质量信息对应的时间区间,并上报给服务器,不仅可以降低检测频率,而且可以更为准确的定位视频播放质量信息对应的时间区间,便于后续更为准确的进行视频播放故障定位。

可选的,所述在判断所述视频播放质量信息是否满足告警上报条件过程中确定所述视频播放质量信息对应的时间区间,包括:

若接收到所述播放器事件中的第一目标开始事件,则记录所述第一目标开始事件的接收时刻ts1,并启动第一定时器,其中,所述第一定时器的定时时长为第一预设时间长度△t1;

判断在所述第一定时器的定时时长内所述视频播放质量信息是否满足所述告警上报条件;

若在所述第一定时器的定时时长内所述视频播放质量信息满足所述告警上报条件,则记录所述第一定时器定时结束时刻te1,并将所述时刻te1确定为所述视频播放质量信息对应的时间区间的结束时刻。

本发明实施例中,目标开始事件可以是缓冲开始事件、花屏开始事件或欠载开始事件,相应的,上述告警上报条件可以是卡顿告警上报条件、花屏告警上报条件或欠载告警上报条件。以下以目标开始时间为缓冲开始事件,告警上报条件为卡顿告警上报条件为例进行说明。

例如,在未执行是否满足卡顿告警上报条件检测的时间期间内,若接收到第一缓冲开始事件,则记录第一卡顿开始事件的接收时刻ts1,并启动第一定时器进行定时,其中,第一定时器的定时时长,也即第一预设时间长度△t1,可以根据实际情况进行合理设置,例如,2分钟。在启动第一定时器后,可以判断在△t1内视频的卡顿信息是否满足卡顿告警上报条件,例如,判断在2分钟内视频的单次卡顿时长是否大于5秒,或是判断2分钟内视频的总卡顿时长是否大于15秒,或是判断2分钟内视频的总卡顿次数是否大于10次等,并可以在上述任一项满足时确定在△t1内视频的卡顿信息满足卡顿告警上报条件。

具体的,在第一定时器的定时时长(也即△t1)内卡顿信息满足卡顿告警上报条件时,记录第一定时器定时结束时刻te1,并将时刻te1确定为卡顿时间区间的结束时刻,其中,te1=ts1+△t1。可选的,该卡顿时间区间的起始时刻可以为时刻ts1。在第一定时器的定时时长(也即△t1)内卡顿信息不满足卡顿告警上报条件时,可以结束流程,也可以检测在所述第一定时器定时结束时所述视频是否处于目标播放状态。

可选的,所述方法还包括:

若在所述第一定时器的定时时长内所述视频播放质量信息不满足所述告警上报条件,则检测在所述第一定时器定时结束时所述视频是否处于目标播放状态;

若在所述第一定时器定时结束时所述视频未处于目标播放状态,则检测在所述第一定时器的定时时长内是否接收到所述播放器事件中的至少一个第二目标开始事件;

若在所述第一定时器的定时时长内接收到所述播放器事件中的至少一个第二目标开始事件,则获取所述至少一个第二目标开始事件中最先接收到的第二目标开始事件的接收时刻ts2;

检测从所述接收时刻ts2开始的△t1内所述视频播放质量信息是否满足所述告警上报条件;

若从所述接收时刻ts2开始的△t1内所述视频播放质量信息满足所述告警上报条件,则记录时刻te2,并将所述时刻te2确定为所述视频播放质量信息对应的时间区间的结束时刻,其中,te2=ts2+△t1。

本发明实施例中,在所述第一定时器的定时时长内所述视频播放质量信息不满足所述告警上报条件时,检测在所述第一定时器定时结束时所述视频是否处于目标播放状态,其中,目标播放状态与上述目标开始事件相对应,也即当目标开始时间为缓冲开始事件时,则目标播放状态指卡顿状态,当目标开始时间为花屏开始事件时,则目标播放状态指花屏状态,当目标开始时间为欠载开始事件时,则目标播放状态指欠载状态。以下以目标播放状态为卡顿状态为例进行说明。

具体的,可以判断在第一定时器定时时间内最后接收到的缓冲开始事件之后是否接收到缓冲结束事件,若未接收到缓冲结束事件则说明视频仍处于卡顿状态,若接收到缓冲结束事件则说明视频未处于卡顿状态。在确定所述第一定时器定时结束时所述视频未处于卡顿状态时,检测在所述第一定时器的定时时长内是否接收到至少一个第二缓冲开始事件,若接收到,则获取至少一个第二缓冲开始事件中最先接收到的第二缓冲开始事件的接收时刻ts2,并检测从所述接收时刻ts2开始的△t1内所述视频的卡顿信息是否满足卡顿告警上报条件。

例如,在第一定时器的定时时长内共接收到缓冲开始事件a、缓冲开始事件b和缓冲开始事件c,其中,缓冲开始事件a的接收时间早于缓冲开始事件b和缓冲开始事件c的接收时间,则获取缓冲开始时间a的接收时间ts2,并判断从接收时刻ts2开始的△t1内所述视频的卡顿信息是否满足卡顿告警上报条件,例如,判断从接收时刻ts2开始的△t1内视频的单次卡顿时长是否大于5秒,或是判断从接收时刻ts2开始的△t1内视频的总卡顿时长是否大于15秒,或是判断从接收时刻ts2开始的△t1内视频的总卡顿次数是否大于10次等。

具体的,若从所述接收时刻ts2开始的△t1内所述视频的卡顿信息满足卡顿告警上报条件,则记录时刻te2,并将时刻te2确定为卡顿时间区间的结束时刻,其中,te2=ts2+△t1,若从所述接收时刻ts2开始的△t1内所述视频的卡顿信息不满足卡顿告警上报条件,则可以返回执行检测在从所述接收时刻ts2开始的△t1结束时所述视频是否处于卡顿状态。可选的,该卡顿时间区间的起始时刻可以为时刻ts1,也可以为时刻ts2。

可选的,由于在第一定时器的定时时长内已经统计了从ts2时刻至(ts1+△t1)时刻视频的卡顿信息,因此,本发明实施例在检测从所述接收时刻ts2开始的△t1内所述视频的卡顿信息是否满足卡顿告警上报条件过程中,可以仅检测从(ts1+△t1)时刻至(ts2+△t1)时刻内视频的卡顿信息,并结合从ts2时刻至(ts1+△t1)时刻视频的卡顿信息和(ts1+△t1)时刻至(ts2+△t1)时刻内视频的卡顿信息,以判断从所述接收时刻ts2开始的△t1内所述视频的卡顿信息是否满足卡顿告警上报条件。

需要说明的是,若在所述第一定时器的定时时长内未接收到至少一个第二缓冲开始事件,则可以结束流程。

可选的,所述方法还包括:

若在所述第一定时器定时结束时所述视频处于目标播放状态,则启动第二定时器,其中,所述第二定时器的定时时长为第二预设时间长度△t2;

若在所述第二定时器的定时时长内接收到目标结束事件,则判断从所述时刻ts1至所述目标结束事件的接收时刻te3内所述视频播放质量信息是否满足所述告警上报条件;

若从所述时刻ts1至所述时刻te3内所述视频播放质量信息满足所述告警上报条件,则记录所述时刻te3,并将所述时刻te3确定为所述视频播放质量信息对应的时间区间的结束时刻。

本发明实施例中,目标结束事件与上述目标开始事件相对应,也即当目标开始时间为缓冲开始事件时,则目标结束事件指缓冲结束事件,当目标开始时间为花屏开始事件时,则目标结束事件指花屏结束事件,当目标开始时间为欠载开始事件时,则目标结束事件指欠载结束事件。以下以目标结束事件为缓冲结束事件,目标播放状态为卡顿状态为例进行说明。

具体的,在所述第一定时器定时结束时所述视频处于卡顿状态时,启动第二定时器,其中,第二定时器的定时时长,也即第二预设时间长度△t2,可以根据实际情况进行合理设置,例如,2分钟。在第二定时器的定时时长内,若接收到缓冲结束事件,则说明卡顿状态结束,此时可以判断从时刻ts1至卡顿结束事件的接收时刻te3内所述视频的卡顿信息是否满足卡顿告警上报条件,若满足,则记录时刻te3,并将时刻te3确定为卡顿时间区间的结束时刻;若不满足,则可以结束流程。可选的,该卡顿时间区间的起始时刻可以为时刻ts1。

可选的,所述方法还包括:若在所述第二定时器定时结束时所述视频处于目标播放状态,则记录所述第二定时器定时结束时刻te4,并将所述时刻te4确定为所述视频播放质量信息对应的时间区间的结束时刻。

本发明实施例中,以目标播放状态为卡顿状态为例,若在所述第二定时器定时结束时所述视频处于卡顿状态,则记录第二定时器定时结束时刻te4,并将所述时刻te4确定为卡顿时间区间的结束时刻,其中,te4=ts1+△t1+△t2。可选的,该卡顿时间区间的起始时刻可以为时刻ts1。

可以理解的是,对于花屏时间区间和欠载时间区间的结束时刻可以采用与上述确定卡顿时间区间的结束时刻相同的方式进行确定,本发明实施例对此不做赘述。

实际应用中,机顶盒为了防止网络抖动、改善用户观看视频体验,播放器通常采用缓存策略,因此,以卡顿为例,当用户感知卡顿的时候,导致本次卡顿的网络环境可能早已经发生。为了便于服务器更为准确的定位故障位置,本发明实施例根据可播时长事件(也即播放器缓存的可播时长事件)对数据上报时间区间进行校正。

可选的,所述播放器事件还包括可播时长事件,当所述视频为ott视频时,所述在判断所述视频播放质量信息是否满足告警上报条件过程中确定所述视频播放质量信息对应的时间区间,还包括:

从上报时刻位于所述时刻ts1之前的可播时长事件中,获取可播时长差值大于预设值且上报时刻与所述时刻ts1的时间间隔最短的相邻上报的两个可播时长事件的上报时刻t1和t2;

将所述上报时刻t1和t2中的较大时刻确定为所述视频播放质量信息对应的时间区间的开始时刻。

实际应用中,对于ott视频,播放器通常采用缓存策略,以改善用户观看体验。具体的,播放器通常每隔预设时长(例如,10秒)上报一次可播时长事件,也即播放器缓存的可播时长。以播放器每隔10秒上报一次、视频播放质量信息对应的时间区间为卡顿时间区间为例,由于可播时长事件每10秒上报一次,如果相邻上报的两个可播时长的差值大于10秒,则说明在此10秒内没有数据下载,因此,可以确定数据入流小于出流的转折点,例如,相邻上报的两个可播时长的差值大于预设值的可播时长事件的上报时刻,为卡顿发生的真正触发开始点。可选的,上述预设值可以根据实际情况进行合理设置,例如,5秒。

例如,播放器每隔10秒上报一次可播时长事件,预设值为5秒,则可以获取上报时刻位于时刻ts1之前的可播时长事件中,可播时长差值大于5秒且上报时刻与时刻ts1的时间间隔最短的相邻上报的两个可播时长事件的上报时刻,例如,可播时长事件a和可播时长事件b为在时刻ts1之前相邻上报的两个可播时长事件,且可播时长事件a对应的可播时长和可播时长事件b的差值大于5秒,且上报时刻与时刻ts1的时间间隔最短,则获取可播时长事件a和可播时长事件b的上报时刻ta和tb,ta>tb,则将ta确定为卡顿时间区间的开始时刻。

可选的,所述播放器事件还包括可播时长事件,当所述视频为iptv视频时,所述在判断所述视频播放质量信息是否满足告警上报条件过程中确定所述视频播放质量信息对应的时间区间,还包括:

获取上报时刻位于所述时刻ts1之前且与所述时刻ts1相隔时间最短的目标可播时长事件;

将所述目标可播时长事件的上报时刻确定为所述视频播放质量信息对应的时间区间的开始时刻。

实际应用中,对于iptv视频,机顶盒通常无缓存策略,所以通常不需要通过可播时长去校准所述视频播放质量信息对应的时间区间的开始时刻。以所述视频播放质量信息对应的时间区间为花屏时间区间为例,可以获取上报时刻位于时刻ts1之前且与所述时刻ts1相隔时间最短的目标可播时长事件,并将该目标可播时长事件的上报时刻确定为花屏时间区间的开始时刻。

同样的,欠载时间区间的开始时刻也可以通过上述方式进行确定,本发明实施例不做赘述。

本发明实施例基于播放器事件进行数据上报,这种方式不需要复杂的算法去推测用户感知,就直接能贴近用户感知,并从用户感知的角度上报各种相关数据,便于服务器进行精确的故障定位。

以下结合图2对本发明实施例中确定卡顿时间区间进行说明:

步骤201、若接收到所述播放器事件中的第一缓冲开始事件,则记录所述第一缓冲开始事件的接收时刻ts1,并启动第一定时器。

本发明实施例中,可以在未执行是否满足卡顿告警上报条件检测的时间期间内,若接收到第一缓冲开始事件,则记录第一卡顿开始事件的接收时刻ts1,并启动第一定时器进行定时,其中,第一定时器的定时时长,也即第一预设时间长度△t1,可以根据实际情况进行合理设置,例如,2分钟。

步骤202、判断在所述第一定时器的定时时长内所述视频的卡顿信息是否满足卡顿告警上报条件。

具体的,在启动第一定时器后,可以判断在△t1内视频的卡顿信息是否满足卡顿告警上报条件,例如,判断在2分钟内视频的单次卡顿时长是否大于5秒,或是判断2分钟内视频的总卡顿时长是否大于15秒,或是判断2分钟内视频的总卡顿次数是否大于10次等,并可以在上述任一项满足时确定在△t1内视频的卡顿信息满足卡顿告警上报条件。在确定述第一定时器的定时时长内所述视频的卡顿信息满足卡顿告警上报条件时,执行步骤203,否则执行步骤204。

步骤203、记录所述第一定时器定时结束时刻te1,并将所述时刻te1确定为卡顿时间区间的结束时刻。

步骤204、检测在所述第一定时器定时结束时所述视频是否处于卡顿状态。

具体的,在确定第一定时器定时结束时所述视频处于卡顿状态时,执行步骤209,否则执行步骤205。

步骤205、检测在所述第一定时器的定时时长内是否接收到所述播放器事件中的至少一个第二缓冲开始事件。

具体的,在确定所述第一定时器的定时时长内接收到所述播放器事件中的至少一个第二缓冲开始事件时,执行步骤206,否则结束流程。

步骤206、获取所述至少一个第二缓冲开始事件中最先接收到的第二缓冲开始事件的接收时刻ts2。

例如,在第一定时器的定时时长内共接收到缓冲开始事件a、缓冲开始事件b和缓冲开始事件c,其中,缓冲开始事件a的接收时间早于缓冲开始事件b和缓冲开始事件c的接收时间,则获取缓冲开始时间a的接收时间ts2。

步骤207、检测从所述接收时刻ts2开始的△t1内所述视频的卡顿信息是否满足卡顿告警上报条件。

具体的,在确定从所述接收时刻ts2开始的△t1内所述视频的卡顿信息满足卡顿告警上报条件时,执行步骤208,否则可以结束流程,也可以检测ts2+△t1时刻所述视频是否处于卡顿状态,并在未处于卡顿状态时检测从所述接收时刻ts2开始的△t1之内是否接收到缓冲开始事件,并从所述接收时刻ts2开始的△t1之内接收到缓冲开始事件时,获取最先接收到的缓冲开始事件的接收时刻,具体执行流程可以同上述步骤204至步骤207。

步骤208、记录时刻te2,并将所述时刻te2确定为卡顿时间区间的结束时刻。

步骤209、启动第二定时器。

具体的,在所述第一定时器定时结束时所述视频处于卡顿状态时,启动第二定时器,其中,第二定时器的定时时长,也即第二预设时间长度△t2,可以根据实际情况进行合理设置,例如,2分钟。

步骤210、若在所述第二定时器的定时时长内接收到缓冲结束事件,则判断从所述时刻ts1至所述缓冲结束事件的接收时刻te3内所述视频的卡顿是否满足卡顿告警上报条件。

具体的,在确定从所述时刻ts1至所述缓冲结束事件的接收时刻te3内所述视频的卡顿满足卡顿告警上报条件时,执行步骤211,否则结束流程。

步骤211、记录所述时刻te3,并将所述时刻te3确定为卡顿时间区间的结束时刻。

步骤212、若在所述第二定时器定时结束时所述视频处于卡顿状态,记录所述第二定时器定时结束时刻te4,并将所述时刻te4确定为卡顿时间区间的结束时刻。

同样的,花屏时间区间、欠载时间区间可以采用上述卡顿时间区间同样的确定方式进行确定,在此不做赘述。

由上,本发明实施例通过最贴近用户的机顶盒的播放器上报相关的播放器事件,以获取用户感知,并从用户感知出发,采集最贴近用户感知的相关数据上报给服务器进行故障定位,可以提高故障定位的准确性。

参见图3,图3是本发明实施提供的机顶盒的结构图。如图3所示,机顶盒300包括:接收器301、处理器302和发送器303,其中:

接收器301,用于获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件;

处理器302,用于根据所述播放器事件确定视频播放质量信息;

发送器303,用于按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。

可选的,所述告警上报条件包括卡顿告警上报条件,所述卡顿告警上报条件包括第一预设时长内卡顿次数大于第一预设次数,或者第一预设时长内单次卡顿时长超过第二预设时长,或者第一预设时长内总卡顿时长超过第三预设时长;和/或

所述告警上报条件包括花屏告警上报条件,所述花屏告警上报条件包括第四预设时长内花屏次数大于第二预设次数,或者第四预设时长内单次花屏时长超过第五预设时长,或者第四预设时长内总花屏时长超过第六预设时长;和/或

所述告警上报条件包括欠载告警上报条件,所述欠载告警上报条件包括第七预设时长内欠载次数大于第三预设次数,或者第七预设时长内单次欠载时长超过第八预设时长,或者第七预设时长内总欠载时长超过第九预设时长。

可选的,所述处理器302还用于:

所述在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息之前,判断所述视频播放质量信息是否满足告警上报条件,以及在判断所述视频播放质量信息是否满足告警上报条件过程中确定视频播放质量信息对应的时间区间;

所述发送器303还用于:

在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息和所述视频播放质量信息对应的时间区间。

可选的,所述处理器302具体用于:

若接收到所述播放器事件中的第一目标开始事件,则记录所述第一目标开始事件的接收时刻ts1,并启动第一定时器,其中,所述第一定时器的定时时长为第一预设时间长度△t1;

判断在所述第一定时器的定时时长内所述视频播放质量信息是否满足所述告警上报条件;

若在所述第一定时器的定时时长内所述视频播放质量信息满足所述告警上报条件,则记录所述第一定时器定时结束时刻te1,并将所述时刻te1确定为所述视频播放质量信息对应的时间区间的结束时刻。

可选的,所述处理器302还用于:

若在所述第一定时器的定时时长内所述视频播放质量信息不满足所述告警上报条件,则检测在所述第一定时器定时结束时所述视频是否处于目标播放状态;

若在所述第一定时器定时结束时所述视频未处于目标播放状态,则检测在所述第一定时器的定时时长内是否接收到所述播放器事件中的至少一个第二目标开始事件;

若在所述第一定时器的定时时长内接收到所述播放器事件中的至少一个第二目标开始事件,则获取所述至少一个第二目标开始事件中最先接收到的第二目标开始事件的接收时刻ts2;

检测从所述接收时刻ts2开始的△t1内所述视频播放质量信息是否满足所述告警上报条件;

若从所述接收时刻ts2开始的△t1内所述视频播放质量信息满足所述告警上报条件,则记录时刻te2,并将所述时刻te2确定为所述视频播放质量信息对应的时间区间的结束时刻,其中,te2=ts2+△t1。

可选的,所述处理器302还用于:

若在所述第一定时器定时结束时所述视频处于目标播放状态,则启动第二定时器,其中,所述第二定时器的定时时长为第二预设时间长度△t2;

若在所述第二定时器的定时时长内接收到目标结束事件,则判断从所述时刻ts1至所述目标结束事件的接收时刻te3内所述视频播放质量信息是否满足所述告警上报条件;

若从所述时刻ts1至所述时刻te3内所述视频播放质量信息满足所述告警上报条件,则记录所述时刻te3,并将所述时刻te3确定为所述视频播放质量信息对应的时间区间的结束时刻。

可选的,所述处理器302还用于:

若在所述第二定时器定时结束时所述视频处于目标播放状态,则记录所述第二定时器定时结束时刻te4,并将所述时刻te4确定为所述视频播放质量信息对应的时间区间的结束时刻。

可选的,所述播放器事件还包括可播时长事件,所述处理器302还用于:

当所述视频为ott视频时,从上报时刻位于所述时刻ts1之前的可播时长事件中,获取可播时长差值大于预设值且上报时刻与所述时刻ts1的时间间隔最短的相邻上报的两个可播时长事件的上报时刻t1和t2;

将所述上报时刻t1和t2中的较大时刻确定为所述视频播放质量信息对应的时间区间的开始时刻。

可选的,所述播放器事件还包括可播时长事件,所述处理器302还用于:

当所述视频为iptv视频时,获取上报时刻位于所述时刻ts1之前且与所述时刻ts1相隔时间最短的目标可播时长事件;

将所述目标可播时长事件的上报时刻确定为所述视频播放质量信息对应的时间区间的开始时刻。

上述机顶盒300能够实现图1至图2的方法实施例的各个过程,并达到相同的效果为避免重复,这里不再赘述。

本发明实施例的机顶盒300,接收器301,用于获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件;处理器302,用于根据所述播放器事件确定视频播放质量信息;发送器303,用于按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。由于播放器可以直接感知其自身的播放器事件,因此根据播放器上报的播放器事件确定视频播放质量信息,并上报给服务器,可以更为准确的反应视频质量,从而可以提高视频质量监测结果的准确性。

本发明实施例还提供一种机顶盒,包括处理器、存储器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述计算机程序被所述处理器执行时实现上述任一方法实施例的视频质量监测方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。

本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的视频质量监测方法的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。其中,所述的计算机可读存储介质,如只读存储器(read-onlymemory,简称rom)、随机存取存储器(randomaccessmemory,简称ram)、磁碟或者光盘等。

参见图4,本发明实施例还提供一种机顶盒,该机顶盒400包括存储器401、处理器402及存储在所述存储器401上并可在所述处理器402上运行的计算机程序4011,所述处理器402执行所述程序4011时实现如下步骤:

获取播放器上报的播放器事件,其中,所述播放器事件包括如下至少一项:缓冲开始事件、缓冲结束事件、花屏开始事件、花屏结束事件、欠载开始事件和欠载结束事件;根据所述播放器事件确定视频播放质量信息;按照预设时间周期或节目周期向服务器上报所述视频播放质量信息,和/或,在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息。

可选的,所述告警上报条件包括卡顿告警上报条件,所述卡顿告警上报条件包括第一预设时长内卡顿次数大于第一预设次数,或者第一预设时长内单次卡顿时长超过第二预设时长,或者第一预设时长内总卡顿时长超过第三预设时长;和/或

所述告警上报条件包括花屏告警上报条件,所述花屏告警上报条件包括第四预设时长内花屏次数大于第二预设次数,或者第四预设时长内单次花屏时长超过第五预设时长,或者第四预设时长内总花屏时长超过第六预设时长;和/或

所述告警上报条件包括欠载告警上报条件,所述欠载告警上报条件包括第七预设时长内欠载次数大于第三预设次数,或者第七预设时长内单次欠载时长超过第八预设时长,或者第七预设时长内总欠载时长超过第九预设时长。

可选的,所述处理器402执行所述程序4011还实现如下步骤:

判断所述视频播放质量信息是否满足告警上报条件,以及在判断所述视频播放质量信息是否满足告警上报条件过程中确定视频播放质量信息对应的时间区间;

所述在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息,包括:

在所述视频播放质量信息满足告警上报条件时,向所述服务器上报所述视频播放质量信息和所述视频播放质量信息对应的时间区间。

可选的,所述处理器402执行所述程序4011还实现如下步骤:

若接收到所述播放器事件中的第一目标开始事件,则记录所述第一目标开始事件的接收时刻ts1,并启动第一定时器,其中,所述第一定时器的定时时长为第一预设时间长度△t1;

判断在所述第一定时器的定时时长内所述视频播放质量信息是否满足所述告警上报条件;

若在所述第一定时器的定时时长内所述视频播放质量信息满足所述告警上报条件,则记录所述第一定时器定时结束时刻te1,并将所述时刻te1确定为所述视频播放质量信息对应的时间区间的结束时刻。

可选的,所述处理器402执行所述程序4011还实现如下步骤:

若在所述第一定时器的定时时长内所述视频播放质量信息不满足所述告警上报条件,则检测在所述第一定时器定时结束时所述视频是否处于目标播放状态;

若在所述第一定时器定时结束时所述视频未处于目标播放状态,则检测在所述第一定时器的定时时长内是否接收到所述播放器事件中的至少一个第二目标开始事件;

若在所述第一定时器的定时时长内接收到所述播放器事件中的至少一个第二目标开始事件,则获取所述至少一个第二目标开始事件中最先接收到的第二目标开始事件的接收时刻ts2;

检测从所述接收时刻ts2开始的△t1内所述视频播放质量信息是否满足所述告警上报条件;

若从所述接收时刻ts2开始的△t1内所述视频播放质量信息满足所述告警上报条件,则记录时刻te2,并将所述时刻te2确定为所述视频播放质量信息对应的时间区间的结束时刻,其中,te2=ts2+△t1。

可选的,所述处理器402执行所述程序4011还实现如下步骤:

若在所述第一定时器定时结束时所述视频处于目标播放状态,则启动第二定时器,其中,所述第二定时器的定时时长为第二预设时间长度△t2;

若在所述第二定时器的定时时长内接收到目标结束事件,则判断从所述时刻ts1至所述目标结束事件的接收时刻te3内所述视频播放质量信息是否满足所述告警上报条件;

若从所述时刻ts1至所述时刻te3内所述视频播放质量信息满足所述告警上报条件,则记录所述时刻te3,并将所述时刻te3确定为所述视频播放质量信息对应的时间区间的结束时刻。

可选的,所述处理器402执行所述程序4011还实现如下步骤:

若在所述第二定时器定时结束时所述视频处于目标播放状态,则记录所述第二定时器定时结束时刻te4,并将所述时刻te4确定为所述视频播放质量信息对应的时间区间的结束时刻。

可选的,所述播放器事件还包括可播时长事件,当所述视频为ott视频时,所述处理器402执行所述程序4011还实现如下步骤:

从上报时刻位于所述时刻ts1之前的可播时长事件中,获取可播时长差值大于预设值且上报时刻与所述时刻ts1的时间间隔最短的相邻上报的两个可播时长事件的上报时刻t1和t2;

将所述上报时刻t1和t2中的较大时刻确定为所述视频播放质量信息对应的时间区间的开始时刻。

可选的,所述播放器事件还包括可播时长事件,当所述视频为iptv视频时,所述处理器402执行所述程序4011还实现如下步骤:

获取上报时刻位于所述时刻ts1之前且与所述时刻ts1相隔时间最短的目标可播时长事件;

将所述目标可播时长事件的上报时刻确定为所述视频播放质量信息对应的时间区间的开始时刻。

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。

所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。

在本申请所提供的实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本发明实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。

所述功能如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、rom、ram、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

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