23#ifndef LIBVLC_VOUT_CHRONO_H
24#define LIBVLC_VOUT_CHRONO_H
45 chrono->
shift = shift;
46 chrono->
avg = avg_initial;
61 return chrono->
avg + 2 * chrono->
mad;
66 return __MAX(chrono->
avg - 2 * chrono->
mad, 0);
78 chrono->
avg = duration;
static vlc_tick_t vout_chrono_GetHigh(vout_chrono_t *chrono)
Definition chrono.h:59
static void vout_chrono_Start(vout_chrono_t *chrono)
Definition chrono.h:54
static void vout_chrono_Init(vout_chrono_t *chrono, int shift, vlc_tick_t avg_initial)
Definition chrono.h:40
static vlc_tick_t vout_chrono_GetLow(vout_chrono_t *chrono)
Definition chrono.h:64
static void vout_chrono_Stop(vout_chrono_t *chrono)
Definition chrono.h:69
vlc_tick_t vlc_tick_now(void)
Precision monotonic clock.
Definition thread.c:253
unsigned mad_count
Definition chrono.h:35
vlc_tick_t avg
Definition chrono.h:30
vlc_tick_t start
Definition chrono.h:37
int shift
Definition chrono.h:29
vlc_tick_t mad
Definition chrono.h:34
unsigned avg_count
Definition chrono.h:31
int shift_mad
Definition chrono.h:33
#define VLC_TICK_INVALID
Definition vlc_config.h:44
int64_t vlc_tick_t
High precision date or time interval.
Definition vlc_tick.h:48