diff --git a/sflphone-common/src/audio/pulseaudio/audiostream.cpp b/sflphone-common/src/audio/pulseaudio/audiostream.cpp
index 614d2e5c27490bee99880ecae0a9116fd80d610c..565ef8b78349b8a2d5f303e4a59166c05cc61cd2 100644
--- a/sflphone-common/src/audio/pulseaudio/audiostream.cpp
+++ b/sflphone-common/src/audio/pulseaudio/audiostream.cpp
@@ -192,30 +192,23 @@ AudioStream::createStream (pa_context* c)
     // parameters are defined as number of bytes
     // 2048 bytes (1024 int16) is 20 ms at 44100 Hz 
     if (_streamType == PLAYBACK_STREAM) {
-	
+
+	// 20 ms framesize TODO: take framesize value from config
         attributes->maxlength = (uint32_t) -1;
-        attributes->tlength = pa_usec_to_bytes(20 * PA_USEC_PER_MSEC, &sample_spec);
+        attributes->tlength = pa_usec_to_bytes(50 * PA_USEC_PER_MSEC, &sample_spec);
         attributes->prebuf = (uint32_t) -1;      
         attributes->minreq = (uint32_t) -1;
         attributes->fragsize = (uint32_t) -1;
-
-	_debug("tlength: %i\n", pa_usec_to_bytes(20 * PA_USEC_PER_MSEC, &sample_spec));
-	/*
-	attributes->maxlength = 88200;
-        attributes->tlength = 4096;
-        attributes->prebuf = 4096;      
-        attributes->minreq = 2048;
-        attributes->fragsize = 4096;
-	*/
 	
 	pa_stream_connect_playback( s , NULL , attributes, PA_STREAM_ADJUST_LATENCY, &_volume, NULL);
     } else if (_streamType == CAPTURE_STREAM) {
-	
+
+	// 20 ms framesize TODO: take framesize value from config
         attributes->maxlength = (uint32_t) -1;
         attributes->tlength = (uint32_t) -1;
         attributes->prebuf = (uint32_t) -1;
         attributes->minreq = (uint32_t) -1;
-        attributes->fragsize = 4096;
+        attributes->fragsize = pa_usec_to_bytes(50 * PA_USEC_PER_MSEC, &sample_spec);
 	
 	
 
diff --git a/sflphone-common/src/audio/pulseaudio/pulselayer.cpp b/sflphone-common/src/audio/pulseaudio/pulselayer.cpp
index df3823fe781eeaecbf54f0d5bba7b55df007a03b..cd89dc9fa7cf53759b4cb38e6ae6e38603045dd9 100644
--- a/sflphone-common/src/audio/pulseaudio/pulselayer.cpp
+++ b/sflphone-common/src/audio/pulseaudio/pulselayer.cpp
@@ -546,22 +546,16 @@ void PulseLayer::writeToSpeaker (void)
         } else {
 
 	    int _mainBufferSampleRate = getMainBuffer()->getInternalSamplingRate();
-	    // int maxNbSamplesToGet = 0;
+
 	    int maxNbBytesToGet = 0;
 
-	    _debug("--------------- Playback -----------\n");
-	    _debug("writeableSize: %i\n", writeableSize);
 
 	    // test if audio resampling is needed
 	    if (_mainBufferSampleRate && ((int)_audioSampleRate != _mainBufferSampleRate)) {
  
 		// upsamplefactor is used to compute the number of bytes to get in the ring buffer 
 		double upsampleFactor = (double) _mainBufferSampleRate / _audioSampleRate;
-		_debug("upsampleFactor: %f\n", upsampleFactor);
 
-		// maxNbSamplesToGet is the number of sample to get in the ring buffer which, 
-                // once resampled, will not be over the writeableSize
-		// maxNbSamplesToGet = (int) ((double) framesPerBuffer * upsampleFactor);
 		maxNbBytesToGet = ((double) writeableSize * upsampleFactor);
 
 	    } else {
@@ -571,15 +565,10 @@ void PulseLayer::writeToSpeaker (void)
 
 	    }
 
-	    //  maxNbBytesToGet = maxNbSamplesToGet * sizeof(SFLDataFormat);
-	    _debug("maxNbBytesToGet: %i\n", maxNbBytesToGet);
-
             out = (SFLDataFormat*) pa_xmalloc (maxNbBytesToGet);
             normalAvailBytes = _mainBuffer.availForGet();
-	    _debug("normalAvailBytes: %i\n", normalAvailBytes);
 	    
             byteToGet = (normalAvailBytes < (int)(maxNbBytesToGet)) ? normalAvailBytes : maxNbBytesToGet;
-	    _debug("byteToGet: %i\n", byteToGet);
 
             if (byteToGet) {
 
@@ -597,12 +586,8 @@ void PulseLayer::writeToSpeaker (void)
 		    
 		    // Do sample rate conversion
 		    int nb_sample_down = byteToGet / sizeof(SFLDataFormat);
-		    _debug("nbSampleDown: %i\n", nb_sample_down);
-
 
 		    int nbSample = _converter->upsampleData((SFLDataFormat*)out, rsmpl_out, _mainBufferSampleRate, _audioSampleRate, nb_sample_down);
-		    _debug("nbSample converted: %i\n", nbSample);
-		    _debug("bytes to be written: %i\n", nbSample*sizeof(SFLDataFormat));
 		    
 		    pa_stream_write (playback->pulseStream(), rsmpl_out, nbSample*sizeof(SFLDataFormat), NULL, 0, PA_SEEK_RELATIVE);
 
@@ -618,24 +603,18 @@ void PulseLayer::writeToSpeaker (void)
             } else {
 
 		if((tone == 0) && (file_tone == 0)) {
-
-		    // _debug("maxNbBytesToGet: %i\n", maxNbBytesToGet);
 		    
 		    SFLDataFormat* zeros = (SFLDataFormat*)pa_xmalloc (writeableSize);
   
 		    bzero (zeros, writeableSize);
 		    pa_stream_write(playback->pulseStream(), zeros, writeableSize, pa_xfree, 0, PA_SEEK_RELATIVE);
 
-		    // pa_xfree (zeros);
-		    
-
 		}
             }
 
 	    
 	    _urgentRingBuffer.Discard(byteToGet);
 
-            // pa_xfree (out);
         }
 
     }
@@ -647,8 +626,6 @@ void PulseLayer::readFromMic (void)
     const char* data = NULL;
     size_t r;
 
-    // _debug("--------------- Capture -----------\n");
-
     if (pa_stream_peek (record->pulseStream() , (const void**) &data , &r) < 0 || !data) {
         _debug("pa_stream_peek() failed: %s\n" , pa_strerror( pa_context_errno( context) ));
     }
@@ -666,16 +643,12 @@ void PulseLayer::readFromMic (void)
 	    int nbSample = r / sizeof(SFLDataFormat);
             int nb_sample_up = nbSample;
 
-	    // _debug("nbSample from mic: %i\n", nbSample);
-
             
             nbSample = _converter->downsampleData ((SFLDataFormat*)data, rsmpl_out, _mainBufferSampleRate, _audioSampleRate, nb_sample_up);
 
 	    // remove dc offset
 	    dcblocker->filter_signal( rsmpl_out, nbSample );
 
-	    // _debug("nbSample copied: %i\n", nbSample);
-
 	    _mainBuffer.putData ( (void*) rsmpl_out, nbSample*sizeof(SFLDataFormat), 100);
 
 	    pa_xfree (rsmpl_out);