To play through esd, the "ao_driver" option in /etc/mpd.conf is changed to "esd". However, when this is done, the error "problems opening audio device" is returned in mpd.error.log. The problem is that esd looks for (and creates, if not found) ~/.esd_auth file and mpd runs as user "mpd" (created by portage) by default and "mpd" (the user) has no home directory (or specifically, has a home dir of /dev/null), so the file cannot be found/created. A quick fix/hack is to change "mpd"'s home dir to /etc/share/mpd Reproducible: Always Steps to Reproduce: 1. emerge esd 2. emerge mpd 3. change "ao_driver" in /etc/mpd.conf to "esd" 4. /etc/init.d/esound start 5. /etc/init.d/mpd start 6. play song through mpd using favorite client 7. tail /var/log/mpd.error.log Actual Results: mpd.error.log: 'Aug 7 12:42 : problems opening audio device while playing "/mp3s/song.mp3"' Expected Results: Not returned an error.
Could you try installing media-sound/mpd-svn with "ao" USE-flag disabled? There is an unresolved issue, similar to yours on musicpd.org forums, where it's indicated that it could be a libao bug. Note that mpd-svn uses a slightly different configuration file format, especially the audio output section.
Actually, nevermind - mpd user should really have a homedir other than /dev/null. I'll change it to /var/lib/mpd, or something like that soon, also changing default values of music_directory and playlist_directory in mpd.conf.
Looks like someone already thought of this. I'm duping this bug, because the other one was there first - I'll deal with the issue there. *** This bug has been marked as a duplicate of 83644 ***