Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 22 Sep 2008 20:15:28 +0200
From:      Krzysztof Kotlenga <piernik@gmail.com>
To:        freebsd-multimedia@freebsd.org
Subject:   snd_emu10kx - center and subwoofer output
Message-ID:  <20080922201528.019f43a4@mobil.site>

next in thread | raw e-mail | index | archive | help
--MP_/CyCn1yh1=Fmzym9gzAvLO+T
Content-Type: text/plain; charset=US-ASCII
Content-Transfer-Encoding: 7bit
Content-Disposition: inline

Hi!

While trying to setup multichannel output using SB Audigy (CA100),
PulseAudio and snd_emu10kx I came into problem with sub/center outputs
being mute. After some digging, I've found that the driver code
enabling them is disabled and enabling it (see attachment) solves my
issue.

Another problem is that I'm using analog outputs and until I set
dev.emu10kx.0._digital=0 sysctl, analog/digital output produces only
digital noise. Hearing that noise every time you turn on your PC, after
the module loads and before sysctl runs can by quite annoying.

I think both these issues were mentioned earlier on this list but
didn't get enough attention.

This being said, huge thanks to Yuriy for making this possible!

-- 
xmpp:pocketer@jabber.gda.pl

--MP_/CyCn1yh1=Fmzym9gzAvLO+T
Content-Type: text/x-patch; name=emu10kx.diff
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment; filename=emu10kx.diff

--- sys/dev/sound/pci/emu10kx.c.orig	2008-09-18 20:13:11.000000000 +0200
+++ sys/dev/sound/pci/emu10kx.c	2008-09-18 20:49:31.000000000 +0200
@@ -2036,22 +2036,22 @@
 
 			/* fx4 (pcm2) to center */
 			EFX_CACHE(C_CENTER);
 			EFX_ROUTE(NULL, FX(4), M_FX4_CENTER, C_CENTER, 100);
 			EFX_OUTPUT(NULL, C_CENTER, M_MASTER_CENTER, A_OUT_D_CENTER, 100);
-#if 0
+#if 1
 			/*
 			 * XXX in digital mode (default) this should be muted
 			 * because this output is shared with digital out
 			 */
 			EFX_OUTPUTD(C_CENTER, M_MASTER_CENTER, A_OUT_A_CENTER);
 #endif
 			/* fx5 (pcm3) to sub */
 			EFX_CACHE(C_SUB);
 			EFX_ROUTE(NULL, FX(5), M_FX5_SUBWOOFER, C_SUB, 100);
 			EFX_OUTPUT(NULL, C_SUB, M_MASTER_SUBWOOFER, A_OUT_D_SUB, 100);
-#if 0
+#if 1
 			/*
 			 * XXX in digital mode (default) this should be muted
 			 * because this output is shared with digital out
 			 */
 			EFX_OUTPUTD(C_SUB, M_MASTER_SUBWOOFER, A_OUT_A_SUB);

--MP_/CyCn1yh1=Fmzym9gzAvLO+T--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080922201528.019f43a4>