Earlab Members-DakisTrentos/Synth Defs
Members-DakisTrentos

Synth Defs

Members > Dakis Trentos > Synth Defs


SynthDef(\mringz2, { | out = 0, time = 1.25, from = 100.0, to = 3000, 
	from2 = 100.0, to2 = 1600.0, wamp = 0.03, dectime = 0.5, amp = 0.5, lv1 = 0.001, 
	lv2 = 0.5, lv3 = 0.4, lv4 = 0.1, tm1 = 0.001, tm2 = 0.01, tm3 = 0.1, 
	crv = -4 |
	var exciter, input, env;
	exciter = WhiteNoise.ar(wamp);
	input = Mix.arFill(10, {
		Ringz.ar(exciter, 
			XLine.kr(ExpRand(from,to), ExpRand(from2,to2), time),
			dectime, amp)
		});
	env = EnvGen.ar(Env.new([lv1, lv2, lv3, lv4], [tm1, tm2, tm3], crv), doneAction: 2);
 	Out.ar(out, input * env);
 }).memStore;


SynthDef(\mili2,{|out = 0, vol = 1, freqs = 2, lfn1 = 120, lfn2 = 800,
	freq = 140, freq2 = 0, amp = 1,
	lv1 = 0, lv2 = 0.8, lv3 = 0.3, lv4 = 0.8, lv5 = 0.5, lv6 = 0.7, lv7 = 0, 
	tm1 = 2, tm2 = 3, tm3 = 1, tm4 = 2, tm5 = 2, tm6 = 1,
	rl1 = - 4, rl2 = -2, rl3 = -5 |
	var ses, env;
	env = EnvGen.ar(Env.new(
		[lv1, lv2, lv3, lv4, lv5, lv6, lv7],
		[tm1, tm2, tm3, tm4, tm5, tm6], 
		[rl1, rl2, rl3]), doneAction: 2);
	ses = SyncSaw.ar(LFNoise1.ar(1, lfn1, 0), freq2).range(1, (LFNoise1.ar(2, lfn2, 0)));
	ses = ses *SinOsc.ar( freq/freqs.cos, 0, 0.2);
Out.ar(out, ses *vol * env * amp);
}).memStore;

SynthDef(\mili22,{|out, vol = 1, fsreq = 2, lfn1 = 120, lfn2 = 800, freq = 140, freq2 = 0 |
	var ses;
	ses = SyncSaw.ar(LFNoise1.ar(1, lfn1, 0), freq2).range(1, (LFNoise1.ar(2, lfn2, 0)));
	ses = ses *SinOsc.ar( freq/fsreq.cos, 0, 0.2);
Out.ar(out, ses *vol );
}).load(s);

SynthDef(\mili2bass,{|out, vol = 1, fsreq = 2, lfn1 = 120, lfn2 = 800, freq = 80, freq2 = 0 |
	var ses;
	ses = SyncSaw.ar(LFNoise1.ar(1, lfn1, 0), freq2).range(1, (LFNoise1.ar(2, lfn2, 0)));
	ses = ses *SinOsc.ar( freq/fsreq.cos, 0, 0.2);
Out.ar(out, ses *vol );
}).load(s);

SynthDef(\mili3,{|out, vol = 1, fsreq = 2, lfn1 = 120, lfn2 = 800, freq = 120, freq2 = 0 |
	var ses;
	ses = SyncSaw.ar(LFNoise1.ar(1, lfn1, 0), freq2).range(1, (LFNoise1.ar(2, lfn2, 0)));
	ses = ses *SinOsc.ar( freq/fsreq.cos, 0, 0.2);
Out.ar(out, ses *vol );
}).load(s);

SynthDef(\mili2,{|out = 0, vol = 1, freqs = 2, lfn1 = 120, lfn2 = 800,
	freq = 140, freq2 = 0, amp = 1,
	lv1 = 0, lv2 = 0.8, lv3 = 0.3, lv4 = 0.8, lv5 = 0.5, lv6 = 0.7, lv7 = 0, 
	tm1 = 2, tm2 = 3, tm3 = 1, tm4 = 2, tm5 = 2, tm6 = 1,
	rl1 = - 4, rl2 = -2, rl3 = -5 |
	var ses, env;
	env = EnvGen.ar(Env.new(
		[lv1, lv2, lv3, lv4, lv5, lv6, lv7],
		[tm1, tm2, tm3, tm4, tm5, tm6], 
		[rl1, rl2, rl3]), doneAction: 2);
	ses = SyncSaw.ar(LFNoise1.ar(1, lfn1, 0), freq2).range(1, (LFNoise1.ar(2, lfn2, 0)));
	ses = ses *SinOsc.ar( freq/freqs.cos, 0, 0.2);
Out.ar(out, ses *vol * env * amp);
}).memStore;

