essej / aoo Goto Github PK
View Code? Open in Web Editor NEWAoO - Audio over OSC
License: Other
AoO - Audio over OSC
License: Other
I have this message when I join the same group on two different machines (OSX 10.15.4 and Windows10):
aoo_client: couldn't establish UDP connection to test|bar; timed out after 5 seconds
I tried under local network, and from external network using port fowarding, but still the same issue.
Also compiled aoo for raspberry Pi but got exact same problems.
Any Hints?
Cheers
Or should we clone from github ?
It seems that there are problems with some systems (mostly more modern AMD systems) where in some cases std::random_device will result in an exception. Currently this causes applications to be unusable.
Referencing this issue in libsass, I made a quick patch for solving this problem.
Since the current state of branches seems to be undergoing some refactoring/updating to newer version, and i have no idea where to PR to at this point, here is a diff based on the sonobus main repo.
Sonobus works as expected using this patch, where before it would crash on start.
diff --git a/deps/aoo/lib/src/client.cpp b/deps/aoo/lib/src/client.cpp
index f02e5ce6..0ec74259 100644
--- a/deps/aoo/lib/src/client.cpp
+++ b/deps/aoo/lib/src/client.cpp
@@ -170,11 +170,16 @@ aoo::net::client::client(void *udpsocket, aoo_sendfn fn, int port)
sendbuffer_.setup(65536);
recvbuffer_.setup(65536);
- // generate random token
- std::random_device randdev;
- std::default_random_engine reng(randdev());
- std::uniform_int_distribution<int64_t> uniform_dist(1); // minimum of 1, max of maxint
- token_ = uniform_dist(reng);
+ try {
+ std::random_device randdev;
+ std::default_random_engine reng(randdev());
+ std::uniform_int_distribution<int64_t> uniform_dist(1); // minimum of 1, max of maxint
+ token_ = uniform_dist(reng);
+ }
+ // On certain system this can throw since either
+ // underlying hardware or software can be buggy.
+ // https://github.com/sass/libsass/issues/3151
+ catch (std::exception&) {}
}
void aoonet_client_free(aoonet_client *client){
diff --git a/deps/aoo/lib/src/source.cpp b/deps/aoo/lib/src/source.cpp
index 82f02088..c769d0f2 100644
--- a/deps/aoo/lib/src/source.cpp
+++ b/deps/aoo/lib/src/source.cpp
@@ -899,10 +899,18 @@ int32_t source::set_format(aoo_format &f){
}
int32_t source::make_salt(){
- thread_local std::random_device dev;
- thread_local std::mt19937 mt(dev());
- std::uniform_int_distribution<int32_t> dist;
- return dist(mt);
+ try {
+ thread_local std::random_device dev;
+ thread_local std::mt19937 mt(dev());
+ std::uniform_int_distribution<int32_t> dist;
+ return dist(mt);
+
+ }
+ // On certain system this can throw since either
+ // underlying hardware or software can be buggy.
+ // https://github.com/sass/libsass/issues/3151
+ catch (std::exception&) {}
+ return 42;
}
int32_t source::set_userformat(void * ptr, int32_t size){
hello,
Deken packages seem to be compiled with a version of GlibC newer than the one I have in my UbuntuStudio 22.04 (kernel 5.04) so I need to compile the object myself, unfortunately I do not understand how to build with pd_libbuilder. It is installed in my system, but I do not know what to do.
Do I call pd-libbuilder from terminal in the directory of aoo? the make instructions provided produce. I am adding to the make instruction provided the PDLIBDIR=/usr/share/pd-lib-builder
*** No rule to make target 'install'. Stop.
I would appreciate some help with this.
thanks
i already forward tcp and udp port to the server, it can create the session, the user from wan can see the session being created, but when try to join, get firewall issues, so, what i miss?
Hi,
How can I send midi/osc together with audio data? I would like it to be in sync with the audio
Any suggestion?
Thanks,
Nick
That header doesn't seem to be provided by the only dependency documented in the README:
https://packages.debian.org/sid/amd64/libopus-dev/filelist
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.