Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions docs/conf.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""Sphinx configuration for the audioeffects documentation.

Everything shared by the PyDevices documentation projects (theme, top bar,
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/__init__.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""Forty-five effect classes built out of audiodsp's audio nodes.

Every class wires itself from an audio source - a synthesizer, an
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/_component.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""The construction shape every rebuilt effect class is built on.

It replaced `_core.py`, the pre-contract shape, in which a module-level
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/_iso.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""ISO centre frequencies, kept as a shared private constant.

The old family GraphicEQ walked these ten centres. The rebuilt GraphicEQ
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/airspace.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`AirSpace` - a tape echo sent into a chamber, with the dry beside it.

You send your signal to a tape echo whose repeats feed an echo chamber, and
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/analogdelay.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`AnalogDelay` - a bucket-brigade delay whose Time knob is its clock.

The player's text is the class docstring, and every sentence in it that
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/autopan.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`AutoPan` - an auto-panner: a pan law under an LFO.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/bandpass.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`BandPass` - the two-pole resonant band-pass, rebuilt on `audiobiquad`.

The player's text is the class docstring; the `CLAIMS` table in the
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/bitcrusher.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Bitcrusher` — a linear hold, the SP-1200's two numbers as knobs.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/cabinetsim.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`CabinetSim` - a designed guitar-cabinet response, two characters.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/chorus.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Chorus` - one delayed voice on a clock-modulated bucket-brigade line.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/combfilter.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`CombFilter` - a delay line short enough to be a pitch, fed back on
itself.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/compressor.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Compressor` - compressor characters on a shared palette.

The player's text is the class docstring; the `CLAIMS` table in the
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/convolutionreverb.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`ConvolutionReverb` - a room made by convolution, synthesized or loaded.

The player's text is the class docstring, and every sentence in it that
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/deesser.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""The dbx 902 de-esser: sibilance measured against the programme, not
against a threshold knob.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/digitaldelay.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`DigitalDelay` - a clean digital delay with the Boss DD-2's control law.

Your dry signal passes untouched, and one clean repeat follows it, fed back
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/distortion.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Distortion` - the ProCo Rat, with a Boss pedal as a second character.

The player's text is the class docstring; the `CLAIMS` table in the
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/dynamiceq.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`DynamicEQ` - one equaliser band that only moves when there is
something in it.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/exciter.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Exciter` - dry plus a high-passed harmonic branch.

The player's text is the class docstring; the `CLAIMS` table in the
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/expander.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Expander` - a downward expander in the Drawmer DS201's shape.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/flanger.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Flanger` - a swept comb on CircuitPython's own `audiodelays.Flanger`.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/fuzz.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Fuzz` - a biased germanium pair, with a Big Muff cascade as a second character.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/graphiceq.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`GraphicEQ` - ten octave bands and two level sliders, after the MXR
M-108 Ten Band.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/harmonizer.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Harmonizer` - a harmony of pitch-shifted voices.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/highpass.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`HighPass` - the low-cut: a two-pole analog high-pass whose transmission
zero at DC is exact, not nearly.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/ladderfilter.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`LadderFilter` - the Moog transistor ladder, rebuilt on `audioladder`.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/limiter.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""A lookahead brickwall limiter: a ceiling the signal does not get past.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/lowpass.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`LowPass` - the two-pole analog prototype every synth and console
low-pass is a version of, digitised without losing its tail.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/multibandcompressor.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`MultibandCompressor` - split-band compression, two or three bands.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/multitapdelay.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`MultiTapDelay` - one recording read by several heads on a fixed grid.

The player's text is the class docstring, and every sentence in it that
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/noisegate.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`NoiseGate` - a noise gate after the Drawmer DS201.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/notch.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Notch` - the two-pole band-stop: everything except one band, tuned.

The player's text is the class docstring; the `CLAIMS` table in the
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/octaver.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Octaver` - the analog octave-down.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/overdrive.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Overdrive` - a Tube Screamer-shaped boost: dry plus a clipped shelf.

The player's text is the class docstring; the `CLAIMS` table in the
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/parametriceq.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`ParametricEQ` - the Pultec EQP-1A's two low networks and its resonant
top, with three API 550A proportional-Q bells in the middle.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/phaser.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Phaser` - four first-order all-pass stages swept the way a Phase 90 is.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/pingpongdelay.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`PingPongDelay` - repeats that alternate between the speakers.

The player's text is the class docstring, and every sentence in it that
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/pitchshifter.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`PitchShifter` - a fixed-interval splice pitch shifter.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/rack.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Rack` - a serial chain of effects, as a single effect.

The player's text is the class docstring, and the sentences in it that make
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/reverb.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Reverb` - Dattorro's plate network, cut four ways: a plate, a room, a
chamber and a hall.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/ringmod.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`RingMod` - Bode multiplier-type ring, with a switching character.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/saturation.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Saturation` - a tube stage, a tape chain, or transformer iron.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/shimmerhall.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`ShimmerHall` - a hall that rings an octave above what you play.

You play into a hall, and a pitch shifter beside it makes the tail ring at
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/slapbackdelay.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`SlapbackDelay` - one tape repeat after the dry, in mono: the Sun Studio slap.

The player's text is the class docstring, and every sentence in it that
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/stereowidener.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`StereoWidener` - a stereo widener with Haas and Mid/Side characters.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/tapedelay.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`TapeDelay` - a tape echo with two transports: the Roland RE-201's motor
and the Maestro EP-3's sliding head.

Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/transientshaper.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`TransientShaper` - transient shaping in the SPL Transient Designer's shape.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/tremolo.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Tremolo` — Fender bias-vary and optical characters on one Multiply.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions lib/audioeffects/vibrato.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""`Vibrato` - a clock-modulated bucket-brigade line, wet alone.

The player's text is the class docstring; the `CLAIMS` table in the class's
Expand Down
4 changes: 4 additions & 0 deletions manifest.py
Original file line number Diff line number Diff line change
@@ -1,3 +1,7 @@
# SPDX-FileCopyrightText: 2026 Brad Barnett
#
# SPDX-License-Identifier: MIT

"""Freeze audioeffects into a MicroPython firmware.

A firmware build that names audioeffects takes this file.
Expand Down
Loading
Loading