[UTC][player-display][ACR-1636][Add new display type for video and UI synchronization] 84/263084/4
authorHyunil <hyunil46.park@samsung.com>
Thu, 26 Aug 2021 03:36:37 +0000 (12:36 +0900)
committerHyunil <hyunil46.park@samsung.com>
Thu, 2 Sep 2021 08:12:13 +0000 (17:12 +0900)
Change-Id: I49dfc182c0610490481222a6debc41a5cc09de40
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
packaging/utc/core-player-display-tests.spec
src/utc/player-display/CMakeLists.txt
src/utc/player-display/tct-player-display-core_mobile.h
src/utc/player-display/tct-player-display-core_wearable.h
src/utc/player-display/utc-media-player-display.c

index a828684c21ccf12e9885ff7e2e514fb4b1f1904c..cdd797a8aa5b573ed0b7233b79cca4e701ae12fc 100644 (file)
@@ -17,6 +17,7 @@ BuildRequires:        pkgconfig(dlog)
 BuildRequires: pkgconfig(capi-system-info)
 BuildRequires: pkgconfig(elementary)
 BuildRequires: pkgconfig(ecore)
+BuildRequires:  pkgconfig(ecore-wl2)
 BuildRequires: pkgconfig(evas)
 BuildRequires: pkgconfig(storage)
 
index 3a0d30d5d6278dac4f9d7f4bab6e203c9b5358c1..26131c4706e6bfae2a23fe6462bc80109c4b98e0 100644 (file)
@@ -17,6 +17,7 @@ PKG_CHECK_MODULES(${CAPI_LIB} REQUIRED
     gobject-2.0
     elementary
     ecore
+    ecore-wl2
     evas
     storage
     dlog
index 3fb2504fd94f7faa5719fbc8a86489567b05f447..f36c62fa22bb34fab109d01d3ca9dc1be83733c4 100644 (file)
@@ -25,6 +25,7 @@ extern int utc_media_player_get_video_size_p(void);
 extern int utc_media_player_get_video_size_n(void);
 extern int utc_media_player_set_display_p(void);
 extern int utc_media_player_set_display_p2(void);
+extern int utc_media_player_set_display_p3(void);
 extern int utc_media_player_set_display_n(void);
 extern int utc_media_player_set_display_n2(void);
 extern int utc_media_player_capture_video_p(void);
@@ -81,6 +82,7 @@ testcase tc_array[] = {
        {"utc_media_player_get_video_size_n",utc_media_player_get_video_size_n,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_p",utc_media_player_set_display_p,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_p2",utc_media_player_set_display_p2,utc_media_player_display_startup,utc_media_player_display_cleanup},
+       {"utc_media_player_set_display_p3",utc_media_player_set_display_p3,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_n",utc_media_player_set_display_n,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_n2",utc_media_player_set_display_n2,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_capture_video_p",utc_media_player_capture_video_p,utc_media_player_display_startup,utc_media_player_display_cleanup},
index 3fb2504fd94f7faa5719fbc8a86489567b05f447..ff1325960ae5038ea2252168f57748602a673e8f 100644 (file)
@@ -25,6 +25,7 @@ extern int utc_media_player_get_video_size_p(void);
 extern int utc_media_player_get_video_size_n(void);
 extern int utc_media_player_set_display_p(void);
 extern int utc_media_player_set_display_p2(void);
+extern int utc_media_player_set_display_p3(void);
 extern int utc_media_player_set_display_n(void);
 extern int utc_media_player_set_display_n2(void);
 extern int utc_media_player_capture_video_p(void);
@@ -81,6 +82,7 @@ testcase tc_array[] = {
        {"utc_media_player_get_video_size_n",utc_media_player_get_video_size_n,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_p",utc_media_player_set_display_p,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_p2",utc_media_player_set_display_p2,utc_media_player_display_startup,utc_media_player_display_cleanup},
+       {"utc_media_player_set_display_p3",utc_media_player_set_display_p3,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_n",utc_media_player_set_display_n,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_set_display_n2",utc_media_player_set_display_n2,utc_media_player_display_startup,utc_media_player_display_cleanup},
        {"utc_media_player_capture_video_p",utc_media_player_capture_video_p,utc_media_player_display_startup,utc_media_player_display_cleanup},
index 7d1699f2395188e43a0aaa606a5a6b626bcb3b73..81300970c7e50def02f4f598a779e9fe9eb1a7cd 100644 (file)
@@ -18,6 +18,8 @@
 #include <media/sound_manager.h>
 #include <glib.h>
 #include <Elementary.h>
+#include <Ecore_Wayland2.h>
+#include <Ecore_Evas.h>
 #include <storage.h>
 #include "tct_common.h"
 
@@ -373,6 +375,42 @@ int utc_media_player_set_display_p2(void)
     return 0;
 }
 
+
+/**
+  * @testcase           utc_media_player_set_display_p3
+  * @since_tizen        6.5
+  * @description        Positive test case to set overlay sync ui display handle
+  */
+int utc_media_player_set_display_p3(void)
+{
+    assert(!_is_broken);
+
+    player_state_e state;
+    const char *exported_shell_handle = NULL;
+
+    player_get_state (player, &state);
+    if (state == PLAYER_STATE_READY)
+      player_unprepare(player);
+
+    create_window();
+
+    Ecore_Evas *ecore_evas = ecore_evas_ecore_evas_get(evas_object_evas_get(g_win));
+    Ecore_Wl2_Window *ecore_wl2_win = ecore_evas_wayland2_window_get(ecore_evas);
+    Ecore_Wl2_Subsurface *ecore_wl2_subsurface = ecore_wl2_subsurface_new(ecore_wl2_win);
+    ecore_wl2_subsurface_export(ecore_wl2_subsurface);
+    exported_shell_handle = ecore_wl2_subsurface_exported_surface_handle_get(ecore_wl2_subsurface);
+
+    int ret = player_set_display(player, PLAYER_DISPLAY_TYPE_OVERLAY_SYNC_UI, GET_DISPLAY(exported_shell_handle));
+    assert_eq(ret, PLAYER_ERROR_NONE);
+
+    ret = player_prepare(player);
+    if (PLAYER_ERROR_NONE != ret) {
+        PRINT_UTC_LOG("[Line : %d][%s] player isn't prepared\\n", __LINE__, API_NAMESPACE);
+    }
+
+    return 0;
+}
+
 /**
  * @testcase           utc_media_player_set_display_n
  * @since_tizen                2.3.1