From: Jaechul Lee Date: Fri, 15 Sep 2023 03:08:18 +0000 (+0900) Subject: [UTC][audio-io][Non-ACR] Add audio read testcases with a effect method X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=refs%2Fchanges%2F04%2F298904%2F4;p=test%2Ftct%2Fnative%2Fapi.git [UTC][audio-io][Non-ACR] Add audio read testcases with a effect method - Add utc_media_audio_in_read_with_effect_method_p - Add utc_media_audio_in_read_with_effect_method_n Change-Id: I4cd9b45f04ffd1bd22ce77701ae20f3ec69e5576 Signed-off-by: Jaechul Lee --- diff --git a/src/utc/audio-io/tct-audio-io-core_mobile.h b/src/utc/audio-io/tct-audio-io-core_mobile.h index 54a841b8a..0a1bb913f 100755 --- a/src/utc/audio-io/tct-audio-io-core_mobile.h +++ b/src/utc/audio-io/tct-audio-io-core_mobile.h @@ -31,6 +31,8 @@ extern int utc_media_audio_in_destroy_n(void); extern int utc_media_audio_in_read_p(void); extern int utc_media_audio_in_read_n1(void); extern int utc_media_audio_in_read_n2(void); +extern int utc_media_audio_in_read_with_effect_method_p(void); +extern int utc_media_audio_in_read_with_effect_method_n(void); extern int utc_media_audio_in_get_buffer_size_p(void); extern int utc_media_audio_in_get_buffer_size_n(void); extern int utc_media_audio_in_get_sample_rate_p(void); @@ -121,6 +123,8 @@ testcase tc_array[] = { {"utc_media_audio_in_read_p",utc_media_audio_in_read_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n1",utc_media_audio_in_read_n1,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n2",utc_media_audio_in_read_n2,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_p",utc_media_audio_in_read_with_effect_method_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_n",utc_media_audio_in_read_with_effect_method_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_p",utc_media_audio_in_get_buffer_size_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_n",utc_media_audio_in_get_buffer_size_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_sample_rate_p",utc_media_audio_in_get_sample_rate_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, diff --git a/src/utc/audio-io/tct-audio-io-core_tizeniot.h b/src/utc/audio-io/tct-audio-io-core_tizeniot.h index 54a841b8a..0a1bb913f 100755 --- a/src/utc/audio-io/tct-audio-io-core_tizeniot.h +++ b/src/utc/audio-io/tct-audio-io-core_tizeniot.h @@ -31,6 +31,8 @@ extern int utc_media_audio_in_destroy_n(void); extern int utc_media_audio_in_read_p(void); extern int utc_media_audio_in_read_n1(void); extern int utc_media_audio_in_read_n2(void); +extern int utc_media_audio_in_read_with_effect_method_p(void); +extern int utc_media_audio_in_read_with_effect_method_n(void); extern int utc_media_audio_in_get_buffer_size_p(void); extern int utc_media_audio_in_get_buffer_size_n(void); extern int utc_media_audio_in_get_sample_rate_p(void); @@ -121,6 +123,8 @@ testcase tc_array[] = { {"utc_media_audio_in_read_p",utc_media_audio_in_read_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n1",utc_media_audio_in_read_n1,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n2",utc_media_audio_in_read_n2,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_p",utc_media_audio_in_read_with_effect_method_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_n",utc_media_audio_in_read_with_effect_method_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_p",utc_media_audio_in_get_buffer_size_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_n",utc_media_audio_in_get_buffer_size_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_sample_rate_p",utc_media_audio_in_get_sample_rate_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, diff --git a/src/utc/audio-io/tct-audio-io-core_tv.h b/src/utc/audio-io/tct-audio-io-core_tv.h index 54a841b8a..0a1bb913f 100755 --- a/src/utc/audio-io/tct-audio-io-core_tv.h +++ b/src/utc/audio-io/tct-audio-io-core_tv.h @@ -31,6 +31,8 @@ extern int utc_media_audio_in_destroy_n(void); extern int utc_media_audio_in_read_p(void); extern int utc_media_audio_in_read_n1(void); extern int utc_media_audio_in_read_n2(void); +extern int utc_media_audio_in_read_with_effect_method_p(void); +extern int utc_media_audio_in_read_with_effect_method_n(void); extern int utc_media_audio_in_get_buffer_size_p(void); extern int utc_media_audio_in_get_buffer_size_n(void); extern int utc_media_audio_in_get_sample_rate_p(void); @@ -121,6 +123,8 @@ testcase tc_array[] = { {"utc_media_audio_in_read_p",utc_media_audio_in_read_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n1",utc_media_audio_in_read_n1,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n2",utc_media_audio_in_read_n2,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_p",utc_media_audio_in_read_with_effect_method_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_n",utc_media_audio_in_read_with_effect_method_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_p",utc_media_audio_in_get_buffer_size_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_n",utc_media_audio_in_get_buffer_size_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_sample_rate_p",utc_media_audio_in_get_sample_rate_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, diff --git a/src/utc/audio-io/tct-audio-io-core_wearable.h b/src/utc/audio-io/tct-audio-io-core_wearable.h index 54a841b8a..0a1bb913f 100755 --- a/src/utc/audio-io/tct-audio-io-core_wearable.h +++ b/src/utc/audio-io/tct-audio-io-core_wearable.h @@ -31,6 +31,8 @@ extern int utc_media_audio_in_destroy_n(void); extern int utc_media_audio_in_read_p(void); extern int utc_media_audio_in_read_n1(void); extern int utc_media_audio_in_read_n2(void); +extern int utc_media_audio_in_read_with_effect_method_p(void); +extern int utc_media_audio_in_read_with_effect_method_n(void); extern int utc_media_audio_in_get_buffer_size_p(void); extern int utc_media_audio_in_get_buffer_size_n(void); extern int utc_media_audio_in_get_sample_rate_p(void); @@ -121,6 +123,8 @@ testcase tc_array[] = { {"utc_media_audio_in_read_p",utc_media_audio_in_read_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n1",utc_media_audio_in_read_n1,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_read_n2",utc_media_audio_in_read_n2,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_p",utc_media_audio_in_read_with_effect_method_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, + {"utc_media_audio_in_read_with_effect_method_n",utc_media_audio_in_read_with_effect_method_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_p",utc_media_audio_in_get_buffer_size_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_buffer_size_n",utc_media_audio_in_get_buffer_size_n,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, {"utc_media_audio_in_get_sample_rate_p",utc_media_audio_in_get_sample_rate_p,utc_media_audio_in_startup,utc_media_audio_in_cleanup}, diff --git a/src/utc/audio-io/utc-media-audio-input.c b/src/utc/audio-io/utc-media-audio-input.c index c487d2d3a..5e8245ad1 100755 --- a/src/utc/audio-io/utc-media-audio-input.c +++ b/src/utc/audio-io/utc-media-audio-input.c @@ -20,6 +20,7 @@ #include //& set: Audio Input +#define SAMPLE_RATE_16000 16000 #define SAMPLE_RATE_44100 44100 #define SAMPLE_RATE_48000 48000 #define SAMPLE_RATE_192000 192000 @@ -391,6 +392,115 @@ int utc_media_audio_in_read_n2(void) return 0; } +/** + * @testcase utc_media_audio_in_read_with_effect_method_p + * @since_tizen 8.0 + * @description Read audio data with a effect method from the audio input buffer.\n + * - Prepare audio input.\n + * - Set a effect method.\n + * - Get buffer size.\n + * - Read audio input buffer to allocated buffer.\n + * - Unprepare audio input. + */ +int utc_media_audio_in_read_with_effect_method_p(void) +{ + int ret, size; + audio_in_h input = NULL; + sound_stream_info_h stream_info = NULL; + char *buffer = NULL; + + ret = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, NULL, NULL, &stream_info); + assert_eq(ret, SOUND_MANAGER_ERROR_NONE); + + ret = sound_manager_set_effect_method(stream_info, SOUND_EFFECT_AUTOMATIC_GAIN_CONTROL_CAPTURE); + assert_eq(ret, SOUND_MANAGER_ERROR_NONE); + + ret = audio_in_create(SAMPLE_RATE_16000, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_S16_LE, &input); + if (ret == AUDIO_IO_ERROR_NOT_SUPPORTED && g_bFeatureSupported == false) + return 0; + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + ret = audio_in_set_sound_stream_info(input, stream_info); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + ret = audio_in_prepare(input); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + ret = audio_in_get_buffer_size(input, &size); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + buffer = malloc(size); + assert_neq(buffer, NULL); + + ret = audio_in_read(input, (void*)buffer, size); + assert_gt(ret, 0); + + ret = audio_in_destroy(input); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + sound_manager_destroy_stream_information(stream_info); + + free (buffer); + + return 0; +} + +/** + * @testcase utc_media_audio_in_read_with_effect_method_n + * @since_tizen 8.0 + * @description Read audio data with a effect method from the audio input buffer.\n + * - Prepare audio input.\n + * - Set a effect method.\n + * - Get buffer size.\n + * - Read audio input buffer after pausing the handle to get invalid operation error.\n + * - Unprepare audio input. + */ +int utc_media_audio_in_read_with_effect_method_n(void) +{ + int ret, size; + audio_in_h input = NULL; + sound_stream_info_h stream_info = NULL; + char *buffer = NULL; + + ret = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, NULL, NULL, &stream_info); + assert_eq(ret, SOUND_MANAGER_ERROR_NONE); + + ret = sound_manager_set_effect_method(stream_info, SOUND_EFFECT_AUTOMATIC_GAIN_CONTROL_CAPTURE); + assert_eq(ret, SOUND_MANAGER_ERROR_NONE); + + ret = audio_in_create(SAMPLE_RATE_16000, AUDIO_CHANNEL_MONO, AUDIO_SAMPLE_TYPE_S16_LE, &input); + if (ret == AUDIO_IO_ERROR_NOT_SUPPORTED && g_bFeatureSupported == false) + return 0; + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + ret = audio_in_set_sound_stream_info(input, stream_info); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + ret = audio_in_prepare(input); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + ret = audio_in_get_buffer_size(input, &size); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + ret = audio_in_pause(input); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + buffer = malloc(size); + assert_neq(buffer, NULL); + + ret = audio_in_read(input, (void*)buffer, size); + assert_eq(ret, AUDIO_IO_ERROR_INVALID_OPERATION); + + ret = audio_in_destroy(input); + assert_eq(ret, AUDIO_IO_ERROR_NONE); + + sound_manager_destroy_stream_information(stream_info); + + free (buffer); + + return 0; +} + /** * @testcase utc_media_audio_in_get_buffer_size_p * @since_tizen 2.3