Hi Autumn, Here is how to cross inputs 2 and 3. Cheers
Yann X = _,_ <: !,_,_,!; process = _,X,_:par(i,2,(voc(n,0.01,1,mod_bw,mod_order,car_bw,car_order))):> _,_; Le jeu. 28 déc. 2023 à 14:06, Autumn Cheney via Faudiostream-users < [email protected]> a écrit : > hi! > > i'm currently building a stereo vocoder in radium's faust development > environment, and i've run into a minor problem > > i have the core vocoder running, but i can't figure out how to route the > effect input the way i want to. i'd like to have input 1 going into the > left channel modulator input, input 2 going into the right channel carrier > input, and inputs 3 and 4 going into their respective modulator inputs. but > as of now inputs 1 and 2 are routed to the left channel unit and inputs 3 > and 4 are routed to the right channel input > > hopefully this makes sense. here's my faust code (don't mind the fact that > some code is ripped from the libraries): > > import("stdfaust.lib"); > > select4(s) = *(s==0),*(s==1),*(s==2),*(s==3):>_; > > n = 8; > > mod_order = nentry("modulator > order[style:menu{'-12db':0;'-24db':1;'-36db':2;'-48db':3}}]",0,0,3,1); > mod_bw = vslider("modulator bw",0.5,0.1,2,0.001); > > car_order = nentry("carrier > order[style:menu{'-12db':0;'-24db':1;'-36db':2;'-48db':3}}]",0,0,3,1); > car_bw = vslider("carrier bw",0.5,0.1,2,0.001); > > bp(freq,q) = fi.svf.bp(freq,q); > multi_bp(freq,q,order) = > _<:bp(freq,q),(bp(freq,q):bp(freq,q)),(bp(freq,q):bp(freq,q):bp(freq,q)),(bp(freq,q):bp(freq,q):bp(freq,q):bp(freq,q)):>select4(order); > > voc_band(band_num,bands_num,bw_ratio,order,bg,x) = x : multi_bp(band_freq, > band_q, order) : _*bg with { > band_freq = 25*pow(2,(band_num+1)*(9/bands_num)); > bw = (band_freq - 25*pow(2,(band_num)*(9/bands_num)))*bw_ratio; > band_q = band_freq/bw; > }; > > voc(bands_num,att,rel,mod_bw,mod_order,car_bw,car_order,carrier,modulator) > = carrier <: par(i,bands_num,voc_band(i,bands_num,mod_bw,mod_order,1) : > an.amp_follower_ar(att,rel) : _,modulator : > voc_band(i,bands_num,car_bw,car_order)) :> > _*(1/(bands_num*(mod_order+1)*(car_order+1))); > > process = > _,_,_,_:par(i,2,(voc(n,0.01,1,mod_bw,mod_order,car_bw,car_order))):>_,_; > > as you'll see from the block diagram the input 2 and 3 cables don't cross > over. but i want them to cross over > > is this possible? thank you, > > a cheney > _______________________________________________ > Faudiostream-users mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/faudiostream-users >
_______________________________________________ Faudiostream-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/faudiostream-users
