1. 09 Mar, 2009 8 commits
  2. 08 Mar, 2009 4 commits
    • Max Kellermann's avatar
      music_chunk: added assertions on the audio format · 94d1a87d
      Max Kellermann authored
      In !NDEBUG, remember which audio_format is stored in every chunk and
      every pipe.  Check the audio_format of every new data block appended
      to the music_chunk, and the format of every new chunk appended to the
      music_pipe.
      94d1a87d
    • Max Kellermann's avatar
      359f9871
    • Max Kellermann's avatar
      alsa: determine buffer_time if not already known · ab656a52
      Max Kellermann authored
      This patch fixes a theoretical (but practically impossible) flaw: the
      variable "buffer_time" may be uninitialized when it is used.
      Initialize the variable with snd_pcm_hw_params_get_buffer_time().
      ab656a52
    • Max Kellermann's avatar
      alsa: better period_time default value for high sample rates · 554a34fb
      Max Kellermann authored
      The default values for buffer_time and period_time were both capped by
      the hardware limits on practically all chips.  The result was a
      period_time which was half as big as the buffer_time.  On some chips,
      this led to lots of underruns when using a high sample rate (192 kHz),
      because MPD had very little time to send new samples to ALSA.
      
      A period time which is one fourth of the buffer time turned out to be
      much better.  If no period_time is configured, see how much
      buffer_time the hardware accepts, and try to configure one fourth of
      it as period_time, instead of hard-coding the default period_time
      value.
      
      This is yet another attempt to provide a solution which is valid for
      all sound chips.  Using the SND_PCM_NONBLOCK flag also seemed to solve
      the underruns, but put a lot more CPU load to MPD.
      554a34fb
  3. 07 Mar, 2009 17 commits
  4. 06 Mar, 2009 11 commits