As promised: Soft volume mixer controller
Michael Nottebrock
lofi at freebsd.org
Wed Sep 14 03:41:38 PDT 2005
On Wednesday, 14. September 2005 04:12, Ariff Abdullah wrote:
> Can you revisit sys/dev/sound/pcm/ac97.c, look for
> ac97_fix_volume(codec); , and comment or remove it? I just want to make
> sure it is the fault of feeder volume, not something else.
Yes, that makes vchans work again (and the pcm mixer is binary again, so I
guess I commented out the right line, too).
However, it seems I also found another bug related to vchans somewhere else in
that patchset - and one in the current unpatched 5-STABLE:
I have hw.snd.pcm0.vchans=4 set in /etc/sysctl.conf
With an unpatched kernel (5-STABLE), this gives me:
[lofi at kiste]:0:~ > ls -l /dev/dsp*
crw-rw-rw- 1 root wheel 30, 3 14 Sep 12:31 /dev/dsp0.0
crw-rw-rw- 1 root wheel 30, 0x00010003 14 Sep 12:31 /dev/dsp0.1
crw-rw-rw- 1 root wheel 30, 0x00020003 14 Sep 12:31 /dev/dsp0.2
crw-rw-rw- 1 root wheel 30, 0x00030003 14 Sep 12:31 /dev/dsp0.3
crw-rw-rw- 1 root wheel 30, 0x00040003 14 Sep 12:31 /dev/dsp0.4
crw-rw-rw- 1 root wheel 30, 0x00050003 14 Sep 12:31 /dev/dsp0.5
crw-rw-rw- 1 root wheel 30, 5 14 Sep 12:29 /dev/dspW0.0
crw-rw-rw- 1 root wheel 30, 0x00010005 14 Sep 12:29 /dev/dspW0.1
crw-rw-rw- 1 root wheel 30, 0x00020005 14 Sep 12:29 /dev/dspW0.2
crw-rw-rw- 1 root wheel 30, 0x00030005 14 Sep 12:29 /dev/dspW0.3
crw-rw-rw- 1 root wheel 30, 0x00040005 14 Sep 12:29 /dev/dspW0.4
crw-rw-rw- 1 root wheel 30, 0x00050005 14 Sep 12:29 /dev/dspW0.5
crw-rw-rw- 1 root wheel 30, 0x0001000b 14 Sep 12:29 /dev/dspr0.1
i.e. six virtual devices rather then four. I have no idea if that has always
been the case or not - I never bothered to actually cound the devices before,
after the four I requested were there! :-)
With a patched kernel however I get:
[lofi at kiste]:0:~ > ls -l /dev/dsp*
crw-rw-rw- 1 root wheel 30, 3 14 Sep 12:36 /dev/dsp0.0
crw-rw-rw- 1 root wheel 30, 0x00020003 14 Sep 12:36 /dev/dsp0.2
crw-rw-rw- 1 root wheel 30, 0x00030003 14 Sep 12:37 /dev/dsp0.3
crw-rw-rw- 1 root wheel 30, 0x00040003 14 Sep 12:36 /dev/dsp0.4
crw-rw-rw- 1 root wheel 30, 0x00050003 14 Sep 12:36 /dev/dsp0.5
crw-rw-rw- 1 root wheel 30, 0x00060003 14 Sep 12:36 /dev/dsp0.6
crw-rw-rw- 1 root wheel 30, 5 14 Sep 12:36 /dev/dspW0.0
crw-rw-rw- 1 root wheel 30, 0x00020005 14 Sep 12:36 /dev/dspW0.2
crw-rw-rw- 1 root wheel 30, 0x00030005 14 Sep 12:36 /dev/dspW0.3
crw-rw-rw- 1 root wheel 30, 0x00040005 14 Sep 12:36 /dev/dspW0.4
crw-rw-rw- 1 root wheel 30, 0x00050005 14 Sep 12:36 /dev/dspW0.5
crw-rw-rw- 1 root wheel 30, 0x00060005 14 Sep 12:36 /dev/dspW0.6
crw-rw-rw- 1 root wheel 30, 0x0002000b 14 Sep 12:36 /dev/dspr0.2
Note how /dev/dsp(W|r)0.1 are missing and instead I get /dev/dsp(W)0.6
and /dev/dspr0.2 ...
--
,_, | Michael Nottebrock | lofi at freebsd.org
(/^ ^\) | FreeBSD - The Power to Serve | http://www.freebsd.org
\u/ | K Desktop Environment on FreeBSD | http://freebsd.kde.org
More information about the freebsd-multimedia
mailing list