zoukankan      html  css  js  c++  java
  • (转)YUV420存储格式

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

    一般的录像程序是先从摄像头得到yuv420 planar的数据,然后编码成h264格式 帧,最后存储成3gp/mpeg等格式的视频文件。

    以720×488大小图象YUV420 planar为例,其存储格式是:
    共大小为(720×480×3>>1)字节,分为三个部分:Y,U和V
    Y分量:    (720×480)个字节  
    U(Cb)分量:(720×480>>2)个字节
    V(Cr)分量:(720×480>>2)个字节
    三个部分内部均是行优先存储,三个部分之间是Y,U,V 顺序存储。
    即YUV数据的0--720×480字节是Y分量值,
               720×480--720×480×5/4字节是U分量
               720×480×5/4 --720×480×3/2字节是V分量。

    一副w*h的yuv420图像数据的大小为w*h*1.5。

    4 :2: 2 和4:2:0 转换:

    最简单的方式:
    YUV4:2:2 ---> YUV4:2:0  Y不变,将U和V信号值在行(垂直方向)在进行一次隔行抽样。
    YUV4:2:0 ---> YUV4:2:2  Y不变,将U和V信号值的每一行分别拷贝一份形成连续两行数据。

  • 相关阅读:
    我爱Java系列之---【SpringBoot打成war包部署】
    279. Perfect Squares
    矩阵dfs--走回路
    112. Path Sum
    542. 01 Matrix
    106. Construct Binary Tree from Inorder and Postorder Traversal
    105. Construct Binary Tree from Preorder and Inorder Traversal
    Invert Binary Tree
    563 Binary Tree Tilt
    145 Binary Tree Postorder Traversal
  • 原文地址:https://www.cnblogs.com/lihaiping/p/4147653.html
Copyright © 2011-2022 走看看