lavd: Use av_gettime_relative()
Whenever av_gettime() is used to measure relative period of time, av_gettime_relative() is prefered as it guarantee monotonic time on supported platforms. Since v4l2 is compiled only on Linux where av_gettime_relative() is monotonic, a small wrapper function av_gettime_monotonic() is used (should be inlined the compiler) to put emphasis on that fact. Signed-off-by: Olivier Langlois <olivier@trillion01.com> Reviewed-by: Nicolas George <george@nsup.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
parent
6e8fe44815
commit
0a15067047
@ -427,10 +427,7 @@ static void mmap_release_buffer(void *opaque, uint8_t *data)
|
|||||||
#if HAVE_CLOCK_GETTIME && defined(CLOCK_MONOTONIC)
|
#if HAVE_CLOCK_GETTIME && defined(CLOCK_MONOTONIC)
|
||||||
static int64_t av_gettime_monotonic(void)
|
static int64_t av_gettime_monotonic(void)
|
||||||
{
|
{
|
||||||
struct timespec tv;
|
return av_gettime_relative();
|
||||||
|
|
||||||
clock_gettime(CLOCK_MONOTONIC, &tv);
|
|
||||||
return (int64_t)tv.tv_sec * 1000000 + tv.tv_nsec / 1000;
|
|
||||||
}
|
}
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user