<html>
<head>
<meta http-equiv="content-type" content="text/html; charset=UTF-8">
</head>
<body>
<p>Hello everyone</p>
<p>I'm currently developing an application with a video player
component, using <a
href="https://docs.gtk.org/gtk4/class.Video.html">the new Gtk4
Gtk.Video class</a>, which I understand is not directly
gstreamer-related.</p>
<p>However, it does use the Gstreamer plugins ; Now, on the desktop,
as a standalone app, it makes use of the distribution packages
(base, good, bad, and ugly) and everything works fine. <br>
</p>
<p>But in the portable (Flatpak) version, I build them to make them
available inside the app's sandbox, like this:</p>
<p><font face="monospace">{<br>
"name": "gstreamer",<br>
"buildsystem": "meson",<br>
"config-opts": [<br>
"--buildtype=release",<br>
"--wrap-mode=nodownload",<br>
<br>
"-Dbase=enabled",<br>
"-Dgood=enabled",<br>
"-Dbad=enabled",<br>
"-Dugly=enabled",<br>
"-Dlibav=enabled",<br>
"-Dvaapi=enabled",<br>
"-Dsharp=disabled",<br>
"-Drs=disabled",<br>
"-Dpython=disabled",<br>
"-Ddevtools=disabled",<br>
"-Dges=disabled",<br>
"-Drtsp_server=disabled",<br>
"-Dgst-examples=disabled",<br>
"-Dqt5=disabled",<br>
"-Dtests=disabled",<br>
"-Dexamples=disabled",<br>
"-Dintrospection=enabled",<br>
"-Ddoc=disabled",<br>
"-Dgtk_doc=disabled",<br>
"-Dgpl=enabled",<br>
<br>
"-Dgstreamer:benchmarks=disabled",<br>
"-Dgstreamer:gobject-cast-checks=disabled",<br>
"-Dgstreamer:glib-asserts=disabled",<br>
"-Dgstreamer:glib-checks=disabled",<br>
"-Dgstreamer:extra-checks=disabled",<br>
<br>
"-Dgst-plugins-base:gobject-cast-checks=disabled",<br>
"-Dgst-plugins-base:glib-asserts=disabled",<br>
"-Dgst-plugins-base:glib-checks=disabled",<br>
"-Dgst-plugins-base:gl_api=opengl,gles2",<br>
"-Dgst-plugins-base:gl_platform=egl,glx",<br>
<br>
"-Dgst-plugins-good:gobject-cast-checks=disabled",<br>
"-Dgst-plugins-good:glib-asserts=disabled",<br>
"-Dgst-plugins-good:glib-checks=disabled",<br>
"-Dgst-plugins-good:gtk3=disabled",<br>
<br>
"-Dgst-plugins-bad:gobject-cast-checks=disabled",<br>
"-Dgst-plugins-bad:glib-asserts=disabled",<br>
"-Dgst-plugins-bad:glib-checks=disabled",<br>
"-Dgst-plugins-bad:extra-checks=disabled",<br>
"-Dgst-plugins-bad:vulkan=disabled",<br>
"-Dgst-plugins-bad:webrtc=disabled",<br>
"-Dgst-plugins-bad:wasapi=disabled",<br>
"-Dgst-plugins-bad:wasapi2=disabled",<br>
"-Dgst-plugins-bad:winks=disabled",<br>
"-Dgst-plugins-bad:winscreencap=disabled",<br>
"-Dgst-plugins-bad:assrender=enabled",<br>
"-Dgst-plugins-bad:nvcodec=enabled",<br>
"-Dgst-plugins-bad:v4l2codecs=enabled",<br>
"-Dgst-plugins-bad:va=enabled",<br>
<br>
<br>
"-Dgst-plugins-ugly:gobject-cast-checks=disabled",<br>
"-Dgst-plugins-ugly:glib-asserts=disabled",<br>
"-Dgst-plugins-ugly:glib-checks=disabled",<br>
"-Dgst-plugins-ugly:mpeg2dec=enabled"<br>
],<br>
"sources": [<br>
{<br>
"type": "git",<br>
"url":
<a class="moz-txt-link-rfc2396E" href="https://gitlab.freedesktop.org/gstreamer/gstreamer.git">"https://gitlab.freedesktop.org/gstreamer/gstreamer.git"</a>,<br>
"tag": "1.21.2",<br>
"commit":
"a1fcf2b90a293ed6d345411a73420fd77faed4f2",<br>
"disable-submodules": true<br>
}<br>
]<br>
}<br>
</font></p>
<p>But as soon as I enable the vaapi option - which I need to decode
H.265 - all the videos become red, like they lose the G and B.</p>
<p>This has been blocking me for several days now, as I tried a lot
of options combinations, and the above list of options is the best
I could come up with:</p>
<ul>
<li>Every codec but H.265 plays fine ; or<br>
</li>
<li>Every codec plays fine but only the red channel<br>
</li>
</ul>
<p> Does anybody know why this happens? Is it a bad interaction
between two incompatible options?</p>
<p>Thank you for your attention,</p>
<p><br>
</p>
<p>Phil<br>
</p>
<p></p>
</body>
</html>