order preset list to account for similar instruments on banks > 0
In the mixer, instead of listing all presets from bank 0, then all presets from bank 1, etc., we should instead show all presets that share a common preset number together. In General MIDI, instruments that are similar or a variant of a bank 0 instrument are placed in higher banks using the same preset number.
Currently MuseScore's mixer does this:
Bank 0, Preset 0: Acoustic Grand Piano
Bank 0, Preset 1: Bright Grand Piano
...
...
... (126 other instruments)
...
...
Bank 1, Preset 0: Mellow Grand Piano
We want it to do this instead:
Bank 0, Preset 0: Acoustic Grand Piano
Bank 1, Preset 0: Mellow Grand Piano
Bank 0, Preset 1: Bright Grand Piano
Now all the pianos are together. This isn't an enormous deal now, but as I develop more orchestral sounds for the new SoundFont (e.g., proper section violins, violas, etc.), we don't want these to be scattered randomly through an already difficult-to-parse list.
Comments
What if there is more than one soundfont ? Would you advise to list all Preset 0 from all soundfonts first ?
Right now we indeed list soundfont after soundfont, for each soundfont bank after bank, for each bank, preset after preset.
For the record, it's probably
Fluid::updatePatchList()
which need tweakings.I'd sort presets per soundfont, at least for 2.2, where users are used to have one soundfont after the other when using more than one (at least that's how it is documented, I think)
In reply to I'd sort presets per… by Jojo-Schmitz
Since the sounds are listed by sound font in version 2.x I would suggest keeping it that way for consistency's sake in 2.2. Right now if someone asks a question about the mixer and sound fonts, I know they have sounds listed by sound font. If you want to put all of the different sounds together for 3.0 that would make sense and make it much easier to find different sounds for a given instrument. There is less confusion between major versions than minor versions.
Agreed that listing should be per-SoundFont. There is no guarantee that user-added SoundFonts will even conform to the GM standard, so mixing those presets together makes little sense, IMO.
What about ordering by soundfont with drop-down lists and then by preset number with each soundfont. Each present number can also have its own drop-down list. Something like this:
>FluidR3mono
>Preset 00
Bank 00, preset 00
Bank 01, preset 00
Bank 02, preset 00
......
Bank 127, preset xx
>Sonatina symphonic sounds
>Preset 00
Bank 00, preset 00
Bank 01, preset 00
Bank 02, preset 00
......
Bank 127, preset xx
Etc.
The main advantage of this would be eliminating the need to scroll through an embarrassingly long list to get to the instrument you want.
In reply to What about ordering by… by Louis Cloete
Yes, I really like this idea for the different SoundFonts, although I wouldn't go so far as to give each preset its own drop-down.
In reply to Yes, I really like this idea… by s.chriscollins
Yes, that might get so refined that it is actually more in your way than useful...
A user on the forum has requested that bank and preset number should be visible as well. Perhaps something concise like this would be useful:
...etc.
Then the user could see both sound source and bank/preset number easily.
In reply to A user on the forum has… by s.chriscollins
That was me ;) Thanks for putting it here, I was unsure whether to open a new feature request for it or where to put it; now I found it.
The way I see it, we can keep sorting by soundfonts as first-order, since people are used to it, but also display the soundfont (as non-selectable item in the list) so people like me who have just begun playing with soundfonts find what’s where.
Then, we have the bank:preset in front of the name (Chris emboldened them; if that’s not possible I’d put them into parenthesēs), so that people do not need to compare the name of the instrument to find out the song they want if they already know the preset number. Pro: names of instruments are not necessarily unique, and they’re English; for international users, comparing numbers might be easier (especially in bank 0 of a GM soundfont, they might have a cheatsheet at hand already in their native language, and just need to figure out the fencepost problem (0-based vs. 1-based) to get the correct sound).
I know this is marked as a "feature request", but it is very important that we get this resolved for future updates to the core SoundFont. Any chance we could have this done for next release?
Though I would like all trumpets together, a temporary workaround might be to prefix the sounds with with soundfont name (or a short version of it). Or maybe just suffixed with an incremental number. Yes, I am aware some instruments are already numbered intrafont, but you could do something like:
Font A
,,,
trumpet - 01
...
trumpet 2 - 01
...
Font B
,,,
trumpet - 02
...
trumpet 2 - 02
...
Or maybe incremental letters could be used.
In reply to (No subject) by Jojo-Schmitz
One really useful solution to this problem would be to copy what Mixcraft does: have a search bar at the top of the instrument selection pop-up:
This would make it much easier for users to find the desired sound within the mass of instrument sounds that can accumulate.
That being said, proper preset ordering (bank first, then preset) would at least put like instruments together. Currently, one must scroll way down past the default ensemble strings to find the new violin, viola, cello and bass section presets. Ordering them bank first would put all of these together.
Also, instead of displaying the presets from all loaded sound banks in the same list, add another drop-down above "Patch:" in the mixer called "Source:", which would let the user choose between all loaded sound banks. Then, the "Patch:" drop-down would only display presets from the selected sound bank. Also selectable in "Source:" could be available external MIDI devices for easy connectivity to VST libraries running in another host.
In reply to One really useful solution… by s.chriscollins
Good step forward, but how would the user know which sound font the instrument is in?
In reply to Good step forward, but how… by mike320
I just updated my post above with an answer to this.
In reply to I just updated my post above… by s.chriscollins
I for one like it.
Search is okay for many use cases, but for people who don’t know what they’re looking for, the browsable/scrollable list should also work (the current dropdown doesn’t scale well).
Also, I would like to repeat the request to indicate, for each sound, which soundfont it is from (at least if there are multiple), or, if we continue sorting by soundfont, separators which indicate which soundfont is which (ideally this even if there is only one, for consistency).
See also #105271: Add auto filter function in Mixer Sound Mapping
https://github.com/musescore/MuseScore/pull/4535
Fixed in branch master, commit b01a1cb583
fix #269939: order preset list to account for similar instruments on different banks
Fixed in branch master, commit 9ff66ed1df
Merge pull request #4535 from jthistle/269939-synth-patch-order
fix #269939: order preset list to account for similar instruments on different banks
In reply to One really useful solution… by s.chriscollins
To all the newer users of MuseScore, it would be perfect if each instrument option has a little icon (image) representing the original real instrument. At least, to the GM bank 0.
In reply to To all the newer users of… by jotape1960
This "fix" doesn't seem to do anything productve. I was expecting the user to be able to tell when the instruments list switched from one sound font to another. The new display, IMHO, is worse that the previous version. You now have a list like
Grand piano
Grand piano
Mellow Grand piano
Bright piano
...
Harpsichord
Harpsichord
...
It is quite confusing which sounds go with which soundfont. Previously it was easier to tell when you switched from one soundfont to another. I have 3 soundfonts loaded by default. Now, I have to remember that sound font A & C have a grand piano, A & B has a harpsichord and so forth. This may be better for the future playback improvements, but I think it is worse for the user trying to change sounds. I'm open for discussion on this though.
adding some numbering, maybe Soundfont#.Program#.Bank#: Name
In reply to This "fix" doesn't seem to… by mike320
No, you’re right, this is awful, not only is the bank:preset not shown (as was requested in this issue) but also the soundfont isn’t (which is the main thing that ought to have come out of this issue), and the new display is worse in that you now can’t even count to figure out when a new soundfont begins.
Perhaps it would be somewhat useful IF the other things (display source soundfont, bank and preset info) had been merged FIRST, but as-is this is a major regression.
In reply to No, you’re right, this is… by mirabilos
This should be seen as a typical MS-Excel (or LibreOffice Calc) spreadsheet.
If the user uses more than one SoundFont file, then it has to have more than one "SoundFont" columns group.
Whatever, each used SoundFont source should have the following column group order:
First column should be the bank number.
Second column should be the MIDI patch/instrument number.
Third column should be the patch/instrument name (according with the SoundFont file used).
Maybe all of this could be made FROM xml or text files (associated with the SoundFont files) with all the MIDI information... maybe!
If you wanted to get really fancy, you'd have a header up top with soundfont, bank, preset, name, and you could sort the list via that.
As it is though, it's just really confusing.
.
This new order works well with most standard soundfonts, but some others, such as Timbres of heaven and other less conventional soundfonts end up way out of order.
You can see in the screenshots that with this new order, sound effects which were stored out of the way in bank 64 now show up at the top of the list
There really should be an option to use the old order or a way to personalize it.
In reply to This new order works well… by Nixtou
This problem is experienced in soundfonts that support XG banks.
for example: bank 127 is the drum/percussion bank for XG and drums will appear just below the piano sounds.
eg:
Grand Piano
XG Standard Drumset 1
Grand Piano 2
XG Standard Drumset 2
etc.
Just reporting here too (as it is linked to above) I brought up the idea of soundfont bookmarks (maybe dots/ small buttons to the left of the list), and I think (assuming there will still be some sort of dropdown list) that being able to let the user set his/ her own bookmarks by patch would make it easy for the user to navigate them, whether one wants to divide soundfonts by sf2, by bank, some combination, or lack thereof.
With version 3.1.0.7078 and MuseScore_General_Compact.sf2 (Only Pianos/Strings/A few others)
Why not change the default MuseScore_General_.sf2/3 Instrument Bank /Preset to make the mixer list neat?
In reply to With version 3.1.0.7078 … by Xianyue賢越
Because it’s prescribed by GM.
But we’ve had multiple suggestions on how to make it better, and the current state of affairs makes it virtually impossible to use more than one soundfont, and is even worse than it used to be in 2.3.2, so…