Perform a proper synthesizer reset - #613
Conversation
|
@spessasus is attempting to deploy a commit to the Ryohei Kameyama's projects Team on Vercel. A member of the Team first needs to authorize it. |
|
The latest updates on your projects. Learn more about Vercel for GitHub.
|
|
I did a simple test with the Preview version. I set Signal to output to a virtual MIDI cable, then I connected the virtual MIDI cable to a MIDI monitor app. It looks like the reset code gets called when I open a new file. If you are using Signal with an external MIDI device, perhaps you might not want Signal to send a GS Reset every time you open a new file. I wonder if this behavior might cause confusion or problems for some users (?). |
|
I don't think that's an issue, esp given that most files I have already have a GM/GS/XG reset at the start. |
Per MIDI specification (RP-15),
Reset All Controllersmessage does not actually reset all channel controllers. More importantly, it doesn't global parameters such as chorus, drum status and MIDI system.This PR adds a GS reset after, ensuring that the synthesizer fully resets into a fresh state when loading a new song.
While most MIDI files do have a reset at the start, some don't and this PR fixes them.
CC @ryohey @robertnhart