audio-dsp

Expert knowledge for implementing audio digital signal processing in web applications.

Safety Notice

This listing is imported from skills.sh public index metadata. Review upstream SKILL.md and repository scripts before running.

Copy this and send it to your AI assistant to learn

Install skill "audio-dsp" with this command: npx skills add alemusica/golden-helix-studio/alemusica-golden-helix-studio-audio-dsp

Audio DSP Skill

Expert knowledge for implementing audio digital signal processing in web applications.

When to Use

  • Implementing audio effects (reverb, delay, chorus)

  • Real-time audio processing with Web Audio API

  • FFT analysis and visualization

  • Convolution-based effects

  • Audio worklet development

Web Audio API Patterns

Basic Audio Context

const audioContext = new AudioContext(); const analyser = audioContext.createAnalyser(); analyser.fftSize = 2048;

Audio Worklet (Real-time Processing)

// Register processor await audioContext.audioWorklet.addModule('processor.js'); const node = new AudioWorkletNode(audioContext, 'my-processor');

Common Algorithms

Convolution Reverb

const convolver = audioContext.createConvolver(); const response = await fetch('/impulse-response.wav'); convolver.buffer = await audioContext.decodeAudioData(await response.arrayBuffer());

FFT Analysis

const dataArray = new Float32Array(analyser.frequencyBinCount); analyser.getFloatFrequencyData(dataArray);

Knowledge Base Resources

Query for DSP algorithms:

SELECT * FROM algorithm WHERE tags CONTAINS 'audio' OR tags CONTAINS 'dsp'; SELECT * FROM paper WHERE abstract @@ 'convolution reverb impulse';

Performance Guidelines

  • Use AudioWorklet for real-time processing

  • Avoid main thread blocking during audio

  • Buffer sizes: 128-512 for low latency

  • Sample rate: Match device (usually 44100 or 48000)

  • Use SharedArrayBuffer for worklet communication

React Integration

// Custom hook pattern const useAudioAnalyser = (audioContext: AudioContext) => { const analyserRef = useRef<AnalyserNode>();

useEffect(() => { analyserRef.current = audioContext.createAnalyser(); return () => analyserRef.current?.disconnect(); }, [audioContext]);

return analyserRef; };

Related KB Queries

-- Find reverb implementations SELECT * FROM knowledge WHERE content @@ 'reverb implementation';

-- Get validated algorithms SELECT * FROM algorithm WHERE success_rate > 0.8;

Source Transparency

This detail page is rendered from real SKILL.md content. Trust labels are metadata-based hints, not a safety guarantee.

Related Skills

Related by shared tags or category signals.

Research

knowledge-research

No summary provided by upstream source.

Repository SourceNeeds Review
Automation

parallel-agents

No summary provided by upstream source.

Repository SourceNeeds Review
Research

learn-anything-in-one-hour

Teach users any new skill/knowledge X in ~1 hour using a fixed 4-step workflow optimized for complete beginners, focusing on 80/20 rule for maximum value in minimum time. Triggers when user asks to learn something new quickly, or mentions "learn X in one hour".

Archived SourceRecently Updated
Research

X/Twitter Research

# X/Twitter Research Skill

Archived SourceRecently Updated