Yahoo Groups archive

Emu XL-7 & MP-7 User's Group

Index last updated: 2026-04-29 00:09 UTC

Message

Re: [xl7] Sequencer timing: here comes the science

2002-12-07 by drK

On 12/7/02 12:20 AM, "David DeciBel" <spec@...> wrote:

> My question is this:  Are these signifigant problems?  I haven't had a
> noticable problem yet.  But does that mean it's not there?  I don't know.
> 
> Latency is somthing that is there an electronics period, right?  What is
> signifigant latency?

Latency is time delay between when something is supposed to happen and
something actually does.

Latency is a problem in a number of ways.  if the latency is very long (>
20-30 milliseconds) the later sound events (like notes) will be perceived as
separate events and not part of the same one as it should have been.  So for
example a chord playing with one of the notes 50 milliseconds late will not
sound like the same chord as all the notes playing on time.  below around
20-30 milliseconds different psychoacoustics come into play which leads to
problem 2:

Flamming.  When one or more notes are played close together but not
precisely together they will sound like a single perceived event but the
phase-differences will cause the sound to change, sometimes dramatically.
(phase is nothing more than a way of stating a time difference between two
sounds at the same frequency).  Flamming can be an interesting effect in its
own right but one that you should choose to have occur and not the gear on
its own.  As the time difference (caused by the latency) becomes less and
less the sound will become less "flammed" and more like an enriched sound.
The classic example of this problem occurs in modern dance music production
where beat timing is critical between the drum hits.  layering drum sounds
to make them more powerful or interesting and then having one of the sounds
flam another is normally not a good thing.

So far these problems can actually be compensated for in a sequencer by
shifting the note (or other events) in time so that they line up correctly.
if the notes on track 2 are occurring too far behind track one you can slide
the timing of track two so that things happen earlier.  This type of timing
shift was a quite common procedure before the days of sample-accurate DAWs
with software instruments.

The real troublesome aspect of latency is not that you have it (you'd
probably be surprised at how much latency is actually flying around your
studio) but that it can be variable.  Something can be late one moment and
not late the next.  This type of latency is a form of timing jitter and it
is something to be avoided.  Timing jitter can not only change the way
something sounds but it can adversely affect the feel or "groove" of a
rhythm. Incidentally when people talk about the "tightness" of a sequencer
it is generally the jitter that they are perceiving, or lack thereof.  Lower
jitter implies "tighter".

Consistent latency that is predictable is manageable and actually expected
in these type of music machines we use.  MIDI itself is a contributor to
latency and the more dense the activity on a MIDI channel the higher the
change of having some events sometimes be late.  In this case the latency
will be variable since it depends on the amount of activity and is this not
good.  This is one reason that complex MIDI setups normally require
sequencers with multiple MIDI outputs.

How well a sequencer is implemented is also a big factor in the latency and
its variability.  This is why the tests on the XX-7 are less about how much
delay (latency) there is and really more how it varies under different
conditions.  This is also why sequencers based on OS's like Windows can be
so problematic and have "feel" problems.

Finally your sequencer is not the only contributor to this problem.  Sound
modules and other synthesizers all have internal latencies and depending on
how solid the design these can be inconsistent.


drk

www.delora.com/music
www.mp3.com/zdrk
drk.iuma.com

Attachments

Move to quarantaine

This moves the raw source file on disk only. The archive index is not changed automatically, so you still need to run a manual refresh afterward.