什么是h264
1. H.264是一种高性能的视频编解码技术
目前国际上制定视频编解码技术的组织有两个:ITU和ISO/IEC。
ITU: International Telecommunication Union “国际电信联盟”,
ISO: 就是“国际标准化组织”,ISO9001质量认证那个, IEC则是“国际电工委员会”。
1988年,ISO和IEC联合成立了一个专家组,负责开发电视图像数据和声音数据的编码、解码和它们的同步等标准。
这个专家组,就是大名鼎鼎的MPEG,Moving Picture Expert Group(动态图像专家组)
1)ITU提出了H.261、H.262、H.263、H.263+、H.263++,这些统称为H.26X系列,主要应用于实时视频通信领域,如会议电视、可视电话等;
2)ISO/IEC提出了MPEG1、MPEG2、MPEG4、MPEG7、MPEG21,统称为MPEG系列。
ITU和ISO/IEC一开始是各自捣鼓,后来,两边成立了一个联合小组,名叫JVT(Joint Video Team,视频联合工作组)
而H.264则是由JVT共同制定的新数字视频编码标准,
所以它既是ITU-T的H.264,又是ISO/IEC的MPEG-4高级视频编码,而且它将成为MPEG-4标准的第10部分。
因此,不论是MPEG-4 AVC、MPEG-4 Part 10,还是ISO/IEC 14496-10,都是指H.264
在ITU与ISO合作研究后被称为MPEG4 Part10或H.264(JVT)
H.264是ITU-T以H.26x系列为名称命名的标准之一,AVC是ISO/IEC MPEG一方的称呼。
2. H264标准的主要特点:
1.更高的编码效率:
同H.263等标准的特率效率相比,能够平均节省大于50%的码率。
2.高质量的视频画面:
H.264能够在低码率情况下提供高质量的视频图像,在较低带宽上提供高质量的图像传输是H.264的应用亮点。
3.提高网络适应能力:
H.264可以工作在实时通信应用(如视频会议)低延时模式下,也可以工作在没有延时的视频存储或视频流服务器中。
4.采用混合编码结构:
同H.263相同,H.264也使用采用DCT变换编码加DPCM的差分编码的混合编码结构,
还增加了如多模式运动估计、帧内预测、多帧预测、基于内容的变长编码、4x4二维整数变换等新的编码方式,提高了编码效率。
5.H.264的编码选项较少:
在H.263中编码时往往需要设置相当多选项,增加了编码的难度,
而H.264做到了力求简洁的“回归基本”,降低了编码时复杂度。
6.H.264可以应用在不同场合:
H.264可以根据不同的环境使用不同的传输和播放速率,并且提供了丰富的错误处理工具,可以很好的控制或消除丢包和误码。
7.错误恢复功能:
H.264提供了解决网络传输包丢失的问题的工具,适用于在高误码率传输的无线网络中传输视频数据。
8.较高的复杂度:
264性能的改进是以增加复杂性为代价而获得的。
据估计,H.264编码的计算复杂度大约相当于H.263的3倍,解码复杂度大约相当于H.263的2倍。
3. H264标准的优势
H.264标准的主要目标是:与其它现有的视频编码标准相比,在相同的带宽下提供更加优秀的图象质量
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等)
H.264最大的优势是具有很高的数据压缩比率,在同等图像质量的条件下,H.264的压缩比是MPEG-2的2倍以上,是MPEG-4的1.5~2倍。
例如:原始文件的大小如果为88GB,采用MPEG-2压缩标准压缩后变成3.5GB,压缩比为25∶1,
而采用H.264压缩标准压缩后变为879MB,从88GB到879MB,H.264的压缩比达到惊人的102∶1
4. H.264尤其适合互联(包括移动互联网)的实时视频领域
H.264 草案中包含了用于差错消除的工具,便于压缩视频在误码、丢包多发环境中传输,如移动信道或IP信道中传输的健壮性。
为了抵御传输差错,
1. H.264视频流中的时间同步可以通过采用帧内图像刷新来完成,
2. 空间同步由条结构编码(slice structured coding)来支持。
3. 同时为了便于误码以后的再同步,在一幅图像的视频数据中还提供了一定的重同步点
H.264中,还常利用数据分割的方法来应对信道码率的变化。
数据分割的概念就是在编码器中生成具有不同优先级的视频数据以支持网络中的服务质量QoS。
例如采用基于语法的数据分割(syntax-based data partitioning)方法,将每帧数据的按其重要性分为几部分,这样允许在缓冲区溢出时丢弃不太重要的信息。
还可以采用类似的时间数据分割(temporal data partitioning)方法,通过在P帧和B帧中使用多个参考帧来完成
在无线通信的应用中可以通过改变每一帧的量化精度或空间/时间分辨率来支持无线信道的大比特率变化。
可是,在多播的情况下,要求编码器对变化的各种比特率进行响应是不可能的。
因此,不同于MPEG-4中采用的精细分级编码FGS(Fine Granular Scalability)的方法(效率比较低),H.264采用流切换的SP帧来代替分级编码。
5. h265与264区别
H.265是新的编码协议,也即是H.264的升级版。
H.265标准保留H.264原来的某些技术,同时对一些相关的技术加以改进。
新技术使用先进的技术用以改善码流、编码质量、延时和算法复杂度之间的关系,达到最优化设置
比起H.264/AVC,H.265/HEVC提供了更多不同的工具来降低码率
1. 编码的宏块大小
以编码单位来说,H.264中每个宏块(macroblock/MB)大小都是固定的16x16像素,
而H.265的编码单位是不固定的,可以选择从最小的8x8到最大的64x64
2. 同样的画质和同样的码率,H.265比H2.64 占用的存储空间要少理论50%,带宽占用节省一半
3. 采用了块的四叉树划分结构
H.265相比H.264最主要的改变是采用了块的四叉树划分结构。一张图片,先划分四个大的宏块,然后每个宏块再次划分四个小的宏块,即四叉树形式划分。
6. H264分层编码SVC(Scalable Video Coding)
可分层视频编解码,是一种能将视频流分割为多个分辨率、质量和帧速率层的技术。
H.264SVC是以H.264为基础,在语法和工具集上进行了扩展,支持具有分级特性的码流。
语法上,NALU头扩展了,用于描述码流的分级信息,使用保留的NAL类型14、20编码增强层码流。
H.264SVC是H.264标准的附录G,同时作为H.264新的profile。H.264SVC在2007年10月成为正式标准
编码器产生的码流包含一个或多个可以单独解码的子码流,子码流可以具有不同的码率,帧率和空间分辨率。
1. 时域可分级(Temporal scalability):可以从码流中提出具有不同帧频的码流。
3. 空间可分级(Spatial scalability):可以从码流中提出具有不同图像尺寸的码流。
4. 质量可分级(Quality scalability):可以从码流中提出具有不同图像质量的码流。
应用:
1. 监控领域
一种方案是Multi-Stream,监控视频流一般产生2路,主辅码流。
另一种方案是使用SVC(Scalable Video Coding)。
用SVC编码器可以产生2层的分级码流,1个基本层用于预览,1个增强层保证存储的图像质量是较高的。
使用手机远程监控预览的情况下,可以产生一个低码率的基本层。
2. 视频会议领域
视频会议终端利用SVC编出多分辨率,分层质量,会议的中心点替代传统MCU二次编解码方法改为视频路由分解转发。
也可在网络丢包环境下利用时域可分级,抛弃部分时域级实现网络适应性。在云视讯领域SVC也有想像空间。
3. 流媒体IPTV应用
服务器可以根据不同的网络情况丢弃质量层,保证视频的流畅。
4. 兼容不同网络环境和终端的应用。
优缺点:
优点:
灵活,有技术优势,新的编码器H.265也使用了分层思想,可以实现灵活的应用,也可提高网络适应性。
缺点:
分级码流的解码复杂度增加。
由于07年10月才成为标准,兼容性和通用性没那么好