YV12和I420的区别 yuv420和yuv420p的区别

news/2025/2/11 22:58:08/
YV12和I420的区别
 
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




http://www.ppmy.cn/news/121762.html

相关文章

YUV420P格式分析

YUV格式通常有两大类:打包(packed)格式和平面(planar)格式。前者将YUV分量存放在同一个数组中,通常是几个相邻的像素组成一个宏像素(macro-pixel);而后者使用三个数组分开…

详解YUV420数据格式

欢迎Follow我的GitHub, 关注我的CSDN. 其余参考Android目录.技术微信公众号:程序员小乐 详解YUV420数据格式 原文地址:http://www.cnblogs.com/azraelly/archive/2013/01/01/2841269.html 1. YUV简介 YUV定义:分为三个分量,“Y”表…

yuv420格式nv12,nv21,I420,YV12互转

YUV格式有两大类:planar和packed。 对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。 对于packed的YUV格式,每个像素点的Y,U,V是连续交*存储的。 YUV,分为三个…

Linux之V4L2驱动框架

目录 一、V4L2简介 二、V4L2操作流程 1.打开摄像头 2.查询设备的属性/能力/功能 3.获取摄像头支持的格式 4.设置摄像头的采集通道 5.设置/获取摄像头的采集格式和参数 6.申请帧缓冲、内存映射、入队 (1)申请帧缓冲 (2)内…

YUV422转换YUV420应用实例

在上一篇文章中JPEG编码学习—JPEG数据转YUV数据应用实例 已经可以将v4l2 采集到的JPEG数据转换为YUV422格式,但是我们有时候需要使用其他格式的数据,比如用YUV420作为H264的输入数据格式。做数据格式转换,首先需要明白各种数据类型的采样分布…

YUV420 总结 (YU12、YV12、NV12 和 NV21)

YUV模型是根据一个亮度(Y分量)和两个色度(UV分量)来定义颜色空间。最常见的格式为 YUV420分为两种:YUV420P和YUV420SP。 YUV420P YUV420P 为 plane平面模式,Y, U, V分量处于不同平面,即在 ffmpeg 中数据存放在 3 个数组中。 其可再细分为 Y…

YUV422/YUV420

YUV三种数据格式占用空间计算:YUV444 > YUV444 1920*1080 > 1920*1080个Y1920*1080个U1920*1080个V 1920*1080*3 YUV420 > YUV411 1920*1080 > 1920*1080个Y1920*1080个U/41920*1080个V/4 1920*1080*3/2 YUV422 > YUV422 1920*1080 > 1920*1080个Y1920*…

9.Ansible Conditions介绍

Ansible条件语句 1)上面的例子在不同的机器上安装nginx,不同的操作系统风格使用不同的软件包管理器。debian使用APT, Red Hat使用Yum, 但这是两个独立的Playbook,您必须为各自的服务器使用正确的剧本。 可以使用条件语句,将这两个P…