- Debian version: 3.1.12-4
- Upstream version: 4.1.6
- SONAME: libprojectm3 -> libprojectm4
- Complete API rewrite: C++ classes replaced with pure C API
- Frontends removed from main repo (jack, pulseaudio, sdl now separate)
- New dependency: projectm-eval library (MIT licensed)
- Build system: autotools -> CMake 3.21+
- Removed features: text overlay, built-in config, rating system
- Playlist: Now a separate optional library (libprojectm-playlist4)
- Presets: Now in separate repos, not bundled with library
| Package | Current Dep | Notes |
|---|---|---|
| qmmp-plugin-projectm | libprojectm3 >= 3.1.12 | Needs update to v4 API |
| Package | Notes |
|---|---|
| libvisual-projectm | libvisual plugin - may need reintroduction |
| Package | Notes |
|---|---|
| kodi-visualization-projectm | RFP #833763, in deb-multimedia.org |
- libprojectm3 (shared library)
- libprojectm-dev (headers)
- projectm-data (presets)
- projectm-jack (standalone app)
- projectm-pulseaudio (standalone app)
- projectm-sdl (standalone app)
From main projectm source:
- libprojectm4 (shared library, new SONAME)
- libprojectm-dev (headers, pure C API)
- libprojectm-playlist4 (optional playlist management)
- libprojectm-playlist-dev
Presets now need separate package(s):
- projectm-presets (recommended, from presets-cream-of-the-crop repo)
- projectm-presets-classic (optional, from presets-projectm-classic repo)
Frontends need separate packages (from separate upstream repos):
All packaging available at: https://github.com/projectM-visualizer/packaging-debian
Location: projectm-eval-debian/
Version: 1.0.6
ITP: Filed 2026-01-09
Produces:
- libprojectm-eval-dev (static library + headers)
Note: Upstream DESTDIR bug fixed in v1.0.6 (PR #17 merged).
Location: projectm-presets-debian/
Version: 0~20220213
ITP: Filed 2026-01-09
Produces:
- projectm-presets (~9800 presets, replaces projectm-data)
Location: projectm-v4-debian/
Version: 4.1.6
Produces:
- libprojectm4 (shared lib)
- libprojectm-dev
- libprojectm-playlist4
- libprojectm-playlist-dev
Location: projectm-frontend-sdl2-debian/
Version: 2.0.0
ITP: Filed 2026-01-09
Produces:
- projectm-sdl (replaces projectm-pulseaudio, projectm-jack)
Note: Requires Poco >= 1.11.2 (available in Debian sid/testing).
- File ITP for projectm-eval (2026-01-09)
- File ITP for projectm-presets (2026-01-09)
- File ITP for projectm-frontend-sdl2 (2026-01-09)
- Package presets (projectm-presets from cream-of-the-crop)
- Package frontend applications (projectm-sdl from frontend-sdl2)
- Upload projectm-eval to unstable
- Upload projectm-presets to unstable
- Update projectm to v4 with new SONAME
- Upload projectm to experimental first (SONAME bump)
- File transition bug with release team (with ben file)
- Coordinate with qmmp maintainers for qmmp-plugin-projectm update
- Upload projectm-frontend-sdl2 to unstable
- Move projectm to unstable after rdeps updated
Old (3.x C++):
#include <libprojectM/projectM.hpp>
projectM pm(settings);
pm.projectM_initRenderToTexture();New (4.x C):
#include <projectM-4/projectM.h>
projectm_handle pm = projectm_create();
projectm_set_preset_duration(pm, 30.0);
projectm_opengl_render_frame(pm);| Feature | 3.x | 4.x |
|---|---|---|
| Interface | C++ classes | C functions |
| Settings | projectM::Settings struct | Getter/setter functions |
| Playlist | Built-in | Separate library |
| Text overlay | Built-in | Removed |
| Config file | libprojectM handled | Application handles |
- Debian Multimedia Team: debian-multimedia@lists.debian.org
- Salsa repo: https://salsa.debian.org/multimedia-team/projectm
- Current uploaders: Matthias Klumpp, Dennis Braun (recently removed himself)
- Upstream: https://github.com/projectM-visualizer/projectm
- Debian tracker: https://tracker.debian.org/pkg/projectm
- projectm-eval: https://github.com/projectM-visualizer/projectm-eval
- Presets (cream-of-the-crop): https://github.com/projectM-visualizer/presets-cream-of-the-crop
- Presets (classic): https://github.com/projectM-visualizer/presets-projectm-classic
- Frontend SDL2: https://github.com/projectM-visualizer/frontend-sdl2