cmus

Rating: 
5
Your rating: None Average: 5 (3 votes)
If you do not need a virtual keyboard, then it is recommended to use Havoc due to Fingerterm, Toeterm and Literm all having redraw issues in some CLI apps. If you still need one of those, see the corresponding section below. Run inside a tmux session to combine better delimiters in Fingerterm and Literm, or combine tiled panes with cava or lyvi (soon). cmus' best experience is with a hardware keyboard in Havoc or in org.kde.konsole (which even enables touch support), but alternatively you can use the virtual keyboard in Fingerterm, Toeterm and Literm. Setting up qCommand with "cmus-remote [OPTION]" is also handy for quick actions from cover (see second screenshot).

# cmus, C* Music Player
Small, fast and powerful console music player for Unix-Like operating systems. cmus is one of the most efficient, functional and friendly players available. Can be controled remotely from SSH.

# Instructions
To add files to the library, go to the browser view (key 5), select the desired folder and add it (key a). Use keys 1 to 7 to switch between views:

1 = Album/artist view
2 = Flat sortable library
3 = Playlists
4 = Play queue
5 = Browser
6 = Library filters
7 = Settings and keybindings

Many settings are available to change the colorscheme, default behaviour, keybindings, etc. Go to settings (key 7) to check current keybindings and options. The configuration can also be altered outside cmus by creating a ~/.config/cmus/rc file with the desired options.

cmus will ignore overall OS volume and hardware volume rocker may have no effect on playback volume, but volume can be adjusted inside cmus (key - to decrease, keys + or = to increase), as well as L/R balance (keys {} to increase and [] to decrease []).

# Features
- Input: Ogg Vorbis, MP3, FLAC, Opus, Musepack, WavPack, WAV, AAC, MP4, audio CD, and everythign supported by ffmpeg (WMA, APE, MKA, TTA, SHM…), libmodplug and BASS
- Output: PulseAudio, ALSA, OSS, JACK, RoarAudio, CoreAudio, libao, sndio (OpenBSD), aRts, Sun, and WaveOut (Windows)

# Playing
- Gapless playback
- ReplayGain support
- MP3 and Ogg streaming (SHOUTcast/Icecast)
- Play queue
- Optional playback resume on startup

# Interface
- Instant startup, even with thousands of tracks
- Powerful playlist filters/live filtering
- Easy to use directory browser
- Customizable colors
- Dynamic keybindings; you can bind a key to any command, ":seek +1m" for example
- Vi/less style search mode
- Vi style command mode with tab completion

# Misc
- CUE sheets support
- Excellent compilations handling
- Uses Unicode internally for all string handling
- Supports audio scrobbling (to e.g. Last.fm or Libre.fm) etc., via status display programs
- Can run external commands for the currently selected files (tag-editor for example)
- Can be controlled via UNIX socket using "cmus-remote" command
- Known to work on Linux, OS X, FreeBSD, NetBSD, OpenBSD and Cygwin… And now Sailfish OS!

See details and help at https://cmus.github.io/.

 

# Partial fix for Fingerterm, Toeterm and Literm
With their default TERM value, those terminals related to Fingerterm cannot properly redraw lines in some CLI tools.

Solution 1 (recommended): use tmux in those terminals and launch cmus in the tmux session. You can set up an alias if necessary.

Solution 2: If tmux is not an option for you, then you'll have to set TERM to xterm-color to fix some of these issues, but manually setting TERM can break other unanticipated things. To change TERM only when you run cmus and reset it to default when the terminal is restarted, set a new cmus-fingerterm alias to use in those Fingerterm-related terminals until they are fixed. To create the alias, run this (only once):

echo "alias cmus-fingerterm='TERM=xterm-color && cmus'" >> ~/.bashrc && source ~/.bashrc

Make sure you didn't have any other alias for cmus in your ~/.bashrc. You can now run the command cmus-fingerterm in any of those terminals (prefer Toeterm for better delimiters and overall improved appearance). In any other terminal, or inside a tmux session, just use the normal cmus command.

# Disclaimer
I am not the developer of cmus, I just packaged it for SFOS. cmus is not actively developed since it hit its final release, but PRs are still being considered when necessary. The development does not include the SFOS package, which may or may not be updated in the future.

The package is meant to be light on dependencies, therefore some features of upstream cmus may not work in SFOS. It has been built with ffmpeg and libmad was disabled since it is not availanle on SFOS.

 

Screenshots: 
Application versions: 
AttachmentSizeDate
File cmus-2.8.0.24-1.armv7hl.rpm607.42 KB26/05/2020 - 15:05
File cmus-2.8.0.24-2.armv7hl.rpm607.91 KB10/06/2020 - 04:14
Changelog: 

* Wed Jun 10 2020 Kabouik <matf[redactedforbots]disr.it> 2.8.0-24-gd1290d5 Rel. 2
- Same cmus version but move binaries to /usr/bin instead of /usr/local/bin.
* Sun May 24 2020 Kabouik <matf[redactedforbots]disr.it> 2.8.0-24-gd1290d5
- First SFOS package based on the 2.8.0-24-gd1290d5.