[MusicXML export] issues with coda and d.s. al coda

• Mar 26, 2018 - 07:03
Reported version
3.0
Priority
P1 - High
Type
Functional
Frequency
Once
Severity
S3 - Major
Reproducibility
Always
Status
closed
Regression
No
Workaround
No
Project

See https://musescore.org/en/node/270668, reported issue confirmed on current master.


Comments

Cause found: editing the jump's "jump to", "play until" or "continue at" properties (e.g. using the inspector) breaks MusicXML export. Bug present in both 2.x and 3.x.

In the MusicXML exporter, function directionJump() uses Jump::jumpType(), which returns Jump::Type::USER if any of these properties has been changed from the defaults. The MusicXML exporter does not handle that and obviously needs rework.

thx for considering my bug report. I wonder if there is any current fix for this at the moment. Or do you schedule it to be fixed in next updates ?

thanks again

You mean saving the xml as mscz?
MuseScore dies with a failed assertion:
Fatal: XmlWriter::tag: unsupported type 38 float (...\MuseScore\libmscore\xmlwriter.cpp:397, void Ms::XmlWriter::tag(const QString&, QVariant))

Actually it seems like the jump markers in the score from the forum topic cannot be accurately represented in MusicXML at all. In this score playback should jump from the same "To Coda" marker to two different "Coda" signs, depending on the number of repeat. MusicXML allows to specify a label for a coda to jump to in a <sound> tag corresponding to that "To Coda" marker, but there may be only one label specified, and only one <sound> tag is allowed within one <direction>. Therefore in order to preserve the structure of the score's jumps multiple <direction> tags will be needed so another "To Coda" label (or some dummy empty direction) will have to appear in the exported score.

The issue with exporting the user-edited jump labels can certainly be resolves but if a score's repeats structure doesn't allow to map each "To Coda" label to exactly one Coda sign then the issue described above will take place.

Fix version
4.0.0