--- libao2/ao_alsa9.c.orig Wed Jul 30 11:29:25 2003 +++ libao2/ao_alsa9.c Wed Jul 30 13:33:38 2003 @@ -336,7 +336,24 @@ } } } - } //end parsing ao_subdevice + } else { //end parsing ao_subdevice + /* in any case for multichannel playback we should select + * appropriate device + */ + char devstr[128]; + + switch (channels) { + case 4: + strcpy(devstr, "surround40"); + alsa_device = devstr; + break; + case 6: + strcpy(devstr, "surround51"); + alsa_device = devstr; + break; + default: + } + } /* switch for spdif * sets opening sequence for SPDIF