From 34caf19fddc5ee5e1f4093fa1cced52266374c8b Mon Sep 17 00:00:00 2001 From: annieversary Date: Sat, 17 Dec 2022 02:53:00 +0100 Subject: [PATCH] add alternate option --- crates/dctortion/src/lib.rs | 17 ++++++++++++++--- 1 file changed, 14 insertions(+), 3 deletions(-) diff --git a/crates/dctortion/src/lib.rs b/crates/dctortion/src/lib.rs index b895dce..681a3de 100644 --- a/crates/dctortion/src/lib.rs +++ b/crates/dctortion/src/lib.rs @@ -10,12 +10,18 @@ baseplug::model! { #[model(min = 0.0, max = 1.0)] #[parameter(name = "offset")] offset: f32, + #[model(min = 0.0, max = 1.0)] + #[parameter(name = "alternate")] + alternate: f32, } } impl Default for GainModel { fn default() -> Self { - Self { offset: 0.0 } + Self { + offset: 0.0, + alternate: 0.0, + } } } @@ -42,8 +48,13 @@ impl Plugin for Gain { let output = &mut ctx.outputs[0].buffers; for i in 0..ctx.nframes { - output[0][i] = input[0][i] + model.offset[i]; - output[1][i] = input[1][i] - model.offset[i]; + if model.alternate[i] < 0.5 { + output[0][i] = input[0][i] + model.offset[i]; + output[1][i] = input[1][i] - model.offset[i]; + } else { + output[0][i] = input[0][i] - model.offset[i]; + output[1][i] = input[1][i] + model.offset[i]; + } } } }