aboutsummaryrefslogtreecommitdiff
path: root/gnu/packages/gstreamer.scm
diff options
context:
space:
mode:
Diffstat (limited to 'gnu/packages/gstreamer.scm')
-rw-r--r--gnu/packages/gstreamer.scm31
1 files changed, 31 insertions, 0 deletions
diff --git a/gnu/packages/gstreamer.scm b/gnu/packages/gstreamer.scm
index 9da348548d..10d9011401 100644
--- a/gnu/packages/gstreamer.scm
+++ b/gnu/packages/gstreamer.scm
@@ -890,6 +890,8 @@ decoders, muxers, and demuxers provided by FFmpeg.")
("libxml2" ,libxml2)))
(native-inputs
`(("flex" ,flex)
+ ("gobject-introspection" ,gobject-introspection)
+ ("glib:bin" ,glib "bin")
("gst-plugins-bad" ,gst-plugins-bad)
("gst-plugins-good" ,gst-plugins-good)
("perl" ,perl)
@@ -902,6 +904,35 @@ decoders, muxers, and demuxers provided by FFmpeg.")
non-linear editors.")
(license license:gpl2+)))
+(define-public gst-plugins/selection
+ (lambda* (pkg #:key plugins configure-flags)
+ "Build PKG with only PLUGINS enabled. Optionally, if CONFIGURE-FLAGS are
+given, also pass them to the build system instead of the ones used by PKG."
+ (package/inherit pkg
+ (arguments
+ (substitute-keyword-arguments (package-arguments pkg)
+ ((#:configure-flags flags `(,@(or configure-flags '())))
+ `(append
+ (list
+ ,@(map (lambda (plugin)
+ (string-append "-D" plugin "=enabled"))
+ plugins))
+ (list ,@(or configure-flags flags))))
+ ((#:phases phases)
+ `(modify-phases ,phases
+ (add-after 'unpack 'disable-auto-plugins
+ (lambda _
+ (substitute* "meson_options.txt"
+ (("'auto'") "'disabled'"))
+ #t)))))))))
+
+(define-public gst-transcoder
+ (deprecated-package
+ "gst-transcoder"
+ (gst-plugins/selection gst-plugins-bad
+ #:plugins '("transcoder")
+ #:configure-flags '("-Dintrospection=enabled"))))
+
(define-public python-gst
(package
(name "python-gst")