musescore / MuseScore

MuseScore is an open source and free music notation software. For support, contribution, bug reports, visit MuseScore.org. Fork and make pull requests!
https://musescore.org
Other
12.14k stars 2.63k forks source link

[MU4 Issue] MusicXML export is incorrect when using local time signature #16227

Open Daniel-R15 opened 1 year ago

Daniel-R15 commented 1 year ago

Description: When a section of music with a complex local time signature is exported to MusicXML and the MusicXML is then re-imported, the resulting layout is incorrect. This is not a MS 4.0 regression, because the same problem exists for MS 3.6.2.

Steps to reproduce the behavior:

  1. Create a grand staff with two measures, as per illustration below. The example is the first two measures of Goldberg Variation 26 (J S Bach). See example score on musescore.org forum: https://musescore.org/en/node/286883#comment-1172268
  2. The upper staff has a local time signature of 18/16, and the lower staff has the general time signature of 3/4.
  3. The upper staff's measures each contain three groups of 6 sixteenth notes, and the lower staff is a varied rhythm in 3/4 time.
  4. Export this short score to MusicXML.
  5. Then re-import the MusicXML into MS 4.0.1

Expected behavior: a) the 18/16 time signature should apply to the upper staff b) the general 3/4 time signature should apply to the lower staff

Actual behavior: a) the 18/16 time signature does apply to the upper staff; b) the time signature in the lower staff wrongly changes from 3/4 to 18/16, and the measure duration is corrupted by introducing a leading rest in each measure.

Screenshots: Desired layout: Goldberg_Variation_26_OpenGoldberg

Faulty layout after import of MusicXML: Goldberg_Variation_26_after MusicXML_import_MS4

Platform information: OS: Windows 10 Version 2009, Arch.: x86_64, MuseScore version (64-bit): 4.0.1-230121751, revision: github-musescore-musescore-9b70a8c

Issue on musescore.org forum: https://musescore.org/en/node/286883#comment-1172268

lvinken commented 7 months ago

Working on it. This feature has never been implemented and is not trivial. This will take some time.

lvinken commented 4 months ago

Status update: still working on this. Export almost done, will submit PR when export is complete. Work in progress in https://github.com/lvinken/MuseScore/commits/issues_16227_local_time_sig/.

Note that import will also have to be updated.