Index: DOCS/man/en/mplayer.1 =================================================================== RCS file: /cvsroot/mplayer/main/DOCS/man/en/mplayer.1,v retrieving revision 1.761 diff -u -r1.761 mplayer.1 --- DOCS/man/en/mplayer.1 2 Oct 2004 15:57:42 -0000 1.761 +++ DOCS/man/en/mplayer.1 2 Oct 2004 22:31:11 -0000 @@ -1743,6 +1743,8 @@ .IPs device= Sets the device name. Replace any ',' with '.' and any ':' with '=' in the ALSA device name. +Make sure you do not set this when you want hwac3 output via SPDIF, unless +you really know how to set it correctly. .RE .PD 1 . Index: libao2/ao_alsa.c =================================================================== RCS file: /cvsroot/mplayer/main/libao2/ao_alsa.c,v retrieving revision 1.8 diff -u -r1.8 ao_alsa.c --- libao2/ao_alsa.c 22 Sep 2004 14:12:53 -0000 1.8 +++ libao2/ao_alsa.c 2 Oct 2004 22:31:14 -0000 @@ -405,6 +405,7 @@ } } + if (!device_set) { /* switch for spdif * sets opening sequence for SPDIF * sets also the playback and other switches 'on the fly' @@ -430,24 +431,21 @@ s[0], s[1], s[2], s[3]); mp_msg(MSGT_AO,MSGL_V,"alsa-spdif-init: playing AC3, %i channels\n", channels); - device_set = 1; break; case 4: strncpy(alsa_device, "surround40", ALSA_DEVICE_SIZE); - device_set = 1; break; case 6: strncpy(alsa_device, "surround51", ALSA_DEVICE_SIZE); - device_set = 1; break; default: mp_msg(MSGT_AO,MSGL_ERR,"alsa-spdif-init: %d channels are not supported\n", channels); } } + else - if (!device_set) { int tmp_device, tmp_subdevice, err; @@ -477,6 +475,7 @@ } else { mp_msg(MSGT_AO,MSGL_INFO,"alsa-init: soundcard set to %s\n", alsa_device); } + } //setting modes for block or nonblock-mode if (ao_noblock) {