Port interface. More...
Files | |
| file | port.h |
pipewire/port.h | |
Data Structures | |
| struct | pw_port_info |
| struct | pw_port_events |
| Port events. More... | |
| struct | pw_port_methods |
| Port methods. More... | |
| struct | pw_port |
Macros | |
| #define | PW_TYPE_INTERFACE_Port PW_TYPE_INFO_INTERFACE_BASE "Port" |
| #define | PW_PORT_PERM_MASK PW_PERM_R|PW_PERM_X|PW_PERM_M |
| #define | PW_VERSION_PORT 3 |
| #define | PW_API_PORT_IMPL static inline |
| #define | pw_direction spa_direction |
| The direction of a port. | |
| #define | PW_DIRECTION_INPUT SPA_DIRECTION_INPUT |
| #define | PW_DIRECTION_OUTPUT SPA_DIRECTION_OUTPUT |
| #define | PW_PORT_CHANGE_MASK_PROPS (1 << 0) |
| #define | PW_PORT_CHANGE_MASK_PARAMS (1 << 1) |
| #define | PW_PORT_CHANGE_MASK_ALL ((1 << 2)-1) |
| #define | PW_PORT_EVENT_INFO 0 |
| #define | PW_PORT_EVENT_PARAM 1 |
| #define | PW_PORT_EVENT_NUM 2 |
| #define | PW_VERSION_PORT_EVENTS 0 |
| #define | PW_PORT_METHOD_ADD_LISTENER 0 |
| #define | PW_PORT_METHOD_SUBSCRIBE_PARAMS 1 |
| #define | PW_PORT_METHOD_ENUM_PARAMS 2 |
| #define | PW_PORT_METHOD_NUM 3 |
| #define | PW_VERSION_PORT_METHODS 0 |
Functions | |
| const char * | pw_direction_as_string (enum pw_direction direction) |
| Convert a pw_direction to a readable string. | |
| struct pw_port_info * | pw_port_info_update (struct pw_port_info *info, const struct pw_port_info *update) |
| struct pw_port_info * | pw_port_info_merge (struct pw_port_info *info, const struct pw_port_info *update, bool reset) |
| void | pw_port_info_free (struct pw_port_info *info) |
| PW_API_PORT_IMPL int | pw_port_add_listener (struct pw_port *object, struct spa_hook *listener, const struct pw_port_events *events, void *data) |
| PW_API_PORT_IMPL int | pw_port_subscribe_params (struct pw_port *object, uint32_t *ids, uint32_t n_ids) |
| Subscribe to parameter changes. | |
| PW_API_PORT_IMPL int | pw_port_enum_params (struct pw_port *object, int seq, uint32_t id, uint32_t start, uint32_t num, const struct spa_pod *filter) |
| Enumerate port parameters. | |
Port interface.
| #define PW_TYPE_INTERFACE_Port PW_TYPE_INFO_INTERFACE_BASE "Port" |
| #define PW_VERSION_PORT 3 |
| #define PW_API_PORT_IMPL static inline |
| #define pw_direction spa_direction |
The direction of a port.
| #define PW_DIRECTION_INPUT SPA_DIRECTION_INPUT |
| #define PW_DIRECTION_OUTPUT SPA_DIRECTION_OUTPUT |
| #define PW_PORT_CHANGE_MASK_PROPS (1 << 0) |
| #define PW_PORT_CHANGE_MASK_PARAMS (1 << 1) |
| #define PW_PORT_CHANGE_MASK_ALL ((1 << 2)-1) |
| #define PW_PORT_EVENT_INFO 0 |
| #define PW_PORT_EVENT_PARAM 1 |
| #define PW_PORT_EVENT_NUM 2 |
| #define PW_VERSION_PORT_EVENTS 0 |
| #define PW_PORT_METHOD_ADD_LISTENER 0 |
| #define PW_PORT_METHOD_SUBSCRIBE_PARAMS 1 |
| #define PW_PORT_METHOD_ENUM_PARAMS 2 |
| #define PW_PORT_METHOD_NUM 3 |
| #define PW_VERSION_PORT_METHODS 0 |
| const char * pw_direction_as_string | ( | enum pw_direction | direction | ) |
Convert a pw_direction to a readable string.
| struct pw_port_info * pw_port_info_update | ( | struct pw_port_info * | info, |
| const struct pw_port_info * | update ) |
| struct pw_port_info * pw_port_info_merge | ( | struct pw_port_info * | info, |
| const struct pw_port_info * | update, | ||
| bool | reset ) |
| void pw_port_info_free | ( | struct pw_port_info * | info | ) |
| PW_API_PORT_IMPL int pw_port_add_listener | ( | struct pw_port * | object, |
| struct spa_hook * | listener, | ||
| const struct pw_port_events * | events, | ||
| void * | data ) |
| PW_API_PORT_IMPL int pw_port_subscribe_params | ( | struct pw_port * | object, |
| uint32_t * | ids, | ||
| uint32_t | n_ids ) |
Subscribe to parameter changes.
Automatically emit param events for the given ids when they are changed.
| ids | an array of param ids |
| n_ids | the number of ids in ids |
This requires X permissions on the port.
| PW_API_PORT_IMPL int pw_port_enum_params | ( | struct pw_port * | object, |
| int | seq, | ||
| uint32_t | id, | ||
| uint32_t | start, | ||
| uint32_t | num, | ||
| const struct spa_pod * | filter ) |
Enumerate port parameters.
Start enumeration of port parameters. For each param, a param event will be emitted.
| seq | a sequence number returned in the reply |
| id | the parameter id to enumerate |
| start | the start index or 0 for the first param |
| num | the maximum number of params to retrieve |
| filter | a param filter or NULL |
This requires X permissions on the port.