Passing multiple properties to pactl is awkward and undocumented
Summary
There is no obvious way to pass multiple properties in a property list parameter when loading a module.
Environment
$ pactl --version
pactl 13.0
Compiled with libpulse 13.0.0
Linked with libpulse 13.0.0
Steps to reproduce
pactl load-module module-loopback source_output_properties='foo="bar" baz="gloink"'
What is the current bug behavior?
The command prints the error Failure: Module initialisation failed
. The syslog says E: [pulseaudio] module-loopback.c: Failed to parse module arguments
.
What is the expected correct behavior?
The command should load the loopback module with the two properties included in the properties of the associated source output. Failing that, the command should give a useful error message. Finally, the format of property list parameters should be documented.
It's actually possible to work around the issue using either of the following:
pactl load-module module-loopback source_output_properties="'foo=\"bar\" baz=\"gloink\"'"
pactl load-module module-loopback source_output_properties='foo="bar"baz="gloink"'
I hope this isn't the intended way of passing property lists, but if it is, it should be documented, since it's highly non-obvious.