[FFmpeg-cvslog] ac3enc: extract all exponents for the frame at once

Justin Ruggles git at videolan.org
Mon Jun 6 03:51:48 CEST 2011


ffmpeg | branch: master | Justin Ruggles <justin.ruggles at gmail.com> | Wed Jun  1 12:40:01 2011 -0400| [35d5cb1ab4dab657ef31b845893cf98d885c8add] | committer: Justin Ruggles

ac3enc: extract all exponents for the frame at once

> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=35d5cb1ab4dab657ef31b845893cf98d885c8add
---

 libavcodec/ac3enc.c |   12 ++++--------
 1 files changed, 4 insertions(+), 8 deletions(-)

diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c
index dbe7784..53f6251 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);
 }
 
 



More information about the ffmpeg-cvslog mailing list