PDA

View Full Version : MIDI timing in Reaper


schwa
04-14-2009, 05:10 AM
A few words about MIDI timing in Reaper, specifically timing for MIDI coming in to or going out of Reaper.

To be clear, this is entirely about MIDI hardware timing. Internally within Reaper, there should never be any issue with MIDI timing.



When recording and playing MIDI you care about three kinds of timing: jitter, audio sync, and latency.

Jitter is how consistent or inconsistent the timing between notes is. If you have a quantized MIDI beat, you want it to actually play quantized instead of hits being randomly early or late.

There are systemic limitations on how low jitter can be with any hardware. A couple of good articles about MIDI timing and Windows:
http://www.soundonsound.com/sos/dec07/articles/cubasetech_1207.htm (e-sub)
http://www.tim-carter.com/music-production/midi-latency.php

The summary is that there is a minimum MIDI jitter on Windows in the 1 ms range, with the additional problem that each device must make a decision about what kind of timestamps to use, and mismatched timestamp assumptions can cause terrible jitter in the 50 ms range.

Reaper 3 adds a per-device MIDI timestamp setting, with the default choice of ignoring the device's timestamps and letting Reaper timestamp everything. In loopback tests, either using the default setting, or ensuring that Reaper's setting matches the hardware device, should reduce jitter to the 1.5 ms range, which is about as good as it gets on Windows.

(Any piece of hardware or software that handles the MIDI data along the way may cause additional jitter, so keeping the signal path short is important.)

Audio sync is making sure that MIDI and audio events that occur at the same time get heard at the same time. When not in low-latency output mode, Reaper syncs audio and MIDI during playback or recording, but specific devices may add additional latency that Reaper doesn't know about, which will throw the MIDI out of sync. You can adjust for additional latency per-device in Reaper's MIDI output settings.

Keeping MIDI and audio in sync allows creative processing of MIDI and audio together, like triggering a synth with an audio gate, or using audio volume to modulate a cutoff filter.

Latency is how long it takes for a MIDI note played on hardware to get recorded by Reaper, or a MIDI note output by Reaper to get played on hardware. Because Reaper does not yet have a direct MIDI-thru mode, there will always be some MIDI latency and when not in low-latency mode, the latency depends on the audio hardware buffer size. This latency makes it difficult to route MIDI through Reaper for live playing. We intend to add a MIDI-thru mode that will disable MIDI/audio sync completely but allow MIDI to pass through Reaper with very low latency, but for now, MIDI takes time to pass through Reaper.

So: for minimum jitter in Reaper, make sure the device is not set to low-latency mode in Reaper's preferences. For minimum latency, make sure that the hardware device is set to low-latency mode. And remember that jitter is worse than latency, because it's much harder to correct once recorded.

(Thanks very much to user beatbybit for running a number of controlled hardware measurement tests.)

stupeT
04-14-2009, 06:52 AM
OK and thank you.

How about that tricky MIDI-interface which once came from Emagic? I am still using it. 8 ports, I guess its called ATM-8 (Advanced time management) or something. The trick of that device (as far as I remember):

To keep latency low it will accept MIDI events before they should actually be fired. But it keeps the timestamp in mind. So it is (thereotically) able to fire on all ports (and channels) at the SAME time and overcoming latency of some kind (i.e. caused by the serial transportation protocol for the 16 channels per port or the windows jitter you mentioned).

Will it's driver take care anyway? Will it be configurable to take full advantage of it?

schwa
04-14-2009, 07:05 AM
Reaper always streams the MIDI events to the device at the start of the audio block during which they are meant to be played, in other words, there is a slight amount of send-ahead. In most cases that doesn't do much for latency though, if the device needs additional time to process the MIDI events, that's additional latency.

Lawrence
04-14-2009, 07:14 AM
Latency is how long it takes for a MIDI note played on hardware to get recorded by Reaper, or a MIDI note played by Reaper to get played by hardware. Because Reaper always syncs audio and MIDI, there will always be high MIDI latency and the latency depends on the audio hardware buffer size.

Latency should affect the realtime timing of audio that is dependent on the system - like VSTi's - but should have nothing to do with midi passing through the system... like midi passing through the daw triggering a hardware synth. That midi signal should *not* be delayed by the system latency/buffer size.

That seems very wrong to me, as someone who regularly plays/records midi with hardware synths in the daw at max buffers with no delay. It's one of the reasons people use hardware synths, to avoid latency, now you're saying with Reaper even that signal is dependent on the audio buffers?

That simply can't be a good thing.

schwa
04-14-2009, 07:27 AM
As I wrote in the original post:

This latency makes it difficult to route MIDI through Reaper for live playing. We intend to add a "MIDI thru" mode that will disable MIDI/audio sync but allow MIDI to pass through Reaper with very low latency, but for now, MIDI takes a long time to pass through Reaper.

Reaper's current low-latency MIDI output mode will decrease the "long time" but not all the way to zero. For now, if you want no MIDI latency while playing live, the MIDI signal from your controller to the hardware synth has to go around Reaper, by routing the MIDI cables either physically or virtually (using MIDI-OX or similar).

When we add MIDI thru, everyone will be happy.

Lawrence
04-14-2009, 07:38 AM
As I wrote in the original post:



Reaper's current low-latency MIDI output mode will decrease the "long time" but not all the way to zero. For now, if you want no MIDI latency while playing live, the MIDI signal from your controller to the hardware synth has to go around Reaper, by routing the MIDI cables either physically or virtually (using MIDI-OX or similar).

When we add MIDI thru, everyone will be happy.

Cool schwa. Is that a 3.0 fix?

My comments above were just me shaking my head as to how that could be overlooked. It's really obvious that the devs are audio guys, not midi guys, as some really, really basic midi stuff got overlooked early on.

Midi thru is about as basic as it gets no?

stupeT
04-14-2009, 08:19 AM
Reaper always streams the MIDI events to the device at the start of the audio block during which they are meant to be played, in other words, there is a slight amount of send-ahead. In most cases that doesn't do much for latency though, if the device needs additional time to process the MIDI events, that's additional latency.

Sounds like a perfect solution. Slightly ahead is exactly what that thingie needs.

Justin
04-14-2009, 08:32 AM
My comments above were just me shaking my head as to how that could be overlooked. It's really obvious that the devs are audio guys, not midi guys, as some really, really basic midi stuff got overlooked early on.

Midi thru is about as basic as it gets no?

Well, it has its uses, however it also will have its limitations -- in a low latency MIDI thru mode, you will not be able to do many of the MIDI processing things you can do now with plug-ins. We valued extreme flexibility over a single special purpose mode that is easily accomplished using other software/hardware, which I don't think can be boiled down to an audio/midi mindset difference.

Lawrence
04-14-2009, 01:14 PM
Well, it has its uses, however it also will have its limitations -- in a low latency MIDI thru mode, you will not be able to do many of the MIDI processing things you can do now with plug-ins. We valued extreme flexibility over a single special purpose mode that is easily accomplished using other software/hardware, which I don't think can be boiled down to an audio/midi mindset difference.

No offense intended Justin - and great and sincere respect to you - but I have no idea what that means. What is the extreme midi flexibility you're talking about with Reaper?

Your comment above suggests that other hosts that have a real midi thru are somehow hampered with midi FX processing? I don't see that in practice at all. I apply midi plugins to realtime streams and the result (the output to hardware) isn't held hostage to the audio buffer latency.

My comment was actually part compliment. It's obvious you guys are audio guys and it shows.

I know it's considered heresy to disagree with the devs but I don't get this one. :)

schwa
04-14-2009, 01:37 PM
With MIDI thru you would not be able to do things like

Keeping MIDI and audio in sync allows creative processing of MIDI and audio together, like triggering a synth with an audio gate, or using audio volume to modulate a cutoff filter.

But whatever. Nobody's saying we shouldn't have a MIDI thru mode.

Evan
04-14-2009, 01:43 PM
Will the very informative first post, (and similar posts) find a way in the Reaper manual, or some sort of accessible online help? It's a shame to see threads like these get lost over time.

Oxytoxine
04-14-2009, 01:49 PM
thanks schwa, excellent summary on the topic!

FWIW, from my experience reaper is in the same "jitter league" as samplitude and cubase when recording sequenced HW synths (but me ignoramus thought that this has to do with clock issues of the interface).

Lawrence
04-14-2009, 01:52 PM
With MIDI thru you would not be able to do things like



But whatever. Nobody's saying we shouldn't have a MIDI thru mode.

Of course not and I wasn't suggesting that was the case. I certainly disagree with the above conclusion about what can't be done while midi thru is also active.

I don't see midi thru as some exclusive mode like you do but just another mult of the incoming midi signal.

But I'll stfu and go away...

Thanks for the info schaw. I didn't mean to be confrontational.

tony_man
04-14-2009, 02:40 PM
Many thanks for the good explanation Schwa..

the MIDI does appear to be tighter on my system..
IE Recording the audio of a midi click track sent from Reaper
(reaper MIDI->Device->Audio->Reaper) is to within 3 MS.


I think you guys may have cracked it...I hope it stays there like that.

oh to have MIDI pass thru (0 Latency)..


Excellent job.. I am enjoying reaper more and more.

Jason Brian Merrill
04-14-2009, 02:56 PM
It's really obvious that the Majority of users did not need this, as some uneeded standard midi stuff got ignored early on.



fixed for accuracy.

Lawrence
04-14-2009, 03:00 PM
fixed for accuracy.


??............... ahhh never mind. I would ask that you not quote me after you change what I say though. You can't "fix" my opinion for accuracy nor can I yours?

Please don't do that. If you do, put it down as your opinion (what it is) and not me supposedly quoting your opinion.

If we all started re-quoting each others opinions "for accuracy" what a mess we'd have huh? :)

Thanks Jason.

_Devin
04-14-2009, 03:44 PM
You can't "fix" my opinion for accuracy nor can I yours?

I am firmly of the opinion that the world is flat, rests on 4 pillars made of god's own granite, and is the unmoving center of the universe, and I ask that none of you violate my right to an opinion by suggesting otherwise. Thx.

Lawrence
04-14-2009, 05:35 PM
I am firmly of the opinion that the world is flat, rests on 4 pillars made of god's own granite, and is the unmoving center of the universe, and I ask that none of you violate my right to an opinion by suggesting otherwise. Thx.

That's so far out of the context of my request to Jason it's quite silly.

jbone1313
04-14-2009, 06:35 PM
Where do you set "low-latency mode"? Or is "low-latency mode" synonymous with a low buffer size on your audio device?

Jason Brian Merrill
04-15-2009, 12:53 AM
??............... ahhh never mind. I would ask that you not quote me after you change what I say though. You can't "fix" my opinion for accuracy nor can I yours?

Please don't do that. If you do, put it down as your opinion (what it is) and not me supposedly quoting your opinion.

If we all started re-quoting each others opinions "for accuracy" what a mess we'd have huh? :)

Thanks Jason.

its not an opinion. you stated as fact, and i corrected you.

what i quoted is EXACTLY what happened, not your version :)


i wont change your quotes anymore however.

stupeT
04-15-2009, 01:06 AM
its not an opinion. you stated as fact, and i corrected you.

what i quoted is EXACTLY what happened, not your version :)


i will continue to change your quotes however.

That is not fair. :)

Jason Brian Merrill
04-15-2009, 01:21 AM
I'm a gay fish

you are?

;)

DarkStar
04-15-2009, 01:24 AM
its not an opinion. you stated as fact, and i corrected you.

what i quoted is EXACTLY what happened, not your version :)


i wont change your quotes anymore however.

Nope, I must disagree.

Quoting people is fine, and removing non-pertinent parts of the quote is also OK.

Changing the quote to say something quite different is not the right way to do things.

IMO, of course.

Jason Brian Merrill
04-15-2009, 01:26 AM
Nope, I must disagree.

Quoting people is fine, and removing non-pertinent parts of the quote is also OK.

Changing the quote to say something quite different is not the right way to do things.

IMO, of course.

i dont disagree that its wrong to do that ;)

and im sorry.

it was a creative way to explain what REALLY happened. ;)

moliere
04-15-2009, 01:52 AM
it was a creative way to explain what REALLY happened. ;)

Its also a very widely accepted way of making a light hearted point in web forums, so people just need to chill out a bit.

Jason Brian Merrill
04-15-2009, 01:53 AM
Its also a very widely accepted way of making a light hearted point in web forums, so people just need to chill out a bit.

+1.........................

brainwreck
04-15-2009, 02:12 AM
Of course not and I wasn't suggesting that was the case. I certainly disagree with the above conclusion about what can't be done while midi thru is also active.

I don't see midi thru as some exclusive mode like you do but just another mult of the incoming midi signal.

But I'll stfu and go away...

Thanks for the info schaw. I didn't mean to be confrontational.

yea, i'm not too smart on the midi stuff, but couldn't 'midi thru' be a separate stream than the midi that needs to sync with audio? i mean, why couldn't reaper pass a midi thru stream without being set to a midi thru mode?

airon
04-15-2009, 02:12 AM
Let's heard the forum combat kids out in to their own play pen. Relax and stay on topic lads.

On topic, I've sent every midi citizen I know to this thread for the information you folks provided. I also agree this information should be part of the manual. Most folks will assume that's where they'll find out about accurate Reaper and midi devices can be. This will help to reassure them, i.e. remove doubt and uncertainty(which I call fear and ignorance) about this subject.

_Devin
04-15-2009, 05:19 AM
Let's herd the forum combat kids out in to their own play pen.

fixed for accuracy :D

Lawrence
04-15-2009, 05:52 AM
its not an opinion. you stated as fact, and i corrected you.

what i quoted is EXACTLY what happened, not your version :)


i wont change your quotes anymore however.

Thanks. My point was that this is *your* opinion about what happened. Unless you took a poll of all of the users of Reaper and the majority told you they didn't need those particular midi features... how else would you know that exactly? You state this as fact as if you asked them.

Opinions abound... we all have them and we often disagree. The opinion part being what you think most people need.

As far as the quotes go... forget my request. I'll just make it a personal habit to "correct for accuracy" all of the bullshit I read here.

So be my guest... have at it. Correct me for accuracy whenever you like... I'm gonna have fun doing the same to people here. Relax and chill right?

Dstruct
04-15-2009, 05:53 AM
Is there a way to find out if the driver is using QPC?

schwa
04-15-2009, 06:41 AM
Is there a way to find out if the driver is using QPC?

Both of the articles in the first post refer to a "MIDITime Utility" which is meant to check your driver against both timers until it perceives a difference. However I don't see an actual link to the utility on either page.

17hex
04-15-2009, 07:53 AM
Schwa and justin

THANK YOU. It's posts like this one and attention like you are giving this topic that give me NO hesitation in recommending Reaper to all of the musicians, producers and "sound guys" I know (many of whom have quite happily taken my advice). Also thank you for the "ReaControlMIDI" in v3beta. I have pull-down lists in Reaper of the patches on my SQR and DX7 (and other MIDI gear) now. Awesome. Oh yeah and inline MIDI editing.. and.. I could go on and on.. ask any of my friends ;-)

Anyway, as for the MIDI through thing, maybe I could suggest a hybrid approach to MIDI through? that's to say, sort of like how you added FX settings to individual takes (which is FANTASTIC), maybe you could have a "ReaFXMIDI" section that could be inserted inline in the MIDI through path. This would give you the opportunity to use a MIDI Arpeggiator or MIDI delay or whatever VST MIDI fx if you wanted, but still use the MIDI through. Obviously both of those plugins would do well to have "host BPM Sync", but that is quite a different thing than ASIO buffer sync... Maybe this is already what you had in mind and I just misunderstood.

I (ReaFXMIDI or not) will be VERY happy when Reaper gets MIDI through. Thank you again.

Dstruct
04-15-2009, 08:17 AM
Both of the articles in the first post refer to a "MIDITime Utility" which is meant to check your driver against both timers until it perceives a difference. However I don't see an actual link to the utility on either page.

Ok, I found the Link.


Now the problem:

Please tell MIDITime which MIDI ports you are using for the loopback test.

Output #1: Microsoft GS Wavetable SW Synth
Output #2: HDSP9632 Midi

Choose output (1 to 2): 2


Input #1: HDSP9632 Midi

Choose input (1 to 1): 1


MIDITime will now send an exciting melody through your loopback cable,
consisting solely of Middle C. (Aren't you glad you aren't the cable?)
This will probably take just a few minutes, but in rare cases it may take
up to an hour. You can use your machine normally during this time, but
if another program tries to open the MIDI port we're using, you may
get an error from that program, and if it sends MIDI data to the port,
MIDITime will get confused.
......

Your interface takes about 0 ms to process
each note.

For best results in Nuendo or Cubase, you will need to set the 'Use
System Timestamp' option under Devices | Device Setup | DirectMusic.
If your MIDI interface doesn't provide its own DirectMusic driver, you
will *have* to use the emulated port that Windows creates; the
Windows MIDI port will give you incorrect timing.


By the way, after 60 seconds, your clocks had drifted apart by
983 microseconds. A man with one watch knows what time it is; a man
with two watches is never sure.

QPC frequency: 2666810000
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: 0 ms (TGT), 0 ms (QPC)
Round trip: -1 ms (TGT), 0 ms (QPC)
Result: QPC.

---------
TGT start: 8354911 QPC start: 22278388223920
TGT sent: 8415411 QPC sent: 22439727609110
TGT in bounds: 0 QPC in bounds: 1
TGT delta: -1 QPC delta: 0
TGT avg: -0.08333 QPC avg: 0
Slow responses: 0 QPC frequency: 2666810000
Run: 60 Drift: -983
Device: HDSP9632 Midi
Driver: 050a
CPU speed: 2666
CPU type: Intel(R) Core(TM)2 CPU 6700 @ 2.66GHz


As far as I know, the RME HDSP WDM driver 3.077 doesn't have DirectMusic MIDI support. This means I need to use the emulated MIDI ports. But REAPER doesn't list them :(


What to do?

schwa
04-15-2009, 08:34 AM
That's a saucy bit of program, isn't it.

I believe the app is simply telling you to use QPC timestamps. Apparently in Cubase you can only use QPC timestamps with DM or emulated DM ports, but in Reaper you can use QPC with the normal Windows MIDI port.

Dstruct
04-15-2009, 08:57 AM
Ok, thanks!

Lawrence
04-15-2009, 09:05 AM
True. Cubase / Nuendo has had a long history of midi timing problems for some users that has only recently started to die down. The system timestamp thing didn't necessarily fix it for everyone and the complaints were still coming in.

I personally didn't have any issues after doing the ignore port filter thing but some users have.

It's a pretty well documented historical issue/problem with that daw. Good to hear that Reaper won't have that problem.

Cool.

Shan
04-17-2009, 03:17 PM
A few words about MIDI timing in Reaper, specifically timing for MIDI coming in to or going out of Reaper...

Thanks for the overview! This sort of thing is definitely of value to be put in the wiki or manual.

Shane

Jason Brian Merrill
04-17-2009, 05:24 PM
what about this situation in reaper:

(i never seemed to have a problem with this in reaper but i have with other programs, but im wondering how it will be affected)

you have an audio/vsti mix running

you are across the room with headphones on at your electronic drumkit

you hit the snare

the information gets read by the brain, sent to the pc through midi, into the audio interface, delayed a bit, gets processed into the vsti, causing a bit more delay, you HEAR it...

now, you would try to get latency down as far as possible

but is reaper "what you hear is what you get" when it comes to midi?

like, will it show up aligned with audio correctly?

jbone1313
04-18-2009, 05:45 AM
what about this situation in reaper:

(i never seemed to have a problem with this in reaper but i have with other programs, but im wondering how it will be affected)

you have an audio/vsti mix running

you are across the room with headphones on at your electronic drumkit

you hit the snare

the information gets read by the brain, sent to the pc through midi, into the audio interface, delayed a bit, gets processed into the vsti, causing a bit more delay, you HEAR it...

now, you would try to get latency down as far as possible

but is reaper "what you hear is what you get" when it comes to midi?

like, will it show up aligned with audio correctly?

Jitter notwithstanding, I *think* Reaper is what you play is what you get. (That's what I prefer.) Ableton is what you hear is what you get.

See also: http://forum.ableton.com/viewtopic.php?f=3&t=106221&p=834240&hilit=latency+should+delay#p834240

Jason Brian Merrill
04-18-2009, 09:03 AM
Jitter notwithstanding, I *think* Reaper is what you play is what you get. (That's what I prefer.) Ableton is what you hear is what you get.

See also: http://forum.ableton.com/viewtopic.php?f=3&t=106221&p=834240&hilit=latency+should+delay#p834240

yeah but that would make everything out of time when you play it back no? Because you are probably internally compensating for latency

jbone1313
04-18-2009, 09:23 AM
yeah but that would make everything out of time when you play it back no?

It sure does. It sucks. That's my whole argument in those threads in the link.

Its amazing how some people don't care about that.

Jason Brian Merrill
04-18-2009, 09:25 AM
It sure does. It sucks. That's my whole argument in those threads in the link.

Its amazing how some people don't care about that.

i mean, what you PLAY is what you get being the one that sucks

HEARING what happens is the verification that you got it right, no? So then, you compensate according to what you HEAR no?

jbone1313
04-19-2009, 05:55 AM
i mean, what you PLAY is what you get being the one that sucks

HEARING what happens is the verification that you got it right, no? So then, you compensate according to what you HEAR no?

I see your point, but I prefer what you "PLAY". However, as I argued in those threads, there is a legitimate use case for for both options.

I'm a drummer, and I was noticing in Ableton Live that all of my recorded beats were late. It was only until I found out that Ableton records what you HEAR, did I determine what the problem was. When banging out beats on a padKontrol, I'm not really doing any mental latency compensation. In fact, I guess I (and others) usually don't mentally compensate for the latency.

Again, a lot of this depends on the user knowing how the DAW handles these things, and adjusting his or her playing accordingly.

And again, those threads are a good (yet long) read, about these matters.

:)

jbone1313
04-19-2009, 06:00 AM
From the Ableton thread:



The below also applies to Audio when recording and monitoring audio with an audio effect on your track.

When record monitoring MIDI software instruments, Ableton Live records MIDI notes and then shifts them back according to system/plugin latency. This is to represent what is heard through the speakers as opposed to what is directly played on the MIDI keyboard or Pad. This is because MIDI notes should be played actually infront of time to manually account for the system latency within Live. Thus on playback Live delays the notes to represent what was heard (when the player was trying to play the output sound in time) rather than what was directly played on the MIDI instrument.

This allows Live to remain constantly in sync with 'live playing' within a latent software environment when monitoring through this environment. Live uses this method which is different to common DAW methods due to Lives 'Live' concept - where juggling plugin and system latency is managed in the whole system on playback AND recording. Standard DAWs use a different management system that does not account for all latencies - although this method does not induce a MIDI recording delay. If you feel it is essential to record softsynth MIDI without Lives MIDI delay you can record into an unmonitored MIDI track and shift that MIDI recording into a softsynth track for playback.

Lawrence
04-19-2009, 07:21 AM
@JBone

I had a similar issue in my studio using real drums triggering midi drums and using electronic trap kits. What I had to do to record - what I hear - (at that exact timing) was to tune the daw recording adjustment to also account for playback system latency. The daw handles the recording latency but I had to account for the playback latency manually... the delays through other things before anyone performing against it actually hears it and reacts.

Loop the output back into the input and measure the difference. If you have a performance room, send your headphone amp output back into the daw from there and measure the difference.

You may have to tune/adjust the daw to account for that. I'm pretty sure Reaper has a recording adjustment for that.

Dstruct
04-29-2009, 06:05 AM
That's a saucy bit of program, isn't it.

I believe the app is simply telling you to use QPC timestamps. Apparently in Cubase you can only use QPC timestamps with DM or emulated DM ports, but in Reaper you can use QPC with the normal Windows MIDI port.

MMh,

this is some new info from RME:

Our 2.x series drivers used TGT. It was based on our own MME MIDI dll handling the MIDI stuff. Our current 3.x series driver is using Microsoft's miniport driver model, therefore we no longer use TGT or QPC - the operating system does, but honestly I do not know at this time which one that would be.

What makes it so complicated is that audio and MIDI must have the same relationship. Our (every) ASIO driver uses timestamps to indicate the sample position. This is based on TGT. So putting MIDI on QPC and the QPC timer drifting - there you have it...
http://rme-audio.de/forum/viewtopic.php?pid=25178#p25178

So what to use in Reaper? Could you implement a loopback test which could test the interface for the best option?

schwa
04-29-2009, 06:26 AM
It would be tricky to build a generic "test your interface" loopback into Reaper, because a user might not have a connection between their MIDI input and outputs (or might have only inputs or only outputs or whatever).

In your case it sounds like you want to let Reaper timestamp MIDI events, though (I think letting Reaper timestamp events would only be the wrong thing to do in odd circumstances).

Dstruct
04-29-2009, 06:37 AM
It would be tricky to build a generic "test your interface" loopback into Reaper, because a user might not have a connection between their MIDI input and outputs (or might have only inputs or only outputs or whatever).

Yeah. But you could tell the user to plug a cable between the input and output (on the same interface) for this ...


In your case it sounds like you want to let Reaper timestamp MIDI events, though (I think letting Reaper timestamp events would only be the wrong thing to do in odd circumstances).

Ok, thanks!

Dstruct
03-13-2010, 01:35 AM
As far as I know, the RME HDSP WDM driver 3.077 doesn't have DirectMusic MIDI support. This means I need to use the emulated MIDI ports. But REAPER doesn't list them :(

Ok, RME HDSP driver (since version 3.066) has DirectMusic MIDI support. But does REAPER make use of it too?

Kundalinguist
03-14-2010, 03:26 PM
RME HDSP here too. About to move that card into a PC. Curious as to know how it will get along with the rest of the class.

eepyikes
03-18-2010, 05:34 PM
So, can someone translate this? If I have an RME FF400 and use its midi in port to trigger vsti's in Reaper on Win7, do I need to let Reaper timestamp it or what? Also isn't there some new timestamping thing in Win7?

Neve
03-18-2010, 05:45 PM
Nope, I must disagree.

Quoting people is fine, and removing non-pertinent parts of the quote is also OK.

Changing the quote to say something quite different is not the right way to do things.

IMO, of course.

Agreed 100%

Subz
03-18-2010, 09:15 PM
Subz Rocks

IMO, of course.


:-P

lol

Mink99
01-02-2015, 08:18 AM
As this is the most accurate topic on reaper midi internals, but from 2009/2010 , is there anything to happen in v5 ?

ELP
01-02-2015, 09:10 AM
Nö, eigentlich unglaublich aber wahr und wenn man ehrlich sein würde, ist´s auch nur ein Spiegelbild von dem was in Dingen Midi bei der Reaper DAW passiert......
denn fast 5 Jahre später, gibt es immer noch keinen Standard Midi-True Modus.
Oder sollte man besser schreiben.. noch nicht einmal einen MIDI True Modus?

EvilDragon
01-02-2015, 09:18 AM
OK, now in English, since this is in English part of the forum. :) Google Translate does it relatively fine, but it's still nice to be on the same page with each other. :)

xpander
01-02-2015, 10:04 AM
ED is right. What is a Standard MIDI True Mode? Are you talking about MIDI Modes, ie. the generic Channel Mode messages (All Sound Off, Reset All Controllers, Local Control, All Notes Off) and/or the actual voice assignment Channel Modes (Omni Off, Omni On, Mono On, Poly On)?

EvilDragon
01-02-2015, 10:06 AM
I think he wanted to say MIDI Thru mode. Schwa was talking about how Reaper should have it (FIVE YEARS AGO) and then nothing happened. Like so many other things in Reaper. :/

xpander
01-02-2015, 11:04 AM
Ah, MIDI Thru, thanks ED.

ELP
01-02-2015, 03:16 PM
Of course, MIDI Thru instead of true was meant.
But I have also written deliberately MIDI True instead of (Thru), as a kind of allusion pun. ;)

And SRY
this is of course the English -language forum, but I had to grade to the topic Reaper and MIDI
no desire for English ... :(

But Evil Dragon has correctly written what I in coarse said.
Thank you ED . :)

And now maybe for the next possible10 years nothing else but video
with a little bit different transitions and or effects in a DAW for musicans. :D

But I am getting happy to surprise a better.... ;)

Mink99
01-03-2015, 06:28 PM
The beginning of this thread is interesting, because it explains the coupling of the audio and midi timing, and why certain things therefore cannot work as expected, eg an early clock or manual compensation of hardware-midi latency larger than the audio latency.

Now, 5 years after this design-decision was made, to have the coupling , maybe this would be the perfect moment to think of an alternative approach.

But still (hardware)midi seems to be not in the focus of the devs and the majority of the users.

ELP
01-04-2015, 07:31 PM
#############################
FIVE YEARS AGO:

schwa:
if you want no MIDI latency while playing live, the MIDI signal from your controller to the hardware synth has to go around Reaper,
by routing the MIDI cables either physically or virtually.
When we add MIDI thru, everyone will be happy.
#############################
Until today nothing is happen...

What is reaper if i have to go around reaper? :D :D

MIDI Thru is extremely important for live playing in sync with that what do you hear from Reaper.
Especially when local is off or slave rack synths are triggered and extremely,extremely,extremely important if also the midihardware audio out is routing to reaper Audio In > DAW Mix >Audio out
Without it is nearly impossible to hear your "sync live playing" in sync.

By the way I go around reaper in fact and use for fast midi routing loopMIDI and sometimes RTPMidi | both Tobias Erichsen
and the genius little MidiTrix of Hermann Seib for routing/patchbay/transform/filter and many other live important things.
But the good intention/way is it certainly not to (must)go around reaper.......

Love developer please, please, please it´s time now to add a MIDI Thru option!
As in any other DAWs holding something up..............

Thank you

EvilDragon
01-05-2015, 12:35 AM
Yeah, schwa. Don't promise something you can't keep. :D 5 years is really too long a wait - and we know you can do it in like 5 minutes. Or hours, tops. :D

Evan
01-05-2015, 04:46 AM
No, please, DO promise stuff you can't keep. Just make sure you keep the promise. :D

alextone
01-07-2015, 05:26 AM
As a suggestion to the devs, jackaudio and jackmidi comes in 3 OS flavours, win, mac, and linux.

The midi is sample accurate.

Maybe have this as an additional audio and midi interface?

Alex.

Mink99
01-10-2015, 04:47 PM
No jack please .

Keep this with linux and that will be ok.
Both Windows (to some extend) and OS X already have an Infrastructure that is able to handle the required features. So there is no need to put something completely overengineered on top of these (as the win and OS X implementations of jack are just wrappers) when there is no real use for the enhanced features, and the core remains.




Just a provide proper implementation based on the os-specific features. There was obviously a design decision some 5 or 8 years ago that has proven to be not fully adequate to the requirements.

Icchan
08-08-2015, 11:15 PM
I ran into this problem just recently with more exotic piece of hardware and routing. I have external piano module that I want to record midi and audio of at the same time, and give myself a possibility to edit the midi afterwards.

All the midi notes that I record are ahead of time no matter how much I try to twiddle with the adjustments of latency compensations. It doesn't matter if just audio is in line with the grid, but I want to see the midi notes in their proper places too.

Right now it's like this:

Follow metronome and play some notes -> audio is recorded Where it lands. MIDI is recorded consistently early.

Play it back -> same result what you played. Quantize it and move it to the grid -> audio is now late if recorded from MIDI track.

Delay MIDI output appropriate amount -> recorded notes are still early if not quantized after recording and now the Audio is early too since it's latency compensated.

Could you make it so that MIDI is put where it's supposed to be after recording (considering all the delays in MIDI separately from AUDIO delay), and when played back, it's delay compensated to earlier time automatically to keep the audio in synch? (like it's currently possible to do)

Mink99
08-08-2015, 11:27 PM
There are things to happen in v5. Let's wait for v14b.

esosotericmetal
08-09-2015, 10:24 AM
Super helpful thread. Always sensed there was something off with MIDI timing in Reaper but just settled on it being one it's weaknesses or the flakiness of midi timing in general. Plus, I usually do most of my midi heavy projects in other DAWs (looking forward to improvements in Reaper that change that though!).

For OSX there is a great piece of free software I use that will let you route midi outside of Reaper: http://notahat.com/midi_patchbay/

Subz
08-09-2015, 10:39 AM
RC14b and midi out clock is still only in sync when starting from very start of project! starting anywhere else is hit and miss (different offset every time)

MPD/MPC external device.

Subz