OpenGL ES 的哪一部分使我的 iPhone 应用程序有点慢?

发布于 2025-01-03 12:06:38 字数 130 浏览 0 评论 0原文

我目前正在使用 OpenGL ES 开发我的 iPhone 应用程序。这是一款具有亮度和对比度的镜子应用程序。但我现在遇到的问题是使用它时速度有点慢(大约0.2秒延迟)。但帧率大约是60秒。所以我的问题是 OpenGL 的哪一部分需要时间来处理?

I am currently developing my iPhone App with OpenGL ES. It is mirror app with brightness and contrast. But the problem i am having now is it is bit slower(about 0.2s delay) when you use it. But the frame rate is about 60 seconds. So my quesion is which part of OpenGL takes time to process?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

蓝颜夕 2025-01-10 12:06:38

你所遇到的是滞后(而不是缓慢)。而且它不是由 OpenGL 引起的(至少不完全是)。延迟发生在相机以及读取和解码相机图片的过程中。

一些延迟是不可避免的:

  1. 摄像机需要整个视频帧来捕获图像并将图像编码为数字数据
  2. 需要整个显示帧才能将帧绘制到显示器上。

因此,您可以获得的最短延迟约为 1s/30 + 1s/60 = 0.05s

任何高于此值的延迟都是由于处理开销而产生的。我很可能会说你的来自解码图像以及该过程中的缓冲区分配。不过我需要查看你的源代码才能确定。

What you have is lag (not slowness). And it's not caused by OpenGL (at least not entirely). The latencies happen in the camera and the process of reading and decoding the camera pictures.

Some latency is unavoidable:

  1. It takes a whole video frame for the camers to capture the image and to encode the image into digital data
  2. It takes a whole display frame do draw the frame to the display.

So the shortest lag you can get are about 1s/30 + 1s/60 = 0.05s

Any latency above this is created due to processing overhead. And most likely I'd say yours comes from decoding the image and maybe buffer allocations in that process. However I'd need to see your sourcecode to tell for sure.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文