From: Mark Brown <broonie@opensource.wolfsonmicro.com>
To: David Henningsson <david.henningsson@canonical.com>
Cc: Takashi Iwai <tiwai@suse.de>,
ALSA Development Mailing List <alsa-devel@alsa-project.org>,
Kay Sievers <kay.sievers@vrfy.org>,
Lennart Poettering <lennart@poettering.net>
Subject: Re: Jack event API - decision needed
Date: Tue, 21 Jun 2011 11:40:42 +0100 [thread overview]
Message-ID: <20110621104041.GD22177@opensource.wolfsonmicro.com> (raw)
In-Reply-To: <4E0040E3.9090309@canonical.com>
On Tue, Jun 21, 2011 at 08:57:39AM +0200, David Henningsson wrote:
> On 2011-06-21 02:29, Mark Brown wrote:
> >Of course given the potential for internal routing within the card you
> >can only really say that about the very edge controls that are fully
> >committed to a given path - hence my comment about exposing the all the
> >routing being much better.
> I'm ok with exposing all the routing. Perhaps we could then add some
> convenience functions in alsa-lib (and/or UCM?) that makes it easier
> for applications to figure out what they need to know without having
> to parse the entire graph.
I'd guess so unless the raw interface is just easy enough to use but
first we need to get the data in place, then we can worry about
convenience functions.
UCM wouldn't be an appropriate place to put this, it's all about
applying configurations something else has generated and has no reason
to care about routing itself.
> >I think that's too edge node focused, if we're going to define new
> >interfaces we may as well cover everything rather than doing half the
> >job.
> Rather, the ports are what we're missing. We already have PCM
> devices (which correspond to the DAC nodes) and mixer controls, so
> the ports are the only objects/nodes we're missing.
PCM devices correspond to digital links to the CPU, not to DACs and
ADCs. You can have similar digital routing between these two to what
you can get in the analogue doman.
> We're also missing the links between the nodes (it's partially
> exposed through the mixer control naming, but that's error prone).
It's not just error prone, it just plain doesn't exist in any real sense
at the minute. The name based approach can work only for the most basic
sound cards with simple routes, and even then it can't tell applications
how the controls are ordered in the audio paths.
> >>(Btw, I don't know much about DAPM and how well that scales to cope
> >>with these requirements, it looks very ASoC to me, but perhaps it's
> >>just the SND_SOC_DAPM_* naming that fools me. But can DAPM e g send
> >>events to userspace?)
> >No, there is no userspace visiblity of the routing map. It's pretty
> >much exactly equivalent to the data HDA CODECs expose but shipped in
> >source rather than parsed out of the device at runtime.
> Sorry, I mixed up DAPM and the Media Controller API, but they seem
> partially overlapping to me (both are supposed to expose this codec
> graph).
No, DAPM is not supposed to expose anything to the application layer.
It's purely an implementation detail of the drivers and it is only
concerned with power so has no information about anything that doesn't
affect power.
> So, if we were to use the new Media Controller API (which I think
> you have suggested?), could you explain a little where the
> boundaries/intersections between this API and the current objects
> (ALSA PCM objects, ALSA mixer control objects) would be, and how the
> Media controller API would interact with the existing ALSA APIs?
My expectation would be that whatever interface we use for the graph
would in the first instance just point at the existing user visible
objects where they exist from the nodes and edges of the graph. I'd not
expect any interaction as such otherwise we get an API break.
next prev parent reply other threads:[~2011-06-21 10:40 UTC|newest]
Thread overview: 57+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-06-20 13:56 Jack event API - decision needed Mark Brown
2011-06-20 14:11 ` David Henningsson
2011-06-20 14:19 ` Kay Sievers
2011-06-20 15:35 ` Takashi Iwai
2011-06-20 16:52 ` Mark Brown
2011-06-20 17:01 ` Takashi Iwai
2011-06-20 18:24 ` David Henningsson
2011-06-21 0:29 ` Mark Brown
2011-06-21 6:57 ` David Henningsson
2011-06-21 10:40 ` Mark Brown [this message]
2011-06-20 16:47 ` Mark Brown
2011-06-20 16:59 ` Takashi Iwai
2011-06-20 17:17 ` Mark Brown
2011-06-20 17:38 ` Takashi Iwai
-- strict thread matches above, loose matches on Subject: below --
2011-06-20 13:37 David Henningsson
2011-06-20 17:07 ` Mark Brown
2011-06-20 17:12 ` Takashi Iwai
2011-06-20 17:31 ` Mark Brown
2011-06-20 17:37 ` Takashi Iwai
2011-06-20 18:53 ` David Henningsson
2011-06-20 23:40 ` Mark Brown
2011-06-21 12:11 ` David Henningsson
2011-06-21 12:39 ` Mark Brown
2011-06-22 10:47 ` David Henningsson
2011-06-22 11:48 ` Mark Brown
2011-06-22 12:50 ` Kay Sievers
2011-06-22 13:25 ` Mark Brown
2011-06-22 13:55 ` Kay Sievers
2011-06-22 15:11 ` Mark Brown
2011-06-22 21:41 ` Dmitry Torokhov
2011-06-23 0:15 ` Mark Brown
2011-06-23 8:42 ` Dmitry Torokhov
2011-06-23 10:47 ` Mark Brown
2011-06-22 21:01 ` Lennart Poettering
2011-06-22 21:57 ` Stephen Warren
2011-06-23 1:10 ` Mark Brown
2011-06-23 7:01 ` Clemens Ladisch
2011-06-23 7:24 ` Takashi Iwai
2011-06-23 9:49 ` Lennart Poettering
2011-06-23 11:43 ` Mark Brown
2011-06-23 15:32 ` Stephen Warren
2011-06-27 12:07 ` Mark Brown
2011-06-27 17:01 ` Colin Guthrie
2011-06-28 16:20 ` Mark Brown
2011-07-09 3:38 ` Mark Brown
2011-06-28 16:27 ` David Henningsson
2011-06-28 16:34 ` Liam Girdwood
2011-06-28 16:35 ` Mark Brown
2011-06-28 16:35 ` Takashi Iwai
2011-06-29 2:59 ` Mark Brown
2011-06-29 5:34 ` Takashi Iwai
2011-06-29 6:59 ` Mark Brown
2011-06-29 7:03 ` Takashi Iwai
2011-06-29 7:13 ` David Henningsson
2011-06-29 7:21 ` Mark Brown
2011-06-29 8:52 ` David Henningsson
2011-06-29 17:00 ` 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=20110621104041.GD22177@opensource.wolfsonmicro.com \
--to=broonie@opensource.wolfsonmicro.com \
--cc=alsa-devel@alsa-project.org \
--cc=david.henningsson@canonical.com \
--cc=kay.sievers@vrfy.org \
--cc=lennart@poettering.net \
--cc=tiwai@suse.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox