Features Download

From: Gregory Petrosyan <gregory.petrosyan <at> gmail.com>
Subject: cmus 2.5.0
Newsgroups: gmane.comp.audio.cmus.devel
Date: Wednesday 7th November 2012 10:42:01 UTC (over 6 years ago)
It is my pleasure to announce cmus 2.5.0 "So Far" — next feature release
following 2.4.0 back from April of 2011. It has been a long time since
also: almost a year has passed (meaning that cmus is remarkably stable).
what such a long wait results in? Here are the highlights of the release:

- CUE sheets support. When adding e.g. `track.flac` to the library, cmus
check for `track.cue` or `track.flac.cue` in the same directory. If it
one, it will ignore the tags in `track.flac` and use CUE metadata instead

- cdio input plugin, for those of you who still remember what a CD is :-)

- support for WavPack `.wvc` correction files

- new «zenburn» color scheme (as seen at http://cmus.sf.net/), and text
attributes (bold/reverse/…) support for UI elements

- improved tab completion, new `scroll_offset` and
options, even better tag parsing and compilations handling, and numerous
enhancements all over the place.

Source code archive can be downloaded from the SourceForge:


or obtained via git:

    $ git clone git://gitorious.org/cmus/cmus.git
-b maint

After getting the source, cmus can be built with classic `./configure &&

If you prefer installing the software via package manager — please ping
cmus package maintainer to update to 2.5.0.



Donovan Watteau (1):
      Use -pthread on OpenBSD

Gregory Petrosyan (29):
      Remove TODO file
      readme: bump copyright
      Bump copyright in --version output
      utils: add hash_str(), eliminate copy-pasted hash functions
      view_save(): use correct playlist filename
      parse_lame(): remove dead code
      tree_add_track(): remove dead store
      id3: recognize TP2 frame as albumartist
      roar.c: clean up a bit
      path.h: introduce path_basename()
      track_info: use path_basename() as a best guess for missing track
      Move get_extension() to path.c
      Initial CUE sheets support
      browser: fix browser_up() for playlists
      resume: add support for browser-dir
      Fix build when libcue is absent
      Makefile: bring FFMPEG IP back
      Make CUE-related stuff not always-disabled
      player.c: silence a couple of clang's -Wconversion warnings
      configure: disable FFMPEG plugin by default
      browser: add '../' entries to playlists
      Revert "configure: disable FFMPEG plugin by default"
      Do not allow to add ".." from the browser view
      input: never free http_get before returning an error from
      comment: extend the heuristic for 'Various Artists'
      Allow to execute 'save -' over the net
      Change scroll_offset default from 0 to 2
      Atomically rewrite cmus config files on save
      cmus 2.5.0

Johannes Weißl (100):
      nomad: remove unused code
      nomad: remove non-fast mode
      mad: direct access to nomad_info and nomad_lame
      nomad: move unused code from header to source file
      wavpack: add support for correction (.wvc) files
      wavpack: implement push_back_byte()
      add codec_profile to format options / sort keys / filter expressions
      update COPYING
      update copyright notice
      Doc: add help for :shell
      modplug: read 'comment' tag
      modplug: allow compilation with libmodplug < 0.8
      wavpack: allow compilation with libwavpack < 4.40
      ffmpeg: move up "config/ffmpeg.h" include
      ffmpeg: allow compilation with libavcodec < 51.41.0
      fix two memleaks
      tab-complete commands which take program paths
      expand '~' for options which receive filenames
      tab-complete status_display_program option
      configure: fix FLAC include path
      include missing headers
      portability: replace (_ & S_IFREG) with S_ISREG(_)
      portability: replace alsa alloca usage by malloc
      compiler.h: fix warning when compiling with -pedantic
      portability: replace NO_ADDRESS with NO_DATA
      portability: replace memset(struct _, 0, _) with struct initializer
      portability: replace xnew0(struct keyval, _) with keyvals_new()
      portability: replace xnew0(struct _, _) with struct initializer
      cleanup: remove unused header includes
      cleanup: better (more accurate) header includes
      cleanup: replace  by 
      cleanup: move unused header includes from header to source file
      cleanup: ip.h/input.h: replace "comment.h" by "keyval.h"
      cleanup: output.h: remove unused header includes
      cleanup: player.h: remove unused header includes
      cleanup: read_wrapper.h: move unused header includes to source file
      xmalloc: use native strndup if available
      fix cache refresh bug
      add -f option to update-cache
      make add_ti usable by other functions
      add win-update-cache command
      improve fallback mode
      increase maximum value of buffer_seconds
      fix cache refresh bug [2]
      cache-update: also update playlist and play queue
      update-cache: also update player info
      configure: fix ffmpeg header detection
      fix TCP/IP networking protocol
      simplify dns lookup code
      configure: fix string function check
      show current bitrate in status bar
      fix segfault when hitting win-activate on empty tree
      display error if seeking failed
      fix segfault when using tqueue/lqueue
      fix lqueue command
      introduce channel mappings
      Makefile: clean .install.log
      fix infinite loop when adding certain mp3 files
      fix reading of id3v2 tags at the end of files
      more fault-tolerant integer tag-reading
      more off_t correctness
      fix compile error for new versions of ffmpeg
      id3: fix parsing xing for mp3s with CRC protection
      ao: allow compilation with libao < 1.0.0
      ffmpeg: allow compilation with libavcodec < 52.2.0
      wavpack: allow compilation with wavpack < 4.40.0
      add cdio input plugin
      mp4: fix compile error
      fix relative path handling in playlists
      Map unicode punctation/quotation characters to ASCII ones
      Fix segfault caused by too late initialization of UI
      id3: allow comments with description "description"
      ffmpeg: avoid deprecated functions
      ffmpeg: avoid more deprecated functions
      ffmpeg: include 
      ffmpeg: fix segfault
      configure: require pkg-config for libroar
      add auto-completion for fset command
      allow win-activate () to change the currently selected filter
      fix ffmpeg compile error
      add "originaldate" to format options / filters
      Fix mp4 compile error with SVN versions
      move tree_search_matches() down
      better search collapse in tree
      Add "wrap_search" option
      pass MusicBrainz Track ID to status_display_programs
      allow filtering by albumartist
      editable: small cleanup
      editable: better datastructure
      add additional format options
      tree: use originaldate for sorting if available
      Add "media" to sort, filter and format options
      add ffmpeg test script
      ffmpeg: fix compile error (rev e71f260)
      ffmpeg: fix compile error (rev 518d8d4)
      waveout: fix compilation warning / error
      configure: add better check for ffmpeg
      Add support for "albumsort" tag
      cue: add "filename.ext.cue" to the checked paths
      Add commands to goto the top/middle/bottom of the visible window

Julian Orth (2):
      win_set_sel respects scroll_offset

Philipp Schafft (1):
      Update RoarAudio output plugin

Pyotr Berezhkov (2):
      ui_curses.c: rename function utf8_encode() to avoid clash with
similarly-named function prototyped in convert.h
      Add 'icecast_default_charset' option to allow cmus to properly
display non-UTF-8 streaming metadata.

Siim Salonen (1):
      Add option to skip initial metadata loading

Tim Harder (1):
      ffmpeg: use correct API versions

meh (1):
      ui: add support for color attributes

sudo.nice (1):
      Add zenburn-like colorscheme for cmus
CD: 24ms