x264关于scan8的理解

只以亮度块为例

x264关于scan8的理解_第1张图片

​​​

static const int x264_scan8[16] =

   

   4+1*8, 5+1*8, 4+2*8, 5+2*8, 

   6+1*8, 7+1*8, 6+2*8, 7+2*8,

   4+3*8, 5+3*8, 4+4*8, 5+4*8,

   6+3*8, 7+3*8, 6+4*8, 7+4*8,

};

由于程序运行时,数组依次相加是从左向右,从上到下的顺序,而对于图像编码使用zig的方式,对此造成的不变我们利用scan8数组来进行区分,scan8数组一个存放着宏块扫描顺序的数组,这样当程序依次从左向右读取scan8中的数值时,它代表的正确的宏块编码顺序,我们从第一行开始,12,13,20,21,正好对应宏块中的第一列。

你可能感兴趣的:(x264关于scan8的理解)