Sane values for filter
parent
a0d54946b1
commit
864e4d1431
8
voice.c
8
voice.c
|
@ -17,8 +17,8 @@ static inline void voice_tick(struct voice_t *voice)
|
||||||
voice->sample++;
|
voice->sample++;
|
||||||
}
|
}
|
||||||
|
|
||||||
static double _R = 2.7;
|
static double _R = 4700.0;
|
||||||
static double _C = 4.3;
|
static double _C = 0.000000047;
|
||||||
|
|
||||||
static inline void voice_filter(struct voice_t *voice, float l, float r)
|
static inline void voice_filter(struct voice_t *voice, float l, float r)
|
||||||
{
|
{
|
||||||
|
@ -53,8 +53,8 @@ void voice_run(struct voice_t *voice, uint32_t samples, float *left, float *righ
|
||||||
amplitude = env_getamplitude(&_env2, voice->sample, voice->released) * voice->velocity * voice->velocity * 1.5;
|
amplitude = env_getamplitude(&_env2, voice->sample, voice->released) * voice->velocity * voice->velocity * 1.5;
|
||||||
|
|
||||||
if (amplitude > 0.0) {
|
if (amplitude > 0.0) {
|
||||||
l *= voice->osc[1].tri * (1.0 + voice->osc[2].sin * 0.25);
|
l += amplitude * voice->osc[1].tri * (1.0 + voice->osc[2].sin * 0.25);
|
||||||
r *= voice->osc[1].tri * (1.0 + voice->osc[2].sin * 0.25);
|
r += amplitude * voice->osc[1].tri * (1.0 + voice->osc[2].sin * 0.25);
|
||||||
}
|
}
|
||||||
|
|
||||||
voice_filter(voice, l, r);
|
voice_filter(voice, l, r);
|
||||||
|
|
Loading…
Reference in New Issue