«Kalimba» by snappizz
on 22 Apr'16 01:45 ini needed a kalimba sound so i built one with SinOsc + DynKlank. feedback and improvements are welcome :)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25
( SynthDef(\kalimba, { |out = 0, freq = 440, amp = 0.1, mix = 0.1| var snd; // Basic tone is a SinOsc snd = SinOsc.ar(freq) * EnvGen.ar(Env.perc(0.005, Rand(2.5, 3.5), 1, -8), doneAction: 2); // The "clicking" sounds are modeled with a bank of resonators excited by enveloped pink noise snd = (snd * (1 - mix)) + (DynKlank.ar(`[ // the resonant frequencies are randomized a little to add variation // there are two high resonant freqs and one quiet "bass" freq to give it some depth [240*ExpRand(0.9, 1.1), 2020*ExpRand(0.9, 1.1), 3151*ExpRand(0.9, 1.1)], [-7, 0, 3].dbamp, [0.8, 0.05, 0.07] ], PinkNoise.ar * EnvGen.ar(Env.perc(0.001, 0.01))) * mix); Out.ar(out, Pan2.ar(snd, 0, amp)); }).add; Pbind( \instrument, \kalimba, \dur, Pseq([0.3, 0.15], inf), \amp, 0.1*(2**Pgauss(0, 0.1)), \mix, Pwhite(0.05, 0.15), \degree, Pseq([0, -3, [1, 4], 2, Rest, 1, -3, -2, -4, -2, [0, 5], 1, Rest, 0, -2, Rest], inf) ).play; )
reception
Nice sound! Have you tried using PinkNoise instead? It might be good to add a mix argument to balance the amout of click and resonnance (snd*mix) + (click*(1-mix))
Thanks Patrick! PinkNoise really improves the realism.