First of all, I seem to have inadvertedly send the message below to the dev-list which wasn't my intention. Oops.

Secondly, sorry to reply to my own message and breach nettiquette but I found a second issue when trying to work around the one posted before.

For some reason LiSa.duration() is write only. This is inconvenient when trying to work around this bug as it makes it impossible to go like this;

l.playPos( l.duration() - samp);

I can't realy see why duration would be write only while I can think of reasons to want to check the max duration of a buffer (aside from the posted bug).

Could a readable version of .duration perhaps be considdered for a future update?

Yours,
Kas.

On 8/8/07, Kassen < signal.automatique@gmail.com> wrote:
Hi list, Hi Dan!


I have a slight issue with LiSa when she's supposed to play backwards. Let's assume for a second we want to record a single piano note, then play it back *once* in reverse;
----------------------
Rhodey r => LiSa l => dac;

second => l.duration;

1 => l.record;
1 => r.noteOn;

second => now;

0 => l.record;

0 => l.loop;
second => l.playPos;
-1 => l.rate;
1 => l.play;

second => now;
---------------

The above looks entirely correct to me, however, it won't generate a sound. for

.999::second => l.playPos;

it will work just fine and it will also work fine when .loop is turned on but turning loop on for one-shot samples isn't always convenient.

I believe this to be a bug, probably related to the way in which LiSa determines when she is supposed to stop playing. When you, Dan, have a moment, could you please look into this?

Yours,
Kas.