MuseScore icon indicating copy to clipboard operation
MuseScore copied to clipboard

[MU4 Issue] A plugin's `readScore()`, `closeScore()` and `writeScore()` fails

Open Jojo-Schmitz opened this issue 3 years ago • 1 comments
trafficstars

Describe the bug A plugin's readScore() fails, returning a nullptr

Same goes for closeScore() and writeScore(), they are all not yet implemented

To Reproduce Steps to reproduce the behavior:

  1. Try running the Batch Convert plugin

Expected behavior Same as in MuseScore 3: read, write, close the score

Screenshots n/a

Platform information

  • OS: Windows, but unlikely to be restricted to just that

Additional context See also #13162/#13582 and #8859

Jojo-Schmitz avatar Oct 03 '22 11:10 Jojo-Schmitz

If anyone needs a workaround for batch conversion to MuseScore 4, I wrote one which you can use by installing ms3 in your Python 3.10 environment (pip install ms3) and then calling ms3 convert -d [source_dir] -o [target_dir] -m [musescore4executable] --format mscz.

johentsch avatar Jan 03 '23 19:01 johentsch

It is not just Batch Convert that would need this, but also ABC Import.

Jojo-Schmitz avatar May 15 '23 09:05 Jojo-Schmitz

Is anything going to happen with this?

Jojo-Schmitz avatar Oct 10 '23 08:10 Jojo-Schmitz

I'm expecting a bit of the single-instance vs multi-instance logic will likely need addressing first (at least for readScore).

jeetee avatar Oct 10 '23 16:10 jeetee

Will it be possible to access all classes? In the 3.0 version Beams or Octavation lines are not exposed to the API for example

Daniel63656 avatar Dec 13 '23 16:12 Daniel63656

I have created a pull request which partially restores these functions: #20822. This implementation is limited and mostly operates only on the currently opened score and the current window, but I think even such limited implementation may be useful for some import/export plugins (at least it is useful for me).

dmitrio95 avatar Jan 03 '24 17:01 dmitrio95