public override void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { base.ApplyToDsp(effect, qnDur, alpha); if (effect is TapeStop ts) { ts.Duration = Duration.Sample(alpha); } }
public override void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { base.ApplyToDsp(effect, qnDur, alpha); if (effect is Wobble wobble) { wobble.SetPeriod(Period.Sample(alpha) * qnDur.Seconds * 4); } }
public override void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { base.ApplyToDsp(effect, qnDur, alpha); if (effect is SideChain sc) { sc.Amount = Amount.Sample(alpha); sc.Duration = Duration.Sample(alpha) * qnDur.Seconds * 4; } }
public override void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { base.ApplyToDsp(effect, qnDur, alpha); if (effect is Gate gate) { gate.SetGating(Gating.Sample(alpha)); gate.SetGateDuration(GateDuration.Sample(alpha) * qnDur.Seconds * 4); } }
public override void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { base.ApplyToDsp(effect, qnDur, alpha); if (effect is Flanger flanger) { flanger.SetDelay(Delay.Sample(alpha)); flanger.SetDelayRange(Offset.Sample(alpha), Depth.Sample(alpha)); } }
public override void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { base.ApplyToDsp(effect, qnDur, alpha); if (effect is Retrigger retrigger) { retrigger.Mix = Mix.Sample(alpha); retrigger.Gating = Gating.Sample(alpha); retrigger.Duration = GateDuration.Sample(alpha) * qnDur.Seconds * 4; } }
public override void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { base.ApplyToDsp(effect, qnDur, alpha); if (effect is BiQuadFilter filter) { switch (FilterType) { case FilterType.Peak: filter.SetPeaking(Q.Sample(alpha), Freq.Sample(alpha), Gain.Sample(alpha)); break; case FilterType.LowPass: filter.SetLowPass(Q.Sample(alpha) * Mix.Sample(alpha) + 0.1f, Freq.Sample(alpha)); break; case FilterType.HighPass: filter.SetHighPass(Q.Sample(alpha) * Mix.Sample(alpha) + 0.1f, Freq.Sample(alpha)); break; } } }
public virtual void ApplyToDsp(Dsp effect, time_t qnDur, float alpha = 0) { effect.Mix = Mix.Sample(alpha); }