From: Raymond Yau <superquad.vortex2@gmail.com>
To: ALSA Development Mailing List <alsa-devel@alsa-project.org>
Subject: Re: Mixer volume/decibel mapping
Date: Tue, 25 May 2010 21:51:18 +0800 [thread overview]
Message-ID: <AANLkTin7CGFuW_fhHEbhaDB77DLbKoTvck7YvuzVzGUw@mail.gmail.com> (raw)
In-Reply-To: <4BFB8E3E.3010209@ladisch.de>
2010/5/25 Clemens Ladisch <clemens@ladisch.de>
> Raymond Yau wrote:
> > 2010/5/21 Clemens Ladisch <clemens@ladisch.de>
> > > DB_LINEAR means that the mixer control value is a multiplier for the
> > > PCM sample value, as James wrote. A DB_LINEAR mapping has
> > > 0 == -infinity dB, full scale == 0 dB, and the mapping between mixer
> > > control values and corresponding dB values it _not_ linear.
> >
> > pci/oxygen/oxygen.c:static const DECLARE_TLV_DB_LINEAR(ak4396_db_scale,
> TLV_DB_GAIN_MUTE, 0);
> > pci/oxygen/hifier.c:static const DECLARE_TLV_DB_LINEAR(ak4396_db_scale,
> TLV_DB_GAIN_MUTE, 0);
> >
> > Refer to AK4396 datasheet
> >
> > Output Volume
> >
> > The AK4396 includes channel independent digital output volumes (ATT) with
> > 256 levels at linear step including MUTE.
> > These volumes are in front of the DAC and can attenuate the input data
> from
> > 0dB to –48dB and mute.
> >
> > dB range is -48dB to 0dB only
> >
> > ATT7-0: Attenuation Level
> > ATT = 20 log10 (ATT_DATA / 255) [dB]
> > FFH : 0dB (Default)
> > 00H : Mute
>
> This is the section of the datasheet on which the above declarations are
> based.
>
> Now if you have some remark or question, you should remember to include
> it in your mail.
>
>
> Regards,
> Clemens
>
I have doubt about DECLARE_TLV_DB_LINEAR(ak4396_
db_scale, TLV_DB_GAIN_MUTE, 0);
since the datasheet mention that dB range is only -48dB to 0dB , DR and S/N
is only 120dB
ATT = 20 log10 (ATT_DATA / 255) [dB]
How can AK4396 has scale of -inf DB to 0dB in the driver code ?
BTW , if ymf7xx (DSP) only accept 16 bit digital PCM data and output to
18-20 bit AC97 codec , how can the per stream volume control has a scale
-inf dB to 0dB ?
inf dB may occur when DSP accept floating point
however the storage of Float pointing is still finite , the min dB of DSP
accept FLOAT64 should in theory lower than the min dB of those DSP accept
FLOAT32
next prev parent reply other threads:[~2010-05-25 13:51 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
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 [this message]
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=AANLkTin7CGFuW_fhHEbhaDB77DLbKoTvck7YvuzVzGUw@mail.gmail.com \
--to=superquad.vortex2@gmail.com \
--cc=alsa-devel@alsa-project.org \
/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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).