SuperCollider

Nee - dit wordt mij toch te gek! :stupidIk krijg er een knallende hoofdpijn van, en ik wil er geen jaren studie en oefening in gaan steken om een beetje met die nieuwe programmeertaal (SuperCollider) uit de voeten te kunnen en zelf programma's te kunnen schrijven. Dan maar wat minder geavanceerd. Misschien is ChucK of Sonic Pi iets voor me? Probleem met Sonic Pi was echter dat ik dat al eens eerder geprobeerd heb, maar het toen niet goed aan de praat kreeg. Misschien lukt dat me dat nu wel?
 
Sonic Pi werkt nu bij mij ook. Misschien omdat ik SuperCollider ook nog op mijn computer heb staan? Hoe dan ook met Sonic Pi is voor mij voorlopig nog genoeg te experimenteren. Dan kan ik die professionele programma's zoals SuperCollider en Csound verder aan de professionals overlaten. Voor mij is het maar een hobby, en het moet wel leuk blijven. ChucK doet het nu ook.
 
Als @bombario toevallig meeleest, hij is op zoek naar wat je kunt doen voor een liveset, wellicht iets voor hem! :D
Dank voor het delen.

Ik heb voor mijn werk een abonnement genomen op LinkedIn Learning. Onder andere voor online marketingtrainingen. Maar ze hebben ook pro-audio cursussen en gisteren stuitte ik op 'Performing with Ableton Live: On Stage with St. Vincent'. Dat is een cursus van 2 uur en die ga ik maar eens volgen 👍
 
Van belang voor Linux-gebruikers die ChucK via miniAudicle willen gebruiken: AUR (en) - mini-audicle

Zie de post van “schaap137” op 2017-03-02 23:16 voor de oplossing van een installatie-probleem van miniAudicle.
 
Wat heeft ChucK met SuperCollider te maken?

Geen idee. Maar als ChucK bevalt zal ik er een nieuw topic over starten, dat is beter. Ik ben Chuck en miniAudicle nu nog even aan het uitproberen als mogelijk eenvoudiger alternatief voor SuperCollider en Csound. Met die laatste twee stop ik.
 
Inderdaad - mijn studie van Csound en SuperCollider is gelukkig niet tevergeefs geweest, want veel van de object-oriented aanpak zie ik ook in ChucK weer terug. Wel lijkt ChucK mij tot nog toe eenvoudiger. Maar ik zal een nieuw topic over ChucK openen, want dat is handiger dan om hier over ChucK verder te discussiëren.
 
Ik ben twee jaar geleden begonnen met supercollider , heb het een paar maanden volgehouden .
Het bleef vooral by soundscapes , mouse area stuff en blokken code zonder synthdefs
Nu enkele weken terug de draad opgepikt , synthdefs en pseqs ..echt waanzinnig veel fun en vooruitgang geboekt, en nu in staat om de synthdefs the sequencen .
Echt ongelooflijk fun , alle synthdefs parameters squencen in een Pbind .
Supercollider klinkt gewoon waanzinning
De taal blijft moeilijk maar alles is echt de moeite waard
 

Attachments

  • supercollider noise.mp3
    1,4 MB
Mooi dat het je gelukt is. Ik kreeg er een knallende hoofdpijn van om die SuperCollider taal te leren, en heb het opgegeven. Van Csound heb ik uiteindelijk de draad wel weer opgepakt, en daar ga ik ook mee door.
 
Het is mij verre van gelukt , Ik krijg nog steeds knallende hoofdpijn en enorm veel frustraties hoor , countless syntax errors ..etc..en ik snap de sclang ook nog iet volledig
Om dan nog maar te zwijgen over hoeveel zaken ik na een aantal dagen al ben vergeten etc...soms vraag ik mij ook af waarom ik het doe :)
Zonder de hulp van het Supercollider forum had ik het waarschijnlijk ook al opgegeven , die gasten hebben echt ongelooflijk veel geduld met mij
 
Laatst gewijzigd:
Waarschijnlijk is het 't beste om je op een paar talen (of zelfs maar één taal) te concentreren, en ook wat rustpauzes in te lassen. Soms heb je gewoon een aantal dagen nodig om de stof te verwerken. Maar als er uiteindelijk dingen gaan lukken geeft het toch wel een geweldige kick! Althans zo gaat dat bij mij.
 
