论文摘要
随着多媒体技术的迅速发展,高质量视频的快速传输和共享成为当前的迫切需求。高清视频所广泛采用的H.264编码具有质量高码率低的优点,但是其编码复杂度却大大增加,在保证图像质量和压缩比的基础上,如何提高编码的速度成为当前研究的热点。随着多核处理器平台的不断发展,单核处理器下的H.264串行编码程序的编码速度已经不能满足实时传输和大规模共享的要求。针对这种情况,开发多核处理器环境下H.264多粒度并行编码器对于当前H.264视频编码具有十分重要的意义。通过分析H.264多粒度并行编码的必要性和可行性,在以往研究成果的基础上,提出了帧级、片级和数据级三种粒度融合的多粒度并行编码器。基于H.264开源编码器项目X264,针对图像帧之间参考关系复杂的特点,设计了一种B帧个数可变的帧级并行方法;通过对异构多核平台从核资源的分析,提出并实现了把16x16宏块拆分到从核上实现数据级并行的方法;根据同构和异构多核平台的特点,为了有效融合三种粒度的并行,设计了三个数据缓冲队列并创建多级线程分别在这两种平台上实现了H.264多粒度并行编码器。实验结果表明,在码率增加不大的情况下,H.264多粒度并行编码器很好地提升了编码加速比,视频编码质量符合高质量的要求,获得了优越的编码性能。但是,目前实现的多粒度并行编码器在异构多核平台上的加速比还有待进一步提高,处理器核资源的分配还不够精细,这将是未来研究的重点。