标题：MPEG-4/H.264视频编解码工程实践
MPEG-4/H.264视频编解码工程实践
MPEG-4/H.264视频编解码工程实践  路锦正 编著
ISBN 978-7-121-14787-6
2011年11月出版
定价：59元
16开
384页
内容简介
数字视频编解码已经形成了一个巨大的产业，视频编解码算法是其技术核心。本书介绍了基于Visual C++2005及TI DSP平台进行视频算法优化的实现过程和技术难点，并提供了书中所有源代码。主要内容包括：视频编解码原理及视频图像的捕获与显示、基于Visual C++2005分析MPEG-4/H.264编解码原理、基于TI DSP设计和优化开源工程（Xvid/x264/ffmpeg）、视频算法的标准接口xDAIS开发和视频监控中心软件设计等。
本书中的案例均来源于笔者开发中的工程实践，具有很强的实用价值。读者既可以基于案例进行特定的开发，也可以直接应用。
附书光盘包含书中所有案例的源文件。
本书内容充实，工程实用性强。面向高年级本科生、工程/专业/学术硕士、算法工程师等致力于视频编解码算法开发的人员，为其课程设计、毕业设计和项目研发等提供实战指南和案例参考。
前 言
视频的编解码是数字视频开发应用中的最主要方面，海量的视频数据为便于存储和传输、节约资源，必须进行一定程度的编码压缩。视频编解码在数字多媒体应用中占有极为重要的比重，已经形成了一个巨大的产业。从VCD、DVD到现在的MP4、IPTV、硬盘录像机、可视电话、高清电视等；从早期的闭路电视监控CCTV（Closed Circuit Television）到现在的数字视频录像DVR（Digital Video Recorder）等。编解码算法是上述系统中的核心技术，因此掌握自主产权的视频算法就极其重要。
由于视频编解码原理较复杂，涉及了许多数学知识——从数据的DCT/DWT变换，到基于图像块的运动估计和运动补偿，均匀量化和非均匀量化技术，还有可变长度熵编码如Huffman编码和算术编码等。视频编解码协议复杂，系统代码量大，功能模块多。幸运的是，大量开源视频算法为我们学习和实践视频算法提供了实用的算法工程。主流视频编解码算法中当数MPEG-4/H.264算法标准，但其协议标准仅规定了码流语义，并没有明确如何进行工程实现。Xvid是公认优秀的MPEG-4开源视频编、解码算法工程，X264是公认优秀的H.264开源视频编码算法工程。这些开源算法一方面主要采用跨平台的C语言编程，另一方面做核心模块面向常用CPU（Intel/AMD）的多媒体汇编指令做了系列优化。
基于可编程芯片（如DSP/FPGA）实时实现视频编解码算法是一件非常具有挑战性的工作，一方面需要对复杂算法本身深入理解；另一方面需要对研发平台的数据处理特点及汇编指令等有相当经验的把握。但对于一般的高年级本科生甚至研究生来说，同时熟练掌握算法和实现平台可能就不是一件容易的事情了。笔者以自己多年从事音视频编解码算法开发的切身体会出发，总结开发技术要点、凝练开发技巧、分享实战项目经验，为致力于视频编解码算法优化的研究开发人员提供指南和参考。
从目前市面上有关视频编解码的书籍来看，原理介绍性的多，工程实用性的少；技术规格翻译的多，项目实战经验共享的少。笔者几年前就想编写一本视频编解码实用性强的著作。正是基于上述各种因素的分析，终于催生了本书。笔者期待读者快速步入视频编解码开发的技术殿堂。
同时，笔者也真诚期望本书能够抛砖引玉，与相关技术人员共同探讨和学习，信息分享、共同进步。
读者对象高年级本科生在毕业设计阶段，其工程能力弱，时间短任务重，迫切需要该类指南；我国硕士研究生，特别是工程硕士，实际在校时间短，理论基础相对薄弱而工程能力较强，迫切需要项目实践经验参考；专业/学术硕士的课题一方面有视频编解码的直接应用，另一方面又有基于视频编解码的其他应用，如目标识别或跟踪，实用工程案例可提供支持；公司企业的算法优化工程师、新员工，短期内掌握并提高质量完成视频算法优化技术难度较大，而视频算法是系统核心技术，为提升员工自身价值需掌握核心算法优化技术。本书约定
本书所使用的软件有：Windows XP（SP3）、Visual C++ 2005简体中文专业版、CCS 3.3。
致谢说明
本书由路锦正编著，同时参加编写的还有李伟、张强林、吴艳、万雷、王呼佳、赵腾伦、王斌、魏雪辉、赵会春、王晓、余松、夏慧军、陈军等老师。本书吸收了由笔者主编的《Visual C++音频/视频处理技术及工程实践》一书中的部分章节，并对多数章节做了修改、补充，同时吸收了前书的读者反馈意见，使本书更贴近实用。本书是笔者在假期完成的，故牺牲了陪家人的时间，因此，特别感谢妻子郭晶女士的无私奉献和默默支持，感谢女儿带给我的无穷快乐和对工作的无穷动力。感谢成都道然科技有限责任公司以及徐津平老师对著书工作的大力支持。另外，本书参考了网络上的部分公开资源，在此对其所有者一并表示感谢。
由于时间仓促，加之水平有限，书中不足之处在所难免，恳请读者批评指正。最后还需要感谢电子工业出版社辛苦工作的老师们，他们为本书的顺利出版付出了很多辛勤劳动。
路锦正　　　　
2011年8月
目 录
第1章  视频编解码基础    
1.1  视频编码的必要性和可行性      
1.2  视频编码压缩原理及主流算法   
1.3  视频解码原理及主流解码器      
1.4  ASIC与可编程芯片    
1.5  开源的视频CODEC    
1.6  本章小结      
第2章  建立和生成编解码视频序列       
2.1  视频数据来源      
2.2  DirectShow实现视频采集   
2.3  VFW技术实现视频采集     
2.4  YUV序列图像显示     
2.5  本章小结      
第3章  Xvid实现MPEG-4视频编解码   
3.1  概述      
3.2  Xvid视频编码分析     
3.3  Xvid视频解码分析     
3.4  Xvid的MMX/SSE技术优化
3.5  运行Xvid系统     
3.6  Xvid编解码实验
3.7  本章小结      
第4章  数字媒体处理器TI DM64x开发平台 
4.1  概述
4.2  适于数字媒体处理的DSP
4.3  DSP开发环境CCS      
4.4  视频算法DM64x平台优化 
4.5  数字媒体处理器TI DM642DSP 
4.6  本章小结      
第5章  DM642平台优化设计Xvid视频编解码     
5.1  优化准备      
5.2  DM642视频算法优化策略  
5.3  DM642平台下优化Xvid视频编码    
5.4  DM642平台下优化Xvid视频解码    
5.5  平台优化实验及分析
5.6  本章小结      
第6章  x264实现H.264视频编码   
6.1  H.264概述    
6.2  H.264视频算法原理    
6.3  x264视频编码分析     
6.4  编译运行x264     
6.5  系统效果展示      
6.6  本章小结      
第7章  ffmpeg实现H.264视频解码       
7.1  ffmpeg应用基础  
7.2  ffmpeg工作流程分析  
7.3  H.264解码过程剖析    
7.4  H.264视频解码实验    
7.5  本章小结      278
第8章  媒体处理器DM642优化H.264视频编码
8.1  概述      
8.2  创建H.264视频编码器      
8.3  使用H.264视频编码器      
8.4  销毁H.264视频编码器      
8.5  实验H.264视频编码器      
8.6  本章小结      
第9章  eXpressDSP算法接口标准开发   
9.1  xDAIS开发基础  
9.2  H.264编码算法的xDAIS封装   
9.3  使用xDAIS封装的H.264编码库     
9.4  本章小结      
第10章  视频监控中心软件设计      
10.1  概述    
10.2  位图界面设计    
10.3  多路图像的高效显示 
10.4  使用视频监控中心软件    
10.5  本章小结    
参考文献