splay is the only 🎶 player I need. It is made for me by me and I ❤️ it. It is 🐧 only.
To build splay clone the git repo, change into it
git clone https://github.com/aichingm/splay && cd splay
and run one of the four build options:
- The tiny version
make build
- A version with enabled MPRIS support:
make build-mpris
- A debugging version for the the 1. option
make debug
- A debugging version for the 2. option
make dbbug-mpris
this will create a binary in the cwd called splay.
To change the colors edit the color definitions in src/colors.h
and rebuild splay.
Just move the splay binary in any of the directories which are in your $PATH
.
No don't actually do this! Move it for example to /usr/local/bin
or create a bin
directory in your ~
and add it to your $PATH
In order to run (and build) you need some of the below listed libraries on your system:
- libvlc
- ncurses
- libtinfo
- dbus (only for build with MPRS support)
splay reads a list of files from stdin
and plays one after another. splay can play all formats vlc can play.
For the purpose of usage I will assume that you have some music in ~/Music
, 'cause that's where music belongs.
Play your 💙 song
echo best_song_ever.ogg | splay
Play all music in the cwd
ls -N1 | splay
Play all your music
find ~/Music | splay
Play all your ogg's
find ~/Music/*.ogg | splay
splay can also play in shuffle mode
find ~/Music | shuf | splay
Play your music ordered by name (add -r after sort to reverse)
find ~/Music | sort | splay
Hey DJ, loop it 💿
while true; do echo ~/Music/nyan_cat_poor_quality.mp3 | splay; done
Play all your music in a loop
while true; do find ~/Music | splay; done
Play the 10 most recently added tracks
find ~/Music -type f -printf '%T@ %p\0' | sort -zk 1nr | sed -z 's/^[^ ]* //' | tr '\0' '\n' | head -n 10 | splay
I will stop now, I think you got it 💡
Create a playlist of all your ogg music
find ~/Music*.ogg > ~/Playlists/cool_songs.plist
Add a song to a playlist
echo ~/Music/nyan_cat_poor_quality.mp3 >> ~/Playlists/cool_songs.plist
Play a playlist with splay
cat ~/Playlists/cool_songs.plist | splay
How do I play only ogg's from interpret <insert cool artist here>
? That's simple:
(a=<insert cool artist here>; find . -name "*.ogg" -type f -exec grep -l -i -P "ARTIST=$a\x01" {} \; | splay)
Since searching for tracks of fresh artists is a hard job for your spinning metal consider saving your search results to a playlist:
(a=<insert cool artist here>; find . -name "*.ogg" -type f -exec grep -l -i -P "ARTIST=$a\x01" {} \; | tee "Only_$a.plist" | splay)
You can now play your playlist every time you want:
cat "Only_<insert cool artist here>.plist" | splay
There are only 11 defined
e
,end
end splayup
move the selection updown
move the selection not upenter
play the selected songn
play the next songp
play the previous songspace
switch between playing and pauseleft
seek ten seconds backwardsright
seek ten seconds in to the futuret
cycle through title display modes 🔄