- 30 Dec, 2009 1 commit
-
-
Max Kellermann authored
This has been reimplemented in the "rewind" input plugin.
-
- 29 Dec, 2009 1 commit
-
-
Max Kellermann authored
This replaces the rewinding buffer code from the CURL input plugin. It is more generic, and allows rewinding even when the server sends Icy-Metadata (which would have been too difficult to implement within the CURL plugin). This is a rather complex patch for the stable branch (v0.15.x), but it fixes a serious problem: the "vorbis" decoder plugin was unable to play streams with Icy-Metadata, because it couldn't rewind the stream after detecting the codec (Vorbis vs. FLAC).
-
- 15 Dec, 2009 1 commit
-
-
Max Kellermann authored
-
- 14 Dec, 2009 1 commit
-
-
Max Kellermann authored
Not used by any plugin currently, but this eliminates the g_error() call in input_plugin_config(), so it's worth it.
-
- 12 Nov, 2009 1 commit
-
-
Max Kellermann authored
After we've been hit by Large File Support problems several times in the past week (which only occur on 32 bit platforms, which I don't have), this is yet another attempt to fix the issue.
-
- 10 Nov, 2009 1 commit
-
-
Max Kellermann authored
Drop the required GLib version from 2.16 to 2.12, because many current systems still don't have GLib 2.16. This requires several new compatibility functions in glib_compat.h.
-
- 13 Oct, 2009 3 commits
-
-
Max Kellermann authored
When the connection is lost while buffering, the CURL input plugin may enter an endless loop, because it does not check the EOF condition. This patch makes fill_buffer() return success only if there's at least one buffer, which is enough of a check.x
-
Max Kellermann authored
-
Max Kellermann authored
Accidently, MPD has been using several GLib 2.16 functions for a while, and nobody noticed yet. To simplify the code base, let's bump the minimum GLib version for MPD to 2.16. That version is old enough, and it's reasonable to expect users to have it.
-
- 11 Oct, 2009 3 commits
-
-
Max Kellermann authored
The "off_t" type may change when you enable or disable large file support on 32 bit platforms. This caused severe ABI problems within MPD when we enabled LFS for the first time: two sources included config.h and sys/types.h in different order, and had different off_t sizes - leading to memory corruption because of ABI incompatibility. This patch attempts to get rid of all public "off_t" uses: it removes "off_t" from the input_stream ABI/API, and switches to GLib's 64 bit "goffset" type. This may hurt 32 bit embedded platforms a tiny bit, but that's not even measurable.
-
Max Kellermann authored
When a received chunk of data has only icy-metadata, there was no usable data left for input_curl_read() to return, and thus it returned 0 bytes. "0" however is a special value for "end of file" or "error". This patch makes input_curl_read() read more data from the socket, until the read request can be fulfilled (or until there's really EOF).
-
Max Kellermann authored
-
- 28 Apr, 2009 1 commit
-
-
Max Kellermann authored
strcasecmp() is locale dependent, making it a bad choice for internal string comparisons.
-
- 25 Apr, 2009 1 commit
-
-
Max Kellermann authored
The old global settings "http_proxy_host", "http_proxy_port", "http_proxy_user" and "http_proxy_password" continue to work.
-
- 27 Mar, 2009 1 commit
-
-
Sean McNamara authored
-
- 13 Mar, 2009 1 commit
-
-
Avuton Olrich authored
This updates the copyright header to all be the same, which is pretty much an update of where to mail request for a copy of the GPL and the years of the MPD project. This also puts all committers under 'The Music Player Project' umbrella. These entries should go individually in the AUTHORS file, for consistancy.
-
- 06 Mar, 2009 1 commit
-
-
Max Kellermann authored
The GLIB_CHECK_VERSION() macro was used improperly, which broke build on GLib < 2.14. Add a "!" for negation.
-
- 02 Mar, 2009 4 commits
-
-
Max Kellermann authored
Allow input plugins to configure with an "input" block in mpd.conf. Also allow the user to disable a plugin completely.
-
Max Kellermann authored
Instead of hard-coding the plugin global initialization in input_stream_global_init(), make it walk the plugin list and initialize all plugins.
-
Max Kellermann authored
Create a sub directory for input plugins.
-
Max Kellermann authored
Start to separate private from public input_stream API.
-
- 28 Feb, 2009 1 commit
-
-
Max Kellermann authored
Use GLIB_CHECK_VERSION() instead of manually checking GLIB_MAJOR_VERSION, ...
-
- 17 Feb, 2009 1 commit
-
-
Max Kellermann authored
Define G_LOG_DOMAIN.
-
- 29 Jan, 2009 1 commit
-
-
Max Kellermann authored
This way, plugins can manipulate the plugin pointer during open().
-
- 25 Jan, 2009 1 commit
-
-
Max Kellermann authored
config_get_string() is easier to use than config_get_param() because it unpacks the config_param struct.
-
- 17 Jan, 2009 1 commit
-
-
Max Kellermann authored
Renamed functions, types, variables.
-
- 15 Jan, 2009 4 commits
-
-
Max Kellermann authored
Calling input_curl_select() after EOF has been reached causes an assertion failure. This can happen if the HTTP response is empty. Check c->eof before calling input_curl_select().
-
Max Kellermann authored
Set the "ready" flag for empty resources.
-
Max Kellermann authored
To check for early connect failures, call curl_multi_info_read() in the constructor input_curl_open(). This fixes an assertion failure.
-
Max Kellermann authored
g_queue_clear() was introduced in GLib 2.14. Add a macro hack for older GLib versions to emulate it.
-
- 13 Jan, 2009 2 commits
-
-
Joe Milbourn authored
If http_proxy_{host, port, user, password} are provided in mpd.conf they are not passed on to libcurl. As a result mpd cannot stream from behind an http proxy. The attached patch `http_proxy.patch` makes the relevant calls to curl_easy_setopt(...) for all proxy configuration parameters, but is only tested for host and port.
-
Max Kellermann authored
When decoder_run_song() (decoder_thread.c) waits for the input stream to become ready, it did that in a busy loop. Add a select() call to input_curl_buffer() during connect/handshake (i.e. before the first chunk of body data was received), to let the CPU relax.
-
- 07 Jan, 2009 2 commits
-
-
Max Kellermann authored
Get rid of the non-portable Linux list library, part II.
-
Max Kellermann authored
Fix a typo in the icy-metadata patch.
-
- 03 Jan, 2009 2 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
The tag() method reads a tag from the stream. This replaces the meta_name and meta_title attributes.
-
- 30 Nov, 2008 2 commits
-
-
Max Kellermann authored
Follow HTTP redirects, but no more than 5.
-
Max Kellermann authored
Send "Music Player Daemon " + VERSION as the User-Agent request header.
-
- 25 Nov, 2008 1 commit
-
-
Max Kellermann authored
input_curl.c does not support parsing shoutcast metadata yet. Disable the "Icy-Metadata" header for now, since it may cause corruptions in the stream.
-
- 24 Nov, 2008 1 commit
-
-
Thomas Jansen authored
-