---
name: "roar_simple_record"
section: "3"
platform: "linux"
package: "libroar-dev"
version: "1.0~beta12-4"
release: "Debian 11 (Bullseye)"
platforms: ["linux"]
url: "https://new.carta.tech/roar_simple_record"
---

# roar\_simple\_record(3)

Simple playback, monetoring, recording or filtering via RoarAudio

## NAME

roar\_simple\_play, roar\_simple\_monitor, roar\_simple\_record, roar\_simple\_filter - Simple playback, monetoring, recording or filtering via RoarAudio

## SYNOPSIS

\#include \<roaraudio.h\>

int roar\_simple\_play(int rate, int channels, int bits, int codec, char \* server, char \* name);

int roar\_simple\_monitor(int rate, int channels, int bits, int codec, char \* server, char \* name);

int roar\_simple\_record(int rate, int channels, int bits, int codec, char \* server, char \* name);

int roar\_simple\_filter(int rate, int channels, int bits, int codec, char \* server, char \* name);

## DESCRIPTION

Open a connection to the [**roard**(1)](/roard/1.md) and creates a new stream for playback, monetoring, recording or filtering. After you are done you need to close the connection via [**roar\_simple\_close**(3)](/roar_simple_close/3.md). In case you just don't do anything with the stream the server will kick your connection, or, in case of playback warns the user about underruns.

Those functions was removed in version 1.0beta0-pr0. Please upgrade to VS API. See [**roar\_vs\_new\_simple**(3)](/roar_vs_new_simple/3.md).

## PARAMETERS

- **rate**

  The sample rate of the stream.

- **channels**

  The nummber of channels in the stream.

- **bits**

  The number of bits per sample of the stream. Commen values are 8 and 16.

- **codec**

  The Codec of the data you stream to the server. This has nothing to do with codec of the file you are playing back or encoding. Default (**ROAR\_CODEC\_DEFAULT**) is **ROAR\_CODEC\_PCM\_S\_BE** for signed PCM in big endian.

- **server**

  The name of the server. A value of **NULL** (common case) is used to try default locations.

- **name**

  The name of the process opening this stream to be listend in the servers meta data. Should normally be the name of the player without any path or filename being played. If **NULL** an internal default is used.

## NOTES ON FILTER STREAMS

Filtering streams should not expected to work with different audio data than the server works with. You should get the values via [**roar\_server\_oinfo**(3)](/roar_server_oinfo/3.md) before opening the stream.

## RETURN VALUE

On success these calls return a filehandle for the stream.  On error, -1 is returned.

## EXAMPLES

Examples of these calls are the tools [**roarcat**(1)](/roarcat/1.md), [**roarmon**(1)](/roarmon/1.md), **roarrec**(1) and [**roarfilt**(1)](/roarfilt/1.md). Just look at there code. They aren't that complex.

## SEE ALSO

[**roar\_vs\_new\_simple**(3)](/roar_vs_new_simple/3.md), [**roarcat**(1)](/roarcat/1.md), [**roarmon**(1)](/roarmon/1.md), **roarrec**(1), [**roarfilt**(1)](/roarfilt/1.md), [**roar\_server\_oinfo**(3)](/roar_server_oinfo/3.md), [**roar\_simple\_close**(3)](/roar_simple_close/3.md), [**libroar**(7)](/libroar/7.md), [**RoarAudio**(7)](/RoarAudio/7.md).
