diff options
author | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-03-06 10:39:58 +0000 |
---|---|---|
committer | reimar <reimar@b3059339-0415-0410-9bf9-f77b7e298cf2> | 2009-03-06 10:39:58 +0000 |
commit | d4748622fa98dcc5cb4cecc77655bec7476b8387 (patch) | |
tree | eab2f177045d0590c4b77ff8c386628d627cc62b /libvo | |
parent | 658bcd5e35b04de1a7fb0c2c8178ca8e37b2b1fa (diff) | |
download | mpv-d4748622fa98dcc5cb4cecc77655bec7476b8387.tar.bz2 mpv-d4748622fa98dcc5cb4cecc77655bec7476b8387.tar.xz |
As for vo_gl, do not rely on draw_osd to render EOSD.
git-svn-id: svn://svn.mplayerhq.hu/mplayer/trunk@28840 b3059339-0415-0410-9bf9-f77b7e298cf2
Diffstat (limited to 'libvo')
-rw-r--r-- | libvo/vo_vdpau.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/libvo/vo_vdpau.c b/libvo/vo_vdpau.c index 4f43c504bd..c40c28d4ff 100644 --- a/libvo/vo_vdpau.c +++ b/libvo/vo_vdpau.c @@ -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_t *imgs) { // 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) |