Loading...
Searching...
No Matches
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"