Problem Statements
- On speaker everyone could hear me perfectly, but otherwise, it was very choppy.
- When I call someone, the caller can hear chopped up words and the quality isn't the best. When I put it on the loudspeaker, it works like a charm.
- On cell phone calls I have to use the speaker or the person can't hear me.
- Microphone doesn't work when trying to do speech to text, google voice commands, or record audio.
- I can switch to the rear microphone when using my audio recorder and it works, but nothing with the front mic. I'm not rooted or anything special done to the phone.
Report a Bug
Kindly raise your voice if faced with the similar issue for quick resolution.
jira.cyanogenmod.org/browse/BACON-289
Before proceeding further, please note I am in no way responsible for anything that goes wrong with your device. Only you are held responsible for your actions.
Alternatives to the solution
Users have reported upgrading to Color OS
or Oxygen OS
have fixed the issue for them.
Prerequisite for applying suggested the fix
- Rooted Phone
There are a lot of tutorials available online. If required I can write an article to root. - Root Explorer / ES File Explorer
- Grant root access to Root Explorer.
or - Download ES file explorer from play store.
- Open file explorer and select tools inside the menu.
- Now scroll down and select root explorer.
- At this point, it may ask you for root access. Merely grant and in the root explorer select mount and the system.
- Grant root access to Root Explorer.
Solution Approach
Step 1. We disable the use of multiple microphones during the call.
Step 2. During the call we amplify our main microphones.
NOTE: All system files have READ-ONLY permissions and should remain so. We use Root Explorer / ES File Explorer as they maintain permissions post edits.
Solution
Step 1. Disable multiple microphones use during call
- Open the File Explorer mentioned in prerequisites.
- Now go to the main section and search for system folder in internal storage. (
root\system
) - Go to system and find
build.prop
. - Make a backup of this file somewhere safe in PC preferably so that in case if you delete something by mistake, then you can use the backup.
- For ES File Explorer
Openbuild.prop
and after it opens up (much text in the file ) select edit on the top right corner
OR
For Root Explorer
Selectbuild.prop
and after that go to options in the top right corner and select open in text editor and it opens up (much text in the file ) - change the following commands
Change-
ro.qc.sdk.audio.fluencetype=fluence
to
ro.qc.sdk.audio.fluencetype=none
Step 2. During call amplify main microphones
- Open-File Explorer mentioned in prerequisite.
- Now go to the main section and search for system folder in internal storage. (
root\system
) - Now go to the system folder and search for '
etc
' folder in internal storage. (root\system\etc
) - Go to
etc
and findmixer_paths.xml
. - Make a backup of this file somewhere safe in PC preferably so that in case if you delete something by mistake, then you can use the backup.
- For ES File Explorer
Openmixer_paths.xml
and after it opens up (much text in the file ) select edit on the top right corner
OR
For Root Explorer
Selectmixer_paths.xml
and after that go to options in the top right corner and select open in text editor, and it opens up (much text in the file ) - Change the following commands
Change all non zero valued occurrences (where XX denotes any non zero number) -
<ctl name="RX1 Digital Volume" value="XX">
<ctl name="RX2 Digital Volume" value="XX">
to
<ctl name="RX1 Digital Volume" value="93">
<ctl name="RX2 Digital Volume" value="93">
References
For issue in general
forums.oneplus.net/threads/fix-call-quality-issue.284449/
forums.oneplus.net/threads/ghost-issue-in-oneplus-one-low-microphone.451194/#post-14990769
ejvyas.blogspot.in/2015/09/one-plus-one-bacon-increase-volume-mod.html
For Mixer Path Edits
www.davebennett.tech/android-boost-speaker-volume/
For Build Prop Edits
forum.xda-developers.com/oneplus-one/development/fix-low-mic-call-t3055661