Skip to content

projectM SDL fork v1.4 (Windows + Linux)

Latest

Choose a tag to compare

@gwebb417 gwebb417 released this 11 Nov 03:52

Unofficial, portable Windows and Linux builds of this fork of the projectM SDL frontend. This is not an official projectM release.

New in v1.4

  • Remote control from your phone: projectM serves a web page with next/previous/random (optional smooth transition), lock, shuffle, mirror, zoom, Ambient Speed, Beat Sensitivity, favorites, disable/re-enable, undo and the favorites-only/disabled-only modes. Turn it on in Settings > Remote Control; for your phone, also turn on Allow Other Devices and set a password. Off by default.
  • Spout output for OBS (Windows): with the OBS Spout2 plugin, OBS keeps getting the picture while projectM is minimized, without menus, toasts or FPS counter. Optionally at a fixed resolution like 1920 x 1080.
  • Mirror and zoom effects: M cycles left-to-right, top-to-bottom and 4-way mirroring, +/- zoom into the center. Also in the Spout output.
  • Ambient Speed (LEFT/RIGHT): slows down all preset animation evenly, including motion, zoom, rotation, fading trails and the music reaction.
  • Same Speed at Any FPS: presets used to move faster at higher FPS limits. They now move at their 60 FPS speed at any FPS (can be turned off).
  • Bass, Mid and Treble Sensitivity, and frequency bands that match real bass (20-250 Hz), mids (250-4000 Hz) and treble (4000-20000 Hz). The original Milkdrop split, where "bass" was 0-3675 Hz, is still available, and custom ranges can be set in Hz.
  • Fixes: Ctrl+S opens the settings (the File menu always listed it); OBS Game Capture shows the correct colors.

Download and run

Both downloads include the presets and textures, so they work right away. Play some music: projectM visualizes whatever your PC is playing.

Windows

  1. Download projectMSDL-portable-windows-x64.zip below and unzip it anywhere.
  2. Run projectMSDL.exe. It's a single exe, with no DLLs or installation needed.

If Windows shows "Windows protected your PC", click More info and then Run anyway. This appears because the exe isn't code-signed.

Linux (x86_64)

  1. Download projectMSDL-portable-linux-x86_64.tar.gz below and unpack it anywhere: tar -xzf projectMSDL-portable-linux-x86_64.tar.gz
  2. Run ./projectMSDL in the unpacked folder.

It needs glibc 2.35 or newer (e.g. Ubuntu 22.04+, Debian 12, Fedora 36+, Arch) plus SDL2 and FreeType, which almost every desktop Linux already has. The included README.txt lists the install commands in case they're missing. Spout output is Windows only.

Settings and favorites

Both versions store settings and favorites in a userdata folder inside the unpacked folder (portable mode), so you can move or copy the whole folder. Delete portable.txt to store them in %APPDATA%\projectM (Windows) or ~/.config/projectM (Linux) instead.

Updating from an earlier version: unpack the new version, then copy the userdata folder from your old folder into the new one. Or just replace projectMSDL.exe (Windows) / projectMSDL (Linux) in your old folder.

What's new compared to the official version

  • Favorites: S saves the current preset, F switches between favorites only and all presets, Ctrl+Z undoes the last 20 changes
  • Disabled presets: DEL disables the current preset, Ctrl+DEL plays only disabled presets so you can re-enable them
  • Remote control from your phone's browser
  • Spout output for OBS (Windows)
  • Mirror and zoom effects
  • Ambient Speed and Same Speed at Any FPS
  • Beat Sensitivity works (it had no effect before), with Bass/Mid/Treble Sensitivity and real frequency bands; or Beat Averaging for the standard reaction
  • Preset search window (ENTER), from upstream PR projectM-visualizer#139
  • Toasts for lock, shuffle, aspect correction, copy path and favorites actions, in any corner or the center
  • FPS counter with optional frame times
  • Settings window: type-in values instead of sliders; window size, position, monitor, fullscreen resolution and UI scale apply immediately
  • Portable mode and a single-file Windows exe
  • Linux visualizes what's playing by default (the output's "Monitor" device instead of the microphone)
  • A message if settings can't be saved, e.g. when unzipped into C:\Program Files
  • Bug fixes in the original code, see the README

See the README for all details and keybinds. Help > Quick Help in the app lists all keys.

Included

Thanks to the projectM team for projectM and the preset and texture packs.

License

GNU GPL 3.0, see LICENSE.md in the download. The full source code is in this repository.