Making it easier to debug laplace testcase
authorJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Sat, 1 Mar 2008 09:56:17 +0000 (20:56 +1100)
committerJean-Marc Valin <jean-marc.valin@usherbrooke.ca>
Sat, 1 Mar 2008 09:56:17 +0000 (20:56 +1100)
libcelt/laplace.c
tests/laplace-test.c

index 8b1604d..c557872 100644 (file)
@@ -71,6 +71,7 @@ void ec_laplace_encode(ec_enc *enc, int value, int decay)
       fl = 0;
    if (s)
       fl += fs;
+   /*DEBUG*/
    /*printf ("enc: %d %d %d\n", fl, fs, ft);*/
    ec_encode(enc, fl, fl+fs, ft);
 }
@@ -82,6 +83,7 @@ int ec_laplace_decode(ec_dec *dec, int decay)
    ft = ec_laplace_get_total(decay);
    
    fm = ec_decode(dec, ft);
+   /*DEBUG*/
    /*printf ("fm: %d/%d\n", fm, ft);*/
    fl = 0;
    fs = ((ec_uint32)1)<<15;
@@ -106,6 +108,8 @@ int ec_laplace_decode(ec_dec *dec, int decay)
    /* Preventing an infinite loop in case something screws up in the decoding */
    if (fl==fh)
       fl--;
+   /*DEBUG*/
+   /*printf ("update: %d %d %d\n", fl, fh, ft);*/
    ec_dec_update(dec, fl, fh, ft);
    return val;
 }
index 101fad7..1c093ef 100644 (file)
@@ -17,12 +17,16 @@ int main()
    ec_byte_writeinit(&buf);
    ec_enc_init(&enc,&buf);
    
+   val[0] = 3; decay[0] = 6000;
+   val[1] = 0; decay[1] = 5800;
+   val[2] = -1; decay[2] = 5600;
    for (i=0;i<10000;i++)
    {
       val[i] = rand()%15-7;
       decay[i] = rand()%11000+5000;
-      ec_laplace_encode(&enc, val[i], decay[i]);      
    }
+   for (i=0;i<10000;i++)
+      ec_laplace_encode(&enc, val[i], decay[i]);      
       
    ec_enc_done(&enc);