YV12和I420的区别

转载 2012年03月31日 11:09:51
       一般来说,直接采集到的视频数据是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。


转自:http://blog.vckbase.com/zaboli/archive/2009/12/31/39742.html

YUV420(I420)与YV12的区别,YUV420p与YUV420区别

YUV420(I420)与YV12的区别,YUV420p与YUV420区别
  • wsbeibei
  • wsbeibei
  • 2014年10月09日 09:10
  • 2568

YV12转为I420

YV12在内存的中的存储顺序为: 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  I420在内存中的存储顺序为: Y Y...
  • tkp2014
  • tkp2014
  • 2015年06月25日 19:07
  • 661

yv12、I420、nv12、nv21相互转换

YUV420P,Y,U,V三个分量都是平面格式,分为I420和YV12。I420格式和YV12格式的不同处在U平面和V平面的位置不同。在I420格式中,U平面紧跟在Y平面之后,然后才是V平面(即:YU...
  • cffishappy
  • cffishappy
  • 2017年05月16日 17:48
  • 2282

YV12,I420,YUV420P的区别

YV12和I420的区别        一般来说,直接采集到的视频数据是RGB24的格式,RGB24一帧的大小size=width×heigth×3 Bit,RGB32的size=width×...
  • leixiaohua1020
  • leixiaohua1020
  • 2013年10月02日 14:16
  • 53113

YV12和YUY2的基本知识

简单的说,YUV的格式在存储上有两类布局: Packed和Plannar。Packed的方式就是把相邻几个象素打包起来。比如把水平方向2个象素打包到一个DWORD里。Planner方式则相反。Y分量和...
  • yiheng_l
  • yiheng_l
  • 2009年01月15日 09:39
  • 13640

YV12,I420,YUV420P的区别与格式转换

FFMPEG中的swscale提供了视频原始数据(YUV420,YUV422,YUV444,RGB24...)之间的转换,分辨率变换等操作,使用起来十分方便,在这里记录一下它的用法。 swscale...
  • ainyko
  • ainyko
  • 2015年02月02日 10:32
  • 4183

YV12和I420的区别

YV12和I420的区别        一般来说,直接采集到的视频数据是RGB24的格式,RGB24一帧的大小size=width×heigth×3 Bit,RGB32的size=width×heig...
  • yue7603835
  • yue7603835
  • 2014年12月19日 15:15
  • 818

yv12转nv12,nv12转I420

yv12跟I420区别其实就是u、v顺序不一样,是平面格式,内存中u、v在连续的一块,nv12是打包格式,u、v交叉。 yv12转nv12: void swapYV12toNV12(b...
  • u011270282
  • u011270282
  • 2014年11月27日 14:26
  • 3931

视频存储格式YUV420 NV12 NV21 i420 YV12

1)YUV简介 YUV格式有两大类:planar和packed。 对于planar的YUV格式,先连续存储所有像素点的Y,紧接着存储所有像素点的U,随后是所有像素点的V。 对于packed的...
  • tanningzhong
  • tanningzhong
  • 2017年08月04日 17:21
  • 551

YV12、I420、YUV420P的区别

YV12和I420的区别 一般来说,直接采集到的视频数据是RGB24的格式,RGB24一帧的大小 size=width×heigth×3 Bit,RGB32的size=width×heigth×4,...
  • tkp2014
  • tkp2014
  • 2014年12月13日 11:57
  • 400
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:YV12和I420的区别
举报原因:
原因补充:

(最多只允许输入30个字)