Max Kellermann
b78896d64e
player/Control: use CANCEL to clear next_song in Seek()
...
Assigning nullptr to next_song may disrupt the player thread and
render undefined behavior.
2015-10-27 23:09:03 +01:00
Max Kellermann
e753c924ef
player/Thread: merge the cross_fading flag into enum CrossFadeState
2015-10-27 22:43:46 +01:00
Max Kellermann
9dc7b5a6d9
player/Thread: move ResetCrossFade() calls to where pipes are set
...
Move ResetCrossFade() to where cross-fading would actually break, to
make the cross-fading state more reliable.
2015-10-27 22:11:56 +01:00
Max Kellermann
f5d21c9cdb
player/Thread: add method ResetCrossFade()
2015-10-27 22:05:41 +01:00
Max Kellermann
6ce13646da
player/Thread: more CrossFadeState documentation
2015-10-27 21:12:20 +01:00
Max Kellermann
151653dd98
player/Thread: automatic CrossFadeState enum values
2015-10-27 21:05:10 +01:00
Max Kellermann
619cfe6a1c
player/Thread: move enum CrossFadeState into the Player class
2015-10-27 20:48:14 +01:00
Max Kellermann
8acf996d90
command/queue: add range parameter to plchanges and plchangesposid
2015-10-27 20:35:40 +01:00
Max Kellermann
15e432204e
pcm/Order: new library to convert from FLAC to ALSA channel order
...
This new library is integrated in the PcmExport class and (if enabled)
converts MPD's channel order (= FLAC channel order) to ALSA channel
order.
This fixes:
http://bugs.musicpd.org/view.php?id=3147
and
http://bugs.musicpd.org/view.php?id=3255
2015-10-27 11:44:23 +01:00
Max Kellermann
4b1630e1ec
AudioFormat: define that channel order follows the FLAC convention
...
Basic definition to solve http://bugs.musicpd.org/view.php?id=3147 and
http://bugs.musicpd.org/view.php?id=3255
2015-10-27 11:44:23 +01:00
Max Kellermann
41e63031b0
{android,win32}/build.py: upgrade Boost to 1.59.0
2015-10-27 11:33:09 +01:00
Max Kellermann
bb86f27fdf
{android,win32}/build.py: upgrade FFmpeg to 2.8.1
2015-10-27 11:31:13 +01:00
Max Kellermann
5cf4f62610
{android,win32}/build.py: upgrade CURL to 7.45.0
2015-10-27 11:31:13 +01:00
Max Kellermann
8e10a14866
android/build.py: switch to LLVM/clang 3.6
2015-10-27 11:31:13 +01:00
Max Kellermann
94f850a588
release v0.19.11
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAABCAAGBQJWL0cEAAoJECNuiljG20USkHkP/0m3kFEEgqauAIbI1t0TkKOp
2ii5iHZeMAlsxGEc5SX5fFoXM6STbXq/3+OXBf+OnABh9b03o744QAAwh1ei9tiQ
kMysbN2fbpHkuchx1JfrOU1ad3qfWXQri8csTtx5eRYpgyqF7Mfl1SoY1nkpherd
j4MVq7MVqBhwCqpAfJvTFTSOlNrJ4bBcvIgGslhFYhRxMRM83KgFS//lHvbXWnOg
fjYEO34nz0rjCfz6x2r7ZQBLeQVr9n6h24iYhSTnU7Xq9o2ezWlVRIm9YVhxoZKf
/MRJuAzaHhGID8IvX7dPxdQJ+feUhQXSv8HSjOJBO6R2dqIScE3D6EIBHy8Cj9Bk
O2D1SgmR+2NnjNz2GUjCIKHm9c9jTgv+rnZ2l8hweS2oUQOPHbCtOoCNAfwyP+/Y
ms1CavNl7bUuvWrM1ipM2ZK6QfW9P4F1dtmwqtJCsqdGFyQyfACcxqmlkfxhB2vI
NyvKAOn/TlWWQscF9id3r90sEir/J9e7IJ6oZh+uvyIfOtt8wR/Jm5/H1MA7j3iX
XmNbe1GY3WHjCH2lRr3tIRKAE8I3HAtBzwhvq/miSESrkEnJ06VMatkoMRQT63gy
62yaCg+ZWiBRp07ygiedYuGL19pDOhqRjY3U/b/0EHMb9ux083nuUTssqgzzO2OP
9OPao5CPs4M4QvmiG/wF
=RdQt
-----END PGP SIGNATURE-----
Merge tag 'v0.19.11'
2015-10-27 11:05:47 +01:00
Max Kellermann
db9997a106
release v0.19.11
2015-10-27 10:42:20 +01:00
Max Kellermann
0cbfb610f2
systemd: remove obsolete ControlGroup settings
...
This systemd feature has been removed a while ago without replacement,
and it turns out that systemd developers suggest not using control
groups at all to assign real-time privileges. Therfore, a replacement
feature will not be implement in future systemd releases, and we can
really remove those lines completely.
See http://bugs.musicpd.org/view.php?id=4413
2015-10-27 10:36:23 +01:00
Max Kellermann
f901cd042b
doc/user: section about real-time scheduling
2015-10-27 10:31:50 +01:00
Max Kellermann
5719207dfa
gme: don't loop forever, fall back to GME's default play length
...
Fixes http://bugs.musicpd.org/view.php?id=4432
2015-10-26 17:16:20 +01:00
Max Kellermann
a84fbbe327
decoder/gme: free the gme_info_t as early as possible
2015-10-26 17:15:24 +01:00
Max Kellermann
3882c11450
decoder/gme: log the emulator type
2015-10-26 17:00:27 +01:00
Max Kellermann
08f77c2b60
decoder/gme: add option "accuracy"
2015-10-26 16:56:55 +01:00
Max Kellermann
6269abbcc8
doc/user: add decoder/gme section
2015-10-26 16:56:55 +01:00
Max Kellermann
93c97972b9
decoder/gme: call decoder_seek_error() on seek error
2015-10-26 16:32:39 +01:00
Max Kellermann
ac61d43720
output/Command: flush the mixer cache when enabling/disabling output
...
Fixes mixer lag (http://bugs.musicpd.org/view.php?id=4425 ).
2015-10-26 16:29:07 +01:00
Max Kellermann
22ebe0e58f
playlist/flac: re-add the plugin
...
This reverts commit d7d9dbd2c2
by
reimplementing it with the current MPD API.
3 years ago, I was wrong about the "embcue" plugin being able to
replace this one, because "embcue" reads a tag named "CUESHEET", while
this plugin reads the "CUESHEET" FLAC metablock. There's an important
difference between those two!
2015-10-26 13:16:01 +01:00
Max Kellermann
1958f78cc1
decoder/ffmpeg: fix crash due to wrong avio_alloc_context() call
...
Allocate the buffer dynamically using av_malloc(), and free
AVIOContext.buffer in the destructor, as mandated by the libavformat
documentation.
Fixes http://bugs.musicpd.org/view.php?id=4446
2015-10-26 13:06:29 +01:00
Max Kellermann
f072cbbba7
LocateUri: new library to classify URIs in a standard way
2015-10-22 09:39:28 +02:00
Max Kellermann
1a5b66b78d
SongLoader: move code to LoadFromDatabase()
...
Avoids the recursion in LoadFile().
2015-10-22 09:34:13 +02:00
Andreas Mair
bea5973e0c
Filter out this extra data and leading zeroes in "track" and "disc" tags.
2015-10-21 08:30:33 +02:00
Max Kellermann
0366dcf604
PlaylistPrint: fix -Wunused #ifndef ENABLE_DATABASE
2015-10-20 13:50:00 +02:00
Max Kellermann
8211d4a1c2
DetachedSong: check AllocatedPath::FromUTF8() result
2015-10-20 12:16:25 +02:00
Max Kellermann
fc2154ee92
DetachedSong: move code from Update() to LoadFile()
...
Avoid duplicate AllocatedPath::FromUTF8() invocations in two callers.
2015-10-20 12:10:42 +02:00
Max Kellermann
76f85e6f7b
command/DatabaseCommands: pass URI to handle_lsinfo2()
2015-10-20 12:07:18 +02:00
Max Kellermann
81ce684b35
command/FileCommands: fix access to absolute paths in "readcomments"
2015-10-20 11:25:46 +02:00
Max Kellermann
42bd888946
input/InputStream: remove obsolete method OverrideMimeType()
2015-10-20 11:18:35 +02:00
Max Kellermann
6bea346c41
output/httpd: use boost::intrusive::list instead of std::forward_list
2015-10-19 16:00:26 +02:00
Max Kellermann
8d23706354
util/DeleteDisposer: new utility class
2015-10-19 15:57:30 +02:00
Max Kellermann
62bfb1a273
decoder/mad: reduce memory usage while scanning tags
...
Allocate the frame pointers only when actually decoding the file.
2015-10-19 13:12:36 +02:00
Max Kellermann
38e86af75c
fs/Traits: use StringAfterPrefix() in Relative()
2015-10-19 10:56:13 +02:00
Max Kellermann
607c2c5ba2
util/StringUtil: add StringAfterPrefix()
2015-10-16 19:18:04 +02:00
Max Kellermann
85f58eb082
util/WStringUtil: fix indent
2015-10-16 19:17:54 +02:00
Max Kellermann
a7ee64a25b
decoder/mpcdec: use SampleTraits<SampleFormat::S24_P32>
...
Eliminates some duplicate code, and as a side effect, this works
around clang 3.8 compiler warning because a negative value was
shifted.
2015-10-16 18:12:32 +02:00
Max Kellermann
2a58f22649
decoder/mpcdec: use Clamp()
2015-10-16 18:11:42 +02:00
Max Kellermann
f066bb7716
unix/Daemon, playlist/...: remove unused Domain variables
2015-10-16 18:08:59 +02:00
Max Kellermann
4e3d182189
encoder/flac: fix crash with 32 bit playback
...
Copy to encoder->audio_format *after* adjusting the sample format to
S24_P32.
Fixes http://bugs.musicpd.org/view.php?id=4433
2015-10-16 18:05:34 +02:00
Max Kellermann
205fba74cf
tag/ApeLoader: fix buffer overflow after unterminated key
2015-10-16 14:55:40 +02:00
Max Kellermann
a9bcf8d50d
configure.ac: prepare for 0.19.11
2015-10-16 14:55:40 +02:00
Max Kellermann
54383b017e
test/ReadApeTags: new debug program
2015-10-16 14:28:57 +02:00
Max Kellermann
438b7b7bd0
util/ConstBuffer: add method MoveFront()
2015-10-16 09:00:36 +02:00