summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDamien Zammit <damien@zamaudio.com>2019-01-06 23:10:54 +1100
committerDamien Zammit <damien@zamaudio.com>2019-01-06 23:10:54 +1100
commit85525facb2b87c8d01bc288e1983d5d5d766bbd6 (patch)
tree1b4ec3ce0a5437cf51b4acd37b4869ac16189d0c
parent63f36b6bdd937d61a24a4e8cb7030fb53a7b0189 (diff)
Lower input level to -15dBFS
-rw-r--r--plugins/ZamTube/ZamTubePlugin.cpp14
1 files changed, 4 insertions, 10 deletions
diff --git a/plugins/ZamTube/ZamTubePlugin.cpp b/plugins/ZamTube/ZamTubePlugin.cpp
index 1fa17ef..4f5311f 100644
--- a/plugins/ZamTube/ZamTubePlugin.cpp
+++ b/plugins/ZamTube/ZamTubePlugin.cpp
@@ -949,19 +949,13 @@ void ZamTubePlugin::run(const float** inputs, float** outputs, uint32_t frames)
double in = sanitize_denormal(inputs[0][i]);
// protect against overflowing circuit
- in = fabs(in) < DANGER ? in : 0.f;
-
+ in = fabs(in) < DANGER ? in : 0.f;
+
double pregain = from_dB(tubedrive*3.6364); // 0 to +40dB
- double ViE = in*pregain;
+ double ViE = in * pregain * from_dB(15.); // assume in -15dBFS
double postgain = from_dB(tubedrive/2.) * from_dB(mastergain);
tubeout = ckt.advanc(ViE) * postgain / (e * 0.5);
- /*
- if (insane) {
- tubeout = in*from_dB(-50.)*postgain;
- } else {
- tubeout = ckt.advanc(ViE) * postgain - in*from_dB(-50.)*postgain;
- }
- */
+
//Tone Stack sim
fRec0[0] = sanitize_denormal((float)tubeout - (fSlow16 * (((fSlow14 * fRec0[2]) + (fSlow13 * fRec0[1])) + (fSlow11 * fRec0[3]))));
fRec1[0] = sanitize_denormal((float)tubeout - (fSlow47 * (((fSlow45 * fRec1[2]) + (fSlow44 * fRec1[1])) + (fSlow42 * fRec1[3]))));