Restricted dynamic range for sfz fonts

• Nov 19, 2018 - 00:38

I use sfz fonts for their realistic sound.

However I found one major problem: restricted dynamic range.
Attached picture with exported wav file illustrates the problem. Violin plays a note at various loudness from ppp to fff first using SFZ fonts and next using SF3 Fluid (default). Mixer volume settings were identical.

As you can see in the attached picture, SFZ font translates ppp-fff range to pp-mp !!!
Velocity settings do not help. This should be considered a BUG.

Dynamic range of sfz fonts is completely useless and prevents realistic assessment of the sound of our compositions. Many orchestral sounds are impossible to generate using such a limited dynamic range.

I tried 2 strategies to work around this problem:

  1. Change instrument mid-staff to identical instrument but with a different volume settings in the mixer.
    Unfortunately, when I try to change the instrument mid-staff back to the previous one, a new mixer entry is created. There is no option to use an existing mixer entry. As a result - toggling loud-soft instruments mid-staff causes a chain of indistinguishable mixer entries which are a nightmare to manage.

  2. I introduced an extra staff for each instrument in the orchestra with different volume setting in the mixer. This works, but the score looks monstrous and it is awkward to see

Another thing that I consider trying is to edit sfz fonts to create soft and loud sounds selectable in a similar way to pizzicato-arco. However I cannot find any documentation for sfz files.

Also I could not find any documentation HOW Musescore implements SFZ fonts volume and why mixer volume works for sfz fonts, but velocity settings and dynamic range are both bugged.

Can you help?

Attachment Size
sfz-sf3-dynamic-compare.png 27.45 KB


What makes you think this is anything but an incompatibility with the particular soundfont you are using? A number of SFZ soundfonts are designed so that volume is controlled by the volume or expression controller instead of velocity. If your SFZ is designed to be controlled by velocity - which is what MuseScore uses - it should be fine. For instance, that seems to be the case with Virtual Playing Orchestra, which actually provides both versions. You just need to use the one designed to work with velocity - the Standard as opposed to Performance version. And where appropriate you need to use the "normal" / "mod wheel" version of each specific sound, not the "dxf" version, also as explained on their web site. Probably similar with other soundfonts.

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