PipeWire  0.3.33
pw_filter_events Struct Reference

Events for a filter. More...

Data Fields

uint32_t version
 
void(* destroy )(void *data)
 
void(* state_changed )(void *data, enum pw_filter_state old, enum pw_filter_state state, const char *error)
 when the filter state changes More...
 
void(* io_changed )(void *data, void *port_data, uint32_t id, void *area, uint32_t size)
 when io changed on a port of the filter (when port_data is NULL). More...
 
void(* param_changed )(void *data, void *port_data, uint32_t id, const struct spa_pod *param)
 when a parameter changed on a port of the filter (when port_data is NULL). More...
 
void(* add_buffer )(void *data, void *port_data, struct pw_buffer *buffer)
 when a new buffer was created for a port More...
 
void(* remove_buffer )(void *data, void *port_data, struct pw_buffer *buffer)
 when a buffer was destroyed for a port More...
 
void(* process )(void *data, struct spa_io_position *position)
 do processing. More...
 
void(* drained )(void *data)
 The filter is drained. More...
 

Detailed Description

Events for a filter.

These events are always called from the mainloop unless explicitly documented otherwise.

Field Documentation

◆ add_buffer

void(* pw_filter_events::add_buffer) (void *data, void *port_data, struct pw_buffer *buffer)

when a new buffer was created for a port

◆ destroy

void(* pw_filter_events::destroy) (void *data)

◆ drained

void(* pw_filter_events::drained) (void *data)

The filter is drained.

◆ io_changed

void(* pw_filter_events::io_changed) (void *data, void *port_data, uint32_t id, void *area, uint32_t size)

when io changed on a port of the filter (when port_data is NULL).

◆ param_changed

void(* pw_filter_events::param_changed) (void *data, void *port_data, uint32_t id, const struct spa_pod *param)

when a parameter changed on a port of the filter (when port_data is NULL).

◆ process

void(* pw_filter_events::process) (void *data, struct spa_io_position *position)

do processing.

This is normally called from the mainloop but can also be called directly from the realtime data thread if the user is prepared to deal with this.

Referenced by pw_filter_get_state().

◆ remove_buffer

void(* pw_filter_events::remove_buffer) (void *data, void *port_data, struct pw_buffer *buffer)

when a buffer was destroyed for a port

◆ state_changed

void(* pw_filter_events::state_changed) (void *data, enum pw_filter_state old, enum pw_filter_state state, const char *error)

when the filter state changes

◆ version

uint32_t pw_filter_events::version

The documentation for this struct was generated from the following file: