Cmus

Last updated
cmus
Original author(s) Timo Hirvonen
Initial releaseJune 5, 2005;19 years ago (2005-06-05) [1]
Stable release 2.11.0 (May 11, 2024;9 months ago (2024-05-11)) [±]
Repository
Written in C
Operating system Unix-like
Available inEnglish
Type Audio player
License GPL-2.0-or-later
Website cmus.github.io

cmus (C Music Player) is an open source console audio player for Unix-like operating systems. cmus is distributed under the terms of the GPL-2.0-or-later and is operated exclusively through a text-based user interface, built with ncurses.

Contents

History

cmus was originally written by Timo Hirvonen. At around June 2008, he discontinued development of cmus, which resulted in a fork named "cmus-unofficial" in November 2008. After a year of development, a takeover request was sent to SourceForge, which was granted after a 90-day period without response from the original author. [2] This resulted in a merge of the fork back into the official project in February 2010. [3]

User interface

The interface of cmus is centered on views. There are two views on the music library (an artist/album tree and a flat sortable list) and views on playlists, the current play queue, the file system and for filters/settings. There is always only one view visible at any time.

Owing to the console-orientation and portability goals of the project, cmus is controlled exclusively via the keyboard. Commands are loosely modeled after those of the vi text editor. General operation mimics being in command-mode of vi, where complex commands are issued by prepending them with a colon, (e.g. ":add /home/user/music-dir"), simpler, more common commands are bound to individual keys, such as "j/k" moving down/up, or "x" starting playback, and searches beginning with "/" as in "/the beatles".

Core features

cmus in the List view Cmus-list-view.png
cmus in the List view
cmus in the File Browser view Cmus-browser-view.png
cmus in the File Browser view
cmus in the Filter view Cmus-filter-view.png
cmus in the Filter view

Keybindings

Here is a list of some common keybindings to interact with cmus while in the terminal, taken from the official manpage on a Linux distribution:

Commandcmus nameAction triggered
bplayer-nextplay next track
cplayer-pausepause current track
xplayer-playplay current track (after being paused)
zplayer-prevplay previous track
vplayer-stopstops current track and sets timestamp to 00:00
Bplay-next-albumplay next album (if available in current directory)
Zplayer-prev-albumplay previous album (if available in current directory)
left (left arrow key)seek -5goes back 5 seconds in current track
right (right arrow key)seek +5goes forward 5 seconds in current track

See also

References

  1. Initial release tag
  2. "SourceForge Ticket #6365". Archived from the original on 12 November 2012. Retrieved 27 June 2017.{{cite web}}: CS1 maint: bot: original URL status unknown (link)
  3. "Freshmeat announcement: cmus is alive". Archived from the original on 6 June 2011. Retrieved 24 April 2014.
  4. https://dev.openwrt.org/changeset/26784 cmus added to OpenWrt