Re: [ecasound] Sanitizing the IAM?

New Message Reply Date view Thread view Subject view Author view Other groups

Subject: Re: [ecasound] Sanitizing the IAM?
From: Kai Vehmanen (
Date: Mon Mar 19 2001 - 20:12:34 EET

On Thu, 15 Mar 2001, S. Massy wrote:

> I've noticed there are quite a few incoherencies in the IAM commands
> and I think it would be nice if they were eventually fixed as they
> would make it more intuitive when using the IAM directly and more

Yup, I'm very interested to hear your comments. Writing the basic EIAM
framework (including specifying the basic command set) was quite an
intense project. NEWS file entry concerning 1.6.0d6 contains "added: 30-40
new interactive-mode commands". :) After that, no big changes have been
made (although many new cmds have been added). So it makes sense to
re-evaluate the command set.

> elegant while using it through the ECI. For example, you have
> cs/c/aio-selected but don't have cop/copp/ctrl-selected. At one level

True, I've added cop/copp/ctrl-selected to my todo-list. Controller
related commands are a bit tricky, as controllers are always connected to
some chain operator. Because of this, the current set of ctrl-* is far
from optimal. For instance, it's not possible to use these commands for
adding/remove/etc controllers of controllers (the -kx option). Ideas are
welcome. :)

> you have set-position and setpos but at others you have only
> setpos. Also, if setpos is a valid command it would seem logical to have
> getpos as well.

Ok, I've added all missing getpos/setpos and set/get-position pairs.
Well, except 'c-setpos'. I added 'c-set-position', but there's no
'c-getpos' or 'c-get-position' (it not possible to determinate position of
a set of chains...).

> In a previous message someone was wondering if it would be possible to
> bypass individual effects which led me to think that a cop-bypass
> might be very useful indeed. I guess my point is

I'll answer this in a separate message.

> that the command names and syntax should stay the same within each
> different concept (cs, c, cop, copp, ctrl, etc.) unless of course the
> availability of a certain command does not make sense within a certain
> concept (cop-setpos wouldn't really make sense). It might sound like

This has been the general approach. Initially I was trying to use
object-oriented approach ('objtype-command' --> objtype=class,
command=class method). But this turned out to be too cumbersome (for
instance, 'list all chains' would fall in cs- scope, etc).

The current design is much more simple. All chain-related commands are
prefixed with 'c-' and so on. But once again, ideas are welcome!

> On a side note, there's a mistake in ecasound-iam's manpage, it refers
> to commands such as cop-add-controller while they seem to have been

Doh, fixed these right away.

> change to things like ctrl-add. BTW, there seems to be problems with
> controllers as removing a controller automatically removes its target.

Ok, K.Vehmanen Bug of the Day:

  case ec_ctrl_remove: { remove_chain_operator(); break; }

... no wonder it didn't work. :)

 Audio software for Linux!

-- To unsubscribe send message 'unsubscribe' in the body of the message to <>.

New Message Reply Date view Thread view Subject view Author view Other groups

This archive was generated by hypermail 2b28 : Mon Mar 19 2001 - 20:18:09 EET