【技术实现步骤摘要】
一种基于子流划分的自适应码流并行转码的方法及系统
[0001]本专利技术属于自适应码流领域,具体涉及一种基于子流划分的自适应码流并行转码的方法及系统。
技术介绍
[0002]自适应码流(Adaptive Bitrate Streaming)的特点是包含多个码率的音视频子流文件,如包含流畅、标清、高清、全高清、2K、4K六条子流的自适应码流。使用自适应码流后,播放器能够根据当前带宽,动态选择最合适的码率播放。
[0003]自适应码流要求所有子流的音视频时间戳对齐,以便在子流切换时实现零卡顿和音画同步。在传统的转码系统中,采用一次执行完整的自适应码流转码操作,来确保所有子流音视频时间戳的对齐。在待转码视频时长很长,且包含的子流数量和输出规格较高时,就存在一个很大的缺陷:仅调用一次完整的转码操作,将消耗极其漫长的执行时间。一方面需要等待很长时间才能拿到转码结果文件,另一方面,即使转码集群内部存在大量空闲可用的转码机,也只能调用其中一台转码机,造成转码机资源闲置。
技术实现思路
[0004]本专利技术提供了一 ...
【技术保护点】
【技术特征摘要】
1.一种基于子流划分的自适应码流并行转码的方法,其特征在于,包括以下步骤:(1)并行转码数计算对自适应码流中的各路子流进行转码计算量评估;获取转码计算量阈值,将转码计算量大于等于该阈值的子流或累加的多个子流集合,划分为一个子集,子集总数即为静态并行转码数;获取转码负载未满阈值,转码负载小于转码负载未满阈值的转码机数量,即为动态并行转码数;如果动态并行转码数大于等于静态并行转码数,则最终的并行转码数为静态并行转码数,并行转码集合划分即为静态并行转码数对应的集合划分;如果动态并行转码数小于静态并行转码数,则最终的并行转码数为动态并行转码数,并根据动态并行转码数以及子集动态划分算法重新划分子集,以获取并行转码集合划分;(2)并行自适应码流构造根据影响音视频时间戳的核心参数:视频帧率以及音频采样率,构造一个转码计算量最小的基准子流,并将基准子流作为第一路子流加入至并行转码集合划分的子集中;(3)分布式并行转码选取与最终的并行转码数相等台数的转码机,进行并行转码;(4)转码结果构造对于并行转码后的结果文件,解析各个索引文件并生成最终的索引文件。2.根据权利要求1所述的基于子流划分的自适应码流并行转码的方法,其特征在于,子流转码计算量公式为:视频分辨率宽*视频分辨率高*视频帧率。3.根据权利要求1所述的基于子流划分的自适应码流并行转码的方法,其特征在于,采用子集静态划分算法划分子集,以获取静态并行转码数;子集静态划分算法如下:S11、根据转码计算量,对自适应码流中的各路子流进行升序排序;S12、计算量和置0,子集内容清空;S13、按顺序选取下一个子流;S14、判断下一个子流是否存在;若是,则执行步骤S15;若否,则执行步骤S16;S15、将该子流的转码计算量累加到计算量和,并将子流顺序添加到子集;判断计算量和是否大于等于转码计算量阈值;若是,则划分得到一个新的子集,并执行步骤S12;若否,则执行步骤S13;S16、判断子集内容是否非空;若是,则划分得到一个新的子集;若否,则结束。4.根据权利要求1所述的基于子流划分的自适应码流并行转码的方法,其特征在于,子集动态划分算法如下:S21、根据转码计算量,对自适应码流中的各路子流进行升序排序;动态并行转码数作为剩余分割总数;S22、计算剩余平均值下限=(剩余计算量总和/剩余分割总数)*Ratio;Ratio为可变量;S23、计算量和置0,子集内容清空;S24、逆序选取下一个子流;S25、判断下一个子流是否存在;若是,则执行步骤S26;若否,则执行步骤S28;
S26、将该子流的转码计算量累加到计算量和,并将子流顺序添加到子集;判断计算量和是否大于等于剩余平均值下限;若是,则划分得到一个新的子集,剩余分割总数减一,并执行步骤S27;若否,则执行步骤S24;S27、判断剩余分割总数是否为1;若是,则将剩余子流作为最后一个子集;若否,则执行步骤S22;S28、判断子集内容是否非空;若是,则划分得到一个新的子集;若否,则结束;其中,可变量Ratio每取一个值,则对应获取一种集合划分。5.根据权利要求4所述的基于子流划分的自适应码流并行转码的方法,其特征在于,Ratio取多个值,对应获取多种集合划分;每种集合划分对应的所有子集的计算量构成一个计算量的数列,利用计算方差的方式得到该数列的波动率,波动率最小,即方差最小的集合划分即为并行转码集合划分。6.根据权利要求1所述的基于子流划分的自适应码流并行转码的方法,其特征在于,基准子流的音视频参数如下:视频编码格式等同原始第一路子流的视频编码格式,视频分辨率为2*2,视频帧率等于原始第一路子流的...
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。