diff --git a/gtk2_ardour/ardour_ui.cc b/gtk2_ardour/ardour_ui.cc index cd0f412692..57804deb8c 100644 --- a/gtk2_ardour/ardour_ui.cc +++ b/gtk2_ardour/ardour_ui.cc @@ -1813,6 +1813,10 @@ ARDOUR_UI::save_template () ArdourPrompter prompter (true); string name; + if (!check_audioengine()) { + return; + } + prompter.set_name (X_("Prompter")); prompter.set_prompt (_("Name for mix template:")); prompter.set_initial_text(session->name() + _("-template")); diff --git a/libs/ardour/globals.cc b/libs/ardour/globals.cc index ba6a7383c8..52be946f1e 100644 --- a/libs/ardour/globals.cc +++ b/libs/ardour/globals.cc @@ -146,6 +146,10 @@ ARDOUR::setup_midi (AudioEngine& engine) nports++; } + MIDI::Port* first; + const MIDI::Manager::PortMap& ports = MIDI::Manager::instance()->get_midi_ports(); + first = ports.begin()->second; + if (nports > 1) { /* More than one port, so try using specific names for each port */ @@ -167,15 +171,15 @@ ARDOUR::setup_midi (AudioEngine& engine) /* If that didn't work, just use the first listed port */ if (default_mmc_port == 0) { - default_mmc_port = MIDI::Manager::instance()->port (""); + default_mmc_port = first; } if (default_mtc_port == 0) { - default_mtc_port = MIDI::Manager::instance()->port (""); + default_mtc_port = first; } if (default_midi_port == 0) { - default_midi_port = MIDI::Manager::instance()->port (""); + default_midi_port = first; } } else { diff --git a/libs/ardour/session_midi.cc b/libs/ardour/session_midi.cc index 177b2ef54a..2076f5d25f 100644 --- a/libs/ardour/session_midi.cc +++ b/libs/ardour/session_midi.cc @@ -408,7 +408,7 @@ Session::setup_midi_control () mmc_buffer[0] = 0xf0; // SysEx mmc_buffer[1] = 0x7f; // Real Time SysEx ID for MMC - mmc_buffer[2] = (mmc ? mmc->send_device_id() : 0x00); + mmc_buffer[2] = (mmc ? mmc->send_device_id() : 0x7f); mmc_buffer[3] = 0x6; // MCC /* Set up the qtr frame message */