[SCM] libav/experimental: Combine and simplify output_subframe_constant() and output_subframe_verbatim().

siretart at users.alioth.debian.org siretart at users.alioth.debian.org
Sun Jun 30 17:13:06 UTC 2013


The following commit has been merged in the experimental branch:
commit 89912b5ff13778527c814b8bcc8a9459d1e8d557
Author: Justin Ruggles <justin.ruggles at gmail.com>
Date:   Fri Jul 30 20:24:15 2010 +0000

    Combine and simplify output_subframe_constant() and output_subframe_verbatim().
    
    Originally committed as revision 24604 to svn://svn.ffmpeg.org/ffmpeg/trunk

diff --git a/libavcodec/flacenc.c b/libavcodec/flacenc.c
index 773c344..ef29548 100644
--- a/libavcodec/flacenc.c
+++ b/libavcodec/flacenc.c
@@ -1101,26 +1101,14 @@ static void output_frame_header(FlacEncodeContext *s)
 }
 
 
-static void output_subframe_constant(FlacEncodeContext *s, FlacSubframe *sub)
-{
-    int32_t res;
-
-    res = sub->residual[0];
-    put_sbits(&s->pb, sub->obits, res);
-}
-
-
 static void output_subframe_verbatim(FlacEncodeContext *s, FlacSubframe *sub)
 {
-    int i;
-    FlacFrame *frame;
-    int32_t res;
+    put_sbits(&s->pb, sub->obits, sub->residual[0]);
 
-    frame = &s->frame;
-
-    for (i = 0; i < frame->blocksize; i++) {
-        res = sub->residual[i];
-        put_sbits(&s->pb, sub->obits, res);
+    if (sub->type == FLAC_SUBFRAME_VERBATIM) {
+        int i;
+        for (i = 0; i < s->frame.blocksize; i++)
+            put_sbits(&s->pb, sub->obits, sub->residual[i]);
     }
 }
 
@@ -1212,14 +1200,12 @@ static void output_subframes(FlacEncodeContext *s)
         put_bits(&s->pb, 1, 0); /* no wasted bits */
 
         /* subframe */
-        if(sub->type == FLAC_SUBFRAME_CONSTANT)
-            output_subframe_constant(s, sub);
-        else if(sub->type == FLAC_SUBFRAME_VERBATIM)
-            output_subframe_verbatim(s, sub);
-        else if(sub->type == FLAC_SUBFRAME_FIXED)
-            output_subframe_fixed(s, sub);
-        else if(sub->type == FLAC_SUBFRAME_LPC)
-            output_subframe_lpc(s, sub);
+        switch (sub->type) {
+        case FLAC_SUBFRAME_CONSTANT:
+        case FLAC_SUBFRAME_VERBATIM: output_subframe_verbatim(s, sub); break;
+        case FLAC_SUBFRAME_FIXED:    output_subframe_fixed(   s, sub); break;
+        case FLAC_SUBFRAME_LPC:      output_subframe_lpc(     s, sub); break;
+        }
     }
 }
 

-- 
Libav/FFmpeg packaging



More information about the pkg-multimedia-commits mailing list