Sound Flowers
Sound Flowers is a Processing audio-visual piece I built solo for a UTS creative-coding course: sound becomes a growing garden. You record from the microphone or load a WAV file, and as it plays, each burst of music blooms into a flower.
The core is a bidirectional audio pipeline. On the way in, an FFT breaks each frame of audio into its frequencies and picks out the dominant one, which sets the flower's colour along a six-stop gradient (low frequencies become woody blues, high frequencies become pinks) while loudness sets its size. On the way out, a custom Signal class implements Minim's AudioSignal interface as a from-scratch sine oscillator — generating samples by phase accumulation — so that when a flower drifts into the tree it plays back a tone at its own frequency and repaints the leaves its colour before they ease back to green.
Around that sits a small particle system: flowers fall under gravity and drift on a random breeze, a wind button gusts them sideways with acceleration and spin, and the sky gradient warms from blue to pink as the average volume rises. I also explored a richer Beads-based piano synthesiser (envelope, reverb, low-pass filter) before shipping the leaner sine oscillator.
Key features & challenges
- Bidirectional audio: FFT frequency analysis in, plus a hand-written sine oscillator (AudioSignal) synthesising tones out
- Dominant-frequency detection driving a six-stop frequency-to-colour gradient, with volume mapped to flower size
- A particle system with gravity, a wind gust that adds acceleration and spin, and out-of-bounds culling
- Audio I/O: microphone recording to WAV, a WAV file loader, and playback with gain and mute
- Tree leaves repaint to a passing flower's colour then ease back to green; the sky gradient tracks average volume
My contributions
- Solo build — the whole pipeline: audio capture and FFT analysis, sound synthesis, the generative visuals, and the UI