If SoundHelix quits normally, the MIDI channels will be muted correctly.
For non-normal termination, SoundHelix registers a Java shutdown hook in order to mute all MIDI channels if SoundHelix is terminated during playback. This seems to work in many, but not in all situations. If the JVM is terminated the hard way (SIGKILL on Linux), clearly, the shutdown hook cannot be invoked anymore, because the processes' resources will be freed immediately without giving the JVM the chance to execute the shutdown hook. But on Windows, for example, even hitting CTRL+C when SoundHelix is playing in a DOS box will in most cases not trigger the shutdown hook or it will start processing the shutdown hook but will stop in the middle. It seems like Windows sends a termination signal and almost immediately sends a kill signal to the process. This is nothing that can be fixed in the application.
The shutdown hook will log its start and finish using trace log level. If you want to see if it is called, make sure that you enable the trace level in log4j. For a completed call, you should see the start and the finish message of the shutdown hook.