aboutsummaryrefslogtreecommitdiffstats
path: root/Alc/midi
diff options
context:
space:
mode:
Diffstat (limited to 'Alc/midi')
-rw-r--r--Alc/midi/base.c8
-rw-r--r--Alc/midi/fluidsynth.c3
-rw-r--r--Alc/midi/sf2load.c6
3 files changed, 13 insertions, 4 deletions
diff --git a/Alc/midi/base.c b/Alc/midi/base.c
index 19adc810..1a298ba4 100644
--- a/Alc/midi/base.c
+++ b/Alc/midi/base.c
@@ -322,12 +322,18 @@ void ALfontsound_Construct(ALfontsound *self)
self->VolEnv.KeyToHoldTime = 0;
self->VolEnv.KeyToDecayTime = 0;
+ self->CoarseTuning = 0;
+ self->FineTuning = 0;
+
+ self->LoopMode = AL_NONE;
+
+ self->TuningScale = 100;
+
self->Start = 0;
self->End = 0;
self->LoopStart = 0;
self->LoopEnd = 0;
self->SampleRate = 0;
- self->LoopMode = AL_NONE;
self->PitchKey = 0;
self->PitchCorrection = 0;
self->SampleType = AL_NONE;
diff --git a/Alc/midi/fluidsynth.c b/Alc/midi/fluidsynth.c
index b19cfd03..a32c87c1 100644
--- a/Alc/midi/fluidsynth.c
+++ b/Alc/midi/fluidsynth.c
@@ -186,7 +186,10 @@ static int FPreset_noteOn(fluid_preset_t *preset, fluid_synth_t *synth, int chan
fluid_voice_gen_set(voice, 38, sound->VolEnv.ReleaseTime);
fluid_voice_gen_set(voice, 39, sound->VolEnv.KeyToHoldTime);
fluid_voice_gen_set(voice, 40, sound->VolEnv.KeyToDecayTime);
+ fluid_voice_gen_set(voice, 51, sound->CoarseTuning);
+ fluid_voice_gen_set(voice, 52, sound->FineTuning);
fluid_voice_gen_set(voice, 54, sound->LoopMode);
+ fluid_voice_gen_set(voice, 56, sound->TuningScale);
for(m = 0;m < sample->NumMods;m++)
fluid_voice_add_mod(voice, &sample->Mods[m], FLUID_VOICE_OVERWRITE);
diff --git a/Alc/midi/sf2load.c b/Alc/midi/sf2load.c
index de238296..ab008d83 100644
--- a/Alc/midi/sf2load.c
+++ b/Alc/midi/sf2load.c
@@ -845,12 +845,12 @@ static void fillZone(ALuint id, const GenModList *zone)
0, /* 48 - initialAttenuation */
0, /* 49 - */
0, /* 50 - endloopAddrCoarseOffset */
- 0, /* 51 - corseTune */
- 0, /* 52 - fineTune */
+ AL_TUNING_COARSE_SOFT, /* 51 - corseTune */
+ AL_TUNING_FINE_SOFT, /* 52 - fineTune */
0, /* 53 - */
AL_LOOP_MODE_SOFT, /* 54 - sampleModes */
0, /* 55 - */
- 0, /* 56 - scaleTuning */
+ AL_TUNING_SCALE_SOFT, /* 56 - scaleTuning */
0, /* 57 - exclusiveClass */
AL_BASE_KEY_SOFT, /* 58 - overridingRootKey */
0, /* 59 - */