diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2018-07-27 22:20:01 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2018-07-27 22:20:01 +0000 |
commit | 920de3de49c836ad9255687caac3832164e05a35 (patch) | |
tree | 66fb25a78965f8d444fb44eff6d10676a9e8890a | |
parent | b7f4f3d3d6be29f93ad99eeccf9b09087014dd93 (diff) | |
parent | b9af041d6de820b42789cd6ed14a68c5aa7bfe4f (diff) | |
download | bt-pie-r2-release.tar.gz |
Merge cherrypicks of [4648918] into pi-release-2android-9.0.0_r8android-9.0.0_r7android-9.0.0_r6pie-r2-s1-releasepie-r2-release
Change-Id: I79b4d6e216cdc31d3941ed9b2388d605c169037c
-rw-r--r-- | bta/ag/bta_ag_sco.cc | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/bta/ag/bta_ag_sco.cc b/bta/ag/bta_ag_sco.cc index f28b3c252..083108b35 100644 --- a/bta/ag/bta_ag_sco.cc +++ b/bta/ag/bta_ag_sco.cc @@ -553,6 +553,14 @@ void bta_ag_codec_negotiate(tBTA_AG_SCB* p_scb) { APPL_TRACE_DEBUG("%s", __func__); bta_ag_cb.sco.p_curr_scb = p_scb; + // Workaround for misbehaving HFs such as Sony XAV AX100 car kit and Sony + // MW600 Headset, which indicate WBS support in SDP, but no codec + // negotiation support in BRSF. In this case, using mSBC codec can result + // background noise or no audio. Thus, defaulting to CVSD instead. + if (!(p_scb->peer_features & BTA_AG_PEER_FEAT_CODEC)) { + p_scb->sco_codec = UUID_CODEC_CVSD; + } + if ((p_scb->codec_updated || p_scb->codec_fallback) && (p_scb->peer_features & BTA_AG_PEER_FEAT_CODEC)) { /* Change the power mode to Active until SCO open is completed. */ |