DATE: 2020.8.5
1、参考
《VP9 Bitstream &Decoding Process Specification - v0.6》
view on VP9 and AV1 part 1: specifications
2、VP9帧结构
编码码流是由一系列编码帧frame组成,而编码帧结构如上图所示,具体解释如下:
-
前面几个字节包含未压缩头,这里面包含了采用原始二进制编码方式的所有帧级信息,比如profile, frame_type, frame_size等;
-
在未压缩头信息后面紧跟压缩头,这里面指定了变换尺寸信息,采用算术编码压缩。
-
在头信息后面紧跟每个Tile的数据。每个Tile中包含Tile大小和算术编码的数据。Tile包含多个64x64的superblocks,并且尽可能等间隔分割,如下图所示:
-
64x64的superblock可以分割为64x32,
32x64,32x32, 32x16, 16x32, 16x16, 16x8, 8x16, 8x8的block,并且8x8block还可以分割为8x4, 4x8和4x4的subblock。如下图所示: -
Superframe: 将多个编码帧合并成一个单独的chunk。如下图所示:
-
Hidden frame: