Re: [linux-audio-dev] matrix model vs. memory

New Message Reply About this list Date view Thread view Subject view Author view Other groups

Subject: Re: [linux-audio-dev] matrix model vs. memory
From: Abramo Bagnara (abramo_AT_alsa-project.org)
Date: Sat May 19 2001 - 22:22:44 EEST


Paul Davis wrote:
>
> >> >I'm not sure to understand, but why we can't have a separate
> >> >"matrix_gain" plugin?
> >>
> >> what do you propose it would do?
> >
> >Given N inputs and M output and a matrix N*M of float values
> >
> > N
> >out(M) = sum(in(k)*matrix(k,M))
> > k=0
>
> and how does it go about writing to "out" from "in" ? before answering
> this, read on...
>
> >Exactly like pcm_route in alsa-lib.
> >
> >> what do you suggest would happen if it was not present?
> >
> >I don't understand the question.
>
> there has to be some underlying mechanism for moving data from an
> output port to an input port. there has to be a definition of how
> either a plugin or an engine causes the data to get from one place to
> the other. it could be as simple as memcpy(), or something more
> complex.
>
> either this mechanism includes the possibility of a gain coefficient
> to be used in the transfer or it does not.
>
> if it does not, then your suggestion makes sense. but in that case,
> the most common operation carried out on audio data (gain control)
> becomes less efficient, since it has to pass through a plugin with its
> own buffer(s).
>
> either way, there is always an implicit or explicit matrix model
> within the system, mapping the connections between ports. so the
> questions are whether to (1) make the matrix model explicit and (2)
> add the gain coefficient to this model.

You're making me feel very stupid, still I am not sure to understand :-(

It seems you're asking if a gain control should or should not added to
each plugin (to avoid an extra buffer). But if my supposition is right I
don't understand how this is related to matrix route N*M.

Unless you're limiting the plugin class you're taking in consideration
to plugins that take N channels and output N channels in the same order.

But I need to do too many suppositions, I'd like you've the patience to
explain me better.

-- 
Abramo Bagnara                       mailto:abramo_AT_alsa-project.org

Opera Unica Phone: +39.546.656023 Via Emilia Interna, 140 48014 Castel Bolognese (RA) - Italy

ALSA project http://www.alsa-project.org It sounds good!


New Message Reply About this list Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Sat May 19 2001 - 22:44:15 EEST