[FFmpeg-soc] [soc]: r908 - eac3/eac3_parser.c

Bill Crowley bc at wlca.com
Fri Aug 17 14:37:39 CEST 2007


Hi All,

I've been successful in compiling every update of the eac3 work
until this morning; I received the following error with eac3_parser.c:

eac3_parser.c: In function ‘ff_eac3_parse_bsi’:
eac3_parser.c:134: error: ‘AC_ACMOD_DUALMONO’ undeclared (first use in 
this function)
eac3_parser.c:134: error: (Each undeclared identifier is reported only once
eac3_parser.c:134: error: for each function it appears in.)
make[1]: *** [eac3_parser.o] Error 1
make[1]: Leaving directory `/test/soc/eac3/ffmpeg/libavcodec'
make: *** [lib] Error 2

Cheers,
WLC.

bwolowiec wrote:
> Author: bwolowiec
> Date: Fri Aug 17 14:13:05 2007
> New Revision: 908
>
> Log:
> cosmetics
>
>
> Modified:
>    eac3/eac3_parser.c
>
> Modified: eac3/eac3_parser.c
> ==============================================================================
> --- eac3/eac3_parser.c	(original)
> +++ eac3/eac3_parser.c	Fri Aug 17 14:13:05 2007
> @@ -59,7 +59,7 @@ int ff_eac3_parse_bsi(GetBitContext *gbc
>      GET_BITS(s->fscod, gbc, 2);
>      if(s->fscod == 0x3)
>      {
> -        av_log(s->avctx, AV_LOG_ERROR, "NOT IMPLEMENTED");
> +        av_log(s->avctx, AV_LOG_ERROR, "Reduced Sampling Rates NOT IMPLEMENTED");
>          return -1;
>  #if 0
>          GET_BITS(s->fscod2, gbc, 2);
> @@ -104,7 +104,7 @@ int ff_eac3_parse_bsi(GetBitContext *gbc
>          if(get_bits1(gbc)) {
>              GET_BITS(s->chanmap, gbc, 16);
>          }else{
> -            //TODO default channel map
> +            //TODO default channel map based on acmod and lfeon
>          }
>      }
>      GET_BITS(s->mixmdate, gbc, 1);
> @@ -131,7 +131,7 @@ int ff_eac3_parse_bsi(GetBitContext *gbc
>                  GET_BITS(s->lfemixlevcod, gbc, 5);
>              }
>          }
> -        if(s->strmtyp == 0x0) /* if independent stream */
> +        if(s->strmtyp == AC_ACMOD_DUALMONO) /* if independent stream */
>          {
>              for(i = 0; i < (s->acmod?1:2); i++){
>                  if(get_bits1(gbc)) {
> @@ -169,15 +169,14 @@ int ff_eac3_parse_bsi(GetBitContext *gbc
>              if(s->frmmixcfginfoe) /* mixing configuration information */
>              {
>                  if(s->numblkscod == 0x0) {
> -                    GET_BITS(s->blkmixcfginfo0, gbc, 5);
> +                    GET_BITS(s->blkmixcfginfo[0], gbc, 5);
>                  }
>                  else
>                  {
>                      for(blk = 0; blk < ff_eac3_blocks[s->numblkscod]; blk++)
>                      {
> -                        GET_BITS(s->blkmixcfginfoe, gbc, 1);
> -                        if(s->blkmixcfginfoe){
> -                            GET_BITS(s->blkmixcfginfoblk, gbc, 5);
> +                        if(get_bits1(gbc)){
> +                            GET_BITS(s->blkmixcfginfo[blk], gbc, 5);
>                          }
>                      }
>                  }
> @@ -191,7 +190,7 @@ int ff_eac3_parse_bsi(GetBitContext *gbc
>  
>          GET_BITS(s->copyrightb, gbc, 1);
>          GET_BITS(s->origbs, gbc, 1);
> -        if(s->acmod == 0x2) /* if in 2/0 mode */
> +        if(s->acmod == AC3_ACMOD_STEREO) /* if in 2/0 mode */
>          {
>              GET_BITS(s->dsurmod, gbc, 2);
>              GET_BITS(s->dheadphonmod, gbc, 2);
> @@ -237,72 +236,69 @@ int ff_eac3_parse_bsi(GetBitContext *gbc
>  int ff_eac3_parse_audfrm(GetBitContext *gbc, EAC3Context *s){
>      int blk, ch;
>  
> -    /* These fields for audio frame exist flags and strategy data */
> +    /* Audio frame exist flags and strategy data */
>      if(s->numblkscod == 0x3) /* six blocks per frame */
>      {
> +        /* LUT-based exponent strategy syntax */
>          GET_BITS(s->expstre, gbc, 1);
>          GET_BITS(s->ahte, gbc, 1);
>      }
>      else
>      {
> +        /* AC-3 style exponent strategy syntax */
>          s->expstre = 1;
>          s->ahte = 0;
>      }
>      GET_BITS(s->snroffststr, gbc, 2);
>      GET_BITS(s->transproce, gbc, 1);
>      GET_BITS(s->blkswe, gbc, 1);
> -
>      if(!s->blkswe){
>          for(ch = 1; ch <= s->nfchans; ch++)
>              s->blksw[ch] = 0;
>      }
> -
>      GET_BITS(s->dithflage, gbc, 1);
> -
>      if(!s->dithflage){
>          for(ch = 1; ch <= s->nfchans; ch++)
>              s->dithflag[ch] = 1; /* dither on */
>      }
>      s->dithflag[CPL_CH] = s->dithflag[s->lfe_channel] = 0;
>  
> +    /* frame-based syntax flags */
>      GET_BITS(s->bamode, gbc, 1);
>      GET_BITS(s->frmfgaincode, gbc, 1);
>      GET_BITS(s->dbaflde, gbc, 1);
>      GET_BITS(s->skipflde, gbc, 1);
>      GET_BITS(s->spxattene, gbc, 1);
> -    /* These fields for coupling data */
> +    /* Coupling data */
>      if(s->acmod > 0x1)
>      {
>          s->cplstre[0] = 1;
>          GET_BITS(s->cplinu[0], gbc, 1);
> +        s->ncplblks = s->cplinu[0];
>          for(blk = 1; blk < ff_eac3_blocks[s->numblkscod]; blk++)
>          {
>              GET_BITS(s->cplstre[blk], gbc, 1);
>  
> -            if(s->cplstre[blk] == 1) {
> +            if(s->cplstre[blk]) {
>                  GET_BITS(s->cplinu[blk], gbc, 1);
>              }
>              else {
>                  s->cplinu[blk] = s->cplinu[blk-1];
>              }
> +            s->ncplblks += s->cplinu[blk];
>          }
>      }
>      else
>      {
> -        for(blk = 0; blk < ff_eac3_blocks[s->numblkscod]; blk++) {
> -            s->cplinu[blk] = 0;
> -        }
> +        memset(s->cplinu, 0, sizeof(int) * ff_eac3_blocks[s->numblkscod]);
> +        s->ncplblks = 0;
>      }
>  
> -    // calculate number of coupling blocks
> -    s->ncplblks = 0;
> -    for(blk = 0; blk < ff_eac3_blocks[s->numblkscod]; blk++) {
> -        s->ncplblks += s->cplinu[blk];
> -    }
>  
> -    /* These fields for exponent strategy data */
> +    /* Exponent strategy data */
>      if(s->expstre)
>      {
> +        /* AC-3 style exponent strategy syntax */
>          for(blk = 0; blk < ff_eac3_blocks[s->numblkscod]; blk++)
>          {
>              for(ch = !s->cplinu[blk]; ch <= s->nfchans; ch++) {
> @@ -312,6 +308,7 @@ int ff_eac3_parse_audfrm(GetBitContext *
>      }
>      else
>      {
> +        /* LUT-based exponent strategy syntax */
>          int frmchexpstr;
>          /* cplexpstr[blk] and chexpstr[blk][ch] derived from table lookups. see Table E2.14 */
>          for(ch = !((s->acmod > 0x1) && (s->ncplblks > 0)); ch <= s->nfchans; ch++) {
> @@ -321,13 +318,14 @@ int ff_eac3_parse_audfrm(GetBitContext *
>              }
>          }
>      }
> +    /* LFE exponent strategy */
>      if(s->lfeon)
>      {
>          for(blk = 0; blk < ff_eac3_blocks[s->numblkscod]; blk++) {
>              GET_BITS(s->chexpstr[blk][s->lfe_channel], gbc, 1);
>          }
>      }
> -    /* These fields for converter exponent strategy data */
> +    /* Converter exponent strategy data */
>      if(s->strmtyp == 0x0)
>      {
>          if(s->numblkscod == 0x3 || get_bits1(gbc)){
> @@ -336,39 +334,40 @@ int ff_eac3_parse_audfrm(GetBitContext *
>              }
>          }
>      }
> -    /* These fields for AHT data */
> +    /* AHT data */
>      if(s->ahte)
>      {
>          //Now turned off, because there are no samples for testing it.
> -#if 0
> -        /* AHT is only available in 6 block mode (numblkscod ==0x3) */
> -        /* coupling can use AHT only when coupling in use for all blocks */
> -        /* ncplregs derived from cplstre and cplexpstr - see Section E3.3.2 */
> -        int nchregs;
> -        s->chahtinu[CPL_CH]=0;
> -        for(ch = (s->ncplblks!=6); ch <= s->nfchans+s->lfeon; ch++){
> -            nchregs = 0;
> -            for(blk = 0; blk < 6; blk++)
> -                nchregs += (s->chexpstr[blk][ch] != EXP_REUSE);
> -            s->chahtinu[ch] = (nchregs == 1) && get_bits1(gbc);
> -        }
> -#else
>          av_log(s->avctx, AV_LOG_ERROR, "AHT NOT IMPLEMENTED");
>          return -1;
> +#if 0
> +        {
> +            /* AHT is only available in 6 block mode (numblkscod ==0x3) */
> +            /* coupling can use AHT only when coupling in use for all blocks */
> +            /* ncplregs derived from cplstre and cplexpstr - see Section E3.3.2 */
> +            int nchregs;
> +            s->chahtinu[CPL_CH]=0;
> +            for(ch = (s->ncplblks!=6); ch <= s->ntchans; ch++){
> +                nchregs = 0;
> +                for(blk = 0; blk < 6; blk++)
> +                    nchregs += (s->chexpstr[blk][ch] != EXP_REUSE);
> +                s->chahtinu[ch] = (nchregs == 1) && get_bits1(gbc);
> +            }
> +        }
>  #endif
>      }else{
> -        for(ch=!s->cplinu[blk]; ch<=s->nfchans+s->lfeon; ch++)
> +        for(ch=!s->cplinu[blk]; ch<=s->ntchans; ch++)
>              s->chahtinu[ch] = 0;
>      }
> -    /* These fields for audio frame SNR offset data */
> +    /* Audio frame SNR offset data */
>      if(s->snroffststr == 0x0)
>      {
>          int csnroffst = (get_bits(gbc, 6) - 15) << 4;
>          int snroffst = (csnroffst + get_bits(gbc, 4)) << 2;
> -        for(ch=!s->cplinu[blk]; ch<= s->nfchans+s->lfeon; ch++)
> +        for(ch=!s->cplinu[blk]; ch<= s->ntchans; ch++)
>              s->snroffst[ch] = snroffst;
>      }
> -    /* These fields for audio frame transient pre-noise processing data */
> +    /* Audio frame transient pre-noise processing data */
>      if(s->transproce)
>      {
>          av_log(s->avctx, AV_LOG_ERROR, "transient pre-noise processing NOT IMPLEMENTED\n");
> @@ -385,7 +384,7 @@ int ff_eac3_parse_audfrm(GetBitContext *
>          }
>  #endif
>      }
> -    /* These fields for spectral extension attenuation data */
> +    /* Spectral extension attenuation data */
>      if(s->spxattene)
>      {
>          for(ch = 1; ch <= s->nfchans; ch++)
> @@ -400,7 +399,7 @@ int ff_eac3_parse_audfrm(GetBitContext *
>          for(ch = 1; ch <= s->nfchans; ch++)
>              s->chinspxatten[ch]=0;
>      }
> -    /* These fields for block start information */
> +    /* Block start information */
>      if (s->numblkscod != 0x0) {
>          GET_BITS(s->blkstrtinfoe, gbc, 1);
>      }
> @@ -411,13 +410,13 @@ int ff_eac3_parse_audfrm(GetBitContext *
>      {
>          /* nblkstrtbits determined from frmsiz (see Section E2.3.2.27) */
>          // nblkstrtbits = (numblks - 1) * (4 + ceiling (log2 (words_per_frame)))
> -        // where numblks is derived from the numblkscod in Table E2.15 <- TODO ???
> +        // where numblks is derived from the numblkscod in Table E2.9
>          // words_per_frame = frmsiz + 1
>          int nblkstrtbits = (ff_eac3_blocks[s->numblkscod]-1) * (4 + (av_log2(s->frmsiz-1)+1) );
>          av_log(s->avctx, AV_LOG_INFO, "nblkstrtbits = %i\n", nblkstrtbits);
>          GET_BITS(s->blkstrtinfo, gbc, nblkstrtbits);
>      }
> -    /* These fields for syntax state initialization */
> +    /* Syntax state initialization */
>      for(ch = 1; ch <= s->nfchans; ch++)
>      {
>          s->firstspxcos[ch] = 1;
> @@ -436,7 +435,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>  
>      m.b1ptr = m.b2ptr = m.b4ptr = 3;
>  
> -    /* These fields for block switch and dither flags */
> +    /* Block switch and dither flags */
>      if(s->blkswe)
>      {
>          for(ch = 1; ch <= s->nfchans; ch++) {
> @@ -449,7 +448,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>              GET_BITS(s->dithflag[ch], gbc, 1);
>          }
>      }
> -    /* These fields for dynamic range control */
> +    /* Dynamic range control */
>  
>      for(i = 0; i < (s->acmod?1:2); i++){
>          GET_BITS(s->dynrnge[i], gbc, 1);
> @@ -461,14 +460,14 @@ int ff_eac3_parse_audblk(GetBitContext *
>              }
>          }
>      }
> -    /* These fields for spectral extension strategy information */
> +    /* Spectral extension strategy information */
>      if((!blk) || get_bits1(gbc))
>      {
>          GET_BITS(s->spxinu, gbc, 1);
>          if(s->spxinu)
>          {
>              av_log(s->avctx, AV_LOG_INFO, "Spectral extension in use\n");
> -            if(s->acmod == 0x1)
> +            if(s->acmod == AC3_ACMOD_MONO)
>              {
>                  s->chinspx[1] = 1;
>              }
> @@ -519,7 +518,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>              s->spxbndsztab[0] = 12;
>              for (bnd = s->spxbegf+1; bnd < s->spxendf; bnd ++)
>              {
> -                if (s->spxbndstrc[bnd] == 0)
> +                if (!s->spxbndstrc[bnd])
>                  {
>                      s->spxbndsztab[s->nspxbnds] = 12;
>                      s->nspxbnds++;
> @@ -545,7 +544,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>      }
>  
>  
> -    /* These fields for spectral extension coordinates */
> +    /* Spectral extension coordinates */
>      if(s->spxinu)
>      {
>          for(ch = 1; ch <= s->nfchans; ch++)
> @@ -590,14 +589,13 @@ int ff_eac3_parse_audblk(GetBitContext *
>              }
>          }
>      }
> -    /* These fields for coupling strategy and enhanced coupling strategy information */
> +    /* Coupling strategy and enhanced coupling strategy information */
>      if(s->cplstre[blk])
>      {
>          if (s->cplinu[blk])
>          {
>              GET_BITS(s->ecplinu, gbc, 1);
> -            assert(!s->ecplinu && "TODO");
> -            if (s->acmod == 0x2)
> +            if (s->acmod == AC3_ACMOD_STEREO)
>              {
>                  s->chincpl[1] = 1;
>                  s->chincpl[2] = 1;
> @@ -608,16 +606,16 @@ int ff_eac3_parse_audblk(GetBitContext *
>                      GET_BITS(s->chincpl[ch], gbc, 1);
>                  }
>              }
> -            if (s->ecplinu == 0) /* standard coupling in use */
> +            if (!s->ecplinu) /* standard coupling in use */
>              {
> -                if(s->acmod == 0x2) /* if in 2/0 mode */ {
> +                if(s->acmod == AC3_ACMOD_STEREO) /* if in 2/0 mode */ {
>                      GET_BITS(s->phsflginu, gbc, 1);
>                  }
>                  GET_BITS(s->cplbegf, gbc, 4);
> -                if (s->spxinu == 0) /* if SPX not in use */
> +                if (!s->spxinu) /* if SPX not in use */
>                  {
>                      GET_BITS(s->cplendf, gbc, 4);
> -                    s->cplendf = s->cplendf + 3;
> +                    s->cplendf += 3;
>                  }
>                  else /* SPX in use */
>                  {
> @@ -625,7 +623,6 @@ int ff_eac3_parse_audblk(GetBitContext *
>                  }
>  
>                  av_log(s->avctx, AV_LOG_DEBUG, "cplbegf=%i cplendf=%i\n", s->cplbegf, s->cplendf);
> -                // calc
>                  s->strtmant[CPL_CH] = 37 + (12 * s->cplbegf);
>                  s->endmant[CPL_CH] = 37 + (12 * s->cplendf);
>                  if(s->strtmant[CPL_CH] > s->endmant[CPL_CH]){
> @@ -643,17 +640,15 @@ int ff_eac3_parse_audblk(GetBitContext *
>                      for(bnd = 0; bnd < 18; bnd++)
>                          s->cplbndstrc[bnd] = ff_eac3_defcplbndstrc[bnd];
>                  }
> -                //TODO calc ncplsubnd ?
>                  s->ncplsubnd =  s->cplendf - s->cplbegf;
>                  s->ncplbnd = s->ncplsubnd;
> -                assert(!s->cplbndstrc[0]);
>                  for(bnd = s->cplbegf+1; bnd < s->cplendf; bnd++){
>                      s->ncplbnd -= s->cplbndstrc[bnd];
>                  }
>              }
>              else /* enhanced coupling in use */
>              {
> -                av_log(s->avctx, AV_LOG_ERROR,  "enhanced couplin NOT IMPLEMENTED");
> +                av_log(s->avctx, AV_LOG_ERROR,  "enhanced coupling NOT IMPLEMENTED");
>                  return -1;
>  #if 0
>                  GET_BITS(s->ecplbegf, gbc, 4);
> @@ -666,7 +661,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>                  else {
>                      s->ecpl_start_subbnd = s->ecplbegf * 2 - 10;
>                  }
> -                if (s->spxinu == 0) /* if SPX not in use */
> +                if (!s->spxinu) /* if SPX not in use */
>                  {
>                      GET_BITS(s->ecplendf, gbc, 4);
>                      s->ecpl_end_subbnd = s->ecplendf + 7;
> @@ -691,7 +686,6 @@ int ff_eac3_parse_audblk(GetBitContext *
>                  }
>                  //necplbnd = ecpl_end_subbnd - ecpl_start_subbnd;
>                  //necplbnd -= ecplbndstrc[ecpl_start_subbnd] + ... + ecplbndstrc[ecpl_end_subbnd -1]
> -                // CALC
>                  s->necplbnd = s->ecpl_end_subbnd - s->ecpl_start_subbnd;
>                  for(bnd=s->ecpl_start_subbnd; bnd<s->ecpl_end_subbnd; bnd++){
>                      s->necplbnd -= s->ecplbndstrc[bnd];
> @@ -712,12 +706,12 @@ int ff_eac3_parse_audblk(GetBitContext *
>              s->ecplinu = 0;
>          }
>      } /* cplstre[blk] */
> -    /* These fields for coupling coordinates */
> +    /* Coupling coordinates */
>      if(s->cplinu[blk])
>      {
>  //        av_log(s->avctx, AV_LOG_INFO, "NOT TESTED CPLINU\n");
>  
> -        if(s->ecplinu == 0) /* standard coupling in use */
> +        if(!s->ecplinu) /* standard coupling in use */
>          {
>              for(ch = 1; ch <= s->nfchans; ch++)
>              {
> @@ -760,7 +754,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>                      s->firstcplcos[ch] = 1;
>                  }
>              } /* ch */
> -            if((s->acmod == 0x2) && s->phsflginu && (s->cplcoe[1] || s->cplcoe[2]))
> +            if((s->acmod == AC3_ACMOD_STEREO) && s->phsflginu && (s->cplcoe[1] || s->cplcoe[2]))
>              {
>                  for(bnd = 0; bnd < s->ncplbnd; bnd++) {
>                      GET_BITS(s->phsflg[bnd], gbc, 1);
> @@ -828,10 +822,10 @@ int ff_eac3_parse_audblk(GetBitContext *
>  #endif
>          } /* ecplinu[blk] */
>      } /* cplinu[blk] */
> -    /* These fields for rematrixing operation in the 2/0 mode */
> -    if(s->acmod == 0x2) /* if in 2/0 mode */
> +    /* Rematrixing operation in the 2/0 mode */
> +    if(s->acmod == AC3_ACMOD_STEREO) /* if in 2/0 mode */
>      {
> -        if (blk == 0 || get_bits1(gbc)) {
> +        if (!blk || get_bits1(gbc)) {
>              s->rematstr = 1;
>          }
>          if(s->rematstr)
> @@ -874,7 +868,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>          }
>      }
>  
> -    /* These fields for exponents */
> +    /* Exponents */
>      if(s->cplinu[blk]) /* exponents for the coupling channel */
>      {
>          if(s->chexpstr[blk][CPL_CH] != EXP_REUSE)
> @@ -925,7 +919,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>                      s->dexps[s->lfe_channel][0], s->dexps[s->lfe_channel] + 1);
>          }
>      }
> -    /* These fields for bit-allocation parametric information */
> +    /* Bit-allocation parametric information */
>      if(s->bamode)
>      {
>          GET_BITS(s->baie, gbc, 1);
> @@ -937,18 +931,18 @@ int ff_eac3_parse_audblk(GetBitContext *
>          {
>              s->bit_alloc_params.sdecay = ff_sdecaytab[get_bits(gbc, 2)];   /* Table 7.6 */
>              s->bit_alloc_params.fdecay = ff_fdecaytab[get_bits(gbc, 2)];   /* Table 7.7 */
> -            s->bit_alloc_params.sgain = ff_sgaintab[get_bits(gbc, 2)];     /* Table 7.8 */
> +            s->bit_alloc_params.sgain  = ff_sgaintab [get_bits(gbc, 2)];   /* Table 7.8 */
>              s->bit_alloc_params.dbknee = ff_dbkneetab[get_bits(gbc, 2)];   /* Table 7.9 */
> -            s->bit_alloc_params.floor = ff_floortab[get_bits(gbc, 3)];     /* Table 7.10 */
> +            s->bit_alloc_params.floor  = ff_floortab [get_bits(gbc, 3)];   /* Table 7.10 */
>          }
>      }
>      else
>      {
>          s->bit_alloc_params.sdecay = ff_sdecaytab[0x2];   /* Table 7.6 */
>          s->bit_alloc_params.fdecay = ff_fdecaytab[0x1];   /* Table 7.7 */
> -        s->bit_alloc_params.sgain = ff_sgaintab[0x1];     /* Table 7.8 */
> +        s->bit_alloc_params.sgain  = ff_sgaintab[0x1];    /* Table 7.8 */
>          s->bit_alloc_params.dbknee = ff_dbkneetab[0x2];   /* Table 7.9 */
> -        s->bit_alloc_params.floor = ff_floortab[0x7];     /* Table 7.10 */
> +        s->bit_alloc_params.floor  = ff_floortab[0x7];    /* Table 7.10 */
>      }
>  
>      if(s->snroffststr != 0x0){
> @@ -957,24 +951,24 @@ int ff_eac3_parse_audblk(GetBitContext *
>              int csnroffst = (get_bits(gbc, 6) - 15) << 4;
>              if(s->snroffststr == 0x1){
>                  int snroffst = (csnroffst + get_bits(gbc, 4)) << 2;
> -                for(ch=!s->cplinu[blk]; ch<= s->nfchans+s->lfeon; ch++)
> +                for(ch=!s->cplinu[blk]; ch<= s->ntchans; ch++)
>                      s->snroffst[ch] = snroffst;
>              }
>              else if(s->snroffststr == 0x2){
> -                for(ch=!s->cplinu[blk]; ch<= s->nfchans+s->lfeon; ch++)
> +                for(ch=!s->cplinu[blk]; ch<= s->ntchans; ch++)
>                      s->snroffst[ch] = (csnroffst + get_bits(gbc, 4)) << 2;
>              }
>          }
>      }
>  
>      if(s->frmfgaincode && get_bits1(gbc)) {
> -        for(ch = !s->cplinu[blk]; ch <= s->nfchans+s->lfeon; ch++)
> +        for(ch = !s->cplinu[blk]; ch <= s->ntchans; ch++)
>              s->fgain[ch] = ff_fgaintab[get_bits(gbc, 3)];
>      }
>      else
>      {
>          if(!blk){
> -            for(ch = !s->cplinu[blk]; ch <= s->nfchans+s->lfeon; ch++)
> +            for(ch = !s->cplinu[blk]; ch <= s->ntchans; ch++)
>                  s->fgain[ch] = ff_fgaintab[0x4];
>          }
>      }
> @@ -1024,14 +1018,14 @@ int ff_eac3_parse_audblk(GetBitContext *
>      }
>      else{
>          if(!blk){
> -            for(ch=0; ch<=s->nfchans+s->lfeon; ch++){
> +            for(ch=0; ch<=s->ntchans; ch++){
>                  s->deltbae[ch] = DBA_NONE;
>              }
>          }
>      }
>  
>  
> -    /* These fields for inclusion of unused dummy data */
> +    /* Inclusion of unused dummy data */
>      if(s->skipflde)
>      {
>          if(get_bits1(gbc)){
> @@ -1041,7 +1035,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>      }
>  
>      /* run bit allocation */
> -    for(ch = !s->cplinu[blk]; ch<=s->nfchans+s->lfeon; ch++) {
> +    for(ch = !s->cplinu[blk]; ch<=s->ntchans; ch++) {
>          int start=0, end=0;
>          start = s->strtmant[ch];
>          end = s->endmant[ch];
> @@ -1070,14 +1064,14 @@ int ff_eac3_parse_audblk(GetBitContext *
>      }
>  
>  
> -    /* These fields for quantized mantissa values */
>  
>      got_cplchan = 0;
>  
>      // TODO only for debug
> -    for(ch=0; ch<=s->nfchans+s->lfeon; ch++)
> +    for(ch=0; ch<=s->ntchans; ch++)
>          memset(s->transform_coeffs[ch], 0, 256*sizeof(float));
>  
> +    /* Quantized mantissa values */
>      for(ch = 1; ch <= s->nfchans; ch++)
>      {
>          get_eac3_transform_coeffs_ch(gbc, s, blk, ch, &m);
> @@ -1106,7 +1100,7 @@ int ff_eac3_parse_audblk(GetBitContext *
>              for(bnd=0; bnd<s->ncplbnd; bnd++) {
>                  do {
>                      for(j=0; j<12; j++) {
> -                        for(ch=1; ch<=s->nfchans; ch++) {// TODO lfe?
> +                        for(ch=1; ch<=s->nfchans; ch++) {
>                              if(s->chincpl[ch]) {
>                                  s->transform_coeffs[ch][i] =
>                                      s->transform_coeffs[CPL_CH][i] *
> _______________________________________________
> FFmpeg-soc mailing list
> FFmpeg-soc at mplayerhq.hu
> http://lists.mplayerhq.hu/mailman/listinfo/ffmpeg-soc
>
>   




More information about the FFmpeg-soc mailing list