1. 21 Feb, 2014 1 commit
  2. 28 Jan, 2014 2 commits
  3. 13 Jan, 2014 1 commit
  4. 09 Jan, 2014 1 commit
    • Max Kellermann's avatar
      DetachedSong: fork of struct Song · 322b0616
      Max Kellermann authored
      From now on, struct Song will be used by the database only, and
      DetachedSong will be used by everybody else.  DetachedSong is easier
      to use, but Song has lower overhead.
      322b0616
  5. 30 Oct, 2013 1 commit
  6. 28 Oct, 2013 2 commits
  7. 21 Oct, 2013 1 commit
  8. 17 Oct, 2013 2 commits
  9. 27 Sep, 2013 3 commits
  10. 04 Sep, 2013 1 commit
  11. 03 Aug, 2013 1 commit
  12. 28 Jul, 2013 1 commit
  13. 25 Jan, 2013 1 commit
    • Max Kellermann's avatar
      PlayerControl: add second Cond object · a9b62a2e
      Max Kellermann authored
      This fixes a deadlock bug introduced by 18076ac9.  After all, the
      second Cond was necessary.
      
      The problem: two threads can wait for a signal at the same time.  The
      player thread waits for the output thread to finish playback.  The
      main thread waits for the player thread to complete a command.  The
      output thread finishes playback, and sends a signal, which
      unfortunately does not wake up the player thread, but the main
      thread.  The main thread sees that the command is still not finished,
      and waits again.  The signal is lost forever, and MPD is deadlocked.
      a9b62a2e
  14. 20 Jan, 2013 1 commit
  15. 10 Jan, 2013 1 commit
  16. 04 Jan, 2013 2 commits
  17. 25 Aug, 2012 1 commit
    • Max Kellermann's avatar
      player_thread: disable cross-fading in "single" mode · f3515505
      Max Kellermann authored
      This commit reimplements the core of the "single" mode.  Instead of
      doing the detection in the playlist code from the outside, it is moved
      to the player thread, which gets a new option called "border_pause".
      It will now pause playback exactly at the beginning of the new song,
      making the feature more reliable.
      
      Now that the player thread knows what will happen, it can suppress
      cross-fading.
      
      Fixes mantis tickets 0003055 and 0003166.
      f3515505
  18. 15 Aug, 2012 1 commit
  19. 08 Aug, 2012 5 commits
  20. 29 Jan, 2011 1 commit
  21. 10 Jan, 2011 2 commits
  22. 21 Mar, 2010 1 commit
    • Tim Phipps's avatar
      Add support for MixRamp tags · e7a515c8
      Tim Phipps authored
      Adds mixrampdb and mixrampdelay commands.  Reads MIXRAP_START and
      MIXRAMP_END tags from FLAC files and overlaps instead of crossfading.
      e7a515c8
  23. 01 Jan, 2010 1 commit
  24. 09 Nov, 2009 1 commit
  25. 03 Nov, 2009 1 commit
  26. 31 Oct, 2009 2 commits
  27. 23 Oct, 2009 1 commit
    • Max Kellermann's avatar
      output_plugin: added methods enable() and disable() · e53ca368
      Max Kellermann authored
      With these methods, an output plugin can allocate some global
      resources only if it is actually enabled.  The method enable() is
      called after daemonization, which allows for more sophisticated
      resource allocation during that method.
      e53ca368
  28. 08 Oct, 2009 1 commit
    • Max Kellermann's avatar
      player_thread: get "elapsed" from audio outputs · 448aefaa
      Max Kellermann authored
      Tracking the "elapsed" time from the chunks which we have sent to the
      output pipe is very imprecise: since we have implemented the music
      pipe, we're sending large number of chunks at once, giving the
      "elapsed" time stamp a resolution of usually more than a second.
      
      This patch changes the source of this information to the outputs.  If
      a chunk has been played by all outputs, the "elapsed" time stamp is
      updated.
      
      The new command PLAYER_COMMAND_REFRESH makes the player thread update
      its status information: it tells the outputs to update the chunk time
      stamp.  After that, player_control.elapsed_time is current.
      448aefaa