aboutsummaryrefslogtreecommitdiffstats
path: root/plugins/MacVST
diff options
context:
space:
mode:
authorChris Johnson <jinx6568@sover.net>2020-02-04 03:55:47 -0500
committerChris Johnson <jinx6568@sover.net>2020-02-04 03:55:47 -0500
commit828681015d65db1c4f6c39c1ffb9fe89b71f8af2 (patch)
tree7ab528032f038884229843ac8f1f3817db4902ad /plugins/MacVST
parent95d0811f50332fe99cdb52eed0bd929faec2d43c (diff)
downloadairwindows-lv2-port-828681015d65db1c4f6c39c1ffb9fe89b71f8af2.tar.gz
airwindows-lv2-port-828681015d65db1c4f6c39c1ffb9fe89b71f8af2.tar.bz2
airwindows-lv2-port-828681015d65db1c4f6c39c1ffb9fe89b71f8af2.zip
Tape plugins update
Diffstat (limited to 'plugins/MacVST')
-rwxr-xr-xplugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.pbxuser44
-rwxr-xr-xplugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.perspectivev340
-rwxr-xr-xplugins/MacVST/Tape/source/TapeProc.cpp8
-rwxr-xr-xplugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.pbxuser51
-rwxr-xr-xplugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.perspectivev347
-rwxr-xr-xplugins/MacVST/ToTape6/source/ToTape6Proc.cpp58
6 files changed, 161 insertions, 87 deletions
diff --git a/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.pbxuser b/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.pbxuser
index d2bb84d..e624c93 100755
--- a/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.pbxuser
+++ b/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.pbxuser
@@ -49,14 +49,15 @@
PBXFileDataSource_Warnings_ColumnID,
);
};
- PBXPerProjectTemplateStateSaveDate = 601679829;
- PBXWorkspaceStateSaveDate = 601679829;
+ PBXPerProjectTemplateStateSaveDate = 602110889;
+ PBXWorkspaceStateSaveDate = 602110889;
};
perUserProjectItems = {
8B043CDA23DCE7AD00DF857C /* PBXTextBookmark */ = 8B043CDA23DCE7AD00DF857C /* PBXTextBookmark */;
8B043D1923DCFF6200DF857C /* PBXTextBookmark */ = 8B043D1923DCFF6200DF857C /* PBXTextBookmark */;
- 8B043D1A23DCFF6200DF857C /* XCBuildMessageTextBookmark */ = 8B043D1A23DCFF6200DF857C /* XCBuildMessageTextBookmark */;
- 8B043D1B23DCFF6200DF857C /* PBXTextBookmark */ = 8B043D1B23DCFF6200DF857C /* PBXTextBookmark */;
+ 8BA0D9C023E37DB300721922 /* PBXTextBookmark */ = 8BA0D9C023E37DB300721922 /* PBXTextBookmark */;
+ 8BA0D9C123E37DB300721922 /* PBXBookmark */ = 8BA0D9C123E37DB300721922 /* PBXBookmark */;
+ 8BA0D9C223E37DB300721922 /* PBXTextBookmark */ = 8BA0D9C223E37DB300721922 /* PBXTextBookmark */;
};
sourceControlManager = 8B02375E1D42B1C400E1E8C8 /* Source Control */;
userBuildSettings = {
@@ -80,7 +81,7 @@
};
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {838, 19760}}";
+ sepNavIntBoundsRect = "{{0, 0}, {838, 19864}}";
sepNavSelRange = "{10616, 0}";
sepNavVisRange = "{10459, 280}";
sepNavWindowFrame = "{{15, 42}, {895, 831}}";
@@ -88,10 +89,10 @@
};
24D8286F09A914000093AEF8 /* TapeProc.cpp */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {848, 8086}}";
- sepNavSelRange = "{23496, 0}";
- sepNavVisRange = "{22340, 1667}";
- sepNavWindowFrame = "{{277, 57}, {895, 821}}";
+ sepNavIntBoundsRect = "{{0, 0}, {740, 7371}}";
+ sepNavSelRange = "{23627, 0}";
+ sepNavVisRange = "{23438, 235}";
+ sepNavWindowFrame = "{{545, 57}, {895, 821}}";
};
};
8B02375E1D42B1C400E1E8C8 /* Source Control */ = {
@@ -128,16 +129,7 @@
vrLen = 180;
vrLoc = 427;
};
- 8B043D1A23DCFF6200DF857C /* XCBuildMessageTextBookmark */ = {
- isa = PBXTextBookmark;
- comments = "Deprecated conversion from string constant to 'char*'";
- fRef = 24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */;
- fallbackIsa = XCBuildMessageTextBookmark;
- rLen = 1;
- rLoc = 306;
- rType = 1;
- };
- 8B043D1B23DCFF6200DF857C /* PBXTextBookmark */ = {
+ 8BA0D9C023E37DB300721922 /* PBXTextBookmark */ = {
isa = PBXTextBookmark;
fRef = 24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */;
name = "audioeffectx.cpp: 307";
@@ -147,6 +139,20 @@
vrLen = 280;
vrLoc = 10459;
};
+ 8BA0D9C123E37DB300721922 /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = 24D8286F09A914000093AEF8 /* TapeProc.cpp */;
+ };
+ 8BA0D9C223E37DB300721922 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 24D8286F09A914000093AEF8 /* TapeProc.cpp */;
+ name = "TapeProc.cpp: 553";
+ rLen = 0;
+ rLoc = 23627;
+ rType = 0;
+ vrLen = 235;
+ vrLoc = 23438;
+ };
8D01CCC60486CAD60068D4B7 /* Tape */ = {
activeExec = 0;
};
diff --git a/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.perspectivev3 b/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.perspectivev3
index f1e3dd7..ad3683d 100755
--- a/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.perspectivev3
+++ b/plugins/MacVST/Tape/Tape.xcodeproj/christopherjohnson.perspectivev3
@@ -256,6 +256,8 @@
<key>Layout</key>
<array>
<dict>
+ <key>BecomeActive</key>
+ <true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXBottomSmartGroupGIDs</key>
@@ -321,7 +323,7 @@
<real>185</real>
</array>
<key>RubberWindowFrame</key>
- <string>52 327 810 487 0 0 1440 878 </string>
+ <string>530 344 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>PBXSmartGroupTreeModule</string>
@@ -337,7 +339,7 @@
<key>PBXProjectModuleGUID</key>
<string>8B0237581D42B1C400E1E8C8</string>
<key>PBXProjectModuleLabel</key>
- <string>audioeffectx.cpp</string>
+ <string>TapeProc.cpp</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@@ -345,16 +347,17 @@
<key>PBXProjectModuleGUID</key>
<string>8B0237591D42B1C400E1E8C8</string>
<key>PBXProjectModuleLabel</key>
- <string>audioeffectx.cpp</string>
+ <string>TapeProc.cpp</string>
<key>_historyCapacity</key>
<integer>0</integer>
<key>bookmark</key>
- <string>8B043D1B23DCFF6200DF857C</string>
+ <string>8BA0D9C223E37DB300721922</string>
<key>history</key>
<array>
<string>8B043CDA23DCE7AD00DF857C</string>
<string>8B043D1923DCFF6200DF857C</string>
- <string>8B043D1A23DCFF6200DF857C</string>
+ <string>8BA0D9C023E37DB300721922</string>
+ <string>8BA0D9C123E37DB300721922</string>
</array>
</dict>
<key>SplitCount</key>
@@ -368,18 +371,18 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 0}, {603, 117}}</string>
+ <string>{{0, 0}, {603, 102}}</string>
<key>RubberWindowFrame</key>
- <string>52 327 810 487 0 0 1440 878 </string>
+ <string>530 344 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
- <string>117pt</string>
+ <string>102pt</string>
</dict>
<dict>
<key>Proportion</key>
- <string>324pt</string>
+ <string>339pt</string>
<key>Tabs</key>
<array>
<dict>
@@ -393,7 +396,9 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{10, 27}, {603, 297}}</string>
+ <string>{{10, 27}, {603, 312}}</string>
+ <key>RubberWindowFrame</key>
+ <string>530 344 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
@@ -448,8 +453,6 @@
<dict>
<key>Frame</key>
<string>{{10, 27}, {603, 297}}</string>
- <key>RubberWindowFrame</key>
- <string>52 327 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>PBXBuildResultsModule</string>
@@ -477,11 +480,11 @@
</array>
<key>TableOfContents</key>
<array>
- <string>8B043D1C23DCFF6200DF857C</string>
+ <string>8BA0D9C323E37DB300721922</string>
<string>1CA23ED40692098700951B8B</string>
- <string>8B043D1D23DCFF6200DF857C</string>
+ <string>8BA0D9C423E37DB300721922</string>
<string>8B0237581D42B1C400E1E8C8</string>
- <string>8B043D1E23DCFF6200DF857C</string>
+ <string>8BA0D9C523E37DB300721922</string>
<string>1CA23EDF0692099D00951B8B</string>
<string>1CA23EE00692099D00951B8B</string>
<string>1CA23EE10692099D00951B8B</string>
@@ -634,7 +637,7 @@
<key>StatusbarIsVisible</key>
<true/>
<key>TimeStamp</key>
- <real>601685858.32363296</real>
+ <real>602111411.395051</real>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
<string>2</string>
<key>ToolbarDisplayMode</key>
@@ -651,10 +654,11 @@
<integer>5</integer>
<key>WindowOrderList</key>
<array>
- <string>/Users/christopherjohnson/Desktop/Tape/Tape.xcodeproj</string>
+ <string>8BA0D9C623E37DB300721922</string>
+ <string>/Users/christopherjohnson/Desktop/Plugins/MacVST/Tape/Tape.xcodeproj</string>
</array>
<key>WindowString</key>
- <string>52 327 810 487 0 0 1440 878 </string>
+ <string>530 344 810 487 0 0 1440 878 </string>
<key>WindowToolsV3</key>
<array>
<dict>
diff --git a/plugins/MacVST/Tape/source/TapeProc.cpp b/plugins/MacVST/Tape/source/TapeProc.cpp
index 1d1050c..e29f71a 100755
--- a/plugins/MacVST/Tape/source/TapeProc.cpp
+++ b/plugins/MacVST/Tape/source/TapeProc.cpp
@@ -326,6 +326,12 @@ void Tape::processDoubleReplacing(double **inputs, double **outputs, VstInt32 sa
long double inputSampleR = *in2;
if (fabs(inputSampleL)<1.18e-43) inputSampleL = fpd * 1.18e-43;
if (fabs(inputSampleR)<1.18e-43) inputSampleR = fpd * 1.18e-43;
+
+ if (inputgain < 1.0) {
+ inputSampleL *= inputgain;
+ inputSampleR *= inputgain;
+ } //gain cut before anything, even dry
+
long double drySampleL = inputSampleL;
long double drySampleR = inputSampleR;
@@ -438,7 +444,7 @@ void Tape::processDoubleReplacing(double **inputs, double **outputs, VstInt32 sa
long double groundSampleL = drySampleL - inputSampleL; //set up UnBox
long double groundSampleR = drySampleR - inputSampleR; //set up UnBox
- if (inputgain != 1.0) {
+ if (inputgain > 1.0) {
inputSampleL *= inputgain;
inputSampleR *= inputgain;
} //gain boost inside UnBox: do not boost fringe audio
diff --git a/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.pbxuser b/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.pbxuser
index a7faacc..a33f084 100755
--- a/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.pbxuser
+++ b/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.pbxuser
@@ -49,8 +49,13 @@
PBXFileDataSource_Warnings_ColumnID,
);
};
- PBXPerProjectTemplateStateSaveDate = 601183272;
- PBXWorkspaceStateSaveDate = 601183272;
+ PBXPerProjectTemplateStateSaveDate = 602111006;
+ PBXWorkspaceStateSaveDate = 602111006;
+ };
+ perUserProjectItems = {
+ 8BA0D9C723E37DB500721922 /* PBXTextBookmark */ = 8BA0D9C723E37DB500721922 /* PBXTextBookmark */;
+ 8BA0D9C823E37DB500721922 /* PBXBookmark */ = 8BA0D9C823E37DB500721922 /* PBXBookmark */;
+ 8BA0D9C923E37DB500721922 /* PBXTextBookmark */ = 8BA0D9C923E37DB500721922 /* PBXTextBookmark */;
};
sourceControlManager = 8B02375E1D42B1C400E1E8C8 /* Source Control */;
userBuildSettings = {
@@ -58,18 +63,18 @@
};
2407DEB6089929BA00EB68BF /* ToTape6.cpp */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {740, 2483}}";
+ sepNavIntBoundsRect = "{{0, 0}, {649, 2535}}";
sepNavSelRange = "{998, 0}";
- sepNavVisRange = "{212, 1571}";
- sepNavWindowFrame = "{{12, 57}, {725, 821}}";
+ sepNavVisRange = "{866, 150}";
+ sepNavWindowFrame = "{{675, 57}, {725, 821}}";
};
};
245463B80991757100464AD3 /* ToTape6.h */ = {
uiCtxt = {
sepNavIntBoundsRect = "{{0, 0}, {866, 1326}}";
- sepNavSelRange = "{3005, 0}";
+ sepNavSelRange = "{2445, 676}";
sepNavVisRange = "{1784, 1348}";
- sepNavWindowFrame = "{{20, 66}, {799, 812}}";
+ sepNavWindowFrame = "{{659, 66}, {799, 812}}";
};
};
24A2FFDB0F90D1DD003BB5A7 /* audioeffectx.cpp */ = {
@@ -82,10 +87,10 @@
};
24D8286F09A914000093AEF8 /* ToTape6Proc.cpp */ = {
uiCtxt = {
- sepNavIntBoundsRect = "{{0, 0}, {823, 9165}}";
- sepNavSelRange = "{26149, 0}";
- sepNavVisRange = "{24936, 1734}";
- sepNavWindowFrame = "{{5, 65}, {870, 813}}";
+ sepNavIntBoundsRect = "{{0, 0}, {789, 8892}}";
+ sepNavSelRange = "{9145, 0}";
+ sepNavVisRange = "{12581, 204}";
+ sepNavWindowFrame = "{{80, 57}, {870, 813}}";
};
};
8B02375E1D42B1C400E1E8C8 /* Source Control */ = {
@@ -102,6 +107,30 @@
isa = PBXCodeSenseManager;
indexTemplatePath = "";
};
+ 8BA0D9C723E37DB500721922 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 2407DEB6089929BA00EB68BF /* ToTape6.cpp */;
+ name = "ToTape6.cpp: 40";
+ rLen = 0;
+ rLoc = 998;
+ rType = 0;
+ vrLen = 150;
+ vrLoc = 866;
+ };
+ 8BA0D9C823E37DB500721922 /* PBXBookmark */ = {
+ isa = PBXBookmark;
+ fRef = 24D8286F09A914000093AEF8 /* ToTape6Proc.cpp */;
+ };
+ 8BA0D9C923E37DB500721922 /* PBXTextBookmark */ = {
+ isa = PBXTextBookmark;
+ fRef = 24D8286F09A914000093AEF8 /* ToTape6Proc.cpp */;
+ name = "ToTape6Proc.cpp: 207";
+ rLen = 0;
+ rLoc = 9145;
+ rType = 0;
+ vrLen = 204;
+ vrLoc = 12581;
+ };
8D01CCC60486CAD60068D4B7 /* ToTape6 */ = {
activeExec = 0;
};
diff --git a/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.perspectivev3 b/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.perspectivev3
index 4a6beec..cb771bb 100755
--- a/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.perspectivev3
+++ b/plugins/MacVST/ToTape6/ToTape6.xcodeproj/christopherjohnson.perspectivev3
@@ -256,6 +256,8 @@
<key>Layout</key>
<array>
<dict>
+ <key>BecomeActive</key>
+ <true/>
<key>ContentConfiguration</key>
<dict>
<key>PBXBottomSmartGroupGIDs</key>
@@ -298,7 +300,7 @@
<key>PBXSmartGroupTreeModuleOutlineStateSelectionKey</key>
<array>
<array>
- <integer>5</integer>
+ <integer>6</integer>
<integer>4</integer>
<integer>0</integer>
</array>
@@ -321,7 +323,7 @@
<real>185</real>
</array>
<key>RubberWindowFrame</key>
- <string>34 365 810 487 0 0 1440 878 </string>
+ <string>547 205 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>PBXSmartGroupTreeModule</string>
@@ -337,7 +339,7 @@
<key>PBXProjectModuleGUID</key>
<string>8B0237581D42B1C400E1E8C8</string>
<key>PBXProjectModuleLabel</key>
- <string>Gain.h</string>
+ <string>ToTape6Proc.cpp</string>
<key>PBXSplitModuleInNavigatorKey</key>
<dict>
<key>Split0</key>
@@ -345,7 +347,16 @@
<key>PBXProjectModuleGUID</key>
<string>8B0237591D42B1C400E1E8C8</string>
<key>PBXProjectModuleLabel</key>
- <string>Gain.h</string>
+ <string>ToTape6Proc.cpp</string>
+ <key>_historyCapacity</key>
+ <integer>0</integer>
+ <key>bookmark</key>
+ <string>8BA0D9C923E37DB500721922</string>
+ <key>history</key>
+ <array>
+ <string>8BA0D9C723E37DB500721922</string>
+ <string>8BA0D9C823E37DB500721922</string>
+ </array>
</dict>
<key>SplitCount</key>
<string>1</string>
@@ -358,18 +369,18 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{0, 0}, {603, 0}}</string>
+ <string>{{0, 0}, {603, 117}}</string>
<key>RubberWindowFrame</key>
- <string>34 365 810 487 0 0 1440 878 </string>
+ <string>547 205 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>PBXNavigatorGroup</string>
<key>Proportion</key>
- <string>0pt</string>
+ <string>117pt</string>
</dict>
<dict>
<key>Proportion</key>
- <string>441pt</string>
+ <string>324pt</string>
<key>Tabs</key>
<array>
<dict>
@@ -383,7 +394,9 @@
<key>GeometryConfiguration</key>
<dict>
<key>Frame</key>
- <string>{{10, 27}, {603, 414}}</string>
+ <string>{{10, 27}, {603, 297}}</string>
+ <key>RubberWindowFrame</key>
+ <string>547 205 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>XCDetailModule</string>
@@ -438,8 +451,6 @@
<dict>
<key>Frame</key>
<string>{{10, 27}, {603, 414}}</string>
- <key>RubberWindowFrame</key>
- <string>34 365 810 487 0 0 1440 878 </string>
</dict>
<key>Module</key>
<string>PBXBuildResultsModule</string>
@@ -467,11 +478,11 @@
</array>
<key>TableOfContents</key>
<array>
- <string>8B043C0423D5644800DF857C</string>
+ <string>8BA0D9CA23E37DB500721922</string>
<string>1CA23ED40692098700951B8B</string>
- <string>8B043C0523D5644800DF857C</string>
+ <string>8BA0D9CB23E37DB500721922</string>
<string>8B0237581D42B1C400E1E8C8</string>
- <string>8B043C0623D5644800DF857C</string>
+ <string>8BA0D9CC23E37DB500721922</string>
<string>1CA23EDF0692099D00951B8B</string>
<string>1CA23EE00692099D00951B8B</string>
<string>1CA23EE10692099D00951B8B</string>
@@ -624,7 +635,7 @@
<key>StatusbarIsVisible</key>
<true/>
<key>TimeStamp</key>
- <real>601187400.30527699</real>
+ <real>602111413.25124705</real>
<key>ToolbarConfigUserDefaultsMinorVersion</key>
<string>2</string>
<key>ToolbarDisplayMode</key>
@@ -641,11 +652,11 @@
<integer>5</integer>
<key>WindowOrderList</key>
<array>
- <string>8B043C0723D5644800DF857C</string>
- <string>/Users/christopherjohnson/Desktop/ToTape6/ToTape6.xcodeproj</string>
+ <string>8BA0D9CD23E37DB500721922</string>
+ <string>/Users/christopherjohnson/Desktop/Plugins/MacVST/ToTape6/ToTape6.xcodeproj</string>
</array>
<key>WindowString</key>
- <string>34 365 810 487 0 0 1440 878 </string>
+ <string>547 205 810 487 0 0 1440 878 </string>
<key>WindowToolsV3</key>
<array>
<dict>
diff --git a/plugins/MacVST/ToTape6/source/ToTape6Proc.cpp b/plugins/MacVST/ToTape6/source/ToTape6Proc.cpp
index 6140295..1b4ff7d 100755
--- a/plugins/MacVST/ToTape6/source/ToTape6Proc.cpp
+++ b/plugins/MacVST/ToTape6/source/ToTape6Proc.cpp
@@ -61,6 +61,11 @@ void ToTape6::processReplacing(float **inputs, float **outputs, VstInt32 sampleF
long double drySampleL = inputSampleL;
long double drySampleR = inputSampleR;
+ if (inputgain < 1.0) {
+ inputSampleL *= inputgain;
+ inputSampleR *= inputgain;
+ } //gain cut before plugin
+
double flutterrandy = fpd / (double)UINT32_MAX;
//now we've got a random flutter, so we're messing with the pitch before tape effects go on
if (gcount < 0 || gcount > 499) {gcount = 499;}
@@ -199,7 +204,7 @@ void ToTape6::processReplacing(float **inputs, float **outputs, VstInt32 sampleF
long double groundSampleL = vibDrySampleL - inputSampleL; //set up UnBox on fluttered audio
long double groundSampleR = vibDrySampleR - inputSampleR; //set up UnBox on fluttered audio
- if (inputgain != 1.0) {
+ if (inputgain > 1.0) {
inputSampleL *= inputgain;
inputSampleR *= inputgain;
}
@@ -217,16 +222,20 @@ void ToTape6::processReplacing(float **inputs, float **outputs, VstInt32 sampleF
if (HighsSampleR < 0) inputSampleR += applySoften;
//apply Soften depending on polarity
- if (fabs(inputSampleL) < 0.0025) {
- iirHeadBumpAL *= 0.99;
- iirHeadBumpBL *= 0.99;
- } //restrain resonant quality of head bump algorithm
+ double suppress = (1.0-fabs(inputSampleL)) * 0.00013;
+ if (iirHeadBumpAL > suppress) iirHeadBumpAL -= suppress;
+ if (iirHeadBumpAL < -suppress) iirHeadBumpAL += suppress;
+ if (iirHeadBumpBL > suppress) iirHeadBumpBL -= suppress;
+ if (iirHeadBumpBL < -suppress) iirHeadBumpBL += suppress;
+ //restrain resonant quality of head bump algorithm
+ suppress = (1.0-fabs(inputSampleR)) * 0.00013;
+ if (iirHeadBumpAR > suppress) iirHeadBumpAR -= suppress;
+ if (iirHeadBumpAR < -suppress) iirHeadBumpAR += suppress;
+ if (iirHeadBumpBR > suppress) iirHeadBumpBR -= suppress;
+ if (iirHeadBumpBR < -suppress) iirHeadBumpBR += suppress;
+ //restrain resonant quality of head bump algorithm
+
inputSampleL += ((iirHeadBumpAL + iirHeadBumpBL) * HeadBumpControl);
- //apply Fatten.
- if (fabs(inputSampleR) < 0.0025) {
- iirHeadBumpAR *= 0.99;
- iirHeadBumpBR *= 0.99;
- } //restrain resonant quality of head bump algorithm
inputSampleR += ((iirHeadBumpAR + iirHeadBumpBR) * HeadBumpControl);
//apply Fatten.
@@ -386,6 +395,11 @@ void ToTape6::processDoubleReplacing(double **inputs, double **outputs, VstInt32
long double drySampleL = inputSampleL;
long double drySampleR = inputSampleR;
+ if (inputgain < 1.0) {
+ inputSampleL *= inputgain;
+ inputSampleR *= inputgain;
+ } //gain cut before plugin
+
double flutterrandy = fpd / (double)UINT32_MAX;
//now we've got a random flutter, so we're messing with the pitch before tape effects go on
if (gcount < 0 || gcount > 499) {gcount = 499;}
@@ -524,7 +538,7 @@ void ToTape6::processDoubleReplacing(double **inputs, double **outputs, VstInt32
long double groundSampleL = vibDrySampleL - inputSampleL; //set up UnBox on fluttered audio
long double groundSampleR = vibDrySampleR - inputSampleR; //set up UnBox on fluttered audio
- if (inputgain != 1.0) {
+ if (inputgain > 1.0) {
inputSampleL *= inputgain;
inputSampleR *= inputgain;
}
@@ -542,16 +556,20 @@ void ToTape6::processDoubleReplacing(double **inputs, double **outputs, VstInt32
if (HighsSampleR < 0) inputSampleR += applySoften;
//apply Soften depending on polarity
- if (fabs(inputSampleL) < 0.0025) {
- iirHeadBumpAL *= 0.99;
- iirHeadBumpBL *= 0.99;
- } //restrain resonant quality of head bump algorithm
+ double suppress = (1.0-fabs(inputSampleL)) * 0.00013;
+ if (iirHeadBumpAL > suppress) iirHeadBumpAL -= suppress;
+ if (iirHeadBumpAL < -suppress) iirHeadBumpAL += suppress;
+ if (iirHeadBumpBL > suppress) iirHeadBumpBL -= suppress;
+ if (iirHeadBumpBL < -suppress) iirHeadBumpBL += suppress;
+ //restrain resonant quality of head bump algorithm
+ suppress = (1.0-fabs(inputSampleR)) * 0.00013;
+ if (iirHeadBumpAR > suppress) iirHeadBumpAR -= suppress;
+ if (iirHeadBumpAR < -suppress) iirHeadBumpAR += suppress;
+ if (iirHeadBumpBR > suppress) iirHeadBumpBR -= suppress;
+ if (iirHeadBumpBR < -suppress) iirHeadBumpBR += suppress;
+ //restrain resonant quality of head bump algorithm
+
inputSampleL += ((iirHeadBumpAL + iirHeadBumpBL) * HeadBumpControl);
- //apply Fatten.
- if (fabs(inputSampleR) < 0.0025) {
- iirHeadBumpAR *= 0.99;
- iirHeadBumpBR *= 0.99;
- } //restrain resonant quality of head bump algorithm
inputSampleR += ((iirHeadBumpAR + iirHeadBumpBR) * HeadBumpControl);
//apply Fatten.