Max Kellermann
b76d78e6ae
output/sles: enable power saving mode
2019-03-17 18:04:40 +01:00
Jacob Vosmaer
0a6e484b1a
output/plugins/OSXOutputPlugin: add boost meson dependency
2019-03-17 16:59:24 +01:00
Max Kellermann
a66097129d
Merge branch 'v0.21.x'
2019-03-16 14:08:22 +01:00
Max Kellermann
0bb71f1f20
output/pulse: use pa_channel_map_init_extend() instead of _auto()
...
Unlike pa_channel_map_init_auto(), pa_channel_map_init_extend() does
not fail if there is no valid mapping for the given channel count, but
instead maps additional "AUX" channels.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/493
2019-03-16 14:03:10 +01:00
Max Kellermann
1aa7cdd602
decoder/opus: fix replay gain when there are no other tags
...
The `tag_builder.empty()` check was wrong for the SubmitReplayGain()
call.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/497
2019-03-16 13:55:19 +01:00
Max Kellermann
3bf521d5ca
song/TagSongFilter: apply negation properly to multiple tag values
...
The old implementation didn't make a lot of sense; the "!=" operator
was not actually the opposite of "==".
Closes https://github.com/MusicPlayerDaemon/MPD/issues/505
2019-03-16 13:23:02 +01:00
Max Kellermann
eed4e40ec6
Merge branch 'v0.21.x'
2019-03-14 20:32:04 +01:00
Max Kellermann
98b29f6d1c
meson.build: remove the libwinpthread-1.dll dependency on Windows
...
Closes https://github.com/MusicPlayerDaemon/MPD/issues/507
2019-03-14 20:07:06 +01:00
Max Kellermann
59fdfd25cb
command/database: fix "list" with filter expression
...
Disable the 0.11 compatibility mode if the only argument is a filter
expression.
Closes https://github.com/MusicPlayerDaemon/MPD/issues/506
2019-03-14 19:50:09 +01:00
Max Kellermann
0d98677212
playlist/flac: copy the URI to fix use-after-free bug
...
Closes https://github.com/MusicPlayerDaemon/MPD/issues/508
2019-03-14 19:30:33 +01:00
Max Kellermann
bfb7b0117f
lib/ffmpeg/IOContext: allow partial reads
2019-03-13 10:39:43 +01:00
Max Kellermann
f300ea62dc
meson.build: increment version number to 0.22
...
Time to create a new unstable branch; stable development will now
continue in the branch v0.21.x
2019-03-07 19:10:17 +01:00
Max Kellermann
713c1f2ba9
Merge branch 'feature/playlist' of git://github.com/miccoli/MPD
2019-02-27 13:49:22 +01:00
Max Kellermann
44422b2b2f
event/ServerSocket, config/Net: abstract socket support
2019-02-25 13:08:33 +01:00
Max Kellermann
f10afd38b5
NEWS: mention the cdio_paranoia build failure fix
2019-02-25 13:08:33 +01:00
Max Kellermann
f255a485b7
increment version number to 0.21.6
2019-02-22 15:28:03 +01:00
Max Kellermann
1930d5774d
release v0.21.5
2019-02-22 15:23:33 +01:00
Max Kellermann
30e0644722
db/simple: call ReturnSong() on mounted database
...
Fixes a memory leak, or an assertion failure in the debug build.
2019-02-22 14:52:13 +01:00
Max Kellermann
d5983dd362
storage/udisks2: use the relative path
...
Closes #487
2019-02-22 14:41:56 +01:00
Max Kellermann
8002bc752f
NEWS: mention the udisks2 AlreadyMounted fix
2019-02-22 14:41:56 +01:00
Max Kellermann
b59f37bc0a
db/simple/Directory: close the Database in destructor
...
Fixes assertion failure.
2019-02-20 22:50:15 +01:00
Max Kellermann
cf2d171ccc
db/simple: reorder checks in assert() to fix assertion failure
...
`light_song.Get()` could cause an assertion failure because the
`Manual<>` object must not be used if uninitialized.
Regression by commit ebc006ab529169d3d067231863ab7fc52fd9c49a
2019-02-20 21:24:01 +01:00
Max Kellermann
d9c3215584
mixer/pulse: rename scale
to scale_volume
...
Make it less generic, to avoid clashes.
2019-02-20 19:23:11 +01:00
Max Kellermann
674c137e5f
NEWS: mention the TagMask typo fix
2019-02-02 15:17:25 +01:00
Max Kellermann
ffc36d5255
input/buffered: implement seeking to end of file
...
Previously, a seek to the end of the file would cause an assertion
failure in SparseMap::Check() because the given offset was invalid.
Closes #453
2019-01-22 07:42:00 +01:00
Max Kellermann
05db6934eb
FileCommands: fix deadlock in "albumart" command
...
Must lock the mutex before calling any of the unprotected InputStream methods.
Closes #462
2019-01-21 22:16:46 +01:00
Max Kellermann
d1bdea8edb
Merge branch 'shout_tls' of git://github.com/JakobOvrum/MPD
2019-01-20 21:03:42 +01:00
James D. Smith
22d669da18
Add APE mapping for album artist.
...
"De-facto" field mappings are available at http://wiki.hydrogenaud.io/index.php?title=Tag_Mapping .
2019-01-14 19:15:42 +01:00
Max Kellermann
1862a98a44
increment version number to 0.21.5
2019-01-04 19:31:07 +01:00
Max Kellermann
4634b94c83
release v0.21.4
2019-01-04 19:22:21 +01:00
Max Kellermann
1477b64d4f
Merge branch 'patch-2' of git://github.com/HyShai/MPD
...
Closes #343
2019-01-04 19:04:52 +01:00
Max Kellermann
a2c108f5ef
NEWS: mention the Haiku build fix
2019-01-04 19:03:53 +01:00
Max Kellermann
22e6d95c4b
remove libwrap support
...
libwrap is an obscure artefact from a past long ago, when source IP
address meant something.
And its API is "interesting"; it requires the application to expose
two global variables `allow_severity` and `deny_severity`. This led
to bug #437 . I don't want to declare those variables; instead, I'd
like to remove libwrap support.
Closes #437
2018-12-28 14:16:02 +01:00
Max Kellermann
3c4ed9cbe3
db/update/InotifyQueue: catch UpdateService::Enqueue() exceptions
2018-12-28 14:00:58 +01:00
Max Kellermann
98f92d828a
NEWS: mention the "ICY" -> "HTTP/1.1" change
2018-12-14 09:26:59 +01:00
Max Kellermann
4b7078297d
db/upnp: use the generic ::CollectUniqueTags() function
...
This function implements the "group" feature on top of the
Database::Visit() method.
2018-11-19 20:08:10 +01:00
Max Kellermann
4fb4f6d1b7
increment version number to 0.21.4
2018-11-19 09:58:05 +01:00
Max Kellermann
43df4a7500
release v0.21.3
2018-11-16 13:27:58 +01:00
Max Kellermann
436ba3c96c
output/alsa: drain the whole ring_buffer
, not just one period
...
This fixes a problem which caused a failure with snd_pcm_writei()
because snd_pcm_drain() had already been called in the previous
iteration. This commit makes sure that snd_pcm_drain() is only called
after the final snd_pcm_writei() call.
This fixes discarded samples at the end of playback.
2018-11-14 13:35:17 +01:00
Max Kellermann
5d12f52873
output/alsa: clear error after reopening device
...
When a playback error has occurred, MPD would never recover until one
restarts MPD.
2018-11-14 13:20:54 +01:00
Max Kellermann
8682183bc3
LogInit: default to journal if MPD was started as systemd service
2018-11-14 12:07:22 +01:00
Max Kellermann
ccafe3f3cf
output/alsa: don't generate silence if ALSA-PCM buffer has enough data
...
If our `ring_buffer` is smaller than the ALSA-PCM buffer (if the
latter has more than the 4 periods we allocate), it can happen that
the start threshold is crossed and ALSA switches to
`SND_PCM_STATE_RUNNING`, but the `ring_buffer` is empty. In this
case, MPDD will generate silence, even though the ALSA-PCM buffer has
enough data. This causes stuttering (#420 ).
This commit amends an older workaround for a similar problem (commit
e08598e7e2526b65fd8790a49794c1d4d00945d0) by adding a snd_pcm_avail()
check, and only generate silence if there is less than one period of
data in the ALSA-PCM buffer.
Fixes #420
2018-11-14 11:17:59 +01:00
Max Kellermann
3830748de5
output/alsa: clear the period_buffer
in LockCaughtError()
...
The method Cancel() assumes that the `period_buffer` must be empty
when `active==false`, but that is not the case when Play() fails.
Of course the assertion in Cancel() is not 100% correct, but I decided
to rather fix this in LockCaughtError() because the `period_buffer`
should only be accessed from within the RTIO thread, and this is the
only code path where `active` can be set to `false` with a non-empty
`period_buffer`.
Fixes #423
2018-11-14 10:24:08 +01:00
Max Kellermann
57e34823d8
increment version number to 0.21.3
2018-11-12 13:59:17 +01:00
Max Kellermann
3c93decdf0
release v0.21.2
2018-11-12 13:33:04 +01:00
Max Kellermann
060908d5c4
song/Filter: add operator "contains"
...
Closes #410
2018-11-12 12:49:01 +01:00
Max Kellermann
5eaf2b8fc3
output/control: always close the AudioOutputSource
in RELEASE
...
Fixes a crash bug with `always_on` outputs which occurs because the
`AudioOutputSource` still has a pointer to an outdated `MusicChunk`.
Fixes #415
2018-11-12 12:21:59 +01:00
Max Kellermann
72184dccfc
song/StringFilter: support regular expressions with "=~" and "!~"
...
This feature requires `libpcre`.
2018-11-11 12:55:35 +01:00
Max Kellermann
fee75dc766
{output,mixer}/alsa: use snd_pcm_poll_descriptors_revents()
...
This call was missing, causing very high CPU usage when the ALSA
output plugin was used with dmix.
Closes #391
2018-11-11 12:37:29 +01:00
Max Kellermann
a958abde2f
Merge branch 'fix_362' of git://github.com/miccoli/MPD
2018-11-11 12:37:13 +01:00