动态编码方法、流媒体质量确定方法及电子设备

文档序号:25991865发布日期:2021-07-23 21:03阅读:64来源:国知局
动态编码方法、流媒体质量确定方法及电子设备

本发明涉及信息处理技术领域,尤其涉及一种动态编码方法、流媒体质量确定方法及电子设备。



背景技术:

当前,基于实时的媒体流技术的直播类业务在互联网上得到了广泛的应用,如互动直播、视频会议、云游戏等场景。实时的媒体流类业务最大的特点就是低时延,网络的变化会对实时流媒体的实时性、图像质量产生重要的影响,特别是新兴的云游戏,网络的时延是关键指标,而当前手游玩家占比大,移动互联网的网络的稳定性随着用户的位置变化而变化,网络变化频繁,网络稳定性无法得到保障,经常会出现画面延迟,画面卡顿,图像画质差等问题,影响用户观看体现。



技术实现要素:

有鉴于此,本发明提供一种动态编码方法、流媒体质量确定方法及电子设备,用于解决目前实时流媒体的播放质量差导致用户体验差的问题。

为解决上述技术问题,第一方面,本发明提供一种动态编码方法,应用于第一电子设备,包括:

根据第一流媒体数据的流媒体质量信息,选择编码参数;

根据所述编码参数对第二流媒体数据进行编码;

其中,所述第一流媒体数据是已传输至客户端进行播放的流媒体数据,所述第二流媒体数据是当前待传输至所述客户端的流媒体数据。

可选的,所述流媒体质量信息是根据所述第一流媒体数据的流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一确定。

可选的,所述编码参数包括编码标准、视频码率、分辨率、帧率、音频采样率、音频码率和质量等级信息中的至少之一。

可选的,所述编码参数包括质量等级,所述质量等级包括第一质量等级、第二质量等级和第三质量等级,所述第一质量等级、所述第二质量等级和所述第三质量等级依次降低;

所述根据所述编码参数对第二流媒体数据进行编码,包括:

在所述流媒体质量信息属于所述第一质量等级的情况下,计算所述第二流媒体数据的图像中的感兴趣区域,对所述感兴趣区域进行第一量化参数qp的编码、对所述感兴趣区域以外的其他区域进行第二qp的编码,所述第一qp小于所述第二qp;和/或,

在所述流媒体质量信息属于所述第二质量等级的情况下,对所述第二流媒体数据的图像动态划分编码单元cu,计算每个所述cu的qp,并对每个所述cu进行相应qp的编码,其中所述cu的qp的平均值与编码码率相匹配;和/或,

在所述流媒体质量信息属于所述第三质量等级的情况下,使用与编码码率相匹配的qp对所述第二流媒体数据进行编码。

第二方面,本发明还提供一种流媒体质量确定方法,应用于第二电子设备,包括:

确定第一流媒体数据的流媒体质量信息;所述第一流媒体数据是第一电子设备已传输至客户端进行播放的流媒体数据;

向所述第一电子设备发送所述流媒体质量信息。

可选的,所述确定第一流媒体数据的流媒体质量信息,包括:

根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,所述预设质量特征包括流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一。

可选的,所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息之前,还包括:接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息;所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,包括:根据有损的所述第一流媒体数据或根据所述第一信息确定所述流媒体主观质量信息;

或,

所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息之前,还包括:接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,并接收所述第一电子设备发送的无损的所述第一流媒体数据;所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,包括:根据有损的所述第一流媒体数据或根据所述第一信息,并参考无损的所述第一流媒体数据,确定所述流媒体主观质量信息;

其中,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息。

可选的,所述确定第一流媒体数据的流媒体质量信息,包括:

将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征;

根据所述预设步长的第一质量特征,确定所述流媒体质量信息。

可选的,所述将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征,包括:

将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与第三流媒体数据的一个或多个预设步长的第二质量特征进行时间维度上的特征融合,所述第三流媒体数据包括所述第一流媒体数据中时间排序在前的流媒体数据,和/或时间排序在所述第一流媒体数据之前的流媒体数据。

可选的,所述根据所述预设步长的第一质量特征,确定所述流媒体质量信息,包括:

对每个所述预设步长的第一质量特征进行特征维度上的特征融合,得到相应的所述预设步长的第三质量特征;

对每个所述预设步长的第三质量特征进行计算,得到所述流媒体质量信息。

第三方面,本发明还提供一种第一电子设备,包括:

编码参数选择模块,用于根据第一流媒体数据的流媒体质量信息,选择编码参数;

编码模块,用于根据所述编码参数对第二流媒体数据进行编码;

其中,所述第一流媒体数据是已传输至客户端进行播放的流媒体数据,所述第二流媒体数据是当前待传输至所述客户端的流媒体数据。

可选的,所述流媒体质量信息是根据所述第一流媒体数据的流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一确定。

可选的,所述编码参数包括编码标准、视频码率、分辨率、帧率、音频采样率、音频码率和质量等级信息中的至少之一。

可选的,所述编码参数包括质量等级,所述质量等级包括第一质量等级、第二质量等级和第三质量等级,所述第一质量等级、所述第二质量等级和所述第三质量等级依次降低;

所述编码模块包括:

第一编码单元,用于在所述流媒体质量信息属于所述第一质量等级的情况下,计算所述第二流媒体数据的图像中的感兴趣区域,对所述感兴趣区域进行第一量化参数qp的编码、对所述感兴趣区域以外的其他区域进行第二qp的编码,所述第一qp小于所述第二qp;和/或,

第二编码单元,用于在所述流媒体质量信息属于所述第二质量等级的情况下,对所述第二流媒体数据的图像动态划分编码单元cu,计算每个所述cu的qp,并对每个所述cu进行相应qp的编码,其中所述cu的qp的平均值与编码码率相匹配;和/或,

第三编码单元,用于在所述流媒体质量信息属于所述第三质量等级的情况下,使用与编码码率相匹配的qp对所述第二流媒体数据进行编码。

第四方面,本发明还提供一种第二电子设备,包括:

质量评价模块,用于确定第一流媒体数据的流媒体质量信息;所述第一流媒体数据是第一电子设备已传输至客户端进行播放的流媒体数据;

发送模块,用于向所述第一电子设备发送所述流媒体质量信息。

可选的,所述质量评价模块,用于根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,所述预设质量特征包括流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一。

可选的,所述第二电子设备,还包括:

第一接收模块,用于接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息;

所述质量评价模块包括:

第一主观质量评价单元,用于根据有损的所述第一流媒体数据或根据所述第一信息确定所述流媒体主观质量信息。

可选的,所述第二电子设备,还包括:

第二接收模块,用于接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,并接收所述第一电子设备发送的无损的所述第一流媒体数据;

所述质量评价模块包括:

第二主观质量评价单元,用于根据有损的所述第一流媒体数据或根据所述第一信息,并参考无损的所述第一流媒体数据,确定所述流媒体主观质量信息;

其中,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息。

可选的,所述质量评价模块包括:

特征融合单元,用于将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征;

质量评价单元,用于根据所述预设步长的第一质量特征,确定所述流媒体质量信息。

可选的,所述特征融合单元,用于将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与第三流媒体数据的一个或多个预设步长的第二质量特征进行时间维度上的特征融合,所述第三流媒体数据包括所述第一流媒体数据中时间排序在前的流媒体数据,和/或时间排序在所述第一流媒体数据之前的流媒体数据。

可选的,所述质量评价单元,包括:

融合子单元,用于对每个所述预设步长的第一质量特征进行特征维度上的特征融合,得到相应的所述预设步长的第三质量特征;

计算子单元,用于对每个所述预设步长的第三质量特征进行计算,得到所述流媒体质量信息。

第五方面,本发明还提供一种第一电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;所述处理器执行所述程序时实现上述任一种动态编码方法中的步骤。

第六方面,本发明还提供一种第二电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的程序;所述处理器执行所述程序时实现上述任一种流媒体质量确定方法中的步骤。

第七方面,本发明还提供一种可读存储介质,其上存储有程序,该程序被处理器执行时实现上述任一种动态编码方法中的步骤或者实现上述任一种流媒体质量确定方法中的步骤。

本发明的上述技术方案的有益效果如下:

本发明实施例中,实时地对流媒体数据的体验质量进行评价,在编码阶段实时动态地根据流媒体数据的体验质量调整对实时媒体流数据进行编码的编码参数,从而达到当前用户网络条件下,用户流媒体体验质量最大化,提高用户的业务体验。而且由于是实时动态地调整编码参数,不需要编码器进行多路流的编码操作,因此节省了编码器侧的资源。本发明实施例可以应用的场景非常广泛,包括直播、视频会议等场景。

附图说明

图1为本发明实施例一中的一种动态编码方法的流程示意图;

图2为本发明实施例二中的一种流媒体质量确定方法的流程示意图;

图3为本发明实施例中的一种实时流媒体质量评价的流程示意图;

图4为本发明实施例中的一种神经网络结构示意图;

图5为本申请实施例的一种应用示意图;

图6为本发明实施例三中的一种第一电子设备的结构示意图;

图7为本发明实施例四中的一种第二电子设备的结构示意图;

图8为本发明实施例五中的一种第一电子设备的结构示意图;

图9为本发明实施例六中的一种第二电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例的附图,对本发明实施例的技术方案进行清楚、完整地描述。显然,所描述的实施例是本发明的一部分实施例,而不是全部的实施例。基于所描述的本发明的实施例,本领域普通技术人员所获得的所有其他实施例,都属于本发明保护的范围。

请参阅图1,图1为本发明实施例一提供的一种动态编码方法的流程示意图,该方法应用于第一电子设备,包括以下步骤:

步骤11:根据第一流媒体数据的流媒体质量信息,选择编码参数;

其中,流媒体质量信息例如可以是质量指数;

步骤12:根据所述编码参数对第二流媒体数据进行编码;

其中,所述第一流媒体数据是已传输至客户端进行播放的流媒体数据,所述第二流媒体数据是当前待传输至所述客户端的流媒体数据。其中,流媒体数据可以是视频数据、音视频数据,例如互动直播、视频会议、云游戏等场景下的实时音视频流数据。所述第一电子设备在根据所述编码参数对第二流媒体数据进行编码之后,将编码后的第二流媒体数据发送至客户端,例如通过无线网络将编码后的第二流媒体数据发送至客户端。

编码后的第二流媒体数据相对编码前的第二流媒体数据是有损伤的。

第一流媒体数据是短时间的流媒体数据,例如一段时间内连续的流媒体数据,并非整个流媒体文件数据。具体的时间长短可以根据需要设置,例如可以设置为5秒,即媒体流中当前时刻向前5秒的流媒体数据为第一流媒体数据。

第一电子设备可以是游戏运行系统,那么第一流媒体数据和第二流媒体数据可以是游戏有关的音视频数据。第一电子设备还是其他功能的电子设备,例如其他功能的边缘服务器。

本发明实施例中,上述步骤在流媒体数据从第一电子设备向客户端的传输过程中实时重复执行。例如,在向终端传输第一流媒体数据之前,可以基于已传输至客户端进行播放的第四流媒体数据的流媒体质量信息,选择合适的编码参数对第一流媒体数据进行编码;又例如在将编码后的第二流媒体数据发送至客户端进行播放之后,可以基于第二流媒体数据的流媒体质量信息,选择合适的编码参数对接下来需要向客户端传输的第五流媒体数据进行编码。

当然,本领域技术人员应当理解的是,每次用来评估流媒体质量的流媒体数据不一定是完全独立互不相交的,相邻两次或多次用来评估流媒体质量信息的流媒体数据可以有部分是重复的。

其中,所述流媒体质量信息主要用于指示流媒体的播放质量,或者说用于指示用户观看客户端播放的流媒体时的体验质量。

所述第一流媒体数据与所述第二流媒体数据可以属于同一媒体流,当然,也可以属于不同的媒体流。所述第二电子设备与所述第一电子设备可以相互独立,也可以集成于同一电子设备。

相关技术中,为解决因无线网络导致的流媒体播放出现画面延迟、画面卡顿和图像画质体验差的问题,存在一种动态码率调整方案,该方案中,编码器侧实时地编码出多种码率的媒体流,客户端基于当前的网络带宽、网络丢包率和网络抖动情况等网络信息进行预测,选择适合码率的媒体流进行播放。但是,该方案中由于编码器侧需要编码多种规格的媒体流,因此存在编码器侧资源浪费严重的问题,而且只考虑网络状况,并未对实时的流媒体体验质量进行考虑,预测并不准确。

本发明实施例提供了一种基于实时流媒体质量评价的智能编码方案,实时地对流媒体数据的体验质量进行评价,在编码阶段实时动态地根据流媒体数据的体验质量调整对实时媒体流数据进行编码的编码参数,从而达到当前用户网络条件下,用户流媒体体验质量最大化,提高用户的业务体验。而且由于是实时动态地调整编码参数,不需要编码器进行多路流的编码操作,因此节省了编码器侧的资源。本发明实施例可以应用的场景非常广泛,包括直播、视频会议等场景。

下面举例说明上述动态编码方法。

其中一种可选的具体实施方式中,所述根据第一流媒体数据的流媒体质量信息,选择编码参数之前,还包括:

接收第二电子设备发送的所述流媒体质量信息。

也即是说,所述第一流媒体数据的流媒体质量信息可以不是第一电子设备得到的,而是由第二电子设备得到的。当然,在其他的可选具体实施方式中,所述述第一流媒体数据的流媒体质量信息也可以是第一电子设备得到的。

可选的,所述流媒体质量信息是根据所述第一流媒体数据的流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一确定。

当然,还可以根据其他的质量特征或结合其他的质量特征得到所述流媒体质量信息,其他的质量特征是指可以用来评价用户的观看体验的特征,这里不再详举。

具体来说,流媒体主观质量信息是流媒体空间维度质量的重要体现,也是流媒体体验质量评价的重要环节。但由于流媒体主观质量的获得会耗费大量时间且无法实时获得,不适用于连续预测模型,因此使用客观质量评价算法予以替代是常见的一种选择。可以使用的客观视频质量评价算法有很多,例如全参考领域中的视频多方法评估融合(videomultimethodassessmentfusion,vmaf),无参考领域中的传统的自然图像质量评价(naturalimagequalityevaluator,niqe)算法、新兴的deepvqa算法等。具体的,流媒体主观质量信息包括画面质量信息。

播放状态是由一连串“0”和“1”的数组组成的,“0”表示流媒体在某一时间片段进入了卡顿状态,“1”表示流媒体在某一时间片段正常播放。由于流媒体的卡顿会对用户的体验带来非常恶劣的影响,因此这一特征对结果精准度的提升非常明显。

时间维度质量信息指的是在时间维度上的短时间视频质量,区别于图像质量评价,视频可以理解为一个连续时间维度上不断切换的许多幅图像。因此,所述时间维度质量信息例如可以是帧率。另外,在模型训练和优化过程中运用卷积神经网络和循环神经网络相结合,提取播放视频中时序特征上的相关特征。

距离上一次发生卡顿的时长,也可以称为自上一次卡顿的时间,是指距离上一次发生卡顿后经过的时间长度。流媒体在播放过程中因为网络波动而发生的卡顿是不可避免的,在发生卡顿之后,由于缓存区域的清空,网络和播放器都需要一定的时间才能恢复到正常的播放状态,同时,用户的体验在卡顿发生之后的一段时间内也会受到影响,用户需要一定的时间以适应卡顿的状态以及重新启动播放后视频质量的下降。即距离上一次发生卡顿的时长,是流媒体视频在播放过程中因为网络波动而发生卡顿后,网络和播放器所需的恢复时间,以及用户所需适应时间相关特征。

质量平滑度也会对体验的感受产生不同的影响,不成熟的编码自适应算法为了减少视频卡顿事件的出现,会频繁切换视频码率,而这种做法对于提高用户体验并没有积极的作用。在本申请实施例中,使用前后的客观视频质量评分的差值作为质量平滑度的指标作为模型特征输入,以此还原更精确的评价结果。也就是说,质量平滑度是根据相邻的流媒体数据的主观质量信息的差值得到,流媒体数据的主观质量信息可以通过客观质量评价算法得到。

本申请实施例中,引入了时间维度质量信息和质量平滑度两个特征,使得模型评价指标更加完整。

可选的,所述编码参数包括编码标准、视频码率、分辨率、帧率、音频采样率、音频码率和质量等级信息中的至少之一。

具体的,可以设置多个编码参数模板,每一编码参数模板里包括质量等级信息以及编码标准、视频码率、分辨率、帧率、音频采样率和音频码率中的至少之一。每一编码参数模板里的质量等级不同,也即编码参数模板按照质量等级设置。然后可以根据第一流媒体数据的流媒体质量信息的质量等级选择相应的模板编码,然后使用该编码模板里的编码参数对第二流媒体数据进行编码。具体的,可能得到的流媒体质量信息可以与质量等级一一对应,也可以一个质量等级对应多个流媒体质量信息。

可选的,所述编码参数包括质量等级,所述质量等级包括第一质量等级、第二质量等级和第三质量等级,所述第一质量等级、所述第二质量等级和所述第三质量等级依次降低;

所述根据所述编码参数对第二流媒体数据进行编码,包括以下(1)-(3)中的一种或多种:

(1)在所述流媒体质量信息属于所述第一质量等级的情况下,计算所述第二流媒体数据的图像中的感兴趣区域(regionofinterest,roi),对所述感兴趣区域进行第一量化参数(quatizationparameter,qp)的编码、对所述感兴趣区域以外的其他区域进行第二qp的编码,所述第一qp小于所述第二qp;

例如,在第一流媒体数据的流媒体质量信息是第一质量等级的情况下,首先计算所述第二流媒体数据的图像中的感兴趣区域,然后对感兴趣区域做小qp的编码,其他区域做大qp的编码;

