ProjectM is an open source application that provides beautiful visual effects to accompany your favorite music player. A port of the popular MilkDrop music visualizer plugin for Winamp, ProjectM installs easily in Linux and can integrate with certain music applications. It is also available for BSD, MacOS and Windows.
The best way to get an up-to-date installation of ProjectM is to build it from source. (If you’re not super technical, don’t worry; it’s easier than it sounds.) Just navigate to the ProjectM page on Github, Click the “Clone or Download” button, and save the file in your Downloads folder.
Now, open a terminal and type:
Next, create a new directory for the ProjectM files and copy the ProjectM file into it:
mkdir ProjectM cp projectm-master.zip ProjectM cd ProjectM unzip projectm-master.zip cd projectm-master ls
Next, read all the text files included with the projectm-master download. For example, type:
to view the BUILDING.md file. This file describes the proper procedure to build ProjectM from source.
Next, install all the dependencies for ProjectM. For Linux, the dependencies are:
autoconf libtool libsdl2-dev libglm-dev qt5-default qtdeclarative5-dev libqt5opengl5-dev libjack-dev libpulse-dev libsdl-dev
You will also need to ensure that OpenGL is enabled on your system.
To begin the installation of ProjectM, make sure you are in the ProjectM directory, then type:
./configure make sudo make install
If you’re new to compiling, note that there is a bit of a delay between each step. You’ll have to be patient.
ProjectM is also available from the repositories of certain Linux distributions.
The simplest way to run ProjectM visualizations is to run projectm-pulseaudio. However, ProjectM integrates into a number of music players. Clementine music player comes with ProjectM pre-installed, so you won’t need to make any changes there. Manual integration of ProjectM into most music players is a huge headache, and probably isn’t worth the time and trouble involved. ProjectM will automatically sync with pretty much any audio that plays on the computer. So it doesn’t matter whether you’re playing music with Rhythmbox, Amarok, Audacious, or from the command line. You can even play music videos on YouTube in your web browser, and ProjectM will still respond right on cue.
ProjectM operates on presets which are located in /usr/local/share/projectM/presets. You can download and add preset files in *.prjm, *.milk, and *.so formats. You can rate presets, and by clicking the dice icon in the menu window, you can set ProjectM to randomly select presets based on your preferences.
To rate a preset, simply click the icon in the “Rating” column. The lowest rating is “Rather watch grass grow than watch this”, and the highest is “Crafted by a psychotic deity”.
Many more presets are available online on sites like the WinAmp forums.
For more configuration settings, click Settings > Configure ProjectM. In most cases it’s best to keep these settings at the default, but with a little trial and error, you can get your visualizations configured exactly the way you like.
It’s easy to control the ProjectM interface with keyboard shortcuts. The hotkey reference recommends pressing CTRL with each hotkey, but you can also control the interface by pressing each letter without CTRL.
CTRL-L locks / unlocks the active preset
CTRL-N moves to next preset in the playlist
CTRL-P moves to previous preset in the playlist
CTRL-R randomly selects a preset from the playlist
CTRL-M show / hide the menu display
CTRL-E opens the preset editor with the active preset
CTRL-F enables / disables full screen mode
CTRL-Y enables / disables shuffle mode
CTRL-S saves and applies changes to the active preset (only when editing)
CTRL-B shows / hides menu and status bar