[vlc-devel] [PATCH 2/6] android_window: create sub filter after sub pic alloc

Thomas Guillem thomas at gllm.fr
Tue Nov 25 16:17:21 CET 2014


---
 modules/video_output/android/android_window.c | 12 +++++-------
 1 file changed, 5 insertions(+), 7 deletions(-)

diff --git a/modules/video_output/android/android_window.c b/modules/video_output/android/android_window.c
index 1c39bcd..5effdd9 100644
--- a/modules/video_output/android/android_window.c
+++ b/modules/video_output/android/android_window.c
@@ -799,13 +799,8 @@ static void SubpictureDisplay(vout_display_t *vd, subpicture_t *subpicture)
            sys->p_sub_pic->p[0].i_pitch * sys->p_sub_pic->p[0].i_lines);
 
     if (subpicture)
-    {
-        /* Allocate a blending filter if needed. */
-        if (unlikely(!sys->p_spu_blend))
-            sys->p_spu_blend = filter_NewBlend(VLC_OBJECT(vd),
-                                               &sys->p_sub_pic->format);
         picture_BlendSubpicture(sys->p_sub_pic, sys->p_spu_blend, subpicture);
-    }
+
     AndroidWindow_UnlockPicture(sys, sys->p_sub_window, sys->p_sub_pic, true);
 }
 
@@ -842,8 +837,11 @@ static void Display(vout_display_t *vd, picture_t *picture,
 
         if (!sys->p_sub_pic && SetupWindowSubtitleSurface(sys) == 0)
             sys->p_sub_pic = PictureAlloc(sys, &sys->p_sub_window->fmt);
+        if (!sys->p_spu_blend)
+            sys->p_spu_blend = filter_NewBlend(VLC_OBJECT(vd),
+                                               &sys->p_sub_pic->format);
 
-        if (sys->p_sub_pic)
+        if (sys->p_sub_pic && sys->p_spu_blend)
             sys->b_has_subpictures = true;
     }
     /* As long as no subpicture was received, do not call
-- 
2.1.1




More information about the vlc-devel mailing list