Looper's Delight Archive Top (Search)
Date Index
Thread Index
Author Index
Looper's Delight Home
Mailing List Info

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Date Index][Thread Index][Author Index]

Re: Scripting/Command Chaining in the Max/MSP Kaiser Looper



> When you say parallel loop, do you mean a new buffer?   When
> Mobius overdubs, isn't it just creating a new buffer along side the
> first one?

Sort of.  A layer is basically a buffer, it is the management of
this collection of buffers to make it look to the UI as just one
loop with a scrollable history that is hard.

> I take it it is not replacing the original buffer and creating
> a new one with both old and new material, otherwise you would not
> be able to undo.

In Mobius, the previous layer is continually being copied into the
next layer, with feedback applied, and merged with live audio.  So
yes, it is "creating a new one with both old and new material" but it
is also not replacing the previous buffer.  This is what gives you a
layer history.

KH: Ah yes. That is what I thought. I guess in my max looper, everything 
is 
transparent,
so I don't have layers, etc. All these are "constructs" that I would have 
to 
build with
manipulations of individual buffers....which is exactly what you have done 
to create
an easy to use UI, rather than a programming nightmare for the 
user....well, 
one
man's nightmare can be another's dream, I guess.

Unlike phrase samplers that take the "autonomous parallel loops"
approach, there is no limit to the size of the layer history other
than memory.  The other problem with parallel loops is that once you
have more than 20 or 30 of them the cost of merging them at runtime
starts to become significant and the CPU spikes.

KH: Aren't we just talking about different ways to manage buffers? Wouldn't
a software phrase sampler that creates autonomous parallel loops just be a 
limitation
of the programmer and how he/she manages the buffers, rather than an
inherent difference in the underlying architecture? If it all boils downs 
to
buffers in software loopers, then it seems what makes one different than
the other is how the buffers are managed, duplicated, created, etc.

Kris