一种视频质量评估的方法和网络节点转让专利

申请号 : CN201180001103.4

文献号 : CN102257831B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 杨友庆刘济涛胡寅亮于文晓

申请人 : 华为技术有限公司

摘要 :

本发明公开了一种视频质量评估的方法和网络节点,属于通信领域。所述方法包括:位于网络侧的网络节点获取待评估的视频流的视频帧属性信息和解码器的特征参数,所述视频帧属性信息至少包括所述待评估的视频流中每个视频包的视频帧类型和QP;所述网络节点接收终端发送的所述待评估的视频流的受损信息;所述网络节点根据所述视频帧属性信息、解码器的特征参数和受损信息,对所述待评估的视频流进行视频质量评估。所述网络节点包括:获取模块、接收器和评估模块。本发明能够提高视频质量评估的准确性以及对用户正常使用终端的影响。

权利要求 :

1.一种视频质量评估的方法,其特征在于,所述方法包括:

位于网络侧的网络节点获取待评估的视频流的视频帧属性信息和解码器的特征参数,所述视频帧属性信息至少包括所述待评估的视频流中每个视频帧的视频帧类型和量化参数QP;

所述网络节点接收终端发送的所述待评估的视频流的受损信息;

所述网络节点根据所述视频帧属性信息、解码器的特征参数和受损信息,对所述待评估的视频流进行视频质量评估;

其中,所述获取待评估的视频流的视频帧属性信息和解码器的特征参数,包括:

所述网络节点接收所述终端发送的视频质量评估设置请求消息,所述视频质量评估设置请求消息至少携带解码器的特征信息以及所述待评估的视频流的视频特征信息;

所述网络节点根据所述解码器的特征信息,获取所述解码器的特征参数;

所述网络节点根据所述待评估的视频流的视频特征信息,从经过所述网络节点的视频流中获取待评估的视频流;

所述网络节点缓存所述获取的待评估的视频流,对所述缓存的待评估的视频流进行分析并提取视频帧属性信息;

其中,所述网络节点根据所述视频帧属性信息、解码器的特征参数和受损信息,对所述待评估的视频流进行视频质量评估,具体包括:所述网络节点根据所述每个视频帧的QP,计算出所述待评估的视频流中的每个视频帧的压缩质量分数;

所述网络节点依次从所述待评估的视频流中读取包括的视频帧,根据空缺的视频包的包序号和节目时钟参考信息PCR,获取当前读取的视频帧的受损分数;

所述网络节点根据所述当前读取的视频帧类型获取所述当前读取的视频帧受参考帧的影响程度,所述参考帧是指所述当前读取的视频帧解码时所需要依赖或参考的视频帧;

所述网络节点根据所述解码器的特征参数、所述当前读取的视频帧的压缩质量分数、所述受损分数和所述受参考帧的影响程度,计算出所述当前读取的视频帧的分数;

所述网络节点根据评估的各个视频帧的分数计算出所述待评估的视频流的分数。

2.如权利要求1所述的方法,其特征在于,所述获取待评估的视频流的视频帧属性信息和解码器的特征参数之前,还包括:所述网络节点接收所述终端发送的视频质量评估初始设置消息,如果自身剩余的空闲资源不满足进行视频质量评估所需的资源,则发送通知消息给所述终端,使所述终端重选用于视频质量评估的网络节点。

3.如权利要求1所述的方法,其特征在于,所述获取待评估的视频流的视频帧属性信息和解码器的特征参数之前,还包括:所述网络节点接收所述终端发送的视频质量评估初始设置消息,如果自身剩余的空闲资源不满足进行视频质量评估所需的资源,则发送通知消息给媒体质量监控中心MQMC,使所述MQMC为所述终端重选用于视频质量评估的网络节点。

4.如权利要求1至3任一项权利要求所述的方法,其特征在于,所述接收所述终端发送的视频质量评估设置请求消息之后,还包括:所述网络节点根据所述待评估的视频流的视频特征信息,确定是否已获取所述待评估的视频流的视频帧属性信息,如果是,则根据已获取的视频帧属性信息对所述待评估的视频流进行视频质量评估。

5.一种网络节点,其特征在于,所述网络节点包括:

获取模块,用于获取待评估的视频流的视频帧属性信息和解码器的特征参数,所述视频帧属性信息至少包括所述待评估的视频流中每个视频帧的视频帧类型和量化参数QP;

