@monosonic/audio-dsp
v0.7.0
Published
Shared deterministic audio DSP for Squidbrain clients
Readme
Squidbrain Audio DSP
Portable, dependency-free DSP used by Squidbrain clients. Audio is planar
Float32Array[] in the nominal range [-1, 1]; selections are frame ranges
with an exclusive end. It intentionally has no UI, filesystem, Web Audio, or
React Native dependency.
The package is published publicly as @monosonic/audio-dsp. Release builds pin
an exact package version so EAS and Cloudflare builds remain reproducible.
Noise cleanup
reduceNoiseChannels() is the general-audio cleanup path. It preserves planar
channel layout and applies one linked spectral mask across stereo channels, so
the stereo image does not shift as the noise floor is reduced. It is deliberately
conservative and intended for steady room tone, hiss, or similar background
noise in field recordings and samples.
Pass a short noiseRange containing only noise whenever possible. Without one,
the function only uses an automatic profile when it can identify a genuinely
quieter part of the sample; it throws rather than guessing on uniformly musical
audio. Callers should provide A/B preview and make cleanup an explicit action.
Clean multimode filter
renderFilter() provides the shared clean LP/BP/HP/Focus renderer. It preserves
planar channel layout and frame count, supports 12/24 dB slopes, and applies
peak protection only when output would exceed the Squidbrain ceiling.
filterResponse() returns the corresponding TPT response for drawing UI. The
response and audio renderer therefore use the same recipe and coefficient
mapping rather than a decorative approximation.
