TooB Crvb for testing.

This commit is contained in:
Robin E. R. Davies
2025-08-20 17:26:25 -04:00
parent 555a233dcb
commit 1ac88ae633
29 changed files with 272 additions and 126 deletions
@@ -51,33 +51,33 @@ toobimpulse:impulseFile
doap:license <https://rerdavies.github.io/pipedal/LicenseToobAmp> ;
doap:maintainer <http://two-play.com/rerdavies#me> ;
lv2:minorVersion 0 ;
lv2:microVersion 67 ;
lv2:microVersion 68 ;
rdfs:comment """
Convolution reverb is a notoriously compute-intensive effect. If you are having performance issues, use the Max T control to constrain the length of the impulse file to
under two seconds, or consider using the monophonic version of this effect.
Toob Convolution Reverb Stereo uses convolution reverb impulse/response files in order to produce highly
realistic reverb effects.
The Max T control affects how much of the impulse file is used. If the length of the impulse file is longer than the specified time, samples occurring after
the specified time are discarded, and the tail of the impulse convolution is fed back into the input of the convolution. This ensures a smooth reverb tail,
and has little effect on the quality of the resulting reverb. If the impulse file is shorter than the specified time, then all samples in the impulse
file are used, and no feedback occurs. You can often get smooth reverbs that preserve most of the character of the impulse file with Max T set to
250ms or less.
Convolution reverb impules/response (i/r) files are (typically) generated by recording the reverberant response of real
spaces (concert halls, churches, clubs, &c) in response to an impulse signal. Originally, the impulse signal was a shot
fired by a starter pistol; however modern i/r production often uses more complex impulse signals and complex digital signal
processing to generate more accurate i/r files. When that recording is convolved with an input signal, it produces a faithful
recreation of the sound of the room in which the i/r file was recorded. It is also possible to generate i/r files
that recreate the sound of reverb and echo effect pedals/studio effects, using the same technique. Convolution reverbs
can also be used to recreate the sound of classic spring reverbs.
Because reverb impulse files often include the original sound, you will sometimes get strange comb filter effects if you use the Direct mix control;
but this varies depending on the impulse file in question. Usually, the Direct mix control should be set to -INF.
Toob Convolution Reverb comes with a nominal set of reverb impulse files to get you started. However, these i/r files
are not neccesarily ideally suited for use as reverbs in a guitar pedalboard. You are strongly encouraged to
explore the rich collections of reverb impulse files (both free and commercially produced) that are available on the internet.
The Predelay control determines whether Toob Convolution Reverb will strip leading silence from the impulse data. Turning it on preserves leading silence in the
impulse signal; turning it off removes leading silence. If the the Direct mix control is set to -INF dB, there's no real point in
delaying the convolution reverb output; you want responses as quickly as possible. The Predelay control should be set to off.
The leading silence in impulse files can sometimes be quite significant.
The Stretch and Decay controls allow you to manipulate source i/r files in order create reverb effects that meet your exact requirements. The Stretch
control resamples the source i/r file in order to make the reverb effect sound longer or shorter. The Decay control applies an exponential
decay envelope to the source i/r file. Negative values make the reverb tail quieter; positive values apply a negative decay envelope.
i.e. when the Decay control is set to a positive value, it makes the reverb tail louder.
If the impulse file has 4 channels, Toob Convolution Reverb assumes the signal is in Ambisonic b-format, and down-mixes the ambisonic channels to stereo.
TooB Convolution reverb can uses mono or stereo i/r files. If the impulse file has 4 channels, Toob Convolution Reverb assumes the file is in Ambisonic b-format, and down-mixes the ambisonic channels to stereo.
To generate monophonic reverb effects from ambisonic audio, use the monophonic version of this plugin.
Toob Convolution Reverb comes with a nominal set of reverb impulse files to get you started. You are strongly encouraged to explore the rich collections of
reverb impulse files that are widely available on the internet.
Special thanks are extended to the the OpenAir project, which graciously provided the base set of impulse files
distributed with Toob Convolution Reverb under licensing terms that are compatible with the Toob Amp project's
licensing terms.
@@ -179,18 +179,18 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
lv2:name "Max T";
lv2:portProperty epp:logarithmic;
lv2:default 1.5 ;
lv2:default 30.0 ;
lv2:minimum 0.1 ;
lv2:maximum 10.0 ;
lv2:maximum 30.0 ;
lv2:portProperty epp:notAutomatic ;
lv2:portProperty epp:notAutomatic, epp:notOnGUI ;
lv2:portProperty epp:expensive ;
units:unit units:s ;
rdfs:comment "Maximum length of impulse data to use." ;
],
],
[
a lv2:InputPort ,
lv2:ControlPort ;
@@ -198,9 +198,9 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
lv2:index 1;
lv2:symbol "direct_mix" ;
lv2:name "Direct";
lv2:default -40.0 ;
lv2:default -3.0 ;
lv2:minimum -40.0 ;
lv2:maximum 20.0 ;
lv2:maximum 40.0 ;
units:unit units:db ;
lv2:scalePoint [
@@ -209,7 +209,7 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
];
rdfs:comment "Direct mix. Set to minimum to disable." ;
],
],
[
a lv2:InputPort ,
lv2:ControlPort ;
@@ -218,9 +218,9 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
lv2:symbol "reverb_mix" ;
lv2:name "Reverb";
lv2:default -10.0 ;
lv2:default 0.0 ;
lv2:minimum -40.0 ;
lv2:maximum 20.0 ;
lv2:maximum 40.0 ;
units:unit units:db ;
lv2:scalePoint [
@@ -258,20 +258,20 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
rdfs:comment "Pan." ;
],
[
a lv2:InputPort ,
lv2:ControlPort ;
lv2:index 5 ;
lv2:symbol "predelay" ;
lv2:symbol "predelay" ; #obsolete!
lv2:name "Predelay";
lv2:default 1 ;
lv2:minimum 0 ;
lv2:maximum 1 ;
lv2:default -1 ; # -1 => CrvbVersion::V2, else CrvbVersion::V1
lv2:minimum -1 ;
lv2:maximum 1 ;
lv2:portProperty lv2:enumeration ;
lv2:portProperty lv2:enumeration, epp:notOnGUI ;
lv2:scalePoint [
rdfs:label "Remove" ;
@@ -285,17 +285,87 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
],
[
a lv2:OutputPort ,
a lv2:InputPort ,
lv2:ControlPort ;
lv2:index 6 ;
lv2:symbol "predelay_new" ;
lv2:name "Predelay";
lv2:default 1 ;
lv2:minimum 1;
lv2:maximum 300 ;
units:unit units:ms ;
lv2:portProperty epp:logarithmic;
lv2:scalePoint [
rdfs:label "0.00ms" ;
rdf:value 1;
];
rdfs:comment "Delay first early reflection" ;
],
[
a lv2:InputPort ,
lv2:ControlPort ;
lv2:index 7 ;
lv2:symbol "stretch" ;
lv2:name "Stretch";
lv2:default 1 ;
lv2:minimum 0.25;
lv2:maximum 2 ;
lv2:portProperty epp:logarithmic;
rdfs:comment "Stretch the source i/r file" ;
],
[
a lv2:InputPort ,
lv2:ControlPort ;
lv2:index 8 ;
lv2:symbol "decay" ;
lv2:name "Decay";
lv2:default 0 ;
lv2:minimum -1.0;
lv2:maximum 1.0 ;
rdfs:comment "Apply a decay envelope to the source i/r file" ;
],
[
a lv2:InputPort ,
lv2:ControlPort ;
lv2:index 9 ;
lv2:symbol "tails" ;
lv2:name "Tails";
lv2:default 1 ;
lv2:minimum 0;
lv2:maximum 1 ;
lv2:portProperty lv2:toggled, epp:notOnGUI;
rdfs:comment "Reverb tails when bypassed" ;
],
[
a lv2:OutputPort ,
lv2:ControlPort ;
lv2:index 10 ;
lv2:symbol "loading_state" ;
lv2:name "Status";
lv2:portProperty lv2:enumeration ;
lv2:default 0.0 ;
lv2:minimum 0.0 ;
lv2:maximum 5.0 ;
lv2:maximum 5.0 ;
# NotLoaded = 0,
# Idle = 1,
@@ -328,7 +398,7 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
[
a lv2:AudioPort ,
lv2:InputPort ;
lv2:index 7 ;
lv2:index 11;
lv2:symbol "inL" ;
lv2:name "InL" ;
lv2:designation pg:left ;
@@ -339,7 +409,7 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
[
a lv2:AudioPort ,
lv2:InputPort ;
lv2:index 8 ;
lv2:index 12 ;
lv2:symbol "inR" ;
lv2:name "InR" ;
lv2:designation pg:right ;
@@ -348,7 +418,7 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
[
a lv2:AudioPort ,
lv2:OutputPort ;
lv2:index 9 ;
lv2:index 13 ;
lv2:symbol "outL" ;
lv2:name "OutL" ;
lv2:designation pg:left ;
@@ -357,7 +427,7 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
[
a lv2:AudioPort ,
lv2:OutputPort ;
lv2:index 10 ;
lv2:index 14 ;
lv2:symbol "outR" ;
lv2:name "OutR" ;
lv2:designation pg:right ;
@@ -371,7 +441,7 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
lv2:designation lv2:control ;
atom:supports patch:Message ;
lv2:index 11 ;
lv2:index 15 ;
lv2:symbol "control" ;
lv2:name "Control" ;
rdfs:comment "Control" ;
@@ -381,14 +451,13 @@ Source: https://www.openair.hosted.york.ac.uk/?page_id=483
atom:bufferType atom:Sequence ;
# atom:supports patch:Message;
lv2:designation lv2:control ;
lv2:index 12;
lv2:index 16;
lv2:symbol "notify" ;
lv2:name "Notify" ;
rdfs:comment "Notification" ;
]
.
<http://two-play.com/plugins/toob-convolution-reverb-stereo> pipedal_ui:ui toobcrs:ui .
toobcrs:ui
@@ -404,17 +473,18 @@ toobcrs:ui
pipedal_ui:fileTypes
[
a pipedal_ui:fileType;
rdfs:label "WAV File";
rdfs:label "WAV files";
pipedal_ui:mimeType "audio/wav";
],
[
a pipedal_ui:fileType;
rdfs:label "FLAC File";
rdfs:label "FLAC files";
pipedal_ui:mimeType "audio/flac";
] ;
];
]
.
<http://two-play.com/plugins/convolution-reverb-stereo-ui>
a uiext:X11UI ;
lv2:binary <ToobAmpUI.so>;