[linux-audio-dev] Plugin APIs (again)

Paul Davis paul at linuxaudiosystems.com
Sun Dec 8 22:51:00 UTC 2002


>> personally, i think ardour is an excellent proof-by-implementation 
>> that yes, busses are really just a special class of strip, 
>
>Well, no.  Busses are not strips.  Busses are not signal paths.  Busses
>are unity gain summing nodes that facilitate many-to-one connections. 
>Ardour depends on jack for all of its busses.

the last point is true. but that's not how i think of busses, or have
ever thought of them. its thinking of them in the way you describe
that has led them to end up being such 2nd class citizens in the
hardware mixing world. it still shares with a strip the notion of some
kind of "flow" - data arriving from somewhere and then being delivered
to somewhere else.

the "unity gain summing node" describes, in software terms, a memory
buffer and a method of storing data there. that by itself doesn't seem
worthy of being called a "bus" to me, and indeed, its not really all
that the terms means in the analog world, where busses are routinely
used to get data from one place to another. you send a signal to a
bus (typically by pressing a button), and then collect it from the bus
(typically by plugging a cable into the output connector for the bus).

thats not really very different from the way you send a signal to a
strip (physically, you plug a cable into the input connector for the
strip) and then direct the signal to one or more outputs (typically by
pressing a button). 

the strip is normally allowed to include some signal processing, and the bus
conventionally does not. 

other than that, they look like pretty much the same idea to me. its a
little different in the analog world, where you have to work to get
multiple "store" operations to be anything except unity-gain summing,
and where providing multiple pathways for data to flow down has real
electrical implications.

--p




More information about the Linux-audio-dev mailing list