Releases: VitexSoftware/kde-desktop-background-libvisual
Releases · VitexSoftware/kde-desktop-background-libvisual
Release list
v1.2.0 — ProjectM Visualization + Async Audio Backend
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=openglworkaround - 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_simplewith fully asyncpa_threaded_mainloop+pa_streampipeline - Native
pa_context_get_source_info_list()device enumeration — no morepactlsubprocess - Monitor sources filtered via
monitor_of_sinkfield; 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 dependenciesRequired 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-dataAfter 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 buildOptional ProjectM support is detected automatically if libprojectM development headers are present.
🎵 LibVisual Wallpaper Alpha Release (v1.0.0-alpha)
🎵 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
- Right-click on desktop → Desktop Settings
- Select Wallpaper type: LibVisual Background
- Choose your preferred Visualization Type
- Adjust Audio Source and Sensitivity
- Enable Show information overlay for technical details
- 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!