Don't reset fluid_synth in MIDIPlayer.cpp stop() #1738
Merged
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This call causes the soundfont to reset to default if a MIDI entry is played and any of the Play, Pause or Stop buttons get pressed after playback has already started. This results in all instruments being reset back to a default piano once playback resumes for the selected MIDI entry.
This patch addresses the issue I experienced in #1737 where playing a MIDI entry works fine, but the soundfont disappears after the Play, Pause or Stop buttons are clicked.
The
stop()
function calls out tofluid_synth_system_reset(fs_synth_)
which breaks the soundfont for the selected MIDI entry. Once playback is resumed, all instruments other than the drumkit have been reset to default MIDI pianos.