SYNOPSIS

#include <roaraudio.h>

struct roar_vio_calls;

DESCRIPTION

The RoarAudio VIO interface is RoarAudio's IO abstraction layer. It provides basic IO functions such as read and write independing on the underlaying IO. For Example can you open a plain or a gziped file via the VIO layer. After a successful open both objects behave the same, libroar takes care about the compression in the gzip case.

TUTORIALS

Tutorials can be found in roartutvio(7).

IMPORTANT FUNCTIONS

There are several important functions. This is a small list of the most important ones.

Opening

roar_vio_open_file(3), roar_vio_open_fh(3), roar_vio_open_stdio(3), roar_vio_open_dstr(3), roar_vio_open_proto(3).

While there are a lot functions important for opening files the most important one is roar_vio_open_dstr(3). It opens a stream based on URLs that can point to local files or files on remote machines. It also can handle compression and encryption.

Closing

roar_vio_close(3), roar_vio_shutdown(3)

Reading and writing

roar_vio_read(3), roar_vio_write(3)

Seeking and positioning

roar_vio_lseek(3)

Non-Blocking and Asyncron IO

roar_vio_nonblock(3), roar_vio_sync(3), roar_vio_select(3)

Networking and Sockets

roar_vio_accept(3)

String handling

roar_vio_printf(3)

BUGS

A lot...

RELATED TO roarvio…