论文部分内容阅读
随着多媒体技术的不断发展,H.264作为新一代的视频编码标准出现在了人们的眼前。较之以往的视频编码标准,H.264在视频数据压缩效率和网络适应性等各方面都具有很好的性能。然而,随着性能的提升,H.264的算法复杂度较之以往的视频标准也较高,这在一定程度上影响了H.264在一些实时性要求较强的场合的应用。基于上下文的自适应可变长编码(CAVLC)是H.264中采用的较为先进的熵编码技术,它充分的利用了上下文信息从而提高了数据的压缩效率,但这也降低了H.264的编解码速度。因此,对CAVLC熵解码算法进行优化来提高其编解码速度,从而提高H.264的实时性可以促进H.264在实际视频通信中的应用。本文的内容主要分为两部分。第一部分:本文首先介绍了H.264视频编码标准的基本原理、解码过程以及熵解码原理,之后对CAVLC熵解码的解码过程进行了详细的研究,并对其中的解析非零系数的个数(TotalCoeffs)和拖尾系数的个数(TrailingOnes)提出了优化改进方法。即通过对其查找码表进行统计分析并进行分组优化,缩短了码流匹配时间,提高了解码速度。然后在H.264主流的开源解码器JM和FFmpeg上进行算法的改进和比较。第二部分:随着Android操作系统的广泛应用,在其上开发一款性能优良的播放器具有十分重要的价值。由于未进行改进的FFmpeg在实现CAVLC解码时利用了大量的内存空间,不利于手机的实时解码。本文提出的CAVLC熵解码的分组优化方法,减少了内存的使用量,达到了空间优化FFmpeg解码的目的。通过将已优化的FFmpeg编解码库移植到Android平台上,本文实现了一款基于Android系统的支持多种视频格式的视频播放器。具体实现的功能包括菜单的显示,视频的播放、暂停、停止以及自动隐藏等功能。该系统验证了改进算法在Android平台上实现视频播放的可行性。