Skip to content

AudioNoise

Linus Torvalds learning digital audio DSP by writing guitar effects — with the Python visualiser vibe-coded.

Screenshot of AudioNoise
Editor screenshot, 28 Sep 2026AudioNoise ↗

What it is

A set of digital guitar effects written in C to learn DSP: IIR filters and delay loops, one sample in and one sample out, no FFT tricks. It grew out of the hardware pedal project and is explicitly a toy. The one part not written by hand is the Python sample visualiser, which the author says was “basically written by vibe-coding” using Google Antigravity.

Who built itCreator and lead developer of the Linux kernel since 1991, and the author of Git; he works for the Linux Foundation. AudioNoise is the second of his learning projects in a row — GuitarPedal, from 2025, is described in its own repository as “Linus learns analog circuits”, and this one takes the digital half. In a field where he calls himself a newbie, he also says plainly which part he let an AI write.

Build log

6 stages
  1. 01

    A side project off the pedal

    AudioNoise exists because the hardware project stalled. The RP2354 and TAC5112-based digital pedal works — the author is unhappy with some analog interface choices, particularly the pots, and has grown to dislike the clicky footswitch despite valuing it as a boot selector. With that design set aside “while I ponder the mysteries of life and physical user interfaces”, the digital side carried on separately, on the reasoning that since it is all digital it can be simulated without worrying about the hardware.

  2. 02

    Deliberately a toy, deliberately simple

    The README is unusually direct about what this is: “toy effects that you shouldn’t take seriously”, with the stated design goal being to learn digital audio processing basics — the same way the pedal was about learning the hardware side. The author describes himself as a newbie here. There is no FFT-based vocoding, just IIR filters and basic delay loops, and the whole thing keeps a single-sample-in, single-sample-out path with no latency.

  3. 03

    The effects

    The audio directory holds thirteen C headers: biquad, boost, compressor, echo, effect, eq, flanger, lfo, phaser, pitch, process, usb and util. Effects were added over the first months of 2026 — distortion and overdrive with clipping modes and tone control, a noise gate, amplitude modulation and a flanger in January; a random tube model, growlingbass and a chasing-tone effect by late February. Two small test programs verify the LFO sine wave and the fastsincos routine.

  4. 04

    Not the AI kind of pedal

    One thing the filters pointedly are not: the modern “emulate a cabinet” style of processing. The phaser emulates an analog circuit by modelling the effect of an RC network with a digital all-pass filter, not by learning anything. The author frames this as a limit of his own experience rather than a philosophy — he had not done any of this before, so it stayed basic.

  5. 05

    The visualiser is vibe-coded, and he says so

    The Python tool that plots audio samples is the exception to the hand-written rule, described in the README in the author’s own words: it started as the usual “google and do the monkey-see-monkey-do” approach, then he “cut out the middle-man — me — and just used Google Antigravity to do the audio sample visualizer”. The reason given is candid: he knows more about analog filters than about Python, and that is not saying much. Commits through mid-January show the visualiser being refactored, optimised for large datasets and switched to raw int32 data.

  6. 06

    Where it stands

    Forty-seven commits between 9 January and 7 May 2026, forty-five of them by Linus Torvalds, the rest one commit each from two outside contributors. The last change was an effect interface update on 7 May 2026; the repository is GPL-2.0 and had 4,504 stars at the end of September 2026. Work on the pedal hardware picked up again in the meantime — GuitarPedal was still being pushed to in late September 2026.

Adjacent records

All records →