Instruments play as piano with odd side effects

• Feb 19, 2019 - 15:34
Reported version
3.x-dev
Priority
P0 - Critical
Type
Functional
Frequency
Many
Severity
S1 - Blocker
Reproducibility
Always
Status
closed
Regression
Yes
Workaround
Yes
Project

“Test part play.mscz” was originally created in V2 and used my own instruments file and soundfont. This is a cut down version.
There are 4 instruments, three of which correspond to standard GM bank 0, Flute, Clarinet and Alto sax. The fifth is a Euphonium which has patch 58 (Tuba in GM) in bank 64.
For the tests, I used the MuseScore-General.sf3 soundfont.
With version 3.0.1, all the parts play correctly, the euphonium part being played as a tuba. In the mixer, the patch is shown as Grand Piano, which it clearly is not.
With nightly 2019-02-18-0821, all the parts play as a piano, even though the “patch” field in the mixer says otherwise, and, when you drop down the patch list, all sorts of arbitrary patches are selected (at one point, all sorts of arbitrary instruments were played, but I cannot reproduce this). Resetting the patches in the mixer fixes it. Changing the instruments in the staff properties fixes it, but may have bizarre side effects.
I reported this first in #109941: Regression—playback in single part instead plays full score as I was testing the change to the mixer. cadiz1 reported that changing the Euphonium to a standard bass caused Musescore to crash on my original submission
I could not reproduce this crash but I retyped the score (“Test part play RETYPED.mscz”) in nightly 2019-02-18-0821 with standard instruments. The wrong instrument effect is the same.

Although I could not get Musescore to crash when changing the Euphonium, I found a stranger effect when I had both the cut-down and retyped scores open.
Starting with an empty nightly 2019-02-18-0821 and MuseScore-General.sf3 soundfont:
Load “Test part play.mscz” and “Test part play RETYPED.mscz”
Both play as piano.
Change the Euphonium in “Test part play” to Strings bowed / Contrabass.
The bass lines in BOTH scores now play as a bowed double bass. Changing Euphonium in one score changes the Tuba in the other!

Version test for wrong instrument effect.
MuseScoreNightly-2019-01-30-1438-master-ea7dc1d OK
MuseScoreNightly-2019-02-08-1432-master-a21a1e0 OK
MuseScoreNightly-2019-02-15-1723-master-7678137-x86_64 OK
MuseScoreNightly-2019-02-16-0933-master-27dc900-x86_64 NOK
MuseScoreNightly-2019-02-17-1345-master-8057bc5-x86_64 NOK
MuseScoreNightly-2019-02-18-0821-master-6469ea4-x86_64 NOK
MuseScoreNightly-2019-02-19-0956-master-ca4ddb1-x86_64 NOK

Furthermore, both cut down scores suffer from the odd playback problem #283698: Playback from note in score jumps / pauses / hangs from the start of the score, in this case hanging for 10-15 seconds the first time the score is played (whether OK or NOK in above list).

Attachment Size
Test part play.mscz 21.85 KB
Test part play RETYPED.mscz 8.66 KB

Comments

" cadiz1 reported that changing the Euphonium to a standard bass caused Musescore to crash on my original submission. I could not reproduce this crash "

To get the crash with 2818f33 and your score in attachment in other thread: https://musescore.org/en/node/109941#comment-896197

Steps:
1) Load the file: Test part play.mscz
2) Toggle in Basse Sib Part
3) Right-click -> Staff properties -> Change Instrument
4) Choose: Bass Guitar (Strings-Plucked)
5) Ok -> Ok

----> Crash

In reply to by cadiz1

That is a solid crash - with the original file submitted in the other thread and with both, much simpler, files submitted above (provided you create the parts first in the retyped file - new file attached).

I could not reproduce this because I was changing the instrument in the full score - always OK. Change the instrument in the part and it crashes. This applies to all parts e.g. Clarinet to Violin crashes as well.

This seems to be connected with the main topic as it is OK in MuseScoreNightly-2019-02-15-1723-master-7678137-x86_64 but not in MuseScoreNightly-2019-02-16-0933-master-27dc900-x86_64.

Attachment Size
Test part play RETYPED with parts.mscz 10.73 KB
Title In nightly builds, instruments play as piano with odd side effects Instruments play as piano with odd side effects

I'm updating the title since the problem has persisted into the 3.0.3 release.

Title Instruments play as piano with odd side effects Instruments playing as Piano

Hi, there!

I am confused at the new update.
When I went to play back one of my scores,all of the instruments were playing as Piano. I tried with another score and the same thing occurred. This is happening in ALL of my files!
I am not sure of what's going on here, but can somebody please help me?
This issue is being marked as a "critical" as I have a project that I have to use the software for.

Thanks,
Taylor Fraasch

Title Instruments playing as Piano Instruments play as piano with odd side effects
Workaround No Yes

Workaround: reassign each sound explicitly in the Mixer (F10)

Open the Mixer by pressing F10. Look at the sound name in the Patch dropdown. Click on the Patch dropdown. Click on the sound you saw before you opened the dropdown. (It should be in the center of the list.)

In reply to by Minecraftgeek

The drum-kit is especially frustrating to reset as there are more than one instrument represented here. I am not finding the original drum-kit I used. For me this is not critical, but just frustrating to have to redo this. Still very happy with the product. Having been in app dev for years I know these "unintended consequences" happen despite all of the prep to prevent. Keep making the product better is all I ask.

Frequency Many

Comes up in issue tracker and forum very frequently now.
The workaround to restore via Mixer actually doesn't work, that change doesn't survice a close/open, so the only remaining workaround is to fall back to 3.0.2 (which, at least for Windows, means to uninstall 3.0.3 first)

In reply to by Anatoly-os

Workaround Yes No

The suggested work-around of re-instrumenting scores does not seem to work in some cases.

https://musescore.org/en/node/284901

It is also impossible or impractical to expect a 2nd party to be able to re-instrument a piece properly, in the case of collaborations.

It is risky to have a user make modifications to previously orchestrated work and re-save, as this might corrupt the original instrumentation in a way that might not be easily recovered once this issue is fixed.

Status PR created fixed

Fixed in branch master, commit 2df46d4dc0

_fix #284426: fix wrong instruments on playback of certain scores

This occurs if MIDI port and channel are explicitly set in MSCX file.

The reason is invalid init list in playback channel: the playback
channel created on reading of such Channel misses updateInitList()
call so its init list remains invalid. Calling addMidiMapping()
when the Channel being read is in a valid state (after reading is
finished) fixes the issue._

Fix version
3.0.4