Avid Pro Audio Community

Avid Pro Audio Community

How to Join & Post  •  Community Terms of Use  •  Help Us Help You

Knowledge Base Search  •  Community Search  •  Learn & Support


Avid Home Page

Go Back   Avid Pro Audio Community > Legacy Products > Pro Tools 10

Reply
 
Thread Tools Search this Thread Display Modes
  #1  
Old 07-22-2013, 10:40 PM
DAWgEAR's Avatar
DAWgEAR DAWgEAR is offline
Member
 
Join Date: Oct 2012
Location: California, USA
Posts: 332
Default MIDI timing / recording delays with Delay Compensation

I have seen a number of recent threads about MIDI timing and others about recording delays with Delay Compensation checked in the Options menu. The latter seems to primarily, but maybe not exclusively, affect PT 11 vanilla with third party interfaces.

As a result, I decided to run some tests after noticing strange delays in a 10.3.6 session involving virtual instruments fed from MIDI tracks and plugins with delay elsewhere in the session. I am on Windows 8 and PT HD Native PCIe+Omni. I have PT HD 10.3.6 and PT HD 11.0.1 installed, but I have only tested PT 10.3.6 thus far. [EDIT: I have since tested PT 11.0.1 and it does not seem to exhibit this behavior on my system; see post #3.]

The next post after this one contains a replicable procedure for anyone who wishes to see if they can confirm. The next post is long, but the test does not take that long to perform.

I am hoping that this is user error/confusion about how delay compensation is supposed to work on my part. Please look over my findings below and let me know if it sounds like that is the case. If not, please consider trying to replicate my results using the next post.

On the other hand, my findings contain similarities to what others have described.

The synopsis of my findings:

Finding 1: If Delay Compensation is CHECKED, the timing of a MIDI clip is exact if it is on an instrument track, but it is slightly late if it is on a MIDI track feeding an instrument track. This is with no plugins in the session to compensate for.

Finding 2: If Delay Compensation is UNCHECKED, the timing of a MIDI clip is the same regardless of whether it is on an instrument track or on a MIDI track feeding an instrument track. This is with no plugins in the session to compensate for.

Finding 3: With delay-creating plugins elsewhere in the session, if Delay Compensation is UNCHECKED, the timing of a MIDI clip is the same regardless of whether it is on an instrument track or on a MIDI track feeding an instrument track.

Finding 4: With delay-creating plugins elsewhere in the session, if Delay Compensation is CHECKED, the timing of a MIDI clip is late (by approximately the plugin delay) if it is on a MIDI track feeding an instrument track and the timing is accurate if it is on an instrument track.

If this is user error/confusion on my part, it suggests that it is not a good practice to have MIDI tracks containing clips that feed an instrument track. This is how I have been working; perhaps I should use only instrument tracks?

Your thoughts would be much appreciated!
__________________
Pro Tools HD Native 2019.10 | HD Omni | iMac Pro: 10-Core 3.0 GHZ - 64 GB - 2 TB - Vega 56 | Sonnet Echo Express SE II for PT HD Native PCIe and UAD 2 Quad PCIe card | Pro Tools Dock

Last edited by DAWgEAR; 07-23-2013 at 10:55 AM. Reason: Updated PT 11.0.1 results
Reply With Quote
  #2  
Old 07-22-2013, 10:45 PM
DAWgEAR's Avatar
DAWgEAR DAWgEAR is offline
Member
 
Join Date: Oct 2012
Location: California, USA
Posts: 332
Default Re: MIDI timing / recording delays with Delay Compensation

The procedure I used:

Create new empty session (not from template): 96k, 32 bit float, interleaved, Set tempo to 120bpm. In Playback Engine dialog, the buffer was 1024 samples and delay compensation was set at maximum.

Test #1

Initially, CHECK Options Menu > Delay Compensation (and make sure Delay compensation is enabled in the Playback Engine Dialog and set it to maximum or at least a few thousand samples)

Create a mono Instrument track (Inst 1) and load Xpand 2. In Xpand2, load the patch Preset Bank 26 (Drums)>Patch +34 Hi Hats Menu into MIDI part A on MIDI channel 1.

On the instrument track create a one or two bar long MIDI clip with MIDI notes on each quarter note on pitch C1 at velocity 127.

Route the output of the instrument track to an available mono bus.

Create a new mono audio track (Audio 1) and select as its input the bus that the instrument track is routed to. Record arm Audio 1.

Record a bar or two of the hi hat on Audio 1.

After recording, make sure each of the two tracks' outputs are routed to your main monitor outs.

Play both tracks. There should be no audible flamming. You can also zoom horizontally in at the sample level and also vertically on the waveform to make sure each recorded hit lines up on each quarter note. (You might want to create a memory location/marker here because you will keep zooming back to this spot to measure samples with the selector tool in the subsequent tests).

Now create a MIDI track (MIDI 1), route its output to the instrument track Inst 1 on channel 1, and drag the MIDI clip to the new MIDI track. The difference now is that instead of the MIDI clip being on the instrument track Inst 1, it is on a MIDI track routed to Inst 1.

Make sure the outputs of Inst 1 and Audio 1 are routed to your main monitor outs. Play both tracks.

It sounds different; not flamming, but there is an audible phase difference. If you drag the MIDI clip back and forth between the MIDI 1 and Inst 1 tracks, you can hear the difference.

Confirm by again by routing the output of the instrument track Inst 1 to an available mono bus and creating another new mono audio track (Audio 2) and select as its input the bus that the instrument track is routed to. Record arm Audio 2. Record two bars of the hi hat on Audio 2.

Zoom in and compare the waveforms on Audio 1 and Audio 2. On my system, the latter is 7 samples later. This confirms the audible phase difference.

======

Finding 1: If Delay Compensation is CHECKED, the timing of a MIDI clip is exact if it is on an instrument track, but it is slightly late if it is on a MIDI track feeding an instrument track. This is with no plugins in the session to compensate for.

=======

Test #2

Now UNcheck Options Menu > Delay Compensation.

Create two more mono audio tracks, Audio 3 and Audio 4 and repeat all of the above by recording and then zooming in to the sample level. This time, the recorded audio will align perfectly regardless of whether the MIDI clip was on the instrument track or on a MIDI track feeding the instrument track.


======

Finding 2: If Delay Compensation is UNCHECKED, the timing of a MIDI clip is the same regardless of whether it is on an instrument track or on a MIDI track feeding an instrument track. This is with no plugins in the session to compensate for.

======

Test #3

Now create 5 more new mono audio tracks (Audio 5 - Audio 9).

On the last one, Audio 9, insert a plugin that has a noticeable delay. I used Maxim with a delay of 2048 samples and I stacked two of these on Audio 9 for a total delay of 4096 samples. Antares Autotune or Waves Lin EQ or various UAD plugins will also get you a significant delay (avoid UAD Precision Multiband -- its delay is too large to be compensated). There is no audio on this track; it just has some plugins inserted that create delay.

Make sure Options Menu > Delay Compensation is still UNchecked.

Drag your MIDI clip to Inst 1 and play Inst 1 and Audio 1 together through your main monitor outputs. There should be no flamming. If you wish, you can confirm by recording to Audio 5 and zooming as you did above.

Next, drag your MIDI clip to MIDI 1 which is feeding Inst 1. Again, play Inst 1 and Audio 1 together through your main monitor outputs. There should be no flamming. If you wish, you can confirm by recording to Audio 6 and zooming as you did above.

======

Finding 3: With delay-creating plugins elsewhere in the session, if Delay Compensation is UNCHECKED, the timing of a MIDI clip is the same regardless of whether it is on an instrument track or on a MIDI track feeding an instrument track.

=======

Test #4

Now, CHECK Options Menu > Delay Compensation.

Drag your MIDI clip to Inst 1 and play Inst 1 and Audio 1 together through your main monitor outputs. There should be no flamming. If you wish, you can confirm by recording to Audio 7 and zooming as you did above.

FINALLY ... drag your MIDI clip to MIDI 1 which is feeding Inst 1. Again, play Inst 1 and Audio 1 together through your main monitor outputs. The flamming should be very audible. If you wish, you can confirm by recording to Audio 8 and zooming and measuring with the selector tool as you did above. With the two instances of Maxim on track 9, I measure the redording on Audio 8 as 4103 samples late. This is with Delay Compensation checked!

====

Finding 4: With delay-creating plugins elsewhere in the session, if Delay Compensation is CHECKED, the timing of a MIDI clip is late (by approximately the plugin delay) if it is on a MIDI track feeding an instrument track and the timing is accurate if it is on an instrument track.

====

In summary, if you followed this test, the audio on tracks Audio 1 and Audio 3 - Audio 7 will be sample accurate in alignment and not flam against Inst 1 when played together. The audio on Audio 2 will be off by a few samples and the audio on Audio 8 will be late by almost (but not exactly) the delay from the plugin(s) on Audio 9.

I can provide a copy of the session if anyone wants it.
__________________
Pro Tools HD Native 2019.10 | HD Omni | iMac Pro: 10-Core 3.0 GHZ - 64 GB - 2 TB - Vega 56 | Sonnet Echo Express SE II for PT HD Native PCIe and UAD 2 Quad PCIe card | Pro Tools Dock
Reply With Quote
  #3  
Old 07-23-2013, 01:32 AM
DAWgEAR's Avatar
DAWgEAR DAWgEAR is offline
Member
 
Join Date: Oct 2012
Location: California, USA
Posts: 332
Default Re: MIDI timing / recording delays with Delay Compensation

I ran these tests in PT HD 11.0.1 and I am getting different results.

With Delay Compensation checked, everything lines up regardless of where the MIDI clip is and regardless of whether there are plugins with delay present or not.

With Delay Compensation unchecked, I am getting a delay of exactly 4096 samples all the time, meaning with no instances of Maxim, two instances, and even three, which is puzzling.

What I described above seems to be limited to PT HD 10.3.6. PT 11.0.1 is behaving more as I would expect.

I'm puzzled.
__________________
Pro Tools HD Native 2019.10 | HD Omni | iMac Pro: 10-Core 3.0 GHZ - 64 GB - 2 TB - Vega 56 | Sonnet Echo Express SE II for PT HD Native PCIe and UAD 2 Quad PCIe card | Pro Tools Dock
Reply With Quote
  #4  
Old 07-23-2013, 08:50 AM
nst7 nst7 is offline
Member
 
Join Date: Oct 2008
Location: Cincinnati OH
Posts: 9,780
Default Re: MIDI timing / recording delays with Delay Compensation

Regarding the procedure of using a Midi track to feed an Instrument track, this seems unnecessary. An instrument track is just a combination of a midi track and an aux track. So what you're doing is taking a midi track and feeding it into a midi track, which seems like a not efficient workflow.

If you want to use midi tracks on their own, just feed them to aux tracks (where you insert your instrument), and eliminate an unneeded step.


Whether or not it's causing delay comp problems, it would at least simplify your workflow.

If you could tell us exactly what you're doing with midi, maybe some people could make suggestions.
Reply With Quote
  #5  
Old 07-23-2013, 10:38 AM
DAWgEAR's Avatar
DAWgEAR DAWgEAR is offline
Member
 
Join Date: Oct 2012
Location: California, USA
Posts: 332
Default Re: MIDI timing / recording delays with Delay Compensation

Thanks, nst7.

Assuming I understood your suggestion correctly, I replaced the instrument track with an aux input track, inserted the virtual instrument there, and fed this using another MIDI track.

All of the results were exactly the same as I described above. Of course, I could only test 4 of the cases, but, in particular, with Delay Compensation checked, the record timing is delayed 7 samples without delay causing plugins and 4103 samples with two Maxims stacked elsewhere in the session.

As to why I am attempting to use such a workflow, here are some scenarios. If there are alternate ways of working of which I am unaware, I would appreciate any suggestions.

Scenario 1

With drums, I like to keep each kit piece visually separate in the MIDI Editor window for editing purposes, so I have a MIDI track for kick, one for snare, one for hat, etc.

In other DAWs (REAPER, Cubase, Logic pre-2002), I have kept all MIDI drum data on one track, but separated them by channel so that I can filter the display by channel (or assign colors to notes by channel) as an alternate way to keep the data visually organized. To the best of my knowledge, this cannot be done in PT, in part because tracks in PT only recognize one MIDI channel.

Also, PT does not (yet, hopefully) have any way to create drum maps and/or assign text labels to the piano keys in the MIDI editor. In Cubase, and to some extent in REAPER, it is possible to assign text labels and to rearrange the MIDI pitches (with a drum map) to display all hat articulations together on adjacent lanes, all tom articulations together on adjacent lanes, etc. For samplers like Superior Drummer, the articulations are spread all over the piano keyboard, so being able to rearrange them visually assists greatly in editing complex drum patterns.

Scenario 2

I am relying on Vienna Ensemble Pro a lot. Not so much in PT 10, but I am preparing for the transition to PT 11 so I an trying to plan my sessions so they can go back and forth between PT 10 and PT 11.

Suppose I load 8 instantiations of a VST-only synth or, in PT 11, a synth that is not yet AAX 64 ready into one instance of Vienna Ensemble Pro. It makes sense to address this one instance from 8 different MIDI tracks.

I suppose that an alternative would be to create separate VEP instances for each part ... but that would get unwieldy managing all the separate VEP instance windows in a complex session.

Scenario 3

Similar to scenario 2 but, even without VEP, this workflow makes sense with a multitimbral synth such as Kontakt, Stylus RMX, UVI Workstation, Omnisphere: load one instance of the synth on an instrument or aux track and address the different channels via different MIDI tracks.

Scenario 4

Comping MIDI parts. PT does not have a visual way to comp from MIDI playlists the way you can from audio playlists (i.e., there is no playlist view for MIDI or instrument tracks). I work around this by keeping my alternate MIDI "playlists" on separate MIDI tracks that I can mute/solo/chop up and ultimately organize on a "final comp" track. In defense of using an instrument as opposed to an aux track, with an instrument track, I can arrange the final comped part on the actual instrument track, and then delete all the other MIDI tracks when I am done.

I hope that sheds some light on why I am attempting to work this way.

To reiterate, this problem seems to be specific to PT 10.3.6. I have not tested in earlier versions of PT 10, but the timing issues were very audible on a recent project (which is why I tested) and I do not recall such behavior on PT 10.3.4, for example (although it could have been there; I am relatively new to PT). When I finally move to PT 11 with no looking back (with Waves, UAD, Native Instruments, Fxpansion, Slate, Spectrasonics AAX 64 compatible), this will be a non-issue for me (but it may be relevant to those staying with 10.3.6 or needing to go back and forth).

It is possible that it is due to something specific to my system or some recent change I made. I am hoping some others can run this test or a similar one to confirm or refute.
__________________
Pro Tools HD Native 2019.10 | HD Omni | iMac Pro: 10-Core 3.0 GHZ - 64 GB - 2 TB - Vega 56 | Sonnet Echo Express SE II for PT HD Native PCIe and UAD 2 Quad PCIe card | Pro Tools Dock
Reply With Quote
  #6  
Old 07-23-2013, 11:28 AM
jasonthurley's Avatar
jasonthurley jasonthurley is offline
Member
 
Join Date: Aug 2010
Location: New York NY
Posts: 1,451
Default Re: MIDI timing / recording delays with Delay Compensation

Quote:
Originally Posted by nst7 View Post
Regarding the procedure of using a Midi track to feed an Instrument track, this seems unnecessary.
Not if you want a midi track to feed different instrument tracks... I usually track midi and then send it to one of several VI tracks I have so the midi is now triggering many VI's and not just 1.
__________________
-Systems Engineer, Systems and Sound Designer, Recording and Mixing Engineer
Reply With Quote
  #7  
Old 07-23-2013, 12:07 PM
DAWgEAR's Avatar
DAWgEAR DAWgEAR is offline
Member
 
Join Date: Oct 2012
Location: California, USA
Posts: 332
Default Re: MIDI timing / recording delays with Delay Compensation

Mystery somewhat solved.

Thanks to AJ from this thread,

http://duc.avid.com/showthread.php?t=342215 ,

in PT 10.3.6 if you go to the MIDI tab of the Setup Menu>Preferences dialog, locate the section Delay Compensation for External Devices, and uncheck the second and third boxes, and click OK, the anomalies I have been reporting disappear. Hurray!

[EDIT: this preference is saved on a per-session basis, i.e. not globally and not if you do not save the session]

Questions:

Why is this preference even affecting what I am doing? I am not using any external MIDI devices and do not have any installed. All I have is a keyboard controller; no external MIDI sound modules. Could it be that the programmers envision that the only use for MIDI tracks in a session is to feed external instruments? What about the real-world scenarios I and jasonthurley mentioned above?

Further, why is choosing Delay Compensation having the opposite effect -- more delay?

Finally, why is this not a global preference?

__________________
Pro Tools HD Native 2019.10 | HD Omni | iMac Pro: 10-Core 3.0 GHZ - 64 GB - 2 TB - Vega 56 | Sonnet Echo Express SE II for PT HD Native PCIe and UAD 2 Quad PCIe card | Pro Tools Dock
Reply With Quote
  #8  
Old 07-23-2013, 12:25 PM
nst7 nst7 is offline
Member
 
Join Date: Oct 2008
Location: Cincinnati OH
Posts: 9,780
Default Re: MIDI timing / recording delays with Delay Compensation

Jason, I don't quite understand what you described there.

In both your case and Dawgear's case, you are explaining the benefit of using multiple midi tracks, which I totally understand.

Dawgear, in your case it makes sense to use them as playlists and then copy it to the instrument track. But if this is causing any issues, you could route the midi to an aux track with the instrument inserted on that. When finished, you then create an instrument track with the copied midi info and move the instrument to that track.

I'm just pointing out that with an instrument track, you are routing a midi track to a midi track to an aux track. It may be that this is causing issues, and anything you do with midi tracks can instead go straight to an aux track with your instrument inserted on that.
Reply With Quote
  #9  
Old 07-23-2013, 01:11 PM
DAWgEAR's Avatar
DAWgEAR DAWgEAR is offline
Member
 
Join Date: Oct 2012
Location: California, USA
Posts: 332
Default Re: MIDI timing / recording delays with Delay Compensation

nst7, thanks. I totally get your point that there is a certain redundancy in using separate MIDI tracks with an instrument track as opposed to an aux track since the instrument track already contains a MIDI track. And that this is a separate issue from the benefits of separate and multiple MIDI tracks which I believe we all acknowledge.

Going forward, I will try to use aux tracks as you suggest.

Having said that, according to my experiences, the timing issue appears to be specific to PT 10.3.6 (and possibly earlier versions of PT 10) and, personal preferences or efficiency considerations aside, it does not matter if one uses an instrument or aux track.

Further, this issue hinges on whether those boxes in the 10.3.6 preferences are checked. Those checkboxes exist in PT 11.0.1, but the timing issue does not appear to be present in the sense that it is not influenced by those boxes, at least not for purposes of the tests I am running.
__________________
Pro Tools HD Native 2019.10 | HD Omni | iMac Pro: 10-Core 3.0 GHZ - 64 GB - 2 TB - Vega 56 | Sonnet Echo Express SE II for PT HD Native PCIe and UAD 2 Quad PCIe card | Pro Tools Dock
Reply With Quote
  #10  
Old 07-24-2013, 03:04 AM
nigelpry's Avatar
nigelpry nigelpry is offline
Member
 
Join Date: Dec 2008
Location: Home
Posts: 2,154
Default Re: MIDI timing / recording delays with Delay Compensation

If I put, say, Kontakt on an instrument track (not PT11 yet of course), then the MIDI is on that track and the audio comes out of it. I get that an instrument tracks is basically a combined MIDI+Aux track. I set the instrument track up so that the MIDI on the instrument track is triggered MIDI channel 1 sounds in Kontakt.

I then have more MIDI tracks to trigger different Kontakt patches on different MIDI channels of the same Kontakt instance, and have aux tracks for the audio of those patches to come out separately, so I can process each sound's audio separately.

So if I have, say, Kontakt providing 8 sounds on 8 different MIDI channels, I have ...
1x Instrument Track
7x MIDI tracks
7x Aux tracks
=15 in total.

I know its only a small difference, but if I place Kontakt on a Aux track and use a MIDI track to trigger MIDI Channel 1, then I will have 16 tracks instead of 15.

I've always thought ... well, what's the point in taking up arrange and mix window real estate unnecessarily ... and if I throw in Omnisphere as well? ... and for non-multi-timbral VI it would be a 2:1 ratio of extra tracks if I use MIDI+Aux for each VI.

Ultimately keeping the track count lower makes the session more intuitive for me.

So I moved to using a mix of instrument, MIDI and Aux tracks pretty much as soon as instrument tracks were introduced .... PT8 if memory serves.

I have been toying for a while with trying to set up multiple instrument tracks to contain the MIDI data and receive the audio from extra multi-timbral VI synth channels, without hosting an instrument themselves, as this would reduce track count considerably, but I've not got around to trying it yet, and I'm not sure if it is even possible with the way PT routes things.

This thread has given me the nudge to have a look today though, and I'll report back.
__________________
Mac Pro 2009 with 2010 firmware, 12-Core 3.46ghz, 64gb RAM & working Thunderbolt, OS 10.13.6 and Windows 10
Macbook Pro 2011 17", 2.2ghz i7, 16gb RAM OS 10.12.6
Digi 003 Console, Focusrite Octopre and MOTU Traveler for extra analog-ADAT conversion, UAD Apollo Quad with Thunderbolt card, Apollo Twin mk11 and pci-e Octo, Adam A77X monitors.
Pro Tools 2018, Media Composer 8.9, Sibelius 8.7, Cubase Pro 10, Wavelab Pro 9.5, Logic Pro X, Mainstage 3.
Various apps, soft synths, FX plugins.
Plenty of hardware synths, rack gear, microphones etc.
And then there's the studio ;-)
Reply With Quote
Reply

Thread Tools Search this Thread
Search this Thread:

Advanced Search
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump

Similar Threads
Thread Thread Starter Forum Replies Last Post
PT 10 and Delay Compensation while recording tekis Pro Tools 10 7 03-10-2014 08:09 PM
Recording and delay compensation Paolino_o Pro Tools TDM Systems (Mac) 2 04-13-2011 01:48 PM
Delay Compensation Timing problems with RTAS plugs Kourquie Pro Tools TDM Systems (Mac) 2 07-22-2007 04:50 AM
MIDI Timing, Buffer Delays etc : What We All Should Know Zep Dude Pro Tools TDM Systems (Mac) 3 05-26-2007 06:24 AM
Rtas / midi timing compensation bluesna 003, Mbox 2, Digi 002, original Mbox, Digi 001 (Mac) 1 03-27-2006 08:00 PM


All times are GMT -7. The time now is 06:58 AM.


Powered by: vBulletin, Copyright ©2000 - 2008, Jelsoft Enterprises Limited. Forum Hosted By: URLJet.com