1pw-cli(1)                   General Commands Manual                  pw-cli(1)
2
3
4

NAME

6       pw-cli - The PipeWire Command Line Interface
7

SYNOPSIS

9       pw-cli [command]
10

DESCRIPTION

12       Interact with a PipeWire instance.
13
14       When a command is given, pw-cli will execute the command and exit
15
16       When no command is given, pw-cli starts an interactive session with the
17       default PipeWire instance pipewire-0.
18
19       Connections to other, remote instances can be made. The current
20       instance name is displayed at the prompt.
21
22       Note that pw-cli also creates a local PipeWire instance. Some commands
23       operate on the current (remote) instance and some on the local
24       instance, such as module loading.
25
26       Use the 'help' command to list the available commands.
27

GENERAL COMMANDS

29       help | h
30           Show a quick help on the commands available. It also lists the
31           aliases for many commands.
32
33       quit | q
34           Exit from pw-cli
35

MODULE MANAGEMENT

37       Modules are loaded and unloaded in the local instance, thus the pw-cli
38       binary itself and can add functionality or objects to the local
39       instance. It is not possible in PipeWire to load modules in another
40       instance.
41
42       load-module name [arguments...]
43           Load a module specified by its name and arguments in the local
44           instance. For most modules it is OK to be loaded more than once.
45
46           This command returns a module variable that can be used to unload
47           the module.
48
49           The locally module is not visible in the remote instance. It is not
50           possible in PipeWire to load modules in a remote instance.
51
52       unload-module module-var
53           Unload a module, specified either by its variable.
54

OBJECT INTROSPECTION

56       list-objects
57           List the objects of the current instance.
58
59       Objects are listed with their id, type and version.
60
61       info id | all
62           Get information about a specific object or all objects.
63
64       Requesting info about an object will also notify you of changes.
65

WORKING WITH REMOTES

67       connect [remote-name]
68           Connect to a remote instance and make this the new current
69           instance.
70
71           If no remote name is specified, a connection is made to the default
72           remote instance, usually pipewire-0.
73
74           The special remote name called internal can be used to connect to
75           the local pw-cli PipeWire instance.
76
77           This command returns a remote var that can be used to disconnect or
78           switch remotes.
79
80       disconnect [remote-var]
81           Disconnect from a remote instance.
82
83           If no remote name is specified, the current instance is
84           disconnected.
85
86       list-remotes
87           List all remote instances.
88
89       switch-remote [remote-var]
90           Make the specified remote the current instance.
91
92           If no remote name is specified, the first instance is made current.
93

NODE MANAGEMENT

95       create-node factory-name [properties...]
96           Create a node from a factory in the current instance.
97
98           Properties are key=value pairs separated by whitespace.
99
100           This command returns a node variable.
101
102       export-node node-id [remote-var]
103           Export a node from the local instance to the specified instance.
104           When no instance is specified, the node will be exported to the
105           current instance.
106

DEVICE MANAGEMENT

108       create-device factory-name [properties...]
109           Create a device from a factory in the current instance.
110
111           Properties are key=value pairs separated by whitespace.
112
113           This command returns a device variable.
114
116       create-link node-id port-id node-id port-id [properties...]
117           Create a link between 2 nodes and ports.
118
119           Port ids can be -1 to automatically select an available port.
120
121           Properties are key=value pairs separated by whitespace.
122
123           This command returns a link variable.
124

GLOBALS MANAGEMENT

126       destroy object-id
127           Destroy a global object.
128

PARAMETER MANAGEMENT

130       enum-params object-id param-id
131           Enumerate params of an object.
132
133           param-id can also be given as the param short name.
134
135       set-param object-id param-id param-json
136           Set param of an object.
137
138           param-id can also be given as the param short name.
139

PERMISSION MANAGEMENT

141       permissions client-id object-id permission
142           Set permissions for a client.
143
144           object-id can be -1 to set the default permissions.
145
146       get-permissions client-id
147           Get permissions of a client.
148

COMMAND MANAGEMENT

150       send-command object-id
151           Send a command to an object.
152

AUTHORS

154       The PipeWire Developers
155       <https://gitlab.freedesktop.org/pipewire/pipewire/issues>; PipeWire is
156       available from <https://pipewire.org>
157

SEE ALSO

159       pipewire(1), pw-mon(1),
160
161
162
163
164PipeWire                             1.0.0                           pw-cli(1)
Impressum