AudioNoise README

The project's README from github.com/torvalds/AudioNoise. As one markdown file: README.md.

The digital RP2354 and TAC5112-based guitar pedal actually does work, even if I'm not thrilled about some of my analog interface choices (ie the pots in particular, and I'm growing to hate the clicky footswitch even if I do love how it also doubles as a boot selector switch for programming).

But while the hardware design is archived while I ponder the mysteries of life and physical user interfaces, I'm still looking at the digital effects on the side. But right now purely in a "since it's all digital, let's simulate it and not worry about the hardware so much".

These are -- like the analog circuits that started my journey -- toy effects that you shouldn't take seriously. The main design goal has been to learn about digital audio processing basics. Exactly like the guitar pedal was about learning about the hardware side.

So no fancy FFT-based vocoders or anything like that, just IIR filters and basic delay loops. Everything is "single sample in, single sample out with no latency". The sample may be stored in a delay loop to be looked up later (for eacho effects), but it's not doing any real processing.

I was happy with how the TAC5112 had sub-ms latencies for feeding through the ADC->DAC chain, and this is meant to continue exactly that kind of thing. Plus it's not like I've done any of this before, so it's all very basic and simple just by virtue of me being a newbie.

Put another way: the IIR filters aren't the fancy AI "emulate a cab" kind of a modern pedal or guitar amp. No, while they do emulate analog circuits like a phaser, they do so by emulating the effects of a RC network with just a digital all-pass filter, not by doing anything actually clever.

Also note that the python visualizer tool has been basically written by vibe-coding. I know more about analog filters -- and that's not saying much -- than I do about python. It started out as my typical "google and do the monkey-see-monkey-do" kind of programming, but then I cut out the middle-man -- me -- and just used Google Antigravity to do the audio sample visualizer.

AudioNoise (torvalds/AudioNoise)

Searching Database…

Что это?AudioNoise — небольшая игривая коллекция симуляций цифровых аудиоэффектов (всепропускающие фильтры в духе фейзера, эхо на задержках и т.п.), написанная на C Линусом Торвальдсом как сайд-проект для освоения основ цифровой обработки сигналов и изначально связанная с его самодельной гитарной педалью.
Это настоящий код железа гитарной педали или просто программный симулятор?Это чисто программная симуляция эффектов; проект физического железа гитарной педали на RP2354/TAC5112 — отдельная, сейчас заархивированная работа, а этот репозиторий просто сам по себе моделирует ту же цифровую обработку.
Как собрать и запустить эффекты?В репозитории есть Makefile, так что сборка выполняется командой 'make'; сверх этого README не описывает конкретных шагов использования.
Нужно ли что-то помимо компилятора C, чтобы это попробовать?C-тулчейна и make достаточно для сборки самого кода эффектов; есть ещё отдельный инструмент-визуализатор на Python для просмотра аудиосэмплов.
Похожи ли они на современные эффекты вроде ампсимов или эмуляции кабинетов?Нет — это намеренно простые игрушечные эффекты только на IIR-фильтрах и базовых петлях задержки без дополнительной задержки, а не навороченная обработка на FFT и не моделирование ампов/кабинетов в стиле ИИ; автор прямо говорит не воспринимать их всерьёз.
Зачем делать цифровые симуляции вместо того, чтобы доделать железную педаль?Автор хотел продолжить изучение цифровых эффектов, пока дизайн физической гитарной педали приостановлен, поэтому симуляция всего в программном виде позволяет продолжать обучение без реальной платы.
Что делает инструмент-визуализатор на Python?Это отдельный помощник для визуализации аудиосэмплов и эффектов; автор признаёт, что он в основном создан через vibe-coding с Google Antigravity, а не написан вручную с экспертизой в Python.
Добавляет ли аудиообработка сколько-нибудь заметную задержку?Нет — каждый эффект спроектирован по схеме «один сэмпл на входе — один сэмпл на выходе» без добавленной задержки, что отражает субмиллисекундную задержку от ADC к DAC, которой автор добился на реальном железе TAC5112.
Creator
torvalds
Size
1.4 MB
Stars
4.5K
Updated
CommitMay 08
Age
9mo
Commits · 90 Days