Add MM_DISPLAY_TYPE_OVERLAY_SYNC_UI to mm_display_type_e 29/253429/16 accepted/tizen_6.5_unified tizen_6.5 accepted/tizen/6.5/unified/20211028.114508 accepted/tizen/unified/20210720.123514 submit/tizen/20210719.045446 submit/tizen_6.5/20211028.162401 tizen_6.5.m2_release
authorHyunil <hyunil46.park@samsung.com>
Wed, 10 Feb 2021 03:26:23 +0000 (12:26 +0900)
committerHyunil <hyunil46.park@samsung.com>
Wed, 16 Jun 2021 06:34:34 +0000 (15:34 +0900)
- This is a type for synchronization between UI and video.

[Version] 0.0.12
[Issue Type] New feature

Change-Id: Ieb68ecfa490f4a29eca66bb7903c0b8f234db468
Signed-off-by: Hyunil <hyunil46.park@samsung.com>
packaging/libmm-display.spec
src/include/mm_display_interface.h
src/mm_display.c

index a506133..9ae487e 100644 (file)
@@ -1,6 +1,6 @@
 Name:       libmm-display
 Summary:    Multimedia framework display library
-Version:    0.0.11
+Version:    0.0.12
 Release:    0
 Group:      Multimedia/Libraries
 License:    Apache-2.0
index ec14d47..b567ded 100644 (file)
@@ -30,7 +30,8 @@ typedef enum {
        MM_DISPLAY_TYPE_OVERLAY = 0,
        MM_DISPLAY_TYPE_EVAS,
        MM_DISPLAY_TYPE_NONE,
-       MM_DISPLAY_TYPE_OVERLAY_EXT
+       MM_DISPLAY_TYPE_OVERLAY_EXT,
+       MM_DISPLAY_TYPE_OVERLAY_SYNC_UI /* For sync between UI and video */
 } mm_display_type_e;
 
 typedef void (*mm_display_evas_rendered_cb)(media_packet_h packet, void *user_data);
index 398a744..9605c0a 100644 (file)
@@ -279,7 +279,7 @@ int mm_display_set_display(mm_display_h handle, mm_display_type_e type, void *di
        MMHandleType new_evas_renderer = NULL;
 #endif
 
-       if (!handle || type > MM_DISPLAY_TYPE_OVERLAY_EXT || !display) {
+       if (!handle || type > MM_DISPLAY_TYPE_OVERLAY_SYNC_UI || !display) {
                LOGE("invalid param (handle:%p, type:%d, display:%p)", handle, type, display);
                return MM_ERROR_INVALID_ARGUMENT;
        }
@@ -292,6 +292,9 @@ int mm_display_set_display(mm_display_h handle, mm_display_type_e type, void *di
 
        LOGD("enter - type %d", type);
 
+       if (type == MM_DISPLAY_TYPE_OVERLAY_SYNC_UI)
+               goto _DONE;
+
        if (type != MM_DISPLAY_TYPE_OVERLAY_EXT) {
                object_type = evas_object_type_get((Evas_Object *)display);
                if (!object_type) {
@@ -340,8 +343,10 @@ int mm_display_set_display(mm_display_h handle, mm_display_type_e type, void *di
                return MM_ERROR_INVALID_ARGUMENT;
        }
 
+_DONE:
        dp_handle->type = type;
        dp_handle->display = display;
+       LOGI("display handle[%p], type [%d] is set", display, type);
 
        return MM_ERROR_NONE;
 }