X11中具有快速帧速率的caputre OpenGL窗口-可能吗? [英] caputre OpenGL window in X11 with fast framerate - possible?

查看:99
本文介绍了X11中具有快速帧速率的caputre OpenGL窗口-可能吗?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在我的Linux机器(X11)上运行了一个大小为800x600的OpenGL应用程序.该应用程序的内容(渲染的图像)应通过网络导出到另一台PC. 首先,我想知道是否可以对应用程序窗口进行约30 Hz的快照,将其保存为jpeg并通过HTTP或其他方式将其导出到另一台计算机(例如IP摄像机正在执行的操作).是否可以快速读取图形卡的内存(Radeon HD 5800),以便使我每秒获得约30张图片的帧率?

I have an OpenGL application with the size of 800x600 running on my linux machine (X11). The content of this application (the rendered image) should be exported via network to another PC. First of all, i want to know if it is possible to take snapshots of the applications window with about 30 Hz, save them to jpeg and export them to the other machine via HTTP or whatever (like the IP Cameras are doing). Is it possbile to read the graphic's cards memory (Radeon HD 5800) in a fast way so that i can get a framerate of about 30 pictures per second?

推荐答案

如果您愿意容忍某些延迟,请像素缓冲区对象(PBO)应该可以为您带来不错的回读吞吐量.

If you're willing to tolerate some latency Pixel Buffer Objects (PBOs) should get you some decent read-back throughput.

libjpeg-turbo 看起来是高速JPEG编码的不错解决方案.

libjpeg-turbo looks like a good solution for high-speed JPEG encoding.

如果您没有要监视的应用程序源,则 LD_PRELOAD骇客与以上内容结合使用即可.

If you don't have the source to the app you're trying to monitor then LD_PRELOAD hacks combined with the above should work.

这篇关于X11中具有快速帧速率的caputre OpenGL窗口-可能吗?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