# HG changeset patch # User rtognimp # Date 1145874379 0 # Node ID da3115996a81bddc077f1a9ac86307d1b9f146c8 # Parent c1579a060477ea661479db4ebace03da7d9b63c0 1 - Remove kernel HZ=100 assumptions that are no longer true from timing. Patch by Uoti Urpala diff -r c1579a060477 -r da3115996a81 mplayer.c --- a/mplayer.c Mon Apr 24 10:24:56 2006 +0000 +++ b/mplayer.c Mon Apr 24 10:26:19 2006 +0000 @@ -3789,15 +3789,14 @@ #else { // -------- TIMER + SOFTSLEEP ----------- - float min=softsleep?0.021:0.005; + // assume kernel HZ=100 for softsleep, works with larger HZ but with + // unnecessarily high CPU usage + float margin = softsleep ? 0.011 : 0; current_module="sleep_timer"; - while(time_frame>min){ - if(time_frame<=0.020) - usec_sleep(0); // sleeps 1 clock tick (10ms)! - else - usec_sleep(1000000*(time_frame-0.020)); - time_frame-=GetRelativeTime(); - } + while (time_frame > margin) { + usec_sleep(1000000 * (time_frame - margin)); + time_frame -= GetRelativeTime(); + } if(softsleep){ current_module="sleep_soft"; if(time_frame<0) mp_msg(MSGT_AVSYNC, MSGL_WARN, MSGTR_SoftsleepUnderflow);