[FFmpeg-devel] [PATCH 1/3] lavfi: EBU R.128 irregular time

Michael Niedermayer michaelni at gmx.at
Sat Jan 19 03:46:34 CET 2013


On Sat, Jan 19, 2013 at 01:29:50AM +0100, Clément Bœsch wrote:
> On Fri, Jan 18, 2013 at 05:13:10AM +0000, sedacca at comcast.net wrote:
> > Correct the time interval between logged data rows to the expected
> > value of 100 milliseconds by naming a new loop counter variable
> > to be distinct from loop counters for inner loops that
> > inadvertently change the outer loop operation.
> > 
> > This suggested patch is 1 of 3 for Ticket #2144 "libavfilter ebur128
> > loudness inaccuracy, irregular time interval, LFE interference".
> > This suggested patch supersedes the contribution of January 15, 2013
> > in the thread “[PATCH] lavfi: EBU R.128 irreg time, ch weights, skip
> > LFE” which combined multiple fixes in one patch.
> > 
> > 
> > ---
> >  libavfilter/f_ebur128.c |    6 +++---
> >  1 file changed, 3 insertions(+), 3 deletions(-)
> > 
> > diff --git a/libavfilter/f_ebur128.c b/libavfilter/f_ebur128.c
> > index f9da80d..85fddad 100644
> > --- a/libavfilter/f_ebur128.c
> > +++ b/libavfilter/f_ebur128.c
> > @@ -438,7 +438,7 @@ static int gate_update(struct integrator *integ, double power,
> >  
> >  static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *insamples)
> >  {
> > -    int i, ch;
> > +    int i, ch, idx_insample;
> >      AVFilterContext *ctx = inlink->dst;
> >      EBUR128Context *ebur128 = ctx->priv;
> >      const int nb_channels = ebur128->nb_channels;
> > @@ -446,7 +446,7 @@ static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *insamples)
> >      const double *samples = (double *)insamples->data[0];
> >      AVFilterBufferRef *pic = ebur128->outpicref;
> >  
> > -    for (i = 0; i < nb_samples; i++) {
> > +    for (idx_insample = 0; idx_insample < nb_samples; idx_insample++) {
> >          const int bin_id_400  = ebur128->i400.cache_pos;
> >          const int bin_id_3000 = ebur128->i3000.cache_pos;
> >  
> > @@ -505,7 +505,7 @@ static int filter_frame(AVFilterLink *inlink, AVFilterBufferRef *insamples)
> >              double power_400 = 1e-12, power_3000 = 1e-12;
> >              AVFilterLink *outlink = ctx->outputs[0];
> >              const int64_t pts = insamples->pts +
> > -                av_rescale_q(i, (AVRational){ 1, inlink->sample_rate },
> > +                av_rescale_q(idx_insample, (AVRational){ 1, inlink->sample_rate },
> >                               outlink->time_base);
> >  
> >              ebur128->sample_count = 0;
> 
> LGTM, thanks

applied

thanks

[...]

-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

If you think the mosad wants you dead since a long time then you are either
wrong or dead since a long time.
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 198 bytes
Desc: Digital signature
URL: <http://ffmpeg.org/pipermail/ffmpeg-devel/attachments/20130119/d39b4199/attachment.asc>


More information about the ffmpeg-devel mailing list