diff options
author | Carter Hsu <carterhsu@google.com> | 2019-06-18 12:04:44 -0700 |
---|---|---|
committer | android-build-merger <android-build-merger@google.com> | 2019-06-18 12:04:44 -0700 |
commit | 5f004e7c184ebd7f39762a66c8991e6ba4333b23 (patch) | |
tree | 79a090807abb33f1215f4b3de3415f13daa2190e | |
parent | 49210f533bc2b76d07290fba07b05f20058d379d (diff) | |
parent | 968d681ff5dea0f360c94474bdaf014fdd982dc8 (diff) | |
download | android_hardware_qcom_audio-5f004e7c184ebd7f39762a66c8991e6ba4333b23.tar.gz android_hardware_qcom_audio-5f004e7c184ebd7f39762a66c8991e6ba4333b23.tar.bz2 android_hardware_qcom_audio-5f004e7c184ebd7f39762a66c8991e6ba4333b23.zip |
audio: set hotword input for soundtrigger only
am: 968d681ff5
Change-Id: I72e62768d78ed09203de4e3d631f8c1936f5386c
-rw-r--r-- | hal/audio_hw.c | 9 |
1 files changed, 6 insertions, 3 deletions
diff --git a/hal/audio_hw.c b/hal/audio_hw.c index 5d611c6b..34fafe7c 100644 --- a/hal/audio_hw.c +++ b/hal/audio_hw.c @@ -4107,7 +4107,7 @@ static int in_standby(struct audio_stream *stream) lock_input_stream(in); - if (!in->standby && in->is_st_session) { + if (!in->standby && (in->flags & AUDIO_INPUT_FLAG_HW_HOTWORD)) { ALOGV("%s: sound trigger pcm stop lab", __func__); audio_extn_sound_trigger_stop_lab(in); in->standby = true; @@ -4347,7 +4347,7 @@ static ssize_t in_read(struct audio_stream_in *stream, void *buffer, const size_t frame_size = audio_stream_in_frame_size(stream); const size_t frames = bytes / frame_size; - if (in->is_st_session) { + if (in->flags & AUDIO_INPUT_FLAG_HW_HOTWORD) { ALOGVV(" %s: reading on st session bytes=%zu", __func__, bytes); /* Read from sound trigger HAL */ audio_extn_sound_trigger_read(in, buffer, bytes); @@ -4460,7 +4460,7 @@ static int in_get_capture_position(const struct audio_stream_in *stream, // on standby. Therefore, we may return an error even though the // pcm stream is still opened. if (in->standby) { - ALOGE_IF(in->pcm != NULL && !in->is_st_session, + ALOGE_IF(in->pcm != NULL && !(in->flags & AUDIO_INPUT_FLAG_HW_HOTWORD), "%s stream in standby but pcm not NULL for non ST session", __func__); goto exit; } @@ -6077,6 +6077,9 @@ static int adev_open_input_stream(struct audio_hw_device *dev, get sound trigger pcm if present */ audio_extn_sound_trigger_check_and_get_session(in); + if (in->is_st_session) + in->flags |= AUDIO_INPUT_FLAG_HW_HOTWORD; + lock_input_stream(in); audio_extn_snd_mon_register_listener(in, in_snd_mon_cb); pthread_mutex_lock(&adev->lock); |