gpt4 book ai didi

ios - CVPixelBufferGetWidth(pixelbuffer) 和 CVPixelBufferGetWidthOfPlane(pixelbuffer, 0) 有什么区别?

转载 作者:行者123 更新时间:2023-11-29 05:48:33 28 4
gpt4 key购买 nike

CVPixelBufferGetWidth(pixelbuffer)CVPixelBufferGetWidthOfPlane(pixelbuffer, 0)CVPixelBufferGetHeight(pixelbuffer)CVPixelBufferGetHeightOfPlane之间有什么区别吗(像素缓冲区,0) .

我搜索维基,它说:

As with most Y′UV formats, there are as many Y′ values as there are pixels.

它并没有说 y 的值对于所有格式都等于图像宽度。

所以如果

CVPixelBufferGetWidth(pixelbuffer) == CVPixelBufferGetWidthOfPlane(pixelbuffer, 0)

CVPixelBufferGetHeight(pixelbuffer) == CVPixelBufferGetHeightOfPlane(pixelbuffer, 0)

最佳答案

并非所有像素缓冲区都是平面的(即包含多个数据平面,就像 YUV 缓冲区的情况一样)。在决定使用哪个函数查询宽度/高度之前,请检查 CVPixelBufferIsPlanar 看看您的是否是。 (当然,如果您从始终平面的源获取缓冲区,则可以安全地跳过该检查。)

CVPixelBufferGetWidthOfPlane 的文档指出,当传递非 FlatBuffers 时,它总是返回零。在这种情况下,返回值(对于平面 0)预计不会等于 CVPixelBufferGetWidth 的返回值。

关于ios - CVPixelBufferGetWidth(pixelbuffer) 和 CVPixelBufferGetWidthOfPlane(pixelbuffer, 0) 有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55901997/

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