MIDI delay recording

UHE is now closed. For Technical Support from Ableton, please go here: http://www.ableton.com/support
diverdee
Posts: 164
Joined: Tue May 03, 2005 12:11 am
Location: Bradford - The Armpit of Britain

Post by diverdee » Wed Nov 29, 2006 6:00 pm

O.K. i've checked it again - this time banging the latency on the soundcard up to 25 ms & yes the midi files are not in sync.
after all the palaver the last time which finally led to a fix it is back to behaviour which no one who is interested in tight midi wants!!!!!!!
As stated above why would anyone want the midi tight when they can't hear themselves playing & out of time when it is?
One should play & have the midi notes placed in accordance.
This totally destroys any chance of creating tight drum grooves via midi.
Why revert back to this behaviour?
Basically it appears that the monitoring is heard 'on time' but the notes are then actually played back late (again) so what one hears oneself recording in & what is then actually played back are different.
The workaround is to record with monitor set to off on one track & auto on another & keep the 'off version' if one wants tight timing.
If one needs to do overdubbing or recording of time critical automation events - god help you, it will become somewhat confusing then.

I find it hard to believe that this was actually fixed & then re-broken.
One wants to be able to both hear what one is playing & have the recoded notes match - simple as.
Last edited by diverdee on Wed Nov 29, 2006 6:53 pm, edited 1 time in total.

diverdee
Posts: 164
Joined: Tue May 03, 2005 12:11 am
Location: Bradford - The Armpit of Britain

Post by diverdee » Wed Nov 29, 2006 6:31 pm

13 ms+13 ms latency = 26
Latency compensation on.
Set the track delay on the track with monitor set to auto to a value of +26 & they now match.
Definitely wrong - yet strange as I'm sure that before I had to set the track delay to -26 in order for the tracks to roughly match?
this is with Asio 2 direct monitoring.

diverdee
Posts: 164
Joined: Tue May 03, 2005 12:11 am
Location: Bradford - The Armpit of Britain

Post by diverdee » Wed Nov 29, 2006 7:12 pm

Ignore my above posts :oops:

I was recording midi with a vsti loaded in one track set to auto & a second track set to off, but I wasn't routing the first track to the second.
If I set the midi from in the track set to off to be from the first track everything lines up fine.
Accordingly if I have a vsti on a midi track & route that to two tracks - one set to auto & one set to off they also both line up correctly.
Playing them tightly with the metronome they are both also pretty much perfect.
This is correct (I believe?) & contrary to the pre 5.03b5 behaviour where the above scenario would lead to the auto-monitored clip being delayed.
My fault, I am in a rush as I need to get home for tea - which I will happily do now.

Chris J
Posts: 1353
Joined: Wed Aug 04, 2004 5:24 pm

Post by Chris J » Wed Nov 29, 2006 7:59 pm

Synthbuilder wrote:
Amaury wrote: So, Chris, if you are positive something changed, please tell me what exact version of Live 5 you are talking about, and please quote an Ableton message that states something was fixed.
Part of the story is here:

http://www.ableton.com/forum/viewtopic.php?t=30629

And the change was implemented here:

Change log Live Live 5.0.3b4 - 5.0.3b5

-----------------------------------------------------------------
[01] Bug: MIDI recording with "Off" monitoring
-----------------------------------------------------------------
Platform: All

When recording MIDI in a track with monitoring set to "Off" the final MIDI clip would be compensated also by the Audio input latency.

Status: Fixed
Well done man !
Quad 6600 Intel, AsusP5Q, 2Gb ram, XP sp3, Evolution MK361c & UC33e, Line6 UX8

Hepha Luemp
Posts: 56
Joined: Wed Mar 01, 2006 9:57 am
Location: Oslo, Norway

Post by Hepha Luemp » Wed Nov 29, 2006 9:05 pm

Chris J wrote:
John Daminato wrote:Now Im seriously wondering if this is why when I do vocal layers they don't line up very well? I thought this was due to the lack of experience the vocalist has in the recording studio. HOw many hours have I wasted lining up layers when I could of just used Cubase!
well audio tracks have to be set to off to be at the right place. don't ask me why :roll:

Well, why is it like this, really?



While recording both midi and audio I would - for my own part, like to have it to behave something like this:

I record something, midi or audio, into a song.

When the song is at any one part
- lets say bar 2, third quarternote - as it is heard my me - regardless of the underlying compensation or not compensation
- and I then record an audio sound or a midi part, and it, while I listen to it (and the same time is recording), it is in sync with what I hear, then:

-When I listen to the recording of the audio or midi, I would like the same thing to happen, I want it to still be in sync with the sound of the rest of the recording.


It's really very easy, isn't it?
:roll:

I mean, why would I like the midi or audio to not to be heard at the same place in time as I heared it while I played it?
:?:


I understand that there is many technical issues that probably makes this different when monitor is set to auto, so I have a suggestion:

If this takes to much time and resources to fix for midi and audio, maybe a dialog box could be introduced giving the option of moving the audio and notes to the place where one thought one played them, because that was what one heared.

Something like:

MUSICIAN WARNING!!! MOVE RECORDING AUDIO/MIDI?
Do you want to leave the audio/midi-notes in the wrong place that is technically correct but sound like you can't play at all and are a person just using pre-made loops?

YES (default) / NO

8)

Hepha Luemp
- Just call me Hepha

Chris J
Posts: 1353
Joined: Wed Aug 04, 2004 5:24 pm

Post by Chris J » Wed Nov 29, 2006 9:25 pm

diverdee wrote:Ignore my above posts :oops:

I was recording midi with a vsti loaded in one track set to auto & a second track set to off, but I wasn't routing the first track to the second.
If I set the midi from in the track set to off to be from the first track everything lines up fine.
Accordingly if I have a vsti on a midi track & route that to two tracks - one set to auto & one set to off they also both line up correctly.
Playing them tightly with the metronome they are both also pretty much perfect.
This is correct (I believe?) & contrary to the pre 5.03b5 behaviour where the above scenario would lead to the auto-monitored clip being delayed.
My fault, I am in a rush as I need to get home for tea - which I will happily do now.
What I don't understand is we don't have the same behaviour: whatever I do, auto is never playing back what I record,.

Also if I understand what you say the midi is the same on OFF and AUTO when both tracks are assigned to the same VSTi, but different if one is not assigned: MIDI tracks shouldn't be dependant on the instrument you play at the time of recording, as they'll be wrong if you send to another instrument, no ?
I'm a bit lost here
Quad 6600 Intel, AsusP5Q, 2Gb ram, XP sp3, Evolution MK361c & UC33e, Line6 UX8

diverdee
Posts: 164
Joined: Tue May 03, 2005 12:11 am
Location: Bradford - The Armpit of Britain

Post by diverdee » Wed Nov 29, 2006 9:59 pm

Chris J wrote:Also if I understand what you say the midi is the same on OFF and AUTO when both tracks are assigned to the same VSTi, but different if one is not assigned: MIDI tracks shouldn't be dependant on the instrument you play at the time of recording, as they'll be wrong if you send to another instrument, no ?
I'm a bit lost here
I was thinking about that myself - it certainly needs more investigation for sure.

Synthbuilder
Posts: 511
Joined: Thu Nov 10, 2005 8:42 am
Location: Cumbria, UK
Contact:

Post by Synthbuilder » Thu Nov 30, 2006 9:10 am

I think the key thing is, does Live record what you you hear, or what you play? Personally speaking I think it should be what you play.

However, what you play is lagging behind the true playback timing since Live has to send its audio to the soundcard and the latency that incurs. So the compensation should be only for this. Why this should make a difference in OFF or AUTO I don't know.

But then I'm a quantise to 16ths sort of guy :)

Chris J
Posts: 1353
Joined: Wed Aug 04, 2004 5:24 pm

Post by Chris J » Thu Nov 30, 2006 4:55 pm

Synthbuilder wrote:I think the key thing is, does Live record what you you hear, or what you play? Personally speaking I think it should be what you play.
Not sure I understand : what I hear is what I play, what I play is what I hear. Then when I play back I hear that it's not what I played
Quad 6600 Intel, AsusP5Q, 2Gb ram, XP sp3, Evolution MK361c & UC33e, Line6 UX8

Chris J
Posts: 1353
Joined: Wed Aug 04, 2004 5:24 pm

Post by Chris J » Thu Nov 30, 2006 4:57 pm

Synthbuilder wrote:However, what you play is lagging behind the true playback timing since Live has to send its audio to the soundcard and the latency that incurs. So the compensation should be only for this. Why this should make a difference in OFF or AUTO I don't know.
According to Amaury only OFF is compensated.

honestly, nothing makes sense in all the different and sometimes contradictory explanations Ableton gave about this
Last edited by Chris J on Thu Nov 30, 2006 5:03 pm, edited 1 time in total.
Quad 6600 Intel, AsusP5Q, 2Gb ram, XP sp3, Evolution MK361c & UC33e, Line6 UX8

Chris J
Posts: 1353
Joined: Wed Aug 04, 2004 5:24 pm

Post by Chris J » Thu Nov 30, 2006 4:58 pm

Amaury,
you now have the log that says that it was fixed in L5, what's your next move ?
Quad 6600 Intel, AsusP5Q, 2Gb ram, XP sp3, Evolution MK361c & UC33e, Line6 UX8

Synthbuilder
Posts: 511
Joined: Thu Nov 10, 2005 8:42 am
Location: Cumbria, UK
Contact:

Post by Synthbuilder » Thu Nov 30, 2006 5:25 pm

Chris J wrote: Not sure I understand : what I hear is what I play, what I play is what I hear. Then when I play back I hear that it's not what I played
Yeah, its blooming complex. Took me a while to work out what was going on in those early versions of Live 5. And to be honest I still don't really know what's going on.

When you play a note, the computer takes time to make a sound. This we know. The delay is the usual latency and it depends on settings and stuff.

But if you are playing back some recorded tracks in Live, then these are also delayed. So you as a keyboard player are responding to what you hear from your soundcard, not what Live is actually chucking out to the soundcard. IN other words Live's internal timeline is ahead of what your ears hear.

So any recorded audio is delayed by the latency. Now the question is, does Live record what you play when it actually receives it, or does it assume that what you are hearing from the replayed audio is delayed and subtracts a value to compensate for the delay.

If it records it as it receives it, then this will appear late when you then analyse it. So it has to add some sort of pre-delay to cover up for that fact that you are playing to music that has been delayed.

ilia
Posts: 787
Joined: Fri Apr 16, 2004 4:12 am
Location: New York
Contact:

Post by ilia » Thu Nov 30, 2006 6:11 pm

Synthbuilder wrote:
Chris J wrote: Not sure I understand : what I hear is what I play, what I play is what I hear. Then when I play back I hear that it's not what I played
Yeah, its blooming complex. Took me a while to work out what was going on in those early versions of Live 5. And to be honest I still don't really know what's going on.

When you play a note, the computer takes time to make a sound. This we know. The delay is the usual latency and it depends on settings and stuff.

But if you are playing back some recorded tracks in Live, then these are also delayed. So you as a keyboard player are responding to what you hear from your soundcard, not what Live is actually chucking out to the soundcard. IN other words Live's internal timeline is ahead of what your ears hear.

So any recorded audio is delayed by the latency. Now the question is, does Live record what you play when it actually receives it, or does it assume that what you are hearing from the replayed audio is delayed and subtracts a value to compensate for the delay.

If it records it as it receives it, then this will appear late when you then analyse it. So it has to add some sort of pre-delay to cover up for that fact that you are playing to music that has been delayed.
yes, that's essentially it.
and this initial delay is also dependent on VSTis/plugins used, because VSTs in live incur latency in addition to latencies associated with audio buffer. And on playback, this delay may or may not be present, depending on whether delay comensation is turned on, which complicated matters further. I also recall someone arguing in the first round of this debate that some players will intuitively compensate for short latencies, playing a little ahead of the beat to get the sounds on time. Not sure if that's true though.

I think the bottom line is that a good player should be able to lay down tracks alongside each other and on playback they should remain in sync. This is the case in other DAWs and it should be the case in Live.

John Daminato
Posts: 103
Joined: Sun Jan 19, 2003 6:59 pm
Location: chicago
Contact:

Post by John Daminato » Thu Nov 30, 2006 6:29 pm

HOw do other programs do this properly? Its never going to be perfect. It takes 11ms for the brain to make a decision after the information enters. 11ms is about the sume of what asio drivers offer.


Chris if you know exactly where just one note should be on the grid, you should just be able to line that note up and they all will be in the correct place. In theory :wink:
"Everybody is right in some way"
http://WWW.JOHNDAMINATO.COM http://www.myspace.com/daminato
i920 radiator cooled, hyper threaded, 7gigs-1333ram, Wndws 7,RMEfireface,UAD, bla bla

riverside
Posts: 7
Joined: Wed Dec 29, 2004 5:28 am
Location: Cowtown, Texas
Contact:

Post by riverside » Sat Dec 02, 2006 5:38 am

Hi all,

I've been following this topic with interest and I have a couple of interesting observations (I hope)! First, let me say just to get your attention that I was able (eventually) to get the timing difference down to 1.5 ms.

I performed some tests exactly as dr. wackler (page 1 of this thread) with a few additional steps.

Originally, I performed one test just as dr. wackler but I wanted to measure the difference in timing. For this I used the time ruler at the bottom of the arrange view. (I made my recordings in the arrange view). You can zoom down to the 1-ms level to check your timing difference. This helps you also if you want to simply adjust the track delays. After the test I had a 23- ms difference. I checked my Live Preference's latency settings and sure enough my input latency was set to 23 ms. (512 samples). The reason I checked this was that I had read in another thread (maybe this one?) that Live's midi latency was tied to it's audio latency. So I decided to lower the input latency as far as I could which was about 12 ms (more on this later *) and I did the test again. On this test I got an 8-ms difference. (not sure why I got a 4 ms discrepancy but still more accurate). I also tried a test with an input latency of 40 ms and the difference came out to about 32 ms.

It seems that when Live is in "auto" or "in" monitor mode mode it is recording what you hear and for me this works out OK as long as I have low latency settings. But wait ..... there's more!

When I got on this computer to post my findings (the computer I used for the tests isn't online) I decided I would open Live (on this computer which has Live but isn't hooked up to all my other gear) to look at the Live preferences so I could accurately describe my findings and use the right terminology. But I noticed something interesting .... my input latency was set to 0 (zero). I found this puzzling since I had not been able to get the input latency lower than 11.8 ms on my "test" computer. I also noticed I had no input device selected. So I went back and set my test computer to "no device" for input in Live Preferences and I was able to get my my input latency down to "zero". I set my output to "built in" just to check and did a new test. The difference was 1.5 ms! Pretty good!

I re-read dr. wackler's post and noticed that he said he had no midi interface connected. Even though I was playing midi from my computer keyboard (just like his tests) I did have an interface connected (Edirol UA-20) though I did have "computer keyboard" selected in the midi tracks input select field. Either way if I went into Live Preferences and selected "no device" for input I was able to get very low (1.5 ms) difference.

*It seems that when you are adjusting your Live Preference's latency settings, Live automatically factors in your midi interfaces's latency settings ..... EVEN when you don't have the interface selected as a midi input (I guess this makes sense especially if your midi interface is also your audio interface!)

To me it does make sense (if you have low latency settings) for Live to record what you hear but if the latency is high than it would make better sense for live to record what you play. So it seems you need to have a very good midi interface and low latency settings (a 7200 rpm external drive would help here so that you don't get clicks at low latency settings) to be able to play and record with confidence.

Not saying I've got this figured out and I still have some experimenting to do but it would be cool to see some of you run some more tests based on some of my findings.

Thanks to all!
G4 Flat Screen iMac, 1.25 Gig Ram, Super Drive, Glyph GT050, Live 4, Spark ME, M-Audio Ozone, Edirol UA-20, Canopus Video Interface

Locked