diff -urN trunk/libvo/vo_xv.c trunk_for_diff_alpha_mode/libvo/vo_xv.c
--- trunk/libvo/vo_xv.c	2007-03-09 16:05:35.389729302 +0100
+++ trunk_for_diff_alpha_mode/libvo/vo_xv.c	2007-03-20 01:08:45.000000000 +0100
@@ -869,6 +869,7 @@
       return -1; // bail out, colorkey setup failed
     }
     vo_xv_enable_vsync();
+    vo_xv_enable_alpha();
     vo_xv_get_max_img_dim( &max_width, &max_height );
 
     fo = XvListImageFormats(mDisplay, xv_port, (int *) &formats);
diff -urN trunk/libvo/x11_common.c trunk_for_diff_alpha_mode/libvo/x11_common.c
--- trunk/libvo/x11_common.c	2007-01-23 18:46:11.827876000 +0100
+++ trunk_for_diff_alpha_mode/libvo/x11_common.c	2007-03-20 01:08:50.000000000 +0100
@@ -2296,6 +2304,14 @@
   return XvSetPortAttribute(mDisplay, xv_port, xv_atom, 1) == Success;
 }
 
+// PTT
+int vo_xv_enable_alpha()
+{
+  Atom xv_atom = xv_intern_atom_if_exists("XV_ALPHA_MODE");
+  if (xv_atom == None)
+    return -1;
+  return XvSetPortAttribute(mDisplay, xv_port, xv_atom, 1) == Success;
+}
 /**
  * \brief Get maximum supported source image dimensions.
  *
