diff --git a/src/audio/midi.cpp b/src/audio/midi.cpp index 3da138868..fa3faf1f4 100644 --- a/src/audio/midi.cpp +++ b/src/audio/midi.cpp @@ -58,10 +58,4 @@ void TAAudio::quitMidi() { delete midiOut; midiOut=NULL; } -} - -bool TAAudio::reinitMidi(bool jack) { - quitMidi(); - return initMidi(jack); - } \ No newline at end of file diff --git a/src/audio/taAudio.h b/src/audio/taAudio.h index 3d21cbaff..0b6f530c6 100644 --- a/src/audio/taAudio.h +++ b/src/audio/taAudio.h @@ -178,8 +178,6 @@ class TAAudio { virtual std::vector listAudioDevices(); bool initMidi(bool jack); void quitMidi(); - /** remove and reload midi to allow hotswaping midi devices */ - bool reinitMidi(bool jack); virtual bool init(TAAudioDesc& request, TAAudioDesc& response); TAAudio(): diff --git a/src/engine/engine.cpp b/src/engine/engine.cpp index 76c56cb16..fc5d45477 100644 --- a/src/engine/engine.cpp +++ b/src/engine/engine.cpp @@ -3464,6 +3464,12 @@ void DivEngine::rescanAudioDevices() { audioDevs.clear(); if (output!=NULL) { audioDevs=output->listAudioDevices(); + } +} + +void DivEngine::rescanMidiDevices() { + if (output!=NULL) { + logV("re-scanning midi..."); if (output->midiIn!=NULL) { midiIns=output->midiIn->listDevices(); } @@ -3473,15 +3479,6 @@ void DivEngine::rescanAudioDevices() { } } - -void DivEngine::rescanMidiDevices() { - if (output!=NULL) { - logV("reloading midi..."); - output->reinitMidi(false); - rescanAudioDevices(); - } -} - void DivEngine::initDispatch(bool isRender) { BUSY_BEGIN; logV("initializing dispatch..."); diff --git a/src/gui/settings.cpp b/src/gui/settings.cpp index df0ca64eb..3f4bd9de7 100644 --- a/src/gui/settings.cpp +++ b/src/gui/settings.cpp @@ -1130,7 +1130,7 @@ void FurnaceGUI::drawSettings() { } ImGui::SameLine(); - if (ImGui::Button("Reload MIDI devices")) { + if (ImGui::Button("Re-scan MIDI devices")) { e->rescanMidiDevices(); audioEngineChanged=true; settingsChanged=false;