summaryrefslogtreecommitdiff
path: root/libavcodec/ac3dec.c
diff options
context:
space:
mode:
Diffstat (limited to 'libavcodec/ac3dec.c')
-rw-r--r--libavcodec/ac3dec.c7
1 files changed, 3 insertions, 4 deletions
diff --git a/libavcodec/ac3dec.c b/libavcodec/ac3dec.c
index 0571b007dc..1a8ca96f84 100644
--- a/libavcodec/ac3dec.c
+++ b/libavcodec/ac3dec.c
@@ -100,7 +100,7 @@ typedef struct {
int chincpl[AC3_MAX_CHANNELS];
int phsflginu;
int cplcoe;
- uint32_t cplbndstrc;
+ int cplbndstrc[18];
int rematstr;
int nrematbnd;
int rematflg[AC3_MAX_CHANNELS];
@@ -413,7 +413,7 @@ static void uncouple_channels(AC3DecodeContext *ctx)
}
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 */
ctx->cplinu = get_bits1(gb);
- ctx->cplbndstrc = 0;
if (ctx->cplinu) { /* coupling in use */
int cplbegf, cplendf;
@@ -753,7 +752,7 @@ static int ac3_parse_audio_block(AC3DecodeContext *ctx, int blk)
ctx->cplendmant = cplendf * 12 + 73;
for (i = 0; i < ctx->ncplsubnd - 1; i++) /* coupling band structure */
if (get_bits1(gb)) {
- ctx->cplbndstrc |= 1 << i;
+ ctx->cplbndstrc[i] = 1;
ctx->ncplbnd--;
}
} else {