- 18 Jan, 2010 1 commit
-
-
Max Kellermann authored
All close() implementations must call this method.
-
- 01 Jan, 2010 2 commits
-
-
Max Kellermann authored
Major API redesign: don't let the caller allocate the input_stream object. Let each input plugin allocate its own (derived/extended) input_stream pointer. The "data" attribute can now be removed, and all input plugins simply cast the input_stream pointer to their own structure (with an "struct input_stream base" as the first attribute).
-
Avuton Olrich authored
-
- 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 3 commits
-
-
Max Kellermann authored
-
Max Kellermann authored
-
Max Kellermann authored
This is easier to traverse.
-
- 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.
-
- 13 Oct, 2009 1 commit
-
-
Max Kellermann authored
This has been replaced by the last.fm playlist plugin. The input plugin has never worked well, and was just a playground to experiment with the last.fm radio protocol.
-
- 11 Oct, 2009 1 commit
-
-
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.
-
- 24 Sep, 2009 1 commit
-
-
Max Kellermann 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.
-
- 02 Mar, 2009 5 commits
-
-
Max Kellermann authored
The lastfm input plugin enables MPD to play lastfm:// URLs. This plugin is not complete yet: it plays only the first song in the last.fm playlist, and the playlist parser isn't even implemented properly.
-
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.
-
- 29 Jan, 2009 3 commits
-
-
Max Kellermann authored
Make those two methods optional to implement, and let input_stream.c provide fallbacks. The buffer() method will be removed one day, and there is now only one implementation left (input_curl.c).
-
Max Kellermann authored
This way, plugins can manipulate the plugin pointer during open().
-
Max Kellermann authored
This patch implements the MMS protocol, by using libmms. It is quite experimental: it does not support seeking yet, and it is currently using synchronous I/O, which causes MPD to hang while waiting for the server.
-
- 03 Jan, 2009 1 commit
-
-
Max Kellermann authored
The tag() method reads a tag from the stream. This replaces the meta_name and meta_title attributes.
-
- 27 Dec, 2008 1 commit
-
-
Max Kellermann authored
When there are no archive plugins, we do not need the archive API at all. Drop all its overhead.
-
- 16 Dec, 2008 1 commit
-
-
Viliam Mateicka authored
-
- 16 Nov, 2008 1 commit
-
-
Max Kellermann authored
Define the special value "-1" as "unknown size". Previously, there was no indicator for streams with unknown size, which might confuse some decoders.
-
- 15 Nov, 2008 1 commit
-
-
Max Kellermann authored
When the caller passes length==0, decoder_read() entered an endless loop. Check that condition before entering the "while" loop.
-
- 31 Oct, 2008 1 commit
-
-
Max Kellermann authored
-
- 28 Oct, 2008 1 commit
-
-
Max Kellermann authored
size_t and long aren't 64 bit safe (i.e. files larger than 2 GB on a 32 bit OS). Use off_t instead, which is a 64 bit integer if compiled with large file support.
-
- 26 Oct, 2008 9 commits
-
-
Max Kellermann authored
g_free() allows passing the NULL pointer.
-
Max Kellermann authored
For boolean values and success flags, use bool instead of integer (1/0 for true/false, 0/-1 for success/failure).
-
Max Kellermann authored
close() shouldn't fail with read-only streams.
-
Max Kellermann authored
Instead of managing a set of method pointers in each input_stream struct, move these into the new input_plugin struct. Each input_stream has only a pointer to the plugin struct. Pointers to all implementations are kept in the array "input_plugins".
-
Max Kellermann authored
Renamed all functions and variables.
-
Max Kellermann authored
The global constructor is empty, and can be removed.
-
Max Kellermann authored
Renamed inputStream.c and inputStream_file.c.
-
Max Kellermann authored
MPD's HTTP client code has always been broken, no matter how effort was put into fixing it. Replace it with libcurl, which is known to be quite stable. This adds a fat library dependency, but only for people who need streaming.
-
Max Kellermann authored
The hook input_stream_global_finish() deinitializes global structures of all input stream implementations.
-
- 17 Oct, 2008 2 commits
-
-
Max Kellermann authored
The nmemb argument isn't actually useful, and one of nmemb and size was always passed as 1. Remove it.
-
Max Kellermann authored
Provide a struct type which can be forward-declared. The typedef InputStream is deprecated now.
-
- 08 Oct, 2008 1 commit
-
-
Max Kellermann authored
When there are standardized headers, use these instead of the bloated os_compat.h.
-