Re: [pulseaudio-discuss] [PATCH 0/7] Working around bad decibel information

2011-03-11 Thread Colin Guthrie
'Twas brillig, and Tanu Kaskinen at 04/03/11 15:42 did gyre and gimble:
 Here's a pile of patches. The first two implement the concept of decibel
 fixes for alsa devices. A decibel fix is basically a table that maps the
 raw volume steps of a mixer element to manually configured decibel values.
 
 The rest of the patches are random fixes that have piled up while testing
 the decibel fix patches. The pacat memory leak fix hasn't been verified
 that it works (it's just a quick fix to a seemingly obvious, but difficult to
 test bug), otherwise I have tested the fixes.

As you know, I've pulled this from your tree and pushed to git master now.

Many thanks for the tweaks (I did have a quick review, but as it's all
99% new code, I don't really have any specific comments).

Cheers

Col

-- 

Colin Guthrie
gmane(at)colin.guthr.ie
http://colin.guthr.ie/

Day Job:
  Tribalogic Limited [http://www.tribalogic.net/]
Open Source:
  Mageia Contributor [http://www.mageia.org/]
  PulseAudio Hacker [http://www.pulseaudio.org/]
  Trac Hacker [http://trac.edgewall.org/]

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] [PATCH 0/7] Working around bad decibel information

2011-03-09 Thread David Henningsson

On 2011-03-04 16:42, Tanu Kaskinen wrote:

Here's a pile of patches. The first two implement the concept of decibel
fixes for alsa devices. A decibel fix is basically a table that maps the
raw volume steps of a mixer element to manually configured decibel values.


Hmm, taking Lennart's hat on, shouldn't bad decibel information be fixed 
in the kernel, rather than in Pulseaudio? Then other non-PA applications 
would benefit from the change as well.



--
David Henningsson, Canonical Ltd.
http://launchpad.net/~diwic
___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


Re: [pulseaudio-discuss] [PATCH 0/7] Working around bad decibel information

2011-03-09 Thread Tanu Kaskinen
On Wed, 2011-03-09 at 12:53 +0200, David Henningsson wrote:
 On 2011-03-04 16:42, Tanu Kaskinen wrote:
  Here's a pile of patches. The first two implement the concept of decibel
  fixes for alsa devices. A decibel fix is basically a table that maps the
  raw volume steps of a mixer element to manually configured decibel values.
 
 Hmm, taking Lennart's hat on, shouldn't bad decibel information be fixed 
 in the kernel, rather than in Pulseaudio? Then other non-PA applications 
 would benefit from the change as well.

Yes, the fixes should be pushed to alsa. Maybe the DecibelFix
documentation in profile-sets/default.conf should even say that if
you're using this feature and not actively pushing the fixes to alsa,
then you're doing it wrong.

But if the kernel driver is already correct in the sense that it follows
the chip specifications, then I believe this feature is useful for
convincing the alsa developers to fix the driver - if the decibel
mapping has been tested in Pulseaudio already, we can give a ready-made
table to the alsa devs and they don't need to bother with the
measurement part.

I think measuring the correct levels is quite practical to do with
pulseaudio: the flat volume and sync volume features make it possible to
easily compare the subjective volume difference between hw attenuation
and with sw attenuation. If you play a quiet stream (eg. pacat
--volume=1  /dev/urandom) and then play short clips of silence at
full volume, the flat volume feature switches smoothly between hw and sw
attenuation for the quiet stream, and incorrect dB information is easy
to observe. Based on some personal experience, I believe subjective
measurement is even more accurate than measuring the levels using an
oscilloscope - at low volume levels the background noise can make
getting an accurate measurement really hard with an oscilloscope.

It's possible that this feature will lead to lowered pressure to report
dB problems to alsa, and if that means less fixes in alsa, then these
patches should be removed. But since anyone can try out tweaking the dB
values in pulseaudio's configuration easily (relative to hacking alsa
drivers), maybe this will actually increase the amount of fixes in
alsa...

These patches are old (only now I got around to polishing them and
sending them to upstream), and I've actually already asked Lennart's
opinion of this feature about a year ago. At that time he ok'd the
concept.

-- 
Tanu

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss


[pulseaudio-discuss] [PATCH 0/7] Working around bad decibel information

2011-03-04 Thread Tanu Kaskinen
Here's a pile of patches. The first two implement the concept of decibel
fixes for alsa devices. A decibel fix is basically a table that maps the
raw volume steps of a mixer element to manually configured decibel values.

The rest of the patches are random fixes that have piled up while testing
the decibel fix patches. The pacat memory leak fix hasn't been verified
that it works (it's just a quick fix to a seemingly obvious, but difficult to
test bug), otherwise I have tested the fixes.

Tanu Kaskinen (7):
  alsa-mixer: Add DecibelFix section to the profile set config file
format.
  alsa-mixer: Use decibel fixes when getting and setting decibel
volumes.
  pacat: Fix memory leak when draining the context.
  alsa-mixer: Add a default case for a switch, so that the compiler
won't complain about unhandled cases.
  alsa-card: Print the profile set configuration when loading the card.
  dbusiface-stream: Fix crash when there's no resampling used.
  dbus: Always accept mono volumes when setting device or stream
volume.

 src/modules/alsa/alsa-mixer.c|  500 +++---
 src/modules/alsa/alsa-mixer.h|   27 +-
 src/modules/alsa/mixer/profile-sets/default.conf |   49 ++-
 src/modules/alsa/module-alsa-card.c  |1 +
 src/modules/dbus/iface-device.c  |9 +-
 src/modules/dbus/iface-stream.c  |   14 +-
 src/utils/pacat.c|4 +-
 7 files changed, 517 insertions(+), 87 deletions(-)

-- 
1.7.4.1

___
pulseaudio-discuss mailing list
pulseaudio-discuss@mail.0pointer.de
https://tango.0pointer.de/mailman/listinfo/pulseaudio-discuss