Quick Sign In:  

Forum: VirtualDJ Technical Support

Topic: RP8000 DVS mapping

This topic is old and might contain outdated or incorrect information.

I am getting some odd behaviour using my RP8000s as a timecode source.

Firstly, I had to set the pitch mapping to nothing. Otherwise the software pitch adjustment was applied, on top of the speed adjustment from the timecode. So the first time I moved the pitch all the way down to -8% the software went to -16%. (Yes, I checked the turntables were set to +/-8.)

I guess an alternative would be to map it to `timecode_active ? nothing : pitch` to keep the function of it moving with no needle. Did this come along in a recent update? I know the urge to make tweaks as a developer myself, but either I've done something else to break this, or this wasn't tested pre-release?

But even with this fix the pitch is still inaccurate. When I go to the top, with the above patch in place, it correctly plays at 8%. But when I go to the bottom, it only goes to -7.4%. I have checked and Serato goes to -8%, so it looks like VirtualDJ is still making some adjustment (I tried turning everything off and on again..).

In case it is a clue, I also get a faded 'shadow' pitch slider in the GUI:



This is with the pitch going up to 8 and down to -7.4% (after a small wait for DVS to readust).

Any ideas? Happy to do some experiments.

PS. If I can get the accuracy fixed, would it be possible to get the calculated BPM using the pitch MIDI signal, for quicker feedback than via DVS? Had no idea the Reloops sent this signal, very cool!
 

Posted Tue 30 Mar 21 @ 2:00 pm
I have now tested this in Traktor as well as Serato, in case Serato was adding some sort of correction, but that doesn't appear to be the case - Traktor and Serato both report my turntable range as -8 to 8% on DVS (with a small lag and overshoot as the DVS averaging settles). Yet VirtualDJ only goes from -7.4 to +8%.

My guess is the shadow pitch fader was the left over MIDI signalled pitch setting, left there after I deleted the `pitch` midi mapping - it doesn't appear now.

I am not sure whether VDJ is incorrectly picking up the pitch, or whether it is correctly detecting the pitch then applying some correction. I have added `timecode_reset_pitch` to my load button but that hasn't changed anything. I've tried Serato Mk2 or Traktor Mk2 control vinyl, at different strengths (you can adjust the 72 phono preamp sensitivity), I've tried using RIAA correction in the turntable rather than the 72, I get 100% signal either way, and get identical results, -7.4% to 8%. I have left it running for a few minutes to be sure the average has caught up, I have tried relative, absolute and smart mode, and changed settings like timecode silence level I have taken screeshots of the timecode calibration but the percentage varies between -91.5% and 92.5%, so I am not positive where the issue is, but the average is closer to -92 than -92.6%, so I think detection is OK but some sort of calibration is taking place (regardless of control vinyl) that stops me getting to -8%.

Is there any other 'correction' VDJ applies, and if so can I disable it? I like that you can apply software pitch on top of DVS pitch, but I am at a total loss on how to disable it. Or is there some other explanation for why Traktor and Serato get down to -8?
 

Posted Thu 01 Apr 21 @ 9:53 am
Found something potentially interesting, which explains another odd characteristic of DVS on VirtualDJ.

I mixed a couple tracks with identical BPMs, one on internal software control at -8%, and the other on DVS with the turntable pitch at -8%. Despite the fact that the turntable pitch was reported as -7.4% by VirtualDJ, the tracks stayed in sync (for several minutes - the one supposedly at -7.4% if anything was a fraction slower).

This has always confused me with VirtualDJ - the grids are fine, the tracks are synced manually by ear, but VirtualDJ reports pitch and BPM as about 1% wrong. On Serato and Traktor, you can beatmatch cheat by adjusting the turntable pitch until the reported BPMs match. On VirtualDJ the BPM is consistently wrong. The number of times I have double-checked my grids!

So it seems there is too much 'friction' on the statistics reported in the GUI and 72 and RP8000 displays, even if the actual playback is correct. The 'friction' is stronger when reducing the pitch than when increasing it (or maybe that's averaging when the deck is stationary or being cued). The friction isn't just the averaging of a few seconds of DVS data - it can stay for much longer than a song - I ran my turntables at -8 for 10 minutes and it still reported -7.4%, but seems to be playing at -8%. When playing on DVS the BPMs are often a whole 1 BPM different, even though the tunes stay in sync for minutes-long techno/house mixes.

I had assumed Serato's DVS averaging algorithm was a little superior to VDJ's as it reports the real BPM much quicker and more accurately. But it appears to be just how VDJ is informing the GUI, rather than VDJ's fundamental DVS mechanism.

Does anyone else see divergent BPMs when mixing on DVS with VDJ? Be great to have this fixed (or configurable if I'm doing something to break it).



(When I take a screenshot the pitch goes down to -7.7% for the first time in days of testing this! But deck 1 is playing at a fraction slower than -8%, and has been for several minutes. Deck 1 BPM is definitely between 120.45 and 120.55 as the tunes are locked in sync and again, has been for minutes, but the GUI has stuck on 120.92.)
 

Posted Thu 01 Apr 21 @ 10:28 am
So, I use RP-8000's as well and I conducted my test last night to the exact scenario as you did and I was able to replicate identical results as you. DVS is something that I have always thought VDJ could improve on but I fear they feel it's "good enough." It has come a long way over the years but there is still so much more they could do so that it was equal to or better than Serato and Traktor. Not sure if there is a fix for this problem, or if it's something that will be resolved any time soon so we, as DVS users may have to just deal with it for now.
 

Posted Thu 01 Apr 21 @ 11:36 am
Thanks! I think the actual vinyl control is OK, and once timecodeSilence is zero or very low VDJ is as good for scratching (although Serato's skip prevention is absolutely perfect, blows my mind). It is just the friction applied to the reported pitch and BPM that has an issue. Maybe a friction setting would do it.

PS. Do set the pitch mapping to `timecode_active ? nothing : pitch` - this fixes the double-strength pitch change.
 

Posted Thu 01 Apr 21 @ 11:47 am
VDJ team please let me know if I can provide anything. tl;dr is the DVS speed is correct, but the reported speed and BPM never quite get to the actual speed - they slowly average towards the correct speed, but stop changing about a BPM shy of the actual speed, even if the speed is constant for a few minutes.

This is important because it makes the reported BPM useless for beatmatching. (Although how many DJs use the BPM if beatmatching on DVS I have no idea - I guess stubborn vinylists might deem that cheating.)
 

Posted Mon 05 Apr 21 @ 5:34 pm
djdadPRO InfinityDevelopment ManagerMember since 2005
Next update will have the PITCH mapped as ..
timecode_active ? nothing : pitch


So, with Tempo fader on the RP-8000 "disabled" when Timecode is active, VDJ will read the Speed from the Timecode signal, same as if you didnt have a MIDI device.
This means that the accuracy depends mainly on the device's motor, so you cant expect the nominal speed of a motor to be highly constant and accurate.
Even in Serato (since you mentioned) you can see both the Pitch and BPM value to fluctuate (about 0.1%) so if you expect to perfectly sync tracks (using SYNC), that's not the case with DVS ;)

Just did a test with my RP-8000..
With Serato ...
Pitch range +/- 8% , i get fluctuation from -/+ 7.9% to -/+ 8.1%
Pitch range +/- 16% , i get fluctuation from -/+ 15.9% to -/+ 16.1%
even though the average seems to be quite accurate, there is still lot of fluctuation (sensitivity)

With VirtualDJ,
Pitch range +/- 8% ,i get very small fluctuation and values are from -7.8% to + 8,3%
Pitch range +/- 16% , i get very small fluctuation and values are from -15.9% to + 16,0%


So, not sure what you are after, but if you want to match Tracks using the BPM readout on the RP-8000, i think VDJ is far better, since the fluctuation is much less, and Tracks tend to keep their tempo constant (at the designated speed)
 

Posted Tue 06 Apr 21 @ 11:25 am
Thanks very much djdad. I am surprised you get those readings on timecode as my %s and BPMs never quite reach the actual speed. They approach like a logarithmic curve towards the correct reading, but they stop updating before they get there. This means I can get two tunes perfectly beatmatched using my monitors/headphones, but the BPM reported by VirtualDJ stops changing when it is still around a percent or one BPM shy of the actual turntable and track pitch (as evidenced by the fact that they stay in sync despite different BPMs). This isn't wow/flutter, it isn't that the reported values fluctuate around the right pitch, they never reach it in the first place, for long after the turntables have reached the pitch. It is as if there is not just a little averaging, but also friction applied to the reported pitch, and when it gets to about a percent away the friction overcomes the adjustment.

Did you not see a (fairly significantly) longer delay for VirtualDJ's reported BPM to reach the actual BPM? I can beatmatch and mix in tunes long before the BPM readout reaches reality, and this is pretty consistent. On Serato on the other hand, I can pretty much adjust the turntable pitch until the reported BPMs match, because the reported BPMs adjust much more quickly to the actual.

If I'm still not clear after your first read of this blurb, my communication skills can be terrible, so let me know and I'll make a little video. I don't think this is anything specific to the RP8000s.

PS. Is it possible I've caused any of this with a setting? I just had a look and can't see anything likely.
 

Posted Tue 06 Apr 21 @ 4:32 pm


(Old topics and forums are automatically closed)