【问题标题】:how to convert .yuv video to .y .u .v for each frame如何将每帧的 .yuv 视频转换为 .y .u .v
【发布时间】:2016-02-10 20:26:52
【问题描述】:

我正在尝试为视频的每一帧将 .yuv 视频转换为单独的 .y .u .v。

suppose video has 60 frames then it should output total 180 files. 
.y for 1st frame   .u for 1st frame   .v for 1st frame
.y for 2nd frame   .u for 2nd frame   .v for 2nd frame
.
.
.
.y for 60th frame   .u for 60th frame   .v for 60th frame

谁能建议如何做到这一点?

注意:有一些软件可用,但它们为整个视频提供 .y .u .v(只有 3 个文件作为输出 videoname.y videoname.u videoname.v)。

【问题讨论】:

  • 但是我怎样才能确保提取的字节是有效的 y cb cr。还有在提取 y cb cr 我应该如何提取? (表示 y 1st 640x480 像素为 cb 下一个 640x480/4 n 为 cr 最后 640x480/4 字节或我需要以不同的方式提取)

标签: video yuv


【解决方案1】:

来自Wikipedia

Y′CbCr 经常与 YUV 颜色空间混淆,通常 术语 YCbCr 和 YUV 可以互换使用,导致一些 混乱;当提到视频或数字形式的信号时, 术语“YUV”主要是指“Y′CbCr”。

假设视频为YCbCr 4:2:0 8bpp plane-separated 格式,分辨率为640x480,那么您需要做的就是:

1帧

To extract Y-component
Read 640*480 bytes

To extract Cb-component
Read 640*480/4 bytes

To extract Cr-component
Read 640*480/4 bytes

对所有帧重复。

1帧的大小是640*480*3/2=460800 bytes

对于其他 YCbCr 格式,请参阅http://www.fourcc.org/yuv.php

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-10-14
    • 1970-01-01
    • 1970-01-01
    • 2019-06-15
    • 1970-01-01
    • 2015-07-03
    • 2017-10-03
    相关资源
    最近更新 更多