Minimal compilation


I’d like to compile gstreamer with the minimum options.
According to the documentation, this
meson -Dauto_features=disabled -Dgstreamer:tools=enabled
compile gst-inspect-1.0 , gst-launch-1.0. But I can’t find them after a meson install. They should be in /usr/local/bin by default right?

This is the current main branch.

I will add the plugins I need one by one, once this minimal example will work.

Am I missing something?

Try with -Dtools=enabled :slight_smile:

Thanks (again :slight_smile: ), it works!
I am new to meson, so maybe it is the way is works, but what’s the difference between -Dtools=enabled and -Dgstreamer:tools=enabled ?
I am a bit lost with the way to enable options. meson configure outputs a lot of things. I see tools but it was not clear that I should use Dtools and Dgstreamer:tools. Same for bad plugins for instance. Shall I use Dbad=true and then Dgst-plugins-bad:webrtcdsp=enabled (for instance)? Is it documented somewhere?

I usually look at the meson_options.txt files at the root of each sub-project. E.g. the tools & bad options are defined at the root of the mono repo in meson_options.txt · main · GStreamer / gstreamer · GitLab.

Yep but I don’t see much details. Like if I want to have the opus codec I need -Dgst-plugins-base:opus=enabled. I’ve found the option somewhere in the sources.

Another example. I want h264parse. I tried -Dgst-plugins-bad:h264parse=enabled, but it is not that. I don’t know where to look

If you’re not sure which sub-project to look for, you could run something in the line of:

find . -name 'meson_options.txt' -exec grep opus {} +

For the h264parse, one way to discover it could be (from a non-minimal system):

gst-inspect-1.0 | grep h264 | grep parse

You should get videoparsersbad: h264parse: H.264 parser. So you know the element is h264parse and it is part of the videoparsersbad plugin. Looking in meson_options.txt under subprojects/gst-plugins-bad you’ll find:

option('videoparsers', type : 'feature', value : 'auto')
1 Like

Damn I’m stuck again. I can’t get the plugins webrtcsink webrtcsrc, although this is on : `-Drs=enabled -Drs:webrtc=enabled -Dgst-plugins-bad:webrtc=enabled -Dgst-plugins-bad:webrtcdsp=enabled

Got it : -Dgst-plugins-rs:webrtc=enabled

Unfortunately the use of rust plugins in gstreamer-full is not tested. You might be able to register the whole plugin (tbc) but not element by element.