diff options
author | Jean-Michel Trivi <jmtrivi@google.com> | 2015-04-23 18:41:29 -0700 |
---|---|---|
committer | Jean-Michel Trivi <jmtrivi@google.com> | 2015-04-29 17:54:12 -0700 |
commit | f613d42b12389335b2ecf06df18d0d095d6bfd44 (patch) | |
tree | b36177007932b781d9db2bb973cb2feaab3cde13 /include/media/AudioPolicy.h | |
parent | dae24729d0b3ced8c4a7d7f9b631e852f564db4f (diff) | |
download | frameworks_av-f613d42b12389335b2ecf06df18d0d095d6bfd44.zip frameworks_av-f613d42b12389335b2ecf06df18d0d095d6bfd44.tar.gz frameworks_av-f613d42b12389335b2ecf06df18d0d095d6bfd44.tar.bz2 |
AudioSystem callback for dynamic policy mix activity
Add method to AudioPolicyServiceClient for dynamic policy mix
activity notification.
Propagate notification to a dedicated callback.
Bug 20226914
Change-Id: I37928ed38e15ea2b8fed022cccadeca8c4d6c876
Diffstat (limited to 'include/media/AudioPolicy.h')
-rw-r--r-- | include/media/AudioPolicy.h | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/include/media/AudioPolicy.h b/include/media/AudioPolicy.h index 800b27b..feed402 100644 --- a/include/media/AudioPolicy.h +++ b/include/media/AudioPolicy.h @@ -38,14 +38,17 @@ namespace android { #define MIX_TYPE_PLAYERS 0 #define MIX_TYPE_RECORDERS 1 +// definition of the different events that can be reported on a dynamic policy from +// AudioSystem's implementation of the AudioPolicyClient interface +// keep in sync with AudioSystem.java +#define DYNAMIC_POLICY_EVENT_MIX_STATE_UPDATE 0 + #define MIX_STATE_DISABLED -1 #define MIX_STATE_IDLE 0 #define MIX_STATE_MIXING 1 -#define ROUTE_FLAG_RENDER 0x1 -#define ROUTE_FLAG_LOOP_BACK (0x1 << 1) - -#define MIX_FLAG_NOTIFY_ACTIVITY 0x1 +#define MIX_ROUTE_FLAG_RENDER 0x1 +#define MIX_ROUTE_FLAG_LOOP_BACK (0x1 << 1) #define MAX_MIXES_PER_POLICY 10 #define MAX_CRITERIA_PER_MIX 20 @@ -67,11 +70,15 @@ public: class AudioMix { public: + // flag on an AudioMix indicating the activity on this mix (IDLE, MIXING) + // must be reported through the AudioPolicyClient interface + static const uint32_t kCbFlagNotifyActivity = 0x1; + AudioMix() {} AudioMix(Vector<AttributeMatchCriterion> criteria, uint32_t mixType, audio_config_t format, uint32_t routeFlags, String8 registrationId, uint32_t flags) : mCriteria(criteria), mMixType(mixType), mFormat(format), - mRouteFlags(routeFlags), mRegistrationId(registrationId), mFlags(flags){} + mRouteFlags(routeFlags), mRegistrationId(registrationId), mCbFlags(flags){} status_t readFromParcel(Parcel *parcel); status_t writeToParcel(Parcel *parcel) const; @@ -81,7 +88,7 @@ public: audio_config_t mFormat; uint32_t mRouteFlags; String8 mRegistrationId; - uint32_t mFlags; + uint32_t mCbFlags; // flags indicating which callbacks to use, see kCbFlag* }; }; // namespace android |