hey there
tonight i've been setting up modplug to work in conjunction with reaper, as my workflow has me sequencing in modplug and exporting out the stems for arrangement in reaper. i originally set out to find a way to output individual instruments from modplug as audio into reaper in their own separate tracks, but i don't think this is feasible as far as i know.
so instead i created 8 virtual MIDI devices with loopMIDI (https://www.tobias-erichsen.de/software/loopmidi.html) and use MIDI Input / Output on the channels in modplug accordingly. it works as expected, i can sequence in modplug and record the audio over in reaper into their own channels; however the syncing of the notes is not accurate at all. is this just to be expected with midi or is there some hidden feature in the MIDI Input / Output plugin that will sync the two? or perhaps there's someone with reaper knowledge who has had better luck with this. i can't find much about it online. i guess i could go back to just rendering out individual stems, but that kind of defeats the purpose of trying to expedite my workflow. any thoughts are appreciated!
Generally you should try to keep the update period in OpenMPT's sound settings as low as possibile for jitter-free MIDI output - 5ms or lower. OpenMPT's MIDI output is unfortunately not jitter-free in its current design, as audio is always processed in chunks (defined by the latency and update period) and if one such chunk contains more than one tracker tick (which is quite likely to be the case), the MIDI output of those two ticks might be grouped together and be sent at the same time.
I haven't tried it, but maybe Tobybear's MIDIBag (https://web.archive.org/web/20120829123807/http://www.phreque.com/tobybear/midibag.zip) would work better for you, as it would avoid having to go through the real-time MIDI loopback ports: In OpenMPT, you would create VST2NET instances (sending data to localhost), and in Reaper you would add NET2VST instances to reverse the process.
Quote from: Saga Musix on March 01, 2022, 09:12:50
Generally you should try to keep the update period in OpenMPT's sound settings as low as possibile for jitter-free MIDI output - 5ms or lower. OpenMPT's MIDI output is unfortunately not jitter-free in its current design, as audio is always processed in chunks (defined by the latency and update period) and if one such chunk contains more than one tracker tick (which is quite likely to be the case), the MIDI output of those two ticks might be grouped together and be sent at the same time.
I haven't tried it, but maybe Tobybear's MIDIBag (https://web.archive.org/web/20120829123807/http://www.phreque.com/tobybear/midibag.zip) would work better for you, as it would avoid having to go through the real-time MIDI loopback ports: In OpenMPT, you would create VST2NET instances (sending data to localhost), and in Reaper you would add NET2VST instances to reverse the process.
i was searching for MIDIBag all night last night and couldn't find it archived anywhere, awesome. i'm having a go with it, VST2NET on a channel in modplug and NET2VST on a channel with a sampler in reaper, and i can only seem to trigger the sample with the MIDI keyboard in modplug as opposed to sequencing a pattern. i'm not sure if i'm missing a routing option or something in modplug or if this is a reaper-specific issue so i'll keep this here in case anyone has some feedback and i'll update if i figure it out (:
VST2NET registers as a regular effect rather than an instrument plugin, so you will explicitly have to set up an instrument using that plugin and specify a MIDI channel it should send to. Does it work if you do that?
it does indeed work that way! however i'm having the same issue regarding the sync even with the period increment decreased in the soundcard settings. thanks so much for helping set up, i'll continue to tinker further.
Okay, that hints at VST2NET not containing any extra timing information then, I thought that it might be a bit more advanced than a realtime MIDI loopback. But in that case, the same restrictions as for MIDI loopbacks will apply.
Hey, not sure if this is what youre looking for but I use the built in ReaRoute from Reaper and select the ReaRoute Asio Driver within the MPT client.
It's not MIDI, but you could do your work in MPT and then send it to wav or whatever.
I should add you can play VST's on MPT while recording in Reaper at the same time. It also has "Hardware Timing" when you choose the ReaRoute Driver inside of the Soundcards tab in MPT.