diff options
author | Justin Ruggles <justin.ruggles@gmail.com> | 2011-06-01 20:40:01 +0400 |
---|---|---|
committer | Justin Ruggles <justin.ruggles@gmail.com> | 2011-06-05 03:08:37 +0400 |
commit | 35d5cb1ab4dab657ef31b845893cf98d885c8add (patch) | |
tree | 975601e1e6f84878de8776edbc4dbd354fae927d /libavcodec/ac3enc.c | |
parent | 594fbe42c6b21aef76b938ce97524fa92a48e7a0 (diff) |
ac3enc: extract all exponents for the frame at once
Diffstat (limited to 'libavcodec/ac3enc.c')
-rw-r--r-- | libavcodec/ac3enc.c | 12 |
1 files changed, 4 insertions, 8 deletions
diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c index dbe7784eae..53f6251a5e 100644 --- a/libavcodec/ac3enc.c +++ b/libavcodec/ac3enc.c @@ -900,15 +900,11 @@ static av_cold void exponent_init(AC3EncodeContext *s) */ static void extract_exponents(AC3EncodeContext *s) { - int blk, ch; + int ch = !s->cpl_on; + int chan_size = AC3_MAX_COEFS * AC3_MAX_BLOCKS * (s->channels - ch + 1); + AC3Block *block = &s->blocks[0]; - for (ch = !s->cpl_on; ch <= s->channels; ch++) { - for (blk = 0; blk < AC3_MAX_BLOCKS; blk++) { - AC3Block *block = &s->blocks[blk]; - s->ac3dsp.extract_exponents(block->exp[ch], block->fixed_coef[ch], - AC3_MAX_COEFS); - } - } + s->ac3dsp.extract_exponents(block->exp[ch], block->fixed_coef[ch], chan_size); } |