Hardware Instrument - MIDI Mis-Aligned when Software Monitoring

Official support for: bitwig.com
Post Reply New Topic
RELATED
PRODUCTS

Post

I've tested the MIDI message alignment when using the Hardware Instrument plugin. Unfortunately, the MIDI will always be late (by an audio roundtrip) when software/input monitoring via Bitwig.

The Hardware Instrument plugin's MIDI is only aligned for direct or hardware monitoring - it's behaving like a plain old MIDI track. On average, MIDI notes complete transmission ~2.63ms ahead of audio at the same position on the arrange timeline. A MOTU MIDI Express 128 was used in this test:

Image


When monitoring via the Hardware Instrument plugin, the MIDI should be sent to the external synth at least one roundtrip earlier, 10.79ms in my case. An offset (+/-) should also be used to make final adjustments for each synth's MIDI response time. If you try to use the Hardware Instrument plugin for monitoring via Bitwig, your audio coming from the external synth will be around one roundtrip late. The higher your roundtrip latency, the later the audio. Increase your buffers, and your synth's audio will be even later.

When direct or hardware monitoring, the MIDI will be roughly on time, but if you try to monitor via the Hardware Instrument plugin, instead of your interface/mixer, that audio will be heard around one roundtrip late.

I discussed some of this in a previous thread.

I also propose adding a switch to the Hardware Instrument plugin to allow switching between software monitoring or direct monitoring. If the MIDI timing was also fixed for both scenarios, this would mean Bitwig handles external synth alignment and workflow better than every other DAW. Couple this with hybrid tracks and you'd have something very special indeed...
Logic X, El Cap 10.11.3, Mini i7, Live, Reaper, Bitwig (demo)

Clicks at +100 samples: 44.1k / 48k (wav)

Post

MIDI clock also has to be sent a roundtrip earlier when monitoring via Bitwig.
Logic X, El Cap 10.11.3, Mini i7, Live, Reaper, Bitwig (demo)

Clicks at +100 samples: 44.1k / 48k (wav)

Post

Yes! Indeed if BitWig can be the first to get this right, I'd buy 2 copies! But no one seems to think about hardware synths anymore it seems. :(

Post

Before I forget…

Software monitored inputs from an external synth should have Recording Latency Compensation switched Off, for software monitored inputs only. If the MIDI is sent by the Hardware Instrument plugin a roundtrip earlier, the audio coming from that external synth will not be late, because it has been pre-scheduled to arrive in-sync with Bitwig's arrange timeline.

However, Direct monitored inputs from external synths should have Recording Latency Compensation switched On, as usual. When direct monitoring, the audio recorded from an external synth will be at least a roundtrip late. PDC delays usually make the recordings even later.

-----

The longest PDC delay should also be added to the recording latency compensation figure (if applied to an input - as above). The recording latency compensation figure should equal one roundtrip +/- recording delay/offset + the longest PDC delay (if any).

This is a very easy fix. It simply involves added 3 integers together and then subtracting that figure from arrange timeline position of newly recorded audio.
Logic X, El Cap 10.11.3, Mini i7, Live, Reaper, Bitwig (demo)

Clicks at +100 samples: 44.1k / 48k (wav)

Post

I've just posted this over on Gearslutz.

I've uploaded an audio clip at the bottom of the post which illustrates the problem with the Hardware Instrument plugin when software monitoring a synth.

The latency fixer workaround is causing unacceptable monitoring latency.

Dan
Logic X, El Cap 10.11.3, Mini i7, Live, Reaper, Bitwig (demo)

Clicks at +100 samples: 44.1k / 48k (wav)

Post

Hey TeePee,

just to let you know that you are heard ;-)

I'll try to discuss this with the devs when an opportunity arrives.
I work on the Midi/Controller/API area with the Team now and already have a list of things that should be improved, one of them being the whole PDC/RLC in combination with Hardware etc.

I'll be sure to point them your way when changes are made.

Cheers,

Tom
Last edited by ThomasHelzle on Thu May 15, 2014 7:40 am, edited 1 time in total.
"Out beyond the ideas of wrongdoing and rightdoing, there is a field. I’ll meet you there." - Rumi
ScreenDream Instagram Mastodon

Post

Good to hear someone is on the case.

Many thanks.


PS. I love Polysynth and hybrid tracks :D.
Logic X, El Cap 10.11.3, Mini i7, Live, Reaper, Bitwig (demo)

Clicks at +100 samples: 44.1k / 48k (wav)

Post

Can you please explain to us how you have your hardware connected to your DAW and how you are monitoring it all in Bitwig. I think therein lies your issue but I could be wrong. I have no issues with monitoring hardware via bitwig with drums playing in bitwig and also recording them.

Post

My setup & routing couldn't be any simpler. Everything works fine in Logic, Reaper and Live.

With lower latency, the problem may not be so noticeable.

I don't have a problem with recordings either - RLC/RDC takes care of that. It's what I'm hearing that is out of sync...


Hardware Instrument track:

Image
(PS: Bitwig thinks my latency is 340 samples @ 48k - I need a recording offset/delay so that I can report my exact latency to Bitwig)


Hardware Instrument device:

Image
(Outputs 1/2, and Inputs 1/2 (from sampler) used for all
audio interfaces that I tested)



Bitwig Click track, with single-sample click at every 16th:

Image


Everything is going to these outputs:

Image


The MIDI test clip: MIDI_Test.mid
Image
(MOTU MIDI Express 128 used in this test)


This click is placed at every 16th on Bitwig's arrange. The same click is loaded onto the external sampler: Single-Sample Click (aka Delta Impulse)


Here's a 16 bar recording of Outputs 1-2, recorded verbatim into Audio Hijack:

Software Monitored Click Test


^^^ The above test recording starts with the latency fixer switched off:

Bars 1-2 - misaligned - latency fixer off
Bars 3-4 - aligned - latency fixer on
Bars 5-6 - misaligned - latency fixer off
Bars 7-8 - aligned - latency fixer on
Bars 9-10 - misaligned - latency fixer off
Bars 11-12 - aligned - latency fixer on
Bars 13-14 - misaligned - latency fixer off
Bars 15-16 - aligned - latency fixer on

Average misalignment (when the latency fixer is switched off) is around 500 samples (10.42ms). My roundtrip latency is exactly 518 samples (10.79ms).

All the best,

dD
Logic X, El Cap 10.11.3, Mini i7, Live, Reaper, Bitwig (demo)

Clicks at +100 samples: 44.1k / 48k (wav)

Post Reply

Return to “Bitwig”