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

标签 cocoa macos webcam qtkit

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

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

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

谢谢。

最佳答案

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

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

关于cocoa - 如何从 CVImageBuffer 对象获取原始数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2837383/

相关文章:

c++ - 如何使用 c++ directshow 样本采集器的回调方法

c++ - 使用长度和编码将 const char* 字符串转换为 NSString

python - 如何将 Python 包作为预定的守护进程运行?

c# - WPF 与网络摄像头集成

macos - 如何让 gdb 在 OSX 10.11 El Capitan 下使用 macports 工作?

swift - 从跟踪中删除 swift_deallocClassInstance

c# - 获取成像设备

iphone - iphone 应用程序的安全登录和 session 管理

cocoa - 标签对齐

objective-c - 如何从文件路径获取文档 UTI?