Skip to content
A high framerate, fully configurable OpenGL music visualizer
Branch: master
Clone or download

GLMViz Build Status

A OpenGL music visualizer. GLMViz currently supports FiFo buffers and PulseAudio as input.

The main focus of this project is to create a high framerate, dB correct spectrum audio visualizer.


Minimal Config

More examples are in the Example folder.

Build Requirements

GLMViz is NOT a lightweight program as it's build using GLFW and other OpenGL abstraction libraries.

  • OpenGL libraries: libglfw, libglm
  • FFT library: fftw
  • PulseAudio[Optional]: libpulse
  • Configuration library: libconfig++

Additionally CMake 3.0.2 / Meson and a C++11 compatible compiler are needed to successfully build the project.


The install script automatically creates a build folder, handles configuration, etc... Runnig the install script will install GLMViz to /usr/local/bin/ and copy the default config to /etc/GLMViz/config


Per-user configurations have to be copied manually using:

cp /etc/GLMViz/config ~/.config/GLMViz/config


glmviz [path-to-config]

Exit with CTRL-C or by closing the window.

The config can be reloaded by pressing R or by sending SIGUSR1 to the program.


Big thanks to dpayne and Karl Stavestrand for the pulseaudio setup code. Also thanks to xdaimon and kritzikratzi for the smooth line shader idea.

You can’t perform that action at this time.