[SCM] libav/experimental: Simplify group size calculation in 2 places.

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:20:10 UTC 2013


The following commit has been merged in the experimental branch:
commit 02877def4993f438df78ae6a0edf70379a14aed1
Author: Justin Ruggles <justin.ruggles at gmail.com>
Date:   Tue Dec 14 14:51:20 2010 +0000

    Simplify group size calculation in 2 places.
    
    Originally committed as revision 25961 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/ac3enc.c b/libavcodec/ac3enc.c
index e094ea8..0359773 100644
--- a/libavcodec/ac3enc.c
+++ b/libavcodec/ac3enc.c
@@ -309,18 +309,7 @@ static int encode_exp(uint8_t encoded_exp[AC3_MAX_COEFS],
     int group_size, nb_groups, i, j, k, exp_min;
     uint8_t exp1[AC3_MAX_COEFS];
 
-    switch (exp_strategy) {
-    case EXP_D15:
-        group_size = 1;
-        break;
-    case EXP_D25:
-        group_size = 2;
-        break;
-    default:
-    case EXP_D45:
-        group_size = 4;
-        break;
-    }
+    group_size = exp_strategy + (exp_strategy == EXP_D45);
     nb_groups = ((nb_exps + (group_size * 3) - 4) / (3 * group_size)) * 3;
 
     /* for each group, compute the minimum exponent */
@@ -833,20 +822,9 @@ static void output_audio_block(AC3EncodeContext *s,
 
     /* exponents */
     for (ch = 0; ch < s->channels; ch++) {
-        switch (exp_strategy[ch]) {
-        case EXP_REUSE:
+        if (exp_strategy[ch] == EXP_REUSE)
             continue;
-        case EXP_D15:
-            group_size = 1;
-            break;
-        case EXP_D25:
-            group_size = 2;
-            break;
-        default:
-        case EXP_D45:
-            group_size = 4;
-            break;
-        }
+        group_size = exp_strategy[ch] + (exp_strategy[ch] == EXP_D45);
         nb_groups = (s->nb_coefs[ch] + (group_size * 3) - 4) / (3 * group_size);
         p = encoded_exp[ch];
 

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list