September 17, 2021

I’ve been using cmus as my main music for almost a year and I am pretty happy with it. It has a low memory fingerprint, and it easily parses large database of MP3. Of course, it is a lot different from Apple’s own music player, iTunes, which I used to love before they made so many updates to the app that it no longer resembles the app it was ten years ago. Cmus is simple, yet powerful.

I also tried mpv, which I consider as the best CLI tool for multimedia files after ffmpeg — and not only because Glen Gould is on the cover, and VLC. VLC is fine but I mostly use mpv to watch videos or Youtube downloads on my computer. I even have a script, called playme, to launch a playlist in the background:


case "$1" in
    kitty @ launch --type tab --tab-title "mpv" mpv --shuffle --no-audio-display ~/Media/Music/Jazz\ Chill
    mpv --shuffle --no-audio-display --no-terminal  ~/Media/Music/Jazz\ Chill
      echo "Usage: $0 {kitty|term}"
      exit 2

exit 0

It works fine to just launch 12 hours of music in the background and get back to work. I also found a little script that helps to display the current song in my status bar (which actually is a customized polybar). Likewise I have a script to display the current track from cmus, with interactive mouse actions (stop, skip forward/backward in playlist). It looks like it is easier to manage cmus state thanks to cmus-remote which handles most of the actions we expect from a mini player. See also Workflow Optimization Part 3: Sidekick Programs for i3 for a solution similar to mine.

There’s a lot more to see with cmus extensions.

Should you want to fetch music directly from Youtube, you can use the following hack. You will likely need to install a bunch of additional libraries on Ubuntu, but it works fine. This may help developing additional command to fetch music from external provider (e.g. Bandcamp, or online radio).


See Also

» Nyxt browser and other handy TUI apps » Neomutt » Timeshift for system backup » Now using i3wm as a window manager » Ubuntu on a MacBook Pro