Loading hal/audio_extn/audio_extn.c +8 −3 Original line number Diff line number Diff line Loading @@ -98,9 +98,10 @@ bool cin_applicable_stream(struct stream_in *in); bool cin_attached_usecase(audio_usecase_t uc_id); bool cin_format_supported(audio_format_t format); size_t cin_get_buffer_size(struct stream_in *in); int cin_start_input_stream(struct stream_in *in); int cin_open_input_stream(struct stream_in *in); void cin_stop_input_stream(struct stream_in *in); void cin_close_input_stream(struct stream_in *in); void cin_free_input_stream_resources(struct stream_in *in); int cin_read(struct stream_in *in, void *buffer, size_t bytes, size_t *bytes_read); int cin_configure_input_stream(struct stream_in *in); Loading Loading @@ -5063,9 +5064,9 @@ size_t audio_extn_cin_get_buffer_size(struct stream_in *in) { return (audio_extn_compress_in_enabled? cin_get_buffer_size(in): 0); } int audio_extn_cin_start_input_stream(struct stream_in *in) int audio_extn_cin_open_input_stream(struct stream_in *in) { return (audio_extn_compress_in_enabled? cin_start_input_stream(in): -1); return (audio_extn_compress_in_enabled? cin_open_input_stream(in): -1); } void audio_extn_cin_stop_input_stream(struct stream_in *in) { Loading @@ -5075,6 +5076,10 @@ void audio_extn_cin_close_input_stream(struct stream_in *in) { (audio_extn_compress_in_enabled? cin_close_input_stream(in): NULL); } void audio_extn_cin_free_input_stream_resources(struct stream_in *in) { return (audio_extn_compress_in_enabled? cin_free_input_stream_resources(in): NULL); } int audio_extn_cin_read(struct stream_in *in, void *buffer, size_t bytes, size_t *bytes_read) { Loading hal/audio_extn/audio_extn.h +2 −1 Original line number Diff line number Diff line Loading @@ -1066,9 +1066,10 @@ bool audio_extn_cin_applicable_stream(struct stream_in *in); bool audio_extn_cin_attached_usecase(audio_usecase_t uc_id); bool audio_extn_cin_format_supported(audio_format_t format); size_t audio_extn_cin_get_buffer_size(struct stream_in *in); int audio_extn_cin_start_input_stream(struct stream_in *in); int audio_extn_cin_open_input_stream(struct stream_in *in); void audio_extn_cin_stop_input_stream(struct stream_in *in); void audio_extn_cin_close_input_stream(struct stream_in *in); void audio_extn_cin_free_input_stream_resources(struct stream_in *in); int audio_extn_cin_read(struct stream_in *in, void *buffer, size_t bytes, size_t *bytes_read); int audio_extn_cin_configure_input_stream(struct stream_in *in); Loading hal/audio_extn/compress_in.c +14 −3 Original line number Diff line number Diff line Loading @@ -179,7 +179,7 @@ size_t cin_get_buffer_size(struct stream_in *in) return sz; } int cin_start_input_stream(struct stream_in *in) int cin_open_input_stream(struct stream_in *in) { int ret = -EINVAL; struct audio_device *adev = in->dev; Loading @@ -206,6 +206,17 @@ void cin_stop_input_stream(struct stream_in *in) { cin_private_data_t *cin_data = (cin_private_data_t *) in->cin_extn; ALOGV("%s: in %p, cin_data %p", __func__, in, cin_data); if (cin_data->compr) { compress_stop(cin_data->compr); } } void cin_close_input_stream(struct stream_in *in) { cin_private_data_t *cin_data = (cin_private_data_t *) in->cin_extn; ALOGV("%s: in %p, cin_data %p", __func__, in, cin_data); if (cin_data->compr) { compress_close(cin_data->compr); Loading @@ -213,7 +224,7 @@ void cin_stop_input_stream(struct stream_in *in) } } void cin_close_input_stream(struct stream_in *in) void cin_free_input_stream_resources(struct stream_in *in) { cin_private_data_t *cin_data = (cin_private_data_t *) in->cin_extn; Loading Loading @@ -332,6 +343,6 @@ int cin_configure_input_stream(struct stream_in *in) return ret; err_config: cin_close_input_stream(in); cin_free_input_stream_resources(in); return ret; } hal/audio_hw.c +3 −3 Original line number Diff line number Diff line Loading @@ -2910,7 +2910,7 @@ int start_input_stream(struct stream_in *in) ALOGE("%s: failed to start ext hw plugin", __func__); if (audio_extn_cin_attached_usecase(in->usecase)) { ret = audio_extn_cin_start_input_stream(in); ret = audio_extn_cin_open_input_stream(in); if (ret) goto error_open; else Loading Loading @@ -6228,7 +6228,7 @@ static int in_standby(struct audio_stream *stream) in->capture_started = false; } else { if (audio_extn_cin_attached_usecase(in->usecase)) audio_extn_cin_stop_input_stream(in); audio_extn_cin_close_input_stream(in); } if (in->pcm) { Loading Loading @@ -9023,7 +9023,7 @@ static void adev_close_input_stream(struct audio_hw_device *dev, audio_extn_compr_cap_deinit(); if (audio_extn_cin_attached_usecase(in->usecase)) audio_extn_cin_close_input_stream(in); audio_extn_cin_free_input_stream_resources(in); if (in->is_st_session) { ALOGV("%s: sound trigger pcm stop lab", __func__); Loading hal/audio_hw_extn_api.c +21 −0 Original line number Diff line number Diff line Loading @@ -190,6 +190,27 @@ int qahwi_set_param_data(struct audio_hw_device *adev, return ret; } int qahwi_in_stop(struct audio_stream_in* stream) { struct stream_in *in = (struct stream_in *)stream; struct audio_device *adev = in->dev; ALOGD("%s processing, in %p", __func__, in); pthread_mutex_lock(&adev->lock); if (!in->standby) { if (in->pcm != NULL ) { pcm_stop(in->pcm); } else if (audio_extn_cin_format_supported(in->format)) { audio_extn_cin_stop_input_stream(in); } } pthread_mutex_unlock(&adev->lock); return 0; } ssize_t qahwi_in_read_v2(struct audio_stream_in *stream, void* buffer, size_t bytes, uint64_t *timestamp) { Loading Loading
hal/audio_extn/audio_extn.c +8 −3 Original line number Diff line number Diff line Loading @@ -98,9 +98,10 @@ bool cin_applicable_stream(struct stream_in *in); bool cin_attached_usecase(audio_usecase_t uc_id); bool cin_format_supported(audio_format_t format); size_t cin_get_buffer_size(struct stream_in *in); int cin_start_input_stream(struct stream_in *in); int cin_open_input_stream(struct stream_in *in); void cin_stop_input_stream(struct stream_in *in); void cin_close_input_stream(struct stream_in *in); void cin_free_input_stream_resources(struct stream_in *in); int cin_read(struct stream_in *in, void *buffer, size_t bytes, size_t *bytes_read); int cin_configure_input_stream(struct stream_in *in); Loading Loading @@ -5063,9 +5064,9 @@ size_t audio_extn_cin_get_buffer_size(struct stream_in *in) { return (audio_extn_compress_in_enabled? cin_get_buffer_size(in): 0); } int audio_extn_cin_start_input_stream(struct stream_in *in) int audio_extn_cin_open_input_stream(struct stream_in *in) { return (audio_extn_compress_in_enabled? cin_start_input_stream(in): -1); return (audio_extn_compress_in_enabled? cin_open_input_stream(in): -1); } void audio_extn_cin_stop_input_stream(struct stream_in *in) { Loading @@ -5075,6 +5076,10 @@ void audio_extn_cin_close_input_stream(struct stream_in *in) { (audio_extn_compress_in_enabled? cin_close_input_stream(in): NULL); } void audio_extn_cin_free_input_stream_resources(struct stream_in *in) { return (audio_extn_compress_in_enabled? cin_free_input_stream_resources(in): NULL); } int audio_extn_cin_read(struct stream_in *in, void *buffer, size_t bytes, size_t *bytes_read) { Loading
hal/audio_extn/audio_extn.h +2 −1 Original line number Diff line number Diff line Loading @@ -1066,9 +1066,10 @@ bool audio_extn_cin_applicable_stream(struct stream_in *in); bool audio_extn_cin_attached_usecase(audio_usecase_t uc_id); bool audio_extn_cin_format_supported(audio_format_t format); size_t audio_extn_cin_get_buffer_size(struct stream_in *in); int audio_extn_cin_start_input_stream(struct stream_in *in); int audio_extn_cin_open_input_stream(struct stream_in *in); void audio_extn_cin_stop_input_stream(struct stream_in *in); void audio_extn_cin_close_input_stream(struct stream_in *in); void audio_extn_cin_free_input_stream_resources(struct stream_in *in); int audio_extn_cin_read(struct stream_in *in, void *buffer, size_t bytes, size_t *bytes_read); int audio_extn_cin_configure_input_stream(struct stream_in *in); Loading
hal/audio_extn/compress_in.c +14 −3 Original line number Diff line number Diff line Loading @@ -179,7 +179,7 @@ size_t cin_get_buffer_size(struct stream_in *in) return sz; } int cin_start_input_stream(struct stream_in *in) int cin_open_input_stream(struct stream_in *in) { int ret = -EINVAL; struct audio_device *adev = in->dev; Loading @@ -206,6 +206,17 @@ void cin_stop_input_stream(struct stream_in *in) { cin_private_data_t *cin_data = (cin_private_data_t *) in->cin_extn; ALOGV("%s: in %p, cin_data %p", __func__, in, cin_data); if (cin_data->compr) { compress_stop(cin_data->compr); } } void cin_close_input_stream(struct stream_in *in) { cin_private_data_t *cin_data = (cin_private_data_t *) in->cin_extn; ALOGV("%s: in %p, cin_data %p", __func__, in, cin_data); if (cin_data->compr) { compress_close(cin_data->compr); Loading @@ -213,7 +224,7 @@ void cin_stop_input_stream(struct stream_in *in) } } void cin_close_input_stream(struct stream_in *in) void cin_free_input_stream_resources(struct stream_in *in) { cin_private_data_t *cin_data = (cin_private_data_t *) in->cin_extn; Loading Loading @@ -332,6 +343,6 @@ int cin_configure_input_stream(struct stream_in *in) return ret; err_config: cin_close_input_stream(in); cin_free_input_stream_resources(in); return ret; }
hal/audio_hw.c +3 −3 Original line number Diff line number Diff line Loading @@ -2910,7 +2910,7 @@ int start_input_stream(struct stream_in *in) ALOGE("%s: failed to start ext hw plugin", __func__); if (audio_extn_cin_attached_usecase(in->usecase)) { ret = audio_extn_cin_start_input_stream(in); ret = audio_extn_cin_open_input_stream(in); if (ret) goto error_open; else Loading Loading @@ -6228,7 +6228,7 @@ static int in_standby(struct audio_stream *stream) in->capture_started = false; } else { if (audio_extn_cin_attached_usecase(in->usecase)) audio_extn_cin_stop_input_stream(in); audio_extn_cin_close_input_stream(in); } if (in->pcm) { Loading Loading @@ -9023,7 +9023,7 @@ static void adev_close_input_stream(struct audio_hw_device *dev, audio_extn_compr_cap_deinit(); if (audio_extn_cin_attached_usecase(in->usecase)) audio_extn_cin_close_input_stream(in); audio_extn_cin_free_input_stream_resources(in); if (in->is_st_session) { ALOGV("%s: sound trigger pcm stop lab", __func__); Loading
hal/audio_hw_extn_api.c +21 −0 Original line number Diff line number Diff line Loading @@ -190,6 +190,27 @@ int qahwi_set_param_data(struct audio_hw_device *adev, return ret; } int qahwi_in_stop(struct audio_stream_in* stream) { struct stream_in *in = (struct stream_in *)stream; struct audio_device *adev = in->dev; ALOGD("%s processing, in %p", __func__, in); pthread_mutex_lock(&adev->lock); if (!in->standby) { if (in->pcm != NULL ) { pcm_stop(in->pcm); } else if (audio_extn_cin_format_supported(in->format)) { audio_extn_cin_stop_input_stream(in); } } pthread_mutex_unlock(&adev->lock); return 0; } ssize_t qahwi_in_read_v2(struct audio_stream_in *stream, void* buffer, size_t bytes, uint64_t *timestamp) { Loading