First pieces of music

hey,
i finished two first pieces of music in supercollider after starting 2 month ago.
thanks so much for all your help.

8 Likes

This is great ! Congratulations !
Would you share how you operate ? How you use SC in the process ?
Best
Geoffroy

hey, thanks :slight_smile:
I started writing some SynthDefs from what i knew so far.
IĀ“m mainly interested in different feedback techniques and the powerful PV_Magdiv Ugen right now. I also got alot of inspiration from Unorthodox Sound Synthesis - Workshop, Feb 11-13 - TU Berlin, especially Buffer Modulation and Fb1.
If there is any further read or tips on these sound sources I would be more than happy to receive them.
Actually i recorded every single Pattern/Routine on their own, normalized them in Audacity and arranged/mixed them in the DAW. Thats the reason for the ā€œcollageā€ vibe to the pieces I guess.
IĀ“m not happy with the Solution right now, but JackRouter isnt doing its job and I couldnt find a way to multichannel record into Ableton so far.
I used the NanoKontrol2 to map some parameters for example the freq and chaos argument of a PV_MagDiv to values i found rythmically interesting and recorded some live takes. So i ended up with a huge folder of different recordings I then put together in the DAW. Not the best way to work on a piece in a structured manner but because of my sc beginner knowledge the best i could come up with. I still got problems to write Patterns/Routines where some of the values can be accessed via MIDI. See my other threads. Ramp and stay at highest value. I also wanted to add Cello from a Spitfire Library in the end but was not able to get it running.

~noise3 = SynthDef(\noise3, {
	arg out=0, amp=0.01, freq=25, chaos=0.6;
    var inA, chainA, inB, chainB, chain;
    inA = Crackle.ar(chaos, 1000).softclip * amp;
    inB = Pulse.ar(freq, 0.2, amp);
    chainA = FFT(LocalBuf(2048), inA);
    chainB = FFT(LocalBuf(2048), inB);
    chain = PV_MagDiv(chainA, chainB);
	chain = 0.1 * IFFT(chain).clip.dup;
	chain = Splay.ar(chain);
	chain = Rotate2.ar(chain[0], chain[1], SinOsc.kr(1/16, Rand(-1, 1)).range(-1, 1));
	chain = chain + NHHall.ar(chain, 0.4);
	chain = (chain * -10.dbamp).tanh;
    Out.ar(out, chain);
}).add;

(
r = Routine({
~rythm1 = Synth(\noise3);

MIDIdef.cc(\freq, {

	| val, num, chan, src |
	var freq, chaos;

	freq = val.linlin(0, 127, 25.0, 50.0);
	chaos = val.linlin(0, 127, 0.6, 1.9);
	~rythm1.set(\freq, freq);
	~rythm1.set(\chaos, chaos);

}, 16);
}).play(t, quant:1);
)

I also put some found sounds like scraped percussion, industrial samples, ASMR and snippets from some lofi tapes in Buffers and iterated several times over a Routine and played around with Multichannel expansion. You hear that in the beginning of the Piece with its chaotic destruction movement for example. I think for the future i would like to work more without a fixed linear timeline in the DAW and more with a timeless interaction between different Sounds. whaterever this means and where to start. haha.
best

3 Likes

Thank you so much for the detailed writing of your process.
I did not know PV_MagDiv, Iā€™m going to try it this week.
Keep on doing some great music !
All the best
Geoffroy

1 Like