1. IMPORTANT:
    We launched a new online community and this space is now closed. This community will be available as a read-only resources until further notice.
    JOIN US HERE

Using the Reaktor plug-in to send midi to it's host

Discussion in 'Building With Reaktor' started by rschuller, Jun 10, 2011.

  1. rschuller

    rschuller New Member

    Messages:
    3
    Hi folks,

    I’m trying to use EnergyXT as a host for Reaktor (as VST plugin) – in particular I want a Reaktor based sequencer to output midi to instruments hosted in EnergyXT. The modular view lets me do this fine and I can route the midi out of the Reaktor plugin wherever I want in EnergyXT, and it does “sort of” work, the problem is that the timing isn’t quite right.

    If I add a basic synth to Reaktor plugin ensemble that is being driven from its own sequencer, and output this audio (as well as the midi), the timing of the audio is perfect, but an instrument in EnergyXT will actually appear to play the notes slightly ahead of where they should be, strange I know, but I’m pretty sure this is the case – I can record the midi output of the Reaktor sequencer onto a EnergyXT sequencer track and the notes typically appear a bit ahead of where they should be, the timing offset is random too.

    I’m currently using EnergyXT 2.6 beta (cos 2.5 won’t do midi learn properly), and I’ve just upgraded to Reaktor 5.6 but the same thing happened with 5.5.

    Basically, has anyone used Reaktor as plug-in to drive instrument in a host?

    Any thoughts?

    p.s. the motivation for this setup is to use Reaktor to develop novel sequencers, but use a regular DAW like EnergyXT to do the basic tempo control and integrate VST instruments and do mixing and effects etc. As far as I know I can't integrate VST-instruments into Reaktor.

    p.s.2. If I put my programmer head on, it almost feels like Reaktor generates events and audio ahead of time then buffers the audio out in realtime (which would make sense), but maybe the midi outputs (or specifically, midi outputs to a host), aren't buffered like this and they come out when they're computed.
     
  2. sowari

    sowari Moderator Moderator

    Messages:
    27,759
    the problem is 'plugin latency compensation' which is used by DAWs to make sure MIDI from different Patterns triggers the sounds at the same time.

    this does not work when you are using MIDI Note information from one plugin and are trying to trigger another one.

    so, i don't know if you can some how offset - delay - the playback of the of the target Synth in Energy XT?

    sowari
     
  3. rschuller

    rschuller New Member

    Messages:
    3
    thanks sowari, I'll research 'plugin latency compensation' a bit more, but I guess what you're saying is that this isn't going to work "as-is".

    As a last resort I can always "preview" the whole system with the slightly dodgy timing (and maybe use another plug-in to delay it's output a bit), then when I'm happy enough I can record the midi output of the Reaktor plug-in, then quantize it (and further tweak it by hand), this is pretty much what I would do if I were recording myself - but my timing is worse than Reaktor's :)

    Anyway, I'll do a bit more research and some more hacking... thanks again....
     
  4. rickyeffe

    rickyeffe NI Product Owner

    Messages:
    312
    i always use bidule for such things, as you are going to instanciate both reaktor and vst instrument in the same bidule istance you should not have any delay.

    unfortunately the bidule vst version is not free, and i've never used energyxt so i'm not sure it will fix that

    also you can build a knob at the song clock position in reaktor in order to delay (back and forth) the clock signal, assuming that delay is constant...
     
  5. rschuller

    rschuller New Member

    Messages:
    3
    Hi rickeffe,

    I haven't used bidule before but it might be better than EnergyXT for what i want, I'll give it a try. I did try adding a knob to adjust the clock timing in my Reaktor plug-in, the problem was that the timing was a bit random, not just ahead of time. I'll experiment with bidule and see how it goes - thanks for the advice.

    roy