SynthDef( \task1, { |freq, amp = 1, sustain = 1.1, pan = 0, brown = 0.1, saw = 0, sin1 = 0, sin2 = 0.1, attime = 0.003,
	 rlstime = 0.1 |
	var in, osc, env, ses;
	env =  EnvGen.ar(Env.perc(attime, rlstime), doneAction: 2, levelScale: 0.8, timeScale: sustain);
	in = SinOsc.ar(FSinOsc.ar(200, 0, brown*2)/8, 1.4);
	ses = SinOsc.ar(0, in, 0.01) ;
	ses = RLPF.ar(ses, freq, 1.4, 1.6, 0.4 );
	ses =  ses.sin/4 + SinOsc.ar(freq, Decay.ar(SinOsc.ar(sin1, sin2), 4.2.round, Saw.ar(saw)));
	ses = Limiter.ar(ses, 0.6, 0.01);
	ses = DelayN.ar( ses, 2.8, 0.01, 1.5, 0.0, 1.1, ses);
	Out.ar(0, ses *amp *env);
}).memStore; 

SynthDef("oouoou", { arg out = 0, amp = 0.003, fr1 = 82.41, fr2 = 130.8, fr3 = 196, fr4 = 738, rg1 = 0.01,
								rg2 = 0.01, rg3 = 0.01, rg4 = 0.01, ftoner = 1, rtimer = 1, dstr = 2;
	var freqs, ringtimes, input;
	freqs = [fr1, fr2, fr3, fr4] * ftoner;
	ringtimes = [rg1, rg2, rg3, rg4] * rtimer;
	input = DynKlank.ar(`[freqs, nil, ringtimes], PinkNoise.ar(amp)).distort * dstr;
	Out.ar(out, input);
}).load(s);

SynthDef(\mringz, { | out = 0, time = 1.25, from = 100.0, to = 3000, 
	from2 = 100.0, to2 = 1600.0, impamp = 0.8, impfreq = 2, dectime = 0.5, amp = 0.5, lv1 = 0.001, 
	lv2 = 0.5, lv3 = 0.4, lv4 = 0.1, tm1 = 0.001, tm2 = 0.01, tm3 = 0.1, 
	crv = -4 |
	var exciter, input, env;
	exciter = Impulse.ar(impfreq, 0, impamp);
	input = Mix.arFill(10, {
		Ringz.ar(exciter, 
			XLine.kr(ExpRand(from,to), ExpRand(from2,to2), time),
			dectime, amp)
		});
	env = EnvGen.ar(Env.new([lv1, lv2, lv3, lv4], [tm1, tm2, tm3], crv), doneAction: 2);
 	Out.ar(out, input * env);
 }).memStore;

SynthDef("moogbot2", { arg out = 0, vol = 0.1, freq1 = 3, freq2 = 5, freq = 47, gate = 1, rls = 0.04, amp = 0.4, rqq = 0.6, att = 0.002;
	var input, filter;
	input = Resonz.ar( 
		WhiteNoise.ar(EnvGen.kr((Env.perc(att, rls)), gate, doneAction: 2) * amp), freq.midicps, rqq, 4); 
	filter =  MoogFF.ar(input, SinOsc.kr(freq1, pi, 40, 20000), SinOsc.kr(freq2, 0, 4, 0.5).abs);
	Out.ar(out, filter * vol);
 }).memStore;

SynthDef(\conf, { | out = 0, amp = 0.1, freq = 50 |
var ses;
ses = 	
	{
		var in, chain, signal;
		var real = MouseX.kr(0.01,2.0, 'exponential');
		var imag = MouseY.kr(0.01,10.0, 'exponential');
		in = Mix(
			LFSaw.ar(
				SinOsc.kr(Array.rand(3, 0.1, 0.5), 0, 10, [1, 1.1, 1.5, 1.78, 6.7] * freq),
				0, 0.3
			)
		);
		chain = FFT(LocalBuf(2048), in);
		chain = PV_ConformalMap(chain, real, imag);
		signal = IFFT(chain);
		(CombN.ar(signal, 0.1, 0.1, 10, amp) + signal).dup;
	};
	Out.ar(out, ses);
}).load(s);


SynthDef(\xoros01,{|out = 0, gate = 1,  vol = 0.5, 
	pan = 4, cos = 120, lfn1 = 800, lfn2 = 3200, lfbeat1 = 2, lfbeat2 = 4,  
	rls = 1 |
	var ses, env;

	env = EnvGen.ar(Env.new([0, 1.0, 2, 0], [0.1, 0.5, rls], [1, -3, -1], 2 ), gate,  doneAction:2);
	ses = {
		var bpfin, bpfin2, comb, combin, comb2, combin2, amp;
		amp = 0.1;
		bpfin = LocalIn.ar(2)*0.2+Saw.ar([lfn1,303],0.02);
		bpfin2 = LocalIn.ar(2)*8+LFSaw.ar([lfn2,303],0.02);
		combin = MoogFF.ar(bpfin,2**LFNoise0.kr(lfbeat1)*300,0.01);
		combin2 = BPF.ar(bpfin2, 4.01**LFNoise0.kr(lfbeat1)*500,0.01);
		comb = CombN.ar(combin, 2, 3, 40);
		comb2 = CombN.ar(combin2, 4, 1, 40);

		LocalOut.ar(comb, comb2);
		comb+comb2
	};
	ses = Limiter.ar(ses, 0.9, 0.1);
	ses = Pan2.ar(ses *SinOsc.ar( cos/pan.cos, 0, 0.4),FSinOsc.kr(pan), 0.1);

Out.ar(out, ses *vol );
}).memStore;