alsa_sound: fix for SIP call mute issue.
-Mute VOIP through audio path is not supported by kernel,
so calling setVoipMicMute() to disable ""Voip Tx Mute"" fails
-Mute VOIP by cleanning buffers read if setMicMute is set
-Remove mVoipMicMute and use mMicMute for voice and VOIP
Bug: 7213748
Change-Id: Ie2a200470c16da2e4ae991c0814ec8dfb4666833
Signed-off-by: Iliyan Malchev <malchev@google.com>
diff --git a/alsa_sound/AudioStreamInALSA.cpp b/alsa_sound/AudioStreamInALSA.cpp
index 30de979..031d477 100644
--- a/alsa_sound/AudioStreamInALSA.cpp
+++ b/alsa_sound/AudioStreamInALSA.cpp
@@ -445,6 +445,10 @@
else {
read += static_cast<ssize_t>((period_size));
read_pending -= period_size;
+ //Set mute by cleanning buffers read
+ if (mParent->mMicMute) {
+ memset(buffer, 0, period_size);
+ }
buffer = ((uint8_t *)buffer) + period_size;
}
@@ -491,7 +495,6 @@
return NO_ERROR;
}
mParent->mVoipStreamCount = 0;
- mParent->mVoipMicMute = 0;
#ifdef QCOM_USBAUDIO_ENABLED
} else {
ALOGD("Deregistering REC bit, musbRecordingState:%d", mParent->musbRecordingState);