diff --git a/sflphone-common/src/audio/audiortp.cpp b/sflphone-common/src/audio/audiortp.cpp
index d7cddb231b074b7f841743aec46f527a280ea859..5ed1bf6bdd74a553413b46b66bfc1527c3da50de 100644
--- a/sflphone-common/src/audio/audiortp.cpp
+++ b/sflphone-common/src/audio/audiortp.cpp
@@ -616,8 +616,10 @@ AudioRtpRTX::run () {
       // Thread::sleep(TimerPort::getTimer());
       // TimerPort::incTimer(_layerFrameSize); // 'frameSize' ms
 
-      Thread::sleep(TimerPort::getTimer());
-      TimerPort::incTimer(5); // 'frameSize' ms
+      // Thread::sleep(TimerPort::getTimer());
+      // TimerPort::incTimer(5); // 'frameSize' ms
+
+      usleep(500);
       
     }
     
diff --git a/sflphone-common/src/audio/codecs/celtcodec.cpp b/sflphone-common/src/audio/codecs/celtcodec.cpp
index 42a9bdbb440334906fd05b9d434fe57eb525427c..21f0cc44ba8efc61d082b53eb4176317af65f250 100644
--- a/sflphone-common/src/audio/codecs/celtcodec.cpp
+++ b/sflphone-common/src/audio/codecs/celtcodec.cpp
@@ -61,6 +61,8 @@ class Celt : public AudioCodec{
 
             enc = celt_encoder_create(mode);
             dec = celt_decoder_create(mode);
+
+            celt_encoder_ctl(enc,CELT_SET_COMPLEXITY(8));
  
         }
 
@@ -85,7 +87,7 @@ class Celt : public AudioCodec{
         virtual int codecEncode (unsigned char *dst, short *src, unsigned int size) 
         {
             int len = 0;
-            len = celt_encode(enc, (celt_int16_t *)src, NULL, dst, 128);
+            len = celt_encode(enc, (celt_int16_t *)src, (celt_int16_t *)src, dst, 128);
             // returns the number of bytes writen
             return len;
         }