MuseScore 3.0 crashes on opening if JACK Audio has been registered on Windows.

• Dec 26, 2018 - 14:31
Reported version
3.0
Priority
P0 - Critical
Type
Functional
Frequency
Many
Severity
S1 - Blocker
Reproducibility
Always
Status
closed
Regression
No
Workaround
No
Project

As the title suggests, the programme does not survive past the splash screen if JACK Audio has been installed and registered. This problem was not present in MuseScore 2. It is not certain whether this also happens on OSs other than Windows.

How to Reproduce the Regression

  • Install 64bit JACK2 for Windows
  • As per the installation instructions, execute regsvr32 "C:\Program Files (x86)\Jack\64bits\JackRouter.dll" with Command Prompt as administrator
  • Attempt to open MuseScore 3

The programme shows the splash screen before crashing, without entering the main programme window.
MuseScore3.exe has stopped working
Choosing "Debug" reveals that it is libjack64.dll causing the issue, but does not yield any further details.
Call Stack

I was able to reproduce this on a clean virtual machine running Windows 10 as well.
MuseScore 2.3.2 runs perfectly fine in these circumstances.

"Workarounds"

So far, I have not discovered any real workarounds to the regression, but there are ways to restore MuseScore's functionality:

  • Unregistering JackRouter.dll with regsvr32 /u "C:\Program Files (x86)\Jack\64bits\JackRouter.dll" allows MuseScore 3 to work normally again, but obviously renders JACK Audio functionless
  • Starting MuseScore3.exe with the -s flag, which disable's MuseScore's synthesizer, allows the programme to run without needing to modify JACK Audio, but also removes any audio output.
  • Installing the 32 bit version of JACK Audio does not interfere with MuseScore, but it has been impossible to make JACK Audio detect any midi output from MuseScore, making it frustratingly non-functional

Comments

Regression Yes No
Severity S3 - Major S1 - Blocker
Workaround Yes No

I feel like this should be up in the queue for priority.
I'm unable to use musescore at all because of this.
Even with the asio unregistered, the internal JACK server of MuseScore also doesn't work.

Status active PR created

The crash happens at Portaudio initialization, and we are not the only ones facing it, see:
https://github.com/jackaudio/jack2/issues/275
I tried with the solution proposed here: https://github.com/jackaudio/jack2/issues/332 and in my system it worked.
Proposed PR:
https://github.com/musescore/MuseScore/pull/4599
The artifact of that build, found here: https://ci.appveyor.com/project/MuseScore/musescore/builds/21719373/art… can be tested when the build finishes.