octal-dev
[Top][All Lists]
Advanced

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

Re: [Octal-dev] Control machines, again :-)


From: Dave O'Toole
Subject: Re: [Octal-dev] Control machines, again :-)
Date: Thu Sep 7 16:46:10 2000

> >This is, to make, for example, an envelope generator that controls the
> >filter cutoff or the VCA gain.
> 
> it is not possible with the current API to make a plugin which does this
> plugins right now are just audio input/output boxes with control input
> (patterns)
> and no control output

The AUX connections are being added very soon (actually it's almost
trivial as AUX is already a signal type possible in the network.) This
will allow the output of any machine (lfo or whatever) to act as the
modulating/control input to another machine that wants AUX inputs; then
the AUX accepting machine can interpret/use the data as it wishes,
perhaps providing a listbox or slider that lets the user choose just
which parameter is being controlled by the AUX control data. 

This is not a universal solution, of course, but it's a decent
compromise. This is a big improvement over Buzz in regards to vocoding
and modulation, but it also keeps the interface simple (AUX connections
can be drawn using shift-drag instead of drag, and shown in a different
color) and there are only two connection input points per machine. In
other words, the graph stays simple. Systems that allow completely
arbitrary interconnection of all parameters have lots of little handles
and/or connect points on each "box", which means they are often large on
the screen and hard to manage anything complex. That kind of interface
(like gAlan, Beast/bse) is fine for low-level virtual synth stuff but it
becomes completely unmanageable for entire songs or when you want to
work at a high level. It's a horrible interface unless you want to build
with microcomponents, and as Octal is intended to be a high-level
tracker I had to go with something else. 

Most recently I've been revising everything (except the OXAPI of course
:-) so that there will be a more clean separation between the user
interface and the core.

> but you can make this envelope generator as an enhancement of
> the sequencer or something, i guess

That will probably also happen, I'm planning a general "automation"
facility for parameters, sort of like the one in ProTools or MadTracker.
We can use GtkCurve as an off-the-shelf component, as it
renders/interpolates data of any requested length based on a user-drawn
curve that might be smooth, jagged, or freehand :-). The idea being that
you draw a curve/automation with the curve widget, and we just have it
export the data in the form of whatever data type the parameter wants
and at however many tracker rows we want. And then that can be put right
into a pattern. I'd like to have columns + curves/automations be
completely interchangeable, like selections+paths in the GIMP. 

-- 
@@@ david o'toole
@@@ address@hidden
@@@ www.gnu.org/software/octal


reply via email to

[Prev in Thread] Current Thread [Next in Thread]