diff options
author | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-04-24 10:26:19 +0000 |
---|---|---|
committer | rtognimp <rtognimp@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2006-04-24 10:26:19 +0000 |
commit | 1d6269556282d2fa67c41ed81b6c8102c5df66f5 (patch) | |
tree | 3678757877600917a6034d7ec9384834c7f71c53 /mplayer.c | |
parent | 2fe6f2eefedcff3a2db147df1601af2744591313 (diff) | |
download | mpv-1d6269556282d2fa67c41ed81b6c8102c5df66f5.tar.bz2 mpv-1d6269556282d2fa67c41ed81b6c8102c5df66f5.tar.xz |
1 - Remove kernel HZ=100 assumptions that are no longer true from
timing.
Patch by Uoti Urpala
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@18241 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'mplayer.c')
-rw-r--r-- | mplayer.c | 15 |
1 files changed, 7 insertions, 8 deletions
@@ -3789,15 +3789,14 @@ if(time_frame>0.001 && !(vo_flags&256)){ #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); |