gpt4 book ai didi

iphone - 420YpCbCr8BiPlanarVideoRange 转 YUV420 ?/如何将 Y 和 Cbcr 平面复制到单平面?

转载 作者:行者123 更新时间:2023-12-03 18:31:23 25 4
gpt4 key购买 nike

我已使用 AVFoundation 捕获视频。我已设置(视频设置)并获取 outputsamplebuffer kCVPixelFormatType_420YpCbCr8BiPlanarVideoRange 格式。但我需要 YUV420 格式进行进一步处理。

我的疑问是

1.420YpCbCr8BiPlanarVideoRange、420YpCbCr8BiPlanarFULLRange、420YpCbCr8PlanarFullRange、420YpCbCr8Planar和YUV420之间的区别?
2.如何将 420YpCbCr8BiPlanarVideoRange 转换为 YUV420 ?
3.如何将YUV420转换为32BGRA?

4)或其他方法来做到这一点???那是任何开源库或Apple框架......

我已经完成了 Accelerate 框架......它具有以下 planar8、planerF、RGBA8888 等的图像转换......任何方法都可以将这些格式与 32BGRA/YUV420 等同/420YpCbCr8BiPlanarVideoRange 并满足我的要求??????

提前致谢

提前致谢

最佳答案

主要区别是:

如果您采用双平面格式,则 Y 数据(亮度)和 CbCr 数据(色度或颜色信息)位于两个称为平面的独立存储区域中。您可以使用CVPixelBufferGetBaseAddressOfPlane使用索引 0 获取 Y 数据,使用索引 1 获取 CbCr 数据。如果格式是平面,则两种数据都在同一平面上(首先是所有 Y 值,然后是所有 Cb 值,最后是 Cr 值)。

如果您采用全范围格式,则每个亮度或色度值将使用 0 到 255 之间的值。 视频范围格式仅使用 16 到 235 之间的值(由于某些历史原因)。

术语420表示该格式包含多少亮度和多少色度信息。它基本上表示每个像素都有亮度信息,每个 2x2 block 都有色度信息。

据我所知,YUV420 并不是一种精确指定的格式。它通常用于平面 YpCbCr 420 格式。

关于iphone - 420YpCbCr8BiPlanarVideoRange 转 YUV420 ?/如何将 Y 和 Cbcr 平面复制到单平面?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6314966/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com