All of lore.kernel.org
 help / color / mirror / Atom feed
* VOIP xrun problem
@ 2012-10-22 20:40 Jamey Drennan
       [not found] ` <5085B04E.8040507@faberman.de>
  0 siblings, 1 reply; 7+ messages in thread
From: Jamey Drennan @ 2012-10-22 20:40 UTC (permalink / raw)
  To: alsa-devel

A quick background:  I'm developing a VOIP program for an embedded system.
In the first phase of the program everything was event driven.  Basically
ask ALSA for samples, encode them, and send them via UDP to the connected
client.  On the other end, receive the packet, decode, play the samples.
After setting the correct value for the start_threshold function everything
worked great no xruns at all.
Now in the second phase, events are timed due to specification
requirements.  The same Alsa setup code is used yet xruns (mostly
underruns) are all over the place.  The underruns are periodic and can be
reduced by increasing the period size and number of periods (this also
increases the latency obviously and is undersirable) but never removed
completely.

My question is how to reduce/remove the xruns.  I am not currently at a
point where installing a real-time OS or patching to get these features is
possible.  Also, when aplay/arecord is run on the system, no xruns occur.
Finally, the CPU is not being overloaded, actually in the second phase the
CPU usage is much less.  Any help/suggestions are greatly appreciated.
Thanks in advance!

^ permalink raw reply	[flat|nested] 7+ messages in thread

end of thread, other threads:[~2012-10-24 16:21 UTC | newest]

Thread overview: 7+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2012-10-22 20:40 VOIP xrun problem Jamey Drennan
     [not found] ` <5085B04E.8040507@faberman.de>
2012-10-22 20:56   ` Jamey Drennan
2012-10-23  6:35     ` Clemens Ladisch
2012-10-23 15:00       ` Jamey Drennan
2012-10-23 15:10         ` Clemens Ladisch
2012-10-23 19:03         ` Jamey Drennan
2012-10-24 16:21           ` Jamey Drennan

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.