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

Thomas Guillem thomas at gllm.fr
Thu Aug 22 13:44:50 CEST 2019



On Thu, Aug 22, 2019, at 13:37, Steve Lhomme wrote:
> 
> 
> 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 ?

Will be fixed with VLC_TICK_0.

> 
> >       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
> > 
> _______________________________________________
> 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