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 <[email protected]> --- .../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 ++++++------- .../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 9334d45..85a8658 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 3fb5f5e..5265e5b 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 688b8ac..3a19e01 100644 --- a/src/modules/alsa/mixer/paths/analog-input-headphone-mic.conf +++ b/src/modules/alsa/mixer/paths/analog-input-headphone-mic.conf @@ -27,21 +27,21 @@ description-key = analog-input-microphone required-any = any state.plugged = unknown -[Element Headphone Mic Boost] -required-any = any -switch = select +[Element Capture] +switch = mute volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Headphone Mic] +[Element Headphone Mic Boost] required-any = any -switch = mute +switch = select volume = merge override-map.1 = all override-map.2 = all-left,all-right -[Element Capture] +[Element Headphone Mic] +required-any = any switch = mute volume = merge override-map.1 = all 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 0a3d661..aeb2cec 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 cd08531..e9c288e 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 ae3e9a8..5424a1b 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 17f3988..2ce6dd3 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 ac78b5b..eed4f83 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 -- 1.7.9.5 ** Changed in: pulseaudio (Ubuntu) Status: Confirmed => Triaged -- You received this bug notification because you are a member of Desktop Packages, which is subscribed to pulseaudio in Ubuntu. https://bugs.launchpad.net/bugs/1085402 Title: PulseAudio overuses 'Boost' control of microphone input producing bad audio quality Status in “pulseaudio” package in Ubuntu: Triaged Bug description: Om my notebook PulseAudio detects 2 ports on embedded sound card: 1) analog-input-microphone-internal 2) analog-input-microphone PulseAudio module "module-switch-on-port-available" chooses as default port #2 after external microphone is attached and switches back to port #1 after external mike removal. This behavior seems right. However, if I record sound with auto selected port, audio quality is very poor. There is loud noise in background. But if I switch to "wrong" port audio quality becomes great. E.g. I have to manually select "analog-input-microphone-internal" port when I attach external mike and vice versa. Example of record: http://self-perfection.homeip.net/files/2012/external_ru.flac (652 KiB) This record is made via headset microphone. During first half of record source port analog-input-microphone was selected then i switched to port analog-input-microphone-internal. ProblemType: Bug DistroRelease: Ubuntu 12.10 Package: pulseaudio 1:2.1-0ubuntu4 ProcVersionSignature: Ubuntu 3.5.0-18.29-generic 3.5.7 Uname: Linux 3.5.0-18-generic x86_64 ApportVersion: 2.6.1-0ubuntu6 Architecture: amd64 AudioDevicesInUse: USER PID ACCESS COMMAND /dev/snd/controlC0: self 2150 F.... pulseaudio self 2255 F.... xfce4-volumed Date: Sat Dec 1 16:34:31 2012 InstallationDate: Installed on 2012-07-01 (152 days ago) InstallationMedia: Xubuntu 12.04 LTS "Precise Pangolin" - Release amd64 (20120425) MarkForUpload: True SourcePackage: pulseaudio UpgradeStatus: Upgraded to quantal on 2012-10-21 (40 days ago) dmi.bios.date: 04/03/2012 dmi.bios.vendor: Phoenix Technologies Ltd. dmi.bios.version: 06QB dmi.board.asset.tag: Base Board Asset Tag dmi.board.name: 300E4Z/300E5Z/300E7Z dmi.board.vendor: SAMSUNG ELECTRONICS CO., LTD. dmi.board.version: FAB1 dmi.chassis.asset.tag: Asset Tag dmi.chassis.type: 9 dmi.chassis.vendor: SAMSUNG ELECTRONICS CO., LTD. dmi.chassis.version: 0.1 dmi.modalias: dmi:bvnPhoenixTechnologiesLtd.:bvr06QB:bd04/03/2012:svnSAMSUNGELECTRONICSCO.,LTD.:pn300E4Z/300E5Z/300E7Z:pvr0.1:rvnSAMSUNGELECTRONICSCO.,LTD.:rn300E4Z/300E5Z/300E7Z:rvrFAB1:cvnSAMSUNGELECTRONICSCO.,LTD.:ct9:cvr0.1: dmi.product.name: 300E4Z/300E5Z/300E7Z dmi.product.version: 0.1 dmi.sys.vendor: SAMSUNG ELECTRONICS CO., LTD. To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/pulseaudio/+bug/1085402/+subscriptions -- Mailing list: https://launchpad.net/~desktop-packages Post to : [email protected] Unsubscribe : https://launchpad.net/~desktop-packages More help : https://help.launchpad.net/ListHelp

