Adding rtspsink plugin to gstreamer

Hello. I’m newbie and if my question seems silly, please excuse me first.

I have gstreamer-1.25.1 , and I want to add rtsp-server plugin to it.

Downloaded both from gstreamer.freedesktop.org and sucessfully built them with meson.
Now I have folder /opt/gstreamer-1.25.1/build with compiled gstreamer, and /opt/gstreamer-rtsp/build with compiled plugin.

I copied .so and so.p files of plugin to the folder /opt/gstreamer-1.25.1/build/plugins/elements and checked it with gst-inspect-1.0 rtspsink, then got error that there’s no such plugin.

How I can, eventually, add this plugin?

If you want to build from source (instead of using ready-made recipes or distro packages), you broadly speaking have two options:

  1. Build the monorepo (git clone https://gitlab.freedesktop.org/gstreamer/gstreamer/) with all the gstreamer modules/libs that you want. This might require installing a bunch of development packages for all the external dependencies (decoders, etc.). Depends on what you’re doing if you need that or not.

  2. Build things from tarball source module-by-module. In this case you need to install things into a prefix of your choice, and then point meson to the installed library/headers (e.g. by setting export PKG_CONFIG_PATH=/opt/gstreamer/lib/x64_64/pkgconfig/, your paths may vary). First build/install gstreamer core, then gst-plugins-base, then gst-plugins-good, then gst-rtsp-server. You might also need gst-plugins-bad and/or gst-llibav depending on what you want to do exactly.

1 Like

I have installed monorepo, built it and trying to check plugins

/opt/gstreamer/monorepo/builddir/subprojects/gstreamer/tools$ ./gst-inspect-1.0 | grep rtsp
0:00:00.000965771 160807 0x5b6857a762a0 ERROR     GST_PLUGIN_LOADING gstpluginloader.c:432:gst_plugin_loader_try_helper: Spawning gst-plugin-scanner helper failed: Failed to execute child process “/opt/gstreamer/monorepo/builddir/subprojects/gstreamer/gst/../../libexec/gstreamer-1.0/gst-plugin-scanner” (Нет такого файла или каталога)

(gst-inspect-1.0:160807): GStreamer-WARNING **: 00:53:35.047: External plugin loader failed. This most likely means that the plugin loader helper binary was not found or could not be run. You might need to set the GST_PLUGIN_SCANNER environment variable if your setup is unusual. This should normally not be required though.
rtspclientsink:  rtspclientsink: RTSP RECORD client

I’m doing wrong something but I can’t get what.
Gstreamer, seems, has quite hight entry threshold…

run ninja -C builddir devenv and then run gst-inspect-1.0 | grep rtsp from inside the devenv.

Alternatively, install everything into a prefix and then run the installed binary in that prefix.