| PipeWire 1.4.6
    | 
Node interface. More...
| Files | |
| file | node.h | 
| pipewire/node.h | |
| Data Structures | |
| struct | pw_node_info | 
| The node information.  More... | |
| struct | pw_node_events | 
| Node events.  More... | |
| struct | pw_node_methods | 
| Node methods.  More... | |
| struct | pw_node | 
| Enumerations | |
| enum | pw_node_state { PW_NODE_STATE_ERROR = -1 , PW_NODE_STATE_CREATING = 0 , PW_NODE_STATE_SUSPENDED = 1 , PW_NODE_STATE_IDLE = 2 , PW_NODE_STATE_RUNNING = 3 } | 
| The different node states.  More... | |
| Macros | |
| #define | PW_TYPE_INTERFACE_Node PW_TYPE_INFO_INTERFACE_BASE "Node" | 
| #define | PW_NODE_PERM_MASK PW_PERM_RWXML | 
| #define | PW_VERSION_NODE 3 | 
| #define | PW_API_NODE_IMPL static inline | 
| #define | PW_NODE_CHANGE_MASK_INPUT_PORTS (1 << 0) | 
| #define | PW_NODE_CHANGE_MASK_OUTPUT_PORTS (1 << 1) | 
| #define | PW_NODE_CHANGE_MASK_STATE (1 << 2) | 
| #define | PW_NODE_CHANGE_MASK_PROPS (1 << 3) | 
| #define | PW_NODE_CHANGE_MASK_PARAMS (1 << 4) | 
| #define | PW_NODE_CHANGE_MASK_ALL ((1 << 5)-1) | 
| #define | PW_NODE_EVENT_INFO 0 | 
| #define | PW_NODE_EVENT_PARAM 1 | 
| #define | PW_NODE_EVENT_NUM 2 | 
| #define | PW_VERSION_NODE_EVENTS 0 | 
| #define | PW_NODE_METHOD_ADD_LISTENER 0 | 
| #define | PW_NODE_METHOD_SUBSCRIBE_PARAMS 1 | 
| #define | PW_NODE_METHOD_ENUM_PARAMS 2 | 
| #define | PW_NODE_METHOD_SET_PARAM 3 | 
| #define | PW_NODE_METHOD_SEND_COMMAND 4 | 
| #define | PW_NODE_METHOD_NUM 5 | 
| #define | PW_VERSION_NODE_METHODS 0 | 
| Functions | |
| const char * | pw_node_state_as_string (enum pw_node_state state) | 
| Convert a pw_node_state to a readable string. | |
| struct pw_node_info * | pw_node_info_update (struct pw_node_info *info, const struct pw_node_info *update) | 
| struct pw_node_info * | pw_node_info_merge (struct pw_node_info *info, const struct pw_node_info *update, bool reset) | 
| void | pw_node_info_free (struct pw_node_info *info) | 
| PW_API_NODE_IMPL int | pw_node_add_listener (struct pw_node *object, struct spa_hook *listener, const struct pw_node_events *events, void *data) | 
| PW_API_NODE_IMPL int | pw_node_subscribe_params (struct pw_node *object, uint32_t *ids, uint32_t n_ids) | 
| Subscribe to parameter changes. | |
| PW_API_NODE_IMPL int | pw_node_enum_params (struct pw_node *object, int seq, uint32_t id, uint32_t start, uint32_t num, const struct spa_pod *filter) | 
| Enumerate node parameters. | |
| PW_API_NODE_IMPL int | pw_node_set_param (struct pw_node *object, uint32_t id, uint32_t flags, const struct spa_pod *param) | 
| Set a parameter on the node. | |
| PW_API_NODE_IMPL int | pw_node_send_command (struct pw_node *object, const struct spa_command *command) | 
| Send a command to the node. | |
Node interface.
| enum pw_node_state | 
The different node states.
| #define PW_TYPE_INTERFACE_Node PW_TYPE_INFO_INTERFACE_BASE "Node" | 
| #define PW_NODE_PERM_MASK PW_PERM_RWXML | 
| #define PW_VERSION_NODE 3 | 
| #define PW_API_NODE_IMPL static inline | 
| #define PW_NODE_CHANGE_MASK_INPUT_PORTS (1 << 0) | 
| #define PW_NODE_CHANGE_MASK_OUTPUT_PORTS (1 << 1) | 
| #define PW_NODE_CHANGE_MASK_STATE (1 << 2) | 
| #define PW_NODE_CHANGE_MASK_PROPS (1 << 3) | 
| #define PW_NODE_CHANGE_MASK_PARAMS (1 << 4) | 
| #define PW_NODE_CHANGE_MASK_ALL ((1 << 5)-1) | 
| #define PW_NODE_EVENT_INFO 0 | 
| #define PW_NODE_EVENT_PARAM 1 | 
| #define PW_NODE_EVENT_NUM 2 | 
| #define PW_VERSION_NODE_EVENTS 0 | 
| #define PW_NODE_METHOD_ADD_LISTENER 0 | 
| #define PW_NODE_METHOD_SUBSCRIBE_PARAMS 1 | 
| #define PW_NODE_METHOD_ENUM_PARAMS 2 | 
| #define PW_NODE_METHOD_SET_PARAM 3 | 
| #define PW_NODE_METHOD_SEND_COMMAND 4 | 
| #define PW_NODE_METHOD_NUM 5 | 
| #define PW_VERSION_NODE_METHODS 0 | 
| const char * pw_node_state_as_string | ( | enum pw_node_state | state | ) | 
Convert a pw_node_state to a readable string.
| struct pw_node_info * pw_node_info_update | ( | struct pw_node_info * | info, | 
| const struct pw_node_info * | update ) | 
| struct pw_node_info * pw_node_info_merge | ( | struct pw_node_info * | info, | 
| const struct pw_node_info * | update, | ||
| bool | reset ) | 
| void pw_node_info_free | ( | struct pw_node_info * | info | ) | 
| PW_API_NODE_IMPL int pw_node_add_listener | ( | struct pw_node * | object, | 
| struct spa_hook * | listener, | ||
| const struct pw_node_events * | events, | ||
| void * | data ) | 
| PW_API_NODE_IMPL int pw_node_subscribe_params | ( | struct pw_node * | 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 node.
| PW_API_NODE_IMPL int pw_node_enum_params | ( | struct pw_node * | object, | 
| int | seq, | ||
| uint32_t | id, | ||
| uint32_t | start, | ||
| uint32_t | num, | ||
| const struct spa_pod * | filter ) | 
Enumerate node parameters.
Start enumeration of node parameters. For each param, a param event will be emitted.
| seq | a sequence number to place in the reply | 
| id | the parameter id to enum or PW_ID_ANY for all | 
| 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 node.
| PW_API_NODE_IMPL int pw_node_set_param | ( | struct pw_node * | object, | 
| uint32_t | id, | ||
| uint32_t | flags, | ||
| const struct spa_pod * | param ) | 
Set a parameter on the node.
| id | the parameter id to set | 
| flags | extra parameter flags | 
| param | the parameter to set | 
This requires X and W permissions on the node.
| PW_API_NODE_IMPL int pw_node_send_command | ( | struct pw_node * | object, | 
| const struct spa_command * | command ) | 
Send a command to the node.
| command | the command to send | 
This requires X and W permissions on the node.