跳到正文
cccskills
免费在 GitHub 公开

audio-numerics-review

Reviews audio DSP code for numerical correctness. Use when the user asks to review, audit, or check DSP code for correctness issues — filters, feedback loops, fixed-point arithmetic, accumulation loops, or any numeric computation in audio code. Trigger on "check this filter for NaN", "why does my reverb blow up?", "is this numerically stable?", "why do I hear DC in my output?". Pairs with audio-dsp-review (realtime safety); this skill covers numeric correctness. Flag issues proactively.

中文简介正在准备中。当前显示原文说明。

查看安装方法

包含的文件(2)

  • SKILL.md3.2 KB
  • references/numerics-pitfalls.md21.4 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

Audio Numerics Review

Floating-point is not real math. IEEE 754 edge cases — denormals, NaN propagation, catastrophic cancellation, precision loss — silently produce wrong audio output without crashing. You won't find them with a debugger; you find them by knowing where to look.

Step 1 — Find numeric-critical paths

Locate every function doing floating-point or integer DSP: filter state loops, feedback delay lines, envelope followers, RMS/energy accumulators, pitch detectors, fixed-point paths (CMSIS-DSP, SIMD int16/int32), any division whose denominator may be zero.

Step 2 — Scan for violations

ViolationWhere to lookSymptom
Denormal floatsIIR state vars, reverb tanks, delay feedbackSudden 100× CPU spike when signal decays
NaN / InfDivisions, sqrt, acos/asin, peak normalizersSilence or noise that can't be traced
Catastrophic cancellationDC-blocking filters, near-Nyquist biquads, first-order diffNoise floor jumps, loss of precision
Fixed-point overflowQ15/Q31 multiply, CMSIS paths, SIMD int16Audible distortion / wrapping
Precision lossRMS/energy sums, mixing buses, long loopsAccumulated DC offset, incorrect levels
FTZ/DAZ absentprepareToPlay/stream-open — no mode setupDenormals hit on some hosts but not others

For code examples and platform-specific notes see references/numerics-pitfalls.md.

Step 3 — Write the review

## Audio Numerics Review: `[file / function]`

### Verdict
[Safe | Has critical violations | Warnings only] — one sentence summary

### Critical Violations
**[Category]: [description]**
`file:line` — `offending code`
Why: one sentence on the numeric risk
Fix: concrete suggestion

### Warnings
[same format]

### What's Done Well
[guarded divisions, double accumulators, FTZ setup, etc.]

### Recommended Fixes (priority order)
1. ...

Quick fix table

ViolationSafe alternative
Denormal in feedbackScopedNoDenormals; FTZ+DAZ in prepareToPlay; DC-offset clamp
Division by zero(denom > 1e-6f) ? num/denom : fallback
sqrt/acos/asin unclampedstd::sqrt(std::max(0.f, x)), std::clamp inputs
NaN propagating silentlyassert(!std::isnan(y)) in debug; validate at entry points
Cancellation in coefficientsCompute coefficients in double; use numerically stable forms
Fixed-point overflowPromote to wider type before multiply; __SSAT, CMSIS saturating ops
Precision loss in long sumdouble accumulator or Kahan compensated summation
FTZ/DAZ absentSet explicitly in prepareToPlay; use ScopedNoDenormals per-block

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

au-review

免费

Reviews AudioUnit v2/v3 plugin implementations for spec compliance, thread safety, and correctness. Use when the user asks to review an AudioUnit plugin, check an AUv3 app extension, audit property or parameter handling, or asks "is my AUComponent thread-safe?" or "why does my AU crash in Logic?". Trigger on phrases like "review my AudioUnit", "check my AUv3", "is my render block safe?", or when you see AURenderCallback, internalRenderBlock, kAudioUnitProperty_*, or AUAudioUnit in the code.

中文简介正在准备中。当前显示原文说明。

kunitoki/sonic-skills222026年5月21日 更新

Systematic checklist for diagnosing audio artifacts. Use when the user describes a sound quality problem — clicks, pops, crackling, silence, DC offset, aliasing, phase issues, or latency problems. Trigger on phrases like "why do I hear clicks?", "my output has DC offset", "there's aliasing in my oscillator", "phase is wrong in mono", "dropout when CPU spikes". Pairs with audio-dsp-review (realtime safety) and audio-numerics-review (numeric correctness) — use those to fix once the cause is found.

中文简介正在准备中。当前显示原文说明。

kunitoki/sonic-skills222026年5月21日 更新

Reviews audio DSP and audio processing code for realtime safety violations. Use whenever the user asks to review, audit, or check audio processing code — including plugin process callbacks, audio engine render functions, DSP implementations, or any code that runs on the audio thread. Trigger on phrases like "review my processBlock", "check this DSP code", "is this safe for the audio thread?", "review my JUCE plugin", or when you see an audio callback and spot potential realtime violations. Flag issues proactively even when the user hasn't explicitly asked for a review.

中文简介正在准备中。当前显示原文说明。

kunitoki/sonic-skills222026年5月21日 更新

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 do I convert gain to dB". Also trigger when the user pastes DSP code and asks why it behaves a certain way.

中文简介正在准备中。当前显示原文说明。

kunitoki/sonic-skills222026年5月21日 更新

Profiling strategy for audio CPU issues — xruns, spikes, and buffer underruns. Use when the user reports CPU overload, audio glitches under load, or performance regressions. Trigger on phrases like "I'm getting xruns", "my plugin causes CPU spikes", "dropouts under high voice count", "audio thread is too slow", "how do I profile my DSP". References audio-numerics-review for denormal slowdown and audio-dsp-review for lock contention.

中文简介正在准备中。当前显示原文说明。

kunitoki/sonic-skills222026年5月21日 更新

Traces and documents signal paths, bus/aux architecture, and sidechain connections in audio systems. Surfaces hidden coupling between audio components. Use when the user asks to trace a signal chain, explain audio routing, understand an audio graph, locate sidechain sources, or describe how audio flows through a plugin or engine. Trigger on phrases like "trace this signal chain", "explain this audio routing", "what calls what in this audio graph", "where does the sidechain come from", "how does audio flow through this plugin".

中文简介正在准备中。当前显示原文说明。

kunitoki/sonic-skills222026年5月21日 更新

查看 kunitoki 的全部技能

报告此技能的问题