Propellerhead Software
  #1  
Old 2010-09-04, 17:25
Kronsteen
Guest
 
Posts: n/a
Neptune Latency - 19-23ms

This is my preliminary test of Neptune's latency.

I made a sample of a 10ms pulse at 880Hz, repeating every second with silence between repeats. It was mono, 44.1 kHz, 16 bit.

I put the sample in two Record audio tracks, one with Neptune as an insert effect, and bounced the result to disk as a loop, three times for each Nepune setting, then compared the delay between the two pulses.

With Neptune performing no pitch changes, the delays were 844, 964 and 964 samples, giving an average of 942.

With Neptune performing chromatic correction but with no corrections actually done because the source was in tune already, the delays were all 964, obviously giving an average of 964.

With Neptune pitching the sample up by 12 semitones, the delays were 818, 818 and 715, averaging to 783.6. There was some distortion of the delayed sound - see picture 1.

With Neptune pitching the sample down by 12 semitones, the delays were 1019, 1019 and 1036, averaging to 1024.6. In one of the three, there was a significant distortion - see picture 2.

In conclusion, Neptune has a delay of between 19 and 23 milliseconds, and can unpredictably distort the waveform when repitching.

The delay is too long for live vocal use - I tried it - but with some mathematical juggling of tempo and an assumed average delay, samples can be shifted back on the timeling by a number of ticks to compensate.
Attached Images
File Type: jpg Neptune Latecncy Test P1.jpg (20.2 KB, 171 views)
File Type: jpg Neptune Latecncy Test P2.jpg (22.1 KB, 162 views)

Last edited by Kronsteen; 2010-09-04 at 17:47.
  #2  
Old 2010-09-04, 19:43
Kronsteen
Guest
 
Posts: n/a
So you've got a track length sample in Record - maybe the vocal track or the guitar - and you want to change or correct the pitch in Neptune...and you want to compensate for Neptune's latency.

Record doesn't have a way of shifting the placement of a sample on the timeline forwards or backwards in milliseconds, but it can shift it by bars, beats, sixteenths and ticks. There are 240 ticks to each sixteenth.

So we need a way of translating milliseconds into ticks.

There are 60,000 milliseconds in 1 minute. Divide that by your BPM - so if your BPM is 125, 60000/125=480. That means there are 480 milliseconds to each beat. Divide that by 4 to get the number of milliseconds to each sixteenth - 480/4=120.

Now, don't ask me why, but there are 240 ticks to each sixteenth, so divide the result of the last calculation by 240, to get the number of milliseconds to the tick at your tempo - 120/240=0.5.

Half a millisecond to a tick, or two ticks to one millisecond.

By my rough testing, on my laptop Neptune has a latency varying between 19 and 23 milliseconds, so I'm going to assume a latency of 21.

Divide 21 by the result you just got - 0.5/21=42. So if your tempo is 125, your latency compensation is 42 ticks.

If, like me, you're hopeless at maths but your soul dies a little when your vocals are just slightly mistimed, here's Kronsteen's Neptune Chart. The first column is your BPM, the second the number of ticks to move your samples back to (hopefully) resynchronise them.

BPM Compensation
30 ----- 10
31 ----- 10
32 ----- 11
33 ----- 11
34 ----- 11
35 ----- 12
36 ----- 12
37 ----- 12
38 ----- 13
39 ----- 13
40 ----- 13
41 ----- 14
42 ----- 14
43 ----- 14
44 ----- 15
45 ----- 15
46 ----- 15
47 ----- 16
48 ----- 16
49 ----- 16
50 ----- 17
51 ----- 17
52 ----- 17
53 ----- 18
54 ----- 18
55 ----- 18
56 ----- 19
57 ----- 19
58 ----- 19
59 ----- 20
60 ----- 20
61 ----- 20
62 ----- 21
63 ----- 21
64 ----- 22
65 ----- 22
66 ----- 22
67 ----- 23
68 ----- 23
69 ----- 23
70 ----- 24
71 ----- 24
72 ----- 24
73 ----- 25
74 ----- 25
75 ----- 25
76 ----- 26
77 ----- 26
78 ----- 26
79 ----- 27
80 ----- 27
81 ----- 27
82 ----- 28
83 ----- 28
84 ----- 28
85 ----- 29
86 ----- 29
87 ----- 29
88 ----- 30
89 ----- 30
90 ----- 30
91 ----- 31
92 ----- 31
93 ----- 31
94 ----- 32
95 ----- 32
96 ----- 32
97 ----- 33
98 ----- 33
99 ----- 33
100 ----- 34
101 ----- 34
102 ----- 34
103 ----- 35
104 ----- 35
105 ----- 35
106 ----- 36
107 ----- 36
108 ----- 36
109 ----- 37
110 ----- 37
111 ----- 37
112 ----- 38
113 ----- 38
114 ----- 38
115 ----- 39
116 ----- 39
117 ----- 39
118 ----- 40
119 ----- 40
120 ----- 40
121 ----- 41
122 ----- 41
123 ----- 41
124 ----- 42
125 ----- 42
126 ----- 42
127 ----- 43
128 ----- 43
129 ----- 43
130 ----- 44
131 ----- 44
132 ----- 44
133 ----- 45
134 ----- 45
135 ----- 45
136 ----- 46
137 ----- 46
138 ----- 46
139 ----- 47
140 ----- 47
141 ----- 47
142 ----- 48
143 ----- 48
144 ----- 48
145 ----- 49
146 ----- 49
147 ----- 49
148 ----- 50
149 ----- 50
150 ----- 50
151 ----- 51
152 ----- 51
153 ----- 51
154 ----- 52
155 ----- 52
156 ----- 52
157 ----- 53
158 ----- 53
159 ----- 53
160 ----- 54
161 ----- 54
162 ----- 54
163 ----- 55
164 ----- 55
165 ----- 55
166 ----- 56
167 ----- 56
168 ----- 56
169 ----- 57
170 ----- 57
171 ----- 57
172 ----- 58
173 ----- 58
174 ----- 58
175 ----- 59
176 ----- 59
177 ----- 59
178 ----- 60
179 ----- 60
180 ----- 60
181 ----- 61
182 ----- 61
183 ----- 61
184 ----- 62
185 ----- 62
186 ----- 62
187 ----- 63
188 ----- 63
189 ----- 64
190 ----- 64
191 ----- 64
192 ----- 65
193 ----- 65
194 ----- 65
195 ----- 66
196 ----- 66
197 ----- 66
198 ----- 67
199 ----- 67
200 ----- 67
201 ----- 68
202 ----- 68
203 ----- 68
204 ----- 69
205 ----- 69
206 ----- 69
207 ----- 70
208 ----- 70
209 ----- 70
210 ----- 71
211 ----- 71
212 ----- 71
213 ----- 72
214 ----- 72
215 ----- 72
216 ----- 73
217 ----- 73
218 ----- 73
219 ----- 74
220 ----- 74
221 ----- 74
222 ----- 75
223 ----- 75
224 ----- 75
225 ----- 76
226 ----- 76
227 ----- 76
228 ----- 77
229 ----- 77
230 ----- 77
231 ----- 78
232 ----- 78
233 ----- 78
234 ----- 79
235 ----- 79
236 ----- 79
237 ----- 80
238 ----- 80
239 ----- 80
240 ----- 81
241 ----- 81
242 ----- 81
243 ----- 82
244 ----- 82
245 ----- 82
246 ----- 83
247 ----- 83
248 ----- 83
249 ----- 84
250 ----- 84

Of course, there wouldn't be a need for kludges like this is Record's audio tracks had a 'Latency Compensation' button to do it automatically.
  #3  
Old 2010-09-04, 20:38
privteer's Avatar
privteer privteer is offline
 
Join Date: Dec 2007
Posts: 756
Nice post and topic...

I just want to add a detil : Record is more precise than you think.

Each Tick has 16 subticks... when you press "S" or remove with the mouse the "snap" function, you can access to those subticks.
This important, because we are speaking of resync some wav datas... the more precise your tool is, the more precisely you can work
the value is announced in page 121 of the Operation manual (and other pages also)
__________________
Say what you do... Do what you say... Think what you say... and always say what you think.
I'm a Reason'man, and what about you ?
Do you own Reason ??? this a good reason to buy it :
Loading SoundCloud…
  #4  
Old 2010-09-04, 23:18
Kronsteen
Guest
 
Posts: n/a
Thank you.

So that's what the asterisk means in the Position and Length indicators - placement or length at subtick levels. Though there doesn't seem to be a way to move clips by subticks except by grabbing them with the pointer. A nice bit of additional information.

Soon, if I've got the strength, tests for the BV512 latency :-).
  #5  
Old 2010-09-30, 04:34
nicesniper2's Avatar
nicesniper2 nicesniper2 is offline
 
Join Date: Nov 2009
Posts: 7
Exclamation PH must read this..

Quote:
Originally Posted by Kronsteen View Post
This is my preliminary test of Neptune's latency.

I made a sample of a 10ms pulse at 880Hz, repeating every second with silence between repeats. It was mono, 44.1 kHz, 16 bit.

I put the sample in two Record audio tracks, one with Neptune as an insert effect, and bounced the result to disk as a loop, three times for each Nepune setting, then compared the delay between the two pulses.

With Neptune performing no pitch changes, the delays were 844, 964 and 964 samples, giving an average of 942.

With Neptune performing chromatic correction but with no corrections actually done because the source was in tune already, the delays were all 964, obviously giving an average of 964.

With Neptune pitching the sample up by 12 semitones, the delays were 818, 818 and 715, averaging to 783.6. There was some distortion of the delayed sound - see picture 1.

With Neptune pitching the sample down by 12 semitones, the delays were 1019, 1019 and 1036, averaging to 1024.6. In one of the three, there was a significant distortion - see picture 2.

In conclusion, Neptune has a delay of between 19 and 23 milliseconds, and can unpredictably distort the waveform when repitching.

The delay is too long for live vocal use - I tried it - but with some mathematical juggling of tempo and an assumed average delay, samples can be shifted back on the timeling by a number of ticks to compensate.


i have latency too, so i cant use neptune well
  #6  
Old 2010-09-30, 05:41
themensch's Avatar
themensch themensch is offline
 
Join Date: Dec 2003
Posts: 1,650
Nice work, Kronsteen. It's good to see a well-spoken and detailed analysis with data to back it up.
__________________
TheMensch on Soundcloud ~ Last updated 20130331
  #7  
Old 2010-11-06, 17:03
selig's Avatar
selig selig is offline
 
Join Date: Jun 2003
Posts: 10,489
Quote:
Originally Posted by Kronsteen View Post
So you've got a track length sample in Record - maybe the vocal track or the guitar - and you want to change or correct the pitch in Neptune...and you want to compensate for Neptune's latency.

Record doesn't have a way of shifting the placement of a sample on the timeline forwards or backwards in milliseconds, but it can shift it by bars, beats, sixteenths and ticks. There are 240 ticks to each sixteenth.

So we need a way of translating milliseconds into ticks.
OR there's a quicker way (still a kludge). Assuming you have recorded a single clip from the top of the track: (use workarounds for multiple clips, either join them first or select all clips on the track before you move them)

Zoom in on the track at the beginning, WAY in, and move the playback curser while watching the 'time' display (which shows milliseconds). Just move the play curser until you see 20ms (or whatever delay amount you're looking for). When the playback curser is in the correct location, use the razor tool to make a cut where the curser is located. Delete the clip to the 'left' of the cut, and then just drag the 'right' clip to the start of the track! Instant 20ms 'pre-delay'. Works at any tempo so you only need to know the delay in ms - no need for the fancy charts (although I'm partial to fancy charts!).

Other tips - even if the clip doesn't go to the top of the song, you can just drag the front of the clip so it starts at 0:00. Of course you can do this anywhere in the timeline - just use a little math!
  #8  
Old 2010-11-06, 21:32
higherpurpose's Avatar
higherpurpose higherpurpose is offline
 
Join Date: Jun 2001
Posts: 114
big ups to Kronsteen, one of the most helpful users on here.

thanks.
  #9  
Old 2010-11-07, 17:28
jlgrimes jlgrimes is offline
 
Join Date: Jul 2003
Posts: 1,922
Other tips I found out,

1. Record at 88200. This doesn't get rid of the latency but reduces it. Latencies that are now 20 ms, becomes 10 ms which might be forgivable in some situations.

2. From my ears the Low frequency mode produces the most latency. I typically use Live mode, I thought from my calculations I got the latency to about 5 ms, which is still a problem but more managable and harder to detect.

3. Have your vocalist record live with the Neptune device. That way they would have to compensate for the latency themselves and if they can do so, that would eliminate the latency problem.


But bottom line Reason (and most definitely Record) needs to fix this. Just about every other DAW has full plug-in delay compensation, so in programs like Sonar, Live, and Reaper these are non-issues. And I would think Record should have perfect latency since all of their plug-ins are designed in the house (as opposed to Sonar who has to support a wide range of 3rd party plug-ins).
  #10  
Old 2010-11-07, 19:09
pushedbutton's Avatar
pushedbutton pushedbutton is offline
 
Join Date: May 2009
Posts: 5,579
Quote:
Originally Posted by Kronsteen View Post
....
Of course, there wouldn't be a need for kludges like this is Record's audio tracks had a 'Latency Compensation' button to do it automatically.
The perfect sales pitch, I didn't realise I had that problem untill you pointed it out and remedied it in one fell swoop... what the f*ck is a 'fell swoop' anyhow?
 

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
Sorry... Neptune has Latency... twisonthejob General Forum (read only) 15 2010-08-29 16:02
Reason 4.0.1 + Garageband '08: Rewire latency problem jugger Phead User Forum (read only) 5 2008-09-08 09:00
Cubase Reason .wav File Export Latency Help goldenhorn Phead User Forum (read only) 0 2007-02-23 21:10
Advice on latency valmour General Forum (read only) 8 2007-02-06 03:22
Attack of the killer LATENCY! Muzak Phead User Forum (read only) 3 2005-01-25 06:42


All times are GMT +2. The time now is 05:06.