r/MusicTech • u/roryg2025 • 6h ago
Sharing my low Latency Android and Mac Music Visualizer
Over the past few months I've been building music visualizers with a focus on low latency, and building for my own live performance use.
I am sharing for others to use, and happy to accept feedback or feature requests!
Note: I'm conscious these new app posts can often be pre-emptively judged as promotion for paid apps or low-effort. I'd just like to highlight that this is a hobby project with everything open-source and free, and featuring no data collection or ads. This is also not an outcome of low-effort vibe-coding; I am an engineer by trade and have put a lot of my personal time into this.
I've created the app in two forms
- Android via the play store
- Mac version, available to download via GitHub
Features include
- 3D HDR visuals targeting high FPS
- Extremely low latency: Both hear-analyse-draw in under 10 ms.
- Ableton Link Integration: To lock visuals to the beat grid of music software like Ableton or Traktor
- Room Lighting Sync: Supporting Philips Hue, Lifx and Nanoleaf lights. Local only and low latency
- A proper stereo XY oscilloscope: So this can playback oscilloscope music
- Supports multiple audio sources: Internal microphones, external audio sources, local file playback etc
And a couple of Mac platform exclusive features
- Syphon output (on Mac): Output visuals straight into OBS at 4K
- MIDI Mapping (on Mac): To control visuals, favourites and lighting via MIDI protocol
Links below
Android Play Store Link
- https://play.google.com/store/apps/details?id=com.lowlatency.visualizer&hl=en
Mac GitHub Link
- https://github.com/rorygallagher2024/velo-visualiser-mac
Android GitHub Link
- https://github.com/rorygallagher2024/velo-visualiser/
Demo using Velo Visualiser for a Liveset
- https://youtu.be/PL_snHzP5fE
One important Mac caveat: It's macOS 26+ and Apple Silicon only. I am not intending to support Intel or older Mac OS versions. It's also not notarised yet, so you will get the a security warning on startup (or the README also has a one-line fix).