Quote:
Originally Posted by mabian
inability for JS to look ahead; the quantize engine has to look in advance for MIDI events because it could put them earlier than they are in the track.
|
Lookahead is very much possible, you can decide how much delay you want Reaper to compensate for using pdc_delay, this is from the JS Programming reference:
Quote:
Delay Compensation (PDC):
* pdc_delay
Context: @block, @slider
Usage: read-write
The current delay added by the plug-in, in samples. Note that you shouldnt change this too often. This specifies the amount of the delay that should be compensated, however you need to set the pdc_bot_ch and pdc_top_ch below to tell JS which channels should be compensated.
* pdc_bot_ch, pdc_top_ch
Context: @block, @slider
Usage: read-write
The channels that are delayed by pdc_delay. For example:
pdc_bot_ch=0; pdc_top_ch=2; // delays the first two channels (spl0/spl1).
pdc_bot_ch=2; pdc_top_ch=5; // delays channels spl2,spl3, and spl4.
(this is provided so that channels you dont delay can be properly synchronized by the host).
* pdc_midi
Context: @block, @slider
Usage: read-write
If set to 1.0, this will delay compensate MIDI as well as any specified audio channels.
|
Keep in mind that using long lookahead times can create a laggy feel when starting and stopping and that Reapers lookahead is limited to about eight seconds (if I remember correctly). None of that should matter for quantizing though.
As for your other request:
Quote:
Originally Posted by mabian
- inability for JS to put or delay events after the end of current block
|
I'm not sure I understand correctly, but if all you want to do is send an MIDI event later than the current block that is also possible. You'll just have to keep track of when the blocks start and end; and when in the next block you send your event.
But maybe I misunderstood sth?
Hope that helps! Regards,
- Jonas