Troubleshooting Libao
From Music Player Daemon Community Wiki
The first step on troubleshooting libao is ensuring that you have at least version 0.8.5 installed, this one eliminiates a lot of the problems that people were seeing in MPD. Secondly, you need to make sure your libao has the target you are looking for compiled into it. For instance, if you want the ALSA driver, you need to ensure that it is compiled into libao. If you're getting the message 'alsa' is not a valid driver, it's not compiled in. Check the spelling that you typed into mpd.conf and recompile if necessary.
[edit] Speed problems
Along with trying the above, you should try to disable your audio_output_format in your MPD configuration file. If that doesn't work, try setting a sane default value:
audio_output_format "48000:16:2"
[edit] libshout specifics
If you experience playback speed problems when using shoutcast, ensure that you are using at least version 2.1 of libshout.
[edit] CPU Heavy (ALSA/libao Specific)
This is due to some problem in libao. This can be remedied by placing the following line in your MPD config file:
driver_options "period_size=50000"
If that doesn't work, add "use_mmap=true" to the driver options:
driver_options "period_size=50000;use_mmap=true"
If none of the above works for you, compile OSS emulation in the kernel and set up MPD to use OSS output:
driver "oss" driver_options "dsp=/dev/dsp"
Trying to troubleshoot a failure to play into a USB audio device (with no ALSA installed), I tried adding the above two lines as shown into mpd.conf. This generated an error and failed to load:
unrecognized parameter in config file at line 103: driver
