Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Julian Bouzas
WirePlumber
Commits
5dc250a9
Commit
5dc250a9
authored
Dec 17, 2019
by
George Kiagiadakis
Browse files
config: refactor wireplumber's configuration
parent
bb3a91bd
Changes
16
Hide whitespace changes
Inline
Side-by-side
Makefile
View file @
5dc250a9
...
...
@@ -12,8 +12,8 @@ clean:
run
:
all
WIREPLUMBER_MODULE_DIR
=
build/modules
\
WIREPLUMBER_CONFIG_FILE
=
src/wireplumber.conf
\
WIREPLUMBER_CONFIG_DIR
=
src/
wireplumber
\
WIREPLUMBER_CONFIG_FILE
=
src/
config/
wireplumber.conf
\
WIREPLUMBER_CONFIG_DIR
=
src/
config
\
$(DBG)
./build/src/wireplumber
test
:
all
...
...
src/
wireplumber/
audio-sink.endpoint
→
src/
config/00-
audio-sink.endpoint
View file @
5dc250a9
...
...
@@ -5,6 +5,6 @@ properties = [
]
[endpoint]
direction = "sink"
type = "pw-audio-softdsp-endpoint"
streams = "default.streams"
direction = "sink"
streams = "playback.streams"
src/
wireplumber/
audio-source.endpoint
→
src/
config/00-
audio-source.endpoint
View file @
5dc250a9
...
...
@@ -5,6 +5,6 @@ properties = [
]
[endpoint]
direction = "source"
type = "pw-audio-softdsp-endpoint"
streams = "default.streams"
direction = "source"
streams = "capture.streams"
src/
wireplumber/
default-input-audio.endpoint-link
→
src/
config/00-
default-input-audio.endpoint-link
View file @
5dc250a9
[match-endpoint]
priority =
5
0
priority = 0
direction = "sink"
media_class = "Stream/Input/Audio"
[target-endpoint]
media_class = "Audio/Source"
properties = [
{ name = "api.alsa.path", value = "hw:0,0" },
]
[endpoint-link]
keep = false
src/
wireplumber/
default-output-audio.endpoint-link
→
src/
config/00-
default-output-audio.endpoint-link
View file @
5dc250a9
[match-endpoint]
priority =
5
0
priority = 0
direction = "source"
media_class = "Stream/Output/Audio"
[target-endpoint]
media_class = "Audio/Sink"
properties = [
{ name = "api.alsa.path", value = "hw:0,0" },
]
[endpoint-link]
keep = false
src/
wireplumber/
stream-input-audio.endpoint
→
src/
config/00-
stream-input-audio.endpoint
View file @
5dc250a9
File moved
src/
wireplumber/
stream-output-audio.endpoint
→
src/
config/00-
stream-output-audio.endpoint
View file @
5dc250a9
File moved
src/
wireplumber/bluealsa-input
-audio.endpoint
-link
→
src/
config/01-hw:0,0
-audio
-sink
.endpoint
View file @
5dc250a9
[match-endpoint]
priority = 75
direction = "sink"
name = "bluealsa*"
media_class = "Stream/Input/Audio"
[target-endpoint]
media_class = "Audio/Source"
stream = "Multimedia"
[match-node]
priotity = 1
properties = [
{ name = "media.class", value = "Audio/Sink" },
{ name = "api.alsa.path", value = "hw:0,0" },
]
[endpoint-link]
keep = true
[endpoint]
type = "pw-audio-softdsp-endpoint"
direction = "sink"
streams = "playback.streams"
priority = 1
src/
wireplumber/bluealsa-output-audio
.endpoint
-link
→
src/
config/01-hw:0,0-audio-source
.endpoint
View file @
5dc250a9
[match-endpoint]
priority = 75
direction = "source"
name = "bluealsa*"
media_class = "Stream/Output/Audio"
[target-endpoint]
media_class = "Audio/Sink"
stream = "Multimedia"
[match-node]
priotity = 1
properties = [
{ name = "media.class", value = "Audio/Source" },
{ name = "api.alsa.path", value = "hw:0,0" },
]
[endpoint-link]
keep = true
[endpoint]
type = "pw-audio-softdsp-endpoint"
direction = "source"
streams = "capture.streams"
priority = 1
src/config/70-usb-audio-sink.endpoint
0 → 100644
View file @
5dc250a9
[match-node]
priotity = 70
properties = [
{ name = "media.class", value = "Audio/Sink" },
{ name = "api.alsa.card.driver", value = "USB-Audio" },
]
[endpoint]
type = "pw-audio-softdsp-endpoint"
direction = "sink"
streams = "playback.streams"
priority = 70
src/config/70-usb-audio-source.endpoint
0 → 100644
View file @
5dc250a9
[match-node]
priotity = 70
properties = [
{ name = "media.class", value = "Audio/Source" },
{ name = "api.alsa.card.driver", value = "USB-Audio" },
]
[endpoint]
type = "pw-audio-softdsp-endpoint"
direction = "source"
streams = "capture.streams"
priority = 70
src/config/README.md
0 → 100644
View file @
5dc250a9
WirePlumber Configuration
===
This directory contains WirePlumber's configuration files.
There are 4 kinds of files:
*
`wireplumber.conf`
This file lists the modules that are being loaded by WirePlumber.
*
`*.endpoint`
files
These files contain rules to create endpoints when WirePlumber detects
new nodes in the pipewire graph. They are TOML v0.5 files.
The
`00-stream-*.endpoint`
files contain rules to create endpoints for the
nodes of the client applications that connect to pipewire. You should not
change or remove those unless you know what you are doing.
The rest of the
`.endpoint`
files contain rules to create endpoints for
ALSA device nodes.
TODO: more info
*
`*.endpoint-link`
files
These files contain rules to link endpoints with each other. They are part
of the policy module.
*
`*.streams`
files
These files contain a list of streams and their priorities.
The names of the streams are used to create streams on new endpoints.
In order to use a specific list of streams for a specific endpoint,
the relevant
`.endpoint`
file that contains the creation rule for that
endpoint must reference the
`.streams`
file.
The stream priorities are being interpreted by the policy module to apply
restrictions on which app can use the device at a given time.
The
`media.role`
of the application's stream is matched against the names
of the streams when applying policy.
src/config/capture.streams
0 → 100644
View file @
5dc250a9
[[streams]]
name = "Capture"
priority = 1
src/
wireplumber/default
.streams
→
src/
config/playback
.streams
View file @
5dc250a9
File moved
src/wireplumber.conf
→
src/
config/
wireplumber.conf
View file @
5dc250a9
File moved
src/meson.build
View file @
5dc250a9
...
...
@@ -3,12 +3,10 @@ wp_sources = [
]
wireplumber_config_file = join_paths(wireplumber_config_dir, 'wireplumber.conf')
install_data('wireplumber.conf',
install_dir: wireplumber_config_dir
)
install_subdir('wireplumber',
install_dir: wireplumber_config_dir
install_subdir('config',
install_dir: wireplumber_config_dir,
strip_directory : true
)
executable('wireplumber',
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment