rendered paste bodyIndex: libs/libmythtv/util-vdpau.cpp
===================================================================
--- libs/libmythtv/util-vdpau.cpp (revision 20566)
+++ libs/libmythtv/util-vdpau.cpp (working copy)
@@ -126,8 +126,7 @@
{
}
-bool VDPAUContext::Init(Display *disp, int screen,
- Window win, QSize screen_size,
+bool VDPAUContext::Init(Window win, QSize screen_size,
bool color_control, int color_key,
MythCodecID mcodecid)
{
@@ -138,7 +137,7 @@
bool ok;
- ok = InitProcs(disp, screen);
+ ok = InitProcs();
if (!ok)
return ok;
@@ -181,8 +180,13 @@
return &dummy[0];
}
-bool VDPAUContext::InitProcs(Display *disp, int screen)
+bool VDPAUContext::InitProcs(void)
{
+ Display* disp = MythXOpenDisplay();
+ if (!disp)
+ return false;
+ int screen = DefaultScreen(disp);
+
VdpStatus vdp_st;
bool ok = true;
vdp_get_error_string = &dummy_get_error_string;
Index: libs/libmythtv/util-vdpau.h
===================================================================
--- libs/libmythtv/util-vdpau.h (revision 20566)
+++ libs/libmythtv/util-vdpau.h (working copy)
@@ -30,8 +30,7 @@
VDPAUContext();
~VDPAUContext();
- bool Init(Display *disp, int screen, Window win,
- QSize screen_size, bool color_control,
+ bool Init(Window win, QSize screen_size, bool color_control,
int color_key, MythCodecID mcodecid);
void Deinit(void);
VideoErrorState GetError(void) { return errorState; }
@@ -91,7 +90,7 @@
void DeinitPIP(NuppelVideoPlayer *pipplayer, bool check_layer = true);
private:
- bool InitProcs(Display *disp, int screen);
+ bool InitProcs(void);
void DeinitProcs(void);
void ClearScreen(void);
Index: libs/libmythtv/videoout_xv.cpp
===================================================================
--- libs/libmythtv/videoout_xv.cpp (revision 20566)
+++ libs/libmythtv/videoout_xv.cpp (working copy)
@@ -1061,8 +1061,7 @@
vdpau = new VDPAUContext();
const QRect display_visible_rect = windows[0].GetDisplayVisibleRect();
- bool ok = vdpau->Init(XJ_disp, XJ_screen_num, XJ_curwin,
- display_visible_rect.size(),
+ bool ok = vdpau->Init(XJ_curwin, display_visible_rect.size(),
db_use_picture_controls, vdpau_colorkey, mcodecid);
if (!ok)
{
@@ -4456,7 +4455,7 @@
// Creating a second hardware decoder will still fail (180.25)
// e.g. when attempting to use PBP.
VDPAUContext *c = new VDPAUContext();
- useVDPAU = c->Init(d, screen, curwin, QSize(1920,1200),
+ useVDPAU = c->Init(curwin, QSize(1920,1200),
false, 0, vdpau_codec_id);
c->Deinit();
delete c;