A custom filter library for speech enhancement
npm install @4players/voice-filterA WebAssembly-based real-time voice isolation filter for mono and stereo audio. This package provides a JavaScript wrapper for a low-latency denoising filter compiled from native code.
- WebAssembly-powered denoising filter
- Mono and stereo support
- Adjustable attenuation and post-filter parameters
- Efficient audio buffer management
- Simple async API
``bash`
npm install @4players/voice-filter
`ts
import { Vif } from '@4players/voice-filter';
const filter = await Vif.create(true); // true for stereo
// Configure parameters
filter.attenuationLimit = 90;
filter.postFilterBeta = 0.5;
// Process audio
const input = new Float32Array(...); // Fill with input samples (20ms 48kHz stereo interleaved)
const output = new Float32Array(input.length);
const lsnr = filter.processFrame(input, output);
// Clean up
filter.close();
`
determines mono/stereo mode.$3
-
frameLength: number — Frame length required per channel
- attenuationLimit: number — dB limit for noise attenuation
- postFilterBeta: number — Post-filter smoothing factor
- stereo: boolean` — Indicates stereo modeMIT or APACHE-2.0