kern/113950: [sound] [patch] add per-vchan mixer support
Ariff Abdullah
ariff at FreeBSD.org
Sun Jul 1 13:10:22 UTC 2007
The following reply was made to PR kern/113950; it has been noted by GNATS.
From: Ariff Abdullah <ariff at FreeBSD.org>
To: bug-followup at FreeBSD.org, alexbl at FreeBSD.org
Cc:
Subject: Re: kern/113950: [sound] [patch] add per-vchan mixer support
Date: Sun, 1 Jul 2007 21:06:03 +0800
Technically, the trivial approach used by DFly not quite applicable
for FreeBSD due to various changes in the current (I'm talking about
-current / 7.x) sound driver codes. These includes maintaining
sample/bit fidelity (DFly still using 16bit/stereo little-endian),
and future multichannel interleaved pcm data. Besides, inlining volume
processing into virtual channel mixer is not quite correct since we
already have feeder_volume to do the job. Our vchan is no longer meant
for playback only since the latest "vrec" feature brings vchan
capability for recording as well. Making vchan's (and vchan only)
volume controllable is also quite unfair for other possible multi-pcm
channel hardware like snd_emu10k and snd_via8233 since these drivers
have multiple hardware playback channels that will make them look like
a 2nd class citizen. That said, reasoning like "Sorry, you must enable
vchan to use this feature" is purely unacceptable.
But wait, I'm not finish yet. Please take a look at
http://people.freebsd.org/~ariff/ , and see for yourself why
our soon-to-be-committed "vpc" (volume per channel, coined by joel@)
are much better. It is sample/bit/endian/multichannel safe, handle
both playback and recording direction through "pcm" and "rec" control,
valid for hardware/virtual channels and better locality control
through SNDCTL_DSP_[GET|SET][PLAY|REC]VOL, SOUND_MIXER_[PCM|RECLEV]
ioctls.
(btw, I'm still waiting for interested port committers to make a port
out of patch/binary modules from ~ariff/ , especially for RELENG_6
and 5)
With that, I'm about to close this PR. Next time, please bring
this sort of discussion to multimedia@ first, ok ? :)
Thank you.
--
Ariff Abdullah
FreeBSD
... Recording in stereo is obviously too advanced
and confusing for us idiot ***** users :P ........
More information about the freebsd-multimedia
mailing list