Originally Posted by: Ario 
For our basketball productions we use StreamDecks with Bitfocus Companion.
We trigger vMix scripts from the StreamDecks.
Hopefully, this is of some help.
Thanks for your reply, I had been reading through various forum threads and testing out the
Vmix Script builder app by @raugert around the time of your reply, and your response has helped me simplify my scripts.
The scripting seems to work much more reliably than stacking multiple shortcuts on one key (in my case, a Streamdeck also), which would often lead to the wrong camera being selected or unselected, as I suspect Vmix cannot process multiple actions on one key as a shortcut, all that reliably.
So now I've moved to scripting and presently I have:
Camera1 = Main camera
Camera2 = Left side view
Camera3 = Right side view
Camera4 = Crowd camera
With scripts as follows:
Save last 6 seconds of footage across all camerasFunction=ReplayMarkInOut&Value=6
Play replay with ONLY camera 1Function=ReplaySelectLastEvent
Sleep 5
Function=ReplayLastEventCameraOff&Value=4
Sleep 5
Function=ReplayLastEventCameraOff&Value=3
Sleep 5
Function=ReplayLastEventCameraOff&Value=2
Sleep 5
Function=ReplayLastEventCameraOn&Value=1
Sleep 5
Function=ReplayPlayLastEventToOutput
Play replay with camera 1 + 2 onlyFunction=ReplaySelectLastEvent
Sleep 5
Function=ReplayLastEventCameraOff&Value=4
Sleep 5
Function=ReplayLastEventCameraOff&Value=3
Sleep 5
Function=ReplayLastEventCameraOn&Value=1
Sleep 5
Function=ReplayLastEventCameraOn&Value=2
Sleep 5
Function=ReplayPlayLastEventToOutput
Play replay with camera 1 + 3 onlyFunction=ReplaySelectLastEvent
Sleep 5
Function=ReplayLastEventCameraOff&Value=4
Sleep 5
Function=ReplayLastEventCameraOff&Value=2
Sleep 5
Function=ReplayLastEventCameraOn&Value=1
Sleep 5
Function=ReplayLastEventCameraOn&Value=3
Sleep 5
Function=ReplayPlayLastEventToOutput