I use a hardware guitar processor (Line 6 HX Stomp), which is connected to a Mac (audio and MIDI) running Gig Performer. My Gig Performer Setlist/Songs are setting the tempo for all plug ins.
The HX Stomp can accept a MIDI “tap tempo” if you send it a CC command on every quarter note (to simulate footswitch taps). So, sending the CC command about 4-5 times in a row on a quarter note will set the device’s tempo for it’s time-based effects.
I thought maybe I could use a Script to do this from GP, but can find no functions for “tempo”. Does anyone have any ideas of how CCs could be sent to correspond to a quarter note GP tempo???
This appears to work in my tests with Ableton. Just update the midi out device to the HX Stomp (assuming it generates a midi out port) and the CC number (the example uses CC 55).
It resends the CC messages every time a song or rackspace changes, or when the playhead starts.
Var counter : Integer = 0
On BeatChanged(bar : integer, beat : integer)
if counter < 5 then
SendNowToMidiOutDevice("IAC Driver Bus 1", MakeControlChangeMessage(55,127))
end
counter = counter + 1
End
// Called when you switch to another song
On Song(oldSongIndex : integer, newSongIndex : integer)
counter = 0
End
// Called when you switch to another rackspace
On Rackspace(oldRackspaceIndex : integer, newRackspaceIndex : integer)
counter = 0
End
// Called on attempt to change playhead status
On SystemEvent(newValue : double) Matching PlayheadStateChanged
if newValue == 1.0 then
counter = 0
end
End
@rank13, yes as a workaround for no MIDI clock, although I’ve used a tap tempo method with SetListMaker in the past and I prefer it to sending MIDI clock all the time because it sets the tempo quickly, and then the MIDI stream is kept a bit “cleaner.”
This script looks good, I’m excited to try it out and will let you know how it works with my setup.
UPDATE: This works great, rank13!! I am very grateful for your help … it would have taken me days of brainwork to figure this out. Plus, I learned a lot about scripts from the work I needed to do.