[UTC][webrtc][ACR-1678] Add functions for video framerate and bundle policy 90/270690/2
authorSangchul Lee <sc11.lee@samsung.com>
Tue, 8 Feb 2022 01:58:49 +0000 (10:58 +0900)
committerSangchul Lee <sc11.lee@samsung.com>
Thu, 17 Mar 2022 03:04:06 +0000 (12:04 +0900)
Change-Id: I140133e0353caf882fbd1bb23e43c6aba59d7da6
Signed-off-by: Sangchul Lee <sc11.lee@samsung.com>
src/utc/webrtc/public.list
src/utc/webrtc/tct-webrtc-core_mobile.h
src/utc/webrtc/tct-webrtc-core_tizeniot.h
src/utc/webrtc/tct-webrtc-core_tv.h
src/utc/webrtc/tct-webrtc-core_wearable.h
src/utc/webrtc/utc-media-webrtc.c

index cc4278f75a5b426ef7c4c69c73765b5503050a91..ffe400d4564332ddeb49c7d4995b2f45706b0d98 100644 (file)
@@ -13,6 +13,8 @@ webrtc_media_source_set_mute
 webrtc_media_source_get_mute
 webrtc_media_source_set_video_resolution
 webrtc_media_source_get_video_resolution
+webrtc_media_source_set_video_framerate
+webrtc_media_source_get_video_framerate
 webrtc_mic_source_set_sound_stream_info
 webrtc_media_packet_source_set_format
 webrtc_media_packet_source_push_packet
@@ -33,6 +35,8 @@ webrtc_set_stun_server
 webrtc_get_stun_server
 webrtc_add_turn_server
 webrtc_foreach_turn_server
+webrtc_set_bundle_policy
+webrtc_get_bundle_policy
 webrtc_set_ice_transport_policy
 webrtc_get_ice_transport_policy
 webrtc_create_offer
index 635c7d4202648cb1191603fd5a5d38734db3f813..863d220aeef750e77689c3ad71dc197bff27ade5 100644 (file)
@@ -60,6 +60,12 @@ extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n2(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n2(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
@@ -132,6 +138,10 @@ extern int utc_media_webrtc_add_ice_candidate_n1(void);
 extern int utc_media_webrtc_add_ice_candidate_n2(void);
 extern int utc_media_webrtc_foreach_turn_server_p(void);
 extern int utc_media_webrtc_foreach_turn_server_n(void);
+extern int utc_media_webrtc_set_bundle_policy_p(void);
+extern int utc_media_webrtc_set_bundle_policy_n(void);
+extern int utc_media_webrtc_get_bundle_policy_p(void);
+extern int utc_media_webrtc_get_bundle_policy_n(void);
 extern int utc_media_webrtc_set_ice_transport_policy_p(void);
 extern int utc_media_webrtc_set_ice_transport_policy_n(void);
 extern int utc_media_webrtc_get_ice_transport_policy_p(void);
@@ -272,6 +282,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_p",utc_media_webrtc_media_source_set_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n1",utc_media_webrtc_media_source_set_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n2",utc_media_webrtc_media_source_set_video_framerate_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_p",utc_media_webrtc_media_source_get_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n1",utc_media_webrtc_media_source_get_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n2",utc_media_webrtc_media_source_get_video_framerate_n2,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
@@ -323,6 +339,10 @@ testcase tc_array[] = {
        {"utc_media_webrtc_add_turn_server_n2",utc_media_webrtc_add_turn_server_n2,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_p",utc_media_webrtc_foreach_turn_server_p,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_n",utc_media_webrtc_foreach_turn_server_n,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_p",utc_media_webrtc_set_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_n",utc_media_webrtc_set_bundle_policy_n,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_p",utc_media_webrtc_get_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_n",utc_media_webrtc_get_bundle_policy_n,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_p",utc_media_webrtc_set_ice_transport_policy_p,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_n",utc_media_webrtc_set_ice_transport_policy_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_transport_policy_p",utc_media_webrtc_get_ice_transport_policy_p,NULL,NULL},
index 635c7d4202648cb1191603fd5a5d38734db3f813..863d220aeef750e77689c3ad71dc197bff27ade5 100644 (file)
@@ -60,6 +60,12 @@ extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n2(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n2(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
@@ -132,6 +138,10 @@ extern int utc_media_webrtc_add_ice_candidate_n1(void);
 extern int utc_media_webrtc_add_ice_candidate_n2(void);
 extern int utc_media_webrtc_foreach_turn_server_p(void);
 extern int utc_media_webrtc_foreach_turn_server_n(void);
+extern int utc_media_webrtc_set_bundle_policy_p(void);
+extern int utc_media_webrtc_set_bundle_policy_n(void);
+extern int utc_media_webrtc_get_bundle_policy_p(void);
+extern int utc_media_webrtc_get_bundle_policy_n(void);
 extern int utc_media_webrtc_set_ice_transport_policy_p(void);
 extern int utc_media_webrtc_set_ice_transport_policy_n(void);
 extern int utc_media_webrtc_get_ice_transport_policy_p(void);
@@ -272,6 +282,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_p",utc_media_webrtc_media_source_set_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n1",utc_media_webrtc_media_source_set_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n2",utc_media_webrtc_media_source_set_video_framerate_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_p",utc_media_webrtc_media_source_get_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n1",utc_media_webrtc_media_source_get_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n2",utc_media_webrtc_media_source_get_video_framerate_n2,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
@@ -323,6 +339,10 @@ testcase tc_array[] = {
        {"utc_media_webrtc_add_turn_server_n2",utc_media_webrtc_add_turn_server_n2,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_p",utc_media_webrtc_foreach_turn_server_p,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_n",utc_media_webrtc_foreach_turn_server_n,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_p",utc_media_webrtc_set_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_n",utc_media_webrtc_set_bundle_policy_n,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_p",utc_media_webrtc_get_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_n",utc_media_webrtc_get_bundle_policy_n,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_p",utc_media_webrtc_set_ice_transport_policy_p,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_n",utc_media_webrtc_set_ice_transport_policy_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_transport_policy_p",utc_media_webrtc_get_ice_transport_policy_p,NULL,NULL},
index 635c7d4202648cb1191603fd5a5d38734db3f813..863d220aeef750e77689c3ad71dc197bff27ade5 100644 (file)
@@ -60,6 +60,12 @@ extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n2(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n2(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
@@ -132,6 +138,10 @@ extern int utc_media_webrtc_add_ice_candidate_n1(void);
 extern int utc_media_webrtc_add_ice_candidate_n2(void);
 extern int utc_media_webrtc_foreach_turn_server_p(void);
 extern int utc_media_webrtc_foreach_turn_server_n(void);
+extern int utc_media_webrtc_set_bundle_policy_p(void);
+extern int utc_media_webrtc_set_bundle_policy_n(void);
+extern int utc_media_webrtc_get_bundle_policy_p(void);
+extern int utc_media_webrtc_get_bundle_policy_n(void);
 extern int utc_media_webrtc_set_ice_transport_policy_p(void);
 extern int utc_media_webrtc_set_ice_transport_policy_n(void);
 extern int utc_media_webrtc_get_ice_transport_policy_p(void);
@@ -272,6 +282,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_p",utc_media_webrtc_media_source_set_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n1",utc_media_webrtc_media_source_set_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n2",utc_media_webrtc_media_source_set_video_framerate_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_p",utc_media_webrtc_media_source_get_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n1",utc_media_webrtc_media_source_get_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n2",utc_media_webrtc_media_source_get_video_framerate_n2,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
@@ -323,6 +339,10 @@ testcase tc_array[] = {
        {"utc_media_webrtc_add_turn_server_n2",utc_media_webrtc_add_turn_server_n2,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_p",utc_media_webrtc_foreach_turn_server_p,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_n",utc_media_webrtc_foreach_turn_server_n,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_p",utc_media_webrtc_set_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_n",utc_media_webrtc_set_bundle_policy_n,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_p",utc_media_webrtc_get_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_n",utc_media_webrtc_get_bundle_policy_n,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_p",utc_media_webrtc_set_ice_transport_policy_p,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_n",utc_media_webrtc_set_ice_transport_policy_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_transport_policy_p",utc_media_webrtc_get_ice_transport_policy_p,NULL,NULL},
index 635c7d4202648cb1191603fd5a5d38734db3f813..863d220aeef750e77689c3ad71dc197bff27ade5 100644 (file)
@@ -60,6 +60,12 @@ extern int utc_media_webrtc_media_source_set_video_resolution_n2(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_p(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n1(void);
 extern int utc_media_webrtc_media_source_get_video_resolution_n2(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_set_video_framerate_n2(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_p(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n1(void);
+extern int utc_media_webrtc_media_source_get_video_framerate_n2(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_p(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n1(void);
 extern int utc_media_webrtc_mic_source_set_sound_stream_info_n2(void);
@@ -132,6 +138,10 @@ extern int utc_media_webrtc_add_ice_candidate_n1(void);
 extern int utc_media_webrtc_add_ice_candidate_n2(void);
 extern int utc_media_webrtc_foreach_turn_server_p(void);
 extern int utc_media_webrtc_foreach_turn_server_n(void);
+extern int utc_media_webrtc_set_bundle_policy_p(void);
+extern int utc_media_webrtc_set_bundle_policy_n(void);
+extern int utc_media_webrtc_get_bundle_policy_p(void);
+extern int utc_media_webrtc_get_bundle_policy_n(void);
 extern int utc_media_webrtc_set_ice_transport_policy_p(void);
 extern int utc_media_webrtc_set_ice_transport_policy_n(void);
 extern int utc_media_webrtc_get_ice_transport_policy_p(void);
@@ -272,6 +282,12 @@ testcase tc_array[] = {
        {"utc_media_webrtc_media_source_get_video_resolution_p",utc_media_webrtc_media_source_get_video_resolution_p,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n1",utc_media_webrtc_media_source_get_video_resolution_n1,NULL,NULL},
        {"utc_media_webrtc_media_source_get_video_resolution_n2",utc_media_webrtc_media_source_get_video_resolution_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_p",utc_media_webrtc_media_source_set_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n1",utc_media_webrtc_media_source_set_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_set_video_framerate_n2",utc_media_webrtc_media_source_set_video_framerate_n2,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_p",utc_media_webrtc_media_source_get_video_framerate_p,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n1",utc_media_webrtc_media_source_get_video_framerate_n1,NULL,NULL},
+       {"utc_media_webrtc_media_source_get_video_framerate_n2",utc_media_webrtc_media_source_get_video_framerate_n2,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_p",utc_media_webrtc_mic_source_set_sound_stream_info_p,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n1",utc_media_webrtc_mic_source_set_sound_stream_info_n1,NULL,NULL},
        {"utc_media_webrtc_mic_source_set_sound_stream_info_n2",utc_media_webrtc_mic_source_set_sound_stream_info_n2,NULL,NULL},
@@ -323,6 +339,10 @@ testcase tc_array[] = {
        {"utc_media_webrtc_add_turn_server_n2",utc_media_webrtc_add_turn_server_n2,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_p",utc_media_webrtc_foreach_turn_server_p,NULL,NULL},
        {"utc_media_webrtc_foreach_turn_server_n",utc_media_webrtc_foreach_turn_server_n,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_p",utc_media_webrtc_set_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_set_bundle_policy_n",utc_media_webrtc_set_bundle_policy_n,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_p",utc_media_webrtc_get_bundle_policy_p,NULL,NULL},
+       {"utc_media_webrtc_get_bundle_policy_n",utc_media_webrtc_get_bundle_policy_n,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_p",utc_media_webrtc_set_ice_transport_policy_p,NULL,NULL},
        {"utc_media_webrtc_set_ice_transport_policy_n",utc_media_webrtc_set_ice_transport_policy_n,NULL,NULL},
        {"utc_media_webrtc_get_ice_transport_policy_p",utc_media_webrtc_get_ice_transport_policy_p,NULL,NULL},
index 1fd01803df0be3da14be48fc852ae026864e7fa9..00ff33ff9846e4e4477336832c6064803dbc255b 100644 (file)
 #include <dlog.h>
 #include <Elementary.h>
 
-#define API_NAMESPACE "WEBRTC_UTC"
-#define TIMEOUT_MS 1000
-#define TEST_WIDTH 640
-#define TEST_HEIGHT 480
-#define TEST_STUN_SERVER_URL    "stun://stun.testurl.com:19302"
-#define TEST_TURN_SERVER_URL    "turn://turn.testurl.com:19303"
-#define TEST_TURN_SERVER_URL2   "turn://turn2.testurl.com:19303"
-#define TEST_ICE_CANDIDATE      "{'ice':{'candidate':'candidate:3600539631 1 tcp 1518149375 192.168.0.127 9 typ host tcptype active generation 0 ufrag l4kk network-id 3 network-cost 10','sdpMid':'video0','sdpMLineIndex':0}}"
-#define TEST_DATA_CHANNEL_LABEL "test data channel"
-#define TEST_STRING_DATA        "test string"
-#define TEST_BUFFER_SIZE        16
+#define API_NAMESPACE                 "WEBRTC_UTC"
+#define TIMEOUT_MS                     1000
+#define TEST_WIDTH                     640
+#define TEST_HEIGHT                    480
+#define TEST_FPS                       30
+#define TEST_STUN_SERVER_URL           "stun://stun.testurl.com:19302"
+#define TEST_TURN_SERVER_URL           "turn://turn.testurl.com:19303"
+#define TEST_TURN_SERVER_URL2          "turn://turn2.testurl.com:19303"
+#define TEST_ICE_CANDIDATE             "{'ice':{'candidate':'candidate:3600539631 1 tcp 1518149375 192.168.0.127 9 typ host tcptype active generation 0 ufrag l4kk network-id 3 network-cost 10','sdpMid':'video0','sdpMLineIndex':0}}"
+#define TEST_DATA_CHANNEL_LABEL        "test data channel"
+#define TEST_STRING_DATA               "test string"
+#define TEST_BUFFER_SIZE               16
 #define TEST_BUFFERED_AMOUNT_THRESHOLD 65535
+
 static GMainLoop *g_mainloop = NULL;
 static int g_timeout_id = 0;
 static Evas_Object *g_win = NULL;
@@ -1143,6 +1145,196 @@ int utc_media_webrtc_media_source_get_video_resolution_n2(void)
        return 0;
 }
 
+/**
+ * @testcase           utc_media_webrtc_media_source_set_video_framerate_p
+ * @since_tizen                7.0
+ * @description                Sets video framerate to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Set video framerate
+ */
+int utc_media_webrtc_media_source_set_video_framerate_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       int fps;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_VIDEOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_video_framerate(webrtc, id, TEST_FPS);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_framerate(webrtc, id, &fps);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(fps, TEST_FPS);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_video_framerate_n1
+ * @since_tizen                7.0
+ * @description                Sets video framerate to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_set_video_framerate_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       if (ret == WEBRTC_ERROR_NOT_SUPPORTED) {
+               dlog_print(DLOG_DEBUG, "NativeTCT", "[%s(%d)] camera feature is not supported, skip it", __FUNCTION__, __LINE__);
+               webrtc_destroy(webrtc);
+               return 0;
+       }
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_video_framerate(webrtc, id, 0);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_set_video_framerate_n2
+ * @since_tizen                7.0
+ * @description                Sets video framerate to the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source for audio\n
+ *                             - Set a video framerate to get negative result
+ */
+int utc_media_webrtc_media_source_set_video_framerate_n2(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_set_video_framerate(webrtc, id, TEST_FPS);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_video_framerate_p
+ * @since_tizen                7.0
+ * @description                Gets video framerate from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Get the video framerate
+ */
+int utc_media_webrtc_media_source_get_video_framerate_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       int fps;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       if (ret == WEBRTC_ERROR_NOT_SUPPORTED) {
+               dlog_print(DLOG_DEBUG, "NativeTCT", "[%s(%d)] camera feature is not supported, skip it", __FUNCTION__, __LINE__);
+               webrtc_destroy(webrtc);
+               return 0;
+       }
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_framerate(webrtc, id, &fps);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_video_framerate_n1
+ * @since_tizen                7.0
+ * @description                Gets video framerate from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_media_source_get_video_framerate_n1(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_CAMERA, &id);
+       if (ret == WEBRTC_ERROR_NOT_SUPPORTED) {
+               dlog_print(DLOG_DEBUG, "NativeTCT", "[%s(%d)] camera feature is not supported, skip it", __FUNCTION__, __LINE__);
+               webrtc_destroy(webrtc);
+               return 0;
+       }
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_framerate(webrtc, id, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_media_source_get_video_framerate_n2
+ * @since_tizen                7.0
+ * @description                Gets video framerate from the media source\n
+ *                             - Create a webrtc handle\n
+ *                             - Add a media source for audio\n
+ *                             - Get the video framerate to get negative result
+ */
+int utc_media_webrtc_media_source_get_video_framerate_n2(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       unsigned int id;
+       int fps;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_add_media_source(webrtc, WEBRTC_MEDIA_SOURCE_TYPE_AUDIOTEST, &id);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_media_source_get_video_framerate(webrtc, id, &fps);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
 /**
  * @testcase           utc_media_webrtc_mic_source_set_sound_stream_info_p
  * @since_tizen                6.5
@@ -2883,6 +3075,105 @@ int utc_media_webrtc_foreach_turn_server_n(void)
        return 0;
 }
 
+/**
+ * @testcase           utc_media_webrtc_set_bundle_policy_p
+ * @since_tizen                7.0
+ * @description                Sets bundle policy\n
+ *                             - Create a webrtc handle\n
+ *                             - Set a bundle policy
+ */
+int utc_media_webrtc_set_bundle_policy_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_bundle_policy_e policy;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_set_bundle_policy(webrtc, WEBRTC_BUNDLE_POLICY_NONE);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_get_bundle_policy(webrtc, &policy);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(policy, WEBRTC_BUNDLE_POLICY_NONE);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_set_bundle_policy_n
+ * @since_tizen                7.0
+ * @description                Sets bundle policy\n
+ *                             - Create a webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_set_bundle_policy_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_set_bundle_policy(webrtc, WEBRTC_BUNDLE_POLICY_MAX_BUNDLE + 1);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_get_bundle_policy_p
+ * @since_tizen                7.0
+ * @description                Gets bundle policy\n
+ *                             - Create a webrtc handle\n
+ *                             - Get a bundle policy
+ */
+int utc_media_webrtc_get_bundle_policy_p(void)
+{
+       int ret;
+       webrtc_h webrtc;
+       webrtc_bundle_policy_e policy;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_get_bundle_policy(webrtc, &policy);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+       assert_eq(policy, WEBRTC_BUNDLE_POLICY_MAX_BUNDLE); /* check the default value */
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
+/**
+ * @testcase           utc_media_webrtc_get_bundle_policy_n
+ * @since_tizen                7.0
+ * @description                Gets bundle policy\n
+ *                             - Create a webrtc handle\n
+ *                             - Pass invalid parameter to get negative result
+ */
+int utc_media_webrtc_get_bundle_policy_n(void)
+{
+       int ret;
+       webrtc_h webrtc;
+
+       ret = webrtc_create(&webrtc);
+       assert_eq(ret, WEBRTC_ERROR_NONE);
+
+       ret = webrtc_get_bundle_policy(webrtc, NULL);
+       assert_eq(ret, WEBRTC_ERROR_INVALID_PARAMETER);
+
+       webrtc_destroy(webrtc);
+
+       return 0;
+}
+
 /**
  * @testcase           utc_media_webrtc_set_ice_transport_policy_p
  * @since_tizen                6.5