Hi all, I am trying to learn more about ALSA, I always used example found in the howtos but now I would go further.
I went though ALSA documentation ( https://www.alsa-project.org/alsa-doc/alsa-lib/pcm.html) and in the specific the transfer methods. Basically I don't understand the advantages of using poll instead of traditional blocking read/write.
Generally I know that using poll I can multiplex I/O on several files, but in ALSA I cannot create the poll descriptor array as I want, as I must use snd_pcm_poll_descriptors() which requires that the poll descriptor array should have the size returned by snd_pcm_poll_descriptors_count().
Am I supposed to realloc the poll array descriptor once I set it up with ALSA, and add my own files? Should I then always check poll array descriptor with snd_pcm_poll_descriptors_revents() before checking my own files? And in this case it is safe to call snd_pcm_poll_descriptors_revents() with a poll array descriptor bigger than the size returned by snd_pcm_poll_descriptors_count()?
Many thanks in advance.