[FFmpeg-devel] [PATCH v2 2/4] avutil/timer: Add clock_gettime as a fallback of AV_READ_TIME

Martin Storsjö martin at martin.st
Fri Jun 7 12:11:50 EEST 2024


On Fri, 7 Jun 2024, Zhao Zhili wrote:

> From: Zhao Zhili <zhilizhao at tencent.com>
>
> ---
> libavutil/timer.h | 5 +++++
> 1 file changed, 5 insertions(+)
>
> diff --git a/libavutil/timer.h b/libavutil/timer.h
> index 2cd299eca3..74c4d84e69 100644
> --- a/libavutil/timer.h
> +++ b/libavutil/timer.h
> @@ -46,6 +46,8 @@
> #include "macos_kperf.h"
> #elif HAVE_MACH_ABSOLUTE_TIME
> #include <mach/mach_time.h>
> +#elif HAVE_CLOCK_GETTIME
> +#include <time.h>
> #endif
>
> #include "common.h"
> @@ -70,6 +72,9 @@
> #       define AV_READ_TIME gethrtime
> #   elif HAVE_MACH_ABSOLUTE_TIME
> #       define AV_READ_TIME mach_absolute_time
> +#   elif HAVE_CLOCK_GETTIME && defined(CLOCK_MONOTONIC)
> +#       include "libavutil/time.h"
> +#       define AV_READ_TIME av_gettime_relative
> #   endif
> #endif
>
> -- 
> 2.34.1

This looks reasonable to me.

Although, the raw clock_gettime function, which gives nanosecond values 
(although maybe not actual nanosecond precision) probably could have more 
precision than av_gettime_relative which scales the values down to 
microseconds.

// Martin



More information about the ffmpeg-devel mailing list