mirror of
https://github.com/chararomandroid/android_device_samsung_a20
synced 2026-08-23 04:25:33 -04:00
universal7885: Enable DAP effect on boot
Change-Id: I07daeebc1a4b51905e7551081b1530e0502689d2 Signed-off-by: SamarV-121 <samarvispute121@pm.me>
This commit is contained in:
parent
6c3b4b5fbf
commit
97a81dec31
5 changed files with 98 additions and 1 deletions
12
dap/Android.bp
Normal file
12
dap/Android.bp
Normal file
|
|
@ -0,0 +1,12 @@
|
||||||
|
android_app {
|
||||||
|
name: "SamsungDAP",
|
||||||
|
|
||||||
|
srcs: ["src/**/*.kt"],
|
||||||
|
|
||||||
|
certificate: "platform",
|
||||||
|
platform_apis: true,
|
||||||
|
|
||||||
|
optimize: {
|
||||||
|
proguard_flags_files: ["proguard.flags"],
|
||||||
|
},
|
||||||
|
}
|
||||||
23
dap/AndroidManifest.xml
Normal file
23
dap/AndroidManifest.xml
Normal file
|
|
@ -0,0 +1,23 @@
|
||||||
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
|
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
|
package="org.lineageos.dap"
|
||||||
|
android:versionCode="1"
|
||||||
|
android:versionName="1.0"
|
||||||
|
android:sharedUserId="android.uid.system">
|
||||||
|
|
||||||
|
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
|
||||||
|
|
||||||
|
<application
|
||||||
|
android:label="SamsungDAP"
|
||||||
|
android:persistent="true"
|
||||||
|
android:defaultToDeviceProtectedStorage="true"
|
||||||
|
android:directBootAware="true">
|
||||||
|
|
||||||
|
<receiver android:name="org.lineageos.dap.BootCompletedReceiver">
|
||||||
|
<intent-filter>
|
||||||
|
<action android:name="android.intent.action.LOCKED_BOOT_COMPLETED" />
|
||||||
|
<category android:name="android.intent.category.DEFAULT" />
|
||||||
|
</intent-filter>
|
||||||
|
</receiver>
|
||||||
|
</application>
|
||||||
|
</manifest>
|
||||||
3
dap/proguard.flags
Normal file
3
dap/proguard.flags
Normal file
|
|
@ -0,0 +1,3 @@
|
||||||
|
-keep class org.lineageos.dap.gef.* {
|
||||||
|
*;
|
||||||
|
}
|
||||||
58
dap/src/org/lineageos/dap/BootCompletedReceiver.kt
Normal file
58
dap/src/org/lineageos/dap/BootCompletedReceiver.kt
Normal file
|
|
@ -0,0 +1,58 @@
|
||||||
|
/*
|
||||||
|
* Copyright (c) 2021 The LineageOS Project
|
||||||
|
*
|
||||||
|
* Licensed under the Apache License, Version 2.0 (the "License");
|
||||||
|
* you may not use this file except in compliance with the License.
|
||||||
|
* You may obtain a copy of the License at
|
||||||
|
*
|
||||||
|
* http://www.apache.org/licenses/LICENSE-2.0
|
||||||
|
*
|
||||||
|
* Unless required by applicable law or agreed to in writing, software
|
||||||
|
* distributed under the License is distributed on an "AS IS" BASIS,
|
||||||
|
* WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
|
||||||
|
* See the License for the specific language governing permissions and
|
||||||
|
* limitations under the License.
|
||||||
|
*/
|
||||||
|
|
||||||
|
package org.lineageos.dap
|
||||||
|
|
||||||
|
import android.content.BroadcastReceiver
|
||||||
|
import android.content.Context
|
||||||
|
import android.content.Intent
|
||||||
|
import android.media.audiofx.AudioEffect
|
||||||
|
import android.util.Log
|
||||||
|
|
||||||
|
import java.util.UUID
|
||||||
|
|
||||||
|
class BootCompletedReceiver : BroadcastReceiver() {
|
||||||
|
private val audioEffect = AudioEffect(
|
||||||
|
EFFECT_TYPE_DAP, AudioEffect.EFFECT_TYPE_NULL, 0, 0
|
||||||
|
)
|
||||||
|
|
||||||
|
override fun onReceive(context: Context, intent: Intent) {
|
||||||
|
Log.d(TAG, "Starting")
|
||||||
|
audioEffect.setParameter(EFFECT_PARAM_EFF_ENAB, 1)
|
||||||
|
audioEffect.setParameter(EFFECT_PARAM_PROFILE, PROFILE_AUTO)
|
||||||
|
audioEffect.enabled = true
|
||||||
|
}
|
||||||
|
|
||||||
|
companion object {
|
||||||
|
private const val TAG = "SamsungDAP"
|
||||||
|
|
||||||
|
private val EFFECT_TYPE_DAP = UUID.fromString("46d279d9-9be7-453d-9d7c-ef937f675587")
|
||||||
|
|
||||||
|
private const val EFFECT_PARAM_PROFILE = 0
|
||||||
|
private const val EFFECT_PARAM_STEREO_WIDENING_DISTANCE = 1
|
||||||
|
private const val EFFECT_PARAM_EFF_ENAB = 19
|
||||||
|
|
||||||
|
private const val PROFILE_AUTO = 0
|
||||||
|
private const val PROFILE_MOVIE = 1
|
||||||
|
private const val PROFILE_MUSIC = 2
|
||||||
|
private const val PROFILE_VOICE = 3
|
||||||
|
private const val PROFILE_GAME = 4
|
||||||
|
private const val PROFILE_OFF = 5
|
||||||
|
private const val PROFILE_GAME_1 = 6
|
||||||
|
private const val PROFILE_GAME_2 = 7
|
||||||
|
private const val PROFILE_SPACIAL_AUDIO = 8
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
@ -13,7 +13,8 @@ PRODUCT_PACKAGES += \
|
||||||
android.hardware.audio.effect@6.0-impl \
|
android.hardware.audio.effect@6.0-impl \
|
||||||
libtinycompress \
|
libtinycompress \
|
||||||
audio.r_submix.default \
|
audio.r_submix.default \
|
||||||
audio.usb.default
|
audio.usb.default \
|
||||||
|
SamsungDAP
|
||||||
|
|
||||||
PRODUCT_COPY_FILES += \
|
PRODUCT_COPY_FILES += \
|
||||||
frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
|
frameworks/av/services/audiopolicy/config/a2dp_audio_policy_configuration.xml:$(TARGET_COPY_OUT_VENDOR)/etc/a2dp_audio_policy_configuration.xml \
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue