数据与封装格式YUV和RGB

Posted 叮咚咕噜

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了数据与封装格式YUV和RGB相关的知识,希望对你有一定的参考价值。

一、YUV

  • 人眼对亮度敏感,多色度不敏感,因而可以将亮度信息和色度信息分离并对色度信息采用更“狠”一点的压缩方案,从而提高压缩效率
  • YUV 颜色编码采用的是 明亮度 和 色度 来指定像素的颜色
  • Y 表示明亮度(Luminance、Luma),而 U 和 V 表示色度(Chrominance、Chroma)。而色度又定义了颜色的两个方面:色调和饱和度

1、yuv420、yuv422、yuv444区别

1.1YUV 4:4:4 采样

  • 1个Y对应1个U对应1个V
  • 大小:w * h * 3

1.2YUV 4:2:2 采样

  • 2个Y对应1个U对应1个V
  • 大小:w * h * 2

1.3YUV 4:2:0 采样

  • 4个Y对应1个U对应1个V
  • 大小:w * h * 3 / 2

2、YUV存储格式:YUV420P和YUV420SP的区别

(1)planar 平面格式:指先连续存储所有像素点的 Y 分量,然后存储 U 分量,最后是 V 分量。
(2)packed 打包模式:指每个像素点的 Y、U、V 分量是连续交替存储的。

类型YUV 4:2:0 采样YUV 4:2:0 采样
planar 平面格式YUV 420P 类型YV12 格式YU12 格式
packed 打包模式YUV 420SP 类型NV12 格式NV21 格式
  • YU12 是先 Y 再 U 后 V,而 YV12 是先 Y 再 V 后 U
  • NV12 是 ios 中有的模式,它的存储顺序是先存 Y 分量,再 UV 进行交替存储。
  • NV21 是 安卓 中有的模式,它的存储顺序是先存 Y 分量,在 VU 交替存储

3、YUV播放工具

YUVPlayer1.3

二、RGB

  • Red、Green、Blue三种颜色,可以混合成世界上所有的颜色。
  • 彩色图像中每个点,由R、G、B三个分量组成。
  • 以RGB24为例,图像像素数据的存储方式如下:

    ps:BMP文件中存储的就是RGB格式的像素数据。

以上是关于数据与封装格式YUV和RGB的主要内容,如果未能解决你的问题,请参考以下文章

视音频数据处理入门:FLV封装格式解析

iOS音视频采集与格式转换(yuv转rgb)

视音频数据处理入门:FLV封装格式解析

图像RGB2YUV与YUV2RGB格式互转介绍

YUV与RGB格式详解

如何将rgb 模式转换成 yuv 模式