Skip to content

wpctl: support @DEFAULT_{SINK,SOURCE}@ as ID

Théo Lebrun requested to merge tleb/wireplumber:wpctl-def into master

Usage example: wpctl set-volume @DEFAULT_SINK@ 0.3. Both @DEFAULT_SINK@ and @DEFAULT_SOURCE@ are supported. The only command that does not try to interpret this is set-default.

About the implementation: parse_positional() functions now rely on a parse_id() helper function that turns the input argument into a 64-bit ID. Two bits in the upper 32-bit are used to indicate default sink/source. On the run() side, translate_id() is used to turn that 64-bit value into a regular 32-bit ID, using the default-nodes-api if needed.

This patch also makes all found errors that were reported on stdout be reported on stderr.

Opinions?

Merge request reports