问题标签 [iosurface]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
736 浏览

ios - iOS 7 - 将 IOKit 和 IOSurface 添加到项目中

我正在制作一个 iPhone 应用程序,它需要 IOKit 和 IOSurface 框架。我已将这些框架包含在项目中。当我在链接框架后展开框架时,我可以看到标题。但是,当我尝试:

...它说它找不到文件。我正在使用针对 iOS 7+ 的应用程序运行 Xcode 6。

我也试过这个: IOKit Not found ...并且所有说的是在我运行命令后找到了该文件。

还有这个: XCode、Cocoa 应用程序中找不到符号

两者都不适合我。看起来这个人有类似的问题,如果它有帮助的话: Adding IOKit to iOS Project

0 投票
1 回答
1082 浏览

iphone-privateapi - 如何包含 IOSurfaceRef

我正在尝试使用私有 API 创建一个应用程序以从后台截取屏幕截图。我找到了这个例子: 在后台截屏(iOS)-提高性能

在作者的代码中,第一行使用了 IOSurfaceRef 类型。有人可以向我解释如何将其包含在我的代码中吗?我试图链接 IOSurfaceAPI.h(我认为定义了 IOSurfaceRef 的地方),但是没有奏效。

0 投票
0 回答
1921 浏览

screenshot - 尝试使用私有框架 IOSurface 进行屏幕捕获似乎不再适用于 iOS 9

我正在为使用 IOSurface 私有框架在后台进行屏幕捕获的客户端开发现有(非应用商店)应用程序。SO上有几个线程概述了该技术,以及几个开源示例项目。

同样,这是客户端使用的内部应用程序。它不适用于应用商店发布,因此它使用私有框架这一事实是可以接受的。

这是 Github 上的一个示例项目,它使用了非常相似的技术:

https://github.com/k06a/UIView-FastScreenshot

我刚刚尝试在最新的 iOS 9 beta 上运行客户端的应用程序,但它因无法加载库 CoreSurface 的错误而崩溃。

我已经看到CoreSurface了以前的框架名称的文档IOSurface,但似乎在 iOS 8 中确实有一个名为的私有框架CoreSurface和一个名为 的私有框架IOSurface

有没有其他人能够IOSurface在 iOS 9 中使用从后台进行屏幕截图?

我正在为任何可以给我一种方法让我在 iOS 9 上工作的人增加一个赏金(同样,私有框架很好,但它不能在越狱设备上)

0 投票
1 回答
911 浏览

ios - 如何在 iOS 上捕获屏幕并保存为 BMP 图像文件?

我想捕获iOS的整个屏幕并将其保存到BMP(使用私有api),我首先得到了IOSurfaceRefIOMobileFramebufferConnection然后找到一种方法将表面字节保存到BMP文件中。

我尝试了两种方法,方法是直接screenshot0:从其中获取字节screenSurface并将其保存到BMP,但是得到了一个模糊的错位图像;用于screenshot1:IOSurfaceAcceleratorTransferSurface表面字节传输到新IOSurfaceRef文件并将其保存为 BMP 文件的方法,得到清晰但镜像和 360 度旋转的图像。

我想知道,为什么我不能IOSurfaceRef直接使用原始字节?中的字节是否IOSurfaceRef被镜像?如何获得正确的 BMP 屏幕截图?谢谢!

screenshot0:方法图片:

在此处输入图像描述

screenshot1:方法图片:

在此处输入图像描述

0 投票
0 回答
349 浏览

ios - 关于 IOSurface 录制视频

一个需要解决的功能:后台桌面录像我使用NSTimer循环调用IOSurface进行截图,如下代码:</p>

可以截图成功。</p>

现在的问题是:

  1. 但大概运行 1 分钟左右,提示“Received memory warning”。</li>
  2. 滑动屏幕,屏幕方法会延迟

或者有什么方法可以后台桌面录像?</p>

0 投票
0 回答
282 浏览

