musescore / musescore/MuseScore

[Midi Export] Grace bend target note plays earlier than it should

Open
#25,397 0 comments 0 reactions 1 assignee View on GitHub

@alexpavlov96 is already working on this.

Since Nov 1, 2024.

MIDI P2
Dominant language
C++
Stars
15.1k
Forks
3.3k
Avg merge
2d 2h
Merged PRs (30d)
91

Description

Root issue is that grace note should play before the target note time and should take a duration from the previous note https://github.com/musescore/MuseScore/issues/20494. Same issue exports to Midi.
As a temporary solution we need to cover Grace bend as "note before beat" in Midi. To make the solution as simple as possible we should ignore bend diagram value for Midi export and just follow the rules:

Expected result:

  • grace bend have duration equals 2 levels shorter than it's target note (e.g. 32th if target note is 8th)
  • grace bend can't be longer than 16th (e.g. 16 if target note is half or longer)
  • grace note can't grab more than half of the previous note (e.g. 32th if target note is half, but previous note is 16th)

grace bend .mscz.zip

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.