Skip to content

Feat/lofi engine refinement - #12

Merged
trsctr merged 12 commits into
devfrom
feat/lofi-engine-refinement
May 28, 2026
Merged

trsctr merged 12 commits into
devfrom
feat/lofi-engine-refinement

Conversation

@trsctr

@trsctr trsctr commented May 28, 2026

Copy link
Copy Markdown
Owner

Added

  • Stereo noise gate with separate attack/release times and GUI toggle
  • Dampen parameter replacing bit depth control
  • Highpass and lowpass filters to LofiEngine
  • Cutoff overload to StereoFilter for setting both channels at once

Changed

  • Bit depth locked to 8
  • LofiSampleRate renamed to ResampleFreq throughout
  • LofiEngine sample rate range and knob skew fine-tuned

Fixed

  • Effect control visibility repaint bug

@trsctr
trsctr merged commit 2c7ba12 into dev May 28, 2026
3 checks passed
@trsctr
trsctr deleted the feat/lofi-engine-refinement branch May 29, 2026 13:09
trsctr added a commit that referenced this pull request Jun 10, 2026
* Feat: Lofi effect (#10)

* add bitcrusher class w downsampling function definition and declarations for other features

* add bit reduction to bitcrusher

* refactor BitCrusher class to a dsp primitive to be used by LofiEngine class

* use round instead of trunc in bit reduction to avoid feedback self oscillation due to dc offset

* add and implement lofiengine class, add lofi control parameters

* change bitcrusher processing order: first downsample, then bitreduce

* fix copypaste fail in LofiEngine.h, update changelog

* fix max samplerate parameter typo, make bitreduce and downsample functions private, remove samplersperblock param from lofiengine prepare function

* Feat/effect selector (#11)

* create InsertEffect base class with virtual functions, derive ChorusEngine and LofiEngine from that class, clean up code and fix signature mismatches

* implement inserteffectselector, define effect type enums, wire selector to delayengine

* add effecttype param, add effect type change to processblock

* add effect selector to gui

* select insert effect with switch for safety, remove unused param

* fix bug in updateEffectControls, name all insert effect related variabbles as insertEffectEtc

* update changelog

* Feat/lofi engine refinement (#12)

* finetune lofi engine sample rate range, skew knob, add fractional bit depth control

* lofiengine: lock bit depth to 8, add hp and lp filters

* stereofilter: add setcutoff function overload for setting both channels cutoff at once

* lofiengine: remove bit depth control, replace with dampen param

* fix effect control visibility on repaint bug

* remove rest of unused bit depth variables from Parameters.h, rename lofisamplerate to lofiresamplefreq

* use resampleFreq param in lofiengine

* lofiengine: rename downsamplerate to resamplefreq

* lofiengine: add stereo noise to signal above threshold with smooth fade in/out

* add toggle for noise/on off, separate release and attack times for gate

* add lofi noise button to gui

* update changelog

* fix: delay time offset bug

snap delay time to target after onepole lp smoothing if difference between them is below .01f

* update changelog

* Feat/kill button (#14)

* add feedback kill functionality, triggered from gui or from daw with 2 stop signals

* chore: version 0.3.0-beta.1

* remove DAW transport kill trigger that caused inconsistent behaviour across DAWs

* chore: version 0.3.0-beta.2

* update changelog

* chore: version 0.3.0
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant