文章目录
一、H265/HEVC
H265 也称之为 HEVC(英文全名:High Efficiency Video Coding)是新的一种编码技术,H265继承了很多 H264 的标准,包括 NALU、RBSP 等标准。而 H265 的压缩率高达1:200,远远高于 H264 的1:100。
H265的诞生:
随时代发展,人们对视频的清晰度越来越高。从之前的1920*1080的分辨率,到现在的2K、4K、8K分辨率。对网络传输来说如此高的分辨率如果还是用之前的H264压缩技术,那会导致传输的码率需要提高许多倍才能保证图像质量,否则会出现花屏、丢帧的情况。
但是现在绝大部分的网络设备的宽带和储存空间是有限的,所以采用大码率取传输2K以上的分辨率视频是不可取的。所以此时H265就随着需求的增加而出现。
H265码流结构
与H264一样也是遵循CVL和NAL层。他的起始码也是0x000001来进行分割NAL。一个普通的HEVC码流,结构为:
StartCode + VPS + StartCode + SPS + StartCode + PPS + StartCode + SEI + StartCode + I帧 +StartCOde + P帧 ... ...
VPS
->SPS
->PPS
->SEI
->I/P/B帧
VPS,SPS,PPS,SEI,一个I桢,一个P桢都可以成为一个NALU
他与H264的码流结构唯一的不同就是多了一个VPS。下面我们具体看看H265码流每个NALU单元的定义。在H264 部分讲过,NALU=头部信息+主题部分。头部信息代表后面跟着的是什么数据。
VPS
(视频参数集):00 00 00 01 4