Problems with Jack Server

855 views
Skip to first unread message

Kaylen Wheeler

unread,
Mar 28, 2015, 3:52:14 PM3/28/15
to beadsp...@googlegroups.com
Does anyone know what may be causing the following exception?  Thanks.

Cannot connect to named pipe after wait = \\.\pipe\server_jack_default_0 err = 2
Cannot connect to server request channel
jack server is not running or cannot be started
Mar 28, 2015 12:44:39 PM org.jaudiolibs.beads.AudioServerIO$1 run
SEVERE: null
org.jaudiolibs.jnajack.JackException: Could not create Jack client, check status set.
at org.jaudiolibs.jnajack.Jack.openClient(Jack.java:152)
at org.jaudiolibs.audioservers.jack.JackAudioServer.initialise(JackAudioServer.java:105)
at org.jaudiolibs.audioservers.jack.JackAudioServer.run(JackAudioServer.java:86)
at org.jaudiolibs.beads.AudioServerIO$1.run(Unknown Source)
at java.lang.Thread.run(Thread.java:745)

Oliver Bown

unread,
Mar 29, 2015, 8:33:17 AM3/29/15
to beadsp...@googlegroups.com
In this case you’re trying to run Beads through the Jack client (your AudioContext() setup code should say so).
If you don’t have jack installed or haven’t run jack, or have run jack with the wrong parameters, then you will get this.
I don’t think there is jack for Windows.

As for your crackly audio (other email), it may well be that we just haven’t tested this basic behaviour on Windows… by which I mean, I never have, but I had assumed that someone somewhere would have already told me about the problem.

Does the audio sound good when you DON’T have an audio input?
If so, it would also be cool to run a test using an audio input and the RecordToFile class to write the audio.

O

--
You received this message because you are subscribed to the Google Groups "beadsproject" group.
To unsubscribe from this group and stop receiving emails from it, send an email to beadsproject...@googlegroups.com.
To post to this group, send email to beadsp...@googlegroups.com.
Visit this group at http://groups.google.com/group/beadsproject.
For more options, visit https://groups.google.com/d/optout.

Neil C Smith

unread,
Mar 29, 2015, 10:42:55 AM3/29/15
to beadsp...@googlegroups.com
Hi Ollie / Kaylen.

On 29 March 2015 at 13:33, Oliver Bown <ol...@icarus.nu> wrote:
> In this case you’re trying to run Beads through the Jack client (your
> AudioContext() setup code should say so).
> If you don’t have jack installed or haven’t run jack, or have run jack with
> the wrong parameters, then you will get this.
> I don’t think there is jack for Windows.

There is, and it's definitely the better way to get lower latency
audio on Windows - there are limits to what the JAudioLibs JavaSound
code can work around on Windows! ;-)

The top 3 lines of that message are output from JACK, so JNAJack seems
to be finding the library OK. The key bit is "jack server is not
running", as the old version of the JackAudioServer in Beads will
never attempt to start the server itself. You need to start JACK
manually, usually using the QJackCtl GUI. Also make sure that the
sample rate and buffer size you set in JACK match Beads. And note
that you'll have to use the same QJackCtl GUI to connect Beads' ports
to the soundcard.

Newer versions of JAudioLibs' JackAudioServer support optional
auto-connection to the soundcard, and when that is configured will
also attempt to start the JACK server for you. Beads code would need
an update though.

> As for your crackly audio (other email), it may well be that we just haven’t
> tested this basic behaviour on Windows… by which I mean, I never have, but I
> had assumed that someone somewhere would have already told me about the
> problem.

Actually this has been mentioned on the list before, and if it's what
I think it is, it's caused by use of TimingMode.FramePosition at

https://github.com/orsjb/beads/blob/master/src/beads_io/org/jaudiolibs/beads/AudioServerIO.java#L155

Timing based on frame position only works if the JavaSound interface
to the soundcard provides usable info - which it doesn't on Windows,
or on Linux when using PulseAudio (OpenJDK default)

Use TimingMode.Estimated, which should work everywhere, even if not
always giving the best latency. Newer JAudioLibs code will attempt to
provide a sensible default when no mode is specified. This is
currently always Estimated, but if we're sure FramePosition is better
on OSX then I'll update the library with that and you can ignore
setting it in Beads completely!

Kaylen - if you don't want to make a new build of Beads to test this,
you could try the audio examples with Praxis LIVE (www.praxislive.org)
which are using the up-to-date JAudioLibs code and
TimingMode.Estimated.

Best wishes,

Neil

--
Neil C Smith
Artist : Technologist : Adviser
http://neilcsmith.net

Praxis LIVE - open-source intermedia development - www.praxislive.org
Digital Prisoners - interactive spaces and projections -
www.digitalprisoners.co.uk
Reply all
Reply to author
Forward
0 new messages