getTimeInSeconds() returns incorrect value when stopping Studio One marker

I am trying to get the elapsed time on the DAW using AudioPlayHead::PositionInfo:getTimeInSeconds().
In Studio One 5 or 6, if I move the cursor manually while stopped, I get the intended value.
However, if I stop using the “Stop at Maker” option, this function will not give me the correct value.

For example, at BPM:120, if I place the marker on beat 1 of measure 2, I would expect exactly 2.0 seconds when I stop, but I cannot get that. 1.971 or 1.979 or some other indeterminate value is returned.
If I manually place the cursor there (using a snap or a move operation between cursors) I get 2.0 correctly.

I can get the intended value with the “Play until Next Marker” in Cubase 12, so this may be a Studio One-specific issue.

Thanks in advance.

studio one is not the only DAW that doesn’t report transport information correctly. bitwig also does that for ages now despite me having reported the issue at least 100 times. i don’t have bitwig 5 so i can’t tell if they fixed it in the latest update though. so everyone who uses bitwig, keep this in mind if you are on some version of bitwig 4 rn: when you open the DAW you have to change the start-playhead position AND the loop points at least once before you start debugging your plugin(s), or you will be confused by wrong project position in seconds and wrong project position in quarter notes! isLooping also doesn’t work btw.

(and if you own bitwig 5 and know for sure they fixed this please tell me. i don’t wanna spend money on it to find out and the other features are not interesting enough)

1 Like

Thanks for the information. It is reassuring.
Like Studio One, I sincerely hope that Bitwig will improve.

I have also submitted a request for improvement to PreSonus, but it seems that there is a long way to go.