2.2 KiB
random dsp code
it's a bunch of half-baked python code that's kinda handy.
don't expect commits, docs, or comments to be any verbose.
feel free to modify and adapt the autoupdate shell script for your own repos like this!
the stuff
-
a basic BS.1770-3 normalization implementation — bs.py
-
biquad butterworth/chebyshev filters (via DSPFilters) — nsf.py
-
modified bilinear transformation: s-plane to z-plane — planes.py
-
various functions for biquad filters — bq.py
-
some functions for state-variable filters (via Raph Levien) — svf.py
-
sine sweeps, and the Optimized Aoshima's Time-Stretched Pulse (via here) — sweeps.py
-
basic cepstrum utilities like minimum-phase reconstruction (via Julius Smith) — cepstrum.py
-
utilities for magnitude plotting, including tilting and smoothing — fft.py smoothfft.py mag.py
-
a couple hard-coded polyphase halfband IIRs for nonlinear-phase resampling or approximating hilbert transforms (read more: Olli Niemitalo) — piir.py
-
a dozen windowing functions and utility functions for constructing them — windowing.py
-
ad-hoc experiments with psychoacoustic equalization ("neon pink" and other crap before i realized "grey noise" was the term i was looking for) — data.py
-
miscellaneous matplotlib stuff — plot.py
all wrapped up in a inconveniently named "lib" module!
dependencies
python 3.5+
numpy scipy sympy matplotlib ewave
usually run in an ipython environment.