YV12和I420的区别 yuv420和yuv420p的区别(转)

Posted happykoukou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了YV12和I420的区别 yuv420和yuv420p的区别(转)相关的知识,希望对你有一定的参考价值。

原文转自 https://blog.csdn.net/dgyanyong/article/details/44491253

 

YV12和I420的区别        一般来说,直接采集到的视频数据是RGB24的格式,RGB24一帧的大小size=width×heigth×3 Bit,RGB32的size=width×heigth×4,如果是I420(即YUV标准格式4:2:0)的数据量是 size=width×heigth×1.5 Bit。       在采集到RGB24数据后,需要对这个格式的数据进行第一次压缩。即将图像的颜色空间由RGB2YUV。因为,X264在进行编码的时候需要标准的YUV(4:2:0)。但是这里需要注意的是,虽然YV12也是(4:2:0),但是YV12和I420的却是不同的,在存储空间上面有些区别。如下: YV12 : 亮度(行×列) + U(行×列/4) + V(行×列/4)

I420 : 亮度(行×列) + V(行×列/4) + U(行×列/4)

可以看出,YV12和I420基本上是一样的,就是UV的顺序不同。

继续我们的话题,经过第一次数据压缩后RGB24->YUV(I420)。这样,数据量将减少一半,为什么呢?呵呵,这个就太基础了,我就不多写了。同样,如果是RGB24->YUV(YV12),也是减少一半。但是,虽然都是一半,如果是YV12的话效果就有很大损失。然后,经过X264编码后,数据量将大大减少。将编码后的数据打包,通过RTP实时传送。到达目的地后,将数据取出,进行解码。完成解码后,数据仍然是YUV格式的,所以,还需要一次转换,这样windows的驱动才可以处理,就是YUV2RGB24。

YUY2  是 4:2:2  [Y0 U0 Y1 V0]

 

yuv420p 和 YUV420的区别 在存储格式上有区别
yuv420p:yyyyyyyy uuuuuuuu vvvvv yuv420: yuv yuv yuv

以上是关于YV12和I420的区别 yuv420和yuv420p的区别(转)的主要内容,如果未能解决你的问题,请参考以下文章

YUV存储格式:YU12_I420_YV12_NV12_NV21

Camera学习笔记:基础概念之YUV

Camera学习笔记:基础概念之YUV

将 YV12 (yuv420p) 转换为 JPEG / Bitamp

YUV模型:YUV420P和YUV420SP

yuv中yv12与nv12的转换