summaryrefslogtreecommitdiffstats
path: root/services/audiopolicy/service/AudioPolicyService.h
diff options
context:
space:
mode:
authorEric Laurent <elaurent@google.com>2015-06-26 09:39:24 -0700
committerEric Laurent <elaurent@google.com>2015-06-26 12:38:13 -0700
commite8726fea8a53bf3474aa3c6deaf2f6c1f565e694 (patch)
treed72b6ffcc7e33c178e3cac7c108b102041451cb6 /services/audiopolicy/service/AudioPolicyService.h
parented8505836c0b2fba0ab4be0c1eff31d4f241bc1d (diff)
downloadframeworks_av-e8726fea8a53bf3474aa3c6deaf2f6c1f565e694.zip
frameworks_av-e8726fea8a53bf3474aa3c6deaf2f6c1f565e694.tar.gz
frameworks_av-e8726fea8a53bf3474aa3c6deaf2f6c1f565e694.tar.bz2
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
Diffstat (limited to 'services/audiopolicy/service/AudioPolicyService.h')
-rw-r--r--services/audiopolicy/service/AudioPolicyService.h4
1 files changed, 4 insertions, 0 deletions
diff --git a/services/audiopolicy/service/AudioPolicyService.h b/services/audiopolicy/service/AudioPolicyService.h
index eb50cdd..a0d5aa2 100644
--- a/services/audiopolicy/service/AudioPolicyService.h
+++ b/services/audiopolicy/service/AudioPolicyService.h
@@ -185,6 +185,8 @@ public:
virtual void registerClient(const sp<IAudioPolicyServiceClient>& client);
+ virtual void setAudioPortCallbacksEnabled(bool enabled);
+
virtual status_t acquireSoundTriggerSession(audio_session_t *session,
audio_io_handle_t *ioHandle,
audio_devices_t *device);
@@ -507,6 +509,7 @@ private:
void onAudioPortListUpdate();
void onAudioPatchListUpdate();
void onDynamicPolicyMixStateUpdate(String8 regId, int32_t state);
+ void setAudioPortCallbacksEnabled(bool enabled);
// IBinder::DeathRecipient
virtual void binderDied(const wp<IBinder>& who);
@@ -518,6 +521,7 @@ private:
const wp<AudioPolicyService> mService;
const uid_t mUid;
const sp<IAudioPolicyServiceClient> mAudioPolicyServiceClient;
+ bool mAudioPortCallbacksEnabled;
};
// Internal dump utilities.