]> OzVa Git service - rust_fft/summary
 
descriptionAudio-over-stft continued in Rust
last changeMon, 12 Jan 2026 12:56:29 +0000 (12:56 +0000)
readme

Audio over the Short-Time Fourrier-Transform

William Greenwood - Contact: greenwoodw50 [at] gmail [dot] com

Abstract

Audio over STFT uses a camera as well as a display to allow interaction with a sound. Sound is converted to a lossless spectrogram before being displayed to a screen. It can then be captured by the relevant capture device and converted back into sound. This process is very slightly lossy due to the compression of converting 16-bit integers into unsigned 8-bit integers.

Technical details

Audio samples are chunked together and a FFT is performed, this converts the samples into a complex array. The length of these vectors is the amplitude of the sound and is currently mapped to the value of the colour. The angle of the vector relative to the real axis is the phase of the sound and is usually discarded, this is mapped to the saturation of the colour.

The hue is currently unmapped but could potentially be used as error-correction data or a copy of either phase or amplitude.

shortlog
2026-01-12 Max ValueAdded filtering to feedback and the main out main
2026-01-12 Max ValueWindows compatibility changes
2026-01-12 Max ValueClippy changes
2026-01-11 Max ValueColor correction and C++ changes
2025-11-27 Max ValueRe-arranged project + fixed barreling remaping
2025-10-25 Max ValueAdded todo list
2025-10-25 Max ValueAdded comments to python
2025-10-25 Max ValueAdded makefile
2025-10-25 Max ValueMerge branch 'main' into production
2025-10-25 Max ValueChanges for testing and cleanup production
2025-10-25 Max Valuemoved python proj to better place
2025-10-25 Max ValueFixed backend issue by passing show_image backend
2025-10-08 Max Value"""fixed""" rust LUT implementation
2025-10-07 Max ValueSwitched to scipy B splines
2025-10-07 Max ValueFully built the LUT system
2025-09-14 Max ValueSetup to write LUT generator
...
heads
4 weeks ago main
3 months ago production