From 9b6f5652a4ead378bba66be8b00c0cddb1aca7c6 Mon Sep 17 00:00:00 2001 From: Hyunil Date: Wed, 10 Feb 2021 12:26:23 +0900 Subject: [PATCH] Add MM_DISPLAY_TYPE_OVERLAY_SYNC_UI to mm_display_type_e - 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 --- packaging/libmm-display.spec | 2 +- src/include/mm_display_interface.h | 3 ++- src/mm_display.c | 7 ++++++- 3 files changed, 9 insertions(+), 3 deletions(-) diff --git a/packaging/libmm-display.spec b/packaging/libmm-display.spec index a506133..9ae487e 100644 --- a/packaging/libmm-display.spec +++ b/packaging/libmm-display.spec @@ -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 diff --git a/src/include/mm_display_interface.h b/src/include/mm_display_interface.h index ec14d47..b567ded 100644 --- a/src/include/mm_display_interface.h +++ b/src/include/mm_display_interface.h @@ -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); diff --git a/src/mm_display.c b/src/mm_display.c index 398a744..9605c0a 100644 --- a/src/mm_display.c +++ b/src/mm_display.c @@ -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; } -- 2.7.4