kde-desktop-background-libvisual v1.2.0 released

CS
kde-desktop-background-libvisual

kde-desktop-background-libvisual

v1.2.0

What's New in 1.2.0

ProjectM Visualization (type 19)

Adds Milkdrop-compatible GPU preset rendering via libprojectM as the 20th visualization type.

  • 4 000+ presets from the Milkdrop / MilkDrop2 ecosystem (.milk, .prjm)
  • Renders entirely on the OpenGL render thread via QQuickFramebufferObject — no CPU overhead
  • Full Wayland/EGL support: works out of the box under KDE Plasma on Wayland (the default since KDE Plasma 6)
  • Graceful fallback on Vulkan backends: shows an informative message with the QSG_RHI_BACKEND=opengl workaround
  • Config dialog controls: preset path, individual preset selector, shuffle mode, display duration

Config Dialog Improvements

  • Preset path browser, shuffle toggle, and duration spinner for type 19
  • Animated mini-preview for ProjectM in the per-type preview widget
  • Version label updated to 1.2.0

Audio Backend (since 1.1.6)

  • Replaced blocking pa_simple with fully async pa_threaded_mainloop + pa_stream pipeline
  • Native pa_context_get_source_info_list() device enumeration — no more pactl subprocess
  • Monitor sources filtered via monitor_of_sink field; only real capture devices shown
  • Works transparently under PipeWire via pipewire-pulse (no config changes needed)

Installation

Debian / Ubuntu / KDE Neon

Download kde-desktop-background-libvisual_1.2.0-1_amd64.deb and install:

sudo dpkg -i kde-desktop-background-libvisual_1.2.0-1_amd64.deb
sudo apt-get install -f   # resolve any missing dependencies

Required dependencies (pulled in automatically):

  • libpulse0, libfftw3-double3
  • Qt 6 / KDE Plasma 6 runtime (already present on KDE systems)

Optional — ProjectM presets (type 19):

sudo apt install libprojectm4 projectm-data

After installation, right-click the desktop → Configure Desktop and Wallpaper → select LibVisual Audio Visualizer.


Visualization Types

# Name Description
0 Spectrum Analyzer 64-bar FFT spectrum
1 Waveform Full-screen dual sine wave
2 Lissajous XY oscilloscope figures
3 Circular Burst Concentric circles pulsing with frequency bands
4 Circular Spectrum 64 radial bars in a circle
5 Plasma Animated colored blobs
6 Starfield Stars flying outward, speed scales with audio
7 Fireworks Particle bursts on bass beats
8 Matrix Rain Falling green characters
9 DNA Helix Two intertwined sine strands
10 Particle Storm 150 particles in audio-reactive orbits
11 Ripple Effect Expanding concentric rings
12 Tunnel Vision Rotating nested rectangles
13 Spiral Galaxy 200 dots in three rotating spiral arms
14 Lightning Recursive bolts spawned on peaks
15 Mandelbrot Zoom GPU-rendered Mandelbrot set (GLSL shader)
16 Geometric Dance Rotating polygons scaling with audio
17 Audio Bars 3D FFT bars in perspective projection
18 Kaleidoscope 8-segment radially mirrored pattern
19 ProjectM Visualizer Milkdrop-compatible GPU presets via libprojectM

System Requirements

  • KDE Plasma 6.x
  • Wayland (recommended) or X11
  • PulseAudio or PipeWire (pipewire-pulse)
  • GPU with OpenGL 2.0+ (for Mandelbrot and ProjectM types)
  • Microphone or audio capture device

Build from Source

git clone https://github.com/VitexSoftware/kde-desktop-background-libvisual.git
cd kde-desktop-background-libvisual
cmake -B build -DCMAKE_INSTALL_PREFIX=~/.local
cmake --build build -j$(nproc)
cmake --install build

Optional ProjectM support is detected automatically if libprojectM development headers are present.

Back to articles