audio_policy: force cancel unexecuted device routing command
-unexecuted device routing command can be handled for a none active
output and cause wrong audio routing for the other active output
-cancel the pending device routing command if stream is voice call
and new device is none
Change-Id: Ia5aeb935ccbdcb63fe8b226f911d252f78e2fa9b
CRs-Fixed: 678582
diff --git a/policy_hal/AudioPolicyManager.h b/policy_hal/AudioPolicyManager.h
index 9f2b473..d5cb6c1 100644
--- a/policy_hal/AudioPolicyManager.h
+++ b/policy_hal/AudioPolicyManager.h
@@ -58,6 +58,10 @@
AudioSystem::OUTPUT_FLAG_INDIRECT,
const audio_offload_info_t *offloadInfo = NULL);
+ virtual status_t stopOutput(audio_io_handle_t output,
+ AudioSystem::stream_type stream,
+ int session = 0);
+
virtual bool isOffloadSupported(const audio_offload_info_t& offloadInfo);
virtual void setPhoneState(int state);
@@ -103,6 +107,8 @@
bool mHdmiAudioEvent;
private:
+ void handleNotificationRoutingForStream(AudioSystem::stream_type stream);
+
// Used for voip + voice concurrency usecase
int mPrevPhoneState;
static int mvoice_call_state;