diff --git a/sflphone-common/src/audio/audioprocessing.cpp b/sflphone-common/src/audio/audioprocessing.cpp
index 5f5d3d856893f5789c41a87e4a1ccd2b020a8890..a50afe84be6a56a136c7842d19a0f1b16ed1613f 100644
--- a/sflphone-common/src/audio/audioprocessing.cpp
+++ b/sflphone-common/src/audio/audioprocessing.cpp
@@ -27,6 +27,18 @@ AudioProcessing::AudioProcessing(Algorithm *_algo) : _algorithm(_algo){}
 
 AudioProcessing::~AudioProcessing(void){}
 
+void AudioProcessing::putData(SFLDataFormat *inputData)
+{
+  if(_algorithm)
+    _algorithm->putData(inputData);
+}
+
+void AudioProcessing::processAudio(SFLDataFormat *inputData, SFLDataFormat *outputData)
+{
+  if(_algorithm)
+    _algorithm->process(inputData, outputData);
+}
+
 
 void AudioProcessing::processAudio(SFLDataFormat *micData, SFLDataFormat *spkrData, SFLDataFormat *outputData) {
   if(_algorithm)
diff --git a/sflphone-common/src/audio/audioprocessing.h b/sflphone-common/src/audio/audioprocessing.h
index c5ea4ec42bd1b2f8bcb28bf005c1854651864c7b..8f9494c7d97b83aa9b5f1f9912b3adee9d7a1197 100644
--- a/sflphone-common/src/audio/audioprocessing.h
+++ b/sflphone-common/src/audio/audioprocessing.h
@@ -43,6 +43,16 @@ public:
    */
   void setAlgorithm(Algorithm *_algo) { _algorithm = _algo; }
 
+  /**
+   * Put data in internal buffer
+   */
+  void putData(SFLDataFormat *inputData);
+
+  /**
+   * Process dome audio data
+   */
+  void processAudio(SFLDataFormat *inputData, SFLDataFormat *outputData);
+
   /**
    * Process some audio data.
    */