Pass the correct renderer to EGLImageFactory

We should be using the EGL renderer's colorspace and color range
rather than the backend renderer's for fallbacks. The former is
what actually gets passed to the host PC during stream init.
This commit is contained in:
Cameron Gutman committed 2026-08-06 00:29:53 -05:00
1 parent c1623ff44e
commit 7cf8b46c79
8 files changed
+28 -18

No files matched your search

@@ -26,8 +26,7 @@ VAAPIRenderer::VAAPIRenderer(int decoderSelectionPass)
m_RequiresExplicitPixelFormat(false),
m_OverlayMutex(nullptr)
#ifdef HAVE_EGL
, m_EglExportType(EglExportType::Unknown),
m_EglImageFactory(this)
, m_EglExportType(EglExportType::Unknown)
#endif
{
#ifdef HAVE_LIBVA_X11
@@ -1082,11 +1081,12 @@ AVPixelFormat VAAPIRenderer::getEGLImagePixelFormat() {
}
bool
VAAPIRenderer::initializeEGL(EGLDisplay dpy,
VAAPIRenderer::initializeEGL(IFFmpegRenderer* eglRenderer,
EGLDisplay dpy,
const EGLExtensions &ext) {
VADRMPRIMESurfaceDescriptor descriptor;
if (!m_EglImageFactory.initializeEGL(dpy, ext)) {
if (!m_EglImageFactory.initializeEGL(eglRenderer, dpy, ext)) {
return false;
}