[Miscellaneous Android Development] Dante63:
Hello Everyone,

I hope you all are great...

I used to make DualSpeaker SoundMods and now I sharing my knowledge, make your own SoundMod and be a Hero :cool:...

This MOD is safe as long you make sure you change permissions of the file to 644 (rw- r-- r--) & set Earpiece volume to safe limits...

Please Read:

--- Keep in mind, your

Device Kernel

has a major role for the SoundMod, in other words, Kernel is able to utilize smoothly allowing full DualSpeaker or fails at some points which gives partial DualSpeaker or completely fails which you don't get DualSpeaker at all...

---

Custom Kernels

that are modified at Sound Parts might affect my SoundMods, preventing it from Working (read Q&A)...

--- Some

SoundMods

might interfere with my MOD & a RACE is done, last one finishes wins (read Q&A)...

Kindly, Vote in the Poll (Where did you come from, How did you find this thread...?) & Rate it...

If you're going to use this MOD in your Project

please reference my Thread in your Project Thread as well Crediting...

Don't Forget to say :good: THANKS :good:

and

if you're very happy, please consider Donating to Support me, it means a lot even if it was little...​

Thread Important Posts:

Post #2 is Thread Changelog...

Post #3 is Thread Progress...

Post #4 is Q & A - SoundMod...

NOTICE: Exynos & Snapdragon Devices:

Exynos devices are easier to make due to that they use 2 mixer files, mixer_paths.xml and mixer_gains.xml, sometimes (only mixer_paths.xml)...

Kirin/Snapdragon devices takes long time since there are multiple mixer files that each phone use, unless you're lucky and it's only few like one or two mixers, yet they will require many tests, I'm willing to go that road but are you willing the same...?

[YOUTUBE]Su9Af-jrJWQ[/YOUTUBE]

I no longer take requests, but I can now assist in teaching you and everyone else how to make your own dualspeaker soundmod... If you succeed in making the dualspeaker, kindly share your work for others aside from that, this thread will contain and support more devices... All credits are yours... ​

How to Request the MOD (Please Cooperate with me):

In one Post,

Mention your device specs (Name, Model Number,

Android

and processor - EX: Samsung Galaxy Note 8, SM-N950F, Nougat 7.1.1, Exynos )...

People Please ANDROID VERSION IS VERY IMPORTANT, I can't make TWRP or MAGISK without it...

Compress all of your Mixers inside (system/etc) for Nougat, (system/vendor/etc) for Oreo, any file starting with word *mixer*.xml, name the file with Mixers-(*device model number*)-AndroidVersion (Ex: Mixers-SM-N950F-Oreo) & upload it...

Also, People Please try to name the compressed archive with your device name & android version, because of many requests, mixers are being mixed up and I have to go back to the thread verify which belongs to who, please cooperate...

OK, lately I have been forgetting who requested the MOD, Would you please also write your name in file name, so I could search the thread for you...

Notice about Mixers:

--- In rare cases, the mixers I specified are not used by the phone, to verify, rename them to .bak or remove them, if no sound is produced by the phone then you have the correct mixers else mixers are located at a different place open android terminal and type:

su
find / -name *mixer* > /sdcard/mixerpaths.txt
cat /sdcard/mixerpaths.txt

you can also view the results at "/sdcard/mixerpaths.txt",

if you're not sure which mixers, attach the mixerpaths.txt and I'll have a look and tell you possible paths...

What I'll Do?

I'll add the Mods here...

First I'll search for your device on XDA, if it exist I'll add my Mods Here,

If it doesn't exist, then I'll make a thread there and post the link here...

You'll be listed as a tester of the MOD if you stop providing feedbacks, I won't be able to proceed and thus, the MOD goes on hold and I move to another device...

I start with the devices that most likely won't take much time...

How to install?

--- You have 3 ways to install the MOD:

You manually copy the files from archive "Manual" into the path of mixers and change permissions to 644 (rw- r-- r--)...

You flash TWRP, if TWRP freezes then reboot, it means Wrong TWRP was flashed, TWRP will create a backup for your current Mixers saved in the same mixers location...

You can just install Magisk...

How to revert?

--- You have 2 ways to revert back to Original:

You manually copy the files from archive "Original" into the path of mixers and change permissions to 644 (rw- r-- r--) or if you flashed TWRP, then check if backup exists "mixername.xml.bak0", if you found it, delete "mixername.xml" and rename the "mixername.xml.bak0" to "mixername.xml" make sure permissions are still 644 (rw- r-- r--)...

You can use the TWRP file to flash the Original/Backup mixers by simply replacing/swapping the files inside it (do not touch folder META-INF)...

Normal ROMS (Use as sample)​

List of Devices Done:

Samsung Devices:

Samsung Galaxy S9/S9+ - TWRP+MAGISK - Volume Gain - Exynos & Snapdragon - ROOT ONLY

Samsung Galaxy A Series (2017) - Samsung Galaxy J3 2017 Compatible - Dual Speaker SOUNDMOD - TWRP + MAGISK - Root Only

Samsung Galaxy J3 2017 in case you missed it, visit the link above for Samsung Galaxy A Series (2017)...

GALAXY NOTE 8 - TWRP+MAGISK - DualSpeaker - Exynos & Snapdragon - ROOT ONLY

Samsung S7/S7Edge Exynox/Snapdragon (thread to be created soon) - (requested & tested by BlazingKahn35)

Google Drive: Oreo (need oreo mixers) + Nougat - Samsung S7/S7Edge - SoundMod - TWRP

DIY Volume Level:

Exynos, open mixer_gains.xml:

<path name="gain-media-ear">
<ctl name="HPOUT3L Input 1 Volume" value="23" />
<ctl name="HPOUT3L Input 2 Volume" value="23" />
</path>
<path name="gain-media-speaker">
<path name="gain-media-ear"/>
<ctl name="HPOUT3L Input 1 Volume" value="34" />
<ctl name="HPOUT3L Input 2 Volume" value="34" />
<ctl name="AIF4TX1 Input 1 Volume" value="35" />
<ctl name="AIF4TX2 Input 1 Volume" value="35" />
</path>

Samsung S8/S8+ Exynox/Snapdragon (thread to be created soon) - (requested & tested by jujomar)

Google Drive: Oreo (need oreo mixers) + Nougat - Samsung S8/S8+ - SoundMod - TWRP

Snapdragon DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="spk">
------------------
<ctl name="RX0 Digital Volume" value="90" /> <!--earpiece, default 84, safe upto 95, danger above 95-->
------------------
</path>

Samsung A Series (2016) (thread to be created soon) - (requested & tested by xpity34)

Google Drive: STOCK ROM - Samsung A SERIES 2016 - STOCK ROM - TWRP+MAGISK - DualSpeaker - ROOT ONLY

DIY Volume Level:

I believe the words speak for themselves, current values are default

<path name="gain-media-speaker">
------------------
<ctl name="Speaker Volume" value="0" /><!-- 0 db : 0, step +2 db-->
<ctl name="Earphone Volume" value="0" /><!-- 0 db : 0, step +2 db-->
</path>
<path name="gain-media-headset">
------------------
<ctl name="Headphone Volume" value="36" /><!-- 0 db : 0, step +2 db-->
</path>

Samsung J7 Pro Exynox (thread to be created soon) - (requested & tested by jluisolsito)

Google Drive: Oreo (need oreo mixers) + Nougat - Samsung J7 Pro - SoundMod - TWRP+Magisk

DIY Volume Level:

I believe the words speak for themselves

<path name="gain-media-speaker">
------------------
<ctl name="Speaker Volume" value="3" /><!-- default 0 db : 0, step +2 db-->
<ctl name="Earphone Volume" value="3" /><!-- default 0 db : 0, step +2 db-->
</path>
<path name="gain-media-headset">
------------------
<ctl name="Headphone Volume" value="36" /><!-- 0 db : 0, step +2 db-->
</path>

Samsung J7 Prime Exynox (thread to be created soon) - (requested & tested by luuphong559)

Google Drive: Oreo (need oreo mixers) + Nougat - Samsung J7 Prime - SoundMod - TWRP

DIY Volume Level:

I believe the words speak for themselves, current values are default

<path name="gain-media-speaker">
------------------
<ctl name="Speaker Volume" value="0" /><!-- 0 db : 0, step +2 db-->
<ctl name="Earphone Volume" value="0" /><!-- 0 db : 0, step +2 db-->
</path>
<path name="gain-media-headset">
------------------
<ctl name="Headphone Volume" value="36" /><!-- 0 db : 0, step +2 db-->
</path>

Samsung S5 Neo Exynox (thread to be created soon) - (requested & tested by Zapryanovv)

Google Drive: Oreo (need oreo mixers) + Nougat - Samsung S5 Neo - SoundMod - TWRP

DIY Volume Level:

I believe the words speak for themselves, current values are default

<path name="gain-media-speaker">
------------------
<ctl name="Speaker Volume" value="0" /><!-- 0 db : 0, step +2 db-->
<ctl name="Earphone Volume" value="0" /><!-- 0 db : 0, step +2 db-->
</path>
<path name="gain-media-headset">
------------------
<ctl name="Headphone Volume" value="21" /><!-- 0 db : 0, step +2 db-->
</path>

Xiaomi Devices:

Xiaomi Redmi 5 - (requested by hibiny6990)

Google Drive: Xiaomi Redmi 5 - TWRP+MAGISK - DualSpeaker - ROOT ONLY

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="speaker">
------------------
<ctl name="RX1 Digital Volume" value="84" /> <!--earpiece, default 84, safe upto 95, danger above 95-->
------------------
</path>

Xiaomi Mi5 - (Nougat) : (Nougat requested & tested by pi4a7a) - (Oreo) : (requested & tested by RatchetHacked)

Google Drive: Xiaomi Mi5 - SoundMod - TWRP + MAGISK

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="speaker">
------------------
<ctl name="RX0 Digital Volume" value="90" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
------------------
</path>

Xiaomi Mi A1 (Nougat + Oreo): (requested by laugeek57)

[MOD] Xiaomi mi A1 - MOD DualSpeaker/BuzzFix/MicFix - (TWRP + MAGISK)

Xiaomi Mi5S Plus (Nougat): (requested by danypava)

Google Drive: Xiaomi Mi5S Plus - SoundMod - TWRP + MAGISK

DIY Volume Level:

<path name="speaker">
------------------
<ctl name="RX0 Digital Volume" value="95" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
<ctl name="RX0 Mix Digital Volume" value="95" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
<ctl name="RX2 Mix Digital Volume" value="95" /> <!--speaker, default 84, safe upto 105, danger above 105-->
<ctl name="RX2 Digital Volume" value="95" /> <!--speaker, default 84, safe upto 105, danger above 105-->
<ctl name="RX3 Mix Digital Volume" value="95" /> <!--speaker, default 84, safe upto 105, danger above 105-->
<ctl name="RX3 Digital Volume" value="95" /> <!--speaker, default 84, safe upto 105, danger above 105-->
<ctl name="RX4 Digital Volume" value="95" /> <!--speaker, default 84, safe upto 105, danger above 105-->
<ctl name="RX4 Mix Digital Volume" value="95" /> <!--speaker, default 84, safe upto 105, danger above 105-->
<ctl name="RX5 Digital Volume" value="95" /> <!--speaker, default 84, safe upto 105, danger above 105-->
------------------
</path>

Xiaomi Redmi 5 Plus: (requester & tester by afznov)

Google Drive: Xiaomi Redmi 5 Plus - SoundMod - TWRP + MAGISK

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="ear">
------------------
<ctl name="RX1 Digital Volume" value="90" /> <!--earpiece, default 84, safe up-to 95, danger above 95 to 120-->
------------------
</path>

