Problem using the vaapi config-opts
Philippe Coatmeur
xaccrocheur at gmail.com
Sun Nov 27 09:29:57 UTC 2022
Hi,
I was really glad to read about this alternative to gstreamer-vaapi, but
I got this error:
Source dir: /run/build/gstreamer
Build dir: /run/build/gstreamer/_flatpak_build
Build type: native build
../meson.build:1:0: ERROR: Unknown options: "va"
Even after setting up the GST_PLUGIN_FEATURE_RANK environment variable :(
And it is really unfortunate, because it looks like exactly what I need
<https://blogs.igalia.com/vjaquez/2022/07/18/gstva-h264-encoder-compositor-and-jpeg-decoder/>.
Note that I was already using the "-Dgst-plugins-bad:va=enabled" option,
but the main one, "-Dva=enabled" breaks the build ; maybe just a naming
problem?
Thanks *a lot* for your help.
On 27/11/2022 05:19, Nirbheek Chauhan wrote:
> Hi,
>
> There have been a number of vaapipostproc bugs that exhibit weird
> colors in the output. For example:
>
> https://gitlab.freedesktop.org/gstreamer/gstreamer-vaapi/-/issues/314
>
> 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.
>
> -Dva=enabled -Dgst-plugins-bad:va=enabled
>
> Then, while running your app, set this env var:
>
> GST_PLUGIN_FEATURE_RANK=vah265dec:PRIMARY,vapostproc:PRIMARY
>
> On Sun, 27 Nov, 2022, 02:31 Philippe Coatmeur via gstreamer-devel,
> <gstreamer-devel at lists.freedesktop.org> wrote:
>
> Hello everyone
>
> I'm currently developing an application with a video player
> component, using the new Gtk4 Gtk.Video class
> <https://docs.gtk.org/gtk4/class.Video.html>, which I understand
> is not directly gstreamer-related.
>
> 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.
>
> But in the portable (Flatpak) version, I build them to make them
> available inside the app's sandbox, like this:
>
> {
> "name": "gstreamer",
> "buildsystem": "meson",
> "config-opts": [
> "--buildtype=release",
> "--wrap-mode=nodownload",
>
> "-Dbase=enabled",
> "-Dgood=enabled",
> "-Dbad=enabled",
> "-Dugly=enabled",
> "-Dlibav=enabled",
> "-Dvaapi=enabled",
> "-Dsharp=disabled",
> "-Drs=disabled",
> "-Dpython=disabled",
> "-Ddevtools=disabled",
> "-Dges=disabled",
> "-Drtsp_server=disabled",
> "-Dgst-examples=disabled",
> "-Dqt5=disabled",
> "-Dtests=disabled",
> "-Dexamples=disabled",
> "-Dintrospection=enabled",
> "-Ddoc=disabled",
> "-Dgtk_doc=disabled",
> "-Dgpl=enabled",
>
> "-Dgstreamer:benchmarks=disabled",
> "-Dgstreamer:gobject-cast-checks=disabled",
> "-Dgstreamer:glib-asserts=disabled",
> "-Dgstreamer:glib-checks=disabled",
> "-Dgstreamer:extra-checks=disabled",
>
> "-Dgst-plugins-base:gobject-cast-checks=disabled",
> "-Dgst-plugins-base:glib-asserts=disabled",
> "-Dgst-plugins-base:glib-checks=disabled",
> "-Dgst-plugins-base:gl_api=opengl,gles2",
> "-Dgst-plugins-base:gl_platform=egl,glx",
>
> "-Dgst-plugins-good:gobject-cast-checks=disabled",
> "-Dgst-plugins-good:glib-asserts=disabled",
> "-Dgst-plugins-good:glib-checks=disabled",
> "-Dgst-plugins-good:gtk3=disabled",
>
> "-Dgst-plugins-bad:gobject-cast-checks=disabled",
> "-Dgst-plugins-bad:glib-asserts=disabled",
> "-Dgst-plugins-bad:glib-checks=disabled",
> "-Dgst-plugins-bad:extra-checks=disabled",
> "-Dgst-plugins-bad:vulkan=disabled",
> "-Dgst-plugins-bad:webrtc=disabled",
> "-Dgst-plugins-bad:wasapi=disabled",
> "-Dgst-plugins-bad:wasapi2=disabled",
> "-Dgst-plugins-bad:winks=disabled",
> "-Dgst-plugins-bad:winscreencap=disabled",
> "-Dgst-plugins-bad:assrender=enabled",
> "-Dgst-plugins-bad:nvcodec=enabled",
> "-Dgst-plugins-bad:v4l2codecs=enabled",
> "-Dgst-plugins-bad:va=enabled",
>
>
> "-Dgst-plugins-ugly:gobject-cast-checks=disabled",
> "-Dgst-plugins-ugly:glib-asserts=disabled",
> "-Dgst-plugins-ugly:glib-checks=disabled",
> "-Dgst-plugins-ugly:mpeg2dec=enabled"
> ],
> "sources": [
> {
> "type": "git",
> "url":
> "https://gitlab.freedesktop.org/gstreamer/gstreamer.git"
> <https://gitlab.freedesktop.org/gstreamer/gstreamer.git>,
> "tag": "1.21.2",
> "commit": "a1fcf2b90a293ed6d345411a73420fd77faed4f2",
> "disable-submodules": true
> }
> ]
> }
>
> 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.
>
> 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:
>
> * Every codec but H.265 plays fine ; or
> * Every codec plays fine but only the red channel
>
> Does anybody know why this happens? Is it a bad interaction
> between two incompatible options?
>
> Thank you for your attention,
>
>
> Phil
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20221127/14639f50/attachment.htm>
More information about the gstreamer-devel
mailing list