Folks:

Please bear with me as this is a bit of a strange thing that I am trying to do 
(perhaps too strange and I will accept that verdict).

I have a server on the cloud (a Linode VPS server) that has not audio nor video 
device. It's just a server. I have root access to that server.

I am trying to sell the use of Jamulus to our choir. For those of you who don't 
know, Jamulus is a software that enables near real time music jamming and 
rehearsing. It has far lower latency than Zoom or even Jitsi. It also allows 
you to have more than one person talking, playing an instrument, or singing at 
the same time, unlike Zoom.

It is a very lightweight client server software. I use it on my PC here at the 
house with no problem and I have set up a server, also on the cloud, at a Vultr 
VPS server in Seattle. No problem.

The issue is that I have been asked to feed the Jamulus client audio into a 
Zoom session because some choir members do not have a wired connection (only 
WIFI) available in their homes (some apartment buildings are notorious for 
this).

I could have done this feed using my own computer here at home, but my Internet 
connection may not be able to handle the load.

So I figure to use vncserver on the VPS server and run both Jamulus client and 
a web browser on the Linode server. 

I have come to find that Jamulus requires Jackd, as it does not recognize 
Pulse. I have also realized that Chrome does not recognize Jackd, but seems to 
work okay with Pulse.

I was able to get Alsa up and running with a loopback virtual device (aloop). I 
was able to get Jackd running after installing the following additional 
packages on the Linode server (which is running Ubuntu 18.04):

apt-get install alsa-tools
apt-get install alsa-utils
apt-get install qjackctl pulseaudio-module-jack

apt-get install alsa-base
apt-get install libasound2

apt-get install tightvncserver
apt-get install -y xfce4 xfce4-goodies
apt-get install -y xubuntu-core^

I have no problems at all with the vncserver; that's no issue.

I have added my user account to the audio group, so I can run aplay and 
alsamixer with no problem.

My alsa.conf file (in modprobe) is:

alias and-card-0 snd-aloop
options snd-aloop index=0 pcm_substreams=8


My modules.conf file is:

# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
snd-aloop


My .asoundrc file is:

======================================================================
# playback PCM device: using loopback subdevice 0,0
pcm.amix {
  type dmix
  ipc_key 219345
  slave.pcm "hw:Loopback,0,0"
}

# capture PCM device: using loopback subdevice 0,1
pcm.asnoop {
  type dsnoop
  ipc_key 219346
  slave.pcm "hw:Loopback,0,1"
}

# duplex device combining our PCM devices defined above
pcm.aduplex {
  type asym
  playback.pcm "amix"
  capture.pcm "asnoop"
}

# ------------------------------------------------------
# for jack alsa_in and alsa_out: looped-back signal at other ends
pcm.ploop {
  type plug
  slave.pcm "hw:Loopback,1,1"
}

pcm.cloop {
  type dsnoop
  ipc_key 219348
  slave.pcm "hw:Loopback,1,0"
}

# ------------------------------------------------------
# default device

pcm.!default {
  type plug
  slave.pcm "aduplex"
}
=========================================================================

I start up jackd with -d alsa and it does start. The Qjackctl command's mapping 
show that Jamulus is patched to system.

However, when I start up pavucontrol, I can see there is no audio coming from 
system sound.

I can see audio on the vu meters on my jamulus client, but I don't know how to 
trace the sound through alsa, jack, and pulse; I am not familiar with probing 
the Linux sound paths.

When I do an aplay, I do see the loop device and when I do alsamixer, I do see 
one slider for the loop and it's all the way up.

Since I saw no activity on pavucontrol, I have not even bothered to bring up 
the chrome browser.

I am wondering, is this something that I should be able to do at all?

If not, and I am totally barking up the wrong tree, then I can tell my customer 
that this is a no go and that we would have to do something else.

Thank you all for your help!

Mark Allyn
Bellingham, Washington
IT & Sound for Bellingham Unitarian Fellowship





-- 
Mark Allyn
Bellingham, Washington
www.allyn.com
_______________________________________________
PLUG: https://pdxlinux.org
PLUG mailing list
[email protected]
http://lists.pdxlinux.org/mailman/listinfo/plug

Reply via email to