try to find the ranges of these filters, and curves that give access to the useful parts

This commit is contained in:
Alex Birch 2019-06-29 22:10:28 +01:00
parent b5fb52d7b1
commit 542994d672
No known key found for this signature in database
GPG Key ID: 305EB1F98D44ACBA

View File

@ -64,7 +64,10 @@ void FluidSynthModel::initialise() {
// changePreset(128, 13);
float env_amount(12700.0f);
// float env_amount(12000.0f);
// http://www.synthfont.com/SoundFont_NRPNs.PDF
float env_amount(20000.0f);
fluid_mod_t *mod(new_fluid_mod());
@ -73,7 +76,7 @@ void FluidSynthModel::initialise() {
FLUID_MOD_CC
| FLUID_MOD_UNIPOLAR
| FLUID_MOD_CONCAVE
| FLUID_MOD_NEGATIVE);
| FLUID_MOD_POSITIVE);
fluid_mod_set_source2(mod, 0, 0);
fluid_mod_set_dest(mod, GEN_FILTERQ);
fluid_mod_set_amount(mod, FLUID_PEAK_ATTENUATION);
@ -84,8 +87,8 @@ void FluidSynthModel::initialise() {
fluid_mod_set_source1(mod,
static_cast<int>(SOUND_CTRL3), // MIDI CC 72 Release time
FLUID_MOD_CC
| FLUID_MOD_BIPOLAR
| FLUID_MOD_CONCAVE
| FLUID_MOD_UNIPOLAR
| FLUID_MOD_LINEAR
| FLUID_MOD_POSITIVE);
fluid_mod_set_source2(mod, 0, 0);
fluid_mod_set_dest(mod, GEN_VOLENVRELEASE);
@ -97,8 +100,8 @@ void FluidSynthModel::initialise() {
fluid_mod_set_source1(mod,
static_cast<int>(SOUND_CTRL4), // MIDI CC 73 Attack time
FLUID_MOD_CC
| FLUID_MOD_BIPOLAR
| FLUID_MOD_CONCAVE
| FLUID_MOD_UNIPOLAR
| FLUID_MOD_LINEAR
| FLUID_MOD_POSITIVE);
fluid_mod_set_source2(mod, 0, 0);
fluid_mod_set_dest(mod, GEN_VOLENVATTACK);
@ -110,7 +113,7 @@ void FluidSynthModel::initialise() {
fluid_mod_set_source1(mod,
static_cast<int>(SOUND_CTRL5), // MIDI CC 74 Brightness (cutoff frequency, FILTERFC)
FLUID_MOD_CC
| FLUID_MOD_SWITCH
| FLUID_MOD_LINEAR
| FLUID_MOD_UNIPOLAR
| FLUID_MOD_POSITIVE);
fluid_mod_set_source2(mod, 0, 0);
@ -123,8 +126,8 @@ void FluidSynthModel::initialise() {
fluid_mod_set_source1(mod,
static_cast<int>(SOUND_CTRL6), // MIDI CC 75 Decay Time
FLUID_MOD_CC
| FLUID_MOD_BIPOLAR
| FLUID_MOD_CONCAVE
| FLUID_MOD_UNIPOLAR
| FLUID_MOD_LINEAR
| FLUID_MOD_POSITIVE);
fluid_mod_set_source2(mod, 0, 0);
fluid_mod_set_dest(mod, GEN_VOLENVDECAY);