一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

目标转码参数模板的确定方法、装置及计算机设备与流程

2022-06-16 03:25:38 来源:中国专利 TAG:


1.本说明书实施方式涉及计算机互联网技术领域,具体涉及一种目标转码参数模板的确定方法、装置及计算机设备。


背景技术:

2.随着网络技术的发展,越来越多的用户通过各种短视频进行娱乐或者学习。在分享和观看短视频的过程中,需要对短视频进行视频转码(video transcoding)处理。
3.相关技术中,视频转码涉及到的参数较多,且每次执行视频转码时涉及到的参数会存在重复部分,将重复的参数进行组合,可以形成转码参数模板,从而在视频转码过程中调用形成的转码参数模板。随着实际数据处理需求的变化,维护人员对转码参数模板进行调整。
4.然而,相关技术中转码参数模板的调整需要耗费较多的人力和时间。


技术实现要素:

5.有鉴于此,本说明书实施方式致力于提供一种目标转码参数模板的确定方法、装置、计算机设备、存储介质及计算机程序产品,以解决传统技术中转码参数模板的调整需要耗费较多的人力和时间的技术问题。
6.本说明书实施方式提供了一种目标转码参数模板的确定方法,所述方法包括:根据包括多个转码参数的第一模板生成第二模板;其中,所述第一模板和所述第二模板中包括的转码参数部分相同;其中,所述第一模板对应有使用所述第一模板播放视频文件产生的第一播放质量数据;获取所述视频文件使用所述第二模板进行播放的第二播放质量数据;在所述第二播放质量数据未达成目标播放质量数据的情况下,将所述第一模板和所述第二模板中较为接近达成所述目标播放质量数据的一个作为第一模板;重复执行前述多个步骤至第二模板的第二播放质量数据达成所述目标播放质量数据,得到的第二模板作为所述目标转码参数模板。
7.本说明书实施方式提供一种目标转码参数模板的确定装置,所述装置包括:转码模板生成模块,用于根据包括多个转码参数的第一模板生成第二模板;其中,所述第一模板和所述第二模板中包括的转码参数部分相同;质量数据获取模块,用于获取视频文件使用所述第一模板进行播放的第一播放质量数据,和使用所述第二模板进行播放的第二播放质量数据;第一模板确定模块,用于在所述第二播放质量数据未达成目标播放质量数据的情况下,将所述第一模板和所述第二模板中较为接近达成所述目标播放质量数据的一个作为第一模板;目标模板确定模块,用于重复执行前述多个模块的功能至第二模板的第二播放质量数据达成所述目标播放质量数据,得到的第二模板作为所述目标转码参数模板。
8.本说明书实施方式提供一种计算设备,包括存储器和处理器,所述存储器存储有计算机程序,所述处理器执行所述计算机程序时实现上述实施方式中的方法步骤。
9.本说明书实施方式提供一种计算机可读存储介质,其上存储有计算机程序,所述
计算机程序被处理器执行时实现上述实施方式中的方法步骤。
10.本说明书实施方式提供一种计算机程序产品,所述计算机程序产品中包括指令,所述指令被计算机设备的处理器执行时,使得所述计算机设备能够执行上述实施方式中的方法步骤。
11.本说明书实施方式,通过基于遗传算法和第一模板生成第二模板,并将第一模板和第二模板分别用作ab测试的a版本和b版本,进行视频文件的转码和播放,得到第一模板和第二模板的播放质量数据,并可以根据第一模板和第二模板的播放质量数据逐渐调整转码参数,自动将转码参数模板调整到达到预期的状态,无需运维人员和测试人员的投放太多的时间和精力,节省了模板调整的开发成本和测试时间。
附图说明
12.图1a所示为一实施方式提供的场景示例中遗传算法的流程图;
13.图1b所示为一实施方式提供的目标转码参数模板的确定方法的应用环境图;
14.图1c所示为一实施方式提供的场景示例中目标转码参数模板的确定方法的交互图;
15.图1d所示为一实施方式提供的目标转码参数模板的确定系统的框架图;
16.图1e所示为一实施方式提供的目标转码参数模板的确定方法的应用环境图;
17.图2所示为一实施方式提供的目标转码参数模板的确定方法的流程示意图;
18.图3所示为一实施方式提供的目标转码参数模板的确定方法的流程示意图;
19.图4所示为一实施方式提供的目标转码参数模板的确定方法的流程示意图;
20.图5为一实施方式提供的目标数据确定装置的结构框图;
21.图6为一实施方式提供的计算机设备的内部结构图。
具体实施方式
22.下面将结合本说明书实施方式中的附图,对本说明书实施方式中的技术方案进行清楚、完整地描述,显然,所描述的实施方式仅是本说明书一部分实施方式,而不是全部的实施方式。基于本说明书中的实施方式,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施方式,都属于本说明书保护的范围。
23.以下对本说明书中涉及的部分名词进行解释。转码参数模板可以是预先设置好的提供给用户的,且用于对视频文件进行视频转码的模板文件。视频转码(video transcoding)可以是指将已经压缩编码的视频码流转换成另一个视频码流,以适应不同的网络带宽、不同的终端处理能力和不同的用户需求。转码本质上是一个先解码再编码的过程,因此转换前后的码流可能遵循相同的视频编码标准,也可能不遵循相同的视频编码标准。
24.视频码率可以是数据传输时单位时间传送的数据位数。一般用的单位是kbps,即千位每秒。也可以理解为取样率,单位时间内取样率越大,精度就越高,处理出来的视频文件就越接近原始视频文件。
25.视频帧率(frame rate)可以是用于测量显示帧数的量度。其单位为每秒显示帧数(frames per second,fps)或“赫兹”(hz)。视频帧率多用于影视制作和电子游戏等实际数
据处理场景中。
26.在本说明书提供的一个场景示例中,随着短视频平台的发展,实际数据处理需求越来越多样化。基于实际数据处理需求上传至短视频平台的视频文件具有各自的特点。观看视频文件的不同用户使用不同的播放设备。不同的播放设备支持的视频文件有所不同,因此,需要调用转码参数模板对视频文件进行视频转码。
27.在一些情况下,每次调整转码参数模板时,需要对调整后得到的新转码参数模板进行大量的测试,以验证调整后的视频播放效果。验证通过之后才会部署在服务器上,可见调整得到的新转码参数模板的兼容性测试验证工作量巨大,需要耗费大量的时间和人力。
28.因此,本场景示例中结合ab测试和遗传算法模型调整转码参数模板,节省了开发调整模板的时间。ab测试可以理解为实际数据处理流程制作两个(a/b)或多个(a/b/n)版本,在同一时间维度,分别让组成成分相同或相似的访客群组,作为目标人群随机的访问这些版本,收集各群组的用户体验数据和行为数据,最后分析并评估,在a/b版本或者a/b/n版本中确定出最好版本,并正式采用。遗传操作包括选择(selection)、交叉(crossover)、变异(mutation)三个基本遗传算子(geneticoperator)。
29.请参阅图1a,遗传算法的基本运算过程如下。
30.(1)初始化:设置进化代数计数器t=0,设置最大进化代数t,随机生成m个体作为初始群体p(0)。
31.(2)个体评价:计算群体p(t)中各个个体的适应度。
32.(3)选择运算:将选择算子作用于群体。选择的目的是把优化的个体直接遗传到下一代或通过配对交叉产生新的个体再遗传到下一代。选择操作是建立在群体中个体的适应度评估基础上的。
33.(4)交叉运算:将交叉算子作用于群体。遗传算法中起核心作用的就是交叉算子。
34.(5)变异运算:将变异算子作用于群体。即是对群体中的个体串的某些基因座上的基因值作变动。群体p(t)经过选择、交叉、变异运算之后得到下一代群体p(t 1)。
35.(6)终止条件判断:若t=t,则以进化过程中所得到的具有最大适应度个体作为结果输出,终止计算。
36.在本场景示例中,采用a转码参数模板和b转码参数模板,并且采集使用a转码参数模板播放视频文件产生的第一播放质量数据,以及使用b转码参数模板播放视频文件产生的第二播放质量数据。对第一播放质量数据和第二播放质量数据进行分析评估,若第一播放质量数据和第二播放质量数据均不达标的情况下,基于遗传算法自动对a转码参数模板和b转码参数模板进行调整。
37.请参阅图1b,用户a使用移动终端a进行视频拍摄,得到源视频文件。通过移动终端a将源视频文件上传至短视频平台的服务器s。服务器s上部署有若干转码参数模板,利用若干转码参数模板对源视频文件进行视频转码,得到对应的视频文件。用户b使用移动终端b访问服务器s以观看用户a上传的原视频文件。为了移动终端b可以流畅且清晰地播放视频文件,根据移动终端b的播放环境确定向移动终端b发送对应的视频文件,且该对应的视频文件可以是与移动终端b的播放环境对应的a转码参数模板对源视频文件进行转码而得到的。具体的,例如,播放环境可以是移动终端b上安装的播放器、移动终端b的操作系统、移动终端b的机型等。移动终端b接收并播放该对应的视频文件。可以预先在移动终端b播放视频
文件的应用程序中设置埋点,通过埋点的方式采集该对应的视频文件的第一播放质量数据。具体的,例如,第一播放质量数据可以包括可用率、秒开率、卡顿率、清晰度或帧率。
38.服务器s还可以根据a转码参数模板生成b转码参数模板。a转码参数模板与b转码参数模板分别包括多个转码参数,且a转码参数模板与b转码参数模板中包括的转码参数可以部分相同。利用b转码参数模板对源视频文件进行视频转码,得到对应的视频文件。同样通过埋点的方式获取b转码参数模板对应的第二播放质量数据。可以理解的是,b转码参数模板与a转码参数模板用于相同的播放环境,即与移动终端b的播放环境相同。
39.第二播放质量数据可以包括可用率、秒开率、卡顿率、清晰度、帧率。服务器s判断第二播放质量数据是否达到预期指标。预期指标可以包括分别针对可用率、秒开率、卡顿率、清晰度、帧率的若干指标。若部分第二播放质量数据没有达到对应的指标,则可以判定第二播放质量数据没有达到预期指标。若全部的第二播放质量数据达到对应的指标,则可以判定第二播放质量数据到预期指标。
40.在第二播放质量数据没有达到预期指标的情况下,比较a转码参数模板对应的第一播放质量数据和目标播放质量数据,比较b转码参数模板对应的第二播放质量数据和目标播放质量数据,在第一播放质量数据和第二播放质量数据中确定出与目标播放质量数据较为接近的一个。具体包括两种情况:第一种情况,若确定第一播放质量数据与目标播放质量数据较为接近,则将第一播放质量数据对应的a转码参数模板继续作为a转码参数模板。第二种情况,若确定第二播放质量数据与目标播放质量数据较为接近,则将第二播放质量数据对应的b转码参数模板替换a转码参数模板,作为a转码参数模板。
41.在第一种情况中,将第一播放质量数据对应的a转码参数模板继续作为a转码参数模板。基于遗传算法的交叉运算和选择运算,根据a转码参数模板的多个转码参数以及转码参数的参数取值范围重新生成c转码参数模板,作为b转码参数模板。重复执行获取b转码参数模板对应的第二播放质量数据,判断第二播放质量数据是否达到预期指标,直至第二播放质量数据达到预期指标,将达到预期指标的b转码参数模板作为目标转码参数模板。
42.在第二种情况中,将第二播放质量数据对应的b转码参数模板继续作为a转码参数模板。基于遗传算法的交叉运算和选择运算,根据b转码参数模板的多个转码参数以及转码参数的参数取值范围重新生成d转码参数模板,作为b转码参数模板。重复执行获取b转码参数模板对应的第二播放质量数据,判断第二播放质量数据是否达到预期指标,直至第二播放质量数据达到预期指标,将达到预期指标的b转码参数模板作为目标转码参数模板。
43.由于预先已经设置最大进化代数t。即,重复循环执行上述直至第二播放质量数据达到预期指标的步骤的最大次数。因此,可以对执行上述直至第二播放质量数据达到预期指标的步骤进行计数,获取执行次数,若执行次数达到最大进化代数t,但是依旧没有找到满足预期指标的目标转码参数模板,此时需要执行遗传算法的变异计算。具体地,随机在各转码参数的参数取值范围内确定各转码参数取值,重新生成e转码参数模板,作为a转码参数模板。基于a转码参数模板重新生成b转码参数模板,重复执行上述直至第二播放质量数据达到预期指标的步骤。
44.在本说明书提供的另一个具体地场景示例中,请参阅图1c。测试人员的客户端提供有转码参数模板配置页面。通过转码参数模板配置页面接收转码参数的选择操作。响应于转码参数的选择操作,确定初始模板的多个转码参数。转码参数模板配置页面提供有各
转码参数的参数范围配置项,通过参数范围配置项接收参数范围的设置操作。响应于参数范围的设置操作,确定各转码参数的参数取值范围。客户端发送模板确定请求至服务器,服务器根据初始模板生成a测试模板和b测试模板。初始模板与a测试模板中包括的转码参数部分相同。初始模板与b测试模板中包括的转码参数部分相同。
45.请参阅图1d,分别利用初始模板、a测试模板和b测试模板播放视频文件。使用初始模板播放视频文件产生的播放质量数据记为初始模板质量数据。使用a测试模板播放视频文件产生的播放质量数据记为a测试质量数据。使用b测试模板播放视频文件产生的播放质量数据记为b测试质量数据。服务器按照播放环境的维度收集初始模板质量数据、a测试质量数据和b测试质量数据。
46.结合初始模板质量数据、a测试质量数据和b测试质量数据评估a测试模板和b测试模板是否提升播放质量。具体地,服务器检测初始模板质量数据、a测试质量数据和b测试质量数据中是否存在达标的数据,若存在,则将达标对应的模板作为目标转码参数模板。若不存在,则判断a测试质量数据、b测试质量数据是否高于初始模板质量数据。若a测试质量数据高于初始模板质量数据,则将a测试模板作为初始模板。若b测试质量数据高于初始模板质量数据,则将b测试模板作为初始模板。若a测试质量数据、b测试质量数据均高于初始模板质量数据,则将数据较高的模板作为初始模板。之后,重复执行上述自生成a测试模板和b测试模板至确定出达标的目标转码参数模板的步骤。
47.若a测试质量数据、b测试质量数据均低于初始模板质量数据,则服务器根据初始模板重新生成a测试模板和b测试模板,进一步地重复执行上述自收集播放质量数据至确定出达标的目标转码参数模板的步骤。
48.本场景示例中,播放环境具有多个环境参数。不同的播放环境具有至少部分不同的环境参数。环境参数包括系统类别、设备机型信息、编码引擎信息、解码引擎信息、播放器信息。
49.本场景示例中,各转码参数的参数取值范围包括最小值和最大值。以初始模板的多个转码参数取值为中间值,确定最小值与转码参数取值之间的取值范围、转码参数取值和最大值之间的取值范围。在最小值与转码参数取值之间的取值范围内,生成a测试模板,在转码参数取值和最大值之间的取值范围内,生成b测试模板。
50.本场景示例中,初始模板、a测试模板和b测试模板分别是用于指定的播放环境的转码参数模板。
51.本场景示例中,初始模板的多个转码参数包括转码格式、目标比特率、帧率、相邻关键帧的帧间距、缓冲区大小、码率峰值和清晰度。转码格式的取值范围可以包括h.264格式和h.265格式。目标比特率的取值范围可以包括(900,2400)(单位:kbps);帧率的取值范围可以包括[25,60](单位:fps);相邻关键帧的帧间距的取值范围可以包括[1-100000](单位:帧);缓冲区大小的取值范围可以包括[1000,128000](单位:kb);码率峰值的取值范围可以包括[1-100000](单位:kb);清晰度的取值的可以包括720x1280。
[0052]
请参阅图1e,本说明书实施方式提供一种目标转码参数模板的确定系统,且本说明书提供的目标转码参数模板的确定方法应用于该目标转码参数模板的确定系统。该目标转码参数模板的确定系统可以包括由客户端110和服务器120形成的硬件环境。客户端110通过网络与服务器120进行通信。客户端通过网络与服务器进行通信。其中,客户端可以是
具有网络访问能力的电子设备。具体的,例如,客户端可以是台式电脑、平板电脑、笔记本电脑、智能手机、数字助理、智能可穿戴设备、导购终端、电视机、智能音箱、麦克风等。其中,智能可穿戴设备包括但不限于智能手环、智能手表、智能眼镜、智能头盔、智能项链等。或者,客户端也可以为能够运行于上述电子设备中的软件。服务器可以是具有一定运算处理能力的电子设备。其可以具有网络通信模块、处理器和存储器等。当然,上述服务器也可以是指运行于电子设备中的软体。上述服务器还可以为分布式服务器,可以是具有多个处理器、存储器、网络通信模块等协同运作的系统。或者,服务器还可以为若干服务器形成的服务器集群。或者,随着科学技术的发展,服务器还可以是能够实现说明书实施方式相应功能的新的技术手段。例如,可以是基于量子计算实现的新形态的“服务器”。
[0053]
请参阅图2,本说明书实施方式提供一种目标转码参数模板的确定方法。可以应用于客户端,也可以应用于服务器。该目标转码参数模板的确定方法包括以下步骤。
[0054]
步骤s210:根据包括多个转码参数的第一模板生成第二模板。
[0055]
在本实施方式中,第一模板和第二模板可以是用于视频文件转码的转码参数模板。第二模板可以理解为第一模板的下一代。第一模板中的部分转码参数可以遗传到第二模板中。转码参数模板可以理解为多个转码参数的组合。转码参数可以是在视频转码过程中所用到的作业参数。转码参数包括转码格式、目标比特率、帧率、相邻关键帧的帧间距、缓冲区大小、码率峰值和清晰度中的至少一个。
[0056]
具体的,例如,第一模板包括的多个转码参数分别为转码格式、帧率、相邻关键帧的帧间距、缓冲区大小、码率峰值。第二模板包括的多个转码参数也同样分别为转码格式、帧率、相邻关键帧的帧间距、缓冲区大小、码率峰值。其中,第一模板和第二模板中包括的转码参数部分相同。比如,第一模板和第二模板中转码格式、帧率、码率峰值的取值相同,而相邻关键帧的帧间距、缓冲区大小的取值却不同。再比如第一模板和第二模板中转码格式、码率峰值的取值相同,而帧率、相邻关键帧的帧间距、缓冲区大小的取值却不同。
[0057]
第一模板可以对应有使用第一模板播放视频文件产生的第一播放质量数据。在播放视频文件时可以产生可用率、秒开率、卡顿率、清晰度、帧率等播放效果数据,称为播放质量数据。示例性地,若需要播放视频文件,则需要利用第一模板对视频文件进行转码,输出视频数据进行播放,产生一些数据。比如,在开始播放时,存在是否播放成功的情况。比如,视频播放后,肉眼看到的第一帧画面所等待的时间。比如,视频播放过程中的流畅程度、卡顿次数等。
[0058]
在一些实施方式中,由于第二模板主要用于第一模板的对比模板。第一模板中包括有优质的转码参数,优质的转码参数可以被选择遗传到第二模板。因此,可以保持优化的转码参数不变,调整其他的转码参数,保持不变的优化的转码参数以调整后的转码参数构成第二模板。其中,第一模板和第二模板中包括的部分相同的转码参数可以理解为优化的转码参数。
[0059]
在一些实施方式中,第一模板中包括多个转码参数,依据第一模板所包括的多个转码参数确定部分相同的转码参数和部分不同的转码参数,这些转码参数构成第二模板。其中,第一模板中转码参数的名称与第二模板中转码参数的名称相同,但第一模板中各转码参数的取值与第二模板中各转码参数的取值部分相同。
[0060]
步骤s220:获取视频文件使用第二模板进行播放的第二播放质量数据。
[0061]
具体地,利用第二模板播放视频文件时,可以产生第二播放质量数据。比如在播放视频文件时产生的可用率、秒开率、卡顿率、清晰度、帧率等播放质量数据。在一些实施方式中,通过预先在应用程序中设置埋点,通过埋点的方式收集基于该第二模板播放视频文件产生的第二播放质量数据(比如可用率、秒开率、卡顿率、清晰度、帧率中的至少一个)。
[0062]
在一些实施方式中,第二模板用于指定的播放环境。可以以播放环境为维度获取第二播放质量数据。同样的,第一播放质量数据也可以以播放环境为维度进行划分。其中,播放环境具有多个环境参数。不同的播放环境具有至少部分不同的环境参数。环境参数包括系统类别、设备机型信息、编码引擎信息、解码引擎信息、播放器信息中的至少一个。
[0063]
步骤s230:在第二播放质量数据未达成目标播放质量数据的情况下,将第一模板和第二模板中较为接近达成目标播放质量数据的一个作为第一模板。
[0064]
步骤s240:重复执行前述多个步骤至第二模板的第二播放质量数据达成目标播放质量数据,得到的第二模板作为目标转码参数模板。
[0065]
具体地,分别利用第一模板和第二模板转码视频文件以播放视频数据,对应产生第一模板的第一播放质量数据与第二模板的第二播放质量数据。基于第一播放质量数据与第二播放质量数据进行分析和评估,在第一模板和第二模板中确定出较好的转码参数模板。在一些实施方式中,可以预先设定有目标播放质量数据。若第一模板和第二模板中存在一个的播放质量数据达到目标播放质量数据,则可以将达到目标播放质量数据的模板确定为目标转码参数模板。
[0066]
由于与目标播放质量数据越接近,表明对应的转码参数模板的质量越高,因此分别将第一播放质量数据、第二播放质量数据与目标播放质量数据进行比较,确定接近目标播放质量数据的一个。若第一模板和第二模板中没有存在一个的播放质量数据达到目标播放质量数据,表明还没有确定出目标转码参数模板,因此需要继续生成新的转码参数模板。为了确保新的转码参数模板的质量,进一步地在第一模板和第二模板中确定出较为接近达成目标播放质量数据的一个,作为第一模板。
[0067]
在重新确定第一模板之后,可以转到步骤s210,基于该第一模板重复执行步骤s210至s230,直至第二模板的第二播放质量数据达成目标播放质量数据,得到达标的第二模板,将达标的第二模板作为目标转码参数模板。
[0068]
上述目标转码参数模板的确定方法,通过基于遗传算法和第一模板生成第二模板,并将第一模板和第二模板分别用作ab测试的a版本和b版本,进行视频文件的转码和播放,得到第一模板和第二模板的播放质量数据,并可以根据第一模板和第二模板的播放质量数据逐渐调整转码参数,自动将转码参数模板调整到达到预期的状态,无需运维人员和测试人员的投放太多的时间和精力,节省了模板调整的开发成本和测试时间。
[0069]
在一些实施方式中,请参阅图3,根据包括多个转码参数的第一模板生成第二模板的步骤,可以包括以下步骤。
[0070]
步骤s310:根据第一模板对应的第一播放质量数据与目标播放质量数据的比较结果,在第一模板包括的多个转码参数中,确定影响第一播放质量数据未达成目标播放质量数据的关键转码参数。
[0071]
其中,第一播放质量数据与可用率、秒开率、卡顿率、清晰度、帧率中的至少一个质量数据有关。示例性地,第一播放质量数据可以采用分数值的形式,对影响第一播放质量数
据的可用率、秒开率、卡顿率、清晰度、帧率进行归一化处理,得到分数值,即为第一播放质量数据。示例性地,第一播放质量数据可以是一个数据集,数据集中包括若干个元素。第一播放质量数据中的元素可以是可用率对应的数值、秒开率对应的数值、卡顿率对应的数值、清晰度对应的数值、帧率对应的数值中的若干个。目标播放质量数据可以采用与第一播放质量数据相同的数据格式,也可以采用与第一播放质量数据不同的数据格式。
[0072]
具体地,若目标播放质量数据可以采用与第一播放质量数据相同的数据格式,获取第一模板对应的第一播放质量数据和目标播放质量数据,直接将第一模板对应的第一播放质量数据和目标播放质量数据进行比较,得到比较结果。若目标播放质量数据可以采用与第一播放质量数据不同的数据格式,示例性地,第一播放质量数据采用数据集,而目标播放质量数据采用分数值。则在第一播放质量数据与目标播放质量数据比较之前,先将第一播放质量数据进行打分处理或者归一化,生成对应的分数值,再与目标播放质量数据对应的目标分数值进行比较。
[0073]
根据比较结果可以确定出距离目标播放质量数据较远的质量数据。与该质量数据有关的转码参数可能是影响第一播放质量数据未达成目标播放质量数据的关键转码参数。示例性地,第一播放质量数据包括可用率、秒开率。目标播放质量数据包括可用率、秒开率。第一播放质量数据包括的可用率、秒开率分别为60%、50%。目标播放质量数据包括的可用率、秒开率分别为70%、90%。第一播放质量数据包括的可用率与目标播放质量数据包括的可用率之间的差值为10%,第一播放质量数据包括的秒开率与目标播放质量数据包括的秒开率之间的差值为30%。在一些情况中,30%大于10%,可以确定秒开率低可能是导致不达标的主要原因,因此,确定与秒开率有关的转码参数为关键转码参数。示例性地,与秒开率有关的转码参数包括目标比特率、码率峰值,则确定目标比特率、码率峰值为关键转码参数。在一些情况,也可以基于经验值确定可用率可能是导致不达标的主要原因,与可用率有关的转码参数包括转码格式,作为关键转码参数。
[0074]
步骤s320:对第一模板中的关键转码参数进行修改,得到第二模板。
[0075]
具体地,在确定第一模板中的关键转码参数之后,可以基于经验值重新设置关键转码参数的取值,可以对关键转码参数的取值调大,也可以对关键转码参数的取值调小。基于调整后的关键转码参数和第一模板中的没有调整的转码参数构成第二模板。示例性地,若可用率需要提升,则可以将转转码格式降低调整为h.264格式。示例性地,若秒开率需要提升,则可以调小与秒开率有关的转码参数,比如目标比特率、码率峰值。在播放质量数据中的可用性、秒开率、卡顿率达标的情况下,可以相应地增加转码参数中的清晰度、帧率。
[0076]
本实施方式中,根据第一播放质量数据与目标播放质量数据的比较结果,在第一模板包括的多个转码参数中确定关键转码参数,实现对关键转码参数的快速定位,有针对性地并对关键转码参数进行修改,以得到第二模板,增大转码参数模板处于正向调整状态的几率,降低转码参数模板越调越差的几率,提升转码参数模板的调整效率。
[0077]
在一些实施方式中,第一播放质量数据根据多个评价维度的质量数据生成的。不同质量数据对应第一模板中的不同转码参数。具体地,质量数据可以是可用率、秒开率、卡顿率、清晰度、帧率中的至少一个。可用率、秒开率、卡顿率、清晰度、帧率中的至少一个用作确定第一播放质量数据的评价维度。根据可用率、秒开率、卡顿率、清晰度、帧率中的至少一个确定第一播放质量数据。示例性地,第一播放质量数据可以采用分数值的形式,对影响第
一播放质量数据的可用率、秒开率、卡顿率、清晰度、帧率进行打分处理,得到分数值,即为第一播放质量数据。
[0078]
由于不同转码参数影响不同的质量数据,或者说不同的质量数据与不同的转码参数有关系,因此,不同质量数据对应第一模板中的不同转码参数。示例性的,可用性与视频格式(codec)有关。视频格式包括h.264和h.265两种格式。可以根据设备机型信息、浏览器信息判断是否支持h.265格式。示例性的,卡顿率可以与目标比特率、帧率、相邻关键帧的帧间距、缓冲区大小、码率峰值、清晰度有关。秒开率也可以与目标比特率、帧率、相邻关键帧的帧间距、缓冲区大小、码率峰值、清晰度有关。
[0079]
在一些实施方式中,第一播放质量数据根据多个评价维度的质量数据生成的。不同质量数据对应第一模板中的不同转码参数。相应的,请参阅图4,在第一模板包括的多个转码参数中,确定影响第一播放质量数据未达成目标播放质量数据的关键转码参数的步骤,可以包括以下步骤。
[0080]
步骤s410:在多个评价维度的质量数据中,确定制约质量数据。
[0081]
步骤s420:将制约质量数据对应的至少部分转码参数作为关键转码参数。
[0082]
其中,制约质量数据对第一播放质量数据的影响权重大于第一模板中其余的质量数据。示例性地,第一播放质量数据根据卡顿率、清晰度、可用性而生成。若卡顿率对第一播放质量数据的影响大于清晰度、可用性对第一播放质量数据的影响,则可以将卡顿率确定为制约质量数据。具体地,多个评价维度的质量数据对第一播放质量数据的影响权重不同,可以根据影响权重的大小在多个评价维度的质量数据中,确定影响权重较大的制约质量数据。制约质量数据的数量可以是一个,也可以是多个。
[0083]
进一步地,不同质量数据对应第一模板中的不同转码参数。质量数据对应的转码参数可以是一个,也可以是多个。当质量数据对应的转码参数为一个时,将质量数据对应的一个转码参数作为关键转码参数。当质量数据对应的转码参数为多个时,将质量数据对应的部分转码参数或者全部转码参数作为关键转码参数。示例性的,可用性与视频格式(codec)有关。若可用性被确定为制约质量数据,则确定视频格式(codec)为关键转码参数。示例性的,卡顿率可以与目标比特率、帧率、相邻关键帧的帧间距有关。若卡顿率被确定为制约质量数据,则确定目标比特率、帧率、相邻关键帧的帧间距中的至少一个为关键转码参数。示例性地,秒开率可以与缓冲区大小、码率峰值、清晰度有关。若秒开率被确定为制约质量数据,则确定缓冲区大小、码率峰值、清晰度中的至少一个为关键转码参数。
[0084]
本实施方式中,通过在多个评价维度的质量数据中,确定制约质量数据,并将制约质量数据对应的至少部分转码参数作为关键转码参数,实现对关键转码参数的快速且准确的定位,减少调整对转码参数模板的无用功,降低调整转码参数模板所耗费的时间成本。
[0085]
在一些实施方式中,各评价维度分别设置有评价权重。相应的,在多个评价维度的质量数据中,确定制约质量数据的步骤,可以包括:根据多个评价维度的评价权重确定满足预设权重阈值的目标维度;将目标维度对应的质量数据作为制约质量数据。
[0086]
其中,预设权重阈值可以结合实际情况而确定。各评价维度分别设置有评价权重,不同的评价权重表示不同的评价维度上的质量数据对第一播放质量数据的影响程度。具体地,可以在各评价维度的评价权重确定评价权重最大,将评价权重最大对应的评价维度确定为目标维度,并目标维度对应的质量数据作为制约质量数据。可以从大到校对各评价维
度的评价权重进行排序,获取排序靠前的若干个评价维度作为目标维度。将目标维度对应的质量数据作为制约质量数据。可以预设设定权重阈值,将多个评价维度的评价权重与预设权重阈值,将大于预设权重阈值的评价维度作为目标维度;将目标维度对应的质量数据作为制约质量数据。
[0087]
本实施方式中,根据评价维度的评价权重确定对第一播放质量数据的影响较大的目标维度,将目标维度对应的质量数据作为制约质量数据,快速准确的确定出制约质量数据,便于查找到关键转码参数。
[0088]
在一些实施方式中,目标转码参数模板用于指定的播放环境。相应的,该方法还可以包括:对应播放环境为各评价维度分别设置评价权重。
[0089]
具体地,目标转码参数模板用于指定的播放环境。播放环境具有多个环境参数。不同的播放环境具有至少部分不同的环境参数。环境参数可以包括系统类别、设备机型信息、编码引擎信息、解码引擎信息、播放器信息中的至少一个。根据不同的播放环境为各评价维度分别设置评价权重。不同的评价权重表示不同的评价维度上的质量数据对第一播放质量数据的影响程度。示例性的,播放环境的环境参数包括系统类别和设备机型信息。系统类别包括安卓系统、ios系统和鸿蒙系统。设备机型信息包括品牌a-p30、品牌b-x13、品牌c-m40。则播放环境包括品牌a-p30安卓系统、品牌b-x13的ios系统、品牌c-m40鸿蒙系统。针对品牌a-p30安卓系统、品牌b-x13的ios系统、品牌c-m40鸿蒙系统,设置评价维度的不同评价权重。比如针对品牌a-p30安卓系统设置可用性的评价权重为90%,针对品牌b-x13的ios系统设置可用性的评价权重为70%,针对品牌c-m40鸿蒙系统设置可用性的评价权重为60%。
[0090]
在一些实施方式中,在第一模板包括的多个转码参数中,确定影响第一播放质量数据未达成目标播放质量数据的关键转码参数的步骤,可以包括:根据比较结果确定第一模板中与第二模板中相同的转码参数;将第一模板中除相同的转码参数之外的转码参数作为关键转码参数。或者,根据比较结果确定第一模板中与第二模板中不同的转码参数;将第一模板中不同的转码参数作为关键转码参数。
[0091]
其中,转码参数包括转码格式、目标比特率、帧率、关键帧的帧间距、缓冲区大小、码率峰值、清晰度中的中至少一个。具体地,获取第一模板对应的第一播放质量数据。比较第一播放质量数据和目标播放质量数据得到比较结果。将第一模板中包括的多个转码参数与第二模板包括的多个转码参数进行比较,确定出相同的转码参数。相同的转码参数可能对于播放质量数据的差异性影响小于不同的转码参数。因此,确定第一模板中与第二模板中相同的转码参数,这部分相同的转码参数不需要调整,则将第一模板中除相同的转码参数之外的转码参数作为关键转码参数。对第一模板中的关键转码参数进行修改,得到第二模板。
[0092]
在一些实施方式中,将第一模板中包括的多个转码参数与第二模板包括的多个转码参数进行比较,确定出不同的转码参数。不同的转码参数可能对于播放质量数据的差异性影响大于相同的转码参数。因此,确定第一模板中与第二模板中不同的转码参数,这部分不同的转码参数需要调整,则将第一模板中不同的转码参数作为关键转码参数。对第一模板中的关键转码参数进行修改,得到第二模板。
[0093]
本实施方式中,根据第一模板中与第二模板中相同的转码参数或者不同的转码参数,在第一模板包括的多个转码参数中确定关键转码参数,实快速且准确地确定关键转码
参数。
[0094]
在一些实施方式中,转码参数分别对应有参数取值范围。对第一模板中的关键转码参数进行修改,得到第二模板的步骤,可以包括:在参数取值范围内,对第一模板中的关键转码参数进行修改,得到第二模板。
[0095]
具体地,在确定第一模板中的关键转码参数之后,可以基于经验值重新设置关键转码参数的取值,可以在参数取值范围内,对关键转码参数的取值调大,也可以在参数取值范围内对关键转码参数的取值调小。基于调整后的关键转码参数和第一模板中的没有调整的转码参数构成第二模板。示例性地,若可用率需要提升,可用率对应的范围包括h.264格式和h.265格式,可以将转转码格式降低调整为h.264格式。示例性地,若秒开率需要提升,则可以调小与秒开率有关的转码参数,比如目标比特率、码率峰值。目标比特率的取值范围可以包括(900,2400)(单位:kbps,),则在(900,2400)范围内调小目标比特率。码率峰值的取值范围可以包括[1-100000](单位:kb),则在[1-100000]范围内调小码率峰值。
[0096]
本实施方式中,有针对性地在参数取值范围内对关键转码参数进行修改,以得到第二模板,利用参数取值范围作为调整第一模板的限定条件,降低转码参数模板越调越差的几率,提升转码参数模板的调整效率。
[0097]
在一些实施方式中,目标转码参数模板用于指定的播放环境。播放环境具有多个环境参数。不同的播放环境具有至少部分不同的环境参数。
[0098]
在一些实施方式中,环境参数可以包括系统类别、设备机型信息、编码引擎信息、解码引擎信息、播放器信息中的至少一个。具体地,系统类别可以包括i os、andro i d、h5中的至少一个。设备机型信息可以包括任意品牌终端的设备信号。编码引擎信息可以对视频文件进行编码的引擎的信息。解码引擎信息可以对视频文件进行解码的引擎的信息。播放器信息可以用于播放视频文件的应用程序的信息。
[0099]
在一些实施方式中,环境参数还可以包括网络状况。若卡顿率提升,可以先判断网络状况是否良好。如果网络良好,根据之前测试模板的参数调小与卡顿率相关的参数(比如目标比特率、帧率、相邻关键帧的帧间距、缓冲区大小、码率峰值、清晰度)。
[0100]
在一些实施方式中,根据包括多个转码参数的第一模板生成第二模板的步骤,包括:根据第一模板生成多个第二模板;其中,不同的第二模板所包括的多个转码参数部分不同。
[0101]
其中,其中,第一模板和第二模板可以是用于视频文件转码的转码参数模板。第二模板可以理解为第一模板的下一代。第一模板中的部分转码参数可以遗传到第二模板中。具体地,由于第二模板主要用于第一模板的对比模板。第一模板中包括有优质的转码参数,优质的转码参数可以被选择遗传到第二模板。第二模板的数量可以是多个,因此,可以保持优化的转码参数不变,多次调整其他的转码参数,每次调整其他的转码参数,可以得到保持不变的优化的转码参数以调整后的转码参数,根据每次保持不变的优化的转码参数和每次调整后的转码参数构成对应的第二模板。其中,不同的第二模板所包括的多个转码参数部分不同。不同的第二模板所包括的相同部分的转码参数可以理解为遗传自第一模板的优化的转码参数。
[0102]
本实施方式中,根据第一模板生成多个第二模板,在每次调整转码参数模板时,并行测试的模板数量增加,相应地减少模板测试时间,提升确定模板转码参数模板地效率。
[0103]
在一些实施方式中,转码参数分别对应有位于最大参数和最小参数之间的参数取值范围;部分第二模板的转码参数位于最小参数和第一模板的转码参数取值之间的范围;部分第二模板的转码参数位于第一模板的转码参数取值与最大参数之间的范围。
[0104]
具体地,各转码参数的参数取值范围包括最小值和最大值。以第一模板的多个转码参数取值为中间值,确定最小值与第一模板的转码参数取值之间的取值范围、第一模板的转码参数取值和最大值之间的取值范围。在最小值与第一模板的转码参数取值之间的取值范围内,生成部分第二模板。在第一模板的转码参数取值和最大值之间的取值范围内,生成另一部分第二模板。示例性地,第二模板地数量为2个,分别记为a模板和b模板。以下示例性地说明基于第一模板生成a模板和b模板。第一模板地转码参数取值记为中间值,参数取值范围为min至max。根据中间值和参数取值范围生成min至中间值的取值范围、中间值至max的取值范围。在min至中间值的取值范围随机获取参数取值,作为a模板的转码参数。在中间值至max的取值范围随机获取参数取值,作为b模板的转码参数。
[0105]
本实施方式中,将第二模板的转码参数的取值范围明确在最小参数和第一模板的转码参数取值之间的范围、第一模板的转码参数取值与最大参数之间的范围,可以缩小转码参数模板的调整范围,利用快速确定目标转码参数模板。
[0106]
在一些实施方式中,在第二播放质量数据未达成目标播放质量数据的情况下,将第一模板和第二模板中较为接近达成目标播放质量数据的一个作为第一模板的步骤,可以包括:在第二播放质量数据较为接近达成目标播放质量数据的情况下,利用第二模板替换第一模板作为第一模板;或者在第一播放质量数据较为接近达成目标播放质量数据的情况下,继续使用第一模板作为第一模板。
[0107]
具体地,分别利用第一模板和第二模板转码视频文件以播放视频数据,对应产生第一模板的第一播放质量数据与第二模板的第二播放质量数据。基于第一播放质量数据与第二播放质量数据进行分析和评估,在第一模板和第二模板中确定出较好的转码参数模板。可以预先设定有目标播放质量数据。若第一模板和第二模板中存在一个的播放质量数据达到目标播放质量数据,则可以将达到目标播放质量数据的模板确定为目标转码参数模板。若第二播放质量数据较为接近达成目标播放质量数据,则利用第二模板替换第一模板作为第一模板。若第一播放质量数据较为接近达成目标播放质量数据,继续使用第一模板作为第一模板。
[0108]
本实施方式中,基于遗传算法,通过比较播放质量数据确定优化的模板作为第一模板,为后续的模板调整工作提供正确的方向和基础,利于模板的快速完成调整,确定目标转码参数模板。
[0109]
在一些实施方式中,转码参数分别对应有参数取值范围。该方法还可以包括:在重复执行步骤s210至s230的次数达到次数阈值,且第一播放质量数据和第二播放质量数据均未达成目标播放质量数据的情况下,基于预设规则依照参数取值范围生成第三模板;将第三模板作为第一模板,重新执行步骤s210至s240。
[0110]
具体地,执行步骤s210至s230包括:根据包括多个转码参数的第一模板生成第二模板。获取视频文件使用第二模板进行播放的第二播放质量数据。在第二播放质量数据未达成目标播放质量数据的情况下,将第一模板和第二模板中较为接近达成目标播放质量数据的一个作为第一模板。
[0111]
由于预先已经设置最大进化代数t(也就是重复循环执行步骤s210至s230直至第二播放质量数据达到预期指标的最大次数),因此,可以对执行步骤s210至s230进行计数,获取执行次数,若执行次数达到最大进化代数t,但是依旧没有找到满足预期指标的目标转码参数模板,此时需要执行遗传算法的变异计算。具体地,可以随机在各转码参数的参数取值范围内确定新的转码参数取值,生成第三模板;将第三模板作为第一模板。基于第一模板重新生成第二模板,重复执行步骤s210至s240。
[0112]
本实施方式中,在循环次数达到最大进化代数t的情况下,依旧没有找到满足预期指标的目标转码参数模板,表明此时的调整方向存在问题,需要确定新的调整方向,之前的转码参数不具有参考价值,无需遗传,因此,基于遗传算法的变异策略重新生成第三模板,避免调整效果越调越差,降低浪费大量的测试成本和时间的几率。
[0113]
本说明书实施方式提供一种目标转码参数模板的确定方法,其中,目标转码参数模板用于指定的播放环境;播放环境具有多个环境参数;不同的播放环境具有至少部分不同的环境参数。环境参数包括系统类别、设备机型信息、编码引擎信息、解码引擎信息、播放器信息中的至少一个。具体地,该目标转码参数模板的确定方法包括以下步骤。
[0114]
步骤s502:根据第一模板对应的第一播放质量数据与目标播放质量数据的比较结果,在第一模板包括的多个转码参数中,确定影响第一播放质量数据未达成目标播放质量数据的关键转码参数。
[0115]
其中,第一播放质量数据是使用第一模板播放视频文件产生的。第一播放质量数据根据多个评价维度的质量数据生成的;不同质量数据对应第一模板中的不同转码参数。各评价维度分别设置有评价权重。具体地,根据多个评价维度的评价权重确定满足预设权重阈值的目标维度;将目标维度对应的质量数据作为制约质量数据;将制约质量数据对应的至少部分转码参数作为关键转码参数。其中,制约质量数据对第一播放质量数据的影响权重大于第一模板中其余的质量数据。
[0116]
步骤s504:对第一模板中的关键转码参数进行修改,得到第二模板。
[0117]
其中,转码参数分别对应有参数取值范围。具体地,在参数取值范围内,对第一模板中的关键转码参数进行修改,得到第二模板。
[0118]
步骤s506:获取视频文件使用第二模板进行播放的第二播放质量数据。
[0119]
步骤s508:在第二播放质量数据未达成目标播放质量数据的情况下,将第一模板和第二模板中较为接近达成目标播放质量数据的一个作为第一模板。
[0120]
步骤s510:跳转至步骤s502,重复执行前述步骤s502至s508直至第二模板的第二播放质量数据达成目标播放质量数据,得到的第二模板作为目标转码参数模板。
[0121]
步骤s512:在重复执行前述步骤s502至s508的次数达到次数阈值,且第一播放质量数据和第二播放质量数据均未达成目标播放质量数据的情况下,基于预设规则依照参数取值范围生成第三模板。
[0122]
步骤s514:将第三模板作为第一模板,重新执行前述步骤s502至s510。
[0123]
步骤s516:在第二播放质量数据达成目标播放质量数据的情况下,将第二模板作为目标转码参数模板。
[0124]
应该理解的是,虽然上述流程图中的各个步骤按照箭头的指示依次显示,但是这些步骤并不是必然按照箭头指示的顺序依次执行。除非本文中有明确的说明,这些步骤的
执行并没有严格的顺序限制,这些步骤可以以其它的顺序执行。而且,上述流程图中的至少一部分步骤可以包括多个步骤或者多个阶段,这些步骤或者阶段并不必然是在同一时刻执行完成,而是可以在不同的时刻执行,这些步骤或者阶段的执行顺序也不必然是依次进行,而是可以与其它步骤或者其它步骤中的步骤或者阶段的至少一部分轮流或者交替地执行。
[0125]
请参阅图5,本说明书实施方式提供了一种目标转码参数模板的确定装置。目标转码参数模板的确定装置包括转码模板生成模块、质量数据获取模块、第一模板确定模块和目标模板确定模块。
[0126]
转码模板生成模块,用于根据包括多个转码参数的第一模板生成第二模板;其中,第一模板和第二模板中包括的转码参数部分相同;其中,第一模板对应有使用第一模板播放视频文件产生的第一播放质量数据。
[0127]
质量数据获取模块,用于获取视频文件使用第二模板进行播放的第二播放质量数据。
[0128]
第一模板确定模块,用于在第二播放质量数据未达成目标播放质量数据的情况下,将第一模板和第二模板中较为接近达成目标播放质量数据的一个作为第一模板。
[0129]
目标模板确定模块,用于重复执行前述多个模块的功能至第二模板的第二播放质量数据达成目标播放质量数据,得到的第二模板作为目标转码参数模板。
[0130]
关于目标转码参数模板的确定装置的具体限定可以参见上文中对于目标转码参数模板的确定方法的限定,在此不再赘述。上述目标转码参数模板的确定装置中的各个模块可全部或部分通过软件、硬件及其组合来实现。上述各模块可以硬件形式内嵌于或独立于计算机设备中的处理器中,也可以以软件形式存储于计算机设备中的存储器中,以便于处理器调用执行以上各个模块对应的操作。
[0131]
在一些实施方式中,提供了一种计算机设备,该计算机设备可以是终端,其内部结构图可以如图6所示。该计算机设备包括通过系统总线连接的处理器、存储器、通信接口、显示屏和输入装置。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作系统和计算机程序。该内存储器为非易失性存储介质中的操作系统和计算机程序的运行提供环境。该计算机设备的通信接口用于与外部的终端进行有线或无线方式的通信,无线方式可通过wifi、运营商网络、nfc(近场通信)或其他技术实现。该计算机程序被处理器执行时以实现一种目标转码参数模板的确定方法。该计算机设备的显示屏可以是液晶显示屏或者电子墨水显示屏,该计算机设备的输入装置可以是显示屏上覆盖的触摸层,也可以是计算机设备外壳上设置的按键、轨迹球或触控板,还可以是外接的键盘、触控板或鼠标等。
[0132]
本领域技术人员可以理解,图6中示出的结构,仅仅是与本说明书所公开方案相关的部分结构的框图,并不构成对本说明书所公开方案所应用于其上的计算机设备的限定,具体地,计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
[0133]
在一些实施方式中,提供了一种计算机设备,包括存储器和处理器,存储器中存储有计算机程序,该处理器执行计算机程序时实现上述实施方式中的方法步骤。
[0134]
在一些实施方式中,提供了一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现上述实施方式中的方法步骤。
[0135]
在一些实施方式中,还提供一种计算机程序产品,所述计算机程序产品中包括指令,上述指令可由计算机设备的处理器执行时实现上述实施方式中的方法步骤。
[0136]
本领域普通技术人员可以理解实现上述实施方式方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施方式的流程。其中,本说明所提供的各实施方式中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(read-only memory,rom)、磁带、软盘、闪存或光存储器等。易失性存储器可包括随机存取存储器(random access memory,ram)或外部高速缓冲存储器。作为说明而非局限,ram可以是多种形式,比如静态随机存取存储器(static random access memory,sram)或动态随机存取存储器(dynamic random access memory,dram)等。
[0137]
以上实施方式的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施方式中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
[0138]
以上所述仅为本说明书的较佳实施方式而已,并不用以限制本说明书,凡在本说明书的精神和原则之内,所作的任何修改、等同替换等,均应包含在本说明书的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献