Sign in

Reverb being played even with CC 91 at 0

  • BA 45 0
    Message from batata004 on
    Hi,

    I have a soundfont which has in the `Reverb` column the value `10%`. When I load this soundfont in a player and then I send `0` to the CC `91` the reverb is still playing. I thought that the CC `91` was supposed to enable/disable reverb linearly from 0-127. For example, if I send `127` to the CC `91` then the `Reverb` should be played at 10% (which means 100% of the configured value in the column `Reverb` of Polyphone). 

    So why is the reverb still being played when I send `0` to the CC `91`? Thanks a lot!
  • ZI 197 0
    It may be overriding depending on the setting in the soundfont-player you are using (like "Always use this value").

    If there is another effect unit connected to the soundfont player (or if there is an independent reveb in itself), it may not be affected by MIDI messages.

    Maybe there was already an effect when the sample in the soundfont was recorded and therefore it cannot be controlled.

    Also:
    we don't know where this 10% value is. What if it is in the Preset section, and there is another value in the Instrument section?
  • BA 45 0
    Message from batata004 on
    @ziyametedemircan I am pretty sure the samples dont have reverb in it because when I remove/set the `Reverb` at the Preset, I can hear the reverb being applied or not.

    I am providing you in the link below a proof of concept with this bug happening:

    https://www.quemfazsite.com.br/temp/celestareverb.sf2 

    You will see at the PRESET the reverb is set to 50%. Then I load this soundfont above in FluidSynth MIDI (app on Android) and then I send CC 91 with value 0. When I play any note, the reverb effect will still be present. However if I create a modulator (like in the image below), then I can easily enable/disable reverb effect sending values from 0 to 127 to the CC 29. 

  • ZI 197 0
    Message from ziyametedemircan on 1
    This reveb and chorus part has always been a subject of complaints. It also seemed strange to me when you explained it.

    Some information:

    CC91 is in the default modulators list as of soundfont2.01.. (When you click on the Override default modulator menu in the Instruments section in Polyphone, you can see it in the 8th place in the list) Its default settings are unipolar, linear and 200/1000.
    The control of the default modulators is in the soundfont-synthesizer or the Soundfont-Player.

    The default modulators are not included in the soundfont or are not saved in the soundft. The soundfont-player or the soundfont-synthesizer decides which ones will be included or not, in what proportion and with what values, according to the version number of the soundfont.

    In other words, the responsibility and decision for this is not in the sf editor.
    In the sf-editor and only in the Instrument section: you can reuse a default modulator with the same parameters but by nullifying or overriding its value. In this case, the newly defined value replaces the default value. In the Polyphone sf editor, you can see this as "Overriding default mod." or "Disabling default mod." below the modulator number -as information-. However, this is only possible in the Instruments section.

    Everything in the Presets section is relative to the Instruments section.
    For example: if you write a value in the reverb cell in the Presets section: if it is a positive value, it is added to the existing value in the Instruments section, if it is a negative value, it is subtracted from the existing value in the Instruments section.
    In the Presets section: various relative values such as multiply (x), additive, range, vary depending on where they are used. (Almost everything that is not specified as Multiply(x) is additive.
    Also, you cannot reset or override any modulator in the Presets section. You only add a relative modulator. With this, the existing value can be decreased or increased.

    Thoughts:
    Let's come to the Reverb(%) and Chorus(%) settings (in the Instruments section):
    There is a specification. There are definitions specified here. And they build something according to this. In the specification, it is stated that the value written here will be sent to the reverb processor. But it is also stated that if you use Dry output, the value here will be useless. So, there is a Mix section that we cannot control. And here, a dry/effect type mix can be performed. But we do not know where and how this happens. Maybe there was something like this in the original synthesizer (EMU8000) and it was inherited from there.

    Let's come to why it can be disabled with another CC in the FluidSynth application you use: Really I don't know.

    Trials:
    What I saw by trying with Polyphone's own internal synthesizer is this: the value written to that cell is accepted as the minimum and is directly included in the processor. I think there is a conflict between the default modulator and the value here. For example, if you don't write anything in that field (leave it blank), the default 20% reverb modulator value (200 out of 1000) already works as it should with CC91 (in Polyphone's own internal synthesizer). You can adjust the percentage of the default modulator by re-defining the modulator in the Instruments section, as I mentioned above.

    Attachment for a soundfont setting:
    attached: In the Instrument and Preset sections, there is no value in the reverb field, and in the Instrument section, there is only the default reverb modulator overridden to the maximum value. I wonder if you can check this with CC91 in the application you use.

    Note: To save space, I left only one sample in the soundfont: if you play around C4 the sound will be normal.
    celestareverb-z01.sf2

Sign in or register to take part in discussions.

Polyphone needs you!

Polyphone is free but there are costs associated with its website and development. A small donation will help a lot.

Donate
Learn the basics Try a tutorial
Scroll to
top