summaryrefslogtreecommitdiffstats
path: root/osdep/timer-win2.c
Commit message (Collapse)AuthorAgeFilesLines
* win32: use QueryPerformanceCounter for timingJames Ross-Gowan2015-07-041-13/+11
| | | | | | | | | | | | clock_gettime is implemented in winpthreads, so it's unavailable when mpv is compiled with its internal pthreads implementation. This makes mp_raw_time_us fall back to gettimeofday(), which can cause an assert failure in mp_add_timeout() when the system clock is changed. Use QueryPerformanceCounter instead. The clock_gettime(CLOCK_MONOTONIC) implementation in winpthreads uses QueryPerformanceCounter anyway, so there shouldn't be any change in behaviour.
* win32: do not call timeEndPeriod(1) on terminationwm42015-05-211-8/+0
| | | | | | | | This was called for formal reasons at best. The way it does this is somewhat dangerous, because if libmpv is unloaded as DLL, this would attempt to call a dangling function pointer. (No, we don't want an extra DllMain entrypoint just for win32.)
* Update license headersMarcin Kurczewski2015-04-131-5/+4
| | | | Signed-off-by: wm4 <wm4@nowhere>
* win32: use monotonic clock on windows if possibleHiltjo Posthuma2015-01-191-0/+10
|
* timer: init only oncewm42014-02-101-2/+10
| | | | | | | | | | This avoids trouble if another mpv instance is initialized in the same process. Since timeBeginPeriod/timeEndPeriod are hereby not easily matched anymore, use an atexit() handler to call timeEndPeriod, so that we can be sure these calls are matched, even if we allow multiple initializations later when introducing the client API.
* timer: use gettimeofday() on Windowswm42013-05-261-1/+4
| | | | | | | MinGW-w64 emulates this via GetSystemTimeAsFileTime(), which has supposedly the best and most stable timer source out of most others. http://mingw-w64.svn.sourceforge.net/viewvc/mingw-w64/trunk/mingw-w64-crt/misc/gettimeofday.c
* timer: refactor, add 64 bit timer functionwm42013-05-261-16/+14
| | | | | | | | | | | | | | Make OS specific timer code export a mp_raw_time_us() function, and add generic implementations of GetTimer()/GetTimerMS() using this function. New mpv code is supposed to call mp_time_us() in situations where precision is absolutely needed, or mp_time_s() otherwise. Make it so that mp_time_us() will return a value near program start. We don't set it to 0 though to avoid confusion with relative vs. absolute time. Instead, pick an arbitrary offset. Move the test program in timer-darwin.c to timer.c, and modify it to work with the generic timer functions.
* timer: remove timer_namewm42012-09-071-2/+0
| | | | This was unreferenced and useless.
* Remove trailing whitespace from most filesUoti Urpala2009-07-071-2/+2
|
* Merge svn changes up to r28862Uoti Urpala2009-03-071-1/+19
|\
| * Add standard license headers to files.diego2009-03-011-1/+19
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28779 b3059339-0415-0410-9bf9-f77b7e298cf2
* | Merge svn changes up to r28310Uoti Urpala2009-01-151-3/+6
|\| | | | | | | | | | | | | | | The libdvdread4 and libdvdnav directories, which are externals in the svn repository, are at least for now not included in any form. I added configure checks to automatically disable internal libdvdread and libdvdnav if the corresponding directories are not present; if they're added manually then things work the same as in svn.
| * timer-win2.c: Fix "voi" (void) typo breaking Windows compilationuau2009-01-051-1/+1
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28269 b3059339-0415-0410-9bf9-f77b7e298cf2
| * Add missing 'void' keyword to parameterless function declarations.diego2009-01-051-4/+8
| | | | | | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28267 b3059339-0415-0410-9bf9-f77b7e298cf2
* | timers: Remove GetRelativeTime()Uoti Urpala2008-04-281-11/+0
| | | | | | | | | | | | | | | | | | | | Move the code calculating time delta since last query out of the platform-specific drivers and into mplayer.c. The platform-specific drivers now return absolute values only. The way the code in timer-darwin.c uses doubles in wrapping arithmetic looks questionable and this change might make problems in it more visible.
* | osdep: Change timer_name to a saner typeUoti Urpala2008-04-281-1/+1
|/ | | | | timer_name was a (non-const) pointer to a const char array. Make the symbol the array itself.
* Native darwin timer update.wight2004-08-041-0/+2
| | | | | | | Patch by Dan Christiansen <danchr@daimi.au.dk> git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@12955 b3059339-0415-0410-9bf9-f77b7e298cf2
* Sleep(0) != usleep(0), bugreport by Paul-Kenji Cahierfaust32003-11-161-0/+4
| | | | git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@11481 b3059339-0415-0410-9bf9-f77b7e298cf2
* alternative timer and glob emulation code for mingw32 portfaust32003-04-251-0/+34
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@9984 b3059339-0415-0410-9bf9-f77b7e298cf2