aboutsummaryrefslogtreecommitdiffstats
path: root/src/input/rewind_input_plugin.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* input/rewind: enable the "rewind" wrapper for all non-seekable streamsMax Kellermann2010-01-041-3/+2
| | | | Don't limit the "rewind" input plugin to CURL streams.
* input_stream: return allocated input_stream objectsMax Kellermann2010-01-011-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).
* Update copyright notices.Avuton Olrich2009-12-311-1/+1
|
* Merge vorbis+icy fixes from branch 'v0.15.x'Max Kellermann2009-12-301-9/+11
| | | | | | | | | Conflicts: Makefile.am NEWS configure.ac src/input/curl_input_plugin.c src/input_stream.c
* input/rewind: new input_stream wrapper to allow stream rewindingMax Kellermann2009-12-291-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).