From: Takashi Iwai <tiwai@suse.de>
To: "Amadeusz Sławiński" <amadeuszx.slawinski@linux.intel.com>
Cc: Jaroslav Kysela <perex@perex.cz>, Takashi Iwai <tiwai@suse.com>,
Mark Brown <broonie@kernel.org>,
Cezary Rojewski <cezary.rojewski@intel.com>,
linux-sound@vger.kernel.org
Subject: Re: [RFC PATCH 0/4] Add support for detection
Date: Wed, 16 Oct 2024 15:11:10 +0200 [thread overview]
Message-ID: <87y12ory4x.wl-tiwai@suse.de> (raw)
In-Reply-To: <20241016130228.1013227-1-amadeuszx.slawinski@linux.intel.com>
On Wed, 16 Oct 2024 15:02:24 +0200,
Amadeusz Sławiński wrote:
>
> There are some scenarios when using DSP where one may want to have
> partially active stream and fully enable it after some event occurs.
>
> Following patchset adds new "detect" state to ALSA state machine to
> allow waiting for condition to occur before fully starting a stream. In
> further patches the state is propagated through ASoC components to allow
> them to handling the state as necessary.
>
> Main goal of this patchset is to allow handling scenarios like keyphrase
> detection - where DSP analyses incoming signal and wakes userspace to
> consume stream only when keyphrase is detected.
>
> I'm sending this as RFC so we can discuss if this is the way to go or if
> there is perhaps another preferred way of adding such interface.
> Userspace part of implementation is available at
> https://github.com/amadeuszslawinski-intel/alsa-lib/tree/rfc_detect
>
> Amadeusz Sławiński (4):
> ALSA: core: Add support for running detect on capture stream
> ALSA: core: Allow polling for detection
> ASoC: pcm: Add support for running detect on capture stream
> ASoC: Propagate DETECT trigger
Generally speaking, the addition of a new PCM state should be avoided.
It'll influence too badly on all user-space programs. e.g. if an old
user-space program receives such a new state, what should it do?
How can it know it's a fatal error or it can be ignored / skipped?
And, if it's about the synchronization of the DSP readiness, can't it
be rather synced in each PCM open or prepare instead?
Takashi
next prev parent reply other threads:[~2024-10-16 13:10 UTC|newest]
Thread overview: 12+ messages / expand[flat|nested] mbox.gz Atom feed top
2024-10-16 13:02 [RFC PATCH 0/4] Add support for detection Amadeusz Sławiński
2024-10-16 13:02 ` [RFC PATCH 1/4] ALSA: core: Add support for running detect on capture stream Amadeusz Sławiński
2024-10-16 13:02 ` [RFC PATCH 2/4] ALSA: core: Allow polling for detection Amadeusz Sławiński
2024-10-16 13:02 ` [RFC PATCH 3/4] ASoC: pcm: Add support for running detect on capture stream Amadeusz Sławiński
2024-10-16 13:02 ` [RFC PATCH 4/4] ASoC: Propagate DETECT trigger Amadeusz Sławiński
2024-10-16 13:11 ` Takashi Iwai [this message]
2024-10-16 13:29 ` [RFC PATCH 0/4] Add support for detection Amadeusz Sławiński
2024-10-16 13:47 ` Takashi Iwai
2024-10-18 14:16 ` Amadeusz Sławiński
2024-10-18 17:15 ` Jaroslav Kysela
2024-10-22 15:11 ` Amadeusz Sławiński
2024-10-16 13:41 ` Jaroslav Kysela
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=87y12ory4x.wl-tiwai@suse.de \
--to=tiwai@suse.de \
--cc=amadeuszx.slawinski@linux.intel.com \
--cc=broonie@kernel.org \
--cc=cezary.rojewski@intel.com \
--cc=linux-sound@vger.kernel.org \
--cc=perex@perex.cz \
--cc=tiwai@suse.com \
/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.