Lines 8-15
Link Here
|
8 |
#include "mythvideocolourspace.h" |
8 |
#include "mythvideocolourspace.h" |
9 |
#include "fourcc.h" |
9 |
#include "fourcc.h" |
10 |
#include "mythvaapiinterop.h" |
10 |
#include "mythvaapiinterop.h" |
|
|
11 |
|
12 |
#ifdef USING_EGL |
11 |
#include "mythvaapidrminterop.h" |
13 |
#include "mythvaapidrminterop.h" |
|
|
14 |
#else |
12 |
#include "mythvaapiglxinterop.h" |
15 |
#include "mythvaapiglxinterop.h" |
|
|
16 |
#endif |
13 |
|
17 |
|
14 |
extern "C" { |
18 |
extern "C" { |
15 |
#include "libavfilter/buffersrc.h" |
19 |
#include "libavfilter/buffersrc.h" |
Lines 57-70
void MythVAAPIInterop::GetVAAPITypes(MythRenderOpenGL* Context, MythInteropGPU::
Link Here
|
57 |
// zero copy |
61 |
// zero copy |
58 |
if (egl && MythVAAPIInteropDRM::IsSupported(Context)) |
62 |
if (egl && MythVAAPIInteropDRM::IsSupported(Context)) |
59 |
vaapitypes.emplace_back(GL_VAAPIEGLDRM); |
63 |
vaapitypes.emplace_back(GL_VAAPIEGLDRM); |
60 |
#endif |
64 |
#else |
61 |
// 1x copy |
65 |
// 1x copy |
62 |
if (!egl && !wayland && MythVAAPIInteropGLXPixmap::IsSupported(Context)) |
66 |
if (!egl && !wayland && MythVAAPIInteropGLXPixmap::IsSupported(Context)) |
63 |
vaapitypes.emplace_back(GL_VAAPIGLXPIX); |
67 |
vaapitypes.emplace_back(GL_VAAPIGLXPIX); |
64 |
// 2x copy |
68 |
// 2x copy |
65 |
if (!egl && !opengles && !wayland) |
69 |
if (!egl && !opengles && !wayland) |
66 |
vaapitypes.emplace_back(GL_VAAPIGLXCOPY); |
70 |
vaapitypes.emplace_back(GL_VAAPIGLXCOPY); |
67 |
|
71 |
#endif |
68 |
if (!vaapitypes.empty()) |
72 |
if (!vaapitypes.empty()) |
69 |
Types[FMT_VAAPI] = vaapitypes; |
73 |
Types[FMT_VAAPI] = vaapitypes; |
70 |
} |
74 |
} |
Lines 82-92
MythVAAPIInterop* MythVAAPIInterop::CreateVAAPI(MythPlayerUI *Player, MythRender
Link Here
|
82 |
#ifdef USING_EGL |
86 |
#ifdef USING_EGL |
83 |
if ((type == GL_VAAPIEGLDRM) || (type == DRM_DRMPRIME)) |
87 |
if ((type == GL_VAAPIEGLDRM) || (type == DRM_DRMPRIME)) |
84 |
return new MythVAAPIInteropDRM(Player, Context, type); |
88 |
return new MythVAAPIInteropDRM(Player, Context, type); |
85 |
#endif |
89 |
#else |
86 |
if (type == GL_VAAPIGLXPIX) |
90 |
if (type == GL_VAAPIGLXPIX) |
87 |
return new MythVAAPIInteropGLXPixmap(Player, Context); |
91 |
return new MythVAAPIInteropGLXPixmap(Player, Context); |
88 |
if (type == GL_VAAPIGLXCOPY) |
92 |
if (type == GL_VAAPIGLXCOPY) |
89 |
return new MythVAAPIInteropGLXCopy(Player, Context); |
93 |
return new MythVAAPIInteropGLXCopy(Player, Context); |
|
|
94 |
#endif |
90 |
} |
95 |
} |
91 |
} |
96 |
} |
92 |
return nullptr; |
97 |
return nullptr; |