Xiaomi redmi 4: (requester & tester by srtraky) (INCOMPATIBLE, MOD CAN'T BE APPLIED)

MOD status: 16 attempts failed, the device is a very low-end, kernel either uses speaker or earpiece, mixer lacks of many lines of codes, inflexible to modify...

Sony Devices:

Sony Xperia Z3: (requester & tester by pi4a7a)

MOD Status: ABANDONED BY REQUESTER (waiting for requester to respond)

Sony Xperia XZ 1: (requester & tester by boonthongw@gmail.com)

Google Drive: Sony Xperia XZ 1 - SoundMod - TWRP + MAGISK

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="ear">
------------------
<ctl name="RX0 Digital Volume" value="84" /> <!--earpiece, default 84, safe up-to 95, danger above 95 to 120-->
------------------
</path>

Huawei Devices:

Huawei Honor 6X (Nougat): (requester & tester by sreekantt)

MOD status: Test Delay till friday...

Honor 4C CHM-U01 (Marshmallow): (requester & tester by kosmitchak)

Google Drive: Honor 4C - SoundMod - Magisk + TWRP

Honor 8 (Nougat): (requester & tester by Markxdx)

Google Drive: Honor 8 - SoundMod - Magisk + TWRP

Lenovo Devices:

Lenovo ZUK Z2 Pro (Nougat): (requester & tester by dimitar.petrunov)

[MOD] Lenovo ZUK Z2 Pro - SoundMod DualSpeaker - (TWRP + MAGISK)

Lenovo P2 - (requested & tested by merabini78)

Google Drive: Oreo (need oreo mixers) + Nougat - Samsung S8/S8+ - SoundMod - TWRP

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="ear">
------------------
<ctl name="RX1 Digital Volume" value="84" /> <!--safe upto 95, danger above 95-->
------------------
</path>

Coolpad Devices:

Note 5 (Nougat): (requester & tester by Sanket Pathania)

Google Drive: Coolpad Note 5 - SoundMod DualSpeaker - (TWRP + MAGISK)

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="speaker">
------------------
<ctl name="RX1 Digital Volume" value="84" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
------------------
</path>

OnePlus Devices:

OnePlus X (Nougat): (requester & tester by sagardakua)

Google Drive: OnePlus X - SoundMod - TWRP + MAGISK

DIY Volume Level:

Speaker Volume is not present in the mixer! and change both values in ear and speaker to have unified volume level...

<path name="ear">
------------------
<ctl name="RX1 Digital Volume" value="95" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
------------------
</path>
<path name="speaker">
<ctl name="RX1 Digital Volume" value="95" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
</path>

OnePlus 2 (Nougat + Oreo): (requester & tester by FPSUsername)

Google Drive: OnePlus 2 - SoundMod - TWRP + MAGISK

DIY Volume Level:

Speaker Volume is not present in the mixer! and change both values in ear and speaker to have unified volume level...

<path name="ear">
------------------
<ctl name="RX1 Digital Volume" value="95" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
------------------
</path>
<path name="speaker">
<ctl name="RX1 Digital Volume" value="95" /> <!--earpiece, default 85, safe upto 95, danger above 95-->
</path>

OnePlus 3/3T (Oreo): (requester & tester by theduke7)

Google Drive: OnePlus3/3T - SoundMod - TWRP + MAGISK

DIY Volume Level:

Speaker Volume isn't present in the mixers

<path name="speaker">
------------------
<ctl name="RX0 Digital Volume" value="90" /> <!--earpiece , default is 84, Safe up-to 95, beyond is DANGEROUS-->
------------------
</path>

OnePlus 5 (Oreo): (requester & tester by silvershadow)

Google Drive: OnePlus5 - SoundMod - TWRP + MAGISK

DIY Volume Level:

Requester asked for Bluetooth Volume & AUX Volume (Considered as Headphones) aside from speaker & earpiece

<path name="speaker">
------------------
<ctl name="RX0 Digital Volume" value="85" /> <!--earpiece up-to 95, beyond is DANGEROUS-->
<ctl name="RX1 Mix Digital Volume" value="85" /> <!--speaker up-to 95, beyond is DANGEROUS-->
<ctl name="RX2 Mix Digital Volume" value="85" /> <!--speaker up-to 95, beyond is DANGEROUS-->
<!--as speaker was rewritten, RX1 & RX2 are usually seen as Speaker level, if it's not noticed please report it-->
------------------<!--Commented Lines would probably not work, but you may experiment by removing "<!--" & "-->"
</path>
<path name="headphones">
------------------
<ctl name="RX1 Mix Digital Volume" value="84" /><!--usually seen as left channel, up-to 95, beyond depends on how much you hate your Ears-->
<ctl name="RX2 Mix Digital Volume" value="84" /><!--usually seen as right channel, up-to 95, beyond depends on how much you hate your Ears-->
</path>
<path name="bt-a2dp">
------------------
<ctl name="RX7 Digital Volume" value="84" /><!--usually seen as BT Volume, up-to 95, beyond depends on how much you hate your Ears-->-->
</path>

LG Devices:

LG G Pad X V521 (Nougat): (requester & tester by jamescable)

Device has one speaker at the bottom only, nothing dual, only thing I can do is raise the volume, requester appreciated my offer and passed...

LG V30 - (requested & tested by Mentalmuso)

I was informed there are two versions: US998 & H930, they have been Merged with best settings from each...

Google Drive: Oreo (need oreo mixers) + Nougat - LG V30 - SoundMod - TWRP+Magisk

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="speaker">
------------------
<ctl name="RX0 Digital Volume" value="84" /><!--earpiece up-to 95, beyond is DANGEROUS-->
</path>
<path name="headphones">
------------------
<ctl name="RX1 Mix Digital Volume" value="76" /><!--Volume, usually seen as left channel, up-to 95, beyond depends on how much you hate your Ears-->
<ctl name="RX2 Mix Digital Volume" value="76" /><!--Volume, usually seen as right channel, up-to 95, beyond depends on how much you hate your Ears-->
------------------
</path>

LG G4 H815 - (requested & tested by ozantankus@hotmail.com)

Google Drive: Oreo (need oreo mixers) + Nougat - LG G4 H815 - SoundMod - TWRP+Magisk

DIY Volume Level:

Speaker Volume is not present in the mixer!

<path name="speaker">
------------------
<ctl name="RX1 Digital Volume" value="90" /><!--default 84, earpiece safe up-to 95, beyond is DANGEROUS-->
------------------
</path>

LineageOS ROM (Use as sample)​

List of Devices Done:

Samsung Devices:

Samsung A Series (2016) LineageOS - (requested & tested by mohand06)

Google Drive: LOS ROM - Samsung A SERIES 2016 - TWRP+MAGISK - DualSpeaker

DIY Volume Level:

I believe the words speak for themselves, current values are default

<path name="gain-media-speaker">
------------------
<ctl name="Speaker Volume" value="4" /><!-- 0 db : 0, step +2 db, default is 0-->
<ctl name="Earphone Volume" value="4" /><!-- 0 db : 0, step +2 db, default is 0-->
</path>
<path name="gain-media-headset">
------------------
<ctl name="Headphone Volume" value="25" /><!-- 0 db : 0, step +2 db, default is 21-->
</path>

Samsung S7/S7Edge Exynox/Snapdragon LineageOS (thread to be created soon) - (requested & tested by king3opobn)

Google Drive: LOS ROM - Oreo + Nougat - Samsung S7/S7Edge - SoundMod - TWRP+MAGISK

DIY Volume Level:

Exynos:

<path name="gain-media-handset">
<ctl name="HPOUT3L Input 1 Volume" value="23" />
<ctl name="HPOUT3L Input 2 Volume" value="23" />
</path>
<path name="gain-media-speaker">
<ctl name="AIF4TX1 Input 1 Volume" value="32"/>
<ctl name="AIF4TX2 Input 1 Volume" value="32"/>
</path>

Futuristic:

Create Flashable TWRP for all Devices... (Done :))

Create MAGISK Module for all Devices... (Done :))

Have a section listing Soundmods by other Developers so this thread contains not only my works but others with credits...

PLEASE YOUR FEEDBACK IS IMPORTANT...

!!! ALWAYS MAKE BACKUP OF YOUR FILES BEFORE REPLACING THEM !!!

Once you replace them, IMPORTANTLY change the permissions to 644 (rw- r-- r--)...

LAST IMPORTANT NOTICE:

This MOD can be used with Equalizers, even though this MOD sets the phone to the loudest balanced volume gain...

Using Equalizers might cause crackles and noise which damage your earpiece & speaker if you don't fix it, to fix it either you adjust the other MOD settings by reducing the boost

or Adjusting my MOD by Opening the mixer file I tell you and adjust the volume I mention for you decreasing it, you must eliminate all crackles and noises...

Big Credits go to XDA Member chdloc for his help in explaining non-exynos mixers...

Don't Forget to say :good: THANKS :good:

and

if you're very happy, please consider Donating to Support me, it means a lot even if it was little...​