]> git.ipfire.org Git - thirdparty/Python/cpython.git/commitdiff
Changed adpcm routines to use 2-element state (was 3 element)
authorJack Jansen <jack.jansen@cwi.nl>
Wed, 10 Feb 1993 13:21:59 +0000 (13:21 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Wed, 10 Feb 1993 13:21:59 +0000 (13:21 +0000)
Modules/audioop.c

index 301b4940077f1b44bf9b931b6b87dc75f0fe8c0f..792c4ae91facafd5968d95da329e4fc87f3fc60e 100644 (file)
@@ -872,9 +872,10 @@ audioop_lin2adpcm(self, args)
        valpred = 0;
        step = 7;
        index = 0;
-    } else if ( !getargs(state, "(iii)", &valpred, &step, &index) )
+    } else if ( !getargs(state, "(ii)", &valpred, &index) )
       return 0;
 
+    step = stepsizeTable[index];
     bufferstep = 1;
 
     for ( i=0; i < len; i += size ) {
@@ -944,7 +945,7 @@ audioop_lin2adpcm(self, args)
        }
        bufferstep = !bufferstep;
     }
-    rv = mkvalue("(O(iii))", str, valpred, step, index);
+    rv = mkvalue("(O(ii))", str, valpred, index);
     DECREF(str);
     return rv;
 }
@@ -975,7 +976,7 @@ audioop_adpcm2lin(self, args)
        valpred = 0;
        step = 7;
        index = 0;
-    } else if ( !getargs(state, "(iii)", &valpred, &step, &index) )
+    } else if ( !getargs(state, "(ii)", &valpred, &index) )
       return 0;
     
     str = newsizedstringobject(NULL, len*size*2);
@@ -983,6 +984,7 @@ audioop_adpcm2lin(self, args)
       return 0;
     ncp = (signed char *)getstringvalue(str);
 
+    step = stepsizeTable[index];
     bufferstep = 0;
     
     for ( i=0; i < len*size*2; i += size ) {
@@ -1035,7 +1037,7 @@ audioop_adpcm2lin(self, args)
        else if ( size == 4 ) *LONGP(ncp, i) = (long)(valpred<<16);
     }
 
-    rv = mkvalue("(O(iii))", str, valpred, step, index);
+    rv = mkvalue("(O(ii))", str, valpred, index);
     DECREF(str);
     return rv;
 }