Toob ML bug fixes.
This commit is contained in:
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,92 @@
|
||||
@prefix doap: <http://usefulinc.com/ns/doap#> .
|
||||
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
|
||||
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
||||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
@prefix units: <http://lv2plug.in/ns/extensions/units#> .
|
||||
@prefix urid: <http://lv2plug.in/ns/ext/urid#> .
|
||||
@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
|
||||
@prefix midi: <http://lv2plug.in/ns/ext/midi#> .
|
||||
@prefix epp: <http://lv2plug.in/ns/ext/port-props#> .
|
||||
@prefix uiext: <http://lv2plug.in/ns/extensions/ui#> .
|
||||
@prefix idpy: <http://harrisonconsoles.com/lv2/inlinedisplay#> .
|
||||
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
|
||||
@prefix mod: <http://moddevices.com/ns/mod#> .
|
||||
@prefix param: <http://lv2plug.in/ns/ext/parameters#> .
|
||||
@prefix work: <http://lv2plug.in/ns/ext/worker#> .
|
||||
@prefix pg: <http://lv2plug.in/ns/ext/port-groups#> .
|
||||
|
||||
@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
|
||||
@prefix patch: <http://lv2plug.in/ns/ext/patch#> .
|
||||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
@prefix state: <http://lv2plug.in/ns/ext/state#> .
|
||||
@prefix urid: <http://lv2plug.in/ns/ext/urid#> .
|
||||
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
||||
@prefix toobChorus: <http://two-play.com/plugins/toob-chorus#> .
|
||||
|
||||
|
||||
<http://two-play.com/rerdavies#me>
|
||||
a foaf:Person ;
|
||||
foaf:name "Robin Davies" ;
|
||||
foaf:mbox <mailto:rerdavies@gmail.com> ;
|
||||
foaf:homepage <http://two-play.com/> .
|
||||
|
||||
<http://two-play.com/plugins/toob-chorus>
|
||||
a lv2:Plugin ,
|
||||
lv2:ChorusPlugin ;
|
||||
doap:name "TooB CE-2 Chorus" ,
|
||||
"TooB CE-2 Chorus"@en-gb-gb
|
||||
;
|
||||
doap:license <https://two-play.com/TooB/licenses/isc> ;
|
||||
doap:maintainer <http://two-play.com/rerdavies#me> ;
|
||||
lv2:minorVersion 0 ;
|
||||
lv2:microVersion 1 ;
|
||||
rdfs:comment """
|
||||
Emulation of Boss CE-2 Chorus.
|
||||
|
||||
""" ;
|
||||
|
||||
mod:brand "TooB";
|
||||
mod:label "CE-2 Chorus";
|
||||
lv2:optionalFeature lv2:hardRTCapable;
|
||||
|
||||
lv2:port
|
||||
[
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 0;
|
||||
lv2:symbol "rate" ;
|
||||
lv2:name "Rate";
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0;
|
||||
lv2:maximum 1.0;
|
||||
],
|
||||
[
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 1 ;
|
||||
lv2:symbol "depth" ;
|
||||
lv2:name "Depth";
|
||||
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
],
|
||||
[
|
||||
a lv2:AudioPort ,
|
||||
lv2:InputPort ;
|
||||
lv2:index 2 ;
|
||||
lv2:symbol "in" ;
|
||||
lv2:name "In"
|
||||
],
|
||||
[
|
||||
a lv2:AudioPort ,
|
||||
lv2:OutputPort ;
|
||||
lv2:index 3 ;
|
||||
lv2:symbol "out" ;
|
||||
lv2:name "Out"
|
||||
]
|
||||
.
|
||||
|
||||
|
||||
@@ -0,0 +1,109 @@
|
||||
@prefix doap: <http://usefulinc.com/ns/doap#> .
|
||||
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
|
||||
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
|
||||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
@prefix units: <http://lv2plug.in/ns/extensions/units#> .
|
||||
@prefix urid: <http://lv2plug.in/ns/ext/urid#> .
|
||||
@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
|
||||
@prefix midi: <http://lv2plug.in/ns/ext/midi#> .
|
||||
@prefix epp: <http://lv2plug.in/ns/ext/port-props#> .
|
||||
@prefix uiext: <http://lv2plug.in/ns/extensions/ui#> .
|
||||
@prefix idpy: <http://harrisonconsoles.com/lv2/inlinedisplay#> .
|
||||
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
|
||||
@prefix mod: <http://moddevices.com/ns/mod#> .
|
||||
@prefix param: <http://lv2plug.in/ns/ext/parameters#> .
|
||||
@prefix work: <http://lv2plug.in/ns/ext/worker#> .
|
||||
@prefix pg: <http://lv2plug.in/ns/ext/port-groups#> .
|
||||
|
||||
@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
|
||||
@prefix patch: <http://lv2plug.in/ns/ext/patch#> .
|
||||
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
|
||||
@prefix state: <http://lv2plug.in/ns/ext/state#> .
|
||||
@prefix urid: <http://lv2plug.in/ns/ext/urid#> .
|
||||
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .
|
||||
@prefix toobDelay: <http://two-play.com/plugins/toob-delay#> .
|
||||
|
||||
|
||||
<http://two-play.com/rerdavies#me>
|
||||
a foaf:Person ;
|
||||
foaf:name "Robin Davies" ;
|
||||
foaf:mbox <mailto:rerdavies@gmail.com> ;
|
||||
foaf:homepage <http://two-play.com/> .
|
||||
|
||||
<http://two-play.com/plugins/toob-delay>
|
||||
a lv2:Plugin ,
|
||||
lv2:DelayPlugin ;
|
||||
doap:name "TooB Delay" ,
|
||||
"TooB Delay"@en-gb-gb
|
||||
;
|
||||
doap:license <https://two-play.com/TooB/licenses/isc> ;
|
||||
doap:maintainer <http://two-play.com/rerdavies#me> ;
|
||||
lv2:minorVersion 0 ;
|
||||
lv2:microVersion 13 ;
|
||||
rdfs:comment """
|
||||
Digital delay.
|
||||
|
||||
""" ;
|
||||
|
||||
mod:brand "TooB";
|
||||
mod:label "Delay";
|
||||
lv2:optionalFeature lv2:hardRTCapable;
|
||||
|
||||
lv2:port
|
||||
[
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 0;
|
||||
lv2:symbol "delay" ;
|
||||
lv2:name "Delay";
|
||||
lv2:default 340 ;
|
||||
lv2:minimum 5;
|
||||
lv2:maximum 1200;
|
||||
units:unit units:ms;
|
||||
lv2:portProperty <http://lv2plug.in/ns/ext/port-props#logarithmic>;
|
||||
|
||||
],
|
||||
[
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 1 ;
|
||||
lv2:symbol "level" ;
|
||||
lv2:name "Level";
|
||||
|
||||
lv2:default 27.0 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 100.0 ;
|
||||
units:unit units:pc;
|
||||
], [
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 2 ;
|
||||
lv2:symbol "feedback" ;
|
||||
lv2:name "Feedback";
|
||||
|
||||
|
||||
lv2:default 39.0 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 100.0 ;
|
||||
units:unit units:pc;
|
||||
],
|
||||
[
|
||||
a lv2:AudioPort ,
|
||||
lv2:InputPort ;
|
||||
lv2:index 3 ;
|
||||
lv2:symbol "in" ;
|
||||
lv2:name "In"
|
||||
],
|
||||
[
|
||||
a lv2:AudioPort ,
|
||||
lv2:OutputPort ;
|
||||
lv2:index 4 ;
|
||||
lv2:symbol "out" ;
|
||||
lv2:name "Out"
|
||||
]
|
||||
.
|
||||
|
||||
|
||||
@@ -86,58 +86,9 @@ and uses model files from from the GuitarML Neural Pi project (https://github.co
|
||||
units:unit units:db ;
|
||||
rdf:comment "Input volume trim (pre-model)";
|
||||
],
|
||||
[
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 1 ;
|
||||
lv2:symbol "bass" ;
|
||||
lv2:name "Bass";
|
||||
|
||||
pg:group toobml:filterGroup ;
|
||||
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
|
||||
rdf:comment "Bass eq (pre-model)";
|
||||
], [
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 2 ;
|
||||
lv2:symbol "mid" ;
|
||||
lv2:name "Mid";
|
||||
|
||||
pg:group toobml:filterGroup ;
|
||||
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
|
||||
|
||||
rdf:comment "Mid eq (pre-model)";
|
||||
|
||||
], [
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 3 ;
|
||||
lv2:symbol "treble" ;
|
||||
lv2:name "Treble";
|
||||
|
||||
pg:group toobml:filterGroup ;
|
||||
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
|
||||
|
||||
rdf:comment "Treble eq (pre-model)";
|
||||
],
|
||||
[
|
||||
a lv2:InputPort, lv2:ControlPort ;
|
||||
lv2:index 4 ;
|
||||
lv2:index 1 ;
|
||||
lv2:symbol "model" ;
|
||||
lv2:name "Model" ;
|
||||
lv2:default 0.0 ;
|
||||
@@ -282,7 +233,7 @@ and uses model files from from the GuitarML Neural Pi project (https://github.co
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 5 ;
|
||||
lv2:index 2 ;
|
||||
lv2:symbol "gain" ;
|
||||
lv2:name "Gain";
|
||||
lv2:default 3.0 ;
|
||||
@@ -294,7 +245,7 @@ and uses model files from from the GuitarML Neural Pi project (https://github.co
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 6 ;
|
||||
lv2:index 3 ;
|
||||
lv2:symbol "master" ;
|
||||
lv2:name "Master";
|
||||
lv2:default 0.0 ;
|
||||
@@ -304,16 +255,81 @@ and uses model files from from the GuitarML Neural Pi project (https://github.co
|
||||
rdf:comment "Output volume trim (pot-model)";
|
||||
],
|
||||
|
||||
[
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 4 ;
|
||||
lv2:symbol "bass" ;
|
||||
lv2:name "Bass";
|
||||
|
||||
pg:group toobml:filterGroup ;
|
||||
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
|
||||
rdf:comment "Bass eq (pre-model)";
|
||||
], [
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 5 ;
|
||||
lv2:symbol "mid" ;
|
||||
lv2:name "Mid";
|
||||
|
||||
pg:group toobml:filterGroup ;
|
||||
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
|
||||
|
||||
rdf:comment "Mid eq (pre-model)";
|
||||
|
||||
],
|
||||
[
|
||||
a lv2:InputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:index 6 ;
|
||||
lv2:symbol "treble" ;
|
||||
lv2:name "Treble";
|
||||
|
||||
pg:group toobml:filterGroup ;
|
||||
|
||||
lv2:default 0.5 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
|
||||
|
||||
rdf:comment "Treble eq (pre-model)";
|
||||
],
|
||||
[
|
||||
a lv2:OutputPort ,
|
||||
lv2:ControlPort ;
|
||||
|
||||
lv2:portProperty epp:notOnGUI;
|
||||
lv2:index 7 ;
|
||||
lv2:symbol "gainEnable" ;
|
||||
lv2:name "GainEnable";
|
||||
|
||||
lv2:default 0.1 ;
|
||||
lv2:minimum 0.0 ;
|
||||
lv2:maximum 1.0 ;
|
||||
|
||||
],
|
||||
|
||||
[
|
||||
a lv2:AudioPort ,
|
||||
lv2:InputPort ;
|
||||
lv2:index 7 ;
|
||||
lv2:index 8 ;
|
||||
lv2:symbol "in" ;
|
||||
lv2:name "In"
|
||||
], [
|
||||
a lv2:AudioPort ,
|
||||
lv2:OutputPort ;
|
||||
lv2:index 8 ;
|
||||
lv2:index 9 ;
|
||||
lv2:symbol "out" ;
|
||||
lv2:name "Out"
|
||||
]
|
||||
@@ -324,21 +340,22 @@ and uses model files from from the GuitarML Neural Pi project (https://github.co
|
||||
atom:bufferType atom:Sequence ;
|
||||
atom:supports patch:Message;
|
||||
lv2:designation lv2:control ;
|
||||
lv2:index 9 ;
|
||||
lv2:index 10 ;
|
||||
lv2:symbol "control" ;
|
||||
lv2:name "Control" ;
|
||||
rdfs:comment "Plugin to GUI communication" ;
|
||||
] , [
|
||||
] ,
|
||||
[
|
||||
a atom:AtomPort ,
|
||||
lv2:OutputPort ;
|
||||
atom:bufferType atom:Sequence ;
|
||||
atom:supports patch:Message;
|
||||
lv2:designation lv2:control ;
|
||||
lv2:index 10 ;
|
||||
lv2:index 11 ;
|
||||
lv2:symbol "notify" ;
|
||||
lv2:name "Notify" ;
|
||||
rdfs:comment "Plugin to GUI communication" ;
|
||||
]
|
||||
]
|
||||
.
|
||||
|
||||
|
||||
|
||||
@@ -36,6 +36,14 @@
|
||||
lv2:binary <ToobAmp.so> ;
|
||||
rdfs:seeAlso <ToobFreeverb.ttl> .
|
||||
|
||||
<http://two-play.com/plugins/toob-delay> a lv2:Plugin ;
|
||||
lv2:binary <ToobAmp.so> ;
|
||||
rdfs:seeAlso <ToobDelay.ttl> .
|
||||
|
||||
<http://two-play.com/plugins/toob-chorus> a lv2:Plugin ;
|
||||
lv2:binary <ToobAmp.so> ;
|
||||
rdfs:seeAlso <ToobChorus.ttl> .
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -76,8 +76,8 @@ const ToobMLView =
|
||||
addGainEnabledSubscription(instanceId: number)
|
||||
{
|
||||
this.removeGainEnabledSubscription();
|
||||
|
||||
this.monitorPortHandle = this.model.monitorPort(instanceId,"gainEnabled",0.1,
|
||||
this.subscribedId = instanceId;
|
||||
this.monitorPortHandle = this.model.monitorPort(instanceId,"gainEnable",0.1,
|
||||
(value: number) => {
|
||||
if (this.gainRef.current)
|
||||
{
|
||||
@@ -112,10 +112,10 @@ const ToobMLView =
|
||||
( <ToobFrequencyResponseView instanceId={this.props.instanceId} minDb={-20} maxDb={20} />)
|
||||
);
|
||||
|
||||
let gainControl: React.ReactElement = controls[3] as React.ReactElement;
|
||||
let gainControl: React.ReactElement = controls[2] as React.ReactElement;
|
||||
if (gainControl)
|
||||
{
|
||||
controls[3] = (<div ref={this.gainRef}> { gainControl} </div>);
|
||||
controls[2] = (<div ref={this.gainRef}> { gainControl} </div>);
|
||||
}
|
||||
return controls;
|
||||
}
|
||||
|
||||
+9
-6
@@ -340,15 +340,18 @@ private:
|
||||
portSubscription.samplesToNextCallback += portSubscription.sampleRate;
|
||||
if (!portSubscription.waitingForAck)
|
||||
{
|
||||
portSubscription.waitingForAck = true;
|
||||
float value = realtimeActivePedalBoard->GetControlOutputValue(
|
||||
portSubscription.instanceIndex,
|
||||
portSubscription.portIndex);
|
||||
|
||||
this->realtimeWriter.SendMonitorPortUpdate(
|
||||
portSubscription.callbackPtr,
|
||||
portSubscription.subscriptionHandle,
|
||||
value);
|
||||
if (value != portSubscription.lastValue)
|
||||
{
|
||||
portSubscription.waitingForAck = true;
|
||||
portSubscription.lastValue = value;
|
||||
this->realtimeWriter.SendMonitorPortUpdate(
|
||||
portSubscription.callbackPtr,
|
||||
portSubscription.subscriptionHandle,
|
||||
value);
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+9
-1
@@ -93,7 +93,15 @@ Lv2Effect::Lv2Effect(
|
||||
|
||||
LV2_Feature **myFeatures = &this->features[0];
|
||||
|
||||
LilvInstance *pInstance = lilv_plugin_instantiate(pPlugin, pHost->GetSampleRate(), myFeatures);
|
||||
LilvInstance *pInstance = nullptr;
|
||||
try {
|
||||
pInstance = lilv_plugin_instantiate(pPlugin, pHost->GetSampleRate(), myFeatures);
|
||||
} catch (const std::exception &e)
|
||||
{
|
||||
this->pInstance = nullptr;
|
||||
throw PiPedalException(SS("Plugin threw an exception: " << e.what()));
|
||||
|
||||
}
|
||||
this->pInstance = pInstance;
|
||||
if (this->pInstance == nullptr)
|
||||
{
|
||||
|
||||
@@ -64,6 +64,7 @@ namespace pipedal
|
||||
int sampleRate = 0;
|
||||
int samplesToNextCallback = 0;
|
||||
bool waitingForAck = false;
|
||||
float lastValue = -1E30;
|
||||
};
|
||||
|
||||
class RealtimeMonitorPortSubscriptions
|
||||
|
||||
Reference in New Issue
Block a user