From: Clemens Ladisch <clemens@ladisch.de>
To: Daniel Mack <daniel@caiaq.de>
Cc: alsa-devel@alsa-project.org
Subject: Re: External samplerate changes, UAC2 clock topologies
Date: Thu, 10 Jun 2010 08:19:41 +0200 [thread overview]
Message-ID: <4C1083FD.9040906@ladisch.de> (raw)
In-Reply-To: <20100609113000.GE25445@buzzloop.caiaq.de>
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
next prev parent reply other threads:[~2010-06-10 6:19 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-04 12:46 External samplerate changes, UAC2 clock topologies Daniel Mack
2010-06-04 19:49 ` Jaroslav Kysela
2010-06-09 9:16 ` Daniel Mack
2010-06-09 11:30 ` Daniel Mack
2010-06-10 6:19 ` Clemens Ladisch [this message]
2010-06-05 7:21 ` Alex Lee
2010-06-07 9:45 ` Mark Brown
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4C1083FD.9040906@ladisch.de \
--to=clemens@ladisch.de \
--cc=alsa-devel@alsa-project.org \
--cc=daniel@caiaq.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.