论文部分内容阅读
随着视频分辨率的上升,移动互联网与互联网在线视频业的兴起,对视频编码技术带来了以下新挑战:超高清视频实时编码、海量多格式的视频编转码等。对普通多核处理器而言,很难满足其计算资源需求。随着高性能计算集群的发展,基于集群的并行视频编码成为了一个新的研究热点。问题是传统的视频并行编码算法如何与集群计算有机结合,从而实现高效的集群视频并行编码? 本文深入研究了视频并行编码算法、线程并行计算、进程并行计算的各自特性,提出了一种新型的基于集群的两级混合并行视频编码框架来解决上述问题。在上述编码框架中,进程并行与线程并行同时被应用,图片组(GOP)级的数据并行实现在进程上,同时同一进程内进行多线程并行编码。两级混合并行视频编码框架在几乎不带来编码质量损失的同时能获得良好的编码效率。基于以上编码框架,我们实现了一个AVS编码器。实验数据表明,编码器能实现4K视频序列的实时编码在单台普通服务器上。对于编码框架存在的较高编码延迟,本文提出可以通过一种改进数据输出方式来大幅降低视频并行编码延迟。 针对移动互联网中大规模视频转码的需求,本文实现了一个基于集群的AVS的大规模转码系统,此系统由高性能计算集群、AVS转码器与可视化的集群转码管理系统三部分构成。上述系统具备高性能计算集群的高性价比、易扩展性等优点;同时继承了FFMPEG开源转码框架的优点,并支持AVS视频编码标准的快速转码与多格式外部容器封装。同时,由于移动互联网视频转码中图像缩放的重要性,本文提出对图像插值算法进行多媒体指令集优化可以同时兼顾高转码速度与好图像缩放质量。 当下基于集群的视频转码是研究与工业应用热点,集群负载均衡可最小化批次性视频转码作业的整体结束时间,同时提高集群利用效率;但同时集群上多作业的负载均衡调度是NP难问题。通过分析集群调度算法与视频并行转码,基于集群的GOP级视频并行转码的调度问题可以被视作一个作业调度与应用负载可分调度的混合模型。为了获得次优解,一种新型的启发式算法在本文被提出,并命名为最长队列结束时间最小化算法。 在最长队列结束时间最小化算法中,首先高计算复杂度的作业被切分为多个子作业,然后所有作业基于负载均衡准则被重组为多个作业队列,每个作业队列对应集群的一个计算核心。在作业切分处理中,一种基于输入作业的计算复杂度与最大可切分粒度的自适应阈值切分算法被提出。基于上述算法,一种高效的集群视频并行转码框架被提出。实验数据表明,本文提出的算法明显优于现存的启发式算法,且整体结束时间接近于理论最优值,并对任务启动延迟有很好的鲁棒性。对于调度所需的视频转码作业执行时间预估,本文引用前人研究,论证了在基于编码参数与基于回归分析两类方向上建立视频转码计算复杂度的预估模型的可行性。