Discussion:
unknown
1970-01-01 00:00:00 UTC
Permalink
- HTTP proxy support for streams via http_proxy environment variable

- Less CPU wakeups during playback

This makes cmus more eco-friendly, because of reduced power consumption.
It also makes notebook batteries last a bit longer.

- New RoarAudio output plugin

- Support for big-endian systems, lots of different audio sample formats,
almost any C compiler and unix-like OS out there

Also, cmus' website (http://cmus.sourceforge.net) now has a wiki:
http://cmus.sourceforge.net/wiki. Make sure to check it out (and update, if=
it
is missing something).

So, grab the source tarball here:

https://sourceforge.net/projects/cmus/files/cmus-v2.4.0.tar.bz2/download

Or get cmus via git:

$ git clone git://gitorious.org/cmus/cmus.git

Installation is a classical "./configure && make && sudo make install", as
always.

Or, chances are, you'll find a packaged version of cmus 2.4.0 in the offici=
al
repository of your favorite distribution. If not, please ask the maintainer=
to
update the package!

I'd like to thank everyone, who has contributed to this release by writing
patches, participating in cmus-devel discussions, testing and packaging cmu=
s.
Especially I'd like to mention Johannes Wei=DFl, who has written the code f=
or
most of the awesome new features.

Hope you'll enjoy this release!

Gregory


P.S. And happy Easter, if you are celebrating it!



---



Git shortlog:


Adam Hoka (2):
Cast time_t to long long and use %lld so it works on platforms where =
time_t is 64bit.
isspace needs its argument casted to int.

Evan (1):
USE_FALLBACK_IP config option to enable catch-all input plugin

Ganael Laplanche (1):
configure: patched detection for libmpcdec (FreeBSD)

Gregory Petrosyan (29):
Merge branch 'maint'
output.c: simplify trivial forwarding functions
Merge branch 'jl/nowakeups'
Merge branch 'jw/remote'
Merge branch 'jw/search-wrap'
Merge commit 'jasonwoof/search-aa'
Update TODO
Merge branch 'maint'
Merge branch 'maint'
http: add 'uri' field to struct http_uri
http: support HTTP proxies via $http_proxy
http: add Basic proxy authorization support
Merge branch 'xc/valgrind'
track.c: remove unused reshuffle() function
track.c: remove misleading comment
cache: fix cache invalidation bug caused by commit 594aa
Merge branch 'rbtree2'
Merge branch 'maint'
pulse: don't set useless stream properties
Merge branch 'ffmpeg-fallback'
Merge branch 'maint'
tree: better album date calculation
tree: properly update artist/album position when changing their sort =
attributes
roar: silence 'defined but not used' compiler warning
Make u_casefold_char() work properly on OS X and Windows
id3: fix id3_skiplen() for UTF-16 and UTF-16BE
id3: fix heavily broken comments parsing
cmus 2.4.0-rc0
cmus 2.4.0

Jan-Philipp Litza (1):
Use pthread_cond_* while waiting for beginning of playback

Jason Woofenden (3):
Make search wrap when reaching the end/beginning
Make albumartist tag searchable
add :w and :wq aliases

