Jmess and Supercollider on an AWS server - help needed please

71 views
Skip to first unread message

Bob Higham

unread,
May 3, 2021, 4:00:47 PM5/3/21
to jacktrip-users
Just need to test whether or not I can do this? Any help greatly appreciated.....

We have an unmanaged AWS server setup with Jackd and Jacktrip which works well for standard connections for our choir which we use as a testbed for different approaches.

We are also using a Jacktrip Virtual Studio managed Server and the Supercollider GUI interface to place all our singers into the stereo field according to their voice part. We would like to automate that process as it is very tedious to check channels manually as people "arrive".

I am able to send pan messages to a Virtual Studio managed Server from a remote supercollider IDE but to repeatably encode the sclang supercollider pan messages we need to ensure that each singer is allocated the same channel each time we have a session. On the assumption that individual external IP addresses are reasonably persistent we are thinking that a Jmess xml file run on the server when the session starts, before clients join, would connect clients to channels in a specified order. That would then enable us to execute the supercollider pan messages to match that order.
I have a few questions around this strategy....
  1. Would this approach actually work?
  2. I do not know how to start the supercollider server on the unmanaged AWS machine to enable connections to and from Jackd. What should the bash command line be?
  3. Does the jacktrip p5 option facilitate this (or maybe p3)?
  4. Is it possible to do this (or something similar) on a managed server?
Thanks in advance.

Bob.

Mike O'Connor

unread,
May 3, 2021, 7:26:38 PM5/3/21
to Jacktrip-users
let me pile on.  i'm trying to do something similar, but with Ardour instead of SuperCollider.  i'm evolving an approach that's really promising for doing mixing/FX and customized monitoring back to participants.  

the "knitting" to set up audio routings is indeed tedious and i'm looking for ways to automate that as well.

i thought i might be able to use the --clientname parameter, but...  it doesn't seem to work any more?  is it depreciated in JT 1.3?

i sat down when Hub mode came out and built a page of pictures of the routings that result from the various P options. maybe you can make sense out of the Supercollider stuff going on in P3. 


i have been using P5 -- because it doesn't do any auto-connections (that in my case need to be undone every time somebody connects).  i would think you would find it helpful that way too.  but i'm also looking at Mode 2 (mix-minus -- people hear everybody except themselves).  i'm thinking about trying that, and then adding back the connection for self-monitoring that i've built into my Ardour template.

mike



--
You received this message because you are subscribed to the Google Groups "jacktrip-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email to jacktrip-user...@googlegroups.com.
To view this discussion on the web visit https://groups.google.com/d/msgid/jacktrip-users/7e797d98-0e79-4aee-ac28-1cb8a9d4cd85n%40googlegroups.com.

Laurent S.

unread,
May 7, 2021, 3:27:09 AM5/7/21
to jacktrip-users
Hello Bob,

I'm interested in your attempt to use supercollider with jacktrip on an AWS server.

But I don't know much about supercollider, i quickly tried the wysiwyg version (may be a command line is available).

To start jack on the cloud, use something like :

jackd -ddummy -r48000 -p128


man jackd for some help

You'll have to add -p 5 to your jacktrip command line instead of -p 4 to avoid auto patching. And set the patch by yourself using JMess (i didn't test it myself) or jack_connect (i can tell it works - you will perhaps need jack_lsp to list jack ports).

I don't know if AWS default kernel is lowlatency. Low latency kernels are recommended for audio on Linux. It delivers better audio performance. Unfortunately, I did not find any documentation on that topic for AWS server  ... I'm interested also on any information on that topic too.

Kind regards,
Laurent


Bob Higham

unread,
May 8, 2021, 5:55:03 AM5/8/21
to jacktrip-users
Hi Laurent,

our current situation is that we successfully use both a managed and an unmanaged server with a choir of between 20 to 30 people with good results.

Currently we are using a managed server based in London (which I suspect runs on the AWS platform) and each choir member has a raspberry pi4 virtual server using a range of ADC / DAC interface cards and various related audio equipment. Latency is generally determined by the quality of broadband connectivity each choir member has. At best our average latency is around 9ms. Noise remains an problem due to connectivity issues.

To manage the stereo field position for each choir member I have the supercollider IDE running on Linux (on a chromebook) with the jacktrip project quarks added. This enables me to use the AutoPanMix.scd to set each singers' pan position and volume. The supercollider command to initiate the gui is "AutoPanMix.new(35).gui(20);" where the values in brackets determine the number of channels and channels per line.

Screenshot 2021-05-08 10.19.15.png

The IP address of the server is inserted at the top and then on connection the volume for each channel is set to 1. We then manually determine which singer is on each channel as they "arrive" and manually adjust the pan position. We would obviously like to automate that process and we are currently experimenting with using the external IP address of each client to identify which voice is associated with each channel using Jmess.

In the meantime we are experimenting with using sclang commands from the supercollider IDE to simplify the manual setup process by presetting server messages in the IDE to "bulk" update pan positions and channel volumes as follows (having linked the IDE to the remote supercollider server using a "Server.remote" command):

Screenshot 2021-05-08 10.29.52.png

This all works using a virtual studio managed server but we have yet to achieve the same setup for supercollider on our unmanaged AWS server.

Given that this works on the managed virtual studio server we are looking to achieve the same on an unmanaged server using jackd, jacktrip, jmess and supercollider.

Bob.
Reply all
Reply to author
Forward
0 new messages