Subject: Re: [ecasound] A question, a weird problem and a bug
From: Kai Vehmanen (firstname.lastname@example.org)
Date: Mon Apr 16 2001 - 23:12:13 EEST
On Wed, 21 Mar 2001, S. Massy wrote:
> a bit surprised to find out that the amount of cpu power in use varied
> greatly whereas it remains relatively stable for normal operations
> (simple playback for example). Actually it follows a very constant pattern
> where the amount of cpu time in use climbs steadily before falling
> back. I don't have the exact intermediate values but it always seem to
> reach up to 25% of the cpu as its max value and 0.1% as its
Did you have double-buffering mode enabled? When -z:db
is enabled, disk thread wakes up once in a while, runs
at full disk speed to fill up the buffers, and then
returns back to sleep.
> created through /proc (which is top -d 0.01) Well, I ran top updating
> its info from /proc every hundredth of a second for five minutes (it
> was also using up to 70% of the cpu power) and ecasound remained rock
> solid, no xrun. Then I just exited top and typed "ps" and BANG, xrun!
> Anyone having a possible explanation for this? I realize it is most
> likely related to alsa, still, it seems weird, doesn't it?
Huh, beats me. :) I'd bet my money on a kernel-related
> Finally I noticed that whenever an xrun occurs and alsa device is used
> for playback, the playback does not resume and the following is
> ALSA lib pcm_hw.c:254:(snd_pcm_hw_start) SNDRV_PCM_IOCTL_START failed:File descriptor in bad state
> The processing continues but what is sent to that particular device is
> not heard. I have to issue a "stop" then "start" for the device to be
> properly initialized once again. As I understand it, when encountering
> an xrun and in -z:noxruns mode, ecasound stops and restart in an
> attempt to get everything back into sync. Is it possible that there's
> a bug in the code supposed to reinitialize the alsa device performing
It should restart ALSA devices properly after an xrun. Oh well, I'll
check the related ecasound code once ALSA 0.9.x API documentation gets
-- http://www.eca.cx Audio software for Linux!
-- To unsubscribe send message 'unsubscribe' in the body of the message to <email@example.com>.
This archive was generated by hypermail 2b28 : Mon Apr 16 2001 - 23:33:59 EEST