visualizer: Pass sound card and capture device from audio HAL
Sound card number and capture device id were hardcoded in
visualizer. Fix this by passing card number and capture
device id while starting visualizer output from audio HAL.
Bug: 65263761
Change-Id: Icc5c33e35d836f524918900b3bfdf2a587465505
diff --git a/hal/audio_hw.c b/hal/audio_hw.c
index 231b159..6b0acd4 100644
--- a/hal/audio_hw.c
+++ b/hal/audio_hw.c
@@ -2009,8 +2009,13 @@
if (out->offload_callback)
compress_nonblock(out->compr, out->non_blocking);
- if (adev->visualizer_start_output != NULL)
- adev->visualizer_start_output(out->handle, out->pcm_device_id);
+ if (adev->visualizer_start_output != NULL) {
+ int capture_device_id =
+ platform_get_pcm_device_id(USECASE_AUDIO_RECORD_AFE_PROXY,
+ PCM_CAPTURE);
+ adev->visualizer_start_output(out->handle, out->pcm_device_id,
+ adev->snd_card, capture_device_id);
+ }
if (adev->offload_effects_start_output != NULL)
adev->offload_effects_start_output(out->handle, out->pcm_device_id);
} else if (out->usecase == USECASE_AUDIO_PLAYBACK_MMAP) {
@@ -5492,7 +5497,7 @@
} else {
ALOGV("%s: DLOPEN successful for %s", __func__, VISUALIZER_LIBRARY_PATH);
adev->visualizer_start_output =
- (int (*)(audio_io_handle_t, int))dlsym(adev->visualizer_lib,
+ (int (*)(audio_io_handle_t, int, int, int))dlsym(adev->visualizer_lib,
"visualizer_hal_start_output");
adev->visualizer_stop_output =
(int (*)(audio_io_handle_t, int))dlsym(adev->visualizer_lib,