Serato DJ Pro General Discussion

Talk about Serato DJ Pro, expansion packs and supported hardware

Latency/Buffer settings - Serato DJ and Rane 62

bsteezy 4:04 AM - 18 February, 2014
Hey guys,

I was wondering what the difference is between the latency settings in "Serato DJ > Setup > Audio" versus the buffer size in the audio control panel in Mac system preferences.

I'm running a mid 2010 MacBook Pro 2.4ghz with USB 2.0, 8gb ram, and ssd. Then I have a Rane 62 with the latest firmware.

I noticed HUGE lag while scratching, and I noticed the latency was set high. I lowered it to 2, and it helped, but I'm concerned about the reliability of Serato DJ. I've been playing around with Serato DJ at home, and I'm not sure if it's latency or my vinyls are warped. Then I don't want to have to worry about audio quality, etc while performing live.

What latency settings do you guys recommend? Thanks
dj shadow from detroit 4:26 AM - 18 February, 2014
I would not use Serato dj 1.6 out live especially with the pitch n time plug in activated right now.
Use 2.5 Scratchlive until a maintenance release.
aleksey 9:19 AM - 18 February, 2014
Quote:
Hey guys,

I was wondering what the difference is between the latency settings in "Serato DJ > Setup > Audio" versus the buffer size in the audio control panel in Mac system preferences.

I'm running a mid 2010 MacBook Pro 2.4ghz with USB 2.0, 8gb ram, and ssd. Then I have a Rane 62 with the latest firmware.

I noticed HUGE lag while scratching, and I noticed the latency was set high. I lowered it to 2, and it helped, but I'm concerned about the reliability of Serato DJ. I've been playing around with Serato DJ at home, and I'm not sure if it's latency or my vinyls are warped. Then I don't want to have to worry about audio quality, etc while performing live.

What latency settings do you guys recommend? Thanks


Check this thread:

serato.com

SDJ for me (w/ SL2 and DVS) runs perfectly fine at 2ms (equals 8ms in the SL 2 control panel) with PnT off on Winx64. Using PnT is still stable but requires much higher latencies (20ms!) to work without drop-outs. I personally use SDJ 1.6 live but only without PnT.
nik39 12:23 PM - 18 February, 2014
Quote:
Using PnT is still stable but requires much higher latencies (20ms!) to work without drop-outs.

Works fine for me with lower latencies than 20ms.

Quote:
SDJ for me (w/ SL2 and DVS) runs perfectly fine at 2ms (equals 8ms in the SL 2 control panel) with PnT off on Winx64.

Can you explain your calculations please?
aleksey 2:39 PM - 18 February, 2014
Quote:
Quote:
Using PnT is still stable but requires much higher latencies (20ms!) to work without drop-outs.

Works fine for me with lower latencies than 20ms.

Quote:
SDJ for me (w/ SL2 and DVS) runs perfectly fine at 2ms (equals 8ms in the SL 2 control panel) with PnT off on Winx64.

Can you explain your calculations please?


According to Serato, the only option to adjust the latency on Windows is using the control panel:

----------
This is correct behavior. The Rane control panel sets things on a deeper level than regular ASIO / Core Audio drivers. On Windows, the value of the Rane panel is linked to the system wide ASIO latency setting which we display in Serato DJ. (There is currently an issue on Macs where we don't follow the value correctly)
In other words, on Windows, Serato DJ reads the buffer size set in the driver and follows it.

A setting of 8ms in the Rane hardware panel + 2 ms in Serato DJ corresponds to the latency achieved in Scratch Live with a 1 ms setting. (Scratch Live did not show the hardware latency, and the scale was a bit different too)
----------

That means by setting 8 ms in the control panel SDJ sets it's own buffer to 2 ms. In my post above I was (confusingly) referring to two different values. 2ms is my SDJ buffer size (set by selecting 8ms in the SL 2 control panel), this means a total latency of 10 ms + HW signal propagation delay (2-3 ms for SL 2 AFAIK).

PnT for me works with 20 ms+ in the control panel which equals to 15 ms (off the top of my head in SDJ).

I hope that's understandable ;-)
jmims 3:22 PM - 18 February, 2014
Quote:
I hope that's understandable ;-)

I'm not fully understanding the calucations. If I use 5ms in SSL and it works perfect, How would I achieve this number in SDJ?
aleksey 7:43 PM - 18 February, 2014
Quote:
Quote:
I hope that's understandable ;-)

I'm not fully understanding the calucations. If I use 5ms in SSL and it works perfect, How would I achieve this number in SDJ?


Ok, here's my understanding of the buffers collected in multiple threads...

Short version
======================================================================
=
For Win: setting the Rane buffer between to 8...10 ms should give you a similar latency than 5 ms in SSL (SDJ buffer size will be set automatically while Rane device is connected. Value change in offline mode will have no effect on online mode).

For MAC: setting Rane buffer to 8 ms and SDJ to 5 ms should give a similar latency than 5 ms in SSL.

Long version
======================================================================
=
As far as I understand:

T_L = total latency

T_SW_L = total software latency

R_L = latency set in the rane driver in ms

SDJ_L = SDJ latency as shown / configured in SDJ

SPL = signal propagation latency caused by the HW. This depends on the actual device and varies between 2ms and 4ms (if I recall correctly from another thread in the beta section). For simplicity, let's assume it is always 2 ms.

SSL_L = latency set in SSL

Let's look at SSL first:
-------------------------------------------
1 ms set in SSL:

If 1ms is set in SSL, this equals a total of 9ms software latency (without SPL). In SSL, any settings selected in the Rane driver were ignored (as SSL included its own driver for the Rane products).

T_SW_L = SSL_L (1ms) + fixed Rane buffer of SSLs driver (concluded 8 ms) = 9 ms
T_L = T_SW_L + SPL
T_L = 9 ms + 2ms = 11 ms

5 ms set in SSL:

T_SW_L = SSL_L (5ms) + fixed Rane buffer of SSLs driver (8 ms) = 13 ms
T_L = T_SW_L + SPL
T_L = 13 ms + 2ms = 15 ms

Now SDJ:
-------------------------------------------
To achieve these "real" 15 ms in SDJ, configuration depends on your OS.

For Windows, you can only set the buffer size for SDJ in the Rane control panel, SDJ sets its own value based on this. On my WinPC, setting 8 ms in the control panel has SDJ set 2ms by itself. So this would mean R_L (8 ms) + SDJ_L (2ms) + SPL (2ms) = T_L (12 ms)

For Mac, it seems you can individually configure the SDJ latency and the driver latency.

As 5 ms in SSL mean 15 ms total, the following example would give you similar results:

R_L (8ms) + SDJ_L (5ms) + SPL (2 ms) = 15 ms

So would

R_L (6 ms) + SDJ_L (7 ms) + SPL (2 ms).

Rane recommends to leave the Rane buffer at 8 ms by default, so the first option would be a good starting point for tests. If you get dropouts, try increase one of the two buffers until they stop.
nik39 8:44 PM - 18 February, 2014
I think you are mixing a few things up.

Quote:
A setting of 8ms in the Rane hardware panel + 2 ms in Serato DJ corresponds to the latency achieved in Scratch Live with a 1 ms setting. (Scratch Live did not show the hardware latency, and the scale was a bit different too)
----------

That means by setting 8 ms in the control panel SDJ sets it's own buffer to 2 ms. In my post above I was (confusingly) referring to two different values. 2ms is my SDJ buffer size (set by selecting 8ms in the SL 2 control panel), this means a total latency of 10 ms + HW signal propagation delay (2-3 ms for SL 2 AFAIK).

Why would setting 8ms in the control panel set SDJ to 2ms?


Quote:
PnT for me works with 20 ms+ in the control panel which equals to 15 ms (off the top of my head in SDJ).

Why does 20ms+ equal to 15ms in SDJ?

*confused*
aleksey 8:51 PM - 18 February, 2014
That's simply how it is.

SDJ automatically selects its own buffer size of 2ms if I configure 8 ms in the control panel. I can't actively change the buffer in SDJ on Windows (unless the SL2 is not connected). Any change to the buffer without SL2 connected is reverted back once I connect the SL 2.

See Serato's response:
----
A setting of 8ms in the Rane hardware panel + 2 ms in Serato DJ corresponds to the latency achieved in Scratch Live with a 1 ms setting. (Scratch Live did not show the hardware latency, and the scale was a bit different too)
----

There it is also mentioned that 8 ms in the Rane panel results in SDJ setting its OWN buffer of 2 ms (which in total equals SSL setting at 1ms).
nik39 8:53 PM - 18 February, 2014
Quote:
Let's look at SSL first:
-------------------------------------------
1 ms set in SSL:

If 1ms is set in SSL, this equals a total of 9ms software latency (without SPL).

Wrong. 9ms is the total latency including SPL.

Therefore this is wrong as well:
Quote:
T_SW_L = SSL_L (1ms) + fixed Rane buffer of SSLs driver (concluded 8 ms) = 9 ms
T_L = T_SW_L + SPL
T_L = 9 ms + 2ms = 11 ms



Quote:
In SSL, any settings selected in the Rane driver were ignored (as SSL included its own driver for the Rane products).

Correct. SL does not use the CA/ASIO drivers. The device panels only change the CA/ASIO latency.

Quote:
Now SDJ:
-------------------------------------------
To achieve these "real" 15 ms in SDJ, configuration depends on your OS.

For Windows, you can only set the buffer size for SDJ in the Rane control panel, SDJ sets its own value based on this. On my WinPC, setting 8 ms in the control panel has SDJ set 2ms by itself. So this would mean R_L (8 ms) + SDJ_L (2ms) + SPL (2ms) = T_L (12 ms)

I dont think SDJ sets its own value.

Quote:
For Mac, it seems you can individually configure the SDJ latency and the driver latency.

Wrong. SDJ does not use it's own buffers. But the result is the same latency wise.


Quote:
As 5 ms in SSL mean 15 ms total, the following example would give you similar results:

Wrong. 5ms in SL ~ 13ms total.

Quote:
R_L (8ms) + SDJ_L (5ms) + SPL (2 ms) = 15 ms

So would

R_L (6 ms) + SDJ_L (7 ms) + SPL (2 ms).

Correct.
aleksey 9:17 PM - 18 February, 2014
Quote:

Quote:

Now SDJ:
-------------------------------------------
To achieve these "real" 15 ms in SDJ, configuration depends on your OS.

For Windows, you can only set the buffer size for SDJ in the Rane control panel, SDJ sets its own value based on this. On my WinPC, setting 8 ms in the control panel has SDJ set 2ms by itself. So this would mean R_L (8 ms) + SDJ_L (2ms) + SPL (2ms) = T_L (12 ms)

I dont think SDJ sets its own value.

Quote:
For Mac, it seems you can individually configure the SDJ latency and the driver latency.

Wrong. SDJ does not use it's own buffers. But the result is the same latency wise.


Well, maybe not its own buffer but there seems to be a third buffer which adds up to the other two (rane + signal propagation).

Seems to be this one:
Quote:

On Windows, the value of the Rane panel is linked to the system wide ASIO latency setting which we display in Serato DJ. (There is currently an issue on Macs where we don't follow the value correctly)


Would explain why it changes if the rane buffer changes...
nik39 9:20 PM - 18 February, 2014
On Mac there is no third buffer. And I doubt that there is on Windows.
aleksey 9:24 PM - 18 February, 2014
So how do you interpret what Serato wrote:

Quote:

This is correct behavior. The Rane control panel sets things on a deeper level than regular ASIO / Core Audio drivers. On Windows, the value of the Rane panel is linked to the system wide ASIO latency setting which we display in Serato DJ. (There is currently an issue on Macs where we don't follow the value correctly)
In other words, on Windows, Serato DJ reads the buffer size set in the driver and follows it.

A setting of 8ms in the Rane hardware panel + 2 ms in Serato DJ corresponds to the latency achieved in Scratch Live with a 1 ms setting. (Scratch Live did not show the hardware latency, and the scale was a bit different too)
BBN 1:04 AM - 19 February, 2014
Still didn't find the correct setting for my 62 with SDJ on a MBP 2,3 GHz 8GB RAM for scratching with P'n'T enabled.

Maybe Serato should jump in and let us know.
bsteezy 9:38 AM - 19 February, 2014
I've been playing around with rane buffer at 8ms and SDJ latency at 2ms, and it feels good. Clean audio, clean cuts, and feels like Scratch Live.

I don't have pitch n time, and I really wanted to buy it until now.
aleksey 10:29 AM - 19 February, 2014
Quote:
I've been playing around with rane buffer at 8ms and SDJ latency at 2ms, and it feels good. Clean audio, clean cuts, and feels like Scratch Live.

I don't have pitch n time, and I really wanted to buy it until now.


Cool, please let us know if you can keep these settings with PnT without dropouts.
jmims 1:45 PM - 19 February, 2014
So a conclusion I see being on a Mac would be to set Rane to 8ms and SDJ play with 2-4 for a sweet spot.
funkyfresh2012 4:04 PM - 19 February, 2014
i have a mbp i5 2.4 with 8GB ram and i get dropouts using 2ms in SDJ (w/ PnT off). i have to set it to 5ms in SDJ for it to work without dropouts (w/ PnT off). With PnT turned on, i get drops outs on almost all settings. Control panel buffer is set to 8ms on mine. So unless im pitching up and down drastically, i have PnT turned off when using SDJ. For now, im sticking with SSL until they can reduce the CPU usage of PnT.

nm
PorkyG 4:25 PM - 19 February, 2014
I am able to set mine to 1ms in SDJ and 3 in CPL with no drop outs at all but PnT has to be disabled to set my buffer that low, with PnT enabled I need 5 in CPL and 5 in SDJ to get no drop outs at all. I could set the SDJ to 3 with PnT enabled but I would get the occasional drop out dot, no audio artifacts or audio issues but it would light up so I adjusted slowly till no light came up whatsoever and that's at the settings mentioned.

OSX: Maverick 10.9.1
Intel Core i7
2.3 GHz
Processors: 1
Cores: 4
Memory: 16 GB
Mixer: Rane 62 Z-Trip
Needles: Ortofon Scratch
BBN 5:33 PM - 19 February, 2014
It's kinda funny to see that we all have to use SDJ without P'n'T at the moment.

Hey Serato, how about returning our money?
PorkyG 5:35 PM - 19 February, 2014
Well it's not that I don't use it but if I do I change my SDJ buffer settings to insure o dropouts happen.
BBN 5:37 PM - 19 February, 2014
And those settings are so high, that there's too much latency for scratching :(
PorkyG 5:51 PM - 19 February, 2014
It wasn't too much latency for it at all but absolutely the 3ms and 1ms in SDJ felt much tighter.
I tested everything scratching and the only difference was it felt better with PnT disabled but that doesn't mean it is impossible to or horrible to do it and I didn't feel like I had to work around PnT latency it just felt more natural with it disabled so it's a matter of personal preference I guess.
BBN 8:59 PM - 19 February, 2014
To me it feels like back in the days with Finalscratch 1 or Torq.
Would really like to see official words from Serato or Rane.

First it worked for me with 5/5 but there are a lot of files where I get pops and clicks thru the speakers, when scratching or even using cuepoints with this settings.
aleksey 9:40 PM - 19 February, 2014
Quote:
And those settings are so high, that there's too much latency for scratching :(


Even if the latency is low, I have the impression that the scratch detection of PnT is not working for complex scratches...

www.mediafire.com

In the second example (PnT is on), you can hear that it adjusts the tone to its original pitch quickly (which is not caused by record movemt) - but it shouldn't IMHO. Maybe this is a general limitation of any keylock algorithm I don't know. The original SDJ keylock sounds similar. For me it's the first time to use keylock at all so maybe this is how it is supposed to be.
Benz UK 12:38 AM - 22 October, 2014
Hi,

I'm a long time traktor user. In traktor i have the latency set to 64 samples - 1.3ms processing + 2ms output = 3.3ms overall.

I've recently bought a Rane 62 w/SDJ.

Can anyone give me a clue what settings i need to use to get a similar latency?

Thanks

Ben
nik39 7:35 AM - 22 October, 2014
Quote:
Quote:
And those settings are so high, that there's too much latency for scratching :(


Even if the latency is low, I have the impression that the scratch detection of PnT is not working for complex scratches...

I totally agree.

Scratching with PnT sounds weird at best.
aleksey 11:06 AM - 22 October, 2014
Quote:
Hi,

I'm a long time traktor user. In traktor i have the latency set to 64 samples - 1.3ms processing + 2ms output = 3.3ms overall.

I've recently bought a Rane 62 w/SDJ.

Can anyone give me a clue what settings i need to use to get a similar latency?

Thanks

Ben

Hey Ben,
I recommend to use the lowest settings your PC allows without resulting in audible dropouts. Just move the buffer slider to 1ms, mix some tracks, listen to dropouts and observe the dropout indicator in the upper right corner. As long as you don't see red lights in a row and no audible dropouts occur, it should be fine. Otherwise adjust the buffer size in small steps until you found a compromise between stability and usability. I found the dropout indicator alone not too useful in SDJ compared to SSL because it's too sensitive IMHO (it lights up too often, even if no dropout happens). I think Serato knows about this and they plan to improve it.

I remember that somewhere in the Rane subforum there was a thread listing detailed latencies (also hardware related signal propagation times). Zach from Rane was involved in that thread and Nik as well. Could not find it anymore though.

Also I doubt that 3ms is the effective latency in Traktor. At a 1ms setting in SSL, the effective latency was around 9ms because of the latency caused by the Rane HW internally. I guess the HW latency is missing in your Traktor equotation so the maths will not help here.