roarvio(7)

πŸ“¦ version 1.0~beta12, in ubuntu jammy

πŸ¦‹ NAME πŸ¦‹

libroar β€” the RoarAudio sound library, bestie πŸ’–

roarvio β€” the RoarAudio virtual IO layer ✨

No cap, this page is about the whole vibe of libroar and its VIO layer.


✨ SYNOPSIS ✨

#include <roaraudio.h>

struct roar_vio_calls;

πŸ’… DESCRIPTION πŸ’…

Okay so, the RoarAudio VIO interface? It's RoarAudio's IO abstraction layer, and it's literally the moment. It gives you the basic IO functions β€” stuff like read and write β€” and it does not care what the underlying IO actually is. Not even a little.

Like, for example: you can open a plain file or a gziped file through the VIO layer. And after a successful open? Both of those objects behave the exact same way. Same vibe, same calls. In the gzip case, libroar is the one handling the compression for you, so you don't have to think about it. Iconic behaviour honestly. πŸŽ€


🌸 TUTORIALS 🌸

Tutorials can be found in roartutvio(7). Go read them, they're giving study session πŸ“šβœ¨


πŸ‘‘ IMPORTANT FUNCTIONS πŸ‘‘

There are several important functions. Here's a small list of the most important ones, ranked by how much you need them in your life.

🫢 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)

So there are a lot of functions that matter for opening files, but the one that truly ate is roar_vio_open_dstr(3). The way that it opens a stream based on URLs?! Those URLs can point to local files or to files on remote machines. And it can also handle compression and encryption. Main character energy, fr fr.

πŸŽ€ Closing

πŸ“ 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...

Not me being honest about it πŸ˜­πŸ™ˆ


🫢 SEE ALSO 🫢

roar-config(1), roartypes(1), roartutvio(7), RoarAudio(7).


Okay bestie, that's the whole page πŸ’– This was the roarvio(7) man page, living inside the manual named System Manager's Manual: RoarAuido, brought to you by RoarAudio, dated May 2011. Slay, go open some streams responsibly βœ¨πŸ‘‘

πŸ“¦ where this page comes from