论文部分内容阅读
为了更有效地进行视频信息压缩,运动图像专家组(MPEG)和视频编码专家组(VCEG)制定了H.264视频编解码标准。H.264中集成了很多高复杂度的编码工具以获得更好的编码效率,单处理器难以满足实时编码的需求。随着数字信号处理器应用领域的不断扩大,多核处理器芯片成为了研究的热点。本文分别研究了功能并行以及数据并行对视频编码带来的影响,并以具有出色并行计算能力的TILE64多核处理器为平台,研究如何通过并行计算实现H.264的编码工作。首先,运动估计是H.264编码端中非常耗时的模块之一,如果能将其单独分离出来并行处理的话,那么势必会使编码速度得到比较好的提升。在功能并行的研究过程中,本文详细分析了H.264编码端的工作原理,对传统标准内的运动估计模块进行了深入分析,提出了一种将运动估计模块与其他功能函数模块并行的方法。实验表明,相对于单核而言,功能并行后的帧率增加了30%左右,而且图像从主观质量上基本没有呈现什么变化。但是其中将运动估计中的重构帧用原始帧代替的做法也许会造成图像质量的下降,这也是我们今后需要加强研究的问题。其次,在数据并行的研究过程中,文章首先对图像不同粒度的分割方式进行了比较,分析了不同划分方式各自的优缺点,最后决定采用能够提升加速比较大的片级划分模式进行研究。但是在传统的多线程模式中,对于线程的反复创建与销毁是造成速度低下的主要因素之一,因此,本文在片级划分的基础上,又加入了线程池的模型,这样不仅使多个线程之间减少了发生冲突的可能性,同时又有效的避免了线程反复创建时所造成的额外损耗。实验表明,在采用片级划分和线程池模型后,图像处理的加速比有了一定的提升,而在多核上的性能也基本呈线性变化趋势。最后,文章对基于片级划分的模式进行了进一步的分析,指出了等宏块划分方法的缺点,同时提出了动态宏块划分的思想以供后续的研究。