[MAGISK]-DUAL_SPEAKER_MOD_REALME 6,7 AND NARZO 20 PRO (By Dr.Ritshi Amchi) - Realme 6 Themes, Apps, and Mods

-----ENABLE DUAL SPEAKER IN REALME G90T,G95 SERIES_(REALME6,REALME7,NARZO 20 PRO)------
------ENABLES EARPICE AS A SECONDARY SPEAKER [BUT THE VOLUME FROM EARPICE IS LOW COMPARED TO BOTTOM SPEAKER DUE TO HARDWARE LIMITATIONS]------
----------PLEASE READ CAREFULLY BEFORE FLASHING THIS [MAGISK MODULE]-----------
-----REQUIRMENTS-----
1. MAGISK INSTALLED (v18 above)
2. WORKS ON BOTH [RUI 1.0/2.0] AND OTHER [A.O.S.P ROMS]
3. REMOVE "ALL OTHER SOUND MOD" BEFORE INSTALLING THIS (MODULE) OTHERWISE IT MAY CONFLICT WITH OTHER MODULES.
4. DON'T USE "audio_modification_libary" AND "audio_compatibility_patch" WITH THIS MODULE.
5. DON'T USE [DOLBY_ATMOS_MODULE] WHICH REQUIRED "audio_modification_libary" TO WORK.
THERE ARE FEW DOLBY_ATMOS_MODULE(e.g dolby atmos module imported from 'ZTE AXON' AND 'RAZER PHONE' WHICH DOES'T REQUIRED "audio_modification_libary" TO WORK)
6. YOUR BRAIN AND SOME COMMON SENSE
--------PROCESS--------[METHOD]
1. DOWNLOAD THE "duel speaker mod realme.zip" (size 11.1 Kb)
2. REMOVE ALL OTHER SOUND MOD I REPEAT REMOVE ALL OTHER MOD
3. FLASH THE "duel speaker mod realme.zip" IN MODULE SECTION OF MAGISK AND REBOOT.
...THATS IT..----NOW YOUR EARPICE WILL WORK AS A SECONDARY SPEAKER BUT THE DIFFERENCE CAN BE ONLY HEARED ON 80% ABOVE VOLUME
...FOR TESTING WEATHER IT'S WORKING OR NOT TRY PLAYING A SONG AND MAXOUT THE VOLUME ABOVE 80% AND COVER THE BOTTOM LOUDSPEAKER WITH FINGER...NOW LISTEN THROUGH THE EARPICE..I'M SURE YOU WILL BE ABLE TO HEAR IT
---------[ADDITIONAL/ OPTIONAL]-----------
------THIS IS AN OPTIONAL ONE-----
IF YOU WANT YOUR SOUND TO BE CLEAR AND OPTIMISED THEN YOU CAN FLASH NL-SOUND MEDIATEK DRIVERS AFTER FLASHING THE DUEL SPEAKER MAGISK MODULE
THESE MEDIATEK DRIVERS WILL ONLY WORK FOR ANY MEDIATEK BASED ANDROID DEVICE NOT FOR QUALCOM
SOURCE CODE AND PROCESS TO BUILD THE MOD
I HAVE PROVIDED THE FILE NAMED AS "audio_device.xml" WHICH I HAVE MODIFIED TO ENABLE EARPICE AS A SECONDARY SPEAKER ANYONE CAN DOWNLOAD THE FILE OR EXTRACT FROM THE dual speaker realme.zip AND MODIFIED IT ACCORDING TO THEIR OWN TASTE AND REPACK IT TO ZIP AND USE IT...
UNLIKE QUALCOM AND EXYNOS WHICH USES mixer_path.xml FILE TO DEFINE THE PATH AND AUDIO PLAYBACK CHANELS, HERE MEDIATEK USES ANOTHER FILE NAMED AS audio_device.xml WHICH IS LOCATED IN /system/vendor/etc/audio_device.xml
"RCV"means RECIEVER
"SPK" means SPEAKER
I ADD A LINE IN EXTERNAL_SPEAKER OUTPUT SECTION
i.e kctl name="Ext_Reciver_Amp Switch" value="1" />
1 means turn on and 0 means turn off
THIS COMMAND FORCE THE EARPICE TO ACT AS A SECOND PATH WAY FOR AUDIO OUTPUT CHANEL
YOU NEED TO ADD AN TURN ON AND TURN OFF COMMAND IN EACH COMMAND
EXAMPLE-
<!--external_speaker output-->
<path name="ext_speaker_output" value="turnon">
<kctl name="Ext_Speaker_Amp Switch" value="1" />
<kctl name="Ext_Reciver_Amp Switch" value="1" /> (turn on command)
</path>
<path name="ext_speaker_output" value="turnoff">
<kctl name="Ext_Speaker_Amp Switch" value="0" />
<kctl name="Ext_Reciver_Amp Switch" value="0" /> (turn off command)
NOW,
YOU NEED TO DEFINE LEFT AND RIGHT CHANELN [ EARPICE IS ALWAYS DEFINED AS LEFT CHANEL]
YOU NEED TO ADD THIS LINES IN EXTERNAL_SPEAKER OUTPUT SECTION
<!--external_speaker output left-->
<path name="ext_speaker_output_left" value="turnon"> (defines left out put turn on)
<kctl name="Ext_Speaker_Amp Switch" value="0" /> (left chanel off for spk)
<kctl name="Ext_Reciver_Amp Switch" value="1" /> (left chanel on for rcv)
</path>
<path name="ext_speaker_output_left" value="turnoff"> (defines left out put turn off)
<kctl name="Ext_Speaker_Amp Switch" value="0" /> (left chanel off for spk)
<kctl name="Ext_Reciver_Amp Switch" value="0" /> (left chanel off for spk)
</path>
<!--external_speaker output right-->
<path name="ext_speaker_output_right" value="turnon">
<kctl name="Ext_Speaker_Amp Switch" value="1" />
<kctl name="Ext_Reciver_Amp Switch" value="0" />
</path>
<path name="ext_speaker_output_right" value="turnoff">
<kctl name="Ext_Speaker_Amp Switch" value="0" />
<kctl name="Ext_Reciver_Amp Switch" value="0" />
THE OVERALL WILL LOOK LIKETHIS
<!--external_speaker output-->
<path name="ext_speaker_output" value="turnon">
<kctl name="Ext_Speaker_Amp Switch" value="1" />
<kctl name="Ext_Reciver_Amp Switch" value="1" />
</path>
<path name="ext_speaker_output" value="turnoff">
<kctl name="Ext_Speaker_Amp Switch" value="0" />
<kctl name="Ext_Reciver_Amp Switch" value="0" />
</path>
<!--external_speaker output left-->
<path name="ext_speaker_output_left" value="turnon">
<kctl name="Ext_Speaker_Amp Switch" value="0" />
<kctl name="Ext_Reciver_Amp Switch" value="1" />
</path>
<path name="ext_speaker_output_left" value="turnoff">
<kctl name="Ext_Speaker_Amp Switch" value="0" />
<kctl name="Ext_Reciver_Amp Switch" value="0" />
</path>
<!--external_speaker output right-->
<path name="ext_speaker_output_right" value="turnon">
<kctl name="Ext_Speaker_Amp Switch" value="1" />
<kctl name="Ext_Reciver_Amp Switch" value="0" />
</path>
<path name="ext_speaker_output_right" value="turnoff">
<kctl name="Ext_Speaker_Amp Switch" value="0" />
<kctl name="Ext_Reciver_Amp Switch" value="0" />
</path>
AGAIN,
<!--receiver output-->
<path name="receiver_output" value="turnon">
<kctl name="RCV_AMP_MODE" value="RECIEVER_MODE" /> (defines RCV as RCV) CALLS
<kctl name="DAC In Mux" value="Normal Path" />
<kctl name="RCV Mux" value="Voice Playback" />
<kctl name="Ext_Reciver_Amp Switch" value="1" />
</path>
<path name="receiver_output" value="turnoff">
<kctl name="RCV Mux" value="Open" />
<kctl name="Ext_Reciver_Amp Switch" value="0" />
<kctl name="RCV_AMP_MODE" value="SPEAKER_MODE" /> (defines RCV as SPK) MUSIC
</path>
NOW,
COPY AND PASTE THIS LINE IN <!-- 2-in-1 speaker output-->
<!-- 2-in-1 speaker output-->
<path name="two_in_one_speaker_output" value="turnon">
<kctl name="RCV_AMP_MODE" value="RECIEVER_MODE" />
<kctl name="DAC In Mux" value="Normal Path" />
<kctl name="RCV Mux" value="Voice Playback" />
<kctl name="Ext_Reciver_Amp Switch" value="1" />
</path>
<path name="two_in_one_speaker_output" value="turnoff">
<kctl name="Ext_Reciver_Amp Switch" value="0" />
<kctl name="RCV Mux" value="Open" />
<kctl name="RCV_AMP_MODE" value="SPEAKER_MODE" />
</path>
I AM NOT RESPONSIBLE FOR ANY DAMAGE

Can you tell me how did you learned editing those files? it's very nice modifcation, I wish it was avalible for realme 6 pro, I'm currently working on it, but I got no luck as there is no tutorial that really give any helpful information, and mostly tutorials are outdated and won't work with todays device
would you give a look on this realme 6 pro mixerpaths.xml attached

Related

(Guide)(How To) (Lollipop Volume Increase All Varient's)

What's up everybody. This time I bring you a simple mod to increase the volume's on lollipop. What we're going to do is make some edit's in the mixer_paths.xml located in system/etc. Open in Notepad++ or editor of your choice and search for <path name="handset"> . See below for area's to edit,be careful and adjust slowly. Set permissions to 644 or rw-r-r.
Lollipop Guide: Location =system/etc
Only increase levels by a maximum of +10 to avoid speaker damage. On HPHL & HPHR raise levels slowly to avoid damage or distortion.
<!-- ================================================================ -->
<!-- Play Scenario -->
<path name="handset">
<path name="rcv" />
<ctl name="EAR PA Gain" value="POS_3_DB" />
<ctl name="RX1 Digital Volume" value="90" /> <--------------
</path>
<path name="speaker">
<path name="spk" />
<ctl name="RX7 Digital Volume" value="83" /> <--------------
<ctl name="SPK DRV Volume" value="8" />
<ctl name="COMP0 Switch" value="1" />
</path>
<path name="headset">
<path name="ear" />
<ctl name="HPHL Volume" value="20" /> <--------------
<ctl name="HPHR Volume" value="20" /> <--------------
<ctl name="RX1 Digital Volume" value="90" /> <--------------
<ctl name="RX2 Digital Volume" value="90" /> <--------------
<ctl name="COMP1 Switch" value="1" />
</path>
<path name="dock">
<path name="lineout" />
<ctl name="RX3 Digital Volume" value="83" />
<ctl name="RX5 Digital Volume" value="83" />
<ctl name="LINEOUT1 Volume" value="19" />
<ctl name="LINEOUT2 Volume" value="19" />
<ctl name="COMP2 Switch" value="1" />
</path>
<path name="speaker-and-headphones">
<path name="spk-ear" />
<ctl name="HPHL Volume" value="5" /> <--------------
<ctl name="HPHR Volume" value="5" /> <--------------
<ctl name="RX1 Digital Volume" value="90" /> <--------------
<ctl name="RX2 Digital Volume" value="90" /> <--------------
<ctl name="RX7 Digital Volume" value="79" />
<ctl name="SPK DRV Volume" value="8" />
</path>
<path name="speaker-and-hdmi">
<path name="spk" />
<ctl name="RX7 Digital Volume" value="81" /> <--------------
<ctl name="SPK DRV Volume" value="8" />
</path>
<path name="speaker-and-proxy">
<path name="spk" />
<ctl name="RX7 Digital Volume" value="84" />
<ctl name="SPK DRV Volume" value="7" />
</path>
<path name="speaker-and-dock">
<path name="spk-lineout" />
<ctl name="RX3 Digital Volume" value="84" />
<ctl name="RX5 Digital Volume" value="84" />
<ctl name="LINEOUT1 Volume" value="19" />
<ctl name="LINEOUT2 Volume" value="19" />
<ctl name="RX7 Digital Volume" value="81" />
<ctl name="SPK DRV Volume" value="8" />
</path>
<path name="speaker-and-bt-sco">
<path name="spk" />
<ctl name="RX7 Digital Volume" value="79" />
<ctl name="SPK DRV Volume" value="8" />
<ctl name="COMP0 Switch" value="1" />
</path>
<path name="speaker-and-headphones-bt-sco">
<path name="spk-ear" />
<ctl name="HPHL Volume" value="5" />
<ctl name="HPHR Volume" value="5" />
<ctl name="RX1 Digital Volume" value="86" /> <--------------
<ctl name="RX2 Digital Volume" value="86" /> <--------------
<ctl name="RX7 Digital Volume" value="80" />
<ctl name="SPK DRV Volume" value="8" />
</path>
<!-- end of Play Scenario -->
Fixed lollipop guide and added kitkat,.... Please post your xml when finished so we can share them with everyone. You can also post your stock and I'll update it and post it.Thanks.....
Thank you for this post! I have been looking for a while for a way to enhance the quality of my Bluetooth Headphones (Noise Cancelling Philips SHB8850NC). At the beginning I tried to install Viper4Android on my Samsung S5, but I was not able to make it work because I have the Android Lollipop 5.0 with Knox installed. So the only solution was to manually increase all the gains of the mixer_paths.xml file as described here, and now I can enjoy the best Bluetooth Experience! The bass is now pretty deep with the built-in Samsung player (bass equalizer).
Call mic gain in mixer_paths.xml
I read with great interest "How to increase volume in Lollipop Samsung S5". In my S5 the sensitivity of the call microphone is low: I need to speak with very loud voice.
I have not found in the Italian Forums a way to boost the sensitivity. I would appreciate if you could explain to me what I must variations in file mixer_paths.xml to achieve the required purpose.
I would ask you to be very clear how my experience is limited. If a slight increase in sharp ones the possibility exist too. My S5 SM-G900FD is rooted. Thank you.
Does this work with the exynos version?
I am asking because I use an S5 neo but the mixer_path.xml content is different from this one.
Does this work with g900f?

Stereo Sound MOD for G5 [root]

This file enables earpiece speaker to have stereo sound. And overall it sounds a lot better than original configuration.
Tested only with H850 and H830, do it at your own risk!
You'll need some file manager, I'm using Total Commander in this example. First, go to /system/etc and backup your mixer_paths_tasha.xml file, (it will ask to give root permissions to do that), then delete it.
Paste new file into system/etc and change permissions to 644
Reboot and enjoy stereo!
Download V1.1 for stock
mixer_paths.xml v1.1 for CM 13 -credtis to @nima0003
mixer_paths.xml v1.1 for CM 14.1 -credtis to @nima0003
CM14.1 instructions by @nima0003:
1. Remove mixer_paths_tasha.xml from the etc folder
2. Paste the mixer_paths.xml file (don't worry about the name)
3. Set permissions
4. Reboot
Revert back
If you want to test out with different G5 version, download this file and do the same steps (you may need to rename the file to match your mixer_paths file name) and report if it does work on your model.
Man this is awesome . Works perfectly on my H850.
OK, in order to make it work with CM 13 I had to modify a few things, otherwise it would give no audio. Do you want to post it in the OP or do you want me to make a new thread?
Works perfectly thanks a lot makes it sound a lot better biggest question is lets hope it cannot cause no damage to the earpiece speaker
Great work
nima0003 said:
OK, in order to make it work with CM 13 I had to modify a few things, otherwise it would give no audio. Do you want to post it in the OP or do you want me to make a new thread?
Click to expand...
Click to collapse
I can post it to OP and give you the credits
ashirviskas said:
I can post it to OP and give you the credits
Click to expand...
Click to collapse
Sure, I will attach the file.
brockyneo said:
Works perfectly thanks a lot makes it sound a lot better biggest question is lets hope it cannot cause no damage to the earpiece speaker
Great work
Click to expand...
Click to collapse
It won't damage it it's a speaker it's not that sensitive.
nima0003 said:
Sure, I will attach the file.
Click to expand...
Click to collapse
Added!
einhuman197 said:
It won't damage it it's a speaker it's not that sensitive.
Click to expand...
Click to collapse
Ok thanks that was my first worry even on my s7 too and it was only today I was going to swap my g5 with the gf for her iphone 6s as Well lol
ashirviskas said:
Added!
Click to expand...
Click to collapse
Not trying to be rude or anything, but can you please ad an "@" symbol before my name in the OP, like this: "@nima0003" thanks!
Wow! Sounds great. Good work m8!
works well
So awesome, thank you very much hope this will be incorporated in to muistones patch and the other roms
works perfect with AICP ??
gesendet von meinem LG G5 H850 AICP11.0
Thanks it work perfectly
Just gave it a quick test yesterday. Seems to work very well! Usually use headphones most of the time though and just restored my backup. Just a quick heads up incase it happens to anyone else. After I restored the file I couldn't play videos at all. Kept getting errors in youtube and netflix and such. Needed to change the permissions of the file after restore aswell. Working fine now
amazing sound is like a HTC10 now,I wait this for a time,but now is perfect!
Works great! :laugh:
if any interested, here the patch what all modified (CM13 only)
Code:
From e5b738f1d895ff3a68098f1f285d05d9de968867 Mon Sep 17 00:00:00 2001
From: nima0003
Date: Mon, 31 Oct 2016 13:18:13 +0100
Subject: [PATCH 1/1] CM Stereo hack
---
configs/mixer_paths.xml | 52 ++++++++++++++++++++++++++++++++++++-------------
1 file changed, 38 insertions(+), 14 deletions(-)
diff --git a/configs/mixer_paths.xml b/configs/mixer_paths.xml
index 8308332..f33c468 100755
--- a/configs/mixer_paths.xml
+++ b/configs/mixer_paths.xml
@@ -512,8 +512,6 @@
<ctl name="LSM7 MUX" value="None" />
<ctl name="LSM8 MUX" value="None" />
<ctl name="SLIMBUS_5_TX LSM Function" value="None" />
- <ctl name="MADONOFF Switch" value="0" />
- <ctl name="MAD Input" value="DMIC0" />
<!-- listen end-->
<!-- ADSP testfwk -->
@@ -1625,30 +1623,30 @@
</path>
<!-- For Tasha, DMIC numbered from 0 to 5 -->
- <path name="dmic1">
+ <path name="dmic3">
<ctl name="AIF1_CAP Mixer SLIM TX7" value="1"/>
<ctl name="SLIM_0_TX Channels" value="One" />
<ctl name="SLIM TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="DMIC" />
- <ctl name="DMIC MUX7" value="DMIC0" />
+ <ctl name="DMIC MUX7" value="DMIC2" />
<ctl name="IIR0 INP0 MUX" value="DEC7" />
</path>
- <path name="dmic2">
+ <path name="dmic1">
<ctl name="AIF1_CAP Mixer SLIM TX7" value="1"/>
<ctl name="SLIM_0_TX Channels" value="One" />
<ctl name="SLIM TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="DMIC" />
- <ctl name="DMIC MUX7" value="DMIC1" />
+ <ctl name="DMIC MUX7" value="DMIC0" />
<ctl name="IIR0 INP0 MUX" value="DEC7" />
</path>
- <path name="dmic3">
+ <path name="dmic2">
<ctl name="AIF1_CAP Mixer SLIM TX7" value="1"/>
<ctl name="SLIM_0_TX Channels" value="One" />
<ctl name="SLIM TX7 MUX" value="DEC7" />
<ctl name="ADC MUX7" value="DMIC" />
- <ctl name="DMIC MUX7" value="DMIC2" />
+ <ctl name="DMIC MUX7" value="DMIC1" />
<ctl name="IIR0 INP0 MUX" value="DEC7" />
</path>
@@ -1680,23 +1678,49 @@
</path>
<path name="speaker-fluid">
- <ctl name="SLIM RX0 MUX" value="AIF_MIX1_PB" />
- <ctl name="SLIM_0_RX Channels" value="One" />
- <ctl name="RX INT7_1 MIX1 INP0" value="RX0" />
+ <ctl name="RX HPH Mode" value="CLS_H_LP" />
+ <ctl name="SLIM RX0 MUX" value="AIF_MIX1_PB" />
+ <ctl name="SLIM RX1 MUX" value="AIF_MIX1_PB" />
+ <ctl name="SLIM_0_RX Channels" value="Two" />
+ <ctl name="RX INT0_1 MIX1 INP0" value="RX0" />
+ <ctl name="RX INT7_1 MIX1 INP0" value="RX1" />
<ctl name="SpkrLeft COMP Switch" value="1" />
<ctl name="SpkrLeft BOOST Switch" value="1" />
<ctl name="SpkrLeft VISENSE Switch" value="1" />
<ctl name="SpkrLeft SWR DAC_Port Switch" value="1" />
+ <ctl name="SpkrRight COMP Switch" value="1" />
+ <ctl name="SpkrRight BOOST Switch" value="1" />
+ <ctl name="SpkrRight VISENSE Switch" value="1" />
+ <ctl name="SpkrRight SWR DAC_Port Switch" value="1" />
+ <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" />
+ <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" />
+ <ctl name="EAR PA Gain" value="G_6_DB" />
+ <ctl name="HPHL DAC Switch" value="1" />
+ <ctl name="RX7 Digital Volume" value="86" />
+ <ctl name="RX0 Digital Volume" value="86" />
</path>
<path name="speaker-mono">
- <ctl name="SLIM RX0 MUX" value="AIF_MIX1_PB" />
- <ctl name="SLIM_0_RX Channels" value="One" />
- <ctl name="RX INT7_1 MIX1 INP0" value="RX0" />
+ <ctl name="RX HPH Mode" value="CLS_H_LP" />
+ <ctl name="SLIM RX0 MUX" value="AIF_MIX1_PB" />
+ <ctl name="SLIM RX1 MUX" value="AIF_MIX1_PB" />
+ <ctl name="SLIM_0_RX Channels" value="Two" />
+ <ctl name="RX INT0_1 MIX1 INP0" value="RX0" />
+ <ctl name="RX INT7_1 MIX1 INP0" value="RX1" />
<ctl name="SpkrLeft COMP Switch" value="1" />
<ctl name="SpkrLeft BOOST Switch" value="1" />
<ctl name="SpkrLeft VISENSE Switch" value="1" />
<ctl name="SpkrLeft SWR DAC_Port Switch" value="1" />
+ <ctl name="SpkrRight COMP Switch" value="1" />
+ <ctl name="SpkrRight BOOST Switch" value="1" />
+ <ctl name="SpkrRight VISENSE Switch" value="1" />
+ <ctl name="SpkrRight SWR DAC_Port Switch" value="1" />
+ <ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" />
+ <ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" />
+ <ctl name="EAR PA Gain" value="G_6_DB" />
+ <ctl name="HPHL DAC Switch" value="1" />
+ <ctl name="RX7 Digital Volume" value="84" />
+ <ctl name="RX0 Digital Volume" value="87" />
</path>
<path name="speaker">
--
1.9.1
can be used when build your own CM13 based Rom with Stereo Hack included. Credits to @nima0003
work excellent

Mic Problem Low Recording Volume

I just own Mi a2, bought it second hand from other people.
Atm i'm using Pixel Experience ROM.
My proboek is about Low Recording Volume.
I tried to record my voice via whatsapp audio recording and 3rd party app recording, but the result is a low volume voice recorded.
I was using stock ROM with magisk installed and Quickswitch module installed. I noticed low volume recording sound so i thought it was because the rom and then i flashed PE, but the problem still remain.
The funny thing is, if i record a video through stock camera app or through instagram story, the sound does recorded properly, not low voice volume.
Anyone know how to fix this? Do Mi A2 have two mic, since video recording can record voice good, but calling or recording the volume is too low? Thank you for your answer.
Sent from my Mi 8 using Tapatalk
Same
i have same issue with you, anyone please help us
afiyuden said:
i have same issue with you, anyone please help us
Click to expand...
Click to collapse
For me its hardware related. I take it to service center and they clean the mic, the problem solved.
Sent from my MI 8 using Tapatalk
riyosakura said:
For me its hardware related. I take it to service center and they clean the mic, the problem solved.
Sent from my MI 8 using Tapatalk
Click to expand...
Click to collapse
I don't think mine is hardware related. It doesn't happen when i use Easy Voice Recorder app, it happens when I use stock camera app to record.
i have same issue, anyone has fix for this?
Introducion
Same problem here: Mi A2 on Pixel Experience, but I had problems also with the stock version.
Since I've got the root and I remember that with my Nexus 5 (old good times) I had the possibility to change gain in kernel settings. Here, I cannot.
Then I remembered that I also heard about mixer_paths.xml file, that if changed, can change the gain of speakers and microphone. Since I'm not able to identify what parameter should I change/increase, I went to Google and searched for some infos. Unfortunately, every device has "its own" mixer_paths.xml, and it changes.
I found for example a guide for Nexus 4 here and something with Samsung S5 here.
How to
Important:
Before ANY modification, keep TWO copies of your mixer_paths.xml original file. Two because I was stupid and I lost my first one, and the second was already broken ¯\_(ツ)_/¯
I'm not responsible for any loss and damage, nor hardware nor software related.
Remember to save the mixer_paths.xml file with EXACT SAME PERMISSIONS as it has before modification. Since, again, I'm stupid, it has the 0777 permission (all checked in FX File Explorer)
Tested only on Pixel Experience QQ1B.200105.004 on Mi A2, 64+4GB
Experimenting here and there, I found that increasing some values effectively changes my gain, but I'm not sure why and what precisely. Gain works great on IM, like Telegram, but I'm still not great (but better) on camera videos.
Code:
<!-- Lines from 357 to 358 (only speaker boost!) -->
<ctl name="HPHL Volume" value="8" />
<ctl name="HPHR Volume" value="8" />
Code:
<!-- Lines from 367 to 373, that 95 is from Samsung S5 guide -->
<ctl name="ADC1 Volume" value="8" />
<ctl name="ADC2 Volume" value="8" />
<ctl name="ADC3 Volume" value="8" />
<ctl name="DEC1 Volume" value="95" />
<ctl name="DEC2 Volume" value="95" />
<ctl name="DEC3 Volume" value="95" />
<ctl name="DEC4 Volume" value="95" />
Code:
<!-- Lines from 2066 to 2098 -->
<path name="adc1">
<ctl name="ADC1 Volume" value="8" />
<ctl name="DEC1 MUX" value="ADC1" />
<ctl name="ADC1_INP1 Switch" value="1" />
</path>
<path name="adc2">
<ctl name="ADC2 Volume" value="8" />
<ctl name="DEC1 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP2" />
</path>
<path name="adc3">
<ctl name="ADC3 Volume" value="8" />
<ctl name="DEC1 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP3" />
</path>
<path name="va-enroll-mic">
<ctl name="DEC1 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP3" />
<ctl name="ADC3 Volume" value="8" />
</path>
<path name="asr-mic">
<ctl name="INT3_MI2S_TX Channels" value="Two" />
<ctl name="DEC1 MUX" value="ADC1" />
<ctl name="ADC1_INP1 Switch" value="1" />
<ctl name="DEC2 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP3" />
<ctl name="ADC1 Volume" value="8" />
<ctl name="ADC3 Volume" value="8" />
</path>
Code:
<!-- Lines from 2495 to 2499, that 99 is from Nexus 4 guide -->
<path name="headset-mic">
<path name="adc2" />
<ctl name="IIR1 INP1 MUX" value="DEC1" />
<ctl name="DEC8 Volume" value="99" />
</path>
I attached also my current mixer_paths_8.xml - just rename it and remove that "_8" if you want to use it as-is.
My voice recordings were very bad when player back in the recorder app. The problem solved by this method:
• in the Recorder app, go to settings (the gear/wheel).
• disable "use receiver to play audio"
• done.
Redmi 8
---------- Post added 21-08-2020 at 12:04 AM ---------- Previous post was 20-08-2020 at 11:56 PM ----------
My voice recordings were very bad when player back in the recorder app. The problem solved by this method:
• in the Recorder app, go to settings (the gear/wheel).
• disable "use receiver to play audio"
• done.
Redmi 8
I just formatted my phone and switched from CRDroid to Lineage OS. The mixer_paths.xml file is somehow different, but I manage to fix it out.
To fix low microphone on Mi A2 on CRDroid just use my comment above.
To fix low microphone on Mi A2 on Lineage OS 18.1 find same values and change them, but lines will be different:
XML:
<!-- Lines 349-355 -->
<ctl name="ADC1 Volume" value="8" />
<ctl name="ADC2 Volume" value="8" />
<ctl name="ADC3 Volume" value="8" />
<ctl name="DEC1 Volume" value="95" />
<ctl name="DEC2 Volume" value="95" />
<ctl name="DEC3 Volume" value="95" />
<ctl name="DEC4 Volume" value="95" />
XML:
<!-- Lines 339-340 -->
<ctl name="HPHL Volume" value="8" />
<ctl name="HPHR Volume" value="8" />
XML:
<!-- Lines 1819-1835 -->
<path name="adc1">
<ctl name="ADC1 Volume" value="8" />
<ctl name="DEC1 MUX" value="ADC1" />
<ctl name="ADC1_INP1 Switch" value="1" />
</path>
<path name="adc2">
<ctl name="ADC2 Volume" value="8" />
<ctl name="DEC1 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP2" />
</path>
<path name="adc3">
<ctl name="ADC3 Volume" value="8" />
<ctl name="DEC1 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP3" />
</path>
XML:
<!-- lines 2262-2276 -->
<path name="handset-dmic-endfire">
<path name="adc1" />
<ctl name="ADC3 Volume" value="8" />
<ctl name="DEC2 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP3" />
<ctl name="INT3_MI2S_TX Channels" value="Two" />
</path>
<path name="speaker-dmic-endfire">
<path name="adc1" />
<ctl name="ADC3 Volume" value="8" />
<ctl name="DEC2 MUX" value="ADC2" />
<ctl name="ADC2 MUX" value="INP3" />
<ctl name="INT3_MI2S_TX Channels" value="Two" />
</path>
XML:
<!-- lines 2065-2069-->
<path name="headset-mic">
<path name="adc2" />
<ctl name="IIR1 INP1 MUX" value="DEC1" />
<ctl name="DEC8 Volume" value="95" />
</path>

How to Boost Headphone Volume on Galaxy M20 ?

hi ,
My Galaxy M20's maximum headphone output level is low for me. I did search my phone's internal memory and i find 2 files in firmware. ''mixer_gains.xml'' and ''mixer_paths.xml''.
I think these 2 files control to audio hardware gain levels but i dont know which line in which file to must be modify ? Other Samsung models files are different. please help me.
My phone info :
Model : SM-M205F
O.S. : Android 9 Pie / Root
thx...
afakkobyab said:
hi ,
My Galaxy M20's maximum headphone output level is low for me. I did search my phone's internal memory and i find 2 files in firmware. ''mixer_gains.xml'' and ''mixer_paths.xml''.
I think these 2 files control to audio hardware gain levels but i dont know which line in which file to must be modify ? Other Samsung models files are different. please help me.
My phone info :
Model : SM-M205F
O.S. : Android 9 Pie / Root
thx...
Click to expand...
Click to collapse
Try to use magisk modules if available, or tune the dolby atomos options, that one worked for me.
Galaxy M20 ' s maximum headphone output limited by samsung ( approx 800mV peak max ). i edited ''mixer_gains.xml'' file and increase headphone output volume but headphone output immediatly shutdown after first high transient output signal and switch to speaker. headphone output signal is no clipping. 1240mV peak clean output signal but its shutdown and switch to speaker. ( measured by LeCroy WS3024 digital oscilloscope )
i bought this phone 2 months ago but i didn't use it yet because only this reason. please help me.
can anyone help me ?
hi guys , i'm still can't use my Galaxy M20 because i can't solve low headphone volume problem 7-8 months passed i find a program but it's working for M20's speaker only. not the headphone please help...
my M20 ' s original ''mixer_gains.xml'' below : how i can do it ?
Part-A
<mixer>
<!-- Output volume stage -->
<!-- media playback volume -->
<path name="gain-media-handset">
<ctl name="DAC Gain" value="147" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-factory-media-handset">
<ctl name="DAC Gain" value="148" />
</path>
<path name="gain-media-speaker">
<ctl name="DAC Gain" value="55" />
</path>
<path name="gain-media-headset">
<ctl name="DAC Gain" value="140" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="58" />
</path>
<path name="gain-media-speaker-headset">
<ctl name="DAC Gain" value="82" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-media-bt-sco-headset">
</path>
<path name="gain-media-speaker-bt-sco-headset">
</path>
<!-- Ringtone playback volume -->
<path name="gain-ringtone-handset">
<ctl name="DAC Gain" value="55" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-ringtone-speaker">
</path>
<path name="gain-ringtone-headset">
<ctl name="DAC Gain" value="145" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-ringtone-speaker-headset">
<ctl name="DAC Gain" value="90" />
<!-- <ctl name="Speaker Volume" value="7" /> -->
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-ringtone-bt-sco-headset">
</path>
<path name="gain-ringtone-speaker-bt-sco-headset">
</path>
<!-- Communication playback volume -->
<path name="gain-communication-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-communication-speaker">
</path>
<path name="gain-communication-headset">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-communication-headphone">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-communication-bt-sco-headset">
</path>
<!-- samsung voip playback volume -->
<path name="gain-samsung_voip-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-samsung_voip-speaker">
</path>
<path name="gain-samsung_voip-headset">
<ctl name="DAC Gain" value="143" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-samsung_voip-headphone">
<ctl name="DAC Gain" value="143" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-samsung_voip-bt-sco-headset">
</path>
<!-- samsung voip fmc playback volume -->
<path name="gain-samsung_voip_fmc-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-samsung_voip_fmc-speaker">
</path>
<path name="gain-samsung_voip_fmc-headset">
<ctl name="DAC Gain" value="143" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-samsung_voip_fmc-headphone">
<ctl name="DAC Gain" value="143" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-samsung_voip_fmc-bt-sco-headset">
<ctl name="DAC Gain" value="138" />
<ctl name="Headphone Volume" value="4" />
</path>
<!-- voip playback volume -->
<path name="gain-voip-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-voip-speaker">
</path>
<path name="gain-voip-headset">
<ctl name="DAC Gain" value="143" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-voip-headphone">
<ctl name="DAC Gain" value="143" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-voip-bt-sco-headset">
</path>
<!-- wificall nb playback volume -->
<path name="gain-wificall_nb-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="2" />
</path>
<path name="gain-wificall_nb-speaker">
<ctl name="DAC Gain" value="55" />
</path>
<path name="gain-wificall_nb-headset">
<ctl name="DAC Gain" value="148" />
<ctl name="Earphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-wificall_nb-headphone">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-wificall_nb-bt-sco-headset">
</path>
<!-- wificall wb playback volume -->
<path name="gain-wificall_wb-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-wificall_wb-speaker">
</path>
<path name="gain-wificall_wb-headset">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-wificall_wb-headphone">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-wificall_wb-bt-sco-headset">
</path>
<!-- wificall evs playback volume -->
<path name="gain-wificall_evs-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-wificall_evs-speaker">
</path>
<path name="gain-wificall_evs-headset">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-wificall_evs-headphone">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-wificall_evs-bt-sco-headset">
</path>
<!-- Video call playback volume -->
<path name="gain-video_call-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="2" />
</path>
<path name="gain-video_call-speaker">
<ctl name="DAC Gain" value="55" />
</path>
<path name="gain-video_call-headset">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-video_call-headphone">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-video_call-bt-sco-headset">
</path>
<!-- VoLTE CP NB playback volume -->
<path name="gain-volte_cp_nb-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="2" />
</path>
<path name="gain-volte_cp_nb-speaker">
<ctl name="DAC Gain" value="55" />
</path>
<path name="gain-volte_cp_nb-headset">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_cp_nb-headphone">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_cp_nb-bt-sco-headset">
</path>
<!-- VoLTE VT CP NB playback volume -->
<path name="gain-volte_vt_cp_nb-handset">
<ctl name="Earphone Volume" value="2" />
<ctl name="DAC Gain" value="150" />
</path>
<path name="gain-volte_vt_cp_nb-speaker">
<ctl name="DAC Gain" value="55" />
</path>
<path name="gain-volte_vt_cp_nb-headset">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_vt_cp_nb-headphone">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_vt_cp_nb-bt-sco-headset">
</path>
<!-- VoLTE CP WB playback volume -->
<path name="gain-volte_cp_wb-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-volte_cp_wb-speaker">
</path>
<path name="gain-volte_cp_wb-headset">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_cp_wb-headphone">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_cp_wb-bt-sco-headset">
</path>
<!-- VoLTE VT CP WB playback volume -->
<path name="gain-volte_vt_cp_wb-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-volte_vt_cp_wb-speaker">
</path>
<path name="gain-volte_vt_cp_wb-headset">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_vt_cp_wb-headphone">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_vt_cp_wb-bt-sco-headset">
</path>
<!-- EVS volume -->
<path name="gain-volte_cp_evs-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-volte_cp_evs-speaker">
</path>
<path name="gain-volte_cp_evs-headset">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_cp_evs-headphone">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_cp_evs-bt-sco-headset">
</path>
<!-- EVS VT volume -->
<path name="gain-volte_vt_cp_evs-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-volte_vt_cp_evs-speaker">
</path>
<path name="gain-volte_vt_cp_evs-headset">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_vt_cp_evs-headphone">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-volte_vt_cp_evs-bt-sco-headset">
</path>
<!-- CP Call Output volume -->
<!-- NB volume -->
<path name="gain-incall_nb-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="2" />
</path>
<path name="gain-incall_nb-speaker">
<ctl name="DAC Gain" value="55" />
</path>
<path name="gain-incall_nb-headset">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-incall_nb-headphone">
<ctl name="DAC Gain" value="148" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-incall_nb-bt-sco-headset">
</path>
<!-- WB volume -->
<path name="gain-incall_wb-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-incall_wb-speaker">
</path>
<path name="gain-incall_wb-headset">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-incall_wb-headphone">
<ctl name="DAC Gain" value="150" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-incall_wb-bt-sco-headset">
</path>
<!-- Loopback (no delay) volume -->
<path name="gain-loopback-headset">
<ctl name="DAC Gain" value="133" />
<ctl name="Headphone Volume" value="4" />
<ctl name="HP Analog Volume AVCBypass" value="59" />
</path>
<!-- Packet Loopback output volume-->
<path name="gain-loopback_packet-handset">
<ctl name="DAC Gain" value="150" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-loopback_packet-speaker">
</path>
<path name="gain-loopback_packet-headset">
<ctl name="DAC Gain" value="131" />
<ctl name="Headphone Volume" value="4" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<!-- Realtime Loopback output volume-->
<path name="gain-realtimeloopback-handset">
<ctl name="DAC Gain" value="131" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-realtimeloopback-speaker">
</path>
<path name="gain-realtimeloopback-headset">
<ctl name="DAC Gain" value="131" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="59" />
</path>
<path name="gain-realtimeloopback-bt-sco-headset">
</path>
<!-- TTY Mode volume-->
<path name="gain-tty_mode-handset">
<ctl name="DAC Gain" value="118" />
<ctl name="Earphone Volume" value="2" />
</path>
<path name="gain-tty_mode-headset">
<ctl name="DAC Gain" value="127" />
<ctl name="Headphone Volume" value="32" />
<ctl name="HP Analog Volume AVCBypass" value="59" />
</path>
<path name="gain-tty_mode-headphone">
<ctl name="DAC Gain" value="127" />
<ctl name="Headphone Volume" value="32" />
<ctl name="HP Analog Volume AVCBypass" value="59" />
</path>
<!-- AP TTY Mode volume-->
<path name="gain-ap_tty_mode-handset">
<ctl name="DAC Gain" value="127" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-ap_tty_mode-headset">
<ctl name="DAC Gain" value="127" />
<ctl name="Headphone Volume" value="4" />
<ctl name="HP Analog Volume AVCBypass" value="59" />
</path>
<path name="gain-ap_tty_mode-headphone">
<ctl name="DAC Gain" value="127" />
<ctl name="Headphone Volume" value="4" />
<ctl name="HP Analog Volume AVCBypass" value="59" />
</path>
<!-- echo(rms) test output volume -->
<path name="gain-echo_test-handset">
<ctl name="DAC Gain" value="127" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-echo_test-speaker">
</path>
<!-- call forwarding output volume -->
<path name="gain-call_forwarding_master">
<!-- we use default volume -->
</path>
<path name="gain-call_forwarding_slave-handset">
<ctl name="DAC Gain" value="127" />
<ctl name="Earphone Volume" value="0" />
</path>
<path name="gain-call_forwarding_slave-speaker">
</path>
<path name="gain-call_forwarding_slave-headset">
<ctl name="DAC Gain" value="127" />
<ctl name="Headphone Volume" value="4" />
<ctl name="HP Analog Volume AVCBypass" value="59" />
</path>
<path name="gain-call_forwarding_slave-headphone">
<ctl name="DAC Gain" value="127" />
</path>
<path name="gain-call_forwarding_slave-bt-sco-headset">
</path>
<!-- Spectro Scenario volume -->
<path name="gain-call_spectro">
<ctl name="DAC Gain" value="55" />
</path>
<path name="gain-call_spectro-mic">
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<!-- end of Spectro Scenario -->
<!-- Input stage volume -->
<!-- media input volume -->
<path name="gain-media-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-media-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-media-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-media-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-media-bt-sco-headset-in">
</path>
<!-- camcorder input volume -->
<path name="gain-camcorder-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="119" />
<ctl name="ADC Right Gain" value="119" />
</path>
<path name="gain-camcorder-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="119" />
<ctl name="ADC Right Gain" value="119" />
</path>
<path name="gain-camcorder-dualmic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="133" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-camcorder-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="118" />
<ctl name="ADC Center Gain" value="118" />
<ctl name="ADC Right Gain" value="118" />
</path>
<path name="gain-camcorder-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="130" />
<ctl name="ADC Right Gain" value="130" />
</path>
<!-- voice recording input volume -->
<path name="gain-recording-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="128" />
<ctl name="ADC Right Gain" value="128" />
</path>
<path name="gain-recording-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="119" />
<ctl name="ADC Right Gain" value="119" />
</path>
<path name="gain-recording-dualmic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="119" />
<ctl name="ADC Right Gain" value="119" />
</path>
<path name="gain-recording-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="114" />
<ctl name="ADC Center Gain" value="114" />
<ctl name="ADC Right Gain" value="114" />
</path>
<path name="gain-recording-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="129" />
<ctl name="ADC Right Gain" value="129" />
</path>
<path name="gain-recording-bt-sco-headset-in">
</path>
<!-- jam voice recording input volume -->
<path name="gain-recording-jam-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-recording-jam-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<!-- interview input volume -->
<path name="gain-interview-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<!-- meeting input volume -->
<path name="gain-meeting-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<!-- lpsd control input volume -->
<path name="gain-lpsd_control-mic">
</path>
<!-- voice control input volume -->
<path name="gain-voice_control-mic">
</path>
<path name="gain-voice_control-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-vts_recording-mic">
</path>
<path name="gain-vts_recording-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<!-- voice_control_with_okgoogle input volume -->
<path name="gain-voice_control_with_okgoogle-mic">
</path>
<!-- voice_control_with_okgoogle input volume -->
<path name="gain-voice_control_with_okgoogle-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<!-- recognition input volume -->
<path name="gain-recognition-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="144" />
<ctl name="ADC Right Gain" value="144" />
</path>
<path name="gain-recognition-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
Part-B
<path name="gain-recognition-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-recognition-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-recognition-bt-sco-headset-in">
</path>
<!-- bargein samsung input volume -->
<path name="gain-bargein_samsung_engine-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-bargein_samsung_engine-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-bargein_samsung_engine-bt-sco-headset-in">
</path>
<!-- bargein external input volume-->
<path name="gain-bargein_external_engine-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-bargein_external_engine-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-bargein_external_engine-bt-sco-headset-in">
</path>
<!-- svoice/carmode samsung input volume -->
<path name="gain-dualmic_samsung_engine-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="144" />
<ctl name="ADC Right Gain" value="145" />
</path>
<path name="gain-dualmic_samsung_engine-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-dualmic_samsung_engine-bt-sco-headset-in">
</path>
<!-- svoice/carmode external input volume -->
<path name="gain-dualmic_external_engine-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="145" />
<ctl name="ADC Right Gain" value="145" />
</path>
<path name="gain-dualmic_external_engine-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-dualmic_external_engine-bt-sco-headset-in">
</path>
<!-- communication input volume -->
<path name="gain-communication-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-communication-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-communication-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-communication-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-communication-bt-sco-headset-in">
</path>
<path name="gain-communication-bt-sco-nrec-headset-in">
</path>
<!-- samsung voip input volume -->
<path name="gain-samsung_voip-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-samsung_voip-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-samsung_voip-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-samsung_voip-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-samsung_voip-bt-sco-headset-in">
</path>
<path name="gain-samsung_voip-bt-sco-nrec-headset-in">
</path>
<!-- samsung voip fmc input volume -->
<path name="gain-samsung_voip_fmc-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-samsung_voip_fmc-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-samsung_voip_fmc-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-samsung_voip_fmc-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-samsung_voip_fmc-bt-sco-headset-in">
</path>
<path name="gain-samsung_voip_fmc-bt-sco-nrec-headset-in">
</path>
<!-- voip input volume -->
<path name="gain-voip-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-voip-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="135" />
<ctl name="ADC Right Gain" value="135" />
</path>
<path name="gain-voip-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-voip-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-voip-bt-sco-headset-in">
</path>
<path name="gain-voip-bt-sco-nrec-headset-in">
</path>
<!-- wificall nb input volume -->
<path name="gain-wificall_nb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-wificall_nb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-wificall_nb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Center Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-wificall_nb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-wificall_nb-bt-sco-headset-in">
</path>
<path name="gain-wificall_nb-bt-sco-nrec-headset-in">
</path>
<!-- wificall wb input volume -->
<path name="gain-wificall_wb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-wificall_wb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-wificall_wb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-wificall_wb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-wificall_wb-bt-sco-headset-in">
</path>
<path name="gain-wificall_wb-bt-sco-nrec-headset-in">
</path>
<!-- wificall evs input volume -->
<path name="gain-wificall_evs-handset-mic">
</path>
<path name="gain-wificall_evs-speaker-mic">
</path>
<path name="gain-wificall_evs-headset-mic">
</path>
<path name="gain-wificall_evs-headphone-mic">
</path>
<path name="gain-wificall_evs-bt-sco-headset-in">
</path>
<path name="gain-wificall_evs-bt-sco-nrec-headset-in">
</path>
<!-- Video call input volume -->
<path name="gain-video_call-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-video_call-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-video_call-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Center Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-video_call-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-video_call-bt-sco-headset-in">
</path>
<path name="gain-video_call-bt-sco-nrec-headset-in">
</path>
<!-- VoLTE VT CP NB input volume -->
<path name="gain-volte_vt_cp_nb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_vt_cp_nb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_vt_cp_nb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Center Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-volte_vt_cp_nb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_vt_cp_nb-bt-sco-headset-in">
</path>
<!-- VoLTE CP NB input volume -->
<path name="gain-volte_cp_nb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_cp_nb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_cp_nb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-volte_cp_nb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_cp_nb-bt-sco-headset-in">
</path>
<!-- VoLTE CP WB input volume -->
<path name="gain-volte_cp_wb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_cp_wb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_cp_wb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-volte_cp_wb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_cp_wb-bt-sco-headset-in">
</path>
<!-- VoLTE VT CP WB input volume -->
<path name="gain-volte_vt_cp_wb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_vt_cp_wb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_vt_cp_wb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-volte_vt_cp_wb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="136" />
<ctl name="ADC Right Gain" value="136" />
</path>
<path name="gain-volte_vt_cp_wb-bt-sco-headset-in">
</path>
<!-- EVS Input volume -->
<path name="gain-volte_cp_evs-handset-mic">
</path>
<path name="gain-volte_cp_evs-speaker-mic">
</path>
<path name="gain-volte_cp_evs-headset-mic">
</path>
<path name="gain-volte_cp_evs-headphone-mic">
</path>
<path name="gain-volte_cp_evs-bt-sco-headset-in">
</path>
<!-- EVS VT Input volume -->
<path name="gain-volte_vt_cp_evs-handset-mic">
</path>
<path name="gain-volte_vt_cp_evs-speaker-mic">
</path>
<path name="gain-volte_vt_cp_evs-headset-mic">
</path>
<path name="gain-volte_vt_cp_evs-headphone-mic">
</path>
<path name="gain-volte_vt_cp_evs-bt-sco-headset-in">
</path>
<!-- CP Call Input volume -->
<!-- NB volume -->
<path name="gain-incall_nb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_nb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_nb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_nb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_nb-bt-sco-headset-in">
</path>
<!-- WB volume -->
<path name="gain-incall_wb-handset-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_wb-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_wb-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_wb-headphone-mic">
<ctl name="MIC1 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-incall_wb-bt-sco-headset-in">
</path>
<!-- Loopback Input (no delay) -->
<path name="gain-loopback-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="128" />
<ctl name="ADC Right Gain" value="128" />
</path>
<path name="gain-loopback-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="128" />
<ctl name="ADC Right Gain" value="128" />
</path>
<!-- Packet Loopback Input -->
<path name="gain-loopback_packet-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-loopback_packet-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-loopback_packet-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-loopback_packet-handset-dualmic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-loopback_packet-speaker-dualmic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<!-- Realtime Loopback Input -->
<path name="gain-realtimeloopback-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-realtimeloopback-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-realtimeloopback-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-realtimeloopback-bt-sco-headset-in">
</path>
<!-- TTY Mode Input volume -->
<path name="gain-tty_mode-vco-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-tty_mode-full-mic">
<ctl name="MIC3 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="133" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="133" />
</path>
<path name="gain-tty_mode-hco-mic">
<ctl name="MIC3 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="133" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="133" />
</path>
<!-- AP TTY Mode Input volume -->
<path name="gain-ap_tty_mode-vco-mic">
<ctl name="MIC1 Boost Volume" value="0" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-ap_tty_mode-full-mic">
<ctl name="MIC3 Boost Volume" value="0" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-ap_tty_mode-hco-mic">
<ctl name="MIC3 Boost Volume" value="0" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<!-- call forwarding input volume -->
<path name="gain-call_forwarding_master-mic">
<!-- we use default volume -->
</path>
<path name="gain-call_forwarding_slave-handset-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-call_forwarding_slave-speaker-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-call_forwarding_slave-headset-mic">
<ctl name="MIC3 Boost Volume" value="2" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Center Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-call_forwarding_slave-headphone-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="127" />
</path>
<path name="gain-call_forwarding_slave-bt-sco-headset-in">
</path>
<!-- echo(rms) test input volume -->
<path name="gain-echo_test-mic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-echo_test-2nd-mic">
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="137" />
<ctl name="ADC Right Gain" value="137" />
</path>
<path name="gain-echo_test-dualmic">
<ctl name="MIC1 Boost Volume" value="1" />
<ctl name="MIC2 Boost Volume" value="1" />
<ctl name="ADC Left Gain" value="127" />
<ctl name="ADC Right Gain" value="131" />
</path>
<!-- FM Playback/Recording -->
<path name="gain-fm_radio-speaker" >
<ctl name="DAC Gain" value="88" />
</path>
<path name="gain-fm_radio-headset" >
<ctl name="DAC Gain" value="143" />
<ctl name="Headphone Volume" value="0" />
<ctl name="HP Analog Volume AVCBypass" value="54" />
</path>
<path name="gain-fm_radio-fm-recording" >
</path>
</mixer>
and this is M20 ' s original '' mixer_paths.xml ''
Part-A
<mixer>
<include name="/vendor/etc/mixer_gains.xml" />
<pcmdai playback_link="0" />
<pcmdai playback_low_link="2" />
<pcmdai playback_deep_link="1" />
<pcmdai playback_offload_link="5" />
<pcmdai playback_jam_link="3" />
<pcmdai capture_link="9" />
<pcmdai baseband_link="4" />
<pcmdai baseband_capture_link="10" />
<pcmdai call_rec_capture_link="19" />
<pcmdai abox_pcm_dump_card="1"/>
<!-- Initial Mixer control configurations -->
<!-- For A-BOX -->
<ctl name="ABOX Sampling Rate Mixer" value="48000" />
<ctl name="ABOX Sampling Rate Out1" value="48000" />
<ctl name="ABOX Sampling Rate Out2" value="48000" />
<ctl name="ABOX SPUS ASRC0" value="On" />
<ctl name="ABOX SPUS ASRC1" value="On" />
<ctl name="ABOX SPUS ASRC2" value="On" />
<ctl name="ABOX SPUS ASRC3" value="On" />
<ctl name="ABOX SPUS ASRC4" value="On" />
<ctl name="ABOX SPUS ASRC5" value="On" />
<ctl name="ABOX SPUS ASRC6" value="On" />
<ctl name="ABOX SPUS ASRC7" value="On" />
<ctl name="ABOX SPUS OUT0" value="SIFS0" />
<ctl name="ABOX SPUS OUT1" value="SIFS0" />
<ctl name="ABOX SPUS OUT2" value="SIFS0" />
<ctl name="ABOX SPUS OUT3" value="SIFS0" />
<ctl name="ABOX SPUS OUT4" value="SIFS0" />
<ctl name="ABOX SPUS OUT5" value="SIFS0" />
<ctl name="ABOX SPUS OUT6" value="SIFS2" />
<ctl name="ABOX SPUS OUT7" value="SIFS1" />
<ctl name="ABOX SIFS1" value="SPUS OUT7" />
<ctl name="ABOX SIFS2" value="SPUS OUT6" />
<ctl name="ABOX UAIF SPK0" value="SIFS0" />
<ctl name="ABOX UAIF SPK1" value="RESERVED" />
<ctl name="ABOX UAIF SPK2" value="SIFS2" />
<ctl name="ABOX UAIF SPK3" value="RESERVED" />
<ctl name="ABOX UAIF SPK4" value="RESERVED" />
<ctl name="ABOX Sampling Rate Recp" value="48000" />
<ctl name="ABOX Sampling Rate Inmux0" value="48000" />
<ctl name="ABOX Sampling Rate Inmux1" value="48000" />
<ctl name="ABOX Sampling Rate Inmux2" value="48000" />
<ctl name="ABOX Sampling Rate Inmux3" value="48000" />
<ctl name="ABOX Sampling Rate Inmux4" value="48000" />
<ctl name="ABOX SPUM ASRC0" value="On" />
<ctl name="ABOX SPUM ASRC1" value="On" />
<ctl name="ABOX SPUM ASRC2" value="On" />
<ctl name="ABOX SPUM ASRC3" value="On" />
<ctl name="ABOX RECP PIFS0" value="0" />
<ctl name="ABOX RECP PIFS1" value="0" />
<ctl name="ABOX SIFM0" value="WDMA" />
<ctl name="ABOX SIFM1" value="WDMA" />
<ctl name="ABOX SIFM2" value="WDMA" />
<ctl name="ABOX SIFM3" value="WDMA" />
<ctl name="ABOX NSRC0" value="RESERVED" />
<ctl name="ABOX NSRC1" value="UAIF0" />
<ctl name="ABOX NSRC2" value="UAIF1" />
<ctl name="ABOX NSRC3" value="RESERVED" />
<ctl name="ABOX PCM ext VPCMIN ON" value="0" />
<ctl name="ABOX ERAP info Bypass On" value="0" />
<ctl name="ABOX ERAP info DSM On" value="0" />
<ctl name="ABOX Forte Media FM Mode" value="0" />
<ctl name="ABOX Sound Type" value="DEFAULT" />
<!-- For cod3035 Codec -->
<ctl name="HP HP On" value="0" />
<ctl name="EP EP On" value="0" />
<ctl name="MIC1 MIC1 On" value="0" />
<ctl name="MIC2 MIC2 On" value="0" />
<ctl name="MIC3 MIC3 On" value="0" />
<ctl name="ADCL Mixer MIC1L Switch" value="0" />
<ctl name="ADCL Mixer MIC2L Switch" value="0" />
<ctl name="ADCL Mixer MIC3L Switch" value="0" />
<ctl name="ADCL Mixer LINELL Switch" value="0" />
<ctl name="ADCL Mixer LINERL Switch" value="0" />
<ctl name="ADCR Mixer MIC1R Switch" value="0" />
<ctl name="ADCR Mixer MIC2R Switch" value="0" />
<ctl name="ADCR Mixer MIC3R Switch" value="0" />
<ctl name="ADCR Mixer LINELR Switch" value="0" />
<ctl name="ADCR Mixer LINERR Switch" value="0" />
<ctl name="ADCC Mixer MIC1C Switch" value="0" />
<ctl name="ADCC Mixer MIC2C Switch" value="0" />
<ctl name="ADCC Mixer MIC3C Switch" value="0" />
<ctl name="ADCC Mixer LINELC Switch" value="0" />
<ctl name="ADCC Mixer LINERC Switch" value="0" />
<ctl name="AVC Bypass Mode" value="1" />
<ctl name="AVC Mute Enable" value="1" />
<ctl name="MCB2 Chop Mode" value="1" />
<ctl name="In Mute HP Current" value="3" />
<ctl name="Out Mute HP Current" value="3" />
<ctl name="OVP Tuning Value" value="231" />
<ctl name="SPK Profile" value="HQ" />
<!-- Common control configurations -->
<path name="route-playback">
</path>
<path name="route-spkamp-playback">
<ctl name="ABOX ERAP info Bypass On" value="1" />
<ctl name="ABOX ERAP info DSM On" value="0" />
<ctl name="ABOX NSRC3" value="UAIF3" />
<ctl name="ABOX SPUS OUT7" value="SIFS1" />
<ctl name="ABOX SIFS1" value="SPUS OUT7" />
<ctl name="ABOX UAIF SPK3" value="SIFS1" />
</path>
<path name="route-fm">
<ctl name="ABOX ERAP info FM Radio On" value="1" />
<ctl name="ABOX Sampling Rate Inmux1" value="40000" />
<ctl name="ABOX NSRC1" value="SPEEDY" />
<ctl name="ABOX PCM ext VPCMIN ON" value="1" />
</path>
<path name="route-bt-sco-playback">
<ctl name="ABOX RECP PIFS0" value="1" />
<ctl name="ABOX RSRC0" value="SIFS0" />
<ctl name="ABOX RECP PIFS1" value="0" />
<ctl name="ABOX RSRC1" value="RESERVED" />
<ctl name="ABOX Echo Cancellation" value="2" />
<ctl name="ABOX BT SCO SPK Enable" value="1" />
</path>
<path name="route-ap-record">
<ctl name="ABOX NSRC0" value="UAIF0" />
</path>
<path name="route-cp-tx">
<ctl name="ABOX NSRC1" value="UAIF0" />
</path>
<path name="route-ap-bt-sco-record">
<ctl name="ABOX NSRC0" value="SIFS2" />
</path>
<path name="route-cp-bt-sco-tx">
<ctl name="ABOX NSRC1" value="SIFS2" />
</path>
<path name="route-bt-sco-tx">
<ctl name="ABOX SPUS OUT6" value="SIFS2" />
<ctl name="ABOX SIFS2" value="SPUS OUT6" />
<ctl name="ABOX BT SCO MIC Enable" value="1" />
</path>
<!-- Set bt sampling rate -->
<path name="set-bt-sco-rx-rate-nb">
</path>
<path name="set-bt-sco-tx-rate-nb">
</path>
<path name="set-bt-sco-rx-rate-wb">
</path>
<path name="set-bt-sco-tx-rate-wb">
</path>
<!-- Set uhqa sampling rate -->
<path name="set-uhqa-rx-rate">
<ctl name="ABOX Sampling Rate Mixer" value="192000" />
</path>
<path name="set-uhqa-tx-rate">
<ctl name="ABOX Sampling Rate Inmux0" value="192000" />
</path>
<path name="set-suhqa-rx-rate">
<ctl name="ABOX Sampling Rate Out1" value="384000" />
<ctl name="ABOX SPUS ASRC0" value="Off" />
<ctl name="ABOX SPUS OUT0" value="SIFS1" />
<ctl name="ABOX SIFS1" value="SPUS OUT0" />
<ctl name="ABOX UAIF SPK0" value="SIFS1" />
</path>
<!-- incall recording setting -->
<path name="incall-rec-uplink">
</path>
<path name="incall-rec-downlink">
</path>
<path name="incall-rec-uplink-and-downlink">
</path>
<path name="incall-rec-uplink-bt-sco">
</path>
<path name="incall-rec-downlink-bt-sco">
</path>
<path name="incall-rec-uplink-and-downlink-bt-sco">
</path>
<!-- output device -->
<path name="dev-handset">
<ctl name="EP EP On" value="1" />
</path>
<path name="dev-speaker">
</path>
<path name="dev-headset">
<ctl name="HP HP On" value="1" />
</path>
<path name="dev-speaker-headset">
<path name="dev-speaker" />
<path name="dev-headset" />
</path>
<!-- input device -->
<path name="dev-main-mic">
<ctl name="ADCL Mixer MIC1L Switch" value="1" />
<ctl name="ADCR Mixer MIC1R Switch" value="1" />
<ctl name="MIC1 MIC1 On" value="1" />
</path>
<path name="dev-2nd-mic">
<ctl name="ADCL Mixer MIC2L Switch" value="1" />
<ctl name="ADCR Mixer MIC2R Switch" value="1" />
<ctl name="MIC2 MIC2 On" value="1" />
</path>
<!-- L ch: main-mic / R ch: 2nd-mic -->
<path name="dev-dual-mic">
<ctl name="ADCL Mixer MIC1L Switch" value="1" />
<ctl name="ADCR Mixer MIC2R Switch" value="1" />
<ctl name="MIC1 MIC1 On" value="1" />
<ctl name="MIC2 MIC2 On" value="1" />
</path>
<!-- L ch: 2nd-mic / R ch: main-mic -->
<path name="dev-dual-invert-mic">
<ctl name="ADCL Mixer MIC2L Switch" value="1" />
<ctl name="ADCR Mixer MIC1R Switch" value="1" />
<ctl name="MIC1 MIC1 On" value="1" />
<ctl name="MIC2 MIC2 On" value="1" />
</path>
<path name="dev-headset-mic">
<ctl name="ADCL Mixer MIC3L Switch" value="1" />
<ctl name="ADCR Mixer MIC3R Switch" value="1" />
<ctl name="MIC3 MIC3 On" value="1" />
</path>
<!-- Output mixer settings -->
<!-- Playback paths -->
<path name="media-handset">
<path name="route-playback" />
<path name="dev-handset" />
</path>
<path name="factory-media-handset">
<path name="media-handset" />
</path>
<path name="media-speaker">
<path name="route-spkamp-playback" />
<path name="dev-speaker" />
</path>
<path name="media-headset">
<path name="route-playback" />
<path name="dev-headset" />
<ctl name="AVC Bypass Mode" value="3" />
<ctl name="AVC Mute Enable" value="1" />
<ctl name="In Mute HP Current" value="3" />
<ctl name="Out Mute HP Current" value="3" />
</path>
<path name="media-headphone">
<path name="media-headset" />
</path>
<path name="media-speaker-headset">
<path name="route-spkamp-playback" />
<path name="dev-speaker-headset" />
<ctl name="AVC Bypass Mode" value="3" />
<ctl name="AVC Mute Enable" value="1" />
<ctl name="In Mute HP Current" value="3" />
<ctl name="Out Mute HP Current" value="3" />
</path>
<path name="media-bt-sco-headset">
<path name="route-bt-sco-playback" />
</path>
<path name="media-speaker-bt-sco-headset">
<path name="media-bt-sco-headset" />
<path name="media-speaker" />
</path>
<!-- Ringtone playback -->
<path name="ringtone-handset">
<path name="media-handset" />
</path>
<path name="ringtone-speaker">
<path name="media-speaker" />
</path>
<path name="ringtone-headset">
<path name="media-headset" />
</path>
<path name="ringtone-speaker-headset">
<path name="media-speaker-headset" />
</path>
<path name="ringtone-bt-sco-headset">
<path name="media-bt-sco-headset" />
</path>
<path name="ringtone-speaker-bt-sco-headset">
<path name="media-speaker-bt-sco-headset" />
</path>
<!-- Communication playback -->
<path name="communication-handset">
<path name="media-handset" />
</path>
<path name="communication-speaker">
<path name="media-speaker" />
</path>
<path name="communication-headset">
<path name="route-playback" />
<path name="dev-headset" />
<ctl name="AVC Bypass Mode" value="3" />
<ctl name="AVC Mute Enable" value="1" />
<ctl name="In Mute HP Current" value="1" />
<ctl name="Out Mute HP Current" value="1" />
</path>
<path name="communication-headphone">
<path name="communication-headset" />
</path>
<path name="communication-bt-sco-headset">
<path name="media-bt-sco-headset" />
</path>
<!-- samsung voip playback -->
<path name="samsung_voip-handset">
<path name="communication-handset" />
</path>
<path name="samsung_voip-speaker">
<path name="communication-speaker" />
</path>
<path name="samsung_voip-headset">
<path name="communication-headset" />
</path>
<path name="samsung_voip-headphone">
<path name="samsung_voip-headset" />
</path>
<path name="samsung_voip-bt-sco-headset">
<path name="communication-bt-sco-headset" />
</path>
<!-- samsung voip fmc playback -->
<path name="samsung_voip_fmc-handset">
<path name="communication-handset" />
</path>
<path name="samsung_voip_fmc-speaker">
<path name="communication-speaker" />
</path>
<path name="samsung_voip_fmc-headset">
<path name="communication-headset" />
</path>
<path name="samsung_voip_fmc-headphone">
<path name="samsung_voip_fmc-headset" />
</path>
<path name="samsung_voip_fmc-bt-sco-headset">
<path name="communication-bt-sco-headset" />
</path>
<!-- voip playback -->
<path name="voip-handset">
<path name="communication-handset" />
</path>
<path name="voip-speaker">
<path name="communication-speaker" />
</path>
<path name="voip-headset">
<path name="communication-headset" />
</path>
<path name="voip-headphone">
<path name="voip-headset" />
</path>
<path name="voip-bt-sco-headset">
<path name="communication-bt-sco-headset" />
</path>
<!-- wificall playback -->
<!-- wificall AP NB -->
<path name="wificall_nb-handset">
<path name="communication-handset" />
</path>
<path name="wificall_nb-speaker">
<path name="communication-speaker" />
</path>
<path name="wificall_nb-headset">
<path name="communication-headset" />
</path>
<path name="wificall_nb-headphone">
<path name="wificall_nb-headset" />
</path>
<path name="wificall_nb-bt-sco-headset">
<path name="communication-bt-sco-headset" />
</path>
<!-- wificall AP WB -->
<path name="wificall_wb-handset">
<path name="wificall_nb-handset" />
</path>
<path name="wificall_wb-speaker">
<path name="wificall_nb-speaker" />
</path>
<path name="wificall_wb-headset">
<path name="wificall_nb-headset" />
</path>
<path name="wificall_wb-headphone">
<path name="wificall_nb-headphone" />
</path>
<path name="wificall_wb-bt-sco-headset">
<path name="wificall_nb-bt-sco-headset" />
</path>
<!-- wificall AP EVS -->
<path name="wificall_evs-handset">
<path name="wificall_nb-handset" />
</path>
<path name="wificall_evs-speaker">
<path name="wificall_nb-speaker" />
</path>
<path name="wificall_evs-headset">
<path name="wificall_nb-headset" />
</path>
<path name="wificall_evs-headphone">
<path name="wificall_nb-headphone" />
</path>
<path name="wificall_evs-bt-sco-headset">
<path name="wificall_nb-bt-sco-headset" />
</path>
<!-- Video call playback -->
<path name="video_call-handset">
<path name="communication-handset" />
</path>
<path name="video_call-speaker">
<path name="communication-speaker" />
</path>
<path name="video_call-headset">
<path name="communication-headset" />
</path>
<path name="video_call-headphone">
<path name="video_call-headset" />
</path>
<path name="video_call-bt-sco-headset">
<path name="communication-bt-sco-headset" />
</path>
<!-- CP Call Output -->
<!-- NB -->
<path name="incall_nb-handset">
<path name="route-playback" />
<path name="dev-handset" />
<ctl name="ABOX Sound Type" value="VOICE" />
</path>
<path name="incall_nb-speaker">
<path name="route-playback" />
<path name="route-spkamp-playback" />
<path name="dev-speaker" />
<ctl name="ABOX Sound Type" value="SPEAKER" />
</path>
<path name="incall_nb-headset">
<path name="route-playback" />
<path name="dev-headset" />
<ctl name="ABOX Sound Type" value="HEADSET" />
<ctl name="AVC Bypass Mode" value="3" />
<ctl name="AVC Mute Enable" value="1" />
<ctl name="In Mute HP Current" value="1" />
<ctl name="Out Mute HP Current" value="1" />
</path>
<path name="incall_nb-headphone">
<path name="incall_nb-headset" />
<ctl name="ABOX Sound Type" value="HEADSET" />
</path>
<path name="incall_nb-bt-sco-headset">
<path name="route-bt-sco-playback" />
<ctl name="ABOX Sound Type" value="BTVOICE" />
</path>
<!-- WB -->
<path name="incall_wb-handset">
<path name="incall_nb-handset" />
</path>
<path name="incall_wb-speaker">
<path name="incall_nb-speaker" />
</path>
<path name="incall_wb-headset">
<path name="incall_nb-headset" />
</path>
<path name="incall_wb-headphone">
<path name="incall_nb-headphone" />
</path>
<path name="incall_wb-bt-sco-headset">
<path name="incall_nb-bt-sco-headset" />
</path>
<!-- VoLTE CP playback -->
<!-- VoLTE CP NB -->
<path name="volte_cp_nb-handset">
<path name="incall_nb-handset" />
</path>
<path name="volte_cp_nb-speaker">
<path name="incall_nb-speaker" />
</path>
<path name="volte_cp_nb-headset">
<path name="incall_nb-headset" />
</path>
<path name="volte_cp_nb-headphone">
<path name="incall_nb-headphone" />
</path>
<path name="volte_cp_nb-bt-sco-headset">
<path name="incall_nb-bt-sco-headset" />
</path>
<!-- VoLTE VT CP NB -->
<path name="volte_vt_cp_nb-handset">
<path name="incall_nb-handset" />
</path>
<path name="volte_vt_cp_nb-speaker">
<path name="incall_nb-speaker" />
</path>
<path name="volte_vt_cp_nb-headset">
<path name="incall_nb-headset" />
</path>
<path name="volte_vt_cp_nb-headphone">
<path name="incall_nb-headphone" />
</path>
<path name="volte_vt_cp_nb-bt-sco-headset">
<path name="incall_nb-bt-sco-headset" />
</path>
<!-- VoLTE CP WB -->
<path name="volte_cp_wb-handset">
<path name="incall_wb-handset" />
</path>
<path name="volte_cp_wb-speaker">
<path name="incall_wb-speaker" />
</path>
<path name="volte_cp_wb-headset">
<path name="incall_wb-headset" />
</path>
<path name="volte_cp_wb-headphone">
<path name="incall_wb-headphone" />
</path>
<path name="volte_cp_wb-bt-sco-headset">
<path name="incall_wb-bt-sco-headset" />
</path>
<!-- EVS 32K -->
<path name="volte_cp_evs-handset">
<path name="incall_nb-handset" />
</path>
<path name="volte_cp_evs-speaker">
<path name="incall_nb-speaker" />
</path>
<path name="volte_cp_evs-headset">
<path name="incall_nb-headset" />
</path>
<path name="volte_cp_evs-headphone">
<path name="volte_cp_evs-headset" />
</path>
<path name="volte_cp_evs-bt-sco-headset">
<path name="incall_nb-bt-sco-headset" />
</path>
<!-- VoLTE VT CP WB -->
<path name="volte_vt_cp_wb-handset">
<path name="incall_wb-handset" />
</path>
<path name="volte_vt_cp_wb-speaker">
<path name="incall_wb-speaker" />
</path>
<path name="volte_vt_cp_wb-headset">
<path name="incall_wb-headset" />
</path>
<path name="volte_vt_cp_wb-headphone">
<path name="incall_wb-headphone" />
</path>
<path name="volte_vt_cp_wb-bt-sco-headset">
<path name="incall_wb-bt-sco-headset" />
</path>
<!-- VoLTE VT CP EVS -->
<path name="volte_vt_cp_evs-handset">
<path name="volte_cp_evs-handset" />
</path>
<path name="volte_vt_cp_evs-speaker">
<path name="volte_cp_evs-speaker" />
</path>
<path name="volte_vt_cp_evs-headset">
<path name="volte_cp_evs-headset" />
</path>
<path name="volte_vt_cp_evs-headphone">
<path name="volte_cp_evs-headphone" />
</path>
<path name="volte_vt_cp_evs-bt-sco-headset">
<path name="volte_cp_evs-bt-sco-headset" />
</path>
<!-- Loopback (no delay) -->
<path name="loopback-headset">
<path name="incall_nb-headset" />
</path>
<!-- Packet Loopback -->
<path name="loopback_packet-handset">
<path name="incall_nb-handset" />
</path>
<path name="loopback_packet-speaker">
<path name="incall_nb-speaker" />
</path>
<path name="loopback_packet-headset">
<path name="incall_nb-headset" />
</path>
<!-- Realtime Loopback -->
<path name="realtimeloopback-handset">
<path name="media-handset" />
</path>
<path name="realtimeloopback-speaker">
<path name="media-speaker" />
</path>
<path name="realtimeloopback-headset">
<path name="media-headset" />
</path>
<path name="realtimeloopback-bt-sco-headset">
<path name="media-bt-sco-headset" />
</path>
<!-- TTY Mode -->
<path name="tty_mode-handset">
<path name="incall_nb-handset" />
</path>
<path name="tty_mode-headset">
<path name="incall_nb-headset" />
</path>
<path name="tty_mode-headphone">
<path name="tty_mode-headset" />
</path>
<!-- AP TTY Mode -->
<path name="ap_tty_mode-handset">
<path name="media-handset" />
</path>
<path name="ap_tty_mode-headset">
<path name="media-headset" />
</path>
<path name="ap_tty_mode-headphone">
<path name="ap_tty_mode-headset" />
</path>
<!-- echo(rms) test output -->
<path name="echo_test-handset">
<path name="media-handset" />
</path>
<path name="echo_test-speaker">
<path name="media-speaker" />
</path>
<!-- call forwarding output -->
<path name="call_forwarding_master">
<!-- AP Rx -> CP Tx -->
<ctl name="ABOX UAIF SPK0" value="SIFS0" />
<ctl name="ABOX NSRC1" value="UAIF1" />
<ctl name="ABOX Sound Type" value="CALLFWD" />
</path>
<path name="call_forwarding_slave-handset">
<path name="communication-handset" />
</path>
<path name="call_forwarding_slave-speaker">
<path name="communication-speaker" />
</path>
<path name="call_forwarding_slave-headset">
<path name="communication-headset" />
</path>
<path name="call_forwarding_slave-headphone">
<path name="call_forwarding_slave-headset" />
</path>
<path name="call_forwarding_slave-bt-sco-headset">
<path name="communication-bt-sco-headset" />
</path>
<!-- Spectro Scenario -->
<path name="call_spectro">
<ctl name="ABOX UAIF SPK0" value="SIFS0" />
<ctl name="ABOX NSRC1" value="UAIF1" />
</path>
<path name="call_spectro-mic">
<ctl name="ABOX SPUS OUT6" value="SIFS0" />
<ctl name="ABOX SPUS OUT4" value="SIFS2" />
<ctl name="ABOX SIFS2" value="SPUS OUT4" />
<ctl name="ABOX UAIF SPK2" value="SIFS2" />
</path>
<!-- end of Spectro Scenario -->
<!-- Input stage -->
<!-- media input -->
<path name="media-mic">
<path name="route-ap-record" />
<path name="dev-main-mic" />
</path>
<path name="media-2nd-mic">
<path name="route-ap-record" />
<path name="dev-2nd-mic" />
</path>
<path name="media-headset-mic">
<path name="route-ap-record" />
<path name="dev-headset-mic" />
<ctl name="MCB2 Chop Mode" value="0" />
</path>
<path name="media-headphone-mic">
<path name="media-mic" />
</path>
<path name="media-bt-sco-headset-in">
<path name="route-bt-sco-tx" />
<path name="route-ap-bt-sco-record" />
</path>
<!-- camcorder input -->
<path name="camcorder-mic">
<path name="media-mic" />
</path>
<path name="camcorder-2nd-mic">
<path name="media-2nd-mic" />
</path>
<path name="camcorder-dualmic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
</path>
<path name="camcorder-headset-mic">
<path name="media-headset-mic" />
</path>
<path name="camcorder-headphone-mic">
<path name="camcorder-mic" />
</path>
<!-- voice input -->
<path name="recording-mic">
<path name="media-mic" />
</path>
<path name="recording-2nd-mic">
<path name="media-2nd-mic" />
</path>
<path name="recording-dualmic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
</path>
<path name="recording-headset-mic">
<path name="media-headset-mic" />
</path>
<path name="recording-headphone-mic">
<path name="recording-mic" />
</path>
<path name="recording-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
</path>
<!-- jam voice input -->
<path name="recording-jam-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
</path>
<path name="recording-jam-headset-mic">
<path name="media-headset-mic" />
</path>
Part-B
<!-- interview input -->
<path name="interview-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media FM Mode" value="3" />
</path>
<!-- meeting input -->
<path name="meeting-mic">
<!-- TODO: We will make this -->
</path>
<!-- lpsd control input -->
<path name="lpsd_control-mic">
</path>
<!-- voice control input -->
<path name="voice_control-mic">
</path>
<path name="voice_control-headset-mic">
</path>
<path name="vts_recording-mic">
</path>
<path name="vts_recording-headset-mic">
</path>
<!-- voice_control_with_okgoogle input -->
<path name="voice_control_with_okgoogle-mic">
<path name="voice_control-mic" />
</path>
<!-- voice_control_with_okgoogle input headset -->
<path name="voice_control_with_okgoogle-headset-mic">
<path name="voice_control-headset-mic" />
</path>
<!-- recognition input -->
<path name="recognition-mic">
<path name="media-mic" />
</path>
<path name="recognition-2nd-mic">
<path name="media-2nd-mic" />
</path>
<path name="recognition-headset-mic">
<path name="media-headset-mic" />
</path>
<path name="recognition-headphone-mic">
<path name="recognition-mic" />
</path>
<path name="recognition-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
</path>
<!-- bargein samsung input -->
<path name="bargein_samsung_engine-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020201" />
<ctl name="ABOX Forte Media Bargein type" value="2" />
<ctl name="ABOX Forte Media FM Mode" value="2" />
</path>
<path name="bargein_samsung_engine-headset-mic">
<path name="media-headset-mic" />
</path>
<path name="bargein_samsung_engine-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
</path>
<!-- bargein external input -->
<path name="bargein_external_engine-mic">
<path name="bargein_samsung_engine-mic" />
</path>
<path name="bargein_external_engine-headset-mic">
<path name="media-headset-mic" />
</path>
<path name="bargein_external_engine-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
</path>
<!-- svoice/carmode samsung input -->
<path name="dualmic_samsung_engine-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
</path>
<path name="dualmic_samsung_engine-headset-mic">
<path name="media-headset-mic" />
</path>
<path name="dualmic_samsung_engine-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
</path>
<!-- svoice/carmode external input -->
<path name="dualmic_external_engine-mic">
<path name="dualmic_samsung_engine-mic" />
</path>
<path name="dualmic_external_engine-headset-mic">
<path name="dualmic_samsung_engine-headset-mic" />
</path>
<path name="dualmic_external_engine-bt-sco-headset-in">
<path name="dualmic_samsung_engine-bt-sco-headset-in" />
</path>
<!-- communication input -->
<path name="communication-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="9" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="communication-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020201" />
<ctl name="ABOX Forte Media AP Call type" value="10" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="communication-headset-mic">
<path name="route-ap-record" />
<path name="dev-headset-mic" />
<ctl name="MCB2 Chop Mode" value="1" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010101" />
<ctl name="ABOX Forte Media AP Call type" value="13" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="communication-headphone-mic">
<path name="media-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000101" />
<ctl name="ABOX Forte Media AP Call type" value="12" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="communication-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="8" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="communication-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="7" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- samsung voip input -->
<path name="samsung_voip-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="23" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020201" />
<ctl name="ABOX Forte Media AP Call type" value="24" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip-headset-mic">
<path name="media-headset-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010101" />
<ctl name="ABOX Forte Media AP Call type" value="27" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip-headphone-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="26" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="22" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="21" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- samsung voip fmc input -->
<path name="samsung_voip_fmc-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="16" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip_fmc-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020201" />
<ctl name="ABOX Forte Media AP Call type" value="17" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip_fmc-headset-mic">
<path name="media-headset-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010101" />
<ctl name="ABOX Forte Media AP Call type" value="20" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip_fmc-headphone-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="19" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip_fmc-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="15" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="samsung_voip_fmc-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="14" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- voip input -->
<path name="voip-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="9" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="voip-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020201" />
<ctl name="ABOX Forte Media AP Call type" value="10" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="voip-headset-mic">
<path name="media-headset-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010101" />
<ctl name="ABOX Forte Media AP Call type" value="13" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="voip-headphone-mic">
<path name="media-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000101" />
<ctl name="ABOX Forte Media AP Call type" value="12" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="voip-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="8" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="voip-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="7" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- wificall input -->
<!-- wificall AP NB -->
<path name="wificall_nb-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000200" />
<ctl name="ABOX Forte Media AP Call type" value="48" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_nb-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020200" />
<ctl name="ABOX Forte Media AP Call type" value="49" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_nb-headset-mic">
<path name="media-headset-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010100" />
<ctl name="ABOX Forte Media AP Call type" value="54" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_nb-headphone-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000200" />
<ctl name="ABOX Forte Media AP Call type" value="53" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_nb-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030100" />
<ctl name="ABOX Forte Media AP Call type" value="46" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_nb-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030100" />
<ctl name="ABOX Forte Media AP Call type" value="47" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- wificall AP WB -->
<path name="wificall_wb-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="57" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_wb-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020201" />
<ctl name="ABOX Forte Media AP Call type" value="58" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_wb-headset-mic">
<path name="media-headset-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010101" />
<ctl name="ABOX Forte Media AP Call type" value="63" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_wb-headphone-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000201" />
<ctl name="ABOX Forte Media AP Call type" value="62" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_wb-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="55" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_wb-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030101" />
<ctl name="ABOX Forte Media AP Call type" value="56" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- wificall AP EVS -->
<path name="wificall_evs-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000202" />
<ctl name="ABOX Forte Media AP Call type" value="66" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_evs-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020202" />
<ctl name="ABOX Forte Media AP Call type" value="67" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_evs-headset-mic">
<path name="media-headset-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010102" />
<ctl name="ABOX Forte Media AP Call type" value="72" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_evs-headphone-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000202" />
<ctl name="ABOX Forte Media AP Call type" value="71" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_evs-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030102" />
<ctl name="ABOX Forte Media AP Call type" value="64" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="wificall_evs-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030102" />
<ctl name="ABOX Forte Media AP Call type" value="65" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- Video call input -->
<path name="video_call-handset-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000200" />
<ctl name="ABOX Forte Media AP Call type" value="30" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="video_call-speaker-mic">
<path name="route-ap-record" />
<path name="dev-dual-invert-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x020200" />
<ctl name="ABOX Forte Media AP Call type" value="31" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="video_call-headset-mic">
<path name="media-headset-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x010100" />
<ctl name="ABOX Forte Media AP Call type" value="36" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="video_call-headphone-mic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
<ctl name="ABOX Forte Media AP Call BW" value="0x000200" />
<ctl name="ABOX Forte Media AP Call type" value="35" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="video_call-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030100" />
<ctl name="ABOX Forte Media AP Call type" value="28" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<path name="video_call-bt-sco-nrec-headset-in">
<path name="media-bt-sco-headset-in" />
<ctl name="ABOX Forte Media AP Call BW" value="0x030100" />
<ctl name="ABOX Forte Media AP Call type" value="29" />
<ctl name="ABOX Forte Media FM Mode" value="1" />
</path>
<!-- CP Call input -->
<!-- NB -->
<path name="incall_nb-handset-mic">
<path name="route-cp-tx" />
<path name="dev-dual-mic" />
</path>
<path name="incall_nb-speaker-mic">
<path name="route-cp-tx" />
<path name="dev-dual-invert-mic" />
</path>
<path name="incall_nb-headset-mic">
<path name="route-cp-tx" />
<path name="dev-headset-mic" />
<ctl name="MCB2 Chop Mode" value="1" />
</path>
<path name="incall_nb-headphone-mic">
<path name="incall_nb-handset-mic" />
</path>
<path name="incall_nb-bt-sco-headset-in">
<path name="route-bt-sco-tx" />
<path name="route-cp-bt-sco-tx" />
</path>
<!-- WB -->
<path name="incall_wb-handset-mic">
<path name="incall_nb-handset-mic" />
</path>
<path name="incall_wb-speaker-mic">
<path name="incall_nb-speaker-mic" />
</path>
<path name="incall_wb-headset-mic">
<path name="incall_nb-headset-mic" />
</path>
<path name="incall_wb-headphone-mic">
<path name="incall_nb-headphone-mic" />
</path>
<path name="incall_wb-bt-sco-headset-in">
<path name="incall_nb-bt-sco-headset-in" />
</path>
<!-- VoLTE CP input -->
<!-- VoLTE CP NB -->
<path name="volte_cp_nb-handset-mic">
<path name="incall_nb-handset-mic" />
</path>
<path name="volte_cp_nb-speaker-mic">
<path name="incall_nb-speaker-mic" />
</path>
<path name="volte_cp_nb-headset-mic">
<path name="incall_nb-headset-mic" />
</path>
<path name="volte_cp_nb-headphone-mic">
<path name="incall_nb-headphone-mic" />
</path>
<path name="volte_cp_nb-bt-sco-headset-in">
<path name="incall_nb-bt-sco-headset-in" />
</path>
<!-- VoLTE VT CP NB-->
<path name="volte_vt_cp_nb-handset-mic">
<path name="incall_nb-handset-mic" />
</path>
<path name="volte_vt_cp_nb-speaker-mic">
<path name="incall_nb-speaker-mic" />
</path>
<path name="volte_vt_cp_nb-headset-mic">
<path name="incall_nb-headset-mic" />
</path>
<path name="volte_vt_cp_nb-headphone-mic">
<path name="incall_nb-headphone-mic" />
</path>
<path name="volte_vt_cp_nb-bt-sco-headset-in">
<path name="incall_nb-bt-sco-headset-in" />
</path>
<!-- VoLTE CP WB -->
<path name="volte_cp_wb-handset-mic">
<path name="incall_wb-handset-mic" />
</path>
<path name="volte_cp_wb-speaker-mic">
<path name="incall_wb-speaker-mic" />
</path>
<path name="volte_cp_wb-headset-mic">
<path name="incall_wb-headset-mic" />
</path>
<path name="volte_cp_wb-headphone-mic">
<path name="incall_wb-headphone-mic" />
</path>
<path name="volte_cp_wb-bt-sco-headset-in">
<path name="incall_wb-bt-sco-headset-in" />
</path>
<!-- EVS 32K Input -->
<path name="volte_cp_evs-handset-mic">
<path name="incall_nb-handset-mic" />
</path>
<path name="volte_cp_evs-speaker-mic">
<path name="incall_nb-speaker-mic" />
</path>
<path name="volte_cp_evs-headset-mic">
<path name="incall_nb-headset-mic" />
</path>
<path name="volte_cp_evs-headphone-mic">
<path name="incall_nb-headphone-mic" />
</path>
<path name="volte_cp_evs-bt-sco-headset-in">
<path name="incall_nb-bt-sco-headset-in" />
</path>
<!-- VoLTE VT CP EVS -->
<path name="volte_vt_cp_evs-handset-mic">
<path name="volte_cp_evs-handset-mic" />
</path>
<path name="volte_vt_cp_evs-speaker-mic">
<path name="volte_cp_evs-speaker-mic" />
</path>
<path name="volte_vt_cp_evs-headset-mic">
<path name="volte_cp_evs-headset-mic" />
</path>
<path name="volte_vt_cp_evs-headphone-mic">
<path name="volte_cp_evs-headphone-mic" />
</path>
<path name="volte_vt_cp_evs-bt-sco-headset-in">
<path name="volte_cp_evs-bt-sco-headset-in" />
</path>
<!-- VoLTE VT CP WB -->
<path name="volte_vt_cp_wb-handset-mic">
<path name="incall_wb-handset-mic" />
</path>
<path name="volte_vt_cp_wb-speaker-mic">
<path name="incall_wb-speaker-mic" />
</path>
<path name="volte_vt_cp_wb-headset-mic">
<path name="incall_wb-headset-mic" />
</path>
<path name="volte_vt_cp_wb-headphone-mic">
<path name="incall_wb-headphone-mic" />
</path>
<path name="volte_vt_cp_wb-bt-sco-headset-in">
<path name="incall_wb-bt-sco-headset-in" />
</path>
<!-- Loopback Input (no delay) -->
<path name="loopback-mic">
<path name="route-cp-tx" />
<path name="dev-main-mic" />
</path>
<path name="loopback-2nd-mic">
<path name="route-cp-tx" />
<path name="dev-2nd-mic" />
</path>
<!-- Packet Loopback Input -->
<path name="loopback_packet-mic">
<path name="route-cp-tx" />
<path name="dev-main-mic" />
</path>
<path name="loopback_packet-2nd-mic">
<path name="route-cp-tx" />
<path name="dev-2nd-mic" />
</path>
<path name="loopback_packet-headset-mic">
<path name="route-cp-tx" />
<path name="dev-headset-mic" />
</path>
<path name="loopback_packet-handset-dualmic">
<path name="route-cp-tx" />
<path name="dev-dual-mic" />
</path>
<path name="loopback_packet-speaker-dualmic">
<path name="route-cp-tx" />
<path name="dev-dual-invert-mic" />
</path>
<!-- Realtime Loopback Input -->
<path name="realtimeloopback-mic">
<path name="media-mic" />
</path>
<path name="realtimeloopback-2nd-mic">
<path name="media-2nd-mic" />
</path>
<path name="realtimeloopback-headset-mic">
<path name="media-headset-mic" />
</path>
<path name="realtimeloopback-bt-sco-headset-in">
<path name="media-bt-sco-headset-in" />
</path>
<!-- TTY Mode Input -->
<path name="tty_mode-vco-mic">
<path name="route-cp-tx" />
<path name="dev-main-mic" />
</path>
<path name="tty_mode-full-mic">
<path name="route-cp-tx" />
<path name="dev-headset-mic" />
</path>
<path name="tty_mode-hco-mic">
<path name="route-cp-tx" />
<path name="dev-headset-mic" />
</path>
<!-- AP TTY Mode Input -->
<path name="ap_tty_mode-vco-mic">
<path name="media-mic" />
</path>
<path name="ap_tty_mode-full-mic">
<path name="media-headset-mic" />
</path>
<path name="ap_tty_mode-hco-mic">
<path name="media-headset-mic" />
</path>
<!-- echo(rms) test input -->
<path name="echo_test-mic">
<path name="route-ap-record" />
<path name="dev-main-mic" />
</path>
<path name="echo_test-2nd-mic">
<path name="route-ap-record" />
<path name="dev-2nd-mic" />
</path>
<path name="echo_test-dualmic">
<path name="route-ap-record" />
<path name="dev-dual-mic" />
</path>
<!-- call forwarding input -->
<path name="call_forwarding_master-mic">
<!-- CP Rx -> AP Tx -->
<ctl name="ABOX SPUS OUT6" value="SIFS0" />
<ctl name="ABOX SPUS OUT4" value="SIFS2" />
<ctl name="ABOX SIFS2" value="SPUS OUT4" />
<ctl name="ABOX UAIF SPK2" value="SIFS2" />
<ctl name="ABOX RECP PIFS0" value="1" />
<ctl name="ABOX RSRC0" value="SIFS2" />
</path>
<path name="call_forwarding_slave-handset-mic">
<path name="communication-handset-mic" />
</path>
<path name="call_forwarding_slave-speaker-mic">
<path name="communication-speaker-mic" />
</path>
<path name="call_forwarding_slave-headset-mic">
<path name="communication-headset-mic" />
</path>
<path name="call_forwarding_slave-headphone-mic">
<path name="communication-headphone-mic" />
</path>
<path name="call_forwarding_slave-bt-sco-headset-in">
<path name="communication-bt-sco-headset-in" />
</path>
<!-- FM Playback/Recording -->
<path name="fm_radio-speaker" >
<ctl name="SPK Profile" value="fm_radio" />
<path name="route-fm" />
<path name="route-playback" />
<path name="dev-speaker" />
<path name="route-spkamp-playback" />
</path>
<path name="fm_radio-headset" >
<path name="route-fm" />
<path name="route-playback" />
<path name="dev-headset" />
<ctl name="AVC Bypass Mode" value="1" />
</path>
<path name="fm_radio-fm-recording" >
<path name="route-fm" />
<path name="route-ap-record" />
</path>
<!-- One byte control -->
<path name="seamless_buf_offset">
</path>
<path name="codec_rx_mute">
</path>
</mixer>
and i attached these 2 original files.
???
i downloaded 81 apps for headphone volume boost and i tried 38 apps yet. none work ! i think all apps blocked by samsung in new OS. samsung engineers are working for blocking unofficial apps , modes and hardware capabilities. they are no working for make a better device. stupid visual effects , stupid official apps and thats all. this is my last samsung phone ! i will never buy a samsung phone again ! approx 2 years past and i can't use this ****. ****ing garbage phone !
A20 and M20 shares the same settings for earphones so they have the same settings except for the speaker amp. I experienced audio shutdown when I increased the value in mixer_gains.xml so I gone further and realized that the audio threshold and OVP tuning value is set at mixer_paths.xml. The original OVP tuning value is 231 which is not balanced to the gain set at mixer_gains.xml and this causes the audio shut-off as it cannot pass higher than 700 to 800mV peak original set by mixer_paths.xml so I adjusted the value (thinking about the optimized non-audio IC dangerous value) and I managed to increase the maximum gain higher than expected. I tested this with multiple earphones and headphones including AKG earphones and headphones and the sound is clean. Bass is also boosted too.
I edited the xml files posted here so you can try it. I adjusted the values so all you need to do is test it. Be sure to backup the original file in case something goes wrong.
Have a good day!
einstein16 said:
A20 and M20 shares the same settings for earphones so they have the same settings except for the speaker amp. I experienced audio shutdown when I increased the value in mixer_gains.xml so I gone further and realized that the audio threshold and OVP tuning value is set at mixer_paths.xml. The original OVP tuning value is 231 which is not balanced to the gain set at mixer_gains.xml and this causes the audio shut-off as it cannot pass higher than 700 to 800mV peak original set by mixer_paths.xml so I adjusted the value (thinking about the optimized non-audio IC dangerous value) and I managed to increase the maximum gain higher than expected. I tested this with multiple earphones and headphones including AKG earphones and headphones and the sound is clean. Bass is also boosted too.
I edited the xml files posted here so you can try it. I adjusted the values so all you need to do is test it. Be sure to backup the original file in case something goes wrong.
Have a good day!
Click to expand...
Click to collapse
thank you...thank you...thank you...
your modification is ok ! it's working ! my M20 hp output level is equivalent with my old modified S3 phone's hp output now and no clipping. now i can listen music ! thank you !
but i noticed 1 bug. if i plug a 3.5mm stereo jack-to-RCA cable to my M20's hp output ( for mixer or audio amp input ) and if i turn up volume to maximum , M20's hp out generates very high output and shutdown ! this is basicly open circuit for M20's hp output because mixers and audio amplifiers inputs has >10Kohm , >20Kohm or more higher impedance. can you solve this bug ?
lastly : can you increase volume up little bit more ? i want %10 or %15 more. if you can't do it , no problem. i can use it with this level. if you can do it , it's perfect to me.
i also added some pictures about my test conditions and results.
thank you...
afakkobyab said:
thank you...thank you...thank you...
your modification is ok ! it's working ! my M20 hp output level is equivalent with my old modified S3 phone's hp output now and no clipping. now i can listen music ! thank you !
but i noticed 1 bug. if i plug a 3.5mm stereo jack-to-RCA cable to my M20's hp output ( for mixer or audio amp input ) and if i turn up volume to maximum , M20's hp out generates very high output and shutdown ! this is basicly open circuit for M20's hp output because mixers and audio amplifiers inputs has >10Kohm , >20Kohm or more higher impedance. can you solve this bug ?
lastly : can you increase volume up little bit more ? i want %10 or %15 more. if you can't do it , no problem. i can use it with this level. if you can do it , it's perfect to me.
i also added some pictures about my test conditions and results.
thank you...
Click to expand...
Click to collapse
In my A20 device I didn't encounter this kind of AUX bug. Maybe it has something to do with your AUX cable or RCA cable because of its resistance. Bigger wires, higher resistance. So your M20 needs to pump out much higher current in order to meet the peak requirements in the output.
1 interesting note : these phones are look like has not a normal audio amplifier for hp output. todays high power professional audio amplifiers has very high damping factor. ( not old tube amps ) this means amplifier output voltage never change when are you change load impedance. ( without rail clipping ) these phones hp outputs look like has a big serial resistor or some sensing system doing similar job. hp maximum output level is lower when you use low impedance hp and hp maximum output level is higher when you use higher impedance load or open circuit.
high damping factor is important for quality of sound. for understanding this situation need to some another tests but i didn't because I don't want to deal with anymore. i just want high volume music to my hp
einstein16 said:
In my A20 device I didn't encounter this kind of AUX bug. Maybe it has something to do with your AUX cable or RCA cable because of its resistance. Bigger wires, higher resistance. So your M20 needs to pump out much higher current in order to meet the peak requirements in the output.
Click to expand...
Click to collapse
thank you...
afakkobyab said:
1 interesting note : these phones are look like has not a normal audio amplifier for hp output. todays high power professional audio amplifiers has very high damping factor. ( not old tube amps ) this means amplifier output voltage never change when are you change load impedance. ( without rail clipping ) these phones hp outputs look like has a big serial resistor or some sensing system doing similar job. hp maximum output level is lower when you use low impedance hp and hp maximum output level is higher when you use higher impedance load or open circuit.
high damping factor is important for quality of sound. for understanding this situation need to some another tests but i didn't because I don't want to deal with anymore. i just want high volume music to my hp
Click to expand...
Click to collapse
This devices do have Over current, Over Voltage, Overheat protection built into their chips. Those protections have sensitive sensors. If you just want higher input from your headphones, stick to what i've edited. I tried to increase the values above 199 and it's terrible. Distortions and the sound chip/amplifier is overheating because higher voltage, higher current, more output but more heat. So I sticked to the optimized values.
einstein16 said:
This devices do have Over current, Over Voltage, Overheat protection built into their chips. Those protections have sensitive sensors. If you just want higher input from your headphones, stick to what i've edited. I tried to increase the values above 199 and it's terrible. Distortions and the sound chip/amplifier is overheating because higher voltage, higher current, more output but more heat. So I sticked to the optimized values.
Click to expand...
Click to collapse
ok no problemo. this volume level is ok. thanks to you, I'll be able to use my phone.
now i search a good mp3 player program ( working correctly ofc ) thx
this is interesting topic, good solution. but is it support an external DAC for SM-M205G? on the samsung community says it doesn't support, but is it accurate? I'm about to buy an external DAC and found this tricky answer

How To Guide Bluetooth Hearing Aids Support (using ASHA)

UPDATE: I made it work! I'll add a reply below.
This might be a bit of a stretch, but I don't suppose anyone has managed to get bluetooth hearing aids (that support the ASHA protocol) working properly on this phone, either with OxygenOS or an aftermarket mod? I'm at my wits' end trying to work out why my mum's aren't working for calls while media audio is completely fine.
Stuff we've tried:
I've tested her hearing aids on my own OnePlus 7 Pro and they work absolutely perfectly. Media audio is fine, call audio is fine.
I tried looking at her phone's logcat output, from vanilla OxygenOS, and there were a *lot* of exceptions being thrown from the BluetoothAdapter constructor, from all sorts of apps. It seems that the static getDefaultAdapter() method was constructing a BluetoothAdapter incorrectly, which implied it was an OxygenOS bug.
And so we've just installed the LineageOS build from here, which I was certain would work - no joy. The issue is exactly the same; when the hearing aids are selected as the output device, no sound comes out of them, and the phone's microphone is disabled. With my own phone, it (correctly) uses the phone's microphone as the audio input.
Since media audio is fine, I presume it's not a hardware problem with the bluetooth adapter in the phone? But since the hearing aids work fine with my phone, running vanilla OxygenOS, it can't be an issue with the hearing aids, and since LineageOS fails in exactly the same way as OxygenOS, it surely can't be an issue with the operating system. I'm really out of ideas.
I managed to make it work!
Apparently OnePlus in their infinite wisdom didn't bother to put the hearing-aid and hearing-aid-mic audio route paths in /vendor/etc/mixer_paths_lagoonqrd.xml (that file name might be LineageOS specific - my own phone has two mixer_paths_*.xml files and neither of them are called that). I've attached a Magisk module with my fix in case it's useful for anyone else.
Please note: I've only tested this with LineageOS 18.1 and it's a modification of the LineageOS file I pulled from my mum's phone; I have absolutely no idea whether it'll work on OxygenOS.
Update: I've now tested on stock OxygenOS 11.0.16 (EU flavour) and it needed an extra line added, which I've now added and I've replaced the download here. Now it works perfectly on both OxygenOS and LineageOS!
I have absolutely no idea what I'm doing and this is provided "as-is" and nothing is my fault etc.
(ɔ) no rights reserved (by me, but other people might have rights, I don't know - look it up if you care)
Qualx said:
I managed to make it work!
Apparently OnePlus in their infinite wisdom didn't bother to put the hearing-aid and hearing-aid-mic audio route paths in /vendor/etc/mixer_paths_lagoonqrd.xml (that file name might be LineageOS specific - my own phone has two mixer_paths_*.xml files and neither of them are called that). I've attached a Magisk module with my fix in case it's useful for anyone else.
Please note: I've only tested this with LineageOS 18.1 and it's a modification of the LineageOS file I pulled from my mum's phone; I have absolutely no idea whether it'll work on OxygenOS.
Update: I've now tested on stock OxygenOS 11.0.16 (EU flavour) and it needed an extra line added, which I've now added and I've replaced the download here. Now it works perfectly on both OxygenOS and LineageOS!
I have absolutely no idea what I'm doing and this is provided "as-is" and nothing is my fault etc.
(ɔ) no rights reserved (by me, but other people might have rights, I don't know - look it up if you care)
Click to expand...
Click to collapse
Hi,
I have the same problem with my nord 2 and oxygen 11, so do you think that if I root my device, and install your magisk module it they will work?
Thanks
Andrea
andrea7376 said:
Hi,
I have the same problem with my nord 2 and oxygen 11, so do you think that if I root my device, and install your magisk module it they will work?
Thanks
Andrea
Click to expand...
Click to collapse
Almost certainly not, sorry! The files seem extremely device-specific - but by all means give it a go; if your device happens to use the same mixer_paths file I'd expect it would work, and it certainly won't do any harm, apart from needing to wipe your device in the process of rooting it.
I'd be happy to try and make a module for you though if you can work out which mixer_paths file your device is loading and give me a copy of it. I should probably have written down my method in more detail for people with other devices...
I'll check exact commands and update this post with them later on, but essentially, if you restart your device and immediately dump adb logcat output to a file, you should be able to ctrl+F for the string "mixer_paths" and you'll find the phone loading audio routes from one specific mixer_paths_something.xml file during startup. If you then pull that file to your computer with adb (it's located in /vendor/etc, I can't remember if that logcat line has the full path or not) and post it here or DM it to me, I'll make the modifications for you. (And I'll actually document my method this time for future people.)
Also, if you need help with any of the above then please ask! I'm trying not to make assumptions about your level of expertise.
Qualx said:
Almost certainly not, sorry! The files seem extremely device-specific - but by all means give it a go; if your device happens to use the same mixer_paths file I'd expect it would work, and it certainly won't do any harm, apart from needing to wipe your device in the process of rooting it.
I'd be happy to try and make a module for you though if you can work out which mixer_paths file your device is loading and give me a copy of it. I should probably have written down my method in more detail for people with other devices...
I'll check exact commands and update this post with them later on, but essentially, if you restart your device and immediately dump adb logcat output to a file, you should be able to ctrl+F for the string "mixer_paths" and you'll find the phone loading audio routes from one specific mixer_paths_something.xml file during startup. If you then pull that file to your computer with adb (it's located in /vendor/etc, I can't remember if that logcat line has the full path or not) and post it here or DM it to me, I'll make the modifications for you. (And I'll actually document my method this time for future people.)
Also, if you need help with any of the above then please ask! I'm trying not to make assumptions about your level of expertise.
Click to expand...
Click to collapse
Hi, thanks for your support,
first of all... my symptom are: the bluetooth connect to my hearing aid through the Hearing aid helper in the settings but there don't show nothing connected, but from this point ahead, I can't hear nothing from the phone and no one can hear me through the mic in a call, for this reason I thought it's the same bug, what do you think?
The problem is that I don't have the phone rooted yet, also it's coming the first open beta OS12 for the nord 2, even if it's for the indian version, if it will work I would get a try, but if it is not , I'm will stuck with that beta until it will output the Final OS12.
Anyway I have got from my non rooted phone the LogCat.
andrea7376 said:
Hi, thanks for your support,
first of all... my symptom are: the bluetooth connect to my hearing aid through the Hearing aid helper in the settings but there don't show nothing connected, but from this point ahead, I can't hear nothing from the phone and no one can hear me through the mic in a call, for this reason I thought it's the same bug, what do you think?
The problem is that I don't have the phone rooted yet, also it's coming the first open beta OS12 for the nord 2, even if it's for the indian version, if it will work I would get a try, but if it is not , I'm will stuck with that beta until it will output the Final OS12.
Anyway I have got from my non rooted phone the LogCat.
Click to expand...
Click to collapse
It definitely does sound like the same issue!
Cynically, I think it's very unlikely OnePlus will get it working with the OxygenOS 12 beta - they don't care about anything besides whatever current flagship is. Honestly, given my experiences with my own OP7Pro I wouldn't dare to install a OnePlus beta; even their actual releases are barely fit to be called betas.
Your logcat output doesn't seem to have the line specifying the mixer_paths file. You need to restart your phone with it already connected to your PC, since the line appears right at the start while it's booting up, and I think it gets flooded out of the logcat log very soon after the phone has booted up. You definitely don't need a rooted phone to get this info - my own phone's not rooted.
Here's what I did:
Connect phone to PC, get ADB connected and make sure that the phone is set to always allow USB debugging from this PC.
Restart phone.
As soon as the computer registered the phone as disconnected (I was going by the "USB device disconnected" sound but if you're deaf or hard of hearing I think it's when the screen has gone black), I started logcat piped through grep. (I'll explain that last bit in a sec)
ADB should wait for a device to connect.
Around when the OnePlus bootup animation starts, the phone should connect to the computer and almost immediately you should get a line from logcat.
If you're using Windows, this Powershell command will filter logcat output and it'll just output the line you need:
Code:
adb logcat | Select-String 'mixer_paths'
If you're using Linux (or MacOS, probably), you can use grep instead of Select-String:
Code:
adb logcat | grep 'mixer_paths'
The output line you're looking for should look like this (generated from my OP7Pro):
Code:
04-27 14:36:30.932 907 969 D msm8974_platform: platform_init: Loading mixer file: /vendor/etc/mixer_paths_tavil.xml
So in my case, you can see the file I'm looking for is /vendor/etc/mixer_paths_tavil.xml and I can pull it from the device using ADB:
Code:
adb pull /vendor/etc/mixer_paths_tavil.xml
The mixer file your device loads will almost certainly be called something different, but obviously just replace the "tavil" bit with whatever your one is called. If you post that XML file, I'll try and fix it and put the fixed version into a Magisk module for you.
Note: If your file is called mixer_paths_lagoonqrd.xml then that's the same as the Nord CE so the Magisk module I already posted should work for you.
Bad news,
There isn' that file, and of course isn't called from the boot process.
I have got the all the boot log, but i don't know if there are sensible data inside, and anyway even if there aren't I would send to you directly.
I'm contacting you in private.
hi Qualx ,
you can help me for the the Hearing aid , i have onePlus5T android 10 OxygenOS 10.0.1 , root with twrp and magisk.
Thanks a lot ( sorry for my bad english )
Hi Qualx,
thanks for adding instructions on how to extract the mixer_paths file. I've attached mine from my OnePlus 6 running crDroid Android 12. I tried copy-pasting the 3 hearing-aid entries to the file, re-zipping the magisk module with my modified .xml and installing the module, but had no difference in functionality. Could you take a look at the original file and work your magic?
Many thanks!
Qualx said:
UPDATE: I made it work! I'll add a reply below.
This might be a bit of a stretch, but I don't suppose anyone has managed to get bluetooth hearing aids (that support the ASHA protocol) working properly on this phone, either with OxygenOS or an aftermarket mod? I'm at my wits' end trying to work out why my mum's aren't working for calls while media audio is completely fine.
Stuff we've tried:
I've tested her hearing aids on my own OnePlus 7 Pro and they work absolutely perfectly. Media audio is fine, call audio is fine.
I tried looking at her phone's logcat output, from vanilla OxygenOS, and there were a *lot* of exceptions being thrown from the BluetoothAdapter constructor, from all sorts of apps. It seems that the static getDefaultAdapter() method was constructing a BluetoothAdapter incorrectly, which implied it was an OxygenOS bug.
And so we've just installed the LineageOS build from here, which I was certain would work - no joy. The issue is exactly the same; when the hearing aids are selected as the output device, no sound comes out of them, and the phone's microphone is disabled. With my own phone, it (correctly) uses the phone's microphone as the audio input.
Since media audio is fine, I presume it's not a hardware problem with the bluetooth adapter in the phone? But since the hearing aids work fine with my phone, running vanilla OxygenOS, it can't be an issue with the hearing aids, and since LineageOS fails in exactly the same way as OxygenOS, it surely can't be an issue with the operating system. I'm really out of ideas.
Click to expand...
Click to collapse
Hello, recently after 5 years of using the hearing aid, took a new one for testing, with bluetooth function. Oticon hearing aid. It suits me very well, but there is a small but, Audio Sharing does not work on my phone Xiaomi Redmi 8 Note Pro. My android version 10.0 and bluetooth version 5.0, all as required. I have read the forum and found out that changing the operating system on the phone can help, but I don't know what exactly needs to be done. I plan to try putting ArrowOS and see if ASHA will be supported.
harturicko said:
Hello, recently after 5 years of using the hearing aid, took a new one for testing, with bluetooth function. Oticon hearing aid. It suits me very well, but there is a small but, Audio Sharing does not work on my phone Xiaomi Redmi 8 Note Pro. My android version 10.0 and bluetooth version 5.0, all as required. I have read the forum and found out that changing the operating system on the phone can help, but I don't know what exactly needs to be done. I plan to try putting ArrowOS and see if ASHA will be supported.
Click to expand...
Click to collapse
Hi, most success I have noticed are
ported OOS 11 ROM if available for your device
if not available you need to try with Android 12/13 custom ROM(s). [i prefer A13]
Please note its just not ROM which need ASHA feature enabled but also config needs to be set in source Device tree (Device specific configs to enable BLE options).
Also most imp hearing aid option dont appear under Accessibility until and unless you enabled the Bluetooth meaning if BT is turned off then option will disappear automatically and you dont find it anywhere.. turn-on then it will come under Accessibility.
Please go thru this link, recently I helped few to get the Audio streaming fixed.
hi @Qualx ,
i send message but no answer.
Hi, I have a OnePlus 6 and tried to modify the mixer file, but it doesn't work.
There is no sound when calling.
How do you know what to put in the path entries?
Edit: The file (mixer_paths_tavil.xml) won't attach. So here is the first part of the file. I hope that is enough to get the necessary info
Spoiler: mixer_paths_tavil.xml
XML:
<?xml version="1.0" encoding="ISO-8859-1"?>
<!-- Copyright (c) 2016-2018, The Linux Foundation. All rights reserved. -->
<!-- -->
<!-- Redistribution and use in source and binary forms, with or without -->
<!-- modification, are permitted provided that the following conditions are -->
<!-- met: -->
<!-- * Redistributions of source code must retain the above copyright -->
<!-- notice, this list of conditions and the following disclaimer. -->
<!-- * Redistributions in binary form must reproduce the above -->
<!-- copyright notice, this list of conditions and the following -->
<!-- disclaimer in the documentation and/or other materials provided -->
<!-- with the distribution. -->
<!-- * Neither the name of The Linux Foundation nor the names of its -->
<!-- contributors may be used to endorse or promote products derived -->
<!-- from this software without specific prior written permission. -->
<!-- -->
<!-- THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED -->
<!-- WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF -->
<!-- MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT -->
<!-- ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS -->
<!-- BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR -->
<!-- CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF -->
<!-- SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR -->
<!-- BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, -->
<!-- OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN -->
<!-- IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. -->
<mixer>
<!-- These are the initial mixer settings -->
<ctl name="Voice Rx Device Mute" id="0" value="0" />
<ctl name="Voice Rx Device Mute" id="1" value="-1" />
<ctl name="Voice Rx Device Mute" id="2" value="20" />
<ctl name="Voice Tx Mute" id="0" value="0" />
<ctl name="Voice Tx Mute" id="1" value="-1" />
<ctl name="Voice Tx Mute" id="2" value="500" />
<ctl name="Voice Rx Gain" id="0" value="0" />
<ctl name="Voice Rx Gain" id="1" value="-1" />
<ctl name="Voice Rx Gain" id="2" value="20" />
<ctl name="Voice Sidetone Enable" value="0" />
<ctl name="Voip Tx Mute" id="0" value="0" />
<ctl name="Voip Tx Mute" id="1" value="500" />
<ctl name="Voip Rx Gain" id="0" value="0" />
<ctl name="Voip Rx Gain" id="1" value="20" />
<ctl name="Voip Mode Config" value="12" />
<ctl name="Voip Rate Config" value="0" />
<ctl name="Voip Evrc Min Max Rate Config" id="0" value="1" />
<ctl name="Voip Evrc Min Max Rate Config" id="1" value="4" />
<ctl name="Voip Dtx Mode" value="0" />
<ctl name="TTY Mode" value="OFF" />
<ctl name="SLIMBUS_0_RX Port Mixer SLIM_0_TX" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia8" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="SLIMBUS_6_RX Port Mixer SLIM_0_TX" value="0" />
<ctl name="SLIMBUS_4_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="SLIMBUS_4_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="MultiMedia5 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia5 Mixer AFE_PCM_TX" value="0" />
<ctl name="MultiMedia5 Mixer SLIM_8_TX" value="0" />
<ctl name="MultiMedia5 Mixer SLIM_7_TX" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_4_TX" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_7_TX" value="0" />
<ctl name="MultiMedia8 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia8 Mixer SLIM_4_TX" value="0" />
<ctl name="MultiMedia8 Mixer SLIM_7_TX" value="0" />
<ctl name="MultiMedia10 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia10 Mixer SLIM_7_TX" value="0" />
<ctl name="MultiMedia10 Mixer AFE_PCM_TX" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia1" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia2" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia3" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia4" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia5" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia6" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia7" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia8" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia9" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia10" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia11" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia12" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia13" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia14" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia15" value="0" />
<ctl name="DISPLAY_PORT Mixer MultiMedia16" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia3" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia3" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia8" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia8" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia8" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="SLIMBUS_5_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="SLIMBUS_2_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="SLIMBUS_6_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia3" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia8" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="USB_AUDIO_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="MultiMedia1 Mixer USB_AUDIO_TX" value="0" />
<ctl name="MultiMedia2 Mixer USB_AUDIO_TX" value="0" />
<ctl name="MultiMedia5 Mixer USB_AUDIO_TX" value="0" />
<ctl name="MultiMedia8 Mixer USB_AUDIO_TX" value="0" />
<ctl name="MultiMedia10 Mixer USB_AUDIO_TX" value="0" />
<!-- #ifdef VENDOR_EDIT-->
<!-- #if OP_FEATURE_MM_RECORDING_SCREEN == 1-->
<!-- [email protected], 2019/07/13, add for screen record -->
<ctl name="MultiMedia1 Mixer AFE_LOOPBACK_TX" value="0" />
<ctl name="AUDIO_REF_EC_UL1 MUX" value="ZERO" />
<ctl name="EC Reference Channels" value="One" />
<ctl name="EC Reference Bit Format" value="S16_LE" />
<ctl name="EC Reference SampleRate" value="48000" />
<ctl name="USB_TX Channels" value="One" />
<ctl name="AFE_LOOPBACK_TX Channels" value="One" />
<ctl name="MultiMedia1 Channels" value="1" />
<ctl name="MultiMedia1 Channel Rule" value="2" />
<ctl name="MultiMedia1 Output Channel1" value="0 0" />
<ctl name="MultiMedia1 Channel Mixer" value="Enable" />
<ctl name="MultiMedia1 Channel1" value="USB_TX" />
<ctl name="MultiMedia1 Channel2" value="AFE_LOOPBACK_TX" />
<!-- #endif OP_FEATURE_MM_RECORDING_SCREEN-->
<!-- #endif VENDOR_EDIT-->
<ctl name="MultiMedia6 Mixer SLIM_0_TX" value="0" />
<ctl name="SLIM_2_RX Format" value="UNPACKED" />
<ctl name="SLIM_2_RX SampleRate" value="KHZ_48" />
<ctl name="SLIM_5_RX SampleRate" value="KHZ_44P1" />
<ctl name="SLIM_0_RX Channels" value="One" />
<ctl name="SLIM_5_RX Channels" value="One" />
<ctl name="SLIM_6_RX Channels" value="One" />
<ctl name="SLIM_2_RX Channels" value="One" />
<ctl name="SLIM_0_TX Channels" value="One" />
<ctl name="SLIM_1_TX Channels" value="One" />
<ctl name="AIF1_CAP Mixer SLIM TX9" value="0"/>
<ctl name="AIF1_CAP Mixer SLIM TX8" value="0"/>
<ctl name="AIF1_CAP Mixer SLIM TX7" value="0" />
<ctl name="AIF1_CAP Mixer SLIM TX6" value="0" />
<ctl name="AIF1_CAP Mixer SLIM TX5" value="0"/>
<ctl name="AIF1_CAP Mixer SLIM TX4" value="0" />
<ctl name="AIF1_CAP Mixer SLIM TX3" value="0"/>
<ctl name="AIF1_CAP Mixer SLIM TX2" value="0" />
<ctl name="AIF1_CAP Mixer SLIM TX1" value="0"/>
<ctl name="AIF1_CAP Mixer SLIM TX0" value="0"/>
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIM0_RX_VI_FB_LCH_MUX" value="ZERO" />
<ctl name="SLIM0_RX_VI_FB_RCH_MUX" value="ZERO" />
<ctl name="VI_FEED_TX Channels" value="Two" />
<ctl name="AIF4_VI Mixer SPKR_VI_1" value="0" />
<ctl name="AIF4_VI Mixer SPKR_VI_2" value="0" />
<ctl name="SLIM_4_TX Format" value="UNPACKED" />
<ctl name="AANC_SLIM_0_RX MUX" value="ZERO" />
<!-- HFP start -->
<ctl name="HFP_PRI_AUX_UL_HL Switch" value="0" />
<ctl name="SLIMBUS_0_RX Port Mixer SLIM_7_TX" value="0" />
<!-- HFP end -->
<!-- echo reference -->
<ctl name="AUDIO_REF_EC_UL1 MUX" value="None" />
<!-- usb headset -->
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia2" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="MultiMedia1 Mixer AFE_PCM_TX" value="0" />
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia5" value="0" />
<!-- usb headset end -->
<!-- fm -->
<ctl name="SLIMBUS_8 LOOPBACK Volume" value="0" />
<ctl name="SLIMBUS_0_RX Port Mixer SLIM_8_TX" value="0" />
<ctl name="SLIMBUS_DL_HL Switch" value="0" />
<ctl name="SLIMBUS_6_RX Port Mixer SLIM_8_TX" value="0" />
<ctl name="SLIMBUS6_DL_HL Switch" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_8_TX" value="0" />
<ctl name="MultiMedia2 Mixer SLIM_8_TX" value="0" />
<!-- fm end -->
<!-- Multimode Voice1 -->
<ctl name="SLIM_0_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="SLIM_6_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="VoiceMMode1_Tx Mixer SLIM_0_TX_MMode1" value="0" />
<!-- Multimode Voice1 BTSCO -->
<ctl name="SLIM_7_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="VoiceMMode1_Tx Mixer SLIM_7_TX_MMode1" value="0" />
<!-- Multimode Voice1 USB headset -->
<ctl name="AFE_PCM_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="VoiceMMode1_Tx Mixer AFE_PCM_TX_MMode1" value="0" />
<ctl name="USB_AUDIO_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="VoiceMMode1_Tx Mixer USB_AUDIO_TX_MMode1" value="0" />
<!-- Multimode Voice1 Display-Port -->
<ctl name="DISPLAY_PORT_RX_Voice Mixer VoiceMMode1" value="0" />
<!-- Miltimode Voice1 end-->
<!-- Multimode Voice2 -->
<ctl name="SLIM_0_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="SLIM_6_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="VoiceMMode2_Tx Mixer SLIM_0_TX_MMode2" value="0" />
<!-- Multimode Voice2 BTSCO -->
<ctl name="SLIM_7_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="VoiceMMode2_Tx Mixer SLIM_7_TX_MMode2" value="0" />
<!-- Multimode Voice2 USB headset -->
<ctl name="AFE_PCM_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="VoiceMMode2_Tx Mixer AFE_PCM_TX_MMode2" value="0" />
<ctl name="USB_AUDIO_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="VoiceMMode2_Tx Mixer USB_AUDIO_TX_MMode2" value="0" />
<!-- Multimode Voice2 Display-Port -->
<ctl name="DISPLAY_PORT_RX_Voice Mixer VoiceMMode2" value="0" />
<!-- Multimode Voice2 end-->
<!-- Voice external ec. reference -->
<ctl name="VOC_EXT_EC MUX" value="NONE" />
<ctl name="AIF3_CAP Mixer SLIM TX1" value="0" />
<ctl name="AIF3_CAP Mixer SLIM TX2" value="0" />
<!-- Voice external ec. reference end -->
<!-- RT Proxy Cal -->
<ctl name="RT_PROXY_1_RX SetCalMode" value="CAL_MODE_NONE" />
<ctl name="RT_PROXY_1_TX SetCalMode" value="CAL_MODE_NONE" />
<!-- RT Proxy Cal end -->
<!-- Incall Recording -->
<ctl name="MultiMedia1 Mixer VOC_REC_UL" value="0" />
<ctl name="MultiMedia1 Mixer VOC_REC_DL" value="0" />
<ctl name="MultiMedia8 Mixer VOC_REC_UL" value="0" />
<ctl name="MultiMedia8 Mixer VOC_REC_DL" value="0" />
<!-- Incall Recording End -->
<!-- Incall Music -->
<ctl name="Incall_Music Audio Mixer MultiMedia2" value="0" />
<!-- Incall Music End -->
<!-- compress-voip-call start -->
<ctl name="SLIM_0_RX_Voice Mixer Voip" value="0" />
<ctl name="SLIM_6_RX_Voice Mixer Voip" value="0" />
<ctl name="Voip_Tx Mixer SLIM_0_TX_Voip" value="0" />
<ctl name="SLIM_7_RX_Voice Mixer Voip" value="0" />
<ctl name="Voip_Tx Mixer SLIM_7_TX_Voip" value="0" />
<ctl name="AFE_PCM_RX_Voice Mixer Voip" value="0" />
<ctl name="Voip_Tx Mixer AFE_PCM_TX_Voip" value="0" />
<ctl name="USB_AUDIO_RX_Voice Mixer Voip" value="0" />
<ctl name="Voip_Tx Mixer USB_AUDIO_TX_Voip" value="0" />
<!-- compress-voip-call end-->
<!-- Audio BTSCO -->
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="SLIMBUS_7_RX Audio Mixer MultiMedia6" value="0" />
<ctl name="MultiMedia1 Mixer SLIM_7_TX" value="0" />
<!-- audio record compress-->
<ctl name="MultiMedia8 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia8 Mixer SLIM_7_TX" value="0" />
<ctl name="MultiMedia8 Mixer AFE_PCM_TX" value="0" />
<!-- audio record compress end-->
<!-- split a2dp -->
<ctl name="BT SampleRate" value="KHZ_8" />
<ctl name="AFE Input Channels" value="Zero" />
<ctl name="SLIM7_RX ADM Channels" value="Zero" />
<!-- split a2dp end-->
<!-- ADSP testfwk -->
<ctl name="SLIMBUS_DL_HL Switch" value="0" />
<ctl name="SLIMBUS6_DL_HL Switch" value="0" />
<!-- ADSP testfwk end-->
<ctl name="AFE_PCM_RX Audio Mixer MultiMedia3" value="0" />
<!-- Codec controls -->
<!-- WSA controls -->
<ctl name="SpkrLeft COMP Switch" value="0" />
<ctl name="SpkrRight COMP Switch" value="0" />
<ctl name="SpkrLeft BOOST Switch" value="0" />
<ctl name="SpkrRight BOOST Switch" value="0" />
<ctl name="SpkrLeft VISENSE Switch" value="0" />
<ctl name="SpkrRight VISENSE Switch" value="0" />
<ctl name="SpkrLeft SWR DAC_Port Switch" value="0" />
<ctl name="SpkrRight SWR DAC_Port Switch" value="0" />
<ctl name="SpkrLeft WSA PA Gain" value="G_0_DB" />
<!-- Volume controls -->
<ctl name="LINEOUT1 Volume" value="13" />
<ctl name="LINEOUT2 Volume" value="13" />
<ctl name="HPHL Volume" value="20" />
<ctl name="HPHR Volume" value="20" />
<ctl name="EAR PA Gain" value="G_6_DB" />
<ctl name="EAR SPKR PA Gain" value="G_DEFAULT" />
<ctl name="RX0 Digital Volume" value="84" />
<ctl name="RX1 Digital Volume" value="84" />
<ctl name="RX2 Digital Volume" value="84" />
<ctl name="RX3 Digital Volume" value="84" />
<ctl name="RX4 Digital Volume" value="84" />
<ctl name="RX5 Digital Volume" value="84" />
<ctl name="RX6 Digital Volume" value="84" />
<ctl name="RX7 Digital Volume" value="84" />
<ctl name="ADC1 Volume" value="12" />
<ctl name="ADC2 Volume" value="12" />
<ctl name="ADC3 Volume" value="12" />
<ctl name="ADC4 Volume" value="12" />
<ctl name="DEC0 Volume" value="84" />
<ctl name="DEC1 Volume" value="84" />
<ctl name="DEC2 Volume" value="84" />
<ctl name="DEC3 Volume" value="84" />
<ctl name="DEC4 Volume" value="84" />
<ctl name="DEC5 Volume" value="84" />
<ctl name="DEC6 Volume" value="84" />
<ctl name="DEC7 Volume" value="84" />
<ctl name="DEC8 Volume" value="84" />
<!-- Compander controls -->
<ctl name="COMP1 Switch" value="1" />
<ctl name="COMP2 Switch" value="1" />
<ctl name="COMP7 Switch" value="0" />
<ctl name="COMP8 Switch" value="0" />
<!-- ADC, DMIC and AMIC controls -->
<ctl name="ADC MUX0" value="AMIC" />
<ctl name="ADC MUX1" value="AMIC" />
<ctl name="ADC MUX2" value="AMIC" />
<ctl name="ADC MUX3" value="AMIC" />
<ctl name="ADC MUX4" value="AMIC" />
<ctl name="ADC MUX5" value="AMIC" />
<ctl name="ADC MUX6" value="AMIC" />
<ctl name="ADC MUX7" value="AMIC" />
<ctl name="ADC MUX8" value="AMIC" />
<ctl name="ADC MUX10" value="AMIC" />
<ctl name="ADC MUX11" value="AMIC" />
<ctl name="ADC MUX12" value="AMIC" />
<ctl name="ADC MUX13" value="AMIC" />
<ctl name="DMIC MUX0" value="ZERO" />
<ctl name="DMIC MUX1" value="ZERO" />
<ctl name="DMIC MUX2" value="ZERO" />
<ctl name="DMIC MUX3" value="ZERO" />
<ctl name="DMIC MUX4" value="ZERO" />
<ctl name="DMIC MUX5" value="ZERO" />
<ctl name="DMIC MUX6" value="ZERO" />
<ctl name="DMIC MUX7" value="ZERO" />
<ctl name="DMIC MUX8" value="ZERO" />
<ctl name="DMIC MUX10" value="ZERO" />
<ctl name="DMIC MUX11" value="ZERO" />
<ctl name="DMIC MUX12" value="ZERO" />
<ctl name="DMIC MUX13" value="ZERO" />
<ctl name="AMIC MUX0" value="ZERO" />
<ctl name="AMIC MUX1" value="ZERO" />
<ctl name="AMIC MUX2" value="ZERO" />
<ctl name="AMIC MUX3" value="ZERO" />
<ctl name="AMIC MUX4" value="ZERO" />
<ctl name="AMIC MUX5" value="ZERO" />
<ctl name="AMIC MUX6" value="ZERO" />
<ctl name="AMIC MUX7" value="ZERO" />
<ctl name="AMIC MUX8" value="ZERO" />
<ctl name="AMIC MUX10" value="ZERO" />
<ctl name="AMIC MUX11" value="ZERO" />
<ctl name="AMIC MUX12" value="ZERO" />
<ctl name="AMIC MUX13" value="ZERO" />
<ctl name="AMIC4_5 SEL" value="AMIC4" />
<!-- CDC_IF and SLIM controls -->
<ctl name="SLIM RX0 MUX" value="ZERO" />
<ctl name="SLIM RX1 MUX" value="ZERO" />
<ctl name="SLIM RX2 MUX" value="ZERO" />
<ctl name="SLIM RX3 MUX" value="ZERO" />
<ctl name="SLIM RX4 MUX" value="ZERO" />
<ctl name="SLIM RX5 MUX" value="ZERO" />
<ctl name="SLIM RX6 MUX" value="ZERO" />
<ctl name="SLIM RX7 MUX" value="ZERO" />
<ctl name="CDC_IF RX0 MUX" value="SLIM RX0" />
<ctl name="CDC_IF RX1 MUX" value="SLIM RX1" />
<ctl name="CDC_IF RX2 MUX" value="SLIM RX2" />
<ctl name="CDC_IF RX3 MUX" value="SLIM RX3" />
<ctl name="CDC_IF RX4 MUX" value="SLIM RX4" />
<ctl name="CDC_IF RX5 MUX" value="SLIM RX5" />
<ctl name="CDC_IF RX6 MUX" value="SLIM RX6" />
<ctl name="CDC_IF RX7 MUX" value="SLIM RX7" />
<ctl name="CDC_IF TX0 MUX" value="ZERO" />
<ctl name="CDC_IF TX1 MUX" value="ZERO" />
<ctl name="CDC_IF TX2 MUX" value="ZERO" />
<ctl name="CDC_IF TX3 MUX" value="ZERO" />
<ctl name="CDC_IF TX4 MUX" value="ZERO" />
<ctl name="CDC_IF TX5 MUX" value="ZERO" />
<ctl name="CDC_IF TX6 MUX" value="ZERO" />
<ctl name="CDC_IF TX7 MUX" value="ZERO" />
<ctl name="CDC_IF TX8 MUX" value="ZERO" />
<ctl name="CDC_IF TX9 MUX" value="ZERO" />
<ctl name="CDC_IF TX10 MUX" value="ZERO" />
<ctl name="CDC_IF TX13 MUX" value="ZERO" />
<!-- Interpolator chain controls -->
<ctl name="RX INT0_1 MIX1 INP0" value="ZERO" />
<ctl name="RX INT0_1 MIX1 INP1" value="ZERO" />
<ctl name="RX INT0_1 MIX1 INP2" value="ZERO" />
<ctl name="RX INT1_1 MIX1 INP0" value="ZERO" />
<ctl name="RX INT1_1 MIX1 INP1" value="ZERO" />
<ctl name="RX INT1_1 MIX1 INP2" value="ZERO" />
<ctl name="RX INT2_1 MIX1 INP0" value="ZERO" />
<ctl name="RX INT2_1 MIX1 INP1" value="ZERO" />
<ctl name="RX INT2_1 MIX1 INP2" value="ZERO" />
<ctl name="RX INT7_1 MIX1 INP0" value="ZERO" />
<ctl name="RX INT7_1 MIX1 INP1" value="ZERO" />
<ctl name="RX INT7_1 MIX1 INP2" value="ZERO" />
<ctl name="RX INT8_1 MIX1 INP0" value="ZERO" />
<ctl name="RX INT8_1 MIX1 INP1" value="ZERO" />
<ctl name="RX INT8_1 MIX1 INP2" value="ZERO" />
<ctl name="RX INT0_2 MUX" value="ZERO" />
<ctl name="RX INT1_2 MUX" value="ZERO" />
<ctl name="RX INT2_2 MUX" value="ZERO" />
<ctl name="RX INT7_2 MUX" value="ZERO" />
<ctl name="RX INT8_2 MUX" value="ZERO" />
<ctl name="RX INT1_1 NATIVE MUX" value="OFF" />
<ctl name="RX INT2_1 NATIVE MUX" value="OFF" />
<ctl name="RX INT1_2 NATIVE MUX" value="OFF" />
<ctl name="RX INT2_2 NATIVE MUX" value="OFF" />
<ctl name="ASRC0 MUX" value="ZERO" />
<ctl name="ASRC1 MUX" value="ZERO" />
<ctl name="RX INT1 SEC MIX HPHL Switch" value="0" />
<ctl name="RX INT2 SEC MIX HPHR Switch" value="0" />
<ctl name="DSD_L IF MUX" value="ZERO" />
<ctl name="DSD_R IF MUX" value="ZERO" />
<ctl name="RX INT1 MIX3 DSD HPHL Switch" value="0" />
<ctl name="RX INT2 MIX3 DSD HPHR Switch" value="0" />
<ctl name="RX INT0 DEM MUX" value="CLSH_DSM_OUT" />
<ctl name="RX INT1 DEM MUX" value="CLSH_DSM_OUT" />
<ctl name="RX INT2 DEM MUX" value="CLSH_DSM_OUT" />
<!-- echo reference -->
<ctl name="AUDIO_REF_EC_UL1 MUX" value="None" />
<ctl name="AUDIO_REF_EC_UL5 MUX" value="None" />
<ctl name="AUDIO_REF_EC_UL8 MUX" value="None" />
<!-- Headphone Default mode - uLP -->
<ctl name="RX HPH Mode" value="CLS_H_ULP" />
<ctl name="ASRC0 Output Mode" value="INT" />
<ctl name="ASRC1 Output Mode" value="INT" />
<!-- IIR/voice anc -->
<ctl name="IIR0 Band1" id ="0" value="268435456" />
<ctl name="IIR0 Band1" id ="1" value="0" />
<ctl name="IIR0 Band1" id ="2" value="0" />
<ctl name="IIR0 Band1" id ="3" value="0" />
<ctl name="IIR0 Band1" id ="4" value="0" />
<ctl name="IIR0 Band2" id ="0" value="268435456" />
<ctl name="IIR0 Band2" id ="1" value="0" />
<ctl name="IIR0 Band2" id ="2" value="0" />
<ctl name="IIR0 Band2" id ="3" value="0" />
<ctl name="IIR0 Band2" id ="4" value="0" />
<ctl name="IIR0 Band3" id ="0" value="268435456" />
<ctl name="IIR0 Band3" id ="1" value="0" />
<ctl name="IIR0 Band3" id ="2" value="0" />
<ctl name="IIR0 Band3" id ="3" value="0" />
<ctl name="IIR0 Band3" id ="4" value="0" />
<ctl name="IIR0 Band4" id ="0" value="268435456" />
<ctl name="IIR0 Band4" id ="1" value="0" />
<ctl name="IIR0 Band4" id ="2" value="0" />
<ctl name="IIR0 Band4" id ="3" value="0" />
<ctl name="IIR0 Band4" id ="4" value="0" />
<ctl name="IIR0 Band5" id ="0" value="268435456" />
<ctl name="IIR0 Band5" id ="1" value="0" />
<ctl name="IIR0 Band5" id ="2" value="0" />
<ctl name="IIR0 Band5" id ="3" value="0" />
<ctl name="IIR0 Band5" id ="4" value="0" />
<ctl name="IIR0 Enable Band1" value="0" />
<ctl name="IIR0 Enable Band2" value="0" />
<ctl name="IIR0 Enable Band3" value="0" />
<ctl name="IIR0 Enable Band4" value="0" />
<ctl name="IIR0 Enable Band5" value="0" />
<ctl name="IIR0 INP0 Volume" value="54" />
<ctl name="IIR0 INP0 MUX" value="ZERO" />
<ctl name="IIR0 INP1 MUX" value="ZERO" />
<ctl name="IIR0 INP2 MUX" value="ZERO" />
<ctl name="IIR1 INP0 MUX" value="ZERO" />
<ctl name="IIR1 INP1 MUX" value="ZERO" />
<ctl name="IIR1 INP2 MUX" value="ZERO" />
<!-- anc related -->
<ctl name="ANC Slot" value="0" />
<ctl name="ANC Function" value="OFF" />
<ctl name="ANC0 FB MUX" value="ZERO" />
<ctl name="ANC1 FB MUX" value="ZERO" />
<ctl name="ANC OUT EAR Enable Switch" value="0" />
<ctl name="ANC OUT EAR SPKR Enable Switch" value="0" />
<ctl name="ANC SPKR PA Enable Switch" value="0" />
<ctl name="ANC OUT HPHL Enable Switch" value="0" />
<ctl name="ANC OUT HPHR Enable Switch" value="0" />
<!-- Codec controls end -->
<!-- mixer control to disable lowlatency qos voting -->
<ctl name="MultiMedia5_RX QOS Vote" value="Disable" />
<!-- mixer control to disable lowlatency qos voting end -->
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia1" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia3" value="0" />
<ctl name="SLIMBUS_0_RX Audio Mixer MultiMedia7" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia10" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia11" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia12" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia13" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia14" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia15" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia16" value="0" />
<ctl name="QUAT_MI2S_RX_Voice Mixer CSVoice" value="0" />
<ctl name="QUAT_MI2S_RX_Voice Mixer Voice2" value="0" />
<ctl name="QUAT_MI2S_RX_Voice Mixer VoLTE" value="0" />
<ctl name="QUAT_MI2S_RX_Voice Mixer Voip" value="0" />
<ctl name="QUAT_MI2S_RX_Voice Mixer VoWLAN" value="0" />
<ctl name="QUAT_MI2S_RX_Voice Mixer VoiceMMode1" value="0" />
<ctl name="QUAT_MI2S_RX_Voice Mixer VoiceMMode2" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia4" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia5" value="0" />
<ctl name="QUAT_MI2S_RX Audio Mixer MultiMedia7" value="0" />
<!-- defaults for mmap record -->
<ctl name="MultiMedia16 Mixer SLIM_0_TX" value="0" />
<ctl name="MultiMedia16 Mixer SLIM_7_TX" value="0" />
<ctl name="MultiMedia16 Mixer SLIM_8_TX" value="0" />
<ctl name="MultiMedia16 Mixer USB_AUDIO_TX" value="0" />
<ctl name="mono Profile" value="MUSIC_48000" />
<!-- These are audio route (FE to BE) specific mixer settings -->
<path name="gsm-mode">
<ctl name="GSM mode Enable" value="ON" />
</path>
<path name="echo-reference">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="QUAT_MI2S_TX" />
</path>
<path name="echo-reference-skype quat_i2s">
<ctl name="AUDIO_REF_EC_UL8 MUX" value="QUAT_MI2S_TX" />
</path>
<path name="echo-reference quat_i2s">
<ctl name="AUDIO_REF_EC_UL10 MUX" value="QUAT_MI2S_TX" />
</path>
<path name="echo-reference headphones">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_6_RX" />
</path>
<path name="echo-reference display-port">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="DISPLAY_PORT" />
</path>
<path name="echo-reference headphones-44.1">
<ctl name="AUDIO_REF_EC_UL1 MUX" value="SLIM_6_RX" />
</path>
Seems I'm in the same boat. Running LineageOS 19.1 on my OP6. It seems to connect fine but no streaming, even when the BT hearing aids are selected/active as output. Sound is sent to the phone speaker instead of the hearing aid.
here's the pastebin of my mixer_paths_tavil.xml: https://pastebin.pl/view/0c6be8b8
Samms said:
Seems I'm in the same boat. Running LineageOS 19.1 on my OP6. It seems to connect fine but no streaming, even when the BT hearing aids are selected/active as output. Sound is sent to the phone speaker instead of the hearing aid.
here's the pastebin of my mixer_paths_tavil.xml: https://pastebin.pl/view/0c6be8b8
Click to expand...
Click to collapse
Finally managed to get it to work. Seems A12 just doesn't like OP6 when it comes to ASHA.
I just flashed LineageOS 20 (A13) and I can now stream audio to my hearing aids (Oticon More 2).
[ROM][OFFICIAL][enchilada][12] LineageOS 19
LineageOS is a free, community built, aftermarket firmware distribution of Android 12, which is designed to increase performance and reliability over stock Android for your device. LineageOS is based on the Android Open Source Project with extra...
forum.xda-developers.com
Samms said:
Finally managed to get it to work. Seems A12 just doesn't like OP6 when it comes to ASHA.
I just flashed LineageOS 20 (A13) and I can now stream audio to my hearing aids (Oticon More 2).
[ROM][OFFICIAL][enchilada][12] LineageOS 19
LineageOS is a free, community built, aftermarket firmware distribution of Android 12, which is designed to increase performance and reliability over stock Android for your device. LineageOS is based on the Android Open Source Project with extra...
forum.xda-developers.com
Click to expand...
Click to collapse
But can you make and receive calls?
I updated to LOS20 today, and music streaming works.
Calls are still mute (as is the phone's ear piece, only sound during calls is from speaker).
lord high executioner said:
But can you make and receive calls?
I updated to LOS20 today, and music streaming works.
Calls are still mute (as is the phone's ear piece, only sound during calls is from speaker).
Click to expand...
Click to collapse
No luck with that yet unfortunately.
Samms said:
No luck with that yet unfortunately.
Click to expand...
Click to collapse
D**
It shouldn't be that hard, now that media is played.
Since the input has to be from phone anyway, the mixer just needs to route phone output to the hearing aids -- which, in fact, the dialer pretends to do: I can select the hearing aids, but no audio (and everything gets rather sluggish until I switch back to speaker,which hints at high CPU usage, supported by logcat's innumerable lines of
Code:
E audio_hw_primary: start_input_stream: cannot set hw params: Invalid argument
).
I got the nagging feeling, @AmarnathNR is attempting exactly that.
Hi there, I have a Xiaomi note 11pro 5g (veux) Do you folks here think that I can try a similar approach to get my heating aids streaming Audio with the phone ..the phone streaming audio to my hearing aids like you successfully did?
I got asha protocol hearing aids somehow connected to my xiaomi note 11 pro 5g (veux) with a pixel experience extendet and also with the evolution X rom for veux.
Everything works but only calls are not possible with streaming support.
I find it strange that whatsapp calls via asha connected hearing aids are no problem with both roms, ringtones play, media play everything is nice but no phone calls ??
Any Ideas ?

Categories

Resources