PipeWire 1.6.8

Loading...
Searching...
No Matches
keys.h
Go to the documentation of this file.
1/* PipeWire */
2/* SPDX-FileCopyrightText: Copyright © 2019 Wim Taymans */
3/* SPDX-License-Identifier: MIT */
4
5#ifndef PIPEWIRE_KEYS_H
6#define PIPEWIRE_KEYS_H
7
8#include <pipewire/utils.h>
9
10#ifdef __cplusplus
11 extern "C" {
12#endif
13
29#define PW_KEY_PROTOCOL "pipewire.protocol"
30#define PW_KEY_ACCESS "pipewire.access"
31#define PW_KEY_CLIENT_ACCESS "pipewire.client.access"
33
37#define PW_KEY_SEC_PID "pipewire.sec.pid"
38#define PW_KEY_SEC_UID "pipewire.sec.uid"
39#define PW_KEY_SEC_GID "pipewire.sec.gid"
40#define PW_KEY_SEC_LABEL "pipewire.sec.label"
41
42#define PW_KEY_SEC_SOCKET "pipewire.sec.socket"
43
44#define PW_KEY_SEC_ENGINE "pipewire.sec.engine"
47#define PW_KEY_SEC_APP_ID "pipewire.sec.app-id"
48#define PW_KEY_SEC_INSTANCE_ID "pipewire.sec.instance-id"
49
50#define PW_KEY_LIBRARY_NAME_SYSTEM "library.name.system"
51#define PW_KEY_LIBRARY_NAME_LOOP "library.name.loop"
52#define PW_KEY_LIBRARY_NAME_DBUS "library.name.dbus"
53
55#define PW_KEY_OBJECT_PATH "object.path"
56#define PW_KEY_OBJECT_ID "object.id"
57#define PW_KEY_OBJECT_SERIAL "object.serial"
61#define PW_KEY_OBJECT_LINGER "object.linger"
63#define PW_KEY_OBJECT_REGISTER "object.register"
64#define PW_KEY_OBJECT_EXPORT "object.export"
66
67/* config */
68#define PW_KEY_CONFIG_PREFIX "config.prefix"
69#define PW_KEY_CONFIG_NAME "config.name"
70#define PW_KEY_CONFIG_OVERRIDE_PREFIX "config.override.prefix"
71#define PW_KEY_CONFIG_OVERRIDE_NAME "config.override.name"
72
73/* loop */
74#define PW_KEY_LOOP_NAME "loop.name"
75#define PW_KEY_LOOP_CLASS "loop.class"
76#define PW_KEY_LOOP_RT_PRIO "loop.rt-prio"
77#define PW_KEY_LOOP_CANCEL "loop.cancel"
78
79/* context */
80#define PW_KEY_CONTEXT_PROFILE_MODULES "context.profile.modules"
81#define PW_KEY_USER_NAME "context.user-name"
82#define PW_KEY_HOST_NAME "context.host-name"
83
84/* core */
85#define PW_KEY_CORE_NAME "core.name"
88#define PW_KEY_CORE_VERSION "core.version"
89#define PW_KEY_CORE_DAEMON "core.daemon"
90
91#define PW_KEY_CORE_ID "core.id"
92#define PW_KEY_CORE_MONITORS "core.monitors"
93
94/* cpu */
95#define PW_KEY_CPU_MAX_ALIGN "cpu.max-align"
97#define PW_KEY_CPU_CORES "cpu.cores"
98
99/* priorities */
100#define PW_KEY_PRIORITY_SESSION "priority.session"
101#define PW_KEY_PRIORITY_DRIVER "priority.driver"
102
103/* remote keys */
104#define PW_KEY_REMOTE_NAME "remote.name"
111#define PW_KEY_REMOTE_INTENTION "remote.intention"
113
115#define PW_KEY_APP_NAME "application.name"
116#define PW_KEY_APP_ID "application.id"
118#define PW_KEY_APP_VERSION "application.version"
119#define PW_KEY_APP_ICON "application.icon"
120#define PW_KEY_APP_ICON_NAME "application.icon-name"
122#define PW_KEY_APP_LANGUAGE "application.language"
124
125#define PW_KEY_APP_PROCESS_ID "application.process.id"
126#define PW_KEY_APP_PROCESS_BINARY "application.process.binary"
127#define PW_KEY_APP_PROCESS_USER "application.process.user"
128#define PW_KEY_APP_PROCESS_HOST "application.process.host"
129#define PW_KEY_APP_PROCESS_MACHINE_ID "application.process.machine-id"
131#define PW_KEY_APP_PROCESS_SESSION_ID "application.process.session-id"
135#define PW_KEY_WINDOW_X11_DISPLAY "window.x11.display"
136
138#define PW_KEY_CLIENT_ID "client.id"
139#define PW_KEY_CLIENT_NAME "client.name"
140#define PW_KEY_CLIENT_API "client.api"
142
144#define PW_KEY_NODE_ID "node.id"
145#define PW_KEY_NODE_NAME "node.name"
146#define PW_KEY_NODE_NICK "node.nick"
147#define PW_KEY_NODE_DESCRIPTION "node.description"
149#define PW_KEY_NODE_PLUGGED "node.plugged"
151
152#define PW_KEY_NODE_SESSION "node.session"
153#define PW_KEY_NODE_GROUP "node.group"
157#define PW_KEY_NODE_SYNC_GROUP "node.sync-group"
161#define PW_KEY_NODE_SYNC "node.sync"
162#define PW_KEY_NODE_TRANSPORT "node.transport"
163#define PW_KEY_NODE_EXCLUSIVE "node.exclusive"
164#define PW_KEY_NODE_AUTOCONNECT "node.autoconnect"
166#define PW_KEY_NODE_LATENCY "node.latency"
168#define PW_KEY_NODE_MAX_LATENCY "node.max-latency"
170#define PW_KEY_NODE_LOCK_QUANTUM "node.lock-quantum"
172#define PW_KEY_NODE_FORCE_QUANTUM "node.force-quantum"
174#define PW_KEY_NODE_RATE "node.rate"
176#define PW_KEY_NODE_LOCK_RATE "node.lock-rate"
178#define PW_KEY_NODE_FORCE_RATE "node.force-rate"
181
182#define PW_KEY_NODE_DONT_RECONNECT "node.dont-reconnect"
186#define PW_KEY_NODE_ALWAYS_PROCESS "node.always-process"
187#define PW_KEY_NODE_WANT_DRIVER "node.want-driver"
189#define PW_KEY_NODE_PAUSE_ON_IDLE "node.pause-on-idle"
190#define PW_KEY_NODE_SUSPEND_ON_IDLE "node.suspend-on-idle"
191#define PW_KEY_NODE_CACHE_PARAMS "node.cache-params"
192#define PW_KEY_NODE_TRANSPORT_SYNC "node.transport.sync"
193#define PW_KEY_NODE_DRIVER "node.driver"
196#define PW_KEY_NODE_SUPPORTS_LAZY "node.supports-lazy"
201#define PW_KEY_NODE_SUPPORTS_REQUEST "node.supports-request"
205#define PW_KEY_NODE_DRIVER_ID "node.driver-id"
207#define PW_KEY_NODE_ASYNC "node.async"
208#define PW_KEY_NODE_LOOP_NAME "node.loop.name"
209#define PW_KEY_NODE_LOOP_CLASS "node.loop.class"
210#define PW_KEY_NODE_STREAM "node.stream"
212#define PW_KEY_NODE_VIRTUAL "node.virtual"
214#define PW_KEY_NODE_PASSIVE "node.passive"
217#define PW_KEY_NODE_LINK_GROUP "node.link-group"
220#define PW_KEY_NODE_NETWORK "node.network"
221#define PW_KEY_NODE_TRIGGER "node.trigger"
224#define PW_KEY_NODE_CHANNELNAMES "node.channel-names"
226#define PW_KEY_NODE_DEVICE_PORT_NAME_PREFIX \
227 "node.device-port-name-prefix"
232#define PW_KEY_NODE_PHYSICAL "node.physical"
233#define PW_KEY_NODE_TERMINAL "node.terminal"
234
235#define PW_KEY_NODE_RELIABLE "node.reliable"
236
238#define PW_KEY_PORT_ID "port.id"
239#define PW_KEY_PORT_NAME "port.name"
240#define PW_KEY_PORT_DIRECTION "port.direction"
242#define PW_KEY_PORT_ALIAS "port.alias"
243#define PW_KEY_PORT_PHYSICAL "port.physical"
244#define PW_KEY_PORT_TERMINAL "port.terminal"
245#define PW_KEY_PORT_CONTROL "port.control"
246#define PW_KEY_PORT_MONITOR "port.monitor"
247#define PW_KEY_PORT_CACHE_PARAMS "port.cache-params"
248#define PW_KEY_PORT_EXTRA "port.extra"
250#define PW_KEY_PORT_PASSIVE "port.passive"
251#define PW_KEY_PORT_IGNORE_LATENCY "port.ignore-latency"
252#define PW_KEY_PORT_GROUP "port.group"
253#define PW_KEY_PORT_EXCLUSIVE "port.exclusive"
254#define PW_KEY_PORT_RELIABLE "port.reliable"
255
257#define PW_KEY_LINK_ID "link.id"
258#define PW_KEY_LINK_INPUT_NODE "link.input.node"
259#define PW_KEY_LINK_INPUT_PORT "link.input.port"
260#define PW_KEY_LINK_OUTPUT_NODE "link.output.node"
261#define PW_KEY_LINK_OUTPUT_PORT "link.output.port"
262#define PW_KEY_LINK_PASSIVE "link.passive"
265#define PW_KEY_LINK_FEEDBACK "link.feedback"
268#define PW_KEY_LINK_ASYNC "link.async"
269
271#define PW_KEY_DEVICE_ID "device.id"
272#define PW_KEY_DEVICE_NAME "device.name"
273#define PW_KEY_DEVICE_PLUGGED "device.plugged"
275#define PW_KEY_DEVICE_NICK "device.nick"
276#define PW_KEY_DEVICE_STRING "device.string"
278#define PW_KEY_DEVICE_API "device.api"
280#define PW_KEY_DEVICE_DESCRIPTION "device.description"
282#define PW_KEY_DEVICE_BUS_PATH "device.bus-path"
284#define PW_KEY_DEVICE_SERIAL "device.serial"
285#define PW_KEY_DEVICE_VENDOR_ID "device.vendor.id"
286#define PW_KEY_DEVICE_VENDOR_NAME "device.vendor.name"
287#define PW_KEY_DEVICE_PRODUCT_ID "device.product.id"
288#define PW_KEY_DEVICE_PRODUCT_NAME "device.product.name"
289#define PW_KEY_DEVICE_CLASS "device.class"
290#define PW_KEY_DEVICE_FORM_FACTOR "device.form-factor"
295#define PW_KEY_DEVICE_BUS "device.bus"
298#define PW_KEY_DEVICE_SUBSYSTEM "device.subsystem"
299#define PW_KEY_DEVICE_SYSFS_PATH "device.sysfs.path"
300#define PW_KEY_DEVICE_ICON "device.icon"
302#define PW_KEY_DEVICE_ICON_NAME "device.icon-name"
304#define PW_KEY_DEVICE_INTENDED_ROLES "device.intended-roles"
308#define PW_KEY_DEVICE_CACHE_PARAMS "device.cache-params"
309
311#define PW_KEY_MODULE_ID "module.id"
312#define PW_KEY_MODULE_NAME "module.name"
313#define PW_KEY_MODULE_AUTHOR "module.author"
314#define PW_KEY_MODULE_DESCRIPTION "module.description"
316#define PW_KEY_MODULE_USAGE "module.usage"
318#define PW_KEY_MODULE_VERSION "module.version"
319#define PW_KEY_MODULE_DEPRECATED "module.deprecated"
320
322#define PW_KEY_FACTORY_ID "factory.id"
323#define PW_KEY_FACTORY_NAME "factory.name"
324#define PW_KEY_FACTORY_USAGE "factory.usage"
325#define PW_KEY_FACTORY_TYPE_NAME "factory.type.name"
326#define PW_KEY_FACTORY_TYPE_VERSION "factory.type.version"
327
328/** Stream properties */
329#define PW_KEY_STREAM_IS_LIVE "stream.is-live"
330#define PW_KEY_STREAM_LATENCY_MIN "stream.latency.min"
331#define PW_KEY_STREAM_LATENCY_MAX "stream.latency.max"
332#define PW_KEY_STREAM_MONITOR "stream.monitor"
338#define PW_KEY_STREAM_DONT_REMIX "stream.dont-remix"
339#define PW_KEY_STREAM_CAPTURE_SINK "stream.capture.sink"
341
343#define PW_KEY_MEDIA_TYPE "media.type"
345#define PW_KEY_MEDIA_CATEGORY "media.category"
347#define PW_KEY_MEDIA_ROLE "media.role"
351#define PW_KEY_MEDIA_CLASS "media.class"
352#define PW_KEY_MEDIA_NAME "media.name"
353#define PW_KEY_MEDIA_TITLE "media.title"
354#define PW_KEY_MEDIA_ARTIST "media.artist"
355#define PW_KEY_MEDIA_ALBUM "media.album"
356#define PW_KEY_MEDIA_COPYRIGHT "media.copyright"
357#define PW_KEY_MEDIA_SOFTWARE "media.software"
358#define PW_KEY_MEDIA_LANGUAGE "media.language"
359#define PW_KEY_MEDIA_FILENAME "media.filename"
360#define PW_KEY_MEDIA_ICON "media.icon"
362#define PW_KEY_MEDIA_ICON_NAME "media.icon-name"
364#define PW_KEY_MEDIA_COMMENT "media.comment"
365#define PW_KEY_MEDIA_DATE "media.date"
366#define PW_KEY_MEDIA_FORMAT "media.format"
367
369#define PW_KEY_FORMAT_DSP "format.dsp"
372#define PW_KEY_AUDIO_CHANNEL "audio.channel"
373#define PW_KEY_AUDIO_RATE "audio.rate"
374#define PW_KEY_AUDIO_CHANNELS "audio.channels"
375#define PW_KEY_AUDIO_FORMAT "audio.format"
376#define PW_KEY_AUDIO_ALLOWED_RATES "audio.allowed-rates"
378
380#define PW_KEY_VIDEO_RATE "video.framerate"
381#define PW_KEY_VIDEO_FORMAT "video.format"
382#define PW_KEY_VIDEO_SIZE "video.size"
383
384#define PW_KEY_TARGET_OBJECT "target.object"
386
387#ifndef PW_REMOVE_DEPRECATED
388# ifdef PW_ENABLE_DEPRECATED
389# define PW_KEY_PRIORITY_MASTER "priority.master"
390# define PW_KEY_NODE_TARGET "node.target"
391# define PW_KEY_LOOP_RETRY_TIMEOUT "loop.retry-timeout"
392# else
393# define PW_KEY_PRIORITY_MASTER PW_DEPRECATED("priority.master")
394# define PW_KEY_NODE_TARGET PW_DEPRECATED("node.target")
395# define PW_KEY_LOOP_RETRY_TIMEOUT PW_DEPRECATED("loop.retry-timeout")
396# endif /* PW_ENABLE_DEPRECATED */
397#endif /* PW_REMOVE_DEPRECATED */
398
401
402#ifdef __cplusplus
403}
404#endif
405
406#endif /* PIPEWIRE_KEYS_H */
utils.h