如何从CVImageBuffer对象获取原始数据

jsl*_*lap 5 macos webcam cocoa qtkit

我正在尝试使用cocoa从网络摄像头抓取图像.我可以使用QTKit和didOutputVideoFrame委托调用获取RGBA格式的图像,并将CVImageBuffer转换为CIImage然后转换为NSBitmapImageRep.

我知道我的相机在YUV中本地抓取,我想要的是直接从CVImageBuffer获取YUV数据,并在显示之前处理YUV帧.

我的问题是:如何从CVImageBuffer获取YUV数据?

谢谢.

Bar*_*ark 1

您也许可以CIImage使用缓冲区创建 CIImage +[CIImage imageWithCVBuffer:],然后将该 CIImage 渲染为CGBitmapContext所需的像素格式。

请注意,我尚未测试此解决方案。