[MPlayer-cvslog] r28840 - trunk/libvo/vo_vdpau.c

reimar subversion at mplayerhq.hu
Fri Mar 6 11:39:58 CET 2009


Author: reimar
Date: Fri Mar  6 11:39:58 2009
New Revision: 28840

Log:
As for vo_gl, do not rely on draw_osd to render EOSD.

Modified:
   trunk/libvo/vo_vdpau.c

Modified: trunk/libvo/vo_vdpau.c
==============================================================================
--- trunk/libvo/vo_vdpau.c	Fri Mar  6 11:38:27 2009	(r28839)
+++ trunk/libvo/vo_vdpau.c	Fri Mar  6 11:39:58 2009	(r28840)
@@ -205,6 +205,8 @@ static VdpProcamp procamp;
 static int                                visible_buf;
 static int                                int_pause;
 
+static void draw_eosd(void);
+
 static void video_to_output_surface(void)
 {
     VdpTime dummy;
@@ -219,6 +221,7 @@ static void video_to_output_surface(void
         int field = VDP_VIDEO_MIXER_PICTURE_STRUCTURE_FRAME;
         VdpOutputSurface output_surface;
         if (i) {
+            draw_eosd();
             draw_osd();
             flip_page();
         }
@@ -657,7 +660,7 @@ static void generate_eosd(mp_eosd_images
 
     // Nothing changed, no need to redraw
     if (imgs->changed == 0)
-        return;
+        goto eosd_draw_only;
     eosd_render_count = 0;
     // There's nothing to render!
     if (!img)
@@ -736,6 +739,8 @@ eosd_skip_upload:
         eosd_targets[eosd_render_count].source.y1 = i->h;
         eosd_render_count++;
     }
+eosd_draw_only:
+    draw_eosd();
 }
 
 static void draw_osd(void)



More information about the MPlayer-cvslog mailing list