Menu

Need help with jamulus and qjackctl settings to get Scarlett gen 3 2i2 to work

2020-07-10
2020-07-11
  • Ben McDonnell

    Ben McDonnell - 2020-07-10

    Hello

    Running jamulus 3.5.3git

    I have just bought a Scarlett 3rd gen 2i2. It works after a fashion and I can join a jamulus jam but I don't understand the settings and cannot figure out if my latency should be improved.

    I am just using a standard vocal mic to play a saxophone through. I use headphones and an Ethernet cable.

    The jamulus settings window and the qjackctl both say that my latency is 10.7ms

    If I select a local server in jamulus, the best ones are 12ms ping time, the overall delay is at least 50ms. Where is the extra 30ms delay coming from?

    An internet speed test shows that my response time is 8ms.

    With so much added delay it doesn't seem worth it to try and reduce my own latency, but when I try to, by changing the frames/period in qjackctl from 256 to 128, I get a series of XRUN messages and the sound output from the server is completely chopped up.

    The Scarlett unit doesn't work beautifully in Windows 10 either, not for the rival jamkazam anyway. You can only use a combination of buffer 64 and 96khz sample rate to get it down to accepted latency, but that is below 20ms in jamkazam, which I have on a laptop. I don't see why I can't get better than 50ms in jamulus. I don't even have a way of knowing whether the Scarlett is still in MSD mode.

    In the jamulus settings there is a jitter buffer slider which I haven't adjusted, but I don't really understand any of the settings and wouldn't know where to start. Can anyone interprete all this for me? I was doing better before I got the Scarlett, using an old Zoom R16 in Audio Interface mode.

    Many thanks

     
    • punshon

      punshon - 2020-07-10

      Hi Ben,

      Your latency is caused by the audio buffer size. You are using 256 samples per buffer (that is the 10.7 ms setting). That's why you have the extra 30ms delay.

      You will need to get it to 128 samples per buffer (the 5.33 ms setting).

      The XRUN message (the chopped up sound) are caused by your computer not being able to process the audio quickly enough, from your USB audio interface.

      If you are using a USB hub, get rid of it. Even try a different USB cable. Check the CPU usage on your computer. I think something other than Jamulus is using a lot of CPU.

      Others have suggested trying the low-latency kernel but I don't think it will help you. You should be able to get much better results than you currently have, even with the standard kernel.

       
      👍
      1
  • Mervin Beng

    Mervin Beng - 2020-07-10

    Hi, I use the 2i2 on linux, and you should be able to use 64 frames/period. For USB audio on linux is seems that periods/buffer should be 3.

    Using thses I get under 30ms overall delay for a server that is 6ms ping away. On a local server (ie. same LAN as the client) with 1ms ping, I get 9-10ms overall delay. This is with high quality / stereo - giving a high bit rate of 900kbps.

    12ms ping seems rather high for a local server.

     
    👍
    1
  • Ignotus

    Ignotus - 2020-07-10

    You don't say what Linux distribution you're using, but you possibly need to do some tweaks to make it more low latency-friendly. 64 frames/period should be no problem. Your high overall latency probably has to do with the jitter buffer setting also set high.

    First, I think you have to configure your computer for low latency (look up lowlatency kernels, adding your user to the 'audio' group, tick the 'realtime' checkbox in Jack) and get it to run at 64 frames without xruns. Once that's sorted, check the 'Use small buffers' checkbox, set the jitter buffer sliders to 'Auto' and see where they settle. You can then uncheck 'Auto' and move them up or down slightly depending on whether the sound is garbled or not. Your aim is to lower them as much as possible without messing up the sound.

    Also, you might want to try changing the USB port the Scarlett is plugged into. For some reason, mine (2i2 2nd gen) works far more stable when used in USB3 ports, probably to do with shared IRQs. Even if you don't have USB3 ports, switch it around because you might find some of them work for you better than others.

     
    👍
    1

    Last edit: Ignotus 2020-07-10
  • Ben McDonnell

    Ben McDonnell - 2020-07-10

    Thank you, I missed my notifications, (again) and was composing a new reply to further problems which it is about time I got fixed. But that is about qjack freezing up and would be better in the software section. I will look at my cpu usage first as punshon suggested. If by a usb hub you mean a four into ine thing or similar, no, I am going straight in. I will try period buffer 3 insteadof 2. If I am careful I can get jamulus to work and it sounds quite nice (to me!) But I suppose if it is teh cpu that will explain freezes and Xruns. Pity, because it is a brand new mobo and cpu.

    Sorry, I forgot to post my system
    Linux Mint 19.2 Cinnamon
    AMD Ryzen 2200 cpu with onboard Radeon graphics
    Gigabyte mobo B450 Aorus M

     

    Last edit: Ben McDonnell 2020-07-10
  • Ben McDonnell

    Ben McDonnell - 2020-07-11

    Btw to punshon, I am using the usb 3 port
    I have looked at the "system monitor" program but it reveals nothing, screenshot attached, that was while I ws listening to a jamulus server

     

    Last edit: Ben McDonnell 2020-07-11