Max Kellermann
dc11dea7cc
configure.ac: prepare for 0.18.20
2014-12-08 14:13:20 +01:00
Max Kellermann
be492ed108
android: update libFLAC to 1.3.1
...
Due to security vulnerabilities.
2014-11-28 21:08:27 +01:00
Max Kellermann
03d2fb450f
configure.ac: prepare for 0.19.6
2014-11-28 20:13:57 +01:00
Max Kellermann
67cba251c8
release v0.19.5
2014-11-26 20:11:42 +01:00
Max Kellermann
27ce80544f
release v0.18.19
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAABAgAGBQJUdiMjAAoJECNuiljG20USjnMP/jQl/aIEiUwbwqq1F8+0wlFh
lX5xix5+7QuvTH2Lw5brNSRdVRsHGGeDqVcSi1zY4tgNXK/EBmS1mDVKWQO5qJd9
v+ueDRr7xI3HFECe0J7h2Q5GGD/YkeSyjB2k7C7I7t1axukLOXbP+qVyz6/d1azZ
SkUKKmIUD4KdJuDWy34JYYiltGl94JNyTBvC+jJV4Mbg2qd7XV6MSvJipiK6aM05
UsEza9bF/jG2aHL/xtR+dEnNLAoFoZ/h1RqUoYw4DLEKxfip+E3MD4sEx6Sg8XSv
v2rZQrMhl2LvJkwCjo57KrJ4YmHK0U3zg3ElDefqRsW4J10x5d3hhOINJPpHUpyZ
T5RvoDCJ5BL+6wg0tA57338pNydSBQDV5+WjI9+vD8ahnZlFgjY+OoJDxkxtFlYz
pLazEQbkUWlU62ZGW/dVpwgYInalNH9ZTrvelwXtGmwMfLhp01S4DHX3ipFgmMGd
do3x/FoVRyOnFWQPotga3+ZoARqmXhfQ70DqESoajBHeLTzYBs9vh+fw6y1iVeGb
rIBEIyMPlyuPt+2NrLflo6o0VMYB8MV3nh3P3DX8Ywavae3+k4WPGx2w/MEM34lF
sWUDXfZeCwJ5rrXeyP/s2C9ZmJ+Bm6WlxQ0gUZXMtrfDShPBY8gHzGi4m3ooslde
OZCIokCaATDa9Fp6CRD8
=I9PV
-----END PGP SIGNATURE-----
Merge tag 'v0.18.19' into v0.19.x
2014-11-26 20:02:57 +01:00
Max Kellermann
04f627c2af
release v0.18.19
2014-11-26 19:58:48 +01:00
Max Kellermann
3cef348f30
lib/nfs/Manager: defer NfsConnection destruction
...
Avoids a crash that occurs when NfsConnection::OnSocketReady()
dereferences itself before returning.
2014-11-25 13:31:18 +01:00
Max Kellermann
fa4d202e71
decoder/mp4v2: remove because of incompatible license
...
libmp4v2 is licensed under MPL 1.1, which is incompatible with GPLv2.
Unfortunately, this means that we must remove the plugin.
More information can be found in the Debian bug report:
http://bugs.debian.org/767504
2014-11-25 13:10:52 +01:00
Max Kellermann
a254f5a3a8
archive/zzip: fix inverted error handler
...
Set the Error when zzip_seek()==-1 and not on success. Fixes a crash
after seeking.
2014-11-24 22:08:50 +01:00
Max Kellermann
143c735f96
configure.ac: prepare for 0.18.19
2014-11-24 22:08:50 +01:00
Max Kellermann
951bad46e0
decoder/{dsdiff,dsf,opus}: fix deadlock while seeking
2014-11-24 08:54:30 +01:00
Max Kellermann
bbc618b8f9
configure.ac: prepare for 0.19.5
2014-11-24 08:09:44 +01:00
Max Kellermann
d6bc5c35a7
release v0.19.4
2014-11-18 21:40:52 +01:00
Max Kellermann
dc03f003ac
release v0.18.18
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAABAgAGBQJUa62OAAoJECNuiljG20US1CkP/3YaAg76hJDaeFAyi7/10lOs
yI8tPmpQk8S+nuclsBJeIr+9xNRsjb1ebW4tI9uBRxqMT10SF7rMCH/qAmgnS9tQ
6M48hF0o9xegjz4x5BosEJjXtiekYN068Xi/hk+H27guVy14f6Xx7oRpdr5oI/O0
F83D1V2+vs6FuOyn42UQQNHVlYMac5SScHoSFomnwRYWI2wb2ay4H5Dlykb5BUl0
tTjJ2lYwN18vUoMxjmCNS+bLd7jag6FZ/PXntB1zXe22R17eAIuFZAMKaQvnQtUi
QZjFPhpd+mBsZLfokB3belyNNb4F6qSG2W6lZrFRB+SU/LqnY2AL/dxPJD9eiufs
5jEIOw9hNBBKo217+hkPwp5pAF50u11tKXUXbKGeR42zAO0zll/+g2afVwoqdAfD
llPDyQyXiB3tmA1bgJD7u9gaud3UaaXoxajPb5LnmklzGxiN5u1rnoo+E5ppBvQ4
31wPHGpzsjxEC7Xn9hErPP17jYXY1HT/xRb8XZNrFqJVZxSyjqQlDWomhCWDcvPc
Du1PyKaQ08zgElEM5trwC9RjJxQdr0sckQcTnYC/0ksfJ7Nhh8M2yepEI/gmWbnO
JBQ7YzpQhE9oMMH8jzVLLdC44yF6QvXcGQ3D9eUfwvPk9Z70mHlNI3Q6kbZ76U5j
RHLp+oSaxFUXfPdciZaw
=GO+k
-----END PGP SIGNATURE-----
Merge tag 'v0.18.18' into v0.19.x
2014-11-18 21:38:44 +01:00
Max Kellermann
7aa2104596
release v0.18.18
2014-11-18 21:34:03 +01:00
Max Kellermann
460cfba6ff
QueueCommands: workaround for buggy clients that send "add /"
2014-11-18 21:31:54 +01:00
Max Kellermann
c8b93d6573
Client: assume uid==0 is local socket
...
A negative uid value means it's not a "local socket" (PF_LOCAL).
uid==0 means user "root" connected.
2014-11-18 20:56:27 +01:00
Max Kellermann
7c6b991de7
decoder/opus: add MIME types audio/ogg and application/ogg
2014-11-12 15:16:34 +01:00
Max Kellermann
82460aa49f
configure.ac: prepare for 0.19.4
2014-11-12 15:16:07 +01:00
Florent Le Coz
7e7b403043
Construct a Null AllocatedPath if the filename conversion into UTF8 failed
2014-11-11 17:15:19 +01:00
Max Kellermann
e5217e6ce9
release v0.19.3
2014-11-11 11:21:42 +01:00
Max Kellermann
c98cb1d6f9
decoder/opus: support chained streams
2014-11-11 11:20:18 +01:00
Max Kellermann
23465ad985
decoder/opus: improved error logging
2014-11-11 11:20:03 +01:00
Max Kellermann
7886a14b74
decoder/opus: fix mistyped LoadEOSPacket() return value
2014-11-11 11:18:51 +01:00
Misty De Meo
134cb6a017
Main: fix compilation on OS X using non-Apple compilers
...
Commit d42c0f1dc5
added an OS X-specific
method of calling mpd_main_after_fork(), which uses Grand Central
Dispatch. Since this uses a block literal, it breaks compilation on
compilers which don't support the block extension, e.g. non-Apple
compilers. This affects users on older OS X releases with GCD (which
depend on older Clang releases, or Apple GCCs, which don't support the
C++11 features MPD needs); or which don't support GCD at all (10.5 and
lower).
This patch changes the #ifdef so that the non-GCD code is used
as it was on OS X before this patch if blocks aren't available, via
checking __BLOCKS__ macro.
2014-11-11 06:22:24 +01:00
Max Kellermann
8d036c4b7c
pcm/SoxrResampler: round output buffer size up
...
The old formula calculates the output buffer size with "regular"
rounding (to the nearest integer), however sometimes, that is
insufficient and the last sample cannot be resampled. This causes
audible distortions. By changing the formula to consider the worst
case (always round up), this problem is eliminated.
2014-11-10 22:52:17 +01:00
Max Kellermann
c64ad78c7b
decoder/ffmpeg: support opus
2014-11-10 18:00:30 +01:00
Max Kellermann
4a043a915f
configure.ac: prepare for 0.18.1
2014-11-10 17:59:06 +01:00
Max Kellermann
8ff0d99092
decoder/audiofile: fix bit rate calculation
2014-11-10 09:00:50 +01:00
Max Kellermann
ff6f1655f0
input/curl: ignore ResponseBoundary() while seeking
...
While seeking, metadata must not be updated. ResponseBoundary() was
added in MPD 0.19.1, but I forgot to add the IsSeeking() check there.
This caused the "seekable" flag to reset.
2014-11-10 08:45:19 +01:00
Max Kellermann
b5ba94f1de
tag/Set: do AlbumArtist/Artist fallback only if AlbumArtist is not disabled
...
On "list albumartist", songs that have no AlbumArtist tag will use the
Artist tag. However, if AlbumArtist is disabled via
"metadata_to_use", the TagBuilder::AddItem() call is ignored, and
PrintUniqueTag() attempts to print a nullptr string.
This commit fixes the problem by attempting the fallback only if
AlbumArtist is not disabled.
2014-11-08 19:25:01 +01:00
Max Kellermann
125eb01e03
decoder/ffmpeg: support opus
2014-11-07 19:22:26 +01:00
Max Kellermann
6f23e91e33
lib/upnp/ContentDirectoryService: swap uri_apply_base() parameters
...
When uri_apply_base() was moved from db/upnp/Util.cpp to
util/UriUtil.cpp, the parameter order was changed, however without
swapping the parameters in the ContentDirectoryService constructor.
2014-11-07 18:43:00 +01:00
Max Kellermann
1bd8a322f5
input/AsyncInputStream: set Error when seeking unseekable
...
Fixes crash in the "audiofile" decoder while logging the seek error.
2014-11-07 13:57:57 +01:00
Max Kellermann
9f8c2b3b56
configure.ac: prepare for 0.19.3
2014-11-04 09:24:09 +01:00
Max Kellermann
6a7f6cdacd
release v0.19.2
2014-11-02 13:46:32 +01:00
Max Kellermann
5715342fe0
release v0.18.17
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2
iQIcBAABAgAGBQJUViZ+AAoJECNuiljG20USnkQP/Ry2OyaQhmDD6Arc5MOiPJQH
Iast5sW+3ufWsgUr6PE5aPaHivlNGyRLFvvwgZ+h6bFbhJpsHrh34ZSFJQMQYONh
zWxQ+FJG83zmyAhZzEvZb6zsLIrjepqp403ltX0HKV1Ax+F3MMZp9DGy1tqaMZyX
C4Bc+wrWpgtF1Yl7/oL7v2niEvzLM7wpP6HQlQNZ9/IqOUcx4u4zmv3mkYAF2o2U
upAsNo2mFyPEzfcT6wJM2w20Z+li9FqYUIU6hp+wXM3411OhsvKeo1I0ygZ19Dlw
nfzEp+l/UUgCOKJLp/672v0w1nbGvWhjyy49pa95Qk88LBDKJCWxEgbt7SO8Uh5S
qvkWt1JI9HyFrhn9khYV986He0MU48qHTvgGDb7ZM9YiiYZR907N0+X6u57raAAW
Dlrt0Z18SS/galhctlO/QRg+/1FldTimYRmZTqAApMf2qfpY2BrQX9hAgDnuPZ2D
vcJIJG73+4F7Ypzhw2BGbee+IZMvGIuQw8Gf+NOnaVui5chi5U1S3AXUJoh34/Du
jzhFA7J0e989779elgcmPxVdm6n2Fa/AdnslUcL04lNaOUEKY9hkwaZWh/+8V51E
/6jf4W4VMUrfOChjPjhGFbSegO4bL0siA4GkUQat9KbgT2MEVEXBuN8wPaHw9+oj
4Yk5k/Ibo065A+83A7ng
=dFx9
-----END PGP SIGNATURE-----
Merge tag 'v0.18.17' into v0.19.x
2014-11-02 13:46:09 +01:00
Max Kellermann
38a0d15190
release v0.18.17
2014-11-02 13:06:20 +01:00
Max Kellermann
56f763a4a8
input/curl: forget Content-Length (and more) after redirect
...
Fixes playback of redirected streams.
2014-11-02 13:00:28 +01:00
Max Kellermann
1f59701c46
Merge branch 'v0.18.x' into v0.19.x
2014-11-02 12:27:46 +01:00
Max Kellermann
32b5654a6e
Decoder, Playlist: ignore URI query string for plugin detection
...
Use the new uri_get_suffix() overload that removes the query string.
2014-11-02 11:54:26 +01:00
Max Kellermann
6ad336743d
PlaylistFile: don't allow empty playlist name
2014-11-02 11:52:48 +01:00
Max Kellermann
c882568ccd
playlist/m3u: recognize the file suffix ".m3u8"
2014-11-02 11:50:56 +01:00
Max Kellermann
f6b2899dd2
decoder/faad: remove workaround for ancient libfaad2 ABI bug
...
Many years ago, FAAD had a serious ABI bug: the NeAACDecInit()
prototype in its header declared the "samplerate" parameter to be
"unsigned long *", but internally, the function assumed it was
"uint32_t *" instead. On 32 bit machines, that was no difference, but
on 64 bit, this left one portion of the return value uninitialized;
and worse, on big-endian, the wrong word was filled. This bug had to
be worked around in MPD (commit 9c4e97a6
).
A few months later, the bug was fixed in the FAAD CVS in commit 1.117
on file libfaad/decoder.c; the commit message was:
"Use public headers internally to prevent duplicate declarations"
The commit message was too brief at best; the problem was not
duplicate declarations, but a prototype mismatch. No mention of the
bug fix in the ChangeLog.
The MPD project never learned about this bug fix, and so MPD would
always pass a "uin32_t *" dressed up as a "unsigned long *". Nearly 6
years later, it's about time to fix this second ABI problem. Let's
kill the workaround!
2014-11-02 11:50:56 +01:00
Steven OBrien
bccd4ef2f7
decoder/ffmpeg: recognize MIME type audio/aacp
2014-11-02 11:50:56 +01:00
Max Kellermann
432ce9b1de
configure.ac: prepare for 0.18.17
2014-11-02 11:41:40 +01:00
Max Kellermann
7d5442e103
Decoder, Playlist: ignore URI query string for plugin detection
...
Use the new uri_get_suffix() overload that removes the query string.
2014-11-01 13:41:18 +01:00
Max Kellermann
7350144ab3
PlaylistFile: don't allow empty playlist name
2014-10-31 14:59:27 +01:00
Max Kellermann
54c591bd9d
decoder/mad: fix negative replay gain values
...
Negating an unsigned integer does not work.
2014-10-28 22:22:30 +01:00
Max Kellermann
217d88f21f
TextInputStream: don't ignore unterminated last line
2014-10-28 22:10:47 +01:00
Max Kellermann
394e3be482
playlist/m3u: recognize the file suffix ".m3u8"
2014-10-26 08:14:16 +01:00
Max Kellermann
d7f024c510
OutputThread: fall back to PCM if given DSD sample rate is not supported
...
Works around the "PCM conversion from f to dsd is not implemented"
error message that prevents DSD playback.
2014-10-25 22:06:08 +02:00
Max Kellermann
bc5a53574c
decoder/faad: remove workaround for ancient libfaad2 ABI bug
...
Many years ago, FAAD had a serious ABI bug: the NeAACDecInit()
prototype in its header declared the "samplerate" parameter to be
"unsigned long *", but internally, the function assumed it was
"uint32_t *" instead. On 32 bit machines, that was no difference, but
on 64 bit, this left one portion of the return value uninitialized;
and worse, on big-endian, the wrong word was filled. This bug had to
be worked around in MPD (commit 9c4e97a6
).
A few months later, the bug was fixed in the FAAD CVS in commit 1.117
on file libfaad/decoder.c; the commit message was:
"Use public headers internally to prevent duplicate declarations"
The commit message was too brief at best; the problem was not
duplicate declarations, but a prototype mismatch. No mention of the
bug fix in the ChangeLog.
The MPD project never learned about this bug fix, and so MPD would
always pass a "uin32_t *" dressed up as a "unsigned long *". Nearly 6
years later, it's about time to fix this second ABI problem. Let's
kill the workaround!
2014-10-25 20:42:50 +02:00
Steven OBrien
8cd17ce045
decoder/ffmpeg: recognize MIME type audio/aacp
2014-10-25 00:26:58 +02:00
Max Kellermann
f36db9bb04
configure.ac: auto-disable plugins that require GLib when --disable-glib is used
2014-10-24 23:46:20 +02:00
Max Kellermann
a7b09d3d1c
OutputThread: close the output plugin after filter failure
...
Fixes memory leak because ao_plugin_close() never gets called.
2014-10-24 00:35:16 +02:00
Max Kellermann
200cdb6b0a
pcm/PcmConvert: assign {src,dest}_format at the end
...
Fixes assertion failure in destructor by not assigning
{src,dest}_format when an error occurs.
2014-10-23 22:39:51 +02:00
Max Kellermann
2d9e972195
configure.ac: prepare for 0.19.2
2014-10-23 21:57:04 +02:00
Max Kellermann
97a1a04116
release v0.19.1
2014-10-19 01:03:17 +02:00
Max Kellermann
493cd866f1
TextInputStream: manually shift the buffer before reading
...
Fixes truncated lines in m3u and cue files (regression by commit
67958f7
).
2014-10-19 00:50:52 +02:00
Max Kellermann
a0fae8dacc
playlist/extm3u: strip first line for #EXTM3U detection
2014-10-17 20:45:18 +02:00
Max Kellermann
bc840b69d5
Makefile.am: distribute systemd/mpd.socket
...
The file systemd/mpd.service.in is being distributed implicitly, but
systemd/mpd.socket is not and needs to be added to EXTRA_DIST.
2014-10-12 08:38:52 +02:00
Max Kellermann
85301853d6
ThreadInputStream: call ThreadRead() inside the thread instead of Read()
...
Fixes deadlock bug in the "mms" plugin.
2014-10-11 21:59:06 +02:00
Max Kellermann
538ddf7af2
NEWS: add missing line
2014-10-11 21:48:52 +02:00
Max Kellermann
d5afa181f7
NEWS: fix typo in version number
2014-10-11 21:48:27 +02:00
Max Kellermann
160242a74f
configure.ac: prepare for 0.19.1
2014-10-11 20:25:19 +02:00
Max Kellermann
81b83bc904
release v0.19
2014-10-10 23:49:31 +02:00
Max Kellermann
2a716b7a7a
doc: document the mount/neighbor commands
2014-10-10 23:22:39 +02:00
Max Kellermann
f445b0178a
TagString: remove ISO-Latin-1 fallback
...
MPD handles all strings in UTF-8 internally. Those decoders which
read Latin-1 tags are supposed to implement the conversion, instead of
passing Latin-1 to TagBuilder::AddItem(). FixTagString() is simply
the wrong place to do that, and hard-coding Latin-1 is kind of
arbitrary.
2014-10-10 20:53:08 +02:00
nanotech
f0be48ff90
Main: run the OS X native event loop
2014-10-10 19:51:44 +02:00
Max Kellermann
3560dc4be6
Tag: support "AlbumSort"
...
The new tag is supported by all decoders that use the tag name table,
and the ID3v2 tag "TSOA" maps to it.
2014-09-29 18:55:59 +02:00
Wieland Hoffmann
5525ea45a4
Add MusicBrainz' Release Track Id tag
...
The Release Track Id uniquely identifies a recording on a release - that
is, even if a recording appears twice on a release (meaning that the
combination of recording and release id are not enough to figure out
which one it is), the release track id will allow differentiating the two.
The tag names are taken from
https://musicbrainz.org/doc/MusicBrainz_Picard/Tags/Mapping
2014-09-27 19:54:12 +02:00
Max Kellermann
8547611479
release v0.18.16
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUJSq1AAoJECNuiljG20US8CAQAJo/4jAPKsba6RVWf4oWo1Tl
1KUVHaqPonboZ+ArexI+eLObRzmzawTdzc1iVAI8KhISaZkfBWvY3PGFbn6GW3xZ
o1GMRkjhps/ZWIXao2qzelITMzEWzKuAPEGdQE2Z3qXDP/bva0QnAJwjm6zfMsrz
qKYDjQlCGkt7s6jw8gbLGrcoPgP+q7s522qb/0gBc620OivufuEeAQquaahY3X+L
PnXGqsNr34Xqw8EeHCahVGvvQeetY0dGTG/EUiLuxgACqRnjnxwgZ1Xem3YSlGgP
KZVmEqepcvLgz7BlLkQrHse4eEcdxmojRP4towUPUOeRKb1LIlDr9AF6LoulGJr4
jCTeOhzRpmh7wo/rh2klMJXSkqqQlu84+jG7d+PW38oweVCO9HekhyfIDWYDJq/+
jndDRMK7pcPl4sBBXPrJNLdGAQZoJDxRD84syEwOmGOL1FgV2KZl1pJ81fOacR5x
BHeRZrtd0iZ97/qZL+wtNskKU21lMjKqv48saF224FhKCtR1iXkVw4fH6U+H3Q1w
8mrghkkMUom6yQ1mL7U2zA3P6yUcpOJIp0OwMLkJc4H7iOY3a21IAsH0KXmn/Z5O
RE+0zSZm4krUg5uoxhhJWbJnORjoexMv1iaR8+uh71qvBI+RwQXjYA94VJ3Rf88/
R4tE+xb0ZY8OvTXGswdF
=y5Hv
-----END PGP SIGNATURE-----
Merge tag 'v0.18.16'
2014-09-26 11:06:11 +02:00
Max Kellermann
fe45f28204
release v0.18.16
2014-09-26 10:57:04 +02:00
Max Kellermann
861067412f
configure.ac: fix DSD breakage due to typo
2014-09-26 10:56:20 +02:00
Max Kellermann
7eca886608
configure.ac: prepare for 0.18.16
2014-09-26 10:55:43 +02:00
Max Kellermann
79b6f9e89e
release v0.18.15
2014-09-26 09:41:40 +02:00
Max Kellermann
032e435490
decoder/mpg123: support ID3v2, ReplayGain and MixRamp
2014-09-24 22:53:50 +02:00
Max Kellermann
9270485723
Merge branch 'v0.18.x'
2014-09-24 21:49:20 +02:00
Max Kellermann
d1a8a4481e
decoder/sndfile: support float and 16 bit samples
...
Support these PCM formats natively, instead of letting libsndfile
convert everything to 32 bit.
2014-09-19 21:44:16 +02:00
Max Kellermann
b6fa22bd84
OutputThread: retain negative mix ratio
...
Fixes MixRamp breakage.
2014-09-18 13:50:23 +02:00
Andrzej Rybczak
a0ef27a0cd
command/list: reset used size after the list has been processed
2014-09-18 09:15:39 +02:00
Max Kellermann
e304d0f8ee
thread/Posix{Cond,Mutex}: don't ues PTHREAD_*_INITIALIZER on NetBSD
...
On NetBSD, PTHREAD_MUTEX_INITIALIZER and PTHREAD_COND_INITIALIZER are
not compatible with C++11 "constexpr" (see Mantis ticket 0004110). As
a workaround, don't ues "constexpr", and use the functions
pthread_mutex_init(), pthread_mutex_destroy(), pthread_cond_init() and
pthread_cond_destroy() instead. This adds some runtime overhead, but
is portable to POSIX implementations that have awkward initializer
macros.
2014-09-13 11:26:17 +02:00
Max Kellermann
ab7b38d4b9
configure.ac: prepare for 0.18.15
2014-09-13 11:14:41 +02:00
Max Kellermann
a464dc681a
release v0.18.14
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUEdhhAAoJECNuiljG20USwKkP/1MIm6J2ydXEP81RD/3llz6h
2t8EK94cEIdb6bA6goBI0Pipz7YAtmjgfnDRW90AvFcxNuVt87esxG82gVOiosvo
7LByehQ2kq/w0evILWy8X1eAvqIk/PvG6T/pZcPrrj7kHrZaIOXh0SVTZ5NLq7HC
drunwHQxgVntB/410h7BKEFbg1qWHPGxfTyf6qJsZPkHfr5QcgbHrYN7QCr1eUv9
mARx4Nxo9MXuiqOJOS7ck80V68nbnFdxjNXSflUkl94O0MfiPc741Snbe7qnHI91
I+BQYCBExKzoqFszuuRZQjxFpJalg4Y/9/stn6+dYemtC3WpreGHogweUBlPZ5if
wJRL/A/zHAY0xE/hohiEqY6pHZWmVolbumtp7LfNR7dejOetn0IPW+KnFnjYec21
qkJG/mq8fHStdQMTzp5NDoqh8VrPaBAAhjgP3suZY2wZ5xfbLXHk/HNKdQLvX8s3
Vv4wcDNsfbOJ/1ZTBo/nqceTkOyHrov5cDSotYnO1hs963vyk3LFwY2IRCgPdOR0
7o77JmKHZnzZSw60CIT6Mf1+rx38x++Rq3UGDYuH4B4L4VqXv2WrUp32w1VzHQVO
Dcd/dxwW/sB1SwMdi5J4tIBJCSn5mF7yvBPR0PB5NiZiX1YB6hEqmaXYfwLCqujo
xyWy8gPJbmYw6XJPmw6A
=3azu
-----END PGP SIGNATURE-----
Merge tag 'v0.18.14'
2014-09-11 19:26:58 +02:00
Max Kellermann
eaf675dc92
release v0.18.14
2014-09-11 19:09:49 +02:00
Max Kellermann
219c42522f
decoder/ffmpeg: pass MIME type to ffmpeg/libav version 11
...
That attribute was uninitialized before, which could crash
libavformat.
See Debian bug 760669
2014-09-07 22:05:33 +02:00
Max Kellermann
a6bb27483b
DecoderThread: clear the pipe when handling late SEEK
...
See code comment. Fixes assertion failure in
decoder_command_finished().
2014-09-07 21:50:00 +02:00
Max Kellermann
7ada7def9e
decoder/audiofile: fix crash after seeking
...
Log call was added to the wrong branch.
Fixes regression by commit ca1a1149
2014-09-06 19:32:10 +02:00
Max Kellermann
421c4ae907
protocol/ArgParser: fix integer overflow in parse_range()
...
Casting std::numeric_limits<unsigned>::max() to "long" leads to an
overflow if sizeof(unsigned)==sizeof(long), and the result will be -1.
This happens on some 32 bit architectures, for example ARM and WIN32.
Workaround: use std::numeric_limits<int>::max(), which is the largest
signed integer. Since sizeof(long)>=sizeof(int), this will never
overflow.
Fixes Mantis ticket 0004080.
2014-09-04 17:37:31 +02:00
Max Kellermann
f9d1bbbffb
configure.ac: prepare for 0.18.14
2014-09-03 19:59:26 +02:00
Max Kellermann
e5a28bfd8d
output/alsa, pcm: rename "DSD over USB" to "DoP"
...
The standard has been renamed since the early draft that was
implemented in MPD.
2014-08-31 16:12:26 +02:00
Max Kellermann
6e04d66a35
release v0.18.13
...
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1
iQIcBAABAgAGBQJUAxsyAAoJECNuiljG20USmRAP/2J/+kV5TRfqr7acFKh/aqip
RAefHTvHpYuAUDOi3WDVSZcmMnaYGKslZhbXhqchbRfR2oMwYhR+5gHIoxOp+EcL
09UF1fJfUnjg6B2zz6tggIWR53Dwxckg4xEaKtI2Wi3Gz+9Q/CiNlpWLJc0ONA5e
9gcz8pNK3oN0Em9c1KXahZKArzGdOGeytfSI3PLE+QnRiEyEDz1+StxIuyl72vr4
ar2EMa9Vdvb7ouNK0g8WqaEOzYyNDXhklIqc+zALQJGThY1xj6OCfQ8JVagJhzwB
UDuYfX1FylkN8LhF5pNzH1F0ANMozWcqeZlLLph6vuKkVBD7WUX4X1t82bwUlFDB
ppdA5pPkiXsqYnuhHML4GqL7LlI2wsMxUHK7v+A9+9hfGN9HIoFyOSLBjB1pyI93
yi8IPOq2a1BJQfQ2c69693ZS7WPxU6vOFKucKrk9PBlr2900SlvpMzIpZr1PMnGV
hoU8eLHOIW86wi5Ea2ycFbFyI1ZoyrKJmzcVJjPjZUT05jDV6bA2Gi1IG6gIhX1q
DiBfXUre+GISkLS4r8GcbG1FIXcv7fGjZ6Vols5di8lpYQ5oBu5aw2TEf8zukrHC
LzPRa2l6Mhe2OI7a/mmTaEYDINgCL//46hOU5mIbmB0XZS8Jf+D1/HBzqKpeqO7f
idENtbelqQdSsR5UU+R0
=c2vC
-----END PGP SIGNATURE-----
Merge tag 'v0.18.13'
2014-08-31 15:03:34 +02:00
Max Kellermann
86e8b3b4bd
release v0.18.13
2014-08-31 14:50:23 +02:00
Max Kellermann
a26ead035a
PlaylistControl: use SeekSongOrder(current) to keep current song
...
The "current" attribute is a "song order", not a "song position".
This is usually the same - except in random mode. Fixes Mantis ticket
0004073.
2014-08-31 14:44:20 +02:00
Max Kellermann
2406152576
output/alsa: fix endless loop at end of file in dsd_usb mode
2014-08-31 14:01:57 +02:00
Max Kellermann
d5287682d1
ArgParser: allow fractional seconds in ParseCommandArg(SongTime)
2014-08-29 23:46:38 +02:00
Max Kellermann
8b62127770
decoder/gme: fix song duration
...
The unit of gme_info_t::length is milliseconds, not centiseconds.
2014-08-29 23:03:29 +02:00
Max Kellermann
a86aaef4d0
output/alsa: support native DSD playback
...
Translate SampleFormat::DSD to SND_PCM_FORMAT_DSD_U8, which was added
to alsa-lib 1.0.27.1.
2014-08-26 07:11:53 +02:00
Max Kellermann
77f2cd6513
Merge branch 'v0.18.x'
2014-08-24 13:15:17 +02:00