YUV 格式详解,只看这一篇就够了
分类标准
首先,我们可以将YUV格式按照数据大小分为三个格式,YUV420,YUV422,YUV444。
由于人眼对Y的敏感度远超于对u和v的敏感度,所以有时候可以多个Y分量共用一组uv,这样既可以极大的节省空间 ,又可以不太损失质量。这三种格式就是按照人眼的特性指定的。
YUV420:由4个Y分量共用一套uv分量
YUV422:由2个Y分量共用一套uv分量
YUV444:不共用,一个Y分量使用一套uv分量
按照多个Y分量共用一个uv的方式,我们可以把YUV分成420,422,444三种类型;而在这三种类型下,我们又可以按照YUV的排列储存顺序分成Planar YUV,Semi-Planar,Packed YUV
Planar YUV 三个分量分开存放
Semi-Planar Y分量单独存放,UV分量交错存放
Packed YUV三个分量全部交错存放
具体分类
I420 (属于YUV 420 Planar)
I420是YUV420 Planar的一种, YUV分量分别存放,由4个Y分量共用一套uv分量
size计算: Y + U +V = W * H + 1/4 * W * H + 1/4 * W * H = W * H * 1.5
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U U U
U U U
U U U
V V V
V V V
V V V
YV12(属于 YUV420 Semi-Planar)
NV12是YUV 420 Semi-Planar的一种, Y分量单独存放,UV分量交错存放,UV在排列的时候,从U开始,总长度为wh1.5。
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
U V U V U V
U V U V U V
U V U V U V
NV21 ( 属于 YUV 420 Semi-Planar)
NV21是YUV420 Semi-Planar的一种,Y分量单独存放,UV分量交错存放,从V开始。总长度为W*H * 1.5
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
Y Y Y Y Y Y
V U V U V U
V U V U V U
V U V U V U