Skip to content

Commit 7aea7b4

Browse files
authored
Release Bassducker v1.0 (#449)
1 parent b1c675d commit 7aea7b4

1 file changed

Lines changed: 67 additions & 0 deletions

File tree

Lines changed: 67 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,67 @@
1+
desc: Bassducker
2+
author: VISΛGE
3+
version: 1.0
4+
about:
5+
# Bassducker
6+
7+
Smarted ringmod sidechain and clip delta designed to make way for your bass. Just send it to channels 3 and 4 and dial anything you might need to.
8+
9+
// Copyright © 2026 VISΛGE
10+
//
11+
// Permission is hereby granted, free of charge, to any person obtaining
12+
// a copy of this software and associated documentation files (the “Software”),
13+
// to deal in the Software without restriction, including without limitation
14+
// the rights to use, copy, modify, merge, publish, distribute, sublicense,
15+
// and/or sell copies of the Software, and to permit persons to whom the Software
16+
// is furnished to do so, subject to the following conditions:
17+
//
18+
// The above copyright notice and this permission notice shall be included in
19+
// all copies or substantial portions of the Software.
20+
//
21+
// THE SOFTWARE IS PROVIDED “AS IS”, WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
22+
// IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
23+
// FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
24+
// AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
25+
// WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
26+
// CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
27+
28+
slider1:rm_int=0<0,1>AM Intensity (0-1)
29+
slider2:clip_int=0<0,1>Clip Intensity (0-1)
30+
slider3:in_gain=0<0,36>In Gain (dB)
31+
slider4:sc_gain=0<0,36>SC Gain (dB)
32+
33+
in_pin:Left
34+
in_pin:Right
35+
in_pin:Left SC
36+
in_pin:Right SC
37+
out_pin:Left
38+
out_pin:Right
39+
40+
@init
41+
42+
@slider
43+
in_mult = pow(10, (in_gain/20));
44+
sc_mult = pow(10, (sc_gain/20));
45+
46+
47+
@block
48+
49+
@sample
50+
spl0 *= in_mult; spl1 *= in_mult;
51+
spl2 *= sc_mult; spl3 *= sc_mult;
52+
53+
abs(spl0) > 1 ? spl0 = sign(spl0);
54+
abs(spl1) > 1 ? spl1 = sign(spl1);
55+
abs(spl2) > 1 ? spl2 = sign(spl2);
56+
abs(spl3) > 1 ? spl3 = sign(spl3);
57+
58+
spl0 = spl0 * (1 - (abs(spl2) * rm_int));
59+
spl1 = spl1 * (1 - (abs(spl3) * rm_int));
60+
61+
clip_inL = spl0 + (spl2 * clip_int); clip_inR = spl1 + (spl3 * clip_int);
62+
63+
abs(clip_inL) > 1 ? clip_inL = sign(clip_inL);
64+
abs(clip_inR) > 1 ? clip_inR = sign(clip_inR);
65+
66+
spl0 = clip_inL - (spl2 * clip_int);
67+
spl1 = clip_inR - (spl3 * clip_int);

0 commit comments

Comments
 (0)