(2)在所述流媒体质量信息属于所述第二质量等级的情况下,对所述第二流媒体数据的图像动态划分编码单元(codingunit,cu),计算每个所述cu的qp,并对每个所述cu进行相应qp的编码,其中所述cu的qp的平均值与编码码率相匹配;其中,编码码率可以上述的编码参数中的视频码率。

例如,在第一流媒体数据的流媒体质量信息是第二质量等级的情况下,不进行感兴趣区域的计算,直接对所述第二流媒体数据的图像进行动态的cu划分,最小可以划分到8*8,然后计算每个cu的qp,但是所有的cu的qp的平均值符合编码码率的要求。

(3)在所述流媒体质量信息属于所述第三质量等级的情况下,使用与编码码率相匹配的qp对所述第二流媒体数据进行编码。

例如,在第一流媒体数据的流媒体质量信息是第三质量等级的情况下,不进行roi计算,直接使用符合编码码率的固定的qp值编码,每个cu的qp值固定。

请参阅图2,图2是本发明实施例二提供的一种流媒体质量确定方法的流程示意图,该方法应用于第二电子设备,包括以下步骤:

步骤21:确定第一流媒体数据的流媒体质量信息;所述第一流媒体数据是第一电子设备已传输至客户端进行播放的流媒体数据;

步骤22:向所述第一电子设备发送所述流媒体质量信息。

其中,第一流媒体数据可以是音视频数据,例如互动直播、视频会议、云游戏等场景下的实时音视频流数据。

第一流媒体数据是短时间的流媒体数据,即一段时间内的流媒体数据,并非整个流媒体文件数据。具体的时间长短可以根据需要设置。

第一电子设备可以是游戏运行系统,那么第一流媒体数据和第二流媒体数据可以是游戏有关的音视频数据。第一电子设备还是其他功能的电子设备,例如其他功能的边缘服务器。所述第二电子设备与所述第一电子设备可以相互独立,也可以集成于同一电子设备。

其中,所述流媒体质量信息主要用于指示流媒体的播放质量,或者说用于指示用户观看客户端播放的流媒体时的体验质量。

本发明实施例中,第二电子设备在确定第一流媒体数据的流媒体质量信息之后,将确定的流媒体质量信息发送至第一电子设备,从而第一电子设备可以基于该流媒体质量信息选择对当前待传输至客户端的第二流媒体数据进行编码的编码参数,从而第一电子设备可以在编码阶段动态调整对实时媒体流数据进行编码的编码参数,提高用户的业务体验。

可选的,所述确定第一流媒体数据的流媒体质量信息,包括:

根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,所述预设质量特征包括流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一。

关于各预设质量特征可以参阅上述实施例一,此处不再赘述。

其中,所述播放状态、所述时间维度质量信息、所述距离上一次发生卡顿的时长和所述质量平滑度中的至少之一可以是由所述客户端发送。

其中一种可选的具体实施方式中,所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息之前,还包括:

接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息;

所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,包括:

根据有损的所述第一流媒体数据或根据所述第一信息确定所述流媒体主观质量信息。

所述第一流媒体数据的损伤可以包括第一电子设备编码带来的损伤和/或网络传输带来的损伤。

也即是说,本申请实施例中,客户端既可以把有损的第一流媒体数据传输至第二电子设备,也可以为了降低传输的数据量并提高传输的可靠性,只把根据有损的第一流媒体数据得到的用于所述第一流媒体数据的流媒体主观质量信息的信息传输至第二电子设备。

例如,可以利用视频质量评价(videoqualityassessment,vqa)模型根据第一流媒体数据的视频像素信息,计算流媒体主观画质质量得分作为所述流媒体主观质量信息。

另一种可选的具体实施方式中,所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息之前,还包括:

接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,并接收所述第一电子设备发送的无损的所述第一流媒体数据;无损的所述第一流媒体数据也即第一电子设备编码前的源流媒体数据;

所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,包括:

根据有损的所述第一流媒体数据或根据所述第一信息,并参考无损的所述第一流媒体数据,确定所述流媒体主观质量信息;

其中,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息。

也就是说,本发明实施例中,可以基于无损的源流媒体数据进行全参考的客观质量评价得到流媒体主观质量信息。

下面具体说明如何对第一流媒体数据的流媒体质量信息进行评价。

可选的,所述确定第一流媒体数据的流媒体质量信息,包括:

对所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中其他时间的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征;

需要说明的是,所述预设步长的预设质量特征是指所述预设步长的流媒体数据的预设质量特征;

根据所述预设步长的第一质量特征,确定所述流媒体质量信息。

其中,所述预设步长是时间维度上的,例如可以是以帧为单位的,也可以是以时间为单位的。

也就是说,本申请实施例中,以预设步长为单位划分第一流媒体数据,对于单个预设步长的流媒体数据,将其预设质量特征与第一流媒体数据中其他时间的流媒体数据的预设质量特征进行时间维度上的特征融合。

举例来说,可以对所述第一流媒体数据中每一预设步长的预设质量特征与所述第一流媒体数据中其他时间的预设质量特征进行时间维度上的特征融合,得到该预设步长的第一质量特征。也可以只对第一流媒体数据部分预设时长的预设质量特征与所述第一流媒体数据中其他时间的预设质量特征进行时间维度上的特征融合,得到该预设步长的第一质量特征。其他时间可以是第一流媒体数据所对应的时间中除当前计算第一质量特征的预设步长以外全部或部分时间。

在其他的可选具体实施方式中,也可以不对所述第一流媒体数据的预设质量特征进行时间维度上的特征融合,直接根据所述第一流媒体数据中各预设步长的预设质量特征评价所述第一流媒体数据的流媒体质量信息。

其中一种可选的具体实施方式中,所述确定第一流媒体数据的流媒体质量信息,包括:

将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征;

需要说明的是,所述预设步长的预设质量特征是指所述预设步长的流媒体数据的预设质量特征,其他地方同理,不再赘述。

根据所述预设步长的第一质量特征,确定所述流媒体质量信息。

其中,相邻的一个或多个预设步长包括时间排序在前面和时间排序在后的预设步长。

可选的,所述将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合,包括:

对所述第一流媒体数据中每一所述预设步长的预设质量特征按特征维度提取含有相邻的一个或多个所述预设步长的预设质量特征的特征;

