1. 11 Nov, 2009 4 commits
  2. 10 Nov, 2009 20 commits
  3. 09 Nov, 2009 5 commits
    • Max Kellermann's avatar
      decoder_list: fix decoder_plugin_from_mime_type() · 6975c087
      Max Kellermann authored
      Copy'n'paste error: call decoder_plugin_supports_mime_type() instead
      of decoder_plugin_supports_suffix().
      6975c087
    • Max Kellermann's avatar
      output/alsa: fill period buffer with silence before draining · 54033c74
      Max Kellermann authored
      ALSA passes full period buffers to the hardware.  If an application
      doesn't finish writing a period, libasound will nonetheless send the
      partial buffer (with undefined trailing data).  This causes noise at
      the end of playback.  This patch attempts to track the current
      position within the period buffer, and generates silence at the end,
      before calling snd_pcm_drain().
      54033c74
    • Max Kellermann's avatar
      player_thread: drain audio outputs at the end of the playlist · 8420f142
      Max Kellermann authored
      When there's no queued song, and the current one has finished playing,
      first make sure that the hardware outputs have really finished playing
      the last chunk: call the drain() method in all audio outputs.  Without
      this patch, MPD stopped playback shortly before the ALSA sound card
      had finished playing.
      8420f142
    • Max Kellermann's avatar
      output_thread: added command DRAIN · 3359f878
      Max Kellermann authored
      This command manually drains the hardware buffer.  This is useful when
      the player thread want to make sure that everything has been played.
      3359f878
    • Max Kellermann's avatar
      player_control: removed the "volatile" attribute · 96b974bc
      Max Kellermann authored
      Our use of the "volatile" keyword was wrong from the start, and now
      that we have proper locking, we can safely remove all of them.
      96b974bc
  4. 08 Nov, 2009 9 commits
  5. 07 Nov, 2009 2 commits
    • Max Kellermann's avatar
      inotify: set close-on-exec flag · 1573ea14
      Max Kellermann authored
      Added wrapper for inotify_init1() to fd_util.c.
      1573ea14
    • Max Kellermann's avatar
      set the close-on-exec flag on all file descriptors · e3af0032
      Max Kellermann authored
      Added the "fd_util" library, which attempts to use the new thread-safe
      Linux system calls pipe2(), accept4() and the options O_CLOEXEC,
      SOCK_CLOEXEC.  Without these, it falls back to FD_CLOEXEC, which is
      not thread safe.
      
      This is particularly important for the "pipe" output plugin (and
      others, such as JACK/PulseAudio), because we were heavily leaking file
      descriptors to child processes.
      e3af0032