From 0c01c500233d0889a6eb55cc68b588de15a173d0 Mon Sep 17 00:00:00 2001 From: Robin Gareus Date: Sat, 6 Aug 2022 22:35:01 +0200 Subject: [PATCH] Add dialog option to reconfigure audio engine when S/R mismatches --- gtk2_ardour/ardour_ui_startup.cc | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/gtk2_ardour/ardour_ui_startup.cc b/gtk2_ardour/ardour_ui_startup.cc index a5cf4d0d40..f52a817e53 100644 --- a/gtk2_ardour/ardour_ui_startup.cc +++ b/gtk2_ardour/ardour_ui_startup.cc @@ -193,6 +193,10 @@ audio may be played at the wrong sample rate.\n"), desired, PROGRAM_NAME, actual hbox->pack_start (*image, PACK_EXPAND_WIDGET, 12); hbox->pack_end (message, PACK_EXPAND_PADDING, 12); dialog.get_vbox()->pack_start(*hbox, PACK_EXPAND_PADDING, 6); + + if (ARDOUR::AudioEngine::instance ()->setup_required ()) { + dialog.add_button (_("Reconfigure Engine"), RESPONSE_YES); + } dialog.add_button (_("Do not load session"), RESPONSE_REJECT); dialog.add_button (_("Load session anyway"), RESPONSE_ACCEPT); dialog.set_default_response (RESPONSE_ACCEPT); @@ -202,6 +206,11 @@ audio may be played at the wrong sample rate.\n"), desired, PROGRAM_NAME, actual hbox->show(); switch (dialog.run()) { + case RESPONSE_YES: + ARDOUR::AudioEngine::instance ()->stop (); + (dynamic_cast (audio_midi_setup.get (true)))->run (); + (dynamic_cast (audio_midi_setup.get (true)))->hide (); + return AudioEngine::instance()->running () ? -1 : 1; case RESPONSE_ACCEPT: return 0; default: