Expand description
WavProcessor — derive searchability from an audio file by composing the
project’s own DSP (crate::audio), not a bolt-on library.
It decodes a PCM/float WAV header, then runs the real short-time Fourier
transform (crate::audio::forward_stft → crate::audio::stft_magnitudes,
GPU best-path with a CPU DFT floor) to summarise the recording: its duration
and its dominant frequency. Those become descriptor facets so an otherwise
opaque .wav is findable (“audio”, “~440 Hz”, by duration).
Honest boundary. A transcript (speech-to-text) is an ASR-model
concern — the Processor plug-in point for a qualia-audio speech engine,
not something a spectral summary can fabricate. This derives the acoustic
descriptors that are genuinely computable from the signal, and no words.
Structs§
- Audio
Spectral Summary - A model-free acoustic summary of a recording — what the DSP can honestly say.
- WavProcessor
- A real audio processor: WAV → duration + dominant-frequency descriptors via the project’s STFT. Transcript is an ASR plug-in point, not faked here.