2012-09-03 88 views
6

我必须执行一些需要访问OS X的framebuffer中的屏幕数据的任务。在10.6.8中,我们可以使用Quart Display Service API获取帧缓冲区基址,但是我们不能在10.7或10.8中做到这一点。mac os x访问framebuffer原始数据

Apple建议使用CGDisplayCreateImage来获取屏幕图像。但是获取原始图像数据效率不高,因为我们必须将获取的图像对象绘制到上下文中。

是否有其他方法可以获得帧缓冲区的原始数据?

回答

0

您不需要绘制CGDisplayCreateImage返回的图像来检索原始图像数据。您可以使用CGImageGetDataProvider,然后使用CGDataProviderCopyData从中获取数据。