gpt4 book ai didi

linux - glreadpixels 比基于 x11 的屏幕截图慢

转载 作者:太空宇宙 更新时间:2023-11-04 11:16:29 25 4
gpt4 key购买 nike

我正在开发一个基于 opengl 的模拟应用程序,我需要在一秒钟内制作多个屏幕截图。我在我的应用程序中尝试了两种方法。
1) 使用 glreadpixels
2) 使用基于 x11 的屏幕截图。例如:ffmpeg -f x11grab -s 1024x768 -i :0.0 output.png

我发现第二个解决方案比第一个解决方案快大约 3 倍。我预计第一个解决方案会更快。但实际上它更慢。我很好奇为什么 glreadpixels 比较慢?

最佳答案

glReadPixels (...) 是同步往返操作(当它不与像素缓冲区对象一起使用时)。您将它发送给 GL,它必须完成它缓冲到那个点的所有命令,然后它返回该操作的结果。

另一方面,如果您使用窗口系统定义的方法来抓取窗口的内容,则窗口系统可以自由地以多种不同的方式实现操作。通常你会得到窗口系统实际呈现的最后一个东西的副本,它可能比你调用 glReadPixels (...) 并等待 GL完成绘制。

关于linux - glreadpixels 比基于 x11 的屏幕截图慢,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20746311/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com