An implementation of the Moodbar audio timeline visualization.
This is a drop-in replacement for the outdated Moodbar program originally developed for Amarok.
Files in the gst
and src
directories are taken from Clementine (revision 3886f3d1e4b29d028c1bacf474bc40d1c45c2ea9, 2014-12-22) with slight modifications to remove some dependencies.
- FFTW 3
- GStreamer 1
- GStreamer Base Plugins
For building:
- Development files for the above
- C++ compiler
- Meson. If your OS doesn't have a package for this, you can install it through pip (requires Python 3).
- pkgconf or pkg-config
- Ninja
At runtime you may also need other GStreamer plugin packages to read your audio files. For example, to process MP3 files you may have to install GStreamer Ugly Plugins.
meson --buildtype=release build/
cd build/
ninja
sudo ninja install
You can add -Db_lto=true
to the meson
call to produce slightly more efficient code.
Building with custom flags and prefix, and staging to destdir:
env CXXFLAGS=... LDFLAGS=... meson --buildtype=plain --prefix=... builddir
ninja -C builddir
env DESTDIR=... ninja -C builddir install
See the Meson documentation for more info.
moodbar -o OUTPUT INPUT
This creates an output file containing pixel values in R1 G1 B1 R2 G2 B2 ...
format.