Receber por email
← Voltar para o catálogo

audio-math-explainer

Explains DSP math concepts to developers who need the theory behind an algorithm. Use whenever the user asks how a signal-processing concept works, wants intuition behind a formula, or hits a math-shaped bug. Trigger on phrases like "how does a Fourier transform work", "explain z-transforms", "what is convolution", "why does my biquad ring", "what is windowing for", "what causes aliasing", or "how

14estrelas
Atualizado há 5 meses

Ver no GitHub ↗ Licença: Unlicense

Como adicionar

/plugin marketplace add kunitoki/sonic-skills

O comando exato pode variar conforme o repositório. Confira o README no GitHub.

Para o autor da skill

Cole no README do seu repo

Mostra que sua skill está catalogada na Skillteca, gera backlink e tráfego rastreável.

[![Skillteca](https://www.skillteca.com.br/api/badge/audio-math-explainer/svg)](https://www.skillteca.com.br/skills/audio-math-explainer)

Alerta por categoria

Receba novas skills de Design e Frontend toda segunda

1 email curto, só com as skills novas de Design e Frontend. 4 minutos de leitura, sem spam, cancela com 1 clique.

Você confirma o email no primeiro envio. Sem spam. Cancela com 1 clique.

Ler descrição completa

Audio Math Explainer

The rule: DSP math is small and composable — each concept builds directly on the last.
Start with what the user needs, then connect it to code they're writing.

Step 1 — Identify the concept

| Topic | Core idea | Common "why" | |-------|-----------|--------------| | Fourier transform / DFT / FFT | Decompose signal into frequency components | "Why does my FFT output look wrong?" | | Convolution | Weighted moving average; LTI system response | "How does an IR reverb work?" | | Z-transform | Frequency-domain analysis of discrete systems | "How do filter poles/zeros work?" | | Biquad / IIR filters | Recursive difference equation with feedback | "Why does my filter ring / go unstable?" | | FIR filters | Non-recursive weighted sum | "How do I design a linear-phase filter?" | | Windowing | Reduce spectral leakage in DFT | "Why are FFT edges smeared?" | | Sample rate / Nyquist | Highest representable frequency = sr/2 | "What causes aliasing?" | | Decibels | Log scale for amplitude/power ratios | "How do I convert gain to dB?" |

If the user's question maps to multiple rows, start with the most fundamental one and build up.

Step 2 — Explain with three anchors

For each concept, give exactly these three things in order:

  1. Intuition — one sentence a musician could understand
  2. Math — the key formula (inline, no walls of derivation)
  3. Code — one-line pseudocode or a real function call from common audio libraries

Keep each anchor to 1–3 lines. Cut anything that doesn't directly answer the question.

Step 3 — Connect to the user's code

After the three anchors:

  • Locate where the math appears in their implementation (coefficient calculation, loop structure, buffer size choice, etc.)
  • Name the exact variable or line where theory becomes code
  • If a value looks wrong, explain which part of the math it violates

Quick connection table

| Math concept | Where it shows up in code | |--------------|--------------------------| | DFT basis frequencies | bin_index sr / N — each FFT bin | | Convolution sum | FIR tap loop: y[n] = sum(h[k] x[n-k]) | | Z-plane pole radius | IIR feedback coefficients a1, a2 | | Nyquist limit | if (freq > sampleRate / 2) clamp(...) | | Window function | Multiply x[n] = window[n] before FFT | | dB conversion | gain_db = 20 log10(amplitude) |

Output format

### [Concept name]

**Intuition:** [one sentence]

**Math:** `[formula]`

**Code:** `[one-liner]`

**In your code:** [where this appears and what it means for their specific question]
See references/dsp-math-reference.md for full formula tables, gotchas, and property lists.
Compartilhar X LinkedIn