PipeWire: Metadata

PipeWire 0.3.79

Loading...
Searching...
No Matches
Files | Data Structures | Macros
Metadata
Extensions

Metadata interface. More...

## Files
file | metadata.h
| `pipewire/extensions/metadata.h`

## Data Structures
struct | pw_metadata_events
| Metadata events More...
struct | pw_metadata_methods
| Metadata methods More...
struct | pw_metadata

## Macros
#define | PW_TYPE_INTERFACE_Metadata PW_TYPE_INFO_INTERFACE_BASE "Metadata"
#define | PW_METADATA_PERM_MASK PW_PERM_RWX
#define | PW_VERSION_METADATA 3
#define | PW_EXTENSION_MODULE_METADATA PIPEWIRE_MODULE_PREFIX "module-metadata"
#define | PW_METADATA_EVENT_PROPERTY 0
#define | PW_METADATA_EVENT_NUM 1
#define | PW_VERSION_METADATA_EVENTS 0
#define | PW_METADATA_METHOD_ADD_LISTENER 0
#define | PW_METADATA_METHOD_SET_PROPERTY 1
#define | PW_METADATA_METHOD_CLEAR 2
#define | PW_METADATA_METHOD_NUM 3
#define | PW_VERSION_METADATA_METHODS 0
#define | pw_metadata_method(o, method, version, ...)
#define | pw_metadata_add_listener(c, ...) pw_metadata_method(c,add_listener,0,__VA_ARGS__)
#define | pw_metadata_set_property(c, ...) pw_metadata_method(c,set_property,0,__VA_ARGS__)
| Set a metadata property.
#define | pw_metadata_clear(c) pw_metadata_method(c,clear,0)
| Clear all metadata.
#define | PW_KEY_METADATA_NAME "metadata.name"
#define | PW_KEY_METADATA_VALUES "metadata.values"

## Detailed Description

Metadata interface.

## Macro Definition Documentation

## ◆ PW_TYPE_INTERFACE_Metadata

#define PW_TYPE_INTERFACE_Metadata PW_TYPE_INFO_INTERFACE_BASE "Metadata"

## ◆ PW_METADATA_PERM_MASK

#define PW_METADATA_PERM_MASK PW_PERM_RWX

## ◆ PW_VERSION_METADATA

#define PW_VERSION_METADATA 3

## ◆ PW_EXTENSION_MODULE_METADATA

#define PW_EXTENSION_MODULE_METADATA PIPEWIRE_MODULE_PREFIX "module-metadata"

## ◆ PW_METADATA_EVENT_PROPERTY

#define PW_METADATA_EVENT_PROPERTY 0

## ◆ PW_METADATA_EVENT_NUM

#define PW_METADATA_EVENT_NUM 1

## ◆ PW_VERSION_METADATA_EVENTS

#define PW_VERSION_METADATA_EVENTS 0

## ◆ PW_METADATA_METHOD_ADD_LISTENER

#define PW_METADATA_METHOD_ADD_LISTENER 0

## ◆ PW_METADATA_METHOD_SET_PROPERTY

#define PW_METADATA_METHOD_SET_PROPERTY 1

## ◆ PW_METADATA_METHOD_CLEAR

#define PW_METADATA_METHOD_CLEAR 2

## ◆ PW_METADATA_METHOD_NUM

#define PW_METADATA_METHOD_NUM 3

## ◆ PW_VERSION_METADATA_METHODS

#define PW_VERSION_METADATA_METHODS 0

## ◆ pw_metadata_method

#define pw_metadata_method | ( |  | o,
|  |  | method,
|  |  | version,
|  |  | ...
| ) |  |

## ◆ pw_metadata_add_listener

#define pw_metadata_add_listener | ( |  | c,
|  |  | ...
| ) |  | pw_metadata_method(c,add_listener,0,__VA_ARGS__)

See also
  pw_metadata_methods.add_listener

## ◆ pw_metadata_set_property

#define pw_metadata_set_property | ( |  | c,
|  |  | ...
| ) |  | pw_metadata_method(c,set_property,0,__VA_ARGS__)

Set a metadata property.

Automatically emit property events for the subject and key when they are changed.

Parameters

  subject | the id of the global to associate the metadata with.
  key | the key of the metadata, NULL clears all metadata for the subject.
  type | the type of the metadata, this can be blank
  value | the metadata value. NULL clears the metadata.

This requires X and W permissions on the metadata. It also requires M permissions on the subject global.

See also
  pw_metadata_methods.set_property

## ◆ pw_metadata_clear

#define pw_metadata_clear | ( |  | c | ) | pw_metadata_method(c,clear,0)

Clear all metadata.

This requires X and W permissions on the metadata.

See also
  pw_metadata_methods.clear

## ◆ PW_KEY_METADATA_NAME

#define PW_KEY_METADATA_NAME "metadata.name"

## ◆ PW_KEY_METADATA_VALUES

#define PW_KEY_METADATA_VALUES "metadata.values"