<div dir="auto">Hi,<div dir="auto"><br></div><div dir="auto">There have been a number of vaapipostproc bugs that exhibit weird colors in the output. For example:</div><div dir="auto"><br></div><div dir="auto"><a href="https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/314">https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/314</a></div><div dir="auto"><br></div><div dir="auto">You can either tweak your pipeline to work around those bugs, or you can swap out the deprecated gstreamer-vaapi plugin for the new gstva plugin.</div><div dir="auto"><br></div><div dir="auto">-Dva=enabled -Dgst-plugins-bad:va=enabled</div><div dir="auto"><br></div><div dir="auto">Then, while running your app, set this env var:</div><div dir="auto"><br></div><div dir="auto">GST_PLUGIN_FEATURE_RANK=vah265dec:PRIMARY,vapostproc:PRIMARY</div></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Sun, 27 Nov, 2022, 02:31 Philippe Coatmeur via gstreamer-devel, <<a href="mailto:gstreamer-devel@lists.freedesktop.org">gstreamer-devel@lists.freedesktop.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
  

    
  
  <div>
    <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" target="_blank" rel="noreferrer">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 href="https://gitlab.freedesktop.org/gstreamer/gstreamer.git" target="_blank" rel="noreferrer">"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>
  </div>

</blockquote></div>