diff options
Diffstat (limited to 'osdep')
-rw-r--r-- | osdep/timer-darwin.c | 23 | ||||
-rw-r--r-- | osdep/timer-linux.c | 30 | ||||
-rw-r--r-- | osdep/timer-win2.c | 13 | ||||
-rw-r--r-- | osdep/timer.h | 9 |
4 files changed, 6 insertions, 69 deletions
diff --git a/osdep/timer-darwin.c b/osdep/timer-darwin.c index b8fe380e0c..64edfe7ef6 100644 --- a/osdep/timer-darwin.c +++ b/osdep/timer-darwin.c @@ -27,10 +27,9 @@ #include "timer.h" /* global variables */ -static double relative_time, startup_time; static double timebase_ratio; -const char *timer_name = "Darwin accurate"; +const char timer_name[] = "Darwin accurate"; @@ -54,26 +53,13 @@ int usec_sleep(int usec_delay) /* current time in microseconds */ unsigned int GetTimer() { - return (unsigned int)(uint64_t)((mach_absolute_time() * timebase_ratio - startup_time) * 1e6); + return (unsigned int)(uint64_t)(mach_absolute_time() * timebase_ratio * 1e6); } /* current time in milliseconds */ unsigned int GetTimerMS() { - return (unsigned int)(uint64_t)((mach_absolute_time() * timebase_ratio - startup_time) * 1e3); -} - -/* time spent between now and last call in seconds */ -float GetRelativeTime() -{ - double last_time = relative_time; - - if (!relative_time) - InitTimer(); - - relative_time = mach_absolute_time() * timebase_ratio; - - return (float)(relative_time-last_time); + return (unsigned int)(uint64_t)(mach_absolute_time() * timebase_ratio * 1e3); } /* initialize timer, must be called at least once at start */ @@ -84,9 +70,6 @@ void InitTimer() mach_timebase_info(&timebase); timebase_ratio = (double)timebase.numer / (double)timebase.denom * (double)1e-9; - - relative_time = startup_time = - (double)(mach_absolute_time() * timebase_ratio); } #if 0 diff --git a/osdep/timer-linux.c b/osdep/timer-linux.c index 579c284019..f32f92f392 100644 --- a/osdep/timer-linux.c +++ b/osdep/timer-linux.c @@ -9,7 +9,7 @@ #include <sys/time.h> #include "config.h" -const char *timer_name = +const char timer_name[] = #ifdef HAVE_NANOSLEEP "nanosleep()"; #else @@ -31,45 +31,17 @@ int usec_sleep(int usec_delay) // Returns current time in microseconds unsigned int GetTimer(void){ struct timeval tv; -// float s; gettimeofday(&tv,NULL); -// s=tv.tv_usec;s*=0.000001;s+=tv.tv_sec; return (tv.tv_sec*1000000+tv.tv_usec); } // Returns current time in milliseconds unsigned int GetTimerMS(void){ struct timeval tv; -// float s; gettimeofday(&tv,NULL); -// s=tv.tv_usec;s*=0.000001;s+=tv.tv_sec; return (tv.tv_sec*1000+tv.tv_usec/1000); } -static unsigned int RelativeTime=0; - -// Returns time spent between now and last call in seconds -float GetRelativeTime(void){ -unsigned int t,r; - t=GetTimer(); -// t*=16;printf("time=%ud\n",t); - r=t-RelativeTime; - RelativeTime=t; - return (float)r * 0.000001F; -} - // Initialize timer, must be called at least once at start void InitTimer(void){ - GetRelativeTime(); -} - - -#if 0 -#include <stdio.h> -int main(void){ - float t=0; - InitTimer(); - while(1){ t+=GetRelativeTime();printf("time= %10.6f\r",t);fflush(stdout); } } -#endif - diff --git a/osdep/timer-win2.c b/osdep/timer-win2.c index 2f0b5c3075..43c4b07fa9 100644 --- a/osdep/timer-win2.c +++ b/osdep/timer-win2.c @@ -4,7 +4,7 @@ #include <mmsystem.h> #include "timer.h" -const char *timer_name = "Windows native"; +const char timer_name[] = "Windows native"; // Returns current time in microseconds unsigned int GetTimer(){ @@ -25,16 +25,5 @@ int usec_sleep(int usec_delay){ return 0; } -static DWORD RelativeTime = 0; - -float GetRelativeTime(){ - DWORD t, r; - t = GetTimer(); - r = t - RelativeTime; - RelativeTime = t; - return (float) r *0.000001F; -} - void InitTimer(){ - GetRelativeTime(); } diff --git a/osdep/timer.h b/osdep/timer.h index f0e87a89b7..4ddac524ef 100644 --- a/osdep/timer.h +++ b/osdep/timer.h @@ -1,19 +1,12 @@ #ifndef MPLAYER_TIMER_H #define MPLAYER_TIMER_H -extern const char *timer_name; +extern const char timer_name[]; void InitTimer(void); unsigned int GetTimer(void); unsigned int GetTimerMS(void); -//int uGetTimer(); -float GetRelativeTime(void); int usec_sleep(int usec_delay); -/* timer's callback handling */ -typedef void timer_callback( void ); -extern unsigned set_timer_callback(unsigned ms,timer_callback func); -extern void restore_timer(void); - #endif /* MPLAYER_TIMER_H */ |