[vlc-devel] [PATCH 02/13] clock: add SetFirstPcr

Steve Lhomme robux4 at ycbcr.xyz
Thu Aug 22 13:36:58 CEST 2019



On 2019-08-21 16:13, Thomas Guillem wrote:
> Will be used by the future "clock: forward clock update ts" commit.
> ---
>   src/clock/clock.c | 10 ++++++++++
>   src/clock/clock.h |  9 +++++++++
>   2 files changed, 19 insertions(+)
> 
> diff --git a/src/clock/clock.c b/src/clock/clock.c
> index 9cc0c66bb6..de2f2a61b9 100644
> --- a/src/clock/clock.c
> +++ b/src/clock/clock.c
> @@ -53,6 +53,8 @@ struct vlc_clock_main_t
>       clock_point_t ref;
>       vlc_tick_t output_dejitter; /* Delay used to absorb the output clock jitter */
>       vlc_tick_t input_dejitter; /* Delay used to absorb the input jitter */
> +    vlc_tick_t first_pcr;
> +
>       bool abort;
>   };
>   
> @@ -348,6 +350,7 @@ vlc_clock_main_t *vlc_clock_main_New(void)
>       main_clock->pause_date = VLC_TICK_INVALID;
>       main_clock->input_dejitter = DEFAULT_PTS_DELAY;
>       main_clock->output_dejitter = AOUT_MAX_PTS_ADVANCE * 2;
> +    main_clock->first_pcr = 0;

Same thing here, you mean VLC_TS_INVALID ?

>       main_clock->abort = false;
>   
>       AvgInit(&main_clock->coeff_avg, 10);
> @@ -394,6 +397,13 @@ void vlc_clock_main_SetInputDejitter(vlc_clock_main_t *main_clock,
>       vlc_mutex_unlock(&main_clock->lock);
>   }
>   
> +void vlc_clock_main_SetFirstPcr(vlc_clock_main_t *main_clock, vlc_tick_t pcr)
> +{
> +    vlc_mutex_lock(&main_clock->lock);
> +    main_clock->first_pcr = pcr;
> +    vlc_mutex_unlock(&main_clock->lock);
> +}
> +
>   void vlc_clock_main_ChangePause(vlc_clock_main_t *main_clock, vlc_tick_t now,
>                                   bool paused)
>   {
> diff --git a/src/clock/clock.h b/src/clock/clock.h
> index dbfa9dd3d3..b4394dec8e 100644
> --- a/src/clock/clock.h
> +++ b/src/clock/clock.h
> @@ -62,6 +62,15 @@ void vlc_clock_main_SetReferencePoint(vlc_clock_main_t *main_clock,
>   void vlc_clock_main_SetInputDejitter(vlc_clock_main_t *main_clock,
>                                        vlc_tick_t delay);
>   
> +/**
> + * Set the first PCR
> + *
> + * 0 by default, the value stay valid after a reset call, only used as an
> + * informative value. Ts values updated via vlc_clock_Update() will be
> + * substracted from this value before being sent via update callbacks.
> + */
> +void vlc_clock_main_SetFirstPcr(vlc_clock_main_t *main_clock, vlc_tick_t pcr);
> +
>   /**
>    * This function allows changing the pause status.
>    */
> -- 
> 2.20.1
> 
> _______________________________________________
> vlc-devel mailing list
> To unsubscribe or modify your subscription options:
> https://mailman.videolan.org/listinfo/vlc-devel
> 


More information about the vlc-devel mailing list