|
PipeWire 1.4.6
|
Client Node events More...
#include <pipewire/extensions/client-node.h>
Data Fields | |
| uint32_t | version |
| int(* | transport )(void *data, int readfd, int writefd, uint32_t mem_id, uint32_t offset, uint32_t size) |
| Notify of a new transport area. | |
| int(* | set_param )(void *data, uint32_t id, uint32_t flags, const struct spa_pod *param) |
| Notify of a property change. | |
| int(* | set_io )(void *data, uint32_t id, uint32_t mem_id, uint32_t offset, uint32_t size) |
| Configure an IO area for the client. | |
| int(* | event )(void *data, const struct spa_event *event) |
| Receive an event from the client node. | |
| int(* | command )(void *data, const struct spa_command *command) |
| Notify of a new node command. | |
| int(* | add_port )(void *data, enum spa_direction direction, uint32_t port_id, const struct spa_dict *props) |
| A new port was added to the node. | |
| int(* | remove_port )(void *data, enum spa_direction direction, uint32_t port_id) |
| A port was removed from the node. | |
| int(* | port_set_param )(void *data, enum spa_direction direction, uint32_t port_id, uint32_t id, uint32_t flags, const struct spa_pod *param) |
| A parameter was configured on the port. | |
| int(* | port_use_buffers )(void *data, enum spa_direction direction, uint32_t port_id, uint32_t mix_id, uint32_t flags, uint32_t n_buffers, struct pw_client_node_buffer *buffers) |
| Notify the port of buffers. | |
| int(* | port_set_io )(void *data, enum spa_direction direction, uint32_t port_id, uint32_t mix_id, uint32_t id, uint32_t mem_id, uint32_t offset, uint32_t size) |
| Configure the io area with id of port_id. | |
| int(* | set_activation )(void *data, uint32_t node_id, int signalfd, uint32_t mem_id, uint32_t offset, uint32_t size) |
| Notify the activation record of the next node to trigger. | |
| int(* | port_set_mix_info )(void *data, enum spa_direction direction, uint32_t port_id, uint32_t mix_id, uint32_t peer_id, const struct spa_dict *props) |
| Notify about the peer of mix_id. | |
Client Node events
| uint32_t pw_client_node_events::version |
| int(* pw_client_node_events::transport) (void *data, int readfd, int writefd, uint32_t mem_id, uint32_t offset, uint32_t size) |
Notify of a new transport area.
The transport area is used to signal the client and the server.
| readfd | fd for signal data can be read |
| writefd | fd for signal data can be written |
| mem_id | id for activation memory |
| offset | offset of activation memory |
| size | size of activation memory |
| int(* pw_client_node_events::set_param) (void *data, uint32_t id, uint32_t flags, const struct spa_pod *param) |
Notify of a property change.
When the server configures the properties on the node this event is sent
| id | the id of the parameter |
| flags | parameter flags |
| param | the param to set |
| int(* pw_client_node_events::set_io) (void *data, uint32_t id, uint32_t mem_id, uint32_t offset, uint32_t size) |
Configure an IO area for the client.
IO areas are identified with an id and are used to exchange state between client and server
| id | the id of the io area |
| mem_id | the id of the memory to use |
| offset | offset of io area in memory |
| size | size of the io area |
| int(* pw_client_node_events::event) (void *data, const struct spa_event *event) |
Receive an event from the client node.
| event | the received event |
| int(* pw_client_node_events::command) (void *data, const struct spa_command *command) |
Notify of a new node command.
| command | the command |
| int(* pw_client_node_events::add_port) (void *data, enum spa_direction direction, uint32_t port_id, const struct spa_dict *props) |
A new port was added to the node.
The server can at any time add a port to the node when there are free ports available.
| direction | the direction of the port |
| port_id | the new port id |
| props | extra properties |
| int(* pw_client_node_events::remove_port) (void *data, enum spa_direction direction, uint32_t port_id) |
A port was removed from the node.
| direction | a port direction |
| port_id | the remove port id |
| int(* pw_client_node_events::port_set_param) (void *data, enum spa_direction direction, uint32_t port_id, uint32_t id, uint32_t flags, const struct spa_pod *param) |
A parameter was configured on the port.
| direction | a port direction |
| port_id | the port id |
| id | the id of the parameter |
| flags | flags used when setting the param |
| param | the new param |
| int(* pw_client_node_events::port_use_buffers) (void *data, enum spa_direction direction, uint32_t port_id, uint32_t mix_id, uint32_t flags, uint32_t n_buffers, struct pw_client_node_buffer *buffers) |
Notify the port of buffers.
| direction | a port direction |
| port_id | the port id |
| mix_id | the mixer port id |
| n_buffer | the number of buffers |
| buffers | and array of buffer descriptions |
| int(* pw_client_node_events::port_set_io) (void *data, enum spa_direction direction, uint32_t port_id, uint32_t mix_id, uint32_t id, uint32_t mem_id, uint32_t offset, uint32_t size) |
Configure the io area with id of port_id.
| direction | the direction of the port |
| port_id | the port id |
| mix_id | the mixer port id |
| id | the id of the io area to set |
| mem_id | the id of the memory to use |
| offset | offset of io area in memory |
| size | size of the io area |
| int(* pw_client_node_events::set_activation) (void *data, uint32_t node_id, int signalfd, uint32_t mem_id, uint32_t offset, uint32_t size) |
Notify the activation record of the next node to trigger.
| node_id | the peer node id |
| signalfd | the fd to wake up the peer |
| mem_id | the mem id of the memory |
| the | offset in mem_id to map |
| the | size of mem_id to map |
| int(* pw_client_node_events::port_set_mix_info) (void *data, enum spa_direction direction, uint32_t port_id, uint32_t mix_id, uint32_t peer_id, const struct spa_dict *props) |
Notify about the peer of mix_id.
| direction | the direction of the port |
| port_id | the port id |
| mix_id | the mix id |
| peer_id | the id of the peer port |
| props | extra properties |
Since version 4:1