[FFmpeg-cvslog] r20256 - trunk/libavcodec/alacenc.c

Jai Menon jmenon86
Sat Oct 17 09:48:15 CEST 2009


On Fri, Oct 16, 2009 at 04:49:30PM -0400, Justin Ruggles wrote:
> jai_menon wrote:
> 
> > Author: jai_menon
> > Date: Fri Oct 16 18:50:15 2009
> > New Revision: 20256
> > 
> > Log:
> > alacenc : Do not default to the fixed coefficient mode.
> > 
> > Modified:
> >    trunk/libavcodec/alacenc.c
> > 
> > Modified: trunk/libavcodec/alacenc.c
> > ==============================================================================
> > --- trunk/libavcodec/alacenc.c	Fri Oct 16 18:12:04 2009	(r20255)
> > +++ trunk/libavcodec/alacenc.c	Fri Oct 16 18:50:15 2009	(r20256)
> > @@ -132,7 +132,16 @@ static void calc_predictor_params(AlacEn
> >      int shift[MAX_LPC_ORDER];
> >      int opt_order;
> >  
> > -    if (s->avctx->compression_level > 1) {
> > +    if (s->avctx->compression_level == 1) {
> > +        s->lpc[ch].lpc_order = 6;
> > +        s->lpc[ch].lpc_quant = 6;
> > +        s->lpc[ch].lpc_coeff[0] =  160;
> > +        s->lpc[ch].lpc_coeff[1] = -190;
> > +        s->lpc[ch].lpc_coeff[2] =  170;
> > +        s->lpc[ch].lpc_coeff[3] = -130;
> > +        s->lpc[ch].lpc_coeff[4] =   80;
> > +        s->lpc[ch].lpc_coeff[5] =  -25;
> > +    } else {
> >          opt_order = ff_lpc_calc_coefs(&s->dspctx, s->sample_buf[ch],
> >                                        s->avctx->frame_size,
> >                                        s->min_prediction_order,
> > @@ -143,15 +152,6 @@ static void calc_predictor_params(AlacEn
> >          s->lpc[ch].lpc_order = opt_order;
> >          s->lpc[ch].lpc_quant = shift[opt_order-1];
> >          memcpy(s->lpc[ch].lpc_coeff, coefs[opt_order-1], opt_order*sizeof(int));
> > -    } else {
> > -        s->lpc[ch].lpc_order = 6;
> > -        s->lpc[ch].lpc_quant = 6;
> > -        s->lpc[ch].lpc_coeff[0] =  160;
> > -        s->lpc[ch].lpc_coeff[1] = -190;
> > -        s->lpc[ch].lpc_coeff[2] =  170;
> > -        s->lpc[ch].lpc_coeff[3] = -130;
> > -        s->lpc[ch].lpc_coeff[4] =   80;
> > -        s->lpc[ch].lpc_coeff[5] =  -25;
> >      }
> >  }
> 
> how does this change anything?  level 0 never gets to this point.  and
> level 2 is the default.  not that I disagree with reshuffling the code,
> but it does not seem to match up with the commit log text.

Yeah, I'll change it. The problem, as i now realize, is that the compression
level stored in the private context is 2 but we instead use the avctx
one which is -1 by default. I'll reword the commit log and modify it
to use s->compression_level instead.
Thanks.

-- 
Jai Menon




More information about the ffmpeg-cvslog mailing list