# Disco
Audio fingerprint discrimination and resynthesis via Haar wavelets.
# 1 see also
- Deep Disco (classic Amiga version)
- disco/designer (interactive noise fingerprint synthesizer)
# 2 dependencies
gcc, make, libsndfile, libgsl
# 3 build
make # native versions
# 4 examples
Timbre stamp white noise with energy per octave of a control input:
./timbre-stamp input.wav output.wav
Compute energy per octave (audio) per octave (rhythm) fingerprint:
./rhythm-analysis input.wav output.dat
Resynthesize from fingerprint by stamping on white noise:
./rhythm-synthesis input.dat output.wav
Compute energy per octave (audio) Markov chain via self-organizing map:
./markov-analysis input.wav output.dat
Resynthesize from Markov chain by stamping on white noise:
./markov-synthesis input.dat output.wav
Normalize an audio file to peak value 1.0:
./normalize input.wav output.wav
# 5 bugs
Uses large stack-allocated arrays: if it crashes, try running this first:
ulimit -s unlimited
# 6 legal
Copyright (C) 2019,2022 Claude Heiland-Allen
Copyleft: This is a free work, you can copy, distribute, and modify it under the terms of the Free Art License