I am trying to implement FM algorithms for computer music applications. The
language I'm using (Nyquist) has a primitive FM oscillator called fmosc. I
want to use modulators in series which is a very common technique in some
Yamaha synths. In pseudo code it is the composition fmosc(fmosc(osc()))
where all oscillators output sine waves. When I have tried this there are
strong non-harmonic components even though all oscillators are at the same
frequency and I am well below the Nyquist limit. I think the culprit is a
strong DC component from the inner fmosc. My first thought was to use a
very sharp high-pass filter around 20Hz, in pseudo code
fmosc(hp(fmosc(osc()))). There was a marked improvement but also a distinct
"blip" sound on the attack. Are there other ways to remove the DC
component from a signal? Does anyone know how Yamaha does it?
Thanks in advance.
For those who are interested, Nyquist is a rather elegent language for sound
synthesis and composition. It seems to get lost in the shadows of CSOUND
etc.. You can find it at
Remove underscores in email address to respond
Reply by Radium●December 31, 20032003-12-31
sj <email@example.com> wrote in message news:<hE9Ib.217$wG2.firstname.lastname@example.org>...
> I am trying to implement FM algorithms for computer music applications.
Join my march to bring back the golden SB16 FM's synth and its beloved
Creative Music Synth  driver!