>there are two of these loops running separately, one for each >element, with separate handles, etc. I was thinking for some reason >that snd_pcm_update_avai l would block until avail_min frames were >available, but that's not the case. If I run the following pipeline, >I get:
snd_pcm_avail_update(): this simply updates the information on the number of available bytes. as you have noted, it does not block. your code does this: if (this->stream == SND_PCM_STREAM_PLAYBACK) { if (poll (&pfd, 1, 1000) < 0) { which means you are not polling at all for a capture stream. ergo, your code does not block, ergo it uses close to 100% of the CPU. :) --p _______________________________________________ Alsa-devel mailing list [EMAIL PROTECTED] https://lists.sourceforge.net/lists/listinfo/alsa-devel