Skip to content

Releases: VitexSoftware/kde-desktop-background-libvisual

v1.2.0 — ProjectM Visualization + Async Audio Backend

Choose a tag to compare

@Vitexus Vitexus released this 15 May 23:57

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.

🎵 LibVisual Wallpaper Alpha Release (v1.0.0-alpha)

Choose a tag to compare

@Vitexus Vitexus released this 07 Nov 17:30

🎵 LibVisual KDE Wallpaper Plugin - Alpha Release

✨ Major Features

🎨 Four Stunning Visualization Modes

  • Spectrum Analyzer: 64 animated bars with frequency-responsive colors and glow effects
  • Waveform: Canvas-based continuous waves with particle effects and smooth motion
  • Oscilloscope: Lissajous patterns with grid background and complex mathematical curves
  • Fractal: Multi-layered rotating circles with audio-reactive scaling and dynamic colors

⚡ Real-time Performance

  • 60fps audio-reactive animations with realistic audio simulation
  • Bass/mid/treble frequency response patterns for authentic audio visualization
  • Smooth animation system with optimized rendering

��️ Professional Configuration Panel

  • Live visualization previews with 30fps animations next to type selector
  • Real-time audio level indicator in decibels with color-coded status
  • Compact UI design with Audio Source + Live Level monitoring in same row
  • Immediate feedback - changes reflect instantly without Apply button
  • Working Show Information Overlay checkbox

📊 Technical Excellence

  • QML best practices with proper component structure and pragma directives
  • Full KDE Plasma 6 integration following wallpaper plugin architecture
  • Clean separation between configuration and visualization logic
  • Optimized rendering with efficient animation timers
  • Professional polish with information overlay and status indicators

🚀 Installation

Manual Installation

# Clone repository
git clone https://github.com/VitexSoftware/kde-desktop-background-libvisual.git
cd kde-desktop-background-libvisual

# Install wallpaper plugin
cp -r plasma-wallpapers/org.kde.libvisual ~/.local/share/plasma/wallpapers/

# Restart Plasma
kquitapp6 plasmashell && sleep 2 && plasmashell &

Usage

  1. Right-click on desktop → Desktop Settings
  2. Select Wallpaper type: LibVisual Background
  3. Choose your preferred Visualization Type
  4. Adjust Audio Source and Sensitivity
  5. Enable Show information overlay for technical details
  6. Watch the live preview and audio level monitoring!

🎯 Alpha Status

This is an Alpha release with all core functionality working:

  • ✅ All four visualization modes operational with smooth animations
  • ✅ Configuration panel fully functional with live previews
  • ✅ Audio level monitoring system implemented
  • ✅ Information overlay working with clean professional display
  • ✅ Ready for alpha testing and community feedback

�� System Requirements

  • KDE Plasma 6
  • Qt 6.5+
  • QML support
  • Audio system (PulseAudio/PipeWire recommended)

🐛 Known Issues & Limitations

  • Currently uses simulated audio data (real audio backend integration planned for Beta)
  • Optimized for 1080p+ displays (lower resolutions may need scaling adjustments)

🤝 Contributing

We welcome community feedback! Please:

  • Test the visualization modes and report any issues
  • Suggest improvements for the configuration panel
  • Share performance feedback on different hardware
  • Submit feature requests for Beta release

📄 License

This project is licensed under the GPL-3.0 License - see the LICENSE file for details.


Next milestone: Beta release with real audio backend integration and performance optimizations!