Clemens Ladisch wrote:
> Carlo Florendo wrote:
>> Clemens Ladisch wrote:
>>>> However, I wish to be able to make the sequencer or player work without the
>>>> use of the ALSA queue nor the workaround in (2).
>>> Why?
>> Because the queue output and draining, AFAICS, is implemented in a blocking
>> manner.
>
> When non-blocking mode is set (see snd_seq_nonblock()),
> snd_seq_drain_output() does not block but writes only as many events to
> the kernel buffer as fit inside (or returns -EAGAIN if the kernel buffer
> is completely full).
Bingo! My recent tests show that snd_seq_nonblock() is indeed a useful
function and enables me to have control of the sequencer every time it
outputs an event :)
Gee, I've read the ALSA lib doc for months and never came across this
function. Up to now, I've not seen the part of the doc that describes
snd_seq_nonblock so I went straight to the source code of alsa-lib under
src/seq/seq.c and grepped for snd_seq_block().
The alsa-lib docs have to be improved :)
Thank you for the pointers!
>
> Regards,
> Clemens
>
Best Regards,
Carlo
-- Carlo Florendo Softare Engineer/Network Co-Administrator Astra Philippines Inc. UP-Ayala Technopark, Diliman 1101, Quezon City Philippines http://www.astra.ph -- The Astra Group of Companies 5-3-11 Sekido, Tama City Tokyo 206-0011, Japan http://www.astra.co.jp _______________________________________________ Linux-audio-dev mailing list Linux-audio-dev@email-addr-hidden http://lists.linuxaudio.org/mailman/listinfo.cgi/linux-audio-devReceived on Wed Jul 25 16:15:02 2007
This archive was generated by hypermail 2.1.8 : Wed Jul 25 2007 - 16:15:02 EEST