- 06 Nov, 2013 17 commits
-
-
Max Kellermann authored
Wake up the OutputThread only if it hasn't already been woken up and if it isn't already in the playback loop.
-
Max Kellermann authored
After the number of decoded chunks has fallen below the threshold, the PlayerThread woke up the DecoderThread over and over. This commit adds a boolean flag that avoids these duplicate wakeups, and thus reduces the number of system calls.
-
Max Kellermann authored
Wake up the PlayerThread only if it is really waiting for the decoder. This greatly reduces the number of system calls in the DecoderThread.
-
Max Kellermann authored
Must hold the Mutex to signal the Cond object safely.
-
Max Kellermann authored
Merge duplicate code.
-
Max Kellermann authored
We have a better solution now.
-
Max Kellermann authored
Add a new CommandResult code called "FINISH" which, unlike "CLOSE", will attempt to flush the output buffer. This is a one-shot attempt; it will do one write, and not try again.
-
Max Kellermann authored
Postpone the write using IdleMonitor instead of scheduling a write event. This reduces the number of system calls, because we don't need to register and unregister the write event in epoll.
-
Max Kellermann authored
.. and rename it to Flush().
-
Max Kellermann authored
For some reason, this got lost in commit 975deca8. Re-enabling this fixes stuttering at the beginning of radio streams.
-
Max Kellermann authored
Prior to version 0.3, the "length" callback returned a "long" instead of AFfileoffset. Now that this API bug fix is a few years old, let's drop 0.2 support for good.
-
Max Kellermann authored
Migrate from the old curl_multi_perform() API to the newer curl_multi_socket_action() API (since CURL 7.16). This allows working around a bug with HTTP redirections with epoll: when CURL closes a socket and the new one happens to have the same file number, MPD did not have a chance to remove the old one from epoll and subsequently attempted to use EPOLL_CTL_MOD, which was not allowed by epoll, because it's a new socket now.
-
Max Kellermann authored
Move all global variables there, and keep just one global variable: the pointer to the CurlMulti instance. Prepares for the next commit.
-
Max Kellermann authored
Unused.
-
Max Kellermann authored
Eliminate some complicated code that's not worth the trouble.
-
Max Kellermann authored
Replaces the loop in input_curl_find_request().
-
Max Kellermann authored
-
- 05 Nov, 2013 7 commits
-
-
Max Kellermann authored
D'oh!
-
Max Kellermann authored
Remove the forward_list::reverse() call. It was not necessary, because pls_parser() already reads the playlist in reverse order.
-
Jurgen Kramer authored
-
Max Kellermann authored
-
Max Kellermann authored
-
Natanael Copa authored
Fixes building with gcc-4.8 Signed-off-by: Natanael Copa <ncopa@alpinelinux.org>
-
Max Kellermann authored
-
- 04 Nov, 2013 13 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
See code comment.
-
Max Kellermann authored
First check if an IPv6 socket can be created.
-
Max Kellermann authored
Map LogLevel::INFO to G_LOG_LEVEL_INFO, and LogLevel::DEFAULT to G_LOG_LEVEL_MESSAGE. Now client connect/disconnect message are only logged on log_level "secure".
-
Max Kellermann authored
-
Max Kellermann authored
Fixes bogus test failures on Debian build machines due to rounding errors (hopefully).
-
Max Kellermann authored
Regression from previous commit. D'oh!
-
Max Kellermann authored
Use a std::list which can be appended at the end.
-
Max Kellermann authored
getnameinfo() doesn't work well - it always returns "localhost".
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
This prevented using the "volume_normalization" feature with some codecs (e.g. mp3), because the normalization code requires 16 bit samples. If the codec happens to deliver formats other than S16, the AutoConvert filter succeeds to initialize the conversion filter, but the returned input audio format was wrong.
-
Max Kellermann authored
-
- 30 Oct, 2013 3 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
-