PipeWire  0.2.0
pw_stream Class Reference

PipeWire stream object class. More...

Public Member Functions

const char * pw_stream_state_as_string (enum pw_stream_state state)
 Convert a stream state to a readable string. More...
 
struct pw_streampw_stream_new (struct pw_remote *remote, const char *name, struct pw_properties *props)
 Create a new unconneced pw_stream. More...
 
void pw_stream_destroy (struct pw_stream *stream)
 Destroy a stream. More...
 
int pw_stream_connect (struct pw_stream *stream, enum pw_direction direction, const char *port_path, enum pw_stream_flags flags, const struct spa_pod **params, uint32_t n_params)
 Connect a stream for input or output on port_path. More...
 
uint32_t pw_stream_get_node_id (struct pw_stream *stream)
 Get the node ID of the stream. More...
 
int pw_stream_disconnect (struct pw_stream *stream)
 Disconnect stream. More...
 
void pw_stream_finish_format (struct pw_stream *stream, int res, const struct spa_pod **params, uint32_t n_params)
 Complete the negotiation process with result code res. More...
 
int pw_stream_set_active (struct pw_stream *stream, bool active)
 Activate or deactivate the stream. More...
 
int pw_stream_get_time (struct pw_stream *stream, struct pw_time *time)
 Query the time on the stream. More...
 

Detailed Description

PipeWire stream object class.

The stream object provides a convenient way to send and receive data streams from/to PipeWire.

See also Media Streams and Core API

Member Function Documentation

◆ pw_stream_connect()

int pw_stream_connect ( struct pw_stream stream,
enum pw_direction  direction,
const char *  port_path,
enum pw_stream_flags  flags,
const struct spa_pod **  params,
uint32_t  n_params 
)

Connect a stream for input or output on port_path.

Returns
0 on success < 0 on error.

You should connect to the process event and use pw_stream_dequeue_buffer() to get the latest metadata and data.

Parameters
streama pw_stream
directionthe stream direction
port_paththe port path to connect to or NULL to let the server choose a port
flagsstream flags
paramsan array with params. The params should ideally contain supported formats.
n_paramsnumber of items in params

◆ pw_stream_destroy()

void pw_stream_destroy ( struct pw_stream stream)

Destroy a stream.

Referenced by pw_remote_destroy().

◆ pw_stream_disconnect()

int pw_stream_disconnect ( struct pw_stream stream)

Disconnect stream.

Referenced by pw_remote_disconnect(), and pw_stream_destroy().

◆ pw_stream_finish_format()

void pw_stream_finish_format ( struct pw_stream stream,
int  res,
const struct spa_pod **  params,
uint32_t  n_params 
)

Complete the negotiation process with result code res.

This function should be called after notification of the format.

When res indicates success, params contain the parameters for the allocation state.

Parameters
streama pw_stream
resa result code
paramsan array of params. The params should ideally contain parameters for doing buffer allocation.
n_paramsnumber of elements in params

◆ pw_stream_get_node_id()

uint32_t pw_stream_get_node_id ( struct pw_stream stream)

Get the node ID of the stream.

Returns
node ID.

◆ pw_stream_get_time()

int pw_stream_get_time ( struct pw_stream stream,
struct pw_time time 
)

Query the time on the stream.

◆ pw_stream_new()

struct pw_stream * pw_stream_new ( struct pw_remote remote,
const char *  name,
struct pw_properties props 
)

Create a new unconneced pw_stream.

Returns
a newly allocated pw_stream
Parameters
remotea pw_remote
namea stream name
propsstream properties, ownership is taken

◆ pw_stream_set_active()

int pw_stream_set_active ( struct pw_stream stream,
bool  active 
)

Activate or deactivate the stream.

◆ pw_stream_state_as_string()

const char * pw_stream_state_as_string ( enum pw_stream_state  state)

Convert a stream state to a readable string.


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