From: owner-sc-users-digest@lists.io.com (sc-users-digest) To: sc-users-digest@lists.io.com Subject: sc-users-digest V1 #384 Reply-To: sc-users Sender: owner-sc-users-digest@lists.io.com Errors-To: owner-sc-users-digest@lists.io.com Precedence: bulk sc-users-digest Saturday, November 24 2001 Volume 01 : Number 384 ---------------------------------------------------------------------- Date: Thu, 22 Nov 2001 22:40:01 +0100 From: Julian Rohrhuber <---@---.---> Subject: Re: Extrnal tempo control/MIDI (again) >http://www.studiobeige.de ... .. . ... . . .http://www.echtzeitmusik.de > >> Dear List, >> >> _how would you send out the tempo used in a SC patch >> in order to link an external drum machine trough MIDI? >> >> _how would you send out the tempo >> from a drum machine trough MIDI to a SC patch? >> >> Cheers >> Fabrice >maybe reserve one midinote for trigger > >possibly: >PulseDivider.kr(MIDIMostRecentNote.kr(),4).... >-- > >nicholas in that case PulseDivider.kr(MIDINoteGate.kr(),4).... - -- . ------------------------------ Date: Thu, 22 Nov 2001 21:05:55 -0600 From: matrix6k <---@---.---> Subject: error -37- again I have no idea what's going on, but this sure is frustrating. I got a Ti. OS 9.1. I write a soundfile with either .record or .write. After I do that I can not save via command-s or file:save. ERROR -37. the name of the patch dissappears. the only way to save it is file:SaveAs, then rewrite the name, then hit 'replace' when it asks me if i want to replace the existing file, which of course i do. SC 2.2.10, and 2.2.11 both do this, and both were downloaded today to make sure it wasn't one of my crappy classes. I have tried old code, new code, and other's code with the same results. There is fifteen gig left on the drive. I have tried messing about w/extensions too. I have reformatted my hard drive, and reinstalled all software in an effort to solve this problem, but it persists. (thought it might've been the directory) Does anyone have any idea as to what is wrong or what I may be doing incorrectly ? I know this isn't life threatening, but it's getting tedious to write tiny files for sample material and not being able to quicksave when i make changes, and I'm REALLY ADDICTED TO SAVING MY WORK- so.... please help ? - -mike _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com ------------------------------ Date: Fri, 23 Nov 2001 00:06:31 -0600 From: matrix6k <---@---.---> Subject: error -37 nevermind. i 'fixed' it. in case it happens to someone else : clearing the program ram worked for some reason- fixed it right up. thanks much anyway. - -mike _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com ------------------------------ Date: Fri, 23 Nov 2001 03:02:43 -0600 From: matrix6k <---@---.---> Subject: Re: error -37- again k. clearing program ram worked for about five minutes. maybe something's wrong with my computer. i dunno. any help would be appreciated, but since this appears to be a problem soley related to me i apologize for the waste of bandwidth. - -m matrix6k wrote: > > I have no idea what's going on, > but this sure is frustrating. > I got a Ti. OS 9.1. > I write a soundfile with either .record or .write. > After I do that I can not save via command-s or file:save. > ERROR -37. the name of the patch dissappears. > the only way to save it is file:SaveAs, then rewrite the name, then hit > 'replace' > when it asks me if i want to replace the existing file, which of course > i do. > SC 2.2.10, and 2.2.11 both do this, and both were downloaded today to > make sure it > wasn't one of my crappy classes. I have tried old code, new code, and > other's code with > the same results. There is fifteen gig left on the drive. > I have tried messing about w/extensions too. > I have reformatted my hard drive, and reinstalled all software > in an effort to solve this problem, but it persists. (thought it > might've been the directory) > Does anyone have any idea as to what is wrong or what I may > be doing incorrectly ? > I know this isn't life threatening, but it's getting tedious to write tiny > files for sample material and not being able to quicksave when i make > changes, and I'm REALLY ADDICTED TO SAVING MY WORK- so.... > > please help ? > > -mike > > _________________________________________________________ > Do You Yahoo!? > Get your free @yahoo.com address at http://mail.yahoo.com _________________________________________________________ Do You Yahoo!? Get your free @yahoo.com address at http://mail.yahoo.com ------------------------------ Date: Fri, 23 Nov 2001 04:08:34 -0800 From: ben <---@---.---> Subject: Re: error -37- again if its any consolation, i have experienced the same 'bug' repeatedly and consistently. *shrug* ben > I have no idea what's going on, > but this sure is frustrating. > I got a Ti. OS 9.1. > I write a soundfile with either .record or .write. > After I do that I can not save via command-s or file:save. > ERROR -37. the name of the patch dissappears. > the only way to save it is file:SaveAs, then rewrite the name, then hit > 'replace' > when it asks me if i want to replace the existing file, which of course > i do. > SC 2.2.10, and 2.2.11 both do this, and both were downloaded today to > make sure it > wasn't one of my crappy classes. I have tried old code, new code, and > other's code with > the same results. There is fifteen gig left on the drive. > I have tried messing about w/extensions too. > I have reformatted my hard drive, and reinstalled all software > in an effort to solve this problem, but it persists. (thought it > might've been the directory) > Does anyone have any idea as to what is wrong or what I may > be doing incorrectly ? > I know this isn't life threatening, but it's getting tedious to write tiny > files for sample material and not being able to quicksave when i make > changes, and I'm REALLY ADDICTED TO SAVING MY WORK- so.... > > please help ? > > > > -mike > > _________________________________________________________ > Do You Yahoo!? > Get your free @yahoo.com address at http://mail.yahoo.com > > ------------------------------ Date: Fri, 23 Nov 2001 18:54:37 +0000 From: "Fabs Mogini" <---@---.---> Subject: intervalles/inversion classes Hi everyone, This Patch works and is simple but I am still unable to write it as a class... From it, two 'collection type'classes could be created: One for calculating intervals between adjacent elements of an array (this is to be used with frequencies so we need to know if we are moving up or down). The second class would use such an interval (given as an array) for an inversion of the original (changing direction). Given an array (of intervals) and a start value, this class could be used to calculate what the next step (start + interval.at(0)) will be and then yeld this value and start from that point to to calculate the next step (currentvalue + interval.at(1). This example does the job this but I would like to understand how these two classes can be written from that... Under the example is an attempt to write the first of the two classes... Cheers Fabrice Mogini /////////////////////////////////////////////////////////////// ( //original array a = [-2, 1, -1, 3, 5]; a.postln; 'original'.postln; ''.postln; // job for the first class: //calculate intervals between each adjacent element of the array b = Array.fill(a.size-1,{arg i;var x; x = (a.at(i)) - (a.at(i+1)); x.neg; }); b.postln; 'intervals'.postln; ''.postln; // job for the second class: // calculate inversion (as in Classical Music) c = a.copyFromStart(0)++b.neg; d = c; e = a.copyFromStart(0)++Array.fill(4,{ arg i;var v, t,s; v = (d.at(0) + d.at(1)); t = d.rotate(-1); s = t.put(0,v); d = s.copyFromStart(d.size - 2); v; }); e.postln; 'inversion'.postln; ''.postln; ) //////////////////////////////////////////////////////////////////// intervalles { arg aCollection;var z; z= Array.fill(this.size-1,{arg i;var x; x = (this.at(i)) - (this.at(i+1)); x.neg; }); ^z; } //////////////////////////////////////////////////////////////////// ------------------------------ Date: Sat, 24 Nov 2001 14:21:22 -0500 From: felix <---@---.---> Subject: Re: Pattern restart Well what kind of thing do you want to cause the restart ? a button ? another pattern ? i'm not sure why this is a difficult question, it seems simple. TSpawn.ar({ EnvGen.kr(env) * pattern.ar },trig) that restarts the thing each time. in crucial speak you could PlayerPool([ Ar(pattern), Ar(pattern2) ]).topGui and just hit the button or send a .select message (that would monophonically play one pattern at a time. you want multiple ones at a time so you have to do something slightly different than PlayerPool. what's your triggering/decision unit ? (you yourself?) > From: newton armstrong <---@---.---> > Reply-To: sc-users@lists.io.com > Date: Thu, 22 Nov 2001 14:49:58 -0500 > To: > Subject: Re: Pattern restart > > thanks julian, that's some handy code. > the only thing is that streams that aren't currently playing are still > taxing the cpu, and if there's going to be a lot of them (and i'm looking at > a huge library), then this is still going to impose a maximum limit, which > is the problem i was trying to get around in the first place. > the nice thing about putting nil in a stream is that the stream then no > longer makes any demands on the cpu. but what i'd really like to be able to > do is subsequently relaunch that stream, from the same pattern template and > without restarting the synth engine, after it has been nillified. it could > be there's just no way to do this in SC2. > > > ------------------------------ Date: Sat, 24 Nov 2001 11:25:13 -0800 From: MarkDavid <---@---.---> Subject: Patterns and other tunnings Dear SC-users: I am currently working on an étude involving patterns and some quasi extended Pythagorian tuning I developed. What I am hoping to do is simplify how I reference my tuning system. What I am doing is using MIDI decimal values to obtain the pitches I want in the patterns. For example, 314.3056981 cycles per second (Hz) is equal to 63.176 in midi decimal notation. But in my patterns I would rather refer to the pitch as e3 to save time. Also is it possible to make the first pattern from the examples below sound like the second pattern by somehow replacing the tuning system. My instinct tells me that there may be an elegant solution for all of my problems. Any help is appreciated. Thanks-MarkDavid EXAMPLE 1 ( Ppar([ Pbind( \dur, Pseq([0.28], inf), \midinote, Pseq([60, 52.9805, 56.8241, 52.9805, 57.9609, 52.9805, 56.8241, 52.9805, 56.8241, 52.9805,56.8241, 57.9609], 4)+[0,5], \db, -16, \legato, 1) ], inf).play(Event.protoEvent, effects: { arg out; 3.do({ out = AllpassN.ar(out, 0.05, [0.04.rand, 0.04.rand], 3) }); out }); ) EXAMPLE 2 ( Ppar([ Pbind( \dur, Pseq([0.28], inf), \midinote, Pseq([60, 52.9805, 56.8241, 52.9805, 57.9609, 52.9805, 56.8241, 52.9805, 56.8241, 52.9805, 56.8241, 57.9609], 4), \db, -16, \legato, 1), Pbind( \dur, Pseq([0.28], inf), \midinote, Pseq([64.0782, 57.9609, 62.0391,57.9609,62.0391,57.9609,62.0391,57.9609,62.0391,57.9609,62.0391,63.1 76], 4), \db, -16, \legato, 1) ], inf).play(Event.protoEvent, effects: { arg out; 3.do({ out = AllpassN.ar(out, 0.05, [0.04.rand, 0.04.rand], 3) }); out }); ) - -- Experience After-Life on the Bardo Plane of Existence: http://www.mdhosale.com/BookOfTheDead ------------------------------ Date: Sat, 24 Nov 2001 15:37:19 -0500 From: newton armstrong <---@---.---> Subject: Re: Pattern restart On 24/11/01 2:21 PM, "felix" wrote: > > Well what kind of thing do you want to cause the restart ? a button ? > another pattern ? > > i'm not sure why this is a difficult question, it seems simple. > > > TSpawn.ar({ > EnvGen.kr(env) * pattern.ar > },trig) > > that restarts the thing each time. that's what i've been doing. the problem is that i have many, many, many patterns that i want to load dynamically from files while the Synth engine is running, and doing it like this requires many, many, many TSpawns. this eventually adds too much cpu overhead for it to be worthwhile. i've been switching patterns on and off using buttons (GUI, midi switches, whatever). if you use a button to put nil in a stream (using Pswitch1), then you've killed that stream and it makes no further demands on cpu. the problem is the pattern from which that stream was created cannot make a new stream without (1) killing and restarting synthesis, (2) using the kinds of FuncStream::reset tricks that julian posted the other day (which also incrementally tax the cpu as you add more patterns), or (3) using TSpawn. there's a hole in the bucket, dear liza. ------------------------------ Date: Sat, 24 Nov 2001 15:47:27 -0600 From: James McCartney <---@---.---> Subject: Re: Pattern restart on 11/24/01 2:37 PM, newton armstrong at newton@silvertone.princeton.edu wrote: > patterns that i want to load dynamically from files while the Synth engine > is running, and doing it like this requires many, many, many TSpawns. You should only need one. Your function should be able to choose a pattern. Or alternatively, using 'triggerSynth', one TSpawn can spawn an unlimited number of different functions. - --- james mccartney james@audiosynth.com SuperCollider - a real time synthesis programming language for the PowerMac. ------------------------------ End of sc-users-digest V1 #384 ******************************