-
-
Notifications
You must be signed in to change notification settings - Fork 948
Module: Cava: GLSL
ViktarL edited this page Dec 20, 2025
·
3 revisions
The Cava GLSL frontend delegates the visualization of incoming audio data to the GPU via OpenGL.
There are some mandatory dependencies that need to be satisfied in order for Cava GLSL to be built and function properly:
- epoxy library must be installed on the system
- Vertex and fragment shaders from the original project must be used. They should be downloaded, and the file paths must be configured correctly in the Waybar Cava configuration:
- It is highly recommended to have a separate cava configuration for the Waybar Cava GLSL module and to use this as the
cava_configin the Waybar configuration. - It is common for cava configurations to be placed in the
XDG_CONFIG_HOMEdirectory, including shaders as well. Consider keeping them in the$XDG_CONFIG_HOME/cava/shadersfolder.
Key configuration options:
-
bars. The more values the parameter has, the more interesting the visualization becomes. -
methodin output section must be set tosdl_glsl -
sdl_widthandsdl_heightmanage the size of the module. Adjust them according to your needs. - Shaders for sdl_glsl, located in $HOME/.config/cava/shaders. Example:
vertex_shader = pass_through.vert fragment_shader = spectrogram.frag - Set
continuous_renderingto 1 to enable smooth rendering; set it to 0 otherwise. It is recommended to keep it set to 1. -
background,foreground, andgradient_color_N(where N is a number between 1 and 8) must be defined using hex code
- waybar module config
- cava config for waybar -> waybar_cava#1.conf.tar.gz
glgsDemo.1.mp4
- waybar module config
"cava": {
"cava_config": "$XDG_CONFIG_HOME/cava/waybar_cava#2.conf",
"input_delay": 2,
"actions": {
"on-click-right": "mode"
}
},- cava config for waybar -> waybar_cava#2.conf.tar.gz
glgsDemo.2.mp4
- waybar module config
"cava": {
"cava_config": "$XDG_CONFIG_HOME/cava/waybar_cava#3.conf",
"input_delay": 2,
"actions": {
"on-click-right": "mode"
}
},- cava config for waybar -> waybar_cava#3.conf.tar.gz
glgsDemo.3.mp4
- waybar module config
"cava": {
"cava_config": "$XDG_CONFIG_HOME/cava/waybar_cava#4.conf",
"input_delay": 2,
"actions": {
"on-click-right": "mode"
}
},- cava config for waybar -> waybar_cava#4.conf.tar.gz
glgsDemo.4.mp4
- waybar module config
"cava": {
"cava_config": "$XDG_CONFIG_HOME/cava/waybar_cava#5.conf",
"input_delay": 2,
"actions": {
"on-click-right": "mode"
}
},- cava config for waybar -> waybar_cava#5.conf.tar.gz
glgsDemo.5.mp4
- Home
- Installation
- Configuration
- Styling
- Examples
- FAQ
- Modules:
- Backlight/Slider
- Backlight
- Battery
- Bluetooth
- CPU
- Cava
- CFFI
- Clock
- Custom
- DWL
- Disk
- Gamemode
- Group
- Hyprland
- Idle Inhibitor
- Image
- JACK
- Keyboard State
- Language
- Load
- MPD
- MPRIS
- Memory
- Network
- Niri
- Power Profiles Daemon
- Privacy
- PulseAudio/Slider
- PulseAudio
- River
- Sndio
- Sway
- Systemd failed units
- Taskbar
- Temperature
- Tray
- UPower
- User
- WirePlumber
- Workspaces
- Writing Modules