-
Notifications
You must be signed in to change notification settings - Fork 3
Description
This entire issue is dedicated to overhauling instrument effects and adding many more new ones. All previous issues related to effects have been merged into this massive compilation of feature ideas.
Making Old Effects New
Transition Types
- Slide Speed (Strum/Slide Speed (Planned Changes) #7)
A slider that controls how fast the "slide" transition is. - Slide Types (New Transition Types/Options #98)
A select box that changes how the "slide" transition slides to the next note. This allows slides to be done linearly (default), smoothly, pre/post-note, or overshot. - In Pattern
A checkbox that toggles whether seamless transitions are cut off at the end of a pattern. - Perpetuate (New Transition Types/Options #98)
A checkbox for the continue transition that toggles whether it ignores the spaces between notes. - Discrete Slide
A checkbox that toggles whether the "slide" transition is discrete, changing pitch in steps rather than in a smooth line. Accompanied by a quantizing slider.
Desmos Link
Chord Types
- Strum Speed (Strum/Slide Speed (Planned Changes) #7)
A slider that controls how fast the progression of a "strummed" chord is. - Arpeggio Patterns
A select box that allows different arpeggio formations to be used. - Strum Curvature
A slider that adjusts the curve in time it takes for the next note of a strummed chord to play. - Monotonous Chord Type
A new chord type that comes with an input box. This chord type makes the instrument only play one note of the chord, of which the note played in the chord corresponds to the note index which is changed through the input box. If a chord does not go up to that note index the instrument will not play any sound during that chord.
Panning
- Panning Modes (TheepBox Port)
A select box that changes the distribution of the left and right audio channels. Includes a mono mode that converts the instrument into mono audio before applying panning.
Pitch Shift, Detune and Vibrato (Pitch/Transpose Effect)
- Effect Combination
These three effects have similar purposes, all of which involve transposing the instrument by an interval whether stable or modulated. As such, they can all be combined into one pitch-centric effect. - Discrete Vibrato
A checkbox that toggles whether the vibrato is discrete, changing pitch in steps rather than in a smooth oscillator. Accompanied by a quantizing slider.
Desmos Link - New Ranges
Pitch Shift: From -12 to 12 semitones to -24 to 24 semitones (25 -> 49 values).
Detune: From -600 to 600 cents to -100 to 100 cents (1201 -> 201 values). - Lower Detune Intervals
The detune slider will change in intervals of 2 instead of 4, and the input box will change the detune by intervals of 0.01 cents (ten thousandths of a semitone). - Vibrato Speed Envelope
Envelope target for vibrato speed.
Note Filter
- More Points
From 8 to 12. - Note Filter Gain Envelope
Envelope target for changing the Y-position of note filter frequency points. Comes with a separate "N. Filter # Gain" envelope target for individual points.
Distortion (General Distortion Effect)
- Distortion Types
A select box containing different variations of distortion that provide different sounds:
Classic - Normal BeepBox distortion.
Electric - Sounds sharper and rich harmonically, good for electronic synths or guitars.
Saturation - A complex distortion that uses a filter and distorter to add more harmonics and emphasize tonic ones.
Shatter - Sounds like a chainsaw, using a filter, wavefolding, heavy dirty distortion, and rapid volume changes. Comes with a second slider- the first slider controls the distortion and wavefolding, and the second slider controls the filter and volume intensity.
Bass Boost - A deep distorter layered with a low-end filter to boost bass frequencies in an instrument.
Clipper - A form of distortion that instead clips off the instrument's waveform when it becomes too loud at a point. Comes with a second slider for sharpness. - Aliasing on All Instrument Types (Unison/Aliasing/Custom Interval Chord Type Compatibility on All Instruments #10)
Adding aliasing support to all instrument types.
Bitcrusher
- Freq Crush Key Toggle (Bitcrusher changing upon song key #16)
A checkbox that toggles whether freqcrusher changes from the song key. - Bitcrusher Types
A select box containing different variations of bitcrush that provide different sounds:
BeepBox - Standard BeepBox bitdepth + wavefolding.
Classic - BeepBox bitdepth without wavefolding.
DPCM - Bitdepth from old DPCM sampling.
Noisemaker - Quantizes the instrument while adding quiet static and popping sounds.
Chorus
- More Controls (Supersaw dynamism and spread in the chorus effect? #17)
More sliders/knobs that adjust certain parameters of the chorus.
Echo
- Modulatable Echo Delay
Allows echo delay to change over time with envelopes and modulators. - Echo Delay Input Box
Changes how echo delay is stored and can be finetuned with an input box. - Echo Sustain Percentage Text
Some small text that says the percentage of echo sustain that is left off per echo iteration.
Reverb
- Custom Reverb (Reverb types #19)
A select box/checkbox that can swap between the default reverb and a custom reverb which uses a new reverb base and is adjustable through many parameters, such as wet and dry gain, stereo length, depth, muddiness/frequency range, duration, cutoff, reverse reverberation, etc.
General Effect Additions
Chord-Note Separation Toggle (#15)
A checkbox that toggles whether each note is processed separately for effects.
- Checkbox implementation.
Stereo Support for General Synth
Allows for a few things, such as: Panning possibly becoming a general setting outside of effects, instrument types being able to use stereo-based controls by default, stereo unisons (mentioned later), and stereo samples when samples are ported. This is mostly a code-side tweak but brings possibilities for many new unique features that will not require effects.
- Stereo support implementation.
Unison Improvements
Although unison is not an effect, it will be given effect-like capabilities in this overhaul; Including more voices, phase/panning separation, and more.
- More unison voices, up to 11/16/21. Ported from Slarmoo's Box. (Up unison voice amount to 4 or more. #87)
- Unison voice volume balancing toggle next to voice amount.
- Stereo unisons, done through an extra setting for how much each unison voice is equally distributed in the stereo range.
- Unisons on all instrument types. (Unison/Aliasing/Custom Interval Chord Type Compatibility on All Instruments #10)
- Unison phase control setting that additively shifts the starting point of every unison voice's waveform.
- Separating the unison envelope into spread and offset envelopes, as well as generally adding envelopes and modulators for all unison settings.
Effect Readding and Reordering (#42)
The ability to reorder and have multiple of the same kind of effects, ported from TheepBox.
- Reordering effects port.
- Multiple same-type-effects port.
New Effects
Waveshaper
A waveshaping effect that takes the waveform of the instrument and passes it through another waveform used as a function. This kind of distortion is a counterpart to general distortion, except more focused on reforming the wave and less practical for use like in standard distortion.
- Has a slider that adjusts how much waveshaping is on the instrument through increasing the frequency of the waveshaper waveform.
- Has a select box that offers different waveshaping modes, such as a wavefolding that uses a sine wave or wavewrapping which uses a sawtooth.
- Envelope and modulator for waveshape amount setting.
Timeline
A rolling buffer effect that works better with modulation which allows the user to playback the instrument's sound over the timespan of a bar. This can create many effects, such as stuttering, slowing down/up playback, and tape stops.
- Time slider, with the corresponding modulator and envelope for its main functionality.
Phaser (AbyssBox)
A port of the AbyssBox phaser effect which uses layers of all-pass filters to phase shift frequency ranges of the instrument, which comes with four settings that control the amplitude, frequency range, layer/stage amount, and feedback of the phaser, giving it the unique mystical sound it's named after. Midbox adds an extra setting to control the length between these all-pass filters, a toggle to flip the phaser output, and remodels the UI to look cleaner and more descriptive.
- AB phaser effect port.
- UI remodeling.
- Frequency range knob.
- Phaser flip toggle.
- Envelope and modulator for the frequency range setting.
Ring Mod (AbyssBox)
A port of the AbyssBox ring modulation effect which multiplies the volume of an instrument by a specified waveform with a specified constant frequency in the -1 to 1 range. Comes with three sliders and an input box which respectively change the intensity of the ring modulation, the rough frequency in hertz that the ring modulation waveform plays at, a frequency offset for more specific hertz values, and what ring modulation waveform is used (based off of the FM operator waveform list, with an additional slider for the pulse width waveform). Midbox adds a couple of unique features to ring modulation, such as a toggle between ring modulation and amplitude modulation (ring mod but in the 0 to 1 range, meaning no inversions), and another toggle that syncs the ring modulation waveform's frequency to that of the instrument's and uses the hertz settings as multipliers instead of set numbers.
- AB ring mod effect port.
- Has a toggle that swaps between RM and AM.
- Has a toggle that locks the ring mod wave's frequency to the instrument's frequency based on vertical note positions.
- Has a toggle that flips the ring modulation, where it uses the instrument's waveform to modulate basic waveforms.
Stereo Widener
An effect which uses multiple specifiable methods to separate the instrument's left and right channel audio, making it sound wider in the stereo sound range, hence the name. This effect comes with a slider for widening intensity as well as a select box for selecting the stereo method.
- Has a slider for widening the stereo based on the selected stereo method.
- Has a select box for selecting the stereo method between the following options:
Phase/Delay - Changes the phase or delays the time in which one of the audio channels play. The slider controls how much phase/delay is applied to the audio channel.
Inversion - Inverts one of the audio channels. The slider controls the state of inversion and distance in panning the two channels.
Pitch - Adds dips and peaks that are substituted and balanced between both audio channels. The slider controls the distance in panning from the two channels as well as the amount, range, and/or width of these frequency differences. - Envelope and modulator for the stereo widening setting.
Flanger (AbyssBox/TheepBox)
A probable port of the AbyssBox/TheepBox flanger effect which duplicates the instrument signal whilst adding a very short modulatable delay to the duplicated signal to create a "flanging" wooshy sound, and thus named after this sound. Comes with three sliders; one for delay time, another for wet/dry mixing of the effect, and the last for feedback. Midbox shortens the UI into knobs.
- AB/TB flanger effect port.
- UI remodeling.
Compressor
The multiband compressor is an effect that applies multiple compressor effects to different parts of an instrument frequency spectrum in "bands". This effect has two modes: a simple single-band mode with one in-depth compressor that applies to the entire instrument, and a complex multi-band mode that sits within its own prompt where the user can edit each band and the compressor they use.

(subject to change)
The design is inspired off of compressor plugins, hence the complex compressor looks like a plugin. The adjustable parameters are the same as any other standard compressor- transients between compressing, compression intensity, lookahead, etc.