ios9 - iOS9 IOSurface背景截图

最新iOS9遇到问题时截图,iOS7和iOS8都能运行成功。</p>

我用iPad8.1.2和iPhone6plus9.1测试,以下是我测试发现的问题。</p>

iOS8.1.2 对象值

2015-11-07 14:07:22.849 屏幕录像机[3292:140825]

我的设备信息:[iPhone OS,8.1.2,12B440,iPad4,1,prod]

(lldb) po 帧缓冲服务

8967

(lldb) po 连接

IOMobileFramebuffer 0x138031800 [0x1946aec80]

(lldb) po ScreenSurface

IOSurface 0x137f00008 [0x1703816c0]

(lldb) poaseed

728041

(lldb) po 宽度

1536

(lldb) po 高度

2048

iOS9.1 对象值 2015-11-07 14:07:22.849 屏幕录像机[3292:140825]

我的设备信息:[iPhone OS,9.1,13B143,iPhone7,1,prod]

(lldb) po 帧缓冲服务

24599

(lldb) po 连接

IOMobileFramebuffer 0x138031800 [0x1946aec80]

(lldb) po ScreenSurface

(lldb) poaseed

0

(lldb) po 宽度

(lldb) po 高度

现在问题导致iOS9截图是黑屏。</p>

谁能告诉我哪里错了,谢谢!</p>

0 投票
1 回答
5207 浏览

ios - iOS9 框架未找到 IOSurface

当我使用IOSurface.framework时,问题如下:

我知道 IOSurface 是一个私有框架,我只想将应用程序安装到我的 iPhone 中,如何解决这个问题?

0 投票
1 回答
405 浏览

opengl - 将 OpenGL 纹理从一个目标复制到另一个目标

我有一个 IOSurface 支持的纹理,它仅限于 GL_TEXTURE_RECTANGLE_ARB 并且不支持 mipmapping。我正在尝试将此纹理复制到绑定到 GL_TEXTURE_2D 的另一个纹理,然后在该纹理上执行 mipmapping。但是我在复制我的纹理时遇到了问题。我什至无法通过将其复制到另一个 GL_TEXTURE_RECTANGLE_ARB 来使其工作。这是我的代码:

0 投票
1 回答
1068 浏览

macos - 将 IOSurface 支持的纹理转换为 GL_TEXTURE_2D

我想IOSurface用 mipmapping 渲染纹理。

我正在生成一个这样的OpenGL纹理IOSurface

并用一个简单的片段着色器渲染它:

这工作正常。但不幸的是,纹理没有经过 mipmap 处理,并且在以较小尺寸查看时非常粗糙/像素化。经过进一步研究,似乎不仅IOSurface支持的纹理仅限于GL_TEXTURE_RECTANGLE_ARB目标,它们也不支持 mipmapping。

好的。所以我最好的选择似乎是:

  1. GL_TEXTURE_RECTANGLE_ARB纹理复制到GL_TEXTURE_2D纹理
  2. 为这个新纹理生成 mipmap

请注意,我是在不支持 OpenGL 4.3 的 Mac 上开发的,所以我不能在这里使用方便glCopyImageSubData。相反,我在这里的第 1 步方法基于这个答案:如何有效地将纹理 1 复制到纹理 2?

我的完整代码现在如下所示:

我改变了我的着色器来支持GL_TEXTURE_2D

这就是我卡住的地方。图像全黑,我不知道为什么它不起作用。

我试着像这样查看像素数据:

而且都是零。我的方法是否有问题,或者问题是否与处理IOSurface支持的纹理特别相关?

0 投票
0 回答
767 浏览

ios - 错误:未找到 IOSurface.h

当我尝试导入 IOSurface 时,xcode 仍然给我错误。我已经尝试了所有可能性,导入框架,项目上的链接框架,但 xcode 仍然给我错误。

有谁知道为什么?

截图错误

感谢大家的任何回答