Old 11-23-2009, 02:24 PM   #1
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default Midi notes placed ahead of time

Hi guys. I think I've read a post about this on these forums before. I searched but couldnt find it though.

The issue is that when I record midi, I tend to basically have all my notes placed a tad before they are supposed to hit. Even when I try to focus on ONLY hitting the notes at the correct time I tend to get this.

I've tried several keyboards (hammer action and non), midi cabled and via usb, but everything plays out the same. I also have a good buffer (5 ms, I even tried 2.5 ms which I CAN do) so I dont think this issue is buffer based. I have also looked through the settings of Reaper, but I cant really find anything that looks like it could be the cause of this.

Is it possible that I'm actually playing ahead of the metronome or drums so consequentially? I would not think so, as I've been playing keyboards for quite some years now. It does "sound" good also, meaning that the keys hit at the exact time of the click/drum.

I'm trying to stay away from quantizing as much as I can, so this bugs me a bit. Could it be that there are some over eager latency compensation in play that fools me into hitting notes before I'm supposed to, or rather plays the sound sooner than it actually should? This sounds unlikely, but you never know.

I got an image to show what I'm experiencing:



I'd appreciate any ideas.
Chris Ihao is offline   Reply With Quote
Old 11-23-2009, 03:02 PM   #2
rawdio
Human being with feelings
 
Join Date: Apr 2007
Posts: 79
Default

If haven't really got a clue about this, but you might try the option 'Preserve PDC delayed monitoring in recorded items' (in the recording menu of the tcp)...
rawdio is offline   Reply With Quote
Old 11-23-2009, 04:26 PM   #3
Simple Simon
Human being with feelings
 
Simple Simon's Avatar
 
Join Date: Nov 2009
Location: New Zealand
Posts: 186
Default

As someone who consistently tends to play a little ahead of the beat (despite many attempts to train myself to do otherwise) I would suggest eliminating this possibility - however slim - first. The easiest way to do that would be to simply try recording midi on a different system and/or with different software and compare the results.

If all things still point to Reaper, I'd suggest experimenting a little with the buffering settings under Preferences.
Simple Simon is offline   Reply With Quote
Old 11-23-2009, 04:31 PM   #4
funkycornwall
Human being with feelings
 
Join Date: Mar 2007
Posts: 236
Default

Don't worry it's perfectly normal. Ypu are a musician not a machine so if you are playing slightly ahead of the metronome beat and it sounds fine then great. I agree with your idea of avoiding quantizing. If you are a decent keyboard performer you shoould not need to quantize - you canm always adjust the odd note. If you really don't like something better to re-record it rather than quantize.
funkycornwall is offline   Reply With Quote
Old 11-23-2009, 04:50 PM   #5
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by rawdio View Post
If haven't really got a clue about this, but you might try the option 'Preserve PDC delayed monitoring in recorded items' (in the recording menu of the tcp)...
Thanks for your suggestion rawdio. You put me on track of some "old" threads where this was mentioned. However, I've tried recording with both normal "input" and "output: midi", toggling "preserve pdc..." on and off, and I cant really say that there is a great difference. There may be a tad less "ahead" on "midi: out" or with "preserve pdc" on, but I cant really say as its so marginal. Maybe I'm getting tired, so I'm slacking behind some


Quote:
Originally Posted by Simple Simon View Post
As someone who consistently tends to play a little ahead of the beat (despite many attempts to train myself to do otherwise) I would suggest eliminating this possibility - however slim - first. The easiest way to do that would be to simply try recording midi on a different system and/or with different software and compare the results.

If all things still point to Reaper, I'd suggest experimenting a little with the buffering settings under Preferences.
Good tip. I'll check this out at a friend of mine the next time I'm visiting. Its comforting to know that there are others in the same boat though The "ahead" is so consistent that it almost looks machinal though, so thats why I thought there may be something wrong here.


Quote:
Originally Posted by funkycornwall View Post
Don't worry it's perfectly normal. Ypu are a musician not a machine so if you are playing slightly ahead of the metronome beat and it sounds fine then great. I agree with your idea of avoiding quantizing. If you are a decent keyboard performer you shoould not need to quantize - you canm always adjust the odd note. If you really don't like something better to re-record it rather than quantize.
Hehe. Yeah. I certainly hope I'm not a machine. Like I mention above though, this "ahead" almost looks machinal due to the lack of any "behind". I guess it sounds ok most of the time however. I usually have to practice more if it doesnt, so I totally agree with your argument. The bothersome part is that when using pre roll, I almost always lose the first note (cant be quantized either as its not there). Maybe I should just set the start point one bar back then. Hehe.

Thanks for the suggestions guys. Its typical that I get derailed when writing music because of stuff like this. I'm comforted by your responses though, and shall try to ignore this "ahead" next time.
Chris Ihao is offline   Reply With Quote
Old 11-23-2009, 05:51 PM   #6
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Edit: Bah. Think I found the main reason; The built in synthetic metronome of Reaper. I've seen many people mentioning that they use vsti's for this purpose. I now see why. I even did a quick run with a vsti earlier tonight, but I guess I was sloppy then.

Here is the result after just doing a run with Rewired Reason Redrums as metronome instead:



Quite a difference, aye? The weird thing is that the metronome plays along fine with the Redrum pattern. I think its just not as defined or something. Now, I wonder if samples work well instead. I kind of like having that metronome button you know I'm just happy to know I can keep on using Reaper with a big midi smile on my face.

Edit 2: In all fariness, I maybe just had a really good day when this was posted. This was extremely good results for any quantization. Almost a tad too good to be reproduced in fact, but I have mainly focused on the internal metronome so I wouldnt be able to tell for sure yet. I'm convinced that the end result of using external devices (like vsti's or rewired apps) are somewhat more precise though. Maybe because of an added latency that makes the midi note timing more correct.

Last edited by Chris Ihao; 11-27-2009 at 08:45 AM. Reason: Removed initial post as it is no longer actual
Chris Ihao is offline   Reply With Quote
Old 11-24-2009, 02:32 AM   #7
DarkStar
Human being with feelings
 
DarkStar's Avatar
 
Join Date: May 2006
Location: Surrey, UK
Posts: 19,677
Default

So, from what you have said, the Reaper metronome is playing slightly out of time?
__________________
DarkStar ... interesting, if true. . . . Inspired by ...
DarkStar is offline   Reply With Quote
Old 11-24-2009, 04:24 AM   #8
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by DarkStar View Post
So, from what you have said, the Reaper metronome is playing slightly out of time?
Hi DarkStar. Yes, I humbly would suggest this. Maybe this is why people prefer to use other methods of getting a metronome funtion as well?

Like I indicated though, this could merely be due to the type of sound, that it maybe isnt as defined as other drum sounds. That also is a bit weird considering that the "ahead" is so consistent as it is when I'm using the metronome. I still havent tried samples however. There is a theoretical possibility that this metronome isnt affected by a compensation that everything else is affected by somehow?

I feel that I have been able to train my timing capability up to a pretty good level these last few years, especially when focusing at tone note at a time, so its a bit strange that this happens all the time.

Thank you for your interest in this matter DarkStar.
Chris Ihao is offline   Reply With Quote
Old 11-24-2009, 04:31 AM   #9
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

I'm not using synthesized metronome, I'm using custom samples. No issues like yours that way.
EvilDragon is offline   Reply With Quote
Old 11-24-2009, 04:41 AM   #10
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Ok. Thanks EvilDragon. I'll be sure to check that out later today. While we're at it. Is there a way of changing the default metronome level somehow? And if you change it to samples, does it stay that way as a default? Just curious. The synthesized is usually a bit on the low side. Obviously, when using samples for the metronome you can adjust the levels of the samples itself to better suit ones preference.
Chris Ihao is offline   Reply With Quote
Old 11-24-2009, 04:45 AM   #11
EvilDragon
Human being with feelings
 
EvilDragon's Avatar
 
Join Date: Jun 2009
Location: Croatia
Posts: 24,790
Default

You can adjust the synthesized metronome's volume too. Volume faders are working on both.

If you change to samples and save your project as a project template, it gets saved

EDIT: actually I don't know if you really have to save as project template... just try and change it to samples, then open a new project and see if it remains.
EvilDragon is offline   Reply With Quote
Old 11-24-2009, 04:55 AM   #12
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Yeah, I know you can adjust the volume on the synthesized as well, but I wondered if there was a way of changing the default volume levels of the metronome. With samples you can adjust the level of the sample itself. I probably phrased it a bit unclear

I'm at work you see , so thats why I included that question about samples sticking or not while I was at it. Hehe
Chris Ihao is offline   Reply With Quote
Old 11-24-2009, 06:05 AM   #13
Fergo
Human being with feelings
 
Fergo's Avatar
 
Join Date: Mar 2009
Location: Curitiba - Brazil
Posts: 371
Default

Hi Chris.

To change the metronome volume, just right click the metronome button. There a bunch of options there

Regarding the delay, you might wanna insert a click source in one track to use as a metronome instead of RPR's default, just to check if the problem really is with RPR's built in metronome. Just go to Insert->Click Source.

Fergo
__________________
My new application: Fergo JoystickMIDI - Send commands using your joystick/gamepad
Portfolio: www.fbirck.com
Homepage: www.fergonez.net - Programming stuff
Fergo is offline   Reply With Quote
Old 11-24-2009, 06:13 AM   #14
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
Hi Chris.

To change the metronome volume, just right click the metronome button. There a bunch of options there

Regarding the delay, you might wanna insert a click source in one track to use as a metronome instead of RPR's default, just to check if the problem really is with RPR's built in metronome. Just go to Insert->Click Source.

Fergo
Ah. Thanks Fergo

Look forward to checking this out when I get home.
Chris Ihao is offline   Reply With Quote
Old 11-24-2009, 08:09 AM   #15
DBMusic
Human being with feelings
 
DBMusic's Avatar
 
Join Date: Sep 2009
Location: Illinois
Posts: 1,203
Default

Quote:
Originally Posted by Chris Ihao View Post
There is a theoretical possibility that this metronome isnt affected by a compensation that everything else is affected by somehow?
Interesting. I'm curious if this happens with both a blank project that has only your MIDI track as well as a multi-track project that has other plugins that would cause some delay compensation to execute.

Regards,

DB
__________________
My Stuff
DBMusic is offline   Reply With Quote
Old 11-24-2009, 03:44 PM   #16
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by Fergo View Post
Hi Chris.

To change the metronome volume, just right click the metronome button. There a bunch of options there

Regarding the delay, you might wanna insert a click source in one track to use as a metronome instead of RPR's default, just to check if the problem really is with RPR's built in metronome. Just go to Insert->Click Source.

Fergo
Ah, I see now Fergo that you talked about the same screen as when going into options -> metronome and pre-roll settings. I thought maybe there was another config screen, however I was aware of these settings. Its just that these settings dont "stick" from song to song. It would be neat to be able to set a default volume for the metronomes, but I figure making a project template works as well.

Regarding click source. I see that this has "save as default". Nice. I somewhat fail to see how this will test if Reapers built in metronome is off, as I bet the timing of the click is the same as the click source. Anyhow, i tried playing to the click source (with no instrument, merely midi input) and the result was the same. Ahead.

Quote:
Originally Posted by DBMusic View Post
Interesting. I'm curious if this happens with both a blank project that has only your MIDI track as well as a multi-track project that has other plugins that would cause some delay compensation to execute.
Sorry for not getting back to you before, but here goes. I'm still ahead when following the metronome with no instruments loaded (obviously no instrument, just midi in).

I'm really out of it today though, having slept less than an hour last night, so I cant say I trust my timing very much right now. Its interesting that I dont fall behind then, instead of staying ahead.

When I load up instruments and use redrum as a metronome, I still feel that this is slightly better than especially the synthesized metronome, but also better than when I use samples for click. This goes for both "normal metronome" and "click source metronome". In the few runs I did with the "Redrum metronome" during this last hour, I never hit quite as well as yesterday. I see that there is less of an unanimous tendency of staying ahead though.

I'm beginning to think that the reason why I hit so well in the second pic above, is because I after some while got adjusted to the click.

Even so, I cant really explain it, but I just feel that there is something wrong with the metronome in Reaper. I tried slowing down the speed to 50 bpm's, then I pulled down the rate slider, and I think I hear a tiny tiny difference between when the redrum hihat and the built in metronome is played, but again, I cant really tell anymore. I'm practically "deaf" after having retried this for an hour and a half or so now. I could probably even hear pigs squeeling if I listened close enough.

Cant we get some real experts on this case, instead of a super tired dude like me? Btw, I think I hear my bed shouting my name. Night folks.



PS: My intention is NOT to "prove" that there is something wrong with Reapers metronome. For instance, EvilDragon is happy using custom samples in the built in metronome, while I just cant seem to move further "behind" even when using this function. The odds are that its just me, but also a friend of mine have felt that there is something a bit off with the metronome. Decide for yourselves.
Chris Ihao is offline   Reply With Quote
Old 11-24-2009, 10:05 PM   #17
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

@OP: You might be on to something with this metronome timing thing. I tried using a drum beat instead of a metronome to record against, and I had far less issues with MIDI timing.

See also: http://forum.cockos.com/showthread.php?t=32579
jbone1313 is offline   Reply With Quote
Old 11-25-2009, 12:02 AM   #18
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by jbone1313 View Post
@OP: You might be on to something with this metronome timing thing. I tried using a drum beat instead of a metronome to record against, and I had far less issues with MIDI timing.

See also: http://forum.cockos.com/showthread.php?t=32579
Yeah. That seems very related.
Chris Ihao is offline   Reply With Quote
Old 11-25-2009, 12:25 AM   #19
EricM
Human being with feelings
 
EricM's Avatar
 
Join Date: Jul 2009
Location: Ljubljana, Slovenia
Posts: 3,801
Default

I think you are experiencing midi issues only, a simple test
using an audio waveform of a click and actual metronome
playing in time, and using lots of delayed samples on tracks
still nulls perfectly:



Track one: master output (for audio, metronome click is hardware out)
Track two: click source, phase inverted, and some plugins for latency.
Track three: empty track with plug-in of different latency.
EricM is offline   Reply With Quote
Old 11-25-2009, 06:53 AM   #20
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Interesting. Like I stated, its very easy to get "deaf" when you sit and listen to something for a long while. Therefore I really dont focus that much on my subjective experience of "maybe hearing a difference in timing" while playing the drums and click at the same time.

However, this doesnt explain why the midi appears to come out ahead. If there was a midi latency problem, it would probably fall somewhat behind instead. It doesnt explain why my timing get much better when recording in standalone Reason either.

Darn, I just cant get my grips on this. I feel my timing is pretty good, and it sucks to lose the first tone everytime I try to record something in midi. I'll have to dig deeper and see if there is something I've missed.

Edit: Having read jbone1313's thread more thoroughly, I find it strange that so "many" experience the exact same problem. The main problem when recording midi is that it just doesnt sound like when I recorded it. From my monitors I hear perfect sync when recording, but when playing back everything just sounds somewhat off. Would it be possible to get more of a "what you hear" approach when using midi? Maybe its supposed to be this way right now, but it sure doesnt feel like it.

Last edited by Chris Ihao; 11-25-2009 at 07:02 AM.
Chris Ihao is offline   Reply With Quote
Old 11-25-2009, 07:45 AM   #21
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

@EricM-Thanks for the null test. That's good info. I did a bunch of tests last night, and I sort of gave up on the metronome idea.

@Chris-Thanks for reading my thread. I really think there's something wrong, but its hard to pin down. Loop recording in Reaper is no fun with this issue.
jbone1313 is offline   Reply With Quote
Old 11-25-2009, 08:34 AM   #22
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by jbone1313 View Post
@EricM-Thanks for the null test. That's good info. I did a bunch of tests last night, and I sort of gave up on the metronome idea.

@Chris-Thanks for reading my thread. I really think there's something wrong, but its hard to pin down. Loop recording in Reaper is no fun with this issue.
I hear you. I just spoke about a friend who got this issue as well. Would anyone of the more well versed users here care to add this to the unholy issue tracker or something? I have no experience doing this myself, and dont want to boogelidoo the whole thing. I'm pretty certain that this needs to be followed up though. If I cant get the midi working well in Reaper, I will have to look around for alternatives. And I'm a Reaper fanboy too :'-(
Chris Ihao is offline   Reply With Quote
Old 11-25-2009, 09:39 AM   #23
EricM
Human being with feelings
 
EricM's Avatar
 
Join Date: Jul 2009
Location: Ljubljana, Slovenia
Posts: 3,801
Default

Ok, I know I was experiencing this issue even with Cubase,
and I read back than that it is MIDI interface related etc.

But what bugs me as you guys is that while recording the data
is processed correctly by the VSTi, it's the recording of MIDI
data in sequencer that is wrong.

Did a bit of experimenting using Focusrite's Saffire LE SC
connected via firewire, using Saffire's native ASIO driver.
MIDI is received via MIDI cable.





I recorded the same note with one drumstick sample in reaSamploMatic
as Audio (green) and MIDI (red) at the same time, by foldering the VSTi
track and setting record: stereo out on folder track. I tried to hit
every second click as tight to the click as possible.

Than I also applied FX to item and put the audio to a seperate
track (yellow), to see the representation of the recorded MIDI
as audio.

Results:



This was the one I nailed most perfectly (see first and last track),
presuming the audio was recorded without offset.



As clearly visible, MIDI that was recorded is ~ 40ms (37 as measured
using tab to transient) before the audio recording, that was generated
with the same MIDI while recording.

Checking all the consequent transients reveals that the offset
is constant at 37ms (so it's not fluctuating, but it's just shifted).

Now, another seeming issue I found here is that while soloing the
VSTi track (still going to folder track, so with muted audio) and
ApplyedFX track with phase reversed does not null. Unfoldering
did not solve the issue, so it had to have occoured durring applyFX
stage. So just to be sure, I duplicated the Red MIDI track with
the sampled drumstick and MIDI data, phase inverted one, and they
null perfectly.

I was not able to null an applyFXed track with original VSTi in
any way (time offset, same volume, phase inverted) within Reaper.
So I tried one more thing. Rendered the VSTi track online to a
24bit 44.1 kHz wav, and did the same with phase inverted applyedFX
track, without changing the time selection.

Opened them together in AdobeAudition, mixed together, and imported
back in Reaper. This is the result:



Three of the events did not null, others did.

Any interpration of this is welcome.

e

Last edited by EricM; 11-25-2009 at 10:13 AM.
EricM is offline   Reply With Quote
Old 11-25-2009, 10:05 AM   #24
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

EricM-Wow, thanks again for the detailed testing.

I'm wondering if what you and Chris are experiencing is the "MIDI record what is heard vs what is played" phenomenon. This has been discussed quite a bit on here. I tried searching for some of the threads discussing it, but I couldn't find them. I *think* Schwa did a big post explaining how REAPER handles MIDI. I'm *pretty sure* REAPER records what is played, not what is heard. So, you might end up with notes appearing as through they've been recorded "early". Really, Reaper is recording what you've been playing, but you have been subconsciously compensating for the latency your hearing. Thus, you are playing a little early.

Ableton records what is "heard". Thus, if you're not expecting it, sometimes your notes would appear as recorded "late".

I'm not sure what to make of some of the other details about your tests. I'll have to analyze some more.

Now, in my case (the looping problems in the other thread), I'm wondering if its an issue with input quantization. I'm setting my input quantization, but notes are constantly being caught at the end of the clip; they're not making it to the start. I.e., I can't consistently record the first note.

I wish there was some logical explanation. Let's keep up the dialog.

jbone1313 is offline   Reply With Quote
Old 11-25-2009, 10:11 AM   #25
EricM
Human being with feelings
 
EricM's Avatar
 
Join Date: Jul 2009
Location: Ljubljana, Slovenia
Posts: 3,801
Default

Quote:
Originally Posted by jbone1313 View Post
I'm wondering if what you and Chris are experiencing is the "MIDI record what is heard vs what is played" phenomenon. This has been discussed quite a bit on here. I tried searching for some of the threads discussing it, but I couldn't find them. I *think* Schwa did a big post explaining how REAPER handles MIDI. I'm *pretty sure* REAPER records what is played, not what is heard. So, you might end up with notes appearing as through they've been recorded "early". Really, Reaper is recording what you've been playing, but you have been subconsciously compensating for the latency your hearing. Thus, you are playing a little early.

Ableton records what is "heard". Thus, if you're not expecting it, sometimes your notes would appear as recorded "late".
Ah it would be great to find that post, always keen on
reading this stuff. Also I updated the previous post with
important info about recording device and settings.
EricM is offline   Reply With Quote
Old 11-25-2009, 11:36 AM   #26
DarkStar
Human being with feelings
 
DarkStar's Avatar
 
Join Date: May 2006
Location: Surrey, UK
Posts: 19,677
Default

I think I may have found something (or at least this will prompt some ideas):

Have a look at this screenshot:
[IMG]http://img229.**************/img229/8539/r3141dsmiditiming01.th.png[/IMG]
Big pic:
http://img229.**************/img229/8...ditiming01.png

Steps:
-- I recorded some MIDI notes on track 2 AND Sent the MIDI to tracks 5 and 6 where I added an FX and recorded the audio all at the same time,
-- the recording on track 5 uses "Record Output (stereo, latency compensated),
-- the recording on track 6 uses "Record Output (stereo),
-- I then enabled the same FX on track 2 and used "Apply FX as new take" and "Explode all takes to new tracks", resulting in tracks 3 and 4,
-- I drew in some MIDI clips on track 1 for measurement.

Results:
-- the recorded audio output is 108 ms behind the MIDI,
-- the latency-compensated recorded audio is 36 ms behind the MIDI,
-- the audio from "Apply FX" is aligned with the MIDI.

Analysis:
For this trial, I had set my audio buffer to 18/18ms. The recorded audio output is 6 buffers adrift, the latency-compensated recorded audio is still 2 buffers adrift. Two buffers is equivalent to 1 i/o cycle.

Confirmation:
I set my audio buffer to 10/10ms and repeated the steps. The delays were 60 and 20ms respectively.

Conclusion
-- It look like it's latency-related
-- and the Record Output (latency-compensation) is not quite doing it.
__________________
DarkStar ... interesting, if true. . . . Inspired by ...
DarkStar is offline   Reply With Quote
Old 11-25-2009, 11:45 AM   #27
DarkStar
Human being with feelings
 
DarkStar's Avatar
 
Join Date: May 2006
Location: Surrey, UK
Posts: 19,677
Default

... schwa's post:

http://forum.cockos.com/showthread.php?t=34533
__________________
DarkStar ... interesting, if true. . . . Inspired by ...
DarkStar is offline   Reply With Quote
Old 11-25-2009, 12:53 PM   #28
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

Ok, this is getting confusing. I don't really know what to make of it. All I can tell is that loop recording MIDI in REAPER is wack.

Even assuming that REAPER records "what you play" not "what you hear", it seems like its unreliable.

The overriding question is: Is there an explanation for this? Is there a way to handle it?
jbone1313 is offline   Reply With Quote
Old 11-25-2009, 01:07 PM   #29
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

DarkStar, so is it the case that changing your sound card's latency settings causes REAPER to adjust the time at which the MIDI notes are recorded?

If so, I don't understand why REAPER would (should) care about sound card latency when recording MIDI notes. It should just record them as they are played. (Or if some "latency compensation setting" is checked, it should adjust the notes later in time them by the actual measured latency.)
jbone1313 is offline   Reply With Quote
Old 11-25-2009, 01:11 PM   #30
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

Sorry to keep bluring the issue in this thread with the MIDI loop recording issue (http://forum.cockos.com/showthread.php?t=32579), but they are possibly related.

Assuming REAPER is adjusting the time at which it records MIDI notes (based on sound card latency), it may be a plausible explanation for why the first note can't reliable be recorded in a MIDI loop even with input quantize enabled.

Perhaps REAPER is FIRST adjusting the MIDI note time BEFORE applying the input quantization. That would possibly explain why I can't reliably record the first note in the MIDI loop even with extreme input quantization settings.

Sorry for all of this speculation.
jbone1313 is offline   Reply With Quote
Old 11-25-2009, 02:03 PM   #31
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Edit: (Content removed because of insufficient reading beforehand on my part)

Thanks a lot for you extensive testing EricM and DarkStar.

Having actually read through schwa's post I realize that there are still a few things I havent checked out. Those timestamp options looks interesting. I never thought about those settings at all, of some unknown reason. Off for some testing.

Edit2: I did the midi loopback test, and it seems like this checks out just fine with the standard timestamp setting of "let Reaper timestamp events". Here is an image to show the compared tracks:



Track number one is the original, while the second is the recorded loopback. The differences are barely noticeable, and this difference is certainly NOT ahead. Its behind by a small margin. The "low precision system timestamp (TGT)" however does show a greater imprecision and more jitter, however hardly any reason for the phenomena described earlier in this thread. Now, what this prove is basically that Reaper is very capable of receiving midi in a proper way, something I never doubted.

What remains then are two possibilities in my opinion:

1) Personal error causing a "record ahead". Honestly I dont think this is it, as I'm pretty certain that I should be able to hit SOME notes correctly during hours and hours of boring "hitting one note while closing eyes and concentrating on hitting this one note".

2 Lack of compensation in the metronome. I find this a valid possibility, considering that I and others have found that using external vsti's (or in my case Reason) as a metronome give better results in general. The "play ahead", while happening now and then, is far less consistent than when using the built in metronome. Its kind of telling that practically not ONE note get placed behind the bar.

Obviously I'm no expert on this subject. I am only using common sense and monotonous experiments as a basis for my conclusions.

Now, if someone more knowledgeable and skilled artisan would take this case further up the ladder, it would be greatly appreciated.

We all love Reaper and only want it to be the best it can be.

Last edited by Chris Ihao; 11-25-2009 at 04:15 PM. Reason: Testing shows that timestamps is not the issue here
Chris Ihao is offline   Reply With Quote
Old 11-25-2009, 04:05 PM   #32
Baard
Human being with feelings
 
Baard's Avatar
 
Join Date: Nov 2009
Location: Tjuvdalen, Norway
Posts: 21
Default

Same issue as Chris here.. Notes are recorded too early when using Reapers metronome, and in time when using a VST as click source.

Seems to be latency related indeed. I believe that a workaround can be to use audio samples as Metronome sounds, with a short silence added in the beginning of the sample?

EDIT: Well.. Probably not, since the amount of "anti-latency" will vary with the ASIO driver latency?

EDIT 2: After testing with samples instead of the in-built click, it seems to record in time. I just reinstalled XP, and had not bothered to set up a default project with samples as metronome yet. Thanks EvilDragon, didn't see your post at first.

Last edited by Baard; 11-25-2009 at 05:06 PM. Reason: I had to much to think.. Again!
Baard is offline   Reply With Quote
Old 11-25-2009, 05:04 PM   #33
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Its rather a lack of latency compensation in the built in metronome in that case.

Btw, I measured the ahead "negative latency" on the synthesized metronome, and I found the notes to be on average around 40 ms ahead of the correct bar. This certainly fit the conclusions of both EricM and DarkStar further up in this thread, especially considering I didnt even have this figure in mind when I was testing. Its very unlikely that this merely is a weird coincident imo. Its also interesting to note that this seems almost totally independent of the asio latency, as EricM was using a totally different latency than myself. Additionally, I had already tried to lower my asio latency to around 2.6 ms before starting on this, with no noticable effect.

I think I will proceed to follow your advice Baard, especially if nothing comes out of this. Adding samples with 40 ms of silence at the beginning should work out.

What about this idea. Under the metronome and pre-roll settings, why not add a manual "latency skewer" (slider and number input) where you can calibrate your midi input by ms and eventually samples? I think this would be a great compromise for us who are picky about this.

Edit: I tried samples again just to be sure I didnt mess up yesterday. Still ahead. I cut the samples very finely for starting right away though.

Edit 2: Finally.

1) I edited two metronome samples by first finely cutting them to start right away.

2) I started with inserting 35 ms and tested while I worked my way down.

3) Conclusion: A silence of exactly 25 ms. With this compensation I pretty much hit the bar as well as can be expected. There is a tiny tendency of notes getting placed some very few samples behind the bar, while a few notes hit just before the bar. This is preferable, as I cant expect to play perfectly and this is more natural than having everything placed ahead. Also the first note more often than not will be recorded. Audibly the playback sounds very good and in time with the metronome, as well as any drum pattern I create. Its a remarkable difference in my opinion.

This is something I can live with I guess. Its not entirely comfortable though, as I have no idea how audio will react to this "self made latency".

It would be interesting to see what results some of you guys get if you try the metronome sounds I created, so I added a zip file with the two clicks as an attachment. Please humor me someone, so that I can get a comparison. Oh, and I almost forgot to mention, I am presently using an exact asio buffer of 5.3 ms.

Anyways, now I hopefully can go back to enjoying making music in Reaper again.

Cheers!
Attached Files
File Type: zip Metronome clicks 25 ms compensation.zip (18.0 KB, 270 views)

Last edited by Chris Ihao; 11-25-2009 at 08:37 PM. Reason: Added note of coincidental finding of ms latency
Chris Ihao is offline   Reply With Quote
Old 11-25-2009, 06:20 PM   #34
Baard
Human being with feelings
 
Baard's Avatar
 
Join Date: Nov 2009
Location: Tjuvdalen, Norway
Posts: 21
Default

Well I'll be ...

First, using samples instead of generated click did not work as I said. Guess I was too fast there.

Second, adding silence at the beginning of the samples does the trick for me. Still experimenting on the amount tho'. 40ms seems to be too much here. I am running at 6.5ms on my Maudio Delta 1010lt btw.

Thanks to everybody for this thread, and the research done.
Baard is offline   Reply With Quote
Old 11-25-2009, 06:23 PM   #35
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

You guys are great for chasing this down.

Last edited by jbone1313; 11-26-2009 at 08:20 AM.
jbone1313 is offline   Reply With Quote
Old 11-25-2009, 06:30 PM   #36
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Like I say above, I found 25 ms to be about perfect for my needs. Please test the files for me, so I can go to bed with (maybe) a big smile on my face if it works hehe
Chris Ihao is offline   Reply With Quote
Old 11-25-2009, 06:38 PM   #37
jbone1313
Human being with feelings
 
Join Date: Aug 2008
Posts: 207
Default

It seems to solve my looping problem. (Solve is a strong word; it seems to help.)

I hope this isn't one of those cases my sound engineer friend talks about. Guys will say, "turn up my monitor". My friend will pretend to turn it up. Then he'll ask them if that's better. They'll say, "yes."

Last edited by jbone1313; 11-26-2009 at 08:20 AM.
jbone1313 is offline   Reply With Quote
Old 11-25-2009, 07:17 PM   #38
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Quote:
Originally Posted by jbone1313 View Post
Unbelievable. It seems to solve my looping problem. (Solve is a strong word; it seems to help.)

I hope this isn't one of those cases my sound engineer friend talks about. Guys will say, "turn up my monitor". My friend will pretend to turn it up. Then he'll ask them if that's better. They'll say, "yes."
Hehe. No, I can pretty much assure you of that. I have no idea why this is happening or what eventually can be done to remedy it, but it certainly should be looked into. Both me and Baard have "professional" audio cards, and I personally see no reason why this should occur on my system specifically. The idea of having to add latency to any metronome sample to be used isnt exactly my idea of fun, so I hope there will be another solution at some point.

I'm glad you got help from this workaround though. I just tested some more and it seems to work just fine here now, so I am glad for my own sake as well

Oh man, I'm going to be tired at work tomorrow. Its over 3.15 am here now. Bah. However, it was worth the while. This problem was killing my creativity, and also I got to spend a lot of time practicing playing to a metronome.

Cheers.
Chris Ihao is offline   Reply With Quote
Old 11-25-2009, 09:54 PM   #39
EricM
Human being with feelings
 
EricM's Avatar
 
Join Date: Jul 2009
Location: Ljubljana, Slovenia
Posts: 3,801
Default

Guys, I must inform you that delaying click samples will solve your
problem only for recording one instrument to the click. The next
one you will want to play with the previous one (or any audio that
is tied to the grid) will be problematic, as click and your playing
will now be 25 - 40 ms late! It might be recorded on time, but
you can't play properly to that.

I think I'll have to check the ReaScript and see if automatically delaying
MIDI after recording is possible.
EricM is offline   Reply With Quote
Old 11-26-2009, 12:02 AM   #40
Chris Ihao
Human being with feelings
 
Chris Ihao's Avatar
 
Join Date: Oct 2009
Posts: 323
Default

Do that. I'll test further when I get home from work.

Edit: Actually, considering that the recorded midi now matches the bars and it sounds well when played together with other stuff, I'm not that sure if there will be any big problems of recording several instruments. Like I've said, I feel that this "error" is only linked to the metronome, and if this is corrected by inserting silence I dont see how this will affect the other tracks in a negative way. If it is so that this compensation is erronous in the first place that is. Maybe I'm thinking all wrong here. We'll see.

Anyhow it WOULD be nice to have a ReaScript for this purpose, just to be clear on that.

Last edited by Chris Ihao; 11-26-2009 at 02:20 AM. Reason: On the other hand...
Chris Ihao is offline   Reply With Quote
Reply

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

Forum Jump


All times are GMT -7. The time now is 04:50 PM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2024, vBulletin Solutions Inc.