support mic noise suppression

N/A

Change-Id: Ib352a3c124477e089e1f05620cc1197bb85486d2
Signed-off-by: huangqiwu <huangqiwu@xiaomi.com>
audio: Choose Speaker instead of USB Headset on force use

- getNewDevice() is selecting USB Dock Headset when user
  forces it to be speaker during VOIP/VOICE call
- Fix is to return speaker as output device in this case
CRs-Fixed: 571801

Change-Id: I81cbcef17ac6d07ac0a174e4ab35c8f5c6426257
audio: avoid muting already muted stream

-Issue: FM or music is getting mixed with ringtone over the
 speaker when BT or wired HS is connected. Because the stream will
 not get temporarily muted if its already muted.But during unmute,
 there is no condition to check whether stream is temporarily muted
 or not.This is leading to unmuting of non-muted stream
-Fix is added to avoid muting of stream if its already
 muted

CRs-Fixed: 574271
Change-Id: I6b4962f402b87781846e37aed1872a639d06f488
Revert "audio: Start proxy when external output is enabled"

This reverts commit 61450f47726440849a76eccbdbe6b607a6e48e77.
 -Playback thread for proxy is started twice.
  Once from write and next from setParameters. So, the
  active use-cases become 3(first being HiFi and next
  HiFi Low latency). So, after the ringtone(or music)
  is completed only only one of the usecase is removed from
  the active list and the playback thread is not stopped as
  the active usecase list is not empty.
 -Reverted the gerrit to not start the playback thread twice

 CRs-Fixed: 573521

Change-Id: I46d601a4b538434d74faecc54fb704eeae8eaedc