diff options
author | android-build-team Robot <android-build-team-robot@google.com> | 2019-06-19 03:08:03 +0000 |
---|---|---|
committer | android-build-team Robot <android-build-team-robot@google.com> | 2019-06-19 03:08:03 +0000 |
commit | 38cfe6cec855c1f07775b8926d23e46d548f8c80 (patch) | |
tree | 79a090807abb33f1215f4b3de3415f13daa2190e | |
parent | ed7dddb8233df8421c2a47c11ffa8b66b8d60173 (diff) | |
parent | 5f004e7c184ebd7f39762a66c8991e6ba4333b23 (diff) | |
download | android_hardware_qcom_audio-38cfe6cec855c1f07775b8926d23e46d548f8c80.tar.gz android_hardware_qcom_audio-38cfe6cec855c1f07775b8926d23e46d548f8c80.tar.bz2 android_hardware_qcom_audio-38cfe6cec855c1f07775b8926d23e46d548f8c80.zip |
Snap for 5671249 from 5f004e7c184ebd7f39762a66c8991e6ba4333b23 to qt-qpr1-release
Change-Id: I302e9b384aad040724261d6d39e927efcef8b144
-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); |