From sc-users-owner@bga.com Thu Dec 12 20:23:40 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id UAA20263 for sc-users-outgoing; Thu, 12 Dec 1996 20:23:40 -0600 Received: from sound.music.mcgill.ca (sound.Music.McGill.CA [132.206.141.11]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id UAA20238 for ; Thu, 12 Dec 1996 20:23:31 -0600 Received: from localhost (tkatsia@localhost) by sound.music.mcgill.ca (8.6.10/8.6.6) with SMTP id VAA01060 for ; Thu, 12 Dec 1996 21:19:43 -0500 Date: Thu, 12 Dec 1996 21:19:42 -0500 (EST) From: Themis Katsianos <---@---.---> X-Sender: tkatsia@sound To: sc-users@bga.com Subject: Delays Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Hello everybody. I was wondering if anybody has worked with delays in SuperCollider. Let's say that I want to have as output : y(n) = x(n) + x(n-1),where n is the number of sample. Any ideas how is it done? Am I right to think that I can't use tap because the delay time I want is less than the control period? Has anybody used Adelay? I include a sample program. Feel free to send me suggestions. Thanks Themis Katsianos defaudioout L R; defaudioin Lin Rin; defaudiobuf the_sound; defdelay dl(3.7) ; init{ loadAudio(the_sound,"miles1.AIFF"); } start { instr1; fx; } instr1 { var x; x = Abufrd(the_sound, 0.0, 1.0); {x.value.out(dl).out(L).out(R);}.dspAdd; } fx { var s1 = 0.000022675; --1/sr var y; y = Adelay(dl, 1/sr); { y.value(dl, s1).out(L).out(R); --it doesn' run. Why? --tap(dl,s1).out(L).out(R); --shouldn't use this because of time restriction }.dspAdd; } From sc-users-owner@bga.com Thu Dec 12 21:02:37 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id VAA26684 for sc-users-outgoing; Thu, 12 Dec 1996 21:02:37 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id VAA26636 for ; Thu, 12 Dec 1996 21:02:22 -0600 Received: from [128.83.249.72] (slip-95-8.ots.utexas.edu [128.83.249.72]) by clyde.as.utexas.edu (8.6.11/2.01) with SMTP id VAA20371 for ; Thu, 12 Dec 1996 21:03:04 -0600 Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Thu, 12 Dec 1996 21:01:17 -0700 To: sc-users@bga.com From: james@clyde.as.utexas.edu (James McCartney) Subject: Re: Delays Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 9:19 PM 12/12/96, Themis Katsianos wrote: >Hello everybody. I was wondering if anybody has worked with delays in >SuperCollider. Let's say that I want to have as output : y(n) = x(n) + >x(n-1),where n is the number of sample. Any ideas how is it done? Am I >right to think that I can't use tap because the delay time I want is less >than the control period? If you need a delay less than a control period you cannot use tap(). You must use Adelay. There are problems in your program, see below. >instr1 { > var x; > x = Abufrd(the_sound, 0.0, 1.0); > {x.value.out(dl).out(L).out(R);}.dspAdd; > } > > >fx { > var s1 = 0.000022675; --1/sr > var y; > y = Adelay(dl, 1/sr); > > { > y.value(dl, s1).out(L).out(R); --it doesn' run. Why? > --tap(dl,s1).out(L).out(R); --shouldn't use this because of time >restriction > }.dspAdd; >} In the documentation for Adelay it says: "This function needs exclusive access to the delay line. You should not write to or read from the same delay line used here somewhere else in your program." In the function returned by Adelay you must supply an input audio signal, not a buffer as you do above in: > y.value(dl, s1).out(L).out(R); --it doesn' run. Why? dl is a delay buffer, not a signal. What you really want to do is: instr1 { s1 = 0.000022675; -- 1/sr x = Abufrd(the_sound, 0.0, 1.0); y = Adelay(dl, s1); { y.value(x.value).out(L).out(R); }.dspAdd; } notes: s1,x,y are declared by assignment above. The second argument of y.value() defaults to the taptime given in the call to Adelay() so does not need to be supplied. Via the ellision of "value" you could rewrite the above as: { y.(x.).out(L).out(R); }.dspAdd; --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Mon Dec 16 15:09:33 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id PAA24992 for sc-users-outgoing; Mon, 16 Dec 1996 15:09:33 -0600 Received: from Skywalker.microtec.net (root@[204.50.80.203]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id PAA24973 for ; Mon, 16 Dec 1996 15:09:30 -0600 Received: from [204.50.77.106] ([204.50.77.106]) by skywalker.microtec.net with SMTP id <471115-284>; Mon, 16 Dec 1996 16:09:17 -0500 X-Sender: cleo@mail.odyssee.net Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: sc-users@bga.com From: cleo@odyssee.net (Themis Katsianos) Subject: Delays Date: Mon, 16 Dec 1996 16:09:02 -0500 Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com First of all, James thanks for you comments, they were very helpful. One more thing is not clear to me though. Can you use the simple math Infix operators such as +, -, *, and / for items that are different? For example, adding or multiplying a constant/expression (i.e. not signal) to a signal doe is affect the signal the expected way? Thanks. Themis G. Katsianos Graduate student in Computer Applications in Music Mcgill University - Faculty of Music Montreal, Canada email:cleo@mail.odyssee.net tkatsia@music.mcgill.ca From sc-users-owner@bga.com Mon Dec 16 15:36:15 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id PAA00729 for sc-users-outgoing; Mon, 16 Dec 1996 15:36:15 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id PAA00713 for ; Mon, 16 Dec 1996 15:36:13 -0600 Received: from [128.83.177.7] (slip-106-7.ots.utexas.edu [128.83.177.7]) by clyde.as.utexas.edu (8.6.11/2.01) with SMTP id PAA00822 for ; Mon, 16 Dec 1996 15:37:03 -0600 Date: Mon, 16 Dec 1996 15:37:03 -0600 Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: sc-users@bga.com From: james@clyde.as.utexas.edu (James McCartney) Subject: Re: Delays Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 4:09 PM 12/16/96, Themis Katsianos wrote: >First of all, James thanks for you comments, they were very helpful. >One more thing is not clear to me though. Can you use the simple math Infix >operators such as +, -, *, and / for items that are different? For example, >adding or multiplying a constant/expression (i.e. not signal) to a signal >doe is affect the signal the expected way? Yes. type promotion in SC goes like this for mixed types: integer op integer -> integer integer op float -> float integer op complex -> complex integer op signal -> signal float op float -> float float op complex -> complex float op signal -> signal complex op complex -> complex complex op signal -> ILLEGAL (there is no complex signal type) signal op signal -> signal --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Tue Dec 17 18:03:50 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id SAA13564 for sc-users-outgoing; Tue, 17 Dec 1996 18:03:50 -0600 Received: from sound.music.mcgill.ca (sound.Music.McGill.CA [132.206.141.11]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id SAA13539 for ; Tue, 17 Dec 1996 18:03:38 -0600 Received: from localhost (tkatsia@localhost) by sound.music.mcgill.ca (8.6.10/8.6.6) with SMTP id SAA24340 for ; Tue, 17 Dec 1996 18:59:19 -0500 Date: Tue, 17 Dec 1996 18:59:18 -0500 (EST) From: Themis Katsianos <---@---.---> X-Sender: tkatsia@sound To: sc-users@bga.com Subject: Delays(cont'd) Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Hello everybody , delays cont'd (I hope for the last time). James, according to your reply, my instrument should look lik this: instr1{ s1 = 0.000022675; --1/sr x = Abufrd(the_sound, 0.0, 1.0); y = Adelay(dl, s1); {y.(x.).out(L).out(R);}.dspAdd; } My question is : don't you have to write to the delay line before reading from it? Acording to tutorial #5 of the manual (where you use tap though instead of Adelay), first you write to dly1 with out(dly1) and then you use tap.Then, the following: instr1{ s1 = 0.000022675; --1/sr x = Abufrd(the_sound, 0.0, 1.0); y = Adelay(dl, s1); {(y.(x.) + x.value).out(L).out(R);}.dspAdd; } should give an output of the form x(n) + x(n-1) is that correct? All I get though is garbage!! I also tried something like: x = Abufrd(the_sound, 0.0, 1.0); {x.value.out(dl);}.dspAdd(0); From sc-users-owner@bga.com Tue Dec 17 20:04:38 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id TAA00631 for sc-users-outgoing; Tue, 17 Dec 1996 19:54:35 -0600 Received: from hal.9000series.idiscover.net (root@hal.9000series.idiscover.net [194.207.26.8]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id TAA00567 for ; Tue, 17 Dec 1996 19:54:16 -0600 Received: from 194.128.134.26 (dynamic-26.nexus.idiscover.co.uk [194.128.134.26]) by hal.9000series.idiscover.net (8.7.3/8.6.9) with SMTP id BAA16806; Wed, 18 Dec 1996 01:54:06 GMT Message-Id: <199612180154.BAA16806@hal.9000series.idiscover.net> Date: Wed, 18 Dec 1996 02:59:21 +0000 From: pHlangepHace <---@---.---> X-Mailer: Mozilla 3.0 (Macintosh; I; PPC) MIME-Version: 1.0 To: sc-users@bga.com Subject: groovy Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Does anyone have any suggestions on a way to cut off a sample as it is playing back as I am making a ryhthm program and I want to cut off say a open hihat with a closed one,can post when i've finished,sounds pretty good so far. richard. From sc-users-owner@bga.com Tue Dec 17 20:13:43 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id UAA03572 for sc-users-outgoing; Tue, 17 Dec 1996 20:13:43 -0600 Received: from Skywalker.microtec.net (root@[204.50.80.203]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id UAA03561 for ; Tue, 17 Dec 1996 20:13:36 -0600 Received: from [206.186.7.85] ([206.186.7.85]) by skywalker.microtec.net with SMTP id <471110-284>; Tue, 17 Dec 1996 21:13:22 -0500 X-Sender: cleo@mail.odyssee.net Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: sc-users@bga.com From: cleo@odyssee.net (Themis Katsianos) Subject: Re: Delays(cont'd) Date: Tue, 17 Dec 1996 21:13:12 -0500 Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com It seems that not the whole message was sent so I resend it. Sorry for the inconvenience. >Hello everybody , delays cont'd (I hope for the last time). >James, >according to your reply, my instrument should look lik this: > >instr1{ > s1 = 0.000022675; --1/sr > x = Abufrd(the_sound, 0.0, 1.0); > y = Adelay(dl, s1); >{y.(x.).out(L).out(R);}.dspAdd; >} > >My question is : don't you have to write to the delay line before reading >from it? Acording to tutorial #5 of the manual (where you use tap though >instead of Adelay), first you write to dly1 with out(dly1) and then you >use tap.Then, the following: >instr1{ > s1 = 0.000022675; --1/sr > x = Abufrd(the_sound, 0.0, 1.0); > y = Adelay(dl, s1); >{(y.(x.) + x.value).out(L).out(R);}.dspAdd; >} >should give an output of the form x(n) + x(n-1) is that correct? All I get >though is garbage!! I also tried something like: >x = Abufrd(the_sound, 0.0, 1.0); >{x.value.out(dl);}.dspAdd(0); From sc-users-owner@bga.com Tue Dec 17 21:38:04 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id VAA15868 for sc-users-outgoing; Tue, 17 Dec 1996 21:38:04 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id VAA15852 for ; Tue, 17 Dec 1996 21:38:02 -0600 Received: from [128.83.249.95] (slip-96-15.ots.utexas.edu [128.83.249.95]) by clyde.as.utexas.edu (8.6.11/2.01) with SMTP id VAA06403 for ; Tue, 17 Dec 1996 21:38:48 -0600 Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Tue, 17 Dec 1996 21:36:56 -0700 To: sc-users@bga.com From: james@clyde.as.utexas.edu (James McCartney) Subject: Re: Delays(cont'd) Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 6:59 PM 12/17/96, Themis Katsianos wrote: >Hello everybody , delays cont'd (I hope for the last time). >James, >according to your reply, my instrument should look lik this: > >instr1{ > s1 = 0.000022675; --1/sr > x = Abufrd(the_sound, 0.0, 1.0); > y = Adelay(dl, s1); >{y.(x.).out(L).out(R);}.dspAdd; >} > >My question is : don't you have to write to the delay line before reading >from it? Acording to tutorial #5 of the manual (where you use tap though >instead of Adelay), first you write to dly1 with out(dly1) and then you >use tap. There are two ways to use delay lines. One method, using reading and writing, can only have delays of greater than one control period. The other method allows delays smaller than one control period by encapsulating the delay read and write within a single unit generator. This is how Adelay, Acombdly, Aallpassdly work. Adelay does the write AND read. Then, the following: >instr1{ > s1 = 0.000022675; --1/sr > x = Abufrd(the_sound, 0.0, 1.0); > y = Adelay(dl, s1); >{(y.(x.) + x.value).out(L).out(R);}.dspAdd; >} >should give an output of the form x(n) + x(n-1) is that correct? All I get >though is garbage!! Each time you evaluate x, it produces the next buffer of output. You are evaluating x twice in the code above. Each unit generator must only be evaluated once per control period. you should do the following: { temp = x.value; (y.(temp) + temp).out(L).out(R); }.dspAdd; >I also tried something like: >x = Abufrd(the_sound, 0.0, 1.0); >{x.value.out(dl);}.dspAdd(0); I'm not sure what you're trying to do. I guess this is where your message got cut off-- both times you sent it. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Tue Dec 17 21:41:23 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id VAA16439 for sc-users-outgoing; Tue, 17 Dec 1996 21:41:23 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id VAA16425 for ; Tue, 17 Dec 1996 21:41:20 -0600 Received: from [128.83.249.95] (slip-96-15.ots.utexas.edu [128.83.249.95]) by clyde.as.utexas.edu (8.6.11/2.01) with SMTP id VAA06421 for ; Tue, 17 Dec 1996 21:42:11 -0600 Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Tue, 17 Dec 1996 21:40:18 -0700 To: sc-users@bga.com From: james@clyde.as.utexas.edu (James McCartney) Subject: Re: groovy Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 7:59 PM 12/17/96, pHlangepHace wrote: >Does anyone have any suggestions on a way to cut off a sample as it >is playing back as I am making a ryhthm program and I want to cut off >say a open hihat with a closed one,can post when i've finished,sounds >pretty good so far. >richard. If you are using a breakpoint envelope, you can call its steal() method which will cut it off in one control period. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Sun Dec 22 19:49:42 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id TAA07149 for sc-users-outgoing; Sun, 22 Dec 1996 19:49:42 -0600 Received: from sound.music.mcgill.ca (sound.Music.McGill.CA [132.206.141.11]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id TAA07104 for ; Sun, 22 Dec 1996 19:49:22 -0600 Received: from localhost (tkatsia@localhost) by sound.music.mcgill.ca (8.6.10/8.6.6) with SMTP id UAA11686 for ; Sun, 22 Dec 1996 20:45:03 -0500 Date: Sun, 22 Dec 1996 20:45:02 -0500 (EST) From: Themis Katsianos <---@---.---> X-Sender: tkatsia@sound To: all Subject: Recursive formulas Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com James and everybody, My question is about realization of recursive formulas in SuperCollider (i.e. formulas in which the current output depends on values of previous outputs). I would think that something like : instr1{ var asig, asig1, asig2; asig1 = 0; asig2 = 0; x = Abufrd(the_sound, 0.0, 1.0); t=x.value; { asig = (ia0*t) - (ib1*asig1) - (ib2*asig2);--don't worry about coefficients for now (asig).out(L).out(R); asig2 = asig1; asig1 = asig; }.dspAdd; } would work if I wanted to have the output signal delayed by 1 and 2 samples respectively. Is that right? When I test it though I get some kind of background ringing that shoudn't be there ( compared with the same in Csound for example). Any ideas? P.S.: James this is not the same as wanting to delay your input by x number of samples (referring to our discussion last week...). Adelay works for that fine. I just wonder if the above instrument does the job or should I use delay lines again ,in which case I guess I would have to write the output this time -not the input- to a delay line and read from there right? Thanks. Themis Katsianos Graduate student in Computer Applications in Music Faculty of Music, McGill University e-mail : tkatsia@music.mcgill.ca From sc-users-owner@bga.com Mon Dec 23 00:47:02 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id AAA19472 for sc-users-outgoing; Mon, 23 Dec 1996 00:47:02 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id AAA19443 for ; Mon, 23 Dec 1996 00:46:51 -0600 Received: from [128.83.251.55] (slip-54-7.ots.utexas.edu [128.83.251.55]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id AAA22714 for ; Mon, 23 Dec 1996 00:47:44 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 22 Dec 1996 23:45:07 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: Recursive formulas Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 8:45 PM -0500 12/22/96, Themis Katsianos wrote: >James and everybody, >My question is about realization of recursive formulas in SuperCollider >(i.e. formulas in which the current output depends on values of previous >outputs). I would think that something like : > >instr1{ > var asig, asig1, asig2; > asig1 = 0; > asig2 = 0; > x = Abufrd(the_sound, 0.0, 1.0); > t=x.value; Here's your first problem. x must be evaluated within the dsp function below each control period. You get a ringing because you evaluate this function once and get a single buffer assigned to t which contains a wave segment that gets repeated over and over again. > { > asig = (ia0*t) - (ib1*asig1) - (ib2*asig2);--don't worry about > coefficients for now > (asig).out(L).out(R); > asig2 = asig1; > asig1 = asig; Your second problem is that the variables above contain a buffer of an entire control period of samples so your delay is not one sample but one control period. > }.dspAdd; >} --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Mon Dec 23 03:02:42 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id DAA04316 for sc-users-outgoing; Mon, 23 Dec 1996 03:02:42 -0600 Received: from Skywalker.microtec.net (root@[204.50.80.203]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id DAA04303 for ; Mon, 23 Dec 1996 03:02:40 -0600 Received: from [204.50.77.34] ([204.50.77.34]) by skywalker.microtec.net with SMTP id <471087-278>; Mon, 23 Dec 1996 04:02:32 -0500 X-Sender: cleo@mail.odyssee.net Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: sc-users@bga.com From: cleo@odyssee.net (Themis Katsianos) Subject: Re: Recursive formulas Date: Mon, 23 Dec 1996 04:02:27 -0500 Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com >At 8:45 PM -0500 12/22/96, Themis Katsianos wrote: >>James and everybody, >>My question is about realization of recursive formulas in SuperCollider >>(i.e. formulas in which the current output depends on values of previous >>outputs). I would think that something like : >> >>instr1{ >> var asig, asig1, asig2; >> asig1 = 0; >> asig2 = 0; >> x = Abufrd(the_sound, 0.0, 1.0); > > >> t=x.value; > > Here's your first problem. > x must be evaluated within the dsp function below each control period. > You get a ringing because you evaluate this function once and > get a single buffer assigned to t which contains a wave segment that > gets repeated over and over again. Okay, this was a typo.You 're right. In my program x.value is calculated within the dsp function. > >> { >> asig = (ia0*t) - (ib1*asig1) - (ib2*asig2);--don't worry about >> coefficients for now >> (asig).out(L).out(R); >> asig2 = asig1; >> asig1 = asig; > > Your second problem is that the variables above contain a > buffer of an entire control period of samples so your > delay is not one sample but one control period. Then it all comes down to this: Is there a way to have the dsp function calculated at the sampling period? In Csound you can do that by having sr = kr (sampling rate = control rate). How do you do that in SuperCollider? In the manual you say that subframe has to be a multiple of 8, which means that kr=sr/subframe cannot be equal to sr, is that right? Otherwise, even the instrument defdalay dly(2/sr); instr1{ var a0, a1, a2, s1, s2, y1, y2; x = Abufrd(the_sound, 0.0, 1.0); s1 = 1/sr; s2 = 2/sr; y1=Adelay(dly, s1); y2=Adelay(dly, s2); { t=x.value; ((ao*t) + (a1*y1.(t)) + a2*y2.(t)).out(L).out(R); }.dspAdd; doesn't give you y(n) = a0x(n)+a1x(n-1)+a2x(n-2), at least not at the sampling rate,simply because the function is not calculated at the sampling rate, right? You see, all I want to be able to do is have two types of outputs: y(n)=a0x(n) + ...+ aN(x-N) and also y(n)=a0x(n) +...+amx(n-m) -b1y(x-1)-...-bmy(x-m) (in other words what you can do in Csound by sr = kr and using delay1). Any ideas? Thanks. Themis G. Katsianos Graduate student in Computer Applications in Music Mcgill University - Faculty of Music Montreal, Canada email:cleo@mail.odyssee.net tkatsia@music.mcgill.ca From sc-users-owner@bga.com Mon Dec 23 11:56:43 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id KAA07297 for sc-users-outgoing; Mon, 23 Dec 1996 10:08:40 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id KAA07047 for ; Mon, 23 Dec 1996 10:07:27 -0600 Received: from [128.83.204.98] (slip-7-2.ots.utexas.edu [128.83.204.98]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id KAA23915 for ; Mon, 23 Dec 1996 10:08:05 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Mon, 23 Dec 1996 09:05:34 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: Recursive formulas Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 4:02 AM -0500 12/23/96, Themis Katsianos wrote: >Then it all comes down to this: Is there a way to have the dsp function >calculated at the sampling period? In Csound you can do that by having sr = >kr (sampling rate = control rate). How do you do that in SuperCollider? You can't do it. SC is meant to be a real time program and at 1 sample per control period the performance gets killed. The reason for the multiple of 8 is that I have unrolled loops by 8 times in many places which gives a huge gain in performance. Checking for non multiples of 8 at each loop would add a cost and reduce performance. However now that CPUs are getting very fast it might be good to allow that. The best way though would be to write your own unit generator. Also not possible currently, but I have been writing a new virtual machine which will allow user plug ins of language primitives. I can't say when that will be available, it won't be in the next version. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Mon Dec 23 16:07:13 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id QAA19683 for sc-users-outgoing; Mon, 23 Dec 1996 16:07:13 -0600 Received: from crl.dec.com (crl.dec.com [192.58.206.2]) by zoom.bga.com (8.6.12/8.6.12) with SMTP id QAA19669 for ; Mon, 23 Dec 1996 16:07:10 -0600 Received: by crl.dec.com; id AA15294; Mon, 23 Dec 96 17:01:54 -0500 X-Sender: Eirikur@rainbo.lkg.dec.com Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Mon, 23 Dec 1996 16:55:47 -0500 To: From: Eirikur Hallgrimsson <---@---.---> Subject: Speed Doubler? PB5300ce and SC. Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Has anyone tried Speed Doubler with SC. I note that SC is sluggish on the PB5300, and some simple analysis suggests that it's spending a lot of time in 68K code, probably system alloc/dealloc and buffer mgmt. I thought the Sound Manager was supposed to be native at this point, but it's hard to believe given the amount of time SC spends in the emulator. Does Speed Doubler help any? BTW, running a lean System (System,Finder, OMS) on a RAMdisk, I get pretty good results on the PowerBook. I modified Tutorial 8 to add filters using Arlpf, and have a pretty nice little polysynth going.... I'm planning to use it and other SC programs in a recording session over the holidays. Eirikur Eirikur Hallgrimsson eh@ranger.enet.dec.com Generic Epistemologist "We are here because, like Dr. Frankenstein, we crave the creation, the birth. We speak in a magical language that < 1% of the population even vaguely comprehends. We hang at bars playing darts, drinking cheap beer, and discussing iterations, instances, and interrupts." -- Tyler C. Regas From sc-users-owner@bga.com Mon Dec 23 16:29:33 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id QAA23638 for sc-users-outgoing; Mon, 23 Dec 1996 16:29:33 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id QAA23334 for ; Mon, 23 Dec 1996 16:28:17 -0600 Received: from [128.83.254.8] (slip-69-8.ots.utexas.edu [128.83.254.8]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id QAA25121 for ; Mon, 23 Dec 1996 16:29:03 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Mon, 23 Dec 1996 15:26:33 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: Speed Doubler? PB5300ce and SC. Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 4:55 PM -0500 12/23/96, Eirikur Hallgrimsson wrote: >Has anyone tried Speed Doubler with SC. I note that SC is sluggish on the >PB5300, and >some simple analysis suggests that it's spending a lot of time in 68K code, >probably >system alloc/dealloc and buffer mgmt. I thought the Sound Manager was >supposed to be >native at this point, but it's hard to believe given the amount of time SC >spends in the emulator. > >Does Speed Doubler help any? Yes it does help. I use it. One problem with the powerbooks is that the 603 cache is filled with the 68K emulator so the native code winds up getting little benefit from the cache. >BTW, running a lean System (System,Finder, OMS) on a RAMdisk, I get pretty >good results >on the PowerBook. I modified Tutorial 8 to add filters using Arlpf, and >have a pretty nice >little polysynth going.... I'm planning to use it and other SC programs >in a recording session >over the holidays. I did a demo at ICMC using a powerbook 5300, and a Peavey PC1600 slider box with a photocell plugged into it for control. Re: benchmarks. PowerComputing recently had a factory refurb blowout sale here in Austin and I picked up a PowerTowerPro 200Mhz 604e machine for $1500 off list. Couldn't pass it up. Anyway, on this machine I can get 220 non interpolating oscillators or 120 interpolating ones in real time when the frame size is 440 samples. Also, I have implemented two new oscillator unit generators that take an additional buffer argument. The oscillator output is added to the buffer. It is much more efficient to do the summation in the unit generator than to use the '+!' operator because you reduce the number of loads and stores and eliminate the need for the oscillator to allocate a buffer to store its output. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Tue Dec 24 09:04:48 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id JAA09814 for sc-users-outgoing; Tue, 24 Dec 1996 09:04:48 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id JAA09791 for ; Tue, 24 Dec 1996 09:04:45 -0600 Received: from [128.83.176.102] (slip-104-6.ots.utexas.edu [128.83.176.102]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id JAA26354 for ; Tue, 24 Dec 1996 09:05:42 -0600 Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Tue, 24 Dec 1996 08:03:14 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: SC and new Sound Manager... Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com forwarded msg: > From: Richard.Dudas@ircam.fr (dudas) > > Just a little bit of info which may help give hope to the sc-users. > > Recently I had the opportunity to try SC out on a friend's mac - running a > beta version of system 7.6. Not too radically different from 7.5.5. > > The sound manager WAS different, though. Not only were the input /output > levels louder for some reason, but SC version 1.0 worked without the > dreaded > "SPBSetDeviceInfo siContinuous error: -1" error, meaning that this > SoundManager disposes its sound input channels properly as it it supposed > to... > > This is by no means an exhaustive test of the new system, and its relation > to SC or other sound applications, but I thought it was interesting. > > -Richard > From sc-users-owner@bga.com Wed Dec 25 16:43:38 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id QAA24944 for sc-users-outgoing; Wed, 25 Dec 1996 16:43:38 -0600 Received: from maelzel.ircam.fr (maelzel.ircam.fr [129.102.1.10]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id QAA24898 for ; Wed, 25 Dec 1996 16:43:34 -0600 Received: from hildegard.ircam.fr (hildegard.ircam.fr [129.102.144.17]) Received: from [129.102.145.33] (mac-pedago-studio-assist.ircam.fr [129.102.145.33]) by hildegard.ircam.fr (8.7.5/jtpda-5.2/ircam) with SMTP id XAA16150 for ; Wed, 25 Dec 1996 23:43:32 +0100 (MET) Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Mailer: Eudora F1.5.1 Date: Wed, 25 Dec 1996 23:44:56 +0100 To: sc-users@bga.com From: Richard.Dudas@ircam.fr (dudas) Subject: anyone else have this problem? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Dearest SC-users, I'm back in SuperCollider land after quite a long pause away from the program, and I seem to be having the same problem I thought I was having back in June of this year... When I open and close lots of files, with intermittent saving, some of the files I may have opened, but not modified, get overwritten by one of the files that I've saved. I have the feeling that SC does not always correctly dispose of its handles on files... It could be just coincidence, but this time it has been the first file (alphabetically) in the folder where I'm currently saving. So far, I haven't lost anything important, just some copies of the demo files which have been replaced with whatever I was last working on... Most strange this is. Has anyone else experienced similar file-eating? Another wierd bug which seems to be harmless, but freaks me out nonetheless, is that sometimes when I do a command-period and bring the SC script to the front, the part of the window that was underneath the GUI window takes on the a grey background color (the same as the GUI window), and eventually, as I scroll, or if I force-redraw the window, the entire text window becomes grey. A bit tiring on the eyes. I use this interesting "feature" as a cue to take a coffee break and restart the program in the meantime... -- Also, has anyone used the Krms function (amplitude follower) to control the amplitude of a signal? (or to control anything else?) I've got problems with a noisy input signal which never falls to amplitude 0, so I'm trying to make some kind of a noise gate using Agate() or Kgate(). I've come up with nothing satisfactory yet. I did notice that there's a frequency following function listed in the on-line help window, although it's not in the manual and doesn't appear to work... just keeps sending a constant 0.20600 or something. -Richard From sc-users-owner@bga.com Fri Dec 27 09:43:42 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id JAA11951 for sc-users-outgoing; Fri, 27 Dec 1996 09:43:42 -0600 Received: from berlin.shuttle.de (berlin.shuttle.de [194.95.246.252]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id JAA11898 for ; Fri, 27 Dec 1996 09:43:18 -0600 Received: from [194.95.246.124] (p124.b.shuttle.de [194.95.246.124]) by berlin.shuttle.de (8.8.3/8.7.1) with SMTP id QAA19592 for ; Fri, 27 Dec 1996 16:43:09 +0100 (MET) Message-ID: <32C3EE3D.44BD@musik.b.shuttle.de> Date: Fri, 27 Dec 1996 16:41:50 +0100 From: iani <---@---.---> Organization: Staatliches Institut fuer Musikforschung X-Mailer: Mozilla 3.0 (Macintosh; I; PPC) MIME-Version: 1.0 To: sc-users@bga.com Subject: Re: anyone else have this problem? References: Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com dudas wrote: > back in June of this year... > > When I open and close lots of files, with intermittent saving, some of the > files I may have opened, but not modified, get overwritten by one of the > files that I've saved. I have the feeling that SC does not always > correctly dispose of its handles on files... It could be just coincidence, > but this time it has been the first file (alphabetically) in the folder > where I'm currently saving. > > So far, I haven't lost anything important, just some copies of the demo > files which have been replaced with whatever I was last working on... > > Most strange this is. Has anyone else experienced similar file-eating? > Yes, I have experienced similar problems under the worst possible circumstances and with catastrophic results. This type of overwriting made me loose the final 24 hours of work previous to a concert, because I was modifying and saving at very fast pace. James commented that SCs inline editor uses the macs built-in editor capabilities, which makes a text (file?) size limit of 32 K. I attributed the above problems to the fact that my file had grown very large. How big are the files you are working on? Do the problematic files have big GUI panels with many objects on them? Iannis > > -Richard From sc-users-owner@bga.com Fri Dec 27 14:37:16 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id OAA20667 for sc-users-outgoing; Fri, 27 Dec 1996 14:37:16 -0600 Received: from maelzel.ircam.fr (maelzel.ircam.fr [129.102.1.10]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id OAA20652 for ; Fri, 27 Dec 1996 14:37:10 -0600 Received: from hildegard.ircam.fr (hildegard.ircam.fr [129.102.144.17]) Received: from [129.102.145.33] (mac-pedago-studio-assist.ircam.fr [129.102.145.33]) by hildegard.ircam.fr (8.7.5/jtpda-5.2/ircam) with SMTP id VAA18062 for ; Fri, 27 Dec 1996 21:37:08 +0100 (MET) Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Mailer: Eudora F1.5.1 Date: Fri, 27 Dec 1996 21:38:32 +0100 To: sc-users@bga.com From: Richard.Dudas@ircam.fr (dudas) Subject: Re: anyone else have this problem? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com ...a reply to Iannis' reply: >James commented that SCs inline editor uses the macs built-in >editor capabilities, which makes a text (file?) size limit of 32 K. >I attributed the above problems [other files on the disk >getting overwritten] to the fact that my file had >grown very large. How big are the files you are working on? >Do the problematic files have big GUI panels with many objects >on them? This December, the largest file I've been using is relatively small... no more than 5-10 items in the GUI window and not a lot of text. Last June my largest patch was certainly no larger than than the version I posted to the SC-users server. (about 23 items in the GUI, and certainly less than 16k of text.) And all of this overwriting business has been happening while I've been constructing small single-function test patches. The only thing I'm doing which is a bit out of the ordinary as far as Mac usage goes would be opening and closing lots of files, since you can't have more than one window open at a time. I've just started using the "stickies" notes as a way around this... -Richard From sc-users-owner@bga.com Fri Dec 27 17:48:41 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id RAA14979 for sc-users-outgoing; Fri, 27 Dec 1996 17:48:41 -0600 Received: from maelzel.ircam.fr (maelzel.ircam.fr [129.102.1.10]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id RAA14965 for ; Fri, 27 Dec 1996 17:48:36 -0600 Received: from hildegard.ircam.fr (hildegard.ircam.fr [129.102.144.17]) Received: from [129.102.145.33] (mac-pedago-studio-assist.ircam.fr [129.102.145.33]) by hildegard.ircam.fr (8.7.5/jtpda-5.2/ircam) with SMTP id AAA18254 for ; Sat, 28 Dec 1996 00:48:34 +0100 (MET) Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Mailer: Eudora F1.5.1 Date: Sat, 28 Dec 1996 00:49:57 +0100 To: sc-users@bga.com From: Richard.Dudas@ircam.fr (dudas) Subject: lines and things Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Dearest SC users, I've been trying to put together a global interface for a new patch of effects, etc... What I'd like to have is based on the usual idea of having a checkbox in the GUI turn on and off different processes. Here's a very simple example using a single checkbox in the GUI controlling the playing of a sine wave. (let's assume that eventually I might have something a little more exciting than a sine wave...): -------------------------------------- defaudioout L R; start { inst1; } inst1 { osc = Asinosc(400,0); { if 1.getItemValue != 0 then (osc.value *! 0.2).out(L).out(R); end.if }.dspAdd(0); } ---------------------------------- Nice, but that sharp turn-on and turn-off is not so pleasant to listen to. So why not add a couple of line functions to fade it in and out. Not so simple, unless I'm overlooking something... Here's what I first tried to do: **************** Which doesn't work. ----------------------------------------------- defaudioout L R; start { instA; } instA { osc = Asinosc(300,0); fadein = Aline(0.0, 0.5, 2.0, {this.dspRemove}); fadeout = Aline(0.2, 0.0, 2.0, {this.dspRemove}); { if 1.getItemValue != 0 then (osc.value *! fadein.value()).out(L).out(R); elseif 1.getItemValue == 0 then (osc.value *! fadeout.value()).out(L).out(R); end.if }.dspAdd(0); } ---------------------------- **************** Which doesn't work. Then I thought of doing it with an Abpf() - embedded in a class, like those used for the voicer in Tutorial No.8 (It was my idea that I could also pass a DSP function to an instance of the fader class to replace the sine wave which I provisionally put inside it...): ************** this Doesn't work either... ------------------------------ defaudioout L R; defenvelope aev; -- simple 3 pt envelope with sustainable middle pt start { instB; } instB { working = 0; { if 1.getItemValue > working then working = 1.getItemValue; blah = fader(300); elseif 1.getItemValue < working then working = 1.getItemValue; blah.release; working.post; end.if }; } class fader {arg freq ; osc = Asinosc(freq,0); aenv = Abpenv(aev, 0.5, 0, 1, {dspRemove;}); { (osc.value *! aenv.value).out(L).out(R); }.dspAdd(0); method release {aenv.release;} } -------------------------------------- ************** this Doesn't work either... If anyone knowledgable could give me a hand on this one, as well as the noise gate problem mentioned in my last mailing, I'd be MOST appreciative. For those who can't help me, you'll be pleased to know that the final patch will be posted to the sc-users ftp site when functional and finished, as it is my habit to do so. -Richard From sc-users-owner@bga.com Sat Dec 28 15:33:48 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id PAA28563 for sc-users-outgoing; Sat, 28 Dec 1996 15:33:48 -0600 Received: from newman.cris.com (newman.concentric.net [207.155.184.71]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id PAA28539 for ; Sat, 28 Dec 1996 15:33:45 -0600 Received: from [206.173.169.62] (cnc158062.concentric.net [206.173.169.62]) by newman.cris.com (8.8.3/(96/11/08 1.11)) id QAA08349; Sat, 28 Dec 1996 16:33:43 -0500 (EST) [1-800-745-2747 The Concentric Network] Date: Sat, 28 Dec 1996 16:33:43 -0500 (EST) X-Sender: boldrsnd@pop3.concentric.net Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" To: sc-users@bga.com From: boldrsnd@concentric.net (Dennis Burns) Subject: Grain demo distortion Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Hello All, I have been puttting various samples in the Grain Demo patch with much success. But there is one file which continually give me some distortion. I don't really know that it is REALLY distortion. Its a low frequency clicking sound. Its definitely not from clipping, it is also not constant and quite irregular, (about every 4 seconds). I've tried different frame and subframe settings as well as adjusting the various sliders on the GUI to see if it dissappears. Nothing works. It seems to occur when the CPU % takes on a positive value "burst" I guess I would say. The % goes up VERY quickly and I hear the low end crackling. Any suggestions? Also, do I need to be using OMS to have midi interaction with SC or will something like Midi manager also work? And last, How much memory should be allotted to SC, I have 40 megs. Sometimes when I alot TOO much memory to Logic Audio (Emagic), 25 mgs vs. 20mgs it doesn't run very smoothly. Thanks, Dennis Burns Bolder Sounds Boulder,Colorado CD ROM "Eclectic" in Akai and K2000 format Reviewed in the June issue of "Electronic Musician" Reviewed in "Sound On Sound" Sept. 1996 http://www.concentric.net/~boldrsnd/ From sc-users-owner@bga.com Sat Dec 28 19:37:45 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id TAA25630 for sc-users-outgoing; Sat, 28 Dec 1996 19:37:45 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id TAA25620 for ; Sat, 28 Dec 1996 19:37:44 -0600 Received: from [128.83.253.119] (slip-65-7.ots.utexas.edu [128.83.253.119]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id TAA08531 for ; Sat, 28 Dec 1996 19:38:44 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sat, 28 Dec 1996 18:36:23 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: Grain demo distortion Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 4:33 PM -0500 12/28/96, Dennis Burns wrote: >Hello All, > I have been puttting various samples in the Grain Demo patch with >much success. But there is one file which continually give me some >distortion. I don't really know that it is REALLY distortion. Its a low >frequency clicking sound. Its definitely not from clipping, it is also not >constant and quite irregular, (about every 4 seconds). I've tried different >frame and subframe settings as well as adjusting the various sliders on the >GUI to see if it dissappears. Nothing works. It seems to occur when the CPU >% takes on a positive value "burst" I guess I would say. The % goes up VERY >quickly and I hear the low end crackling. > Any suggestions? >Also, do I need to be using OMS to have midi interaction with SC or will >something like Midi manager also work? > And last, How much memory should be allotted to SC, I have 40 megs. >Sometimes when I alot TOO much memory to Logic Audio (Emagic), 25 mgs vs. >20mgs it doesn't run very smoothly. > Thanks, How large is the sound file? Are you running something else in the background? Could be another program getting the CPU for bursts. Are you outputting to Digidesign drivers? Are you writing to disk? Are you running with virtual memory on and using more RAM than you have? You could be swapping. You must use OMS. The majority of the space used is for audio buffers which you declare. Buffers use 4 byte floats. You should be able to compute the size you need by adding up the sizes of the buffers you declare and adding about 4 Mb for overhead. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Sun Dec 29 01:12:32 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id BAA02163 for sc-users-outgoing; Sun, 29 Dec 1996 01:12:32 -0600 Received: from agora.stm.it (agora.stm.it [194.20.43.1]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id BAA02151 for ; Sun, 29 Dec 1996 01:12:20 -0600 Received: from [192.0.2.1] (agora.stm.it [194.20.43.1]) by agora.stm.it (8.7.5/8.6.6) with SMTP id IAA18266 for ; Sun, 29 Dec 1996 08:12:14 +0100 (ITA) X-Sender: m.giri@HELLA.stm.it (Unverified) Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 29 Dec 1996 08:15:40 +0100 To: sc-users@bga.com From: m.giri@agora.stm.it (Maurizio Giri) Subject: Re: anyone else have this problem? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com dudas wrote: > When I open and close lots of files, with intermittent saving, some of the > files I may have opened, but not modified, get overwritten by one of the > files that I've saved. iani wrote: >Yes, I have experienced similar problems under the worst possible >circumstances >and with catastrophic results. All this is very scary! Is there a solution? A next-release fix? Maurizio Giri From sc-users-owner@bga.com Sun Dec 29 06:32:41 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id GAA23455 for sc-users-outgoing; Sun, 29 Dec 1996 06:32:41 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id GAA23446 for ; Sun, 29 Dec 1996 06:32:40 -0600 Received: from [128.83.128.1] (slip-12-1.ots.utexas.edu [128.83.128.1]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id GAA09128 for ; Sun, 29 Dec 1996 06:33:41 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 29 Dec 1996 05:31:21 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: anyone else have this problem? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 8:15 AM +0100 12/29/96, Maurizio Giri wrote: >dudas wrote: >> When I open and close lots of files, with intermittent saving, some of the >> files I may have opened, but not modified, get overwritten by one of the >> files that I've saved. >iani wrote: >>Yes, I have experienced similar problems under the worst possible >>circumstances >>and with catastrophic results. > >All this is very scary! >Is there a solution? A next-release fix? Can someone reproduce this behaviour in a step by step way? Does this happen on 1.1b5 or 1.0 or both? --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Sun Dec 29 17:19:10 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id RAA26802 for sc-users-outgoing; Sun, 29 Dec 1996 17:19:10 -0600 Received: from maelzel.ircam.fr (maelzel.ircam.fr [129.102.1.10]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id RAA26790 for ; Sun, 29 Dec 1996 17:19:07 -0600 Received: from hildegard.ircam.fr (hildegard.ircam.fr [129.102.144.17]) Received: from [129.102.145.33] (mac-pedago-studio-assist.ircam.fr [129.102.145.33]) by hildegard.ircam.fr (8.7.5/jtpda-5.2/ircam) with SMTP id AAA20116 for ; Mon, 30 Dec 1996 00:19:05 +0100 (MET) Message-Id: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" X-Mailer: Eudora F1.5.1 Date: Mon, 30 Dec 1996 00:20:28 +0100 To: sc-users@bga.com From: Richard.Dudas@ircam.fr (dudas) Subject: Re: anyone else have this problem? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com >Can someone reproduce this behaviour in a step by step way? [ files get overwritten by another opened and saved file ] >Does this happen on 1.1b5 or 1.0 or both? Unfortunately, I couldn't reproduce this or I'd have been more precise and reported it as a definite bug. Now I know that at least one other person's had the problem and I'm not "going 'round the bend", as it were. I'm sure it's happened to me in v.1.0, and I'm pretty positive I was using 1.1b5 when it happened again recently. (although there's room for doubt) I've modified my working habits for the time being, but will try to "beta-test" and pinpoint the problem if I can, when I'm less stressed getting my current patch together. (after the New Year). For what it's worth, the problem seems to have happened after I've opened worked on, saved and closed a file, opened, played with and closed 5-10 files to see what makes them tick, then returned to the first file, and when I save it overwrites one of the previously opened files whenever I save again. This is, however, only a rough guess, since it's something I only discover after the fact... perhaps my memory of the events leading up to the overwriting are completely off the mark. (?) -Richard From sc-users-owner@bga.com Sun Dec 29 22:55:33 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id WAA07934 for sc-users-outgoing; Sun, 29 Dec 1996 22:55:33 -0600 Received: from hamp.hampshire.edu (lasCCS@hamp.hampshire.edu [192.33.12.137]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id WAA07912 for ; Sun, 29 Dec 1996 22:55:24 -0600 Received: (from lasCCS@localhost) by hamp.hampshire.edu (8.7.3/8.7.3) id XAA13246; Sun, 29 Dec 1996 23:57:09 -0500 (EST) Date: Sun, 29 Dec 1996 23:57:09 -0500 (EST) From: Lee A Spector <---@---.---> To: sc-users@bga.com Subject: non-midi control of SuperCollider? Message-ID: MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com I'd like to control SuperCollider from some devices that I'll be connecting to a mac with an ADB I/O box (see http://www.bzzzzzz.com/BeeHive/ADB_IO/ADBIO_Intro.html for more about ADB I/O). Available interfaces allow the ADB I/O to talk to several programming environments, including HyperCard, Macintosh Common Lisp, Director, Think C, Metrowerks, AppleScript, and Max. I suppose I could have the ADB I/O talk to one of these environments, and then shuttle information to Supercollider via Midi and the patchbay. If possible, however, I'd like to avoid midi communications for this project -- I don't have a Midi setup on the machine this will run on, and I often have configuration & conflict hassles setting up Midi on my machines (which are usually used for non-musical things). I can think of two possibilities for avoiding Midi here: - Have the ADB I/O talk to one of the programming environments for which an interface exists and control SuperCollider via AppleEvents or some other scripting/macro system. - Write an ADB I/O interface for SuperCollider. Opinions? Advice? Code? Any of these would be appreciated. Thanks, -Lee -- Lee Spector Asst. Professor of Computer Science E-mail: lspector@hampshire.edu School of CCS, Hampshire College WWW: http://hampshire.edu/~lasCCS/ Amherst, MA 01002 Phone: 413-582-5352, Fax: 413-582-5438 From sc-users-owner@bga.com Sun Dec 29 23:09:16 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id XAA09890 for sc-users-outgoing; Sun, 29 Dec 1996 23:09:16 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id XAA09875 for ; Sun, 29 Dec 1996 23:09:14 -0600 Received: from [128.83.176.100] (slip-104-4.ots.utexas.edu [128.83.176.100]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id XAA11106 for ; Sun, 29 Dec 1996 23:10:12 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Sun, 29 Dec 1996 22:07:54 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: anyone else have this problem? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 12:20 AM +0100 12/30/96, dudas wrote: >>Can someone reproduce this behaviour in a step by step way? >[ files get overwritten by another opened and saved file ] >>Does this happen on 1.1b5 or 1.0 or both? > >Unfortunately, I couldn't reproduce this or I'd have been more precise and >reported it as a definite bug. Now I know that at least one other person's >had the problem and I'm not "going 'round the bend", as it were. I believe you. I am just unable to make it happen myself. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Mon Dec 30 09:58:09 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id JAA09167 for sc-users-outgoing; Mon, 30 Dec 1996 09:58:09 -0600 Received: from magigimmix.xs4all.nl (magigimmix.xs4all.nl [194.109.6.25]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id JAA09145 for ; Mon, 30 Dec 1996 09:58:07 -0600 Received: from xs2.xs4all.nl (xs2.xs4all.nl [194.109.6.43]) by magigimmix.xs4all.nl (8.7.6/XS4ALL) with ESMTP id QAA18748 for ; Mon, 30 Dec 1996 16:58:02 +0100 (MET) Received: (from jr@localhost) by xs2.xs4all.nl (8.7.6/XS4ALL) id QAA16359 for sc-users@bga.com; Mon, 30 Dec 1996 16:58:02 +0100 (MET) Date: Mon, 30 Dec 1996 16:58:02 +0100 (MET) From: jr <---@---.---> Message-Id: <199612301558.QAA16359@xs2.xs4all.nl> To: sc-users@bga.com Subject: input glitches Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com RE SOUND INPUT NOISE I have a lot of experience using Supercollider in a concert situation for a piece made for the Frankfurt Ballet. We just gave nine performances of the work and for the most part Supercollider behaved well. However... There is a problem with SOUND INPUT on REcompilling/restarting SC programs. I'm using SuperCollider 1.1b5 Due to the musical work situation we developed many small SC programs and had to swap between them as the show progressed preferably without restarting either SC or the MAC. BUT when after using a SC program from a fresh boot a new program is loaded which uses realtime external sound input or the same program is restarted=recompiled for the second and subsequent times there is a good chance ( > 20%) there will be glitches in the input stream. In some cases sound input is lost altogether. We found that this can not be fixed by restarting SC but only by rebooting the Mac OR By halting the execution of supercollider (but not quitting); then starting Alberto Ricci's SoundEffect, and quitting it; when the offending Supercollider patch is restarted it receives input without glitches This sort of noise is familiar to programmers at our studio (STEIM) in their realtime sampling program LISA. They have no idea how to fix it. A sync problem between SC and sound manager? Problem with input buffer sizes?? I this probem was observed in a program which grabbed a few seconds of sound for fixed buffer processing but the patch most clearly effected was one which used a tapped delay line and home made streaming granular processing: -- a simplied version of a SC process which regularly exhibits input glitch problem -- SIMPLE STREAMING GRANULAR MODEL BASED ON AN EXAMPLE FROM JMcC defaudioin Lin Rin; defaudioout L R; defdelay dlyL(5.0); -- ONE delay MONO input, dual MONO output const dlysize = 5.0; var base=1.5; var pitch=1.0; -- a global version for debugging post var dtime=0.0; init { } start { debuggingUpdate; dlgrain; { out(in(Lin), dlyL); -- out patches signal from Left-in to our delay line }.dspAdd(2); } dlgrain { -- generate a grain from a delay line pitch = fold((getItemValue(1) + rand2(getItemValue(5))), 0.1, 8.0); -- +/- rand dur = getItemValue(2); base = wrap( base + getItemValue(4), 0.0, dlysize); rampenv = Aline(base, base + (dur * (1.0 - pitch)), dur, `dspRemove); -- for indexing dline ampenv = Aparenv(dur, getItemValue(6)); -- overall amp control here { dtime = value(rampenv); -- tap index; zamp = value(ampenv); wet = getItemValue(15); out( ((tapi(dlyL, dtime) *! zamp)*wet) + (in(Lin)*(1-wet)), L); out( ((tapi(dlyL, dtime) *! zamp)*wet) + (in(Rin)*(1-wet)), R); }.dspAdd(1); sched([dur / getItemValue(3), thisFunc]); -- next grain in dur/density } debuggingUpdate -- { post ( ["dispersion" getItemValue(4)] ); post ( ["pitch" pitch.value]); --caution global pitch not instantiated [2.0, thisFunc].sched; jr _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ Joel Ryan +31 (020) 624-3886 jr@xs4all.nl _/ STEIM Studio for Electro-Instrumental Music _/ _/ Institute of Sonology The Netherlands _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ From sc-users-owner@bga.com Mon Dec 30 10:00:13 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id KAA09533 for sc-users-outgoing; Mon, 30 Dec 1996 10:00:13 -0600 Received: from magigimmix.xs4all.nl (magigimmix.xs4all.nl [194.109.6.25]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id KAA09503 for ; Mon, 30 Dec 1996 10:00:10 -0600 Received: from xs2.xs4all.nl (xs2.xs4all.nl [194.109.6.43]) by magigimmix.xs4all.nl (8.7.6/XS4ALL) with ESMTP id RAA19204 for ; Mon, 30 Dec 1996 17:00:04 +0100 (MET) Received: (from jr@localhost) by xs2.xs4all.nl (8.7.6/XS4ALL) id RAA16454 for sc-users@bga.com; Mon, 30 Dec 1996 17:00:03 +0100 (MET) Date: Mon, 30 Dec 1996 17:00:03 +0100 (MET) From: jr <---@---.---> Message-Id: <199612301600.RAA16454@xs2.xs4all.nl> To: sc-users@bga.com Subject: file corruption Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com RE FILE OVERWRITE PROBLEMS: Working with dozens of medium length patches (say 100 lines of code) on two machines daily for more than three months I have never experienced any problems with file corruption. With the exception of the loss (once or twice in fourn months) of GUI coherence I use the editor QUED a lot to view/edit multiple versions of a program or to compare files while working I highly recommend a multi-window editor like QUED or BeEdit for development. Though of course due to the GUI code embedded in the SC files, care must be taken not to erase the GUI suff which is at the head and foot of the user script. But you can safely cut and paste SC text INTO the the SC window. I would like to be able to switch the font size in the SC builtin editor Anyone know how? ResEdit was not much help but I'm not current on MacOS. For the most part I have been using SuperCollider on 7500 and 7600 PPC's I will upgrade to a more powerful platform in the next six months depending on what becomes available and how the Mac/BeOS plans evolves. My home machine is a 7500 and while it has not given rise to a lot of confidence about the future of the Machinosh it works well with Supercollider. jr _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ Joel Ryan +31 (020) 624-3886 jr@xs4all.nl _/ STEIM Studio for Electro-Instrumental Music _/ _/ Institute of Sonology The Netherlands _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ _/ From sc-users-owner@bga.com Mon Dec 30 11:32:04 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id LAA25372 for sc-users-outgoing; Mon, 30 Dec 1996 11:32:04 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id LAA25329 for ; Mon, 30 Dec 1996 11:31:59 -0600 Received: from [128.83.113.166] (slip-50-6.ots.utexas.edu [128.83.113.166]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id LAA12648 for ; Mon, 30 Dec 1996 11:32:59 -0600 X-Sender: james@clyde.as.utexas.edu (Unverified) Message-Id: In-Reply-To: <199612301558.QAA16359@xs2.xs4all.nl> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Mon, 30 Dec 1996 10:30:16 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: input glitches Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 4:58 PM +0100 12/30/96, jr wrote: >RE SOUND INPUT NOISE >I have a lot of experience using Supercollider in a concert >situation for a piece made for the Frankfurt Ballet. We just gave >nine performances of the work and for the most part Supercollider >behaved well. >However... >There is a problem with SOUND INPUT on REcompilling/restarting SC programs. >I'm using SuperCollider 1.1b5 What do the glitches sound like? dropouts? scrambled? When starting a sound input patch SC 1.1b5 prints "siDeviceBufferInfo : XXXX" Try setting your frame size to twice that number and you subframe size to the largest multiple of 8 which is a divisor of that number. Does it still happen? I think for the 7500 that number is 4048. which would make the settings be : frame 8096, subframe 16 I'm not sure that will fix it. It seemed to do so once when I tested on a friends 7500. How high is the CPU % when you are running? --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Tue Dec 31 10:55:53 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id KAA26648 for sc-users-outgoing; Tue, 31 Dec 1996 10:55:53 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id KAA26632 for ; Tue, 31 Dec 1996 10:55:50 -0600 Received: from [128.83.176.81] (slip-103-33.ots.utexas.edu [128.83.176.81]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id KAA15287 for ; Tue, 31 Dec 1996 10:56:49 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Tue, 31 Dec 1996 09:54:30 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: non-midi control of SuperCollider? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 11:57 PM -0500 12/29/96, Lee A Spector wrote: >Opinions? Advice? Code? Any of these would be appreciated. I'm downloading the code and will have a look.. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Tue Dec 31 11:38:27 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id LAA04247 for sc-users-outgoing; Tue, 31 Dec 1996 11:38:27 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id LAA04236 for ; Tue, 31 Dec 1996 11:38:24 -0600 Received: from [128.83.254.151] (slip-78-7.ots.utexas.edu [128.83.254.151]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id LAA15400 for ; Tue, 31 Dec 1996 11:39:27 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Tue, 31 Dec 1996 10:37:13 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: non-midi control of SuperCollider? Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com Their code currently operates synchronously, meaning that when you poll for data it waits until it gets some. This is bad for SuperCollider. It looks possible to rewrite it for asynchronous operation, but I need to ask them a couple of questions. --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx From sc-users-owner@bga.com Tue Dec 31 12:29:59 1996 Received: (from daemon@localhost) by zoom.bga.com (8.6.12/8.6.12) id MAA12815 for sc-users-outgoing; Tue, 31 Dec 1996 12:29:59 -0600 Received: from clyde.as.utexas.edu (clyde.as.utexas.edu [128.83.129.156]) by zoom.bga.com (8.6.12/8.6.12) with ESMTP id MAA12800 for ; Tue, 31 Dec 1996 12:29:56 -0600 Received: from [128.83.176.88] (slip-103-40.ots.utexas.edu [128.83.176.88]) by clyde.as.utexas.edu (8.6.11/2.01) with ESMTP id MAA15718 for ; Tue, 31 Dec 1996 12:30:57 -0600 Message-Id: In-Reply-To: Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Date: Tue, 31 Dec 1996 11:28:42 -0700 To: sc-users@bga.com From: James McCartney <---@---.---> Subject: Re: lines and things Sender: owner-sc-users@bga.com Precedence: bulk Reply-To: sc-users@bga.com At 12:49 AM +0100 12/28/96, dudas wrote: >Dearest SC users, > >I've been trying to put together a global interface for a new patch of >effects, etc... > >What I'd like to have is based on the usual idea of having a checkbox in >the GUI turn on and off different processes. Here's a very simple example >using a single checkbox in the GUI controlling the playing of a sine wave. This uses a lag to smooth out the on/off switch : defaudioout L R; start { inst1; } inst1 { osc = Asinosc(400,0); lag = Alag(0, 0.1); { (osc.value *! lag.value(1.getItemValue * 0.2)).out(L).out(R); }.dspAdd } If you really want to turn off processes so that CPU usage goes down you really need to deallocate them and reallocate them as a separate instrument that communicates via buses. because if a unit generator is not evaluated every control period it can get confused as to what time it is. The following code is not a good thing to do because fadein() and fadeout() are not evaluated every control period : > if 1.getItemValue != 0 then > (osc.value *! fadein.value()).out(L).out(R); > elseif 1.getItemValue == 0 then > (osc.value *! fadeout.value()).out(L).out(R); > end.if --- james mccartney james@clyde.as.utexas.edu james@lcsaudio.com If you have a PowerMac check out SuperCollider, a real time synth program: ftp://mirror.apple.com//mirrors/Info-Mac.Archive/gst/snd/super-collider-demo.hqx