Re: [ecasound] Could someone explain (me too) how chain setup works?

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

Subject: Re: [ecasound] Could someone explain (me too) how chain setup works?
From: Kai Vehmanen (k@eca.cx)
Date: Thu Mar 01 2001 - 20:41:30 EET


On Thu, 1 Mar 2001, Marco Ciampa wrote:

> -a:1 -i:piano.wav -y:5
[...]
> start (starts with piano at 5.00 and chief at 0.00, right)
[...]
> setpos 0
> start (now starts with piano at 0.00 and chief at 0.00, wrong!!!)
> it seems that it does not read cs anymore!
> if you do a cs-connect and cs-disconnect, pos remains untouched (why?)
> and I have to exit (sigh!) to reset the 'master pointer' of setpos.

-t, -tl and -y options were added because they proved to be useful for
certain simple tasks (cut&paste style operations). But design-wise, they
aren't very elegant. So you could say that for simple tasks it's ok to use
them, but for more complicated work it's better to use the ewf-format,
which has better defined behaviour.

Position information in ecasound is closely tied to the objects
themselves. When a chainsetup is parsed, audio objects are created and
a starting position is assigned to them. The '-y' option affects at this
stage. When engine is started, it doesn't reset audio object positions.
Engine does maintain its internal position, but it's not directly related
to audio objects.

When altering the current position, you have different alternatives:
'aio-setpos' sets the position for one specific audio object. Chains don't
contain any position info, so 'c-setpos' affects all audio objects
connected to the selected chain (ie. 1 input and 1 output).

Then we come to 'setpos' command you used in your example. Like chains,
chainsetups don't contain position info, so 'setpos' is equivalent to
"c-select-all ; c-setpos x" - in other words we set the position for all
audio objects in the current chainsetup.

So in your example, "setpos 0" overrides "-y:5", because '-y' only affects
when chainsetup is initially parsed (after 'cs-load' or 'cs-edit'). Best
way to solve these problems is to wrap piano.wav inside a ewf-file. This
way you can make sure that the 5sec offset is honoured in all
circumstances. An alternative approach would be to set the 5sec offset
manually... "setpos 0 ; aio-select-input piano.wav ; aio-setpos 5
; start".

-- 
 . http://www.eca.cx ... [ audio software for linux ] /\ . 
 . http://www.eca.cx/sculpscape [ my armchair-tunes mp3/ra/wav ]

-- To unsubscribe send message 'unsubscribe' in the body of the message to <ecasound-list-request@wakkanet.fi>.


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

This archive was generated by hypermail 2b28 : Thu Mar 01 2001 - 19:56:37 EET