From: Sangchul Lee Date: Tue, 4 Oct 2022 06:45:37 +0000 (+0900) Subject: webrtc_test: Add menu for new internal APIs tests X-Git-Tag: accepted/tizen/7.0/unified/20221129.172453^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=fac5f50b48d2cb827b34cc893fc0baeb7d63afe5;p=platform%2Fcore%2Fapi%2Fwebrtc.git webrtc_test: Add menu for new internal APIs tests 1. set/get audio track mute 2. get video track resolution [Version] 0.3.267 [Issue Type] Add Change-Id: I953ee0f0b3b1d982c393ada0bd4058228d981307 Signed-off-by: Sangchul Lee --- diff --git a/packaging/capi-media-webrtc.spec b/packaging/capi-media-webrtc.spec index 1b87e83d..7358eac5 100644 --- a/packaging/capi-media-webrtc.spec +++ b/packaging/capi-media-webrtc.spec @@ -1,6 +1,6 @@ Name: capi-media-webrtc Summary: A WebRTC library in Tizen Native API -Version: 0.3.266 +Version: 0.3.267 Release: 0 Group: Multimedia/API License: Apache-2.0 diff --git a/test/webrtc_test.c b/test/webrtc_test.c index 0b12ffbf..0e7d9381 100644 --- a/test/webrtc_test.c +++ b/test/webrtc_test.c @@ -858,6 +858,37 @@ static void _webrtc_get_display_visible(int index, unsigned int track_id) g_print("webrtc_get_display_visible() success, track_id[%u], visible[%u]\n", track_id, visible); } +static void _webrtc_set_audio_mute(int index, unsigned int track_id, int mute) +{ + int ret = webrtc_set_audio_mute(g_ad.conns[index].webrtc, track_id, (bool)mute); + RET_IF(ret != WEBRTC_ERROR_NONE, "ret[0x%x]", ret); + + g_print("webrtc_set_audio_mute() success, track_id[%u], mute[%u]\n", track_id, mute); +} + +static void _webrtc_get_audio_mute(int index, unsigned int track_id) +{ + int ret = WEBRTC_ERROR_NONE; + bool muted; + + ret = webrtc_get_audio_mute(g_ad.conns[index].webrtc, track_id, &muted); + RET_IF(ret != WEBRTC_ERROR_NONE, "ret[0x%x]", ret); + + g_print("webrtc_get_audio_mute() success, track_id[%u], muted[%u]\n", track_id, muted); +} + +static void _webrtc_get_video_resolution(int index, unsigned int track_id) +{ + int ret = WEBRTC_ERROR_NONE; + int width; + int height; + + ret = webrtc_get_video_resolution(g_ad.conns[index].webrtc, track_id, &width, &height); + RET_IF(ret != WEBRTC_ERROR_NONE, "ret[0x%x]", ret); + + g_print("webrtc_get_video_resolution() success, track_id[%u], width[%d], height[%d]\n", track_id, width, height); +} + static void _webrtc_media_source_set_audio_loopback(int index, unsigned int source_id) { int ret = WEBRTC_ERROR_NONE; @@ -3561,6 +3592,31 @@ static void test_webrtc_media_render(char *cmd) value = atoi(cmd); _webrtc_get_display_visible(0, value); break; + case CURRENT_STATUS_SET_AUDIO_MUTE: { + static unsigned int id; + value = atoi(cmd); + + switch (g_ad.input_count) { + case 0: + id = value; + g_ad.input_count++; + return; + case 1: + _webrtc_set_audio_mute(0, id, value); + id = 0; + g_ad.input_count = 0; + break; + } + break; + } + case CURRENT_STATUS_GET_AUDIO_MUTE: + value = atoi(cmd); + _webrtc_get_audio_mute(0, value); + break; + case CURRENT_STATUS_GET_VIDEO_RESOLUTION: + value = atoi(cmd); + _webrtc_get_video_resolution(0, value); + break; case CURRENT_STATUS_SET_ENCODED_AUDIO_FRAME_CB: _webrtc_set_encoded_audio_frame_cb(0); break; diff --git a/test/webrtc_test_menu.c b/test/webrtc_test_menu.c index a535a8bc..61aea257 100644 --- a/test/webrtc_test_menu.c +++ b/test/webrtc_test_menu.c @@ -84,6 +84,9 @@ menu_info_s g_menu_infos[] = { { "gm", CURRENT_STATUS_GET_DISPLAY_MODE, true }, { "dv", CURRENT_STATUS_SET_DISPLAY_VISIBLE, true }, { "gv", CURRENT_STATUS_GET_DISPLAY_VISIBLE, true }, + { "sam", CURRENT_STATUS_SET_AUDIO_MUTE, true }, + { "gam", CURRENT_STATUS_GET_AUDIO_MUTE, true }, + { "gvr", CURRENT_STATUS_GET_VIDEO_RESOLUTION, true }, { "sa", CURRENT_STATUS_SET_ENCODED_AUDIO_FRAME_CB, false }, { "ua", CURRENT_STATUS_UNSET_ENCODED_AUDIO_FRAME_CB, false }, { "sv", CURRENT_STATUS_SET_ENCODED_VIDEO_FRAME_CB, false }, @@ -250,6 +253,9 @@ void display_menu_main(void) g_print("gm. Get display mode\n"); g_print("dv. Set display visible\t"); g_print("gv. Get display visible\n"); + g_print("*sam. Set audio mute\t"); + g_print("*gam. Get audio mute\n"); + g_print("*gvr. Get video resolution\n"); g_print("al. Set audio loopback\t"); g_print("ual. Unset audio loopback\n"); g_print("vl. Set video loopback\t"); @@ -530,6 +536,18 @@ void display_menu_webrtc_media_render(void) case CURRENT_STATUS_GET_DISPLAY_VISIBLE: g_print("*** input track id.\n"); break; + case CURRENT_STATUS_SET_AUDIO_MUTE: + if (get_appdata()->input_count == 0) + g_print("*** input track id.\n"); + else if (get_appdata()->input_count == 1) + g_print("*** input audio mute.(1:true 0:false)\n"); + break; + case CURRENT_STATUS_GET_AUDIO_MUTE: + g_print("*** input track id.\n"); + break; + case CURRENT_STATUS_GET_VIDEO_RESOLUTION: + g_print("*** input track id.\n"); + break; case CURRENT_STATUS_MEDIA_SOURCE_SET_AUDIO_LOOPBACK: g_print("*** input source id.\n"); break; diff --git a/test/webrtc_test_priv.h b/test/webrtc_test_priv.h index 2fb31e4c..89e715d4 100644 --- a/test/webrtc_test_priv.h +++ b/test/webrtc_test_priv.h @@ -123,14 +123,17 @@ enum { CURRENT_STATUS_GET_DISPLAY_MODE = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x03, CURRENT_STATUS_SET_DISPLAY_VISIBLE = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x04, CURRENT_STATUS_GET_DISPLAY_VISIBLE = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x05, - CURRENT_STATUS_SET_ENCODED_AUDIO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x06, - CURRENT_STATUS_UNSET_ENCODED_AUDIO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x07, - CURRENT_STATUS_SET_ENCODED_VIDEO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x08, - CURRENT_STATUS_UNSET_ENCODED_VIDEO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x09, - CURRENT_STATUS_MEDIA_SOURCE_SET_AUDIO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0A, - CURRENT_STATUS_MEDIA_SOURCE_UNSET_AUDIO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0B, - CURRENT_STATUS_MEDIA_SOURCE_SET_VIDEO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0C, - CURRENT_STATUS_MEDIA_SOURCE_UNSET_VIDEO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0D, + CURRENT_STATUS_SET_AUDIO_MUTE = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x06, + CURRENT_STATUS_GET_AUDIO_MUTE = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x07, + CURRENT_STATUS_GET_VIDEO_RESOLUTION = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x08, + CURRENT_STATUS_SET_ENCODED_AUDIO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x09, + CURRENT_STATUS_UNSET_ENCODED_AUDIO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0A, + CURRENT_STATUS_SET_ENCODED_VIDEO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0B, + CURRENT_STATUS_UNSET_ENCODED_VIDEO_FRAME_CB = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0C, + CURRENT_STATUS_MEDIA_SOURCE_SET_AUDIO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0D, + CURRENT_STATUS_MEDIA_SOURCE_UNSET_AUDIO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0E, + CURRENT_STATUS_MEDIA_SOURCE_SET_VIDEO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x0F, + CURRENT_STATUS_MEDIA_SOURCE_UNSET_VIDEO_LOOPBACK = TEST_MENU_WEBRTC_MEDIA_RENDER | 0x10, /* webrtc data channel */ CURRENT_STATUS_DATA_CHANNEL_CREATE = TEST_MENU_WEBRTC_DATA_CHANNEL | 0x01, CURRENT_STATUS_DATA_CHANNEL_DESTROY = TEST_MENU_WEBRTC_DATA_CHANNEL | 0x02,