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: Paul Davis (pbd_AT_Op.Net)
Date: Sun May 20 2001 - 15:30:39 EEST


>> such a port type is important for implementing busses, since
>> otherwise, you have to have an input port for every object that wants
>> to connect to it. its very important to me to be able to implement a
>> "bus" concept easily; an N-channel mixer with a single output port is
>> a much less efficient way of implementing this.
>
>It's not parallelizable on SMP (because lack of atomic float add)
>without to do some tricks, but that apart I don't see why it's less
>efficient.

1) parallelizing audio is non-trivial to begin with. its quite unlike
   parallelizing graphics, for example, because of the temporal
   domain.

2) its less efficient because the objects sending data to the bus
   could be using "+=" to write into the buffer associated with a pair
   of input+output ports; using the mixer concept, you have to have N
   different input buffers, and sum them at some point before writing
   them to the output buffer.

>> both of these seem suboptimal to me. as i said, there is already an
>> implicit matrix of port connections; exposing it and attaching a gain
>> at each node of the matrix seems like a really cool idea to me.
>
>As an *option*, otherwise you limit efficiency also when this is not
>needed. This would be a symptom of a bad design.

In your own recent message, you mentioned the need for two helper
functions to transfer data from port to port sometimes. Either they
includes the concept of gain, or they don't. True?

--p


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

This archive was generated by hypermail 2b28 : Sun May 20 2001 - 15:47:31 EEST