[mythtv] [PATCH] Multiple playback with Xv
Pigeon
pigeon at pigeond.net
Sat May 29 07:18:21 EDT 2004
Whoops, I'm so sorry. That last patch was bad. This is the real patch.
-------------- next part --------------
--- libs/libmythtv/videoout_xv.cpp Thu May 20 16:15:53 2004
+++ libs/libmythtv/videoout_xv.patched.cpp Sat May 29 21:14:28 2004
@@ -272,13 +272,23 @@
else
if (ai)
{
- for (i = 0; i < p_num_adaptors; i++)
+ for (i = 0; (i < p_num_adaptors) && (xv_port == -1); i++)
{
if ((ai[i].type & XvInputMask) &&
(ai[i].type & XvImageMask))
{
- xv_port = ai[i].base_id;
- break;
+ for(unsigned int p = ai[i].base_id;
+ p < (ai[i].base_id + ai[i].num_ports);
+ p++)
+ {
+ if(XvGrabPort(data->XJ_disp, p, CurrentTime) == Success)
+ {
+ xv_port = p;
+ VERBOSE(VB_GENERAL,
+ QString("Using XV port %1").arg(xv_port));
+ break;
+ }
+ }
}
}
@@ -375,8 +385,6 @@
if (fo)
XFree(fo);
- VERBOSE(VB_GENERAL, QString("Using XV port %1").arg(xv_port));
- XvGrabPort(data->XJ_disp, xv_port, CurrentTime);
}
data->XJ_gc = XCreateGC(data->XJ_disp, data->XJ_win, 0, 0);
More information about the mythtv-dev
mailing list