Screen-Recorder: record more frames without increasing playback speed

4 views
Skip to first unread message

Zampano

unread,
Sep 13, 2008, 1:42:45 PM9/13/08
to one-stone-soup
Hi,

when someone records a recording with the screen-recorder and plays it
with the screen-player the video is faster than the person´s actions
while recording it.
I wanted to make the video as fast as the actual actions while
recording, and changed a line:

in org.one.stone.soup.screen.recorder.ScreenRecorder.java

while( recording )
{
time = System.currentTimeMillis();
while(time-lastFrameTime<200)

I changed the last line from above to:

while(time-lastFrameTime<400)

Now when I record something and view it, it´s as fast as the actions I
did while recording (even tested that by recording the clock of my
OS).

Unfortunately (but logically since I changed the line above) now less
frames get recorded.

Is there a way that I can record more frames per second but have a
slower speed while playing, too.

I´d like to record as many frames per seconds as I would have set the
line above to:

while(time-lastFrameTime<100) // this lets the recorder record more
frames per second, but makes the playback faster, too

but when I view the recording with the screen-player it should have a
speed as I would set it to:

while(time-lastFrameTime<400)

Hope you guys know what I mean.
I want to make the playback of recording slower (that it is doesn´t
show my actions faster than I recorded them). And I want to make the
video a little smoother by recording more frames per second. (that the
mouse cursor doesn´t seem to jump while moving the mouse).

Thank you very much!



Zampano

unread,
Sep 14, 2008, 4:50:45 PM9/14/08
to one-stone-soup
Hi,

I guess I solved my issue by my self.

I figured out how to make the player playback the recording slower.

I added the line

startTime -= (frameTime-lastFrameTime-200);

(where the "150" is the delay which I can set)
in

org.one.stone.soup.screen.recorder.ScreenPlayer.java

I changed


if(fastForward==true)
{
startTime -= (frameTime-lastFrameTime);
}
else
{

while( (System.currentTimeMillis()-startTime<frameTime &&
realtime==false) && running )





to




if(fastForward==true)
{
startTime -= (frameTime-lastFrameTime);
}
else
{
//added the next line
startTime -= (frameTime-lastFrameTime-200);


while( (System.currentTimeMillis()-startTime<frameTime &&
realtime==false) && running )



Sorry if I wasted your time by letting you read my first post.

Malcolm Yam

unread,
Sep 17, 2008, 4:58:37 AM9/17/08
to one-stone-soup
but wont it increase the extend the time as more frames get record as
in the time is not in sync ?
i tried your codes of adding more frames and slowing down the
playback.. my recorded time was not in sync with the clock ..

Are you trying to attain better fps?

janina1...@googlemail.com

unread,
Oct 23, 2008, 3:29:49 PM10/23/08
to one-stone-soup
hi,

I am trying to attain better fps!
Do you know how to do this??
Could you please give me a hint??

Thank you in advance :-)
Reply all
Reply to author
Forward
0 new messages