GEN10 — Generate composite waveforms made up of weighted sums of simple sinusoids.
These subroutines generate composite waveforms made up of weighted sums of simple sinusoids. The specification of each contributing partial requires 1 pfield using GEN10.
size -- number of points in the table. Must be a power of 2 or power-of-2 plus 1 (see f statement).
str1, str2, str3, etc. -- relative strengths of the fixed harmonic partial numbers 1,2,3, etc., beginning in p5. Partials not required should be given a strength of zero.
Note | |
---|---|
|
Here is an example of the GEN10 routine. It uses the files gen10.csd.
Example 1300. An example of the GEN10 routine.
<CsoundSynthesizer> <CsOptions> ; Select audio/midi flags here according to platform -odac ;;;realtime audio out ;-iadc ;;;uncomment -iadc if realtime audio input is needed too ; For Non-realtime ouput leave only the line below: ; -o gen10.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> sr = 44100 ksmps = 32 nchnls = 2 0dbfs = 1 instr 1 kamp = .6 kcps = 440 ifn = p4 asig oscil kamp, kcps, ifn outs asig,asig endin </CsInstruments> <CsScore> f1 0 16384 10 1 ; Sine f2 0 16384 10 1 0.5 0.3 0.25 0.2 0.167 0.14 0.125 .111 ; Sawtooth f3 0 16384 10 1 0 0.3 0 0.2 0 0.14 0 .111 ; Square f4 0 16384 10 1 1 1 1 0.7 0.5 0.3 0.1 ; Pulse i 1 0 2 1 i 1 3 2 2 i 1 6 2 3 i 1 9 2 4 e </CsScore> </CsoundSynthesizer>
These are the diagrams of the waveforms of the GEN10 routines, as used in the example: