Some of my points of view:

- you want the latency (time between user action, eg. tweaking a real-time
  control or pressing a key) as low as possible. But don't get trapped in
  all the marketing stories people want to play


I say that this is poor advice. As a soft-synth developer, one should *ALWAYS* pay attention to latency. It is one of the key factors (user interface being another) which will sell or kill your app.


The lower the latency, the better your product will sell - people *DO* notice latency in soft-synths, and regardless of sound quality a high-latency synth plugin will gradually get less and less use.

Latency is a marketing issue in the synth world because it seriously effects performing/professional musicians' ability to perform. Hobbyist synthesists may not care about latency, and may be fine with pre-rendering everything, but in a performance situation this is not acceptable.


  My experience is that even with without low latency it is possible to play
  an instrument, though is more difficult and takes more practice to get the
  timing right. A latency of >20 ms makes a piano feel kind of sluggish; a
  latency <10ms gives your the feeling of instant sound. The curch organ is
  a nice example of an instrument that is difficult to play because of
  extremely high latency, but good musicians do manage...

True, the rule is that good musicians can make music with anything.


But there's another rule too, and that is that good synth programmers care about and know how to deal with latency in a way which does not interfere with performance ... and can still write amazing synthesizer algorithms without tripping up the latency problem.


  "Recording engineers" who claim that they can't make a decent mix if the
  latency is above 10ms might be right with that statement, but I'll be glad
  to put a bet for a crate of beer on it that they can't do a decent mix
  with no latency either ;-)

I find this to be a highly ungrounded point of view.


Professional engineers wouldn't use a high-latency synth if it meant it gets in the way of their production. It's okay for hobbyists who didn't pay a dime for the plugin, but its not okay for professional music production environments where a lot (not just money, but also stress, prestige, and client relationship) is on the line in an average recording session.

Linux Audio Developers would do well to keep in mind that latency should never be justified ... there will always be someone else around who doesn't need to justify it.


- In the end, all that counts is that the parts of the composition arrive at
  the listner's ears at the right time. This implies that you would need to
  know about the latencies in your system, and compensate for it:

I think you *HAVE* to also include the earlier part of this equation in the mix: when the user does something with the synth, physically, it had *BETTER* respond, and respond well.



  In the end the only thing that matters is that it sounds OK and that when
  the recording is reproduced it sound the same... (already not a trivial
  question)

No, please, be careful with this "recording" ideal when dealing with abstractions which will effect performance. Not all music is recorded!!



ps: I'm still a very lousy keyboard player, and am heading for some serious
beer now.  Cheers!

Us lousy keyboard players may not care about latency, but the kind of pro musician who can really make a difference in the way a market responds to an audio platform does ... and since Linux is a new audio platform, this is pretty important to keep in mind throughout *all* levels of development.


In my opinion, of course, which isn't worth much ...

--

;

Jay Vaughan
r&d>>music:technology:synthesizers - www.access-music.de/

Reply via email to