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 a simple example of the GEN10 routine. It uses the file gen10.csd. It will generate a simple sine wave. Here is its diagram:
Diagram of the waveform generated by GEN10.
Example 12. A simple example of the GEN10 routine.
See the sections Real-time Audio and Command Line Flags for more information on using command line flags.<CsoundSynthesizer> <CsOptions> ; Select audio/midi flags here according to platform ; Audio out Audio in -odac -iadc ;;;RT audio I/O ; For Non-realtime ouput leave only the line below: ; -o gen10.wav -W ;;; for file output any platform </CsOptions> <CsInstruments> ; Initialize the global variables. sr = 44100 kr = 4410 ksmps = 10 nchnls = 1 ; Instrument #1. instr 1 kamp = 30000 kcps = 440 ifn = 1 ; Play the sine wave stored in Table #1. a1 oscil kamp, kcps, ifn out a1 endin </CsInstruments> <CsScore> ; Table #1: a simple sine wave (using GEN10). f 1 0 16384 10 1 ; Play Instrument #1 for 2 seconds. i 1 0 2 e </CsScore> </CsoundSynthesizer>