Daniel Mack wrote: > On Wed, Jun 09, 2010 at 11:16:28AM +0200, Daniel Mack wrote: > > On Fri, Jun 04, 2010 at 09:49:36PM +0200, Jaroslav Kysela wrote: > > > If a stream parameter changes, the driver should interrupt streaming > > > immediatelly. The check should be in the trigger() callback (-EIO > > > error code) and if the stream is already running - it should be put > > > to the > > > SNDRV_PCM_STATE_DRAINING (capture) to let the application obtain the > > > captured samples until the parameter change. Just call > > > snd_pcm_stop() with the new state for the substream. For playback, > > > the stream should be put to the SNDRV_PCM_STATE_OPEN state to wait > > > to settle new parameters from an application (it means that all I/O > > > ops will return -EBADFD). > > > > Hmm. I implemented this now, but at least aplay won't stop when this > > code path is triggered. Is there anything else I should do, except for > > calling snd_pcm_stop()? > > Strange enough, aplay doesn't even quit when the device is unplugged. > Can anyone confirm this with an UAC1 device? Unplugging works just fine (i.e., stops). When unpluggin, the stream should go into XRUN state. I doublt if it is allowed to go from RUNNING to OPEN, because then the driver's hw_free callback might not be called. Regards, Clemens _______________________________________________ Alsa-devel mailing list Alsa-devel@xxxxxxxxxxxxxxxx http://mailman.alsa-project.org/mailman/listinfo/alsa-devel