http://soundcloud.com/credit/headlines-ex
http://soundcloud.com/credit/doclines-ex
Algorithm Example:
(
var score=CtkScore.new, note, gamp, fftbuf, centbuf;
var doc, crossbuf, warpbuf, chain3buf;
doc = CtkBuffer("/Users/bion/Desktop/Transitions_In-Humanity/HeadVoice/HeadVoice_Raw2.wav").addTo(score);
fftbuf = CtkBuffer.buffer(2**12).addTo(score);
centbuf = CtkBuffer.buffer(2**12).addTo(score);
crossbuf = CtkBuffer.buffer(2**12).addTo(score);
chain3buf = CtkBuffer.buffer(2**12).addTo(score);
gamp = 6.dbamp;
note = CtkSynthDef(\livevoicing, {
var chain, env, outS, play, pray, cent, width, yi, er, san, avg, adj, centchain;
var cross, chain2, waste, filt, chain3;
env = EnvGen.kr(Env([0,1,1,0], [0.01, 1, 0.01].normalizeSum, [-10, 10]), timeScale: doc.duration);
play = PlayBuf.ar(1, doc, BufRateScale.kr(doc))*18.dbamp;
chain = FFT(fftbuf, play);
chain = PV_MagAbove(chain, 0.03);
chain3 = PV_Copy(chain, chain3buf);
centchain = PV_Copy(chain, centbuf);
centchain = PV_MagAbove(centchain, 4);
chain2 = PV_Copy(centchain, crossbuf);
cent = SpecCentroid.kr(centchain);
er = DelayC.kr(cent, 0.08, 0.08);
san = DelayC.kr(cent, 0.04, 0.04);
avg = (cent+er+san)/3;
avg = avg.min(800);
avg = avg.max(60);
adj = LinLin.kr(avg, 60, 700, 0, 0.4);
chain = PV_MagSmear(chain, 100);
chain = PV_Morph(chain, chain2, adj);
// make processing heavier thru-out? for more exhorting lines?
chain = PV_MagShift(chain, 0.6);
chain = IFFT(chain)*10.dbamp;
chain3 = IFFT(chain3)*4.dbamp;
width = (1-(adj+0.01));
avg = avg*1.3;
// use chain or chain2?
filt = Mix.ar(BPF.ar(chain, avg*[0.5,0.75], (width*[20, 50])/avg*[0.5,0.75]))*3.dbamp;
filt = filt + Resonz.ar(filt, 80, 60/100);
outS = filt+chain+chain3;
outS = outS*gamp*env;
outS = Limiter.ar(outS, 0.dbamp);
outS = Compander.ar(outS, outS, -4.dbamp, 1, 0.5, clampTime: 0.01, relaxTime: 0.01);
Out.ar(0, outS);
});
score.add(note.new(0.5, doc.duration));
score.play;
//score.write("/Users/bion/Desktop/Transitions_In-Humanity/HeadVoice/HeadVoice_Proc2.wav",
// options: ServerOptions.new.numOutputBusChannels_(1))
)
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment