Another way/concept to change instruments in the middle of the piece

• Mar 29, 2019 - 22:28

Hi, gang!!!

According to the today way we have to change an instrument in the middle of some piece, MuseScore mixer uses additional channels to perform what we want to hear.

I wonder... Why? ???

There are enough MIDI control commands to change the MIDI patch number (which is the technical name of this action).

It is the same MIDI command to change between a flute and a violin, or to change from arco to pizzicato.

In binary it is: 1100nnnn 0ppppppp. Where:
1100 is a header which tells the internal gnome we want a change of patch (instrument or sound).
nnnn is the binary MIDI channel we want to use to play the instrument change.
0ppppppp is the binary value wich represent the new instrument we want to hear.

All this action doesn't need another channel: we want to perform unlimited instrument changes in just one channel through the whole piece!!!

So... I'm asking a new way to handle this, in MuseScore, avoiding the use of new channels.

BTW: Today MuseScore has a panel to do this but... It doesn't have any implemented function!!! It is into the "Staff Text" properties edit option, "MIDI Actions" tab. However... We cannot to write something there!!!

So...

Just an idea.

Blessings and Greetings from Chile!!!

JUAN


Comments

In reply to by jeetee

Not quite, it adds a channel. Normally a good thing, because you may want to then also change the volume of that instrument. But if you're constantly going back and forth between the same two sounds, you relly don't need new channels for each. To me, better would be simply a way to reuse channels.

In reply to by Marc Sabatella

That would be a good way to reduce the number of channels in the mixer when switching between instruments several times. Perhaps in the process of making this change, someone could find a way to reuse the original instruments staff properties settings so when they change the text to say something like Cl. in La it doesn't automatically change the text back to A Cl.

In reply to by mike320

Good point. Although this doesn't in itself solve that issue completely, you still want a way to customize the name of each added instrument.

One possibility is, the Instrument Change element could get its own Inspector section that includes a button Change Instrument, and then also either a way to access the "Part" portion of Staff/Part Properties, or just put the long & short names in the Inspector.

In reply to by mike320

I should note that although it isn't obvious, there really is an important distinction internally between staff properties and instrument (or "part") properties. Anything on the instrument / part side of the dialog, we already support changing mid-score as part of an Instrument Chamge element, even if there is no UI for it. Anything on the "staff" side works only if it's already implemented as part of the "staff type change" element. At some level it's weird that we have two separate elements for changing staff type versus changing instruments when it comes to mid-score changes, but one dialog for both when it comes to score-wide changes.

In reply to by mike320

In theory, yes, that support is all there internally - everywhere we access any of the "instrument" properties in the code, we can already do by time position ("tick"). As I've mentioned previously, you can absolutely change instrument name by editing your SMCX file, or by using a custom instruments.xml file that has this info. I haven't tried it, but I can't see why this would work for string tuning or range, either

So what I'm saying is, the infrastructure is completely there, it's just a matter of how to expose it in the UI. That is what I was trying to say in my previous post above - internally, the support is there even if it isn't exposed in UI yet. My point was, there really is a difference internally between "staff" versus "instrument" properties, even though the "Staff/Part Properties" dialog doesn't make this clear.

In reply to by Marc Sabatella

My humble opinion is... There is some redundant way to go to the MIDI instrument parameters in some point of MuseScore code.

According to my very limited knowledge, all that MIDI parameters are so simple to use (if I could get MIDI sounds from an external device, using the very old "Logo" language... Anyone could do it today with C++).

MuseScore should give the user a panel with all the MIDI possibilities, without to affect the visual presentation of the score.

The panel is here!!! (Staff properties, MIDI Action) But... It is absolutely not useful... yet.

In reply to by Marc Sabatella

So the answer is no, because doing the program's work is not what I or most users are looking for. I'm capable of changing the mscx and instruments.xml, but I really don't want to do that and it is above most average users' expected abilities. Many users think their version 2 scores were deleted because version 3 doesn't automatically show them. Forget about them editing the .mscx that doesn't even exist in their worlds.

In reply to by mike320

Of course, I wasn't suggesting this was a viable solution for most people. I was merely commenting on this implementation detail and what it might imply regarding a design for the UI.

Again, my observation is that it is a little odd that we currently have two separate elements for "staff type change" vs. "instrument change", and two totally different methods for actually specifying the change (Inspector vs right-click dialog), and yet the associated properties are combined into a single dialog when it comes to making the change score-wide vs mid-score. Whatever change we propose to solve the problem at hand, it would be nice if it didn't make this already-not-ideal situation worse.

Do you still have an unanswered question? Please log in first to post your question.