From e70f98c95afc61802b26795dbe8aeb20514a211b Mon Sep 17 00:00:00 2001 From: Chris Robinson Date: Sat, 12 Oct 2019 16:41:13 -0700 Subject: Wrap the cycle amount when passing to sin() --- examples/altonegen.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/examples/altonegen.c b/examples/altonegen.c index 26ae788d..553bc996 100644 --- a/examples/altonegen.c +++ b/examples/altonegen.c @@ -82,7 +82,10 @@ static void ApplySin(ALfloat *data, ALdouble g, ALuint srate, ALuint freq) ALdouble smps_per_cycle = (ALdouble)srate / freq; ALuint i; for(i = 0;i < srate;i++) - data[i] += (ALfloat)(sin(i/smps_per_cycle * 2.0*M_PI) * g); + { + ALdouble ival; + data[i] += (ALfloat)(sin(modf(i/smps_per_cycle, &ival) * 2.0*M_PI) * g); + } } /* Generates waveforms using additive synthesis. Each waveform is constructed -- cgit v1.2.3