[Ekiga-list] Alsa Weirdness

Mario Rossi mariofutire at googlemail.com
Thu Dec 7 19:19:59 UTC 2006

Reading ALSA documentation about dmix


At the very bottom, there is this interesting info about dmix.
Basically the suggestion is... to use JACK (???). Does anybody know
whether it exists a dmix equivalent in JACK with better results?

Can dmix be used within a single program to effectively mix different
"voices"? Does its latency permit scheduling with (at least)
single-frame accuracy (e.g., I start VoiceA? and wish to setup and
schedule VoiceB? to be "added to the mix" at a certain point)? If
someone knows how to do this, some guidance or a nudge in the right
direction would be greatly appreciated.


Answer: Latency depends on period and buffer size. AFAIK dmix is not
designed as sample-accurate (because it is usually not needed on
general purpose audio system and will make the design quite complex).

If you need sample-accurate and fully syncronized mixer/router, you
should consider using the Jack http://jackaudio.org/. Large number of
Linux audio applications, where sample-accurate mixing is needed,
support Jack.

On the other hand, overall latency of the audio system will still
mostly depend on period size. As small as your period size can be, as
low latecy you will get.

Of course, low latency needs good task scheduler in kernel. If you
start getting xruns on low latency audio setup, you should use some
low-latency/realtime kernel patches. I reccomend Ingo Molnar's
realtime preempt http://people.redhat.com/mingo/realtime-preempt/ or
Con Colivas patch set http://members.optusnet.com.au/ckolivas/kernel/.


More information about the ekiga-list mailing list