From e8726fea8a53bf3474aa3c6deaf2f6c1f565e694 Mon Sep 17 00:00:00 2001 From: Eric Laurent Date: Fri, 26 Jun 2015 09:39:24 -0700 Subject: reduce number of binder calls from mediaserver Reduce the number of audio port, audio patch and IO config changed binder calls from mediaserver to client processes: - Do not call IO config changed callback if selected device is the same as previously selected one on a given audio flinger playback or capture thread. - Do not call the audio port or audo patch list update callback on a client if this client as no listener registered. Bug: 22045560. Change-Id: If780e105404de79b7cb5c80c27b793ceb6b1c423 --- include/media/AudioSystem.h | 4 ++-- include/media/IAudioPolicyService.h | 2 ++ 2 files changed, 4 insertions(+), 2 deletions(-) (limited to 'include') diff --git a/include/media/AudioSystem.h b/include/media/AudioSystem.h index 26cffa6..06116a5 100644 --- a/include/media/AudioSystem.h +++ b/include/media/AudioSystem.h @@ -408,8 +408,8 @@ private: AudioPolicyServiceClient() { } - status_t addAudioPortCallback(const sp& callback); - status_t removeAudioPortCallback(const sp& callback); + int addAudioPortCallback(const sp& callback); + int removeAudioPortCallback(const sp& callback); // DeathRecipient virtual void binderDied(const wp& who); diff --git a/include/media/IAudioPolicyService.h b/include/media/IAudioPolicyService.h index ee462a0..6b93f6f 100644 --- a/include/media/IAudioPolicyService.h +++ b/include/media/IAudioPolicyService.h @@ -149,6 +149,8 @@ public: virtual void registerClient(const sp& client) = 0; + virtual void setAudioPortCallbacksEnabled(bool enabled) = 0; + virtual status_t acquireSoundTriggerSession(audio_session_t *session, audio_io_handle_t *ioHandle, audio_devices_t *device) = 0; -- cgit v1.1