53 unsigned frame_rate,
unsigned frame_rate_base,
152 unsigned frame_rate,
unsigned frame_rate_base);
vlc_tick_t vlc_clock_Update(vlc_clock_t *clock, vlc_tick_t system_now, vlc_tick_t ts, double rate)
This function will update the clock drift and returns the drift.
Definition: clock.c:476
void vlc_clock_Reset(vlc_clock_t *clock)
This function resets the clock drift.
Definition: clock.c:489
void vlc_clock_main_Delete(vlc_clock_main_t *main_clock)
Destroy the clock main.
Definition: clock.c:470
void vlc_clock_main_Abort(vlc_clock_main_t *main_clock)
Abort all the pending vlc_clock_Wait.
Definition: clock.c:392
vlc_clock_t * vlc_clock_CreateSlave(const vlc_clock_t *clock, enum es_format_category_e cat)
This function creates a new slave vlc_clock_t interface.
Definition: clock.c:614
void(* on_update)(vlc_tick_t system_ts, vlc_tick_t ts, double rate, unsigned frame_rate, unsigned frame_rate_base, void *data)
Called when a clock is updated.
Definition: clock.h:52
void vlc_clock_main_ChangePause(vlc_clock_main_t *clock, vlc_tick_t system_now, bool paused)
This function allows changing the pause status.
Definition: clock.c:440
void vlc_clock_main_SetMaster(vlc_clock_main_t *main_clock, vlc_clock_t *clock)
This function set the allocated interface as the master making the current master if any a slave...
Definition: clock.c:620
vlc_clock_main_t * vlc_clock_main_New(void)
This function creates the vlc_clock_main_t of the program.
Definition: clock.c:359
vlc_clock_t * vlc_clock_main_CreateMaster(vlc_clock_main_t *main_clock, const struct vlc_clock_cbs *cbs, void *cbs_data)
This function creates a new master vlc_clock_t interface.
Definition: clock.c:556
vlc_tick_t vlc_clock_SetDelay(vlc_clock_t *clock, vlc_tick_t ts_delay)
This functions change the clock delay.
Definition: clock.c:494
es_format_category_e
ES Categories.
Definition: vlc_es.h:600
int64_t vlc_tick_t
High precision date or time interval.
Definition: vlc_tick.h:45
void vlc_clock_ConvertArrayToSystem(vlc_clock_t *clock, vlc_tick_t system_now, vlc_tick_t *ts_array, size_t ts_count, double rate)
This functon converts an array of timestamp from stream to system.
Definition: clock.c:509
void vlc_clock_main_SetDejitter(vlc_clock_main_t *main_clock, vlc_tick_t dejitter)
This function sets the dejitter delay to absorb the clock jitter.
Definition: clock.c:432
int vlc_clock_Wait(vlc_clock_t *clock, vlc_tick_t system_now, vlc_tick_t ts, double rate, vlc_tick_t max_duration)
Wait for a timestamp expressed in stream time.
Definition: clock.c:333
void vlc_clock_main_SetInputDejitter(vlc_clock_main_t *main_clock, vlc_tick_t delay)
Definition: clock.c:424
Callbacks for the owner of the main clock.
Definition: clock.h:36
vlc_tick_t vlc_clock_ConvertToSystem(vlc_clock_t *clock, vlc_tick_t system_now, vlc_tick_t ts, double rate)
This function converts a timestamp from stream to system.
Definition: clock.c:499
vlc_clock_master_source
Definition: clock.h:23
void vlc_clock_Delete(vlc_clock_t *clock)
This function free the resources allocated by vlc_clock*Create*()
Definition: clock.c:634
vlc_clock_t * vlc_clock_main_CreateSlave(vlc_clock_main_t *main_clock, enum es_format_category_e cat, const struct vlc_clock_cbs *cbs, void *cbs_data)
This function creates a new slave vlc_clock_t interface.
Definition: clock.c:579
vlc_tick_t vlc_clock_UpdateVideo(vlc_clock_t *clock, vlc_tick_t system_now, vlc_tick_t ts, double rate, unsigned frame_rate, unsigned frame_rate_base)
This function will update the video clock drift and returns the drift.
Definition: clock.c:482
void vlc_clock_main_SetFirstPcr(vlc_clock_main_t *main_clock, vlc_tick_t system_now, vlc_tick_t ts)
Definition: clock.c:410
void vlc_clock_main_Reset(vlc_clock_main_t *main_clock)
Reset the vlc_clock_main_t.
Definition: clock.c:401