Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 10 Aug 2005 09:54:57 +0800
From:      Ariff Abdullah <skywizard@MyBSD.org.my>
To:        Michael Seyfert <michaels@sdf.lonestar.org>
Cc:        freebsd-multimedia@freebsd.org
Subject:   Re: Massive sound changes / fix (24/32bit pcm support, new sampling rate converter, various fixes)
Message-ID:  <20050810095457.470ecbfa.skywizard@MyBSD.org.my>
In-Reply-To: <20050809222304.GA2491@SDF.LONESTAR.ORG>
References:  <20050809222304.GA2491@SDF.LONESTAR.ORG>

next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, 9 Aug 2005 22:23:04 +0000
Michael Seyfert <michaels@sdf.lonestar.org> wrote:
> > General sound infrastructure changes
> > ====================================
> > 
> > ac97.c
> >    * Slightly new method to detect mixer capabilities and
> >    resolution.
> >      This mostly to help CT4730, but apparently it does help other
> >      cards too (especially via8233x). This probably need futher
> >      test and confirmation from other people with ac97 cards other
> >      than via / es137x.
> >    * Aggresive dac power wake up call, again, to help CT4730 (and
> >      probably others).
> 
> 
> Please revert src/sys/dev/sound/pcm/ac97.c back to 1.43, these
> changes mess up the volume control on my audigy 2 card. It seems the
> struct ac97mixtable_entry.bits field isn't getting properly setup.
>
ac97 mixer (or should I say the 'standard') itself is a mess. The
value should already predefined up there. The main problem is
sometimes vendor tend to have their own spessific volume resolution
and stray away from the so called standard. The correct solution is
each sound driver should make their own provision for these value
(which unfortunately, current mixer infrastructure not capable of).

> I'm not sure what you're doing with this code:
> 
> for (k = 0; j != 0; k++)
> 	j >>= 1;
> for (j = 0; k != 0; j++)
> 	k >>= 1;
> if (j != 0) {
> 	codec->mix[i].enable = 1;
> #if 0
> 	codec->mix[i].bits = j;
> #endif
> } else
> 	codec->mix[i].enable = 0;
>
Any good result if you change that #if 0 to become #if 1 ? Can you
provide the output of 'mixer' command for both good / broken
conditions?


--

Ariff Abdullah
MyBSD

http://www.MyBSD.org.my (IPv6/IPv4)
http://staff.MyBSD.org.my (IPv6/IPv4)
http://tomoyo.MyBSD.org.my (IPv6/IPv4)



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