[alsa-devel] [PATCH - IOPLUG DRAIN 0/2]
Wischer, Timo (ADITG/ESB)
twischer at de.adit-jv.com
Thu Mar 22 16:17:10 CET 2018
> I don't understand. The pulse plugin calls pa_stream_drain(), and
> pulse_wait_operation() to wait until the drain finishes. What does it
> have to do with threading?
As far as I understand you patch io->data->callback->drain() will not be called in nonblocking mode.
+ if (io->data->state == SND_PCM_STATE_DRAINING) {
+ if (io->data->nonblock)
+ return -EAGAIN;
+
+ if (io->data->callback->drain) {
+ err = io->data->callback->drain(io->data);
+ if (err < 0)
+ return err;
+ }
+ }
Therefore how should call pa_stream_drain() in case of nonblocking mode?
Best regards
Timo
More information about the Alsa-devel
mailing list