Skip to content

audiojs/defeedback

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

8 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

@audio/defeedback

Adaptive feedback (howling) suppression — live-sound AFS class, zero-latency direct path.

Package What
@audio/defeedback-analyzer spectral peaks + PNPR/PHPR howl criteria, parabolic freqs, relational harmonic gate (Waterschoot & Moonen 2011)
@audio/defeedback-tracker persistence/stability/growth gating — the music discriminator
@audio/defeedback-notchbank ≤12 pooled narrow IIR cuts, click-free coefficient morphing, deepen-on-redeploy

The umbrella exports a streaming factory: defeedback({fs, strength}) → {process(chunk), notches()}. The audio path is pure IIR notches (0 samples latency); detection runs on the post-notch signal in parallel, so an insufficient notch deepens itself.

Verified by tests: a growing howl over music is suppressed ≥12 dB while the music stays ±1 dB; harmonic-rich tones deploy zero notches; and a closed electro-acoustic loop simulation (resonant room, loop gain > 1) runs away without the suppressor and stays bounded with it inline.

Design notes: detection must catch the howl pre-saturation (a clipped howl grows harmonics and reads as musical — same physics limits every AFS). Alpha Labs DeFeedback-class ML suppression (speech-trained model) is a different lane — see @audio/neural.

About

Adaptive feedback suppression — umbrella for @audio/defeedback-* atoms (analyzer, tracker, notch bank)

Resources

License

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors