musescore / musescore/MuseScore

Playback errors: decrescendos / crescendos with specific dynamics

Open
#23,133 1 comment 0 reactions 1 assignee View on GitHub

Nobody has claimed this yet.

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

Description

Issue type

General playback bug

Bug description

IN SHORT:

Adding specific dynamics to a hairpin (or to a cresc._ or drecresc._) causes playback issues. For example ...

... if there is no extreme separation between the hairpin (or cresc._ or decresc._) with a specific dynamic at its end and the subsequent dynamic level, the subsequent dynamic level is not played back;

... repeating bars with hairpins (cresc._s or decresc._s) that have a specific beginning/ending dynamic level, the dynamic changes are only reflected during the bar's first instance or last repeat, and even then the change of volume is not gradual, there are often volume spikes;

... specific dynamic levels can't be added to the left side of hairpins (or cresc._s or decresc._s), it is always automatically added to the right side, regardless of the direction of the dynamic changes.

... etc.

IN DETAIL:

See attached test project and PDF, both with detailed explanations. It is a new project I created from scratch, not imported stuff.

IN CONCLUSION:

Even if correcting these bugs is not possible, it would be greatly appreciated if hairpin/decresc./cresc. playback options would be available (at least in terms of their strength). We are stuck with using just plain hairpins, which do work as expected, even over the duration of repeated bars, but they do not produce large enough dynamic changes and there's no way to change their behaviour.

https://musescore.org/en/handbook/4/hairpins#change-playback

––––––––––––––––
Also posted here:
https://musescore.org/en/node/365008

––––––––––––––––
Related:

2021 - Crescendo from niente not functioning as intended
https://musescore.org/en/node/324942

2023 - Dynamic 'n' starting from nothing.
https://musescore.org/en/node/346009

2024 - Volume spikes slightly suddenly when dynamic is decrescendo-ed to niente on strings(?) #22812
https://github.com/musescore/MuseScore/issues/22812

2024 - Fade away to nothing / fade in from nothing, dynamic marking.
https://musescore.org/en/node/364633

Handbook / Dynamics
https://musescore.org/en/handbook/4/dynamics

––––––––––––––––
OS: macOS 11.7, Arch.: x86_64, MuseScore Studio version (64-bit): 4.3.1-241490902,
revision: github-musescore-musescore-026c26b

Steps to reproduce
  1. create two bars with a bunch of notes that fill the bar, not leaving space for long rests
  2. add decrescendo hairpin (or decresc._) to bar 1
  3. click the decrescendo hairpin under the bar and add a soft dynamic to it from palettes (e.g. pp)
  4. add ff (fortissimo) dynamic to first note of bar 2
  5. start playback from bar 1

Result = bar 2 does not play back in ff (fortissimo).

  1. reduce the range of decrescendo hairpin (or decresc._) so that it does not extend all the way to the end of the bar, but ends earlier (for example on beat 3 in a 4/4 bar)
  2. start playback from bar 1

Result = bar 2 plays back in ff as expected, but decrescendo hairpin ends earlier than needed.

Screenshots/Screen recordings

No response

MuseScore Version

OS: macOS 11.7, Arch.: x86_64, MuseScore Studio version (64-bit): 4.3.1-241490902, revision: github-musescore-musescore-026c26b

Regression

I don't know

Operating system

macOS 11.7.10

Additional context

dynamics-playback-errors-test-PDF.pdf
dynamics-playback-errors-test-MSCZ.mscz.zip

MS Basic - Piano

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.