我一直在尝试构建一个屏幕记录器来练习我萎缩的Java技能(尽管已经有太多了)。
然而,我遇到了机器人类速度太慢的问题--甚至在我的i7驱动的机器上也有15 5fps,在我的macbook上还有一个爬行的4-5fps。我用Python构建了一个工作记录器,通过使用PIL获取快照,我至少能够达到一个可靠的20-24fps。
所以,我很好奇,这门课这么慢的技术原因是什么?
此外,其他屏幕记录器是如何工作的?马季奇是爪哇,表现不错.我假设有某种方式与底层操作系统连接,并从缓冲区或其他东西中删除所有内容?我认为,必须有一些可笑的快速方式来获得正在绘制的屏幕上的副本-毕竟,操作系统是足够快地绘制屏幕多次,同时做一个千千万万其他计算!似乎从一个地方复制一组颜色到另一个地方应该是一个相对便宜的操作。
我决心不放弃!我只是不知道我需要知道些什么,才能真正深入到制作一台合适的录音机的关键所在。
发布于 2013-04-26 16:47:05
我不太确定。但仍然是一个很可能的原因。
操作系统:操作系统已经绘制了屏幕。它使人意识到,它有图形存储,直到有新的事情发生。图形很容易保存。
java机器人:机器人在存储数据之前收集数据。屏幕截图使用方法。方法是getPixelColor()。它做了一个大的循环,以获得屏幕上的所有像素。在高清屏幕上,这个方法被称为921600次(1280*720),这需要时间,而且它需要压缩成图像并保存。
https://stackoverflow.com/questions/14699209
复制相似问题