I want to write a C-program under Linux to synthesize sounds on a sound card by defining their ADSR envelopes (rather than playing previously sampled sounds. -- Background: Creating an electronic music instrument.)

I've come up pretty dry in a first search. In a pinch I'm also willing to try a different language than C, but even there the only results I've found were X-11 Basic.

Do you know of any C libraries which accept ADSR parameters?

  • $\begingroup$ Since ADSR envelopes don’t generate sound directly, but instead describe how the amplitude of a sound changes over time, OP may be talking about additive synthesis, wherein a number of sine wave partials with harmonic and inharmonic relationships are specified, and one defines how the partials change over time using an ADSR (or some other type of) envelope. The Wikipedia article on additive synthesis has a lot of relevant information. $\endgroup$ – Data Processing Oct 29 at 3:57
  • $\begingroup$ Slightly different... X11-Basic offers a command "WAVE c%,form%[,attack,decay,sustain,release]" where the PCs sound generators can be directly fed with a ADSR envenlope to create the corresponding sound. I'm looking for a "C" library which offers a similar functionality. $\endgroup$ – syzygy Oct 30 at 12:34

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy