Bug: New midi remote transport speed transition is not working

Exactly. But it is random failures.
You can argue about that it is the new remote that is wrong or the transport function it self. However it is clear that they are not in sync. (In my view it is the shuttle transport that have a issue since it existing for keyboard controllers and the old generic remote too)
The generic remote was working fine in cubase 8, and there was big changes in transport functions for cubase 8.5 where the issue started to occur.
From my view that gui for the new JS remotes follow the controller.

The new MIDI Remote only triggers the Key-Commands like the Generic Remote does. There is no difference.
Key-Commands do not send feedback, they are one-way one-shots. That’s why sometimes, when rapidly hitting key-commands, the transport makes an “emergency break”. Doesn’t mean I call it a solution, I understand that it can be annoying.

So how does it behave when hitting the key-commands a bit less rapid? Does it happen as well or is it dependent on the speed of re-hitting it?

The event can be sent as “A ON, A OFF, B ON, B OFF” or “A ON, B ON, A OFF, B OFF”
but non of the have a consistent behaviour. Adding very long delay of course work, but it make it useless for audio editing. I have also tried the A ON, B ON, B OFF (skipping the A OFF) and added delays. Anything that is useful for audio editing is also random failing.
Adding feedback would be a great way to get this function working better. An “ACK” that the transport are doing would be useful for a midi controller. However it would not be that useful for a much more price friendly controller as shuttleexpress. It VERY annoying since it is a degrade and it was doable a long time ago. I think the emergency break is not working as it should and their is a race for ON and OFF messages that might get them out of order and for the case with midi data, one way is to dont have any stop at all, unless there is a stop messages. So even if you don’t manage to get it fixed, this should be put on the known bugs lists.

And for the old generic remote there are “real functions” that can be used instead of blind sending key-commands.

I 100% agree, and it has some discussion now and then in the development team. I’ll pin your topic at our wall, let’s see if it helps regarding priorities and so :wink:

2 Likes

Tnx. @Chriss owns me one. :wink:

But the shuttle key commands need the computer keyboard keys to be held down for the shuttle to keep… shuttling(?) whereas assigning a button to the key command from the Surface Editor we only need to press the button once, and it keeps going. Is there some special exception for these particular key commands?

The common ground is that when using either the computer keyboard or a MIDI controller, upon changing shuttle speed there are stops and hickups that we can’t predict. It’s like trying to change gears in manual transmission without using the clutch. :sweat_smile:

The Script API will provide a “makeRepeating” option for command- and action-bindings. But it will not be available in the Mapping Assistant atm, only for the coders :wink:

Coming with the next update

1 Like

:heart: :heart: :gift_heart: :heart: :heart:

2 Likes

What problem is that supposed to solve? Are you supposed to flood the transport with commands? What rate is needed to get transport to get smooth transitions?

i’d start at 10Hz and taste my way to the sweet spot. And an initial delay of 0.3 seconds feels natural to me.

Did you try the makeReapeting on “shuttle play %” ? It start and stops instead of start and restart that I guess is the intended use.

ShuttleFWS1.mOnProcessValueChange = function (activeDevice, value, diff) { 
    console.log("FWS1")
    if (value) {
        onShuttleFWS1.setProcessValue(activeDevice,1)
        //offShuttleFWS1.setProcessValue(activeDevice,0)
    } else {
        onShuttleFWS1.setProcessValue(activeDevice,0)
        offShuttleFWS1.setProcessValue(activeDevice, 1)
    }
}

page.makeCommandBinding(onShuttleFWS1, 'Transport', 'Shuttle Play 1x')
 .makeRepeating(0.1, 10)
page.makeCommandBinding(offShuttleFWS1, 'Transport', 'Shuttle Play 1x')
// .makeRepeating(0.3, 10)

The play and stop in cubase transport blink and the play is fluttery.

I think it wont be solvable without adding shuttle play (the hole family) into
MR_TransportValues class.