diff --git a/modules/module-pipewire/algorithms.c b/modules/module-pipewire/algorithms.c
index 1b74353cce1bde69f644a68ddcac97a23a3cac88..fd5e522ea32f4e8b66e6ca1d96a01346a9c95f98 100644
--- a/modules/module-pipewire/algorithms.c
+++ b/modules/module-pipewire/algorithms.c
@@ -330,6 +330,7 @@ select_channels (WpSpaPod *value)
       i++;
     }
     ret = SPA_MAX (vals[1], vals[2]);
+    ret = SPA_MIN (ret, SPA_AUDIO_MAX_CHANNELS);
   }
 
   return ret;