Commit 3d9d9f6c authored by wargreen's avatar wargreen
Browse files

resolve merge

parents d2e577e3 76457a6a
declare name "Ambisonic Encoder";
declare name "Ambisonic Encoder 2D";
declare version "1.0";
declare author "Wargreen";
declare license "GPL v3";
......@@ -9,30 +9,26 @@ import("stdfaust.lib");
ORD = 1;
radius = hslider("Radius [unit:Meters]", 1.0, 0.1, 50, 0.01) : si.smooth(ba.tau2pole(0.02));
azimut = (hslider("Azimut [unit:Degres]", 0, -180, 180, 0.01)) * (ma.PI/180) : si.smooth(ba.tau2pole(0.02));
//elevation = hslider("Elevation", 180, 0, 359.99, 0.01) : si.smooth(ba.tau2pole(0.02));
azimut = (hslider("Azimut [unit:Degres]", 0, -180, 180, 0.01) -90) * (ma.PI/180) : si.smooth(ba.tau2pole(0.02));
stereo = checkbox("Stereo input");
width = hslider("Stereo Width [unit:Degres]", 90, -180, 180, 0.01) : si.smooth(ba.tau2pole(0.02)) * (ma.PI/180);
width = hslider("Stereo Width [unit:Degres]", 90, -180, 180, 0.01) * (ma.PI/180) : si.smooth(ba.tau2pole(0.02));
erLvl = hslider("Early Reflection Lvl [unit:dB]", 0, -20, 0, 0.01) : si.smooth(ba.tau2pole(0.02));
//preprocess = _;
//preprocess = fi.lowpass(1, 91930/radius) ;
preprocess = fi.highshelf( 1, ma.neg(0.43*radius), 15000);
//delay = _;
delay = de.fdelayltv(1,ma.SR, ma.SR * 1/340*radius) ;
delay = de.fdelayltv(3,ma.SR, ma.SR * 1/340*radius : int);
filter = _ : fi.highshelf(1, (-0.43*radius) + 0.43, 15000);
volume(r) = 1. / (r * r * (r > 0.1) + (r < 0.1));
stereAzim(ch) = ma.neg( ba.if(stereo, ba.if(ch < 1, azimut-width/2, azimut+width/2), azimut));
encodedry(ch) = _ * volume(radius)<: ho.encoder(ORD, _, stereAzim(ch) );
encoderev(ch) = _ * ba.db2linear(erLvl) <: ho.encoder(ORD, _, stereAzim(ch));
encodedry(ch) = _ * volume(radius) <: ho.encoder(ORD, _, stereAzim(ch) ) : _ * ba.db2linear(-3),_,_;
encoderev(ch) = _ * ba.db2linear(erLvl) <: ho.encoder(ORD, _, stereAzim(ch)) : _ * ba.db2linear(-3), _, _;
addout = _,_;
dryprocess = par(i, 2, delay : encodedry(i)) :> _, par(i, ORD, addout);
dryprocess = par(i, 2, encodedry(i)) :> _, par(i, ORD, addout);
revlateprocess = _,_ :>_;
revearlyprocess = par(i, 2, delay : encoderev(i)) :> _, par(i, ORD, addout);
revearlyprocess = par(i, 2, encoderev(i)) :> _, par(i, ORD, addout);
process =_, _: par(i, 2,preprocess) <: dryprocess, revlateprocess, revearlyprocess;
\ No newline at end of file
process =_, _ : par(i, 2,delay : filter) <: dryprocess, revlateprocess, revearlyprocess;
<!DOCTYPE GraphicsSceneFaust>
<SceneRoot>
<Scene sceneWidth="550" sceneX="-200" sceneY="-268,5" sceneHeight="575" viewX="100,0556146750331" viewY="-68,23580788792012" viewZoom="2,828426979526787"/>
<Item ItemX="-106" ItemZ="1" file="/home/wargreen/Documents/Code/ambiencoderlv2/AmbiEnc3D.dsp" DomFaustItemRectHeight="197" ItemY="10" DomFaustItemRectWidth="197"/>
<Item ItemX="-121" ItemZ="0" file="/home/wargreen/Documents/Code/ambiencoderlv2/AmbiEnc.dsp" DomFaustItemRectHeight="280" ItemY="-242" DomFaustItemRectWidth="280"/>
</SceneRoot>
No preview for this file type
......@@ -9,7 +9,7 @@
@prefix units: <http://lv2plug.in/ns/extensions/units#> .
<https://faustlv2.bitbucket.io/AmbiEnc>
a lv2:Plugin ;
doap:name "Ambisonic Encoder" ;
doap:name "Ambisonic Encoder 2D" ;
lv2:binary <AmbiEnc.so> ;
lv2:optionalFeature epp:supportsStrictBounds ;
lv2:optionalFeature lv2:hardRtCapable ;
......@@ -45,10 +45,10 @@
lv2:symbol "Radius_2" ;
lv2:name "Radius" ;
lv2:portProperty epp:hasStrictBounds ;
epp:rangeSteps 4990 ;
epp:rangeSteps 1990 ;
lv2:default 1 ;
lv2:minimum 0.1 ;
lv2:maximum 50 ;
lv2:maximum 20 ;
] , [
a lv2:InputPort ;
a lv2:ControlPort ;
......
No preview for this file type
......@@ -8,31 +8,26 @@ import("stdfaust.lib");
ORD = 1;
radius = hslider("Radius", 1.0, 0.1, 50, 0.01) : si.smooth(ba.tau2pole(0.02));
azimut = (hslider("Azimut", 0, -180, 180, 0.01)) * (ma.PI/180) : si.smooth(ba.tau2pole(0.02));
elevation = (hslider("Elevation", 0, -180, 180, 0.01)) * (ma.PI/180) : si.smooth(ba.tau2pole(0.02));
radius = hslider("Radius", 1.0, 0.1, 20, 0.01) : si.smooth(ba.tau2pole(0.02));
azimut = (hslider("Azimut", 0, -180, 180, 0.01) -90) * (ma.PI/180) : si.smooth(ba.tau2pole(0.02));
elevation = (hslider("Elevation", 0, -180, 180, 0.01) -90) * (ma.PI/180) : si.smooth(ba.tau2pole(0.02));
stereo = checkbox("Stereo input");
width = hslider("Stereo Width", 90, -180, 180, 0.01) : si.smooth(ba.tau2pole(0.02)) * (ma.PI/180);
erLvl = hslider("Early Reflection Lvl", 0, -20, 0, 0.01) : si.smooth(ba.tau2pole(0.02));
//preprocess = _;
//preprocess = fi.lowpass(1, 91930/radius) ;
preprocess = fi.highshelf( 1, ma.neg(0.43*radius), 15000);
delay = de.fdelayltv(3,ma.SR, ma.SR * 1/340*radius : int);
//delay = _;
delay = de.fdelayltv(1,ma.SR, ma.SR * 1/340*radius) ;
filter = _ : fi.highshelf(1, (-0.43*radius) + 0.43, 15000);
volume(r) = 1. / (r * r * (r > 0.1) + (r < 0.1));
stereAzim(ch) = ma.neg( ba.if(stereo, ba.if(ch < 1, azimut-width/2, azimut+width/2), azimut));
encodedry(ch) = _ * volume(radius)<: ho.encoder3D(ORD, _, stereAzim(ch), elevation);
encoderev(ch) = _ * ba.db2linear(erLvl) <: ho.encoder3D(ORD, _, stereAzim(ch), elevation);
encodedry(ch) = _ * volume(radius)<: ho.encoder3D(ORD, _, stereAzim(ch), elevation) : _ * ba.db2linear(-3),_,_,_;
encoderev(ch) = _ * ba.db2linear(erLvl) <: ho.encoder3D(ORD, _, stereAzim(ch), elevation) : _ * ba.db2linear(-3),_,_,_;
addout = _,_,_;
dryprocess = par(i, 2, delay : encodedry(i)) :> _, par(i, ORD, addout);
dryprocess = par(i, 2, encodedry(i)) :> _, par(i, ORD, addout);
revlateprocess = _,_ :>_;
revearlyprocess = par(i, 2, delay : encoderev(i)) :> _, par(i, ORD, addout);
revearlyprocess = par(i, 2, encoderev(i)) :> _, par(i, ORD, addout);
process =_, _: par(i, 2,preprocess) <: dryprocess, revlateprocess, revearlyprocess;
\ No newline at end of file
process =_, _ : par(i, 2,delay : filter) <: dryprocess, revlateprocess, revearlyprocess;
\ No newline at end of file
......@@ -56,10 +56,10 @@
lv2:symbol "Radius_3" ;
lv2:name "Radius" ;
lv2:portProperty epp:hasStrictBounds ;
epp:rangeSteps 4990 ;
epp:rangeSteps 1990 ;
lv2:default 1 ;
lv2:minimum 0.1 ;
lv2:maximum 50 ;
lv2:maximum 20 ;
] , [
a lv2:InputPort ;
a lv2:ControlPort ;
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment