我在 C++ 程序中的缓冲区大小有一个小问题。我使用 V4L2 从相机中获取 YUYV 图像(此处提供示例)
我想拍摄一张图像并将其放入我自己的图像结构中。这是V4L2结构给出的缓冲区及其大小
(uchar*)buffers_[buf.index].start, buf.bytesused
在我的结构中,我创建了一个大小为 width*height*bitSize 的新缓冲区(mybuffer)(字节大小为 4,因为我抓取了 YUYV 或 YUV422 图像)。
问题是我希望缓冲区buf与我创建的缓冲区大小相同。但情况并非如此,例如当我抓取一个 640*480 的图像 buf=614400 和 mybuffer=1228800(两倍大)时。
有谁知道为什么会这样?