1. 14 Aug, 2009 1 commit
    • Max Kellermann's avatar
      output: fixed shout stuck pause bug · 7133f560
      Max Kellermann authored
      Explicitly make the output thread leave the ao_pause() loop.  This
      patch is a workaround, and the "pause" flag is not managed in a
      thread-safe way, but that's good enough for now.
      7133f560
  2. 26 Mar, 2009 1 commit
  3. 25 Mar, 2009 1 commit
    • Max Kellermann's avatar
      output: protect audio_output.open with the mutex · 4dbf73d8
      Max Kellermann authored
      There was a deadlock between the output thread and the player thread:
      when the output thread failed (and closed itself) while the player
      thread worked with the audio_output object, MPD could crash.
      4dbf73d8
  4. 20 Mar, 2009 1 commit
    • Max Kellermann's avatar
      output: convert audio_output.config_audio_format to boolean · e6c753a4
      Max Kellermann authored
      The config_audio_format used to contain the configured audio format,
      which is copied to out_audio_format.  Let's convert the former to a
      boolean, which indicates whether out_audio_format was already set.
      This simplifies some code and saves a few bytes.
      e6c753a4
  5. 13 Mar, 2009 1 commit
    • Avuton Olrich's avatar
      all: Update copyright header. · 0aee49bd
      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.
      0aee49bd
  6. 09 Mar, 2009 1 commit
    • Max Kellermann's avatar
      output: play from a music_pipe object · 3291666b
      Max Kellermann authored
      Instead of passing individual buffers to audio_output_all_play(), pass
      music_chunk objects.  Append all those chunks asynchronously to a
      music_pipe instance.  All output threads may then read chunks from
      this pipe.  This reduces MPD's internal latency by an order of
      magnitude.
      3291666b
  7. 28 Feb, 2009 1 commit
  8. 23 Feb, 2009 1 commit
  9. 16 Feb, 2009 1 commit
    • Max Kellermann's avatar
      output: include cleanup · 46c15e4a
      Max Kellermann authored
      Don't include output_api.h in output_internal.h.  This change requires
      adding missing includes in several sources.
      46c15e4a
  10. 15 Feb, 2009 1 commit
  11. 10 Feb, 2009 2 commits
  12. 17 Jan, 2009 1 commit
  13. 07 Jan, 2009 1 commit
  14. 28 Dec, 2008 1 commit
  15. 27 Dec, 2008 1 commit
  16. 31 Oct, 2008 1 commit
    • Max Kellermann's avatar
      added prefix to header macros · ea515494
      Max Kellermann authored
      "LOG_H" is a macro which is also used by ffmpeg/log.h.  This is
      ffmpeg's fault, because short macros should be reserved for
      applications, but since it's always a good idea to choose prefixed
      macro names, even for applications, we are going to do that in MPD.
      ea515494
  17. 29 Oct, 2008 4 commits
  18. 21 Oct, 2008 1 commit
  19. 24 Sep, 2008 4 commits
    • Max Kellermann's avatar
      output: removed DEVICE_ON, DEVICE_OFF · 9a5b5998
      Max Kellermann authored
      To check whether a device is really on or off, we should rather check
      audio_output.open, instead of managing another variable.  Wrap
      audio_output.open in the inline function audio_output_is_open() and
      use it instead of DEVICE_ON and DEVICE_OFF.
      9a5b5998
    • Max Kellermann's avatar
      output: semi-asynchronous playback · 2b782b82
      Max Kellermann authored
      Send an output buffer to all output plugins at the same time, instead
      of waiting for each of them separately.  Make several functions
      non-blocking, and introduce the new function audio_output_wait_all()
      to synchronize with all audio output threads.
      2b782b82
    • Max Kellermann's avatar
      08352184
    • Max Kellermann's avatar
      output: make "struct audio_output" opaque for output plugins · acc4a0ba
      Max Kellermann authored
      We have eliminated direct accesses to the audio_output struct from
      the all output plugins.  Make it opaque for them, and move its real
      declaration to output_internal.h, similar to decoder_internal.h.
      
      Pass the opaque structure to plugin.init() only, which will return the
      plugin's data pointer on success, and NULL on failure.  This data
      pointer will be passed to all other methods instead of the
      audio_output struct.
      acc4a0ba
  20. 07 Sep, 2008 1 commit
  21. 26 Aug, 2008 2 commits
    • Max Kellermann's avatar
      moved code to crossfade.c · 6104e969
      Max Kellermann authored
      decode.c should be a lot smaller; start by moving all code which
      handles cross-fading to crossfade.c.  Also includes camelCase
      conversion.
      6104e969
    • Max Kellermann's avatar
      clean up CPP includes · b6909da7
      Max Kellermann authored
      Include only headers which are really required.  This speeds up
      compilation and helps detect cross-layer accesses.
      b6909da7
  22. 02 Jun, 2008 1 commit
  23. 13 Apr, 2008 4 commits
  24. 12 Apr, 2008 4 commits
  25. 05 Apr, 2007 1 commit
  26. 20 Aug, 2006 1 commit