summaryrefslogtreecommitdiff
path: root/src/android/android_Effect.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/android/android_Effect.cpp')
-rw-r--r--src/android/android_Effect.cpp26
1 files changed, 21 insertions, 5 deletions
diff --git a/src/android/android_Effect.cpp b/src/android/android_Effect.cpp
index ca0a1c5..2b5582f 100644
--- a/src/android/android_Effect.cpp
+++ b/src/android/android_Effect.cpp
@@ -32,6 +32,8 @@
#include <system/audio.h>
+using android::content::AttributionSourceState;
+
static const int EQUALIZER_PARAM_SIZE_MAX = sizeof(effect_param_t) + 2 * sizeof(int32_t)
+ EFFECT_STRING_LEN_MAX;
@@ -665,12 +667,20 @@ bool android_fx_initEffectObj(audio_session_t sessionId, android::sp<android::Au
const effect_uuid_t *type) {
//SL_LOGV("android_fx_initEffectObj on session %d", sessionId);
- effect = new android::AudioEffect(type, android::String16(), EFFECT_UUID_NULL,
+ // TODO b/182392769: use attribution source util
+ AttributionSourceState attributionSource;
+ attributionSource.uid = VALUE_OR_FATAL(android::legacy2aidl_uid_t_int32_t(getuid()));
+ attributionSource.pid = VALUE_OR_FATAL(android::legacy2aidl_pid_t_int32_t(getpid()));
+ attributionSource.token = android::sp<android::BBinder>::make();
+
+ effect = android::sp<android::AudioEffect>::make(attributionSource);
+
+ effect->set(type, EFFECT_UUID_NULL,
0,// priority
0,// effect callback
0,// callback data
sessionId,// session ID
- 0 );// output
+ 0); // output
android::status_t status = effect->initCheck();
if (android::NO_ERROR != status) {
@@ -805,9 +815,15 @@ SLresult android_genericFx_createEffect(IAndroidEffect* iae, SLInterfaceID pUuid
}
// create new effect
- android::sp<android::AudioEffect> pFx = new android::AudioEffect(
- NULL, // not using type to create effect
- android::String16(),
+ // TODO b/182392769: use attribution source util
+ AttributionSourceState attributionSource;
+ attributionSource.uid = VALUE_OR_FATAL(android::legacy2aidl_uid_t_int32_t(getuid()));
+ attributionSource.pid = VALUE_OR_FATAL(android::legacy2aidl_pid_t_int32_t(getpid()));
+ attributionSource.token = android::sp<android::BBinder>::make();
+
+ const auto pFx = android::sp<android::AudioEffect>::make(attributionSource);
+
+ pFx->set(NULL, // not using type to create effect
(const effect_uuid_t*)pUuid,
0,// priority
0,// effect callback