I am trying to set up an Raspberry Pi / Raspbian wheezy audio player using the onboard sound hardware via ALSA LADSPA plugins to stereo downmix and compress the audio.aplay, sox, mpg123, moc (cd ~/.moc && cp /usr/share/doc/moc/examples/config.example.gz ./ && gunzip config.example.gz && mv config.example config) work with this custom device:pi@raspberrypi ~ $ aplay -D mcl audiofile.wavpi@raspberrypi ~ $ sox audiofile.wav -t alsa mclpi@raspberrypi ~ $ mpg123 -a mcl audiofile.mp3pi@raspberrypi ~ $ speaker-test -t wav -c 2pi@raspberrypi ~ $ speaker-test -t wav -c 2 -D mclI have built the current mpd version from source (http://www.musicpd.org/download/mpd/0.19/mpd-0.19.8.tar.xz) following this tutorial:http://www.infofreako.info/2014/04/building-mpd-on-raspberry-pi-with-opus-support/ (needs additional dependencies libboost-dev and libicu-dev)pi@raspberrypi ~ $ mpc versionmpd version: 0.19.0pi@raspberrypi ~ $ mpd --versionMusic Player Daemon 0.19.8but still get the error:ALSA lib pcm.c:2217:(snd_pcm_open_noupdate) Unknown PCM mclJan 25 10:23 : alsa_output: Failed to open My ALSA Device [alsa]: Failed to open ALSA device mcl: No such file or directoryJan 25 10:23 : output: Failed to open audio outputJan 25 10:23 : client: [1] closedIt does work fine when using the default device (ladcomp does not work either).So there is either something wrong/missing in my ALSA configuration that the other players are guessing or mpd is doing it wrong.There is no /etc/asound.conf, I created the following ~/.asoundrc using several sourcespcm.!default {    type hw    card 0    device 0    } ctl.!default {    type hw    card 0    device 0}################ compressorpcm.ladcomp_limiter {    type ladspa    slave.pcm plughw:0,0;#    slave.pcm default;#    slave.pcm makemono;    path /usr/lib/ladspa;    plugins [{        label fastLookaheadLimiter        input {            #InputGain(Db) -20 -> +20 ; Limit (db) -20 -> 0 ; Release time (s) 0.01 -> 2            controls [ 20 0 0.8  ]        }    }]}pcm.ladcomp_compressor {    type ladspa    slave.pcm ladcomp_limiter;    path /usr/lib/ladspa;    plugins [{        label dysonCompress        input {            #peak limit, release time, fast ratio, ratio            controls [0 1 0.5 0.99]        }    }]}pcm.ladcomp {    type plug    slave.pcm ladcomp_compressor;}### test mono downmix#pcm.card0 {#  type hw#  card 0#  device 0#}#ctl.card0 {#  type hw#  card 0#  device 0#}#pcm.monocard {#  slave.pcm card0#  slave.channels 2#  type plug#}#ctl.monocard {#  type hw#  card 0#  device 0#}#pcm.!default monocard####### didnt work, try thispcm.mcl {#pcm.makemono {    type route   # slave.pcm plughw:0,0    slave.pcm ladcomp    ttable {    # Copy both input channels to output channel 0 (Left).    0.0 1.0    1.0 1.0    # copy both input channels to output channel 1 (Right).    0.1 1.0    1.1 1.0    }}#pcm.!default monocomplimiter# EOFpi@raspberrypi ~ $ grep -v '^$\|^\s*#' /etc/mpd.confmusic_directory         /var/lib/mpd/musicplaylist_directory              /var/lib/mpd/db_file                 /var/lib/mpd/tag_cachelog_file                        /var/lib/mpd/mpd.logpid_file                        /var/run/mpd/pidstate_file                      /var/lib/mpd/statesticker_file                   /var/lib/mpd/sticker.sqluser                            mpdbind_to_address         anymetadata_to_use artist,album,title,track,name,commentinput {        plugin curl}audio_output {        type            alsa        name            My ALSA Device        device          mcl}mixer_type                      disabledfilesystem_charset              UTF-8id3v1_encoding                  UTF-8pi@raspberrypi ~ $ uname -r3.18.3+Let me know if you need more info.Edit:pi@raspberrypi ~ $ cat /proc/asound/cards 0 [ALSA           ]: bcm2835 - bcm2835 ALSA                      bcm2835 ALSApi@raspberrypi ~ $ cat /proc/asound/devices  0: [ 0]   : control  1:        : sequencer 16: [ 0- 0]: digital audio playback 17: [ 0- 1]: digital audio playback 33:        : timerpi@raspberrypi ~ $Is there a way for ALSA to create virtual devices from the config in here, where mpd could find it (if it does search there)?Edit:pi@raspberrypi ~ $ cat /proc/asound/pcm00-00: bcm2835 ALSA : bcm2835 ALSA : playback 800-01: bcm2835 ALSA : bcm2835 IEC958/HDMI : playback 1pi@raspberrypi ~ $ ls /proc/asound/devls: cannot access /proc/asound/dev: No such file or directorypi@raspberrypi ~ $ ls /dev/sndcontrolC0  pcmC0D0p  pcmC0D1p  seq  timerpi@raspberrypi ~ $ ls /proc/sound/ls: cannot access /proc/sound/: No such file or directorypi@raspberrypi ~ $ ls /proc/soundls: cannot access /proc/sound: No such file or directorypi@raspberrypi ~ $ amixeramixer: Mixer attach default error: Invalid argumentpi@raspberrypi ~ $ alsamixercannot open mixer: Invalid argumentpi@raspberrypi ~ $Edit:pi@raspberrypi ~ $ alsamixer -c 0works.
mpd fails to open ALSA device where aplay succeeds
audio;raspberry pi;alsa;raspbian;mpd