diff --git a/libs/backends/jack/jack_utils.cc b/libs/backends/jack/jack_utils.cc index 0a5b3eb44d..9fb1e42352 100644 --- a/libs/backends/jack/jack_utils.cc +++ b/libs/backends/jack/jack_utils.cc @@ -83,6 +83,7 @@ namespace { const char * const dummy_driver_command_line_name = X_("dummy"); // should we provide more "pretty" names like above? + const char * const alsaint_midi_driver_name = X_("alsa"); const char * const alsaseq_midi_driver_name = X_("seq"); const char * const alsaraw_midi_driver_name = X_("raw"); const char * const winmme_midi_driver_name = X_("winmme"); @@ -742,6 +743,13 @@ ARDOUR::get_jack_command_line_string (JackCommandLineOptions& options, string& c } #endif + if (options.driver == alsa_driver_name) { + if (options.midi_driver == alsaint_midi_driver_name) { + args.push_back ("-I"); + args.push_back ("alsa_midi"); + } + } + string command_line_driver_name; if (!get_jack_command_line_audio_driver_name (options.driver, command_line_driver_name)) { @@ -852,9 +860,11 @@ ARDOUR::get_jack_command_line_string (JackCommandLineOptions& options, string& c if (options.driver == alsa_driver_name || options.driver == coreaudio_driver_name) { - if (!options.midi_driver.empty() && options.midi_driver != get_none_string ()) { - args.push_back ("-X"); - args.push_back (options.midi_driver); + if (options.midi_driver != alsaint_midi_driver_name) { + if (!options.midi_driver.empty() && options.midi_driver != get_none_string ()) { + args.push_back ("-X"); + args.push_back (options.midi_driver); + } } } @@ -911,8 +921,9 @@ ARDOUR::enumerate_midi_options () { if (midi_options.empty()) { #ifdef HAVE_ALSA - midi_options.push_back (make_pair (_("ALSA raw devices"), alsaraw_midi_driver_name)); - midi_options.push_back (make_pair (_("ALSA sequencer"), alsaseq_midi_driver_name)); + midi_options.push_back (make_pair (_("ALSA"), alsaint_midi_driver_name)); + midi_options.push_back (make_pair (_("(legacy) ALSA raw devices"), alsaraw_midi_driver_name)); + midi_options.push_back (make_pair (_("(legacy) ALSA sequencer"), alsaseq_midi_driver_name)); #endif #ifdef HAVE_PORTAUDIO /* Windows folks: what name makes sense here? Are there other