Re: CPS Announcement MPEG-4 SA

From: Niels Gorisse (niels@bonneville.nl)
Date: Sat Feb 26 2000 - 21:14:32 EST


Hi,

>> All MPEG-4 Structured Audio opcodes are implemented in CPS.
>
>Are you sure, haven't found chorus and reverb for example, or doesn't the
demo
>incorporate the full set of modules ?

The demo has all modules, but the Effects are left out; that is
more-or-less unofficially said (on the saol-developers list) to be legal
(more or less). The reason is that the reverb opcode has really weird
parameters so I don't know how to implement such a one, otherwise I did
implement it (the reference implementation also does not have this reverb).
The solution is the use of the macro's. You can build all effects with the
default modules of CPS. There are two reverb examples, I already build a
flanger, and I will do so for the chorus. The only thing that's left to do
then is to place them in the /macros directory.

Actually, the 'grain' opcode is also not present; it's not what I wanted
but I didn't got it prepared in time.

>Also how are you meant to control the soft synths you design with CPS, only
>externally with MIDI hardware (or software via Hubi's loopback) ? The only
>MIDI control I saw was the virtual keyboard, did I miss something like a
panel
>feature ?

You mean the Generator/Reaktor like 'panel'? Well, just as MAX/jMAX, CPS
has it's visual elements within the patch, and not in an external panel.
So, to keep it seperated when making a soft synth with CPS, you must put
all audio elements in a subpatch, and put all visual controllers in the
main patch.

That only leaves one thing: presets!. Generator/Reaktor has a very beatiful
way of managing presets in the panel window. CPS does not have such a
facility at all yet; it is not obvious to work with presets in an orchestra
file at first sight. But of course it will have one, but like MAX: only one
little object, which has references to all visual elements in the subpatch.
In that special object you can save/load/switch between presets in the
patch itsself.

>
>Also, are you planning a VST2 plugin version of CPS ?

Absolutely! That's one of the things listed online in the 'future directions'.

>Haven't tested the demo very thouroughly but it seems to work nicely, what
>more do you get with the full version ?

The full version also includes the SDK, with which you can create plugins
for CPS very very easily. The announcement said some more things about the
plugin format, and so does the manual online. Also, the number of
opcodes/objects that you can use in your patch is not limited in the real
version of course. Furthermore, you get as much support as possible by
e-mail, and the 'cpsChat' object is enabled. With the cpsChat object, you
can directly exchange data on internet/TCP with a group of people.

>How does CPS compare to Reaktor in your opinion ? (apart from also being
>-soon- a graphical SAOL authoring tool which is a very strong plus IMO : when
>do we get that 'save as saol' feature BTW ?)

Well, Reaktor has some advantages and disadvantages compared to CPS, in my
humble opinion. First the positive things. Graphically, Reaktor looks
really great; I know it is not a legal argument, but it sure is true. Also,
it sounds great too; it has really very great analog synthesizers as
examples! Furthermore, it is also available on the Macintosh, and it
already has a user base because it exists for a few years now (including
Generator). On the conceptual level, I think the great thing of Reaktor is
the way it handles polyfony. There is just one object (Voice Combinator)
that combines all voices of an oscillator into a mono signal, after which
it continues normally. In CPS (and MAX), you have to duplicate the
oscillator and let is be played by MIDI then (in CPS you can eventually
make an array of oscillators by the way).

A real disadvantage of Reaktor is the lack of graphical feedback. In CPS
you can place a 'numberField' or any other Display object in your
calculation at any point, and by doing so see what's going on (not only
controlRate value's but also audio signals). Believe me, that is a relief!
Another disadvantage is that there are no simple math objects like
comparisation. Ever tried 'if (x>3000)' in Reaktor? (You can do this, but
it's n-o-t very obvious). This last thing makes it almost impossible to use
Reaktor for doing Csound like things, also caused by the fact that you do
not know for sure what happens inside a each module. Another thing is that
it has no plugin architecture at all; you cannot program your own new
modules, and also not a graphical interface for it too of course.
Conceptually, it doesn't have low-level MIDI like CPS does, so you cannot
use it for algoritmic composition for example. There's no way to manipulate
MIDI at all!!

Well, CPS is also capable of delivering pretty low latency, and it uses as
much CPU time as Reaktor does. CPS adds a few minor other concepts as well
(like dynamic number of I/O at runtime, so there are no 11 objects to
multiply signals in CPS, but only one '*', etc.). CPS costs $125, and
Reaktor $469 (Generator $298 as well as Transformator).

The save as saol option should be ready near August - I know, it's not
soon, but that is because I cannot work on CPS fulltime. I released CPS now
because the current version is already a usefull synthesize environment,
and already competitive with MAX.

Best,

Niels Gorisse
Bonneville



This archive was generated by hypermail 2b29 : Mon Jan 28 2002 - 11:46:37 EST