On Thu, 25 Mar 2004, James Courtier-Dutton wrote:

> Jaroslav Kysela wrote:
> > On Wed, 24 Mar 2004, Paul Davis wrote:
> > 
> > 
> >>>open pcm, and get a handle.
> >>>
> >>>snd_pcm_poll_descriptors(handle, &pfd, err);
> >>>
> >>>Get a poll file scriptor in pfd.
> >>>
> >>>select(nfds, rfds, wfds, efds, tvp);
> >>>
> >>>Is it possible to use this call with alsa ?
> >>
> >>select is generally deprecated in linux (linus says so!). but you can
> >>use the same pfds in select as in poll (select is implemented in the
> >>kernel using the poll code). the problem is interpreting the results
> >>you get back (as noted recently for the dmix plugin).
> > 
> > 
> > Nope, the application must give results back to pfd array and call
> > snd_pcm_poll_descriptors_revents() function. In this way, everything
> > will work as expected.
> > 
> >                                             Jaroslav
> So which of the following is needed: -
> 
> snd_pcm_poll_descriptors(handle, &pfd, err);
> select(nfds, rfds, wfds, efds, tvp);
> snd_pcm_poll_descriptors_revents()  <- decode the results of the select.

This one. The *revents() function mangles the returned ->revents back to 
the useful meaning for applications.

> or
> snd_pcm_poll_descriptors(handle, &pfd, err);
> snd_pcm_poll_descriptors_revents()  <- rearrange the pfd so that select 
> works as expected.
> select(nfds, rfds, wfds, efds, tvp);

That's wrong.

                                                Jaroslav

-----
Jaroslav Kysela <[EMAIL PROTECTED]>
Linux Kernel Sound Maintainer
ALSA Project, SuSE Labs


-------------------------------------------------------
This SF.Net email is sponsored by: IBM Linux Tutorials
Free Linux tutorial presented by Daniel Robbins, President and CEO of
GenToo technologies. Learn everything from fundamentals to system
administration.http://ads.osdn.com/?ad_id=1470&alloc_id=3638&op=click
_______________________________________________
Alsa-devel mailing list
[EMAIL PROTECTED]
https://lists.sourceforge.net/lists/listinfo/alsa-devel

Reply via email to