There are few reasons that a stream won't load, some are harder than others to troubleshoot than others. Here are a few reasons that a stream may not work.
- Parse the file. Playlist files (m3u and pls) have to be parsed before using for a stream URL. If using mpc, you would for example use m3u_handler.sh in the doc/ directory to parse the m3u playlist. Some clients handle this automatically, but it is the job of the person or the client, not MPD's.
- Network conditions. This is a hard (if not impossible) one to troubleshoot. Best way to troubleshoot this is to try the stream in another music player.
- Unsupported format. There are quite a few music formats out there that may not be supported through streaming, for example aac is not supported for incoming streaming until mpd versions >= 0.14.
- You don't have the specific codec for the file type you're wanting to play. For example, if you want to play an OggVorbis file, you need to have ogg support built into MPD. The best, and easiest way to find out (and you may not even have to be root) is mpd --version. There will be a listing there of all the supported formats that were compiled into your MPD.
- Unsupported stream transport. There are several transports based upon mms protocol that masqueradge as http urls. If your stream provider requires mms or mms over tcp or mms over http, mpd does not yet have native support. The same is true for rtsp transport.