将含有相邻的一个或多个所述预设步长的预设质量特征的特征进行转置,得到每一所述预设步长的第一质量特征。

例如,所述第一流媒体数据中每一所述预设步长的预设质量特征有五维,那么可以对该五维特征的每个维度都分别进行一维卷积,卷积核大小为5,数量为128个,padding为2。通过此步运算,可以得到单个预设步长与其周边时间维度融合的流媒体特征。然后将卷积结果转置,可以得到含有时间序列信息的五维特征,且使得此步得到的输出对后续模型的输入呈每个预设步长都仅包含当前时间五个维度的特征的形状。

此处与传统处理方式不同,传统方法多将同一时间不同特征经由卷积神经网络进行融合,本申请实施例中,将同一特征在不同时间的表现值经由卷积神经网络进行融合,得到融合特征。

本申请实施例中,卷积神经网络可以帮助提取得到单个时间步长与其周边时间维度融合的视频特征,解决了在周边时刻问题的延续情况下质量评价不准的问题。

进一步可选的,所述将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征,包括:

将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与第三流媒体数据的一个或多个预设步长的第二质量特征进行时间维度上的特征融合,所述第三流媒体数据包括所述第一流媒体数据中时间排序在前的流媒体数据,和/或时间排序在所述第一流媒体数据之前的流媒体数据。

例如,所述将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征,包括:

将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征进行时间维度上的特征融合,得到所述预设步长的所述第一质量特征。

也即,对于单个预设步长的预设质量特征不仅与第一流媒体数据中该预设步长周边时间维度的特征融合,还可以进一步与第一流媒体数据中在该预设步长之前的时间维度上的特征进行融合。

其中,所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征,也是通过与该时间排序在前的预设步长的相邻一个或多个预设步长的预设质量特征进行时间维度上的特征融合得到。

可选的,所述将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征进行时间维度上的特征融合,得到所述预设步长的所述第一质量特征,包括:

利用循环神经网络((recurrentneuralnetwork,rnn)),依次将所述预设步长的所述第二质量特征与所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征进行时间维度上的特征融合。

其中,该循环神经网络例如可以是门控循环单元(gaterecurrentunit,gru)。

又例如,所述将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征进行时间维度上的特征融合,得到所述预设步长的所述第一质量特征,包括:

将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征以及所述第一流媒体数据之前的流媒体数据的第二质量特征,进行时间维度上的特征融合,得到所述预设步长的所述第一质量特征。

也即是说,本申请实施例中,所述第一流媒体数据中单个预设步长的第一质量特征,不仅跟周边时间的特征进行了融合,也跟该第一流媒体数据中时间排序在前的数据的特征进行了融合,还跟第一流媒体数据之前的流媒体数据的特征进行了融合。

由于本申请实施例是在媒体流下发过程中实时进行的,虽然每次做质量评价时只针对媒体流中的一小段时间的流媒体数据(即第一流媒体数据)进行评价,但是依然融合了之前的所有流媒体数据的特征。

可选的,所述利用循环神经网络,依次将所述预设步长的所述第二质量特征与所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征进行时间维度上的特征融合,包括:

判断所述第一流媒体数据中时间排序在前的所述预设步长的第二质量特征和所述预设步长的所述第二质量特征中需要遗忘和/或记录的特征信息;

根据判断结果,确定所述预设步长的所述第一质量特征。

本申请实施例中具体可以利用gru网络来实现上述过程。具体的,对于将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,按照所述预设步长输入至gru网络,运用其更新门和重置门,对每次的输入选择性更新和遗忘,以此改变其自身状态,输出预设时间步长维度的每个时刻的时间序列特征值数组。

除了输入输出的特征信息外,具体的实现过程可参阅相关技术中的gru网络的实现过程,此处不再赘述。

在其他的可选具体实施方式中,所述确定第一流媒体数据的流媒体质量信息,包括:

将所述预设步长的预设质量特征与所述第一流媒体数据中时间排序在前的所述预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征。

本申请实施例中,在将所述预设步长的预设质量特征与所述第一流媒体数据中时间排序在前的所述预设步长的预设质量特征进行时间维度上的特征融合可以直接得到所述第一质量特征。

也可以在将所述预设步长的预设质量特征与所述第一流媒体数据中时间排序在前的所述预设步长的预设质量特征进行时间维度上的特征融合得到第四质量特征,然后将所述预设步长的第四质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合。

可选的,所述根据所述预设步长的第一质量特征,确定所述流媒体质量信息,包括:

对每个所述预设步长的第一质量特征进行特征维度上的特征融合,得到相应的所述预设步长的第三质量特征;例如可以对每个所述预设步长的第一质量特征运用相同的网络结构进行特征维度上的特征融合;

对每个所述预设步长的第三质量特征进行计算,得到所述流媒体质量信息。

也即,在得到第一流媒体数据中各预设步长的第一质量特征之后,对各预设步长的第一质量特征进行特征维度的特征融合得到相应预设步长的第三质量特征。

对每个所述预设步长的第三质量特征进行计算,得到所述流媒体质量信息时,例如可以通过加权平均的方式计算。

请参阅图3和4,下面举例说明如何对第一流媒体数据的流媒体质量信息进行评价。

1、vqa模型部分根据有损的第一流媒体数据的相关信息以及第一电子设备提供的无损的第一流媒体数据(即源流媒体数据),计算实时流媒体主观质量信息(例如实时流媒体主观画质质量得分)。

2、网络预处理部分将vqa模型输出的流媒体主观质量信息,以及客户端上报的播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度等相组合构成特征向量。在预处理结束之后,将原始特征向量交由卷积神经网络。

图4所示为本发明实施例神经网络结构示意图,最左端为网络的输入,输入结构为数值,具体内容为各个质量特征,公式如下:

网络能够接受的质量特征不设上限。

3、卷积神经网络(cnn)根据网络预处理部分的输入,按特征维度提取含有临近时间区域信息的特征。

卷积神经网络对输入的每个维度特征都分别进行一维(1d)卷积,通过此步运算,可以得到单个时间步长与其周边时间维度融合的流媒体特征,经过卷积后,可以得到:

