post_proc: Enable reverb in DSP to start effect
During switch to tunnel playback, reverb enable command is not sent to
DSP and causes reverb effect not applied continuously.
Send reverb enable params to DSP to start effects during switch.
Change-Id: I6e8bbdf4c1e5933be9a37413a4c4f1b7106fe6ba
CRs-Fixed: 637016
diff --git a/post_proc/reverb.c b/post_proc/reverb.c
index 4c7fe25..7c50430 100644
--- a/post_proc/reverb.c
+++ b/post_proc/reverb.c
@@ -309,6 +309,7 @@
return -EINVAL;
*(uint16_t *)value = reverb_ctxt->next_preset;
ALOGV("get REVERB_PARAM_PRESET, preset %d", reverb_ctxt->next_preset);
+ return 0;
}
switch (param) {
case REVERB_PARAM_ROOM_LEVEL:
@@ -464,6 +465,7 @@
return -EINVAL;
}
reverb_set_preset(reverb_ctxt, preset);
+ return 0;
}
switch (param) {
case REVERB_PARAM_PROPERTIES:
@@ -603,6 +605,14 @@
ALOGV("%s", __func__);
reverb_ctxt->ctl = output->ctl;
+ if (offload_reverb_get_enable_flag(&(reverb_ctxt->offload_reverb))) {
+ if (reverb_ctxt->ctl && reverb_ctxt->preset) {
+ offload_reverb_send_params(reverb_ctxt->ctl, reverb_ctxt->offload_reverb,
+ OFFLOAD_SEND_REVERB_ENABLE_FLAG |
+ OFFLOAD_SEND_REVERB_PRESET);
+ }
+ }
+
return 0;
}