Compatibility Issues with QtWebSockets Module in MuseScore 4.4

• Aug 31, 2024 - 20:35

Hello everyone,

I’m the developer of ODLA (https://odlamusic.com/), a device designed to help visually impaired people write music through a keyboard featuring a raised staff. Our goal is to promote accessibility, and currently, many users are successfully using ODLA.

In the past, we created a fork of MuseScore 3.6.2, adding a class to create a socket. However, we decided to abandon this approach to integrate more cleanly with the official version of MuseScore using the API.

With the release of version 4, I developed a QML plugin that uses MuseScore’s API and interfaces with our daemon, which sends JSON packets via the QtWebSockets library. Despite initial challenges, I managed to get the plugin working on macOS. On Windows, it was necessary to manually add the Qt5WebSockets.dll file to the MuseScore4/bin/ folder. This workaround allowed us to use our keyboard to write music.

However, since the update to version 4.4 and the transition to Qt 6.2.4, this workaround no longer works. I have tried:

Using the Qt6WebSocket.dll available in the Qt 6.2.4 kit;
Recompiling the library sources with the same kit;
Including both Qt6WebSocket and Qt5WebSocket, in case the compatibility module needed both;
Unfortunately, the error persists, and the module cannot be found:

17:16:29.999 | ERROR | main_thread | ExtPluginRunner::run | "file:///C:/Users/Accordino/Documents/MuseScore4/Plugins/ODLA/ODLA.qml:2 module \"QtWebSockets\" is not installed\n"

This issue is undermining months of work, as the use of a socket to communicate with our software is crucial.

I would like to ask:

Was it a deliberate design choice to disable this module, perhaps for security reasons or other concerns?
Is it possible to request that this module be made available? I’m willing to make a pull request and implement the necessary changes.
Despite including references to the library in the CMakeList files, why does the error persist?

I sincerely appreciate your support. This help is essential to enable hundreds of visually impaired users, who are currently using our device, to continue using the new version of MuseScore.

Do you still have an unanswered question? Please log in first to post your question.