上式中,fi是公式(1)中的特征数值,vi是系数矩阵。

4、将含有临近时间区域信息的卷积神经网络输出特征转置后,得到每个时间步长所属特征长度形状的输入特征形状,并按照固定时间步长向gru网络进行输入。

对公式(2)输出结果转置,使得此步得到的输出对后续模型的输入x(t)呈每个时间步长都仅包含当前时间多个维度的特征的形状:

5、gru网络自行学习判断每一步骤中需要记录和遗忘的信息并输出时间步长长度的最终质量特征向量(即第一质量特征)。

在gru网络层部分,网络共有两层,每层各含有256个双向gru单元,时间步长为50。

gru网络层中最为关键的网络结构在于其更新门和重置门,两个门的计算公式基本相同:

z(t)=σ(wzx(t)+uzh(t-1))(4)

r(t)=σ(wrx(t)+urh(t-1))(5)

其中,z(t)是更新门,r(t)是重置门,σ是sigmoid激活函数,x(t)是公式(3)中求得的当前时刻输入的特征,h(t-1)是上一时刻网络层中更新记录留下的信息,wz、uz、wr和ur分别对应更新门和重置门的权重矩阵。在将特征转置过后输入gru网络层,特征经过更新门和重置门后,模型会通过训练学习分辨每个时间步长中需要遗忘和需要记录下的特征信息,并运用在之后的训练过程中,逐渐优化权重矩阵并达到稳定。每一步中gru单元的状态都是由以下公式计算的:

其中,表示当前记忆内容,φ是tanh激活函数,x(t)是公式(3)中求得的当前时刻输入的特征,r(t)是公式(5)中计算得到的重置门结果,h(t-1)是上一时刻网络层中更新记录留下的信息,w和u是权重矩阵,是对r(t)和uh(t-1)做哈达玛(hadamard)乘积。因为重置门是由sigmoid激活函数运算得到的,所以其是一个由0到1之间的数组成的向量,它会衡量门控开启的大小程度,决定有多少上一时刻遗留下来的信息需要在这一记忆时刻被遗忘。将当前的记忆内容再继续进行运算,将上一时刻网络层中更新记录留下的信息和当前记忆内容,分别和z(t)以及(1-z(t))表示的更新门激活结果相乘,可以得到最终门控循环单元输出的内容,同时也作为下一时刻迭代运算的输入,继续参与到网络模型的训练和优化。

6、全连接层网络对每个时间步长输出的最终质量特征向量运用相同的完全网络结构进行特征融合,再经过加权平均得到实时流媒体质量信息。

由公式(6)、(7)计算得到的gru网络层部分的输出的维度是等同于最先输入gru模块的时间步长数量的,在本发明实施例中为50。本发明实施例中对于每一个时间步长的gru输出依照时间顺序输入,都经过完全相同的全连接层结构,再按时间顺序输出。至此,每一个时间步长的输入特征,在经过了完整的网络结构后,最终构成了针对当前时刻的时间序列特征值数组,最后再经过一层全连接层进行加权运算,就能得到体验质量(qualityofexperience,qoe)的评价结果:

qoe=h(out(1),out(2),...,out(t),...,out(t))(8)

其中,h为加权运算,out(1),out(2),…,out(t),…,out(t)为各时间步长的时间时间序列特征数值,即各时间步长的最终质量特征向量。

本发明实施例提供的是与上述实施例一对应的、具有相同发明构思的技术方案,且能达到相同的技术效果,详细可参阅上述实施例一,此处不再赘述。

请参阅图5,下面以云游戏场景为例说明本申请的具体应用。

1、用户通过客户端启动游戏程序。

2、客户端通知游戏运行系统(即第一电子设备)。

3、游戏运行系统获取当前系统空闲资源,进行挂载实例操作,并调用用户访问的游戏,获取游戏数据,进行游戏画面渲染,按照默认模板参数进行编码,并实时将编码后的游戏数据发送至客户端,开启并实现实时视频媒体流向客户端的传输。

4、客户端建立音频、视频媒体流,并显示游戏画面帧。

5、客户端定时或实时向质量评价系统(即第二电子设备)上报用于评价视频质量信息的特征信息,例如播放状态(卡顿或正常)、帧率、距离上一次发生卡顿的时长以及质量平滑度。

6、质量评价系统根据损伤的视频的相关信息,利用vqa模型对视频的画面质量进行评价,得到视频画面质量信息。质量评价系统还根据得到的视频画面质量信息以及客户端上报的用于评价视频质量信息的特征信息,进行视频质量信息评价,并将评价得到的视频质量信息,例如视频质量指数,发送至游戏运行系统。

7、用户进行游戏操作。

8、游戏运行系统接收到操作信息后,进行游戏渲染,并计算出游戏图像,编码时,编码模块根据视频质量信息(例如视频质量指数)选择编码参数模板(包含编码标准、视频码率、分辨率、帧率、音视频采样率、音频码率、质量等级等信息)进行编码。并将实时的媒体流下发至客户端。

其中,编码参数模板为预置模板,按照质量等级设置,与视频质量信息一一对应。编码器质量算法分为高质量、中等质量、低质量三种算法;

高质量:首先计算图像的roi,对roi区域进行高qp的编码,其他区域做低qp的编码;

中等质量:不进行roi计算,直接对整个图像区域进行动态的cu划分,最小划分到8*8,然后进行计算每个cu的qp,但是所有的cu的qp的平均值符合码率的要求;

低等质量:不进行roi计算,直接使用符合码率的固定的qp值,每个cuqp值固定。

在本步骤中,通过根据步骤6得出的视频质量信息,可以对视频图像编码参数进行动态调整,并且对高质量、中等质量和低质量分别采取不同的编码实现方式,尤其对于高质量编码,先计算roi,从而确定出roi(regionofinterest,感兴趣区域),并对roi区域进行小qp的编码,其他区域执行大qp编码。本申请提出了根据视频质量指数实现对同一游戏图像的不同区域采用不同的qp编码,改变了现有的对不同视频帧采用不同的编码参数,而非同一帧图像不同区域采用不同的编码参数。