Laatste project , microtonic clone ,twee pbinds
Hier is de code

( SynthDef (\Tonic, { |oscfreq=50,lfofreq=200,lfoamount=0,penvamount=200, decaycurve=(-5),patt=0.001,pdec=0.200,shamount=0,shrate=3, ampatt=0.001,ampdec=0.7,ampdecaycurve=(-5),oscwaveform=1,signalout=0.7,pan=0.2,noiseatt=0.001,noisedec=0.164,noiseamp=0.6,xfade=0,nfiltfreq=1800,noisereso=0.2,noisefiltselect=0, drive=2| var sin,tri,saw,lfo,modsh,penv,ampenv,sh,signal,noisesig,noiseenv,noisesigbp,noisesighp,noisesiglp; noisesig=WhiteNoise.ar*noiseamp; noiseenv=EnvGen.ar(Env([0,1,0],[noiseatt,noisedec],[0,-5])); noisesig=noisesig*noiseenv; noisesigbp=BPF.ar(noisesig,nfiltfreq,rq:noisereso); noisesighp=RHPF.ar(noisesig,nfiltfreq,rq:noisereso); noisesiglp=RLPF.ar(noisesig,nfiltfreq,rq:noisereso); noisesig=Select.ar(noisefiltselect,[noisesigbp,noisesighp,noisesiglp]); sh=LFNoise0.ar(shrate)*shamount; penv=EnvGen.ar(Env([0,1,0],[patt,pdec],[0,decaycurve]),doneAction:0)*penvamount; ampenv=EnvGen.ar(Env([0,1,0],[ampatt,ampdec],[0,ampdecaycurve]),doneAction:2); lfo=SinOsc.ar(lfofreq)*lfoamount; sin=SinOsc.ar(oscfreq+penv+lfo+sh)*ampenv; tri=LFTri.ar(oscfreq+ penv +lfo+sh)*ampenv; saw=LFSaw.ar(oscfreq+penv+lfo+sh)*ampenv; signal=Select.ar(oscwaveform,[sin,tri,saw]); signal=XFade2.ar(signal,noisesig,pan:xfade); signal=((signal)*drive).tanh; signal=Pan2.ar(signal,pos:pan)*signalout; Out.ar(0,signal); }).add ) ///// ~tonzer=Synth(\Tonic,[ \oscwaveform,0,////////////0=sine,1=triangle,2=saw \oscfreq,50,///////////////Osc frequency \lfofreq,100,//////////////Osc pitch lfo frequency \lfoamount,0,//////////////Osc pitch lfo amount \penvamount,200,///////////Osc pitch envelope amount \decaycurve,(-5),//////////Osc decay curve \patt,0.001,///////////////Osc pitch envelope attack \pdec,0.200,///////////////Osc pitch envelope decay \shamount,0,///////////////Osc pitch Sample and hold amount \shrate,3,/////////////////Osc pitch Sample and hold rate \ampatt,0.001,/////////////Osc amp atack \ampdec,0.7,///////////////Osc amp decay \ampdecaycurve,(-5),///////Osc amp decay curve \noiseamp,0.6,/////////////Noise amp \nfiltfreq,1800,///////////Noise filter freq \noiseatt,0.001,///////////Noise attack \noisedec,0.164,///////////Noise Decay \noisefiltselect,0,////////Noise filter select 0=bandpass, 1=Reso highpass, 2= reso Lowpass \noisereso,0.5,////////////Noise filter Reso \xfade,0,//////////////////Crossfade between Osc and Noise \drive,2,//////////////////Drive amount into Tanh shaper \pan,0,////////////////////pan output \signalout,0.7,////////////Signal output volume ]) ~tonzer.free; ///////// ~fanker=Synth(\Tonic,[\oscfreq,100,\lfofreq,100,\lfoamount,100,]) ( Pdef(\yeah, Pbind(\instrument, \Tonic, \dur,Pseq([1,1/2,1,1/2,1/4,1/2,1/4,1/4,1/2,1,1/4,1/4,1/4,1/4,1/4,1/4],inf), \oscwaveform,Pseq([0,0,0,0,0,0,1,1,1,1,1],inf),////////////0=sine,1=triangle,2=saw \oscfreq,50,///////////////Osc frequency \lfofreq,Pseq([50,100,1000,100],inf),//////////////Osc pitch lfo frequency \lfoamount,Pwhite(0,1000,inf),//////////////Osc pitch lfo amount \penvamount,200,///////////Osc pitch envelope amount \decaycurve,(-5),//////////Osc decay curve \patt,0.001,///////////////Osc pitch envelope attack \pdec,0.0150,///////////////Osc pitch envelope decay \shamount,0,///////////////Osc pitch Sample and hold amount \shrate,0,/////////////////Osc pitch Sample and hold rate \ampatt,0.001,/////////////Osc amp atack \ampdec,0.250,///////////////Osc amp decay \ampdecaycurve,(-5),///////Osc amp decay curve \noiseamp,0.6,/////////////Noise amp \nfiltfreq,Pseq([800,200,1200,400,120,100,1200],inf),///////////Noise filter freq \noiseatt,0.001,///////////Noise attack \noisedec,Pwhite(0.126,0.464,inf),///////////Noise Decay \noisefiltselect,0,////////Noise filter select 0=bandpass, 1=Reso highpass, 2= reso Lowpass \noisereso,Pseq([0.5,0.4,0.1,1,1,1,0.2,0.2,],inf),////////////Noise filter Reso \xfade,Pseq([-1,-1,-1,-1,-1,0,1,0,1,0,1,0,1,0,1,1,1,1],inf),//////////////////Crossfade between Osc and Noise \drive,4,//////////////////Drive amount into Tanh shaper \pan,-0.2,////////////////////pan output \signalout,0.3,////////////Signal output volume ) ) ) ///// ( Pdef(\bleah, Pbind(\instrument, \Tonic, \dur,Pseq([1,1,1,1],inf); \oscwaveform,0,////////////0=sine,1=triangle,2=saw \oscfreq,50,///////////////Osc frequency \lfofreq,Pseq([50,100,1000,100],inf),//////////////Osc pitch lfo frequency \lfoamount,0,//Osc pitch lfo amount \penvamount,200,///////////Osc pitch envelope amount \decaycurve,(-5),//////////Osc decay curve \patt,0.001,///////////////Osc pitch envelope attack \pdec,0.2,///////////////Osc pitch envelope decay \shamount,0,///////////////Osc pitch Sample and hold amount \shrate,0,/////////////////Osc pitch Sample and hold rate \ampatt,0.001,/////////////Osc amp atack \ampdec,0.650,///////////////Osc amp decay \ampdecaycurve,(-5),///////Osc amp decay curve \noiseamp,0.6,/////////////Noise amp \nfiltfreq,Pseq([800,200,1200,400,120,100,1200],inf),///////////Noise filter freq \noiseatt,0.001,///////////Noise attack \noisedec,Pwhite(0.126,0.464,inf),///////////Noise Decay \noisefiltselect,0,////////Noise filter select 0=bandpass, 1=Reso highpass, 2= reso Lowpass \noisereso,Pseq([0.5,0.4,0.1,1,1,1,0.2,0.2],inf),////////////Noise filter Reso \xfade,Pseq([1,1,1,1,1],inf),//////////////////Crossfade between Osc and Noise \drive,2,//////////////////Drive amount into Tanh shaper \pan,0.3,////////////////////pan output \signalout,0.5,////////////Signal output volume ) ) ) Pdef(\yeah).play(t); Pdef(\yeah).stop; Pdef(\bleah).play(t); Pdef(\bleah).stop; t=TempoClock(124/60).permanent_(true)
 

Attachments

  • Tonz two instances.mp3
    609,8 KB
Nog wat probeerseltjes , moet dringend verder studeren om uit de infinite loop modus te geraken :)
 

Attachments

  • keeping bussy.mp3
    2,5 MB
Zijn er voor SuperCollider geen voorbeeld-programma's met een andere opzet waar je kan afkijken hoe dat moet?
 
Back
Top