diff --git a/sflphone-common/src/audio/alsa/alsalayer.cpp b/sflphone-common/src/audio/alsa/alsalayer.cpp
index 21c405f5b39d2402cf84b8bee5f133cc3736fc5f..4e5a2b60ed0dbdc08ef75df0d6addc78f1f7b766 100644
--- a/sflphone-common/src/audio/alsa/alsalayer.cpp
+++ b/sflphone-common/src/audio/alsa/alsalayer.cpp
@@ -137,13 +137,9 @@ AlsaLayer::startStream (void)
     _debug ("AlsaLayer:: startStream");
 
     std::string pcmp = buildDeviceTopo (_audioPlugin, _indexOut, 0);
-    std::string pcmc = buildDeviceTopo (_audioPlugin, _indexIn, 0);
+    std::string pcmr = buildDeviceTopo (_audioPlugin, _indexRing, 0);
 
-    std::string pcmr;
-    if(_audioPlugin != "plug:dmix")
-        pcmr = buildDeviceTopo (_audioPlugin, _indexRing, 0);
-    else
-        pcmr = buildDeviceTopo("default", _indexRing, 0);
+    std::string pcmc = buildDeviceTopo("default", _indexIn, 0);
 
     if (!is_playback_open()) {
         open_device (pcmp, pcmc, pcmr, SFL_PCM_PLAYBACK);