9、客户端读取视频码流,根据码流中是否带有视频参数集(videoparameterset,vps)、序列参数集(sequenceparamaterset,sps)参数,来决策是否重新初始化解码器,如果含有vps及sps则重新初始化解码器,然后读取视频编码层(videocodinglayer,vcl)数据,进行解码操作。

本步骤中,由于对实时视频码流播放过程中,解码器解码时需要获知vps、sps参数实现解码,步骤8中的视频码流的参数会基于视频质量信息,对视频流进行动态编码,因此,需要在码流数据中写入更新后的vps、sps参数,从而保证解码器获取到视频码流时,可以正常解码。

请参阅图6,图6是本发明实施例三提供的一种第一电子设备的结构示意图,该第一电子设备60包括:

编码参数选择模块61,用于根据第一流媒体数据的流媒体质量信息,选择编码参数;

编码模块62,用于根据所述编码参数对第二流媒体数据进行编码;

其中,所述第一流媒体数据是已传输至客户端进行播放的流媒体数据,所述第二流媒体数据是当前待传输至所述客户端的流媒体数据。

本发明实施例中,实时地对流媒体数据的体验质量进行评价,在编码阶段实时动态地根据流媒体数据的体验质量调整对实时媒体流数据进行编码的编码参数,从而达到当前用户网络条件下,用户流媒体体验质量最大化,提高用户的业务体验。而且由于是实时动态地调整编码参数,不需要编码器进行多路流的编码操作,因此节省了编码器侧的资源。本发明实施例可以应用的场景非常广泛,包括直播、视频会议等场景。

可选的,所述流媒体质量信息是根据所述第一流媒体数据的流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一确定。

可选的,所述编码参数包括编码标准、视频码率、分辨率、帧率、音频采样率、音频码率和质量等级信息中的至少之一。

可选的,所述编码参数包括质量等级,所述质量等级包括第一质量等级、第二质量等级和第三质量等级,所述第一质量等级、所述第二质量等级和所述第三质量等级依次降低;

所述编码模块62包括:

第一编码单元,用于在所述流媒体质量信息属于所述第一质量等级的情况下,计算所述第二流媒体数据的图像中的感兴趣区域,对所述感兴趣区域进行第一量化参数qp的编码、对所述感兴趣区域以外的其他区域进行第二qp的编码,所述第一qp小于所述第二qp;和/或,

第二编码单元,用于在所述流媒体质量信息属于所述第二质量等级的情况下,对所述第二流媒体数据的图像动态划分编码单元cu,计算每个所述cu的qp,并对每个所述cu进行相应qp的编码,其中所述cu的qp的平均值与编码码率相匹配;和/或,

第三编码单元,用于在所述流媒体质量信息属于所述第三质量等级的情况下,使用与编码码率相匹配的qp对所述第二流媒体数据进行编码。

本发明实施例是与上述方法实施例一对应的产品实施例,故在此不再赘述,详细请参阅上述实施例一。

请参阅图7,图7是本发明实施例四提供的一种第二电子设备的结构示意图,该第二电子设备70包括:

质量评价模块71,用于确定第一流媒体数据的流媒体质量信息;所述第一流媒体数据是第一电子设备已传输至客户端进行播放的流媒体数据;

发送模块72,用于向所述第一电子设备发送所述流媒体质量信息。

本发明实施例中,第二电子设备在确定第一流媒体数据的流媒体质量信息之后,将确定的流媒体质量信息发送至第一电子设备,从而第一电子设备可以基于该流媒体质量信息选择对当前待传输至客户端的第二流媒体数据进行编码的编码参数,从而第一电子设备可以在编码阶段动态调整对实时媒体流数据进行编码的编码参数,提高用户的业务体验。

可选的,所述质量评价模块71,用于根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,所述预设质量特征包括流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一。

可选的,所述第二电子设备70,还包括:

第一接收模块,用于接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息;

所述质量评价模块71包括:

第一主观质量评价单元,用于根据有损的所述第一流媒体数据或根据所述第一信息确定所述流媒体主观质量信息。

可选的,所述第二电子设备70,还包括:

第二接收模块,用于接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,并接收所述第一电子设备发送的无损的所述第一流媒体数据;

所述质量评价模块71包括:

第二主观质量评价单元,用于根据有损的所述第一流媒体数据或根据所述第一信息,并参考无损的所述第一流媒体数据,确定所述流媒体主观质量信息;

其中,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息。

可选的,所述质量评价模块71包括:

特征融合单元,用于将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征;

质量评价单元,用于根据所述预设步长的第一质量特征,确定所述流媒体质量信息。

可选的,所述特征融合单元,用于将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与第三流媒体数据的一个或多个预设步长的第二质量特征进行时间维度上的特征融合,所述第三流媒体数据包括所述第一流媒体数据中时间排序在前的流媒体数据,和/或时间排序在所述第一流媒体数据之前的流媒体数据。

可选的,所述质量评价单元,包括:

融合子单元,用于对每个所述预设步长的第一质量特征进行特征维度上的特征融合,得到相应的所述预设步长的第三质量特征;

计算子单元,用于对每个所述预设步长的第三质量特征进行计算,得到所述流媒体质量信息。

本发明实施例是与上述方法实施例二对应的产品实施例,故在此不再赘述,详细请参阅上述实施例二。

请参阅图8,图8是本发明实施例五提供的一种第一电子设备的结构示意图,该第一电子设备80包括处理器81、存储器82及存储在所述存储器82上并可在所述处理器81上运行的程序;所述处理器81执行所述程序时实现如下步骤:

根据第一流媒体数据的流媒体质量信息,选择编码参数;

根据所述编码参数对第二流媒体数据进行编码;

其中,所述第一流媒体数据是已传输至客户端进行播放的流媒体数据,所述第二流媒体数据是当前待传输至所述客户端的流媒体数据。

可选的,所述流媒体质量信息是根据所述第一流媒体数据的流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一确定。

可选的,所述编码参数包括编码标准、视频码率、分辨率、帧率、音频采样率、音频码率和质量等级信息中的至少之一。

