找论文网 > 计算机论文 > 计算机应用 >

基于H.264的群集转码系统的设计(1)

摘 要 本文在深入研究最新的H.264编码技术的基础上设计并实现了一种面向插件式服务架构的群集自动批量转码系统。主要介绍了H.264的编码技术,提出了系统软硬件的架构、核心功能模块的设计思想并且简单分析了在IPTV领域的应用前景。系统立足于生产实践,适应从大规模转码工厂作业到小规模转码工作的不同级别的应用,具有很高的生产实用价值。
      关键词 交互式网络电视 H.264群集转码 帧内预测 帧间预测 离散余弦变换
 
1 概述
     随着信息技术的发展,视频编解码技术的应用变得越来越普遍,在Vod视频点播 视频监控 可视电话及网络交互电视(IPTV)等领域都有了很广泛的应用。H.264是继MPEG4以后推出的新一代视频压缩标准,它较MPEG4在同等图像质量的基础上有更高的压缩比,节约了网络带宽,而且提供了更好的网络适应性,得到了数字电视、网络交互电视等产业的广泛关注。本文在深入研究H.264编码技术的基础上,设计了群集转码系统。该系统集自动批量转码、自动监控(可通过Web\Wap多种方式提供)、自动存储、查询等功能于一体,为IPTV、视频点播等产业提供了高效的节目压制系统。本系统解决了影片编码格式转换工作中耗费人力、硬件成本高昂、转换效率低下的实际问题,具有很强的实践应用性。本文主要包括以下三个部分:H.264核心技术介绍、系统架构设计及关键实现、系统的应用
2 H.264核心技术简介
       H.264是JVT组织(Joint Video Team)制定出的一个新的视频编码标准,它具有高压缩比、高图像质量、良好的网络适应性等优点。与其他编码标准相比,它也是预测编码和变换编码结合的基于块的混合编码。其基本结构与其他标准很相似。然而它又在很多环节上采用了新技术,有了新的改进,主要核心技术有以下几点:
2.1帧内编码
      在H.264中,充分利用图像的空间冗余性,增加了帧内预测编码,即使用当前帧内已
编码的宏块或块的亮度和色度值来预测当前编码的宏块,具体来说就是当前编码块的左方和上方的块或宏块,然后将其预测误差进行编码,这样就可以使用尽量少的比特数来表示目标宏块。根据不同的块大小,预测方法有所不同:
      4*4块有九种预测方式:
       如下左图a-p为当前编码宏块;右图为几种不同方向的预测方式
        

                                                                    图1
其中模式2为DC预测,使用(A+B+C+D+I+J+K+L)>>3来获得。
      16*16和8*8则都有四种预测模式,分别为垂直 水平 DC预测 和Plane预测,只是模式的顺序略有不同。帧内预测编码大大减少了空间的冗余,更适用于背景比较单一的图像。
2.2 多参考帧预测编码
      H.264提供了可选的多参考帧预测技术,即在编码器的缓存中存有多个刚刚编码好的参考帧,编码器选择其中一个编码效果好的作为当前帧的参考帧。H.264可支持5个预测参考帧编码,提供了更高的容错性能,同时也有效提高了图像质量。
2.3 1/4精度的运动估计
      之前的H.263采用了半像素精度的运动估计取得了良好的效果,H.264则进一步采用了1/4像素精度的运动估计。H.264中的1/4像素精度是通过内插来获得的。譬如说对于亮度分量,首先通过一个六插头的滤波器,算出1/2像素的内插值,权值为(1/32,-5/32,5/8,5/8,-5/32,1/32),然后再进行线性内插求出1/4像素值。
       理论上,运动估计的精度增加一倍(例如从整像素精度提高到1/2 像素精度),可有0.5bit/Sample的编码增益,但实际验证发现,在运动矢量精度超过1/8 像素后,系统基本上就没有明显增益了,因此,在H.264中,只采用了1/4 像素精度的运动矢量模式,而不是采用1/8 像素的精度。
2.4 4*4整数DCT变换
      以往的DCT变换会带来一些负效应,如浮点运算增加了编码器的计算复杂度,同时带来了由于浮点数精度问题带来的编解码不匹配。为了解决这些问题,H.264把原来的离散余弦变换DCT改变为近似的整数变换,在量化过程中整合了变换系数,使原来必须用浮点运算进行的余弦函数运算,可用整数运算进行。同时还削减了系数的种类,使得变换过程中只用到加法和移位运算,使运算量减少。
      此外,在H.264中采用4*4大小的块,减少了块效应。采用整数DCT变换提高了预测精度,降低了残差信号空间相关性,只需较少的计算量和较小的处理码长,且消除了编码器和解码器之间的失配,提高了图像回放质量。
