mirror of
https://gitlab.freedesktop.org/pipewire/pipewire.git
synced 2026-05-12 23:50:35 -04:00
context: add library.use-fallback option
Normally, when loading a plugin feature, often a library.name property is given as well. If the feature to load is not explicitly listed in context.spa-libs, the library.name is used a fallback library. Add an option to ignore this library.name and only use the context.spa-libs entries. This makes it possible to only load explicitly listed features in the config file and makes it possible to lock down what plugins can be loaded. Set the option to true by default for now, which keeps the existing behaviour of using the fallback library. Add some more entries to the context.spa-libs in case the option is switched off to make things work. Set the option to false for the minimal.conf.
This commit is contained in:
parent
ddab12a5aa
commit
b3257ae425
7 changed files with 72 additions and 17 deletions
|
|
@ -13,6 +13,7 @@ context.properties = {
|
|||
#library.name.system = support/libspa-support
|
||||
#context.data-loop.library.name.system = support/libspa-support
|
||||
#support.dbus = true
|
||||
library.use-fallback = false
|
||||
#link.max-buffers = 64
|
||||
link.max-buffers = 16 # version < 3 clients can't handle more
|
||||
#mem.warn-mlock = false
|
||||
|
|
@ -70,10 +71,28 @@ context.spa-libs = {
|
|||
# regular expression to a library name that should contain
|
||||
# that factory.
|
||||
#
|
||||
support.* = support/libspa-support
|
||||
audio.convert.* = audioconvert/libspa-audioconvert
|
||||
audio.adapt = audioconvert/libspa-audioconvert
|
||||
api.alsa.* = alsa/libspa-alsa
|
||||
support.* = support/libspa-support
|
||||
#api.v4l2.* = v4l2/libspa-v4l2
|
||||
#api.libcamera.* = libcamera/libspa-libcamera
|
||||
#api.bluez5.* = bluez5/libspa-bluez5
|
||||
#api.vulkan.* = vulkan/libspa-vulkan
|
||||
#video.convert.* = videoconvert/libspa-videoconvert
|
||||
#video.adapt = videoconvert/libspa-videoconvert
|
||||
audio.mixer.* = audiomixer/libspa-audiomixer
|
||||
control.mixer = control/libspa-mixer
|
||||
#audio.aec = aec/libspa-aec-webrtc
|
||||
#filter.graph.plugin.ffmpeg = filter-graph/libspa-filter-graph-plugin-ffmpeg
|
||||
#filter.graph.plugin.onnx = filter-graph/libspa-filter-graph-plugin-onnx
|
||||
#filter.graph.plugin.pipe = blocked
|
||||
#filter.graph.plugin.ebur128 = filter-graph/libspa-filter-graph-plugin-ebur128
|
||||
#filter.graph.plugin.sofa = filter-graph/libspa-filter-graph-plugin-sofa
|
||||
#filter.graph.plugin.ladspa = filter-graph/libspa-filter-graph-plugin-ladspa
|
||||
#filter.graph.plugin.lv2 = filter-graph/libspa-filter-graph-plugin-lv2
|
||||
#filter.graph.plugin.builtin = filter-graph/libspa-filter-graph-plugin-builtin
|
||||
#filter.graph = filter-graph/libspa-filter-graph
|
||||
}
|
||||
|
||||
context.modules = [
|
||||
|
|
|
|||
|
|
@ -15,17 +15,29 @@ context.properties = {
|
|||
#mem.mlock-all = false
|
||||
#log.level = 2
|
||||
#rlimit.nofile = -1
|
||||
#library.use-fallback = true
|
||||
|
||||
#default.clock.quantum-limit = 8192
|
||||
}
|
||||
|
||||
context.spa-libs = {
|
||||
audio.convert.* = audioconvert/libspa-audioconvert
|
||||
support.* = support/libspa-support
|
||||
audio.convert.* = audioconvert/libspa-audioconvert
|
||||
audio.adapt = audioconvert/libspa-audioconvert
|
||||
audio.mixer = audiomixer/libspa-audiomixer
|
||||
audio.aec = aec/libspa-aec-webrtc
|
||||
# because the pulse server allows dynamic loading of streams and modules
|
||||
# inside the server, we must be careful with the filter-graph. Only allow
|
||||
# LADSPA filters.
|
||||
filter.graph.plugin.pipe = blocked
|
||||
# inside the server, we must be careful with the filter-graph.
|
||||
#filter.graph.plugin.ffmpeg = filter-graph/libspa-filter-graph-plugin-ffmpeg
|
||||
#filter.graph.plugin.onnx = filter-graph/libspa-filter-graph-plugin-onnx
|
||||
#filter.graph.plugin.pipe = filter-graph/libspa-filter-graph-plugin-pipe
|
||||
filter.graph.plugin.pipe = blocked
|
||||
#filter.graph.plugin.ebur128 = filter-graph/libspa-filter-graph-plugin-ebur128
|
||||
#filter.graph.plugin.sofa = filter-graph/libspa-filter-graph-plugin-sofa
|
||||
filter.graph.plugin.ladspa = filter-graph/libspa-filter-graph-plugin-ladspa
|
||||
#filter.graph.plugin.lv2 = filter-graph/libspa-filter-graph-plugin-lv2
|
||||
filter.graph.plugin.builtin = filter-graph/libspa-filter-graph-plugin-builtin
|
||||
filter.graph = filter-graph/libspa-filter-graph
|
||||
}
|
||||
|
||||
context.modules = [
|
||||
|
|
|
|||
|
|
@ -12,6 +12,7 @@ context.properties = {
|
|||
## Configure properties in the system.
|
||||
#library.name.system = support/libspa-support
|
||||
#context.data-loop.library.name.system = support/libspa-support
|
||||
#library.use-fallback = true
|
||||
#support.dbus = true
|
||||
#link.max-buffers = 64
|
||||
link.max-buffers = 16 # version < 3 clients can't handle more
|
||||
|
|
@ -75,17 +76,29 @@ context.spa-libs = {
|
|||
# regular expression to a library name that should contain
|
||||
# that factory.
|
||||
#
|
||||
support.* = support/libspa-support
|
||||
audio.convert.* = audioconvert/libspa-audioconvert
|
||||
avb.* = avb/libspa-avb
|
||||
audio.adapt = audioconvert/libspa-audioconvert
|
||||
api.alsa.* = alsa/libspa-alsa
|
||||
api.v4l2.* = v4l2/libspa-v4l2
|
||||
api.libcamera.* = libcamera/libspa-libcamera
|
||||
api.bluez5.* = bluez5/libspa-bluez5
|
||||
api.vulkan.* = vulkan/libspa-vulkan
|
||||
api.jack.* = jack/libspa-jack
|
||||
support.* = support/libspa-support
|
||||
#api.vulkan.* = vulkan/libspa-vulkan
|
||||
video.convert.* = videoconvert/libspa-videoconvert
|
||||
#filter.graph = filter-graph/libspa-filter-graph
|
||||
video.adapt = videoconvert/libspa-videoconvert
|
||||
audio.mixer.* = audiomixer/libspa-audiomixer
|
||||
control.mixer = control/libspa-mixer
|
||||
audio.aec = aec/libspa-aec-webrtc
|
||||
#filter.graph.plugin.ffmpeg = filter-graph/libspa-filter-graph-plugin-ffmpeg
|
||||
filter.graph.plugin.onnx = filter-graph/libspa-filter-graph-plugin-onnx
|
||||
#filter.graph.plugin.pipe = filter-graph/libspa-filter-graph-plugin-pipe
|
||||
filter.graph.plugin.pipe = blocked
|
||||
filter.graph.plugin.ebur128 = filter-graph/libspa-filter-graph-plugin-ebur128
|
||||
filter.graph.plugin.sofa = filter-graph/libspa-filter-graph-plugin-sofa
|
||||
filter.graph.plugin.ladspa = filter-graph/libspa-filter-graph-plugin-ladspa
|
||||
filter.graph.plugin.lv2 = filter-graph/libspa-filter-graph-plugin-lv2
|
||||
filter.graph.plugin.builtin = filter-graph/libspa-filter-graph-plugin-builtin
|
||||
filter.graph = filter-graph/libspa-filter-graph
|
||||
#videotestsrc = videotestsrc/libspa-videotestsrc
|
||||
#audiotestsrc = audiotestsrc/libspa-audiotestsrc
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue