Screen recording needs a performance boost.
I'm using robot to capture my screen in "real-time" and only able to
pull about 12fps, does anyone know how to improve the fps? Is the
while loop slowing it down?
long t0 = System.currentTimeMillis();
int i = 0;
int fps = 0;
while (true) {
i++;
long t1 = System.currentTimeMillis();
int seconds = (int) (t1-t0)/1000;
try{
fps = i / seconds;
this.setTitle("FPS: " + fps);
}
catch( Exception e){
this.setTitle("FPS: " + fps);
}
Image screen_capture = new java.awt.Robot()
.createScreenCapture(new Rectangle(Toolkit
.getDefaultToolkit().getScreenSize()))
.getScaledInstance(Toolkit.getDefaultToolkit()
.getScreenSize().width / 2, Toolkit
.getDefaultToolkit().getScreenSize()
.height / 2, Image.SCALE_FAST);
jLabel1.setIcon(new ImageIcon(screen_capture));
jLabel1.update(jLabel1.getGraphics());
}
Any help or idea's is appreciated.