我们正在考虑用 Java 编写一个软件,在它运行时记录特定时间段内的监视器。您对如何有效地捕获监视器输出有什么建议吗?
占用的 CPU 越少,我们捕获屏幕的频率就越高,生成的视频就越流畅,而不会干扰正在运行的其他应用程序。
如果复制屏幕截图部分不太困难,那么现有的 Java 开源程序将可以工作。我希望它不需要调用另一种编程语言。我们会看到。
我们正在考虑用 Java 编写一个软件,在它运行时记录特定时间段内的监视器。您对如何有效地捕获监视器输出有什么建议吗?
占用的 CPU 越少,我们捕获屏幕的频率就越高,生成的视频就越流畅,而不会干扰正在运行的其他应用程序。
如果复制屏幕截图部分不太困难,那么现有的 Java 开源程序将可以工作。我希望它不需要调用另一种编程语言。我们会看到。
我不确定你是否需要一个框架。
查看java.awt.Robot
该类的文档,特别是createScreenCapture
方法。
最好的 java 框架之一是 Monte Media Library,但首先看看这个来提出这个想法。
让我知道它是否有效:)
使用 OpenCV,您可以捕获帧并将它们放入视频中(我这样做是为了学校的运动跟踪高级设计项目),OpenCV 有大量的样本。但是我只熟悉它的 C++ 绑定,而不是 Java(但也有 C、Python 库)
它必须是java吗?因为使用 OpenCV 捕获视频非常容易(只需在循环中捕获帧缓冲区)
抱歉,我希望我有一个与 java 相关的答案.....但是无论如何我都会插话,因为 OpenCV 使用起来非常方便。
编辑:http ://code.google.com/p/javacv/
JavaCV 包含 C 类的包装器?可能值得一看。
Java 在 Robot 类中有截取屏幕截图的方法,但它并没有针对创建视频进行优化。
您是否有任何原因无法链接到特定于平台的屏幕捕获程序?