hal: Adding Pan-Scale, downmix mixer control support.
Add support in HAL to send mix matrix params using downmix,
Pan-Scale mixer controls. Add new interactive usecases and
also add support to open and teardown for interactive streams.
Add support in test app for supporting up to 9 concurrent
streams. Add support for mixer matrix params handling.
Change-Id: I0dc5b908ee779b2b2c526a67609c057f591f26e7
diff --git a/hal/audio_hw.h b/hal/audio_hw.h
index 8228f3b..fec2400 100644
--- a/hal/audio_hw.h
+++ b/hal/audio_hw.h
@@ -170,6 +170,15 @@
USECASE_AUDIO_PLAYBACK_EXT_DISP_SILENCE,
USECASE_AUDIO_TRANSCODE_LOOPBACK,
+
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM1,
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM2,
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM3,
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM4,
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM5,
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM6,
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM7,
+ USECASE_AUDIO_PLAYBACK_INTERACTIVE_STREAM8,
AUDIO_USECASE_MAX
};
@@ -312,6 +321,8 @@
char pm_qos_mixer_path[MAX_MIXER_PATH_LEN];
int dynamic_pm_qos_enabled;
+ mix_matrix_params_t pan_scale_params;
+ mix_matrix_params_t downmix_params;
};
struct stream_in {
@@ -484,6 +495,7 @@
bool vr_audio_mode_enabled;
bool bt_sco_on;
struct audio_device_config_param *device_cfg_params;
+ unsigned int interactive_usecase_state;
};
int select_devices(struct audio_device *adev,
@@ -526,6 +538,8 @@
void adev_close_output_stream(struct audio_hw_device *dev __unused,
struct audio_stream_out *stream);
+bool is_interactive_usecase(audio_usecase_t uc_id);
+
#define LITERAL_TO_STRING(x) #x
#define CHECK(condition) LOG_ALWAYS_FATAL_IF(!(condition), "%s",\
__FILE__ ":" LITERAL_TO_STRING(__LINE__)\