Compute Room Impulse Response by circular cross-correlation of a repeating noise source and its recording.
Generate 48 KHz, 16 bit, 65536 samples long noise sequences with 30 differing sequences (each sequence repeated two times):
./noise noise.wav filter.wav 48000 16 65536 30
Start recording and interrupt after noise stops:
arecord -r 48000 -c1 -f S16_LE -V mono -s $((65536 * 2 * (30 + 5))) input.wav
Play sequences:
aplay noise.wav
Compute Room Impulse Response and output only 4097 (use -1 for all) samples, centered at the peak:
./rir output.wav input.wav filter.wav 4097
Generate a 8 KHz, 16 bit, 65536 samples long chirp signal, repeated 30 times and going from 500 Hz to 3500 Hz exponentially (use 1 for linear chirp):
./chirp chirps.wav filter.wav 8000 16 65536 30 500 3500 0
Play signal:
aplay chirps.wav
Start recording and interrupt before chirping stops:
arecord -r 48000 -c1 -f S16_LE -V mono -s $((65536 * (30 - 5))) input.wav
Compute Room Impulse Response and output only 4097 (use -1 for all) samples, centered at the peak:
./rir output.wav input.wav filter.wav 4097
Compute Room Impulse Response.
Pseudorandom noise generator for multiple differing sequences.
Chirp generator with repeating of signal.
Show strongest paths