论文部分内容阅读
由视频编码组(JVT)开发的H.264标准相比以前的编码标准而言,在编码效率上提高了50%,同时却在计算复杂度上增加了4倍,主要是因为增加了许多新的特征,主要表现在使用不同块大小和多个参考帧的1/4像素运动估计、帧内预测、DCT变换、熵编码和环路滤波等方面,使用单处理器的编码速度已经不能满足视频的实时传输和大规模的共享要求,因此分析视频编码的并行结构和研究并行算法是实现实时H.264视频应用的必要方法。论文的目的是对X264实现多线程并行编码优化,提高编码速度,增强X264实时性。以X264编码器作为研究对象,在重点分析了片级多线程并行编码算法和帧间宏块级并行编码算法基础上,通过研究得出帧间宏块级多线程并行编码算法需要对多帧图像进行并行编码,在系统中需保存与多帧图像编码有关的参考帧图像数据,所以占用大量的内存。同时通过实验证明,在编码码率相对恒定的条件下,帧间宏块级多线程并行编码算法比片级多线程并行编码算法具有更高的编码速度。根据两种算法的特点,本论文提出可以将两种算法结合进行多粒度并行编码算法研究。另外,本论文结合H.264编码标准对X264编码器进行了分析与研究,在重点分析了宏块间数据依赖关系的情况下,针对帧间宏块级多线程并行编码的特点,本论文提出了一种基于帧间和帧内宏块级的多线程并行编码算法。该算法在原有的帧间宏块级多线程并行编码的基础上,遵循宏块之间的空间相关性,为I帧内每行宏块创建单独的线程,实现了帧间和帧内宏块级并行编码,达到了多粒度并行的效果。实验结果表明,该算法在视频序列能够有效的编码和保持峰值信噪比变化不大的情况下,提高了编码的加速比,从而加强了视频编码的实时性。