summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorWeiyin Jiang <wjiang@codeaurora.org>2019-07-18 17:24:21 +0800
committerMichael Bestas <mkbestas@lineageos.org>2019-12-02 22:34:00 +0200
commit9542adee0b8d5a1c3998c6cf936edeb59a593161 (patch)
treef568cdd84e1f6e704a8cee4689c80d1f1205b92e
parentbbd29f2e412f23c8bcbb5dd119af84b49610af7c (diff)
downloadandroid_hardware_qcom_audio-lineage-17.0-caf-sdm845.tar.gz
android_hardware_qcom_audio-lineage-17.0-caf-sdm845.tar.bz2
android_hardware_qcom_audio-lineage-17.0-caf-sdm845.zip
hal: fix media param not sent during gapless transitionlineage-17.0-caf-sdm845
QC defined interfaces in tinycompress to handle metadata of extended audio format. These interfaces aren't enabled in tinycompress lib. Use feature flag to enable these APIs for QC AHAL. CRs-Fixed: 2491047 Change-Id: I0644bd0965a3850ef4c728ca881bf81cdbd8bc53
-rw-r--r--configs/kona/kona.mk1
-rw-r--r--configs/lito/lito.mk1
-rw-r--r--configs/msm8937/msm8937.mk1
-rw-r--r--configs/msm8998/msm8998.mk1
-rw-r--r--configs/msmnile/msmnile.mk1
-rw-r--r--configs/msmsteppe/msmsteppe.mk1
-rw-r--r--configs/sdm660/sdm660.mk1
-rw-r--r--configs/sdm710/sdm710.mk1
-rw-r--r--configs/sdm845/sdm845.mk1
-rw-r--r--configs/trinket/trinket.mk1
-rw-r--r--hal/Android.mk4
-rw-r--r--hal/audio_extn/audio_extn.h3
-rw-r--r--hal/audio_hw.c4
13 files changed, 18 insertions, 3 deletions
diff --git a/configs/kona/kona.mk b/configs/kona/kona.mk
index e1455092..fa7c3497 100644
--- a/configs/kona/kona.mk
+++ b/configs/kona/kona.mk
@@ -45,6 +45,7 @@ AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
AUDIO_FEATURE_ENABLED_3D_AUDIO := true
AUDIO_FEATURE_ENABLED_AHAL_EXT := true
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/lito/lito.mk b/configs/lito/lito.mk
index e84ab2bf..116be391 100644
--- a/configs/lito/lito.mk
+++ b/configs/lito/lito.mk
@@ -44,6 +44,7 @@ AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
AUDIO_FEATURE_ENABLED_3D_AUDIO := true
AUDIO_FEATURE_ENABLED_AHAL_EXT := true
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/msm8937/msm8937.mk b/configs/msm8937/msm8937.mk
index 5f896c77..bf49de84 100644
--- a/configs/msm8937/msm8937.mk
+++ b/configs/msm8937/msm8937.mk
@@ -31,6 +31,7 @@ AUDIO_FEATURE_ENABLED_HW_ACCELERATED_EFFECTS := false
AUDIO_FEATURE_ENABLED_DS2_DOLBY_DAP := false
AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
AUDIO_FEATURE_ENABLED_AHAL_EXT := false
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/msm8998/msm8998.mk b/configs/msm8998/msm8998.mk
index ff259445..a616b143 100644
--- a/configs/msm8998/msm8998.mk
+++ b/configs/msm8998/msm8998.mk
@@ -35,6 +35,7 @@ AUDIO_FEATURE_ENABLED_VOICE_PRINT := false
USE_LEGACY_AUDIO_DAEMON := false
USE_LEGACY_AUDIO_MEASUREMENT := false
AUDIO_FEATURE_ENABLED_AHAL_EXT := false
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/msmnile/msmnile.mk b/configs/msmnile/msmnile.mk
index c3104c68..471ea100 100644
--- a/configs/msmnile/msmnile.mk
+++ b/configs/msmnile/msmnile.mk
@@ -43,6 +43,7 @@ AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
AUDIO_FEATURE_ENABLED_3D_AUDIO := true
AUDIO_FEATURE_ENABLED_AHAL_EXT := true
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/msmsteppe/msmsteppe.mk b/configs/msmsteppe/msmsteppe.mk
index 5565a0d1..21d2c301 100644
--- a/configs/msmsteppe/msmsteppe.mk
+++ b/configs/msmsteppe/msmsteppe.mk
@@ -32,6 +32,7 @@ AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
AUDIO_FEATURE_ENABLED_3D_AUDIO := false
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/sdm660/sdm660.mk b/configs/sdm660/sdm660.mk
index d84d444d..0dfd7dd1 100644
--- a/configs/sdm660/sdm660.mk
+++ b/configs/sdm660/sdm660.mk
@@ -35,6 +35,7 @@ AUDIO_FEATURE_ENABLED_VOICE_PRINT := false
USE_LEGACY_AUDIO_DAEMON := false
USE_LEGACY_AUDIO_MEASUREMENT := false
AUDIO_FEATURE_ENABLED_AHAL_EXT := false
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/sdm710/sdm710.mk b/configs/sdm710/sdm710.mk
index a8afd659..6d888d15 100644
--- a/configs/sdm710/sdm710.mk
+++ b/configs/sdm710/sdm710.mk
@@ -37,6 +37,7 @@ AUDIO_FEATURE_ENABLED_VOICE_PRINT := false
USE_LEGACY_AUDIO_DAEMON := false
USE_LEGACY_AUDIO_MEASUREMENT := false
AUDIO_FEATURE_ENABLED_AHAL_EXT := false
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/configs/sdm845/sdm845.mk b/configs/sdm845/sdm845.mk
index 79257ad7..9d2ff7e5 100644
--- a/configs/sdm845/sdm845.mk
+++ b/configs/sdm845/sdm845.mk
@@ -32,6 +32,7 @@ AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
AUDIO_FEATURE_ENABLED_3D_AUDIO := true
AUDIO_FEATURE_ENABLED_AHAL_EXT := false
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
TARGET_USES_QCOM_MM_AUDIO := true
endif
diff --git a/configs/trinket/trinket.mk b/configs/trinket/trinket.mk
index aedb0a86..2ec0ebb0 100644
--- a/configs/trinket/trinket.mk
+++ b/configs/trinket/trinket.mk
@@ -33,6 +33,7 @@ AUDIO_FEATURE_ENABLED_AUDIOSPHERE := true
AUDIO_FEATURE_ENABLED_USB_TUNNEL := true
AUDIO_FEATURE_ENABLED_A2DP_OFFLOAD := true
AUDIO_FEATURE_ENABLED_3D_AUDIO := false
+AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT := true
DOLBY_ENABLE := false
endif
diff --git a/hal/Android.mk b/hal/Android.mk
index 569cd3ba..bf19326f 100644
--- a/hal/Android.mk
+++ b/hal/Android.mk
@@ -169,6 +169,10 @@ ifeq ($(strip $(AUDIO_FEATURE_ENABLED_DLKM)),true)
LOCAL_C_INCLUDES += $(TARGET_OUT_INTERMEDIATES)/vendor/qcom/opensource/audio-kernel/include
endif
+ifeq ($(strip $(AUDIO_FEATURE_ENABLED_EXTENDED_COMPRESS_FORMAT)),true)
+ LOCAL_CFLAGS += -DENABLE_EXTENDED_COMPRESS_FORMAT
+endif
+
LOCAL_CFLAGS += -DUSE_VENDOR_EXTN
# Legacy feature
diff --git a/hal/audio_extn/audio_extn.h b/hal/audio_extn/audio_extn.h
index 74581cd8..f37c948e 100644
--- a/hal/audio_extn/audio_extn.h
+++ b/hal/audio_extn/audio_extn.h
@@ -108,9 +108,10 @@ int audio_extn_parse_compress_metadata(struct stream_out *out,
#define AUDIO_OUTPUT_BIT_WIDTH ((config->offload_info.bit_width == 32) ? 24\
:config->offload_info.bit_width)
-#ifndef AUDIO_HW_EXTN_API_ENABLED
+#ifndef ENABLE_EXTENDED_COMPRESS_FORMAT
#define compress_set_metadata(compress, metadata) (0)
#define compress_get_metadata(compress, metadata) (0)
+#define compress_set_next_track_param(compress, codec_options) (0)
#endif
#define MAX_LENGTH_MIXER_CONTROL_IN_INT (128)
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 5bbd5956..00f69534 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -3230,7 +3230,7 @@ static void *offload_thread_loop(void *context)
int ret = 0;
setpriority(PRIO_PROCESS, 0, ANDROID_PRIORITY_AUDIO);
- //set_sched_policy(0, SP_FOREGROUND);
+ set_sched_policy(0, SP_FOREGROUND);
prctl(PR_SET_NAME, (unsigned long)"Offload Callback", 0, 0, 0);
ALOGV("%s", __func__);
@@ -5518,7 +5518,7 @@ static ssize_t out_write(struct audio_stream_out *stream, const void *buffer,
out->send_new_metadata = 0;
if (out->send_next_track_params && out->is_compr_metadata_avail) {
ALOGD("copl(%p):send next track params in gapless", out);
- // compress_set_next_track_param(out->compr, &(out->compr_config.codec->options));
+ compress_set_next_track_param(out->compr, &(out->compr_config.codec->options));
out->send_next_track_params = false;
out->is_compr_metadata_avail = false;
}