gstreamer: Add meson devenv support
This change to the build system will prepend the plugin build directory to GST_PLUGIN_PATH environment. This makes the built plugin visible to GStreamer inside meson devenv enabling uninstalled testing. In order to avoid polluting the user registry, the GST_REGISTRY environment is also set. Signed-off-by: Nicolas Dufresne <nicolas.dufresne@collabora.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
This commit is contained in:
parent
81791d2cac
commit
ebc396fc7a
2 changed files with 16 additions and 3 deletions
|
@ -120,12 +120,13 @@ setting the ``LIBCAMERA_LOG_LEVELS`` environment variable:
|
||||||
Using GStreamer plugin
|
Using GStreamer plugin
|
||||||
~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
||||||
To use GStreamer plugin from source tree, set the following environment so that
|
To use the GStreamer plugin from the source tree, use the meson ``devenv``
|
||||||
GStreamer can find it. This isn't necessary when libcamera is installed.
|
command. This will create a new shell instance with the ``GST_PLUGIN_PATH``
|
||||||
|
environment set accordingly.
|
||||||
|
|
||||||
.. code::
|
.. code::
|
||||||
|
|
||||||
export GST_PLUGIN_PATH=$(pwd)/build/src/gstreamer
|
meson devenv -C build
|
||||||
|
|
||||||
The debugging tool ``gst-launch-1.0`` can be used to construct a pipeline and
|
The debugging tool ``gst-launch-1.0`` can be used to construct a pipeline and
|
||||||
test it. The following pipeline will stream from the camera named "Camera 1"
|
test it. The following pipeline will stream from the camera named "Camera 1"
|
||||||
|
|
|
@ -46,3 +46,15 @@ libcamera_gst = shared_library('gstlibcamera',
|
||||||
install : true,
|
install : true,
|
||||||
install_dir : '@0@/gstreamer-1.0'.format(get_option('libdir')),
|
install_dir : '@0@/gstreamer-1.0'.format(get_option('libdir')),
|
||||||
)
|
)
|
||||||
|
|
||||||
|
# Make the plugin visible to GStreamer inside meson devenv.
|
||||||
|
fs = import('fs')
|
||||||
|
gst_plugin_path = fs.parent(libcamera_gst.full_path())
|
||||||
|
|
||||||
|
gst_env = environment()
|
||||||
|
gst_env.prepend('GST_PLUGIN_PATH', gst_plugin_path)
|
||||||
|
|
||||||
|
# Avoid polluting the system registry.
|
||||||
|
gst_env.set('GST_REGISTRY', gst_plugin_path / 'registry.data')
|
||||||
|
|
||||||
|
meson.add_devenv(gst_env)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue