Hi,
I'm using jack for years with my Focusrite Firewire device, formerly
with Ubuntu Studio, now with Parrot Home.
Recently I changed my DAW from Windows to Linux, using Ardour and Bitwig.
For my old Windows VST plugins, which do not run with Wine, I use a
QEMU/KVM virtual machine with Win7.
To connect Host machine and VM, I run jack_load netmanager on the host
and jackd -dnet -P12 -C2 -i1 -o1 -l1 in the VM.
First they could not connect, but I suspect jack_load netmanager to
listen only to the main network device eth0, but not the VM's network
device virbr0. I found a workaround with smcroute; I configured it so it
reroutes the Multicast messages from virbr0 to eth0. This solved the
problem.
Now I can connect the VM in/outs with qjackctl on the host, and I can
play the Win7 VST plugins, as if they are running in Linux; perfect!
But a problem with jack transport appeared:
If the VM is not running, jack transport on the host is working as
expected; click on the play button in qjackctl, and the counter runs;
click again and the counter stops.
If the VM is running, there is a delay of about 5 seconds from click on
the play button, and the start of the counter. Stopping the transport
works immediately.
So this makes recording difficult.
Qjackctl in the VM does not show jack transport running/stopping anyway;
it can be started/stopped independently.
With verbose messages on, this message from the host jackd appears
regularly, no matter which transport status:
Jack: CatchHost fd = 74 err = Resource temporarily unavailable
After click on play button, but counter not running, repeatedly:
Jack: JackNetMasterManager::SyncCallback returns 'false'
Jack: CheckAllRolling ref = 8 is not rolling
When counter runs, repeatedly:
Jack: JackNetMasterManager::SyncCallback returns 'false'
I assume that there exists still a network related mismatch between
jackd on host and jackd in the VM, but I was not able to identify it. So
I need some advice about jack transport and net mode.
Btw, an option for jack_load netmanager would be nice, telling on which
network device to listen. So people get aware of this case and can solve
it without smcroute.
Thanks,
S.Auerochs
Show replies by date
Hi,
sorry, I missed a line from the jack startup messages on the Win7 VM:
...
NetDriver started in async mode without Master's transport sync
...
So this is not a network problem.
I have not found a parameter to start the transport sync.
Some older internet comments say, that net transport is not ready for
use with jack2. I don't know if this is still true for my configuration.
The linux system uses jack 1.9.17, the Win7 VM 1.9.18.
Seems, that the delay is a timeout, from linux jackd waiting for sync
with the VM jackd.
I can live without the transport sync between VM host and guest. I want
to use the Win7 VM as an VST plugin host, for recording some sounds from
my old VST plugins. Bitwig has some nice features to use such sound samples.
So now the question is:
For smoothly recording, how do I prevent the linux master jackd from
trying to sync with the VM jackd?
Thanks,
Stephan
Hi,
searching through the source code, I found in common/JackNetDriver.cpp
that there exists a parameter "transport_sync" as "-t" (like in
backend
netone), but it is commented: "/* Deactivated for now..."
Because it's in the common directory, this means it's not a windows problem.
What's the reason for commenting?
If it's only a sync problem within the net client, it would be no
problem for me, as long as the master transport is not affected.
I would try uncommenting, but I failed compiling another program with
MingW years ago, so I would like to know if it's worth the effort.
Thanks,
Stephan