2.5 可变块大小
      在H,264中,一个宏块可以根据需要被分成不同大小的七种模式的块如下图所示:
 
 图2
      这样的划分具有更强的灵活性,适合不同的图像特点,譬如说细节比较丰富的图像块可以进一步划分成4个4*4的块,而比较平坦的宏块,则可当作一个16*16的块处理。这样就能较好的保持图像的细节。然而,对于不同划分以及不同参考帧的不同预测模式应有一个统一的判定标准,来确定最优的模式,目前比较广泛使用的模式判定标准即为RDO(率先失真优化):
      J mode ( s , c| Q,λmode ) = SS D ( s , c| Q) +λmode R ( s , c | Q)
      式中: c 为重建块; R 包括对宏块编码的所有比特; S S D( sum of square error) 为当前块和重建块的差值的平方和。得到重建块需要对残差进行变换和量化与反量化反变换,其过程较复杂。
2.6 基于内容的自适应可变长编码和自适应算术编码
       H.264与MPEG-2和MPEG-4的不同还存在于纠错编码块中,H.264的纠错编码为内容自适应可变长度码(CAVLC)和内容自适应二进制算法编码(CABAC),能提高纠错能力。而MPEG-2和MPEG-4为霍夫曼编码。
2.7 去块效应滤波
      基于块的编码算法不可避免的会产生块状效应,H.264 H.264/AVC 定义了一个自适应循环滤波器。滤波的基本思想是:如果块边沿的绝对差值相对比较大,出现块人工瑕疵的可能性就很大,因此需要进行相应处理。然而,如果差值幅度很大,编码量化过程的误差不能解释,边沿很可能反映了源图像的实际样值,不需处理。通过滤波,减少了块效应,图像的主观质量得到大大改善。
      作为一种新的编码标准,H.264在编码效率、图像质量、网络适应性和抗误码方面取得了成功。所以在数字电视、网络电视、DVD等领域中得到了广泛的应用。
3 系统设计与实现
      群集转码系统是针对IPTV(网络交互电视)主要业务应用VOD(视频点播)的节目的制作提出的。该系统旨在实现节目源高效批量的制作。
      系统软件设计为插件式系统平台+插件服务+应用系统的结构,来保证系统的灵活性、健壮性和可扩展性。
3.1 系统架构原理
       系统架构如图3所示:
                                                                             图3
      如上图中所示,系统服务平台包含编解码器插件自动部署、转码调度、插件服务发现及注册、插件工厂和各功能模块之间通信的通信协议以及群集转码控制及管理系统等几大核心功能模块。
      编解码器管理器插件作为具体编解码器实现与系统的中间层,负责各种编解码器的管理功能并代理编解码器完成转码工作。片源提供、影片存储、影片预览和具体解码器实现等插件之间通过插件服务发现及注册功能联系到系统中,利用本地或网络通信协议在平台的协调下工作。
      系统中的插件点不仅仅定义在核心平台中,在插件中也定义不同的插入点,插入点体现了系统功能流程的关键点,系统与插件或插件与插件之间的依赖统一通过插件管理器管理。另,所有插件均须编译为动态链接库形式。
      在这样的架构下,整个转码系统的功能被松散耦合地组织起来,是面向服务架构的体现。用户不仅可以简单随意地替换或增加不同的功能插件到系统中,更可以轻松地实现整个系统的集中或分布式部署。
      由此可见,系统平台为各个插件之间透明协同工作提供了的良好基础,解决了转码系统中各个功能模块之间的紧密耦合,是系统的基本核心架构。
3.2 插件服务的发现、注册和调用

共2页: 1 [2] 下一页


IP传真的分析与改进
业务协同远程项目管理信息系统建模与实现
工商管理 | 工科论文 | 财务管理 | 管理学 | 公共管理 | 财政税收 | 证券金融 | 会计审计 | 计算机 | 法律论文 | 医药学 | 汉语言文学
社会论文 | 工科论文 | 理科论文 | 文化论文 | 艺术论文 | 文学论文 | 哲学论文 | 政治论文 | 英语论文 | 写作指导 | 计算机应用
www.zlunwen.com 找论文网 ® 版权所有 网站地图