Browse Source

use array instead of bitmask

Originally committed as revision 9891 to svn://svn.ffmpeg.org/ffmpeg/trunk
tags/v0.5
Justin Ruggles 18 years ago
parent
commit
6d96d626c6
1 changed files with 3 additions and 4 deletions
  1. +3
    -4
      libavcodec/ac3dec.c

+ 3
- 4
libavcodec/ac3dec.c View File

@@ -100,7 +100,7 @@ typedef struct {
int chincpl[AC3_MAX_CHANNELS]; int chincpl[AC3_MAX_CHANNELS];
int phsflginu; int phsflginu;
int cplcoe; int cplcoe;
uint32_t cplbndstrc;
int cplbndstrc[18];
int rematstr; int rematstr;
int nrematbnd; int nrematbnd;
int rematflg[AC3_MAX_CHANNELS]; int rematflg[AC3_MAX_CHANNELS];
@@ -413,7 +413,7 @@ static void uncouple_channels(AC3DecodeContext *ctx)
} }
i++; i++;
} }
} while((ctx->cplbndstrc >> subbnd) & 1);
} while(ctx->cplbndstrc[subbnd]);
} }
} }


@@ -730,7 +730,6 @@ static int ac3_parse_audio_block(AC3DecodeContext *ctx, int blk)


if (get_bits1(gb)) { /* coupling strategy */ if (get_bits1(gb)) { /* coupling strategy */
ctx->cplinu = get_bits1(gb); ctx->cplinu = get_bits1(gb);
ctx->cplbndstrc = 0;
if (ctx->cplinu) { /* coupling in use */ if (ctx->cplinu) { /* coupling in use */
int cplbegf, cplendf; int cplbegf, cplendf;


@@ -753,7 +752,7 @@ static int ac3_parse_audio_block(AC3DecodeContext *ctx, int blk)
ctx->cplendmant = cplendf * 12 + 73; ctx->cplendmant = cplendf * 12 + 73;
for (i = 0; i < ctx->ncplsubnd - 1; i++) /* coupling band structure */ for (i = 0; i < ctx->ncplsubnd - 1; i++) /* coupling band structure */
if (get_bits1(gb)) { if (get_bits1(gb)) {
ctx->cplbndstrc |= 1 << i;
ctx->cplbndstrc[i] = 1;
ctx->ncplbnd--; ctx->ncplbnd--;
} }
} else { } else {


Loading…
Cancel
Save