From: Clemens Ladisch <clemens@ladisch.de>
To: James Courtier-Dutton <james.dutton@gmail.com>
Cc: alsa-devel@alsa-project.org, "Sebastian H." <vand2@gmx.de>
Subject: Re: Mixer volume/decibel mapping
Date: Fri, 21 May 2010 08:35:31 +0200 [thread overview]
Message-ID: <4BF629B3.9020904@ladisch.de> (raw)
In-Reply-To: <AANLkTimRTIwmzU2Dq4lgBSSwtcmSxfMcBfcll9YDC_l5@mail.gmail.com>
James Courtier-Dutton wrote:
> I believe it could be extended to support a continuous range.
> For example, some hardware uses a 32bit value to control the gain.
> The mix operation is simply "the_sample" * "the_control_value".
> So in this case the hardware has a linear control that can be
> considered continuous for our purposes.
Such controls already exist:
$ grep -rl DB_LINEAR sound/
sound/i2c/other/ak4xxx-adda.c
sound/pci/oxygen/hifier.c
sound/pci/oxygen/oxygen.c
sound/pci/ymfpci/ymfpci_main.c
sound/soc/codecs/stac9766.c
sound/soc/codecs/wm8350.c
sound/soc/codecs/wm8400.c
sound/soc/codecs/wm8990.c
> The conversion from the control value to a usable value would have to
> include a user land log operation.
> It was never implemented due to lack of demand.
It is implemented.
> For the cards that do have this 32bit linear value, a simple lookup
> table is used in the kernel code to convert it to 256 step values.
Which driver is this? It should be changed to use the full range.
Regards,
Clemens
next prev parent reply other threads:[~2010-05-21 6:35 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-05-19 16:34 Mixer volume/decibel mapping Sebastian H.
2010-05-20 7:34 ` Clemens Ladisch
2010-05-20 8:01 ` James Courtier-Dutton
2010-05-20 8:53 ` Raymond Yau
2010-05-20 9:41 ` Sebastian H.
2010-05-20 16:13 ` James Courtier-Dutton
2010-05-21 0:35 ` Raymond Yau
2010-05-21 1:30 ` Raymond Yau
2010-05-21 8:18 ` Sebastian H.
2010-06-07 3:37 ` Raymond Yau
2010-06-07 9:19 ` Sebastian H.
2010-06-08 1:03 ` Raymond Yau
2010-06-08 6:02 ` Sebastian Holtermann
2010-06-08 15:31 ` Raymond Yau
2010-06-09 10:26 ` Sebastian H.
2010-06-08 6:08 ` Sebastian H.
2010-06-09 5:39 ` Raymond Yau
2010-06-09 7:34 ` Sebastian H.
2010-06-10 0:08 ` Raymond Yau
2010-06-09 5:55 ` Raymond Yau
2010-06-08 2:23 ` Raymond Yau
2010-05-21 6:35 ` Clemens Ladisch [this message]
2010-05-21 6:51 ` Peter Ujfalusi
2010-05-21 9:56 ` Clemens Ladisch
2010-05-24 2:52 ` Raymond Yau
2010-05-25 8:38 ` Clemens Ladisch
2010-05-25 8:43 ` James Courtier-Dutton
2010-05-25 8:49 ` Clemens Ladisch
2010-05-25 23:24 ` Raymond Yau
2010-05-27 13:32 ` Colin Guthrie
2010-05-29 3:54 ` Raymond Yau
2010-05-29 1:57 ` Raymond Yau
2010-05-29 18:46 ` Colin Guthrie
2010-06-04 23:46 ` Raymond Yau
[not found] ` <AANLkTik7mD1DAVWkOwM7sNu0EfgGApvzX9WRXWBOO4PI@mail.gmail.com>
2010-05-25 8:45 ` Clemens Ladisch
2010-05-25 13:51 ` Raymond Yau
2010-05-25 14:36 ` Clemens Ladisch
2010-05-25 23:00 ` Raymond Yau
2010-05-27 0:20 ` Raymond Yau
2010-05-28 13:04 ` Raymond Yau
2010-05-28 14:10 ` Clemens Ladisch
2010-05-29 1:31 ` Raymond Yau
2010-05-21 13:16 ` James Courtier-Dutton
2010-05-25 8:21 ` Clemens Ladisch
2010-06-09 6:19 ` Raymond Yau
2010-05-22 9:24 ` Raymond Yau
2010-05-20 9:20 ` Sebastian H.
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4BF629B3.9020904@ladisch.de \
--to=clemens@ladisch.de \
--cc=alsa-devel@alsa-project.org \
--cc=james.dutton@gmail.com \
--cc=vand2@gmx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.