PulseAudio: stream.h Source File (original) (raw)

1 #ifndef foostreamhfoo

2 #define foostreamhfoo

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

19

20

21

22

23

24 #include <sys/types.h>

25

31 #include <pulse/cdecl.h>

35

286 PA_C_DECL_BEGIN

287

290

293

296

299

307

313 const char *name ,

316

322 const char *name ,

326

333 const char *name ,

335 unsigned int n_formats ,

337

340

343

346

349

356

367

378

384

388

417 const char *dev ,

422

426 const char *dev ,

429

432

474 void **data,

475 size_t *nbytes);

476

488

515 const void *data ,

516 size_t nbytes ,

518 int64_t offset ,

520

525 const void *data ,

526 size_t nbytes ,

528 void *free_cb_data ,

529 int64_t offset ,

531

552 const void **data ,

553 size_t *nbytes );

554

558

570

575

581

587

590

594

597

600

606

609

616

621

628

638

642

649

661

666

670

675

678

715

731

746

749

752

755

765

775

782

790

794

800

805

806 PA_C_DECL_END

807

808 #endif

Constants and routines for channel mapping handling.

Connection contexts for asynchronous communication with a server.

struct pa_context pa_context

An opaque connection context to a daemon.

Definition: context.h:154

void(* pa_free_cb_t)(void *p)

A generic free() like callback prototype.

Definition: def.h:1037

enum pa_stream_flags pa_stream_flags_t

Some special flags for stream connections.

enum pa_stream_state pa_stream_state_t

The state of a stream.

enum pa_seek_mode pa_seek_mode_t

Seek type for pa_stream_write().

Utility functions for handling a stream or sink format.

struct pa_operation pa_operation

An asynchronous operation object.

Definition: operation.h:33

Property list constants and functions.

enum pa_update_mode pa_update_mode_t

Update mode enum for pa_proplist_update().

struct pa_proplist pa_proplist

A property list object.

Definition: proplist.h:278

Constants and routines for sample type handling.

uint64_t pa_usec_t

Type for usec specifications (unsigned).

Definition: sample.h:264

const pa_timing_info * pa_stream_get_timing_info(pa_stream *s)

Return the latest raw timing data structure.

uint32_t pa_stream_get_monitor_stream(const pa_stream *s)

Return the sink input index previously set with pa_stream_set_monitor_stream().

pa_operation * pa_stream_cork(pa_stream *s, int b, pa_stream_success_cb_t cb, void *userdata)

Pause (or resume) playback of this stream temporarily.

const pa_sample_spec * pa_stream_get_sample_spec(pa_stream *s)

Return a pointer to the stream's sample specification.

void pa_stream_set_state_callback(pa_stream *s, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called whenever the state of the stream changes.

int pa_stream_cancel_write(pa_stream *p)

Reverses the effect of pa_stream_begin_write() dropping all data that has already been placed in the ...

int pa_stream_set_monitor_stream(pa_stream *s, uint32_t sink_input_idx)

For record streams connected to a monitor source: monitor only a very specific sink input of the sink...

void pa_stream_set_write_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata)

Set the callback function that is called when new data may be written to the stream.

int pa_stream_drop(pa_stream *p)

Remove the current fragment on record streams.

int64_t pa_stream_get_underflow_index(const pa_stream *p)

Return at what position the latest underflow occurred, or -1 if this information is not known (e....

pa_context * pa_stream_get_context(const pa_stream *p)

Return the context this stream is attached to.

void pa_stream_set_suspended_callback(pa_stream *p, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called whenever the sink/source this stream is connected to is susp...

int pa_stream_write(pa_stream *p, const void *data, size_t nbytes, pa_free_cb_t free_cb, int64_t offset, pa_seek_mode_t seek)

Write some data to the server (for playback streams).

pa_stream * pa_stream_ref(pa_stream *s)

Increase the reference counter by one.

void pa_stream_set_event_callback(pa_stream *p, pa_stream_event_cb_t cb, void *userdata)

Set the callback function that is called whenever a meta/policy control event is received.

pa_stream * pa_stream_new_with_proplist(pa_context *c, const char *name, const pa_sample_spec *ss, const pa_channel_map *map, pa_proplist *p)

Create a new, unconnected stream with the specified name and sample type, and specify the initial str...

pa_operation * pa_stream_proplist_update(pa_stream *s, pa_update_mode_t mode, pa_proplist *p, pa_stream_success_cb_t cb, void *userdata)

Update the property list of the sink input/source output of this stream, adding new entries.

pa_operation * pa_stream_prebuf(pa_stream *s, pa_stream_success_cb_t cb, void *userdata)

Reenable prebuffering if specified in the pa_buffer_attr structure.

void pa_stream_set_underflow_callback(pa_stream *p, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called when a buffer underflow happens.

void(* pa_stream_success_cb_t)(pa_stream *s, int success, void *userdata)

A generic callback for operation completion.

Definition: stream.h:292

void pa_stream_set_buffer_attr_callback(pa_stream *p, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called whenever the buffer attributes on the server side change.

int pa_stream_begin_write(pa_stream *p, void **data, size_t *nbytes)

Prepare writing data to the server (for playback streams).

void pa_stream_set_moved_callback(pa_stream *p, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called whenever the stream is moved to a different sink/source.

pa_operation * pa_stream_update_sample_rate(pa_stream *s, uint32_t rate, pa_stream_success_cb_t cb, void *userdata)

Change the stream sampling rate during playback.

void pa_stream_unref(pa_stream *s)

Decrease the reference counter by one.

void(* pa_stream_event_cb_t)(pa_stream *p, const char *name, pa_proplist *pl, void *userdata)

A callback for asynchronous meta/policy event messages.

Definition: stream.h:306

int pa_stream_is_corked(const pa_stream *s)

Return 1 if the this stream has been corked.

size_t pa_stream_writable_size(const pa_stream *p)

Return the number of bytes requested by the server that have not yet been written.

pa_operation * pa_stream_drain(pa_stream *s, pa_stream_success_cb_t cb, void *userdata)

Drain a playback stream.

uint32_t pa_stream_get_device_index(const pa_stream *s)

Return the index of the sink or source this stream is connected to in the server.

struct pa_stream pa_stream

An opaque stream for playback or recording.

Definition: stream.h:289

const pa_buffer_attr * pa_stream_get_buffer_attr(pa_stream *s)

Return the per-stream server-side buffer metrics of the stream.

int pa_stream_get_time(pa_stream *s, pa_usec_t *r_usec)

Return the current playback/recording time.

void pa_stream_set_latency_update_callback(pa_stream *p, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called whenever a latency information update happens.

uint32_t pa_stream_get_index(const pa_stream *s)

Return the sink input resp. source output index this stream is identified in the server with.

int pa_stream_disconnect(pa_stream *s)

Disconnect a stream from a source/sink.

int pa_stream_get_latency(pa_stream *s, pa_usec_t *r_usec, int *negative)

Determine the total stream latency.

size_t pa_stream_readable_size(const pa_stream *p)

Return the number of bytes that may be read using pa_stream_peek().

void pa_stream_set_started_callback(pa_stream *p, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called when the server starts playback after an underrun or on init...

int pa_stream_write_ext_free(pa_stream *p, const void *data, size_t nbytes, pa_free_cb_t free_cb, void *free_cb_data, int64_t offset, pa_seek_mode_t seek)

Function does exactly the same as pa_stream_write() with the difference that free_cb_data is passed t...

const char * pa_stream_get_device_name(const pa_stream *s)

Return the name of the sink or source this stream is connected to in the server.

pa_operation * pa_stream_set_name(pa_stream *s, const char *name, pa_stream_success_cb_t cb, void *userdata)

Rename the stream.

int pa_stream_connect_playback(pa_stream *s, const char *dev, const pa_buffer_attr *attr, pa_stream_flags_t flags, const pa_cvolume *volume, pa_stream *sync_stream)

Connect the stream to a sink.

pa_stream * pa_stream_new(pa_context *c, const char *name, const pa_sample_spec *ss, const pa_channel_map *map)

Create a new, unconnected stream with the specified name and sample type.

void pa_stream_set_read_callback(pa_stream *p, pa_stream_request_cb_t cb, void *userdata)

Set the callback function that is called when new data is available from the stream.

void(* pa_stream_request_cb_t)(pa_stream *p, size_t nbytes, void *userdata)

A generic request callback.

Definition: stream.h:295

int pa_stream_connect_record(pa_stream *s, const char *dev, const pa_buffer_attr *attr, pa_stream_flags_t flags)

Connect the stream to a source.

pa_operation * pa_stream_proplist_remove(pa_stream *s, const char *const keys[], pa_stream_success_cb_t cb, void *userdata)

Update the property list of the sink input/source output of this stream, remove entries.

int pa_stream_peek(pa_stream *p, const void **data, size_t *nbytes)

Read the next fragment from the buffer (for recording streams).

const pa_channel_map * pa_stream_get_channel_map(pa_stream *s)

Return a pointer to the stream's channel map.

pa_operation * pa_stream_update_timing_info(pa_stream *p, pa_stream_success_cb_t cb, void *userdata)

Request a timing info structure update for a stream.

void(* pa_stream_notify_cb_t)(pa_stream *p, void *userdata)

A generic notification callback.

Definition: stream.h:298

pa_operation * pa_stream_flush(pa_stream *s, pa_stream_success_cb_t cb, void *userdata)

Flush the playback or record buffer of this stream.

pa_stream * pa_stream_new_extended(pa_context *c, const char *name, pa_format_info *const *formats, unsigned int n_formats, pa_proplist *p)

Create a new, unconnected stream with the specified name, the set of formats this client can provide,...

pa_operation * pa_stream_trigger(pa_stream *s, pa_stream_success_cb_t cb, void *userdata)

Request immediate start of playback on this stream.

int pa_stream_is_suspended(const pa_stream *s)

Return 1 if the sink or source this stream is connected to has been suspended.

const pa_format_info * pa_stream_get_format_info(const pa_stream *s)

Return a pointer to the stream's format.

void pa_stream_set_overflow_callback(pa_stream *p, pa_stream_notify_cb_t cb, void *userdata)

Set the callback function that is called when a buffer overflow happens.

pa_operation * pa_stream_set_buffer_attr(pa_stream *s, const pa_buffer_attr *attr, pa_stream_success_cb_t cb, void *userdata)

Change the buffer metrics of the stream during playback.

pa_stream_state_t pa_stream_get_state(const pa_stream *p)

Return the current state of the stream.

Playback and record buffer metrics.

Definition: def.h:389

A channel map which can be used to attach labels to specific channels of a stream.

Definition: channelmap.h:264

A structure encapsulating a per-channel volume.

Definition: volume.h:145

Represents the format of data provided in a stream or processed by a sink.

Definition: format.h:98

A sample format and attribute specification.

Definition: sample.h:252

A structure for all kinds of timing information of a stream.

Definition: def.h:680

Constants and routines for volume handling.