[PD] [PD-announce] AoO (audio over OSC) v2.0-pre2

Christof Ressi info at christofressi.com
Mon Jun 22 15:20:30 CEST 2020


Dear list,

here's a new pre-release for the AoO multichannel audio streaming 
library. In the last two months, the library has been seen many 
improvements and has been used successfully in our Virtual Rehearsal 
Room project (see vrr.iem.at <https://vrr.iem.at/>).

Binaries for all common platforms (Windows, macOS, Linux, ARM boards) 
are available on Deken (search for "aoo"). The source code can be found 
here: https://git.iem.at/cm/aoo

See the help patches (aoo_send~-help.pd, aoo_receive~-help.pd, 
aoo_server.pd) for usage instructions.

If you want to stream between different home networks (without port 
forwarding), you can use [aoo_client] and connect to our public AoO 
server at the IEM (hostname: vrr.iem.at, port: 7077). You can easily set 
up your own AoO server by running a Pd patch containing [aoo_server 
<port>] on your web server.

---

Selected features:

# create audio networks of any topology with arbitrary ad-hoc connections
# [aoo_send~] / [aoo_receive~] take a port number and ID, so multiple 
objects (within a single Pd instance) can operate on the same port. 
Additionally, you can have multiple objects across different Pd 
instances (using different port numbers).
# [aoo_send~] can stream to several destinations simultaneously;
# [aoo_receive~] can receive several AoO streams simultaneously, summing 
the signals
# AoO is connectionless: streams can start/stop at any time, enabling a 
"message-based audio" approach.
# AoO sinks can "invite" sources, i.e. ask them to send audio. The source 
may follow the invitation or decline it.
# AoO sinks and sources can operate at different blocksizes and samplerates
# the streaming format can be set independently for each source; currently 
only PCM (uncompressed) and Opus (compressed) are implemented, but this 
can be easily extended with the AoO codec plugin API.
# audio encoding/decoding is multithreaded
# adjustable resending mechanism for dropped packets
# adjustable jitter buffer size.
# [aoo_server] / [aoo_client] implement the UDP hole punching technique to 
establish peer2peer connections between different home networks.
# AoO is actually a C++ library with a C interface, so it can be used in 
apps or embedded devices (like the ESP32). An implementation for 
Supercollider is already planned.

---

For questions, bug reports or feature requests, please open an issue at 
https://git.iem.at/cm/aoo/-/issues. We're very happy about any kind of 
feedback!

Christof

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.puredata.info/pipermail/pd-list/attachments/20200622/9147d061/attachment.html>
-------------- next part --------------
_______________________________________________
Pd-announce mailing list
Pd-announce at lists.iem.at
https://lists.puredata.info/listinfo/pd-announce


More information about the Pd-list mailing list