Behavior of live.observer is_playing

broc's icon

I have noticed this:

If the Live start button is pressed (space-bar) with transport on start position (1.1.1) the observer just delivers 1. But after stop, when pressed at the new position it delivers the number sequence 1-0-1. I'm wondering if this behavior is intended.

Valiumdupeuple's icon

Can you tell the path you're using. I'm new to max and M4L but I didn't notice this.
A "live.observer is_playing" is suppose to answer a bool. So the behaviour you're talking about might not be intended.

broc's icon

I'm using the object [live.path live_set], with middle outlet connected to the right inlet of [live.observer is_playing].

The numbers "1-0-1" are delivered one after the other. So they are bool, but I'm confused why there is a 0 between. This can be verified with a print object.

Thanks for your interest.

Valiumdupeuple's icon

Hello.
I can reproduce it.
If you re-start the transport from where you were (shift-space) it just sends a 1, as espected.
The 1 - 0 - 1 behaviour happens only when it re-start from the beginning.
Then this behaviour becomes more obvious because, considering "live.observer" only osbserves and displays changes what happens is:
You start > 1
You stop > 0
Then if you hit start again without asking Live so start from where is has stop (with shift-space), its default behaviour is to re-start from the beginning. So what happens for live.observer is:
You hit transport to launch it, so live.observer observe a change and display a 1 ;
and then implicitly ask to immediately stop and play (this how Live restart from the beginning) so it observe a 0 - 1.

But, if you have stopped the transport ( so the last observed action is a 0) and then hit the stop button again to reset the transport to the beginning, observer won't see anything because there's no change is Live's behaviour.

Maybe I'm wrong but...

Jul
(I hope my english is clear enough.)

broc's icon

Thanks for the investigation. Makes sense to me.