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 语言编写的数字音频效果模拟合集(移相器式全通滤波器、基于延迟的回声等),由 Linus Torvalds 作为学习数字信号处理基础的个人小项目而写,最初与他的 DIY 吉他单块效果器硬件相关联。
这是真正的吉他单块效果器硬件代码,还是只是软件模拟器?它是纯软件的效果模拟;实体 RP2354/TAC5112 吉他单块效果器硬件项目是另一项目前已归档的工作,这个仓库只是自行建模同样的数字处理。
怎么构建和运行这些效果?仓库自带 Makefile,用“make”构建即可;除此之外,README 没有讲解具体的使用步骤。
除了 C 编译器,试用它还需要什么吗?一套 C 工具链加上 make 就足以构建效果代码本身;另外还有一个独立的、基于 Python 的可视化工具,用来查看音频样本。
这些效果与现代音箱模拟或箱体模拟效果相似吗?不相似——这些是有意保持简单的玩具效果,只使用无延迟的 IIR 滤波器和基础延迟循环,并非花哨的基于 FFT 的处理或 AI 风格的音箱/箱体建模,作者也明确表示不要把它们当真。
为什么不完成硬件单块效果器,而要去做数字模拟?在实体吉他单块效果器硬件设计暂停期间,作者想继续探索数字效果,因此在软件中模拟一切,让学习无需实际的板子也能继续。
这个 Python 可视化工具是做什么的?它是一个用于可视化音频样本/效果的独立辅助工具;作者坦承它主要是靠 Google Antigravity 的氛围式编程(vibe-coding)写出来的,而非凭借手写 Python 的专业功力。
音频处理会带来可感知的延迟吗?不会——每个效果都设计为单样本进、单样本出,不增加延迟,与作者在真实 TAC5112 硬件上实现的亚毫秒级 ADC 到 DAC 延迟如出一辙。
Creator
torvalds
Size
1.4 MB
Stars
4.5K
Updated
CommitMay 08
Age
9mo
Commits · 90 Days