Browse Source

MOD TAL-reverb2: Remove normalization (#51)

* Add ifdef in setParameter functions

Added ifdef to check if during compile time if the TAL-Reverb-II is
compiled for a MOD Device. When this is true the plugin won't use the
default normalized parameter input.

* Add LV2 data for mod version TAL-Reverb-2

* Adjusted volume settings

* Removed unused parameter

* Renamed parameters and removed unused param

* Changed values in presets to match MOD version

* Removed defines for __MOD__ and setProgram

Removed hardcoded defines for __MOD_DEVICES__ macro and bypassed
setProgram for mod version

* Minor changes for compatibility

* Fixed mixed indent ReverbEngine.h

* Reverted indent of ReverbEngine to use tabs

* Changed spaces to tabs on few lines

* Moved decayTime and update ttl for mod

- Removed decayTime adjustments for __MOD_DEVICES_ macro so it keeps
using the same normalization as in the original version.
- Updated ttl data for MOD Devices version.

* Small correction on TAL-Reverb preset

* Change URI

Changed URI for MOD Devices version
tags/2020-07-14
Bram Giesen GitHub 3 years ago
parent
commit
58485ff6b7
No known key found for this signature in database GPG Key ID: 4AEE18F83AFDEB23
9 changed files with 899 additions and 15 deletions
  1. +180
    -0
      mod-lv2-data/TAL-Reverb-2.lv2/TAL-Reverb-2.ttl
  2. +133
    -0
      mod-lv2-data/TAL-Reverb-2.lv2/manifest.ttl
  3. +510
    -0
      mod-lv2-data/TAL-Reverb-2.lv2/presets.ttl
  4. +4
    -2
      ports/tal-reverb-2/source/Engine/Params.h
  5. +7
    -2
      ports/tal-reverb-2/source/Engine/Reverb.h
  6. +16
    -4
      ports/tal-reverb-2/source/Engine/ReverbEngine.h
  7. +35
    -0
      ports/tal-reverb-2/source/Engine/TalEq.h
  8. +7
    -1
      ports/tal-reverb-2/source/JucePluginCharacteristics.h
  9. +7
    -6
      ports/tal-reverb-2/source/TalCore.cpp

+ 180
- 0
mod-lv2-data/TAL-Reverb-2.lv2/TAL-Reverb-2.ttl View File

@@ -0,0 +1,180 @@
@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
@prefix epp: <http://lv2plug.in/ns/ext/port-props#> .
@prefix doap: <http://usefulinc.com/ns/doap#> .
@prefix foaf: <http://xmlns.com/foaf/0.1/> .
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix ui: <http://lv2plug.in/ns/extensions/ui#> .
@prefix unit: <http://lv2plug.in/ns/extensions/units#> .

<http://moddevices.com/plugins/tal-reverb-2>
a lv2:ReverbPlugin, lv2:Plugin ;
lv2:requiredFeature <http://lv2plug.in/ns/ext/buf-size#boundedBlockLength> ,
<http://lv2plug.in/ns/ext/urid#map> ;
lv2:extensionData <http://lv2plug.in/ns/ext/options#interface> ,
<http://lv2plug.in/ns/ext/state#interface> ,
<http://kxstudio.sf.net/ns/lv2ext/programs#Interface> ;

lv2:port [
a lv2:InputPort, lv2:ControlPort ;
lv2:index 0 ;
lv2:symbol "lv2_freewheel" ;
lv2:name "Freewheel" ;
lv2:default 0.0 ;
lv2:minimum 0.0 ;
lv2:maximum 1.0 ;
lv2:designation <http://lv2plug.in/ns/lv2core#freeWheeling> ;
lv2:portProperty lv2:toggled, <http://lv2plug.in/ns/ext/port-props#notOnGUI> ;
] ;

lv2:port [
a lv2:InputPort, lv2:AudioPort ;
lv2:index 1 ;
lv2:symbol "lv2_audio_in_1" ;
lv2:name "Audio Input 1" ;
] ,
[
a lv2:InputPort, lv2:AudioPort ;
lv2:index 2 ;
lv2:symbol "lv2_audio_in_2" ;
lv2:name "Audio Input 2" ;
] ;

lv2:port [
a lv2:OutputPort, lv2:AudioPort ;
lv2:index 3 ;
lv2:symbol "lv2_audio_out_1" ;
lv2:name "Audio Output 1" ;
] ,
[
a lv2:OutputPort, lv2:AudioPort ;
lv2:index 4 ;
lv2:symbol "lv2_audio_out_2" ;
lv2:name "Audio Output 2" ;
] ;

lv2:port [
a lv2:InputPort, lv2:ControlPort ;
lv2:index 5 ;
lv2:symbol "dry" ;
lv2:name "dry" ;
lv2:default 0.0 ;
lv2:minimum -96.0 ;
lv2:maximum 26.4 ;
unit:unit unit:db ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 6 ;
lv2:symbol "wet" ;
lv2:name "wet" ;
lv2:default -24.1 ;
lv2:minimum -96.0 ;
lv2:maximum 26.4 ;
unit:unit unit:db ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 7 ;
lv2:symbol "room_size" ;
lv2:name "room size" ;
lv2:default 0.752000 ;
lv2:minimum 0.0 ;
lv2:maximum 1.0 ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 8 ;
lv2:symbol "pre_delay" ;
lv2:name "pre delay" ;
lv2:default 37.0 ;
lv2:minimum 0.0 ;
lv2:maximum 1000.0 ;
unit:unit unit:ms ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 9 ;
lv2:symbol "low_shelf_frequency" ;
lv2:name "low frequency" ;
lv2:default 257.0 ;
lv2:minimum 100.0 ;
lv2:maximum 10000.0 ;
lv2:portProperty epp:logarithmic;
unit:unit unit:hz ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 10 ;
lv2:symbol "high_shelf_frequency" ;
lv2:name "high frequency" ;
lv2:default 3039.0 ;
lv2:minimum 100.0 ;
lv2:maximum 10000.0 ;
lv2:portProperty epp:logarithmic;
unit:unit unit:hz ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 11 ;
lv2:symbol "peak_frequency" ;
lv2:name "mid frequency" ;
lv2:default 2237.0 ;
lv2:minimum 100.0 ;
lv2:maximum 10000.0 ;
lv2:portProperty epp:logarithmic;
unit:unit unit:hz ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 12 ;
lv2:symbol "low_shelf_gain" ;
lv2:name "low gain" ;
lv2:default -0.4 ;
lv2:minimum -18.0 ;
lv2:maximum 0.0 ;
unit:unit unit:db ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 13 ;
lv2:symbol "high_shelf_gain" ;
lv2:name "high gain" ;
lv2:default -1.2 ;
lv2:minimum -18.0 ;
lv2:maximum 0.0 ;
unit:unit unit:db ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 14 ;
lv2:symbol "peak_gain" ;
lv2:name "mid gain" ;
lv2:default -1.7 ;
lv2:minimum -18.0 ;
lv2:maximum 0.0 ;
unit:unit unit:db ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 15 ;
lv2:symbol "stereoWidth" ;
lv2:name "stereo width" ;
lv2:default 1.0 ;
lv2:minimum 0.0 ;
lv2:maximum 1.0 ;
] ,
[
a lv2:InputPort, lv2:ControlPort ;
lv2:index 16 ;
lv2:symbol "stereo_input" ;
lv2:name "stereo input" ;
lv2:default 0.0 ;
lv2:minimum 0.0 ;
lv2:maximum 1.0 ;
lv2:portProperty lv2:toggled ;
] ;

doap:name "Tal-Reverb-II" ;
doap:maintainer [ foaf:name "TAL-Togu Audio Line" ] .


+ 133
- 0
mod-lv2-data/TAL-Reverb-2.lv2/manifest.ttl View File

@@ -0,0 +1,133 @@
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .

@prefix pset: <http://lv2plug.in/ns/ext/presets#> .

@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .

@prefix ui: <http://lv2plug.in/ns/extensions/ui#> .


<http://moddevices.com/plugins/tal-reverb-2>
a lv2:Plugin ;
lv2:binary <TAL-Reverb-2.so> ;
rdfs:seeAlso <TAL-Reverb-2.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset001>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Gentle Drum Ambience" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset002>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "80's Plate" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset003>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Big Wet Plate (no EQ)" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset004>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Small Drum Plate" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset005>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Dull Plate" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset006>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Need some Air" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset007>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Mid Plate" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset008>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Airy Mono Plate" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset009>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "1100Hz Plate" ;

rdfs:seeAlso <presets.ttl> .



<http://moddevices.com/plugins/tal-reverb-2#preset010>

a pset:Preset ;

lv2:appliesTo <http://moddevices.com/plugins/tal-reverb-2> ;

rdfs:label "Short Plate" ;

rdfs:seeAlso <presets.ttl> .

+ 510
- 0
mod-lv2-data/TAL-Reverb-2.lv2/presets.ttl View File

@@ -0,0 +1,510 @@
@prefix atom: <http://lv2plug.in/ns/ext/atom#> .
@prefix lv2: <http://lv2plug.in/ns/lv2core#> .
@prefix pset: <http://lv2plug.in/ns/ext/presets#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#> .
@prefix state: <http://lv2plug.in/ns/ext/state#> .
@prefix xsd: <http://www.w3.org/2001/XMLSchema#> .

<http://moddevices.com/plugins/tal-reverb-2#preset001> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -24.1 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.660000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 37.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 257.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 3039.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 2237.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value -0.4 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -1.2 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -1.7 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 1.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset002> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -17.6 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.660000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 10.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 1909.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 1434.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 1148.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -1.5 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -4.9 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.0 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 0.0 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset003> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -21.4 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.752000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 25.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 138.00 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 10000.00 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 1853.00 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 0.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset004> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -9.4 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.308 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 22.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 461.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 1549.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 858.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value -1.9 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -3.8 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -18.0 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 1.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset005> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.000000 ;
] ,
[
lv2:symbol "wet" ;
pset:value -15.3 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.632000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 32.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 970.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 4083.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 2435.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -6.6 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -5.0 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 1.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset006> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -22.4 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.688000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 22.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 562.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 1909.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 2174.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value -6.2 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -2.5 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 0.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset007> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -7.3 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.604000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 45.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 954.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 755.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 2504.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value -1.7 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -18.0 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -8.4 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 1.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset008> a pset:Preset ;

lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -3.3 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.732000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 12.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 472.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 1457.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 937.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value -5.0 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -4.8 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -18.0 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 0.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 0.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset009> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -5.4 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.600000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 46.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 1074.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 1110.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 10000.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value -18.0 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -18.0 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -6.0 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 0.000000 ;
] .

<http://moddevices.com/plugins/tal-reverb-2#preset010> a pset:Preset ;
lv2:port [
lv2:symbol "dry" ;
pset:value 0.0 ;
] ,
[
lv2:symbol "wet" ;
pset:value -1.2 ;
] ,
[
lv2:symbol "room_size" ;
pset:value 0.104000 ;
] ,
[
lv2:symbol "pre_delay" ;
pset:value 26.0 ;
] ,
[
lv2:symbol "low_shelf_frequency" ;
pset:value 1909.0 ;
] ,
[
lv2:symbol "high_shelf_frequency" ;
pset:value 1909.0 ;
] ,
[
lv2:symbol "peak_frequency" ;
pset:value 2174.0 ;
] ,
[
lv2:symbol "low_shelf_gain" ;
pset:value -3.8 ;
] ,
[
lv2:symbol "high_shelf_gain" ;
pset:value -5.0 ;
] ,
[
lv2:symbol "peak_gain" ;
pset:value -7.3 ;
] ,
[
lv2:symbol "stereo" ;
pset:value 1.000000 ;
] ,
[
lv2:symbol "stereo_input" ;
pset:value 1.000000 ;
] .



+ 4
- 2
ports/tal-reverb-2/source/Engine/Params.h View File

@@ -16,7 +16,7 @@
You should have received a copy of the GPL along with this
program. If not, go to http://www.gnu.org/licenses/gpl.html
or write to the Free Software Foundation, Inc.,
or write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
==============================================================================
*/
@@ -36,7 +36,9 @@ Parameter table
enum SYNTHPARAMETERS
{
// Controllable values [0.0..1.0
#ifndef __MOD_DEVICES__
UNUSED= 0,
#endif
DRY,
WET,
@@ -73,4 +75,4 @@ class Params
}
}
};
#endif
#endif

+ 7
- 2
ports/tal-reverb-2/source/Engine/Reverb.h View File

@@ -186,17 +186,22 @@ public:
delete talEqR;
}
void setDecayTime(float decayTime)
{
this->decayTime = audioUtils.getLogScaledValueInverted(decayTime) * 0.99f;
}
#ifdef __MOD_DEVICES__
void setPreDelay(float preDelayTime)
{
this->preDelayTime = preDelayTime * 0.001;
}
#else
void setPreDelay(float preDelayTime)
{
this->preDelayTime = audioUtils.getLogScaledValue(preDelayTime);
}
#endif
void setStereoMode(bool stereoMode)
{
this->stereoMode = stereoMode;


+ 16
- 4
ports/tal-reverb-2/source/Engine/ReverbEngine.h View File

@@ -16,7 +16,7 @@
You should have received a copy of the GPL along with this
program. If not, go to http://www.gnu.org/licenses/gpl.html
or write to the Free Software Foundation, Inc.,
or write to the Free Software Foundation, Inc.,
51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
==============================================================================
*/
@@ -31,7 +31,7 @@
#include "ParamChangeUtil.h"
#include "NoiseGenerator.h"
class ReverbEngine
class ReverbEngine
{
public:
float *param;
@@ -48,7 +48,7 @@ public:
AudioUtils audioUtils;
ReverbEngine(float sampleRate)
ReverbEngine(float sampleRate)
{
Params *params= new Params();
this->param= params->parameters;
@@ -61,17 +61,29 @@ public:
delete noiseGenerator;
}
#ifdef __MOD_DEVICES__
void setDry(float dry)
{
dry = (dry + 96.0) / (26.4 + 96.0);
this->dry = audioUtils.getLogScaledVolume(dry, 2.0f);
}
void setWet(float wet)
{
wet = (wet + 96.0) / (26.4 + 96.0);
this->wet = audioUtils.getLogScaledVolume(wet, 2.0f);
}
#else
void setDry(float dry)
{
this->dry = audioUtils.getLogScaledVolume(dry, 2.0f);
}
void setWet(float wet)
{
this->wet = audioUtils.getLogScaledVolume(wet, 2.0f);
}
#endif
void setDecayTime(float decayTime)
{
reverb->setDecayTime(decayTime);


+ 35
- 0
ports/tal-reverb-2/source/Engine/TalEq.h View File

@@ -57,6 +57,40 @@ public:
{
}
#ifdef __MOD_DEVICES__
void setLowShelfGain(float lowShelfGain)
{
lowShelfGain = (lowShelfGain + 18.0 ) / 36.0;
this->lowShelfGain = lowShelfGain;
}
void setHighShelfGain(float highShelfGain)
{
highShelfGain = (highShelfGain + 18.0 ) / 36.0;
this->highShelfGain = highShelfGain;
}
void setPeakGain(float peakGain)
{
peakGain = (peakGain + 18.0 ) / 36.0;
this->peakGain = peakGain;
}
void setLowShelfFrequency(float lowShelfFrequency)
{
this->lowShelfFrequency = lowShelfFrequency;
}
void setHighShelfFrequency(float highShelfFrequency)
{
this->highShelfFrequency = highShelfFrequency;
}
void setPeakFrequency(float peakFrequency)
{
this->peakFrequency = peakFrequency;
}
#else
void setLowShelfGain(float lowShelfGain)
{
this->lowShelfGain = lowShelfGain * 0.5f;
@@ -86,6 +120,7 @@ public:
{
this->peakFrequency = audioUtils.getLogScaledFrequency(peakFrequency);
}
#endif
void initialize(float sampleRate)
{


+ 7
- 1
ports/tal-reverb-2/source/JucePluginCharacteristics.h View File

@@ -286,7 +286,13 @@
#define JucePlugin_IsMidiEffect 0
#define JucePlugin_LV2URI "urn:juce:TalReverb2"
#if __MOD_DEVICES__
#define JucePlugin_LV2URI "http://moddevices.com/plugins/tal-reverb-2"
#else
#define JucePlugin_LV2URI "urn:juce:TalReverb2"
#endif
#define JucePlugin_LV2Category "ReverbPlugin"
#define JucePlugin_WantsLV2Latency 0


+ 7
- 6
ports/tal-reverb-2/source/TalCore.cpp View File

@@ -57,10 +57,12 @@ TalCore::TalCore()
for (int i = 0; i < NUMPROGRAMS; i++) talPresets[i] = new TalPreset();
curProgram = 0;
#ifndef __MOD_DEVICES__
// load factory presets
ProgramChunk chunk;
setStateInformationString(chunk.getXmlChunk());
setCurrentProgram(curProgram);
#endif
}
TalCore::~TalCore()
@@ -114,7 +116,6 @@ void TalCore::setParameter (int index, float newValue)
case REALSTEREOMODE:
engine->setStereoMode(newValue);
break;
case LOWSHELFFREQUENCY:
engine->setLowShelfFrequency(newValue);
break;
@@ -124,7 +125,6 @@ void TalCore::setParameter (int index, float newValue)
case PEAKFREQUENCY:
engine->setPeakFrequency(newValue);
break;
case LOWSHELFGAIN:
engine->setLowShelfGain(newValue);
break;
@@ -148,19 +148,17 @@ const String TalCore::getParameterName (int index)
case DRY: return T("dry");
case DECAYTIME: return T("room size");
case PREDELAY: return T("pre delay");
case LOWSHELFFREQUENCY: return T("low shelf frequency");
case HIGHSHELFFREQUENCY: return T("high shelf frequency");
case PEAKFREQUENCY: return T("peak frequency");
case LOWSHELFGAIN: return T("low shelf gain");
case HIGHSHELFGAIN: return T("high shelf gain");
case PEAKGAIN: return T("peak gain");
case STEREO: return T("stereo");
case REALSTEREOMODE: return T("stereo input");
#ifndef __MOD_DEVICES__
case UNUSED: return "unused";
#endif
}
return String();
}
@@ -450,12 +448,15 @@ int TalCore::getCurrentProgram ()
void TalCore::setCurrentProgram (int index)
{
if (index < NUMPROGRAMS)
{
curProgram = index;
for (int i = 0; i < NUMPARAM; i++)
{
#ifndef __MOD_DEVICES__
setParameter(i, talPresets[index]->programData[i]);
#endif
}
sendChangeMessage ();
}


Loading…
Cancel
Save