接收器,用于接收终端发送的所述待评估的视频流的受损信息;

评估模块,用于根据所述视频帧属性信息、解码器的特征参数和受损信息,对所述待评估的视频流进行视频质量评估;

其中,所述获取模块,具体用于接收所述终端发送的视频质量评估设置请求消息,所述视频质量评估设置请求消息至少携带解码器的特征信息以及所述待评估的视频流的视频特征信息;根据所述解码器的特征信息,从参数数据库中获取所述解码器的特征参数;根据所述待评估的视频流的视频特征信息,从经过所述网络节点的视频流中获取待评估的视频流;缓存所述获取的待评估的视频流,对所述缓存的待评估的视频流进行分析并提取视频帧属性信息;

其中,所述评估模块,具体用于所述网络节点根据所述每个视频帧的QP,计算出所述待评估的视频流中的每个视频帧的压缩质量分数;所述网络节点依次从所述待评估的视频流中读取包括的视频帧,根据空缺的视频包的包序号和节目时钟参考信息PCR,获取当前读取的视频帧的受损分数;所述网络节点根据所述当前读取的视频帧类型获取所述当前读取的视频帧受参考帧的影响程度,所述参考帧是指所述当前读取的视频帧解码时所需要依赖或参考的视频帧;所述网络节点根据所述解码器的特征参数、所述当前读取的视频帧的压缩质量分数、所述受损分数和所述受参考帧的影响程度,计算出所述当前读取的视频帧的分数;所述网络节点根据评估的各个视频帧的分数计算出所述待评估的视频流的分数。

6.如权利要求5所述的网络节点,其特征在于,所述网络节点还包括:

第一通知模块,用于接收所述终端发送的视频质量评估初始设置消息,如果自身剩余的空闲资源不满足进行视频质量评估所需的资源,则发送通知消息给所述终端,使所述终端重选用于视频质量评估的网络节点。

7.如权利要求5所述的网络节点,其特征在于,所述网络节点还包括:

第二通知模块,用于接收所述终端发送的视频质量评估初始设置消息,如果自身剩余的空闲资源不满足进行视频质量评估所需的资源,则发送通知消息给媒体质量监控中心MQMC,使所述MQMC为所述终端重选用于视频质量评估的网络节点。

8.如权利要求5至7任一项权利要求所述的网络节点,其特征在于,所述网络节点还包括:确定模块,用于根据所述待评估的视频流的视频特征信息,确定是否已获取所述待评估的视频流的视频帧属性信息,如果是,则根据已获取的视频帧属性信息对所述待评估的视频流进行视频质量评估。

说明书 :

一种视频质量评估的方法和网络节点

技术领域

[0001] 本发明涉及通信领域,特别涉及一种视频质量评估的方法和网络节点。

背景技术

[0002] 在当今互联网上所传输的业务中,视频业务正在日益成为未来网络流量的主要组成部分。由于视频业务具有数据量大,实时性要求高,用户敏感性强等特点,使得运营商需要对传输的视频业务质量进行监控以保证用户对视频业务的体验需求。
[0003] 其中,可以采用对视频质量进行评估的方法来监控视频业务的质量。通常的视频质量评估的方法是在用户的机顶盒内部署视频质量评估模块,机顶盒接收到视频流后,视频质量评估模块对该视频流的网络层进行解析,获取该视频流的受损信息,再对该视频流的应用层进行解析,获取视频帧属性信息,根据获取的视频帧属性信息、受损信息以及机顶盒内的解码器的特征参数进行评估,再将评估得到的结果发送到网络管理中心。
[0004] 网络故障或线路故障大多出现在接近用户侧的位置,机顶盒接收到的视频流往往为受损的视频流,使得视频质量评估模块获取的视频帧属性信息往往为不完整的视频帧属性信息,从而降低评估的准确性。在应用层对视频流进行分析并获取视频帧属性信息是一个十分繁杂的过程,因此需要消耗机顶盒的大量资源,从而影响用户正常使用机顶盒。

发明内容

[0005] 为了提高视频质量评估的准确性以及减少对用户正常使用终端的影响,本发明提供了一种视频质量评估的方法和网络节点。所述技术方案如下:
[0006] 一种视频质量评估的方法,所述方法包括:
[0007] 位于网络侧的网络节点获取待评估的视频流的视频帧属性信息和解码器的特征参数,所述视频帧属性信息至少包括所述待评估的视频流中每个视频帧的视频帧类型和QP(Quality Parameter,量化参数);
[0008] 所述网络节点接收终端发送的所述待评估的视频流的受损信息;
[0009] 所述网络节点根据所述视频帧属性信息、解码器的特征参数和受损信息,对所述待评估的视频流进行视频质量评估;
[0010] 其中,所述获取待评估的视频流的视频帧属性信息和解码器的特征参数,包括:
[0011] 所述网络节点接收所述终端发送的视频质量评估设置请求消息,所述视频质量评估设置请求消息至少携带解码器的特征信息以及所述待评估的视频流的视频特征信息;
[0012] 所述网络节点根据所述解码器的特征信息,获取所述解码器的特征参数;
[0013] 所述网络节点根据所述待评估的视频流的视频特征信息,从经过所述网络节点的视频流中获取待评估的视频流;
[0014] 所述网络节点缓存所述获取的待评估的视频流,对所述缓存的待评估的视频流进行分析并提取视频帧属性信息;
[0015] 其中,所述网络节点根据所述视频帧属性信息、解码器的特征参数和受损信息,对所述待评估的视频流进行视频质量评估,具体包括:
[0016] 所述网络节点根据所述每个视频帧的QP,计算出所述待评估的视频流中的每个视频帧的压缩质量分数;
[0017] 所述网络节点依次从所述待评估的视频流中读取包括的视频帧,根据空缺的视频包的包序号和节目时钟参考信息PCR,获取当前读取的视频帧的受损分数;
[0018] 所述网络节点根据所述当前读取的视频帧类型获取所述当前读取的视频帧受参考帧的影响程度,所述参考帧是指所述当前读取的视频帧解码时所需要依赖或参考的视频帧;
[0019] 所述网络节点根据所述解码器的特征参数、所述当前读取的视频帧的压缩质量分数、所述受损分数和所述受参考帧的影响程度,计算出所述当前读取的视频帧的分数;
[0020] 所述网络节点根据评估的各个视频帧的分数计算出所述待评估的视频流的分数。
[0021] 一种网络节点,所述网络节点包括:
[0022] 获取模块,用于获取待评估的视频流的视频帧属性信息和解码器的特征参数,所述视频帧属性信息至少包括所述待评估的视频流中每个视频帧的视频帧类型和QP;
[0023] 接收器,用于接收终端发送的所述待评估的视频流的受损信息;
[0024] 评估模块,用于根据所述视频帧属性信息、解码器的特征参数和受损信息,对所述待评估的视频流进行视频质量评估;
[0025] 其中,所述获取模块,具体用于接收所述终端发送的视频质量评估设置请求消息,所述视频质量评估设置请求消息至少携带解码器的特征信息以及所述待评估的视频流的视频特征信息;根据所述解码器的特征信息,从参数数据库中获取所述解码器的特征参数;根据所述待评估的视频流的视频特征信息,从经过所述网络节点的视频流中获取待评估的视频流;缓存所述获取的待评估的视频流,对所述缓存的待评估的视频流进行分析并提取视频帧属性信息;
[0026] 其中,所述评估模块,具体用于所述网络节点根据所述每个视频帧的QP,计算出所述待评估的视频流中的每个视频帧的压缩质量分数;所述网络节点依次从所述待评估的视频流中读取包括的视频帧,根据空缺的视频包的包序号和节目时钟参考信息PCR,获取当前读取的视频帧的受损分数;所述网络节点根据所述当前读取的视频帧类型获取所述当前读取的视频帧受参考帧的影响程度,所述参考帧是指所述当前读取的视频帧解码时所需要依赖或参考的视频帧;所述网络节点根据所述解码器的特征参数、所述当前读取的视频帧的压缩质量分数、所述受损分数和所述受参考帧的影响程度,计算出所述当前读取的视频帧的分数;所述网络节点根据评估的各个视频帧的分数计算出所述待评估的视频流的分数。
[0027] 在本发明中,位于网络侧的网络节点获取待评估的视频流的视频帧属性信息和和解码器的特征参数,接收终端发送待评估的视频流的受损信息,根据待评估的视频流的视频帧属性信息、解码器的特征参数、视频流的受损信息对待评估的视频流进行视频质量评估。由于网络节点位于网络侧,网络节点获取待评估的视频流的视频帧属性信息较完整,从而可以提高视频质量评估的准确性;另外,由于网络节点获取待评估的视频流的视频帧属性信息,使得终端不需要获取视频帧属性信息,从而减少对终端的系统资源的消耗,减少对用户使用终端的影响。

附图说明

[0028] 图1是本发明实施例1提供的一种视频质量评估的方法流程图;
[0029] 图2是本发明实施例2提供的一种视频质量评估的方法流程图;
[0030] 图3是本发明实施例2应用的网格架构示意图;
[0031] 图4是本发明实施例3提供的一种网络节点示意图。

具体实施方式

[0032] 为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
[0033] 实施例1
[0034] 如图1所示,本发明实施例提供了一种视频质量评估的方法,包括:
[0035] 步骤101:位于网络侧的网络节点获取待评估的视频流的视频帧属性信息和解码器的特征参数,该视频帧属性信息至少包括待评估的视频流中的每个视频帧类型和QP;
[0036] 步骤102:网络节点接收终端发送的待评估的视频流的受损信息;
[0037] 步骤103:网络节点根据获取的视频帧属性信息、解码器的特征参数和受损信息,对待评估的视频流进行视频质量评估。
[0038] 在本发明实施例中,位于网络侧的网络节点获取待评估的视频流的视频帧属性信息和解码器的特征参数,接收终端发送待评估的视频流的受损信息,根据待评估的视频流的视频帧属性信息、解码器的特征参数和视频流的受损信息对待评估的视频流进行视频质量评估。其中,由于网络节点位于网络侧,网络节点获取待评估的视频流的视频帧属性信息较完整,从而可以提高视频质量评估的准确性;另外,由于网络节点获取待评估的视频的视频帧属性信息,使得终端不需要获取待评估的视频流的视频帧属性信息,从而减少对终端的系统资源的消耗,减少对用户使用终端的影响。
[0039] 实施例2
[0040] 如图2所示,本发明实施例提供了一种视频质量评估的方法,包括:
[0041] 步骤201:网络节点接收终端发送的视频质量评估初始设置消息。
[0042] 其中,当终端需要进行视频质量评估时,终端发送视频质量评估初始设置消息给位于网络侧的网络节点,该视频质量评估初始设置消息用于请求该网络节点对待评估的视频流进行视频质量评估。
[0043] 终端可以为机顶盒,电视机,手机,计算机或平板电脑等可以解码视频流的设备。
[0044] 根据网络的规划和部署,MQMC(Media Quality Monitoring Centre,媒体质量监控中心)可以事先告知一个网络节点的地址给终端且该网络节点为该终端所在接入网的边缘网络节点;或者,终端在发送视频质量评估初始设置消息之前,发送获取网络节点的请求消息给MQMC,MQMC在视频服务器与终端之间的视频流路径经过的网络节点中选择一个网络节点,将选择的网络节点的地址告知终端。MQMC可以优先选择空闲资源能够满足视频质量评估所需的资源的网络节点。然后终端根据MQMC告知的网络节点的地址发送视频质量评估初始设置消息给对应的网络节点。
[0045] 其中,终端下载视频流时,下载的视频流经过终端所在接入网的边缘网络节点,所以MQMC可以事先将终端所在接入网的边缘网络节点的地址告知给终端。
[0046] 可选的,网络中的网络节点可以周期性地将自身空闲资源的情况发送给MQMC,MQMC可以实时地知道各网络节点中的空闲资源的情况,MQMC可以为终端优先选择空闲资源能够满足视频质量评估所需的资源的网络节点。
[0047] 步骤202:网络节点当自身空闲资源满足视频质量评估所需的资源时,返回视频质量评估确认设置消息给终端。
[0048] 举例来说,网络节点的空闲资源是指该网络节点剩余的计算资源,例如CPU(Central Processing Unit,中央处理器)使用率、空闲的内存和空闲的带宽等。当满足预设条件时,如网络节点的CPU使用率未超过预设的使用率,空闲的内存大于预设的空间大小以及空闲的带宽大于预设的带宽大小,则确定网络节点还有足够的空闲资源用于进行视频质量评估。
[0049] 如果网络节点自身没有足够的空闲资源用于进行视频质量评估,则网络节点可以发送通知消息给终端,该通知消息用于指示终端重选网络节点。终端接收该通知消息,发送网络节点重选请求消息给MQMC。MQMC从剩余的经过视频服务器与终端的视频流路径的网络节点中选择一个网络节点,发送重选网络节点响应消息给终端且该重选网络节点响应消息携带选择的网络节点的地址。MQMC可以优先选择空闲资源能够满足视频质量评估所需的资源的网络节点。然后终端根据MQMC选择的网络节点的地址发送视频质量评估初始设置消息给对应的网络节点。网络节点接收视频质量评估初始设置消息,并判断出自身空闲资源满足视频质量评估所需资源,返回视频质量评估设置消息给终端。
[0050] 或者,如果网络节点自身没有足够的空闲资源用于进行视频质量评估,则网络节点可以发送通知消息给MQMC,该通知消息用于指示MQMC重选网络节点。MQMC从剩余的经过视频服务器与终端的视频流路径的网络节点中选择一个网络节点,发送重选网络节点响应消息给终端且该重选网络节点响应消息携带选择的网络节点的地址。MQMC可以优先选择空闲资源能够满足视频质量评估所需的资源的网络节点。然后终端根据MQMC选择的网络节点的地址发送视频质量评估初始设置消息给对应的网络节点。网络节点接收视频质量评估初始设置消息,并判断出自身空闲资源满足视频质量评估所需资源,返回视频质量评估设置消息给终端。
[0051] 步骤203:网络节点接收终端发送的视频质量评估设置请求消息,且该视频质量评估设置请求消息携带终端的解码器的特征信息和待评估的视频流的视频特征信息。
[0052] 终端接收到网络节点发送的视频质量评估确认设置消息后,获取到解码器的特征信息和待评估的视频流的视频特征信息,发送携带解码器的特征信息和待评估的视频流的视频特征信息的视频质量评估设置请求消息给网络节点。
[0053] 解码器的特征信息包括解码器的型号或可以代表解码器型号的信息。待评估的视频流的视频特征信息至少包括待评估的视频流的目的地址。待评估的视频流的视频特征信息还可以包括目的端口号。
[0054] 终端制造厂商可以事先在终端中配置解码器的特征信息或特征参数,因此终端能够直接获取终端制造厂商配置的解码器的特征信息或特征参数。
[0055] 步骤204:网络节点根据解码器的特征信息获取对应的解码器的特征参数。
[0056] 网络节点可以根据解码器的特征信息从参数数据库中获取对应的解码器的特征参数。运营商可以事先在网络中设置参数数据库,参数数据库用于存储解码器的特征信息与解码器的特征参数的对应关系。若解码器的特征信息中已包含网络节点所需的所有解码器的特征参数,网络节点也可以直接从解码器的特征信息中获取解码器的特征参数。
[0057] 步骤205:网络节点根据待评估的视频流的视频特征信息获取待评估的视频流的视频帧属性信息,其中,视频帧属性信息至少包括待评估的视频流中的每个视频帧的视频帧类型和QP。
[0058] 具体地,网络节点根据待评估的视频流的视频特征信息,从经过自身的视频流中获取待评估的视频流,对待评估的视频流进行分析并提取视频帧属性信息,其中,提取的视频帧属性信息至少包括待评估的视频流中的每个视频帧的视频帧类型和QP。
[0059] 其中,网络节点对缓存的待评估的视频流的应用层进行解析,在应用层对缓存的待评估的视频流进行分析并提取视频帧属性信息。
[0060] 其中,本实施例应用于如图3所示的网络架构,在该网络架构中,视频服务器发送待评估的视频流给终端,且MQMC为终端选择的网络节点是视频服务器与终端之间的视频流路径经过的网络节点,所以视频服务器发送给终端的视频流经过MQMC为终端选择的网络节点。
[0061] 网络节点接收到终端发送的视频质量评估设置请求消息后,还可以根据该视频质量评估设置请求消息携带的待评估的视频流的视频特征信息,确定是否已经开始对待评估的视频流进行视频质量评估,如果是,则结束解析操作,并根据已解析的视频帧属性信息对待评估的视频流进行视频质量评估,如果否,则继续执行获取待评估的视频流的视频帧属性信息的操作。如此当多个终端同时向网络节点请求对同一视频流进行视频质量评估时,可以保证网络节点对该视频流进行一次解析,避免了对同一视频流重复进行多次解析,节省了资源。
[0062] 其中,网络节点位于网络侧,网络侧的网络环境较好,视频流在网络侧中传输时不会发生损伤或发生很小的损伤,因此网络节点捕取到的待评估的视频流与视频服务器发送的原始视频流相同或基本相同,所以网络节点获取待评估的视频流的视频帧属性信息比终端获取的视频帧属性信息要更完整,从而可以提高视频评估的准确性。
[0063] 进一步地,网络节点发送视频质量评估设置响应消息给终端。
[0064] 步骤206:网络节点接收终端发送的待评估的视频流的受损信息;
[0065] 其中,该受损信息可以包括空缺的视频包的包序号和PCR(Program Clock Reference,节目时钟参考)信息;或,该受损信息可以包括丢包率。
[0066] 其中,终端接收到视频质量评估设置响应消息,获取待评估的视频流的受损信息,然后再发送待评估的视频流的受损信息。
[0067] 进一步地,终端可以周期性地发送待评估的视频流的受损信息给网络节点。
[0068] 其中,终端在发送待评估的视频流的受损信息之前,先获取待评估的视频流的受损信息;在本实施例中,以受损信息包括空缺的视频包的包序号和PCR信息为例进行说明。
[0069] 视频流包括视频帧,每个视频帧包括一个或多个视频包,每个视频包的包头包括视频包的包序号。在视频流中用帧边界标记来区分视频流中的每个视频帧,且帧边界标记位于每个视频帧的第一个或最后一个视频包的包头中。视频服务器在发送视频流时视频流内的每个视频帧包括的每个视频包的包序号都是连续的。另外,视频流还包括TS PCR包,TS PCR包的包头中有PCR信息,视频服务器在发送视频流时周期性地发送TS PCR包。
[0070] 相应地,终端获取待评估的视频流的受损信息的操作可以为:终端内部事先设置一个缓存队列。提取待评估的视频流包括的包,对该包进行判断,如果该包为TS PCR包,则从TS PCR包中提取PCR信息;如果该包为视频包,则提取视频包的包头,且将提取的包头依次缓存在缓存队列,终端按照解码器解码时间间隔从缓存队列中读取一个帧的包头,并对读取的一帧的包头中的包序号进行分析,如果分析出读取的一帧的包头中的包序号不连续,则获取空缺的包序号,获取的空缺的包序号为空缺的视频包的包序号。
[0071] 步骤207:网络节点根据待评估的视频流的受损信息、解码器的特征参数、视频帧属性信息中的视频帧类型和QP对待评估的视频流进行视频质量评估。
[0072] 网络节点根据解码器的特征参数选择对应的计算模型,之后根据通常的视频质量评估方法对待评估的视频流进行视频质量评估。
[0073] 其中,在本实施例中,以受损信息包括空缺视频包的包序号和PCR信息为例,相应地,网络节点可以按如下步骤对待评估的视频流进行视频质量评估,包括:
[0074] 网络节点根据每个视频帧的QP,计算出待评估的视频流中的每个视频帧的压缩质量分数。
[0075] 其中,视频服务器发送的待评估的视频流为经过压缩编码的视频流。且待评估的视频流在压缩编码的过程中,待评估的视频流内的每个视频帧会受到损伤。而待评估的视频流中的每个视频帧的压缩质量分数可以体现每个视频帧在压缩编码时受到损伤的程度。
[0076] 网络节点依次从待评估的视频流中读取包括的视频帧,根据空缺的视频包的包序号和PCR信息,获取当前读取的视频帧的受损分数。
[0077] 具体地,根据空缺的视频包的包序号和PCR信息以及当前读取的视频帧的PCR信息,确定当前读取的视频帧是否有受损视频包,如果有受损视频包且受损视频包为当前读取视频的第一个视频包,则设置当前读取的视频帧的受损面积百分比为第一固定值;如果有受损的视频包且受损视频包不是当前读取的视频帧的第一个视频包,则根据受损视频包的大小设置受损视频包的受损面积百分比,将当前读取的视频帧中的受损视频包的受损面积百分比进行叠加得到当前读取的视频帧的受损面积百分比;如果没有受损视频包,则设置当前读取的视频帧的受损面积百分比为第二固定值;根据当前读取的视频帧的受损面积百分比设置当前读取的视频帧的受损分数。
[0078] 其中,第一固定值可以为100%,第二固定值可以为0%。由于视频帧中的第一个视频包包括视频帧的序列参数集和图像参数集,如果第一个视频包损伤,则会影响整个视频帧的画面,因此如果第一个视频包损伤,则可以直接设置视频帧的受损面积百分比为100%。
[0079] 网络节点根据当前读取的视频帧类型获取当前读取的视频帧受参考帧的影响程度,其中,参考帧是指当前读取的视频帧解码时所需要依赖或参考的视频帧。
[0080] 具体地,网络节点根据当前读取的视频帧的视频帧类型,确定出当前读取的视频帧的参考帧,根据当前读取的视频帧与参考帧之间的图像相似度和参考帧的分数,确定出当前读取的视频帧的受参考帧的影响程度。
[0081] 网络节点根据解码器的特征参数、当前读取的视频帧的压缩质量分数、受损分数和受参考帧的影响程度,计算出当前读取的视频帧的分数。
[0082] 其中,网络节点根据解码器的特征参数选择对应的计算模型,再根据当前读取的视频帧的压缩质量分数、受损分数和受参考帧的影响程度,并通过选择的计算模型计算出当前读取的视频帧的分数。其中,按上述方法获取待评估的视频流中的每个视频帧的分数。
[0083] 由于网络节点在接收当前读取的视频帧之前接收参考帧,所以在计算当前读取的视频帧的分数之前就已计算出参考帧的分数。
[0084] 网络节点根据评估的各个视频帧的分数计算出待评估的视频流的分数。
[0085] 其中,网络节点可以将各个视频帧的分数的平均值,作为待评估的视频流的分数。
[0086] 在本发明实施例中,位于网络侧的网络节点获取视频服务器发送的待评估的视频流,从待评估的视频流中提取视频帧属性信息,终端从受损的待评估的视频流中获取受损信息和PCR信息,并将获取的待评估的视频流的受损信息发送给网络节点,网络节点再根据待评估的视频流的视频帧属性信息、解码器的特征参数和受损信息对待评估的视频流进行评估。其中,由于网络节点位于网络侧,网络节点获取待评估的视频流的视频帧属性信息较完整,从而可以提高视频质量评估的准确性;另外,由于网络节点获取待评估的视频的视频帧属性信息,使得终端不需要获取待评估的视频流的视频帧属性信息,从而减少对终端的系统资源的消耗,减少对用户正常使用终端的影响。
[0087] 实施例5
[0088] 如图4所示,本发明实施例提供了一种网络节点,包括:
[0089] 获取模块301,用于获取待评估的视频流的视频帧属性信息和解码器的特征参数,该视频帧属性信息至少包括待评估的视频流中每个视频帧的视频帧类型和QP;
[0090] 接收器302,用于接收终端发送的待评估的视频流的受损信息;
[0091] 评估模块303,用于根据获取的视频帧属性信息、解码器的特征参数和受损信息,对待评估的视频流进行视频质量评估。
[0092] 其中,获取模块301,具体用于接收终端发送的视频质量评估设置请求消息,该视频质量评估设置请求消息至少携带解码器的特征信息以及待评估的视频流的视频特征信息;根据该解码器的特征信息,从参数数据库中获取解码器的特征参数;根据待评估的视频流的视频特征信息,从经过网络节点的视频流中获取待评估的视频流;缓存获取的待评估的视频流,对缓存的待评估的视频流进行分析并提取视频帧属性信息。
[0093] 其中,获取模块301将缓存的待评估的视频流解析到应用层,在应用层对缓存的待评估的视频流进行分析并提取视频帧属性信息。
[0094] 获取模块301可以根据解码器的特征信息从参数数据库中获取对应的解码器的特征参数。另外,若解码器的特征信息中已包含网络节点所需的所有解码器的特征参数,网络节点也可以直接从解码器的特征信息中获取解码器的特征参数。
[0095] 获取模块301接收到终端发送的视频质量评估设置请求消息后,还可以根据该视频质量评估设置请求消息携带的待评估的视频流的视频特征信息,确定是否已经开始对待评估的视频流进行解析,如果是,则结束解析操作,并根据已解析的视频帧属性信息对待评估的视频流进行视频质量评估,如果否,则继续执行获取待评估的视频流的视频帧属性信息的操作。如此当多个终端同时向网络节点请求对同一视频流进行视频质量评估时,可以保证网络节点对该视频流进行一次解析,避免了对同一视频流重复进行多次解析,节省了资源。
[0096] 其中,网络节点位于网络侧,网络侧的网络环境较好,视频流在网络侧中传输时不会发生损伤或发生很小的损伤,因此网络节点捕取到的待评估的视频流与视频服务器发送的原始视频流相同或基本相同,所以网络节点获取待评估的视频流的视频帧属性信息比终端获取的视频帧属性信息要更完整,从而可以提高视频评估的准确性。
[0097] 其中,终端在发送受损信息之前,先获取待评估的视频流的受损信息;在本实施例中,以受损信息包括空缺视频包的包序号和PCR信息为例,相应地,终端获取待评估的视频流的视频特征信息可以为:终端内部事先设置一个缓存队列。提取待评估的视频流包括的包,对该包进行判断,如果该包为TS PCR包,则从TS PCR包中提取PCR信息;如果该包为视频包,则提取视频包的包头,且将提取的包头依次缓存在缓存队列,终端按照解码器解码时间间隔从缓存队列中读取一个帧的包头,并对读取的一帧的包头中的包序号进行分析,如果分析出读取的一帧的包头中的包序号不连续,则获取空缺的包序号,获取的空缺的包序号为空缺的视频包的包序号。
[0098] 相应地,评估模块303,具体用于根据每个视频帧的QP,计算出待评估的视频流中的每个视频帧的压缩质量分数;依次从待评估的视频流中读取包括的视频帧,根据空缺的视频包的包序号和PCR信息,获取当前读取的视频帧的受损分数;以及根据每个视频帧的视频帧类型获取每个视频帧受参考帧的影响程度;根据每个视频帧的压缩质量分数、受损分数和受参考帧的影响程度以及所述解码器的特征参数,计算出每个视频帧的分数;根据每个视频帧的分数计算待评估的视频流的分数。
[0099] 进一步地,该网络节点还包括:
[0100] 第一通知模块,用于接收终端发送的视频质量评估初始设置消息,如果自身剩余的空闲资源不满足进行视频质量评估所需的资源,则发送通知消息给终端,使终端重选用于视频质量评估的网络节点。
[0101] 进一步地,该网络节点还包括:
[0102] 第二通知模块,用于接收终端发送的视频质量评估初始设置消息,如果自身剩余的空闲资源不满足进行视频质量评估所需的资源,则发送通知消息给媒体质量监控中心MQMC,使MQMC为终端重选用于视频质量评估的网络节点。
[0103] 其中,进行视频质量评估所需的资源包括CPU使用率、空闲的内存和空闲的带宽,如果网络节点的CPU使用率未超过预设的使用率,空闲的内存大于预设的空间大小以及空闲的带宽大于预设的带宽大小,则第一通知模块或第二通知模块确定出网络节点还有足够的资源用于进行视频质量评估,否则,第一通知模块或第二通知模块确定出网络节点没有足够的资源用于进行视频质量评估。
[0104] 进一步地,该网络节点还包括:
[0105] 确定模块,用于根据待评估的视频流的视频特征信息,确定是否已获取待评估的视频流的视频帧属性信息,如果是,则根据已获取的视频帧属性信息对待评估的视频流进行视频质量评估。
[0106] 在本发明实施例中,位于网络侧的网络节点接收视频服务器发送的待评估的视频流,从待评估的视频流中视频帧属性信息,终端从受损的待评估的视频流中获取受损信息,并将获取的待评估的视频流的受损信息发送给网络节点,网络节点再根据待评估的视频流的视频帧属性信息、解码器的特征参数和受损信息对待评估的视频流进行评估。其中,网络节点位于网络侧,网络节点获取待评估的视频流的视频帧属性信息较完整,从而提高视频质量评估的准确性;另外,由于网络节点获取待评估的视频的视频帧属性信息,使得终端不需要获取待评估的视频流的视频帧属性信息,从而减少对终端的系统资源的消耗,减少对用户正常使用终端的影响。
[0107] 以上实施例提供的技术方案中的全部或部分内容可以通过软件编程实现,其软件程序存储在可读取的存储介质中,存储介质例如:计算机中的硬盘、光盘或软盘。
[0108] 以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。