[alsa-devel] mpd + emu 0404 USB automatic sample rate

Killer{R} support at killprog.com
Sat Jul 19 23:50:33 CEST 2014


Hello alsa-devel,

  I'm trying to build bit-perfect music playback box using Olinuxino board
  and EMU 0404 USB sound card running MPD. I have wide collection of lossless
  songs with different sampling rates - from 44100 to 192000. I set MPD config
  to play sound via correct alsa device and it works, however whenever I start
  play song with different sampling rate - MPD (or ALSA?) 'forgets' to switch
  sampling rate frequency and I hear buzzing sound instead of music. If I run
  alsamixer and manually switch there sampling rate - it plays OK until I
  select song with again different sampling rate.
  It seems I'm not first with such a problem, here is same complain
  with a workadound: http://murga-linux.com/puppy/viewtopic.php?p=745547#745547

  Currently I'm running sunxi Linux kernel: 3.4.90, but same bug reproduced when I
  used Raspberry PI with kernel 3.6.11
  ALSA's version: cat /proc/asound/version
  Advanced Linux Sound Architecture Driver Version 1.0.25.
  Seems I was able to fix this on my system, but not sure if this fix is
  correct, here is diff:

--- quirks.c   Fri Jul 18 01:20:16 2014
+++ quirks.c   Sun Jul 20 00:20:49 2014
@@ -723,7 +723,8 @@ static void set_format_emu_quirk(struct
         * by playback substream
         */
        if (subs->direction == SNDRV_PCM_STREAM_PLAYBACK) {
-               if (subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].interface != -1)
+               if (subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].interface != -1 &&
+                       subs->stream->substream[SNDRV_PCM_STREAM_CAPTURE].running)
                        return;
        }  
  
  
  

-- 
Best regards,
 Killer{R}                          mailto:support at killprog.com



More information about the Alsa-devel mailing list