Csound Csound-dev Csound-tekno Search About

Re: Risset endless glissando

Date1998-11-05 20:12
FromSean Costello
SubjectRe: Risset endless glissando
Hi Sergey, Csounders:

I'm sending the following file again.  My email program formatted the
.sco file in such a way that the comments leaked over into following
lines, which would cause syntax errors.  The following should load with
no problems.  BTW, are there any good conventions to follow when sending
.orc and .sco files, so that everyone can read them?

Thanks,

Sean Costello




; glisssando.orc
; 
; Coded by Sean Costello, costello@seanet.com
; November 4, 1998
;
; This is a version of J.C. Risset's "endless glissando,"
; as described in Dogde and Jerse, "Computer Music: Synthesis,
; Composition and Performance," 2nd edition, p. 106-7.

sr = 22050
kr = 2205
ksmps = 10
nchnls = 1

instr 10

; Determines rate of glissando
irate = p4      

; Determines max amplitude of each oscillator
iamp = p5       

; Determines direction of glissando, by selecting 
; from two different tables in the score.
; 3 selects a glissando that falls in pitch, 
; 4 selects a glissando that rises in pitch.
itable = p6     


kosc1a  oscili  iamp, irate, 2, 0
kosc1b  oscili  10000, irate, itable, 0
aosc1   oscili  kosc1a, kosc1b, 1

kosc2a  oscili  iamp, irate, 2, .1
kosc2b  oscili  10000, irate, itable, .1
aosc2   oscili  kosc2a, kosc2b, 1

kosc3a  oscili  iamp, irate, 2, .2
kosc3b  oscili  10000, irate, itable, .2
aosc3   oscili  kosc3a, kosc3b, 1

kosc4a  oscili  iamp, irate, 2, .3
kosc4b  oscili  10000, irate, itable, .3
aosc4   oscili  kosc4a, kosc4b, 1

kosc5a  oscili  iamp, irate, 2, .4
kosc5b  oscili  10000, irate, itable, .4
aosc5   oscili  kosc5a, kosc5b, 1

kosc6a  oscili  iamp, irate, 2, .5
kosc6b  oscili  10000, irate, itable, .5
aosc6   oscili  kosc6a, kosc6b, 1

kosc7a  oscili  iamp, irate, 2, .6
kosc7b  oscili  10000, irate, itable, .6
aosc7   oscili  kosc7a, kosc7b, 1

kosc8a  oscili  iamp, irate, 2, .7
kosc8b  oscili  10000, irate, itable, .7
aosc8   oscili  kosc8a, kosc8b, 1

kosc9a  oscili  iamp, irate, 2, .8
kosc9b  oscili  10000, irate, itable, .8
aosc9   oscili  kosc9a, kosc9b, 1

kosc10a oscili  iamp, irate, 2, .9
kosc10b oscili  10000, irate, itable, .9
aosc10  oscili  kosc10a, kosc10b, 1

out aosc1 + aosc2 + aosc3 + aosc4 + aosc5 + aosc6 + aosc7 + aosc8 +
aosc9 + aosc10

endin



; glissando.sco
;
; Coded by Sean Costello, costello@seanet.com
; November 4, 1998


; The following defines a sine table for the audio oscillators.
f1 0 8192 10 1

; The following defines the amplitude envelope for the 
; oscillators.  I used the Gaussian function of GEN 20, as 
; opposed to generating a table with the complicated equation
; that Risset used.
f2 0 8192 20 6

; Defines a table that falls exponentally, 
; from 1 to (2 to the -10 power).
f3 0 8192 5 1 8191 0.0009765625

; Defines a table that rises exponentially, 
; from (2 to the -10 power) to 1.
f4 0 8192 5 0.0009765625 8191 1

i10 0 120 0.01 8000 3