Commit message (Collapse) | Author | Files | Lines | ||
---|---|---|---|---|---|
2013-07-30 | tag: convert to C++ | Max Kellermann | 1 | -2/+3 | |
2013-01-30 | input/Rewind: remove bogus assertion | Max Kellermann | 1 | -1/+0 | |
2013-01-28 | InputStream: use std::string | Max Kellermann | 1 | -6/+4 | |
2013-01-28 | InputStream: store references instead of pointers | Max Kellermann | 1 | -1/+1 | |
2013-01-28 | InputStream: add constructor/destructor | Max Kellermann | 1 | -5/+3 | |
Eliminate input_stream_init() and input_stream_deinit(). | |||||
2013-01-27 | DecoderControl, InputStream: use Mutex/Cond instead of GMutex/GCond | Max Kellermann | 1 | -1/+1 | |
2013-01-26 | input_stream: forward-declare the struct | Max Kellermann | 1 | -0/+1 | |
Hide the definition from C code, to prepare the transition to C++. | |||||
2013-01-25 | input_{internal,plugin}: convert to C++ | Max Kellermann | 1 | -2/+2 | |
2013-01-21 | input/rewind: convert to C++ | Max Kellermann | 1 | -72/+76 | |
2011-09-16 | input_stream: non-blocking I/O | Max Kellermann | 1 | -9/+6 | |
Add GMutex, GCond attributes which will be used by callers to conditionally wait on the stream. Remove the (now-useless) plugin method buffer(), wait on GCond instead. Lock the input_stream before each method call. Do the same with the playlist plugins. | |||||
2011-09-16 | input_plugin: add method check() | Max Kellermann | 1 | -0/+9 | |
To check for errors without reading. The decoder thread wants to do that, before it passes the input stream to the plugin. | |||||
2011-09-15 | input/rewind: copy the MIME type only once | Max Kellermann | 1 | -1/+3 | |
Reduce heap usage by reducing the number of malloc() / free() calls. | |||||
2011-09-14 | input_plugin: add method update() | Max Kellermann | 1 | -0/+10 | |
Update the struct attributes, important for facades like the "rewind" plugin. To replace buffer(). | |||||
2011-09-14 | input_stream: move input_stream_init(), _deinit() to _internal.c | Max Kellermann | 1 | -0/+1 | |
2011-08-24 | input/curl: remove obsolete function input_curl_reinit() | Max Kellermann | 1 | -1/+0 | |
2011-01-29 | copyright year 2011 | Max Kellermann | 1 | -1/+1 | |
2010-11-08 | input/rewind: fix assertion failure | Max Kellermann | 1 | -1/+1 | |
The assertion added in MPD 0.15.14 was too much, it failed when the MIME type of a stream was NULL. | |||||
2010-11-05 | input/rewind: remove redundant NULL check before g_free() call | Max Kellermann | 1 | -2/+1 | |
2010-11-05 | input/rewind: add two assertions | Max Kellermann | 1 | -0/+3 | |
2010-11-05 | input/rewind: fix double free bug | Max Kellermann | 1 | -0/+1 | |
Duplicate the "mime" attribute of the inner input_stream object, instead of copying the pointer. | |||||
2010-09-28 | input/rewind: enable for MMS | Thomas Jansen | 1 | -2/+10 | |
2010-09-23 | rewind_input_plugin: Update MIME not only once | Thomas Jansen | 1 | -3/+4 | |
The assumption that MIME type is set only once is not valid with CURL, as URL redirections may update the MIME type. This fixes bug #3044. | |||||
2010-01-18 | input_stream: added attribute "uri" | Max Kellermann | 1 | -1/+1 | |
2010-01-18 | input_stream: added function input_stream_deinit() | Max Kellermann | 1 | -0/+1 | |
All close() implementations must call this method. | |||||
2010-01-04 | input/rewind: enable the "rewind" wrapper for all non-seekable streams | Max Kellermann | 1 | -3/+2 | |
Don't limit the "rewind" input plugin to CURL streams. | |||||
2010-01-01 | input_stream: return allocated input_stream objects | Max Kellermann | 1 | -41/+36 | |
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). | |||||
2009-12-31 | Update copyright notices. | Avuton Olrich | 1 | -1/+1 | |
2009-12-29 | input/rewind: new input_stream wrapper to allow stream rewinding | Max Kellermann | 1 | -0/+238 | |
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). |