Opened 15 years ago

Last modified 13 years ago

#1557 new defect

-vo xv tearing with double buffering

Reported by: syscrash2k@… Owned by: reimar
Priority: normal Component: vo
Version: unspecified Severity: normal
Keywords: Cc:
Blocked By: Blocking:
Reproduced by developer: no Analyzed by developer: no

Description

-vo xv has tearing with double buffering, at least on radeonhd.
This seems to be a regression, since http://lists.mplayerhq.hu/pipermail/mplayer-dev-eng/2004-June/026886.html
describes the problem (XFlush versus XSync) and the solution.

Changing the single instance of XFlush to XSync in vo_xv.c fixes the problem; here's a patch:

--- begin patch

diff --git a/libvo/vo_xv.c b/libvo/vo_xv.c
index 1085f51..0458613 100644
--- a/libvo/vo_xv.c
+++ b/libvo/vo_xv.c
@@ -479,7 +479,7 @@ static void flip_page(struct vo *vo)

if (ctx->num_buffers > 1) {

ctx->current_buf = vo_directrendering ? 0 : ((ctx->current_buf + 1) %

ctx->num_buffers);

  • XFlush(vo->x11->display);

+ XSync(vo->x11->display, False);

} else

XSync(vo->x11->display, False);

return;

--- end patch

Attachments (1)

mplayer-xv-tearing.patch (497 bytes ) - added by syscrash2k@… 15 years ago.
Patch to fix tearing

Download all attachments as: .zip

Change History (3)

by syscrash2k@…, 15 years ago

Attachment: mplayer-xv-tearing.patch added

Patch to fix tearing

comment:1 by syscrash2k@…, 15 years ago

comment:2 by compn, 13 years ago

Owner: changed from beastd to reimar
Note: See TracTickets for help on using tickets.