可选的,所述编码参数包括质量等级,所述质量等级包括第一质量等级、第二质量等级和第三质量等级,所述第一质量等级、所述第二质量等级和所述第三质量等级依次降低;

所述处理器81执行所述程序时还可实现如下步骤:

所述根据所述编码参数对第二流媒体数据进行编码,包括:

在所述流媒体质量信息属于所述第一质量等级的情况下,计算所述第二流媒体数据的图像中的感兴趣区域,对所述感兴趣区域进行第一量化参数qp的编码、对所述感兴趣区域以外的其他区域进行第二qp的编码,所述第一qp小于所述第二qp;和/或,

在所述流媒体质量信息属于所述第二质量等级的情况下,对所述第二流媒体数据的图像动态划分编码单元cu,计算每个所述cu的qp,并对每个所述cu进行相应qp的编码,其中所述cu的qp的平均值与编码码率相匹配;和/或,

在所述流媒体质量信息属于所述第三质量等级的情况下,使用与编码码率相匹配的qp对所述第二流媒体数据进行编码。

本发明实施例的具体工作过程与上述方法实施例一中的一致,故在此不再赘述,详细请参阅上述实施例一中方法步骤的说明。

请参阅图9,图9是本发明实施例六提供的一种第二电子设备的结构示意图,该第二电子设备90包括处理器91、存储器92及存储在所述存储器92上并可在所述处理器91上运行的程序;所述处理器91执行所述程序时实现如下步骤:

确定第一流媒体数据的流媒体质量信息;所述第一流媒体数据是第一电子设备已传输至客户端进行播放的流媒体数据;

向所述第一电子设备发送所述流媒体质量信息。

本发明实施例中,第二电子设备在确定第一流媒体数据的流媒体质量信息之后,将确定的流媒体质量信息发送至第一电子设备,从而第一电子设备可以基于该流媒体质量信息选择对当前待传输至客户端的第二流媒体数据进行编码的编码参数,从而第一电子设备可以在编码阶段动态调整对实时媒体流数据进行编码的编码参数,提高用户的业务体验。

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

所述确定第一流媒体数据的流媒体质量信息,包括:

根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,所述预设质量特征包括流媒体主观质量信息、播放状态、时间维度质量信息、距离上一次发生卡顿的时长和质量平滑度中的至少之一。

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

所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息之前,还包括:接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息;所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,包括:根据有损的所述第一流媒体数据或根据所述第一信息确定所述流媒体主观质量信息;

或,

所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息之前,还包括:接收所述客户端发送的有损的所述第一流媒体数据,或,接收所述客户端发送的第一信息,并接收所述第一电子设备发送的无损的所述第一流媒体数据;所述根据所述第一流媒体数据的预设质量特征确定所述流媒体质量信息,包括:根据有损的所述第一流媒体数据或根据所述第一信息,并参考无损的所述第一流媒体数据,确定所述流媒体主观质量信息;

其中,所述第一信息是根据有损的所述第一流媒体数据确定的、用于确定所述流媒体主观质量信息的信息。

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

所述确定第一流媒体数据的流媒体质量信息,包括:

将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征;

根据所述预设步长的第一质量特征,确定所述流媒体质量信息。

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

所述将所述第一流媒体数据中预设步长的预设质量特征与所述第一流媒体数据中相邻的一个或多个预设步长的预设质量特征进行时间维度上的特征融合,得到所述预设步长的第一质量特征,包括:

将所述预设步长的预设质量特征与所述第一流媒体数据中的相邻的一个或多个所述预设步长的预设质量特征进行时间维度上的特征融合得到的所述预设步长的第二质量特征,与第三流媒体数据的一个或多个预设步长的第二质量特征进行时间维度上的特征融合,所述第三流媒体数据包括所述第一流媒体数据中时间排序在前的流媒体数据,和/或时间排序在所述第一流媒体数据之前的流媒体数据。

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

所述根据所述预设步长的第一质量特征,确定所述流媒体质量信息,包括:

对每个所述预设步长的第一质量特征进行特征维度上的特征融合,得到相应的所述预设步长的第三质量特征;

对每个所述预设步长的第三质量特征进行计算,得到所述流媒体质量信息。

本发明实施例的具体工作过程与上述方法实施例二中的一致,故在此不再赘述,详细请参阅上述实施例二中方法步骤的说明。

本发明实施例九提供一种可读存储介质,其上存储有程序,该程序被处理器执行时实现上述实施例一中任一种动态编码中的步骤或者实施例二中任一种流媒体质量确定方法中的步骤。详细请参阅以上对应实施例中方法步骤的说明。

本发明实施例中的客户端可以是无线终端,无线终端可以是指向用户提供语音和/或其他业务数据连通性的设备,具有无线连接功能的手持式设备、或连接到无线调制解调器的其他处理设备。无线终端可以经无线接入网(radioaccessnetwork,简称ran)与一个或多个核心网进行通信,无线终端可以是移动终端,如移动电话(或称为“蜂窝”电话)和具有移动终端的计算机,例如,可以是便携式、袖珍式、手持式、计算机内置的或者车载的移动装置,它们与无线接入网交换语言和/或数据。例如,个人通信业务(personalcommunicationservice,简称pcs)电话、无绳电话、会话发起协议(sessioninitiationprotocol,简称sip)话机、无线本地环路(wirelesslocalloop,简称wll)站、个人数字助理(personaldigitalassistant,简称pda)等设备。无线终端也可以称为系统、订户单元(subscriberunit)、订户站(subscriberstation),移动站(mobilestation)、移动台(mobile)、远程站(remotestation)、远程终端(remoteterminal)、接入终端(accessterminal)、用户终端(userterminal)、用户代理(useragent)、终端(userdeviceoruserequipment),在此不作限定。

上述可读存储介质,包括计算机可读存储介质。计算机可读存储介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。存储介质的例子包括,但不限于相变内存(pram)、静态随机存取存储器(sram)、动态随机存取存储器(dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(cd-rom)、数字多功能光盘(dvd)或其他光学存储、磁盒式磁带,磁带磁磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明所述原理的前提下,还可以作出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

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