On Tue, Jul 9, 2019 at 7:42 PM Pavel Pilar <pilar...@centrum.cz> wrote:
>
> ---
>  libavformat/hlsenc.c | 12 +++++++-----
>  1 file changed, 7 insertions(+), 5 deletions(-)
>
> diff --git a/libavformat/hlsenc.c b/libavformat/hlsenc.c
> index 00c725af18..94fd713834 100644
> --- a/libavformat/hlsenc.c
> +++ b/libavformat/hlsenc.c
> @@ -2653,6 +2653,9 @@ static int hls_init(AVFormatContext *s)
>      char *p = NULL;
>      int vtt_basename_size = 0;
>      int fmp4_init_filename_len = strlen(hls->fmp4_init_filename) + 1;
> +#ifdef _POSIX_TIMERS
> +    struct timespec now_accurate;
> +#endif
>
>      hls->has_default_key = 0;
>      hls->has_video_m3u8 = 0;
> @@ -2742,14 +2745,13 @@ static int hls_init(AVFormatContext *s)
>          }
>
>          if (hls->flags & HLS_PROGRAM_DATE_TIME) {
> -#ifdef _POSIX_TIMERS
> -            struct timespec now0;
> -            clock_gettime(CLOCK_MONOTONIC, &now0);
> -            vs->initial_prog_date_time = now0.tv_sec + now0.tv_nsec / 1e9;
> -#else
>              time_t now0;
>              time(&now0);
>              vs->initial_prog_date_time = now0;
> +#ifdef _POSIX_TIMERS
> +            if (clock_gettime(CLOCK_REALTIME, &now_accurate) == 0) {
> +                vs->initial_prog_date_time = now_accurate.tv_sec + 
> now_accurate.tv_nsec / 1e9;
> +            }
>  #endif
>          }
>          if (hls->format_options_str) {
> --
> 2.17.1
As my comments before, av_gettime or av_gettime_relative can be used
in this case,
these functions better handle cross-platform issues like check #ifdef
_POSIX_TIMERS
_______________________________________________
ffmpeg-devel mailing list
ffmpeg-devel@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

To unsubscribe, visit link above, or email
ffmpeg-devel-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to