NAME¶
roar_vs_buffer - Use buffered mode streams
SYNOPSIS¶
#include <roaraudio.h>
int roar_vs_buffer(roar_vs_t * vss, size_t buffer, int * error);
ssize_t roar_vs_get_avail_read(roar_vs_t * vss, int * error);
ssize_t roar_vs_get_avail_write(roar_vs_t * vss, int * error);
int roar_vs_reset_buffer(roar_vs_t * vss, int writering, int readring, int *
error);
DESCRIPTION¶
These functions controls the buffered mode of the VS object. Using this mode is
not recommended.
roar_vs_buffer() initializes the buffered mode. It takes the size for the
buffer as argument. The size should be a power of two. Common values include
2048 and 4096.
roar_vs_get_avail_read() and
roar_vs_get_avail_write() return the
amount of free space in the read and write buffer.
roar_vs_reset_buffer() resets the read and/or write buffer. This means
the data in the buffers is discarded. This does not happen frame aligned and
may result in broken audio.
Buffers are not flushed automaically. To do this use
roar_vs_iterate(3)
or
roar_vs_run(3).
PARAMETERS¶
- vss
- The VS object to be used.
- buffer
- The size of the buffer to be used in bytes.
- writering, readring
- Selects the buffer to reset. Must be ROAR_VS_TRUE or ROAR_VS_FALSE.
- error
- This is a pointer to a integer used to store the error value in case of
error. This can be NULL if not used but it is very recommended to use this
error value to report good error messages to the user.
RETURN VALUE¶
On success these calls return 0. roar_vs_get_avail_read() and
roar_vs_get_avail_write() return the free space in the corresponding buffer.
On error, -1 is returned.
EXAMPLES¶
FIXME
SEE ALSO¶
roarvs(7),
libroar(7),
RoarAudio(7).