Wrong song position after tempo change

In my recent project I try to start a Groove Agent 5 pattern at bar 17, using a MIDI trigger region. When I start replay at the beginning of bar 17 Groove Agent starts counting at 16.3.3 (there seems to be a short internal preroll in Dorico) and the pattern starts correctly at 17.1.1. This is no longer the case when I have a tempo change before bar 17. In this case Groove Agent displays a song position before 16.3.3 if the tempo is increased or after 17.1.1 if it is decreased. The effect is that the pattern starts no longer at its beginning but somewhere the middle.

Can I do something to force Dorico to send the correct song position to Groove Agent even after a tempo change? Any ideas welcome!

Thanks and regards

Thought I found a workaround in splitting the flow right before measure 17. But that makes it even worse: the gap between flows gets calculated into the song position.

The manual says: “In Dorico, notes and items exist at rhythmic positions, which are calculated using their place in musical time in the flow rather than their position in a specific bar that has a particular time signature.”

At first glance, this seems to be an explanation for this strange behaviour. But the following sentence states: “In Dorico, musical time is the number of beats starting from the beginning of each flow. For example, instead of a note existing on beat 3 in bar 4 in a 4/4 time signature, Dorico considers that note to exist at beat 15, regardless of the time signature and its position in a bar.”

However, the recalculation of the song position from the current beat seems buggy. This is not an issue between Dorico and Groove Agent only. When I use EZKeys for the piano track of my song the behaviour is the same. So this bug hinders the use of Dorico together with any VST or tool, that uses the song position. Too bad.

Unfortunately, this problem still exists in version 6.2. Out of interest, I checked this with Cubase and Groove Agent. There were no problems there. Cubase even transfers a constantly changing tempo correctly to Groove Agent, while Dorico apparently only transfers the tempo once—and only the initial tempo of the score.

The issue is that Dorico only sends the initial tempo and time signature information to the VST plugin, so any subsequent changes after the start of the flow will be invisible to Groove Agent or EZDrunmer. This is something we have to implement in the communication between Dorico and its audio engine. It’s planned for a future version.

3 Likes

Thanks for your answer @dspreadbury.
I’m looking forward to this issue being solved.