Struct Voice.Modulator
- Namespace
- SpessaSharp.Synthesizer.Engine.Voice
- Assembly
- SpessaSharp.dll
public readonly record struct Voice.Modulator : IEquatable<Voice.Modulator>
- Implements
- Inherited Members
Constructors
Modulator(Modulator, bool, bool, bool)
public Modulator(Modulator Base, bool IsEffectModulator, bool IsDefaultResonantModulator, bool IsModWheelModulator)
Parameters
BaseModulatorIndicates if the given modulator is chorus or reverb effects modulator. This is done to simulate BASSMIDI effects behavior:
- defaults to 1000 transform amount rather than 200
- values can be changed, but anything above 200 is 1000
(except for values above 1000, they are copied directly)
- all values below are multiplied by 5 (200 * 5 = 1000)
- still can be disabled if the soundfont has its own modulator curve
- this fixes the very low amount of reverb by default and doesn't break soundfonts
- defaults to 1000 transform amount rather than 200
IsEffectModulatorboolIsDefaultResonantModulatorboolThe default resonant modulator does not affect the filter gain. Neither XG nor GS responded to cc #74 in that way.
IsModWheelModulatorboolIf this is a modulation wheel modulator (for modulation depth range).
Properties
Base
Indicates if the given modulator is chorus or reverb effects modulator.
This is done to simulate BASSMIDI effects behavior:
- defaults to 1000 transform amount rather than 200
- values can be changed, but anything above 200 is 1000
(except for values above 1000, they are copied directly)
- all values below are multiplied by 5 (200 * 5 = 1000)
- still can be disabled if the soundfont has its own modulator curve
- this fixes the very low amount of reverb by default and doesn't break soundfonts
public Modulator Base { get; init; }
Property Value
IsDefaultResonantModulator
The default resonant modulator does not affect the filter gain. Neither XG nor GS responded to cc #74 in that way.
public bool IsDefaultResonantModulator { get; init; }
Property Value
IsEffectModulator
public bool IsEffectModulator { get; init; }
Property Value
IsModWheelModulator
If this is a modulation wheel modulator (for modulation depth range).
public bool IsModWheelModulator { get; init; }
Property Value
Methods
From(Modulator)
public static Voice.Modulator From(Modulator mod)
Parameters
modModulator