- 14 Nov, 2017 4 commits
-
-
Max Kellermann authored
Avoid another potential deadlock: if no file descriptors are registered, our non-blocking ALSA code cannot ever work.
-
Max Kellermann authored
-
Max Kellermann authored
After UnlockActivate() returns, we not only need to check for errors, but also for more room in the ring buffer. If we don't check the ring buffer, it may be drained already, and the cond.wait() call will never finish. Closes #151
-
Max Kellermann authored
Without the flush, ReadPage() may not return any data, or not all data. This may result in incomplete ddata the new "header" page, corrupting streams with some encoders such as Vorbis. Fixes #145
-
- 12 Nov, 2017 2 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
- 10 Nov, 2017 15 commits
-
-
Max Kellermann authored
Allows defining a list of supported audio formats, and allows switching on and off DoP with certain formats. This is a first rough draft. The setting syntax and its semantics may still be redesigned.
-
Max Kellermann authored
There is no documentation on whether calling shout_metadata_add() multiple times on one instance is allowed. To be sure, let's allocate the object on demand each time in SendTag().
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
This is more robust, for example it allows using the Shine encoder plugin instead of LAME.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
Passing it by value is actually smaller (32 bit) than the rvalue reference (64 bit pointer), and it ensures that the object is consumed after the call returns, no matter how the methods are implemented.
-
Max Kellermann authored
Migrate callers to GetSocket().Read(), GetSocket.Write(), which is the same.
-
Max Kellermann authored
-
Max Kellermann authored
-
- 05 Nov, 2017 1 commit
-
-
cathugger authored
Fixes hanging playback with soxr resampler. Closes #139, #141
-
- 30 Oct, 2017 1 commit
-
-
Max Kellermann authored
-
- 26 Oct, 2017 9 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
This loop was introduced in commit 24c1f463, but -EPIPE is not a possible error condition for snd_pcm_hw_params(). This code does not appear to make sense. Problems with a wrong period_time should be caught before that by snd_pcm_hw_params_set_period_time_near(). This commit removes the last "goto" in MPD! Yay!
-
Max Kellermann authored
-
Max Kellermann authored
-
- 19 Sep, 2017 5 commits
-
-
Max Kellermann authored
RoarAudio's sndio emulation has been a source for annoyances. First, their headers turned out to be broken with C++, due to their use of the "new" keyword. Then they used a preprocessor macro to rename "sio_hdl" to something else, effectively disallowing the use of forward declarations. Enough is enough, and I'm removing support for it. RoarAudio users should better use the RoarAudio output plugin.
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-
- 16 Sep, 2017 2 commits
-
-
Christopher Zimmermann authored
-
Christopher Zimmermann authored
no change in behaviour.
-
- 08 Sep, 2017 1 commit
-
-
Max Kellermann authored
Coverity discovered that the Pulse plugin could throw exceptions from Pause(), but that method was marked "noexcept" because its caller was not designed to catch exceptions. So instead of avoiding exceptions (by catching and logging them in each and every implementation), let's allow them, and do the catch/log game in the MPD core.
-