背景

AVC(Advanced Video Coding)全称是高级视频编码,是一种视频编解码技术标准。

一直以来,视频编解码技术有两套标准,分别是国际电信联盟(ITU)的H.26x系列和国际标准化组织(ISO)的MPEG-x系列。两者的体系内都发展了很多套标准,如H.261,H.263,H.263+,又如MPEG-1,MPEG-2,MPEG-4。

在此基础上,ITU的视频编码专家组和ISO的运动图像专家组共同成立了一个联合视频组(JVT),并成功开发出AVC。因此,AVC有两个正式名称——H.264和MPEG-4 Part 10。
前者是由ITU命名的,常常被通信领域的人们使用;后者是由ISO命名的,受到广播影音娱乐领域的喜爱。在下文中,我使用H.264来代替AVC,这两者是等价的。

特点

  1. 低码率(Low Bit Rate):和MPEG2和MPEG4 ASP等压缩技术相比,在同等图像质量下,采用H.264技术压缩后的数据量只有MPEG2的1/8,MPEG4的1/3。
  2. 高质量的图像:H.264能提供连续、流畅的高质量图像(DVD质量)。
  3. 容错能力强:H.264提供了解决网络传输包丢失的问题的工具,适用于在高误码率传输的无线网络中传输视频数据。
  4. 网络适应性强:H.264提供了网络抽象层(Network Abstraction Layer),使得H.264的文件能容易地在不同网络上传输(例如互联网,CDMA,GPRS,WCDMA,CDMA2000等)。
  5. 较高的复杂度:264性能的改进是以增加复杂性为代价而获得的。据估计,H.264编码的计算复杂度大约相当于H.263的3倍,解码复杂度大约相当于H.263的2倍。
  6. H.264为解决不同应用中的网络传输的差异,定义了两层:视频编码层(VCL)负责高效的视频内容表示,网络提取层(NAL)负责以网络所要求的恰当的方式对数据进行打包和传送。

编码

1.帧内预测编码

帧内编码用来缩减图像的空间冗余。相邻的宏块通常含有相似的属性,因此,为了提高帧内编码的效率,充分利用空间相关性,可以在对一给定宏块编码时,首先根据周围的宏块预测,然后对预测值与实际值的差值进行编码。这样,相对于直接对该帧编码而言,可以大大减小码率。

2.帧间预测编码

帧间预测编码利用连续帧中的时间冗余来进行运动估计和补偿。H.264的运动补偿支持以往的视频编码标准中的大部分关键特性,而且灵活地添加了更多的功能,除了支持P帧、B帧外,H.264还支持一种新的流间传送帧——SP帧。码流中包含SP帧后,能在有类似内容但有不同码率的码流之间快速切换,同时支持随机接入和快速回放模式。

3.整数变换

在变换方面,H.264使用了基于4×4像素块的类似于DCT的变换,但使用的是以整数为基础的空间变换,不存在反变换因为取舍而存在误差的问题。与浮点运算相比,整数DCT变换会引起一些额外的误差,但因为DCT变换后的量化也存在量化误差,与之相比,整数DCT变换引起的量化误差影响并不大。此外,整数DCT变换还具有减少运算量和复杂度,有利于向定点DSP移植的优点。

4.量化

H.264中可选52种不同的量化步长,这与H.263中有31个量化步长很相似,但是在H.264中,步长是以12.5%的复合率递进的,而不是一个固定常数。
在H.264中,变换系数的读出方式也有两种:之字形(Zigzag)扫描和双扫描。大多数情况下使用简单的之字形扫描;双扫描仅用于使用较小量化级的块内,有助于提高编码效率。

5.熵编码

视频编码处理的最后一步就是熵编码,在H.264中采用了两种不同的熵编码方法:通用可变长编码(UVLC)和基于文本的自适应二进制算术编码(CABAC)。
在H.263等标准中,根据要编码的数据类型如变换系数、运动矢量等,采用不同的VLC码表。H.264中的UVLC码表提供了一个简单的方法,不管符号表述什么类型的数据,都使用统一变字长编码表。其优点是简单;缺点是单一的码表是从概率统计分布模型得出的,没有考虑编码符号间的相关性,在中高码率时效果不是很好。
因此,H.264中还提供了可选的CABAC方法。算术编码使编码和解码两边都能使用所有句法元素(变换系数、运动矢量)的概率模型。为了提高算术编码的效率,通过内容建模的过程,使基本概率模型能适应随视频帧而改变的统计特性。内容建模提供了编码符号的条件概率估计,利用合适的内容模型,存在于符号间的相关性可以通过选择要编码符号邻近的已编码符号的相应概率模型来去除,不同的句法元素通常保持不同的模型。

意义

  1. 应用:H.264的目标应用涵盖了大部分的视频服务,如有线电视远程监控、交互媒体、数字电视、视频会议、视频点播、流媒体服务等。
  2. 解码市场:解码集成电路、芯片,解码软件,浏览器,互联网视频服务。
  3. 编码市场:视频监控设备。
  4. 最大优势:H.264最大的优势是具有很高的数据压缩比率。举个例子,原始文件的大小如果为88GB,采用MPEG-2压缩标准压缩后变成3.5GB,压缩比为25∶1,而采用H.264压缩标准压缩后变为879MB。H.264压缩技术将大大节省用户的下载时间和数据流量收费,并且在具有高压缩比的同时还拥有高质量流畅的图像。

视频传输——1.AVC/H.264相关推荐

  1. MPEG-4 AVC/H.264 视频编码资源列表(中文)

    ============================================================================ 软件编解码器: =============== ...

  2. H.264将普及 视频编码讲坛之H.264前世今生

    随着HDTV等高清资源的兴起,H.264这个规范频频出现在我们眼前,HD-DVD和蓝光DVD均计划采用这一标准进行节目制作.而且自2005年下半年以来,无论是NVIDIA还是ATI都把支持H.264硬 ...

  3. MPEG-4 AVC/H.264 信息

    作者:haibara    来源:pcicp.com 本FAQ由(haibara)翻译,期间受到kaito_mkid(pcicp)帮助,在此感谢,由于Newbie的关系,如有翻译错误,还请各位指出,由 ...

  4. 视频编解码(h.264)的一些资源

    http://www.fastvdo.com/spie04/      H.264/AVC综述文章,包含了新的高精度拓展(Sullivan, Topiwala, and Luthra)  http:/ ...

  5. 【H.264/AVC视频编解码技术详解】七、 熵编码算法(1):基础知识

    <H.264/AVC视频编解码技术详解>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战工程的形式对H.264的标准进行 ...

  6. 【H.264/AVC视频编解码技术详解】二十三、帧间预测编码(1):帧间预测编码的基本原理

    <H.264/AVC视频编解码技术详解>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战工程的形式对H.264的标准进行 ...

  7. 【H.264/AVC视频编解码技术详解】二. 主流视频编码标准的发展

    <H.264/AVC视频编解码技术详解>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战工程的形式对H.264的标准进行 ...

  8. 【H.264/AVC视频编解码技术详解】八、 熵编码算法(2):H.264中的熵编码基本方法、指数哥伦布编码

    <H.264/AVC视频编解码技术详解>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战工程的形式对H.264的标准进行 ...

  9. 【H.264/AVC视频编解码技术详解】一. 视频信息与压缩编码

    <H.264/AVC视频编解码技术详解>视频教程已经在"CSDN学院"上线,视频中详述了H.264的背景.标准协议和实现,并通过一个实战工程的形式对H.264的标准进行 ...

最新文章

  1. 盘点区块链的2018:技术与工具演进篇
  2. 浏览器获取设备信息_过滤获取日志和浏览器信息
  3. 生产环境子域降级记录
  4. Faker库:一个数据造假的神库
  5. python span.string函数_【转】python f-string
  6. 它是世界上最轻的固体!1000℃下不会熔化,上过火星,还能进你家......
  7. 使用Spring JUnit规则进行参数化集成测试
  8. elisa标准曲线怎么做_ELISA标准曲线绘制
  9. 复现原文(一):Single-cell RNA sequencing of human kidney(step by step)
  10. 超星学习通 吉林大学 程序设计基础 实验07 递归程序设计(2022级)
  11. 电脑控制手机 易语言也可以实现颜色比较功能哦
  12. VB_NET程序设计教程
  13. 【用户画像】从0到1掌握用户画像知识体系
  14. sqlserver中65535_Sql Server数据导出EXCEL 解决行数超过65535问题
  15. 【工具使用】无法登陆bing搜索引擎
  16. 南通大学教务管理微信公众号的用户体验
  17. 2022国庆头像小程序最新可用源码
  18. 遇到100万行的 Excel,还没打开,电脑和我都崩溃了,该怎么办?
  19. 毕设(一):正则化极限学习机(RELM)、在线学习的极限学习机(OS-ELM)、带遗忘机制的在线学习极限学习机(FOS-ELM)
  20. 【数值分析】数值分析部分算法和代码

热门文章

  1. 淘宝网密谋研发SNS产品“淘江湖”
  2. 视频编解码学习之五:差错控制及传输
  3. 曝光过度照片整理思路
  4. python爬取网站图片链接并保存,Python爬取网站图片并保存的实现示例
  5. QQ 群聊美少女语音AI(ChatGLM 本地化版本)
  6. cpio(cpio格式)
  7. rotateimage
  8. 兆骑科创双创活动承办,企业落地孵化,招才引智
  9. 如何选择网站更新监控方式
  10. 脚手架vue-cli系列五:基于Nightwatch的端到端测试环境