From e6051cdf8db554c0bbd4257959c37a7ecc9c10c5 Mon Sep 17 00:00:00 2001 From: David Henningsson Date: Fri, 2 Aug 2013 15:03:26 +0200 Subject: [PATCH] alsa-mixer: Prefer moving "Capture" before moving boosts Some HD-audio codecs (at least ALC269VB and ALC283) become quite noisy on high Mic Boost levels. So e g, if there is a "Mic Boost" and a "Capture" control, both ranging from 0 dB to +30 dB, you get better quality if "Mic Boost" is 0 dB and "Capture" is +30 dB, than the other way around. By changing the order in the configuration files, this patch makes us prefer leaving "Mic Boost" low and "Capture" high if the user selects a medium gain. (This is based on limited experience, and there is no guarantee that there are no sound cards that work the other way around, and therefore this patch could potentially regress quality on those machines. Hopefully those are fewer, so this is what we should default to.) BugLink: https://bugs.launchpad.net/1085402 Signed-off-by: David Henningsson --- .../alsa/mixer/paths/analog-input-dock-mic.conf | 12 ++++++------ .../alsa/mixer/paths/analog-input-front-mic.conf | 12 ++++++------ .../mixer/paths/analog-input-headphone-mic.conf | 12 ++++++------ .../alsa/mixer/paths/analog-input-headset-mic.conf | 12 ++++++------ .../paths/analog-input-internal-mic-always.conf | 13 ++++++------- .../alsa/mixer/paths/analog-input-internal-mic.conf | 13 ++++++------- src/modules/alsa/mixer/paths/analog-input-mic.conf | 12 ++++++------ .../alsa/mixer/paths/analog-input-rear-mic.conf | 12 ++++++------ 8 files changed, 48 insertions(+), 50 deletions(-) diff --git a/src/modules/alsa/mixer/paths/analog-input-dock-mic.conf b/src/modules/alsa/mixer/paths/analog-input-dock-mic.conf index 9334d451b..85a865831 100644 --- a/src/modules/alsa/mixer/paths/analog-input-dock-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-dock-mic.conf @@ -30,6 +30,12 @@ state.plugged = unknown state.unplugged = unknown required-any = any +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Dock Mic Boost] required-any = any switch = select @@ -50,12 +56,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select diff --git a/src/modules/alsa/mixer/paths/analog-input-front-mic.conf b/src/modules/alsa/mixer/paths/analog-input-front-mic.conf index 3fb5f5e85..5265e5b65 100644 --- a/src/modules/alsa/mixer/paths/analog-input-front-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-front-mic.conf @@ -30,6 +30,12 @@ required-any = any state.plugged = unknown state.unplugged = unknown +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Front Mic Boost] required-any = any switch = select @@ -50,12 +56,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select diff --git a/src/modules/alsa/mixer/paths/analog-input-headphone-mic.conf b/src/modules/alsa/mixer/paths/analog-input-headphone-mic.conf index 688b8ac97..3a19e0165 100644 --- a/src/modules/alsa/mixer/paths/analog-input-headphone-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-headphone-mic.conf @@ -27,6 +27,12 @@ description-key = analog-input-microphone required-any = any state.plugged = unknown +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Headphone Mic Boost] required-any = any switch = select @@ -41,12 +47,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select diff --git a/src/modules/alsa/mixer/paths/analog-input-headset-mic.conf b/src/modules/alsa/mixer/paths/analog-input-headset-mic.conf index 0a3d661f5..aeb2cec60 100644 --- a/src/modules/alsa/mixer/paths/analog-input-headset-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-headset-mic.conf @@ -36,6 +36,12 @@ state.plugged = unknown [Jack Headphone Mic] state.plugged = unknown +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Headset Mic Boost] required-any = any switch = select @@ -57,12 +63,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select diff --git a/src/modules/alsa/mixer/paths/analog-input-internal-mic-always.conf b/src/modules/alsa/mixer/paths/analog-input-internal-mic-always.conf index cd08531b7..e9c288eb4 100644 --- a/src/modules/alsa/mixer/paths/analog-input-internal-mic-always.conf +++ b/src/modules/alsa/mixer/paths/analog-input-internal-mic-always.conf @@ -39,6 +39,12 @@ state.unplugged = unknown state.plugged = no state.unplugged = unknown +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Internal Mic Boost] switch = select volume = merge @@ -63,7 +69,6 @@ name = input-boost-on [Option Int Mic Boost:off] name = input-boost-off - [Element Internal Mic] switch = mute volume = merge @@ -76,12 +81,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select diff --git a/src/modules/alsa/mixer/paths/analog-input-internal-mic.conf b/src/modules/alsa/mixer/paths/analog-input-internal-mic.conf index ae3e9a832..5424a1b07 100644 --- a/src/modules/alsa/mixer/paths/analog-input-internal-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-internal-mic.conf @@ -44,6 +44,12 @@ state.plugged = unknown state.unplugged = unknown required-any = any +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Internal Mic Boost] required-any = any switch = select @@ -70,7 +76,6 @@ name = input-boost-on [Option Int Mic Boost:off] name = input-boost-off - [Element Internal Mic] required-any = any switch = mute @@ -85,12 +90,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select diff --git a/src/modules/alsa/mixer/paths/analog-input-mic.conf b/src/modules/alsa/mixer/paths/analog-input-mic.conf index 17f3988f4..2ce6dd39c 100644 --- a/src/modules/alsa/mixer/paths/analog-input-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-mic.conf @@ -30,6 +30,12 @@ required-any = any state.plugged = unknown state.unplugged = unknown +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Mic Boost] required-any = any switch = select @@ -50,12 +56,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select diff --git a/src/modules/alsa/mixer/paths/analog-input-rear-mic.conf b/src/modules/alsa/mixer/paths/analog-input-rear-mic.conf index ac78b5b98..eed4f83f8 100644 --- a/src/modules/alsa/mixer/paths/analog-input-rear-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-rear-mic.conf @@ -30,6 +30,12 @@ required-any = any state.plugged = unknown state.unplugged = unknown +[Element Capture] +switch = mute +volume = merge +override-map.1 = all +override-map.2 = all-left,all-right + [Element Rear Mic Boost] required-any = any switch = select @@ -50,12 +56,6 @@ volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] -switch = mute -volume = merge -override-map.1 = all -override-map.2 = all-left,all-right - [Element Input Source] enumeration = select