Monday, September 9, 2013

SuperCollider Tutorials

Here are some VERY nice SuperCollider Tutorials for the software project that you are required to engage in. Remember, you will be asked to pick a language for sound design:
http://funprogramming.org/105-Introducing-SuperCollider.html
http://funprogramming.org/132-Change-volume-and-pitch-with-SinOsc-kr.html
they are available at funprogramming http://funprogramming.org/

Look for exciting lines of supercollider code:;
I'll share libes you can run to make some awesome beats and pieces.


1.) PURE DATA
2.) MAX/MSP/JITTER
3.) SUPERCOLLIDER
4.) CECILIA/Csound
5.) GIBBER


Spend a few weeks on it and present the class with a thorough presentation describing the benefits of the particular language. I am providing the Textbook and Software tutorials that should get you past all basic first time user questions. You can then come to me @ office hours for specific problems or ideas you are not sure how to implement and i will help you find solutions. So far we have touch on almost all the basic ones. I would like to have our LAN Jam this friday at the SAGE during class and hopefully we can get a mini laptop orchestra going using GIBBER.

So really i am asking you to do several things simultaneously. 1.) Dabble with Gibber. -It's an incredible, cool use of web technologies for sound design. 2.) Choose your focus language - from the list above. 
start using SuperCollider, (make friends with it, it's awesome) to do the Sound Design Tutorials.  

We are following a pretty tried and true course for understanding sound
Additive Synthesis (adding Harmonics to make sounds and get feelings)
Amplitude modualtion (Ring)
Frequency Modulation (bells and metallic brassy sounds) chowning 67
Subtractive Synthesis
Formant Synthesis
Sampling
Granular synthesis
Waveshaping
Live and Surround Sound
MIDI


SUPERCOLLIDER CODE::::TRY SOME


Pspawner({|r|f={|t|r.par(Pbindf(Pbind(\note,Pseq([-1,1,8,5,1,1,-1,8,5,1,5,1].reverse.mirror,384)),\dur,t))};f.(1/2);r.wait(12);f.(0.1672)}).play//s.reich

Pspawner({|r|f={|t|r.par(Pbindf(Pbind(\note,Pseq([-1,1,6,8,9,1,-1,8,6,1,9,8].reverse.mirror,256)),\dur,t))};f.(1/1);r.wait(36);f.(1.0625)}).play//s.reich

Pspawner({|r|f={|t|r.par(Pbindf(Pbind(\note,Pseq([-1,1,6,8,9,1,-1,8,6,1,9,8]+5,319)),\dur,t))};f.(1/6);r.wait(12);f.(0.1672)}).play//s.reich

play{t=Impulse.ar(75);Sweep.ar(t,150).fold(0,1)*PlayBuf.ar(1,Buffer.read(s,"s*/*".pathMatch[2]),1,t,Demand.ar(t,0,Dbrown(0,2e5,2e3,inf)))!2}


play{f={LocalBuf(512)};r={|k,m|RecordBuf.ar(Pulse.ar(8,m,6e3),k)};r.(a=f.(),0.99);r.(b=f.(),0.99001);Out.ar(0,IFFT([a,b]).tanh)};//44.1kHz:)

play{AllpassC.ar(SinOsc.ar(55).tanh,0.4,TExpRand.ar(2e-4, 0.4,Impulse.ar(8)).round([2e-3,4e-3]),2)};// #supercollider with bass please...

play{Mix({a=LFNoise1.ar(0.2.rand);DelayC.ar(BPF.ar(WhiteNoise.ar(Dust2.ar(a*a*4**2).lag(8e-3)),10e3.rand+300,0.09),3,a*1.5+1.5,45)}!80).dup}

play{a=BPF.ar(Saw.ar([40,40.001]),LFNoise0.kr(128)+1*4e3+146,LFNoise1.kr(1)+1*5e-2+0.01).tanh;CombC.ar(a,9,a.abs.lag(2)*9,a.abs.lag(1)*100)}

play{LocalOut.ar(x=DelayC.ar(LPF.ar(LFNoise0.ar(8)**2+LocalIn.ar(2).tanh.round(0.05),6e3),1,LFNoise0.ar(8!2).range(1e-4,0.02)));x.tanh}//#sc

play{t=Impulse.ar(8)*LFNoise1.ar(2);CombL.ar(Saw.ar([3,4],Decay.ar(t,0.1)).tanh,1,TRand.ar(0,0.01,t).round(15e-4),TRand.ar(-30,30,t))};//#sc

play{LocalOut.ar(x=LFNoise1.ar(0.5*LocalIn.ar(1)+0.1,0.5,0.5));PitchShift.ar(PitchShift.ar(Pulse.ar([90,90.01],x),10,x*4,x),10,4-(x*4),1-x)}

play{q=[0,3,5,7,10];t=Impulse.kr(4)*LFNoise0.kr>0;PitchShift.ar(Saw.ar(Demand.kr(t,0,Drand((q+12++q+33).midicps,inf)),Decay.kr(t,3)),7,2)!2}

play{(HPF.ar(LFNoise1.ar(2),[10,10.1])*100).tanh}// #supercollider yay! (be very careful with this one, very loud)































No comments: