The No.1 Website for Pro Audio
 All  This Thread  Reviews  Gear Database  Gear for sale     Latest  Trending
Reaper Midi clock delay investigations
Old 28th May 2019
  #1
Gear Guru
 
Muser's Avatar
Reaper Midi clock delay investigations

Reaper Midi clock delay report for Reaper on a Mac OS.

one thing I have encountered twice now, is that the offset for the clock will not tend to go into negative with any real success.
that feature either isn’t working as it’s supposed to or, this assumes that the clock should therefor be sent out earlier by Reaper, in order to make positive offsets work rationally. because it’s possible on the one hand to get to a condition where the clock works with no delay, and when you get it to work that way, it requires a positive offset as you’d expect. but it’s also possible to get into a condition after that, where it fails again, and you once again start to hear a note flam where you can tell the clock has gone later again.

I’ve encountered this when trying to organize tracks within folders, which might have midi only sub tracks, which are children of parent tracks. one logical thing to do at that point is to try to go to midi devices in Reaper and hit Reset All Midi devices button.
if that doesn’t work, then quit Reaper and go to Audio Midi setup and create a new configuration. if that doesn’t work, then disconnect your USB connected devices or power them down and then go to Audio Midi setup and create a new configuration.
then power them up to populate the Audio Midi setup window and then load Reaper and Reset All Midi devices again.

a procedure Procedure for setting up on a Mac OS. this could also relate to other DAW’s and other OS’s but in this case it’s a High Sierra Mac OS procedure.

it’s logical to have devices which you might have setup to receive any midi clock or MTC etc, on one USB hub. assuming the hub is a good enough hub. in this case I used an ORICO 10 port USB 3.0 hub. a reason why this might be a better approach is because the hub 3 independent chips which helps you choose ports in 3 port clusters. so you can rationalize the way you group devices around particular tasks. the chips also seem to handle any stepping down to the USB 2.0 protocol ok. using one USB 3.0 output port which handles the sub clusters, should theoretically be better for maintaining the main port timing and
avoid any OS port shuffling issues,

essentially the logic is to try to avoid as many possible failure modes as possible.

my procedure for entering into as comprehensive a system reset condition as possible went something like this.

once you have chosen the USB port distribution scheme then
first make sure all your main audio applications are set to the same sample rate so that when they launch, they are less likely to try to change any audio driver modes when different audio applications are loaded. this also can apply to the Audio Midi core system settings, if the applications are set to choose the apple OS core Audio.

1: shut down the computer

2: disconnect power to the USB hub

3: restart the computer

4: go to Audio Midi setup and create a new configuration. then delete the old configurations by selecting edit / delete.
now you should have a minimal configuration.

5: quit Audio Midi setup and then restart your computer again

6: launch Audio Midi and make sure the core Audio system in and out are set to the same general sample rate you also
have set for your audio applications.

7: launch Reaper and check the Audio system sample rate is the same as the Audio Midi system.
then go to midi devices in Reaper and hit Reset All Midi devices button.

8: Quit Reaper and Audio Midi and then Restart again

9: load Audio Midi setup and now power up your USB hub. you should see Audio Midi setup begin to populate with the detected devices.
you can use the test button to see you are getting response when you send a note from an external device.

10: load Reaper and once again go to midi devices in Reaper and hit Reset All Midi devices button.


at this point you should be in a relatively initialized state.
now when you start to setup the midi clock out settings, it might be a good idea to make sure that No SSP (song position pointer) is selected.

assuming Reaper once again begins to shift the clock late for any reason, it may be that there is some issue within Reaper which could be addressed by the developers in order to keep this failure mode from happening somehow. even if the failure modes are to do with downstream occurrences which aren’t Reapers fault, they might be able to be addressed by the Reaper developers or Reaper community more thoroughly. which is in the spirit which I composed this report. re post it anywhere if it helps the goal of a non glitchy midi clock output behavior for Reaper.

Note: I ended up with a 23ms offset for midi clock when everything is working fine. this was at 128 sample audio buffer.
changing it to 64 samples required shaving that down to 21ms. this highlights the relationship between Audio sample rate and clock latencies. it indicates that the timing of the midi clocks timing position is designed to always be at some absolute time reference. but .. assuming this is true, at the same time, any audio sample buffer change will impact the offset ratio between the clock position. presumably because a ratio has still changed, against any assumed absolute midi clock position.

I am not sure if setting a negative or positive offset in Reapers preferences, followed by hitting the Reset All Midi devices button, might reset the offset, or embed the offset. it may do it because of some kind of glitch, or by design, or may do it while also keeping the original offset as well. I haven’t tried to test that but it might be an interface failure point. that’s speculation on my part.

I also set up the Reaper preferences to flash the song position display when ever a buffer under run is detected.
that’s a useful indicator to have active because any audio buffer under runs could have an impact on variables in clock timing.

Last edited by Muser; 7th June 2019 at 05:07 AM..
Old 29th May 2019
  #2
Gear Guru
 
Muser's Avatar
low latency nested tracks

because of the way Reaper handles parent and children tracks, I tried to find an efficient way to have one track serve for a number of midi tracks, along with serving a number of independent outputs from a single instrument.

it seemed that placing the instrument in the middle of the structure was the most logical way to make that happen. the Audio breakout lanes are above and the midi tracks below. with two tracks as spacers either side of the instrument.

the Audio tracks and instrument are set for PDC delay compensation set to ON, while the midi tracks are set to PDC OFF. the 8 tracks of midi can then be set to listen on specific inputs and filter down to specific channels if needed.

the Audio output channels from the instrument are just receiving sends from the instrument, which is setup as multi channel output. so when it comes to a parent child structure, the send channels seem to need to be above the instrument. while the midi source feeding that instrument seem to be best served from below that instrument.

because it is only one instrument, it should prove to be efficient for processor load.
you can then also collapse the whole from the the main parent channel for screen space efficiencies.
the output clock seems currently to be stable under this structure.
Attached Thumbnails
Reaper Midi clock delay investigations-rpr-8-trk-instrument.jpg   Reaper Midi clock delay investigations-rpr-collapse-edit.jpg  
Post Reply

Welcome to the Gearslutz Pro Audio Community!

Registration benefits include:
  • The ability to reply to and create new discussions
  • Access to members-only giveaways & competitions
  • Interact with VIP industry experts in our guest Q&As
  • Access to members-only sub forum discussions
  • Access to members-only Chat Room
  • Get INSTANT ACCESS to the world's best private pro audio Classifieds for only USD $20/year
  • Promote your eBay auctions and Reverb.com listings for free
  • Remove this message!
You need an account to post a reply. Create a username and password below and an account will be created and your post entered.


 
 
Slide to join now Processing…
Thread Tools
Search this Thread
Search this Thread:

Advanced Search
Forum Jump
Forum Jump