基于同构多核处理器的H.264多粒度并行编码器.docVIP

基于同构多核处理器的H.264多粒度并行编码器.doc

  1. 1、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于同构多核处理器的H.264多粒度并行编码器(? 于俊清, 李江, 魏海涛 (华中科技大学计算机科学与技术学院,湖北 武汉 430074) 摘 要: H.264码率低和视频质量高的优越性能以增加编码计算的复杂度为代价,如何开发适用于多核处理器平台的并行编码算法是提高其编码速度的重要研究内容,对于满足高清视频实时传输和大规模共享具有十分重要的意义H.264开源编码器项目X264,在片级和数据级并行编码的基础上,通过分析图像帧之间的参考关系,提出并实现了B帧个数可变的帧级并行算法;根据宏块之间的参考关系,设计了类似流水线的宏块级并行方法;基于Intel同构多核平台,提出融合帧级、片级、宏块级和数据级四种不同粒度的并行编码方案,开发了H.264多粒度并行编码器。实验结果表明,在码率增加不大的情况下,H.264多粒度并行编码器很好地提升编码加速比,视频编码质量符合高质量的要求。 关键词: 多核处理器;多线程;H.264编码;多粒度并行 中图法分类号: TP391 由于网络的迅猛发展,人们对视频数据的共享和应用越来越广泛,如网络电视、视频会议等需求的不断涌现,对视频编解码速度和播放质量都提出了很高的要求。如今的视频编码标准已经向着低码率高质量的方向发展,H.264视频编码标准是这种发展趋势的典型代表。H.264能以较低的数据速率传送基于IP的视频流,在视频质量、压缩效率和数据包恢复等方面,超越了现有的MPEG-2、MPEG-4和H.26x视频标准,更适合窄带传输在相同的重建图像质量下,H.264比H.263节约50%左右的码率H.264获得优越性能是计算复杂度代价据估计,编码计算复杂度大约相当于H.263的3倍,解码复杂度大约相当于H.263的2倍。H.264多粒度并行编码器是提高其编码速度的重要研究内容对于满足高清视频实时传输和大规模共享具有十分重要的意义B帧个数可变的帧级并行算法和类似流水线的宏块级并行算法,通过有效融合帧级、片级、数据级和宏块级四种不同粒度并行方法,运用POSIX多线程库,在同构多核平台下成功开发了H.264多粒度并行编码器。 本文第二部分将对H.264并行编码的现有研究成果进行分析和总结。第三部分在分析H.264层次结构的基础上讨论其可并行粒度,重点阐述帧级、片级、宏块级和数据级并行解决方案并给出相应的实现方法。第四部分通过实验测试多粒度编码器的性能。第五部分总结全文工作并对未来工作进行展望。 相关工作 目前已经有一些研究机构在从事H.264并行编解码的研究工作。Intel研究中心提出了Intel超线程体系结构下的H.264并行编码模型[4-6]。对于帧级并行,他们对共用参考帧的可编码帧分片之后实施并行,从其实验结果可以看出,编码加速比有显著的提高,但这种帧级并行方法局限于B帧数目固定的情况,而且是通过片级并行来间接实现,编码器中多种并行粒度的融合程度还不高。Intel中国研究中心和浙江大学的研究人员分别运用SIMD指令对H.264离散余弦变换[7]和解码[8]进行了并行化研究,主要是运用了单指令多数据(Single Instruction Multiple Date,SIMD)的向量运算特性,对H.264计算量比较集中的变换和量化部分进行改写。加利福利亚大学的研究人员提出了一种宏块级并行的算法。它利用重建宏块和当前正编码宏块对多个宏块进行并行处理,并利用官方JM编码器进行了一些简单的实验测试[9]。中国台湾的研究人员讨论了H.264宏块编码中运动估计和运动补偿方法中的并行[10-13]。但是这些并行更适合片上系统(System On a Chip,SOC)的并行,对于通用计算机来说,由于频繁的传递数据会造成很大的负载。 通过对先有研究成果的分析可以看出,现有H.264并行编码研究中,片级和基于多媒体扩展指令集的数据级并行研究成果最多,实现方法比较成熟;研究者也提出了一些帧级并行编码思路和实现方法,但研究尚不够充分;对于宏块级并行算法,宏块级并行尚没有十分成熟的实现方法。除了Intel中国研究中心的研究员提出了帧级并行和片级并行融合之外,绝大部分研究都是针对H.264编码单一粒度的并行。针对以上研究中存在的问题,本文将设计和实现一种灵活性高的B帧个数可变的帧级并行算法和类似流水线的宏块级并行算法,并与片级和数据级并行编码算法进行融合,实现H.264的多粒度并行编码器,实现在保证编码视频质量的基础上,达到尽可能大的编码性能。 H.264多粒度并行编码方法 并行粒度的划分 H.264编码层次结构按照从大到小可以分为:图像组、帧、片组、片、宏块和子块。如图1所示,这些结构之间是一种层层包含的关系,根据每个层次不同的特点,可以设计不同的方法来提高编码效率。下面分别介绍各个层次的特点,并对每个层次中存在的并行性进行

文档评论(0)

2749166188 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档