[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-users] Pbind question



Hey everyone,
I just looked at some of the responses again.

I took Bruno Ruviaro's Experimental Sound Design course in my fall
quarter of my senior year of college. At the end of the class, he
recommended this mailing list to me, so my expectation when I subbed
to it was that it'd be accessible to someone of my experience--or lack
of it, more like.

I ******* love A Gentle Intro to SC because it gives you code examples
to run first, so you can hear the end result. Only after the text
gives you the chance to listen to the sound does it explain--with
varying levels of technicality--how that sound is produced. I still
refer to it to this day.

James, about the SynthDef and example you quoted?

I know what I want to ask but not how to ask it so this might not make sense.

I have multiple synthDefs already made that I want to be able to make
sliding notes. I also have Pbinds already written that I want to
change so they have sliding notes.

How would I alter my preexisting synthDefs and Pbinds to accommodate
for what you've quoted? I read the synthDef, and I recognize most of
it except there are a couple new variables?

I have a lot of material already made, so I want to be able to
implement this with as little fuss as possible.

On 6/10/21, jamshark70@xxxxxxxxx <jamshark70@xxxxxxxxx> wrote:
> On Fri, Jun 11, 2021 at 9:33 AM James Harkins <jamshark70@xxxxxxxxx> wrote:
>> After that, you can have an Event that embeds another event, and the
>> sub-event will automatically allocate a bus, play its synth on that
>> bus, map the parent event control to that bus, and release the bus
>> when finished -- arbitrary modulation signals applied to any
>> parameter.
>
> To pique interest, a quick example.
>
> After installing the test-tempbus.sc extension from
> https://gist.github.com/jamshark70/7571ef65cb3aef58ff14b014b672c91b
> then the following works:
>
> (
> p = Pbind(
>     \type, \notemap,
>     \dur, Pexprand(0.1, 0.8, inf),
>     \legato, Pexprand(0.5, 3.0, inf),
>     \freqEndpoints, Pexprand(200, 1200, inf).clump(2),
>     \pan, Pwhite(-1.0, 1.0, inf),
>     \detunedFreq, Pfunc { |ev|
>         var sustain = ev.use { ~sustain.value } / thisThread.clock.tempo;
>         (
>             instrument: \ctlEnv,
>             env: Env(ev[\freqEndpoints], [1], \exp),
>             time: sustain,
>             addAction: \addBefore
>         )
>     }
> ).play;
> )
>
> p.stop;
>
> So we get sliding notes, but the important thing is what is not necessary to
> do:
>
> - This example does not have to produce control-change events quickly
> -- the time granularity of the Pbind is still per note.
>
> - This example does not have to make any changes to the default
> SynthDef -- you write the note and control SynthDefs in a normal,
> simple way, and the event connects them automatically.
>
> \detunedFreq is a bother -- I'm not sure when I would have time to
> improve that. This isn't high on my priority list -- I would welcome
> suggestions on this issue.
>
> hjh
>
> _______________________________________________
> sc-users mailing list
>
> info (subscription, etc.):
> http://www.birmingham.ac.uk/facilities/ea-studios/research/supercollider/mailinglist.aspx
> archive: https://listarc.bham.ac.uk/marchives/sc-users/
> search: https://listarc.bham.ac.uk/lists/sc-users/search/
>


-- 
"I LOOK FORWARD TO CREATING A NEW FUTURE WITH YOU."

_______________________________________________
sc-users mailing list

info (subscription, etc.): http://www.birmingham.ac.uk/facilities/ea-studios/research/supercollider/mailinglist.aspx
archive: https://listarc.bham.ac.uk/marchives/sc-users/
search: https://listarc.bham.ac.uk/lists/sc-users/search/