[UTC][sound-manager][ACR-1781] Add effect to set effect methods functions 78/296178/3
authorJaechul Lee <jcsing.lee@samsung.com>
Fri, 21 Jul 2023 04:43:26 +0000 (13:43 +0900)
committerJaechul Lee <jcsing.lee@samsung.com>
Mon, 24 Jul 2023 03:04:53 +0000 (12:04 +0900)
Change-Id: I83e27d810f6aaffd8b3c1f5908f8eb4ccc1a47d3
Signed-off-by: Jaechul Lee <jcsing.lee@samsung.com>
src/utc/sound-manager/public.list
src/utc/sound-manager/tct-sound-manager-core_mobile.h
src/utc/sound-manager/tct-sound-manager-core_tizeniot.h
src/utc/sound-manager/tct-sound-manager-core_tv.h
src/utc/sound-manager/tct-sound-manager-core_wearable.h
src/utc/sound-manager/utc-media-sound-manager.c

index 5811f7eb089dc09e268a9a4ad7afc49150dbf909..6d0d2b82e05c2bb2e3e43dd57f042daa7501b15d 100644 (file)
@@ -48,3 +48,7 @@ sound_manager_is_ducked
 sound_manager_activate_ducking
 sound_manager_deactivate_ducking
 sound_manager_destroy_stream_ducking
+sound_manager_set_effect_method_with_reference
+sound_manager_get_effect_method_with_reference
+sound_manager_set_effect_method
+sound_manager_get_effect_method
index 5b479c2eabc312c7365a4ea16e1ee5c3e2c817a1..1e6386edb64914a28e2d80aa090782ddcd5d556a 100644 (file)
@@ -152,6 +152,14 @@ extern int utc_media_sound_manager_deactivate_ducking_p(void);
 extern int utc_media_sound_manager_deactivate_ducking_n(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_p(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_n(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_set_effect_method_p(void);
+extern int utc_media_sound_manager_set_effect_method_n(void);
+extern int utc_media_sound_manager_get_effect_method_p(void);
+extern int utc_media_sound_manager_get_effect_method_n(void);
 
 testcase tc_array[] = {
        {"utc_media_sound_manager_get_max_volume_p1",utc_media_sound_manager_get_max_volume_p1,NULL,NULL},
@@ -286,6 +294,14 @@ testcase tc_array[] = {
        {"utc_media_sound_manager_deactivate_ducking_n",utc_media_sound_manager_deactivate_ducking_n,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_p",utc_media_sound_manager_destroy_stream_ducking_p,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_n",utc_media_sound_manager_destroy_stream_ducking_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_p",utc_media_sound_manager_set_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_n",utc_media_sound_manager_set_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_p",utc_media_sound_manager_get_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_n",utc_media_sound_manager_get_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_p",utc_media_sound_manager_set_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_n",utc_media_sound_manager_set_effect_method_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_p",utc_media_sound_manager_get_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_n",utc_media_sound_manager_get_effect_method_n,NULL,NULL},
        {NULL, NULL}
 };
 
index 5b479c2eabc312c7365a4ea16e1ee5c3e2c817a1..1e6386edb64914a28e2d80aa090782ddcd5d556a 100644 (file)
@@ -152,6 +152,14 @@ extern int utc_media_sound_manager_deactivate_ducking_p(void);
 extern int utc_media_sound_manager_deactivate_ducking_n(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_p(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_n(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_set_effect_method_p(void);
+extern int utc_media_sound_manager_set_effect_method_n(void);
+extern int utc_media_sound_manager_get_effect_method_p(void);
+extern int utc_media_sound_manager_get_effect_method_n(void);
 
 testcase tc_array[] = {
        {"utc_media_sound_manager_get_max_volume_p1",utc_media_sound_manager_get_max_volume_p1,NULL,NULL},
@@ -286,6 +294,14 @@ testcase tc_array[] = {
        {"utc_media_sound_manager_deactivate_ducking_n",utc_media_sound_manager_deactivate_ducking_n,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_p",utc_media_sound_manager_destroy_stream_ducking_p,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_n",utc_media_sound_manager_destroy_stream_ducking_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_p",utc_media_sound_manager_set_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_n",utc_media_sound_manager_set_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_p",utc_media_sound_manager_get_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_n",utc_media_sound_manager_get_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_p",utc_media_sound_manager_set_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_n",utc_media_sound_manager_set_effect_method_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_p",utc_media_sound_manager_get_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_n",utc_media_sound_manager_get_effect_method_n,NULL,NULL},
        {NULL, NULL}
 };
 
index 5b479c2eabc312c7365a4ea16e1ee5c3e2c817a1..1e6386edb64914a28e2d80aa090782ddcd5d556a 100644 (file)
@@ -152,6 +152,14 @@ extern int utc_media_sound_manager_deactivate_ducking_p(void);
 extern int utc_media_sound_manager_deactivate_ducking_n(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_p(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_n(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_set_effect_method_p(void);
+extern int utc_media_sound_manager_set_effect_method_n(void);
+extern int utc_media_sound_manager_get_effect_method_p(void);
+extern int utc_media_sound_manager_get_effect_method_n(void);
 
 testcase tc_array[] = {
        {"utc_media_sound_manager_get_max_volume_p1",utc_media_sound_manager_get_max_volume_p1,NULL,NULL},
@@ -286,6 +294,14 @@ testcase tc_array[] = {
        {"utc_media_sound_manager_deactivate_ducking_n",utc_media_sound_manager_deactivate_ducking_n,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_p",utc_media_sound_manager_destroy_stream_ducking_p,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_n",utc_media_sound_manager_destroy_stream_ducking_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_p",utc_media_sound_manager_set_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_n",utc_media_sound_manager_set_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_p",utc_media_sound_manager_get_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_n",utc_media_sound_manager_get_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_p",utc_media_sound_manager_set_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_n",utc_media_sound_manager_set_effect_method_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_p",utc_media_sound_manager_get_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_n",utc_media_sound_manager_get_effect_method_n,NULL,NULL},
        {NULL, NULL}
 };
 
index 5b479c2eabc312c7365a4ea16e1ee5c3e2c817a1..1e6386edb64914a28e2d80aa090782ddcd5d556a 100644 (file)
@@ -152,6 +152,14 @@ extern int utc_media_sound_manager_deactivate_ducking_p(void);
 extern int utc_media_sound_manager_deactivate_ducking_n(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_p(void);
 extern int utc_media_sound_manager_destroy_stream_ducking_n(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_set_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_p(void);
+extern int utc_media_sound_manager_get_effect_method_with_reference_n(void);
+extern int utc_media_sound_manager_set_effect_method_p(void);
+extern int utc_media_sound_manager_set_effect_method_n(void);
+extern int utc_media_sound_manager_get_effect_method_p(void);
+extern int utc_media_sound_manager_get_effect_method_n(void);
 
 testcase tc_array[] = {
        {"utc_media_sound_manager_get_max_volume_p1",utc_media_sound_manager_get_max_volume_p1,NULL,NULL},
@@ -286,6 +294,14 @@ testcase tc_array[] = {
        {"utc_media_sound_manager_deactivate_ducking_n",utc_media_sound_manager_deactivate_ducking_n,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_p",utc_media_sound_manager_destroy_stream_ducking_p,NULL,NULL},
        {"utc_media_sound_manager_destroy_stream_ducking_n",utc_media_sound_manager_destroy_stream_ducking_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_p",utc_media_sound_manager_set_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_with_reference_n",utc_media_sound_manager_set_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_p",utc_media_sound_manager_get_effect_method_with_reference_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_with_reference_n",utc_media_sound_manager_get_effect_method_with_reference_n,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_p",utc_media_sound_manager_set_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_set_effect_method_n",utc_media_sound_manager_set_effect_method_n,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_p",utc_media_sound_manager_get_effect_method_p,NULL,NULL},
+       {"utc_media_sound_manager_get_effect_method_n",utc_media_sound_manager_get_effect_method_n,NULL,NULL},
        {NULL, NULL}
 };
 
index f9d06ff8947b1c147d8dc7f0e60aaf39f5d94a0d..b6b17f589f094636054afc3b8862850065661629 100644 (file)
@@ -2764,3 +2764,224 @@ int utc_media_sound_manager_destroy_stream_ducking_n(void)
 
        return 0;
 }
+
+/**
+ * @testcase           utc_media_sound_manager_set_effect_method_with_reference_p
+ * @since_tizen                8.0
+ * @description                Sets the value of effect methods with a reference device
+ */
+int utc_media_sound_manager_set_effect_method_with_reference_p(void)
+{
+       int ret;
+       sound_stream_info_h stream_info;
+
+       sound_device_list_h device_list = NULL;
+       sound_device_h device = NULL;
+
+       ret = sound_manager_get_device_list(SOUND_DEVICE_ALL_MASK, &device_list);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       ret = sound_manager_get_next_device(device_list, &device);
+
+       if (ret == SOUND_MANAGER_ERROR_NONE) {
+               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_with_reference(stream_info, SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_SPEEX, device);
+               assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+               sound_manager_destroy_stream_information(stream_info);
+       }
+
+       ret = sound_manager_free_device_list(device_list);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_sound_manager_set_effect_method_with_reference_n
+ * @since_tizen                8.0
+ * @description                Sets the value of effect methods with a reference device
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_sound_manager_set_effect_method_with_reference_n(void)
+{
+       int ret;
+       sound_stream_info_h stream_info;
+
+       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_with_reference(stream_info, SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_SPEEX, NULL);
+       assert_eq(ret, SOUND_MANAGER_ERROR_INVALID_PARAMETER);
+
+       ret = sound_manager_set_effect_method_with_reference(stream_info, 0, NULL);
+       assert_eq(ret, SOUND_MANAGER_ERROR_INVALID_PARAMETER);
+
+       sound_manager_destroy_stream_information(stream_info);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_sound_manager_get_effect_method_with_reference_p
+ * @since_tizen                8.0
+ * @description                Gets the value of effect methods with a reference device
+ */
+int utc_media_sound_manager_get_effect_method_with_reference_p(void)
+{
+       int ret;
+       int device_id;
+       sound_stream_info_h stream_info;
+       sound_effect_method_with_reference_e method;
+
+       sound_device_list_h device_list = NULL;
+       sound_device_h device = NULL;
+
+       ret = sound_manager_get_device_list(SOUND_DEVICE_ALL_MASK, &device_list);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       ret = sound_manager_get_next_device(device_list, &device);
+
+       if (ret == SOUND_MANAGER_ERROR_NONE) {
+               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_with_reference(stream_info, SOUND_EFFECT_ACOUSTIC_ECHO_CANCEL_SPEEX, device);
+               assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+               ret = sound_manager_get_effect_method_with_reference(stream_info, &method, &device_id);
+               assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+               sound_manager_destroy_stream_information(stream_info);
+       }
+
+       ret = sound_manager_free_device_list(device_list);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_sound_manager_get_effect_method_with_reference_n
+ * @since_tizen                8.0
+ * @description                Gets the value of effect methods with a reference device
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_sound_manager_get_effect_method_with_reference_n(void)
+{
+       int ret;
+       int device_id;
+       sound_stream_info_h stream_info;
+       sound_effect_method_with_reference_e method;
+
+       ret = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, NULL, NULL, &stream_info);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       ret = sound_manager_get_effect_method_with_reference(stream_info, NULL, &device_id);
+       assert_eq(ret, SOUND_MANAGER_ERROR_INVALID_PARAMETER);
+
+       ret = sound_manager_get_effect_method_with_reference(stream_info, &method, NULL);
+       assert_eq(ret, SOUND_MANAGER_ERROR_INVALID_PARAMETER);
+
+       sound_manager_destroy_stream_information(stream_info);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_sound_manager_set_effect_method_p
+ * @since_tizen                8.0
+ * @description                Sets the value of effect methods
+ */
+int utc_media_sound_manager_set_effect_method_p(void)
+{
+       int ret;
+       sound_stream_info_h stream_info;
+
+       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_NOISE_SUPPRESSION_VOIP);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       ret = sound_manager_set_effect_method(stream_info, SOUND_EFFECT_NOISE_SUPPRESSION_VOIP | SOUND_EFFECT_AUTOMATIC_GAIN_CONTROL_CAPTURE);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       sound_manager_destroy_stream_information(stream_info);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_sound_manager_set_effect_method_n
+ * @since_tizen                8.0
+ * @description                Sets the value of effect methods
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_sound_manager_set_effect_method_n(void)
+{
+       int ret;
+       sound_stream_info_h stream_info;
+
+       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, 0x0000);
+       assert_eq(ret, SOUND_MANAGER_ERROR_INVALID_PARAMETER);
+
+       sound_manager_destroy_stream_information(stream_info);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_sound_manager_get_effect_method_p
+ * @since_tizen                8.0
+ * @description                Gets the value of effect methods
+ */
+int utc_media_sound_manager_get_effect_method_p(void)
+{
+       int ret;
+       int methods;
+       sound_stream_info_h stream_info;
+
+       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_NOISE_SUPPRESSION_VOIP);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       ret = sound_manager_get_effect_method(stream_info, &methods);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+       assert_eq(methods, SOUND_EFFECT_NOISE_SUPPRESSION_VOIP);
+
+       sound_manager_destroy_stream_information(stream_info);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_sound_manager_get_effect_method_n
+ * @since_tizen                8.0
+ * @description                Gets the value of effect methods
+ *                             - Try to get methods that haven't been set before
+ */
+int utc_media_sound_manager_get_effect_method_n(void)
+{
+       int ret;
+       int methods;
+       sound_stream_info_h stream_info;
+
+       ret = sound_manager_create_stream_information(SOUND_STREAM_TYPE_MEDIA, NULL, NULL, &stream_info);
+       assert_eq(ret, SOUND_MANAGER_ERROR_NONE);
+
+       ret = sound_manager_get_effect_method(stream_info, &methods);
+       assert_eq(ret, SOUND_MANAGER_ERROR_INVALID_OPERATION);
+
+       sound_manager_destroy_stream_information(stream_info);
+
+       return 0;
+}
+