Re: When to start the capture device?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



At Thu, 20 Sep 2007 11:46:12 -0400,
J. Scott Merritt wrote:
> 
> On Thu, 20 Sep 2007 16:23:30 +0200
> Takashi Iwai <tiwai@xxxxxxx> wrote:
> 
> > snd_pcm_prepare() is required to recover the stream from XRUN or any
> > other errors.  But, for the recovery purpose, we have now
> > snd_pcm_recover() as a generic solution, too.
> 
> It appears that (currently) the additional benefit of snd_pcm_recover
> is simply that of resuming the stream.  However, I haven't seen any
> details on when/why a stream would become suspened and require this
> type of recovery.

The audio apps (or system) usually want to know when the stream is
stopped unexpectedly.  The suspend/resume is exactly as same as XRUN
from this perspective.  That's why it's handled by the application.
snd_pcm_recover() is provided to handle it more easily.

> Also, in SALSA, it appears that snd_pcm_recover can -block- even if
> the stream has been configured for non-blocking behavior.

It's with ALSA-lib, too.  The snd_pcm_recover() code is identical in
both libraries.  This is the function that may block regardless what
mode you use.

The non-blocking mode isn't specified for ioctls but for
read/write in general.  In theory, the normal snd_pcm_prepare() could
block (take some time) if the driver is implemented in such a way.


Takashi
_______________________________________________
Alsa-devel mailing list
Alsa-devel@xxxxxxxxxxxxxxxx
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

[Index of Archives]     [ALSA User]     [Linux Audio Users]     [Kernel Archive]     [Asterisk PBX]     [Photo Sharing]     [Linux Sound]     [Video 4 Linux]     [Gimp]     [Yosemite News]

  Powered by Linux