poppy
is a simple music player that is controlled by process signals.
Poppy plays sound via PulseAudio, and is controlled via D-Bus MPRIS interface.
Up to 8 channels are supported. All audio is resampled to 48khz.
The initial playlist is determined by command line arguments. Links in an Ogg chain will be considered distinct tracks.
poppy track1.flac track2.opus track3.ogg ...
playerctl -p poppy play-pause
playerctl -p poppy next
playerctl -p poppy previous
...
dbus-send --session --dest=org.mpris.MediaPlayer2.poppy --print-reply /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.PlayPause
dbus-send --session --dest=org.mpris.MediaPlayer2.poppy --print-reply /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Next
dbus-send --session --dest=org.mpris.MediaPlayer2.poppy --print-reply /org/mpris/MediaPlayer2 org.mpris.MediaPlayer2.Player.Previous
Before anything:
meson setup build
cd build
See poppy/meson.build and poppyctl/meson.build
ninja
See meson configure -h
for configuration options
(i.e. install location, optimization, etc.).
Executables will be in build/poppy and build/poppyctl.
ninja install
ninja uninstall
Use of this work is governed by the GNU General Public License, version 3 or later.