>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

Reply via email to