Johannes Wei=DFl (153):
server: write info_msg() and error_msg() to client
save: add -q option for saving queue
save: add -L flag, which outputs filtered library
save: filename "-" outputs to stdout
server: move escape() from server.c to misc.c
save: add -e option for extended output
doc: save -e -L -q, cmus-remote examples
configure: add -Wformat-security to gcc options
speedup: code reordering in comments.c
speedup: use rbtree for sorted and shuffle list
rbtree: rename loop defines
fix segfault when adding to queue
fix order of sorted view (has been reversed)
add Mutt-like filter shortcuts
utils: add N_ELEMENTS macro
utf8_encode: rename to convert.[ch], generalize
strip unneeded extern keyword
faster version of u_strlen()
make using_utf8 and charset global
introduce collation comparison
do not mind diacritical marks (accents) when searching / filtering
gen_decomp.py: expand special mapping
improve string handling for short filter expressions
bugfix: recognize boolean keys in short filters
ffmpeg: fix compiler warning
ffmpeg: use new metadata API
bugfix: do_u_strncase_equal() ignores last character
track_info.c: cosmetic change
track_info_cmp(): compare filename with strcoll() instead of strcasec=
mp()
ui_curses.c: remove code duplication
bugfix: reintroduce safe u_strlen()
convert filter and search expressions to UTF-8
u_strcasestr_filename(): correctly handle non-utf8 cases
fix gcc-4.6 warnings
cmdline: add ctrl-w and friends
tree: add artist_new() and album_new() functions
use rbtree for the library tree view
fix sorted view (again)
editable: use rbtree for sorting
fix: put tracks with blank artist on top in view 2
speedup track info comparison
track_info_cmp(): use collation keys
tree: use collation keys for sort names
compiler.h: make __builtin_expect depend on __GNUC__
better offsetof() and container_of() macros
scripts/checks.sh: fix function test
config/checks.sh: detect -rdynamic flag
only enable colors if use_default_colors() is there
fix gcc compile warning on mipsel platforms
uchar: faster (and more usable) version of u_get_char()
portability fix: standard conform use of anonymous member
fix: sidestep glibc anomaly when using non-gnu compilers
silence tcc warning
portability: wrap add_ti_cb callback in struct
cosmetic change: replace xmalloc with xnew where possible
portability: remove conditionals with omitted operands
portability: replace zero-length arrays with flexible array members
portability: include missing headers
mp4: add com.apple.iTunes freeform tags
mpc: fix replay gain calculation
fix clang warning
utils.sh: comment $CROSS variable
checks.sh: better check for endianness
configure: use pkg-config for flac detection
expr.c: better recognition of short filter expressions
add live filter command (:live-filter)
add overlay status info for live filter
remove item from TODO
wav.c: add RIFF metadata support
utils.h: use builtin byte swapping functions
player.c: add support for 32bit softvol scaling
flac.c: use swapping functions in utils.h
oss.c: support sample size of 32bit
wav.c: add extensible wave support
wav.c: support 32bit wave files
wav.c: support seeking for other than 2ch 16/8bit
mad: only use xing.nr_frames when !=3D 0
speedup: do fast filtering if no filter is set
ffmpeg.c: reset frame_size to AVCODEC_MAX_AUDIO_FRAME_SIZE in loop
ffmpeg.c: correctly scale seeking position
ffmpeg.c: add .mka extension
fix build error on NetBSD (bswap16/32)
cache: fix writing of tracks with more than 32 tags
flac: fix segfault when playing corrupt flac files
pulse: fix playback of multi-channel audio files
pulse: fix deadlock
roar: don't write warning messages to stderr
output.c: better autodetect output plugin
change order of output plugins
tree.c: fix infinite loop when searching
tree.c: collapse artists after continuing search
plugins: handle missing dependencies more gracefully
add backwards tab completion (s-tab)
ffmpeg.c: correctly detect sample format
player.c: support 24bit scaling
format_print.h: avoid code duplication
add long track format options
enable display / sorting of replay gain values
Doc: update sort keys / format strings
support percentage for format width
options.c: change default format_playlist
add bitrate to format options / sort keys
add codec to format options / sort keys
add input plugin priorities and better fallback
ffmpeg.c: add more file types
input.c: fix frame_size check in BUG_ON
oss: support multi channel audio
oss: better oss_buffer_space()
pcm: use native byte order
vorbis: always use native byte order
mikmod: fix playback on bigendian systems
modplug: fix playback on bigendian systems
ffmpeg: fix playback on bigendian systems
make iconv dependency optional
configure: better check when using app_config
compiler.h: use __builtin_offsetof only for gcc version > 3
ffmpeg: enable compilation for libavcodec < 51.65
id3: better date parsing
player.c: replay gain scaling works without peak
mad: enable LAME replay gain info
tree: do not use artistsort for compilations
tree: fix smart artist sort name behaviour
tree: fix sorting of albums
fix segfault when changing sort keys while adding tracks
fix live filtering for integer expressions
lib.c: do not consider live filter when doing lib_for_each()
oss.c: support sample size of 24bit
expr.c: add bitrate and codec to filter expressions
Doc: update sort keys / format strings
expr.c: fix filtering for unset date
mikmod: fix mik_read_comments()
mikmod: return codec name
modplug: return codec names
modplug: remove compressed types
add option to resume playback on startup
resume: also restore current live-filter
resume: save queue to $CMUS_HOME/queue.pl
add :shell command
spawn status_display_program in the background
ui_curses.c: cleanup usage of player_info
cmdline: change filename delimiter to just '/'
track_info_cmp: fix comparison of doubles
ui_curses.c: fix severe display errors if iconv fails
allow overriding charset with CMUS_CHARSET environment variable
Doc: add ENVIRONMENT section
fix warning if compiling with -Os
vorbis: return with different error message
load playlist before library on startup
configure: fix detection of mp4.h
configure: fix detection of mpc/mpcdec.h
configure: better detection of avcodec.h
pulse: set standard icon
spawn.c: avoid zombie processes

Mikhail Gonchar (1):
id3: fix UTF-16 handling

Philipp Schafft (1):
Add RoarAudio output plugin

Xavier Chantry (6):
gitignore : add backup files *~
Fix a few pointer types warning
history : fix invalid read and memory leak
track_info : fix invalid read
player : add new buffer_free on exit
ffmpeg : fix memleak in ffmpeg_input_free

gt (1):
Added example for %{bitrate} format string.


--sdtB3X0nJg68CQEu
Content-Type: application/pgp-signature; name="signature.asc"
Content-Description: Digital signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)

iEYEARECAAYFAk2zaAIACgkQB47rnGRQhWA83QCgwIGIXlTkeRvj4y5PH+fLqBIi
eHQAn3MKLHYK0GAEE2g+Ms1vQdXWoAj9
=ns3N
-----END PGP SIGNATURE-----

--sdtB3X0nJg68CQEu--

Loading...