Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 May 2000 10:51:22 +0900
From:      Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp>
To:        larse@isi.edu
Cc:        Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp>
Subject:   Re: Fwd: Re: FreeBSD-4.0 & CS461x & rat/vat
Message-ID:  <14618.4634.680064.72159A@rina>
In-Reply-To: In your message of "Tue, 9 May 2000 10:13:32 -0700 (PDT)" <14616.18236.968899.283451@hbo.isi.edu>
References:  <14616.18236.968899.283451@hbo.isi.edu>

next in thread | previous in thread | raw e-mail | index | archive | help
--Multipart_Thu_May_11_10:51:22_2000-1
Content-Type: text/plain; charset=US-ASCII

On Tue, 9 May 2000 10:13:32 -0700 (PDT),
  Lars Eggert <larse@isi.edu> said:

Lars> Is there any documentation online on how to enable full duplex audio
Lars> with newpcm? (See Colin's question below.)
   >> 742:auddev_luigi.c:72 soundcaps[0].formats  = 0x10000010
Lars>                                                ^^^^^^^^^^
Lars> This indicates the problem: rat is expecting that a full duplex card has
Lars> the high order bit set (i.e. AFMT_FULLDUPLEX in <machine/soundcard.h>),
Lars> such that this should read 0x90000010.

This is a problem of our pcm driver. We now simply return the
statically defined capability of a driver to AIOGCAP. It would help
you to add a workround done in SNDCTL_PCM_GETCAPS, attached below.


--Multipart_Thu_May_11_10:51:22_2000-1
Content-Type: text/plain; type=patch; charset=US-ASCII
Content-Disposition: attachment; filename="dsp.c.diff"
Content-Transfer-Encoding: 7bit

Index: sys/dev/sound/pcm/dsp.c
===================================================================
RCS file: /home/naklab/tanimura/silver/CVS/FreeBSD/sys/dev/sound/pcm/dsp.c,v
retrieving revision 1.1.1.1.2.3
diff -u -r1.1.1.1.2.3 dsp.c
--- sys/dev/sound/pcm/dsp.c	2000/05/05 12:29:24	1.1.1.1.2.3
+++ sys/dev/sound/pcm/dsp.c	2000/05/11 01:48:20
@@ -271,6 +271,8 @@
 			/* XXX bad on sb16 */
 	    		p->formats = (rcaps? rcaps->formats : 0xffffffff) &
 			 	     (pcaps? pcaps->formats : 0xffffffff);
+			if (rdch && wrch && !(d->flags & SD_F_SIMPLEX))
+				p->formats |= AFMT_FULLDUPLEX;
 	    		p->mixers = 1; /* default: one mixer */
 	    		p->inputs = d->mixer.devs;
 	    		p->left = p->right = 100;

--Multipart_Thu_May_11_10:51:22_2000-1
Content-Type: text/plain; charset=US-ASCII


If the patch works, I will commit it.

-- 
Seigo Tanimura <tanimura@r.dl.itc.u-tokyo.ac.jp> <tanimura@FreeBSD.org>

--Multipart_Thu_May_11_10:51:22_2000-1--


To Unsubscribe: send mail to majordomo@FreeBSD.org
with "unsubscribe freebsd-multimedia" in the body of the message




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