diff --git a/libs/ardour/luaproc.cc b/libs/ardour/luaproc.cc index 8f370ebfad..09be770b0a 100644 --- a/libs/ardour/luaproc.cc +++ b/libs/ardour/luaproc.cc @@ -400,11 +400,10 @@ LuaProc::can_support_io_configuration (const ChanCount& in, ChanCount& out, Chan } #define FOUNDCFG_IMPRECISE(in, out) { \ - float p = fabsf ((float)(out) - preferred_out) ; \ - if (in != audio_in) { \ - p += 1000; \ - } \ - if ((out) > preferred_out) { p *= 1.1; } \ + const float p = fabsf ((float)(out) - preferred_out) * \ + (((out) > preferred_out) ? 1.1 : 1) \ + + fabsf ((float)(in) - audio_in) * \ + (((in) > audio_in) ? 275 : 250); \ FOUNDCFG_PENALTY(in, out, p); \ }