diff options
author | Paul McLean <pmclean@google.com> | 2014-08-28 21:06:27 +0000 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2014-08-28 21:06:27 +0000 |
commit | c1f1435ed8c9c7df42ad5dc621412fc7cc9d4633 (patch) | |
tree | ee43a14544172ca444df9b0566c3a9df12105cc3 /services | |
parent | f71047f70ccdab19a874c9127dd465ff84e871f7 (diff) | |
parent | 131ff14853a45beb336cdd39b5ebfe51647272c0 (diff) | |
download | frameworks_av-c1f1435ed8c9c7df42ad5dc621412fc7cc9d4633.zip frameworks_av-c1f1435ed8c9c7df42ad5dc621412fc7cc9d4633.tar.gz frameworks_av-c1f1435ed8c9c7df42ad5dc621412fc7cc9d4633.tar.bz2 |
am 131ff148: am 8962e08c: Merge "Fix audio dropouts with multiple playback streams." into lmp-dev
* commit '131ff14853a45beb336cdd39b5ebfe51647272c0':
Fix audio dropouts with multiple playback streams.
Diffstat (limited to 'services')
-rw-r--r-- | services/audiopolicy/AudioPolicyManager.cpp | 17 |
1 files changed, 16 insertions, 1 deletions
diff --git a/services/audiopolicy/AudioPolicyManager.cpp b/services/audiopolicy/AudioPolicyManager.cpp index 569dc46..06dd22c 100644 --- a/services/audiopolicy/AudioPolicyManager.cpp +++ b/services/audiopolicy/AudioPolicyManager.cpp @@ -271,7 +271,13 @@ status_t AudioPolicyManager::setDeviceConnectionState(audio_devices_t device, return INVALID_OPERATION; } - ALOGV("setDeviceConnectionState() disconnecting device %x", device); + ALOGV("setDeviceConnectionState() disconnecting output device %x", device); + + // Set Disconnect to HALs + AudioParameter param = AudioParameter(address); + param.addInt(String8(AUDIO_PARAMETER_DEVICE_DISCONNECT), device); + mpClientInterface->setParameters(AUDIO_IO_HANDLE_NONE, param.toString()); + // remove device from available output devices mAvailableOutputDevices.remove(devDesc); @@ -368,8 +374,17 @@ status_t AudioPolicyManager::setDeviceConnectionState(audio_devices_t device, ALOGW("setDeviceConnectionState() device not connected: %d", device); return INVALID_OPERATION; } + + ALOGV("setDeviceConnectionState() disconnecting input device %x", device); + + // Set Disconnect to HALs + AudioParameter param = AudioParameter(address); + param.addInt(String8(AUDIO_PARAMETER_DEVICE_DISCONNECT), device); + mpClientInterface->setParameters(AUDIO_IO_HANDLE_NONE, param.toString()); + checkInputsForDevice(device, state, inputs, address); mAvailableInputDevices.remove(devDesc); + } break; default: |