Improving Soundfont Handling

• Oct 2, 2013 - 19:14

I hope you don't mind, but I have some comments on how multiple sound fonts work in 2.

First off, well done, this is an important feature and it already works very well.

However I believe there are some things which could be noticeably improved:

1) If you have multiple fonts loaded, it's hard to find what you want in the mixer, especially if the instruments in different fonts have similar (or indeed the same) names. I think this would be easier to use if there were two drop-downs per instrument: with the first selecting the font, and the second the preset.
2) If multiple fonts are loaded in the synthesizer and these both use the same bank, then it seems that one font will overwrite the other. I realize this emulates what soundfont-aware hardware does, but many software players will allow you to play sounds from different fonts even if they happen to use the same bank (or indeed preset). IMO this is a far superior way to go.
3) If I save a file which uses sounds from some non-default soundfont, then that font doesn't get automatically loaded in order to facilitate playback even though the font file is in the "sounds" folder. IMO it would be a lot less annoying if this could happen: again SynthFont will do this for MIDI files so there's clearly no technical impediment.
4) Relating to (3), why should sound fonts have to be explicitly loaded in the synthesizer anyway? Why not just make available everything in the "sounds" folder? This would no doubt depend on (1) and (2).

Many thanks for considering my musings, and please do let me know if there's anything I can test.


Comments

A couple of others I'd forgotten about:

4) If you create an organ score, then all the parts share the same sound font, but of course many real world organs can have a different sound attached to each part.
5) There's no way to change the sound for a part mid-score. Again this mainly relates to organ music where the part for each hand (and indeed feet), may be required to change sounds several times through the piece.

In reply to by TavyMusic

1/ Having two combos is a nice idea. It would destroy the layout of the current mixer though. What about having the name of the soundfont before the name of the preset?

2/ This is probably a bug. Can someone create a simple test case with two known soundfonts and file a proper issue in the issue tracker

3/ No technical impediment : "Easy is how you call other people's job"...
You should be able to save the synthesizer configuration in the score file, including the soundfonts name, if you press the button "Save" in Display -> Synthesizer. From my point of view, these 4 buttons Save/Load (to save and load from the score) and Store/Recall (to save and load from MuseScore settings) are very counter intuitive... I would make "Load/Save" automatic when changing from one score to another and eventually have a button to "Set default / Reset" to override the default settings. From a discussion with Werner, it seems that it's not that easy... In particular, loading a set of soundfonts while changing from one score to another would be slow.

4/ I think it would make the startup time and memory usage grow, especially for SFZ soundfonts with 1G of samples like Salamander Piano... less for SF2 since I believe the samples are loaded in memory only on demand. If you really want, you can Add the soundfonts you want, then "Store" and on startup MuseScore will load them all. I tried it with 16 soundfonts, including Crisis (1.6G) and Titanic(250M), the startup time is only one second longer and memory usage is "only" 1.5x higher.

4 bis/ Too bad for organ... each staff can be made a separated in instrument.

5/ It's maybe not convenient but it's not the most used feature either. It's possible to change sound mid score for a part in MuseScore 1.3, see Change and adjust sounds . It seems to be broken in the current development version, but I can't find a bug report. It could be an indication that almost nobody cares.

In reply to by [DELETED] 5

2/ This is probably a bug.
I'm not sure - I think it could be a limitation of the Fluidsynth soundfont player. I was looking at the code yesterday, and I couldn't see anywhere which specified which soundfont was selected, but if no-one else has already done this I will later today.

5/ It's maybe not convenient but it's not the most used feature either. It's possible to change sound mid score for a part in MuseScore 1.3, see Change and adjust sounds. It seems to be broken in the current development version, but I can't find a bug report. It could be an indication that almost nobody cares.

It's an indication that I haven't got round to testing it yet :) Now the future of Aeolus in the project is unclear, it will be a feature organists will want to use.

In reply to by ChurchOrganist

Thanks for the replies - I had a quick look at FluidSynth's API's and it appears (2) is an intrinsic limitation of the synth - it seems to maintain banks of instruments just like MIDI hardware would. It also has various (customizable) limits on numbers of instruments/sounds etc, but I don't see anything in the Musescores docs or preferences as to what musescore sets these to. Probably few people would exceed the limits anyway?

As for (1), yes prefixing the instrument name with the soundfont name would work too I guess. Though if we're stuck with one instrument per slot, then I'd like some kind of warning and/or disabling of instruments that have been overwritten, otherwise it gets really confusing trying to figure out why things don't work :-)

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