[Jack-Devel] Netjack 2: how to improve reliability by allowing greater latency?

David Nielson david at naptastic.com
Wed May 20 21:28:50 CEST 2015


I was hoping someone who knows more would chime in. It's been a LONG
time since I used Netjack, but I thought there was an option to add
extra periods of latency, specifically for what you're requesting? And
it was this capability that allowed some people back in the day to do
recording sessions internationally?

I can't test it right now, but if I get a chance tonight, I will. No
promises.

David Nielson

On 05/20/2015 02:17 PM, André Pinto wrote:
> Judging by the lack of replies, I guess this is not a use case that the
> current netjack implementation supports right?
> 
> I don't know how much work would imply making netjack a viable solution
> for WiFi streaming but if it is something relatively easy to do, it
> might be interesting to explore that path considering the lack of
> alternatives for "low latency" audio streaming, bad bluetooth audio
> quality and support, proliferation of devices and omnipresence of WiFi
> networks across the globe.
> 
> Thank you all anyway for your work on Jack!
> Cheers,
> André
> 
> On Fri, May 15, 2015 at 7:51 PM, André Pinto
> <andredasilvapinto at gmail.com <mailto:andredasilvapinto at gmail.com>> wrote:
> 
>     Hello,
> 
>     I've been playing around with Jack/Netjack and the Opus codec in
>     order to setup a "low latency" WiFi audio stream at home.
> 
>     After compiling Opus with custom modes and Jack2 with Opus support
>     (both from the master branches of the respective repositories), I
>     was able to run the Master-Slave setup:
> 
>     Master.
>     jackd -R -d alsa -d hw:1 -D=false -r44100 -S -n16
>     jack_load netmanager
> 
>     Slave:
>     jackd -R -d net -C0 -P2 -o0 -i0 -O320 -M1200 -l5
> 
>     + jack_connect to route the net input on the master to the speakers
> 
>     But as I was getting quite frequent audio deterioration, with the
>     master showing messages like these:
> 
>     Packet(s) missing from... -1 1
>     Wrong packet type : a
>     JackEngine::XRun: client = SLAVE_HOSTNAME was not finished, state =
>     Running
>     JackEngine::XRun: client netmanager finished after current callback
>     JackAudioDriver::ProcessGraphAsyncMaster: Process error
>     Wrong packet type : a
>     Packet(s) missing from... -1 1
>     JackAudioDriver::ProcessGraphAsyncMaster: Process error
>     JackEngine::XRun: client = SLAVE_HOSTNAME was not finished, state =
>     Triggered
> 
>     I've thought that maybe I should just try increasing the network
>     latency argument on the slave, as, for my use case, I'm happy with
>     latency < 200 ms.
> 
>     By using something like -l30 (the maximum I'm allowed to set) on the
>     slave I was able to greatly diminish the Process errors (I still get
>     the same lots of wrong packet type and packet missing messages
>     though) but it didn't fix the audio artifacts. Actually sometimes
>     this change makes the playback even worse with ms pauses every second.
> 
>     So I would like to know if there is any other way to relax the low
>     latency requirement in order to improve playback reliability. Or is
>     there some kind of incompatibility in the configuration I'm passing
>     to both endpoints that is causing these problems?
> 
>     Thanks!
>     André.
> 
> 
> 
> 
> _______________________________________________
> Jack-Devel mailing list
> Jack-Devel at lists.jackaudio.org
> http://lists.jackaudio.org/listinfo.cgi/jack-devel-jackaudio.org
> 



More information about the Jackaudio mailing list