video: Check whether 'committed_vbuf' is null instead of using backend interface. 59/209459/2
authorSeunghun Lee <shiin.lee@samsung.com>
Fri, 31 May 2019 01:17:09 +0000 (10:17 +0900)
committerSeunghun Lee <shiin.lee@samsung.com>
Mon, 8 Jul 2019 07:46:37 +0000 (16:46 +0900)
Change-Id: Iccea2dc35413949adda8c6f4d89e5c75b9b828cf

src/bin/video/iface/e_video_hwc.c
src/bin/video/iface/e_video_hwc.h
src/bin/video/iface/e_video_hwc_planes.c
src/bin/video/iface/e_video_hwc_windows.c

index f9d8c5519ea1c50c6e281c8714accf4348c17513..336094382e356bfe2f62b96a5102a925a0114822 100644 (file)
@@ -638,10 +638,8 @@ _e_video_hwc_wait_buffer_commit(E_Video_Hwc *evh)
    if (!vbuf)
      return;
 
-   if (!evh->backend.commit_available_check(evh))
-     return;
-
-   _e_video_hwc_buffer_commit(evh, vbuf);
+   if (!evh->committed_vbuf)
+     _e_video_hwc_buffer_commit(evh, vbuf);
 }
 
 static void
@@ -676,13 +674,10 @@ _e_video_hwc_buffer_show(E_Video_Hwc *evh, E_Comp_Wl_Video_Buf *vbuf, unsigned i
    if (vbuf->comp_buffer)
      e_comp_wl_buffer_reference(&vbuf->buffer_ref, vbuf->comp_buffer);
 
-   if (!evh->backend.commit_available_check(evh))
-     {
-        _e_video_hwc_buffer_enqueue(evh, vbuf);
-        return;
-     }
-
-   _e_video_hwc_buffer_commit(evh, vbuf);
+   if (evh->committed_vbuf)
+     _e_video_hwc_buffer_enqueue(evh, vbuf);
+   else
+     _e_video_hwc_buffer_commit(evh, vbuf);
 }
 
 static void
index 0996a1ee6b1fb94ab4ddf238717e31793a76bb72..74fa3fafab1a63f56a543304570e1e48774881c9 100644 (file)
@@ -25,7 +25,6 @@ struct _E_Video_Hwc_Iface
    Eina_Bool      (*available_properties_get)(E_Video_Hwc *evh, const tdm_prop **props, int *count);
    Eina_Bool      (*buffer_commit)(E_Video_Hwc *evh, E_Comp_Wl_Video_Buf *vbuf);
    Eina_Bool      (*check_if_pp_needed)(E_Video_Hwc *evh);
-   Eina_Bool      (*commit_available_check)(E_Video_Hwc *evh);
    tbm_surface_h  (*displaying_buffer_get)(E_Video_Hwc *evh);
 };
 
index a002bcbd79693ca688eb5ff2d2632fa367df0ad9..c4f380fe1a77fe60a727ba135fe98c5cefd31a37 100644 (file)
@@ -903,15 +903,6 @@ need_pp:
    return EINA_TRUE;
 }
 
-static Eina_Bool
-_e_video_hwc_planes_iface_commit_available_check(E_Video_Hwc *evh)
-{
-   E_Video_Hwc_Planes *evhp;
-
-   evhp = (E_Video_Hwc_Planes *)evh;
-   return !(evhp->waiting_vblank || evhp->video_plane_ready_handler);
-}
-
 static tbm_surface_h
 _e_video_hwc_planes_iface_displaying_buffer_get(E_Video_Hwc *evh)
 {
@@ -930,7 +921,6 @@ _e_video_hwc_planes_iface_set(E_Video_Hwc_Iface *iface)
    iface->available_properties_get = _e_video_hwc_planes_iface_available_properties_get;
    iface->buffer_commit = _e_video_hwc_planes_iface_buffer_commit;
    iface->check_if_pp_needed = _e_video_hwc_planes_iface_check_if_pp_needed;
-   iface->commit_available_check = _e_video_hwc_planes_iface_commit_available_check;
    iface->displaying_buffer_get = _e_video_hwc_planes_iface_displaying_buffer_get;
 }
 
index e9d307ed1d539d444c8356faa94dbc6e2ac0b56e..eaae358dd57f4127ea5ea7ae009d8d276ff363cf 100644 (file)
@@ -255,15 +255,6 @@ need_pp:
    return EINA_TRUE;
 }
 
-static  Eina_Bool
-_e_video_hwc_windows_iface_commit_available_check(E_Video_Hwc *evh)
-{
-   E_Video_Hwc_Windows *evhw;
-
-   evhw = (E_Video_Hwc_Windows *)evh;
-   return !evhw->commit_data.wait_release;
-}
-
 static tbm_surface_h
 _e_video_hwc_windows_iface_displaying_buffer_get(E_Video_Hwc *evh)
 {
@@ -282,7 +273,6 @@ _e_video_hwc_windows_iface_set(E_Video_Hwc_Iface *iface)
    iface->available_properties_get = _e_video_hwc_windows_iface_available_properties_get;
    iface->buffer_commit = _e_video_hwc_windows_iface_buffer_commit;
    iface->check_if_pp_needed = _e_video_hwc_windows_iface_check_if_pp_needed;
-   iface->commit_available_check = _e_video_hwc_windows_iface_commit_available_check;
    iface->displaying_buffer_get = _e_video_hwc_windows_iface_displaying_buffer_get;
 }