Massive sound changes / fix (24/32bit pcm support, new sampling rate converter, various fixes)

Ariff Abdullah skywizard at MyBSD.org.my
Wed Aug 10 02:17:18 GMT 2005


On Tue, 9 Aug 2005 22:23:04 +0000
Michael Seyfert <michaels at 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)


More information about the freebsd-multimedia mailing list