PipeWire 1.2.7
|
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