1. 16 Sep, 2011 2 commits
    • Max Kellermann's avatar
      input_stream: non-blocking I/O · 754f26a9
      Max Kellermann authored
      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.
      754f26a9
    • Max Kellermann's avatar
      input_plugin: add method check() · 29241c4f
      Max Kellermann authored
      To check for errors without reading.  The decoder thread wants to do
      that, before it passes the input stream to the plugin.
      29241c4f
  2. 15 Sep, 2011 1 commit
  3. 14 Sep, 2011 2 commits
  4. 24 Aug, 2011 1 commit
  5. 29 Jan, 2011 1 commit
  6. 08 Nov, 2010 1 commit
  7. 05 Nov, 2010 3 commits
  8. 28 Sep, 2010 1 commit
  9. 23 Sep, 2010 1 commit
  10. 18 Jan, 2010 2 commits
  11. 04 Jan, 2010 1 commit
  12. 01 Jan, 2010 2 commits
    • Max Kellermann's avatar
      input_stream: return allocated input_stream objects · d3b763a4
      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).
      d3b763a4
    • Avuton Olrich's avatar
      Update copyright notices. · 9d3865cb
      Avuton Olrich authored
      9d3865cb
  13. 29 Dec, 2009 1 commit
    • Max Kellermann's avatar
      input/rewind: new input_stream wrapper to allow stream rewinding · c88f95a2
      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).
      c88f95a2