hselasky / hpsjam Goto Github PK
View Code? Open in Web Editor NEWOnline audio jamming software
License: BSD 2-Clause "Simplified" License
Online audio jamming software
License: BSD 2-Clause "Simplified" License
I have an Oracle cloud server on Ubuntu. I need to set ingress rules to allow access to the server. I start the server with "HpsJam --server --port 22125 --peers 16" and I set ingress rules:
0.0.0.0/0 | TCP | All | 22125
0.0.0.0/0 | UDP | All | 22125
But the server seems to be not reachable (client cannot connect). Can you help please?
Also, is there a way to see the log of the server, or some verbose parameter?
Thank you in advance!
@hselasky Hi Hans,
Thanks for your work! I've included HpsJam in the latest Jambox image for Raspberry Pi, which might help it get more exposure. Jambox is a pre-built SD-card image with multiple jamming apps. It turns a Raspberry Pi into a complete ready-to-go jamming platform. The apps are wrapped in startup scripts to make it really easy to run. HpsJam client or server can be launched from desktop icons. Check it out!
https://github.com/kdoren/jambox-pi-gen
A few minor issues:
-Kevin
Hello HP, I propose to use this topic to answer subsequent questions, so to not interleave them with other issues. What do you think?
Here comes the first two in any case:
--> QUESTIONS:
a) what does "norm" mean?
b) why name the button "Long Delay"? E.g. why not just "Delay".
c) why is the delay value changed from 0.0 to 8.0ms (I was not connected and my device config, where I suspected it was taken from was at 16ms at that time))
--> QUESTIONS:
a) what do the values mean
b) why this sole 31.5 value amonst integers?
c) is the "normalize" value related to the previous "norm" from q001?
d) why does the "default" differ from the "default" that is shown in a "virgin" state? In particular the EQ size value, but also all the other ones.
Hi!
I'm using Ubuntu 18.04 on a machine that can compile Jamulus (I installed libfftw3-dev libqt5svg5-dev) and bbang! I got this:
In file included from /usr/include/c++/7/bits/stl_algo.h:59:0,
from /usr/include/c++/7/algorithm:62,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:109,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qnamespace.h:43,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs.h:48,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:46,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/QObject:1,
from src/protocol.h:29,
from src/audiobuffer.h:33,
from src/audiobuffer.cpp:26:
/usr/include/c++/7/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
#include_next <stdlib.h>
^~~~~~~~~~
compilation terminated.
Makefile:575: recipe for target 'audiobuffer.o' failed
make: *** [audiobuffer.o] Error 1
I got the file though I think:
gilgongo@monospline:~/hpsjam$ locate stdlib.h
/snap/gimp/297/usr/include/stdlib.h
/snap/gimp/297/usr/include/c++/7/stdlib.h
/snap/gimp/297/usr/include/c++/7/tr1/stdlib.h
/snap/gimp/297/usr/include/x86_64-linux-gnu/bits/stdlib.h
/snap/gimp/322/usr/include/stdlib.h
/snap/gimp/322/usr/include/c++/7/stdlib.h
/snap/gimp/322/usr/include/c++/7/tr1/stdlib.h
/snap/gimp/322/usr/include/x86_64-linux-gnu/bits/stdlib.h
/snap/gnome-3-34-1804/36/usr/include/stdlib.h
/snap/gnome-3-34-1804/36/usr/include/c++/6/stdlib.h
/snap/gnome-3-34-1804/36/usr/include/c++/6/tr1/stdlib.h
/snap/gnome-3-34-1804/36/usr/include/freetype2/freetype/config/ftstdlib.h
/snap/gnome-3-34-1804/36/usr/include/x86_64-linux-gnu/bits/stdlib.h
/usr/include/stdlib.h
/usr/include/c++/7/stdlib.h
/usr/include/c++/7/tr1/stdlib.h
/usr/include/freetype2/freetype/config/ftstdlib.h
/usr/include/x86_64-linux-gnu/bits/stdlib.h
I propose the following changes to the ""EQ DELAY":
Hello HPS!
I'm trying to install the fine HPS prog on a new ubuntu 20.04 server and get this as err. I know it looks like a "generic" issue, but even after researching for a long time I was unable to find a solution, so maybe you know smth abt it?
The stdlib.h is definitely present at /usr/include...
Do you have any idea, please?
Thanks again for your fine program!
------------ THE ERROR ------------
make all
g++ -c -pipe -O2 -D_REENTRANT -Wall -W -fPIC -DHAVE_HTTPD -DHAVE_JACK_AUDIO -DQT_NO_DEBUG -DQT_SVG_LIB -DQT_WIDGETS_LIB -DQT_GUI_LIB -DQT_CORE_LIB -I. -isystem /usr/include -isystem /usr/include/x86_64-linux-gnu/qt5 -isystem /usr/include/x86_64-linux-gnu/qt5/QtSvg -isystem /usr/include/x86_64-linux-gnu/qt5/QtWidgets -isystem /usr/include/x86_64-linux-gnu/qt5/QtGui -isystem /usr/include/x86_64-linux-gnu/qt5/QtCore -I. -I/usr/lib/x86_64-linux-gnu/qt5/mkspecs/linux-g++ -o audiobuffer.o src/audiobuffer.cpp
In file included from /usr/include/c++/9/bits/stl_algo.h:59,
from /usr/include/c++/9/algorithm:62,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qglobal.h:142,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qnamespace.h:43,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobjectdefs.h:48,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/qobject.h:46,
from /usr/include/x86_64-linux-gnu/qt5/QtCore/QObject:1,
from src/protocol.h:29,
from src/audiobuffer.h:33,
from src/audiobuffer.cpp:26:
/usr/include/c++/9/cstdlib:75:15: fatal error: stdlib.h: No such file or directory
75 | #include_next <stdlib.h>
| ^~~~~~~~~~
compilation terminated.
make: *** [Makefile:568: audiobuffer.o] Error 1
Just wanted to leave you a comment saying I tried out your latest version (1.06). I do like the crystal clear sound which makes my fiddle sound so much better than with the compressed audio of Jamulus. I did have to set the buffer size to 256 (instead of a preferred 64) , otherwise I get way too may xruns. With the higher buffer size, I don't get many (if any) xruns, but do get occasional glitches which I presume are from dropped/delayed packets, which do get annoying. Not sure why this is occurring since I'm running the client and server on the same machine. I tried this on a Raspberry Pi 400 (the brand new, just out, combined keyboard/Pi unit -- nice!) which runs cool at 2.1 Ghz, unlike the earlier Pi 4 which tends to run quite hot when running audio software. I haven't tested any other configurations yet.
Here are the jack parameters I'm using: jackd -T -P95 -p16 -t2000 -d alsa -dhw:2 -p 128 -n 2 -r 48000 -s
It would appear that using a .jackdrc file doesn't work with your software, for whatever reason, so I just started Jack up manually.
I tried both 24 bit and 32 bit audio and it would seem the 32 bit audio takes less processing (as I would suspect anyway). I have a Behringer UMC404HD which is a 192kHz/24 bit device.
I see you have a long ways to go on the graphics! :) I don't really understand mixer page or stats page at all.
Anyway, a nice start. I do like the simplified processing chain.
Hello HP!
thank you for the windows binary!
I tested it and it says: "Cannot connect to ASIO subsystem or sample rate is different from 48000 Hz or buffer size is different from 96 samples."
Actually, I cannto set my soundcard to 96, only 64 or 128, so I guess im lost here...?
Hi,
I created a dockerized version of your project for deployment to Amazon AWS. Unfortunately, I cannot get the server to run. I followed the exact instructions in the README and the port is definitively not in use (in fact, changing the port number to a random value always yields the same result), so I suspect that the implementation is broken in some way.
As the error message is wrong (port is free, verified by netstat) I cannot see any way to resolve this issue myself. Could you consider reviewing your code and maybe improving the error handling at this point to further track down the root cause?
You can find the docker image repository here and a deployed version in the linked DockerHub (See README).
https://github.com/oxytu/hpsjam-docker
Best Regards
Hello HP!
I'm giving this system another try, but could not manage to find a solution for the following:
2 q please:
(1) Do you know what could be wrong here?
(2) How can I see the server output (some verbose stuff or logging or so)
Thank you in advance!
Hello HP!
A main use case for me is to use HpsJam using the same server over and over again, where the "artificial delay" would always be the same/very similar. Would be good if it could save the value per server, but at least as global.
Btw, a q: what is the second numerical value here doing "filtersize 0.0ms 0.0ms"?
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.