- Home
- Skills
- Bbeierle12
- Skill Mcp Claude
- Audio Analysis
audio-analysis_skill
- JavaScript
6
GitHub Stars
2
Bundled Files
2 months ago
Catalog Refreshed
4 months ago
First Indexed
Readme & install
Copy the install command, review bundled files from the catalogue, and read any extended description pulled from the listing source.
Installation
Preview and clipboard use veilstrat where the catalogue uses aiagentskills.
npx veilstrat add skill bbeierle12/skill-mcp-claude --skill audio-analysis- _meta.json345 B
- SKILL.md10.7 KB
Overview
This skill provides audio analysis utilities built with Tone.js and the Web Audio API for FFT, waveform, amplitude, and beat detection. It packages practical patterns for extracting frequency bands, RMS and peak amplitude, smoothing values, and simple beat detectors. Use it to feed visualizations, drive audio-reactive effects, or compute analytics from live or file-based audio.
How this skill works
The skill creates Tone.Analyser and Tone.Meter instances to collect FFT (frequency-domain) and waveform (time-domain) buffers and volume readings. It computes band averages, normalizes dB to 0–1, and exposes RMS and peak amplitude functions. Optional beat detectors use bass energy, peak-tracking, or an energy-history method; smoothing utilities (exponential and moving average) stabilize outputs for visuals.
When to use it
- Building audio visualizers (spectrums, waveforms, particle systems)
- Driving audio-reactive UI or game effects
- Implementing beat detection for synchronized events
- Measuring loudness or extracting frequency bands for analysis
- Optimizing real-time audio pipelines for performance
Best practices
- Choose FFT size based on resolution vs latency (32–2048 powers of two)
- Focus beat detection on low-frequency bins and enforce a minimum interval between beats
- Normalize dB values to 0–1 for consistent thresholds across tracks
- Reuse Float32Array buffers and avoid per-frame allocations to reduce GC pressure
- Apply smoothing (exponential or moving average) to reduce jitter in visuals
Example use cases
- Real-time spectrum visualizer using Tone.Analyser('fft') to render bars
- Beat-triggered particle bursts using a bass-focused BeatDetector
- Live RMS and peak meters for streaming or recording interfaces
- Normalized frequency bands feeding shader uniforms for post-processing effects
- Energy-history detector for tempo estimation and beat-aligned animations
FAQ
Smaller sizes (32–128) give faster response and suit beat detection; larger sizes (1024–2048) give finer frequency detail for analysis tools.
How do I avoid noisy visual output?
Use smoothing (exponential or moving average), normalize dB ranges to 0–1, and optionally downsample analysis calls (e.g., every other animation frame).