本申请涉及视频领域,具体而言,涉及一种视频检测方法和装置。
背景技术:
:在播放视频时,客户端通常需要先加载视频数据,然后进行播放,如果有些视频的播放量低于预期,其原因可能是视频的内容不能吸引用户,或者是视频的加载出了问题,从而影响了用户体验。目前,大多数视频提供商都比较注重视频的内容,却忽略了视频加载的问题,然而,当视频加载出现问题时,即使视频内容能够吸引用户,其播放量也难以达到预期。因此,视频提供商如果能够找出存在加载问题的视频,这将能够大大改善视频的播放量,然而目前还没有能够确定出存在加载问题的视频的相关技术。针对上述的问题,目前尚未提出有效的解决方案。技术实现要素:本申请实施例提供了一种视频检测方法和装置,以至少解决相关技术中无法确定出存在加载问题的视频的技术问题。根据本申请实施例的一个方面,提供了一种视频检测方法,包括:接收客户端发送的目标数据,所述目标数据为表示所述客户端在播放目标视频的过程中状态变化的数据,其中,所述状态变化包括:从播放状态变为缓冲状态、从所述缓冲状态变为所述播放状态;对所述目标数据进行解析,得到所述目标视频的缓冲参数,所述缓冲参数为用于表示所述目标视频在播放过程中的缓冲情况的参数;判断所述缓冲参数是否满足预设条件;在所述缓冲参数满足所述预设条件时,确定所述目标视频存在加载问题。进一步地,所述状态变化还包括:从所述缓冲状态变为关闭状态,其中,对所述目标数据进行解析,得到所述目标视频的缓冲参数包括:从所述目标数据中确定出所述目标视频关闭的总次数和从所述缓冲状态变为所述关闭状态的次数;计算所述目标视频从所述缓冲状态变为所述关闭状态的次数与所述目标视频关闭的总次数的比值, 将所述比值作为所述缓冲参数;判断所述缓冲参数是否满足预设条件包括:判断所述比值是否超过第一阈值;在确定所述比值超过所述第一阈值时,确定所述缓冲参数满足所述预设条件。进一步地,在从所述目标数据中确定出所述目标视频关闭的总次数和从所述缓冲状态变为所述关闭状态的次数之前,所述方法还包括:从所述目标数据中提取用于表示所述目标视频关闭的关闭数据,其中,所述关闭数据记录有所述目标视频在关闭之前所处的状态;根据所述关闭数据判断所述目标视频在关闭之前所处的状态是否是所述缓冲状态;在判断是所述缓冲状态时,确定所述目标视频的该次播放是从所述缓冲状态变为所述关闭状态;或者,从所述目标数据中提取用于表示所述目标视频关闭的关闭数据;判断在接收所述关闭数据之前接收到的最后一条目标数据是否是表示所述目标视频从所述播放状态变为所述缓冲状态的数据;在判断出是表示所述目标视频从所述播放状态变为所述缓冲状态的数据时,确定所述目标视频的该次播放是从所述缓冲状态变为所述关闭状态。进一步地,所述状态变化还包括:从所述缓冲状态变为关闭状态,其中,对所述目标数据进行解析,得到所述目标视频的缓冲参数包括:根据所述目标数据确定出所述目标视频在播放过程中处于所述缓冲状态的总时间与处于所述播放状态的总时间,计算处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值,将计算出的处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值作为所述缓冲参数;判断所述缓冲参数是否满足预设条件包括:判断处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值是否超过第二阈值;在处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值超过所述第二阈值时,确定所述缓冲参数满足所述预设条件。进一步地,所述目标视频存在加载问题包括所述目标视频的内容分发网络加速存在问题和/或播放所述目标视频的网络存在问题。根据本申请实施例的另一方面,还提供了一种视频检测装置,包括:接收单元,用于接收客户端发送的目标数据,所述目标数据为表示所述客户端在播放目标视频的过程中状态变化的数据,其中,所述状态变化包括:从播放状态变为缓冲状态、从所述缓冲状态变为所述播放状态;解析单元,用于对所述目标数据进行解析,得到所述目标视频的缓冲参数,所述缓冲参数为用于表示所述目标视频在播放过程中的缓冲情况的参数;第一判断单元,用于判断所述缓冲参数是否满足预设条件;第一确定单元,用于在所述第一判断单元判断出所述缓冲参数满足所述预设条件之后,确定所述目标视频存在加载问题。进一步地,所述状态变化还包括:从所述缓冲状态变为关闭状态,其中,所述解析单元包括:第一确定子单元,用于从所述目标数据中确定出所述目标视频关闭的总次数和从所述缓冲状态变为所述关闭状态的次数;第一计算子单元,用于计算所述目标视频从所述缓冲状态变为所述关闭状态的次数与所述目标视频关闭的总次数的比值,将所述比值作为所述缓冲参数;所述第一判断单元包括:第一判断子单元,用于判断所述比值是否超过第一阈值;第二确定子单元,用于在所述第一判断子单元判断出所述比值超过所述第一阈值之后,确定所述缓冲参数满足所述预设条件。进一步地,所述装置还包括:第一提取单元,用于所述第一确定子单元从所述目标数据中确定出所述目标视频关闭的总次数和从所述缓冲状态变为所述关闭状态的次数之前,从所述目标数据中提取用于表示所述目标视频关闭的关闭数据,其中,所述关闭数据记录有所述目标视频在关闭之前所处的状态;第二判断单元,用于根据所述关闭数据判断所述目标视频在关闭之前所处的状态是否是所述缓冲状态;第二确定单元,用于在所述第二判断单元判断出所述目标视频在关闭之前所处的状态是所述缓冲状态之后,确定所述目标视频的该次播放是从所述缓冲状态变为所述关闭状态;或者,所述装置还包括:第二提取单元,用于从所述目标数据中提取用于表示所述目标视频关闭的关闭数据;第三判断单元,用于判断在接收所述关闭数据之前接收到的最后一条目标数据是否是表示所述目标视频从所述播放状态变为所述缓冲状态的数据;第三确定单元,用于在所述第三判断单元判断出接收所述关闭数据之前接收到的最后一条目标数据是表示所述目标视频从所述播放状态变为所述缓冲状态的数据之后,确定所述目标视频的该次播放是从所述缓冲状态变为所述关闭状态。进一步地,所述状态变化还包括:从所述缓冲状态变为关闭状态,其中,所述解析单元包括:第三确定子单元,用于根据所述目标数据确定出所述目标视频在播放过程中处于所述缓冲状态的总时间与处于所述播放状态的总时间,第二计算子单元,用于计算处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值,将计算出的处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值作为所述缓冲参数;所述第一判断单元包括:第二判断子单元,用于判断处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值是否超过第二阈值;第四确定子单元,用于在所述第二判断子单元判断出处于所述缓冲状态的总时间与处于所述播放状态的总时间的比值超过所述第二阈值之后,确定所述缓冲参数满足所述预设条件。进一步地,所述目标视频存在加载问题包括所述目标视频的内容分发网络加速存在问题和/或播放所述目标视频的网络存在问题。在本申请实施例中,接收客户端发送的目标数据,目标数据为表示客户端在播放 目标视频的过程中状态变化的数据,其中,状态变化包括:从播放状态变为缓冲状态、从缓冲状态变为播放状态;对目标数据进行解析,得到目标视频的缓冲参数,缓冲参数为用于表示目标视频在播放过程中的缓冲情况的参数;判断缓冲参数是否满足预设条件;在缓冲参数满足预设条件时,确定目标视频存在加载问题。通过接收播放视频的过程中表示视频状态变化的数据,对这些数据进行解析,分析视频在播放过程中的缓冲情况,从而可以根据该缓冲情况来确定视频是否存在加载问题,例如,如果视频在播放过程中缓冲次数达到预设次数、或处于缓冲状态的时间达到预设时间,则认为视频存在加载问题,进而确定出存在加载问题的视频,从而解决了相关技术中无法确定出存在加载问题的视频的技术问题。附图说明此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:图1是根据本申请实施例的视频检测方法的流程图;以及图2是根据本申请实施例的视频检测装置的示意图。具体实施方式为了使本
技术领域:
的人员更好地理解本申请方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分的实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。需要说明的是,本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。根据本申请实施例,提供了一种视频检测方法的实施例,需要说明的是,在附图的流程图示出的步骤可以在诸如一组计算机可执行指令的计算机系统中执行,并且, 虽然在流程图中示出了逻辑顺序,但是在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤。图1是根据本申请实施例的视频检测方法的流程图,如图1所示,该方法包括如下步骤:步骤S102,接收客户端发送的目标数据,目标数据为表示客户端在播放目标视频的过程中状态变化的数据,其中,状态变化包括:从播放状态变为缓冲状态、从缓冲状态变为播放状态。目标视频可以为需要对其播放过程进行分析的任何视频。用户打开一个视频之后,视频可以有播放状态和缓冲状态等状态。视频播放过程可以是用户打开视频到用户关闭视频的整个过程,也就是说,用户播放视频的过程中,视频既可能处于播放状态,也可能处于缓冲状态。当视频从播放状态变为缓冲状态时,客户端可以记录这个状态变化以及状态变化的时间,并向服务器发送一条数据(目标数据),这条数据中包含的信息能够表明视频从播放状态变为缓冲状态以及客户端记录的开始缓冲的时间。当视频从缓冲状态变为播放状态时,客户端向服务器发送一条数据(目标数据),这条数据中包含的信息能够表明视频从缓冲状态变为播放状态,同时客户端清除开始缓冲的时间,下次进入缓冲时再重新记录。步骤S104,对目标数据进行解析,得到目标视频的缓冲参数,缓冲参数为用于表示目标视频在播放过程中的缓冲情况的参数。服务器接收到客户端发送的数据之后,对这些数据进行解析,得到视频播放情况的信息,使用缓冲参数来表示视频在播放过程的缓冲情况,缓冲参数的计算可有多种方法,以下列出两种方法:1)计算视频在多次播放过程中处于缓冲状态时关闭视频的次数与播放次数的比值,将此比值作为缓冲参数;2)计算视频处于缓冲状态的时间总长度与视频处于播放状态的时间总长度的比值,将此比值作为缓冲参数。缓冲参数的计算还有其他方法,不局限于以上列出的两种方法。步骤S106,判断缓冲参数是否满足预设条件。预设条件为预先设定好的条件,预设条件与多个视频在播放过程中的缓冲情况相关。步骤S108,在缓冲参数满足预设条件时,确定目标视频存在加载问题。如果某个视频的缓冲参数满足预先设定好的条件,则该视频存在加载问题,视频提供商需要对该视频重新进行内容分发网络(ContentDeliveryNetwork,简称CDN) 加载。通过接收播放视频的过程中表示视频状态变化的数据,对这些数据进行解析,分析视频在播放过程中的缓冲情况,从而可以根据该缓冲情况来确定视频是否存在加载问题,例如,如果视频在播放过程中缓冲次数达到预设次数、或处于缓冲状态的时间达到预设时间,则认为视频存在加载问题,进而确定出存在加载问题的视频,解决了现有技术中无法确定出存在加载问题的视频的技术问题。可选地,本申请实施例的视频检测方法提供了两种方式来确定视频在某次关闭时,是否是从缓冲状态变为关闭状态。方式一包括:从目标数据中提取用于表示目标视频关闭的关闭数据,其中,关闭数据记录有目标视频在关闭之前所处的状态;根据关闭数据判断目标视频在关闭之前所处的状态是否是缓冲状态,在判断是缓冲状态时,确定目标视频的该次播放是从缓冲状态变为关闭状态。方式二包括:从目标数据中提取用于表示目标视频关闭的关闭数据;判断在接收关闭数据之前接收到的最后一条目标数据是否是表示目标视频从播放状态变为缓冲状态的数据,在判断出是表示目标视频从播放状态变为缓冲状态的数据时,确定目标视频的该次播放是从缓冲状态变为关闭状态。当客户端检测到用户关闭视频时,客户端会向服务器发送数据,该数据中包含了表示视频关闭的信息,将这条数据称为关闭数据。在上述方式一中,该关闭数据包含了在关闭视频前的瞬间视频所处于的状态(即关闭视频前的瞬间视频处于缓冲状态还是播放状态)的信息;在上述方式二中,该关闭数据可以仅用于表示视频关闭而未包含在关闭视频前的瞬间视频所处于的状态的信息。下面对这两种方式进行具体说明。对于方式一:在关闭数据包含了关闭视频前的瞬间视频所处于的状态的信息的情况下,根据关闭数据,判断关闭视频前的瞬间视频所处于的状态是否为缓冲状态,如果判断出关闭视频前的瞬间视频所处于的状态为缓冲状态,则确定视频的该次播放是从缓冲状态变为关闭状态。对于方式二:在关闭数据未包含关闭视频前的瞬间视频所处于的状态的信息的情况下,判断在接收关闭数据之前接收到的最后一条数据是否为表示视频从播放状态变为缓冲状态的数据,如果判断出接收关闭数据之前接收到的最后一条数据为表示视频从播放状态变 为缓冲状态的数据,则确定视频的该次播放是从缓冲状态变为关闭状态。需要注意的是,由于视频可能被播放了很多次,因此,服务器可能接收了多条关闭数据,在接收关闭数据之前接收到的最后一条数据可能也有多条,即接收每一条关闭数据之前都接收到对应于该关闭数据的最后一条数据。进一步地,在方式二中,为了提高判断视频在某次关闭时,是否是从缓冲状态变为关闭状态的精确度,在判断出接收关闭数据之前接收到的最后一条数据为表示视频从播放状态变为缓冲状态的数据之后,再继续判断是否满足1)和2)两个条件。条件1):接收关闭数据之前接收到的最后一条数据包含的时间信息与关闭数据包含的时间信息不相同。条件2):关闭数据中包含的信息表明视频关闭时已播放时长小于视频时长。如果判断出同时满足1)和2)两个条件,则确定视频的该次播放是从缓冲状态变为关闭状态。通过在判断出接收关闭数据之前接收到的最后一条数据为表示视频从播放状态变为缓冲状态的数据之后,再继续判断是否满足1)和2)两个条件,可以排除掉那些视频进入缓冲状态的瞬间就被关闭的情况,还可以排除掉那些用户已经观看完完整视频(视频的已播放时长等于视频的时长)的情况,提高了使用方式二判断视频在某次关闭时,是否是从缓冲状态变为关闭状态的精确度。进一步地,当服务器接收到客户端发送的表示视频在播放过程中的状态的数据之后,存储这些数据,并将用户的ID和视频编号等信息记录下来,以便于后续进行分析。可选地,状态变化还可以包括:从缓冲状态变为关闭状态,其中,对目标数据进行解析,得到目标视频的缓冲参数包括:从目标数据中确定出目标视频关闭的总次数和从缓冲状态变为关闭状态的次数;计算目标视频从缓冲状态变为关闭状态的次数与目标视频关闭的总次数的比值,将比值作为缓冲参数;判断缓冲参数是否满足预设条件包括:判断比值是否超过第一阈值;在确定比值超过第一阈值时,确定缓冲参数满足预设条件。对服务器接收到的数据进行解析,确定出视频播放的总次数(即目标视频关闭的总次数)和视频在处于缓冲状态时被关闭的次数(即从缓冲状态变为关闭状态的次数)。将视频在处于缓冲状态时被关闭的次数除以视频播放的总次数,得到的值即为缓冲参数。第一阈值为与多个视频的缓冲情况相关的一个量。第一阈值的计算方法可以有多种,下面列出两种:1)计算多个视频的缓冲参数,将多个视频的缓冲参数的加权平均值作为第一阈值,每个视频的权重可以根据视频的重要程度来事先指定;2)计算多个 视频播放的总次数和这些视频在处于缓冲状态时被关闭的总次数,将这些视频处于缓冲状态时被关闭的总次数与这些视频播放的总次数进行相除,得到的值作为第一阈值。第一阈值的计算还有其他方法,不局限于以上列出的两种方法。当需要判断某个视频的加载是否存在问题时,将该视频的缓冲参数与第一阈值进行比较,如果发现该视频的缓冲参数大于第一阈值,则确定该视频存在加载问题,如果发现该视频的缓冲参数小于或者等于第一阈值,则确定该视频的加载不存在问题。例如,对某个特定的视频P1,需要判断这个视频的加载是否存在问题。通过解析接收到的数据,发现视频P1一共被播放了2000次,其中,有1200次是在处于缓冲状态时被关闭的。则视频P1的缓冲参数为1200/2000=0.6。采用以上提到的第一种方法计算第一阈值。选取100个视频,分别计算这100个视频的缓冲参数,为简便起见,假设这100个视频的权重相等,都为0.01,则将这100个视频的缓冲参数相加,得到的值再乘以0.01,即得到第一阈值,假设得到的第一阈值为0.02。将视频P1的缓冲参数与第一阈值进行比较,由于视频P1的缓冲参数0.6大于第一阈值0.02,故能够确定出视频P1存在加载问题,进一步地,如果能够确定出播放视频的网络正常的情况下,可以确定出视频P1的CDN加速存在问题,需要视频提供商进行相应的处理。可选地,状态变化包括:从缓冲状态变为关闭状态,其中,对目标数据进行解析,得到目标视频的缓冲参数包括:根据目标数据确定出目标视频在播放过程中处于缓冲状态的总时间与处于播放状态的总时间,计算处于缓冲状态的总时间与处于播放状态的总时间的比值,将计算出的处于缓冲状态的总时间与处于播放状态的总时间的比值作为缓冲参数;判断缓冲参数是否满足预设条件包括:判断处于缓冲状态的总时间与处于播放状态的总时间的比值是否超过第二阈值;在处于缓冲状态的总时间与处于播放状态的总时间的比值超过第二阈值时,确定缓冲参数满足预设条件。本实施例中,缓冲参数也可以这样确定:计算视频在播放过程中处于缓冲状态的总时间与处于播放状态的总时间,将视频在播放过程中处于缓冲状态的总时间除以视频在播放过程中处于播放状态的总时间,得到的值作为缓冲参数。第二阈值为与多个视频的缓冲情况相关的一个量。第二阈值的计算方法可以有多种,下面列出两种:1)计算多个视频的缓冲参数,将多个视频的缓冲参数的加权平均值作为第二阈值,每个视频的权重可以根据视频的重要程度来事先指定;2)计算多个视频在播放过程中处于缓冲状态的总时间和这些视频在播放过程中处于播放状态的总 时间,将这些视频在播放过程中处于缓冲状态的总时间与这些视频在播放过程中处于播放状态的总时间进行相除,得到的值作为第二阈值。第二阈值的计算还有其他方法,不局限于以上列出的两种方法。当需要判断某个视频的加载是否存在问题时,就将该视频的缓冲参数与第二阈值进行比较,如果发现该视频的缓冲参数大于第二阈值,则确定该视频存在加载问题,如果发现该视频的缓冲参数小于或者等于第二阈值,则确定该视频的加载不存在问题。例如,对某个特定的视频P3,需要判断这个视频的加载是否存在问题。由于在视频的播放过程中,视频从播放状态进入缓冲状态时,客户端向服务器发送数据,该数据包含的信息能够表明视频从播放状态进入缓冲状态;视频从缓冲状态进入播放状态时,客户端向服务器发送数据,该数据包含的信息能够表明视频从缓冲状态进入播放状态。当视频被用户关闭时,客户端向服务器发送数据,该数据能够表明视频关闭。通过解析这些数据,计算相邻的两条数据包含的时间信息的差值,即得到视频处于缓冲状态或播放状态的时间段的长度。表1为视频P3在某一次播放后,客户端向服务器发送的表示视频P3在这次播放过程中状态的变化情况的数据。表1数据编号数据包含的时间信息数据包含的视频状态的信息12015-11-30T10:00:05从播放状态进入缓冲状态22015-11-30T10:00:10从缓冲状态进入播放状态32015-11-30T10:06:20从播放状态进入缓冲状态42015-11-30T10:06:30从缓冲状态进入播放状态52015-11-30T10:08:50从播放状态进入缓冲状态62015-11-30T10:09:15关闭由表1可以知道,数据1、数据3和数据5包含了视频P3从播放状态进入缓冲状态的信息,数据2和数据4包含了视频P3从缓冲状态进入播放状态的信息,数据6包含了视频P3关闭的信息。由数据1和数据2,可以得出视频P3在2015年11月30日10:00:05至2015年 11月30日10:00:10之间处于缓冲状态。由数据2和数据3,可以得出视频P3在2015年11月30日10:00:10至2015年11月30日10:06:20之间处于播放状态。由数据3和数据4,可以得出视频P3在2015年11月30日10:06:20至2015年11月30日10:06:30之间处于缓冲状态。由数据4和数据5,可以得出视频P3在2015年11月30日10:06:30至2015年11月30日10:08:50之间处于播放状态。由数据5和数据6,可以得出视频P3在2015年11月30日10:08:50至2015年11月30日10:09:15之间处于缓冲状态。由数据6,可以得出视频P3在2015年11月30日10:09:15被用户关闭。经过计算,可以知道视频P3在本次播放过程中,处于缓冲状态的总的时间长度为40秒,处于播放状态的总的时间长度为8分30秒。通过解析接收到的数据,发现视频P3一共被播放了400次,在这400次播放过程中,视频P3处于缓冲状态的总的时间长度为200分钟,处于播放状态的总的时间长度为2800分钟,用400次播放过程中视频P3处于缓冲状态的总的时间长度除以处于播放状态的总的时间长度,得到视频P3的缓冲参数0.14。第二阈值的计算采用上面提到的第一种方法。取200个视频的播放过程的数据,计算这200个视频的每一个视频的缓冲参数,为简便起见,假设这200个视频的权重相等,都为0.005,将这200个视频的缓冲参数相加,得到的值乘以0.005,得到第二阈值。假设第二阈值为0.01。将视频P3的缓冲参数与第二阈值进行比较,由于视频P3的缓冲参数0.14大于第二阈值0.01,故能够确定出视频P3存在加载问题,需要视频提供商重新对视频P3进行CDN加速。可选地,目标视频存在加载问题包括目标视频的CDN加速存在问题和/或播放目标视频的网络存在问题。视频存在加载问题,有可能是视频的CDN加速存在问题导致的,有可能是播放视频的网络存在问题导致的,还有可能是二者同时导致的。可以采集多个区域的视频的播放过程的数据,对这些数据进行分析,如果发现在某一个区域,视频的缓冲参数特别高,那么可以确定这个区域的网络存在问题,即视 频的加载问题是由播放视频的网络存在问题导致的。如果某个(某些)用户播放的某一个视频的缓冲参数远远大于该用户播放的其他视频的缓冲参数,那么这一个视频存在加载问题,且该视频的加载问题是由该视频的CDN加速太慢导致的。根据本申请实施例,还提供了一种视频检测装置。该视频检测装置可以执行上述视频检测方法,上述视频检测方法也可以通过该视频检测装置实施。图2是根据本申请实施例的视频检测装置的示意图。如图2所示,该装置包括接收单元22、解析单元24、第一判断单元26和第一确定单元28。接收单元22用于接收客户端发送的目标数据,目标数据为表示客户端在播放目标视频的过程中状态变化的数据,其中,状态变化包括:从播放状态变为缓冲状态、从缓冲状态变为播放状态。目标视频可以为需要对其播放过程进行分析的任何视频。用户打开一个视频之后,视频可以有播放状态和缓冲状态等状态。视频播放过程可以是用户打开视频到用户关闭视频的整个过程,也就是说,用户播放视频的过程中,视频既可能处于播放状态,也可能处于缓冲状态。当视频从播放状态变为缓冲状态时,客户端可以记录这个状态变化以及状态变化的时间,并向服务器发送一条数据(目标数据),这条数据中包含的信息能够表明视频从播放状态变为缓冲状态以及客户端记录的开始缓冲的时间。当视频从缓冲状态变为播放状态时,客户端向服务器发送一条数据(目标数据),这条数据中包含的信息能够表明视频从缓冲状态变为播放状态,同时客户端清除开始缓冲的时间,下次进入缓冲时再重新记录。解析单元24用于对目标数据进行解析,得到目标视频的缓冲参数,缓冲参数为用于表示目标视频在播放过程中的缓冲情况的参数。服务器接收到客户端发送的数据之后,对这些数据进行解析,得到视频播放情况的信息,使用缓冲参数来表示视频在播放过程的缓冲情况,缓冲参数的计算可有多种方法,以下列出两种方法:1)计算视频在多次播放过程中处于缓冲状态时关闭视频的次数与播放次数的比值,将此比值作为缓冲参数;2)计算视频处于缓冲状态的时间总长度与视频处于播放状态的时间总长度的比值,将此比值作为缓冲参数。缓冲参数的计算还有其他方法,不局限于以上列出的两种方法。第一判断单元26用于判断缓冲参数是否满足预设条件。预设条件为预先设定好的条件,预设条件与多个视频在播放过程中的缓冲情况相 关。第一确定单元28用于在第一判断单元26判断出缓冲参数满足预设条件之后,确定目标视频存在加载问题。如果某个视频的缓冲参数满足预先设定好的条件,则该视频存在加载问题,视频提供商需要对该视频重新进行CDN加载。通过接收播放视频的过程中表示视频状态变化的数据,对这些数据进行解析,分析视频在播放过程中的缓冲情况,从而可以根据该缓冲情况来确定视频是否存在加载问题,例如,如果视频在播放过程中缓冲次数达到预设次数、或处于缓冲状态的时间达到预设时间,则认为视频存在加载问题,进而确定出存在加载问题的视频,解决了现有技术中无法确定出存在加载问题的视频的技术问题。可选地,本申请实施例所提供的视频检测装置还包括第一提取单元、第二判断单元和第二确定单元。第一提取单元用于第一确定子单元从目标数据中确定出目标视频关闭的总次数和从缓冲状态变为关闭状态的次数之前,从目标数据中提取用于表示目标视频关闭的关闭数据,其中,关闭数据记录有目标视频在关闭之前所处的状态。第二判断单元用于根据关闭数据判断目标视频在关闭之前所处的状态是否是缓冲状态。第二确定单元用于在第二判断单元判断出目标视频在关闭之前所处的状态是缓冲状态之后,确定目标视频的该次播放是从缓冲状态变为关闭状态。可选地,本申请实施例所提供的视频检测装置还包括第二提取单元、第三判断单元和第三确定单元。第二提取单元用于从目标数据中提取用于表示目标视频关闭的关闭数据。第三判断单元用于判断在接收关闭数据之前接收到的最后一条目标数据是否是表示目标视频从播放状态变为缓冲状态的数据。第三确定单元用于在第三判断单元判断出接收关闭数据之前接收到的最后一条目标数据是表示目标视频从播放状态变为缓冲状态的数据之后,确定目标视频的该次播放是从缓冲状态变为关闭状态。可选地,本申请实施例的视频检测装置提供了两种方式来确定视频在某次关闭时,是否是从缓冲状态变为关闭状态。方式一包括:从目标数据中提取用于表示目标视频关闭的关闭数据,其中,关闭数据记录有目标视频在关闭之前所处的状态;根据关闭数据判断目标视频在关闭之前所处的状态是否是缓冲状态,在判断是缓冲状态时,确定目标视频的该次播放是从缓冲状态变为关闭状态。方式二包括:从目标数据中提取用于表示目标视频关闭的关闭数据;判断在接收关闭数据之前接收到的最后一条目标数据是否是表示目标视频从播放状态变为缓冲状 态的数据,在判断出是表示目标视频从播放状态变为缓冲状态的数据时,确定目标视频的该次播放是从缓冲状态变为关闭状态。当客户端检测到用户关闭视频时,客户端会向服务器发送数据,该数据中包含了表示视频关闭的信息,将这条数据称为关闭数据。在上述方式一中,该关闭数据包含了在关闭视频前的瞬间视频所处于的状态(即关闭视频前的瞬间视频处于缓冲状态还是播放状态)的信息;在上述方式二中,该关闭数据可以仅用于表示视频关闭而未包含在关闭视频前的瞬间视频所处于的状态的信息。下面对这两种方式进行具体说明。对于方式一:在关闭数据包含了关闭视频前的瞬间视频所处于的状态的信息的情况下,根据关闭数据,判断关闭视频前的瞬间视频所处于的状态是否为缓冲状态,如果判断出关闭视频前的瞬间视频所处于的状态为缓冲状态,则确定视频的该次播放是从缓冲状态变为关闭状态。对于方式二:在关闭数据未包含关闭视频前的瞬间视频所处于的状态的信息的情况下,判断在接收关闭数据之前接收到的最后一条数据是否为表示视频从播放状态变为缓冲状态的数据,如果判断出接收关闭数据之前接收到的最后一条数据为表示视频从播放状态变为缓冲状态的数据,则确定视频的该次播放是从缓冲状态变为关闭状态。需要注意的是,由于视频可能被播放了很多次,因此,服务器可能接收了多条关闭数据,在接收关闭数据之前接收到的最后一条数据可能也有多条,即接收每一条关闭数据之前都接收到对应于该关闭数据的最后一条数据。进一步地,在方式二中,为了提高判断视频在某次关闭时,是否是从缓冲状态变为关闭状态的精确度,在判断出接收关闭数据之前接收到的最后一条数据为表示视频从播放状态变为缓冲状态的数据之后,再继续判断是否满足1)和2)两个条件。条件1):接收关闭数据之前接收到的最后一条数据包含的时间信息与关闭数据包含的时间信息不相同。条件2):关闭数据中包含的信息表明视频关闭时已播放时长小于视频时长。如果判断出同时满足1)和2)两个条件,则确定视频的该次播放是从缓冲状态变为关闭状态。通过在判断出接收关闭数据之前接收到的最后一条数据为表示视频从播放状态变为缓冲状态的数据之后,再继续判断是否满足1)和2)两个条件,可以排除掉那些视频进入缓冲状态的瞬间就被关闭的情况,还可以排除掉那些用户已经观看完完整视频(视频的已播放时长等于视频的时长)的情况,提高了使用方式二判断视频在某次关 闭时,是否是从缓冲状态变为关闭状态的精确度。进一步地,当服务器接收到客户端发送的表示视频在播放过程中的状态的数据之后,存储这些数据,并将用户的ID和视频编号等信息记录下来,以便于后续进行分析。可选地,状态变化还可以包括:从缓冲状态变为关闭状态。解析单元24包括第一确定子单元和第一计算子单元。第一确定子单元用于从目标数据中确定出目标视频关闭的总次数和从缓冲状态变为关闭状态的次数。第一计算子单元用于计算目标视频从缓冲状态变为关闭状态的次数与目标视频关闭的总次数的比值,将比值作为缓冲参数。第一判断单元26包括第一判断子单元和第二确定子单元。第一判断子单元用于判断比值是否超过第一阈值。第二确定子单元用于在第一判断子单元判断出比值超过第一阈值之后,确定缓冲参数满足预设条件。对服务器接收到的数据进行解析,确定出视频播放的总次数(即目标视频关闭的总次数)和视频在处于缓冲状态时被关闭的次数(即从缓冲状态变为关闭状态的次数)。将视频在处于缓冲状态时被关闭的次数除以视频播放的总次数,得到的值即为缓冲参数。第一阈值为与多个视频的缓冲情况相关的一个量。第一阈值的计算方法可以有多种,下面列出两种:1)计算多个视频的缓冲参数,将多个视频的缓冲参数的加权平均值作为第一阈值,每个视频的权重可以根据视频的重要程度来事先指定;2)计算多个视频播放的总次数和这些视频在处于缓冲状态时被关闭的总次数,将这些视频处于缓冲状态时被关闭的总次数与这些视频播放的总次数进行相除,得到的值作为第一阈值。第一阈值的计算还有其他方法,不局限于以上列出的两种方法。当需要判断某个视频的加载是否存在问题时,将该视频的缓冲参数与第一阈值进行比较,如果发现该视频的缓冲参数大于第一阈值,则确定该视频存在加载问题,如果发现该视频的缓冲参数小于或者等于第一阈值,则确定该视频的加载不存在问题。例如,对某个特定的视频P1,需要判断这个视频的加载是否存在问题。通过解析接收到的数据,发现视频P1一共被播放了2000次,其中,有1200次是在处于缓冲状态时被关闭的。则视频P1的缓冲参数为1200/2000=0.6。采用以上提到的第一种方法计算第一阈值。选取100个视频,分别计算这100个视频的缓冲参数,为简便起见,假设这100个视频的权重相等,都为0.01,则将这100个视频的缓冲参数相加,得到的值再乘以0.01,即得到第一阈值,假设得到的第一阈值为0.02。将视频P1的缓冲参数与第一阈值进行比较,由于视频P1的缓冲参数0.6大于第 一阈值0.02,故能够确定出视频P1存在加载问题,进一步地,如果能够确定出播放视频的网络正常的情况下,可以确定出视频P1的CDN加速存在问题,需要视频提供商进行相应的处理。可选地,状态变化还可以包括:从缓冲状态变为关闭状态。解析单元24包括第三确定子单元和第二计算子单元。第三确定子单元用于根据目标数据确定出目标视频在播放过程中处于缓冲状态的总时间与处于播放状态的总时间。第二计算子单元用于计算处于缓冲状态的总时间与处于播放状态的总时间的比值,将计算出的处于缓冲状态的总时间与处于播放状态的总时间的比值作为缓冲参数。第一判断单元26包括第二判断子单元和第四确定子单元。第二判断子单元用于判断处于缓冲状态的总时间与处于播放状态的总时间的比值是否超过第二阈值。第四确定子单元用于在第二判断子单元判断出处于缓冲状态的总时间与处于播放状态的总时间的比值超过第二阈值之后,确定缓冲参数满足预设条件。本实施例中,缓冲参数也可以这样确定:计算视频在播放过程中处于缓冲状态的总时间与处于播放状态的总时间,将视频在播放过程中处于缓冲状态的总时间除以视频在播放过程中处于播放状态的总时间,得到的值作为缓冲参数。第二阈值为与多个视频的缓冲情况相关的一个量。第二阈值的计算方法可以有多种,下面列出两种:1)计算多个视频的缓冲参数,将多个视频的缓冲参数的加权平均值作为第二阈值,每个视频的权重可以根据视频的重要程度来事先指定;2)计算多个视频在播放过程中处于缓冲状态的总时间和这些视频在播放过程中处于播放状态的总时间,将这些视频在播放过程中处于缓冲状态的总时间与这些视频在播放过程中处于播放状态的总时间进行相除,得到的值作为第二阈值。第二阈值的计算还有其他方法,不局限于以上列出的两种方法。当需要判断某个视频的加载是否存在问题时,就将该视频的缓冲参数与第二阈值进行比较,如果发现该视频的缓冲参数大于第二阈值,则确定该视频存在加载问题,如果发现该视频的缓冲参数小于或者等于第二阈值,则确定该视频的加载不存在问题。例如,对某个特定的视频P3,需要判断这个视频的加载是否存在问题。由于在视频的播放过程中,视频从播放状态进入缓冲状态时,客户端向服务器发送数据,该数据包含的信息能够表明视频从播放状态进入缓冲状态;视频从缓冲状态进入播放状态时,客户端向服务器发送数据,该数据包含的信息能够表明视频从缓冲状态进入播放状态。当视频被用户关闭时,客户端向服务器发送数据,该数据能够表明视频关闭。通过解析这些数据,计算相邻的两条数据包含的时间信息的差值,即得 到视频处于缓冲状态或播放状态的时间段的长度。表1为视频P3在某一次播放后,客户端向服务器发送的表示视频P3在这次播放过程中状态的变化情况的数据。由表1可以知道,数据1、数据3和数据5包含了视频P3从播放状态进入缓冲状态的信息,数据2和数据4包含了视频P3从缓冲状态进入播放状态的信息,数据6包含了视频P3关闭的信息。由数据1和数据2可以得出,视频P3在2015年11月30日10:00:05至2015年11月30日10:00:10之间处于缓冲状态。由数据2和数据3可以得出,视频P3在2015年11月30日10:00:10至2015年11月30日10:06:20之间处于播放状态。由数据3和数据4可以得出,视频P3在2015年11月30日10:06:20至2015年11月30日10:06:30之间处于缓冲状态。由数据4和数据5可以得出,视频P3在2015年11月30日10:06:30至2015年11月30日10:08:50之间处于播放状态。由数据5和数据6可以得出,视频P3在2015年11月30日10:08:50至2015年11月30日10:09:15之间处于缓冲状态。由数据6可以得出,视频P3在2015年11月30日10:09:15被用户关闭。经过计算,可以知道视频P3在本次播放过程中,处于缓冲状态的总的时间长度为40秒,处于播放状态的总的时间长度为8分30秒。通过解析接收到的数据,发现视频P3一共被播放了400次,在这400次播放过程中,视频P3处于缓冲状态的总的时间长度为200分钟,处于播放状态的总的时间长度为2800分钟,用400次播放过程中视频P3处于缓冲状态的总的时间长度除以处于播放状态的总的时间长度,得到视频P3的缓冲参数0.14。第二阈值的计算采用上面提到的第一种方法。取200个视频的播放过程的数据,计算这200个视频的每一个视频的缓冲参数,为简便起见,假设这200个视频的权重相等,都为0.005,将这200个视频的缓冲参数相加,得到的值乘以0.005,得到第二阈值。假设第二阈值为0.01。将视频P3的缓冲参数与第二阈值进行比较,由于视频P3的缓冲参数0.14大于第二阈值0.01,故能够确定出视频P3存在加载问题,需要视频提供商重新对视频P3进 行CDN加速。可选地,目标视频存在加载问题包括目标视频的CDN加速存在问题和/或播放目标视频的网络存在问题。视频存在加载问题,有可能是视频的CDN加速存在问题导致的,有可能是播放视频的网络存在问题导致的,还有可能是二者同时导致的。可以采集多个区域的视频的播放过程的数据,对这些数据进行分析,如果发现在某一个区域,视频的缓冲参数特别高,那么可以确定这个区域的网络存在问题,即视频的加载问题是由播放视频的网络存在问题导致的。如果某个(某些)用户播放的某一个视频的缓冲参数远远大于该用户播放的其他视频的缓冲参数,那么这一个视频存在加载问题,且该视频的加载问题是由该视频的CDN加速太慢导致的。所述视频检测装置包括处理器和存储器,上述接收单元22、解析单元24、第一判断单元26和第一确定单元28等均作为程序单元存储在存储器中,由处理器执行存储在存储器中的上述程序单元来实现相应的功能。处理器中包含内核,由内核去存储器中调取相应的程序单元。内核可以设置一个或以上,通过调整内核参数来确定出存在加载问题的视频。存储器可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flashRAM),存储器包括至少一个存储芯片。本申请还提供了一种计算机程序产品,当在数据处理设备上执行时,适于执行初始化有如下方法步骤的程序代码:接收客户端发送的目标数据,目标数据为表示客户端在播放目标视频的过程中状态变化的数据,其中,状态变化包括:从播放状态变为缓冲状态、从缓冲状态变为播放状态;对目标数据进行解析,得到目标视频的缓冲参数,缓冲参数为用于表示目标视频在播放过程中的缓冲情况的参数;判断缓冲参数是否满足预设条件;在缓冲参数满足预设条件时,确定目标视频存在加载问题。上述本申请实施例序号仅仅为了描述,不代表实施例的优劣。在本申请的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。在本申请所提供的几个实施例中,应该理解到,所揭露的技术内容,可通过其它 的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,可以为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。另外,在本申请各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可为个人计算机、服务器或者网络设备等)执行本申请各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、只读存储器(ROM,Read-OnlyMemory)、随机存取存储器(RAM,RandomAccessMemory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。以上所述仅是本申请的优选实施方式,应当指出,对于本
技术领域:
的普通技术人员来说,在不脱离本申请原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本申请的保护范围。当前第1页1 2 3