Observing is_playing possible API bug
Live 8.2.6 / Max 5.1.8
I am using live.observer to look at is_playing. When i turn on the transport in Ableton Live, it sends two 1's.
I can't figure out why it would do that. There's nothing in the documentation about it. Just says 1 when playing, 0 when not. Is this expected behavior? Should it send a 1 twice when the transport starts?
I've noticed this too and would consider it as bug.
Interestingly, there is a time difference between the 1's in the range of 20-50 ms (measured with cpuclock).
As reliable alternative I'm using 'Transport State' from [plugsync~].
On closer examination I've found that the behavior depends on the playhead position when Live is started:
If the position is at 1.1.1 the observer sends a single '1', otherwise twice. Apparently the first is triggered by jumping to the start position and the second by the actual start of transport.
Interesting. I hadn't noticed that.
However i did talk with Cycling74 on this. It seems it is expected behavior. In my own device I just put a [change] object after the API call so in effect I did what I needed to do despite this behavior.
They did recommend as you did to use plugsync instead though like this: